<AWT Dev>  Review request for 8163101: dual-screen issue with JMenu, JPopupMenu
semyon.sadetsky at oracle.com
Thu Sep 29 18:35:10 UTC 2016
On 29.09.2016 21:22, Sergey Bylokhov wrote:
> On 29.09.16 9:54, Semyon Sadetsky wrote:
>>>>> We have two bugs:
>>>>> - This bug is about menu related code, it should care about
>>>>> bounds of
>>>>> gc where these popup will be shown, it should not use the method
>>>>> return the bounds of the primary screen. In current fix the location
>>>>> will be incorrect if Xinerama is disabled and menu will be shown on
>>>>> non-primary screen, if this screen have different scale from main
>>>> If Xinerama is disabled the method will return the primary screen size
>>>> which is your favorite one.
>>> But the popup should use the bounds from the screen where they will be
>>> shown, which is not necessary the main.
>> Xinerama is always on in the supported OSes. And that is how it worked
>> before the regression and there were no complains. It was not introduced
>> in 9 while the regression is caused fix in 9. So, if you want I could
>> create a separate issue to investigate why it was solved so, but it is
>> unrelated to the fix. The fix simply eliminates the regression.
> This is a part of HiDPI support. The popup code should use the bounds
> of the screen where it is located. It should not depend from the
> method which:
> - Support data for the main screen only.
> - Even for this screen it returns incorrect data.
I did not get that.
The fix restores the the previous way to get screen bounds, which was
not introduced as a part of HiDPI but much earier. It had been working
before 8137571 without complains (no bugs reported).
Or did you mean it won't work in HiDPI? I tested, it works for both
HiDPI and non-HiDPI displays while the current code doesn't work for both.
More information about the awt-dev