[gnome-screenshot] Make DBus-activatable
- From: Cosimo Cecchi <cosimoc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-screenshot] Make DBus-activatable
- Date: Wed, 9 Apr 2014 19:14:34 +0000 (UTC)
commit 5b214f314f478542ea48a5ad4be71f38b6315d7d
Author: Matthias Clasen <mclasen redhat com>
Date: Tue Apr 8 23:03:54 2014 -0400
Make DBus-activatable
This conmmit installs a service file, renames the desktop file
to follow the bus name, and adds the DBusActivatable key to the
desktop file, following
https://wiki.gnome.org/HowDoI/DBusApplicationLaunching
https://bugzilla.gnome.org/show_bug.cgi?id=727882
po/POTFILES.in | 2 +-
src/Makefile.am | 15 +++++++++++++--
....desktop.in => org.gnome.Screenshot.desktop.in} | 1 +
src/screenshot-application.c | 7 ++++---
4 files changed, 19 insertions(+), 6 deletions(-)
---
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 4253df6..456dd2b 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,7 +1,7 @@
# List of source files containing translatable strings.
# Please keep this file sorted alphabetically.
src/gnome-screenshot.c
-src/gnome-screenshot.desktop.in
+src/org.gnome.Screenshot.desktop.in
[type: gettext/glade]src/screenshot-app-menu.ui
[type: gettext/glade]src/screenshot-dialog.ui
src/org.gnome.gnome-screenshot.gschema.xml.in
diff --git a/src/Makefile.am b/src/Makefile.am
index e375285..50e0d3d 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -56,11 +56,22 @@ gnome_screenshot_LDADD = \
-lm \
$(NULL)
-gnome_screenshotdir = $(datadir)/applications
-gnome_screenshot_in_files = gnome-screenshot.desktop.in
+gnome_screenshotdir = $(datadir)/applications
+gnome_screenshot_in_files = org.gnome.Screenshot.desktop.in
gnome_screenshot_DATA = $(gnome_screenshot_in_files:.desktop.in=.desktop)
@INTLTOOL_DESKTOP_RULE@
+dbusservicedir = $(datadir)/dbus-1/services
+dbusservice_DATA = org.gnome.Screenshot.service
+
+org.gnome.Screenshot.service: Makefile
+ $(AM_V_GEN) (echo '[D-BUS Service]'; \
+ echo 'Name=org.gnome.Screenshot'; \
+ echo 'Exec=${bindir}/gnome-screenshot --gapplication-service') > $ tmp && \
+ mv $ tmp $@
+
+CLEANFILES = $(dbusservice_DATA)
+
man_MANS = gnome-screenshot.1
gsettingsschema_in_files = org.gnome.gnome-screenshot.gschema.xml.in
diff --git a/src/gnome-screenshot.desktop.in b/src/org.gnome.Screenshot.desktop.in
similarity index 96%
rename from src/gnome-screenshot.desktop.in
rename to src/org.gnome.Screenshot.desktop.in
index aeef124..c9efd5f 100644
--- a/src/gnome-screenshot.desktop.in
+++ b/src/org.gnome.Screenshot.desktop.in
@@ -13,6 +13,7 @@ X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-utils
X-GNOME-Bugzilla-Component=screenshot
Actions=Screen;Window;
+DBusActivatable=true
[Desktop Action Screen]
_Name=Take a Screenshot of the Whole Screen
diff --git a/src/screenshot-application.c b/src/screenshot-application.c
index 897f214..0295d6c 100644
--- a/src/screenshot-application.c
+++ b/src/screenshot-application.c
@@ -656,9 +656,10 @@ screenshot_application_handle_local_options (GApplication *app,
}
static gint
-screenshot_application_command_line (GApplication *self,
+screenshot_application_command_line (GApplication *app,
GApplicationCommandLine *command_line)
{
+ ScreenshotApplication *self = SCREENSHOT_APPLICATION (app);
gboolean clipboard_arg = FALSE;
gboolean window_arg = FALSE;
gboolean area_arg = FALSE;
@@ -705,9 +706,9 @@ screenshot_application_command_line (GApplication *self,
/* interactive mode: trigger the dialog and wait for the response */
if (screenshot_config->interactive)
- screenshot_show_interactive_dialog (SCREENSHOT_APPLICATION (self));
+ screenshot_show_interactive_dialog (self);
else
- screenshot_start (SCREENSHOT_APPLICATION (self));
+ screenshot_start (self);
out:
return exit_status;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]