Stop using libglade
authorgaltgendo <galtgendo>
Sat, 17 Aug 2013 18:25:07 +0000 (20:25 +0200)
committerDana Jansens <danakj@orodu.net>
Sun, 8 Sep 2013 16:11:08 +0000 (12:11 -0400)
GtkOptionMenu -> GtkComboBoxText move is to make porting
to gtk3 easier (this needs gtk+ 2.24), most of the pixbuf
changes in src/preview.c for the same reason. Other changes
should not go beyond 2.18.

The changes in packing in glade file are also for the sake
of gtk3 - they shouldn't affect gtk2 (hbox51 removal was
mostly to make things cleaner - there didn't seem to be a
reason for extra container there).

The added catch is that http://savannah.gnu.org/bugs/?34506
was only fixed in gettext 0.18.3 (just a few weeks old) and
there's a little problem with gtk2 version of glade
(http://bugzilla.gnome.org/show_bug.cgi?id=689667). The ui
file itself nevertheless works.

18 files changed:
.gitignore
Makefile.am
NEWS [deleted file]
TODO [deleted file]
configure.ac
src/about.c
src/desktops.c
src/dock.c
src/main.c
src/main.h
src/mouse.c
src/moveresize.c
src/obconf.gladep [deleted file]
src/obconf.ui [moved from src/obconf.glade with 75% similarity]
src/preview.c
src/preview_update.c
src/tree.c
src/windows.c

index a8279e8..9e0b24d 100644 (file)
@@ -30,6 +30,7 @@ po/en@quot.header
 po/en@quot.insert-header
 po/en@quot.po
 po/insert-header.sin
+po/obconf.pot
 po/quot.sed
 po/remove-potcdate.sed
 po/remove-potcdate.sin
index 369ec3d..61c3805 100644 (file)
@@ -1,7 +1,7 @@
 SUBDIRS = po
 
 localedir       = $(datadir)/locale
-gladedir        = $(datadir)/obconf
+resourcedir     = $(datadir)/obconf
 pixmapdir       = $(datadir)/pixmaps
 themedir        = $(datadir)/openbox/themes
 desktopdir      = $(datadir)/applications
@@ -19,7 +19,6 @@ src_obconf_CPPFLAGS = \
        $(OPENBOX_CFLAGS) \
        $(LIBSTARTUPNOTIFICATION_CFLAGS) \
        $(GTK_CFLAGS) \
-       $(GLADE_CFLAGS) \
        $(GDK_PIXBUF_CFLAGS) \
        $(XML_CFLAGS) \
        -DLOCALEDIR=\"$(localedir)\" \
@@ -31,7 +30,6 @@ src_obconf_LDADD = \
        $(OPENBOX_LIBS) \
        $(LIBSTARTUPNOTIFICATION_LIBS) \
        $(GTK_LIBS) \
-       $(GLADE_LIBS) \
        $(GDK_PIXBUF_LIBS) \
        $(LIBINTL) \
        $(ZLIB_LIBS) \
@@ -66,13 +64,10 @@ src_obconf_SOURCES = \
        src/tree.c \
        src/tree.h
 
-dist_glade_DATA = \
-       src/obconf.glade \
+dist_resource_DATA = \
+       src/obconf.ui \
        pixmaps/video-display.png
 
-dist_noinst_DATA = \
-       src/obconf.gladep
-
 dist_desktop_DATA = \
        obconf.desktop
 
@@ -121,8 +116,7 @@ EXTRA_DIST = \
        m4/wchar_t.m4 \
        m4/wint_t.m4 \
        m4/xsize.m4 \
-       data/video-display.svg \
-       config.rpath
+       data/video-display.svg
 
 # Packages need to run these...
 
diff --git a/NEWS b/NEWS
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/TODO b/TODO
deleted file mode 100644 (file)
index e69de29..0000000
index f9b0775..b99620f 100644 (file)
@@ -1,6 +1,6 @@
 AC_PREREQ([2.54])
 AC_INIT([obconf], [2.0.4], [http://bugzilla.icculus.org])
-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([subdir-objects foreign dist-xz])
 AC_CONFIG_SRCDIR([src/main.c])
 
 AC_PREFIX_DEFAULT([/usr/local])
@@ -16,7 +16,6 @@ AC_PROG_INSTALL
 CHECK_EXPORT_DYNAMIC
 LDFLAGS="$LDFLAGS $EXPORT_DYNAMIC_FLAGS"
 
-ALL_LINGUAS=""
 AM_GNU_GETTEXT_VERSION(0.15)
 AM_GNU_GETTEXT([external])
 
@@ -28,7 +27,7 @@ PKG_CHECK_MODULES(LIBSTARTUPNOTIFICATION, [libstartup-notification-1.0])
 AC_SUBST(LIBSTARTUPNOTIFICATION_CFLAGS)
 AC_SUBST(LIBSTARTUPNOTIFICATION_LIBS)
 
-PKG_CHECK_MODULES(GTK, [gtk+-2.0])
+PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= 2.24.0])
 AC_SUBST(GTK_CFLAGS)
 AC_SUBST(GTK_LIBS)
 
@@ -36,10 +35,6 @@ PKG_CHECK_MODULES(GDK_PIXBUF, [gdk-pixbuf-2.0])
 AC_SUBST(GDK_PIXBUF_CFLAGS)
 AC_SUBST(GDK_PIXBUF_LIBS)
 
-PKG_CHECK_MODULES(GLADE, [libglade-2.0])
-AC_SUBST(GLADE_CFLAGS)
-AC_SUBST(GLADE_LIBS)
-
 AC_CHECK_PROG(TAR, [tar], [yes], [no])
 if test "$TAR" = "no"; then
   AC_MSG_ERROR([Unable to find the tar command.])
index c56eb26..5fed1a9 100644 (file)
@@ -10,7 +10,8 @@ void on_about_close_clicked()
     gtk_widget_hide(get_widget("about_window"));
 }
 
-void on_about_window_delete_event()
+gboolean on_about_window_delete_event()
 {
     gtk_widget_hide(get_widget("about_window"));
+    return TRUE;
 }
index 6f205c4..8297f00 100644 (file)
@@ -212,7 +212,7 @@ static void desktops_write_names()
     tree_apply();
 
     /* make openbox re-set the property */
-    XDeleteProperty(GDK_DISPLAY(), GDK_ROOT_WINDOW(),
+    XDeleteProperty(gdk_x11_get_default_xdisplay(), GDK_ROOT_WINDOW(),
                     gdk_x11_get_xatom_by_name("_NET_DESKTOP_NAMES"));
 }
 
@@ -225,7 +225,7 @@ static void desktops_write_number()
     ce.xclient.type = ClientMessage;
     ce.xclient.message_type =
         gdk_x11_get_xatom_by_name("_NET_NUMBER_OF_DESKTOPS");
-    ce.xclient.display = GDK_DISPLAY();
+    ce.xclient.display = gdk_x11_get_default_xdisplay();
     ce.xclient.window = GDK_ROOT_WINDOW();
     ce.xclient.format = 32;
     ce.xclient.data.l[0] = num_desktops;
@@ -233,7 +233,7 @@ static void desktops_write_number()
     ce.xclient.data.l[2] = 0;
     ce.xclient.data.l[3] = 0;
     ce.xclient.data.l[4] = 0;
-    XSendEvent(GDK_DISPLAY(), GDK_ROOT_WINDOW(), FALSE,
+    XSendEvent(gdk_x11_get_default_xdisplay(), GDK_ROOT_WINDOW(), FALSE,
                SubstructureNotifyMask | SubstructureRedirectMask,
                &ce);
 }
index c1b8d54..4055524 100644 (file)
@@ -82,7 +82,7 @@ void dock_setup_tab()
     else if (!strcasecmp(s, "Floating"))    pos = POSITION_FLOATING;
     else                                    pos = POSITION_TOPLEFT;
     g_free(s);
-    gtk_option_menu_set_history(GTK_OPTION_MENU(w), pos);
+    gtk_combo_box_set_active(GTK_COMBO_BOX(w), pos);
 
     w = get_widget("dock_float_x");
     gtk_spin_button_set_value(GTK_SPIN_BUTTON(w),
@@ -107,7 +107,7 @@ void dock_setup_tab()
     if (!strcasecmp(s, "Horizontal")) pos = DIRECTION_HORIZONTAL;
     else                              pos = DIRECTION_VERTICAL;
     g_free(s);
-    gtk_option_menu_set_history(GTK_OPTION_MENU(w), pos);
+    gtk_combo_box_set_active(GTK_COMBO_BOX(w), pos);
 
     w = get_widget("dock_nostrut");
     gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w),
@@ -136,7 +136,7 @@ static void dock_enable_stuff()
     gboolean b;
 
     w = get_widget("dock_position");
-    b = gtk_option_menu_get_history(GTK_OPTION_MENU(w)) == POSITION_FLOATING;
+    b = gtk_combo_box_get_active(GTK_COMBO_BOX(w)) == POSITION_FLOATING;
 
     s = get_widget("dock_float_x");
     gtk_widget_set_sensitive(s, b);
@@ -166,75 +166,39 @@ static void dock_enable_stuff()
     gtk_widget_set_sensitive(s, b);
 }
 
-void on_dock_top_left_activate(GtkMenuItem *w, gpointer data)
+void on_dock_position_changed(GtkComboBox *w, gpointer data)
 {
     if (mapping) return;
 
-    tree_set_string("dock/position", "TopLeft");
-    dock_enable_stuff();
-}
-
-void on_dock_top_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/position", "Top");
-    dock_enable_stuff();
-}
-
-void on_dock_top_right_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/position", "TopRight");
-    dock_enable_stuff();
-}
-
-void on_dock_left_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/position", "Left");
-    dock_enable_stuff();
-}
-
-void on_dock_right_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/position", "Right");
-    dock_enable_stuff();
-}
-
-void on_dock_bottom_left_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/position", "BottomLeft");
-    dock_enable_stuff();
-}
-
-void on_dock_bottom_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/position", "Bottom");
-    dock_enable_stuff();
-}
-
-void on_dock_bottom_right_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/position", "BottomRight");
-    dock_enable_stuff();
-}
-
-void on_dock_floating_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/position", "Floating");
+    switch (gtk_combo_box_get_active(w)) {
+    case 0:
+      tree_set_string("dock/position", "TopLeft");
+      break;
+    case 1:
+      tree_set_string("dock/position", "Top");
+      break;
+    case 2:
+      tree_set_string("dock/position", "TopRight");
+      break;
+    case 3:
+      tree_set_string("dock/position", "Left");
+      break;
+    case 4:
+      tree_set_string("dock/position", "Right");
+      break;
+    case 5:
+      tree_set_string("dock/position", "BottomLeft");
+      break;
+    case 6:
+      tree_set_string("dock/position", "Bottom");
+      break;
+    case 7:
+      tree_set_string("dock/position", "BottomRight");
+      break;
+    case 8:
+      tree_set_string("dock/position", "Floating");
+      break;
+    }
     dock_enable_stuff();
 }
 
@@ -276,18 +240,18 @@ void on_dock_stacking_bottom_toggled(GtkToggleButton *w, gpointer data)
         tree_set_string("dock/stacking", "Below");
 }
 
