r19788 - in /desktop/unstable/nautilus/debian: changelog patches/20_open-with_install.patch

joss at users.alioth.debian.org joss at users.alioth.debian.org
Sat Apr 25 21:55:37 UTC 2009


Author: joss
Date: Sat Apr 25 21:55:37 2009
New Revision: 19788

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=19788
Log:
20_open-with_install.patch: fix a crash when switching tabs in the 
dialog.

Modified:
    desktop/unstable/nautilus/debian/changelog
    desktop/unstable/nautilus/debian/patches/20_open-with_install.patch

Modified: desktop/unstable/nautilus/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/nautilus/debian/changelog?rev=19788&op=diff
==============================================================================
--- desktop/unstable/nautilus/debian/changelog (original)
+++ desktop/unstable/nautilus/debian/changelog Sat Apr 25 21:55:37 2009
@@ -1,3 +1,10 @@
+nautilus (2.26.2-2) unstable; urgency=low
+
+  * 20_open-with_install.patch: fix a crash when switching tabs in the 
+    dialog.
+
+ -- Josselin Mouette <joss at debian.org>  Sat, 25 Apr 2009 23:44:05 +0200
+
 nautilus (2.26.2-1) unstable; urgency=low
 
   * Break eiciel, diff-ext, nautilus-gksu, nautilus-actions, 

Modified: desktop/unstable/nautilus/debian/patches/20_open-with_install.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/nautilus/debian/patches/20_open-with_install.patch?rev=19788&op=diff
==============================================================================
--- desktop/unstable/nautilus/debian/patches/20_open-with_install.patch (original)
+++ desktop/unstable/nautilus/debian/patches/20_open-with_install.patch Sat Apr 25 21:55:37 2009
@@ -1,7 +1,7 @@
 Index: nautilus-2.26.2/libnautilus-private/nautilus-open-with-dialog.c
 ===================================================================
---- nautilus-2.26.2.orig/libnautilus-private/nautilus-open-with-dialog.c	2009-04-25 00:43:02.433417363 +0200
-+++ nautilus-2.26.2/libnautilus-private/nautilus-open-with-dialog.c	2009-04-25 01:38:09.893416442 +0200
+--- nautilus-2.26.2.orig/libnautilus-private/nautilus-open-with-dialog.c	2009-02-10 18:49:53.000000000 +0100
++++ nautilus-2.26.2/libnautilus-private/nautilus-open-with-dialog.c	2009-04-25 23:43:47.772028483 +0200
 @@ -32,6 +32,7 @@
  #include <eel/eel-stock-dialogs.h>
  
@@ -323,7 +323,7 @@
  
  
  static gboolean
-@@ -671,13 +809,135 @@ nautilus_open_with_dialog_add_items_idle
+@@ -671,13 +809,136 @@ nautilus_open_with_dialog_add_items_idle
  	return FALSE;
  }
  
@@ -451,8 +451,11 @@
 +}
 +
  static void
- program_list_selection_changed (GtkTreeSelection  *selection,
- 				NautilusOpenWithDialog *dialog)
+-program_list_selection_changed (GtkTreeSelection  *selection,
+-				NautilusOpenWithDialog *dialog)
++update_state_from_selection (GtkTreeSelection  *selection,
++				NautilusOpenWithDialog *dialog,
++				gint current_page)
  {
  	GtkTreeModel     *model;
  	GtkTreeIter       iter;
@@ -460,9 +463,19 @@
  		
  	if (!gtk_tree_selection_get_selected (selection, &model, &iter)) {
  		gtk_widget_set_sensitive (dialog->details->button, FALSE);
-@@ -687,29 +947,43 @@ program_list_selection_changed (GtkTreeS
+@@ -686,30 +947,50 @@ program_list_selection_changed (GtkTreeS
+ 					   	   FALSE);
  		return;
  	}
++	if (current_page) {
++		char *temp;
++		gtk_tree_model_get (model, &iter, COLUMN_COMMENT, &temp, -1);
++		gtk_label_set_text (GTK_LABEL (dialog->details->desc_label2), sure_string (temp));
++		g_free (temp);
++
++		gtk_tree_model_get (model, &iter, COLUMN_PACKAGE, &temp, -1);
++		g_free (dialog->details->selected_package);
++		dialog->details->selected_package = temp;
  
 -	info = NULL;
 -	gtk_tree_model_get (model, &iter,
@@ -471,25 +484,6 @@
 -				  
 -	if (info == NULL) {
 -		return;
--	}
-+	if (get_current_page (dialog)) {
-+		char *temp;
-+		gtk_tree_model_get (model, &iter, COLUMN_COMMENT, &temp, -1);
-+		gtk_label_set_text (GTK_LABEL (dialog->details->desc_label2), sure_string (temp));
-+		g_free (temp);
-+
-+		gtk_tree_model_get (model, &iter, COLUMN_PACKAGE, &temp, -1);
-+		g_free (dialog->details->selected_package);
-+		dialog->details->selected_package = temp;
- 
--	gtk_entry_set_text (GTK_ENTRY (dialog->details->entry),
--			    sure_string (g_app_info_get_executable (info)));
--	gtk_label_set_text (GTK_LABEL (dialog->details->desc_label),
--			    sure_string (g_app_info_get_description (info)));
--	gtk_widget_set_sensitive (dialog->details->button, TRUE);
--	gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog),
--					   RESPONSE_REMOVE,
--					   g_app_info_can_delete (info));
 +		gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog),
 +		                                   RESPONSE_REMOVE,
 +		                                   FALSE);
@@ -502,9 +496,7 @@
 +			exec = g_app_info_get_executable (info);
 +			desc = g_app_info_get_description (info);
 +		}
