LibreOffice Module vcl (master)  1
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
vcl_sal::WMAdaptor Class Reference

#include <wmadaptor.hxx>

Collaboration diagram for vcl_sal::WMAdaptor:
[legend]

Public Types

enum  WMAtom {
  UTF8_STRING,
  NET_ACTIVE_WINDOW,
  NET_SUPPORTED,
  NET_SUPPORTING_WM_CHECK,
  NET_WM_NAME,
  NET_WM_DESKTOP,
  NET_WM_ICON_NAME,
  NET_WM_PID,
  NET_WM_PING,
  NET_WM_STATE,
  NET_WM_STATE_MAXIMIZED_HORZ,
  NET_WM_STATE_MAXIMIZED_VERT,
  NET_WM_STATE_MODAL,
  NET_WM_STATE_SHADED,
  NET_WM_STATE_SKIP_PAGER,
  NET_WM_STATE_SKIP_TASKBAR,
  NET_WM_STATE_STAYS_ON_TOP,
  NET_WM_STATE_STICKY,
  NET_WM_STATE_FULLSCREEN,
  NET_WM_STRUT,
  NET_WM_STRUT_PARTIAL,
  NET_WM_USER_TIME,
  NET_WM_WINDOW_TYPE,
  NET_WM_WINDOW_TYPE_DESKTOP,
  NET_WM_WINDOW_TYPE_DIALOG,
  NET_WM_WINDOW_TYPE_DOCK,
  NET_WM_WINDOW_TYPE_MENU,
  NET_WM_WINDOW_TYPE_NORMAL,
  NET_WM_WINDOW_TYPE_TOOLBAR,
  KDE_NET_WM_WINDOW_TYPE_OVERRIDE,
  NET_WM_WINDOW_TYPE_SPLASH,
  NET_WM_WINDOW_TYPE_UTILITY,
  NET_NUMBER_OF_DESKTOPS,
  NET_CURRENT_DESKTOP,
  NET_WORKAREA,
  NET_WM_ICON,
  WIN_SUPPORTING_WM_CHECK,
  WIN_PROTOCOLS,
  WIN_WORKSPACE_COUNT,
  WIN_WORKSPACE,
  WIN_LAYER,
  WIN_STATE,
  WIN_HINTS,
  WIN_APP_STATE,
  WIN_EXPANDED_SIZE,
  WIN_ICONS,
  WIN_CLIENT_LIST,
  WM_STATE,
  MOTIF_WM_HINTS,
  WM_PROTOCOLS,
  WM_DELETE_WINDOW,
  WM_TAKE_FOCUS,
  WM_CLIENT_LEADER,
  WM_COMMAND,
  WM_LOCALE_NAME,
  WM_TRANSIENT_FOR,
  SAL_QUITEVENT,
  SAL_USEREVENT,
  SAL_EXTTEXTEVENT,
  SAL_GETTIMEEVENT,
  VCL_SYSTEM_SETTINGS,
  XSETTINGS,
  XEMBED,
  XEMBED_INFO,
  NetAtomMax
}
 

Public Member Functions

virtual ~WMAdaptor ()
 
const OUString & getWindowManagerName () const
 
int getCurrentWorkArea () const
 
int getWindowWorkArea (::Window aWindow) const
 
const tools::RectanglegetWorkArea (int n) const
 
void switchToWorkArea (int nWorkArea) const
 
virtual void setWMName (X11SalFrame *pFrame, const OUString &rWMName) const
 
void setPID (X11SalFrame const *pFrame) const
 
void setClientMachine (X11SalFrame const *pFrame) const
 
void answerPing (X11SalFrame const *, XClientMessageEvent const *) const
 
virtual void maximizeFrame (X11SalFrame *pFrame, bool bHorizontal=true, bool bVertical=true) const
 
virtual void showFullScreen (X11SalFrame *pFrame, bool bFullScreen) const
 
bool isLegacyPartialFullscreen () const
 
virtual void setUserTime (X11SalFrame *i_pFrame, long i_nUserTime) const
 
bool supportsFullScreen () const
 
virtual void shade (X11SalFrame *pFrame, bool bToShaded) const
 
