Fluxbox: Toggle RootMenu usando Mouse1

1

No Debian Jessie e no Fluxbox 1.3.5, o comportamento que estou procurando é: Toda vez que eu clico na área de trabalho, se um RootMenu ainda não estiver lá, um deve ser desenhado. Se um RootMenu já estiver lá, ele deve desaparecer. Para isso, adicionei esta linha ao arquivo .fluxbox/keys :

OnDesktop Mouse1 :If {Some Matches ((@Role="fluxbox-menu")} {HideMenus}  {RootMenu}

depois de comentar outras ligações relacionadas ao mouse.

No entanto, pressionar Mouse1 na área de trabalho não produz nenhum efeito, o arquivo de log é limpo e se eu ligar o RootMenu a algumas outras chaves simplesmente usando

OnDesktop Mouse3 :RootMenu

O RootMenu aparece corretamente (então, nada de errado com isso).

Alguma idéia do porquê isso está acontecendo? Mais importante, o arquivo keys não permite esse tipo de comportamento "complexo"?

    
por strNOcat 02.10.2015 / 08:26

1 resposta

0

As chaves do Fluxbox devem suportar esse tipo de comportamento; no entanto, notei algumas irregularidades ao tentar ações complexas também. Consegui fazer isso funcionar usando o seguinte:

OnDesktop Mouse1 :If {Matches (Name!=)} {RootMenu} {HideMenus}

Enquanto o padrão de correspondência parece grosseiro, parece funcionar. Eu não tive tempo de investigar por que isso funciona com o Fluxbox, mas eu esperava que as propriedades verificadas fossem (não) definidas quando o menu do Fluxbox estivesse ativo.

Espero que isso funcione para você (ou pelo menos um ponto de partida). Se você encontrar um padrão de condição melhor para aplicar, eu ficaria curioso em ver isso.

    
por 07.10.2015 / 19:04

Tags