[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 5/6] xsmfns: use pre-fetch SM_CLIENT_ID
From: |
Julien Danjou |
Subject: |
[PATCH 5/6] xsmfns: use pre-fetch SM_CLIENT_ID |
Date: |
Wed, 10 Nov 2010 14:49:55 +0100 |
Signed-off-by: Julien Danjou <address@hidden>
---
src/ChangeLog | 5 +++++
src/xsmfns.c | 4 ++--
src/xterm.c | 3 ++-
src/xterm.h | 3 +++
4 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/src/ChangeLog b/src/ChangeLog
index 13bb320..3975d8b 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,10 @@
2010-11-10 Julien Danjou <address@hidden>
+ * xterm.h (x_display_info): Add SM_CLIENT_ID atom.
+
+ * xsmfns.c (create_client_leader_window): Use SM_CLIENT_ID atom
+ from dpyinfo.
+
* xterm.c (set_wm_state): Use x_send_client_event rather than
Fx_send_client_event, using Atom directly.
(x_ewmh_activate_frame): Ditto.
diff --git a/src/xsmfns.c b/src/xsmfns.c
index 79dccfa..7b82fd4 100644
--- a/src/xsmfns.c
+++ b/src/xsmfns.c
@@ -410,8 +410,8 @@ create_client_leader_window (struct x_display_info
*dpyinfo, char *client_id)
XSetClassHint (dpyinfo->display, w, &class_hints);
XStoreName (dpyinfo->display, w, class_hints.res_name);
- sm_id = XInternAtom (dpyinfo->display, "SM_CLIENT_ID", False);
- XChangeProperty (dpyinfo->display, w, sm_id, XA_STRING, 8, PropModeReplace,
+ XChangeProperty (dpyinfo->display, w, dpyinfo->Xatom_SM_CLIENT_ID,
+ XA_STRING, 8, PropModeReplace,
(unsigned char *)client_id, strlen (client_id));
dpyinfo->client_leader_window = w;
diff --git a/src/xterm.c b/src/xterm.c
index 36cbb12..e8a7d07 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -10248,7 +10248,8 @@ x_term_init (Lisp_Object display_name, char
*xrm_option, char *resource_name)
"_NET_SUPPORTED", &dpyinfo->Xatom_net_supported,
"_NET_SUPPORTING_WM_CHECK", &dpyinfo->Xatom_net_supported,
"_NET_WM_WINDOW_OPACITY", &dpyinfo->Xatom_net_wm_window_opacity,
- "_NET_ACTIVE_WINDOW", &dpyinfo->Xatom_net_active_window
+ "_NET_ACTIVE_WINDOW", &dpyinfo->Xatom_net_active_window,
+ "SM_CLIENT_ID", &dpyinfo->Xatom_SM_CLIENT_ID
};
int i;
diff --git a/src/xterm.h b/src/xterm.h
index d9ed120..ed873e6 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -352,6 +352,9 @@ struct x_display_info
Atom Xatom_net_wm_name, Xatom_net_wm_icon_name;
/* Frame opacity */
Atom Xatom_net_wm_window_opacity;
+
+ /* SM */
+ Atom Xatom_SM_CLIENT_ID;
};
#ifdef HAVE_X_I18N
--
1.7.2.3
- X atoms rework, Julien Danjou, 2010/11/10
- [PATCH 5/6] xsmfns: use pre-fetch SM_CLIENT_ID,
Julien Danjou <=
- [PATCH 3/6] xterm: use atoms in set_wm_state, Julien Danjou, 2010/11/10
- [PATCH 6/6] xsettings: prefetch atoms, Julien Danjou, 2010/11/10
- [PATCH 4/6] xterm: get all atoms in one round-trip, Julien Danjou, 2010/11/10
- [PATCH 2/6] xselect: split x_send_client_event to use Atom directly, Julien Danjou, 2010/11/10
- [PATCH 1/6] xterm: store atoms in dpyinfo, Julien Danjou, 2010/11/10
- Re: X atoms rework, Jan Djärv, 2010/11/10
- Re: X atoms rework, Jan D., 2010/11/11
- Re: X atoms rework, Jan Djärv, 2010/11/12