X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=otk%2Fdisplay.cc;h=4613b9ba9a5b5da75b8a5b5a43d5fdfeeb2c96e8;hb=1eef416eee7b4df16a5cb1b834595e0419b102d2;hp=459244283e4a99f59fa4aa50ca45346f5f0a802c;hpb=ace8c8896aa13a6fc4e489277cf9c96f49175322;p=chaz%2Fopenbox diff --git a/otk/display.cc b/otk/display.cc index 45924428..4613b9ba 100644 --- a/otk/display.cc +++ b/otk/display.cc @@ -11,6 +11,10 @@ extern "C" { #include +#ifdef SHAPE +#include +#endif // SHAPE + #ifdef HAVE_STDIO_H # include #endif // HAVE_STDIO_H @@ -41,9 +45,9 @@ namespace otk { Display *OBDisplay::display = (Display*) 0; bool OBDisplay::_shape = false; -int OBDisplay::_shape_event_basep; +int OBDisplay::_shape_event_basep = 0; bool OBDisplay::_xinerama = false; -int OBDisplay::_xinerama_event_basep; +int OBDisplay::_xinerama_event_basep = 0; unsigned int OBDisplay::_mask_list[8]; OBDisplay::ScreenInfoList OBDisplay::_screenInfoList; BGCCache *OBDisplay::_gccache = (BGCCache*) 0; @@ -54,8 +58,11 @@ int OBDisplay::xerrorHandler(Display *d, XErrorEvent *e) #ifdef DEBUG char errtxt[128]; - XGetErrorText(d, e->error_code, errtxt, 128); - printf("X Error: %s\n", errtxt); + //if (e->error_code != BadWindow) + { + XGetErrorText(d, e->error_code, errtxt, 128); + printf("X Error: %s\n", errtxt); + } #else (void)d; (void)e; @@ -158,6 +165,11 @@ void OBDisplay::destroy() } +const ScreenInfo* OBDisplay::screenInfo(int snum) { + assert(snum >= 0); + assert(snum < static_cast(_screenInfoList.size())); + return &_screenInfoList[snum]; +}