summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common/.emacs.d/init.el34
1 files changed, 30 insertions, 4 deletions
diff --git a/common/.emacs.d/init.el b/common/.emacs.d/init.el
index 6628184..51dd64f 100644
--- a/common/.emacs.d/init.el
+++ b/common/.emacs.d/init.el
@@ -4002,13 +4002,39 @@ instead."
(winner-mode))
(progn ;; mobile-device-mode
- (defun osk-toggle ()
+ (defun onboard--call-method (method)
+ (dbus-call-method
+ :session
+ "org.onboard.Onboard"
+ "/org/onboard/Onboard/Keyboard"
+ "org.onboard.Onboard.Keyboard"
+ method))
+
+ (defun onboard--query-property (prop)
+ (dbus-get-property
+ :session
+ "org.onboard.Onboard"
+ "/org/onboard/Onboard/Keyboard"
+ "org.onboard.Onboard.Keyboard"
+ prop))
+
+ (defun onboard-visible-p ()
+ (onboard--query-property "Visible"))
+
+ (defun onboard-toggle ()
(interactive)
- (call-process-shell-command
- "qdbus org.onboard.Onboard /org/onboard/Onboard/Keyboard org.onboard.Onboard.Keyboard.ToggleVisible"))
+ (onboard--call-method "ToggleVisible"))
+
+ (defun onboard-hide ()
+ (interactive)
+ (onboard--call-method "Hide"))
+
+ (defun onboard-show ()
+ (interactive)
+ (onboard--call-method "Show"))
(defvar-keymap mobile-device-mode-map
- "<XF86PowerOff> <XF86PowerOff>" 'osk-toggle
+ "<XF86PowerOff> <XF86PowerOff>" 'onboard-toggle
"<XF86PowerOff> <XF86AudioRaiseVolume>" 'mobile-device-volume-mode
"<XF86PowerOff> <XF86AudioLowerVolume>" 'mobile-device-navigate-mode
"<XF86AudioLowerVolume> <XF86PowerOff>" 'suspend