[brasero/gnome-2-30] Fix #618917 - Brasero does not correctly handle double clicking on column separators



commit 01c9f9c23c84b16e8f86712a45d435fa9dc840a7
Author: Philippe Rouquier <bonfire-app wanadoo fr>
Date:   Tue May 18 11:40:04 2010 +0200

    Fix #618917  - Brasero does not correctly handle double clicking on column separators

 src/brasero-audio-disc.c |   10 ++++++++--
 src/brasero-data-disc.c  |    5 +++++
 src/brasero-video-disc.c |    5 +++++
 3 files changed, 18 insertions(+), 2 deletions(-)
---
diff --git a/src/brasero-audio-disc.c b/src/brasero-audio-disc.c
index f7d7a95..2bee380 100644
--- a/src/brasero-audio-disc.c
+++ b/src/brasero-audio-disc.c
@@ -1825,8 +1825,14 @@ brasero_audio_disc_button_pressed_cb (GtkTreeView *tree,
 {
 	GtkWidgetClass *widget_class;
 
+	/* Avoid minding signals that happen out of the tree area (like in the 
+	 * headers for example) */
+	if (event->window != gtk_tree_view_get_bin_window (GTK_TREE_VIEW (tree)))
+		return FALSE;
+
 	widget_class = GTK_WIDGET_GET_CLASS (tree);
 
+	/* Check that the click happened in the main window with rows. */
 	if (event->button == 3) {
 		GtkTreeSelection *selection;
 		GtkTreePath *path = NULL;
@@ -1890,7 +1896,7 @@ brasero_audio_disc_button_pressed_cb (GtkTreeView *tree,
 		 * so it can update itself (paticularly its selection) before we have
 		 * a look at it */
 		widget_class->button_press_event (GTK_WIDGET (tree), event);
-		
+
 		if (!treepath) {
 			GtkTreeSelection *selection;
 
@@ -1901,7 +1907,7 @@ brasero_audio_disc_button_pressed_cb (GtkTreeView *tree,
 			gtk_tree_selection_unselect_all (selection);
 			return FALSE;
 		}
-	
+
 		if (!result)
 			return FALSE;
 
diff --git a/src/brasero-data-disc.c b/src/brasero-data-disc.c
index 645dcac..b4a2e68 100644
--- a/src/brasero-data-disc.c
+++ b/src/brasero-data-disc.c
@@ -2113,6 +2113,11 @@ brasero_data_disc_button_pressed_cb (GtkTreeView *tree,
 
 	priv = BRASERO_DATA_DISC_PRIVATE (self);
 
+	/* Avoid minding signals that happen out of the tree area (like in the 
+	 * headers for example) */
+	if (event->window != gtk_tree_view_get_bin_window (GTK_TREE_VIEW (tree)))
+		return FALSE;
+
 	if (gtk_widget_get_realized (priv->tree)) {
 		result = gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW (priv->tree),
 							event->x,
diff --git a/src/brasero-video-disc.c b/src/brasero-video-disc.c
index d2fa10e..ff15d46 100644
--- a/src/brasero-video-disc.c
+++ b/src/brasero-video-disc.c
@@ -956,6 +956,11 @@ brasero_video_disc_button_pressed_cb (GtkTreeView *tree,
 
 	priv = BRASERO_VIDEO_DISC_PRIVATE (self);
 
+	/* Avoid minding signals that happen out of the tree area (like in the 
+	 * headers for example) */
+	if (event->window != gtk_tree_view_get_bin_window (GTK_TREE_VIEW (tree)))
+		return FALSE;
+
 	widget_class = GTK_WIDGET_GET_CLASS (tree);
 
 	if (event->button == 3) {



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