|
enum | { PROTOCOLS,
PROTOCOLS2,
PROPERTIES_SIZE
} |
|
enum | { OnAllDesktops = -1
} |
|
enum | Action {
ActionMove = 1<<0,
ActionResize = 1<<1,
ActionMinimize = 1<<2,
ActionShade = 1<<3,
ActionStick = 1<<4,
ActionMaxVert = 1<<5,
ActionMaxHoriz = 1<<6,
ActionMax = ActionMaxVert | ActionMaxHoriz,
ActionFullScreen = 1<<7,
ActionChangeDesktop = 1<<8,
ActionClose = 1<<9
} |
|
enum | DesktopLayoutCorner { DesktopLayoutCornerTopLeft = 0,
DesktopLayoutCornerTopRight = 1,
DesktopLayoutCornerBottomLeft = 2,
DesktopLayoutCornerBottomRight = 3
} |
|
enum | Direction {
TopLeft = 0,
Top = 1,
TopRight = 2,
Right = 3,
BottomRight = 4,
Bottom = 5,
BottomLeft = 6,
Left = 7,
Move = 8,
KeyboardSize = 9,
KeyboardMove = 10,
MoveResizeCancel = 11
} |
|
enum | MappingState { Visible = 1,
Withdrawn = 0,
Iconic = 3
} |
|
enum | Orientation { OrientationHorizontal = 0,
OrientationVertical = 1
} |
|
enum | Property {
Supported = 1<<0,
ClientList = 1<<1,
ClientListStacking = 1<<2,
NumberOfDesktops = 1<<3,
DesktopGeometry = 1<<4,
DesktopViewport = 1<<5,
CurrentDesktop = 1<<6,
DesktopNames = 1<<7,
ActiveWindow = 1<<8,
WorkArea = 1<<9,
SupportingWMCheck = 1<<10,
VirtualRoots = 1<<11,
CloseWindow = 1<<13,
WMMoveResize = 1<<14,
WMName = 1<<15,
WMVisibleName = 1<<16,
WMDesktop = 1<<17,
WMWindowType = 1<<18,
WMState = 1<<19,
WMStrut = 1<<20,
WMIconGeometry = 1<<21,
WMIcon = 1<<22,
WMPid = 1<<23,
WMHandledIcons = 1<<24,
WMPing = 1<<25,
XAWMState = 1<<27,
WMFrameExtents = 1<<28,
WMIconName = 1<<29,
WMVisibleIconName = 1<<30,
WMGeometry = 1<<31
} |
|
enum | Property2 {
WM2UserTime = 1<<0,
WM2StartupId = 1<<1,
WM2TransientFor = 1<<2,
WM2GroupLeader = 1<<3,
WM2AllowedActions = 1<<4,
WM2RestackWindow = 1<<5,
WM2MoveResizeWindow = 1<<6,
WM2ExtendedStrut = 1<<7,
WM2TakeActivity = 1<<8,
WM2KDETemporaryRules = 1<<9,
WM2WindowClass = 1<<10,
WM2WindowRole = 1<<11,
WM2ClientMachine = 1<<12,
WM2ShowingDesktop = 1<<13,
WM2Opacity = 1<<14,
WM2DesktopLayout = 1<<15,
WM2FullPlacement = 1<<16,
WM2FullscreenMonitors = 1<<17,
WM2FrameOverlap = 1<<18,
WM2Activities = 1<<19,
WM2BlockCompositing = 1<<20,
WM2KDEShadow = 1<<21
} |
|
enum | RequestSource { FromUnknown = 0,
FromApplication = 1,
FromTool = 2
} |
|
enum | Role { Client,
WindowManager
} |
|
enum | State {
Modal = 1<<0,
Sticky = 1<<1,
MaxVert = 1<<2,
MaxHoriz = 1<<3,
Max = MaxVert | MaxHoriz,
Shaded = 1<<4,
SkipTaskbar = 1<<5,
KeepAbove = 1<<6,
StaysOnTop = KeepAbove,
SkipPager = 1<<7,
Hidden = 1<<8,
FullScreen = 1<<9,
KeepBelow = 1<<10,
DemandsAttention = 1<<11
} |
|
enum | WindowType {
Unknown = -1,
Normal = 0,
Desktop = 1,
Dock = 2,
Toolbar = 3,
Menu = 4,
Dialog = 5,
Override = 6,
TopMenu = 7,
Utility = 8,
Splash = 9,
DropdownMenu = 10,
PopupMenu = 11,
Tooltip = 12,
Notification = 13,
ComboBox = 14,
DNDIcon = 15
} |
|
enum | WindowTypeMask {
NormalMask = 1<<0,
DesktopMask = 1<<1,
DockMask = 1<<2,
ToolbarMask = 1<<3,
MenuMask = 1<<4,
DialogMask = 1<<5,
OverrideMask = 1<<6,
TopMenuMask = 1<<7,
UtilityMask = 1<<8,
SplashMask = 1<<9,
DropdownMenuMask = 1<<10,
PopupMenuMask = 1<<11,
TooltipMask = 1<<12,
NotificationMask = 1<<13,
ComboBoxMask = 1<<14,
DNDIconMask = 1<<15,
AllTypesMask = 0LU-1
} |
|
|
| NETWinInfo (Display *display, Window window, Window rootWindow, const unsigned long properties[], int properties_size, Role role=Client) |
|
| NETWinInfo (Display *display, Window window, Window rootWindow, unsigned long properties, Role role=Client) |
|
| NETWinInfo (const NETWinInfo &wininfo) |
|
virtual | ~NETWinInfo () |
|
const char * | activities () const |
|
unsigned long | allowedActions () const |
|
const char * | clientMachine () const |
|
int | desktop (bool ignore_viewport=false) const |
|
void | event (XEvent *event, unsigned long *properties, int properties_size) |
|
unsigned long | event (XEvent *event) |
|
NETExtendedStrut | extendedStrut () const |
|
NETStrut | frameExtents () const |
|
NETStrut | frameOverlap () const |
|
Window | groupLeader () const |
|
Bool | handledIcons () const |
|
bool | hasNETSupport () const |
|
bool | hasWindowType () const |
|
NETIcon | icon (int width=-1, int height=-1) const |
|
NETRect | iconGeometry () const |
|
const char * | iconName () const |
|
const int * | iconSizes () const |
|
bool | isBlockingCompositing () const |
|
void | kdeGeometry (NETRect &frame, NETRect &window) |
|
MappingState | mappingState () const |
|
const char * | name () const |
|
unsigned long | opacity () const |
|
const NETWinInfo & | operator= (const NETWinInfo &wintinfo) |
|
const unsigned long * | passedProperties () const |
|
int | pid () const |
|
void | setAllowedActions (unsigned long actions) |
|
void | setBlockingCompositing (bool active) |
|
void | setDesktop (int desktop, bool ignore_viewport=false) |
|
void | setExtendedStrut (const NETExtendedStrut &extended_strut) |
|
void | setFrameExtents (NETStrut strut) |
|
void | setFrameOverlap (NETStrut strut) |
|
void | setHandledIcons (Bool handled) |
|
void | setIcon (NETIcon icon, Bool replace=True) |
|
void | setIconGeometry (NETRect geometry) |
|
void | setIconName (const char *name) |
|
void | setName (const char *name) |
|
void | setOpacity (unsigned long opacity) |
|
void | setPid (int pid) |
|
void | setStartupId (const char *startup_id) |
|
void | setState (unsigned long state, unsigned long mask) |
|
void | setStrut (NETStrut strut) |
|
void | setUserTime (Time time) |
|
void | setVisibleIconName (const char *name) |
|
void | setVisibleName (const char *visibleName) |
|
void | setWindowType (WindowType type) |
|
const char * | startupId () const |
|
unsigned long | state () const |
|
NETStrut | strut () const |
|
Window | transientFor () const |
|
Time | userTime () const |
|
const char * | visibleIconName () const |
|
const char * | visibleName () const |
|
const char * | windowClassClass () const |
|
const char * | windowClassName () const |
|
const char * | windowRole () const |
|
WindowType | windowType (unsigned long supported_types) const |
|
Common API for application window properties/protocols.
The NETWinInfo class provides a common API for clients and window managers to set/read/change properties on an application window as defined by the NET Window Manager Specification.
- Author
- Bradley T. Hughes bhugh.nosp@m.es@t.nosp@m.rollt.nosp@m.ech..nosp@m.com
- See also
- NET
-
NETRootInfo
-
http://www.freedesktop.org/standards/wm-spec/
Definition at line 829 of file netwm.h.
void NETWinInfo::event |
( |
XEvent * |
event, |
|
|
unsigned long * |
properties, |
|
|
int |
properties_size |
|
) |
| |
This function takes the passed XEvent and returns an OR'ed list of NETWinInfo properties that have changed in the properties argument.
The new information will be read immediately by the class. The elements of the properties argument are as they would be passed to the constructor, if the array is not large enough, changed properties that don't fit in it won't be listed there (they'll be updated in the class though).
- Parameters
-
event | the event |
properties | properties that changed |
properties_size | size of the passed properties array |
Definition at line 3699 of file netwm.cpp.
const char * NETWinInfo::iconName |
( |
| ) |
const |
Returns the iconic name of the window in UTF-8 format.
Note that this has nothing to do with icons, but it's for "iconic" representations of the window (taskbars etc.), that should be shown when the window is in iconic state. See description of _NET_WM_ICON_NAME for details.
- Returns
- the iconic name
Definition at line 4630 of file netwm.cpp.
void NETWinInfo::setFrameOverlap |
( |
NETStrut |
strut | ) |
|
Sets the window frame overlap strut, i.e.
how far the window frame extends behind the client area on each side.
Set the strut values to -1 if you want the window frame to cover the whole client area.
The default values are 0.
- Since
- 4.4
Definition at line 3581 of file netwm.cpp.
void NETWinInfo::setUserTime |
( |
Time |
time | ) |
|
Sets user timestamp time
on the window (property _NET_WM_USER_TIME).
The timestamp is expressed as XServer time. If a window is shown with user timestamp older than the time of the last user action, it won't be activated after being shown, with the special value 0 meaning not to activate the window after being shown.
Definition at line 3682 of file netwm.cpp.
const char * NETWinInfo::visibleIconName |
( |
| ) |
const |
Returns the visible iconic name as set by the window manager in UTF-8 format.
Note that this has nothing to do with icons, but it's for "iconic" representations of the window (taskbars etc.), that should be shown when the window is in iconic state. See description of _NET_WM_VISIBLE_ICON_NAME for details.
- Returns
- the visible iconic name
Definition at line 4635 of file netwm.cpp.
NET::WindowType NETWinInfo::windowType |
( |
unsigned long |
supported_types | ) |
const |
Returns the window type for this client (see the NET base class documentation for a description of the various window types).
Since clients may specify several windows types for a window in order to support backwards compatibility and extensions not available in the NETWM spec, you should specify all window types you application supports (see the NET::WindowTypeMask mask values for various window types). This method will return the first window type that is listed in the supported types, or NET::Unknown if none of the window types is supported.
- Returns
- the type of the window
Definition at line 4605 of file netwm.cpp.