summary refs log tree commit diff
path: root/calmwm.h
diff options
context:
space:
mode:
authorokan <okan>2015-09-16 17:58:25 +0000
committerokan <okan>2015-09-16 17:58:25 +0000
commit0fdcf3f3dfd336e7593482286dff49cd8be6ce44 (patch)
tree93ef81d5c129af3aeae6650297f0276300882818 /calmwm.h
parent47a10cc05549b0a94e3606ca7be9fe626754d12d (diff)
downloadcwm-0fdcf3f3dfd336e7593482286dff49cd8be6ce44.tar.gz
cwm-0fdcf3f3dfd336e7593482286dff49cd8be6ce44.tar.xz
cwm-0fdcf3f3dfd336e7593482286dff49cd8be6ce44.zip
On execwm, we should properly release resources before exec'ing into a
new window manager; so allow CWM_EXEC_WM to assign new wm to wm_argv and
pass through cwm_status (now EXECWM) so that x_teardown() gets called
before exec'ing the new window manager.  Removes the need for a separate
x_restart() now, using new wm_argv; and consolidates errno for execvp.
Diffstat (limited to 'calmwm.h')
-rw-r--r--calmwm.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/calmwm.h b/calmwm.h
index 039dc36..4aac82c 100644
--- a/calmwm.h
+++ b/calmwm.h
@@ -88,7 +88,7 @@
 
 #define CWM_QUIT		0x0000
 #define CWM_RUNNING		0x0001
-#define CWM_RESTART		0x0002
+#define CWM_EXECWM		0x0002
 
 union arg {
 	char	*c;
@@ -334,6 +334,7 @@ extern Display				*X_Dpy;
 extern Time				 Last_Event_Time;
 extern struct screen_ctx_q		 Screenq;
 extern struct conf			 Conf;
+extern char				*wm_argv;
 extern const char			*homedir;
 extern int				 HasRandr, Randr_ev;
 
@@ -581,6 +582,7 @@ void 			 xu_ewmh_handle_net_wm_state_msg(struct client_ctx *,
 void 			 xu_ewmh_set_net_wm_state(struct client_ctx *);
 void 			 xu_ewmh_restore_net_wm_state(struct client_ctx *);
 
+char			*u_argv(char * const *);
 void			 u_exec(char *);
 void			 u_spawn(char *);