# st

Unnamed repository; edit this file 'description' to name the repository.

| Log | Files | Refs | README | LICENSE

    commit 8e66b5cc16831583a1086f3ba9cd0eaa55f02230
    parent 8d2d8848e8ac7117adffe9e1d168c5125934dfcf
    Author: Aurélien Aptel <aurelien.aptel@gmail.com>
    Date:   Fri, 16 Sep 2011 18:21:48 +0200

    move xembedatom in XWindow struct, add link to xembed specs.

    Diffstat:
    Mst.c | 8+++++---

    1 file changed, 5 insertions(+), 3 deletions(-)
    diff --git a/st.c b/st.c
    @@ -124,6 +124,7 @@ typedef struct {
     	Colormap cmap;
     	Window win;
     	Pixmap buf;
    +	Atom xembed;
     	XIM xim;
     	XIC xic;
     	int scr;
    @@ -268,7 +269,6 @@ static char **opt_cmd  = NULL;
     static char *opt_title = NULL;
     static char *opt_embed = NULL;
     static char *opt_class = NULL;
    -static Atom xembedatom;

     int
     utf8decode(char *s, long *u) {
    @@ -1671,7 +1671,7 @@ xinit(void) {
     		&(XColor){.red = 0xffff, .green = 0xffff, .blue = 0xffff},
     		&(XColor){.red = 0x0000, .green = 0x0000, .blue = 0x0000});

    -	xembedatom = XInternAtom(xw.dpy, "_XEMBED", False);
    +	xw.xembed = XInternAtom(xw.dpy, "_XEMBED", False);

     	XStoreName(xw.dpy, xw.win, opt_title ? opt_title : "st");
     	XMapWindow(xw.dpy, xw.win);
    @@ -1898,7 +1898,9 @@ kpress(XEvent *ev) {

     void
     cmessage(XEvent *e) {
    -	if (e->xclient.message_type == xembedatom && e->xclient.format == 32) {
    +	/* See xembed specs
    +	   http://standards.freedesktop.org/xembed-spec/xembed-spec-latest.html */
    +	if (e->xclient.message_type == xw.xembed && e->xclient.format == 32) {
     		if (e->xclient.data.l[1] == XEMBED_FOCUS_IN) {
     			xw.state |= WIN_FOCUSED;
     			xseturgency(0);