Criar script do monitor dbus Ubuntu 16.04
Você pode criar este script que é invocado pelo dbus depois que a tela é desbloqueada. Chame o script dos seus Aplicativos de inicialização e ele sempre estará em execução.
#!/bin/bash
dbus-monitor --session "type=signal,interface=com.canonical.Unity.Session,member=Unlocked" |
while read MSG; do
LOCK_STAT='echo $MSG | awk '{print $NF}''
if [[ "$LOCK_STAT" == "member=Unlocked" ]]; then
logger "Screen unlocked"
# Flush keyboard buffer
while read -e -t 1; do : ; done.
fi
done
Note que isto é para o Unity no Ubuntu 16.04. O Ubuntu 14.04 e versões anteriores possuem métodos diferentes. Ambientes de área de trabalho diferentes também podem ter métodos diferentes.
Este código funciona para outros utilitários, no entanto, a seção #Flush keyboard buffer
é nova e não foi testada.