<Swing Dev> RFR: JDK-8234386: [macos] NPE was thrown at expanding Choice from maximized frame
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Mon Dec 2 22:21:33 UTC 2019
Looks fine.
On 11/25/19 2:54 am, Toshio 5 Nakamura wrote:
> Hi Sergey,
>
> > One small question about the test, is it necessary to check macOS only?
>
> Yes. Keyboard operations by robot are easy to reproduce the problem, but
> Keyboard don't work for Choice component in other platforms, such as
> Windows, Linux, Solaris, or AIX. So, I think mac only is appropriate.
>
> By the way, I found pair of keyPress and keyRelease events by robot
> are required in some cases. I'd like to update the testcase to webrev.03.
>
> http://cr.openjdk.java.net/~tnakamura/8234386/webrev.03
>
> Thanks,
> Toshio Nakamura
>
> Sergey Bylokhov <Sergey.Bylokhov at oracle.com> wrote on 2019/11/24 05:19:36:
>
> > From: Sergey Bylokhov <Sergey.Bylokhov at oracle.com>
> > To: Toshio 5 Nakamura <TOSHIONA at jp.ibm.com>
> > Cc: swing-dev at openjdk.java.net
> > Date: 2019/11/24 05:19
> > Subject: [EXTERNAL] Re: <Swing Dev> RFR: JDK-8234386: [macos] NPE
> > was thrown at expanding Choice from maximized frame
> >
> > One small question about the test, is it necessary to check macOS only?
> > I assume the code will work on any platform?
> >
> > On 11/21/19 5:06 pm, Toshio 5 Nakamura wrote:
> > > Hi Sergey,
> > >
> > > Thank you for the comment.
> > > Please find webrev.02.
> > > http://cr.openjdk.java.net/~tnakamura/8234386/webrev.02
> > >
> > > Thanks,
> > > Toshio Nakamura
> > >
> > > Sergey Bylokhov <Sergey.Bylokhov at oracle.com> wrote on 2019/11/22 07:07:03:
> > >
> > > > From: Sergey Bylokhov <Sergey.Bylokhov at oracle.com>
> > > > To: Toshio 5 Nakamura <TOSHIONA at jp.ibm.com>
> > > > Cc: swing-dev at openjdk.java.net
> > > > Date: 2019/11/22 07:07
> > > > Subject: [EXTERNAL] Re: <Swing Dev> RFR: JDK-8234386: [macos] NPE
> > > > was thrown at expanding Choice from maximized frame
> > > >
> > > > It looks like after the .01 version you can inline the usage of
> > > > Toolkit.getDefaultToolkit(), it is only used inside
> > > > "if (!canPopupOverlapTaskBar()) {".
> > > >
> > > > On 11/21/19 5:10 am, Toshio 5 Nakamura wrote:
> > > > > Hi Sergey,
> > > > >
> > > > > Thank you for the review.
> > > > > How about the fix in webrev.01?
> > > > >
> > > > > To calculate Insets of default screen could be same as to set gc
> > > > of default screen device, I think.
> > > > > I found similar code in RepaintManager.
> > > > >
> > > > > http://cr.openjdk.java.net/~tnakamura/8234386/webrev.01
> > > > >
> > > > > Thanks,
> > > > > Toshio Nakamura
> > > > >
> > > > > Sergey Bylokhov <Sergey.Bylokhov at oracle.com> wrote on 2019/
> > 11/21 17:42:39:
> > > > >
> > > > > > From: Sergey Bylokhov <Sergey.Bylokhov at oracle.com>
> > > > > > To: Toshio 5 Nakamura <TOSHIONA at jp.ibm.com>, swing-
> > dev at openjdk.java.net
> > > > > > Date: 2019/11/21 17:42
> > > > > > Subject: [EXTERNAL] Re: <Swing Dev> RFR: JDK-8234386: [macos] NPE
> > > > > > was thrown at expanding Choice from maximized frame
> > > > > >
> > > > > > Hi, Toshio.
> > > > > >
> > > > > > In a few lines above your fix, the code takes care of null GC
> > > > and use the main
> > > > > > screen size as a screen bound, so I think your change
> > should calculate
> > > > > > Insets for the main screen as well instead of using zeros.
> > > > > >
> > > > > > BTW probably GraphicsEnvironment.getMaximumWindowBounds()
> > couldbe used at
> > > > > > line 336 additionally to your fix.
> > > > > >
> > > > > > On 11/19/19 7:55 pm, Toshio 5 Nakamura wrote:
> > > > > > > Hi All,
> > > > > > >
> > > > > > > Could you review the following fix? Also, I'd like to ask a
> > > > > > sponsor of this fix, since I'm not a committer.
> > > > > > >
> > > > > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8234386
> > > > > > > Webrev: http://cr.openjdk.java.net/~tnakamura/8234386/webrev.00
> > > > > > >
> > > > > > > Issue:
> > > > > > > NullPointerException was thrown when Choice was expanded from
> > > > > > maximized Frame.
> > > > > > >
> > > > > > > Fix:
> > > > > > > Simply adding a null check to JPopupMenu. When the frame was
> > > > > > maximized and expanding
> > > > > > > Choice component, GraphicsConfiguration parameter can be null.
> > > > > > Detailed description was in JBS.
> > > > > > >
> > > > > > > Thanks,
> > > > > > > Toshio Nakamura
> > > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Best regards, Sergey.
> > > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > Best regards, Sergey.
> > > >
> > >
> >
> >
> > --
> > Best regards, Sergey.
> >
>
--
Best regards, Sergey.
More information about the swing-dev
mailing list