Botão Fechar no notify-osd?

41

É possível obter um botão Fechar no OSD?

Ele permanece por um longo tempo e, às vezes, tenho colegas no meu PC, e não quero que eles vejam quem está on-line ou que música estou ouvindo. Não, não consigo desativá-lo.

theTuxRacer
fonte
A única solução alternativa para obter um botão Fechar na notificação é usar o AWN e o plug-in de notificação. Funciona bem com o Rhythmbox e expira também.
theTuxRacer 12/02
Esta resposta askubuntu.com/questions/14354/close-button-on-notify-osd/… basicamente antecipa a exibição da notificação. É temporário e, se esse processo for interrompido, a exibição da notificação será retomada. Se por "Não consigo desativá-lo" significa que você não tem liberdade para desativar o dbusmecanismo de notificação , esta solução a deixa intacta ... se isso significa que você tentou e não conseguiu fazê-lo, novamente esta resposta será exibida. Dê uma solução.
9788 George Rowell

Respostas:

16

Sua melhor aposta seria registrar um bug e solicitar o recurso. Ao registrar um bug da lista de desejos como este, certifique-se de dar alguns exemplos de usuários sobre por que esse recurso pode ser útil para uma seção maior da comunidade de usuários do Ubuntu.

Mike
fonte
Sim, eu farei isso. Mas onde eu posso fazer isso? Plataforma de lançamento?
theTuxRacer
1
já está na lista de desejos, mas acho que não serão tomadas medidas. por favor vote bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/381416
theTuxRacer
7
@ Kaustubh P Leia isto, markshuttleworth.com/archives/253 especificamente nesta parte: The most controversial part of the proposal is the idea that notifications should not have actions associated with them. In other words, no buttons, sliders, links, or even a dismissal [x].Não tenha muitas esperanças, isso não mudará tão cedo, se é que alguma vez acontecerá.
Isaiah
1
Há uma especificação para tornar o tempo da notificação variável - mensagens mais longas permaneceriam por mais tempo ou mensagens atualizadas seriam estendidas. Um patch de implementação que seria bem-vindo, ele nos permitiria reduzir o tempo para mensagens muito curtas :-)
Mark Shuttleworth
10
Além disso, gostaríamos de adicionar um modo "não perturbe", onde apenas notificações do sistema (urgentes), como bateria muito baixa e problemas de hardware, apareceriam. Portanto, você pode usar o "não perturbe" para evitar que as pessoas vejam suas notificações quando estão olhando por cima do ombro ou se estiver conectado ao projetor (embora prefira colocar as notificações na tela do laptop e não no projetor, onde eles são telas diferentes). Novamente, um patch para isso seria bem-vindo.
Mark Shuttleworth
35

A escolha de ter zero de cromo nas notificações efêmeras é muito deliberada e não vai mudar. A lógica é que essas notificações devem ser o mais leve possível.

No entanto, há algumas coisas que podem ser feitas para ajudá-lo ainda mais.

Há uma especificação para tornar o tempo da notificação variável - mensagens mais longas permaneceriam por mais tempo ou mensagens atualizadas seriam estendidas. Uma implementação de patch que seria bem-vinda, permitiria reduzir o tempo para mensagens muito curtas :-)

Além disso, gostaríamos de adicionar um modo "não perturbe", onde apenas notificações do sistema (urgentes), como bateria muito baixa e problemas de hardware, apareceriam. Portanto, você pode usar o "não perturbe" para evitar que as pessoas vejam suas notificações quando estão olhando por cima do ombro ou se estiver conectado ao projetor (embora prefira colocar as notificações na tela do laptop e não no projetor, onde eles são telas diferentes). Novamente, um patch para isso seria bem-vindo.

Mark Shuttleworth
fonte
uau, obrigado pela resposta! Acho que posso chorar!
theTuxRacer
5
Espero que este modo "não perturbe" seja implementado então.
você
Para esse sistema de notificações urgentes, deve haver uma maneira de diferenciar quais notificações devem ser categorizadas como urgentes.
Oxwivi 19/03/11
Não concordo 100% com essas decisões, mas pelo menos elas parecem estar funcionando bem.
RolandiXor
Eu tentaria examinar o código-fonte e enviar o patch (se possível).
verde
14

Não há um botão fechar, o blob nem existe em termos do mouse (quando você clica sobre ele, simplesmente clica no que está por trás), veja os detalhes aqui:

https://wiki.ubuntu.com/NotifyOSD

Essa funcionalidade não será alterada, houve vários relatórios de bugs solicitando o que você está solicitando, todos os quais foram negados nos termos mais fortes.

