Addition for pager layout.



Hi,

I would like to propose an addition for the NET spec that defines the layout 
of the virtual desktops. The rationale is that a pager may define a certain 
layout for the various virtual desktops and that it should be able to inform 
the window manager about this so that the window manager can implement an 
action like "select the virtual desktop to the right of the current one" in a 
meaningfull way.

This is needed for (at least) KDE since the orientation of the KDE panel 
influences the layout of the pager that is embedded in the panel while the 
window manager handles the "select desktop left/right/up/down" action which 
can be bound to keybindings or can be used by the "active/eletric desktop 
border" feature of the window manager.

_NET_DESKTOP_LAYOUT orient, x, y, CARDINAL[][3]/32

A Window Manager MAY choose to ignore this message

Structure describing the layout of virtual desktops relative to each other.

The virtual desktops are being laid out in a rectangular fashion with
x desktops next to each other and y desktops above each other.
x times y must match the total number of desktops as specified by 
_NET_NUMBER_OF_DESKTOPS. Either x or y (but not both) may be specified as -1 
in which case its actual value will be derived from _NET_NUMBER_OF_DESKTOPS.

When orient is _NET_WM_ORIENTATION_HORZ the layout for x=4 and y=3 looks
like:

+--+--+--+--+
| 1| 2| 3| 4|
+--+--+--+--+
| 5| 6| 7| 8|
+--+--+--+--+
| 9|10|11|12|
+--+--+--+--+

When orient is _NET_WM_ORIENTATION_VERT the layout for x=4 and y=3 looks
like:

+--+--+--+--+
| 1| 4| 7|10|
+--+--+--+--+
| 2| 5| 8|11|
+--+--+--+--+
| 3| 6| 9|12|
+--+--+--+--+

 
#define _NET_WM_ORIENTATION_HORZ 0
#define _NET_WM_ORIENTATION_VERT 1




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]