Don't open tabs when double- or middle-clicking notebook arrows

We need to connect after the button-press-event to make sure that
GtkNotebook blocks the signal appropriately.

Double click is disabled for now since we can't figure out if
it was a click on a button or not.
This commit is contained in:
Christian Dywan 2009-06-25 23:49:41 +02:00
parent 53462722e6
commit 2cdaa2869e

View file

@ -3993,14 +3993,18 @@ midori_browser_notebook_page_reordered_cb (GtkNotebook* notebook,
} }
static gboolean static gboolean
gtk_notebook_button_press_event_cb (GtkNotebook* notebook, midori_browser_notebook_button_press_event_after_cb (GtkNotebook* notebook,
GdkEventButton* event, GdkEventButton* event,
MidoriBrowser* browser) MidoriBrowser* browser)
{ {
if (event->window != notebook->event_window)
return FALSE;
/* FIXME: Handle double click only when it wasn't handled by GtkNotebook */
/* Open a new tab on double click or middle mouse click */ /* Open a new tab on double click or middle mouse click */
if (event->window == notebook->event_window if (/*(event->type == GDK_2BUTTON_PRESS && event->button == 1)
&& ((event->type == GDK_2BUTTON_PRESS && event->button == 1) || */(event->type == GDK_BUTTON_PRESS && event->button == 2))
|| (event->type == GDK_BUTTON_PRESS && event->button == 2)))
{ {
gint n; gint n;
GtkWidget* view; GtkWidget* view;
@ -4963,8 +4967,8 @@ midori_browser_init (MidoriBrowser* browser)
g_signal_connect (browser->notebook, "page-reordered", g_signal_connect (browser->notebook, "page-reordered",
G_CALLBACK (midori_browser_notebook_page_reordered_cb), G_CALLBACK (midori_browser_notebook_page_reordered_cb),
browser); browser);
g_signal_connect (browser->notebook, "button-press-event", g_signal_connect_after (browser->notebook, "button-press-event",
G_CALLBACK (gtk_notebook_button_press_event_cb), G_CALLBACK (midori_browser_notebook_button_press_event_after_cb),
browser); browser);
gtk_widget_show (browser->notebook); gtk_widget_show (browser->notebook);