Infelizmente -
gdbus call --session --dest com.canonical.indicator.application \
--object-path /com/canonical/indicator/application/service \
--method com.canonical.indicator.application.service.GetApplications
não enumera exaustivamente todos os ícones dos indicadores ou seus subindicadores. O menu MI (indicador de mensagens) interage com vários sub-indicadores de comunicação aps. não estão listados. Também faltam informações sobre o indicador de potência, volume e relógio.
qdbus
é mais simples de usar e d-feet
fornece uma GUI para fazer o mesmo, além de listar facilmente os valores das propriedades.
Use qdbus
da seguinte forma:
qdbus --literal | sort
clique triplo para selecionar com.canonical.indicator.application
w / nl na saída
...
:1.97
:1.98
ca.desrt.dconf
com.canonical.AppMenu.Registrar
com.canonical.hud
com.canonical.indicator.application
com.canonical.indicator.datetime
com.canonical.indicator.messages
com.canonical.indicator.printers
com.canonical.indicator.session
com.canonical.indicator.sound
com.canonical.Unity
...
Componha o próximo comando com o comando bash
history
uparrow repeat (exclua o | sort
para deixar apenas qdbus --literal
) e pressione o botão do meio do mouse para completar o comando:
qdbus --literal com.canonical.indicator.application
Clique três vezes na última linha
/
/org
/org/ayatana
/org/ayatana/indicator
/org/ayatana/indicator/service
/com
/com/canonical
/com/canonical/indicator
/com/canonical/indicator/application
/com/canonical/indicator/application/service
Pressione o histórico de repetição, a barra de espaço e o botão do meio do mouse para compor:
qdbus --literal com.canonical.indicator.application /com/canonical/indicator/application/service
Clique duas vezes para selecionar o método desejado na saída e pressione uparrow, barra de espaço e botão do meio do mouse para criar o comando e pressione enter para executá-lo. (\ continuação de linha é adicionada para maior clareza neste exemplo):
qdbus --literal com.canonical.indicator.application \
/com/canonical/indicator/application/service \
com.canonical.indicator.application.service.GetApplications
Isso gera somente as informações do indicador BT e NM (bem impressas aqui para exposição)
[Argument: a(sisossssss)
{[Argument: (sisossssss)
"bluetooth-active",
0,
":1.155",
[ObjectPath: /org/ayatana/NotificationItem/bluetooth_manager/Menu],
"",
"",
"",
"Bluetooth: On",
"bluetooth-manager",
"Bluetooth"],
[Argument: (sisossssss)
"nm-signal-75",
1,
":1.21",
[ObjectPath: /org/ayatana/NotificationItem/nm_applet/Menu],
"",
"",
"",
"Wireless network connection 'office WiFi 1' active: office WiFi (77%)",
"nm-applet",
"Network"]
}
]
Os outros indicadores são referenciados como as outras interfaces com.canonical.indicator. ...
(listadas no início), no entanto, este é provavelmente o indicador principal, mas o indicador do submenu aps ainda não foi identificado:
qdbus --literal com.canonical.AppMenu.Registrar \
/com/canonical/Unity/Panel/Service \
com.canonical.Unity.Panel.Service.Sync
apesar de existir muito crud (provavelmente, bits de imagem de ícone) a saída podada e prettied é:
[Argument: a(ssssbbusbbi) {
[Argument: (ssssbbusbbi) "libappmenu.so", "0x9733fe0", "", "_File", true, true, 0, "", false, false, 0],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x97352e0", "", "_Edit", true, true, 0, "", false, false, 1],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x9737868", "", "_View", true, true, 0, "", false, false, 2],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x9738920", "", "_Search", true, true, 0, "", false, false, 3],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x9739e10", "", "_Terminal", true, true, 0, "", false, false, 4],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x973c070", "", "Ta_bs", true, false, 0, "", false, false, 5],
[Argument: (ssssbbusbbi) "libappmenu.so", "0x973d6a0", "", "_Help", true, true, 0, "", false, false, 6],
[Argument: (ssssbbusbbi) "libapplication.so", "0x90cdcd0", "bluetooth-manager", "", false, false, 1, "<... crud ...>", true, true, 300],
[Argument: (ssssbbusbbi) "libapplication.so", "0x8e861a8", "nm-applet", "", false, false, 1, "<... crud ...>", true, true, 450],
[Argument: (ssssbbusbbi) "libprintersmenu.so", "", "", "", false, false, 0, "", false, false, -1],
[Argument: (ssssbbusbbi) "libmessaging.so", "0x8dabc7c", "indicator-messages", "", false, false, 1, "<... crud ...>", true, true, 200],
[Argument: (ssssbbusbbi) "libpower.so", "0x8f0405c", "indicator-power", "", true, false, 6,
". GThemedIcon battery-charged battery-full-charged-symbolic battery-full-charged gpm-battery-charged gpm-battery-100-charging ", true, true, 250],
[Argument: (ssssbbusbbi) "libsoundmenu.so", "0x8f040b4", "indicator-sound", "", false, false, 1, "<... crud ...>", true, true, 500],
[Argument: (ssssbbusbbi) "libdatetime.so", "0x8e8881c", "indicator-datetime", " 1:16:10 AM", true, true, 0, "", false, false, 550],
[Argument: (ssssbbusbbi) "libsession.so", "0x8e6045c", "indicator-session-devices", "", false, false, 1, "<... crud ...>", true, true, 600]}]
Nota: Os números de terminação 600, 550, 500, 450, 300, 250, 200 se correlacionam, da direita para a esquerda, combinando os aps com seus ícones indicadores.