CTWM
Loading...
Searching...
No Matches
Data Structures | Macros | Typedefs | Enumerations | Functions
/usr/src/RPM/BUILD/ctwm-4.1.0/ewmh.h File Reference

Go to the source code of this file.

Data Structures

struct  EwmhStrut
 

Macros

#define EWMH_HAS_STRUT   0x0001
 
#define EWMH_STATE_MAXIMIZED_VERT   0x0010 /* for _NET_WM_STATE */
 
#define EWMH_STATE_MAXIMIZED_HORZ   0x0020 /* for _NET_WM_STATE */
 
#define EWMH_STATE_FULLSCREEN   0x0040 /* for _NET_WM_STATE */
 
#define EWMH_STATE_SHADED   0x0080 /* for _NET_WM_STATE */
 
#define EWMH_STATE_ABOVE   0x0100 /* for _NET_WM_STATE */
 
#define EWMH_STATE_BELOW   0x0200 /* for _NET_WM_STATE */
 
#define EWMH_STATE_ALL   0xFFF0
 
#define EWMH_PRI_DESKTOP   -8
 
#define EWMH_PRI_DOCK   4
 
#define EWMH_PRI_FULLSCREEN   6
 
#define EWMH_PRI_ABOVE   2
 

Typedefs

typedef enum EwmhWindowType EwmhWindowType
 
typedef struct EwmhStrut EwmhStrut
 

Enumerations

enum  EwmhWindowType { wt_Normal , wt_Desktop , wt_Dock }
 

Functions

void EwmhInit (void)
 
bool EwmhInitScreenEarly (ScreenInfo *scr)
 
void EwmhInitScreenLate (ScreenInfo *scr)
 
void EwmhTerminate (void)
 
void EwmhSelectionClear (XSelectionClearEvent *sev)
 
bool EwmhClientMessage (XClientMessageEvent *msg)
 
ImageEwmhGetIcon (ScreenInfo *scr, TwmWindow *twm_win)
 
int EwmhHandlePropertyNotify (XPropertyEvent *event, TwmWindow *twm_win)
 
void EwmhSet_NET_WM_DESKTOP (TwmWindow *twm_win)
 
void EwmhSet_NET_WM_DESKTOP_ws (TwmWindow *twm_win, WorkSpace *ws)
 
int EwmhGetOccupation (TwmWindow *twm_win)
 
void EwmhUnmapNotify (TwmWindow *twm_win)
 
void EwmhAddClientWindow (TwmWindow *new_win)
 
void EwmhDeleteClientWindow (TwmWindow *old_win)
 
void EwmhSet_NET_CLIENT_LIST_STACKING (void)
 
void EwmhSet_NET_ACTIVE_WINDOW (Window w)
 
void EwmhGetProperties (TwmWindow *twm_win)
 
int EwmhGetInitPriority (TwmWindow *twm_win)
 
bool EwmhHasBorder (TwmWindow *twm_win)
 
bool EwmhHasTitle (TwmWindow *twm_win)
 
bool EwmhOnWindowRing (TwmWindow *twm_win)
 
void EwmhSet_NET_FRAME_EXTENTS (TwmWindow *twm_win)
 Set _NET_FRAME_EXTENTS property.
 
void EwmhSet_NET_SHOWING_DESKTOP (int state)
 
void EwmhSet_NET_WM_STATE (TwmWindow *twm_win, int changes)
 

Macro Definition Documentation

◆ EWMH_HAS_STRUT

#define EWMH_HAS_STRUT   0x0001

Definition at line 35 of file ewmh.h.

Referenced by AddWindow(), EwmhDeleteClientWindow(), and EwmhGetStrut().

◆ EWMH_PRI_ABOVE

#define EWMH_PRI_ABOVE   2

Definition at line 56 of file ewmh.h.

Referenced by OwlEffectivePriority().

◆ EWMH_PRI_DESKTOP

#define EWMH_PRI_DESKTOP   -8

