diff options
| author | Tavmjong Bah <tavmjong@free.fr> | 2019-03-15 14:21:30 +0000 |
|---|---|---|
| committer | Tavmjong Bah <tavmjong@free.fr> | 2019-03-15 14:21:30 +0000 |
| commit | 1602477dfd4371a17639b0b6e4f59f5a5ea9565a (patch) | |
| tree | 6f4561f58d15f8b6608897e232b37658143d46e6 /src/extension/dbus/document-interface.cpp | |
| parent | Improve deb generation and install scripts (diff) | |
| download | inkscape-1602477dfd4371a17639b0b6e4f59f5a5ea9565a.tar.gz inkscape-1602477dfd4371a17639b0b6e4f59f5a5ea9565a.zip | |
Make InkscapeApplication responsible for managing documents and windows.
Any change from previous behavior is a bug.
Diffstat (limited to 'src/extension/dbus/document-interface.cpp')
| -rw-r--r-- | src/extension/dbus/document-interface.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/extension/dbus/document-interface.cpp b/src/extension/dbus/document-interface.cpp index bb888d4e2..a22585cb4 100644 --- a/src/extension/dbus/document-interface.cpp +++ b/src/extension/dbus/document-interface.cpp @@ -20,9 +20,9 @@ #include <string.h> #include <dbus/dbus-glib.h> -#include <dbus/dbus-glib.h> //#include "2geom/svg-path-parser.h" //get_node_coordinates +#include "inkscape-application.h" // create_window() #include "application-interface.h" #include "desktop-style.h" //sp_desktop_get_style @@ -930,12 +930,21 @@ document_interface_save (DocumentInterface *doc_interface, GError **error) gboolean document_interface_load(DocumentInterface *doc_interface, gchar *filename, GError ** /*error*/) { + if (!filename) { + return false; + } + SPDesktop *desk = doc_interface->target.getDesktop(); if (desk) { desktop_ensure_active(desk); } - const Glib::ustring file(filename); - sp_file_open(file, NULL, TRUE, TRUE); + + Glib::RefPtr<Gio::File> file = Gio::File::create_for_path(filename); + + ConcreteInkscapeApplication<Gtk::Application>* app = &(ConcreteInkscapeApplication<Gtk::Application>::get_instance()); + + app->create_window(file); + if (doc_interface->updates) { Inkscape::DocumentUndo::done(doc_interface->target.getDocument(), SP_VERB_FILE_OPEN, "Opened File"); } |
