On Fri, 23 Dec 2011, Werner Thie wrote:

> alwaysOnTop is 'Always On Top', has nothing to do with modal

I don't quite understand what you want to say. However, in the default
Manager the two are NOT handled independently.

> and must be used with utmost care

I agree, and I must correct myself. My suggestion, that AlwaysOnTop should
win against modal could lead to a situation where a AlwaysOnTop window could
block an (underlying) modal window from receiving input and could thus never
be closed (especially if the AlwaysOnTop window has no close() button and is
not closed programmatically for some reason).

So, my new suggestion is to implement my version b), see below.

More comments? Would such a patch be accepted by the 1&1 team?

Cheers,
Fritz

>> On Tue, 20 Dec 2011, Fritz Zaucker wrote:
>>
>>> Hi,
>>>
>>> in the default desktop window manager (qx.ui.windows.Manager) the
>>> handling of the properties modal and alwaysOnTop seems to be a bit
>>> counter-intuitive to me:
>>>
>>> If a window has the modal-property set, then this window "wins" against
>>> another window without modal, but with the alwaysOnTop-property set.
>>>
>>> I guess, the property would be more properly named "almostAlwaysOnTop"
>>> or "alwaysOnTopIfNoModalWindowIsAround" ... ;-)
>>>
>>> The only method affected as far as I can tell is
>>> qx.ui.windows.Manager.syncWidget().
>>>
>>> I'd see two fixes:
>>>
>>> a) - Let alwaysOnTop win against modal
>>>    - Let alwaysOnTop AND model win against just alwaysOnTop
>>>    - Check if more than one window has alwaysOnTop set
>>>
>>>    This is in my opinion the cleanest implementation, but might break
>>>    existing applications who somehow ignored the fact that alwaysOnTop
>>>    doesn't really mean ALWAYS.
>>>
>>>
>>> b) - Check if both modal and alwaysOnTop are set and have this win
>>>      against just modal.
>>>
>>>    - Let modal win against alwaysOnTop AND NOT modal as it currently
>>>    does.
>>>
>>>    Less clean, see above.
>>>
>>>
>>> Any other opinions in this?
>>>
>>> Cheers,
>>> Fritz
>>>
>>> P.S.: I can provide a patch if somebody from the core team would decide
>>>       which way to go.

-- 
Oetiker+Partner AG              tel: +41 62 775 9903 (direct)
Fritz Zaucker                        +41 62 775 9900 (switch board)
Aarweg 15                            +41 79 675 0630 (mobile)
CH-4600 Olten                   fax: +41 62 775 9905
Schweiz                         web: www.oetiker.ch

------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create 
new or port existing apps to sell to consumers worldwide. Explore the 
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to