Re: Gtk peer set for Java and iconify/deiconify



Nicholas Allen - Sun Ireland - Software Engineer <nicholas allen ireland sun com> writes: 
The problem is that Java treats iconify and visible states as two
separate enteties (so there are 4 possible states for a window -
visible and deiconified, visible and iconified, invisible and
iconified and visible and iconified). This means that if we hide a
window and then iconify it and then make it visible it should be
displayed as a visible icon . Unfortuantely, calling gtk_widget_show()
on a top level window that has been hidden and iconified deiconifies
it (but we want it to appear as an icon).   Does anyone know how to
achieve this?


Presumably your states map to the following ICCCM states:

Withdrawn:
 A. invisible and iconified          
 B. invisible and deiconified

Iconic:
 C. visible and iconified

Normal:
 D. visible and deiconified

State transitions are covered in the ICCCM but a quick summary
I think is right:

 A -> B:  internal to Java app, no interclient communication
 A -> C:  map window with WM_STATE set to Iconic
 A -> D:  map window normally, WM_STATE unset

 B -> A:  internal to Java app
 B -> C:  map window with WM_STATE set to Iconic
 B -> D:  map window normally, WM_STATE unset

 C -> A:  withdraw window
 C -> B:  withdraw window
 C -> D:  map window

 D -> A:  withdraw window
 D -> B:  withdraw window 
 D -> C:  iconify window

Havoc



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]