diff options
| author | Victor Kareh <[email protected]> | 2025-09-19 18:27:32 -0400 |
|---|---|---|
| committer | Victor Kareh <[email protected]> | 2025-10-30 17:19:55 -0400 |
| commit | 49fb1d3bea0b3a96e5cc2adffbd957c3f965ef4a (patch) | |
| tree | c29816ef2bba95f99b5d1054721844e74a64e9d8 | |
| parent | f5978eff3e761124ec54219b84bcff9d6b25b7bc (diff) | |
| download | mate-panel-applet-shortcuts.tar.bz2 mate-panel-applet-shortcuts.tar.xz | |
clock: Add DBus 'activate' callbackapplet-shortcuts
This allows users to open the clock/calendar popup through DBus, which
means we could configure a keybinding for it.
| -rw-r--r-- | applets/clock/clock.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/applets/clock/clock.c b/applets/clock/clock.c index 2e26b39f..bc01b290 100644 --- a/applets/clock/clock.c +++ b/applets/clock/clock.c @@ -1436,6 +1436,21 @@ toggle_calendar (GtkWidget *button, } static gboolean +clock_applet_activate (MatePanelApplet *applet, + const gchar *action, + guint32 timestamp, + ClockData *cd) +{ + if (g_strcmp0 (action, "toggle-calendar") == 0) { + /* Toggle the button state first, then activate popup */ + gboolean current_state = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (cd->panel_button)); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (cd->panel_button), !current_state); + return TRUE; + } + return FALSE; +} + +static gboolean do_not_eat_button_press (GtkWidget *widget, GdkEventButton *event) { @@ -2739,6 +2754,10 @@ fill_clock_applet (MatePanelApplet *applet) G_CALLBACK (applet_change_orient), cd); + g_signal_connect (cd->applet, "activate", + G_CALLBACK (clock_applet_activate), + cd); + g_signal_connect (cd->panel_button, "size-allocate", G_CALLBACK (panel_button_change_pixel_size), cd); |
