X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=shell%2Fev-window.c;h=e1f223e727d5c0b1a2bf28180156d83a704a245d;hb=a3e68aa381fd1566049a50b26b59ce8e8612f9f7;hp=89d18d997863c792ca245cf7ebd2140f681f0b63;hpb=cc32316e01769dbd918c69a57dd8f29fa80b24e3;p=evince.git
diff --git a/shell/ev-window.c b/shell/ev-window.c
index 89d18d99..e1f223e7 100644
--- a/shell/ev-window.c
+++ b/shell/ev-window.c
@@ -343,6 +343,7 @@ static void ev_window_media_player_key_pressed (EvWindow *windo
static void ev_window_update_max_min_scale (EvWindow *window);
#ifdef ENABLE_DBUS
static void ev_window_emit_closed (EvWindow *window);
+static void ev_window_emit_doc_loaded (EvWindow *window);
#endif
static guint ev_window_n_copies = 0;
@@ -1529,6 +1530,7 @@ ev_window_load_job_cb (EvJob *job,
if (!ev_job_is_failed (job)) {
ev_document_model_set_document (ev_window->priv->model, document);
+ ev_window_emit_doc_loaded (ev_window);
setup_chrome_from_metadata (ev_window);
update_chrome_actions (ev_window);
setup_document_from_metadata (ev_window);
@@ -6596,6 +6598,35 @@ ev_window_emit_closed (EvWindow *window)
g_dbus_connection_flush_sync (connection, NULL, NULL);
}
+static void
+ev_window_emit_doc_loaded (EvWindow *window)
+{
+ GDBusConnection *connection;
+ GError *error = NULL;
+
+ if (window->priv->dbus_object_id <= 0)
+ return;
+
+ connection = ev_application_get_dbus_connection (EV_APP);
+ if (!connection)
+ return;
+
+ g_dbus_connection_emit_signal (connection,
+ NULL,
+ window->priv->dbus_object_path,
+ EV_WINDOW_DBUS_INTERFACE,
+ "DocumentLoaded",
+ g_variant_new("(s)", window->priv->uri),
+ &error);
+ if (error) {
+ g_printerr ("Failed to emit DBus signal DocumentLoaded: %s\n",
+ error->message);
+ g_error_free (error);
+
+ return;
+ }
+}
+
static void
method_call_cb (GDBusConnection *connection,
const gchar *sender,
@@ -6634,6 +6665,9 @@ static const char introspection_xml[] =
""
""
""
+ ""
+ ""
+ ""
""
"";