virtual void setFrameTypeAndDecoration (X11SalFrame *pFrame, WMWindowType eType, int nDecorationFlags, X11SalFrame *pTransientFrame) const
 
bool supportsSplash () const
 
virtual void enableAlwaysOnTop (X11SalFrame *pFrame, bool bEnable) const
 
bool isAlwaysOnTopOK () const
 
virtual int handlePropertyNotify (X11SalFrame *pFrame, XPropertyEvent *pEvent) const
 
virtual void frameIsMapping (X11SalFrame *) const
 
Atom getAtom (WMAtom eAtom) const
 
int getPositionWinGravity () const
 
int getInitWinGravity () const
 
void changeReferenceFrame (X11SalFrame *pFrame, X11SalFrame const *pReferenceFrame) const
 
void activateWindow (X11SalFrame const *pFrame, Time nTimestamp)
 

Static Public Member Functions

static std::unique_ptr< WMAdaptorcreateWMAdaptor (SalDisplay *)
 

Static Public Attributes

static const int decoration_Title = 0x00000001
 
static const int decoration_Border = 0x00000002
 
static const int decoration_Resize = 0x00000004
 
static const int decoration_MinimizeBtn = 0x00000008
 
static const int decoration_MaximizeBtn = 0x00000010
 
static const int decoration_CloseBtn = 0x00000020
 
static const int decoration_All = 0x10000000
 

Protected Member Functions

 WMAdaptor (SalDisplay *)
 
void initAtoms ()
 
bool getNetWmName ()
 
virtual bool isValid () const
 
bool getWMshouldSwitchWorkspace () const
 

Protected Attributes

SalDisplay *const m_pSalDisplay
 
Displaym_pDisplay
 
OUString m_aWMName
 
Atom m_aWMAtoms [NetAtomMax]
 
int m_nDesktops
 
bool m_bEqualWorkAreas
 
::std::vector< tools::Rectanglem_aWMWorkAreas
 
bool m_bEnableAlwaysOnTopWorks
 
bool m_bLegacyPartialFullscreen
 
int m_nWinGravity
 
int m_nInitWinGravity
 
bool m_bWMshouldSwitchWorkspace
 
bool m_bWMshouldSwitchWorkspaceInit
 

Detailed Description

Definition at line 37 of file wmadaptor.hxx.

Member Enumeration Documentation

Enumerator
UTF8_STRING 
NET_ACTIVE_WINDOW 
NET_SUPPORTED 
NET_SUPPORTING_WM_CHECK 
NET_WM_NAME 
NET_WM_DESKTOP 
NET_WM_ICON_NAME 
NET_WM_PID 
NET_WM_PING 
NET_WM_STATE 
NET_WM_STATE_MAXIMIZED_HORZ 
NET_WM_STATE_MAXIMIZED_VERT 
NET_WM_STATE_MODAL 
NET_WM_STATE_SHADED 
NET_WM_STATE_SKIP_PAGER 
NET_WM_STATE_SKIP_TASKBAR 
NET_WM_STATE_STAYS_ON_TOP 
NET_WM_STATE_STICKY 
NET_WM_STATE_FULLSCREEN 
NET_WM_STRUT 
NET_WM_STRUT_PARTIAL 
NET_WM_USER_TIME 
NET_WM_WINDOW_TYPE 
NET_WM_WINDOW_TYPE_DESKTOP 
NET_WM_WINDOW_TYPE_DIALOG 
NET_WM_WINDOW_TYPE_DOCK 
NET_WM_WINDOW_TYPE_MENU 
NET_WM_WINDOW_TYPE_NORMAL 
NET_WM_WINDOW_TYPE_TOOLBAR 
KDE_NET_WM_WINDOW_TYPE_OVERRIDE 
NET_WM_WINDOW_TYPE_SPLASH 
NET_WM_WINDOW_TYPE_UTILITY 
NET_NUMBER_OF_DESKTOPS 
NET_CURRENT_DESKTOP 
NET_WORKAREA 
NET_WM_ICON 
WIN_SUPPORTING_WM_CHECK 
WIN_PROTOCOLS 
WIN_WORKSPACE_COUNT 
WIN_WORKSPACE 
WIN_LAYER 
WIN_STATE 
WIN_HINTS 
WIN_APP_STATE 
WIN_EXPANDED_SIZE 
WIN_ICONS 
WIN_CLIENT_LIST 
WM_STATE 
MOTIF_WM_HINTS 
WM_PROTOCOLS 
WM_DELETE_WINDOW 
WM_TAKE_FOCUS 
WM_CLIENT_LEADER 
WM_COMMAND 
WM_LOCALE_NAME 
WM_TRANSIENT_FOR 
SAL_QUITEVENT 
SAL_USEREVENT 
SAL_EXTTEXTEVENT 
SAL_GETTIMEEVENT 
VCL_SYSTEM_SETTINGS 
XSETTINGS 
XEMBED 
XEMBED_INFO 
NetAtomMax 

