static void application_startup_cb (GApplication *application, GnomeControlCenter *shell) { GMenu *menu, *section; GAction *action; action = G_ACTION (g_simple_action_new ("help", NULL)); g_action_map_add_action (G_ACTION_MAP (application), action); g_signal_connect (action, "activate", G_CALLBACK (help_activated), shell); action = G_ACTION (g_simple_action_new ("quit", NULL)); g_action_map_add_action (G_ACTION_MAP (application), action); g_signal_connect (action, "activate", G_CALLBACK (quit_activated), shell); menu = g_menu_new (); section = g_menu_new (); g_menu_append (section, _("Help"), "app.help"); g_menu_append (section, _("Quit"), "app.quit"); g_menu_append_section (menu, NULL, G_MENU_MODEL (section)); gtk_application_set_app_menu (GTK_APPLICATION (application), G_MENU_MODEL (menu)); gtk_application_add_accelerator (GTK_APPLICATION (application), "F1", "app.help", NULL); /* nothing else to do here, we don't want to show a window before * we've looked at the commandline */ }
void gw_application_initialize_accelerators (GwApplication *application) { //Sanity checks g_return_if_fail (application != NULL); //Declarations gchar *accel; gchar *action; gchar *detail; gint index; //Initializations index = 1; while (index + 1 < 10) { accel = g_strdup_printf ("<Alt>%d", index); action = g_strdup_printf ("win.set-dictionary"); detail = g_strdup_printf ("%d", index); if (accel != NULL && action != NULL && detail != NULL) { gtk_application_add_accelerator (GTK_APPLICATION (application), accel, action, g_variant_new_string (detail)); index++; } if (accel != NULL) g_free (accel); accel = NULL; if (action != NULL) g_free (action); action = NULL; if (detail != NULL) g_free (detail); detail = NULL; } }
static void nautilus_application_init_actions (NautilusApplication *self) { GtkBuilder *builder; GError *error = NULL; const gchar *debug_no_app_menu; g_action_map_add_action_entries (G_ACTION_MAP (self), app_entries, G_N_ELEMENTS (app_entries), self); gtk_application_add_accelerator (GTK_APPLICATION (self), "F10", "win.gear-menu", NULL); builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/nautilus/nautilus-app-menu.ui", &error); if (error == NULL) { gtk_application_set_app_menu (GTK_APPLICATION (self), G_MENU_MODEL (gtk_builder_get_object (builder, "app-menu"))); } else { g_critical ("Unable to add the application menu: %s\n", error->message); g_error_free (error); } g_object_unref (builder); debug_no_app_menu = g_getenv ("NAUTILUS_DEBUG_NO_APP_MENU"); if (debug_no_app_menu) { DEBUG ("Disabling app menu GtkSetting as requested..."); g_object_set (gtk_settings_get_default (), "gtk-shell-shows-app-menu", FALSE, NULL); } }
static void cc_application_startup (GApplication *application) { CcApplication *self = CC_APPLICATION (application); GMenu *menu; GMenu *section; GSimpleAction *action; G_APPLICATION_CLASS (cc_application_parent_class)->startup (application); #ifdef HAVE_CHEESE if (gtk_clutter_init (NULL, NULL) != CLUTTER_INIT_SUCCESS) { g_critical ("Unable to initialize Clutter"); return; } #endif /* HAVE_CHEESE */ /* register a symbolic icon size for use in sidebar lists */ gtk_icon_size_register ("cc-sidebar-list", 24, 24); action = g_simple_action_new ("help", NULL); g_action_map_add_action (G_ACTION_MAP (application), G_ACTION (action)); g_signal_connect (action, "activate", G_CALLBACK (help_activated), self); g_object_unref (action); action = g_simple_action_new ("quit", NULL); g_action_map_add_action (G_ACTION_MAP (application), G_ACTION (action)); g_signal_connect (action, "activate", G_CALLBACK (cc_application_quit), self); g_object_unref (action); /* Launch panel by id. The parameter is a (panel_id, array_of_panel_parameters) * tuple. The GVariant-containing array usually is just the same array of * strings that would be generated by passing panel-specific arguments on * the command line. */ action = g_simple_action_new ("launch-panel", G_VARIANT_TYPE ("(sav)")); g_action_map_add_action (G_ACTION_MAP (application), G_ACTION (action)); g_signal_connect (action, "activate", G_CALLBACK (launch_panel_activated), self); g_object_unref (action); menu = g_menu_new (); section = g_menu_new (); g_menu_append (section, _("Help"), "app.help"); g_menu_append (section, _("Quit"), "app.quit"); g_menu_append_section (menu, NULL, G_MENU_MODEL (section)); gtk_application_set_app_menu (GTK_APPLICATION (application), G_MENU_MODEL (menu)); gtk_application_add_accelerator (GTK_APPLICATION (application), "F1", "app.help", NULL); self->priv->window = cc_window_new (GTK_APPLICATION (application)); }
void gw_application_add_accelerators (GwApplication *application, GMenuModel *menumodel) { //Sanity checks g_return_if_fail (application != NULL); g_return_if_fail (menumodel != NULL); //Declarations gint total_items; gint index; gchar *accel = NULL; gchar *action = NULL; gchar *detail = NULL; GMenuModel *sublink = NULL; //Initializations total_items = g_menu_model_get_n_items (menumodel); for (index = 0; index < total_items; index++) { g_menu_model_get_item_attribute (menumodel, index, "accel", "s", &accel, NULL); g_menu_model_get_item_attribute (menumodel, index, G_MENU_ATTRIBUTE_ACTION, "s", &action, NULL); g_menu_model_get_item_attribute (menumodel, index, G_MENU_ATTRIBUTE_TARGET, "s", &detail, NULL); if (accel != NULL && action != NULL) { if (detail != NULL) gtk_application_add_accelerator (GTK_APPLICATION (application), accel, action, g_variant_new_string (detail)); else gtk_application_add_accelerator (GTK_APPLICATION (application), accel, action, NULL); } if (accel != NULL) g_free (accel); accel = NULL; if (action != NULL) g_free (action); action = NULL; if (detail != NULL) g_free (detail); detail = NULL; //Recursive work sublink = g_menu_model_get_item_link (menumodel, index, G_MENU_LINK_SUBMENU); if (sublink != NULL) gw_application_add_accelerators (application, sublink); sublink = g_menu_model_get_item_link (menumodel, index, G_MENU_LINK_SECTION); if (sublink != NULL) gw_application_add_accelerators (application, sublink); } }
static void startup_cb (GApplication *application, gpointer data) { GtkBuilder *builder = gtk_builder_new (); GMenuModel *model; gboolean show_app_menu; const GActionEntry app_entries[] = { { "group-by", activate_action, "s", "\"script\"", NULL }, { "show-only-glyphs-in-font", activate_toggle_action, NULL, "false", change_toggle_state }, { "zoom-in", activate_action, NULL, NULL, NULL }, { "zoom-out", activate_action, NULL, NULL, NULL }, { "normal-size", activate_action, NULL, NULL, NULL }, { "find", activate_action, NULL, NULL, NULL }, { "help", activate_action, NULL, NULL, NULL }, { "about", activate_action, NULL, NULL, NULL }, { "close", activate_close, NULL, NULL, NULL }, }; g_action_map_add_action_entries (G_ACTION_MAP (application), app_entries, G_N_ELEMENTS (app_entries), application); gtk_builder_add_from_resource (builder, UI_RESOURCE, NULL); /* app menu */ g_object_get (gtk_settings_get_default (), "gtk-shell-shows-app-menu", &show_app_menu, NULL); if (show_app_menu) { model = G_MENU_MODEL (gtk_builder_get_object (builder, "app-menu")); gtk_application_set_app_menu (GTK_APPLICATION (application), model); } /* window menu */ #ifdef ENABLE_PRINTING model = G_MENU_MODEL (gtk_builder_get_object (builder, "printing")); g_menu_append (G_MENU (model), _("Page _Setup"), "win.page-setup"); /* g_menu_append (G_MENU (model), _("Print Preview"), "win.print-preview"); */ g_menu_append (G_MENU (model), _("_Print"), "win.print"); #endif model = G_MENU_MODEL (gtk_builder_get_object (builder, "go-chapter")); g_object_set_data (G_OBJECT (application), "go-chapter-menu", model); model = G_MENU_MODEL (gtk_builder_get_object (builder, "menubar")); gtk_application_set_menubar (GTK_APPLICATION (application), model); gtk_application_add_accelerator (GTK_APPLICATION (application), "<Primary>Page_Down", "win.next-chapter", NULL); gtk_application_add_accelerator (GTK_APPLICATION (application), "<Primary>Page_Up", "win.previous-chapter", NULL); gtk_application_add_accelerator (GTK_APPLICATION (application), "F1", "app.help", NULL); gtk_application_add_accelerator (GTK_APPLICATION (application), "<Primary>q", "app.close", NULL); gtk_application_add_accelerator (GTK_APPLICATION (application), "<Primary>w", "app.close", NULL); g_object_unref (builder); }
static void rotation_plugin_real_activate (PeasActivatable* base) { RotationPlugin * self; TotemObject* t = NULL; GObject* _tmp0_ = NULL; GObject* _tmp1_ = NULL; gchar* mrl = NULL; TotemObject* _tmp2_ = NULL; gchar* _tmp3_ = NULL; GMenu* menu = NULL; TotemObject* _tmp4_ = NULL; GMenu* _tmp5_ = NULL; GMenu* _tmp6_ = NULL; TotemObject* _tmp7_ = NULL; GtkWidget* _tmp8_ = NULL; BaconVideoWidget* _tmp9_ = NULL; GSimpleAction* _tmp10_ = NULL; GSimpleAction* _tmp11_ = NULL; TotemObject* _tmp12_ = NULL; GSimpleAction* _tmp13_ = NULL; TotemObject* _tmp14_ = NULL; GSimpleAction* _tmp15_ = NULL; GSimpleAction* _tmp16_ = NULL; TotemObject* _tmp17_ = NULL; GSimpleAction* _tmp18_ = NULL; TotemObject* _tmp19_ = NULL; GMenuItem* item = NULL; const gchar* _tmp20_ = NULL; GMenuItem* _tmp21_ = NULL; GMenuItem* _tmp22_ = NULL; GMenu* _tmp23_ = NULL; GMenuItem* _tmp24_ = NULL; const gchar* _tmp25_ = NULL; GMenuItem* _tmp26_ = NULL; GMenuItem* _tmp27_ = NULL; GMenu* _tmp28_ = NULL; GMenuItem* _tmp29_ = NULL; const gchar* _tmp30_ = NULL; const gchar* _tmp33_ = NULL; TotemObject* _tmp35_ = NULL; TotemObject* _tmp36_ = NULL; self = (RotationPlugin*) base; g_object_get ((PeasActivatable*) self, "object", &_tmp0_, NULL); _tmp1_ = _tmp0_; t = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, totem_object_get_type (), TotemObject); _tmp2_ = t; _tmp3_ = totem_object_get_current_mrl (_tmp2_); mrl = _tmp3_; _tmp4_ = t; _tmp5_ = totem_object_get_menu_section (_tmp4_, "rotation-placeholder"); _tmp6_ = _g_object_ref0 (_tmp5_); menu = _tmp6_; _tmp7_ = t; _tmp8_ = totem_object_get_video_widget (_tmp7_); _tmp9_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp8_, BACON_TYPE_VIDEO_WIDGET) ? ((BaconVideoWidget*) _tmp8_) : NULL; if (_tmp9_ == NULL) { _g_object_unref0 (_tmp8_); } _g_object_unref0 (self->priv->bvw); self->priv->bvw = _tmp9_; _tmp10_ = g_simple_action_new ("rotate-left", NULL); _g_object_unref0 (self->priv->rotate_left_action); self->priv->rotate_left_action = _tmp10_; _tmp11_ = self->priv->rotate_left_action; g_signal_connect_object (_tmp11_, "activate", (GCallback) _rotation_plugin_cb_rotate_left_g_simple_action_activate, self, 0); _tmp12_ = t; _tmp13_ = self->priv->rotate_left_action; g_action_map_add_action ((GActionMap*) _tmp12_, (GAction*) _tmp13_); _tmp14_ = t; gtk_application_add_accelerator ((GtkApplication*) _tmp14_, "<Primary><Shift>R", "app.rotate-left", NULL); _tmp15_ = g_simple_action_new ("rotate-right", NULL); _g_object_unref0 (self->priv->rotate_right_action); self->priv->rotate_right_action = _tmp15_; _tmp16_ = self->priv->rotate_right_action; g_signal_connect_object (_tmp16_, "activate", (GCallback) _rotation_plugin_cb_rotate_right_g_simple_action_activate, self, 0); _tmp17_ = t; _tmp18_ = self->priv->rotate_right_action; g_action_map_add_action ((GActionMap*) _tmp17_, (GAction*) _tmp18_); _tmp19_ = t; gtk_application_add_accelerator ((GtkApplication*) _tmp19_, "<Primary>R", "app.rotate-right", NULL); _tmp20_ = _ ("_Rotate ↷"); _tmp21_ = g_menu_item_new (_tmp20_, "app.rotate-right"); item = _tmp21_; _tmp22_ = item; g_menu_item_set_attribute (_tmp22_, "accel", "s", "<Primary>R", NULL); _tmp23_ = menu; _tmp24_ = item; g_menu_append_item (_tmp23_, _tmp24_); _tmp25_ = _ ("Rotate ↶"); _tmp26_ = g_menu_item_new (_tmp25_, "app.rotate-left"); _g_object_unref0 (item); item = _tmp26_; _tmp27_ = item; g_menu_item_set_attribute (_tmp27_, "accel", "s", "<Primary><Shift>R", NULL); _tmp28_ = menu; _tmp29_ = item; g_menu_append_item (_tmp28_, _tmp29_); _tmp30_ = mrl; if (_tmp30_ == NULL) { GSimpleAction* _tmp31_ = NULL; GSimpleAction* _tmp32_ = NULL; _tmp31_ = self->priv->rotate_right_action; g_simple_action_set_enabled (_tmp31_, FALSE); _tmp32_ = self->priv->rotate_left_action; g_simple_action_set_enabled (_tmp32_, FALSE); } _tmp33_ = mrl; if (_tmp33_ != NULL) { const gchar* _tmp34_ = NULL; _tmp34_ = mrl; rotation_plugin_try_restore_state (self, _tmp34_, ____lambda6__gasync_ready_callback, g_object_ref (self)); } _tmp35_ = t; g_signal_connect_object (_tmp35_, "file-closed", (GCallback) _rotation_plugin_cb_file_closed_totem_object_file_closed, self, 0); _tmp36_ = t; g_signal_connect_object (_tmp36_, "file-opened", (GCallback) _rotation_plugin_cb_file_opened_totem_object_file_opened, self, 0); _g_object_unref0 (item); _g_object_unref0 (menu); _g_free0 (mrl); _g_object_unref0 (t); }
static void impl_activate (PeasActivatable *plugin) { TotemMoviePropertiesPlugin *pi; TotemObject *totem; GtkWindow *parent; GMenu *menu; GMenuItem *item; pi = TOTEM_MOVIE_PROPERTIES_PLUGIN (plugin); totem = g_object_get_data (G_OBJECT (plugin), "object"); pi->priv->props = bacon_video_widget_properties_new (); gtk_widget_show (pi->priv->props); gtk_widget_set_sensitive (pi->priv->props, FALSE); parent = totem_object_get_main_window (totem); pi->priv->dialog = gtk_dialog_new_with_buttons (_("Properties"), parent, GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_USE_HEADER_BAR, NULL, GTK_RESPONSE_CLOSE, NULL); g_object_unref (parent); g_signal_connect (pi->priv->dialog, "delete-event", G_CALLBACK (gtk_widget_hide_on_delete), NULL); g_signal_connect (pi->priv->dialog, "response", G_CALLBACK (gtk_widget_hide_on_delete), NULL); gtk_container_add (GTK_CONTAINER (gtk_dialog_get_content_area (GTK_DIALOG (pi->priv->dialog))), pi->priv->props); /* Properties action */ pi->priv->props_action = g_simple_action_new ("properties", NULL); g_signal_connect (G_OBJECT (pi->priv->props_action), "activate", G_CALLBACK (properties_action_cb), pi); g_action_map_add_action (G_ACTION_MAP (totem), G_ACTION (pi->priv->props_action)); gtk_application_add_accelerator (GTK_APPLICATION (totem), "<Primary>p", "app.properties", NULL); /* FIXME: Handle GDK_KEY_View */ /* Install the menu */ menu = totem_object_get_menu_section (totem, "properties-placeholder"); item = g_menu_item_new (_("_Properties"), "app.properties"); g_menu_item_set_attribute (item, "accel", "s", "<Primary>p"); g_menu_append_item (G_MENU (menu), item); g_object_unref (item); g_signal_connect (G_OBJECT (totem), "file-opened", G_CALLBACK (totem_movie_properties_plugin_file_opened), plugin); g_signal_connect (G_OBJECT (totem), "file-closed", G_CALLBACK (totem_movie_properties_plugin_file_closed), plugin); g_signal_connect (G_OBJECT (totem), "metadata-updated", G_CALLBACK (totem_movie_properties_plugin_metadata_updated), plugin); pi->priv->handler_id_stream_length = g_signal_connect (G_OBJECT (totem), "notify::stream-length", G_CALLBACK (stream_length_notify_cb), plugin); }
static void photos_application_startup (GApplication *application) { PhotosApplication *self = PHOTOS_APPLICATION (application); PhotosApplicationPrivate *priv = self->priv; GError *error; GSimpleAction *action; GrlRegistry *registry; GtkSettings *settings; GVariant *state; G_APPLICATION_CLASS (photos_application_parent_class) ->startup (application); gegl_init (NULL, NULL); grl_init (NULL, NULL); registry = grl_registry_get_default (); error = NULL; if (!grl_registry_load_plugin_by_id (registry, "grl-flickr", &error)) { g_warning ("Unable to load Grilo's Flickr plugin: %s", error->message); g_error_free (error); } priv->settings = g_settings_new ("org.gnome.desktop.background"); priv->resource = photos_get_resource (); g_resources_register (priv->resource); settings = gtk_settings_get_default (); g_object_set (settings, "gtk-application-prefer-dark-theme", TRUE, NULL); priv->facebook_miner = gom_miner_proxy_new_for_bus_sync (G_BUS_TYPE_SESSION, G_DBUS_PROXY_FLAGS_NONE, "org.gnome.OnlineMiners.Facebook", "/org/gnome/OnlineMiners/Facebook", NULL, NULL); priv->flickr_miner = gom_miner_proxy_new_for_bus_sync (G_BUS_TYPE_SESSION, G_DBUS_PROXY_FLAGS_NONE, "org.gnome.OnlineMiners.Flickr", "/org/gnome/OnlineMiners/Flickr", NULL, NULL); priv->item_mngr = photos_item_manager_dup_singleton (); /* A dummy reference to keep it alive during the lifetime of the * application. */ priv->camera_cache = photos_camera_cache_dup_singleton (); priv->mode_cntrlr = photos_mode_controller_dup_singleton (); action = g_simple_action_new ("about", NULL); g_signal_connect_swapped (action, "activate", G_CALLBACK (photos_application_about), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (action)); g_object_unref (action); priv->fs_action = g_simple_action_new ("fullscreen", NULL); g_signal_connect_swapped (priv->fs_action, "activate", G_CALLBACK (photos_application_fullscreen), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->fs_action)); g_signal_connect_swapped (priv->mode_cntrlr, "can-fullscreen-changed", G_CALLBACK (photos_application_can_fullscreen_changed), self); state = g_variant_new ("b", FALSE); priv->gear_action = g_simple_action_new_stateful ("gear-menu", NULL, state); g_signal_connect (priv->gear_action, "activate", G_CALLBACK (photos_application_action_toggle), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->gear_action)); priv->open_action = g_simple_action_new ("open-current", NULL); g_signal_connect_swapped (priv->open_action, "activate", G_CALLBACK (photos_application_open_current), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->open_action)); priv->print_action = g_simple_action_new ("print-current", NULL); g_signal_connect_swapped (priv->print_action, "activate", G_CALLBACK (photos_application_print_current), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->print_action)); priv->properties_action = g_simple_action_new ("properties", NULL); g_signal_connect_swapped (priv->properties_action, "activate", G_CALLBACK (photos_application_properties), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->properties_action)); priv->remote_display_action = g_simple_action_new ("remote-display-current", NULL); g_signal_connect_swapped (priv->remote_display_action, "activate", G_CALLBACK (photos_application_remote_display_current), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->remote_display_action)); action = g_simple_action_new ("quit", NULL); g_signal_connect_swapped (action, "activate", G_CALLBACK (photos_application_quit), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (action)); g_object_unref (action); state = g_variant_new ("b", FALSE); priv->search_action = g_simple_action_new_stateful ("search", NULL, state); g_signal_connect (priv->search_action, "activate", G_CALLBACK (photos_application_action_toggle), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->search_action)); priv->sel_all_action = g_simple_action_new ("select-all", NULL); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->sel_all_action)); priv->sel_none_action = g_simple_action_new ("select-none", NULL); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->sel_none_action)); priv->set_bg_action = g_simple_action_new ("set-background", NULL); g_signal_connect_swapped (priv->set_bg_action, "activate", G_CALLBACK (photos_application_set_bg), self); g_action_map_add_action (G_ACTION_MAP (self), G_ACTION (priv->set_bg_action)); g_signal_connect_swapped (priv->mode_cntrlr, "window-mode-changed", G_CALLBACK (photos_application_window_mode_changed), self); photos_application_init_app_menu (self); gtk_application_add_accelerator (GTK_APPLICATION (self), "<Primary>q", "app.quit", NULL); gtk_application_add_accelerator (GTK_APPLICATION (self), "F11", "app.fullscreen", NULL); gtk_application_add_accelerator (GTK_APPLICATION (self), "F10", "app.gear-menu", NULL); gtk_application_add_accelerator (GTK_APPLICATION (self), "<Primary>p", "app.print-current", NULL); gtk_application_add_accelerator (GTK_APPLICATION (self), "<Primary>f", "app.search", NULL); gtk_application_add_accelerator (GTK_APPLICATION (self), "<Primary>a", "app.select-all", NULL); }
static void pt_app_startup (GApplication *app) { GtkBuilder *builder; GMenuModel *app_menu; G_APPLICATION_CLASS (pt_app_parent_class)->startup (app); g_action_map_add_action_entries (G_ACTION_MAP (app), app_actions, G_N_ELEMENTS (app_actions), app); #if GTK_CHECK_VERSION(3,12,0) const gchar *quit_accels[2] = { "<Primary>Q", NULL }; const gchar *open_accels[2] = { "<Primary>O", NULL }; const gchar *copy_accels[2] = { "<Primary>C", NULL }; const gchar *goto_accels[2] = { "<Primary>G", NULL }; const gchar *recent_accels[2] = { "<Primary>R", NULL }; const gchar *help_accels[2] = { "F1", NULL }; gtk_application_set_accels_for_action (GTK_APPLICATION (app), "app.quit", quit_accels); gtk_application_set_accels_for_action (GTK_APPLICATION (app), "app.open", open_accels); gtk_application_set_accels_for_action (GTK_APPLICATION (app), "app.recent", recent_accels); gtk_application_set_accels_for_action (GTK_APPLICATION (app), "win.copy", copy_accels); gtk_application_set_accels_for_action (GTK_APPLICATION (app), "win.goto", goto_accels); gtk_application_set_accels_for_action (GTK_APPLICATION (app), "app.help", help_accels); #else gtk_application_add_accelerator (GTK_APPLICATION (app), "<Primary>Q", "app.quit", NULL); gtk_application_add_accelerator (GTK_APPLICATION (app), "<Primary>O", "app.open", NULL); gtk_application_add_accelerator (GTK_APPLICATION (app), "<Primary>C", "win.copy", NULL); gtk_application_add_accelerator (GTK_APPLICATION (app), "<Primary>G", "win.goto", NULL); gtk_application_add_accelerator (GTK_APPLICATION (app), "<Primary>R", "app.recent", NULL); gtk_application_add_accelerator (GTK_APPLICATION (app), "F1", "app.help", NULL); #endif builder = gtk_builder_new_from_resource ("/org/gnome/parlatype/menus.ui"); app_menu = G_MENU_MODEL (gtk_builder_get_object (builder, "appmenu")); gtk_application_set_app_menu (GTK_APPLICATION (app), app_menu); g_object_unref (builder); }