[sushi] application: revert back to using GJS utilities for GDBus
- From: Cosimo Cecchi <cosimoc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [sushi] application: revert back to using GJS utilities for GDBus
- Date: Fri, 21 Jun 2019 17:43:52 +0000 (UTC)
commit 4ee6e40e179253ea8bf13e3ae45500bbc6ef89f1
Author: Cosimo Cecchi <cosimoc gnome org>
Date: Fri Jun 21 09:49:23 2019 -0700
application: revert back to using GJS utilities for GDBus
At the end of the day this is actually a lot more convenient in JS
than the gdbus-codegen counterpart. Revert back to using it.
src/meson.build | 29 ++++------------------
src/org.gnome.NautilusPreviewer.data.gresource.xml | 6 +++++
src/ui/application.js | 21 +++++++---------
src/ui/main.js | 1 -
4 files changed, 20 insertions(+), 37 deletions(-)
---
diff --git a/src/meson.build b/src/meson.build
index 18faf73..5222ee8 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -11,31 +11,12 @@ sushi_src_resources = gnome.compile_resources(
install_dir: pkgdatadir,
)
-nautilus_previewer_dbus_sources = gnome.gdbus_codegen(
- 'nautilus-previewer-dbus',
- sources: 'org.gnome.NautilusPreviewer.xml',
- interface_prefix : 'org.gnome.',
- annotations: ['org.gnome.NautilusPreviewer', 'org.gtk.GDBus.C.Name', 'NautilusPreviewerDBus']
-)
-
-nautilus_previewer_dbus_lib = shared_library(
- 'nautilus-previewer-dbus-1.0',
- nautilus_previewer_dbus_sources,
- version: meson.project_version(),
- dependencies: [gio_unix_dep],
- install: true,
- install_dir: pkglibdir
-)
-
-gnome.generate_gir(
- nautilus_previewer_dbus_lib,
- sources: nautilus_previewer_dbus_sources,
- namespace: 'NautilusPreviewerDBus',
- nsversion: '1.0',
- includes: ['Gio-2.0'],
+sushi_data_resources = gnome.compile_resources(
+ 'org.gnome.NautilusPreviewer.data',
+ 'org.gnome.NautilusPreviewer.data.gresource.xml',
+ gresource_bundle: true,
install: true,
- install_dir_gir: join_paths(pkgdatadir, 'gir-1.0'),
- install_dir_typelib: join_paths(pkglibdir, 'girepository-1.0')
+ install_dir: pkgdatadir,
)
conf = configuration_data()
diff --git a/src/org.gnome.NautilusPreviewer.data.gresource.xml
b/src/org.gnome.NautilusPreviewer.data.gresource.xml
new file mode 100644
index 0000000..e4ef400
--- /dev/null
+++ b/src/org.gnome.NautilusPreviewer.data.gresource.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<gresources>
+ <gresource prefix="/org/gnome/NautilusPreviewer">
+ <file>org.gnome.NautilusPreviewer.xml</file>
+ </gresource>
+</gresources>
diff --git a/src/ui/application.js b/src/ui/application.js
index 896d493..a867384 100644
--- a/src/ui/application.js
+++ b/src/ui/application.js
@@ -23,7 +23,9 @@
*
*/
-const {Gdk, Gio, GObject, Gtk, NautilusPreviewerDBus} = imports.gi;
+const {Gdk, Gio, GObject, Gtk} = imports.gi;
+
+const ByteArray = imports.byteArray;
const MainWindow = imports.ui.mainWindow;
@@ -35,9 +37,10 @@ var Application = GObject.registerClass(class Application extends Gtk.Applicatio
}
vfunc_dbus_register(connection, path) {
- this._skeleton = new NautilusPreviewerDBus.Skeleton();
- this._skeleton.connect('handle-close', this._close.bind(this));
- this._skeleton.connect('handle-show-file', this._showFile.bind(this));
+ let bytes = Gio.resources_lookup_data(
+ '/org/gnome/NautilusPreviewer/org.gnome.NautilusPreviewer.xml', 0);
+ this._skeleton = Gio.DBusExportedObject.wrapJSObject(
+ ByteArray.toString(bytes.toArray()), this);
try {
this._skeleton.export(connection, path);
@@ -73,15 +76,12 @@ var Application = GObject.registerClass(class Application extends Gtk.Applicatio
settings.gtk_application_prefer_dark_theme = true;
}
- _close(skel, invocation) {
+ Close() {
if (this._mainWindow)
this._mainWindow.destroy();
-
- invocation.return_value(null);
- return true;
}
- _showFile(skel, invocation, uri, xid, closeIfAlreadyShown) {
+ ShowFile(uri, xid, closeIfAlreadyShown) {
this._ensureMainWindow();
let file = Gio.file_new_for_uri(uri);
@@ -93,8 +93,5 @@ var Application = GObject.registerClass(class Application extends Gtk.Applicatio
this._mainWindow.setParent(xid);
this._mainWindow.setFile(file);
}
-
- invocation.return_value(null);
- return true;
}
});
diff --git a/src/ui/main.js b/src/ui/main.js
index 91e8174..5fbd5bf 100644
--- a/src/ui/main.js
+++ b/src/ui/main.js
@@ -37,7 +37,6 @@ pkg.require({
GstTag: '1.0',
Gtk: '3.0',
GtkSource: '4',
- NautilusPreviewerDBus: '1.0',
Pango: '1.0',
Soup: '2.4',
Sushi: '1.0',
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]