[SailfishDevel] Lipstick and xdg-open

r0kk3rz r0kk3rz at gmail.com
Thu Oct 22 21:09:41 UTC 2015


Hi Developers,

How does Lipstick handle xdg-open in cases when the app is already running?

When the app isn't running, I can currently open a file through xdg-open,
which opens the app and passes in the file url as a command line parameter.

I expected that upon subsequent xdg-open calls, it would also call the
program with command line parameter, which I could use to check for an open
instance on dbus, fire off a method call, and close again. Sounds easy, but
this doesn't seem to be the case.

If the app is already open, it comes into focus, and presumably needs some
kind of an interface to get the open args?


Watching dbus-monitor, i can see the following happen as i am trying to
open a file

method call sender=:1.394 -> dest=org.freedesktop.DBus serial=1
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=Hello
signal sender=:1.394 -> dest=(null destination) serial=2
path=/org/gtk/gio/DesktopAppInfo; interface=org.gtk.gio.DesktopAppInfo;
member=Launched

which has a parameter with my file url that i'm trying to open. And then
lipstick brings my app into focus with this straight after

method call sender=:1.390 -> dest=org.nemomobile.lipstick serial=3
path=/WindowModel; interface=local.Lipstick.WindowModel;
member=launchProcess
   string "/usr/bin/harbour-sirensong"

Any information about how this is supposed to work?

Regards,

Lewis Rockliffe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.sailfishos.org/pipermail/devel/attachments/20151022/5f59c2ca/attachment.html>


More information about the Devel mailing list