diff options
author | Vivien Kraus <vivien@planete-kraus.eu> | 2023-03-11 21:23:19 +0100 |
---|---|---|
committer | Vivien Kraus <vivien@planete-kraus.eu> | 2023-03-11 21:51:32 +0100 |
commit | bc130b35dd68c56ca0b7167d257c1dfc1f56036a (patch) | |
tree | 08b8aa2aa40eebc900e098546c6445ded45cece3 /src/adwaita/disfluid-application.c | |
parent | 6df16404194cd24b8b8cc03c2e2382a5fbffb6f5 (diff) |
Connect the app.about action.
Diffstat (limited to 'src/adwaita/disfluid-application.c')
-rw-r--r-- | src/adwaita/disfluid-application.c | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/src/adwaita/disfluid-application.c b/src/adwaita/disfluid-application.c index 6814423..08af0c8 100644 --- a/src/adwaita/disfluid-application.c +++ b/src/adwaita/disfluid-application.c @@ -20,22 +20,16 @@ #include <adwaita.h> #include <gtk/gtk.h> -#define DISFLUID_ADW_TYPE_APPLICATION \ - disfluid_adw_application_get_type () - -struct DisfluidAdwApplication +struct _DisfluidAdwApplication { AdwApplication parent_instance; }; -struct DisfluidAdwApplicationClass +struct _DisfluidAdwApplicationClass { AdwApplicationClass parent_instance; }; -typedef struct DisfluidAdwApplication DisfluidAdwApplication; -typedef struct DisfluidAdwApplicationClass DisfluidAdwApplicationClass; - /* *INDENT-OFF* */ G_DEFINE_TYPE (DisfluidAdwApplication, disfluid_adw_application, ADW_TYPE_APPLICATION) /* *INDENT-ON* */ @@ -60,6 +54,16 @@ activated (GtkApplication * app) gtk_window_present (GTK_WINDOW (window)); } +static void +launch_about_window (GSimpleAction * action, GVariant * parameter, + gpointer user_data) +{ + (void) action; + (void) parameter; + DisfluidAdwApplication *self = user_data; + disfluid_adw_show_about (GTK_APPLICATION (self)); +} + DisfluidAdwApplication * disfluid_adw_application_new (void) { @@ -69,6 +73,11 @@ disfluid_adw_application_new (void) "application-id", disfluid_adw_application_id (), NULL); + static GActionEntry app_actions[] = { + {.name = "about",.activate = launch_about_window} + }; + g_action_map_add_action_entries (G_ACTION_MAP (self), app_actions, + G_N_ELEMENTS (app_actions), self); g_signal_connect (self, "activate", G_CALLBACK (activated), NULL); return self; } |