X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Fopenbox.c;h=8aefd76adcee0b9d26939eb41a9a23f9fc7cc427;hb=700b2c0aec0663249e39333b24de02f249f70267;hp=24d05f867dfc9237992ba8e724d071c5c1698d82;hpb=0fcf5ead0fb38710e6277da8b59c6ad19f907092;p=chaz%2Fopenbox diff --git a/openbox/openbox.c b/openbox/openbox.c index 24d05f86..8aefd76a 100644 --- a/openbox/openbox.c +++ b/openbox/openbox.c @@ -21,7 +21,6 @@ #include "openbox.h" #include "session.h" #include "dock.h" -#include "modkeys.h" #include "event.h" #include "menu.h" #include "client.h" @@ -43,11 +42,12 @@ #include "ping.h" #include "mainloop.h" #include "gettext.h" -#include "parser/parse.h" #include "render/render.h" #include "render/theme.h" #include "obt/display.h" #include "obt/prop.h" +#include "obt/keyboard.h" +#include "obt/parse.h" #ifdef HAVE_FCNTL_H # include @@ -135,11 +135,8 @@ gint main(gint argc, gchar **argv) program_name = g_path_get_basename(argv[0]); g_set_prgname(program_name); - if (!remote_control) { - parse_paths_startup(); - + if (!remote_control) session_startup(argc, argv); - } if (!obt_display_open(NULL)) ob_exit_with_error(_("Failed to open the display from the DISPLAY environment variable.")); @@ -154,7 +151,7 @@ gint main(gint argc, gchar **argv) exit(EXIT_SUCCESS); } - ob_main_loop = obt_main_loop_new(obt_display); + ob_main_loop = obt_main_loop_new(); /* set up signal handler */ obt_main_loop_signal_add(ob_main_loop, SIGUSR1, signal_handler, NULL,NULL); @@ -204,24 +201,22 @@ gint main(gint argc, gchar **argv) if (screen_annex()) { /* it will be ours! */ do { - modkeys_startup(reconfigure); + if (reconfigure) obt_keyboard_reload(); /* get the keycodes for keys we use */ - keys[OB_KEY_RETURN] = modkeys_sym_to_code(XK_Return); - keys[OB_KEY_ESCAPE] = modkeys_sym_to_code(XK_Escape); - keys[OB_KEY_LEFT] = modkeys_sym_to_code(XK_Left); - keys[OB_KEY_RIGHT] = modkeys_sym_to_code(XK_Right); - keys[OB_KEY_UP] = modkeys_sym_to_code(XK_Up); - keys[OB_KEY_DOWN] = modkeys_sym_to_code(XK_Down); + keys[OB_KEY_RETURN] = obt_keyboard_keysym_to_keycode(XK_Return); + keys[OB_KEY_ESCAPE] = obt_keyboard_keysym_to_keycode(XK_Escape); + keys[OB_KEY_LEFT] = obt_keyboard_keysym_to_keycode(XK_Left); + keys[OB_KEY_RIGHT] = obt_keyboard_keysym_to_keycode(XK_Right); + keys[OB_KEY_UP] = obt_keyboard_keysym_to_keycode(XK_Up); + keys[OB_KEY_DOWN] = obt_keyboard_keysym_to_keycode(XK_Down); { - ObParseInst *i; - xmlDocPtr doc; - xmlNodePtr node; + ObtParseInst *i; /* startup the parsing so everything can register sections of the rc */ - i = parse_startup(); + i = obt_parse_instance_new(); /* register all the available actions */ actions_startup(reconfigure); @@ -229,9 +224,11 @@ gint main(gint argc, gchar **argv) config_startup(i); /* parse/load user options */ - if (parse_load_rc(NULL, &doc, &node)) { - parse_tree(i, doc, node->xmlChildrenNode); - parse_close(doc); + if (obt_parse_load_config_file(i, "openbox", "rc.xml", + "openbox_config")) + { + obt_parse_tree_from_root(i); + obt_parse_close(i); } else g_message(_("Unable to find a valid config file, using some simple defaults")); @@ -242,7 +239,7 @@ gint main(gint argc, gchar **argv) */ /* we're done with parsing now, kill it */ - parse_shutdown(i); + obt_parse_instance_unref(i); } /* load the theme specified in the rc file */ @@ -262,7 +259,7 @@ gint main(gint argc, gchar **argv) ob_exit_with_error(_("Unable to load a theme.")); OBT_PROP_SETS(RootWindow(obt_display, ob_screen), - OB_THEME, ob_rr_theme->name); + OB_THEME, utf8, ob_rr_theme->name); } if (reconfigure) { @@ -359,7 +356,6 @@ gint main(gint argc, gchar **argv) event_shutdown(reconfigure); config_shutdown(); actions_shutdown(reconfigure); - modkeys_shutdown(reconfigure); } while (reconfigure); } @@ -372,8 +368,6 @@ gint main(gint argc, gchar **argv) obt_display_close(obt_display); - parse_paths_shutdown(); - if (restart) { if (restart_path != NULL) { gint argcp;