Definition at line 40 of file wmadaptor.hxx.

Constructor & Destructor Documentation

vcl_sal::WMAdaptor::WMAdaptor ( SalDisplay )
protected
virtual vcl_sal::WMAdaptor::~WMAdaptor ( )
virtual

Member Function Documentation

void vcl_sal::WMAdaptor::activateWindow ( X11SalFrame const *  pFrame,
Time  nTimestamp 
)
void vcl_sal::WMAdaptor::answerPing ( X11SalFrame const *  ,
XClientMessageEvent const *   
) const
void vcl_sal::WMAdaptor::changeReferenceFrame ( X11SalFrame pFrame,
X11SalFrame const *  pReferenceFrame 
) const
static std::unique_ptr<WMAdaptor> vcl_sal::WMAdaptor::createWMAdaptor ( SalDisplay )
static
virtual void vcl_sal::WMAdaptor::enableAlwaysOnTop ( X11SalFrame pFrame,
bool  bEnable 
) const
virtual
virtual void vcl_sal::WMAdaptor::frameIsMapping ( X11SalFrame ) const
virtual
Atom vcl_sal::WMAdaptor::getAtom ( WMAtom  eAtom) const
inline

Definition at line 276 of file wmadaptor.hxx.

int vcl_sal::WMAdaptor::getCurrentWorkArea ( ) const
int vcl_sal::WMAdaptor::getInitWinGravity ( ) const
inline

Definition at line 281 of file wmadaptor.hxx.

bool vcl_sal::WMAdaptor::getNetWmName ( )
protected
int vcl_sal::WMAdaptor::getPositionWinGravity ( ) const
inline

Definition at line 279 of file wmadaptor.hxx.

const OUString& vcl_sal::WMAdaptor::getWindowManagerName ( ) const
inline

Definition at line 168 of file wmadaptor.hxx.

int vcl_sal::WMAdaptor::getWindowWorkArea ( ::Window  aWindow) const
bool vcl_sal::WMAdaptor::getWMshouldSwitchWorkspace ( ) const
protected
const tools::Rectangle& vcl_sal::WMAdaptor::getWorkArea ( int  n) const
inline

Definition at line 182 of file wmadaptor.hxx.

virtual int vcl_sal::WMAdaptor::handlePropertyNotify ( X11SalFrame pFrame,
XPropertyEvent *  pEvent 
) const
virtual
void vcl_sal::WMAdaptor::initAtoms ( )
protected
bool vcl_sal::WMAdaptor::isAlwaysOnTopOK ( ) const
inline

Definition at line 261 of file wmadaptor.hxx.

bool vcl_sal::WMAdaptor::isLegacyPartialFullscreen ( ) const
inline

Definition at line 225 of file wmadaptor.hxx.