-void on_dock_horizontal_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("dock/direction", "Horizontal");
-}
-
-void on_dock_vertical_activate(GtkMenuItem *w, gpointer data)
+void on_dock_direction_changed(GtkComboBox *w, gpointer data)
 {
     if (mapping) return;
 
-    tree_set_string("dock/direction", "Vertical");
+    switch (gtk_combo_box_get_active(w)) {
+    case 0:
+      tree_set_string("dock/direction", "Vertical");
+      break;
+    case 1:
+      tree_set_string("dock/direction", "Horizontal");
+      break;
+    }
 }
 
 void on_dock_nostrut_toggled(GtkToggleButton *w, gpointer data)
index 7acc3ec..ff11ef9 100644 (file)
@@ -38,7 +38,7 @@
 GtkWidget *mainwin = NULL;
 GtkWidget *tabstrip = NULL;
 
-GladeXML *glade;
+GtkBuilder *builder;
 xmlDocPtr doc;
 xmlNodePtr root;
 RrInstance *rrinst;
@@ -63,9 +63,9 @@ void obconf_error(gchar *msg, gboolean modal)
     if (modal)
         gtk_dialog_run(GTK_DIALOG(d));
     else {
-        g_signal_connect_swapped(GTK_OBJECT(d), "response",
+        g_signal_connect_swapped(G_OBJECT(d), "response",
                                  G_CALLBACK(gtk_widget_destroy),
-                                 GTK_OBJECT(d));
+                                 G_OBJECT(d));
         gtk_widget_show(d);
     }
 }
@@ -149,7 +149,7 @@ static gboolean get_all(Window win, Atom prop, Atom type, gint size,
     gint ret_size;
     gulong ret_items, bytes_left;
 
-    res = XGetWindowProperty(GDK_DISPLAY(), win, prop, 0l, G_MAXLONG,
+    res = XGetWindowProperty(gdk_x11_get_default_xdisplay(), win, prop, 0l, G_MAXLONG,
                              FALSE, type, &ret_type, &ret_size,
                              &ret_items, &bytes_left, &xdata);
     if (res == Success) {
@@ -203,6 +203,7 @@ static gboolean prop_get_string_utf8(Window win, Atom prop, gchar **ret)
 int main(int argc, char **argv)
 {
     gchar *p;
+    GError *error = NULL;
     gboolean exit_with_error = FALSE;
 
     bindtextdomain(PACKAGE_NAME, LOCALEDIR);
@@ -217,18 +218,21 @@ int main(int argc, char **argv)
         return 0;
     }
 
-    p = g_build_filename(GLADEDIR, "obconf.glade", NULL);
-    glade = glade_xml_new(p, NULL, NULL);
+    p = g_build_filename(GLADEDIR, "obconf.ui", NULL);
+    builder = gtk_builder_new();
+    gtk_builder_add_from_file(builder, p, &error);
     g_free(p);
 
-    if (!glade) {
-        obconf_error(_("Failed to load the obconf.glade interface file. You have probably failed to install ObConf properly."), TRUE);
+    if (error) {
+        obconf_error(_("Failed to load the obconf.ui interface file. You have probably failed to install ObConf properly."), TRUE);
+        g_printerr("%s\n", error->message);
+        g_error_free(error);
         exit_with_error = TRUE;
     }
 
     paths = obt_paths_new();
     parse_i = obt_xml_instance_new();
-    rrinst = RrInstanceNew(GDK_DISPLAY(), gdk_x11_get_default_screen());
+    rrinst = RrInstanceNew(gdk_x11_get_default_xdisplay(), gdk_x11_get_default_screen());
 
     if (!obc_config_file) {
         gchar *p;
@@ -270,14 +274,14 @@ int main(int argc, char **argv)
     }
 
     if (!exit_with_error) {
-        glade_xml_signal_autoconnect(glade);
+        gtk_builder_connect_signals(builder, NULL);
 
         {
             gchar *s = g_strdup_printf
                 ("<span weight=\"bold\" size=\"xx-large\">ObConf %s</span>",
                  PACKAGE_VERSION);
             gtk_label_set_markup(GTK_LABEL
-                                 (glade_xml_get_widget(glade, "title_label")),
+                                 (gtk_builder_get_object(builder, "title_label")),
                                  s);
             g_free(s);
         }
@@ -292,7 +296,7 @@ int main(int argc, char **argv)
         dock_setup_tab();
 
         mainwin = get_widget("main_window");
-        tabstrip = glade_xml_get_widget(glade, "tabstrip");
+        tabstrip = get_widget("tabstrip");
 
         if (obc_theme_install)
             theme_install(obc_theme_install);
@@ -336,7 +340,7 @@ void obconf_show_main()
     SnDisplay *sn_d;
     SnLauncheeContext *sn_cx;
 
-    if (GTK_WIDGET_VISIBLE(mainwin)) return;
+    if (gtk_widget_get_visible(mainwin)) return;
 
     gtk_widget_show_all(mainwin);
 
@@ -354,7 +358,7 @@ void obconf_show_main()
 
     if (sn_cx)
         sn_launchee_context_setup_window
-            (sn_cx, GDK_WINDOW_XWINDOW(GDK_WINDOW(mainwin->window)));
+            (sn_cx, GDK_WINDOW_XID(gtk_widget_get_window(mainwin)));
 
     if (sn_cx)
         sn_launchee_context_complete(sn_cx);
index 4f3213b..23852d3 100644 (file)
 #include <obt/paths.h>
 
 #include <gtk/gtk.h>
-#include <glade/glade-xml.h>
 
-extern GladeXML *glade;
+extern GtkBuilder *builder;
 extern RrInstance *rrinst;
 extern GtkWidget *mainwin;
 extern gchar *obc_config_file;
 extern ObtPaths *paths;
 extern ObtXmlInst *parse_i;
 
-#define get_widget(s) glade_xml_get_widget(glade, s)
+#define get_widget(s) GTK_WIDGET(gtk_builder_get_object(builder, s))
 
 void obconf_error(gchar *msg, gboolean model);
 void obconf_show_main();
index 88f13d9..ce9059a 100644 (file)
@@ -30,8 +30,6 @@ static xmlNodePtr saved_custom = NULL;
 
 static gint read_doubleclick_action();
 static void write_doubleclick_action(gint a);
-static void on_titlebar_doubleclick_custom_activate(GtkMenuItem *w,
-                                                    gpointer data);
 static void enable_stuff();
 
 void mouse_setup_tab()
@@ -69,16 +67,10 @@ void mouse_setup_tab()
     w = get_widget("titlebar_doubleclick");
     a = read_doubleclick_action();
     if (a == TITLEBAR_CUSTOM) {
-        GtkWidget *i = gtk_menu_item_new_with_label(_("Custom actions"));
-        g_signal_connect(i, "activate",
-                         G_CALLBACK (on_titlebar_doubleclick_custom_activate),
-                         NULL);
-        gtk_menu_shell_append
-            (GTK_MENU_SHELL
-             (gtk_option_menu_get_menu
-              (GTK_OPTION_MENU(w))), i);
+        gtk_combo_box_text_append_text
+            (GTK_COMBO_BOX_TEXT(w), _("Custom actions"));
     }
-    gtk_option_menu_set_history(GTK_OPTION_MENU(w), a);
+    gtk_combo_box_set_active(GTK_COMBO_BOX(w), a);
 
     enable_stuff();
 
@@ -147,26 +139,21 @@ void on_focus_under_mouse_toggled(GtkToggleButton *w, gpointer data)
     tree_set_bool("focus/underMouse", gtk_toggle_button_get_active(w));
 }
 
-void on_titlebar_doubleclick_maximize_activate(GtkMenuItem *w, gpointer data)
+void on_titlebar_doubleclick_changed(GtkComboBox *w, gpointer data)
 {
     if (mapping) return;
 
-    write_doubleclick_action(TITLEBAR_MAXIMIZE);
-}
-
-void on_titlebar_doubleclick_shade_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    write_doubleclick_action(TITLEBAR_SHADE);
-}
-
-static void on_titlebar_doubleclick_custom_activate(GtkMenuItem *w,
-                                                    gpointer data)
-{
-    if (mapping) return;
-
-    write_doubleclick_action(TITLEBAR_CUSTOM);
+    switch (gtk_combo_box_get_active(w)) {
+    case 0:
+      write_doubleclick_action(TITLEBAR_MAXIMIZE);
+      break;
+    case 1:
+      write_doubleclick_action(TITLEBAR_SHADE);
+      break;
+    case 2:
+      write_doubleclick_action(TITLEBAR_CUSTOM);
+      break;
+    }
 }
 
 void on_doubleclick_time_value_changed(GtkSpinButton *w, gpointer data)
index 6048a37..c6fb3dd 100644 (file)
@@ -82,7 +82,7 @@ void moveresize_setup_tab()
     else if (!strcasecmp(s, "Never")) pos = POPUP_NEVER;
     else                              pos = POPUP_NONPIXEL;
     g_free(s);
-    gtk_option_menu_set_history(GTK_OPTION_MENU(w), pos);
+    gtk_combo_box_set_active(GTK_COMBO_BOX(w), pos);
 
     w = get_widget("drag_threshold");
     gtk_spin_button_set_value(GTK_SPIN_BUTTON(w),
@@ -94,7 +94,7 @@ void moveresize_setup_tab()
     if (!strcasecmp(s, "Fixed")) pos = POSITION_FIXED;
     else                         pos = POSITION_CENTER;
     g_free(s);
-    gtk_option_menu_set_history(GTK_OPTION_MENU(w), pos);
+    gtk_combo_box_set_active(GTK_COMBO_BOX(w), pos);
 
     w = get_widget("fixed_x_popup");
     s = tree_get_string("resize/popupFixedPosition/x", "0");
@@ -103,7 +103,7 @@ void moveresize_setup_tab()
     if (!strcasecmp(s, "Center")) pos = EDGE_CENTER;
     else if (opp) pos = EDGE_RIGHT;
     else pos = EDGE_LEFT;
-    gtk_option_menu_set_history(GTK_OPTION_MENU(w), pos);
+    gtk_combo_box_set_active(GTK_COMBO_BOX(w), pos);
 
     w = get_widget("fixed_x_pos");
     gtk_spin_button_set_value(GTK_SPIN_BUTTON(w), MAX(atoi(s), 0));
@@ -115,7 +115,7 @@ void moveresize_setup_tab()
     if (!strcasecmp(s, "Center")) pos = EDGE_CENTER;
     else if (opp) pos = EDGE_RIGHT;
     else pos = EDGE_LEFT;
-    gtk_option_menu_set_history(GTK_OPTION_MENU(w), pos);
+    gtk_combo_box_set_active(GTK_COMBO_BOX(w), pos);
 
     w = get_widget("fixed_y_pos");
     gtk_spin_button_set_value(GTK_SPIN_BUTTON(w), MAX(atoi(s), 0));
@@ -140,7 +140,7 @@ static void enable_stuff()
     gboolean b;
 
     w = get_widget("resize_popup");
-    b = gtk_option_menu_get_history(GTK_OPTION_MENU(w)) != POPUP_NEVER;
+    b = gtk_combo_box_get_active(GTK_COMBO_BOX(w)) != POPUP_NEVER;
     w = get_widget("resize_position");
     gtk_widget_set_sensitive(w, b);
 
@@ -150,7 +150,7 @@ static void enable_stuff()
     gtk_widget_set_sensitive(w, b);
 
     w = get_widget("resize_position");
-    b = gtk_option_menu_get_history(GTK_OPTION_MENU(w)) == POSITION_FIXED;
+    b = gtk_combo_box_get_active(GTK_COMBO_BOX(w)) == POSITION_FIXED;
     w = get_widget("fixed_x_popup");
     gtk_widget_set_sensitive(w, b);
     w = get_widget("fixed_y_popup");
@@ -163,12 +163,12 @@ static void enable_stuff()
     }
     else {
         w = get_widget("fixed_x_popup");
-        b = gtk_option_menu_get_history(GTK_OPTION_MENU(w)) != EDGE_CENTER;
+        b = gtk_combo_box_get_active(GTK_COMBO_BOX(w)) != EDGE_CENTER;
         w = get_widget("fixed_x_pos");
         gtk_widget_set_sensitive(w, b);
 
         w = get_widget("fixed_y_popup");
-        b = gtk_option_menu_get_history(GTK_OPTION_MENU(w)) != EDGE_CENTER;
+        b = gtk_combo_box_get_active(GTK_COMBO_BOX(w)) != EDGE_CENTER;
         w = get_widget("fixed_y_pos");
         gtk_widget_set_sensitive(w, b);
     }
@@ -196,27 +196,21 @@ void on_resize_contents_toggled(GtkToggleButton *w, gpointer data)
     tree_set_bool("resize/drawContents", gtk_toggle_button_get_active(w));
 }
 
-void on_resize_popup_nonpixel_activate(GtkMenuItem *w, gpointer data)
+void on_resize_popup_changed(GtkComboBox *w, gpointer data)
 {
     if (mapping) return;
 
-    tree_set_string("resize/popupShow", "NonPixel");
-    enable_stuff();
-}
-
-void on_resize_popup_always_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("resize/popupShow", "Always");
-    enable_stuff();
-}
-
-void on_resize_popup_never_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("resize/popupShow", "Never");
+    switch(gtk_combo_box_get_active(w)) {
+    case 0:
+      tree_set_string("resize/popupShow", "NonPixel");
+      break;
+    case 1:
+      tree_set_string("resize/popupShow", "Always");
+      break;
+    case 2:
+      tree_set_string("resize/popupShow", "Never");
+      break;
+    }
     enable_stuff();
 }
 