Definition at line 49 of file ewmh.h.

Referenced by EwmhGetInitPriority(), and EwmhSet_NET_WM_STATE().

◆ EWMH_PRI_DOCK

#define EWMH_PRI_DOCK   4

Definition at line 50 of file ewmh.h.

Referenced by EwmhGetInitPriority(), EwmhSet_NET_WM_STATE(), and OwlEffectivePriority().

◆ EWMH_PRI_FULLSCREEN

#define EWMH_PRI_FULLSCREEN   6

Definition at line 53 of file ewmh.h.

Referenced by OwlEffectivePriority().

◆ EWMH_STATE_ABOVE

#define EWMH_STATE_ABOVE   0x0100 /* for _NET_WM_STATE */

◆ EWMH_STATE_ALL

#define EWMH_STATE_ALL   0xFFF0

Definition at line 43 of file ewmh.h.

Referenced by HandleMapRequest().

◆ EWMH_STATE_BELOW

#define EWMH_STATE_BELOW   0x0200 /* for _NET_WM_STATE */

◆ EWMH_STATE_FULLSCREEN

#define EWMH_STATE_FULLSCREEN   0x0040 /* for _NET_WM_STATE */

Definition at line 39 of file ewmh.h.

Referenced by AddNewOwl(), EwmhClientMessage_NET_WM_STATEchange(), and EwmhSet_NET_WM_STATE().

◆ EWMH_STATE_MAXIMIZED_HORZ

#define EWMH_STATE_MAXIMIZED_HORZ   0x0020 /* for _NET_WM_STATE */

◆ EWMH_STATE_MAXIMIZED_VERT

#define EWMH_STATE_MAXIMIZED_VERT   0x0010 /* for _NET_WM_STATE */

◆ EWMH_STATE_SHADED

#define EWMH_STATE_SHADED   0x0080 /* for _NET_WM_STATE */

Typedef Documentation

◆ EwmhStrut

typedef struct EwmhStrut EwmhStrut

◆ EwmhWindowType

Enumeration Type Documentation

◆ EwmhWindowType

Enumerator
wt_Normal 
wt_Desktop 
wt_Dock 

Definition at line 16 of file ewmh.h.

Function Documentation

◆ EwmhAddClientWindow()

void EwmhAddClientWindow ( TwmWindow * new_win)

Definition at line 1701 of file ewmh.c.

References dpy, PlaceX, and Scr.

Referenced by HandleMapRequest().

◆ EwmhClientMessage()

bool EwmhClientMessage ( XClientMessageEvent * msg)

◆ EwmhDeleteClientWindow()

void EwmhDeleteClientWindow ( TwmWindow * old_win)

Definition at line 1738 of file ewmh.c.

References dpy, EWMH_HAS_STRUT, EwmhRemoveStrut(), PlaceX, and Scr.

Referenced by HandleDestroyNotify().

◆ EwmhGetIcon()

Image * EwmhGetIcon ( ScreenInfo * scr,
TwmWindow * twm_win )

Definition at line 637 of file ewmh.c.

References ALLOW_DEAD_STORE, dpy, ExtractIcon(), PlaceX, Scr, and TwmWindow::w.

Referenced by CreateIconWindow(), and EwmhHandle_NET_WM_ICONNotify().

◆ EwmhGetInitPriority()

int EwmhGetInitPriority ( TwmWindow * twm_win)

Definition at line 1864 of file ewmh.c.

References EWMH_PRI_DESKTOP, EWMH_PRI_DOCK, wt_Desktop, and wt_Dock.

Referenced by AddNewOwl().

◆ EwmhGetOccupation()

int EwmhGetOccupation ( TwmWindow * twm_win)

Definition at line 1602 of file ewmh.c.

References ALL_WORKSPACES, EwmhGetWindowProperties(), fullOccupation, PlaceX, Scr, and TwmWindow::w.

Referenced by SetupOccupation().

◆ EwmhGetProperties()

void EwmhGetProperties ( TwmWindow * twm_win)