virtual bool vcl_sal::WMAdaptor::isValid ( ) const
protectedvirtual
virtual void vcl_sal::WMAdaptor::maximizeFrame ( X11SalFrame pFrame,
bool  bHorizontal = true,
bool  bVertical = true 
) const
virtual
void vcl_sal::WMAdaptor::setClientMachine ( X11SalFrame const *  pFrame) const
virtual void vcl_sal::WMAdaptor::setFrameTypeAndDecoration ( X11SalFrame pFrame,
WMWindowType  eType,
int  nDecorationFlags,
X11SalFrame pTransientFrame 
) const
virtual
void vcl_sal::WMAdaptor::setPID ( X11SalFrame const *  pFrame) const
virtual void vcl_sal::WMAdaptor::setUserTime ( X11SalFrame i_pFrame,
long  i_nUserTime 
) const
virtual
virtual void vcl_sal::WMAdaptor::setWMName ( X11SalFrame pFrame,
const OUString &  rWMName 
) const
virtual
virtual void vcl_sal::WMAdaptor::shade ( X11SalFrame pFrame,
bool  bToShaded 
) const
virtual
virtual void vcl_sal::WMAdaptor::showFullScreen ( X11SalFrame pFrame,
bool  bFullScreen 
) const
virtual
bool vcl_sal::WMAdaptor::supportsFullScreen ( ) const
inline

Definition at line 235 of file wmadaptor.hxx.

bool vcl_sal::WMAdaptor::supportsSplash ( ) const
inline

Definition at line 251 of file wmadaptor.hxx.

void vcl_sal::WMAdaptor::switchToWorkArea ( int  nWorkArea) const

Member Data Documentation

const int vcl_sal::WMAdaptor::decoration_All = 0x10000000
static

Definition at line 126 of file wmadaptor.hxx.

const int vcl_sal::WMAdaptor::decoration_Border = 0x00000002
static

Definition at line 121 of file wmadaptor.hxx.

const int vcl_sal::WMAdaptor::decoration_CloseBtn = 0x00000020
static

Definition at line 125 of file wmadaptor.hxx.

const int vcl_sal::WMAdaptor::decoration_MaximizeBtn = 0x00000010
static

Definition at line 124 of file wmadaptor.hxx.

const int vcl_sal::WMAdaptor::decoration_MinimizeBtn = 0x00000008
static

Definition at line 123 of file wmadaptor.hxx.

const int vcl_sal::WMAdaptor::decoration_Resize = 0x00000004
static

Definition at line 122 of file wmadaptor.hxx.

const int vcl_sal::WMAdaptor::decoration_Title = 0x00000001
static

Definition at line 120 of file wmadaptor.hxx.

Atom vcl_sal::WMAdaptor::m_aWMAtoms[NetAtomMax]
protected

Definition at line 132 of file wmadaptor.hxx.

OUString vcl_sal::WMAdaptor::m_aWMName
protected

Definition at line 131 of file wmadaptor.hxx.

::std::vector< tools::Rectangle > vcl_sal::WMAdaptor::m_aWMWorkAreas
protected

Definition at line 136 of file wmadaptor.hxx.

bool vcl_sal::WMAdaptor::m_bEnableAlwaysOnTopWorks
protected

Definition at line 137 of file wmadaptor.hxx.

bool vcl_sal::WMAdaptor::m_bEqualWorkAreas
protected

Definition at line 134 of file wmadaptor.hxx.

bool vcl_sal::WMAdaptor::m_bLegacyPartialFullscreen
protected

Definition at line 138 of file wmadaptor.hxx.

bool vcl_sal::WMAdaptor::m_bWMshouldSwitchWorkspace
protected

Definition at line 141 of file wmadaptor.hxx.

bool vcl_sal::WMAdaptor::m_bWMshouldSwitchWorkspaceInit
protected

Definition at line 142 of file wmadaptor.hxx.

int vcl_sal::WMAdaptor::m_nDesktops
protected

Definition at line 133 of file wmadaptor.hxx.

int vcl_sal::WMAdaptor::m_nInitWinGravity
protected

Definition at line 140 of file wmadaptor.hxx.

int vcl_sal::WMAdaptor::m_nWinGravity
protected

Definition at line 139 of file wmadaptor.hxx.

Display* vcl_sal::WMAdaptor::m_pDisplay
protected

Definition at line 130 of file wmadaptor.hxx.

SalDisplay* const vcl_sal::WMAdaptor::m_pSalDisplay
protected

Definition at line 129 of file wmadaptor.hxx.


The documentation for this class was generated from the following file: