9a98d1ae59d3a77f9150203c1092fdead5698a28
diff --git a/gnome-panel/Makefile.am b/gnome-panel/Makefile.am
index 74bb314..ce4b326 100644
--- a/gnome-panel/Makefile.am
+++ b/gnome-panel/Makefile.am
@@ -11,7 +11,7 @@ INCLUDES =							\
 	-I$(top_builddir)/gnome-panel/libpanel-util		\
 	-DPANEL_DEBUG						\
 	-DGNOMELOCALEDIR=\""$(prefix)/$(DATADIRNAME)/locale"\"	\
-	-DGLADEDIR=\""$(gladedir)"\"				\
+	-DBUILDERDIR=\""$(builderdir)"\"				\
 	-DICONDIR=\""$(datadir)/gnome-panel/pixmaps"\"		\
 	-DGMENU_I_KNOW_THIS_IS_UNSTABLE				\
 	$(DISABLE_DEPRECATED_CFLAGS)				\
@@ -174,13 +174,13 @@ gnome_desktop_item_edit_LDADD = 	\
 	$(PANEL_LIBS)			\
 	$(X_LIBS)
 
-gladedir = $(datadir)/gnome-panel/glade
-glade_DATA =					\
+builderdir = $(datadir)/gnome-panel
+builder_DATA =					\
 	panel-properties-dialog.glade		\
-	panel-run-dialog.glade
+	panel-run-dialog.ui
 
 EXTRA_DIST =					\
-	$(glade_DATA)				\
+	$(builder_DATA)				\
 	nothing.cP				\
 	nothing.h				\
 	$(schemas_in_files)			\
diff --git a/gnome-panel/panel-properties-dialog.c b/gnome-panel/panel-properties-dialog.c
index 5efd7b8..b2a2659 100644
--- a/gnome-panel/panel-properties-dialog.c
+++ b/gnome-panel/panel-properties-dialog.c
@@ -1049,13 +1049,13 @@ panel_properties_dialog_present (PanelToplevel *toplevel)
 		return;
 	}
 
