-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocklet.c
32 lines (24 loc) · 919 Bytes
/
docklet.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include "docklet.h"
#include "menu.h"
#include "config.h"
static void docklet_clicked(GtkWidget *button, GdkEventButton *event, gpointer *data);
static GtkStatusIcon *docklet = NULL;
GtkWidget *image;
gboolean docklet_create(RuntimeSettings *rts) {
docklet = gtk_status_icon_new_from_stock(GTK_STOCK_PASTE);
g_signal_connect(docklet, "button-press-event", G_CALLBACK(docklet_clicked), rts);
gtk_status_icon_set_tooltip_markup(docklet, _("glipperus - thy powered clipboard tool"));
return FALSE;
}
void docklet_clicked(GtkWidget *button, GdkEventButton *event, gpointer *data) {
RuntimeSettings *rts = (RuntimeSettings*) data;
GtkWidget *menu;
if (event->type != GDK_BUTTON_PRESS)
return;
if (event->button == 3 || event->button == 1 || event->button == 2)
{
menu = glipperus_contextMenu_new(rts);
gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,
event->button, event->time);
}
}