compress property changes a bit
Dana Jansens danakj@orodu.net
1 files changed,
12 insertions(+),
1 deletions(-)
jump to
M
src/rootwindow.cc
→
src/rootwindow.cc
@@ -48,7 +48,18 @@ otk::OtkEventHandler::propertyHandler(e);
const otk::OBProperty *property = Openbox::instance->property(); - if (e.atom == property->atom(otk::OBProperty::net_desktop_names)) + // compress changes to a single property into a single change + XEvent ce; + while (XCheckTypedEvent(otk::OBDisplay::display, e.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 == property->atom(otk::OBProperty::net_desktop_names)) updateDesktopNames(); }