@@ -228,27 +222,21 @@ void on_drag_threshold_value_changed(GtkSpinButton *w, gpointer data)
                  gtk_spin_button_get_value_as_int(w));
 }
 
-void on_resize_position_center_activate(GtkMenuItem *w, gpointer data)
+void on_resize_position_changed(GtkComboBox *w, gpointer data)
 {
     if (mapping) return;
 
-    tree_set_string("resize/popupPosition", "Center");
-    enable_stuff();
-}
-
-void on_resize_position_top_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("resize/popupPosition", "Top");
-    enable_stuff();
-}
-
-void on_resize_position_fixed_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    tree_set_string("resize/popupPosition", "Fixed");
+    switch(gtk_combo_box_get_active(w)) {
+    case 0:
+      tree_set_string("resize/popupPosition", "Center");
+      break;
+    case 1:
+      tree_set_string("resize/popupPosition", "Top");
+      break;
+    case 2:
+      tree_set_string("resize/popupPosition", "Fixed");
+      break;
+    }
     enable_stuff();
 }
 
@@ -266,7 +254,7 @@ static void write_fixed_position(const gchar *coord)
     popup = get_widget(popupname);
     g_free(popupname);
 
-    edge = gtk_option_menu_get_history(GTK_OPTION_MENU(popup));
+    edge = gtk_combo_box_get_active(GTK_COMBO_BOX(popup));
     g_assert(edge == EDGE_CENTER || edge == EDGE_LEFT || edge == EDGE_RIGHT);
 
     if (edge == EDGE_CENTER)
@@ -295,23 +283,7 @@ static void write_fixed_position(const gchar *coord)
 }
 
 
-void on_fixed_x_position_left_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    write_fixed_position("x");
-    enable_stuff();
-}
-
-void on_fixed_x_position_right_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    write_fixed_position("x");
-    enable_stuff();
-}
-
-void on_fixed_x_position_center_activate(GtkMenuItem *w, gpointer data)
+void on_fixed_x_position_changed(GtkComboBox *w, gpointer data)
 {
     if (mapping) return;
 
@@ -319,23 +291,7 @@ void on_fixed_x_position_center_activate(GtkMenuItem *w, gpointer data)
     enable_stuff();
 }
 
