mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-06 00:30:08 +00:00
bloatpad: fix the action associated with the notification
Notifications can only be associated with application actions, but clear is a window action. Introduce a "clear-all" action that forwards to clear on all windows. https://bugzilla.gnome.org/show_bug.cgi?id=721633
This commit is contained in:
parent
d28ca4cdce
commit
f7c5dfdeef
@ -137,6 +137,18 @@ activate_clear (GSimpleAction *action,
|
||||
gtk_text_buffer_set_text (gtk_text_view_get_buffer (text), "", -1);
|
||||
}
|
||||
|
||||
static void
|
||||
activate_clear_all (GSimpleAction *action,
|
||||
GVariant *parameter,
|
||||
gpointer user_data)
|
||||
{
|
||||
GtkApplication *app = GTK_APPLICATION (user_data);
|
||||
GList *iter;
|
||||
|
||||
for (iter = gtk_application_get_windows (app); iter; iter = iter->next)
|
||||
g_action_group_activate_action (iter->data, "clear", NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
text_buffer_changed_cb (GtkTextBuffer *buffer,
|
||||
BloatPad *app)
|
||||
@ -170,7 +182,7 @@ text_buffer_changed_cb (GtkTextBuffer *buffer,
|
||||
GNotification *n;
|
||||
n = g_notification_new ("Three lines of text");
|
||||
g_notification_set_body (n, "Keep up the good work!");
|
||||
g_notification_add_button (n, "Start over", "app.clear");
|
||||
g_notification_add_button (n, "Start over", "app.clear-all");
|
||||
g_application_send_notification (G_APPLICATION (app), "three-lines", n);
|
||||
g_object_unref (n);
|
||||
}
|
||||
@ -450,7 +462,8 @@ static GActionEntry app_entries[] = {
|
||||
{ "about", about_activated, NULL, NULL, NULL },
|
||||
{ "quit", quit_activated, NULL, NULL, NULL },
|
||||
{ "edit-accels", edit_accels },
|
||||
{ "time-active", NULL, NULL, "false", time_active_changed }
|
||||
{ "time-active", NULL, NULL, "false", time_active_changed },
|
||||
{ "clear-all", activate_clear_all }
|
||||
};
|
||||
|
||||
static void
|
||||
|
Loading…
Reference in New Issue
Block a user