◆ EwmhHandlePropertyNotify()

int EwmhHandlePropertyNotify ( XPropertyEvent * event,
TwmWindow * twm_win )

◆ EwmhHasBorder()

bool EwmhHasBorder ( TwmWindow * twm_win)

Definition at line 1876 of file ewmh.c.

References wt_Desktop, and wt_Dock.

Referenced by AddWindow().

◆ EwmhHasTitle()

bool EwmhHasTitle ( TwmWindow * twm_win)

Definition at line 1887 of file ewmh.c.

References wt_Desktop, and wt_Dock.

Referenced by AddWindow().

◆ EwmhInit()

void EwmhInit ( void )

Definition at line 132 of file ewmh.c.

References EwmhInitAtoms().

Referenced by ctwm_main().

◆ EwmhInitScreenEarly()

bool EwmhInitScreenEarly ( ScreenInfo * scr)

Definition at line 307 of file ewmh.c.

References dpy, EwmhReplaceWM(), PlaceX, and ScreenInfo::XineramaRoot.

Referenced by takeover_screen().

◆ EwmhInitScreenLate()

void EwmhInitScreenLate ( ScreenInfo * scr)

◆ EwmhOnWindowRing()

bool EwmhOnWindowRing ( TwmWindow * twm_win)

Definition at line 1898 of file ewmh.c.

References wt_Desktop, and wt_Dock.

Referenced by AddWindow().

◆ EwmhSelectionClear()

void EwmhSelectionClear ( XSelectionClearEvent * sev)

Definition at line 546 of file ewmh.c.

References DoShutdown(), and PlaceX.

◆ EwmhSet_NET_ACTIVE_WINDOW()

void EwmhSet_NET_ACTIVE_WINDOW ( Window w)

Definition at line 1823 of file ewmh.c.

References dpy, PlaceX, and Scr.

Referenced by SetFocus().

◆ EwmhSet_NET_CLIENT_LIST_STACKING()

void EwmhSet_NET_CLIENT_LIST_STACKING ( void )

◆ EwmhSet_NET_FRAME_EXTENTS()

void EwmhSet_NET_FRAME_EXTENTS ( TwmWindow * twm_win)

Set _NET_FRAME_EXTENTS property.

This tells the client how much space is being taken up by the window decorations. Some clients may need this information to position other windows on top of themselves. e.g., Firefox's form autofill and context menu will be positioned a bit wrong (high, by the height of the titlebar) without this.

Definition at line 2099 of file ewmh.c.

References dpy, TwmWindow::frame_bw, TwmWindow::frame_bw3D, PlaceX, TwmWindow::title_height, and TwmWindow::w.

Referenced by AddWindow().

◆ EwmhSet_NET_SHOWING_DESKTOP()

void EwmhSet_NET_SHOWING_DESKTOP ( int state)

Definition at line 2116 of file ewmh.c.

References dpy, PlaceX, and Scr.

Referenced by EwmhInitScreenLate(), and ShowBackground().

◆ EwmhSet_NET_WM_DESKTOP()

void EwmhSet_NET_WM_DESKTOP ( TwmWindow * twm_win)

◆ EwmhSet_NET_WM_DESKTOP_ws()

void EwmhSet_NET_WM_DESKTOP_ws ( TwmWindow * twm_win,
WorkSpace * ws )

◆ EwmhSet_NET_WM_STATE()

void EwmhSet_NET_WM_STATE ( TwmWindow * twm_win,
int changes )

◆ EwmhTerminate()

void EwmhTerminate ( void )

Definition at line 528 of file ewmh.c.

References EwmhTerminateScreen(), NumScreens, PlaceX, and ScreenList.

Referenced by DoShutdown().

◆ EwmhUnmapNotify()

void EwmhUnmapNotify ( TwmWindow * twm_win)

Definition at line 1689 of file ewmh.c.

References dpy, PlaceX, and TwmWindow::w.

Referenced by HandleUnmapNotify().