[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How about introducing a new frame parameter: topmost
From: |
James Cloos |
Subject: |
Re: How about introducing a new frame parameter: topmost |
Date: |
Wed, 04 Jun 2008 12:59:05 -0400 |
User-agent: |
Gnus/5.110011 (No Gnus v0.11) Emacs/23.0.60 (gnu/linux) |
>>>>> "Stefan" == Stefan Monnier <address@hidden> writes:
>> If this parameter is true, the frame is shown as a TOPMOST window.
Stefan> The tricky part is to coerce the window manager into agreeing
Stefan> with Emacs.
On X _WIN_LAYER is the CADRINAL icewm uses for layering.
Ice uses these values:
14 FullScreen
12 Menu
10 Above Dock
8 Dock
6 OnTop
4 Normal
2 Below
0 Desktop
Ice's src has this comment, which also may be relevant to the full
screen thread:
/* ** from icewm-1.2.35/src/WinMgr.h **
*
* Window layer.
* Windows with LAYER=WinLayerDock determine size of the Work Area
* (WIN_WORKAREA). Windows below dock layer are resized to the size
* of the work area when maximized. Windows above dock layer are
* maximized to the entire screen space.
*
* The default can be set by application, but when window is mapped
* only window manager can change this. If an application wants to change
* the window layer it should send the ClientMessage to the root window
* like this:
* xev.type = ClientMessage;
* xev.window = toplevel_window;
* xev.message_type = _XA_WIN_LAYER;
* xev.format = 32;
* xev.data.l[0] = layer;
* xev.data.l[1] = timeStamp;
* XSendEvent(display, root, False, SubstructureNotifyMask, (XEvent *)
&xev);
*
*/
AFAIK this is a cross-wm ATOM.
-JimC
--
James Cloos <address@hidden> OpenPGP: 1024D/ED7DAEA6