- 
--	if (dialog->details->selected_app_info) {
--		g_object_unref (dialog->details->selected_app_info);
++
 +		gtk_entry_set_text (GTK_ENTRY (dialog->details->entry), sure_string (exec));
 +		gtk_label_set_text (GTK_LABEL (dialog->details->desc_label), sure_string (desc));
 +
@@ -517,14 +509,31 @@
 +		}
 +		dialog->details->selected_app_info = info;
  	}
+ 
+-	gtk_entry_set_text (GTK_ENTRY (dialog->details->entry),
+-			    sure_string (g_app_info_get_executable (info)));
+-	gtk_label_set_text (GTK_LABEL (dialog->details->desc_label),
+-			    sure_string (g_app_info_get_description (info)));
+ 	gtk_widget_set_sensitive (dialog->details->button, TRUE);
+-	gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog),
+-					   RESPONSE_REMOVE,
+-					   g_app_info_can_delete (info));
++}
+ 
+-	if (dialog->details->selected_app_info) {
+-		g_object_unref (dialog->details->selected_app_info);
+-	}
 -	
 -	dialog->details->selected_app_info = info;
-+
-+	gtk_widget_set_sensitive (dialog->details->button, TRUE);
++static void
++program_list_selection_changed (GtkTreeSelection  *selection,
++				NautilusOpenWithDialog *dialog)
++{
++	update_state_from_selection (selection, dialog, get_current_page (dialog));
  }
  
  static void
-@@ -719,9 +993,15 @@ program_list_selection_activated (GtkTre
+@@ -719,9 +1000,15 @@ program_list_selection_activated (GtkTre
  				  NautilusOpenWithDialog *dialog)
  {
  	GtkTreeSelection *selection;
@@ -541,7 +550,7 @@
  	program_list_selection_changed (selection, dialog);
  	
  	gtk_dialog_response (GTK_DIALOG (&dialog->parent), RESPONSE_OPEN);
-@@ -743,16 +1023,45 @@ expander_toggled (GtkWidget *expander, N
+@@ -743,16 +1030,45 @@ expander_toggled (GtkWidget *expander, N
  }
  
  static void
@@ -559,7 +568,7 @@
 +	}
 +	gtk_label_set_text_with_mnemonic (GTK_LABEL(dialog->details->open_label), text);
 +
-+	program_list_selection_changed (gtk_tree_view_get_selection (treeview), dialog);
++	update_state_from_selection (gtk_tree_view_get_selection (treeview), dialog, index);
 +}
 +
 +static gboolean
@@ -588,7 +597,7 @@
  
  	dialog->details = g_new0 (NautilusOpenWithDialogDetails, 1);
  
-@@ -764,6 +1073,8 @@ nautilus_open_with_dialog_init (Nautilus
+@@ -764,6 +1080,8 @@ nautilus_open_with_dialog_init (Nautilus
  
  	gtk_box_set_spacing (GTK_BOX (GTK_DIALOG (dialog)->vbox), 2);
  
@@ -597,7 +606,7 @@
  	vbox = gtk_vbox_new (FALSE, 12);
  	gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
  
-@@ -773,10 +1084,12 @@ nautilus_open_with_dialog_init (Nautilus
+@@ -773,10 +1091,12 @@ nautilus_open_with_dialog_init (Nautilus
  	dialog->details->label = gtk_label_new ("");
  	gtk_misc_set_alignment (GTK_MISC (dialog->details->label), 0.0, 0.5);
  	gtk_label_set_line_wrap (GTK_LABEL (dialog->details->label), TRUE);
@@ -611,7 +620,7 @@
  
  	scrolled_window = gtk_scrolled_window_new (NULL, NULL);
  	gtk_widget_set_size_request (scrolled_window, 400, 300);
-@@ -813,8 +1126,6 @@ nautilus_open_with_dialog_init (Nautilus
+@@ -813,8 +1133,6 @@ nautilus_open_with_dialog_init (Nautilus
  						     (GSourceFunc) nautilus_open_with_dialog_add_items_idle,
  						      dialog, NULL);
  
@@ -620,7 +629,7 @@
  	gtk_widget_show_all (vbox);
  
  
-@@ -848,6 +1159,60 @@ nautilus_open_with_dialog_init (Nautilus
+@@ -848,6 +1166,60 @@ nautilus_open_with_dialog_init (Nautilus
  			       		   RESPONSE_REMOVE,
  					   FALSE);
  
@@ -681,7 +690,7 @@
  	gtk_dialog_add_button (GTK_DIALOG (dialog),
  			       GTK_STOCK_CANCEL,
  			       GTK_RESPONSE_CANCEL);
-@@ -864,12 +1229,12 @@ nautilus_open_with_dialog_init (Nautilus
+@@ -864,12 +1236,12 @@ nautilus_open_with_dialog_init (Nautilus
  	hbox = gtk_hbox_new (FALSE, 2);
  	gtk_widget_show (hbox);
  
@@ -699,7 +708,7 @@
  
  	align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);
  	gtk_widget_show (align);
-@@ -877,7 +1242,6 @@ nautilus_open_with_dialog_init (Nautilus
+@@ -877,7 +1249,6 @@ nautilus_open_with_dialog_init (Nautilus
  	gtk_widget_show (dialog->details->button);
  	GTK_WIDGET_SET_FLAGS (dialog->details->button, GTK_CAN_DEFAULT);
  




More information about the pkg-gnome-commits mailing list