]> Dogcows Code - chaz/openbox/blobdiff - otk/display.hh
fix \'s
[chaz/openbox] / otk / display.hh
index e8f91ae946dcd1bec090d643b2313ac5b82d78af..0b5d5844315ccb4e024a83032f1dea36d0a7c2d7 100644 (file)
@@ -29,19 +29,33 @@ public:
   typedef std::vector<ScreenInfo> ScreenInfoList;
 
 private:
-  //! Does the display have the Shape extention?
+  //! Does the display have the XKB extension?
+  static bool _xkb;
+  //! Base for events for the XKB extension
+  static int  _xkb_event_basep;
+
+  //! Does the display have the Shape extension?
   static bool _shape;
-  //! Base for events for the Shape extention
+  //! Base for events for the Shape extension
   static int  _shape_event_basep;
 
-  //! Does the display have the Xinerama extention?
+  //! Does the display have the Xinerama extension?
   static bool _xinerama;
-  //! Base for events for the Xinerama extention
+  //! Base for events for the Xinerama extension
   static int  _xinerama_event_basep;
 
   //! 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;
+
   //! A list of information for all screens on the display
   static ScreenInfoList _screenInfoList;
 
@@ -87,14 +101,29 @@ public:
   */
   static const ScreenInfo* screenInfo(int snum);
 
-  //! Returns if the display has the shape extention available
+  //! Find a ScreenInfo based on a root window
+  static const ScreenInfo* findScreen(Window root);
+
+  //! Returns if the display has the xkb extension available
+  inline static bool xkb() { return _xkb; }
+  //! Returns the xkb extension's event base
+  inline static int xkbEventBase() { return _xkb_event_basep; }
+
+  //! Returns if the display has the shape extension available
   inline static bool shape() { return _shape; }
   //! Returns the shape extension's event base
   inline static int shapeEventBase() { return _shape_event_basep; }
-  //! Returns if the display has the xinerama extention available
+  //! Returns if the display has the xinerama extension 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();
+
+  //! Ungrabs the display
+  static void ungrab();
 
 
   
@@ -106,6 +135,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);
 };
 
 }
This page took 0.021551 seconds and 4 git commands to generate.