Você pode criar um programa para fechá-lo, forçar um pouco o código osd e usar algumas das ramificações de código existentes que já fazem isso. Veja o programa D-Feet para navegar e brincar com a interface dbus do notifyosd e o código na barra de ativação.

Martin Owens -doctormo-
fonte
E vincule esse programa à tecla de atalho, certo?
Extender
já está na lista de desejos, mas acho que não serão tomadas medidas. por favor vote bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/381416
theTuxRacer
Esta resposta askubuntu.com/questions/14354/close-button-on-notify-osd/… basicamente antecipa as notificações e, embora não esteja realmente desativada, sua exibição é. É temporário e, se esse processo for interrompido, a exibição da notificação será retomada.
precisa saber é o seguinte
7

Existe uma maneira de você receber notificações com o botão Fechar.

insira a descrição da imagem aqui

Do artigo de Webupd8

Primeiro instale o Avant Window Navigator a partir do centro de software e adicione o "Notification Daemon" ao dock.

Agora pressione Alt + F2e colegconf-editor

Em seguida, navegue para apps> awn-applet-notification-daemon (isto é para o AWN mais recente do PPA de tronco do AWN, pode ser apps> avant-window-navigator> awn-applet-notification-daemon em versões mais antigas do Avant Window Navigator ) Clicar em uma tecla exibirá sua descrição na parte inferior, para que você saiba como ajustá-la. A chave mais importante é: "kill_standard_daemon" - verifique se está ativada, caso contrário as notificações do AWN não funcionarão.

Por exemplo, "override_x" é a posição horizontal na tela (para a qual usei "1900" porque a largura da minha tela é 1920 e desejo que as notificações sejam exibidas à direita), "override_y" é a posição vertical ( para o qual usei "30", para que a caixa de diálogo de notificação seja exibida no canto superior direito) e "gradient_factor" seja a transparência. Isso deve ser suficiente para você começar.

Para personalizar as cores, desmarque a caixa "use_theme", especifique "text_colour" e "bg_colour" e assim por diante.

Um recurso importante que você pode querer ativar é "show_icon". Isso exibirá um ícone no dock do Avant Window Navigator no qual você pode clicar para desativar / ativar temporariamente as notificações.

Lincity
fonte
1
Coincidentemente, é assim que minha configuração está agora :) A adição do applet de notificação do AWN me dá a funcionalidade que eu quero. Obrigado pela resposta :)
theTuxRacer
3

Em vez de usar o avant window navigator, você também pode fazer isso (testado apenas no Lucid):

Instale o xfce4-notifyd no centro de software e pressione Alt+ F2e colekillall notify-osd

Isso muda para o daemon de notificação do XFCE, que se parece muito com o padrão, apenas um botão Fechar aparece quando você passa o mouse sobre ele.

Lincity
fonte
2

Eu li sobre isso antes e posso entender o raciocínio do design, mas, na prática, eles são perturbadores quando não podem ser limpos facilmente.

O uso do https://launchpad.net/caffeine , um aplicativo da barra de status que pode impedir a economia de tela / energia, também desativará os pop-ups, então pensei em sugerir isso como uma solução alternativa.

O bloqueio da notificação destaca a necessidade de um histórico de notificações, mas isso também foi levantado como um problema e resolvido como não será corrigido: bugs.launchpad.net/notify-osd/+bug/382094

Cas
fonte
Eles fazem as notificações um aborrecimento mal-útil ..
Dakota
1

Diminua o atraso com o aplicativo notify-osd-conf.

borjacampina
fonte
Eu poderia tentar isso, mas realmente existem algumas coisas que eu preciso de algum tempo para me ler. portanto, a demanda por um botão fechar. caso contrário, obrigado pelo alerta!
theTuxRacer
2
@ObsessiveFOSS Pretende ser uma solução para o problema apresentado na pergunta e parece que pode funcionar. Portanto, mesmo que isso se beneficie da expansão e de mais detalhes, ainda não seria melhor como um comentário . borjacampina: eu recomendo editar isso para explicar exatamente como diminuir o atraso dessa maneira.
Eliah Kagan 08/09/12
1

Indicador: botão Fechar no notify-osd?

ref:

Conceitos comprovados, basha solução "desativada" de graffiti pop-up OSD é concebida e eclodida como:

dbus-monitor "interface='org.freedesktop.Notifications'" |             \
grep --line-buffered "member=Notify"                     |             \
sed -u -e  's/.*/killall notify-osd/g'                   |             \
bash

