diff --git a/data/calendar.gresource.xml b/data/calendar.gresource.xml index 70a5116b..c456eb2a 100644 --- a/data/calendar.gresource.xml +++ b/data/calendar.gresource.xml @@ -4,7 +4,6 @@ ui/calendar-row.ui ui/date-selector.ui ui/edit-dialog.ui - ui/menus.ui ui/online-account-row.ui ui/quick-add-popover.ui ui/search-view.ui @@ -14,4 +13,8 @@ ui/year-view.ui theme/gtk-styles.css + + + ui/menus.ui + diff --git a/data/ui/menus.ui b/data/ui/menus.ui index 3ba78c60..b25f70d7 100644 --- a/data/ui/menus.ui +++ b/data/ui/menus.ui @@ -1,6 +1,6 @@ - +
Add Eve_nt… @@ -25,7 +25,7 @@
- +
Add Eve_nt… diff --git a/src/gcal-application.c b/src/gcal-application.c index 784503f8..1a6304ca 100644 --- a/src/gcal-application.c +++ b/src/gcal-application.c @@ -60,8 +60,6 @@ static void gcal_application_startup (GApplication * static gint gcal_application_command_line (GApplication *app, GApplicationCommandLine *command_line); -static void gcal_application_set_app_menu (GApplication *app); - static void gcal_application_create_new_event (GSimpleAction *new_event, GVariant *parameter, gpointer app); @@ -260,8 +258,6 @@ gcal_application_activate (GApplication *application) GTK_STYLE_PROVIDER_PRIORITY_APPLICATION + 2); } - gcal_application_set_app_menu (application); - if (self->window != NULL) { gtk_window_present (GTK_WINDOW (self->window)); @@ -299,6 +295,12 @@ gcal_application_activate (GApplication *application) static void gcal_application_startup (GApplication *app) { + /* add actions */ + g_action_map_add_action_entries (G_ACTION_MAP (app), + gcal_app_entries, + G_N_ELEMENTS (gcal_app_entries), + app); + G_APPLICATION_CLASS (gcal_application_parent_class)->startup (app); /* We're assuming the application is called as a service only by the shell search system */ @@ -411,27 +413,6 @@ gcal_application_dbus_unregister (GApplication *application, g_free (search_provider_path); } -static void -gcal_application_set_app_menu (GApplication *app) -{ - GtkBuilder *builder; - GMenuModel *appmenu; - - builder = gtk_builder_new (); - gtk_builder_add_from_resource (builder, "/org/gnome/calendar/menus.ui", NULL); - - appmenu = (GMenuModel *)gtk_builder_get_object (builder, "appmenu"); - - g_action_map_add_action_entries (G_ACTION_MAP (app), - gcal_app_entries, - G_N_ELEMENTS (gcal_app_entries), - app); - - gtk_application_set_app_menu (GTK_APPLICATION (app), appmenu); - - g_object_unref (builder); -} - static void gcal_application_create_new_event (GSimpleAction *new_event, GVariant *parameter, @@ -528,6 +509,7 @@ gcal_application_new (void) g_set_application_name ("Calendar"); return g_object_new (gcal_application_get_type (), + "resource-base-path", "/org/gnome/calendar", "application-id", "org.gnome.Calendar", "flags", G_APPLICATION_HANDLES_COMMAND_LINE, NULL); diff --git a/src/gcal-source-dialog.c b/src/gcal-source-dialog.c index cc6a6d7b..ea61d795 100644 --- a/src/gcal-source-dialog.c +++ b/src/gcal-source-dialog.c @@ -1812,7 +1812,7 @@ gcal_source_dialog_constructed (GObject *object) g_action_map_add_action_entries (G_ACTION_MAP (self->action_group), actions, G_N_ELEMENTS (actions), object); // Load the "Add" button menu - builder = gtk_builder_new_from_resource ("/org/gnome/calendar/menus.ui"); + builder = gtk_builder_new_from_resource ("/org/gnome/calendar/gtk/menus.ui"); menu = G_MENU_MODEL (gtk_builder_get_object (builder, "add-source-menu")); gtk_menu_button_set_menu_model (GTK_MENU_BUTTON (self->add_calendar_menu_button), menu); diff --git a/src/gcal-window.c b/src/gcal-window.c index 9bcdf496..8cd8b98a 100644 --- a/src/gcal-window.c +++ b/src/gcal-window.c @@ -1305,6 +1305,12 @@ gcal_window_class_init(GcalWindowClass *klass) static void gcal_window_init (GcalWindow *self) { + /* Setup actions */ + g_action_map_add_action_entries (G_ACTION_MAP (self), + actions, + G_N_ELEMENTS (actions), + self); + gtk_widget_init_template (GTK_WIDGET (self)); /* source dialog */ @@ -1336,19 +1342,13 @@ gcal_window_constructed (GObject *object) g_free (clock_format); g_object_unref (helper_settings); - // Setup actions - g_action_map_add_action_entries (G_ACTION_MAP (object), - actions, - G_N_ELEMENTS (actions), - object); - /* header_bar: menu */ builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, - "/org/gnome/calendar/menus.ui", + "/org/gnome/calendar/gtk/menus.ui", NULL); - winmenu = (GMenuModel *)gtk_builder_get_object (builder, "winmenu"); + winmenu = (GMenuModel *)gtk_builder_get_object (builder, "win-menu"); gtk_menu_button_set_menu_model (GTK_MENU_BUTTON (window->menu_button), winmenu);