Como forçar o X a revisar todas as janelas abertas para os recursos atuais do X?

2

Eu tenho um ~ / .Xdefaults que tem um tema de cor específico definido para o Xorg, e isso funciona. Eu tenho um ~ /. XdefaultsNew que especifica um tema de cor alternativo. O Xorg inicia e carrega ~ / .Xdefaults que está correto. Depois de executar alguns aplicativos, eu corro

xrdb ~/.XdefaultsNew

Isso substitui todos os meus recursos X pelos novos valores definidos (corretamente). Se eu abrir uma nova janela, o tema será visto corretamente. No entanto, todas as janelas abertas anteriormente retêm o tema original.

Existe uma maneira de forçar o X a "re-tema" todas as janelas que ele está gerenciando com os recursos X atualmente carregados?

    
por Nektarios 24.08.2010 / 17:19

1 resposta

2

É possível que aplicativos que implementam o protocolo Editres e que ofereçam suporte a solicitações SetValues (consulte editres(1) para uma descrição no nível do usuário e /usr/include/X11/Xmu/EditresP.h para uma descrição no nível do programador).

Você pode assistir ao protocolo Editres em ação iniciando o programa editres . No menu, selecione “Commands / Get Tree”, clique na janela editres, selecione “Tree / Select Widget in Client” e clique em algum lugar na janela do editor novamente. Selecione “Commands / Show Resource Box”, clique em “background” na lista de recursos normais e insira um nome de cor onde diz “Enter Resource Value”, depois clique em “Apply” e observe parte da cor de mudança da janela do editor.

Infelizmente, enquanto a maioria dos aplicativos que usam recursos do X entendem o protocolo Editres, poucos implementam a parte SetValues. É uma boa ideia que quase ninguém se incomodou em implementar.

    
por 24.08.2010 / 22:17

Tags