summaryrefslogtreecommitdiff
path: root/libmdock/mdock-widget.c
diff options
context:
space:
mode:
authorJavier <dev.git@javispedro.com>2015-01-25 18:38:26 +0100
committerJavier <dev.git@javispedro.com>2015-01-25 18:38:26 +0100
commit65b0341953561e3b15ee65cc57ebd056ed2eea19 (patch)
tree5f8f048d7ab39da6627e1eeb12e28388cdd3a9af /libmdock/mdock-widget.c
parent9e57caac16b1541336b6d2ce76e8ac8edf55474f (diff)
downloadmdock-65b0341953561e3b15ee65cc57ebd056ed2eea19.tar.gz
mdock-65b0341953561e3b15ee65cc57ebd056ed2eea19.zip
additional panel applet issues
Diffstat (limited to 'libmdock/mdock-widget.c')
-rw-r--r--libmdock/mdock-widget.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/libmdock/mdock-widget.c b/libmdock/mdock-widget.c
index 561a5b4..cd71999 100644
--- a/libmdock/mdock-widget.c
+++ b/libmdock/mdock-widget.c
@@ -218,18 +218,23 @@ static void handle_item_pinned_changed(MDockWidget *self, GParamSpec *spec, MDoc
static gboolean handle_item_button_press(MDockWidget *self, GdkEventButton *event, MDockItem *item)
{
- if (self->priv->popup_timer) {
- g_source_remove(self->priv->popup_timer);
- self->priv->popup_timer = 0;
- }
- if (self->priv->current_popup_item) {
- hide_item_popup(self);
+ if (event->button != 1) {
+ if (self->priv->popup_timer) {
+ g_source_remove(self->priv->popup_timer);
+ self->priv->popup_timer = 0;
+ }
+ if (self->priv->current_popup_item) {
+ hide_item_popup(self);
+ }
}
switch (event->button) {
case 1:
self->priv->primary_button_down = TRUE;
break;
+ case 2:
+ return FALSE; // Let the panel handle a middle button press.
+ break;
case 3:
gtk_menu_popup(GTK_MENU(g_object_get_qdata(G_OBJECT(item), mdock_widget_item_menu_quark())),
NULL, NULL, NULL, NULL, event->button, event->time);