[gnome-shell] shellDBus: Export ShowOSD() method on the bus



commit 90ea27c423fd6b4089ccb15057340d07518c785d
Author: Florian Müllner <fmuellner gnome org>
Date:   Sat Mar 2 16:22:49 2013 +0100

    shellDBus: Export ShowOSD() method on the bus
    
    Export a simple method to trigger an OSD popup. gnome-settings-daemon
    will use this to replace its own OSD UI.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=613543

 js/ui/shellDBus.js |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)
---
diff --git a/js/ui/shellDBus.js b/js/ui/shellDBus.js
index 6657b35..1fc0500 100644
--- a/js/ui/shellDBus.js
+++ b/js/ui/shellDBus.js
@@ -20,6 +20,9 @@ const GnomeShellIface = <interface name="org.gnome.Shell">
     <arg type="b" direction="out" name="success" />
     <arg type="s" direction="out" name="result" />
 </method>
+<method name="ShowOSD">
+    <arg type="a{sv}" direction="in" name="params"/>
+</method>
 <method name="GrabAccelerator">
     <arg type="s" direction="in" name="accelerator"/>
     <arg type="u" direction="in" name="flags"/>
@@ -111,6 +114,21 @@ const GnomeShell = new Lang.Class({
         return [success, returnValue];
     },
 
+    ShowOSD: function(params) {
+        for (let param in params)
+            params[param] = params[param].deep_unpack();
+
+        let icon = null;
+        if (params['icon'])
+            icon = Gio.Icon.new_for_string(params['icon']);
+
+        Main.osdWindow.setIcon(icon);
+        Main.osdWindow.setLabel(params['label']);
+        Main.osdWindow.setLevel(params['level']);
+
+        Main.osdWindow.show();
+    },
+
     GrabAcceleratorAsync: function(params, invocation) {
         let [accel, flags] = params;
         let sender = invocation.get_sender();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]