X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fopenbox.c;h=40e3ef8b813b407ba4158b083c1721d1648cb485;hb=1ffc7fa9ec0ca76f8ffc23bba2c1f2d417732462;hp=d39e0cfce6d2f7f9fb79a3fbf5822d6a58d51c86;hpb=eea43e64883fc0c988b916db99bc5b45ccffc432;p=chaz%2Fopenbox diff --git a/openbox/openbox.c b/openbox/openbox.c index d39e0cfc..40e3ef8b 100644 --- a/openbox/openbox.c +++ b/openbox/openbox.c @@ -58,14 +58,12 @@ gchar *ob_sm_id; RrInstance *ob_rr_inst; RrTheme *ob_rr_theme; Display *ob_display; -int ob_screen; -Window ob_root; -ObState ob_state; -gboolean ob_sync; +gint ob_screen; Cursor ob_cursors[OB_NUM_CURSORS]; KeyCode ob_keys[OB_NUM_KEYS]; -char *ob_rc_path; +static ObState state; +static gboolean sync; static gboolean shutdown; static gboolean restart; static char *restart_path; @@ -93,7 +91,7 @@ int main(int argc, char **argv) xmlDocPtr doc; xmlNodePtr node; - ob_state = OB_STATE_STARTING; + state = OB_STATE_STARTING; /* initialize the locale */ if (!setlocale(LC_ALL, "")) @@ -148,7 +146,6 @@ int main(int argc, char **argv) #endif ob_screen = DefaultScreen(ob_display); - ob_root = RootWindow(ob_display, ob_screen); ob_rr_inst = RrInstanceNew(ob_display, ob_screen); if (ob_rr_inst == NULL) @@ -156,7 +153,7 @@ int main(int argc, char **argv) /* XXX fork self onto other screens */ - XSynchronize(ob_display, ob_sync); + XSynchronize(ob_display, sync); /* check for locale support */ if (!XSupportsLocale()) @@ -259,10 +256,10 @@ int main(int argc, char **argv) /* get all the existing windows */ client_manage_all(); - ob_state = OB_STATE_RUNNING; + state = OB_STATE_RUNNING; while (!shutdown) event_loop(); - ob_state = OB_STATE_EXITING; + state = OB_STATE_EXITING; dock_remove_all(); client_unmanage_all(); @@ -504,7 +501,6 @@ static void print_help() print_version(); g_print("Syntax: openbox [options]\n\n"); g_print("Options:\n\n"); - g_print(" --rc PATH Specify the path to the rc file to use\n"); #ifdef USE_SM g_print(" --sm-client-id ID Specify session management ID\n"); g_print(" --sm-disable Disable connection to session manager\n"); @@ -528,12 +524,7 @@ static void parse_args(int argc, char **argv) print_help(); exit(0); } else if (!strcmp(argv[i], "--sync")) { - ob_sync = TRUE; - } else if (!strcmp(argv[i], "--rc")) { - if (i == argc - 1) /* no args left */ - g_printerr(_("--rc requires an argument\n")); - else - ob_rc_path = argv[++i]; + sync = TRUE; #ifdef USE_SM } else if (!strcmp(argv[i], "--sm-client-id")) { if (i == argc - 1) /* no args left */ @@ -551,15 +542,6 @@ static void parse_args(int argc, char **argv) } } -gboolean ob_pointer_pos(int *x, int *y) -{ - Window w; - int i; - guint u; - - return !!XQueryPointer(ob_display, ob_root, &w, &w, x, y, &i, &i, &u); -} - #ifdef USE_SM static void sm_save_yourself(SmcConn conn, SmPointer data, int save_type, Bool shutdown, int interact_style, Bool fast) @@ -620,3 +602,8 @@ KeyCode ob_keycode(ObKey key) g_assert(key < OB_NUM_KEYS); return ob_keys[key]; } + +ObState ob_state() +{ + return state; +}