[gnome-control-center] Remove libglade dependency on gnome-keyboard-properties



commit d224c36f6e13fc1d3af1cd97fbd1b1bac2b89081
Author: Robert Ancell <robert ancell gmail com>
Date:   Thu Jul 30 13:25:37 2009 +1000

    Remove libglade dependency on gnome-keyboard-properties

 capplets/keyboard/Makefile.am                      |   12 +-
 ...gnome-keyboard-properties-a11y-notifications.ui |  516 ++++++
 capplets/keyboard/gnome-keyboard-properties-a11y.c |   29 +-
 capplets/keyboard/gnome-keyboard-properties-a11y.h |    3 +-
 ...s.glade => gnome-keyboard-properties-dialog.ui} | 1951 ++++++--------------
 .../gnome-keyboard-properties-layout-chooser.ui    |  315 ++++
 .../gnome-keyboard-properties-model-chooser.ui     |  142 ++
 .../gnome-keyboard-properties-options-dialog.ui    |   94 +
 capplets/keyboard/gnome-keyboard-properties-xkb.c  |   18 +-
 capplets/keyboard/gnome-keyboard-properties-xkb.h  |   34 +-
 .../keyboard/gnome-keyboard-properties-xkblt.c     |   34 +-
 .../keyboard/gnome-keyboard-properties-xkbltadd.c  |   45 +-
 .../keyboard/gnome-keyboard-properties-xkbmc.c     |   37 +-
 .../keyboard/gnome-keyboard-properties-xkbot.c     |   26 +-
 .../keyboard/gnome-keyboard-properties-xkbpv.c     |    6 +-
 capplets/keyboard/gnome-keyboard-properties.c      |   20 +-
 po/POTFILES.in                                     |    6 +-
 17 files changed, 1819 insertions(+), 1469 deletions(-)
---
diff --git a/capplets/keyboard/Makefile.am b/capplets/keyboard/Makefile.am
index 9dc3225..0535402 100644
--- a/capplets/keyboard/Makefile.am
+++ b/capplets/keyboard/Makefile.am
@@ -19,8 +19,12 @@ gnome_keyboard_properties_LDADD = $(GNOMECC_CAPPLETS_LIBS) $(LIBGNOMEKBDUI_LIBS)
 
 @INTLTOOL_DESKTOP_RULE@
 
-Gladedir   = $(pkgdatadir)/glade
-Glade_DATA = gnome-keyboard-properties.glade
+uidir   = $(pkgdatadir)/ui
+dist_ui_DATA = gnome-keyboard-properties-a11y-notifications.ui \
+               gnome-keyboard-properties-dialog.ui \
+               gnome-keyboard-properties-layout-chooser.ui \
+               gnome-keyboard-properties-model-chooser.ui \
+               gnome-keyboard-properties-options-dialog.ui
 
 desktopdir = $(datadir)/applications
 Desktop_in_files = keyboard.desktop.in
@@ -31,8 +35,8 @@ INCLUDES = \
 	$(LIBGNOMEKBDUI_CFLAGS) \
 	-DGNOMELOCALEDIR="\"$(datadir)/locale\"" \
 	-DGNOMECC_DATA_DIR="\"$(pkgdatadir)\"" \
-	-DGNOMECC_GLADE_DIR="\"$(pkgdatadir)/glade\""
+	-DGNOMECC_UI_DIR="\"$(uidir)\""
 CLEANFILES = $(GNOMECC_CAPPLETS_CLEANFILES) $(Desktop_in_files) $(desktop_DATA)
-EXTRA_DIST = $(Glade_DATA)
+EXTRA_DIST = $(ui_DATA)
 
 -include $(top_srcdir)/git.mk
diff --git a/capplets/keyboard/gnome-keyboard-properties-a11y-notifications.ui b/capplets/keyboard/gnome-keyboard-properties-a11y-notifications.ui
new file mode 100644
index 0000000..bf4ef54
--- /dev/null
+++ b/capplets/keyboard/gnome-keyboard-properties-a11y-notifications.ui
@@ -0,0 +1,516 @@
+<?xml version="1.0"?>
+<interface>
+  <requires lib="gtk+" version="2.16"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="a11y_notifications_dialog">
+    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+    <property name="border_width">5</property>
+    <property name="title" translatable="yes">Keyboard Accessibility Audio Feedback</property>
+    <property name="window_position">center-on-parent</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox7">
+        <property name="visible">True</property>
+        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">2</property>
+        <child>
+          <object class="GtkVBox" id="vbox46">
+            <property name="visible">True</property>
+            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+            <property name="border_width">5</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">18</property>
+            <child>
+              <object class="GtkVBox" id="vbox47">
+                <property name="visible">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">6</property>
+                <child>
+                  <object class="GtkLabel" id="label33">
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">&lt;b&gt;General&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                  <packing>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHBox" id="hbox15">
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <child>
+                      <object class="GtkLabel" id="label40">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label">    </property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox48">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkCheckButton" id="feature_state_change_beep">
+                            <property name="label" translatable="yes">Beep when _accessibility features are turned on or off</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="togglekeys_enable">
+                            <property name="label" translatable="yes">Beep when a _toggle key is pressed</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="system_bell_box">
+                <property name="visible">True</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">6</property>
+                <child>
+                  <object class="GtkLabel" id="label500">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Visual cues for sounds&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                  <packing>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHBox" id="hbox99">
+                    <property name="visible">True</property>
+                    <child>
+                      <object class="GtkLabel" id="label99">
+                        <property name="visible">True</property>
+                        <property name="label">    </property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox99">
+                        <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkCheckButton" id="visual_bell_enable">
+                            <property name="label" translatable="yes">Show _visual feedback for the alert sound</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkHBox" id="hbox3">
+                            <property name="visible">True</property>
+                            <child>
+                              <object class="GtkLabel" id="label98">
+                                <property name="visible">True</property>
+                                <property name="label">    </property>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkVBox" id="vbox98">
+                                <property name="visible">True</property>
+                                <property name="orientation">vertical</property>
+                                <property name="spacing">6</property>
+                                <child>
+                                  <object class="GtkRadioButton" id="visual_bell_titlebar">
+                                    <property name="label" translatable="yes">Flash _window titlebar</property>
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                    <property name="use_underline">True</property>
+                                    <property name="active">True</property>
+                                    <property name="draw_indicator">True</property>
+                                  </object>
+                                  <packing>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkRadioButton" id="visual_bell_fullscreen">
+                                    <property name="label" translatable="yes">Flash entire _screen</property>
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                    <property name="use_underline">True</property>
+                                    <property name="active">True</property>
+                                    <property name="draw_indicator">True</property>
+                                    <property name="group">visual_bell_titlebar</property>
+                                  </object>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="slowkeys_notifications_box">
+                <property name="visible">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">6</property>
+                <child>
+                  <object class="GtkLabel" id="label51">
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Slow Keys&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                  <packing>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHBox" id="hbox18">
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <child>
+                      <object class="GtkLabel" id="label53">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label">    </property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox52">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkCheckButton" id="slowkeys_beep_press">
+                            <property name="label" translatable="yes">Beep when a key is pr_essed</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="slowkeys_beep_accept">
+                            <property name="label" translatable="yes">Beep when key is _accepted</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="slowkeys_beep_reject">
+                            <property name="label" translatable="yes">Beep when key is _rejected</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">2</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="bouncekeys_notifications_box">
+                <property name="visible">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">6</property>
+                <child>
+                  <object class="GtkLabel" id="label54">
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Bounce Keys&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                  <packing>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHBox" id="hbox22">
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <child>
+                      <object class="GtkLabel" id="label55">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label">    </property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox54">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkCheckButton" id="bouncekeys_beep_reject">
+                            <property name="label" translatable="yes">Beep when a key is reje_cted</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">3</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="stickykeys_notifications_box">
+                <property name="visible">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">6</property>
+                <child>
+                  <object class="GtkLabel" id="label47">
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Sticky Keys&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                  <packing>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHBox" id="hbox17">
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <child>
+                      <object class="GtkLabel" id="label50">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label">    </property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox50">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkCheckButton" id="stickykeys_modifier_beep">
+                            <property name="label" translatable="yes">Beep when a _modifier key is pressed</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area7">
+            <property name="visible">True</property>
+            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="button11">
+                <property name="label">gtk-help</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="button12">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-11">button11</action-widget>
+      <action-widget response="-7">button12</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/capplets/keyboard/gnome-keyboard-properties-a11y.c b/capplets/keyboard/gnome-keyboard-properties-a11y.c
index 1a4467c..216e18b 100644
--- a/capplets/keyboard/gnome-keyboard-properties-a11y.c
+++ b/capplets/keyboard/gnome-keyboard-properties-a11y.c
@@ -30,12 +30,14 @@
 #include "capplet-util.h"
 
 #define CONFIG_ROOT "/desktop/gnome/accessibility/keyboard"
-#define NWID(s) glade_xml_get_widget (notifications_dialog, s)
+#undef WID
+#define WID(s) GTK_WIDGET (gtk_builder_get_object (dialog, s))
+#define NWID(s) GTK_WIDGET (gtk_builder_get_object (notifications_dialog, s))
 
-static GladeXML *notifications_dialog = NULL;
+static GtkBuilder *notifications_dialog = NULL;
 
 static void
-stickykeys_enable_toggled_cb (GtkWidget *w, GladeXML *dialog)
+stickykeys_enable_toggled_cb (GtkWidget *w, GtkBuilder *dialog)
 {
 	gboolean active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (w));
 
@@ -45,7 +47,7 @@ stickykeys_enable_toggled_cb (GtkWidget *w, GladeXML *dialog)
 }
 
 static void
-slowkeys_enable_toggled_cb (GtkWidget *w, GladeXML *dialog)
+slowkeys_enable_toggled_cb (GtkWidget *w, GtkBuilder *dialog)
 {
 	gboolean active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (w));
 
@@ -55,7 +57,7 @@ slowkeys_enable_toggled_cb (GtkWidget *w, GladeXML *dialog)
 }
 
 static void
-bouncekeys_enable_toggled_cb (GtkWidget *w, GladeXML *dialog)
+bouncekeys_enable_toggled_cb (GtkWidget *w, GtkBuilder *dialog)
 {
 	gboolean active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (w));
 
@@ -65,7 +67,7 @@ bouncekeys_enable_toggled_cb (GtkWidget *w, GladeXML *dialog)
 }
 
 static void
-visual_bell_enable_toggled_cb (GtkWidget *w, GladeXML *dialog)
+visual_bell_enable_toggled_cb (GtkWidget *w, GtkBuilder *dialog)
 {
 	gboolean active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (w));
 
@@ -124,13 +126,14 @@ a11y_notifications_dialog_response_cb (GtkWidget *w, gint response)
 	}
 }
 static void
-notifications_button_clicked_cb (GtkWidget *button, GladeXML *dialog)
+notifications_button_clicked_cb (GtkWidget *button, GtkBuilder *dialog)
 {
 	GtkWidget *w;
-
-	notifications_dialog = glade_xml_new (GNOMECC_GLADE_DIR
-					      "/gnome-keyboard-properties.glade",
-					      "a11y_notifications_dialog", NULL);
+    
+    notifications_dialog = gtk_builder_new ();
+    gtk_builder_add_from_file (notifications_dialog, GNOMECC_UI_DIR
+                               "/gnome-keyboard-properties-a11y-notifications.ui",
+                               NULL);
 
 	stickykeys_enable_toggled_cb (WID ("stickykeys_enable"), dialog);
 	slowkeys_enable_toggled_cb (WID ("slowkeys_enable"), dialog);
@@ -199,7 +202,7 @@ notifications_button_clicked_cb (GtkWidget *button, GladeXML *dialog)
 }
 
 static void
-mousekeys_enable_toggled_cb (GtkWidget *w, GladeXML *dialog)
+mousekeys_enable_toggled_cb (GtkWidget *w, GtkBuilder *dialog)
 {
 	gboolean active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (w));
 	gtk_widget_set_sensitive (WID ("mousekeys_table"), active);
@@ -243,7 +246,7 @@ mousekeys_accel_time_from_widget (GConfPropertyEditor *peditor, const GConfValue
 }
 
 void
