diff --git a/js/ui/shellDBus.js b/js/ui/shellDBus.js index c67028740..ee41491c7 100644 --- a/js/ui/shellDBus.js +++ b/js/ui/shellDBus.js @@ -2,6 +2,7 @@ const DBus = imports.dbus; +const ExtensionSystem = imports.ui.extensionSystem; const Main = imports.ui.main; const GnomeShellIface = { @@ -9,7 +10,15 @@ const GnomeShellIface = { methods: [{ name: 'Eval', inSignature: 's', outSignature: 'bs' - } + }, + { name: 'ListExtensions', + inSignature: '', + outSignature: 'a{sa{sv}}' + }, + { name: 'GetExtensionInfo', + inSignature: 's', + outSignature: 'a{sv}' + }, ], signals: [], properties: [{ name: 'OverviewActive', @@ -56,6 +65,14 @@ GnomeShell.prototype = { return [success, returnValue]; }, + ListExtensions: function() { + return ExtensionSystem.extensionMeta; + }, + + GetExtensionInfo: function(uuid) { + return ExtensionSystem.extensionMeta[uuid] || {}; + }, + get OverviewActive() { return Main.overview.visible; },