From: Dana Jansens Date: Mon, 2 Dec 2002 22:32:38 +0000 (+0000) Subject: more compressing X-Git-Url: https://git.dogcows.com/gitweb?a=commitdiff_plain;h=7efcff07ea463bd9ae1d374119540fb8dc508489;hp=786834abea24b8ebc233d894e6ffd40a38da0170;p=chaz%2Fopenbox more compressing --- diff --git a/src/client.cc b/src/client.cc index 7dd63b2a..a92c1796 100644 --- a/src/client.cc +++ b/src/client.cc @@ -504,6 +504,17 @@ void OBClient::propertyHandler(const XPropertyEvent &e) const otk::OBProperty *property = Openbox::instance->property(); + // compress changes to a single property into a single change + XEvent ce; + while (XCheckTypedEvent(otk::OBDisplay::display, e.message_type, &ce)) { + // XXX: it would be nice to compress ALL changes to a property, not just + // changes in a row without other props between. + if (ce.xproperty.atom != e.atom) { + XPutBackEvent(otk::OBDisplay::display, &ce); + break; + } + } + if (e.atom == XA_WM_NORMAL_HINTS) updateNormalHints(); else if (e.atom == XA_WM_HINTS)