From b92ef7440f0cf6000c99cd95dc7765ac6e4f7e04 Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Sat, 18 May 2019 15:57:09 -0700 Subject: [PATCH] libsysprof-ui: menuing work and use libdazzle --- src/sysprof/gtk/menus.ui | 6 ++++++ src/sysprof/sysprof-application.c | 7 +++++-- src/sysprof/sysprof-application.h | 9 +++------ src/sysprof/sysprof-window.c | 22 ---------------------- src/sysprof/sysprof.gresource.xml | 6 +++--- src/sysprof/ui/sysprof-window.ui | 14 +++++++------- 6 files changed, 24 insertions(+), 40 deletions(-) diff --git a/src/sysprof/gtk/menus.ui b/src/sysprof/gtk/menus.ui index fdd805a5..3f9aa3d6 100644 --- a/src/sysprof/gtk/menus.ui +++ b/src/sysprof/gtk/menus.ui @@ -5,32 +5,38 @@ New Tab win.new-tab + <primary>t New Window app.new-window + <primary>n
Open Capture… app.open-capture + <primary>o
Close win.close-tab + <primary>w
Keyboard Shortcuts app.show-help-overlay + <primary>question Help app.help + F1 About Sysprof diff --git a/src/sysprof/sysprof-application.c b/src/sysprof/sysprof-application.c index 9480b097..7e9b7576 100644 --- a/src/sysprof/sysprof-application.c +++ b/src/sysprof/sysprof-application.c @@ -27,15 +27,18 @@ struct _SysprofApplication { - GtkApplication parent_instance; + DzlApplication parent_instance; }; -G_DEFINE_TYPE (SysprofApplication, sysprof_application, GTK_TYPE_APPLICATION) +G_DEFINE_TYPE (SysprofApplication, sysprof_application, DZL_TYPE_APPLICATION) struct { const gchar *action_name; const gchar *accels[12]; } default_accels[] = { + { "app.help", { "F1", NULL } }, + { "app.new-window", { "n", NULL } }, + { "app.open-capture", { "o", NULL } }, { "zoom.zoom-in", { "plus", "KP_Add", "equal", "ZoomIn", NULL } }, { "zoom.zoom-out", { "minus", "KP_Subtract", "ZoomOut", NULL } }, { "zoom.zoom-one", { "0", "KP_0", NULL } }, diff --git a/src/sysprof/sysprof-application.h b/src/sysprof/sysprof-application.h index a3c2f513..d41c1325 100644 --- a/src/sysprof/sysprof-application.h +++ b/src/sysprof/sysprof-application.h @@ -16,19 +16,16 @@ * along with this program. If not, see . */ -#ifndef SYSPROF_APPLICATION_H -#define SYSPROF_APPLICATION_H +#pragma once -#include +#include G_BEGIN_DECLS #define SYSPROF_TYPE_APPLICATION (sysprof_application_get_type()) -G_DECLARE_FINAL_TYPE (SysprofApplication, sysprof_application, SYSPROF, APPLICATION, GtkApplication) +G_DECLARE_FINAL_TYPE (SysprofApplication, sysprof_application, SYSPROF, APPLICATION, DzlApplication) SysprofApplication *sysprof_application_new (void); G_END_DECLS - -#endif /* SYSPROF_APPLICATION_H */ diff --git a/src/sysprof/sysprof-window.c b/src/sysprof/sysprof-window.c index 7885434a..98e4f240 100644 --- a/src/sysprof/sysprof-window.c +++ b/src/sysprof/sysprof-window.c @@ -105,34 +105,12 @@ close_tab_cb (GSimpleAction *action, sysprof_notebook_close_current (self->notebook); } -static void -sysprof_window_constructed (GObject *object) -{ - SysprofWindow *self = (SysprofWindow *)object; - GApplication *app = g_application_get_default (); - GMenu *menu; - - G_OBJECT_CLASS (sysprof_window_parent_class)->constructed (object); - - menu = gtk_application_get_menu_by_id (GTK_APPLICATION (app), "win-menu"); - gtk_menu_button_set_menu_model (self->menu_button, G_MENU_MODEL (menu)); -} - -static void -sysprof_window_finalize (GObject *object) -{ - G_OBJECT_CLASS (sysprof_window_parent_class)->finalize (object); -} static void sysprof_window_class_init (SysprofWindowClass *klass) { - GObjectClass *object_class = G_OBJECT_CLASS (klass); GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); - object_class->constructed = sysprof_window_constructed; - object_class->finalize = sysprof_window_finalize; - gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/sysprof/ui/sysprof-window.ui"); gtk_widget_class_bind_template_child (widget_class, SysprofWindow, menu_button); gtk_widget_class_bind_template_child (widget_class, SysprofWindow, notebook); diff --git a/src/sysprof/sysprof.gresource.xml b/src/sysprof/sysprof.gresource.xml index cdab05c7..1190ae3b 100644 --- a/src/sysprof/sysprof.gresource.xml +++ b/src/sysprof/sysprof.gresource.xml @@ -2,14 +2,14 @@ - gtk/help-overlay.ui - gtk/menus.ui + gtk/help-overlay.ui + gtk/menus.ui theme/shared.css theme/Adwaita-shared.css - ui/sysprof-window.ui + ui/sysprof-window.ui diff --git a/src/sysprof/ui/sysprof-window.ui b/src/sysprof/ui/sysprof-window.ui index 88b6b76f..0467721b 100644 --- a/src/sysprof/ui/sysprof-window.ui +++ b/src/sysprof/ui/sysprof-window.ui @@ -11,14 +11,14 @@ true Sysprof - + + open-menu-symbolic + true + win-menu true - - - open-menu-symbolic - true - - + end