]> Dogcows Code - chaz/openbox/blobdiff - otk/display.cc
make parentrelative decorations work
[chaz/openbox] / otk / display.cc
index 21215e2b7ff51ad026287d8f0b6ccdd1418ce17d..9817b81bc43621c34daef85c7c5e224797e2b9fe 100644 (file)
@@ -1,8 +1,6 @@
 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
 
-#ifdef HAVE_CONFIG_H
-# include "../config.h"
-#endif
+#include "config.h"
 
 #include "display.hh"
 #include "screeninfo.hh"
@@ -24,10 +22,6 @@ extern "C" {
 #include <X11/extensions/Xinerama.h>
 #endif // XINERAMA
 
-#ifdef    HAVE_STDIO_H
-#  include <stdio.h>
-#endif // HAVE_STDIO_H
-
 #ifdef    HAVE_SIGNAL_H
 #  include <signal.h>
 #endif // HAVE_SIGNAL_H
@@ -45,6 +39,8 @@ extern "C" {
 #define _(str) gettext(str)
 }
 
+#include <cstdio>
+
 namespace otk {
 
 
@@ -58,7 +54,7 @@ static int xerrorHandler(::Display *d, XErrorEvent *e)
 
     //if (e->error_code != BadWindow)
     {
-      XGetErrorText(d, e->error_code, errtxt, 128);
+      XGetErrorText(d, e->error_code, errtxt, 127);
       printf("X Error: %s\n", errtxt);
       if (e->error_code != BadWindow)
         abort();
@@ -169,7 +165,7 @@ DISPLAY environment variable approriately.\n\n"));
   _rendercontrol_list = new RenderControl*[ScreenCount(_display)];
   for (int i = 0; i < ScreenCount(_display); ++i) {
     _screeninfo_list[i] = new ScreenInfo(i);
-    _rendercontrol_list[i] = RenderControl::getRenderControl(i);
+    _rendercontrol_list[i] = RenderControl::createRenderControl(i);
   }
 }
 
@@ -219,9 +215,9 @@ const RenderControl *Display::renderControl(int snum) const
 
 void Display::setIgnoreErrors(bool t)
 {
-  _ignore_errors = t;
   // sync up so that anything already sent is/isn't ignored!
   XSync(_display, false);
+  _ignore_errors = t;
 }
 
 void Display::grab()
@@ -304,4 +300,9 @@ void Display::ungrabKey(unsigned int keycode, unsigned int modifiers,
                grab_window);
 }
 
+void Display::ungrabAllKeys(Window grab_window) const
+{
+  XUngrabKey(_display, AnyKey, AnyModifier, grab_window);
+}
+
 }
This page took 0.021385 seconds and 4 git commands to generate.