-	gui = glade_xml_new (GLADEDIR "/panel-properties-dialog.glade",
+	gui = glade_xml_new (BUILDERDIR "/panel-properties-dialog.glade",
 			     "panel_properties_dialog",
 			     NULL);
 	if (gui == NULL) {
 		char *secondary;
 		secondary = g_strdup_printf (_("Unable to load file '%s'."),
-					     GLADEDIR"/panel-properties-dialog.glade");
+					     BUILDERDIR "/panel-properties-dialog.glade");
 		panel_error_dialog (GTK_WINDOW (toplevel),
 				    gtk_window_get_screen (GTK_WINDOW (toplevel)),
 				    "cannot_display_properties_dialog", TRUE,
diff --git a/gnome-panel/panel-run-dialog.c b/gnome-panel/panel-run-dialog.c
index 6f0ec0b..1e53e92 100644
--- a/gnome-panel/panel-run-dialog.c
+++ b/gnome-panel/panel-run-dialog.c
@@ -40,7 +40,6 @@
 #include <glib/gi18n.h>
 #include <gio/gio.h>
 #include <gdk/gdkkeysyms.h>
-#include <glade/glade-xml.h>
 #include <gconf/gconf-client.h>
 #include <gmenu-tree.h>
 
@@ -1121,14 +1120,18 @@ program_list_selection_activated (GtkTreeView       *view,
 
 static void
 panel_run_dialog_setup_program_list (PanelRunDialog *dialog,
-				     GladeXML       *gui)
+				     GtkBuilder	    *builder)
 {
 	GtkTreeSelection *selection;
 	
-	dialog->program_list = glade_xml_get_widget (gui, "program_list");
-	dialog->program_list_box = glade_xml_get_widget (gui, "program_list_box");
-	dialog->program_label = glade_xml_get_widget (gui, "program_label");
-	dialog->main_box = glade_xml_get_widget (gui, "main_box");
+	dialog->program_list = GTK_WIDGET (gtk_builder_get_object
+						(builder, "program_list"));
+	dialog->program_list_box = GTK_WIDGET (gtk_builder_get_object
+						(builder, "program_list_box"));
+	dialog->program_label = GTK_WIDGET (gtk_builder_get_object
+						(builder, "program_label"));
+	dialog->main_box = GTK_WIDGET (gtk_builder_get_object
+						(builder, "main_box"));
 	
 	/* Ref the box so it doesn't get destroyed when it is
 	 * removed from the visible area of the dialog box.
@@ -1196,12 +1199,13 @@ list_expander_toggled (GtkExpander    *expander,
 
 static void
 panel_run_dialog_setup_list_expander (PanelRunDialog *dialog,
-				      GladeXML       *gui)
+				      GtkBuilder     *builder)
 {
 	GConfClient *client;
 	const char *key;
 	
-	dialog->list_expander = glade_xml_get_widget (gui, "list_expander");
+	dialog->list_expander = GTK_WIDGET (gtk_builder_get_object
+						(builder, "list_expander"));
 
 	if (panel_profile_get_enable_program_list ()) {
 		gtk_expander_set_expanded (GTK_EXPANDER (dialog->list_expander),
@@ -1272,9 +1276,10 @@ file_button_clicked (GtkButton      *button,
 
 static void
 panel_run_dialog_setup_file_button (PanelRunDialog *dialog,
-				    GladeXML       *gui)
+				    GtkBuilder     *builder)
 {
-	dialog->file_button = glade_xml_get_widget (gui, "file_button");
+	dialog->file_button = GTK_WIDGET (gtk_builder_get_object
+						(builder, "file_button"));
 		
         g_signal_connect (dialog->file_button, "clicked",
 			  G_CALLBACK (file_button_clicked),
@@ -1729,13 +1734,14 @@ entry_drag_data_received (GtkEditable      *entry,
 
 static void
 panel_run_dialog_setup_entry (PanelRunDialog *dialog,
-			      GladeXML       *gui)
+			      GtkBuilder     *builder)
 {
 	GdkScreen             *screen;
 	int                    width_request;
 	GtkWidget             *entry;
 	
-	dialog->combobox = glade_xml_get_widget (gui, "comboboxentry");
+	dialog->combobox = GTK_WIDGET (gtk_builder_get_object
+						(builder, "comboboxentry"));
 
 	entry = gtk_bin_get_child (GTK_BIN (dialog->combobox));
 	gtk_entry_set_activates_default (GTK_ENTRY (entry), TRUE);
@@ -1898,9 +1904,10 @@ panel_run_dialog_screen_changed (GtkWidget      *widget,
 
 static void
 panel_run_dialog_setup_pixmap (PanelRunDialog *dialog,
-			       GladeXML       *gui)
+			       GtkBuilder     *builder)
 {
-	dialog->pixmap = glade_xml_get_widget (gui, "icon_pixmap");
+	dialog->pixmap = GTK_WIDGET (gtk_builder_get_object
+					(builder, "icon_pixmap"));
 	
 	g_signal_connect (dialog->pixmap, "style-set",
 			  G_CALLBACK (panel_run_dialog_style_set),
@@ -1916,14 +1923,15 @@ panel_run_dialog_setup_pixmap (PanelRunDialog *dialog,
 
 static PanelRunDialog *
 panel_run_dialog_new (GdkScreen *screen,
-		      GladeXML  *gui,
+		      GtkBuilder  *builder,
 		      guint32    activate_time)
 {
 	PanelRunDialog *dialog;
 
 	dialog = g_new0 (PanelRunDialog, 1);
 
-	dialog->run_dialog = glade_xml_get_widget (gui, "panel_run_dialog");
+	dialog->run_dialog = GTK_WIDGET (gtk_builder_get_object
+						(builder, "panel_run_dialog"));
 	
 	g_signal_connect_swapped (dialog->run_dialog, "response",
 				  G_CALLBACK (panel_run_dialog_response), dialog);
@@ -1931,14 +1939,16 @@ panel_run_dialog_new (GdkScreen *screen,
 	g_signal_connect_swapped (dialog->run_dialog, "destroy",
 				  G_CALLBACK (panel_run_dialog_destroy), dialog);
 
-	dialog->run_button = glade_xml_get_widget (gui, "run_button");
-	dialog->terminal_checkbox = glade_xml_get_widget (gui, "terminal_checkbox");
+	dialog->run_button = GTK_WIDGET (gtk_builder_get_object
+						(builder, "run_button"));
+	dialog->terminal_checkbox = GTK_WIDGET (gtk_builder_get_object
+						(builder, "terminal_checkbox"));
 	
-	panel_run_dialog_setup_pixmap        (dialog, gui);
-	panel_run_dialog_setup_entry         (dialog, gui);
-	panel_run_dialog_setup_file_button   (dialog, gui);
-	panel_run_dialog_setup_program_list  (dialog, gui);
-	panel_run_dialog_setup_list_expander (dialog, gui);
+	panel_run_dialog_setup_pixmap        (dialog, builder);
+	panel_run_dialog_setup_entry         (dialog, builder);
+	panel_run_dialog_setup_file_button   (dialog, builder);
+	panel_run_dialog_setup_program_list  (dialog, builder);
+	panel_run_dialog_setup_list_expander (dialog, builder);
 
 	panel_run_dialog_set_default_icon    (dialog, FALSE);
 
@@ -1982,7 +1992,8 @@ void
 panel_run_dialog_present (GdkScreen *screen,
 			  guint32    activate_time)
 {
-	GladeXML *gui;
+	GtkBuilder *builder;
+	GError *error = NULL;
 
 	if (panel_lockdown_get_disable_command_line ())
 		return;
@@ -1995,27 +2006,28 @@ panel_run_dialog_present (GdkScreen *screen,
 		return;
 	}
 
-	gui = glade_xml_new (GLADEDIR "/panel-run-dialog.glade",
-			     "panel_run_dialog",
-			     NULL);
-	if (!gui) {
+	builder = gtk_builder_new ();
+	gtk_builder_add_from_file (builder,
+				   BUILDERDIR "/panel-run-dialog.ui",
+				   &error);
+
+	if (error) {
 		char *secondary;
 
 		secondary = g_strdup_printf (_("Unable to load file '%s'."),
-					     GLADEDIR"/panel-run-dialog.glade");
+					     BUILDERDIR "/panel-run-dialog.ui");
 		panel_error_dialog (NULL, screen, "cannot_display_run_dialog",
 				    TRUE,
 				    _("Could not display run dialog"),
 				      secondary);
 		g_free (secondary);
+		g_error_free (error);
 		return;
 	}
 
-	static_dialog = panel_run_dialog_new (screen, gui, activate_time);
+	static_dialog = panel_run_dialog_new (screen, builder, activate_time);
 
 	g_signal_connect_swapped (static_dialog->run_dialog, "destroy",
 				  G_CALLBACK (panel_run_dialog_static_dialog_destroyed),
 				  static_dialog);
-
-	g_object_unref (gui);
 }
diff --git a/gnome-panel/panel-run-dialog.ui b/gnome-panel/panel-run-dialog.ui
new file mode 100644
index 0000000..aa7f99b
--- /dev/null
+++ b/gnome-panel/panel-run-dialog.ui
@@ -0,0 +1,299 @@
+<?xml version="1.0"?>
+<interface>
+  <requires lib="gtk+" version="2.16"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="panel_run_dialog">
+    <property name="border_width">5</property>
+    <property name="title" translatable="yes">Run Application</property>
+    <property name="resizable">False</property>
+    <property name="window_position">center</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="spacing">2</property>
+        <child>
+          <object class="GtkVBox" id="main_box">
+            <property name="visible">True</property>
+            <property name="border_width">5</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkHBox" id="entry_box">
+                <property name="visible">True</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment1">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0</property>
+                    <property name="xscale">0</property>
+                    <property name="yscale">0</property>
+                    <child>
+                      <object class="GtkImage" id="icon_pixmap">
+                        <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="yalign">0</property>
+                        <property name="stock">gtk-missing-image</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="dummy">
+                            <property name="AtkObject::accessible-name" translatable="yes">Command icon</property>
+                            <property name="AtkObject::accessible-description" translatable="yes">The icon of the command to be run.</property>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="padding">10</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkVBox" id="vbox2">
+                    <property name="visible">True</property>
+                    <property name="spacing">6</property>
+                    <child>
+                      <object class="GtkComboBoxEntry" id="comboboxentry">
+                        <property name="visible">True</property>
+                      </object>
+                      <packing>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkHBox" id="hbox2">
+                        <property name="visible">True</property>
+                        <property name="spacing">12</property>
+                        <child>
+                          <object class="GtkCheckButton" id="terminal_checkbox">
+                            <property name="label" translatable="yes">Run in _terminal</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>
+                            <child internal-child="accessible">
+                              <object class="AtkObject" id="dummy">
+                                <property name="AtkObject::accessible-description" translatable="yes">Select this box to run the command in a terminal window.</property>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="file_button">
+                            <property name="label" translatable="yes">Run with _file...</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <child internal-child="accessible">
+                              <object class="AtkObject" id="dummy">
+                                <property name="AtkObject::accessible-description" translatable="yes">Click this button to browse for a file whose name to append to the command string.</property>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <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="GtkExpander" id="list_expander">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="expanded">True</property>
+                <child>
+                  <object class="GtkVBox" id="program_list_box">
+                    <property name="visible">True</property>
+                    <property name="spacing">6</property>
+                    <child>
+                      <object class="GtkScrolledWindow" id="scrolledwindow1">
+                        <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="program_list">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="headers_visible">False</property>
+                            <child internal-child="accessible">
+                              <object class="AtkObject" id="dummy">
+                                <property name="AtkObject::accessible-name" translatable="yes">List of known applications</property>
+                              </object>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="program_label">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="xalign">0</property>
+                        <property name="yalign">0</property>
+                        <property name="label" translatable="yes">Select an application to view its description.</property>
+                        <property name="wrap">True</property>
+                        <property name="selectable">True</property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label3">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0</property>
+                    <property name="label" translatable="yes">Show list of known _applications</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                </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="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="help_button">
+                <property name="label">gtk-help</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="cancel_button">
+                <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="run_button">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
+                <property name="receives_default">False</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="dummy">
+                    <property name="AtkObject::accessible-description" translatable="yes">Click this button to run the selected application or the command in the command entry field.</property>
+                  </object>
+                </child>
+                <child>
+                  <object class="GtkAlignment" id="alignment2">
+                    <property name="visible">True</property>
+                    <property name="xscale">0</property>
+                    <property name="yscale">0</property>
+                    <child>
+                      <object class="GtkHBox" id="hbox1">
+                        <property name="visible">True</property>
+                        <property name="spacing">2</property>
+                        <child>
+                          <object class="GtkImage" id="image1">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="stock">gtk-execute</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="label1">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">_Run</property>
+                            <property name="use_markup">True</property>
+                            <property name="use_underline">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+              </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="-11">help_button</action-widget>
+      <action-widget response="-6">cancel_button</action-widget>
+      <action-widget response="-5">run_button</action-widget>
+    </action-widgets>
+  </object>
+</interface>
