emacs-devel
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]