Caminho comum:
Para começar, você precisa encontrar o arquivo correspondente da extensão que deseja alterar.
Geralmente você pode encontrá-lo aqui: ~/.local/share/gnome-shell/extensions
.
Se a extensão foi instalada via gerenciador de pacotes, você pode encontrá-la aqui: /usr/share/gnome-shell/extensions/
(Graças a AB )
Em seguida, vá para o diretório da extensão e abra " extension.js
" com qualquer editor de texto.
Vá para a linha com: function enable()
(use a função de pesquisa em seu editor - se você não conseguir encontrá-la, vá para a seção Atualizar mais abaixo).
Dentro desta função geralmente é uma linha Main.panel.addToStatusArea('NAME', _OTHERNAME, NUMBER, LEFT/CENTER/RIGHT);
(Novamente: Se você não consegue encontrá-lo, vá para Atualizar ). Pode acontecer que os dois últimos parâmetros ( NUMBER
e POSITION
) estejam faltando; se parece com isso: Main.panel.addToStatusArea('NAME', _OTHERNAME);
(Não se preocupe! Seu computador interpreta a versão mais curta com: ('NAME', _OTHERNAME, 0, right);
Sinta-se à vontade para adicionar os parâmetros ausentes. Mas sempre na ordem mostrada !!! )
O POSITION
define onde no painel o ícone deve estar. Existem três áreas: esquerda , centro e direita . Você provavelmente não quer alterar esse valor, mas fique à vontade para fazê-lo. Aqui estão os três estados possíveis para POSITION
no painel:
------------------------------------------------------------------
Activities Date Other icons
------------------------------------------------------------------
left center right
O valor mais importante que você provavelmente deseja alterar é NUMBER
. Define a ordem dos ícones dentro dos sub-painéis. Os valores possíveis são:
-
0 : não importa onde o ícone esteja.
-
valores negativos : posição; começando pelo lado direito (pode ser importante, pois todos os ícones de extensão são carregados após os ícones do sistema)
-
valores positivos : posição; a partir do lado esquerdo. Valores mais altos estarão localizados mais à direita.
Você tem que brincar com esses valores em todas as suas extensões porque os mesmos valores entram em conflito entre si (duas extensões diferentes na posição 2 não fazem sentido). E às vezes até mesmo seguir os valores conflitantes.
Toda vez que você alterar o valor, salve o arquivo. Então pressione Alt + F2 , digite r e Digite . O painel será atualizado com os ícones recém-ordenados. Esta é uma opção rápida para brincar com esses valores.
Por fim, uma referência ao Café Matemático :
Use Main.panel.addToStatusArea (unique_name_of_indicator, inidicator, position, box) para adicionar um SystemStatusButton ou PanelButton ao painel. Isso lida adicionando seu menu ao gerenciador de menu para você (caixa é Main.panel ._ {left, right, center} Caixa, omitindo o argumento caixa dá caixa direita por padrão, e omitindo posição dá posição 0). Se o seu botão é apenas um ButtonBox (ou seja, sem menu), então fique com. _ {esquerda, direita, centro} Box.insert_child_at_index.
Por favor, deixe-me saber se você teve algum problema com esta abordagem.
Atualização:
Eu olhei em volta e reconheci que desta forma não funciona para todas as extensões (principalmente apenas para extensões simples / novas). Uma extensão freqüentemente usada neste caso é "monitor de sistema". A maneira de modificar a posição dos ícones deve ser (geralmente) a mesma (eu não testei. Portanto, certifique-se de criar um arquivo de backup) . Mas existem algumas diferenças para o "monitor do sistema":
- A função que você precisa pesquisar é chamada
var enable = function ()
. Por isso, talvez seja melhor procurar a palavraenable
no arquivo. -
O local onde a posição dos ícones é definida é chamado
Main.panel._addToPanelBox('system-monitor', tray, 1, panel);
. Alterar o número deve ter o mesmo efeito descrito acima. Para mudar toda a área, você tem duas opções:-
Alterando a mesma linha para
Main.panel._addToPanelBox('system-monitor', tray, 1, Main.panel._rightBox);
(Nota: a posição no menu de configurações da extensão não funcionará mais). -
Ou alterando a linha
let panel = Main.panel._rightBox;
(use novamente a função de busca) para a posição desejada ( _leftBox, _centerBox, _rightBox ).
-
(Essas etapas podem ser aplicadas a qualquer outra extensão. Mas haverá nomes ligeiramente diferentes. Mas ainda assim: O modo comum foi descrito em minha primeira tentativa para essa resposta)
Todo o procedimento em poucas palavras:
Procure pelo arquivo correspondente. Em seguida, pesquise enable
nesse arquivo. Em seguida, procure por algo como Main.panel...
e altere os valores (bastante auto-explicativo).
E finalmente notei que você mencionou o painel de tempo. Não encontrei uma boa maneira de modificar sua posição, mas aqui está outra coisa:
Você tem "monitor do sistema" instalado. Isso é bom :)
Abra o código extension.js
e altere a palavra "right" para "left" nessas duas linhas:
Main.panel._addToPanelBox('dateMenu', dateMenu, -1, Main.panel._rightBox);
e Main.panel._rightBox.insert_child_at_index(dateMenu.actor, -1);
.
Finalmente você tem que verificar "relógio de movimento" nas configurações desta extensão. Ai está! Eu não testei, mas deveria funcionar.Se não, escreva um comentário:)
Ahh! Esqueci de mencionar: Toda vez que você alterar os valores, salve o arquivo e atualize o painel com Alt + F2 - tipo r - hit < kbd> Digite . E certifique-se de criar arquivos de backup !!! : D