X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fclient.cc;h=d6111ce2b40a7a9ba255c3b9785ecae1f8b30b04;hb=3762f3c88f4d84697df37c0a3bdc733e7bee6e45;hp=55f2fb4cf6174690a2a0e4b2c00fa4bb38e47545;hpb=b9cac2146e1dfe54cb6c0ce647d6c7d58d17de54;p=chaz%2Fopenbox diff --git a/src/client.cc b/src/client.cc index 55f2fb4c..d6111ce2 100644 --- a/src/client.cc +++ b/src/client.cc @@ -319,9 +319,13 @@ void OBClient::getShaped() if (otk::OBDisplay::shape()) { int foo; unsigned int ufoo; + int s; - XShapeQueryExtents(otk::OBDisplay::display, client.window, &_shaped, &foo, + XShapeSelectInput(otk::OBDisplay::display, _window, ShapeNotifyMask); + + XShapeQueryExtents(otk::OBDisplay::display, _window, &s, &foo, &foo, &ufoo, &ufoo, &foo, &foo, &foo, &ufoo, &ufoo); + _shaped = (s != 0); } #endif // SHAPE } @@ -649,6 +653,14 @@ void OBClient::update(const XClientMessageEvent &e) } +#if defined(SHAPE) || defined(DOXYGEN_IGNORE) +void OBClient::update(const XShapeEvent &e) +{ + _shaped = e.shaped; +} +#endif + + void OBClient::setArea(const otk::Rect &area) { _area = area;