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:
parent
53462722e6
commit
2cdaa2869e
1 changed files with 12 additions and 8 deletions
|
@ -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);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue