]> Dogcows Code - chaz/openbox/blobdiff - openbox/openbox.c
move session code out of openbox.c all into session.c
[chaz/openbox] / openbox / openbox.c
index 1490ab7305afe1204a27b1f09e60b2cd5e4b3067..3f32917b25f58703bc04b9f5bb32549db79723cb 100644 (file)
@@ -17,7 +17,6 @@
 #include "extensions.h"
 #include "menuframe.h"
 #include "grab.h"
-#include "popup.h"
 #include "group.h"
 #include "config.h"
 #include "mainloop.h"
@@ -54,8 +53,6 @@ RrTheme    *ob_rr_theme;
 ObMainLoop *ob_main_loop;
 Display    *ob_display;
 gint        ob_screen;
-gboolean    ob_sm_use = TRUE;
-gchar      *ob_sm_id;
 gboolean    ob_replace_wm;
 
 static ObState   state;
@@ -65,7 +62,6 @@ static gboolean  restart;
 static char     *restart_path;
 static Cursor    cursors[OB_NUM_CURSORS];
 static KeyCode   keys[OB_NUM_KEYS];
-static gchar    *sm_save_file;
 
 static void signal_handler(int signal, gpointer data);
 static void parse_args(int argc, char **argv);
@@ -124,9 +120,7 @@ int main(int argc, char **argv)
     ob_main_loop_signal_add(ob_main_loop, SIGHUP, signal_handler, NULL, NULL);
     ob_main_loop_signal_add(ob_main_loop, SIGPIPE, signal_handler, NULL, NULL);
 
-    if (sm_save_file)
-        session_load(sm_save_file);
-    session_startup(argc, argv);
+    session_startup(&argc, &argv);
 
     ob_screen = DefaultScreen(ob_display);
 
@@ -195,28 +189,6 @@ int main(int argc, char **argv)
 
     if (screen_annex()) { /* it will be ours! */
         do {
-            Window reconfig_window;
-            Popup *reconfig_popup;
-
-            if (reconfigure) {
-                gint w, h;
-
-                w = WidthOfScreen(ScreenOfDisplay(ob_display, ob_screen));
-                h = HeightOfScreen(ScreenOfDisplay(ob_display, ob_screen));
-
-                reconfig_popup = popup_new(FALSE);
-                popup_position(reconfig_popup, CenterGravity, w / 2, h / 2);
-                popup_show(reconfig_popup, _("Reloading . . ."), NULL);
-
-                reconfig_window = XCreateWindow
-                    (ob_display, RootWindow(ob_display, ob_screen),
-                     0, 0, w, h,
-                     0, CopyFromParent, InputOnly, CopyFromParent, 0, NULL);
-                XMapWindow(ob_display, reconfig_window);
-
-                XFlush(ob_display);
-            }
-
             event_startup(reconfigure);
             grab_startup(reconfigure);
             /* focus_backup is used for stacking, so this needs to come before
@@ -272,12 +244,6 @@ int main(int argc, char **argv)
                     ObClient *c = it->data;
                     frame_adjust_theme(c->frame);
                 }
-
-                XFlush(ob_display);
-
-                /* destroy the hiding window */
-                XDestroyWindow(ob_display, reconfig_window);
-                popup_free(reconfig_popup);
             }
 
             reconfigure = FALSE;
@@ -312,7 +278,6 @@ int main(int argc, char **argv)
     RrInstanceFree(ob_rr_inst);
 
     session_shutdown();
-    g_free(ob_sm_id);
 
     XCloseDisplay(ob_display);
 
@@ -334,6 +299,7 @@ int main(int argc, char **argv)
 
         /* re-run me */
         execvp(argv[0], argv); /* try how we were run */
+        execlp(argv[0], g_path_get_basename(argv[0])); /* last resort */
     }
      
     return 0;
@@ -401,20 +367,6 @@ static void parse_args(int argc, char **argv)
             xsync = TRUE;
         } else if (!strcmp(argv[i], "--debug")) {
             ob_debug_show_output(TRUE);
-#ifdef USE_SM
-        } else if (!strcmp(argv[i], "--sm-client-id")) {
-            if (i == argc - 1) /* no args left */
-                g_printerr(_("--sm-client-id requires an argument\n"));
-            else
-                ob_sm_id = g_strdup(argv[++i]);
-        } else if (!strcmp(argv[i], "--sm-save-file")) {
-            if (i == argc - 1) /* no args left */
-                g_printerr(_("--sm-save-file requires an argument\n"));
-            else
-                sm_save_file = argv[++i];
-        } else if (!strcmp(argv[i], "--sm-disable")) {
-            ob_sm_use = FALSE;
-#endif
         } else {
             g_printerr("Invalid option: '%s'\n\n", argv[i]);
             print_help();
This page took 0.027855 seconds and 4 git commands to generate.