Switch to using XInternAtoms for caching the atom numbers. Saves a pile

of function calls and server roundtrips.

ok okan@
This commit is contained in:
oga 2009-01-23 20:04:30 +00:00
parent 479c9127c8
commit ed5d1f7c8b

View File

@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
* $Id: xutil.c,v 1.11 2009/01/22 18:06:16 oga Exp $
* $Id: xutil.c,v 1.12 2009/01/23 20:04:30 oga Exp $
*/
#include "headers.h"
@ -170,13 +170,17 @@ xu_setstate(struct client_ctx *cc, int state)
}
Atom cwm_atoms[CWM_NO_ATOMS];
char *atoms[CWM_NO_ATOMS] = {
"WM_STATE",
"WM_DELETE_WINDOW",
"WM_TAKE_FOCUS",
"WM_PROTOCOLS",
"_MOTIF_WM_HINTS"
};
void
xu_getatoms(void)
{
WM_STATE = XInternAtom(X_Dpy, "WM_STATE", False);
WM_DELETE_WINDOW = XInternAtom(X_Dpy, "WM_DELETE_WINDOW", False);
WM_TAKE_FOCUS = XInternAtom(X_Dpy, "WM_TAKE_FOCUS", False);
WM_PROTOCOLS = XInternAtom(X_Dpy, "WM_PROTOCOLS", False);
_MOTIF_WM_HINTS = XInternAtom(X_Dpy, "_MOTIF_WM_HINTS", False);
XInternAtoms(X_Dpy, atoms, CWM_NO_ATOMS, False, cwm_atoms);
}