-setup_a11y_tabs (GladeXML *dialog, GConfChangeSet *changeset)
+setup_a11y_tabs (GtkBuilder *dialog, GConfChangeSet *changeset)
 {
 	GConfClient *client;
 	GtkWidget *w;
diff --git a/capplets/keyboard/gnome-keyboard-properties-a11y.h b/capplets/keyboard/gnome-keyboard-properties-a11y.h
index bdce927..f3b3896 100644
--- a/capplets/keyboard/gnome-keyboard-properties-a11y.h
+++ b/capplets/keyboard/gnome-keyboard-properties-a11y.h
@@ -26,8 +26,7 @@
 
 #include <gconf/gconf-changeset.h>
 #include <gtk/gtk.h>
-#include <glade/glade.h>
 
-extern void setup_a11y_tabs (GladeXML * dialog, GConfChangeSet * changeset);
+extern void setup_a11y_tabs (GtkBuilder * dialog, GConfChangeSet * changeset);
 
 #endif /* __GNOME_KEYBOARD_PROPERTY_A11Y_H */
diff --git a/capplets/keyboard/gnome-keyboard-properties.glade b/capplets/keyboard/gnome-keyboard-properties-dialog.ui
similarity index 55%
rename from capplets/keyboard/gnome-keyboard-properties.glade
rename to capplets/keyboard/gnome-keyboard-properties-dialog.ui
index 08c9254..755451d 100644
--- a/capplets/keyboard/gnome-keyboard-properties.glade
+++ b/capplets/keyboard/gnome-keyboard-properties-dialog.ui
@@ -1,144 +1,228 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--Generated with glade3 3.4.5 on Mon Oct 27 19:13:30 2008 -->
-<glade-interface>
-  <widget class="GtkDialog" id="keyboard_dialog">
+<?xml version="1.0"?>
+<interface>
+  <requires lib="gtk+" version="2.16"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="value">500</property>
+    <property name="lower">100</property>
+    <property name="upper">2000</property>
+    <property name="step_increment">10</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment10">
+    <property name="value">1</property>
+    <property name="lower">1</property>
+    <property name="upper">100000</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment2">
+    <property name="value">30</property>
+    <property name="lower">10</property>
+    <property name="upper">110</property>
+    <property name="step_increment">10</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment3">
+    <property name="value">1000</property>
+    <property name="lower">100</property>
+    <property name="upper">2500</property>
+    <property name="step_increment">200</property>
+    <property name="page_increment">200</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment4">
+    <property name="value">0.5</property>
+    <property name="upper">500</property>
+    <property name="step_increment">10</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment5">
+    <property name="value">0.5</property>
+    <property name="upper">900</property>
+    <property name="step_increment">10</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment6">
+    <property name="value">1800</property>
+    <property name="upper">3000</property>
+    <property name="step_increment">10</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment7">
+    <property name="value">300</property>
+    <property name="lower">10</property>
+    <property name="upper">1000</property>
+    <property name="step_increment">10</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment8">
+    <property name="value">300</property>
+    <property name="lower">10</property>
+    <property name="upper">2000</property>
+    <property name="step_increment">10</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment9">
+    <property name="value">1</property>
+    <property name="lower">1</property>
+    <property name="upper">100000</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkDialog" id="keyboard_dialog">
     <property name="border_width">5</property>
     <property name="title" translatable="yes">Keyboard Preferences</property>
     <property name="default_width">450</property>
     <property name="default_height">430</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+    <property name="type_hint">dialog</property>
     <property name="has_separator">False</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox1">
+      <object class="GtkVBox" id="dialog-vbox1">
         <property name="visible">True</property>
+        <property name="orientation">vertical</property>
         <property name="spacing">2</property>
         <child>
-          <widget class="GtkVBox" id="vbox1">
+          <object class="GtkVBox" id="vbox1">
             <property name="visible">True</property>
             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
             <property name="border_width">5</property>
+            <property name="orientation">vertical</property>
             <property name="spacing">12</property>
             <child>
-              <widget class="GtkNotebook" id="keyboard_notebook">
+              <object class="GtkNotebook" id="keyboard_notebook">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox2">
+                  <object class="GtkVBox" id="vbox2">
                     <property name="visible">True</property>
                     <property name="border_width">12</property>
+                    <property name="orientation">vertical</property>
                     <property name="spacing">18</property>
                     <child>
-                      <widget class="GtkVBox" id="vbox22">
+                      <object class="GtkVBox" id="vbox22">
                         <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkLabel" id="label1">
+                          <object class="GtkLabel" id="label1">
                             <property name="visible">True</property>
                             <property name="xalign">0</property>
                             <property name="label" translatable="yes">&lt;b&gt;Repeat Keys&lt;/b&gt;</property>
                             <property name="use_markup">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
+                            <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox19">
+                          <object class="GtkHBox" id="hbox19">
                             <property name="visible">True</property>
                             <child>
-                              <widget class="GtkLabel" id="label43">
+                              <object class="GtkLabel" id="label43">
                                 <property name="visible">True</property>
                                 <property name="label">    </property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox3">
+                              <object class="GtkVBox" id="vbox3">
                                 <property name="visible">True</property>
+                                <property name="orientation">vertical</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkCheckButton" id="repeat_toggle">
+                                  <object class="GtkCheckButton" id="repeat_toggle">
+                                    <property name="label" translatable="yes">Key presses _repeat when key is held down</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Key presses _repeat when key is held down</property>
+                                    <property name="receives_default">False</property>
                                     <property name="use_underline">True</property>
-                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
+                                    <property name="position">0</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkHBox" id="repeat_table">
+                                  <object class="GtkHBox" id="repeat_table">
                                     <property name="visible">True</property>
                                     <property name="spacing">12</property>
                                     <child>
-                                      <widget class="GtkVBox" id="vbox24">
+                                      <object class="GtkVBox" id="vbox24">
                                         <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkLabel" id="repeat_delay_label">
+                                          <object class="GtkLabel" id="repeat_delay_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">0</property>
                                             <property name="label" translatable="yes">_Delay:</property>
                                             <property name="use_markup">True</property>
                                             <property name="use_underline">True</property>
-                                            <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                            <property name="justify">center</property>
                                             <property name="mnemonic_widget">repeat_delay_scale</property>
-                                          </widget>
+                                          </object>
+                                          <packing>
+                                            <property name="position">0</property>
+                                          </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkLabel" id="repeat_speed_label">
+                                          <object class="GtkLabel" id="repeat_speed_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">0</property>
                                             <property name="label" translatable="yes">_Speed:</property>
                                             <property name="use_underline">True</property>
-                                            <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                            <property name="justify">center</property>
                                             <property name="mnemonic_widget">repeat_speed_scale</property>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
+                                        <property name="position">0</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkVBox" id="vbox25">
+                                      <object class="GtkVBox" id="vbox25">
                                         <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkLabel" id="delay_short_label">
+                                          <object class="GtkLabel" id="delay_short_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">1</property>
                                             <property name="xpad">10</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Short&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">True</property>
-                                          </widget>
+                                          </object>
+                                          <packing>
+                                            <property name="position">0</property>
+                                          </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkLabel" id="repeat_slow_label">
+                                          <object class="GtkLabel" id="repeat_slow_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">1</property>
                                             <property name="xpad">10</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Slow&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">True</property>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
@@ -146,357 +230,386 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkVBox" id="vbox26">
+                                      <object class="GtkVBox" id="vbox26">
                                         <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkHScale" id="repeat_delay_scale">
+                                          <object class="GtkHScale" id="repeat_delay_scale">
                                             <property name="visible">True</property>
                                             <property name="can_focus">True</property>
-                                            <property name="adjustment">500 100 2000 10 10 0</property>
+                                            <property name="adjustment">adjustment1</property>
                                             <property name="draw_value">False</property>
-                                          </widget>
+                                          </object>
+                                          <packing>
+                                            <property name="position">0</property>
+                                          </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkHScale" id="repeat_speed_scale">
+                                          <object class="GtkHScale" id="repeat_speed_scale">
                                             <property name="visible">True</property>
                                             <property name="can_focus">True</property>
-                                            <property name="adjustment">30 10 110 10 10 0</property>
+                                            <property name="adjustment">adjustment2</property>
                                             <property name="draw_value">False</property>
-                                            <accessibility>
-                                              <atkproperty name="AtkObject::accessible_description" translatable="yes">Repeat keys speed</atkproperty>
-                                            </accessibility>
-                                          </widget>
+                                            <child internal-child="accessible">
+                                              <object class="AtkObject" id="repeat_speed_scale-atkobject">
+                                                <property name="AtkObject::accessible-description" translatable="yes">Repeat keys speed</property>
+                                              </object>
+                                            </child>
+                                          </object>
                                           <packing>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="position">2</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkVBox" id="vbox27">
+                                      <object class="GtkVBox" id="vbox27">
                                         <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkLabel" id="delay_long_label">
+                                          <object class="GtkLabel" id="delay_long_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">0</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Long&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">True</property>
-                                          </widget>
+                                          </object>
+                                          <packing>
+                                            <property name="position">0</property>
+                                          </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkLabel" id="repeat_fast_label">
+                                          <object class="GtkLabel" id="repeat_fast_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">0</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Fast&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">True</property>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
                                         <property name="position">3</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
+                        <property name="position">0</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox23">
+                      <object class="GtkVBox" id="vbox23">
                         <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkLabel" id="label5">
+                          <object class="GtkLabel" id="label5">
                             <property name="visible">True</property>
                             <property name="xalign">0</property>
                             <property name="label" translatable="yes">&lt;b&gt;Cursor Blinking&lt;/b&gt;</property>
                             <property name="use_markup">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
+                            <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox20">
+                          <object class="GtkHBox" id="hbox20">
                             <property name="visible">True</property>
                             <child>
-                              <widget class="GtkLabel" id="label44">
+                              <object class="GtkLabel" id="label44">
                                 <property name="visible">True</property>
                                 <property name="label">    </property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="cursor_vbox">
+                              <object class="GtkVBox" id="cursor_vbox">
                                 <property name="visible">True</property>
+                                <property name="orientation">vertical</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkCheckButton" id="cursor_toggle">
+                                  <object class="GtkCheckButton" id="cursor_toggle">
+                                    <property name="label" translatable="yes">Cursor _blinks in text fields</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Cursor _blinks in text fields</property>
+                                    <property name="receives_default">False</property>
                                     <property name="use_underline">True</property>
-                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
+                                    <property name="position">0</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkHBox" id="cursor_hbox">
+                                  <object class="GtkHBox" id="cursor_hbox">
                                     <property name="visible">True</property>
                                     <property name="spacing">12</property>
                                     <child>
-                                      <widget class="GtkLabel" id="cursor_speed_label">
+                                      <object class="GtkLabel" id="cursor_speed_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">S_peed:</property>
                                         <property name="use_underline">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="justify">center</property>
                                         <property name="mnemonic_widget">cursor_blink_time_scale</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
+                                        <property name="position">0</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox25">
+                                      <object class="GtkHBox" id="hbox25">
                                         <property name="visible">True</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkLabel" id="blink_slow_label">
+                                          <object class="GtkLabel" id="blink_slow_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">1</property>
                                             <property name="xpad">10</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Slow&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">True</property>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="expand">False</property>
                                             <property name="fill">False</property>
+                                            <property name="position">0</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkHScale" id="cursor_blink_time_scale">
+                                          <object class="GtkHScale" id="cursor_blink_time_scale">
                                             <property name="visible">True</property>
                                             <property name="can_focus">True</property>
-                                            <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
-                                            <property name="adjustment">1000 100 2500 200 200 0</property>
+                                            <property name="update_policy">discontinuous</property>
+                                            <property name="adjustment">adjustment3</property>
                                             <property name="draw_value">False</property>
-                                            <accessibility>
-                                              <atkproperty name="AtkObject::accessible_description" translatable="yes">Cursor blinks speed</atkproperty>
-                                            </accessibility>
-                                          </widget>
+                                            <child internal-child="accessible">
+                                              <object class="AtkObject" id="cursor_blink_time_scale-atkobject">
+                                                <property name="AtkObject::accessible-description" translatable="yes">Cursor blinks speed</property>
+                                              </object>
+                                            </child>
+                                          </object>
                                           <packing>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkLabel" id="blink_fast_label">
+                                          <object class="GtkLabel" id="blink_fast_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">0</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Fast&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">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="position">1</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                 </child>
-                <child>
-                  <widget class="GtkLabel" id="label2">
+                <child type="tab">
+                  <object class="GtkLabel" id="label2">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">General</property>
-                    <property name="justify">GTK_JUSTIFY_CENTER</property>
-                  </widget>
+                    <property name="justify">center</property>
+                  </object>
                   <packing>
-                    <property name="type">tab</property>
                     <property name="tab_fill">False</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox33">
+                  <object class="GtkVBox" id="vbox33">
                     <property name="visible">True</property>
                     <property name="border_width">12</property>
+                    <property name="orientation">vertical</property>
                     <property name="spacing">18</property>
                     <child>
-                      <widget class="GtkHBox" id="xkb_models_box">
+                      <object class="GtkHBox" id="xkb_models_box">
                         <property name="visible">True</property>
                         <property name="spacing">12</property>
                         <child>
-                          <widget class="GtkLabel" id="label48">
+                          <object class="GtkLabel" id="label48">
                             <property name="visible">True</property>
                             <property name="xalign">0</property>
                             <property name="label" translatable="yes">Keyboard _model:</property>
                             <property name="use_underline">True</property>
                             <property name="mnemonic_widget">xkb_model_pick</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
+                            <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkButton" id="xkb_model_pick">
+                          <object class="GtkButton" id="xkb_model_pick">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
+                        <property name="position">0</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox34">
+                      <object class="GtkVBox" id="vbox34">
                         <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkCheckButton" id="chk_separate_group_per_window">
+                          <object class="GtkCheckButton" id="chk_separate_group_per_window">
+                            <property name="label" translatable="yes">Separate _layout for each window</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">Separate _layout for each window</property>
+                            <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
+                            <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox41">
+                          <object class="GtkVBox" id="vbox41">
                             <property name="visible">True</property>
+                            <property name="orientation">vertical</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkLabel" id="label52">
+                              <object class="GtkLabel" id="label52">
                                 <property name="visible">True</property>
                                 <property name="xalign">0</property>
                                 <property name="label" translatable="yes">_Selected layouts:</property>
                                 <property name="use_underline">True</property>
                                 <property name="mnemonic_widget">xkb_layouts_selected</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="xkb_layouts_panels">
+                              <object class="GtkHBox" id="xkb_layouts_panels">
                                 <property name="visible">True</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkScrolledWindow" id="scrolledwindow1">
+                                  <object class="GtkScrolledWindow" id="scrolledwindow1">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                                    <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                                    <property name="shadow_type">GTK_SHADOW_IN</property>
+                                    <property name="hscrollbar_policy">automatic</property>
+                                    <property name="vscrollbar_policy">automatic</property>
+                                    <property name="shadow_type">in</property>
                                     <child>
-                                      <widget class="GtkTreeView" id="xkb_layouts_selected">
+                                      <object class="GtkTreeView" id="xkb_layouts_selected">
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
-                                      </widget>
+                                      </object>
                                     </child>
-                                  </widget>
+                                  </object>
+                                  <packing>
+                                    <property name="position">0</property>
+                                  </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox2">
+                          <object class="GtkHBox" id="hbox2">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkHButtonBox" id="hbuttonbox2">
+                              <object class="GtkHButtonBox" id="hbuttonbox2">
                                 <property name="visible">True</property>
                                 <property name="spacing">6</property>
-                                <property name="layout_style">GTK_BUTTONBOX_START</property>
+                                <property name="layout_style">start</property>
                                 <child>
-                                  <widget class="GtkButton" id="xkb_layouts_remove">
+                                  <object class="GtkButton" id="xkb_layouts_remove">
+                                    <property name="label">gtk-remove</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label">gtk-remove</property>
+                                    <property name="receives_default">False</property>
                                     <property name="use_stock">True</property>
-                                    <property name="response_id">0</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -504,13 +617,13 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkButton" id="xkb_layouts_print">
+                                  <object class="GtkButton" id="xkb_layouts_print">
+                                    <property name="label">gtk-print</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label">gtk-print</property>
+                                    <property name="receives_default">False</property>
                                     <property name="use_stock">True</property>
-                                    <property name="response_id">0</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -518,574 +631,626 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkButton" id="xkb_layouts_add">
+                                  <object class="GtkButton" id="xkb_layouts_add">
+                                    <property name="label" translatable="yes">_Add...</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Add...</property>
+                                    <property name="receives_default">False</property>
                                     <property name="use_underline">True</property>
-                                    <property name="response_id">0</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">3</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkButton" id="xkb_reset_to_defaults">
+                              <object class="GtkButton" id="xkb_reset_to_defaults">
+                                <property name="label" translatable="yes">Reset to De_faults</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
-                                <property name="label" translatable="yes">Reset to De_faults</property>
+                                <property name="receives_default">False</property>
                                 <property name="use_underline">True</property>
-                                <property name="response_id">0</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
-                                <property name="pack_type">GTK_PACK_END</property>
+                                <property name="pack_type">end</property>
                                 <property name="position">4</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="position">2</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHButtonBox" id="hbuttonbox3">
+                      <object class="GtkHButtonBox" id="hbuttonbox3">
                         <property name="visible">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="layout_style">GTK_BUTTONBOX_END</property>
+                        <property name="layout_style">end</property>
                         <child>
-                          <widget class="GtkButton" id="xkb_layout_options">
+                          <object class="GtkButton" id="xkb_layout_options">
+                            <property name="label" translatable="yes">Layout _Options...</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Layout _Options...</property>
                             <property name="use_underline">True</property>
-                            <property name="response_id">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="position">2</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">1</property>
                   </packing>
                 </child>
-                <child>
-                  <widget class="GtkLabel" id="label46">
+                <child type="tab">
+                  <object class="GtkLabel" id="label46">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">Layouts</property>
-                  </widget>
+                  </object>
                   <packing>
-                    <property name="type">tab</property>
                     <property name="position">1</property>
                     <property name="tab_fill">False</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox77">
+                  <object class="GtkVBox" id="vbox77">
                     <property name="visible">True</property>
                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                     <property name="border_width">12</property>
+                    <property name="orientation">vertical</property>
                     <property name="spacing">18</property>
                     <child>
-                      <widget class="GtkVBox" id="vbox78">
+                      <object class="GtkVBox" id="vbox78">
                         <property name="visible">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkHBox" id="hbox39">
+                          <object class="GtkHBox" id="hbox39">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <child>
-                              <widget class="GtkVBox" id="vbox79">
+                              <object class="GtkVBox" id="vbox79">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                <property name="orientation">vertical</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkCheckButton" id="master_enable">
+                                  <object class="GtkCheckButton" id="master_enable">
+                                    <property name="label" translatable="yes">_Accessibility features can be toggled with keyboard shortcuts</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
                                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                                    <property name="label" translatable="yes">_Accessibility features can be toggled with keyboard shortcuts</property>
                                     <property name="use_underline">True</property>
-                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
+                                    <property name="position">0</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
+                        <property name="position">0</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox80">
+                      <object class="GtkVBox" id="vbox80">
                         <property name="visible">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkLabel" id="label73">
+                          <object class="GtkLabel" id="label73">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <property name="xalign">0</property>
                             <property name="label" translatable="yes">&lt;b&gt;Sticky Keys&lt;/b&gt;</property>
                             <property name="use_markup">True</property>
-                          </widget>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox40">
+                          <object class="GtkHBox" id="hbox40">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <child>
-                              <widget class="GtkLabel" id="label74">
+                              <object class="GtkLabel" id="label74">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                                 <property name="label">    </property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox81">
+                              <object class="GtkVBox" id="vbox81">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                <property name="orientation">vertical</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkCheckButton" id="stickykeys_enable">
+                                  <object class="GtkCheckButton" id="stickykeys_enable">
+                                    <property name="label" translatable="yes">_Simulate simultaneous keypresses</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
                                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                                    <property name="label" translatable="yes">_Simulate simultaneous keypresses</property>
                                     <property name="use_underline">True</property>
-                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
-                                  </widget>
+                                  </object>
+                                  <packing>
+                                    <property name="position">0</property>
+                                  </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkCheckButton" id="stickykeys_two_key_off">
+                                  <object class="GtkCheckButton" id="stickykeys_two_key_off">
+                                    <property name="label" translatable="yes">Disa_ble sticky keys if two keys are pressed together</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
                                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                                    <property name="label" translatable="yes">Disa_ble sticky keys if two keys are pressed together</property>
                                     <property name="use_underline">True</property>
-                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox82">
+                      <object class="GtkVBox" id="vbox82">
                         <property name="visible">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkLabel" id="label75">
+                          <object class="GtkLabel" id="label75">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <property name="xalign">0</property>
                             <property name="label" translatable="yes">&lt;b&gt;Slow Keys&lt;/b&gt;</property>
                             <property name="use_markup">True</property>
-                          </widget>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox41">
+                          <object class="GtkHBox" id="hbox41">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <child>
-                              <widget class="GtkLabel" id="label76">
+                              <object class="GtkLabel" id="label76">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                                 <property name="label">    </property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox83">
+                              <object class="GtkVBox" id="vbox83">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                <property name="orientation">vertical</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkCheckButton" id="slowkeys_enable">
+                                  <object class="GtkCheckButton" id="slowkeys_enable">
+                                    <property name="label" translatable="yes">_Only accept long keypresses</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
                                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                                    <property name="label" translatable="yes">_Only accept long keypresses</property>
                                     <property name="use_underline">True</property>
-                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
+                                    <property name="position">0</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkHBox" id="slowkeys_delay_box">
+                                  <object class="GtkHBox" id="slowkeys_delay_box">
                                     <property name="visible">True</property>
                                     <property name="spacing">12</property>
                                     <child>
-                                      <widget class="GtkLabel" id="slowkeys_delay_label">
+                                      <object class="GtkLabel" id="slowkeys_delay_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">_Delay:</property>
                                         <property name="use_underline">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="justify">center</property>
                                         <property name="mnemonic_widget">slowkeys_delay_slide</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
+                                        <property name="position">0</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox42">
+                                      <object class="GtkHBox" id="hbox42">
                                         <property name="visible">True</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkLabel" id="slowkeys_slow_label">
+                                          <object class="GtkLabel" id="slowkeys_slow_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">1</property>
                                             <property name="xpad">10</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Short&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">True</property>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="expand">False</property>
                                             <property name="fill">False</property>
+                                            <property name="position">0</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkHScale" id="slowkeys_delay_slide">
+                                          <object class="GtkHScale" id="slowkeys_delay_slide">
                                             <property name="visible">True</property>
                                             <property name="can_focus">True</property>
-                                            <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
-                                            <property name="adjustment">0.5 0 500 10 10 0</property>
+                                            <property name="update_policy">discontinuous</property>
+                                            <property name="adjustment">adjustment4</property>
                                             <property name="draw_value">False</property>
-                                            <accessibility>
-                                              <atkproperty name="AtkObject::accessible_description" translatable="yes">Cursor blinks speed</atkproperty>
-                                            </accessibility>
-                                          </widget>
+                                            <child internal-child="accessible">
+                                              <object class="AtkObject" id="slowkeys_delay_slide-atkobject">
+                                                <property name="AtkObject::accessible-description" translatable="yes">Cursor blinks speed</property>
+                                              </object>
+                                            </child>
+                                          </object>
                                           <packing>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkLabel" id="slowkeys_long_label">
+                                          <object class="GtkLabel" id="slowkeys_long_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">0</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Long&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">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="position">1</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="position">2</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox84">
+                      <object class="GtkVBox" id="vbox84">
                         <property name="visible">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkLabel" id="label77">
+                          <object class="GtkLabel" id="label77">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <property name="xalign">0</property>
                             <property name="label" translatable="yes">&lt;b&gt;Bounce Keys&lt;/b&gt;</property>
                             <property name="use_markup">True</property>
-                          </widget>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox43">
+                          <object class="GtkHBox" id="hbox43">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <child>
-                              <widget class="GtkLabel" id="label78">
+                              <object class="GtkLabel" id="label78">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                                 <property name="label">    </property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox85">
+                              <object class="GtkVBox" id="vbox85">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                <property name="orientation">vertical</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkCheckButton" id="bouncekeys_enable">
+                                  <object class="GtkCheckButton" id="bouncekeys_enable">
+                                    <property name="label" translatable="yes">_Ignore fast duplicate keypresses</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
                                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                                    <property name="label" translatable="yes">_Ignore fast duplicate keypresses</property>
                                     <property name="use_underline">True</property>
-                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
-                                  </widget>
+                                  </object>
+                                  <packing>
+                                    <property name="position">0</property>
+                                  </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkHBox" id="bouncekeys_delay_box">
+                                  <object class="GtkHBox" id="bouncekeys_delay_box">
                                     <property name="visible">True</property>
                                     <property name="spacing">12</property>
                                     <child>
-                                      <widget class="GtkLabel" id="bouncekeys_delay_label">
+                                      <object class="GtkLabel" id="bouncekeys_delay_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">D_elay:</property>
                                         <property name="use_underline">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="justify">center</property>
                                         <property name="mnemonic_widget">bouncekeys_delay_slide</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="expand">False</property>
                                         <property name="fill">False</property>
+                                        <property name="position">0</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox44">
+                                      <object class="GtkHBox" id="hbox44">
                                         <property name="visible">True</property>
                                         <property name="spacing">6</property>
                                         <child>
-                                          <widget class="GtkLabel" id="bouncekeys_short_label">
+                                          <object class="GtkLabel" id="bouncekeys_short_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">1</property>
                                             <property name="xpad">10</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Short&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">True</property>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="expand">False</property>
                                             <property name="fill">False</property>
+                                            <property name="position">0</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkHScale" id="bouncekeys_delay_slide">
+                                          <object class="GtkHScale" id="bouncekeys_delay_slide">
                                             <property name="visible">True</property>
                                             <property name="can_focus">True</property>
-                                            <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
-                                            <property name="adjustment">0.5 0 900 10 10 0</property>
+                                            <property name="update_policy">discontinuous</property>
+                                            <property name="adjustment">adjustment5</property>
                                             <property name="draw_value">False</property>
-                                            <accessibility>
-                                              <atkproperty name="AtkObject::accessible_description" translatable="yes">Cursor blinks speed</atkproperty>
-                                            </accessibility>
-                                          </widget>
+                                            <child internal-child="accessible">
+                                              <object class="AtkObject" id="bouncekeys_delay_slide-atkobject">
+                                                <property name="AtkObject::accessible-description" translatable="yes">Cursor blinks speed</property>
+                                              </object>
+                                            </child>
+                                          </object>
                                           <packing>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkLabel" id="bouncekeys_long_label">
+                                          <object class="GtkLabel" id="bouncekeys_long_label">
                                             <property name="visible">True</property>
                                             <property name="xalign">0</property>
                                             <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Long&lt;/i&gt;&lt;/small&gt;</property>
                                             <property name="use_markup">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="position">1</property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="position">3</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHButtonBox" id="hbuttonbox7">
+                      <object class="GtkHButtonBox" id="hbuttonbox7">
                         <property name="visible">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="layout_style">GTK_BUTTONBOX_END</property>
+                        <property name="layout_style">end</property>
                         <child>
-                          <widget class="GtkButton" id="notifications_button">
+                          <object class="GtkButton" id="notifications_button">
+                            <property name="label" translatable="yes">Audio _Feedback...</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Audio _Feedback...</property>
                             <property name="use_underline">True</property>
-                            <property name="response_id">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="position">4</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">2</property>
                   </packing>
                 </child>
-                <child>
-                  <widget class="GtkLabel" id="label6">
+                <child type="tab">
+                  <object class="GtkLabel" id="label6">
                     <property name="visible">True</property>
                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                     <property name="label" translatable="yes">Accessibility</property>
-                  </widget>
+                  </object>
                   <packing>
-                    <property name="type">tab</property>
                     <property name="position">2</property>
                     <property name="tab_fill">False</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox89">
+                  <object class="GtkVBox" id="vbox89">
                     <property name="visible">True</property>
                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                     <property name="border_width">12</property>
+                    <property name="orientation">vertical</property>
                     <child>
-                      <widget class="GtkVBox" id="vbox90">
+                      <object class="GtkVBox" id="vbox90">
                         <property name="visible">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkCheckButton" id="mousekeys_enable">
+                          <object class="GtkCheckButton" id="mousekeys_enable">
+                            <property name="label" translatable="yes">_Pointer can be controlled using the keypad</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">_Pointer can be controlled using the keypad</property>
                             <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox46">
+                          <object class="GtkHBox" id="hbox46">
                             <property name="visible">True</property>
                             <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                             <child>
-                              <widget class="GtkLabel" id="label80">
+                              <object class="GtkLabel" id="label80">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                                 <property name="label">    </property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox91">
+                              <object class="GtkVBox" id="vbox91">
                                 <property name="visible">True</property>
                                 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                <property name="orientation">vertical</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkTable" id="mousekeys_table">
+                                  <object class="GtkTable" id="mousekeys_table">
                                     <property name="visible">True</property>
                                     <property name="n_rows">3</property>
                                     <property name="n_columns">4</property>
                                     <property name="column_spacing">12</property>
                                     <property name="row_spacing">6</property>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_slow_label2">
+                                      <object class="GtkLabel" id="mousekeys_slow_label2">
                                         <property name="visible">True</property>
                                         <property name="xalign">1</property>
                                         <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Slow&lt;/i&gt;&lt;/small&gt;</property>
                                         <property name="use_markup">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                      </widget>
+                                        <property name="justify">center</property>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">1</property>
                                         <property name="right_attach">2</property>
@@ -1096,13 +1261,13 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_slow_label">
+                                      <object class="GtkLabel" id="mousekeys_slow_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">1</property>
                                         <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Slow&lt;/i&gt;&lt;/small&gt;</property>
                                         <property name="use_markup">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                      </widget>
+                                        <property name="justify">center</property>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">1</property>
                                         <property name="right_attach">2</property>
@@ -1111,14 +1276,14 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkHScale" id="mousekeys_accel_time_slide">
+                                      <object class="GtkHScale" id="mousekeys_accel_time_slide">
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
-                                        <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
-                                        <property name="adjustment">1800 0 3000 10 10 0</property>
+                                        <property name="update_policy">discontinuous</property>
+                                        <property name="adjustment">adjustment6</property>
                                         <property name="draw_value">False</property>
-                                        <property name="value_pos">GTK_POS_RIGHT</property>
-                                      </widget>
+                                        <property name="value_pos">right</property>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">2</property>
                                         <property name="right_attach">3</property>
@@ -1126,14 +1291,14 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkHScale" id="mousekeys_max_speed_slide">
+                                      <object class="GtkHScale" id="mousekeys_max_speed_slide">
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
-                                        <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
-                                        <property name="adjustment">300 10 1000 10 10 0</property>
+                                        <property name="update_policy">discontinuous</property>
+                                        <property name="adjustment">adjustment7</property>
                                         <property name="digits">0</property>
                                         <property name="draw_value">False</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">2</property>
                                         <property name="right_attach">3</property>
@@ -1143,13 +1308,13 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_fast_label2">
+                                      <object class="GtkLabel" id="mousekeys_fast_label2">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Fast&lt;/i&gt;&lt;/small&gt;</property>
                                         <property name="use_markup">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                      </widget>
+                                        <property name="justify">center</property>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">3</property>
                                         <property name="right_attach">4</property>
@@ -1160,13 +1325,13 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_fast_label">
+                                      <object class="GtkLabel" id="mousekeys_fast_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Fast&lt;/i&gt;&lt;/small&gt;</property>
                                         <property name="use_markup">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                      </widget>
+                                        <property name="justify">center</property>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">3</property>
                                         <property name="right_attach">4</property>
@@ -1175,14 +1340,14 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_speed_label">
+                                      <object class="GtkLabel" id="mousekeys_speed_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">_Speed:</property>
                                         <property name="use_underline">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="justify">center</property>
                                         <property name="mnemonic_widget">mousekeys_max_speed_slide</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="top_attach">1</property>
                                         <property name="bottom_attach">2</property>
@@ -1191,28 +1356,28 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_acceleration_label">
+                                      <object class="GtkLabel" id="mousekeys_acceleration_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">A_cceleration:</property>
                                         <property name="use_underline">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="justify">center</property>
                                         <property name="mnemonic_widget">mousekeys_accel_time_slide</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="x_options">GTK_FILL</property>
                                         <property name="y_options">GTK_FILL</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_delay_label">
+                                      <object class="GtkLabel" id="mousekeys_delay_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">_Delay:</property>
                                         <property name="use_underline">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="justify">center</property>
                                         <property name="mnemonic_widget">mousekeys_init_delay_slide</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="top_attach">2</property>
                                         <property name="bottom_attach">3</property>
@@ -1221,13 +1386,13 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_short_label">
+                                      <object class="GtkLabel" id="mousekeys_short_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">1</property>
                                         <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Short&lt;/i&gt;&lt;/small&gt;</property>
                                         <property name="use_markup">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                      </widget>
+                                        <property name="justify">center</property>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">1</property>
                                         <property name="right_attach">2</property>
@@ -1238,14 +1403,14 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkHScale" id="mousekeys_init_delay_slide">
+                                      <object class="GtkHScale" id="mousekeys_init_delay_slide">
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
-                                        <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
-                                        <property name="adjustment">300 10 2000 10 10 0</property>
+                                        <property name="update_policy">discontinuous</property>
+                                        <property name="adjustment">adjustment8</property>
                                         <property name="digits">0</property>
                                         <property name="draw_value">False</property>
-                                      </widget>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">2</property>
                                         <property name="right_attach">3</property>
@@ -1255,13 +1420,13 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="mousekeys_long_label">
+                                      <object class="GtkLabel" id="mousekeys_long_label">
                                         <property name="visible">True</property>
                                         <property name="xalign">0</property>
                                         <property name="label" translatable="yes">&lt;small&gt;&lt;i&gt;Long&lt;/i&gt;&lt;/small&gt;</property>
                                         <property name="use_markup">True</property>
-                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                      </widget>
+                                        <property name="justify">center</property>
+                                      </object>
                                       <packing>
                                         <property name="left_attach">3</property>
                                         <property name="right_attach">4</property>
@@ -1271,1265 +1436,359 @@
                                         <property name="y_options"></property>
                                       </packing>
                                     </child>
-                                  </widget>
+                                  </object>
+                                  <packing>
+                                    <property name="position">0</property>
+                                  </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
+                        <property name="position">0</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">3</property>
                   </packing>
                 </child>
-                <child>
-                  <widget class="GtkLabel" id="label8">
+                <child type="tab">
+                  <object class="GtkLabel" id="label8">
                     <property name="visible">True</property>
                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                     <property name="label" translatable="yes">Mouse Keys</property>
-                  </widget>
+                  </object>
                   <packing>
-                    <property name="type">tab</property>
                     <property name="position">3</property>
                     <property name="tab_fill">False</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox14">
+                  <object class="GtkVBox" id="vbox14">
                     <property name="visible">True</property>
+                    <property name="orientation">vertical</property>
                     <property name="spacing">12</property>
                     <child>
-                      <widget class="GtkVBox" id="vbox18">
+                      <object class="GtkVBox" id="vbox18">
                         <property name="visible">True</property>
                         <property name="border_width">12</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">18</property>
                         <child>
-                          <widget class="GtkVBox" id="vbox28">
+                          <object class="GtkVBox" id="vbox28">
                             <property name="visible">True</property>
+                            <property name="orientation">vertical</property>
                             <property name="spacing">6</property>
                             <child>
-                              <widget class="GtkCheckButton" id="break_enabled_toggle">
+                              <object class="GtkCheckButton" id="break_enabled_toggle">
+                                <property name="label" translatable="yes">_Lock screen to enforce typing break</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
-                                <property name="tooltip" translatable="yes">Lock screen after a certain duration to help prevent repetitive keyboard use injuries</property>
-                                <property name="label" translatable="yes">_Lock screen to enforce typing break</property>
+                                <property name="receives_default">False</property>
+                                <property name="tooltip_text" translatable="yes">Lock screen after a certain duration to help prevent repetitive keyboard use injuries</property>
                                 <property name="use_underline">True</property>
-                                <property name="response_id">0</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox26">
+                              <object class="GtkHBox" id="hbox26">
                                 <property name="visible">True</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label45">
+                                  <object class="GtkLabel" id="label45">
                                     <property name="visible">True</property>
                                     <property name="label">    </property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
+                                    <property name="position">0</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkVBox" id="break_details_table">
+                                  <object class="GtkVBox" id="break_details_table">
                                     <property name="visible">True</property>
+                                    <property name="orientation">vertical</property>
                                     <property name="spacing">6</property>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox27">
+                                      <object class="GtkHBox" id="hbox27">
                                         <property name="visible">True</property>
                                         <property name="spacing">12</property>
                                         <child>
-                                          <widget class="GtkVBox" id="vbox30">
+                                          <object class="GtkVBox" id="vbox30">
                                             <property name="visible">True</property>
+                                            <property name="orientation">vertical</property>
                                             <property name="spacing">6</property>
                                             <child>
-                                              <widget class="GtkLabel" id="label37">
+                                              <object class="GtkLabel" id="label37">
                                                 <property name="visible">True</property>
                                                 <property name="xalign">0</property>
                                                 <property name="label" translatable="yes">_Work interval lasts:</property>
                                                 <property name="use_underline">True</property>
                                                 <property name="mnemonic_widget">break_enabled_spin</property>
-                                              </widget>
+                                              </object>
+                                              <packing>
+                                                <property name="position">0</property>
+                                              </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkLabel" id="label30">
+                                              <object class="GtkLabel" id="label30">
                                                 <property name="visible">True</property>
                                                 <property name="xalign">0</property>
                                                 <property name="label" translatable="yes">_Break interval lasts:</property>
                                                 <property name="use_markup">True</property>
                                                 <property name="use_underline">True</property>
                                                 <property name="mnemonic_widget">break_interval_spin</property>
-                                              </widget>
+                                              </object>
                                               <packing>
                                                 <property name="position">1</property>
                                               </packing>
                                             </child>
-                                          </widget>
+                                          </object>
                                           <packing>
                                             <property name="expand">False</property>
                                             <property name="fill">False</property>
+                                            <property name="position">0</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox28">
+                                          <object class="GtkHBox" id="hbox28">
                                             <property name="visible">True</property>
                                             <property name="spacing">6</property>
                                             <child>
-                                              <widget class="GtkVBox" id="vbox31">
+                                              <object class="GtkVBox" id="vbox31">
                                                 <property name="visible">True</property>
+                                                <property name="orientation">vertical</property>
                                                 <property name="spacing">6</property>
                                                 <child>
-                                                  <widget class="GtkSpinButton" id="break_enabled_spin">
+                                                  <object class="GtkSpinButton" id="break_enabled_spin">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">True</property>
-                                                    <property name="tooltip" translatable="yes">Duration of work before forcing a break</property>
-                                                    <property name="adjustment">1 1 100000 1 10 0</property>
+                                                    <property name="tooltip_text" translatable="yes">Duration of work before forcing a break</property>
+                                                    <property name="adjustment">adjustment9</property>
                                                     <property name="climb_rate">1</property>
-                                                  </widget>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="position">0</property>
+                                                  </packing>
                                                 </child>
                                                 <child>
-                                                  <widget class="GtkSpinButton" id="break_interval_spin">
+                                                  <object class="GtkSpinButton" id="break_interval_spin">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">True</property>
-                                                    <property name="tooltip" translatable="yes">Duration of the break when typing is disallowed</property>
-                                                    <property name="adjustment">1 1 100000 1 10 0</property>
+                                                    <property name="tooltip_text" translatable="yes">Duration of the break when typing is disallowed</property>
+                                                    <property name="adjustment">adjustment10</property>
                                                     <property name="climb_rate">1</property>
-                                                  </widget>
+                                                  </object>
                                                   <packing>
                                                     <property name="position">1</property>
                                                   </packing>
                                                 </child>
-                                              </widget>
+                                              </object>
+                                              <packing>
+                                                <property name="position">0</property>
+                                              </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkVBox" id="vbox32">
+                                              <object class="GtkVBox" id="vbox32">
                                                 <property name="visible">True</property>
+                                                <property name="orientation">vertical</property>
                                                 <property name="spacing">6</property>
                                                 <child>
-                                                  <widget class="GtkLabel" id="label39">
+                                                  <object class="GtkLabel" id="label39">
                                                     <property name="visible">True</property>
                                                     <property name="xalign">0</property>
                                                     <property name="label" translatable="yes">minutes</property>
-                                                  </widget>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="position">0</property>
+                                                  </packing>
                                                 </child>
                                                 <child>
-                                                  <widget class="GtkLabel" id="label31">
+                                                  <object class="GtkLabel" id="label31">
                                                     <property name="visible">True</property>
                                                     <property name="xalign">0</property>
                                                     <property name="label" translatable="yes">minutes</property>
-                                                  </widget>
+                                                  </object>
                                                   <packing>
                                                     <property name="position">1</property>
                                                   </packing>
                                                 </child>
-                                              </widget>
+                                              </object>
                                               <packing>
                                                 <property name="position">1</property>
                                               </packing>
                                             </child>
-                                          </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="position">0</property>
+                                      </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkCheckButton" id="break_postponement_toggle">
+                                      <object class="GtkCheckButton" id="break_postponement_toggle">
+                                        <property name="label" translatable="yes">All_ow postponing of breaks</property>
                                         <property name="visible">True</property>
                                         <property name="can_focus">True</property>
-                                        <property name="tooltip" translatable="yes">Check if breaks are allowed to be postponed</property>
-                                        <property name="label" translatable="yes">All_ow postponing of breaks</property>
+                                        <property name="receives_default">False</property>
+                                        <property name="tooltip_text" translatable="yes">Check if breaks are allowed to be postponed</property>
                                         <property name="use_underline">True</property>
-                                        <property name="response_id">0</property>
                                         <property name="draw_indicator">True</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="position">1</property>
                                   </packing>
                                 </child>
-                              </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="position">0</property>
+                          </packing>
                         </child>
-                      </widget>
+                      </object>
+                      <packing>
+                        <property name="position">0</property>
+                      </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">4</property>
                   </packing>
                 </child>
-                <child>
-                  <widget class="GtkLabel" id="label20">
+                <child type="tab">
+                  <object class="GtkLabel" id="label20">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">Typing Break</property>
-                  </widget>
+                  </object>
                   <packing>
-                    <property name="type">tab</property>
                     <property name="position">4</property>
                     <property name="tab_fill">False</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
+              <packing>
+                <property name="position">0</property>
+              </packing>
             </child>
             <child>
-              <widget class="GtkHBox" id="hbox21">
+              <object class="GtkHBox" id="hbox21">
                 <property name="visible">True</property>
                 <property name="spacing">12</property>
                 <child>
-                  <widget class="GtkLabel" id="label42">
+                  <object class="GtkLabel" id="label42">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">_Type to test settings:</property>
                     <property name="use_underline">True</property>
                     <property name="mnemonic_widget">test_entry</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">False</property>
+                    <property name="position">0</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkEntry" id="test_entry">
+                  <object class="GtkEntry" id="test_entry">
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="max_length">256</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">1</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">1</property>
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="hbuttonbox1">
+          <object class="GtkHButtonBox" id="hbuttonbox1">
             <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
+            <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="helpbutton1">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
+              <object class="GtkButton" id="helpbutton1">
                 <property name="label">gtk-help</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">-11</property>
-              </widget>
-            </child>
-            <child>
-              <widget class="GtkButton" id="button4">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
-                <property name="has_focus">True</property>
                 <property name="can_default">True</property>
-                <property name="has_default">True</property>
-                <property name="label">gtk-close</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-7</property>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
-          </packing>
-        </child>
-      </widget>
-    </child>
-  </widget>
-  <widget class="GtkDialog" id="xkb_model_chooser">
-    <property name="visible">True</property>
-    <property name="border_width">5</property>
-    <property name="title" translatable="yes">Choose a Keyboard Model</property>
-    <property name="modal">True</property>
-    <property name="default_width">450</property>
-    <property name="default_height">400</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
-    <property name="has_separator">False</property>
-    <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox2">
-        <property name="visible">True</property>
-        <property name="spacing">2</property>
-        <child>
-          <widget class="GtkVBox" id="xkb_model_chooser_pane">
-            <property name="visible">True</property>
-            <property name="border_width">5</property>
-            <property name="spacing">6</property>
-            <child>
-              <widget class="GtkLabel" id="vendors_label">
-                <property name="visible">True</property>
-                <property name="xalign">0</property>
-                <property name="label" translatable="yes">_Vendors:</property>
-                <property name="use_underline">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
+                <property name="position">0</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkScrolledWindow" id="vendors_scrolledwindow">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                <property name="shadow_type">GTK_SHADOW_IN</property>
-                <child>
-                  <widget class="GtkTreeView" id="vendors_list">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="headers_visible">False</property>
-                  </widget>
-                </child>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkLabel" id="label7">
-                <property name="visible">True</property>
-                <property name="xalign">0</property>
-                <property name="label" translatable="yes">_Models:</property>
-                <property name="use_underline">True</property>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">False</property>
-                <property name="position">2</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkScrolledWindow" id="scrolledwindow3">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                <property name="shadow_type">GTK_SHADOW_IN</property>
-                <child>
-                  <widget class="GtkTreeView" id="models_list">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="headers_visible">False</property>
-                  </widget>
-                </child>
-              </widget>
-              <packing>
-                <property name="position">3</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="position">1</property>
-          </packing>
-        </child>
-        <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area1">
-            <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
-            <child>
-              <widget class="GtkButton" id="cancelbutton1">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">-6</property>
-              </widget>
-            </child>
-            <child>
-              <widget class="GtkButton" id="btnOk">
+              <object class="GtkButton" id="button4">
+                <property name="label">gtk-close</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
+                <property name="has_focus">True</property>
                 <property name="can_default">True</property>
-                <property name="label">gtk-ok</property>
+                <property name="has_default">True</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-5</property>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
-          </packing>
-        </child>
-      </widget>
-    </child>
-  </widget>
-  <widget class="GtkDialog" id="xkb_layout_chooser">
-    <property name="visible">True</property>
-    <property name="border_width">5</property>
-    <property name="title" translatable="yes">Choose a Layout</property>
-    <property name="default_width">670</property>
-    <property name="default_height">350</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
-    <property name="has_separator">False</property>
-    <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox3">
-        <property name="visible">True</property>
-        <property name="spacing">2</property>
-        <child>
-          <widget class="GtkVBox" id="vbox40">
-            <property name="visible">True</property>
-            <property name="border_width">5</property>
-            <property name="spacing">6</property>
-            <child>
-              <widget class="GtkNotebook" id="choosers_nb">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <child>
-                  <widget class="GtkAlignment" id="alignment1">
-                    <property name="visible">True</property>
-                    <property name="top_padding">3</property>
-                    <property name="bottom_padding">3</property>
-                    <property name="left_padding">3</property>
-                    <property name="right_padding">6</property>
-                    <child>
-                      <widget class="GtkTable" id="table1">
-                        <property name="visible">True</property>
-                        <property name="n_rows">2</property>
-                        <property name="n_columns">2</property>
-                        <property name="column_spacing">12</property>
-                        <property name="row_spacing">6</property>
-                        <child>
-                          <widget class="GtkComboBox" id="xkb_country_variants_available">
-                            <property name="visible">True</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkComboBox" id="xkb_countries_available">
-                            <property name="visible">True</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkLabel" id="label4">
-                            <property name="visible">True</property>
-                            <property name="xalign">0</property>
-                            <property name="label" translatable="yes">_Variants:</property>
-                            <property name="use_underline">True</property>
-                            <property name="mnemonic_widget">xkb_country_variants_available</property>
-                          </widget>
-                          <packing>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkLabel" id="label3">
-                            <property name="visible">True</property>
-                            <property name="xalign">0</property>
-                            <property name="label" translatable="yes">_Country:</property>
-                            <property name="use_underline">True</property>
-                            <property name="mnemonic_widget">xkb_countries_available</property>
-                          </widget>
-                          <packing>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                      </widget>
-                    </child>
-                  </widget>
-                </child>
-                <child>
-                  <widget class="GtkLabel" id="label22">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">By _country</property>
-                    <property name="use_underline">True</property>
-                  </widget>
-                  <packing>
-                    <property name="type">tab</property>
-                    <property name="tab_fill">False</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkAlignment" id="alignment2">
-                    <property name="visible">True</property>
-                    <property name="top_padding">3</property>
-                    <property name="bottom_padding">3</property>
-                    <property name="left_padding">3</property>
-                    <property name="right_padding">3</property>
-                    <child>
-                      <widget class="GtkTable" id="table3">
-                        <property name="visible">True</property>
-                        <property name="n_rows">2</property>
-                        <property name="n_columns">2</property>
-                        <property name="column_spacing">12</property>
-                        <property name="row_spacing">6</property>
-                        <child>
-                          <widget class="GtkComboBox" id="xkb_language_variants_available">
-                            <property name="visible">True</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkComboBox" id="xkb_languages_available">
-                            <property name="visible">True</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkLabel" id="label13">
-                            <property name="visible">True</property>
-                            <property name="xalign">0</property>
-                            <property name="label" translatable="yes">_Variants:</property>
-                            <property name="use_underline">True</property>
-                            <property name="mnemonic_widget">xkb_country_variants_available</property>
-                          </widget>
-                          <packing>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkLabel" id="label12">
-                            <property name="visible">True</property>
-                            <property name="xalign">0</property>
-                            <property name="label" translatable="yes">_Language:</property>
-                            <property name="use_underline">True</property>
-                            <property name="mnemonic_widget">xkb_countries_available</property>
-                          </widget>
-                          <packing>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                      </widget>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkLabel" id="label9">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">By _language</property>
-                    <property name="use_underline">True</property>
-                  </widget>
-                  <packing>
-                    <property name="type">tab</property>
-                    <property name="position">1</property>
-                    <property name="tab_fill">False</property>
-                  </packing>
-                </child>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkVBox" id="vboxPreview">
-                <property name="visible">True</property>
-                <property name="spacing">6</property>
-                <child>
-                  <widget class="GtkHBox" id="hbox1">
-                    <property name="visible">True</property>
-                    <property name="spacing">6</property>
-                    <child>
-                      <widget class="GtkLabel" id="label10">
-                        <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Preview:</property>
-                      </widget>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                      </packing>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkFrame" id="previewFrame">
-                    <property name="visible">True</property>
-                    <property name="label_xalign">0</property>
-                    <property name="shadow_type">GTK_SHADOW_IN</property>
-                    <child>
-                      <placeholder/>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="position">1</property>
-          </packing>
-        </child>
-        <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="hbtnBox">
-            <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
-            <child>
-              <widget class="GtkButton" id="btnPrint">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
-                <property name="label">gtk-print</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">1</property>
-              </widget>
-              <packing>
-                <property name="secondary">True</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkButton" id="cancelbutton2">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">-6</property>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkButton" id="btnOk1">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
-                <property name="label">gtk-add</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">-5</property>
-              </widget>
-              <packing>
-                <property name="position">2</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
-          </packing>
-        </child>
-      </widget>
-    </child>
-  </widget>
-  <widget class="GtkDialog" id="xkb_options_dialog">
-    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-    <property name="border_width">5</property>
-    <property name="title" translatable="yes">Keyboard Layout Options</property>
-    <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
-    <property name="default_width">550</property>
-    <property name="default_height">400</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
-    <property name="has_separator">False</property>
-    <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox4">
-        <property name="visible">True</property>
-        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-        <property name="spacing">2</property>
-        <child>
-          <widget class="GtkScrolledWindow" id="options_scroll">
-            <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="border_width">5</property>
-            <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-            <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-            <property name="shadow_type">GTK_SHADOW_OUT</property>
-            <child>
-              <widget class="GtkViewport" id="viewport1">
-                <property name="visible">True</property>
-                <property name="shadow_type">GTK_SHADOW_NONE</property>
-                <child>
-                  <widget class="GtkVBox" id="options_vbox">
-                    <property name="visible">True</property>
-                  </widget>
-                </child>
-              </widget>
-            </child>
-          </widget>
-          <packing>
-            <property name="position">1</property>
-          </packing>
-        </child>
-        <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area4">
-            <property name="visible">True</property>
-            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
-            <child>
-              <widget class="GtkButton" id="button3">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">True</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="label">gtk-help</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">-11</property>
-              </widget>
-            </child>
-            <child>
-              <widget class="GtkButton" id="button2">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">True</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="label">gtk-close</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">-7</property>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
-          </packing>
-        </child>
-      </widget>
-    </child>
-  </widget>
-  <widget class="GtkDialog" id="a11y_notifications_dialog">
-    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-    <property name="border_width">5</property>
-    <property name="title" translatable="yes">Keyboard Accessibility Audio Feedback</property>
-    <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
-    <property name="has_separator">False</property>
-    <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox7">
-        <property name="visible">True</property>
-        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-        <property name="spacing">2</property>
-        <child>
-          <widget class="GtkVBox" id="vbox46">
-            <property name="visible">True</property>
-            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-            <property name="border_width">5</property>
-            <property name="spacing">18</property>
-            <child>
-              <widget class="GtkVBox" id="vbox47">
-                <property name="visible">True</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="spacing">6</property>
-                <child>
-                  <widget class="GtkLabel" id="label33">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">&lt;b&gt;General&lt;/b&gt;</property>
-                    <property name="use_markup">True</property>
-                  </widget>
-                </child>
-                <child>
-                  <widget class="GtkHBox" id="hbox15">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <child>
-                      <widget class="GtkLabel" id="label40">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label">    </property>
-                      </widget>
-                      <packing>
-                        <property name="expand">False</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkVBox" id="vbox48">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="spacing">6</property>
-                        <child>
-                          <widget class="GtkCheckButton" id="feature_state_change_beep">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Beep when _accessibility features are turned on or off</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                        </child>
-                        <child>
-                          <widget class="GtkCheckButton" id="togglekeys_enable">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Beep when a _toggle key is pressed</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                          <packing>
-                            <property name="position">1</property>
-                          </packing>
-                        </child>
-                      </widget>
-                      <packing>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="position">0</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkVBox" id="system_bell_box">
-                <property name="visible">True</property>
-                <property name="orientation">vertical</property>
-                <property name="spacing">6</property>
-                <child>
-                  <widget class="GtkLabel" id="label500">
-                    <property name="visible">True</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">&lt;b&gt;Visual cues for sounds&lt;/b&gt;</property>
-                    <property name="use_markup">True</property>
-                  </widget>
-                  <packing>
-                    <property name="position">0</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkHBox" id="hbox2">
-                    <property name="visible">True</property>
-                    <child>
-                      <widget class="GtkLabel" id="label2">
-                        <property name="visible">True</property>
-                        <property name="label">    </property>
-                      </widget>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="position">0</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkVBox" id="vbox1">
-                        <property name="visible">True</property>
-                        <property name="orientation">vertical</property>
-                        <property name="spacing">6</property>
-                        <child>
-                          <widget class="GtkCheckButton" id="visual_bell_enable">
-                            <property name="label" translatable="yes">Show _visual feedback for the alert sound</property>
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="receives_default">False</property>
-                            <property name="use_underline">True</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                          <packing>
-                            <property name="position">0</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkHBox" id="hbox3">
-                            <property name="visible">True</property>
-                            <child>
-                              <widget class="GtkLabel" id="label3">
-                                <property name="visible">True</property>
-                                <property name="label">    </property>
-                              </widget>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="position">0</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <widget class="GtkVBox" id="vbox2">
-                                <property name="visible">True</property>
-                                <property name="orientation">vertical</property>
-                                <property name="spacing">6</property>
-                                <child>
-                                  <widget class="GtkRadioButton" id="visual_bell_titlebar">
-                                    <property name="label" translatable="yes">Flash _window titlebar</property>
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="receives_default">False</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="active">True</property>
-                                    <property name="draw_indicator">True</property>
-                                  </widget>
-                                  <packing>
-                                    <property name="position">0</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <widget class="GtkRadioButton" id="visual_bell_fullscreen">
-                                    <property name="label" translatable="yes">Flash entire _screen</property>
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="receives_default">False</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="active">True</property>
-                                    <property name="draw_indicator">True</property>
-                                    <property name="group">visual_bell_titlebar</property>
-                                  </widget>
-                                  <packing>
-                                    <property name="position">1</property>
-                                  </packing>
-                                </child>
-                              </widget>
-                              <packing>
-                                <property name="position">1</property>
-                              </packing>
-                            </child>
-                          </widget>
-                          <packing>
-                            <property name="position">1</property>
-                          </packing>
-                        </child>
-                      </widget>
-                      <packing>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-              </widget>
-              <packing>
-                <property name="position">1</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkVBox" id="stickykeys_notifications_box">
-                <property name="visible">True</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="spacing">6</property>
-                <child>
-                  <widget class="GtkLabel" id="label47">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">&lt;b&gt;Sticky Keys&lt;/b&gt;</property>
-                    <property name="use_markup">True</property>
-                  </widget>
-                </child>
-                <child>
-                  <widget class="GtkHBox" id="hbox17">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <child>
-                      <widget class="GtkLabel" id="label50">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label">    </property>
-                      </widget>
-                      <packing>
-                        <property name="expand">False</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkVBox" id="vbox50">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="spacing">6</property>
-                        <child>
-                          <widget class="GtkCheckButton" id="stickykeys_modifier_beep">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Beep when a _modifier key is pressed</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                        </child>
-                      </widget>
-                      <packing>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="position">1</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkVBox" id="slowkeys_notifications_box">
-                <property name="visible">True</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="spacing">6</property>
-                <child>
-                  <widget class="GtkLabel" id="label51">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">&lt;b&gt;Slow Keys&lt;/b&gt;</property>
-                    <property name="use_markup">True</property>
-                  </widget>
-                </child>
-                <child>
-                  <widget class="GtkHBox" id="hbox18">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <child>
-                      <widget class="GtkLabel" id="label53">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label">    </property>
-                      </widget>
-                      <packing>
-                        <property name="expand">False</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkVBox" id="vbox52">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="spacing">6</property>
-                        <child>
-                          <widget class="GtkCheckButton" id="slowkeys_beep_press">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Beep when a key is pr_essed</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                        </child>
-                        <child>
-                          <widget class="GtkCheckButton" id="slowkeys_beep_accept">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Beep when key is _accepted</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                          <packing>
-                            <property name="position">1</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkCheckButton" id="slowkeys_beep_reject">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Beep when key is _rejected</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                          <packing>
-                            <property name="position">2</property>
-                          </packing>
-                        </child>
-                      </widget>
-                      <packing>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="position">2</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkVBox" id="bouncekeys_notifications_box">
-                <property name="visible">True</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="spacing">6</property>
-                <child>
-                  <widget class="GtkLabel" id="label54">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">&lt;b&gt;Bounce Keys&lt;/b&gt;</property>
-                    <property name="use_markup">True</property>
-                  </widget>
-                </child>
-                <child>
-                  <widget class="GtkHBox" id="hbox22">
-                    <property name="visible">True</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <child>
-                      <widget class="GtkLabel" id="label55">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label">    </property>
-                      </widget>
-                      <packing>
-                        <property name="expand">False</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkVBox" id="vbox54">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="spacing">6</property>
-                        <child>
-                          <widget class="GtkCheckButton" id="bouncekeys_beep_reject">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="label" translatable="yes">Beep when a key is reje_cted</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                        </child>
-                      </widget>
-                      <packing>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="position">3</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="position">1</property>
-          </packing>
-        </child>
-        <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area7">
-            <property name="visible">True</property>
-            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
-            <child>
-              <widget class="GtkButton" id="button11">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">True</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="label">gtk-help</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">-11</property>
-              </widget>
-            </child>
-            <child>
-              <widget class="GtkButton" id="button12">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">True</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="label">gtk-close</property>
-                <property name="use_stock">True</property>
-                <property name="response_id">-7</property>
-              </widget>
-              <packing>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+    <action-widgets>
+      <action-widget response="-11">helpbutton1</action-widget>
+      <action-widget response="-7">button4</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/capplets/keyboard/gnome-keyboard-properties-layout-chooser.ui b/capplets/keyboard/gnome-keyboard-properties-layout-chooser.ui
new file mode 100644
index 0000000..2beb56d
--- /dev/null
+++ b/capplets/keyboard/gnome-keyboard-properties-layout-chooser.ui
@@ -0,0 +1,315 @@
+<?xml version="1.0"?>
+<interface>
+  <requires lib="gtk+" version="2.16"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="xkb_layout_chooser">
+    <property name="visible">True</property>
+    <property name="border_width">5</property>
+    <property name="title" translatable="yes">Choose a Layout</property>
+    <property name="default_width">670</property>
+    <property name="default_height">350</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox3">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">2</property>
+        <child>
+          <object class="GtkVBox" id="vbox40">
+            <property name="visible">True</property>
+            <property name="border_width">5</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkNotebook" id="choosers_nb">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment1">
+                    <property name="visible">True</property>
+                    <property name="top_padding">3</property>
+                    <property name="bottom_padding">3</property>
+                    <property name="left_padding">3</property>
+                    <property name="right_padding">6</property>
+                    <child>
+                      <object class="GtkTable" id="table1">
+                        <property name="visible">True</property>
+                        <property name="n_rows">2</property>
+                        <property name="n_columns">2</property>
+                        <property name="column_spacing">12</property>
+                        <property name="row_spacing">6</property>
+                        <child>
+                          <object class="GtkComboBox" id="xkb_country_variants_available">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="right_attach">2</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkComboBox" id="xkb_countries_available">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="right_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="label4">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">_Variants:</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">xkb_country_variants_available</property>
+                          </object>
+                          <packing>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="label3">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">_Country:</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">xkb_countries_available</property>
+                          </object>
+                          <packing>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="tab">
+                  <object class="GtkLabel" id="label22">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">By _country</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <packing>
+                    <property name="tab_fill">False</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkAlignment" id="alignment2">
+                    <property name="visible">True</property>
+                    <property name="top_padding">3</property>
+                    <property name="bottom_padding">3</property>
+                    <property name="left_padding">3</property>
+                    <property name="right_padding">3</property>
+                    <child>
+                      <object class="GtkTable" id="table3">
+                        <property name="visible">True</property>
+                        <property name="n_rows">2</property>
+                        <property name="n_columns">2</property>
+                        <property name="column_spacing">12</property>
+                        <property name="row_spacing">6</property>
+                        <child>
+                          <object class="GtkComboBox" id="xkb_language_variants_available">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="right_attach">2</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkComboBox" id="xkb_languages_available">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="right_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="label13">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">_Variants:</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">xkb_country_variants_available</property>
+                          </object>
+                          <packing>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="label12">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">_Language:</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">xkb_countries_available</property>
+                          </object>
+                          <packing>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+                <child type="tab">
+                  <object class="GtkLabel" id="label9">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">By _language</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                    <property name="tab_fill">False</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="vboxPreview">
+                <property name="visible">True</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">6</property>
+                <child>
+                  <object class="GtkHBox" id="hbox1">
+                    <property name="visible">True</property>
+                    <property name="spacing">6</property>
+                    <child>
+                      <object class="GtkLabel" id="label10">
+                        <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Preview:</property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="previewFrame">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">in</property>
+                    <child>
+                      <placeholder/>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="hbtnBox">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="btnPrint">
+                <property name="label">gtk-print</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+                <property name="secondary">True</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="cancelbutton2">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="btnOk1">
+                <property name="label">gtk-add</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="1">btnPrint</action-widget>
+      <action-widget response="-6">cancelbutton2</action-widget>
+      <action-widget response="-5">btnOk1</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/capplets/keyboard/gnome-keyboard-properties-model-chooser.ui b/capplets/keyboard/gnome-keyboard-properties-model-chooser.ui
new file mode 100644
index 0000000..3fe7d4e
--- /dev/null
+++ b/capplets/keyboard/gnome-keyboard-properties-model-chooser.ui
@@ -0,0 +1,142 @@
+<?xml version="1.0"?>
+<interface>
+  <requires lib="gtk+" version="2.16"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="xkb_model_chooser">
+    <property name="visible">True</property>
+    <property name="border_width">5</property>
+    <property name="title" translatable="yes">Choose a Keyboard Model</property>
+    <property name="modal">True</property>
+    <property name="default_width">450</property>
+    <property name="default_height">400</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox2">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">2</property>
+        <child>
+          <object class="GtkVBox" id="xkb_model_chooser_pane">
+            <property name="visible">True</property>
+            <property name="border_width">5</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkLabel" id="vendors_label">
+                <property name="visible">True</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">_Vendors:</property>
+                <property name="use_underline">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkScrolledWindow" id="vendors_scrolledwindow">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="hscrollbar_policy">automatic</property>
+                <property name="vscrollbar_policy">automatic</property>
+                <property name="shadow_type">in</property>
+                <child>
+                  <object class="GtkTreeView" id="vendors_list">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="headers_visible">False</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="label7">
+                <property name="visible">True</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">_Models:</property>
+                <property name="use_underline">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkScrolledWindow" id="scrolledwindow3">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="hscrollbar_policy">automatic</property>
+                <property name="vscrollbar_policy">automatic</property>
+                <property name="shadow_type">in</property>
+                <child>
+                  <object class="GtkTreeView" id="models_list">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="headers_visible">False</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="position">3</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="cancelbutton1">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="btnOk">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton1</action-widget>
+      <action-widget response="-5">btnOk</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/capplets/keyboard/gnome-keyboard-properties-options-dialog.ui b/capplets/keyboard/gnome-keyboard-properties-options-dialog.ui
new file mode 100644
index 0000000..f92c4cd
--- /dev/null
+++ b/capplets/keyboard/gnome-keyboard-properties-options-dialog.ui
@@ -0,0 +1,94 @@
+<?xml version="1.0"?>
+<interface>
+  <requires lib="gtk+" version="2.16"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="xkb_options_dialog">
+    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+    <property name="border_width">5</property>
+    <property name="title" translatable="yes">Keyboard Layout Options</property>
+    <property name="window_position">center-on-parent</property>
+    <property name="default_width">550</property>
+    <property name="default_height">400</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox4">
+        <property name="visible">True</property>
+        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">2</property>
+        <child>
+          <object class="GtkScrolledWindow" id="options_scroll">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="border_width">5</property>
+            <property name="hscrollbar_policy">automatic</property>
+            <property name="vscrollbar_policy">automatic</property>
+            <property name="shadow_type">out</property>
+            <child>
+              <object class="GtkViewport" id="viewport1">
+                <property name="visible">True</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkVBox" id="options_vbox">
+                    <property name="visible">True</property>
+                    <property name="orientation">vertical</property>
+                  </object>
+                </child>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area4">
+            <property name="visible">True</property>
+            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="button3">
+                <property name="label">gtk-help</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="button2">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-11">button3</action-widget>
+      <action-widget response="-7">button2</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/capplets/keyboard/gnome-keyboard-properties-xkb.c b/capplets/keyboard/gnome-keyboard-properties-xkb.c
index 65a048f..01387b1 100644
--- a/capplets/keyboard/gnome-keyboard-properties-xkb.c
+++ b/capplets/keyboard/gnome-keyboard-properties-xkb.c
@@ -28,7 +28,6 @@
 #include <string.h>
 #include <gdk/gdkx.h>
 #include <gconf/gconf-client.h>
-#include <glade/glade.h>
 #include <glib/gi18n.h>
 
 #include "capplet-util.h"
@@ -38,6 +37,9 @@
 
 #include <libgnomekbd/gkbd-desktop-config.h>
 
+#undef WID
+#define WID(s) GTK_WIDGET (gtk_builder_get_object (dialog, s))
+
 XklEngine *engine;
 XklConfigRegistry *config_registry;
 
@@ -87,7 +89,7 @@ set_model_text (GtkWidget * picker, GConfValue * value)
 
 static void
 model_key_changed (GConfClient * client,
-		   guint cnxn_id, GConfEntry * entry, GladeXML * dialog)
+		   guint cnxn_id, GConfEntry * entry, GtkBuilder * dialog)
 {
 	set_model_text (WID ("xkb_model_pick"),
 			gconf_entry_get_value (entry));
@@ -96,7 +98,7 @@ model_key_changed (GConfClient * client,
 }
 
 static void
-setup_model_entry (GladeXML * dialog)
+setup_model_entry (GtkBuilder * dialog)
 {
 	GConfValue *value;
 
@@ -113,7 +115,7 @@ setup_model_entry (GladeXML * dialog)
 }
 
 static void
-cleanup_xkb_tabs (GladeXML * dialog)
+cleanup_xkb_tabs (GtkBuilder * dialog)
 {
 	gkbd_desktop_config_term (&desktop_config);
 	gkbd_keyboard_config_term (&initial_config);
@@ -126,7 +128,7 @@ cleanup_xkb_tabs (GladeXML * dialog)
 }
 
 static void
-reset_to_defaults (GtkWidget * button, GladeXML * dialog)
+reset_to_defaults (GtkWidget * button, GtkBuilder * dialog)
 {
 	GkbdKeyboardConfig empty_kbd_config;
 
@@ -142,7 +144,7 @@ static void
 chk_separate_group_per_window_toggled (GConfPropertyEditor * peditor,
 				       const gchar * key,
 				       const GConfValue * value,
-				       GladeXML * dialog)
+				       GtkBuilder * dialog)
 {
 	xkb_layouts_enable_disable_default (dialog, value
 					    &&
@@ -150,7 +152,7 @@ chk_separate_group_per_window_toggled (GConfPropertyEditor * peditor,
 }
 
 void
-setup_xkb_tabs (GladeXML * dialog, GConfChangeSet * changeset)
+setup_xkb_tabs (GtkBuilder * dialog, GConfChangeSet * changeset)
 {
 	GObject *peditor;
 	xkb_gconf_client = gconf_client_get_default ();
@@ -215,7 +217,7 @@ setup_xkb_tabs (GladeXML * dialog, GConfChangeSet * changeset)
 }
 
 void
-enable_disable_restoring (GladeXML * dialog)
+enable_disable_restoring (GtkBuilder * dialog)
 {
 	GkbdKeyboardConfig gswic;
 	gboolean enable;
diff --git a/capplets/keyboard/gnome-keyboard-properties-xkb.h b/capplets/keyboard/gnome-keyboard-properties-xkb.h
index bdd5845..cf22447 100644
--- a/capplets/keyboard/gnome-keyboard-properties-xkb.h
+++ b/capplets/keyboard/gnome-keyboard-properties-xkb.h
@@ -29,28 +29,28 @@
 #include "libgnomekbd/gkbd-keyboard-config.h"
 
 G_BEGIN_DECLS
-#define CWID(s) glade_xml_get_widget (chooser_dialog, s)
+#define CWID(s) GTK_WIDGET (gtk_builder_get_object (chooser_dialog, s))
 extern XklEngine *engine;
 extern XklConfigRegistry *config_registry;
 extern GConfClient *xkb_gconf_client;
 extern GkbdKeyboardConfig initial_config;
 
-extern void setup_xkb_tabs (GladeXML * dialog, GConfChangeSet * changeset);
+extern void setup_xkb_tabs (GtkBuilder * dialog, GConfChangeSet * changeset);
 
-extern void xkb_layouts_fill_selected_tree (GladeXML * dialog);
+extern void xkb_layouts_fill_selected_tree (GtkBuilder * dialog);
 
-extern void xkb_layouts_register_buttons_handlers (GladeXML * dialog);
+extern void xkb_layouts_register_buttons_handlers (GtkBuilder * dialog);
 
-extern void xkb_layouts_register_gconf_listener (GladeXML * dialog);
+extern void xkb_layouts_register_gconf_listener (GtkBuilder * dialog);
 
-extern void xkb_options_register_gconf_listener (GladeXML * dialog);
+extern void xkb_options_register_gconf_listener (GtkBuilder * dialog);
 
-extern void xkb_layouts_prepare_selected_tree (GladeXML * dialog,
+extern void xkb_layouts_prepare_selected_tree (GtkBuilder * dialog,
 					       GConfChangeSet * changeset);
 
-extern void xkb_options_load_options (GladeXML * dialog);
+extern void xkb_options_load_options (GtkBuilder * dialog);
 
-extern void xkb_options_popup_dialog (GladeXML * dialog);
+extern void xkb_options_popup_dialog (GtkBuilder * dialog);
 
 extern void clear_xkb_elements_list (GSList * list);
 
@@ -58,15 +58,15 @@ extern char *xci_desc_to_utf8 (XklConfigItem * ci);
 
 extern gchar *xkb_layout_description_utf8 (const gchar * visible);
 
-extern void enable_disable_restoring (GladeXML * dialog);
+extern void enable_disable_restoring (GtkBuilder * dialog);
 
-extern void preview_toggled (GladeXML * dialog, GtkWidget * button);
+extern void preview_toggled (GtkBuilder * dialog, GtkWidget * button);
 
-extern void choose_model (GladeXML * dialog);
+extern void choose_model (GtkBuilder * dialog);
 
-extern void xkb_layout_choose (GladeXML * dialog);
+extern void xkb_layout_choose (GtkBuilder * dialog);
 
-extern void xkb_layouts_enable_disable_default (GladeXML * dialog,
+extern void xkb_layouts_enable_disable_default (GtkBuilder * dialog,
 						gboolean enable);
 
 extern GSList *xkb_layouts_get_selected_list (void);
@@ -83,15 +83,15 @@ extern GSList *xkb_options_get_selected_list (void);
                                GKBD_KEYBOARD_CONFIG_KEY_OPTIONS, \
                                GCONF_VALUE_STRING, (list), NULL)
 
-extern GtkWidget *xkb_layout_preview_create_widget (GladeXML *
+extern GtkWidget *xkb_layout_preview_create_widget (GtkBuilder *
 						    chooser_dialog);
 
-extern void xkb_layout_preview_update (GladeXML * chooser_dialog);
+extern void xkb_layout_preview_update (GtkBuilder * chooser_dialog);
 
 extern void xkb_layout_preview_set_drawing_layout (GtkWidget * kbdraw,
 						   const gchar * id);
 
-extern gchar *xkb_layout_chooser_get_selected_id (GladeXML *
+extern gchar *xkb_layout_chooser_get_selected_id (GtkBuilder *
 						  chooser_dialog);
 
 G_END_DECLS
diff --git a/capplets/keyboard/gnome-keyboard-properties-xkblt.c b/capplets/keyboard/gnome-keyboard-properties-xkblt.c
index a64efc9..4da5aaf 100644
--- a/capplets/keyboard/gnome-keyboard-properties-xkblt.c
+++ b/capplets/keyboard/gnome-keyboard-properties-xkblt.c
@@ -26,7 +26,6 @@
 #endif
 
 #include <gconf/gconf-client.h>
-#include <glade/glade.h>
 #include <glib/gi18n.h>
 
 #include <libgnomekbd/gkbd-desktop-config.h>
@@ -40,6 +39,9 @@
 #define SEL_LAYOUT_TREE_COL_DEFAULT 1
 #define SEL_LAYOUT_TREE_COL_ID 2
 
+#undef WID
+#define WID(s) GTK_WIDGET (gtk_builder_get_object (dialog, s))
+
 static int idx2select = -1;
 static int max_selected_layouts = -1;
 static int default_group = -1;
@@ -61,7 +63,7 @@ clear_xkb_elements_list (GSList * list)
 }
 
 static gint
-find_selected_layout_idx (GladeXML * dialog)
+find_selected_layout_idx (GtkBuilder * dialog)
 {
 	GtkTreeSelection *selection =
 	    gtk_tree_view_get_selection (GTK_TREE_VIEW
@@ -122,7 +124,7 @@ save_default_group (int default_group)
 
 static void
 def_group_in_ui_changed (GtkCellRendererToggle * cell_renderer,
-			 gchar * path, GladeXML * dialog)
+			 gchar * path, GtkBuilder * dialog)
 {
 	GtkTreePath *chpath = gtk_tree_path_new_from_string (path);
 	int new_default_group = -1;
@@ -141,7 +143,7 @@ def_group_in_ui_changed (GtkCellRendererToggle * cell_renderer,
 static void
 def_group_in_gconf_changed (GConfClient * client,
 			    guint cnxn_id,
-			    GConfEntry * entry, GladeXML * dialog)
+			    GConfEntry * entry, GtkBuilder * dialog)
 {
 	GConfValue *value = gconf_entry_get_value (entry);
 
@@ -177,7 +179,7 @@ def_group_in_gconf_changed (GConfClient * client,
 }
 
 static void
-xkb_layouts_enable_disable_buttons (GladeXML * dialog)
+xkb_layouts_enable_disable_buttons (GtkBuilder * dialog)
 {
 	GtkWidget *add_layout_btn = WID ("xkb_layouts_add");
 	GtkWidget *print_layout_btn = WID ("xkb_layouts_print");
@@ -225,7 +227,7 @@ xkb_layouts_create_default_layout_column ()
 }
 
 void
-xkb_layouts_enable_disable_default (GladeXML * dialog, gboolean enable)
+xkb_layouts_enable_disable_default (GtkBuilder * dialog, gboolean enable)
 {
 	GtkWidget *tree_view = WID ("xkb_layouts_selected");
 
@@ -252,7 +254,7 @@ xkb_layouts_enable_disable_default (GladeXML * dialog, gboolean enable)
 static void
 xkb_layouts_dnd_data_get (GtkWidget * widget, GdkDragContext * dc,
 			  GtkSelectionData * selection_data, guint info,
-			  guint t, GladeXML * dialog)
+			  guint t, GtkBuilder * dialog)
 {
 	/* Storing the value into selection -
 	 * while it is actually not used
@@ -267,7 +269,7 @@ static void
 xkb_layouts_dnd_data_received (GtkWidget * widget, GdkDragContext * dc,
 			       gint x, gint y,
 			       GtkSelectionData * selection_data,
-			       guint info, guint t, GladeXML * dialog)
+			       guint info, guint t, GtkBuilder * dialog)
 {
 	gint sidx = find_selected_layout_idx (dialog);
 	GtkWidget *tree_view = WID ("xkb_layouts_selected");
@@ -310,7 +312,7 @@ xkb_layouts_dnd_data_received (GtkWidget * widget, GdkDragContext * dc,
 }
 
 void
-xkb_layouts_prepare_selected_tree (GladeXML * dialog,
+xkb_layouts_prepare_selected_tree (GtkBuilder * dialog,
 				   GConfChangeSet * changeset)
 {
 	GtkListStore *list_store =
@@ -388,7 +390,7 @@ xkb_layout_description_utf8 (const gchar * visible)
 }
 
 void
-xkb_layouts_fill_selected_tree (GladeXML * dialog)
+xkb_layouts_fill_selected_tree (GtkBuilder * dialog)
 {
 	GConfEntry *gce;
 	GError *err = NULL;
@@ -452,13 +454,13 @@ xkb_layouts_fill_selected_tree (GladeXML * dialog)
 }
 
 static void
-add_selected_layout (GtkWidget * button, GladeXML * dialog)
+add_selected_layout (GtkWidget * button, GtkBuilder * dialog)
 {
 	xkb_layout_choose (dialog);
 }
 
 static void
-print_selected_layout (GtkWidget * button, GladeXML * dialog)
+print_selected_layout (GtkWidget * button, GtkBuilder * dialog)
 {
 	gint idx = find_selected_layout_idx (dialog);
 
@@ -484,7 +486,7 @@ print_selected_layout (GtkWidget * button, GladeXML * dialog)
 }
 
 static void
-remove_selected_layout (GtkWidget * button, GladeXML * dialog)
+remove_selected_layout (GtkWidget * button, GtkBuilder * dialog)
 {
 	gint idx = find_selected_layout_idx (dialog);
 
@@ -511,7 +513,7 @@ remove_selected_layout (GtkWidget * button, GladeXML * dialog)
 }
 
 void
-xkb_layouts_register_buttons_handlers (GladeXML * dialog)
+xkb_layouts_register_buttons_handlers (GtkBuilder * dialog)
 {
 	g_signal_connect (G_OBJECT (WID ("xkb_layouts_add")), "clicked",
 			  G_CALLBACK (add_selected_layout), dialog);
@@ -524,14 +526,14 @@ xkb_layouts_register_buttons_handlers (GladeXML * dialog)
 static void
 xkb_layouts_update_list (GConfClient * client,
 			 guint cnxn_id, GConfEntry * entry,
-			 GladeXML * dialog)
+			 GtkBuilder * dialog)
 {
 	xkb_layouts_fill_selected_tree (dialog);
 	enable_disable_restoring (dialog);
 }
 
 void
-xkb_layouts_register_gconf_listener (GladeXML * dialog)
+xkb_layouts_register_gconf_listener (GtkBuilder * dialog)
 {
 	gconf_client_notify_add (xkb_gconf_client,
 				 GKBD_KEYBOARD_CONFIG_KEY_LAYOUTS,
diff --git a/capplets/keyboard/gnome-keyboard-properties-xkbltadd.c b/capplets/keyboard/gnome-keyboard-properties-xkbltadd.c
index c97d55c..6cfe5f7 100644
--- a/capplets/keyboard/gnome-keyboard-properties-xkbltadd.c
+++ b/capplets/keyboard/gnome-keyboard-properties-xkbltadd.c
@@ -27,14 +27,15 @@
 
 #include <string.h>
 
-#include <glade/glade.h>
-
 #include <libgnomekbd/gkbd-keyboard-drawing.h>
 #include <libgnomekbd/gkbd-util.h>
 
 #include "capplet-util.h"
 #include "gnome-keyboard-properties-xkb.h"
 
+#undef WID
+#define WID(s) GTK_WIDGET (gtk_builder_get_object (dialog, s))
+
 #define GROUP_SWITCHERS_GROUP "grp"
 #define DEFAULT_GROUP_SWITCH "grp:alts_toggle"
 #define DEFAULT_VARIANT_ID "__default__"
@@ -62,7 +63,7 @@ static void
 
 
 
-xkb_layout_chooser_available_layouts_fill (GladeXML * chooser_dialog,
+xkb_layout_chooser_available_layouts_fill (GtkBuilder * chooser_dialog,
 					   const gchar cblid[],
 					   const gchar cbvid[],
 					   LayoutIterFunc layout_iterator,
@@ -78,7 +79,7 @@ static void
 
 
 
-xkb_layout_chooser_available_language_variants_fill (GladeXML *
+xkb_layout_chooser_available_language_variants_fill (GtkBuilder *
 						     chooser_dialog);
 
 static void
@@ -89,7 +90,7 @@ static void
 
 
 
-xkb_layout_chooser_available_country_variants_fill (GladeXML *
+xkb_layout_chooser_available_country_variants_fill (GtkBuilder *
 						    chooser_dialog);
 
 static void
@@ -178,7 +179,7 @@ xkb_layout_chooser_add_country_to_available_countries (XklConfigRegistry *
 }
 
 static void
-xkb_layout_chooser_enable_disable_buttons (GladeXML * chooser_dialog)
+xkb_layout_chooser_enable_disable_buttons (GtkBuilder * chooser_dialog)
 {
 	GtkWidget *cbv =
 	    CWID (gtk_notebook_get_current_page
@@ -198,14 +199,14 @@ xkb_layout_chooser_enable_disable_buttons (GladeXML * chooser_dialog)
 }
 
 static void
-xkb_layout_chooser_available_variant_changed (GladeXML * chooser_dialog)
+xkb_layout_chooser_available_variant_changed (GtkBuilder * chooser_dialog)
 {
 	xkb_layout_preview_update (chooser_dialog);
 	xkb_layout_chooser_enable_disable_buttons (chooser_dialog);
 }
 
 static void
-xkb_layout_chooser_available_language_changed (GladeXML * chooser_dialog)
+xkb_layout_chooser_available_language_changed (GtkBuilder * chooser_dialog)
 {
 	xkb_layout_chooser_available_language_variants_fill
 	    (chooser_dialog);
@@ -213,7 +214,7 @@ xkb_layout_chooser_available_language_changed (GladeXML * chooser_dialog)
 }
 
 static void
-xkb_layout_chooser_available_country_changed (GladeXML * chooser_dialog)
+xkb_layout_chooser_available_country_changed (GtkBuilder * chooser_dialog)
 {
 	xkb_layout_chooser_available_country_variants_fill
 	    (chooser_dialog);
@@ -222,13 +223,13 @@ xkb_layout_chooser_available_country_changed (GladeXML * chooser_dialog)
 
 static void
 xkb_layout_chooser_page_changed (GtkWidget * notebook, GtkWidget * page,
-				 gint page_num, GladeXML * chooser_dialog)
+				 gint page_num, GtkBuilder * chooser_dialog)
 {
 	xkb_layout_chooser_available_variant_changed (chooser_dialog);
 }
 
 static void
-xkb_layout_chooser_available_language_variants_fill (GladeXML *
+xkb_layout_chooser_available_language_variants_fill (GtkBuilder *
 						     chooser_dialog)
 {
 	GtkWidget *cbl = CWID ("xkb_languages_available");
@@ -271,7 +272,7 @@ xkb_layout_chooser_available_language_variants_fill (GladeXML *
 }
 
 static void
-xkb_layout_chooser_available_country_variants_fill (GladeXML *
+xkb_layout_chooser_available_country_variants_fill (GtkBuilder *
 						    chooser_dialog)
 {
 	GtkWidget *cbl = CWID ("xkb_countries_available");
@@ -313,7 +314,7 @@ xkb_layout_chooser_available_country_variants_fill (GladeXML *
 }
 
 static void
-xkb_layout_chooser_available_layouts_fill (GladeXML *
+xkb_layout_chooser_available_layouts_fill (GtkBuilder *
 					   chooser_dialog,
 					   const gchar cblid[],
 					   const gchar cbvid[],
@@ -410,7 +411,7 @@ xkl_layout_chooser_add_default_switcher_if_necessary (GSList *
 }
 
 static void
-xkb_layout_chooser_print (GladeXML * chooser_dialog)
+xkb_layout_chooser_print (GtkBuilder * chooser_dialog)
 {
 	GtkWidget *chooser = CWID ("xkb_layout_chooser");
 	GtkWidget *kbdraw =
@@ -428,7 +429,7 @@ xkb_layout_chooser_print (GladeXML * chooser_dialog)
 
 static void
 xkb_layout_chooser_response (GtkDialog * dialog,
-			     gint response, GladeXML * chooser_dialog)
+			     gint response, GtkBuilder * chooser_dialog)
 {
 	GdkRectangle rect;
 
@@ -465,12 +466,14 @@ xkb_layout_chooser_response (GtkDialog * dialog,
 }
 
 void
-xkb_layout_choose (GladeXML * dialog)
+xkb_layout_choose (GtkBuilder * dialog)
 {
-	GladeXML *chooser_dialog =
-	    glade_xml_new (GNOMECC_GLADE_DIR
-			   "/gnome-keyboard-properties.glade",
-			   "xkb_layout_chooser", NULL);
+	GtkBuilder *chooser_dialog;
+    
+    chooser_dialog = gtk_builder_new ();
+    gtk_builder_add_from_file (chooser_dialog, GNOMECC_UI_DIR
+                               "/gnome-keyboard-properties-layout-chooser.ui",
+                               NULL);
 	GtkWidget *chooser = CWID ("xkb_layout_chooser");
 	GtkWidget *lang_chooser = CWID ("xkb_languages_available");
 	GtkWidget *notebook = CWID ("choosers_nb");
@@ -566,7 +569,7 @@ xkb_layout_choose (GladeXML * dialog)
 }
 
 gchar *
-xkb_layout_chooser_get_selected_id (GladeXML * chooser_dialog)
+xkb_layout_chooser_get_selected_id (GtkBuilder * chooser_dialog)
 {
 	GtkWidget *cbv =
 	    CWID (gtk_notebook_get_current_page
diff --git a/capplets/keyboard/gnome-keyboard-properties-xkbmc.c b/capplets/keyboard/gnome-keyboard-properties-xkbmc.c
index bd9fc8e..094978a 100644
--- a/capplets/keyboard/gnome-keyboard-properties-xkbmc.c
+++ b/capplets/keyboard/gnome-keyboard-properties-xkbmc.c
@@ -27,19 +27,21 @@
 
 #include <gdk/gdkx.h>
 #include <gconf/gconf-client.h>
-#include <glade/glade.h>
 #include <glib/gi18n.h>
 
 #include "capplet-util.h"
 
 #include "gnome-keyboard-properties-xkb.h"
 
+#undef WID
+#define WID(s) GTK_WIDGET (gtk_builder_get_object (dialog, s))
+
 static gchar *current_model_name = NULL;
 static gchar *current_vendor_name = NULL;
 
-static void fill_models_list (GladeXML * chooser_dialog);
+static void fill_models_list (GtkBuilder * chooser_dialog);
 
-static gboolean fill_vendors_list (GladeXML * chooser_dialog);
+static gboolean fill_vendors_list (GtkBuilder * chooser_dialog);
 
 static GtkTreePath *
 gtk_list_store_find_entry (GtkListStore * list_store,
@@ -129,7 +131,7 @@ add_model_to_list (XklConfigRegistry * config_registry,
 
 static void
 xkb_model_chooser_change_vendor_sel (GtkTreeSelection * selection,
-				     GladeXML * chooser_dialog)
+				     GtkBuilder * chooser_dialog)
 {
 	GtkTreeIter iter;
 	GtkTreeModel *list_store = NULL;
@@ -151,7 +153,7 @@ xkb_model_chooser_change_vendor_sel (GtkTreeSelection * selection,
 
 static void
 xkb_model_chooser_change_model_sel (GtkTreeSelection * selection,
-				    GladeXML * chooser_dialog)
+				    GtkBuilder * chooser_dialog)
 {
 	gboolean anysel =
 	    gtk_tree_selection_get_selected (selection, NULL, NULL);
@@ -161,7 +163,7 @@ xkb_model_chooser_change_model_sel (GtkTreeSelection * selection,
 }
 
 static void
-prepare_vendors_list (GladeXML * chooser_dialog)
+prepare_vendors_list (GtkBuilder * chooser_dialog)
 {
 	GtkWidget *vendors_list = CWID ("vendors_list");
 	GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
@@ -176,7 +178,7 @@ prepare_vendors_list (GladeXML * chooser_dialog)
 }
 
 static gboolean
-fill_vendors_list (GladeXML * chooser_dialog)
+fill_vendors_list (GtkBuilder * chooser_dialog)
 {
 	GtkWidget *vendors_list = CWID ("vendors_list");
 	GtkListStore *list_store = gtk_list_store_new (1, G_TYPE_STRING);
@@ -227,7 +229,7 @@ fill_vendors_list (GladeXML * chooser_dialog)
 }
 
 static void
-prepare_models_list (GladeXML * chooser_dialog)
+prepare_models_list (GtkBuilder * chooser_dialog)
 {
 	GtkWidget *models_list = CWID ("models_list");
 	GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
@@ -242,7 +244,7 @@ prepare_models_list (GladeXML * chooser_dialog)
 }
 
 static void
-fill_models_list (GladeXML * chooser_dialog)
+fill_models_list (GtkBuilder * chooser_dialog)
 {
 	GtkWidget *models_list = CWID ("models_list");
 	GtkTreeIter iter;
@@ -286,7 +288,7 @@ fill_models_list (GladeXML * chooser_dialog)
 
 static void
 xkb_model_chooser_response (GtkDialog * dialog,
-			    gint response, GladeXML * chooser_dialog)
+			    gint response, GtkBuilder * chooser_dialog)
 {
 	if (response == GTK_RESPONSE_OK) {
 		GtkWidget *models_list = CWID ("models_list");
@@ -310,13 +312,16 @@ xkb_model_chooser_response (GtkDialog * dialog,
 }
 
 void
-choose_model (GladeXML * dialog)
+choose_model (GtkBuilder * dialog)
 {
-	GladeXML *chooser_dialog =
-	    glade_xml_new (GNOMECC_GLADE_DIR
-			   "/gnome-keyboard-properties.glade",
-			   "xkb_model_chooser", NULL);
-	GtkWidget *chooser = CWID ("xkb_model_chooser");
+	GtkBuilder *chooser_dialog;
+    GtkWidget *chooser;
+    
+    chooser_dialog = gtk_builder_new ();
+    gtk_builder_add_from_file (chooser_dialog, GNOMECC_UI_DIR
+                               "/gnome-keyboard-properties-model-chooser.ui",
+                               NULL);
+	chooser = CWID ("xkb_model_chooser");
 	gtk_window_set_transient_for (GTK_WINDOW (chooser),
 				      GTK_WINDOW (WID
 						  ("keyboard_dialog")));
diff --git a/capplets/keyboard/gnome-keyboard-properties-xkbot.c b/capplets/keyboard/gnome-keyboard-properties-xkbot.c
index f1cf088..d0d3e58 100644
--- a/capplets/keyboard/gnome-keyboard-properties-xkbot.c
+++ b/capplets/keyboard/gnome-keyboard-properties-xkbot.c
@@ -29,13 +29,15 @@
 #include <glib/gi18n.h>
 #include <string.h>
 #include <gconf/gconf-client.h>
-#include <glade/glade.h>
 
 #include "capplet-util.h"
 
 #include "gnome-keyboard-properties-xkb.h"
 
-static GladeXML *chooser_dialog = NULL;
+#undef WID
+#define WID(s) GTK_WIDGET (gtk_builder_get_object (dialog, s))
+
+static GtkBuilder *chooser_dialog = NULL;
 static const char *current1st_level_id = NULL;
 static GSList *option_checks_list = NULL;
 static GtkWidget *current_none_radio = NULL;
@@ -211,7 +213,7 @@ option_toggled_cb (GtkWidget * checkbutton, gpointer data)
    the top of this file. */
 static void
 xkb_options_add_option (XklConfigRegistry * config_registry,
-			XklConfigItem * config_item, GladeXML * dialog)
+			XklConfigItem * config_item, GtkBuilder * dialog)
 {
 	GtkWidget *option_check;
 	gchar *utf_option_name = xci_desc_to_utf8 (config_item);
@@ -302,7 +304,7 @@ xkb_option_checks_compare (GtkWidget * chk1, GtkWidget * chk2)
    add widgets for all the options in the group. */
 static void
 xkb_options_add_group (XklConfigRegistry * config_registry,
-		       XklConfigItem * config_item, GladeXML * dialog)
+		       XklConfigItem * config_item, GtkBuilder * dialog)
 {
 	GtkWidget *align, *vbox, *option_check;
 	gboolean allow_multiple_selection =
@@ -379,7 +381,7 @@ xkb_options_expanders_compare (GtkWidget * expander1,
 
 /* Create widgets to represent the options made available by the backend */
 void
-xkb_options_load_options (GladeXML * dialog)
+xkb_options_load_options (GtkBuilder * dialog)
 {
 	GtkWidget *opts_vbox = WID ("options_vbox");
 	GSList *expanders_list;
@@ -439,14 +441,14 @@ chooser_response_cb (GtkDialog * dialog, gint response, gpointer data)
 
 /* Create popup dialog */
 void
-xkb_options_popup_dialog (GladeXML * dialog)
+xkb_options_popup_dialog (GtkBuilder * dialog)
 {
 	GtkWidget *chooser;
 
-	chooser_dialog =
-	    glade_xml_new (GNOMECC_GLADE_DIR
-			   "/gnome-keyboard-properties.glade",
-			   "xkb_options_dialog", NULL);
+	chooser_dialog = gtk_builder_new ();
+    gtk_builder_add_from_file (chooser_dialog, GNOMECC_UI_DIR
+                               "/gnome-keyboard-properties-options-dialog.ui",
+                               NULL);
 
 	chooser = CWID ("xkb_options_dialog");
 	gtk_window_set_transient_for (GTK_WINDOW (chooser),
@@ -476,7 +478,7 @@ xkb_options_update_option_counters (XklConfigRegistry * config_registry,
 /* Respond to a change in the xkb gconf settings */
 static void
 xkb_options_update (GConfClient * client,
-		    guint cnxn_id, GConfEntry * entry, GladeXML * dialog)
+		    guint cnxn_id, GConfEntry * entry, GtkBuilder * dialog)
 {
 	/* Updating options is handled by gconf notifies for each widget
 	   This is here to avoid calling it N_OPTIONS times for each gconf
@@ -507,7 +509,7 @@ xkb_options_update (GConfClient * client,
 }
 
 void
-xkb_options_register_gconf_listener (GladeXML * dialog)
+xkb_options_register_gconf_listener (GtkBuilder * dialog)
 {
 	gconf_client_notify_add (xkb_gconf_client,
 				 GKBD_KEYBOARD_CONFIG_KEY_OPTIONS,
diff --git a/capplets/keyboard/gnome-keyboard-properties-xkbpv.c b/capplets/keyboard/gnome-keyboard-properties-xkbpv.c
index 4151a52..225d8f5 100644
--- a/capplets/keyboard/gnome-keyboard-properties-xkbpv.c
+++ b/capplets/keyboard/gnome-keyboard-properties-xkbpv.c
@@ -25,8 +25,6 @@
 #  include <config.h>
 #endif
 
-#include <glade/glade.h>
-
 #include <libgnomekbd/gkbd-keyboard-drawing.h>
 
 #include "capplet-util.h"
@@ -57,7 +55,7 @@ static GkbdKeyboardDrawingGroupLevel *pGroupsLevels[] = {
 };
 
 GtkWidget *
-xkb_layout_preview_create_widget (GladeXML * chooserDialog)
+xkb_layout_preview_create_widget (GtkBuilder * chooserDialog)
 {
 	GtkWidget *kbdraw = gkbd_keyboard_drawing_new ();
 
@@ -67,7 +65,7 @@ xkb_layout_preview_create_widget (GladeXML * chooserDialog)
 }
 
 void
-xkb_layout_preview_update (GladeXML * chooser_dialog)
+xkb_layout_preview_update (GtkBuilder * chooser_dialog)
 {
 #ifdef HAVE_X11_EXTENSIONS_XKB_H
 	GtkWidget *chooser = CWID ("xkb_layout_chooser");
diff --git a/capplets/keyboard/gnome-keyboard-properties.c b/capplets/keyboard/gnome-keyboard-properties.c
index f468e16..3aadf2e 100644
--- a/capplets/keyboard/gnome-keyboard-properties.c
+++ b/capplets/keyboard/gnome-keyboard-properties.c
@@ -29,7 +29,6 @@
 #endif
 
 #include <gconf/gconf-client.h>
-#include <glade/glade.h>
 
 #include "capplet-util.h"
 #include "gconf-property-editor.h"
@@ -39,22 +38,25 @@
 #include "gnome-keyboard-properties-a11y.h"
 #include "gnome-keyboard-properties-xkb.h"
 
+#undef WID
+#define WID(s) GTK_WIDGET (gtk_builder_get_object (dialog, s))
+
 enum {
 	RESPONSE_APPLY = 1,
 	RESPONSE_CLOSE
 };
 
-static GladeXML *
+static GtkBuilder *
 create_dialog (void)
 {
-	GladeXML *dialog;
+	GtkBuilder *dialog;
 	GtkSizeGroup *size_group;
 	GtkWidget *image;
 
-	dialog =
-	    glade_xml_new (GNOMECC_GLADE_DIR
-			   "/gnome-keyboard-properties.glade",
-			   "keyboard_dialog", NULL);
+	dialog = gtk_builder_new ();
+    gtk_builder_add_from_file (dialog, GNOMECC_UI_DIR
+                               "/gnome-keyboard-properties-dialog.ui",
+                               NULL);
 
 	size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
 	gtk_size_group_add_widget (size_group, WID ("repeat_slow_label"));
@@ -120,7 +122,7 @@ dialog_response (GtkWidget * widget,
 }
 
 static void
-setup_dialog (GladeXML * dialog, GConfChangeSet * changeset)
+setup_dialog (GtkBuilder * dialog, GConfChangeSet * changeset)
 {
 	GObject *peditor;
 	gchar *monitor;
@@ -193,7 +195,7 @@ main (int argc, char **argv)
 {
 	GConfClient *client;
 	GConfChangeSet *changeset;
-	GladeXML *dialog;
+	GtkBuilder *dialog;
 	GOptionContext *context;
 
 	static gboolean apply_only = FALSE;
diff --git a/po/POTFILES.in b/po/POTFILES.in
index a4f6855..1ea18c0 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -49,7 +49,11 @@ capplets/keybindings/gnome-keybinding-properties.c
 [type: gettext/glade]capplets/keybindings/gnome-keybinding-properties.ui
 capplets/keybindings/keybinding.desktop.in.in
 capplets/keyboard/gnome-keyboard-properties.c
-capplets/keyboard/gnome-keyboard-properties.glade
+capplets/keyboard/gnome-keyboard-properties-a11y-notifications.ui
+capplets/keyboard/gnome-keyboard-properties-dialog.ui
+capplets/keyboard/gnome-keyboard-properties-layout-chooser.ui
+capplets/keyboard/gnome-keyboard-properties-model-chooser.ui
+capplets/keyboard/gnome-keyboard-properties-options-dialog.ui
 capplets/keyboard/gnome-keyboard-properties-xkb.c
 capplets/keyboard/gnome-keyboard-properties-xkbltadd.c
 capplets/keyboard/gnome-keyboard-properties-xkblt.c



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]