summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid King <davidk@gnome.org>2013-09-29 10:33:47 +0100
committerDavid King <davidk@gnome.org>2013-09-30 11:27:19 +0100
commit777c1a0ebd3e49238c024ec727af38c982f5c458 (patch)
tree2f34f2e7a12868e6eb46d8339c805299da10bb5f
parent1dd2f4d03fc1d2ced008dd313b833bb08cf3f580 (diff)
downloadgnome-logs-777c1a0ebd3e49238c024ec727af38c982f5c458.tar.gz
Add new window action to application menu
-rw-r--r--data/appmenu.ui7
-rw-r--r--src/gl-application.c15
2 files changed, 22 insertions, 0 deletions
diff --git a/data/appmenu.ui b/data/appmenu.ui
index ff5fafd..49602b8 100644
--- a/data/appmenu.ui
+++ b/data/appmenu.ui
@@ -2,6 +2,13 @@
<menu id='appmenu'>
<section>
<item>
+ <attribute name="accel">&lt;Primary&gt;n</attribute>
+ <attribute name="label" translatable="yes">_New Window</attribute>
+ <attribute name="action">app.new-window</attribute>
+ </item>
+ </section>
+ <section>
+ <item>
<attribute name="label" translatable="yes">_About</attribute>
<attribute name="action">app.about</attribute>
</item>
diff --git a/src/gl-application.c b/src/gl-application.c
index 294f9d8..501fc3a 100644
--- a/src/gl-application.c
+++ b/src/gl-application.c
@@ -29,6 +29,20 @@
G_DEFINE_TYPE (GlApplication, gl_application, GTK_TYPE_APPLICATION)
static void
+on_new_window (GSimpleAction *action,
+ GVariant *parameter,
+ gpointer user_data)
+{
+ GtkApplication *application;
+ GtkWidget *window;
+
+ application = GTK_APPLICATION (user_data);
+
+ window = gl_window_new (GTK_APPLICATION (application));
+ gtk_widget_show (window);
+}
+
+static void
on_about (GSimpleAction *action,
GVariant *parameter,
gpointer user_data)
@@ -64,6 +78,7 @@ on_quit (GSimpleAction *action,
}
static GActionEntry actions[] = {
+ { "new-window", on_new_window },
{ "about", on_about },
{ "quit", on_quit }
};