X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fclient.cc;h=d6111ce2b40a7a9ba255c3b9785ecae1f8b30b04;hb=9d5865a1603733e62fda7c8d61024cb05bf6792c;hp=55f2fb4cf6174690a2a0e4b2c00fa4bb38e47545;hpb=209b7f212d18078c82f0faab4094dcd7d8e36850;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;