Re: Qartz-WM: a tip and a query for developers
Re: Qartz-WM: a tip and a query for developers
- Subject: Re: Qartz-WM: a tip and a query for developers
- From: Adrian Umpleby <email@hidden>
- Date: Tue, 20 May 2003 14:41:43 +0100
Hi all,
The tip about Quartz-WM is: if an application has several disjoint
windows, Quartz-WM lets them be minimized independently, whereas with
most other window managers, minimising the application's main window
will cause all the other windows in the application to be minimised at
the same time.
Indeed - this is something that's also true for OroborOSX.
You need to be careful about this, because some X operations like
setting the input focus will fail if the target window is unmapped,
and under Qartz-WM you discover that you can't assume that if some
window is mapped then the main window will be.
There's also the interesting issue of clicking in an X11 window
('parent') that has another modal ('child') window associated with it -
an example would be the "open file" dialog from nedit, or from
OpenOffice.
The question is what should be done if the modal child window is
docked...? In OroborOSX I decided to (at least for starters) make the
modal window come out of the dock by itself (eg, if you bring a nedit
window in front while it has an "open file" dialog box docked, the
dialog box will undock and come in front of the main nedit window).
[One issue then is what to do if the user docks the modal window, and
the next window down is the parent (as is usually the case) - looks a
bit funny having the modal child come straight back out of the dock!
But I did at least want to make sure that the parent doesn't *look*
like it has focus, even if it's the frontmost window...]
I notice that quartz-wm, for the OpenOffice case, actually undocks the
modal child window just like OroborOSX. However, for the nedit case, it
leaves the modal child docked, but simply prevents input to the parent
window. This can be a bit disconcerting if you forget, or don't
realise, there is modal dialog - because it actually still looks like
you have focus for the parent window (i.e. its titlebar is 'active' and
it has a 'deep' shadow, etc). I think the difference is because
OpenOffice actually brings the dialog in front itself, rather than
leaving it to the window manager to decide the behaviour.
I also notice it's possible to get this disconcerting effect in
quartz-wm without even docking the modal window! i.e. with the modal
child window open, click on the parent - its titlebar becomes active
and its shadow goes 'deep', but you can't type anything in it or use
any controls in it. This is true for both nedit and OpenOffice.
On a vaguely related note, I noticed another thing about modal/child
dialog windows in quartz-wm - they 'accept first click'. That is, if
you click in one while it's not frontmost, it doesn't only come in
front, but will actually activate a control, or object, that lies under
where you clicked. This is not the case for 'normal' X11 windows under
quartz-wm (where the first click will only bring in front). - I'm
curious to know if this was a conscious design decision for
quartz-wm...?
The query is: why is Quartz-WM like this? and can you change the
behaviour? The dock can get very, very full with all those beautiful
thumb-nail sketches, if an application has lots of windows most of
which are minimised most of the time.
Indeed again! -And it's the main reason I didn't implement
minimise-parent-also-minimises-all-modal-children type behaviour in
OroborOSX... One thing I have considered, though, is just making the
child window(s) simply vanish, with the parent window going to the dock
- and all appear again once the parent comes out of the dock. Not
really ideal (in particular, if it was not the parent window that the
user actually minimised), but it would basically do the job, and
without cluttering up the dock...
What I thought would be really nice (but obviously can't be done as it
stands) would be to have all related windows zoom to the same location
in the dock - and look something like a 'stack' of windows in the dock.
Similar to option-click in a multi-window OSX app, which sends all that
app's windows to the dock at once - except in the X11 case the related
windows would all end up piled on top of each other :-)
Bye!
Adrian
_______________________________________________
x11-users mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/x11-users
X11 for Mac OS X FAQ: http://developer.apple.com/qa/qa2001/qa1232.html
Report issues, request features, feedback: http://developer.apple.com/bugreporter
Do not post admin requests to the list. They will be ignored.