-void on_fixed_y_position_top_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    write_fixed_position("y");
-    enable_stuff();
-}
-
-void on_fixed_y_position_bottom_activate(GtkMenuItem *w, gpointer data)
-{
-    if (mapping) return;
-
-    write_fixed_position("y");
-    enable_stuff();
-}
-
-void on_fixed_y_position_center_activate(GtkMenuItem *w, gpointer data)
+void on_fixed_y_position_changed(GtkComboBox *w, gpointer data)
 {
     if (mapping) return;
 
diff --git a/src/obconf.gladep b/src/obconf.gladep
deleted file mode 100644 (file)
index 5bcc940..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
-<!DOCTYPE glade-project SYSTEM "http://glade.gnome.org/glade-project-2.0.dtd">
-
-<glade-project>
-  <name>ObConf</name>
-  <program_name>obconf</program_name>
-  <directory>../</directory>
-  <source_directory></source_directory>
-  <pixmaps_directory>../pixmaps</pixmaps_directory>
-  <gnome_support>FALSE</gnome_support>
-  <output_translatable_strings>TRUE</output_translatable_strings>
-  <translatable_strings_file>strings.c</translatable_strings_file>
-</glade-project>
similarity index 75%
rename from src/obconf.glade
rename to src/obconf.ui
index faf98e0..b2efefb 100644 (file)
-<?xml version="1.0" encoding="UTF-8"?>
-<glade-interface>
+<?xml version="1.0"?>
+<interface>
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="upper">100</property>
+    <property name="lower">1</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment10">
+    <property name="upper">10000</property>
+    <property name="lower">1</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">10</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment11">
+    <property name="upper">100</property>
+    <property name="lower">1</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment12">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">20</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment13">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">20</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment14">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">20</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment15">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">20</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment16">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment17">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment18">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">10</property>
+    <property name="page_size">0</property>
+    <property name="value">300</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment19">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">10</property>
+    <property name="page_size">0</property>
+    <property name="value">300</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment2">
+    <property name="upper">100</property>
+    <property name="lower">1</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment3">
+    <property name="upper">100</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">20</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment4">
+    <property name="upper">100</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment5">
+    <property name="upper">10000</property>
+    <property name="lower">100</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">10</property>
+    <property name="page_size">0</property>
+    <property name="value">100</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment6">
+    <property name="upper">1000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment7">
+    <property name="upper">1000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">0</property>
+    <property name="value">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment8">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">10</property>
+    <property name="page_size">0</property>
+    <property name="value">0</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment9">
+    <property name="upper">10000</property>
+    <property name="lower">0</property>
+    <property name="page_increment">10</property>
+    <property name="step_increment">10</property>
+    <property name="page_size">0</property>
+    <property name="value">0</property>
+  </object>
   <!-- interface-requires gtk+ 2.6 -->
   <!-- interface-naming-policy toplevel-contextual -->
-  <widget class="GtkWindow" id="about_window">
+  <object class="GtkDialog" id="about_window">
     <property name="can_focus">False</property>
     <property name="title" translatable="yes">About ObConf</property>
-    <property name="type_hint">dialog</property>
-    <signal name="delete_event" handler="on_about_window_delete_event"/>
-    <child>
-      <widget class="GtkVBox" id="vbox33">
+    <signal handler="on_about_window_delete_event" name="delete_event"/>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="vbox33">
         <property name="visible">True</property>
         <property name="can_focus">False</property>
         <property name="border_width">12</property>
         <property name="spacing">12</property>
         <child>
-          <widget class="GtkVBox" id="vbox1">
+          <object class="GtkVBox" id="vbox1">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
             <property name="spacing">6</property>
             <child>
-              <widget class="GtkLabel" id="title_label">
+              <object class="GtkLabel" id="title_label">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="label" translatable="yes">&lt;span weight="bold" size="xx-large"&gt;ObConf VERSION&lt;/span&gt;</property>
                 <property name="use_markup">True</property>
                 <property name="selectable">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkLabel" id="label81">
+              <object class="GtkLabel" id="label81">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="label" translatable="yes">A preferences manager for Openbox</property>
                 <property name="selectable">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkLabel" id="label80">
+              <object class="GtkLabel" id="label80">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="label">Copyright (c) 2003-2008
@@ -55,27 +206,27 @@ Tim Riley &lt;tr@slackzone.org&gt;
 Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                 <property name="justify">center</property>
                 <property name="selectable">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
                 <property name="position">2</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">True</property>
             <property name="fill">True</property>
             <property name="position">0</property>
           </packing>
         </child>
-        <child>
-          <widget class="GtkHButtonBox" id="hbuttonbox2">
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="hbuttonbox2">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
             <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="about_close">
+              <object class="GtkButton" id="about_close">
                 <property name="label">gtk-close</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
@@ -85,41 +236,39 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                 <property name="receives_default">False</property>
                 <property name="use_action_appearance">False</property>
                 <property name="use_stock">True</property>
-                <signal name="clicked" handler="on_about_close_clicked" after="yes"/>
-              </widget>
+                <signal after="yes" handler="on_about_close_clicked" name="clicked"/>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
                 <property name="position">0</property>
               </packing>
             </child>
-          </widget>
-          <packing>
-            <property name="expand">True</property>
-            <property name="fill">True</property>
-            <property name="position">1</property>
-          </packing>
+          </object>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-  <widget class="GtkWindow" id="key_prompt">
+    <action-widgets>
+      <action-widget response="-5">about_close</action-widget>
+    </action-widgets>
+  </object>
+  <object class="GtkWindow" id="key_prompt">
     <property name="can_focus">False</property>
     <property name="title" translatable="yes">window1</property>
     <child>
-      <widget class="GtkVBox" id="vbox49">
+      <object class="GtkVBox" id="vbox49">
         <property name="visible">True</property>
         <property name="can_focus">False</property>
         <property name="border_width">12</property>
         <property name="spacing">18</property>
         <child>
-          <widget class="GtkLabel" id="label117">
+          <object class="GtkLabel" id="label117">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
             <property name="xalign">0</property>
             <property name="label" translatable="yes">&lt;span weight="bold"&gt;Press the key you wish to bind...&lt;/span&gt;</property>
             <property name="use_markup">True</property>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">False</property>
@@ -127,61 +276,61 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
           </packing>
         </child>
         <child>
-          <widget class="GtkEntry" id="entry2">
+          <object class="GtkEntry" id="entry2">
             <property name="visible">True</property>
             <property name="can_focus">True</property>
             <property name="has_focus">True</property>
-            <property name="invisible_char">‚óŹ</property>
+            <property name="invisible_char">&#x25CF;</property>
             <property name="primary_icon_activatable">False</property>
             <property name="secondary_icon_activatable">False</property>
             <property name="primary_icon_sensitive">True</property>
             <property name="secondary_icon_sensitive">True</property>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">False</property>
             <property name="position">1</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-  <widget class="GtkWindow" id="main_window">
+  </object>
+  <object class="GtkWindow" id="main_window">
     <property name="can_focus">False</property>
     <property name="border_width">6</property>
     <property name="title" translatable="yes">Openbox Configuration Manager</property>
     <property name="icon_name">preferences-system-windows</property>
-    <signal name="delete_event" handler="on_main_window_delete_event"/>
+    <signal handler="on_main_window_delete_event" name="delete_event"/>
     <child>
-      <widget class="GtkVBox" id="vbox8">
+      <object class="GtkVBox" id="vbox8">
         <property name="visible">True</property>
         <property name="can_focus">False</property>
         <property name="spacing">6</property>
         <child>
-          <widget class="GtkNotebook" id="tabstrip">
+          <object class="GtkNotebook" id="tabstrip">
             <property name="visible">True</property>
             <property name="can_focus">True</property>
             <property name="tab_pos">left</property>
             <property name="scrollable">True</property>
             <child>
-              <widget class="GtkVBox" id="vbox20">
+              <object class="GtkVBox" id="vbox20">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="border_width">12</property>
                 <property name="spacing">6</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox21">
+                  <object class="GtkVBox" id="vbox21">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label59">
+                      <object class="GtkLabel" id="label59">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Theme&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -189,15 +338,15 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox29">
+                      <object class="GtkHBox" id="hbox29">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label60">
+                          <object class="GtkLabel" id="label60">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -205,46 +354,46 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox22">
+                          <object class="GtkVBox" id="vbox22">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkScrolledWindow" id="scrolledwindow3">
+                              <object class="GtkScrolledWindow" id="scrolledwindow3">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="hscrollbar_policy">never</property>
                                 <property name="vscrollbar_policy">automatic</property>
                                 <property name="shadow_type">in</property>
                                 <child>
-                                  <widget class="GtkTreeView" id="theme_names">
+                                  <object class="GtkTreeView" id="theme_names">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="headers_visible">False</property>
-                                  </widget>
+                                  </object>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">True</property>
                                 <property name="fill">True</property>
                                 <property name="position">0</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">True</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">True</property>
                     <property name="fill">True</property>
@@ -252,34 +401,34 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox41">
+                  <object class="GtkVBox" id="vbox41">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <child>
-                      <widget class="GtkButton" id="install_theme">
+                      <object class="GtkButton" id="install_theme">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_action_appearance">False</property>
-                        <signal name="clicked" handler="on_install_theme_clicked"/>
+                        <signal handler="on_install_theme_clicked" name="clicked"/>
                         <child>
-                          <widget class="GtkAlignment" id="alignment1">
+                          <object class="GtkAlignment" id="alignment1">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="xalign">0</property>
                             <property name="xscale">0</property>
                             <property name="yscale">0</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox53">
+                              <object class="GtkHBox" id="hbox53">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">2</property>
                                 <child>
-                                  <widget class="GtkImage" id="image1">
+                                  <object class="GtkImage" id="image1">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="stock">gtk-open</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -287,30 +436,30 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label103">
+                                  <object class="GtkLabel" id="label103">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label" translatable="yes">_Install a new theme...</property>
                                     <property name="use_underline">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                             </child>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
                         <property name="position">0</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
@@ -318,34 +467,34 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox42">
+                  <object class="GtkVBox" id="vbox42">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <child>
-                      <widget class="GtkButton" id="theme_archive">
+                      <object class="GtkButton" id="theme_archive">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_action_appearance">False</property>
-                        <signal name="clicked" handler="on_theme_archive_clicked"/>
+                        <signal handler="on_theme_archive_clicked" name="clicked"/>
                         <child>
-                          <widget class="GtkAlignment" id="alignment2">
+                          <object class="GtkAlignment" id="alignment2">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="xalign">0</property>
                             <property name="xscale">0</property>
                             <property name="yscale">0</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox55">
+                              <object class="GtkHBox" id="hbox55">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">2</property>
                                 <child>
-                                  <widget class="GtkImage" id="image2">
+                                  <object class="GtkImage" id="image2">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="stock">gtk-save</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -353,71 +502,70 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label106">
+                                  <object class="GtkLabel" id="label106">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label" translatable="yes">Create a theme _archive (.obt)...</property>
                                     <property name="use_underline">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                             </child>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
                         <property name="position">0</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
                     <property name="position">2</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
             </child>
-            <child>
-              <widget class="GtkLabel" id="label3">
+            <child type="tab">
+              <object class="GtkLabel" id="label3">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="xalign">0</property>
                 <property name="xpad">6</property>
                 <property name="ypad">8</property>
                 <property name="label" translatable="yes">Theme</property>
-              </widget>
+              </object>
               <packing>
                 <property name="tab_fill">False</property>
-                <property name="type">tab</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkVBox" id="vbox36">
+              <object class="GtkVBox" id="vbox36">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="border_width">12</property>
                 <property name="spacing">18</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox40">
+                  <object class="GtkVBox" id="vbox40">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label99">
+                      <object class="GtkLabel" id="label99">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Windows&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -425,23 +573,23 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox50">
+                      <object class="GtkHBox" id="hbox50">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkVBox" id="vbox69">
+                          <object class="GtkVBox" id="vbox69">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox93">
+                              <object class="GtkHBox" id="hbox93">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label171">
+                                  <object class="GtkLabel" id="label171">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label">    </property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -449,40 +597,29 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkVBox" id="vbox70">
+                                  <object class="GtkVBox" id="vbox70">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="spacing">6</property>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox51">
+                                      <object class="GtkCheckButton" id="window_border">
+                                        <property name="label" translatable="yes">_Windows retain a border when undecorated</property>
                                         <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
-                                        <child>
-                                          <widget class="GtkCheckButton" id="window_border">
-                                            <property name="label" translatable="yes">_Windows retain a border when undecorated</property>
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">True</property>
-                                            <property name="receives_default">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="use_underline">True</property>
-                                            <property name="draw_indicator">True</property>
-                                            <signal name="toggled" handler="on_window_border_toggled" after="yes"/>
-                                          </widget>
-                                          <packing>
-                                            <property name="expand">False</property>
-                                            <property name="fill">False</property>
-                                            <property name="position">0</property>
-                                          </packing>
-                                        </child>
-                                      </widget>
+                                        <property name="can_focus">True</property>
+                                        <property name="receives_default">False</property>
+                                        <property name="use_action_appearance">False</property>
+                                        <property name="use_underline">True</property>
+                                        <property name="draw_indicator">True</property>
+                                        <signal after="yes" handler="on_window_border_toggled" name="toggled"/>
+                                      </object>
                                       <packing>
-                                        <property name="expand">True</property>
-                                        <property name="fill">True</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
                                         <property name="position">0</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkCheckButton" id="animate_iconify">
+                                      <object class="GtkCheckButton" id="animate_iconify">
                                         <property name="label" translatable="yes">A_nimate iconify and restore</property>
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
@@ -490,43 +627,43 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                                         <property name="use_action_appearance">False</property>
                                         <property name="use_underline">True</property>
                                         <property name="draw_indicator">True</property>
-                                        <signal name="toggled" handler="on_animate_iconify_toggled" after="yes"/>
-                                      </widget>
+                                        <signal after="yes" handler="on_animate_iconify_toggled" name="toggled"/>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
                                         <property name="position">1</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">True</property>
                                     <property name="fill">True</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">True</property>
                                 <property name="fill">True</property>
                                 <property name="position">0</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">0</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
@@ -534,18 +671,18 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox38">
+                  <object class="GtkVBox" id="vbox38">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label88">
+                      <object class="GtkLabel" id="label88">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Window Titles&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -553,15 +690,15 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox43">
+                      <object class="GtkHBox" id="hbox43">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label89">
+                          <object class="GtkLabel" id="label89">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -569,23 +706,23 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox83">
+                          <object class="GtkVBox" id="vbox83">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox44">
+                              <object class="GtkHBox" id="hbox44">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label90">
+                                  <object class="GtkLabel" id="label90">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label" translatable="yes">_Button order:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">title_layout</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -593,10 +730,10 @@ Javeed Shaikh &lt;syscrash2k@gmail.com&gt;</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkEntry" id="title_layout">
+                                  <object class="GtkEntry" id="title_layout">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="tooltip" translatable="yes">N - The window's icon
+                                    <property name="tooltip-text" translatable="yes">N - The window's icon
 D - The all-desktops (sticky) button
 S - The shade (roll up) button
 L - The label (window title)
@@ -607,15 +744,15 @@ C - The close button</property>
                                     <property name="secondary_icon_activatable">False</property>
                                     <property name="primary_icon_sensitive">True</property>
                                     <property name="secondary_icon_sensitive">True</property>
-                                    <signal name="changed" handler="on_title_layout_changed" after="yes"/>
-                                  </widget>
+                                    <signal after="yes" handler="on_title_layout_changed" name="changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">True</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">True</property>
                                 <property name="fill">True</property>
@@ -623,16 +760,16 @@ C - The close button</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox114">
+                              <object class="GtkHBox" id="hbox114">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label233">
+                                  <object class="GtkLabel" id="label233">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label">    </property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -640,12 +777,12 @@ C - The close button</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkHBox" id="hbox115">
+                                  <object class="GtkHBox" id="hbox115">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="spacing">6</property>
                                     <child>
-                                      <widget class="GtkLabel" id="label229">
+                                      <object class="GtkLabel" id="label229">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="xalign">0</property>
@@ -654,7 +791,7 @@ C - The close button</property>
 L:
 I:
 M:</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -662,7 +799,7 @@ M:</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="label230">
+                                      <object class="GtkLabel" id="label230">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="xalign">0</property>
@@ -671,7 +808,7 @@ M:</property>
 Window label (Title)
 Iconify (Minimize)
 Maximize</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -679,10 +816,10 @@ Maximize</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkVSeparator" id="vseparator1">
+                                      <object class="GtkVSeparator" id="vseparator1">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -690,7 +827,7 @@ Maximize</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="label231">
+                                      <object class="GtkLabel" id="label231">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="xalign">0</property>
@@ -698,7 +835,7 @@ Maximize</property>
                                         <property name="label" translatable="yes">C:
 S:
 D:</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -706,7 +843,7 @@ D:</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="label232">
+                                      <object class="GtkLabel" id="label232">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="xalign">0</property>
@@ -714,42 +851,42 @@ D:</property>
                                         <property name="label" translatable="yes">Close
 Shade (Roll up)
 Omnipresent (On all desktops)</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
                                         <property name="position">4</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">True</property>
                                     <property name="fill">True</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">True</property>
                                 <property name="fill">True</property>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">True</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
@@ -757,18 +894,18 @@ Omnipresent (On all desktops)</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox39">
+                  <object class="GtkVBox" id="vbox39">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label91">
+                      <object class="GtkLabel" id="label91">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Fonts&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -776,15 +913,15 @@ Omnipresent (On all desktops)</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox45">
+                      <object class="GtkHBox" id="hbox45">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label92">
+                          <object class="GtkLabel" id="label92">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -792,21 +929,21 @@ Omnipresent (On all desktops)</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkTable" id="table1">
+                          <object class="GtkTable" id="table1">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="n_rows">6</property>
                             <property name="n_columns">2</property>
                             <property name="row_spacing">3</property>
                             <child>
-                              <widget class="GtkFontButton" id="font_inactive">
+                              <object class="GtkFontButton" id="font_inactive">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_font">True</property>
-                                <signal name="font_set" handler="on_font_inactive_font_set"/>
-                              </widget>
+                                <signal handler="on_font_inactive_font_set" name="font_set"/>
+                              </object>
                               <packing>
                                 <property name="left_attach">1</property>
                                 <property name="right_attach">2</property>
@@ -817,14 +954,14 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkFontButton" id="font_menu_header">
+                              <object class="GtkFontButton" id="font_menu_header">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_font">True</property>
-                                <signal name="font_set" handler="on_font_menu_header_font_set"/>
-                              </widget>
+                                <signal handler="on_font_menu_header_font_set" name="font_set"/>
+                              </object>
                               <packing>
                                 <property name="left_attach">1</property>
                                 <property name="right_attach">2</property>
@@ -835,14 +972,14 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkFontButton" id="font_menu_item">
+                              <object class="GtkFontButton" id="font_menu_item">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_font">True</property>
-                                <signal name="font_set" handler="on_font_menu_item_font_set"/>
-                              </widget>
+                                <signal handler="on_font_menu_item_font_set" name="font_set"/>
+                              </object>
                               <packing>
                                 <property name="left_attach">1</property>
                                 <property name="right_attach">2</property>
@@ -853,28 +990,28 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="label94">
+                              <object class="GtkLabel" id="label94">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="xalign">1</property>
                                 <property name="label" translatable="yes">_Active window title: </property>
                                 <property name="use_underline">True</property>
                                 <property name="mnemonic_widget">font_active</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="x_options">GTK_FILL</property>
                                 <property name="y_options"/>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="label95">
+                              <object class="GtkLabel" id="label95">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="xalign">1</property>
                                 <property name="label" translatable="yes">_Inactive window title: </property>
                                 <property name="use_underline">True</property>
                                 <property name="mnemonic_widget">font_inactive</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="top_attach">1</property>
                                 <property name="bottom_attach">2</property>
@@ -883,14 +1020,14 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="label96">
+                              <object class="GtkLabel" id="label96">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="xalign">1</property>
                                 <property name="label" translatable="yes">Menu _header: </property>
                                 <property name="use_underline">True</property>
                                 <property name="mnemonic_widget">font_menu_header</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="top_attach">2</property>
                                 <property name="bottom_attach">3</property>
@@ -899,14 +1036,14 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="label97">
+                              <object class="GtkLabel" id="label97">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="xalign">1</property>
                                 <property name="label" translatable="yes">_Menu Item: </property>
                                 <property name="use_underline">True</property>
                                 <property name="mnemonic_widget">font_menu_item</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="top_attach">3</property>
                                 <property name="bottom_attach">4</property>
@@ -915,13 +1052,13 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="label98">
+                              <object class="GtkLabel" id="label98">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="xalign">1</property>
                                 <property name="label" translatable="yes">Active _On-screen display: </property>
                                 <property name="use_underline">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="top_attach">4</property>
                                 <property name="bottom_attach">5</property>
@@ -930,14 +1067,14 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkFontButton" id="font_active">
+                              <object class="GtkFontButton" id="font_active">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_font">True</property>
-                                <signal name="font_set" handler="on_font_active_font_set"/>
-                              </widget>
+                                <signal handler="on_font_active_font_set" name="font_set"/>
+                              </object>
                               <packing>
                                 <property name="left_attach">1</property>
                                 <property name="right_attach">2</property>
@@ -945,13 +1082,13 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="label240">
+                              <object class="GtkLabel" id="label240">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="xalign">1</property>
                                 <property name="label" translatable="yes">Inactive O_n-screen display: </property>
                                 <property name="use_underline">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="top_attach">5</property>
                                 <property name="bottom_attach">6</property>
@@ -960,14 +1097,14 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkFontButton" id="font_active_display">
+                              <object class="GtkFontButton" id="font_active_display">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_font">True</property>
-                                <signal name="font_set" handler="on_font_active_display_font_set"/>
-                              </widget>
+                                <signal handler="on_font_active_display_font_set" name="font_set"/>
+                              </object>
                               <packing>
                                 <property name="left_attach">1</property>
                                 <property name="right_attach">2</property>
@@ -978,14 +1115,14 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkFontButton" id="font_inactive_display">
+                              <object class="GtkFontButton" id="font_inactive_display">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_font">True</property>
-                                <signal name="font_set" handler="on_font_inactive_display_font_set"/>
-                              </widget>
+                                <signal handler="on_font_inactive_display_font_set" name="font_set"/>
+                              </object>
                               <packing>
                                 <property name="left_attach">1</property>
                                 <property name="right_attach">2</property>
@@ -995,66 +1132,62 @@ Omnipresent (On all desktops)</property>
                                 <property name="y_options"/>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">True</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
                     <property name="position">2</property>
                   </packing>
                 </child>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
+              </object>
             </child>
-            <child>
-              <widget class="GtkLabel" id="label84">
+            <child type="tab">
+              <object class="GtkLabel" id="label84">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="xalign">0</property>
                 <property name="xpad">6</property>
                 <property name="ypad">8</property>
                 <property name="label" translatable="yes">Appearance</property>
-              </widget>
+              </object>
               <packing>
                 <property name="position">1</property>
                 <property name="tab_fill">False</property>
-                <property name="type">tab</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkVBox" id="vbox12">
+              <object class="GtkVBox" id="vbox12">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="border_width">12</property>
                 <property name="spacing">18</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox65">
+                  <object class="GtkVBox" id="vbox65">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label164">
+                      <object class="GtkLabel" id="label164">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Focusing Windows&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -1062,15 +1195,15 @@ Omnipresent (On all desktops)</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox89">
+                      <object class="GtkHBox" id="hbox89">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label165">
+                          <object class="GtkLabel" id="label165">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -1078,12 +1211,12 @@ Omnipresent (On all desktops)</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox66">
+                          <object class="GtkVBox" id="vbox66">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkCheckButton" id="focus_new">
+                              <object class="GtkCheckButton" id="focus_new">
                                 <property name="label" translatable="yes">Focus _new windows when they appear</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
@@ -1091,29 +1224,29 @@ Omnipresent (On all desktops)</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                                <signal name="toggled" handler="on_focus_new_toggled" after="yes"/>
-                              </widget>
+                                <signal after="yes" handler="on_focus_new_toggled" name="toggled"/>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
                                 <property name="position">0</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
-                        <property name="expand">True</property>
+                        <property name="expand">False</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
@@ -1121,18 +1254,18 @@ Omnipresent (On all desktops)</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox34">
+                  <object class="GtkVBox" id="vbox34">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label82">
+                      <object class="GtkLabel" id="label82">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Placing Windows&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -1140,15 +1273,15 @@ Omnipresent (On all desktops)</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox40">
+                      <object class="GtkHBox" id="hbox40">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label83">
+                          <object class="GtkLabel" id="label83">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -1156,12 +1289,12 @@ Omnipresent (On all desktops)</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox35">
+                          <object class="GtkVBox" id="vbox35">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkCheckButton" id="place_mouse">
+                              <object class="GtkCheckButton" id="place_mouse">
                                 <property name="label" translatable="yes">_Place new windows under the mouse pointer</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
@@ -1169,8 +1302,8 @@ Omnipresent (On all desktops)</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                                <signal name="toggled" handler="on_place_mouse_toggled" after="yes"/>
-                              </widget>
+                                <signal after="yes" handler="on_place_mouse_toggled" name="toggled"/>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -1181,19 +1314,19 @@ Omnipresent (On all desktops)</property>
                               <placeholder/>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox107">
+                              <object class="GtkHBox" id="hbox107">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">12</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label220">
+                                  <object class="GtkLabel" id="label220">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Prefer to place new windows _on:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">place_active_popup</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1201,84 +1334,46 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkOptionMenu" id="place_active_popup">
+                                  <object class="GtkComboBoxText" id="place_active_popup">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="receives_default">False</property>
-                                    <child>
-                                      <widget class="GtkMenu" id="menu13">
-                                        <property name="can_focus">False</property>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="menuitem8">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">The primary monitor</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_place_active_popup_primary_activate"/>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="menuitem2">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">The active monitor</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_place_active_popup_active_activate"/>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="menuitem4">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">The monitor with the mouse</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_place_active_popup_mouse_activate"/>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="menuitem1">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">All monitors</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_place_active_popup_all_activate"/>
-                                          </widget>
-                                        </child>
-                                      </widget>
-                                    </child>
-                                  </widget>
+                                    <items>
+                                      <item translatable="yes">The primary monitor</item>
+                                      <item translatable="yes">The active monitor</item>
+                                      <item translatable="yes">The monitor with the mouse</item>
+                                      <item translatable="yes">All monitors</item>
+                                    </items>
+                                    <signal handler="on_place_active_popup_changed" name="changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
-                                <property name="expand">True</property>
+                                <property name="expand">False</property>
                                 <property name="fill">True</property>
                                 <property name="position">2</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
-                        <property name="expand">True</property>
+                        <property name="expand">False</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
@@ -1286,18 +1381,18 @@ Omnipresent (On all desktops)</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox86">
+                  <object class="GtkVBox" id="vbox86">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label243">
+                      <object class="GtkLabel" id="label243">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Primary Monitor&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -1305,15 +1400,15 @@ Omnipresent (On all desktops)</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox120">
+                      <object class="GtkHBox" id="hbox120">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label244">
+                          <object class="GtkLabel" id="label244">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -1321,16 +1416,16 @@ Omnipresent (On all desktops)</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox87">
+                          <object class="GtkVBox" id="vbox87">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox122">
+                              <object class="GtkHBox" id="hbox122">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label246">
+                                  <object class="GtkLabel" id="label246">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
@@ -1338,14 +1433,14 @@ Omnipresent (On all desktops)</property>
                                     <property name="label" translatable="yes">The primary monitor is where Openbox will place dialogs, such as the one used for cycling windows.</property>
                                     <property name="wrap">True</property>
                                     <property name="width_chars">0</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">0</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -1353,19 +1448,19 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox121">
+                              <object class="GtkHBox" id="hbox121">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label245">
+                                  <object class="GtkLabel" id="label245">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Primary _monitor:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">primary_monitor_popup</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1373,70 +1468,41 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkOptionMenu" id="primary_monitor_popup">
+                                  <object class="GtkComboBoxText" id="primary_monitor_popup">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="receives_default">False</property>
-                                    <child>
-                                      <widget class="GtkMenu" id="menu16">
-                                        <property name="can_focus">False</property>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="item1">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">Fixed Monitor</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_primary_monitor_fixed_activate"/>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="active_monitor1">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">Active Monitor</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_primary_monitor_active_activate"/>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="monitor_with_mouse_pointer1">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">Monitor With Mouse Pointer</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_primary_monitor_mouse_activate"/>
-                                          </widget>
-                                        </child>
-                                      </widget>
-                                    </child>
-                                  </widget>
+                                    <items>
+                                      <item translatable="yes">Fixed Monitor</item>
+                                      <item translatable="yes">Active Monitor</item>
+                                      <item translatable="yes">Monitor With Mouse Pointer</item>
+                                    </items>
+                                    <signal handler="on_primary_monitor_changed" name="changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
-                                <property name="expand">True</property>
+                                <property name="expand">False</property>
                                 <property name="fill">True</property>
                                 <property name="position">1</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox123">
+                              <object class="GtkHBox" id="hbox123">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label249">
+                                  <object class="GtkLabel" id="label249">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label">    </property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1444,14 +1510,14 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label248">
+                                  <object class="GtkLabel" id="label248">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">_Fixed monitor:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">fixed_monitor</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1459,90 +1525,86 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkSpinButton" id="fixed_monitor">
+                                  <object class="GtkSpinButton" id="fixed_monitor">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="primary_icon_activatable">False</property>
                                     <property name="secondary_icon_activatable">False</property>
                                     <property name="primary_icon_sensitive">True</property>
                                     <property name="secondary_icon_sensitive">True</property>
-                                    <property name="adjustment">1 1 100 1 10 0</property>
+                                    <property name="adjustment">adjustment1</property>
                                     <property name="climb_rate">1</property>
-                                    <signal name="value_changed" handler="on_fixed_monitor_value_changed"/>
-                                  </widget>
+                                    <signal handler="on_fixed_monitor_value_changed" name="value_changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
-                                <property name="expand">True</property>
+                                <property name="expand">False</property>
                                 <property name="fill">True</property>
                                 <property name="position">2</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
                     <property name="position">2</property>
                   </packing>
                 </child>
-              </widget>
-              <packing>
-                <property name="position">2</property>
-              </packing>
+              </object>
             </child>
-            <child>
-              <widget class="GtkLabel" id="label22">
+            <child type="tab">
+              <object class="GtkLabel" id="label22">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="xalign">0</property>
                 <property name="xpad">6</property>
                 <property name="ypad">8</property>
                 <property name="label" translatable="yes">Windows</property>
-              </widget>
+              </object>
               <packing>
                 <property name="position">2</property>
                 <property name="tab_fill">False</property>
-                <property name="type">tab</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkVBox" id="vbox78">
+              <object class="GtkVBox" id="vbox78">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="border_width">12</property>
                 <property name="spacing">18</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox14">
+                  <object class="GtkVBox" id="vbox14">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label34">
+                      <object class="GtkLabel" id="label34">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Moving and Resizing Windows&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -1550,15 +1612,15 @@ Omnipresent (On all desktops)</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox14">
+                      <object class="GtkHBox" id="hbox14">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label168">
+                          <object class="GtkLabel" id="label168">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -1566,12 +1628,12 @@ Omnipresent (On all desktops)</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox16">
+                          <object class="GtkVBox" id="vbox16">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkCheckButton" id="resize_contents">
+                              <object class="GtkCheckButton" id="resize_contents">
                                 <property name="label" translatable="yes">Update the window contents while _resizing</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
@@ -1579,8 +1641,8 @@ Omnipresent (On all desktops)</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                                <signal name="toggled" handler="on_resize_contents_toggled" after="yes"/>
-                              </widget>
+                                <signal after="yes" handler="on_resize_contents_toggled" name="toggled"/>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -1588,19 +1650,19 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox86">
+                              <object class="GtkHBox" id="hbox86">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkLabel" id="drag_threshold_label">
+                                  <object class="GtkLabel" id="drag_threshold_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Drag _threshold distance:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">drag_threshold</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1608,18 +1670,18 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkSpinButton" id="drag_threshold">
+                                  <object class="GtkSpinButton" id="drag_threshold">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="primary_icon_activatable">False</property>
                                     <property name="secondary_icon_activatable">False</property>
                                     <property name="primary_icon_sensitive">True</property>
                                     <property name="secondary_icon_sensitive">True</property>
-                                    <property name="adjustment">1 1 100 1 10 0</property>
+                                    <property name="adjustment">adjustment2</property>
                                     <property name="climb_rate">1</property>
                                     <property name="numeric">True</property>
-                                    <signal name="value_changed" handler="on_drag_threshold_value_changed" after="yes"/>
-                                  </widget>
+                                    <signal after="yes" handler="on_drag_threshold_value_changed" name="value_changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">True</property>
@@ -1627,38 +1689,38 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label160">
+                                  <object class="GtkLabel" id="label160">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label" translatable="yes">px</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
-                                <property name="expand">True</property>
+                                <property name="expand">False</property>
                                 <property name="fill">True</property>
                                 <property name="position">1</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox17">
+                              <object class="GtkHBox" id="hbox17">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkLabel" id="resist_window_label">
+                                  <object class="GtkLabel" id="resist_window_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Amount of resistance against other _windows:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">resist_window</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1666,18 +1728,18 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkSpinButton" id="resist_window">
+                                  <object class="GtkSpinButton" id="resist_window">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="primary_icon_activatable">False</property>
                                     <property name="secondary_icon_activatable">False</property>
                                     <property name="primary_icon_sensitive">True</property>
                                     <property name="secondary_icon_sensitive">True</property>
-                                    <property name="adjustment">20 0 100 1 10 0</property>
+                                    <property name="adjustment">adjustment3</property>
                                     <property name="climb_rate">1</property>
                                     <property name="numeric">True</property>
-                                    <signal name="value_changed" handler="on_resist_window_value_changed" after="yes"/>
-                                  </widget>
+                                    <signal after="yes" handler="on_resist_window_value_changed" name="value_changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">True</property>
@@ -1685,18 +1747,18 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label67">
+                                  <object class="GtkLabel" id="label67">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label" translatable="yes">px</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">True</property>
@@ -1704,19 +1766,19 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox18">
+                              <object class="GtkHBox" id="hbox18">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkLabel" id="resist_edge_label">
+                                  <object class="GtkLabel" id="resist_edge_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Amount of resistance against screen _edges:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">resist_edge</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1724,18 +1786,18 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkSpinButton" id="resist_edge">
+                                  <object class="GtkSpinButton" id="resist_edge">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="primary_icon_activatable">False</property>
                                     <property name="secondary_icon_activatable">False</property>
                                     <property name="primary_icon_sensitive">True</property>
                                     <property name="secondary_icon_sensitive">True</property>
-                                    <property name="adjustment">1 0 100 1 10 0</property>
+                                    <property name="adjustment">adjustment4</property>
                                     <property name="climb_rate">1</property>
                                     <property name="numeric">True</property>
-                                    <signal name="value_changed" handler="on_resist_edge_value_changed" after="yes"/>
-                                  </widget>
+                                    <signal after="yes" handler="on_resist_edge_value_changed" name="value_changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">True</property>
@@ -1743,18 +1805,18 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label68">
+                                  <object class="GtkLabel" id="label68">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label" translatable="yes">px</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">True</property>
@@ -1762,7 +1824,7 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkCheckButton" id="warp_edge">
+                              <object class="GtkCheckButton" id="warp_edge">
                                 <property name="label" translatable="yes">_Switch desktops when moving a window past the screen edge</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
@@ -1770,8 +1832,8 @@ Omnipresent (On all desktops)</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                                <signal name="toggled" handler="on_warp_edge_toggled" after="yes"/>
-                              </widget>
+                                <signal after="yes" handler="on_warp_edge_toggled" name="toggled"/>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -1779,15 +1841,15 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox103">
+                              <object class="GtkHBox" id="hbox103">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label214">
+                                  <object class="GtkLabel" id="label214">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label">    </property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1795,19 +1857,19 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkHBox" id="hbox104">
+                                  <object class="GtkHBox" id="hbox104">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="spacing">6</property>
                                     <child>
-                                      <widget class="GtkLabel" id="label215">
+                                      <object class="GtkLabel" id="label215">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">_Amount of time to wait before switching:</property>
                                         <property name="use_underline">True</property>
                                         <property name="mnemonic_widget">warp_edge_time</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -1815,18 +1877,18 @@ Omnipresent (On all desktops)</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkSpinButton" id="warp_edge_time">
+                                      <object class="GtkSpinButton" id="warp_edge_time">
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
                                         <property name="primary_icon_activatable">False</property>
                                         <property name="secondary_icon_activatable">False</property>
                                         <property name="primary_icon_sensitive">True</property>
                                         <property name="secondary_icon_sensitive">True</property>
-                                        <property name="adjustment">100 100 10000 10 10 0</property>
+                                        <property name="adjustment">adjustment5</property>
                                         <property name="climb_rate">1</property>
                                         <property name="numeric">True</property>
-                                        <signal name="value_changed" handler="on_warp_edge_time_value_changed" after="yes"/>
-                                      </widget>
+                                        <signal after="yes" handler="on_warp_edge_time_value_changed" name="value_changed"/>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">True</property>
@@ -1834,46 +1896,46 @@ Omnipresent (On all desktops)</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="label216">
+                                      <object class="GtkLabel" id="label216">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="label" translatable="yes">ms</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
                                         <property name="position">2</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">True</property>
                                     <property name="fill">True</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">True</property>
                                 <property name="position">5</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
@@ -1881,18 +1943,18 @@ Omnipresent (On all desktops)</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox79">
+                  <object class="GtkVBox" id="vbox79">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label222">
+                      <object class="GtkLabel" id="label222">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Information Dialog&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -1900,24 +1962,24 @@ Omnipresent (On all desktops)</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox80">
+                      <object class="GtkVBox" id="vbox80">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkHBox" id="hbox90">
+                          <object class="GtkHBox" id="hbox90">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">12</property>
                             <child>
-                              <widget class="GtkLabel" id="label166">
+                              <object class="GtkLabel" id="label166">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="xalign">0</property>
                                 <property name="label" translatable="yes">Show _information dialog:</property>
                                 <property name="use_underline">True</property>
                                 <property name="mnemonic_widget">resize_popup</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -1925,69 +1987,40 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkOptionMenu" id="resize_popup">
+                              <object class="GtkComboBoxText" id="resize_popup">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
-                                <child>
-                                  <widget class="GtkMenu" id="menu11">
-                                    <property name="can_focus">False</property>
-                                    <child>
-                                      <widget class="GtkMenuItem" id="resize_popup_nonpixel">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
-                                        <property name="use_action_appearance">False</property>
-                                        <property name="label" translatable="yes">When resizing terminal windows</property>
-                                        <property name="use_underline">True</property>
-                                        <signal name="activate" handler="on_resize_popup_nonpixel_activate"/>
-                                      </widget>
-                                    </child>
-                                    <child>
-                                      <widget class="GtkMenuItem" id="resize_popup_always">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
-                                        <property name="use_action_appearance">False</property>
-                                        <property name="label" translatable="yes">Always</property>
-                                        <property name="use_underline">True</property>
-                                        <signal name="activate" handler="on_resize_popup_always_activate"/>
-                                      </widget>
-                                    </child>
-                                    <child>
-                                      <widget class="GtkMenuItem" id="resize_popup_never">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
-                                        <property name="use_action_appearance">False</property>
-                                        <property name="label" translatable="yes">Never</property>
-                                        <property name="use_underline">True</property>
-                                        <signal name="activate" handler="on_resize_popup_never_activate"/>
-                                      </widget>
-                                    </child>
-                                  </widget>
-                                </child>
-                              </widget>
+                                <items>
+                                  <item translatable="yes">When resizing terminal windows</item>
+                                  <item translatable="yes">Always</item>
+                                  <item translatable="yes">Never</item>
+                                </items>
+                                <signal handler="on_resize_popup_changed" name="changed"/>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
-                            <property name="expand">True</property>
+                            <property name="expand">False</property>
                             <property name="fill">True</property>
                             <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox108">
+                          <object class="GtkHBox" id="hbox108">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <child>
-                              <widget class="GtkLabel" id="label35">
+                              <object class="GtkLabel" id="label35">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="label">    </property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -1995,24 +2028,24 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox81">
+                              <object class="GtkVBox" id="vbox81">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkHBox" id="hbox91">
+                                  <object class="GtkHBox" id="hbox91">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="spacing">12</property>
                                     <child>
-                                      <widget class="GtkLabel" id="label167">
+                                      <object class="GtkLabel" id="label167">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">Information dialog's _position:</property>
                                         <property name="use_underline">True</property>
                                         <property name="mnemonic_widget">resize_position</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -2020,69 +2053,40 @@ Omnipresent (On all desktops)</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkOptionMenu" id="resize_position">
+                                      <object class="GtkComboBoxText" id="resize_position">
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
                                         <property name="receives_default">False</property>
-                                        <child>
-                                          <widget class="GtkMenu" id="menu12">
-                                            <property name="can_focus">False</property>
-                                            <child>
-                                              <widget class="GtkMenuItem" id="resize_position_center">
-                                                <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <property name="use_action_appearance">False</property>
-                                                <property name="label" translatable="yes">Centered on the window</property>
-                                                <property name="use_underline">True</property>
-                                                <signal name="activate" handler="on_resize_position_center_activate"/>
-                                              </widget>
-                                            </child>
-                                            <child>
-                                              <widget class="GtkMenuItem" id="resize_position_top">
-                                                <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <property name="use_action_appearance">False</property>
-                                                <property name="label" translatable="yes">Above the window</property>
-                                                <property name="use_underline">True</property>
-                                                <signal name="activate" handler="on_resize_position_top_activate"/>
-                                              </widget>
-                                            </child>
-                                            <child>
-                                              <widget class="GtkMenuItem" id="fixed_position_on_screen1">
-                                                <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <property name="use_action_appearance">False</property>
-                                                <property name="label" translatable="yes">Fixed position on screen</property>
-                                                <property name="use_underline">True</property>
-                                                <signal name="activate" handler="on_resize_position_fixed_activate"/>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                      </widget>
+                                        <items>
+                                          <item translatable="yes">Centered on the window</item>
+                                          <item translatable="yes">Above the window</item>
+                                          <item translatable="yes">Fixed position on screen</item>
+                                        </items>
+                                        <signal handler="on_resize_position_changed" name="changed"/>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
                                         <property name="position">1</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
-                                    <property name="expand">True</property>
+                                    <property name="expand">False</property>
                                     <property name="fill">True</property>
                                     <property name="position">0</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkHBox" id="hbox109">
+                                  <object class="GtkHBox" id="hbox109">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <child>
-                                      <widget class="GtkLabel" id="label223">
+                                      <object class="GtkLabel" id="label223">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="label">    </property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -2090,24 +2094,24 @@ Omnipresent (On all desktops)</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkVBox" id="vbox82">
+                                      <object class="GtkVBox" id="vbox82">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox110">
+                                          <object class="GtkHBox" id="hbox110">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
                                             <property name="spacing">12</property>
                                             <child>
-                                              <widget class="GtkLabel" id="label224">
+                                              <object class="GtkLabel" id="label224">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">False</property>
                                                 <property name="xalign">0</property>
                                                 <property name="label" translatable="yes">Fixed _x position:</property>
                                                 <property name="use_underline">True</property>
                                                 <property name="mnemonic_widget">fixed_x_popup</property>
-                                              </widget>
+                                              </object>
                                               <packing>
                                                 <property name="expand">False</property>
                                                 <property name="fill">False</property>
@@ -2115,46 +2119,17 @@ Omnipresent (On all desktops)</property>
                                               </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkOptionMenu" id="fixed_x_popup">
+                                              <object class="GtkComboBoxText" id="fixed_x_popup">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">True</property>
                                                 <property name="receives_default">False</property>
-                                                <child>
-                                                  <widget class="GtkMenu" id="menu14">
-                                                    <property name="can_focus">False</property>
-                                                    <child>
-                                                      <widget class="GtkMenuItem" id="menuitem3">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="use_action_appearance">False</property>
-                                                        <property name="label" translatable="yes">Centered</property>
-                                                        <property name="use_underline">True</property>
-                                                        <signal name="activate" handler="on_fixed_x_position_center_activate"/>
-                                                      </widget>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkMenuItem" id="from_left_edge1">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="use_action_appearance">False</property>
-                                                        <property name="label" translatable="yes">From left edge</property>
-                                                        <property name="use_underline">True</property>
-                                                        <signal name="activate" handler="on_fixed_x_position_left_activate"/>
-                                                      </widget>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkMenuItem" id="from_right_edge1">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="use_action_appearance">False</property>
-                                                        <property name="label" translatable="yes">From right edge</property>
-                                                        <property name="use_underline">True</property>
-                                                        <signal name="activate" handler="on_fixed_x_position_right_activate"/>
-                                                      </widget>
-                                                    </child>
-                                                  </widget>
-                                                </child>
-                                              </widget>
+                                                <items>
+                                                  <item translatable="yes">Centered</item>
+                                                  <item translatable="yes">From left edge</item>
+                                                  <item translatable="yes">From right edge</item>
+                                                </items>
+                                                <signal handler="on_fixed_x_position_changed" name="changed"/>
+                                              </object>
                                               <packing>
                                                 <property name="expand">False</property>
                                                 <property name="fill">False</property>
@@ -2162,23 +2137,23 @@ Omnipresent (On all desktops)</property>
                                               </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkHBox" id="hbox112">
+                                              <object class="GtkHBox" id="hbox112">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">False</property>
                                                 <property name="spacing">6</property>
                                                 <child>
-                                                  <widget class="GtkSpinButton" id="fixed_x_pos">
+                                                  <object class="GtkSpinButton" id="fixed_x_pos">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">True</property>
                                                     <property name="primary_icon_activatable">False</property>
                                                     <property name="secondary_icon_activatable">False</property>
                                                     <property name="primary_icon_sensitive">True</property>
                                                     <property name="secondary_icon_sensitive">True</property>
-                                                    <property name="adjustment">1 0 1000 1 10 0</property>
+                                                    <property name="adjustment">adjustment6</property>
                                                     <property name="climb_rate">1</property>
                                                     <property name="numeric">True</property>
-                                                    <signal name="value_changed" handler="on_fixed_x_pos_value_changed" after="yes"/>
-                                                  </widget>
+                                                    <signal after="yes" handler="on_fixed_x_pos_value_changed" name="value_changed"/>
+                                                  </object>
                                                   <packing>
                                                     <property name="expand">False</property>
                                                     <property name="fill">True</property>
@@ -2186,45 +2161,45 @@ Omnipresent (On all desktops)</property>
                                                   </packing>
                                                 </child>
                                                 <child>
-                                                  <widget class="GtkLabel" id="label227">
+                                                  <object class="GtkLabel" id="label227">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">False</property>
                                                     <property name="label" translatable="yes">px</property>
-                                                  </widget>
+                                                  </object>
                                                   <packing>
                                                     <property name="expand">False</property>
                                                     <property name="fill">False</property>
                                                     <property name="position">1</property>
                                                   </packing>
                                                 </child>
-                                              </widget>
+                                              </object>
                                               <packing>
                                                 <property name="expand">True</property>
                                                 <property name="fill">True</property>
                                                 <property name="position">2</property>
                                               </packing>
                                             </child>
-                                          </widget>
+                                          </object>
                                           <packing>
-                                            <property name="expand">True</property>
+                                            <property name="expand">False</property>
                                             <property name="fill">True</property>
                                             <property name="position">0</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox111">
+                                          <object class="GtkHBox" id="hbox111">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
                                             <property name="spacing">12</property>
                                             <child>
-                                              <widget class="GtkLabel" id="label225">
+                                              <object class="GtkLabel" id="label225">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">False</property>
                                                 <property name="xalign">0</property>
                                                 <property name="label" translatable="yes">Fixed _y position:</property>
                                                 <property name="use_underline">True</property>
                                                 <property name="mnemonic_widget">fixed_y_popup</property>
-                                              </widget>
+                                              </object>
                                               <packing>
                                                 <property name="expand">False</property>
                                                 <property name="fill">False</property>
@@ -2232,46 +2207,17 @@ Omnipresent (On all desktops)</property>
                                               </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkOptionMenu" id="fixed_y_popup">
+                                              <object class="GtkComboBoxText" id="fixed_y_popup">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">True</property>
                                                 <property name="receives_default">False</property>
-                                                <child>
-                                                  <widget class="GtkMenu" id="menu15">
-                                                    <property name="can_focus">False</property>
-                                                    <child>
-                                                      <widget class="GtkMenuItem" id="menuitem5">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="use_action_appearance">False</property>
-                                                        <property name="label" translatable="yes">Centered</property>
-                                                        <property name="use_underline">True</property>
-                                                        <signal name="activate" handler="on_fixed_y_position_center_activate"/>
-                                                      </widget>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkMenuItem" id="menuitem6">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="use_action_appearance">False</property>
-                                                        <property name="label" translatable="yes">From top edge</property>
-                                                        <property name="use_underline">True</property>
-                                                        <signal name="activate" handler="on_fixed_y_position_top_activate"/>
-                                                      </widget>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkMenuItem" id="menuitem7">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="use_action_appearance">False</property>
-                                                        <property name="label" translatable="yes">From bottom edge</property>
-                                                        <property name="use_underline">True</property>
-                                                        <signal name="activate" handler="on_fixed_y_position_bottom_activate"/>
-                                                      </widget>
-                                                    </child>
-                                                  </widget>
-                                                </child>
-                                              </widget>
+                                                <items>
+                                                  <item translatable="yes">Centered</item>
+                                                  <item translatable="yes">From top edge</item>
+                                                  <item translatable="yes">From bottom edge</item>
+                                                </items>
+                                                <signal handler="on_fixed_y_position_changed" name="changed"/>
+                                              </object>
                                               <packing>
                                                 <property name="expand">False</property>
                                                 <property name="fill">False</property>
@@ -2279,23 +2225,23 @@ Omnipresent (On all desktops)</property>
                                               </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkHBox" id="hbox113">
+                                              <object class="GtkHBox" id="hbox113">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">False</property>
                                                 <property name="spacing">6</property>
                                                 <child>
-                                                  <widget class="GtkSpinButton" id="fixed_y_pos">
+                                                  <object class="GtkSpinButton" id="fixed_y_pos">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">True</property>
                                                     <property name="primary_icon_activatable">False</property>
                                                     <property name="secondary_icon_activatable">False</property>
                                                     <property name="primary_icon_sensitive">True</property>
                                                     <property name="secondary_icon_sensitive">True</property>
-                                                    <property name="adjustment">1 0 1000 1 10 0</property>
+                                                    <property name="adjustment">adjustment7</property>
                                                     <property name="climb_rate">1</property>
                                                     <property name="numeric">True</property>
-                                                    <signal name="value_changed" handler="on_fixed_y_pos_value_changed" after="yes"/>
-                                                  </widget>
+                                                    <signal after="yes" handler="on_fixed_y_pos_value_changed" name="value_changed"/>
+                                                  </object>
                                                   <packing>
                                                     <property name="expand">False</property>
                                                     <property name="fill">True</property>
@@ -2303,112 +2249,108 @@ Omnipresent (On all desktops)</property>
                                                   </packing>
                                                 </child>
                                                 <child>
-                                                  <widget class="GtkLabel" id="label228">
+                                                  <object class="GtkLabel" id="label228">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">False</property>
                                                     <property name="label" translatable="yes">px</property>
-                                                  </widget>
+                                                  </object>
                                                   <packing>
                                                     <property name="expand">False</property>
                                                     <property name="fill">False</property>
                                                     <property name="position">1</property>
                                                   </packing>
                                                 </child>
-                                              </widget>
+                                              </object>
                                               <packing>
                                                 <property name="expand">True</property>
                                                 <property name="fill">True</property>
                                                 <property name="position">2</property>
                                               </packing>
                                             </child>
-                                          </widget>
+                                          </object>
                                           <packing>
-                                            <property name="expand">True</property>
+                                            <property name="expand">False</property>
                                             <property name="fill">True</property>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">True</property>
                                         <property name="fill">True</property>
                                         <property name="position">1</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">True</property>
                                     <property name="fill">True</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">True</property>
                                 <property name="fill">True</property>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
                     <property name="position">1</property>
                   </packing>
                 </child>
-              </widget>
-              <packing>
-                <property name="position">3</property>
-              </packing>
+              </object>
             </child>
-            <child>
-              <widget class="GtkLabel" id="label221">
+            <child type="tab">
+              <object class="GtkLabel" id="label221">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="xalign">0</property>
                 <property name="xpad">6</property>
                 <property name="ypad">8</property>
                 <property name="label" translatable="yes">Move &amp; Resize</property>
-              </widget>
+              </object>
               <packing>
                 <property name="position">3</property>
                 <property name="tab_fill">False</property>
-                <property name="type">tab</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkVBox" id="vbox56">
+              <object class="GtkVBox" id="vbox56">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="border_width">12</property>
                 <property name="spacing">18</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox13">
+                  <object class="GtkVBox" id="vbox13">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label32">
+                      <object class="GtkLabel" id="label32">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Focusing Windows&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -2416,15 +2358,15 @@ Omnipresent (On all desktops)</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox13">
+                      <object class="GtkHBox" id="hbox13">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label33">
+                          <object class="GtkLabel" id="label33">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -2432,12 +2374,12 @@ Omnipresent (On all desktops)</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox15">
+                          <object class="GtkVBox" id="vbox15">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkCheckButton" id="focus_mouse">
+                              <object class="GtkCheckButton" id="focus_mouse">
                                 <property name="label" translatable="yes">_Focus windows when the mouse pointer moves over them</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
@@ -2445,8 +2387,8 @@ Omnipresent (On all desktops)</property>
                                 <property name="use_action_appearance">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                                <signal name="toggled" handler="on_focus_mouse_toggled" after="yes"/>
-                              </widget>
+                                <signal after="yes" handler="on_focus_mouse_toggled" name="toggled"/>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -2454,15 +2396,15 @@ Omnipresent (On all desktops)</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox32">
+                              <object class="GtkHBox" id="hbox32">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label65">
+                                  <object class="GtkLabel" id="label65">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label">    </property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -2470,12 +2412,12 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkVBox" id="vbox25">
+                                  <object class="GtkVBox" id="vbox25">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="spacing">6</property>
                                     <child>
-                                      <widget class="GtkCheckButton" id="focus_notlast">
+                                      <object class="GtkCheckButton" id="focus_notlast">
                                         <property name="label" translatable="yes">Move focus under the mouse when _switching desktops</property>
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
@@ -2483,8 +2425,8 @@ Omnipresent (On all desktops)</property>
                                         <property name="use_action_appearance">False</property>
                                         <property name="use_underline">True</property>
                                         <property name="draw_indicator">True</property>
-                                        <signal name="toggled" handler="on_focus_notlast_toggled"/>
-                                      </widget>
+                                        <signal handler="on_focus_notlast_toggled" name="toggled"/>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -2492,7 +2434,7 @@ Omnipresent (On all desktops)</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkCheckButton" id="focus_under_mouse">
+                                      <object class="GtkCheckButton" id="focus_under_mouse">
                                         <property name="label" translatable="yes">Move focus _under the mouse when the mouse is not moving</property>
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
@@ -2500,8 +2442,8 @@ Omnipresent (On all desktops)</property>
                                         <property name="use_action_appearance">False</property>
                                         <property name="use_underline">True</property>
                                         <property name="draw_indicator">True</property>
-                                        <signal name="toggled" handler="on_focus_under_mouse_toggled"/>
-                                      </widget>
+                                        <signal handler="on_focus_under_mouse_toggled" name="toggled"/>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -2509,7 +2451,7 @@ Omnipresent (On all desktops)</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkCheckButton" id="focus_raise">
+                                      <object class="GtkCheckButton" id="focus_raise">
                                         <property name="label" translatable="yes">_Raise windows when the mouse pointer moves over them</property>
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
@@ -2517,8 +2459,8 @@ Omnipresent (On all desktops)</property>
                                         <property name="use_action_appearance">False</property>
                                         <property name="use_underline">True</property>
                                         <property name="draw_indicator">True</property>
-                                        <signal name="toggled" handler="on_focus_raise_toggled" after="yes"/>
-                                      </widget>
+                                        <signal after="yes" handler="on_focus_raise_toggled" name="toggled"/>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -2526,18 +2468,18 @@ Omnipresent (On all desktops)</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox16">
+                                      <object class="GtkHBox" id="hbox16">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkLabel" id="focus_delay_label">
+                                          <object class="GtkLabel" id="focus_delay_label">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
                                             <property name="label" translatable="yes">_Delay before focusing and raising windows:</property>
                                             <property name="use_underline">True</property>
                                             <property name="mnemonic_widget">focus_delay</property>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="expand">False</property>
                                             <property name="fill">False</property>
@@ -2545,18 +2487,18 @@ Omnipresent (On all desktops)</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkSpinButton" id="focus_delay">
+                                          <object class="GtkSpinButton" id="focus_delay">
                                             <property name="visible">True</property>
                                             <property name="can_focus">True</property>
                                             <property name="primary_icon_activatable">False</property>
                                             <property name="secondary_icon_activatable">False</property>
                                             <property name="primary_icon_sensitive">True</property>
                                             <property name="secondary_icon_sensitive">True</property>
-                                            <property name="adjustment">0 0 10000 10 10 0</property>
+                                            <property name="adjustment">adjustment8</property>
                                             <property name="climb_rate">1</property>
                                             <property name="numeric">True</property>
-                                            <signal name="value_changed" handler="on_focus_delay_value_changed" after="yes"/>
-                                          </widget>
+                                            <signal after="yes" handler="on_focus_delay_value_changed" name="value_changed"/>
+                                          </object>
                                           <packing>
                                             <property name="expand">False</property>
                                             <property name="fill">True</property>
@@ -2564,53 +2506,53 @@ Omnipresent (On all desktops)</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkLabel" id="focus_delay_label_units">
+                                          <object class="GtkLabel" id="focus_delay_label_units">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
                                             <property name="label" translatable="yes">ms</property>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="expand">False</property>
                                             <property name="fill">False</property>
                                             <property name="position">2</property>
                                           </packing>
                                         </child>
-                                      </widget>
+                                      </object>
                                       <packing>
-                                        <property name="expand">True</property>
+                                        <property name="expand">False</property>
                                         <property name="fill">True</property>
                                         <property name="position">3</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">True</property>
                                     <property name="fill">True</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
-                                <property name="fill">False</property>
+                                <property name="fill">True</property>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">True</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
@@ -2618,18 +2560,18 @@ Omnipresent (On all desktops)</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox61">
+                  <object class="GtkVBox" id="vbox61">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkLabel" id="label155">
+                      <object class="GtkLabel" id="label155">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">&lt;span weight="bold"&gt;Titlebar&lt;/span&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -2637,15 +2579,15 @@ Omnipresent (On all desktops)</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox84">
+                      <object class="GtkHBox" id="hbox84">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <child>
-                          <widget class="GtkLabel" id="label156">
+                          <object class="GtkLabel" id="label156">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="label">    </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -2653,24 +2595,24 @@ Omnipresent (On all desktops)</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox62">
+                          <object class="GtkVBox" id="vbox62">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox87">
+                              <object class="GtkHBox" id="hbox87">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">12</property>
                                 <child>
-                                  <widget class="GtkLabel" id="titlebar_doubleclick_label">
+                                  <object class="GtkLabel" id="titlebar_doubleclick_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Double click on the _titlebar:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">titlebar_doubleclick</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -2678,63 +2620,43 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkOptionMenu" id="titlebar_doubleclick">
+                                  <object class="GtkComboBoxText" id="titlebar_doubleclick">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="receives_default">False</property>
-                                    <child>
-                                      <widget class="GtkMenu" id="menu10">
-                                        <property name="can_focus">False</property>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="titlebar_doubleclick_maximize">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">Maximizes the window</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_titlebar_doubleclick_maximize_activate"/>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="titlebar_doubleclick_shade">
-                                            <property name="visible">True</property>
-                                            <property name="can_focus">False</property>
-                                            <property name="use_action_appearance">False</property>
-                                            <property name="label" translatable="yes">Shades the window</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="activate" handler="on_titlebar_doubleclick_shade_activate"/>
-                                          </widget>
-                                        </child>
-                                      </widget>
-                                    </child>
-                                  </widget>
+                                    <items>
+                                      <item translatable="yes">Maximizes the window</item>
+                                      <item translatable="yes">Shades the window</item>
+                                    </items>
+                                    <signal handler="on_titlebar_doubleclick_changed" name="changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
-                                <property name="expand">True</property>
+                                <property name="expand">False</property>
                                 <property name="fill">True</property>
                                 <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox85">
+                              <object class="GtkHBox" id="hbox85">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkLabel" id="doubleclick_time_label">
+                                  <object class="GtkLabel" id="doubleclick_time_label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Double click ti_me:</property>
                                     <property name="use_underline">True</property>
                                     <property name="mnemonic_widget">doubleclick_time</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -2742,18 +2664,18 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkSpinButton" id="doubleclick_time">
+                                  <object class="GtkSpinButton" id="doubleclick_time">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="primary_icon_activatable">False</property>
                                     <property name="secondary_icon_activatable">False</property>
                                     <property name="primary_icon_sensitive">True</property>
                                     <property name="secondary_icon_sensitive">True</property>
-                                    <property name="adjustment">0 0 10000 10 10 0</property>
+                                    <property name="adjustment">adjustment9</property>
                                     <property name="climb_rate">1</property>
                                     <property name="numeric">True</property>
-                                    <signal name="value_changed" handler="on_doubleclick_time_value_changed" after="yes"/>
-                                  </widget>
+                                    <signal after="yes" handler="on_doubleclick_time_value_changed" name="value_changed"/>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">True</property>
@@ -2761,39 +2683,39 @@ Omnipresent (On all desktops)</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label158">
+                                  <object class="GtkLabel" id="label158">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <property name="label" translatable="yes">ms</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position&q