X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=otk%2Fdisplay.hh;h=ed469a6c5c79e9acfa85a9e2bf7f979c532c403f;hb=4c768d5d63154e416e1282396dc48492d0585d42;hp=7f5ab02d0b55daf96385ab430152de3e60129361;hpb=c4a1fac49da32250dc4567880b385feb7feaa908;p=chaz%2Fopenbox diff --git a/otk/display.hh b/otk/display.hh index 7f5ab02d..ed469a6c 100644 --- a/otk/display.hh +++ b/otk/display.hh @@ -42,6 +42,12 @@ private: //! A list of all possible combinations of keyboard lock masks static unsigned int _mask_list[8]; + //! The value of the mask for the NumLock modifier + static unsigned int _numLockMask; + + //! The value of the mask for the ScrollLock modifier + static unsigned int _scrollLockMask; + //! The number of requested grabs on the display static int _grab_count; @@ -90,6 +96,9 @@ public: */ static const ScreenInfo* screenInfo(int snum); + //! Find a ScreenInfo based on a root window + static const ScreenInfo* findScreen(Window root); + //! Returns if the display has the shape extention available inline static bool shape() { return _shape; } //! Returns the shape extension's event base @@ -97,6 +106,9 @@ public: //! Returns if the display has the xinerama extention available inline static bool xinerama() { return _xinerama; } + inline static unsigned int numLockMask() { return _numLockMask; } + inline static unsigned int scrollLockMask() { return _scrollLockMask; } + //! Grabs the display static void grab(); @@ -113,6 +125,11 @@ public: bool allow_scroll_lock); static void ungrabButton(unsigned int button, unsigned int modifiers, Window grab_window); + static void grabKey(unsigned int keycode, unsigned int modifiers, + Window grab_window, bool owner_events, + int pointer_mode, int keyboard_mode, bool allow_scroll_lock); + static void ungrabKey(unsigned int keycode, unsigned int modifiers, + Window grab_window); }; }