summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorStefano Karapetsas <[email protected]>2013-02-23 22:02:09 +0100
committerStefano Karapetsas <[email protected]>2013-02-23 22:02:09 +0100
commitd1715e4fdef385cea4eda116090311dcff9fcd18 (patch)
tree1c86cab85e0e254924edb953560cac3a94626521 /data
parente99cd96502845cce688ee4f545eb4a4f2edfb23a (diff)
downloadcaja-d1715e4fdef385cea4eda116090311dcff9fcd18.tar.bz2
caja-d1715e4fdef385cea4eda116090311dcff9fcd18.tar.xz
Add support for freedesktop.org File Manager DBus Interface
http://www.freedesktop.org/wiki/Specifications/file-manager-interface Most of code is adapted from Nautilus: http://git.gnome.org/browse/nautilus/tree/src/nautilus-freedesktop-dbus.c Closes https://github.com/mate-desktop/mate-file-manager/issues/3
Diffstat (limited to 'data')
-rw-r--r--data/Makefile.am9
-rw-r--r--data/freedesktop-dbus-interfaces.xml36
-rw-r--r--data/org.mate.freedesktop.FileManager1.service.in3
3 files changed, 48 insertions, 0 deletions
diff --git a/data/Makefile.am b/data/Makefile.am
index 0e8fb977..bee031c1 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -19,6 +19,14 @@ desktop_in_files = \
mimedir = $(datadir)/mime/packages
mime_DATA = $(xml_files)
+servicedir = $(datadir)/dbus-1/services
+service_DATA = $(service_in_files:.service.in=.service)
+service_in_files = \
+ org.mate.freedesktop.FileManager1.service.in
+
+org.mate.freedesktop.FileManager1.service: org.mate.freedesktop.FileManager1.service.in Makefile
+ $(AM_V_GEN) sed -e "s|\@bindir\@|$(bindir)|" $< > $@
+
cajadatadir = $(datadir)/caja
cajadata_DATA = \
@@ -30,6 +38,7 @@ cajadata_DATA = \
EXTRA_DIST = $(cajadata_DATA) \
caja.desktop \
caja.desktop.in \
+ freedesktop-dbus-interfaces.xml \
$(xml_in_files) \
$(desktop_in_files) \
$(NULL)
diff --git a/data/freedesktop-dbus-interfaces.xml b/data/freedesktop-dbus-interfaces.xml
new file mode 100644
index 00000000..ab135b6a
--- /dev/null
+++ b/data/freedesktop-dbus-interfaces.xml
@@ -0,0 +1,36 @@
+<!DOCTYPE node PUBLIC
+"-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
+
+<!--
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU General Public
+ License along with this program; if not, write to the
+ Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+-->
+<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
+ <interface name='org.freedesktop.FileManager1'>
+ <method name='ShowFolders'>
+ <arg type='as' name='URIs' direction='in'/>
+ <arg type='s' name='StartupId' direction='in'/>
+ </method>
+ <method name='ShowItems'>
+ <arg type='as' name='URIs' direction='in'/>
+ <arg type='s' name='StartupId' direction='in'/>
+ </method>
+ <method name='ShowItemProperties'>
+ <arg type='as' name='URIs' direction='in'/>
+ <arg type='s' name='StartupId' direction='in'/>
+ </method>
+ </interface>
+</node>
diff --git a/data/org.mate.freedesktop.FileManager1.service.in b/data/org.mate.freedesktop.FileManager1.service.in
new file mode 100644
index 00000000..801361b6
--- /dev/null
+++ b/data/org.mate.freedesktop.FileManager1.service.in
@@ -0,0 +1,3 @@
+[D-BUS Service]
+Name=org.freedesktop.FileManager1
+Exec=@bindir@/caja --no-default-window