Как я могу получить numlock уведомление как уведомление об объеме в Gnome 3?

В GNOME 3 аудио уведомление об изменении похоже на это:

Я могу получить Caps Lock или значок Num Lock как она?

2
задан 5 June 2017 в 17:21

1 ответ

Для отображения уведомления как объем один в Gnome 3, можно использовать gdbus (dbus-send не будет работать, потому что это не может передать параметры функции типа a{sv} (массив dict {string:variant}))

С gdbus уведомление об объеме похоже на это:

gdbus call --session --dest 'org.gnome.Shell' --object-path '/org/gnome/Shell' --method 'org.gnome.Shell.ShowOSD' "{'icon': <'audio-volume-high-symbolic'>, 'label': <'Line-Out'>, 'level': <90>}"

Таким образом для чего-то как Numlock на уведомлении Вы использовали бы:

gdbus call --session --dest 'org.gnome.Shell' --object-path '/org/gnome/Shell' --method 'org.gnome.Shell.ShowOSD' "{'icon': <'input-dialpad-symbolic'>, 'label': <'Numlock On'>}"

Имена значка являются названиями файлов значков от знаковой темы, используемой без расширения. Темы значков расположены в /usr/share/icons/ или ~/.icons/. Таким образом для /usr/share/icons/Adwaita/scalable/devices/input-dialpad-symbolic.svg Вы использовали бы 'input-dialpad-symbolic'. Можно также указать значок, он - полный путь как '/home/user/.icons/Icon-Theme-Name/devices/symbolic/input-dialpad-symbolic.svg' если это не находится в используемой знаковой теме.

Путем я обнаружил, что это путем рассмотрения dbus вызовов при помощи dbus-monitor. Когда я понизил объем, он распечатал это:

method call time=1563905341.664155 sender=:1.34 -> destination=:1.8 serial=149 path=/org/gnome/Shell; interface=org.gnome.Shell; member=ShowOSD
array [
  dict entry(
     string "icon"
     variant             string "audio-volume-high-symbolic"
  )
  dict entry(
     string "label"
     variant             string "Line Out"
  )
  dict entry(
     string "level"
     variant             int32 94
  )
]

destination=:1.8 кажется, совпадает с org.gnome.Shell так оба --dest ':1.8' и --dest 'org.gnome.Shell' работа.

2
ответ дан 2 December 2019 в 03:39

Другие вопросы по тегам:

Похожие вопросы: