Re: Interaction between applications and compositing managers
- From: Olivier Chapuis <olivier chapuis free fr>
- To: Soeren Sandmann <sandmann daimi au dk>, wm-spec-list gnome org
- Cc: davidr novell com, keith packard intel com
- Subject: Re: Interaction between applications and compositing managers
- Date: Mon, 03 Apr 2006 23:23:43 +0200
Soeren Sandmann a écrit :
Hello
To integrate a compositing manager well with the rest of the desktop,
new hints and protocols between applications and compositing managers
are needed. This message is intended to start that discussion.
*** Window types
A compositing manager deals with all windows that are visible on the
screen, even override-redirect ones. This means new window types
are needed so the compositing manager will know how to decorate the
override-redirect windows with translucency and shadows etc.
Here are some typical override redirect windows:
- DND windows (showing drag icons etc.)
- Tooltips
- Menus, drop-down menus and right click menus.
- Combo box popups
- Notifications ("you are are running out of battery" etc.)
- Random little popups, such as the search boxes on trees and lists
Also many applications pop up their own app-specific override-redirect
windows for whatever reason.
One possibility is to add a bunch of new possible window types to the
_NET_WM_WINDOW_TYPE property:
_NET_WM_WINDOW_TYPE_DND_WINDOW
_NET_WM_WINDOW_TYPE_TOOLTIP
_NET_WM_WINDOW_TYPE_NOTIFICATION
_NET_WM_WINDOW_TYPE_DROP_DOWN_MENU
_NET_WM_WINDOW_TYPE_POPUP_MENU
_NET_WM_WINDOW_TYPE_COMBO
That will take care of most of the override redirect windows on a
typical. CM's will still need to deal with unannotated
override-redirect windows from old applications.
Do we need any other types?
I do not know, GTK and QT developer can surely answer (I found the
notification type a bit out of topic).
But:
(1) It will be useful to know for which window the override-redirect
window is for. Either we can add, in the spec, that the WM_TRANSIENT_FOR
hint should be set for override-redirect windows or add a new hint, say
"_NET_WM_UNMANAGED_FOR", similar to WM_TRANSIENT_FOR.
This can help a compositor which makes some persistent transformations
on windows (as Metisse or Looking Glass).
(2) I think that using a new property "_NET_WM_UNMANAGED_TYPE" (and then
NET_WM_UNMANAGED_TYPE_DND_WINDOW ...etc) will help to avoid confusion.
Regards, Olivier
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]