Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Alexander_Naumov:SLE12
gnome-shell-extensions
places-menu-use-nautilus-for-links.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File places-menu-use-nautilus-for-links.patch of Package gnome-shell-extensions
Index: extensions/places-menu/placeDisplay.js =================================================================== --- extensions/places-menu/placeDisplay.js.orig 2014-09-04 18:37:40.159443981 +0800 +++ extensions/places-menu/placeDisplay.js 2014-09-10 16:00:44.285265280 +0800 @@ -23,6 +23,16 @@ const Hostname1Iface = <interface name=" </interface>; const Hostname1 = Gio.DBusProxy.makeProxyWrapper(Hostname1Iface); +const FileManager1Iface = <interface name="org.freedesktop.FileManager1"> +<method name='ShowFolders'> +<arg type='as' name='URIs' direction='in'/> +<arg type='s' name='StartupId' direction='in'/> +</method> +</interface>; + +const FileManager1 = Gio.DBusProxy.makeProxyWrapper(FileManager1Iface); + + const PlaceInfo = new Lang.Class({ Name: 'PlaceInfo', @@ -31,9 +41,16 @@ const PlaceInfo = new Lang.Class({ this.file = file; this.name = name || this._getFileName(); this.icon = icon ? new Gio.ThemedIcon({ name: icon }) : this.getIcon(); + + // a proxy handler to file manager, note the naming to be different from + // "_proxy" which RootInfo uses. + this._FMProxy = new FileManager1(Gio.DBus.session, + 'org.freedesktop.FileManager1', + '/org/freedesktop/FileManager1'); }, destroy: function() { + this._FMProxy.run_dispose(); }, isRemovable: function() { @@ -45,8 +62,8 @@ const PlaceInfo = new Lang.Class({ launchContext.set_timestamp(timestamp); try { - Gio.AppInfo.launch_default_for_uri(this.file.get_uri(), - launchContext); + this._FMProxy.ShowFoldersRemote([this.file.get_uri()], ""); + } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.NOT_MOUNTED)) { this.file.mount_enclosing_volume(0, null, null, function(file, result) { file.mount_enclosing_volume_finish(result);
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor