X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2FXAtom.cc;h=b2a7c4efae9369820c81526c974b4e79c1da6468;hb=733b4f4a3366eca53dc68fd40069b673b0261c96;hp=f6d0be730f82a5e0deda8b3be4b16ab80b4b5bbc;hpb=e8b6f65186587ac8e79fcc81d8006ea1270a02d4;p=chaz%2Fopenbox diff --git a/src/XAtom.cc b/src/XAtom.cc index f6d0be73..b2a7c4ef 100644 --- a/src/XAtom.cc +++ b/src/XAtom.cc @@ -491,3 +491,25 @@ void XAtom::eraseValue(Window win, Atoms atom) const { assert(atom >= 0 && atom < NUM_ATOMS); XDeleteProperty(_display, win, _atoms[atom]); } + + +void XAtom::sendClientMessage(Window target, Atoms type, Window about, + long data, long data1, long data2, + long data3) const { + assert(atom >= 0 && atom < NUM_ATOMS); + assert(target != None); + + XEvent e; + e.xclient.type = ClientMessage; + e.xclient.format = 32; + e.xclient.message_type = _atoms[type]; + e.xclient.window = about; + e.xclient.data.l[0] = data; + e.xclient.data.l[1] = data1; + e.xclient.data.l[2] = data2; + e.xclient.data.l[3] = data3; + + XSendEvent(_display, target, False, + SubstructureRedirectMask | SubstructureNotifyMask, + &e); +}