Isso pode ser executado em um terminal ou como uma tarefa em segundo plano - pare e o graffiti pop-up é retomado.

O OP declarou "Não, não posso desativá-lo". Se, com isso, significa que o sistema de notificação NÃO deve ser desativado pelo posudo, essa solução é consistente com isso. O sistema está intacto. Se isso significa que o posudo não sabe como fazê-lo, novamente a solução é pertinente.

Detalhes explicados abaixo da linha. O melhor seria incorporar tudo no (no?) DBus, invocar diretamente

  qdbus    org.freedesktop.Notifications                \
          /org/freedesktop/Notifications                \
           org.freedesktop.Notifications.CloseNotification(uint id)

Uma solução rudimentar muito, muito, muito ingênua, que é mais uma prova de conceito do que prática, essencialmente "desativa" notify-osd(ou pelo menos seus efeitos). Não se esqueça de encerrá-lo quando concluir os testes! por ETX'ng com <ctrl> -C ou fechando a janela do terminal etc. Ele faz seu trabalho, mas não de forma muito pragmática! porque, infelizmente, outros empregos sofrem tentando fazê-los ...

  while true; do killall notify-osd; done

(para "ouvir" atividade relevante que você pode querer " grepsair"

 notify-osd: no process found ....

)

Teste executando-o em uma janela de terminal e, a partir de outra janela de terminal, tente:

  notify-send "test 1" "now you see it not"
  notify-send "test 2" "you see it not after test 1 evaporates"
  notify-send "test 3" "finally after test 2 evaporates"

Pare o primeiro processo e tente as mensagens novamente.

Talvez um notify-osdindicador para o unity-panel-servicepoderia invocar killall notify-osd. O botão Fechar localizado (e não pode!) Fica na janela de notificação, mas está disponível no painel indicador. Isso é completamente análogo ao mesmo conceito que o Unity possui para o Windows. O uso da barra superior para o fechamento de notificações é semelhante à maneira como o Unity exila os menus da janela com caixas mini, maxi e fechadas na barra de menus superior.

Uma solução verdadeiramente elegante faria com que o indicador aparecesse quando a atividade do DBus para os notify-osdmanifestos e desaparecesse quando não houvesse notificações pendentes.

Também pode resolver o problema das notificações empilhadas - apenas uma pode ser vista por vez e, se houver várias notificações pendentes, cada uma deve evaporar antes da próxima aparecer - elas geralmente não podem ser vistas simultaneamente.

DBus-monitor'ng do notify-osdinterface de notificação será, no entanto fornecer reconhecimento imediato de notificações pendentes, mesmo se houver um já mostrando. (E se killall notify-osdfor emitido imediatamente - presto poof!)

Selecione Todos, Arraste e Solte para uma janela do terminal nos seguintes testes:

  notify-send "test 1" "now you see it"
  notify-send "test 2" "you see it after test 1 evaporates"
  notify-send "test 3" "finally after test 2 evaporates"

agora faça o mesmo com p {r} oof:

  notify-send "test 1" "now you don't"
  notify-send "test 2" "you see it not! after test 1 evaporates"
  notify-send "test 3" "NOT finally after test 2 evaporates"
  killall notify-osd
  notify-send "gonzo" "gone nada zip zilch"

A killall notify-osdsolução sugerida seria acionada quando DBus monitordetectar atividade de graffiti pop-up OSD.

George Rowell
fonte
0

Foi uma decisão deliberada deixar de fora qualquer maneira de interagir com o balão de notificação (portanto, é uma notificação passiva), para que você possa postar um relatório de bug no Launchpad (talvez já exista um) e fazer lobby para que ele seja alterado.

Não é algo que eu possa ver acontecendo em breve, a menos que haja uma grande demanda (e não haja)

Também pode valer a pena tentar resolver o problema, solicitando uma maneira de excluir determinados programas do acesso ao sistema de notificação-osd.

user5260
fonte
0

Um botão Fechar nas notificações em si não resolverá o seu problema. Eles ainda verão as notificações e terão que clicar no botão Fechar para fechá-las, se houver uma.

O que você deve fazer é quando você deseja permitir que outras pessoas usem seu computador, basta escolher a opção "Alternar usuário" no menu do sistema no canto superior direito (o ícone de engrenagem) e usar o login de Convidado. Isso criará uma sessão temporária para eles usarem e não preservará nenhum histórico do navegador, cookies, etc. quando o usuário sair. Isso impedirá que eles vejam suas notificações, bem como possivelmente perturbem seus próprios dados (histórico da web, downloads, logins etc.), à medida que atravessam o éter do seu computador.

dobey
fonte