Notificar-enviar notificações aparecendo na janela

Notificar-enviar notificações aparecendo na janela

Escrevi um script de shell para garantir que minha filha não jogue Minecraft em seu Raspberry Pi por mais de 60 minutos por semana :). Parte do script usa notify-sendnotificações pop-up avisando sobre o tempo restante. No entanto, as notificações notify-sende notify-send --urgency=criticalaparecem na janela do Minecraft, de modo que apenas um pequeno pedaço de cinza fica visível na barra de título da janela. Por que isso ocorre e há mais alguma coisa que eu possa fazer para deixar um aviso visível (caso existam alternativas notify-send)?

Responder1

Quando você usa 'notify-send', a aparência da notificação é decidida por doisoutrocomponentes:

  • oservidor de notificaçãoque cria janelas pop-up com uma determinada aparência (por exemplo, notificação-daemon, notificação-osd, xfce4-notifyd, dunst, dzenify, lxqt-notificationd);
  • o gerenciador de janelas que decide a posição e a ordem z de cada janela na área de trabalho.
  • ('notify-send' não mostra nada, apenas envia uma solicitação de "mostrar notificação".)

Portanto, ou o servidor de notificação atual não está se esforçando o suficiente para deixar os pop-ups sempre visíveis, ou o gerenciador de janelas decidiu que as janelas em tela cheia têm prioridade de qualquer maneira, ou o gerenciador de janelas (ou o próprio Xorg) está com alguns bugs.

Você pode experimentar alterando o servidor de notificação – primeiro elimine o processo do atual (e remova-o da "inicialização automática" do ambiente de desktop) e, em seguida, instale e inicie um novo (por exemplo, executando /usr/lib/notify-osd/notify-osd &).

Para determinar qual ID de processo está atuando atualmente como servidor de notificação, use:

gdbus call -e -d org.freedesktop.DBus \
              -o /org/freedesktop/DBus \
              -m org.freedesktop.DBus.GetConnectionUnixProcessID \
                 "'org.freedesktop.Notifications'"

Como alternativa ao envio de notificação em geral, você pode usar programas que criam uma janela normal com algum texto – por exemplo, xmessage; mensagem gx; ou zenidade. Talvez seja mais provável que eles se comportem corretamente.

informação relacionada