De um script bash, existe uma maneira de obter o atalho de teclado para “Redimensionar janela”?

2

Esta questão está relacionada com outra que eu perguntei Como executo um programa no Xfce e o faço usar outro tema xfwm4 diferente do padrão?

No entanto, agora estou tentando obter uma resposta que funcione para qualquer desktop - ou em outras palavras - uma resposta para cada desktop, não apenas o Xfce. Aqui, estou tentando resolver o mesmo problema da pergunta anterior: permitir que um usuário pegue uma borda da janela para redimensioná-la, mesmo que ela esteja usando bordas finas extras e, mesmo que não conheça a tecla de acesso usada pela área de trabalho. agarrando a borda da janela.

Eu quero abrir uma janela a partir de um script bash e ter o título da janela como Redimensionar com ... . Na minha área de trabalho, isso seria Redimensionar com Alt + F8 . Estou escrevendo um aplicativo principalmente no bash que requer que o usuário redimensione uma janela transparente. Muitas pessoas têm um tema com bordas de janelas muito finas que, quando combinadas com um interior transparente, tornam-se quase impossíveis de se agarrar com um mouse. Eu quero que o usuário seja capaz de redimensionar a janela com o mouse sem ter que lutar para agarrar a borda. Eu publiquei esta questão também no fórum do Xfce porque estou pessoalmente usando o Xfce. A partir daí, obtive uma solução trabalhando para mim com o Xfce, mas quero uma solução geral.

Dos comentários abaixo, vejo que não há uma solução geral, então gostaria de ter tantas soluções quantas estiverem disponíveis, uma para cada área de trabalho. Eu já tenho o Xfce e gostaria que os usuários experientes de outros desktops dessem respostas para esses desktops.

Aqui está uma solução para o Xfce, tudo no bash:

$ xfconf-query -c xfce4-keyboard-shortcuts -lv | grep resize_window_key | \
    grep custom | cut -d' ' -f1 | sed -e 's/.*\///g'

Desde que eu estou usando o código python para uma janela transparente de Python - como fazer uma janela transparente com o gtk.Window mas não com o Gtk , eu na verdade usei o xconf-query e então dei a saída completa para o python script para usar regex para o jogo que eu estava procurando. Aqui está como eu realmente fiz isso até agora:

Código de bash:

all_keys='xfconf-query -c xfce4-keyboard-shortcuts -lv'
python2 /usr/share/silentcast/transparent_window.py \""$all_keys"\" & \
    transparentPID=$!

Código Python:

import os,sys,re
...
    self.set_title("PID:" + str(os.getpid()) + " Resize with " + self.get_resize_hotkey(str(sys.argv[1])))
....
  def get_resize_hotkey(self, all_hotkeys):
    try: 
      resize_hotkey=re.search('(?<=custom\/)<.+>\w*(?=.+resize_window_key)', all_hotkeys).group()
    except AttributeError:
      resize_hotkey=""
  return resize_hotkey

Eu estou procurando soluções ou todas em bash ou parte em bash e parte em python que me dará a chave de ligação do usuário (se houver) para pegar a borda da janela ativa com o mouse para redimensionar.

    
por Colin Keenan 17.09.2014 / 20:03

1 resposta

2

No Unity, o atalho de redimensionamento da janela padrão é Alt + F8 . Você pode verificar isso executando:

gsettings get org.gnome.desktop.wm.keybindings begin-resize  

O valor padrão é ['<Alt>F8'] .

Também verifiquei o KDE, mas eles não têm nenhum atalho de teclado para o redimensionamento de janelas que eu possa encontrar.

    
por 27.09.2014 / 18:19