<AWT Dev> [9] Review request for 8012224: AWT_TopLevels/TopLevelEvents/Automated/WindowIconifyDeiconifyEventsTest02 fails on Ubuntu 12.04 Unity shell

Alexander Zvegintsev alexander.zvegintsev at oracle.com
Fri Mar 7 11:59:06 UTC 2014


Hi Anthony,

Sure, it fails to deiconify unfocusable frame before the fix and works 
after applying this patch.

Thanks,

Alexander.

On 03/07/2014 01:14 AM, Anthony Petrov wrote:
> On 3/6/2014 6:36 PM, Alexander Zvegintsev wrote:
>> On 03/05/2014 08:18 PM, Anthony Petrov wrote:
>>> 1. What does this request do if a window being deiconified is
>>> unfocusable, or otherwise shouldn't receive focus after
>>> deiconification? Does this operation generate any focus events or make
>>> the window focused?
>>>
>> If under unfocusable you mean frame.setFocusableWindowState(false); then
>> all works fine.
>> e.g. we have a focused frame1 with focused text area and iconified
>> unfocusable frame2.
>> After sending _NET_ACTIVE_WINDOW client message input focus remains in a
>> text area of frame1.
>> frame1 doesn't lose window focus, frame2 doesn't receive any focus 
>> events.
>
> And the unfocusable frame2 still gets deiconified in this scenario, 
> even on systems where before the fix it failed to do so?
>
>
>>> 2. src/solaris/classes/sun/awt/X11/XNETProtocol.java
>>>> 330         if (!active() && !checkProtocol(XA_NET_SUPPORTED,
>>>> XA_NET_ACTIVE_WINDOW)) {
>>>
>>> The condition should actually read as if (!a || !b).
>> Here is the updated webrev:
>> http://cr.openjdk.java.net/~azvegint/jdk/9/8012224/01/
>
> The updated version of the fix is fine. Thanks.
>
> -- 
> best regards,
> Anthony
>
>>
>> Thanks,
>>
>> Alexander.
>>
>>
>>
>>>
>>> -- 
>>> best regards,
>>> Anthony
>>>
>>> On 3/5/2014 7:45 PM, Alexander Zvegintsev wrote:
>>>> Hello AWT team,
>>>>
>>>> please review fix
>>>> http://cr.openjdk.java.net/~azvegint/jdk/9/8012224/00/
>>>> for
>>>> https://bugs.openjdk.java.net/browse/JDK-8012224
>>>>
>>>> X FAQ[1] says:
>>>>
>>>> Subject: 141)  How do I deiconify a window?
>>>>
>>>> To de-iconify a window, map it with XMapWindow().  To iconify a
>>>> window, use
>>>> XIconifyWindow().
>>>>
>>>> Unfortunately it does not work with compiz/Unity, I've found several
>>>> reported issues [2] [3] [4] with similar synopsis.
>>>>
>>>> EMWH provide another way to deiconify window: send a
>>>> _NET_ACTIVE_WINDOW[5] client message.
>>>>
>>>> Actually, there is no need to call XMapRaised(If _NET_ACTIVE_WINDOW is
>>>> supported), but I left it as it is, since it doesn't hurt.
>>>>
>>>> [1] http://ftp.x.org/contrib/faqs/FAQ
>>>> [2] https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/369954
>>>> XRaiseWindow not working
>>>> [3] https://bugs.launchpad.net/ubuntu/+source/unity/+bug/1067886 xwit
>>>> cannot de-iconify window
>>>> [4] https://bugs.launchpad.net/unity/+bug/932580 Application window 
>>>> not
>>>> responsive when iconified
>>>> [5] 
>>>> http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html#id2731082
>>>>
>>>> -- 
>>>> Thanks,
>>>>
>>>> Alexander.
>>>>
>>



More information about the awt-dev mailing list