X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=shell%2Fev-daemon.c;h=99b2924261162fed05a9b0ac87109cf96667c5d7;hb=8f14b57fc379190e289d2f58bef46c1e5ef99925;hp=b136369dfe8142e07f359d5758097469ba11213a;hpb=8f4c30ebbebb9128caea62bfaa89c0f3aea7a416;p=evince.git diff --git a/shell/ev-daemon.c b/shell/ev-daemon.c index b136369d..99b29242 100644 --- a/shell/ev-daemon.c +++ b/shell/ev-daemon.c @@ -317,7 +317,26 @@ method_call_cb (GDBusConnection *connection, ev_daemon_maybe_start_killtimer (user_data); g_dbus_method_invocation_return_value (invocation, g_variant_new ("()")); - } + } else if (g_strcmp0 (method_name, "FindDocument") == 0) { + EvDoc *doc; + const gchar *uri; + + g_variant_get (parameters, "(&s)", &uri); + + LOG ("FindDocument '%s' \n", uri); + + doc = ev_daemon_find_doc (uri); + if (doc == NULL) { + LOG ("GetViewerForUri URI was not registered!\n"); + g_dbus_method_invocation_return_error_literal (invocation, + G_DBUS_ERROR, + G_DBUS_ERROR_INVALID_ARGS, + "URI not registered"); + return; + } + + g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", doc->dbus_name)); + } } static const char introspection_xml[] = @@ -330,6 +349,10 @@ static const char introspection_xml[] = "" "" "" + "" + "" + "" + "" "" "";