static Cursor cursors[OB_NUM_CURSORS];
static KeyCode keys[OB_NUM_KEYS];
static gint exitcode = 0;
-static gboolean message_and_exit = FALSE;
-static Atom *message;
+static guint remote_control = 0;
static gboolean being_replaced = FALSE;
static void signal_handler(gint signal, gpointer data);
/* parse out command line args */
parse_args(argc, argv);
- if (!message_and_exit) {
+ if (!remote_control) {
parse_paths_startup();
session_startup(argc, argv);
if (fcntl(ConnectionNumber(ob_display), F_SETFD, 1) == -1)
ob_exit_with_error("Failed to set display as close-on-exec.");
- if (message_and_exit) {
+ if (remote_control) {
prop_startup();
- /* Send client message telling the OB process to reconfigure */
- prop_message(RootWindow(ob_display, ob_screen), prop_atoms.ob_control,
- *message, 0, 0, 0, SubstructureNotifyMask);
+ /* Send client message telling the OB process to:
+ * remote_control = 1 -> reconfigure
+ * remote_control = 2 -> restart */
+ PROP_MSG(RootWindow(ob_display, ob_screen),
+ ob_control, remote_control, 0, 0, 0);
XCloseDisplay(ob_display);
- exit(0);
+ exit(EXIT_SUCCESS);
}
ob_main_loop = ob_main_loop_new(ob_display);
if (!reconfigure) {
/* get all the existing windows */
client_manage_all();
- focus_fallback(OB_FOCUS_FALLBACK_NOFOCUS);
+ focus_fallback(TRUE);
} else {
GList *it;
static void print_version()
{
g_print("Openbox %s\n", PACKAGE_VERSION);
- g_print("Copyright (c) 2006 Mikael Magnusson\n");
- g_print("Copyright (c) 2003 Ben Jansens\n\n");
+ g_print("Copyright (c) 2007 Mikael Magnusson\n");
+ g_print("Copyright (c) 2007 Dana Jansens\n\n");
g_print("This program comes with ABSOLUTELY NO WARRANTY.\n");
g_print("This is free software, and you are welcome to redistribute it\n");
g_print("under certain conditions. See the file COPYING for details.\n\n");
} else if (!strcmp(argv[i], "--debug")) {
ob_debug_show_output(TRUE);
} else if (!strcmp(argv[i], "--reconfigure")) {
- message_and_exit = TRUE;
- message = &prop_atoms.ob_reconfigure;
+ remote_control = 1;
} else if (!strcmp(argv[i], "--restart")) {
- message_and_exit = TRUE;
- message = &prop_atoms.ob_restart;
+ remote_control = 2;
}
}
}