From 7acc533a95ced8d6f8fa6ef85035806e64ad089a Mon Sep 17 00:00:00 2001 From: Alexey Yakovenko Date: Sun, 11 May 2014 18:40:33 +0200 Subject: gtkui: restored the accidentally deleted double-click status bar handler --- plugins/gtkui/callbacks.c | 18 ++++++++++++++++++ plugins/gtkui/callbacks.h | 5 +++++ plugins/gtkui/deadbeef.glade | 1 + plugins/gtkui/interface.c | 3 +++ 4 files changed, 27 insertions(+) (limited to 'plugins/gtkui') diff --git a/plugins/gtkui/callbacks.c b/plugins/gtkui/callbacks.c index 4cb77434..3ca754bf 100644 --- a/plugins/gtkui/callbacks.c +++ b/plugins/gtkui/callbacks.c @@ -571,6 +571,24 @@ on_new_playlist1_activate (GtkMenuItem *menuitem, action_new_playlist_handler_cb (NULL); } +gboolean +on_mainwin_button_press_event (GtkWidget *widget, + GdkEventButton *event, + gpointer user_data) +{ + GtkWidget *statusbar = lookup_widget (mainwin, "statusbar"); + GtkAllocation c; + gtk_widget_get_allocation (statusbar, &c); + if (event->x >= c.x && event->x < c.x + c.width + && event->y >= c.y && event->y < c.y + c.height) { + if (event->type == GDK_2BUTTON_PRESS) { + deadbeef->sendmessage (DB_EV_TRACKFOCUSCURRENT, 0, 0, 0); + } + } + + return FALSE; +} + GtkWidget* create_seekbar (gchar *widget_name, gchar *string1, gchar *string2, diff --git a/plugins/gtkui/callbacks.h b/plugins/gtkui/callbacks.h index a11b104d..23745f0f 100644 --- a/plugins/gtkui/callbacks.h +++ b/plugins/gtkui/callbacks.h @@ -1296,3 +1296,8 @@ on_stop_after_album_activate (GtkMenuItem *menuitem, void on_reset_autostopalbum_toggled (GtkToggleButton *togglebutton, gpointer user_data); + +gboolean +on_mainwin_button_press_event (GtkWidget *widget, + GdkEventButton *event, + gpointer user_data); diff --git a/plugins/gtkui/deadbeef.glade b/plugins/gtkui/deadbeef.glade index 949a816c..7641ed20 100644 --- a/plugins/gtkui/deadbeef.glade +++ b/plugins/gtkui/deadbeef.glade @@ -27,6 +27,7 @@ + diff --git a/plugins/gtkui/interface.c b/plugins/gtkui/interface.c index d1c9f9f2..f73a1c55 100644 --- a/plugins/gtkui/interface.c +++ b/plugins/gtkui/interface.c @@ -476,6 +476,9 @@ create_mainwin (void) g_signal_connect ((gpointer) mainwin, "realize", G_CALLBACK (on_mainwin_realize), NULL); + g_signal_connect ((gpointer) mainwin, "button_press_event", + G_CALLBACK (on_mainwin_button_press_event), + NULL); g_signal_connect ((gpointer) open, "activate", G_CALLBACK (on_open_activate), NULL); -- cgit v1.2.3