diff --git a/.gitignore b/.gitignore index fb2ec90a2..35f496019 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,7 @@ config.log config.status config configure +data/50-gnome-shell-*.xml data/gnome-shell.desktop data/gnome-shell.desktop.in data/gnome-shell-extension-prefs.desktop diff --git a/configure.ac b/configure.ac index 2f66dea8a..a8f3cd5b0 100644 --- a/configure.ac +++ b/configure.ac @@ -106,6 +106,9 @@ PKG_CHECK_MODULES(SHELL_HOTPLUG_SNIFFER, gio-2.0 gdk-pixbuf-2.0) PKG_CHECK_MODULES(BROWSER_PLUGIN, gio-2.0 >= $GIO_MIN_VERSION json-glib-1.0 >= 0.13.2) +GNOME_KEYBINDINGS_KEYSDIR=`$PKG_CONFIG --variable keysdir gnome-keybindings` +AC_SUBST([GNOME_KEYBINDINGS_KEYSDIR]) + GOBJECT_INTROSPECTION_CHECK([$GOBJECT_INTROSPECTION_MIN_VERSION]) saved_CFLAGS=$CFLAGS diff --git a/data/50-gnome-shell-screenshot.xml.in b/data/50-gnome-shell-screenshot.xml.in new file mode 100644 index 000000000..a8cba7e60 --- /dev/null +++ b/data/50-gnome-shell-screenshot.xml.in @@ -0,0 +1,12 @@ + + + + + + + diff --git a/data/50-gnome-shell-system.xml.in b/data/50-gnome-shell-system.xml.in new file mode 100644 index 000000000..4c7e9929b --- /dev/null +++ b/data/50-gnome-shell-system.xml.in @@ -0,0 +1,12 @@ + + + + + + + diff --git a/data/Makefile.am b/data/Makefile.am index 055ad3ae2..6858a4aa0 100644 --- a/data/Makefile.am +++ b/data/Makefile.am @@ -47,6 +47,13 @@ dist_theme_DATA = \ theme/ws-switch-arrow-up.png \ theme/ws-switch-arrow-down.png +keysdir = @GNOME_KEYBINDINGS_KEYSDIR@ +keys_in_files = \ + 50-gnome-shell-screenshot.xml.in \ + 50-gnome-shell-system.xml.in \ + $(NULL) +keys_DATA = $(keys_in_files:.xml.in=.xml) + gsettings_SCHEMAS = org.gnome.shell.gschema.xml @INTLTOOL_XML_NOMERGE_RULE@ @@ -73,12 +80,14 @@ EXTRA_DIST = \ $(introspection_DATA) \ $(menu_DATA) \ $(convert_DATA) \ + $(keys_in_files) \ org.gnome.shell.gschema.xml.in.in CLEANFILES = \ gnome-shell.desktop.in \ gnome-shell-extension-prefs.in \ $(desktop_DATA) \ + $(keys_DATA) \ $(gsettings_SCHEMAS) \ gschemas.compiled \ org.gnome.shell.gschema.valid \ diff --git a/po/POTFILES.in b/po/POTFILES.in index b1a940ca0..002e74c3f 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,3 +1,5 @@ +data/50-gnome-shell-screenshot.xml.in +data/50-gnome-shell-system.xml.in data/gnome-shell.desktop.in.in data/gnome-shell-extension-prefs.desktop.in.in data/org.gnome.shell.gschema.xml.in.in diff --git a/src/main.c b/src/main.c index ad4fb3ac5..451025d76 100644 --- a/src/main.c +++ b/src/main.c @@ -37,6 +37,9 @@ extern GType gnome_shell_plugin_get_type (void); #define OVERRIDES_SCHEMA "org.gnome.shell.overrides" +#define WM_NAME "GNOME Shell" +#define GNOME_WM_KEYBINDINGS "Metacity,Mutter,GNOME Shell" + static gboolean is_gdm_mode = FALSE; static char *session_mode = NULL; @@ -374,6 +377,9 @@ main (int argc, char **argv) meta_plugin_manager_set_plugin_type (gnome_shell_plugin_get_type ()); + meta_set_wm_name (WM_NAME); + meta_set_gnome_wm_keybindings (GNOME_WM_KEYBINDINGS); + /* Prevent meta_init() from causing gtk to load gail and at-bridge */ g_setenv ("NO_AT_BRIDGE", "1", TRUE); meta_init ();