diff --git a/gnome-control-center-default-app-xterm.patch b/gnome-control-center-default-app-xterm.patch new file mode 100644 index 0000000..f508c66 --- /dev/null +++ b/gnome-control-center-default-app-xterm.patch @@ -0,0 +1,86 @@ +From f36a1c80f1b38a61cbee07e79462bddd41e0f996 Mon Sep 17 00:00:00 2001 +From: Vincent Untz +Date: Sat, 3 Oct 2009 10:14:24 +0200 +Subject: [PATCH] [defaultapplications] Update the exec arg when changing terminal + +When selecting a known terminal from the combo box, also update the exec +arg gconf key to the known value from the xml file. + +https://bugzilla.gnome.org/show_bug.cgi?id=597185 +--- + capplets/default-applications/gnome-da-capplet.c | 52 ++++++++++++++++++++++ + 1 files changed, 52 insertions(+), 0 deletions(-) + +diff --git a/capplets/default-applications/gnome-da-capplet.c b/capplets/default-applications/gnome-da-capplet.c +index 38fb9db..eed2690 100644 +--- a/capplets/default-applications/gnome-da-capplet.c ++++ b/capplets/default-applications/gnome-da-capplet.c +@@ -573,6 +573,50 @@ combo_conv_from_widget (GConfPropertyEditor *peditor, const GConfValue *value) + } + } + ++static GConfValue* ++combo_conv_from_widget_term_flag (GConfPropertyEditor *peditor, const GConfValue *value) ++{ ++ GConfValue *ret; ++ GList *handlers; ++ gint index; ++ GnomeDATermItem *item; ++ ++ g_object_get (G_OBJECT (peditor), "data", &handlers, NULL); ++ index = gconf_value_get_int (value); ++ ++ item = g_list_nth_data (handlers, index); ++ ret = gconf_value_new (GCONF_VALUE_STRING); ++ ++ if (!item) ++ { ++ /* if item was not found, this is probably the "Custom" item */ ++ ++ /* XXX: returning "" as the value here is not ideal, but required to ++ * prevent the combo box from jumping back to the previous value if the ++ * user has selected Custom */ ++ gconf_value_set_string (ret, ""); ++ return ret; ++ } ++ else ++ { ++ gconf_value_set_string (ret, item->exec_flag); ++ return ret; ++ } ++} ++ ++static GConfValue* ++combo_conv_to_widget_term_flag (GConfPropertyEditor *peditor, const GConfValue *value) ++{ ++ GConfValue *ret; ++ GtkComboBox *combo; ++ ++ combo = GTK_COMBO_BOX (gconf_property_editor_get_ui_control (peditor)); ++ ++ ret = gconf_value_new (GCONF_VALUE_INT); ++ gconf_value_set_int (ret, gtk_combo_box_get_active (combo)); ++ return ret; ++} ++ + static gboolean + is_separator (GtkTreeModel *model, GtkTreeIter *iter, gpointer sep_index) + { +@@ -814,6 +858,14 @@ show_dialog (GnomeDACapplet *capplet, const gchar *start_page) + "data", capplet->terminals, + NULL); + ++ gconf_peditor_new_combo_box (NULL, ++ DEFAULT_APPS_KEY_TERMINAL_EXEC_ARG, ++ capplet->term_combo_box, ++ "conv-from-widget-cb", combo_conv_from_widget_term_flag, ++ "conv-to-widget-cb", combo_conv_to_widget_term_flag, ++ "data", capplet->terminals, ++ NULL); ++ + gconf_peditor_new_string (NULL, + DEFAULT_APPS_KEY_TERMINAL_EXEC, + capplet->terminal_command_entry, +-- +1.6.4.2 + diff --git a/gnome-control-center.changes b/gnome-control-center.changes index b174312..f202f91 100644 --- a/gnome-control-center.changes +++ b/gnome-control-center.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Sat Oct 3 10:20:28 CEST 2009 - vuntz@opensuse.org + +- Add gnome-control-center-default-app-xterm.patch to correctly set + the exec arg gconf key when changing the preferred terminal. Fix + bnc#544006. + ------------------------------------------------------------------- Mon Sep 21 23:22:55 CEST 2009 - dimstar@opensuse.org diff --git a/gnome-control-center.spec b/gnome-control-center.spec index fcb8b7c..ac6bf10 100644 --- a/gnome-control-center.spec +++ b/gnome-control-center.spec @@ -53,6 +53,8 @@ Patch28: gnome-control-center-use-settings-menu.patch Patch30: gnome-control-center-bnc373197-layout-switch-keybinding.patch # PATCH-FIX-UPSTREAM gnome-control-center-bnc436206-add-to-default.patch bnc436206 sreeves@novell.com -- Add groupwise to defaults list Patch31: gnome-control-center-bnc436206-add-to-default.patch +# PATCH-FIX-UPSTREAM gnome-control-center-default-app-xterm.patch bnc544006 bgo597185 vuntz@opensuse.org -- exec_arg key wasn't set when changing the terminal +Patch32: gnome-control-center-default-app-xterm.patch Url: http://www.gnome.org Requires: nautilus gnome-settings-daemon gnome-menus libcanberra-gtk Requires: %{name}-lang = %{version} @@ -106,6 +108,7 @@ of window managers. %patch28 %patch30 -p1 %patch31 -p1 +%patch32 -p1 %build autoreconf -f -i