Como alterar a cor do plano de fundo da dica de ferramenta no Unity?

215

Em muitos aplicativos, as dicas de ferramenta são simplesmente feias (texto em branco sobre fundo preto, contraste demais) ou até ilegíveis (texto em preto ou azul escuro (hiperlinks) em fundo preto). Quero alterar a cor de plano de fundo das dicas de ferramentas para cinza médio ou amarelo, ou algo assim, talvez até semi-transparente.

Aqui está uma captura de tela do Eclipse que exibe algum código-fonte em uma dica de ferramenta com texto em preto sobre fundo preto:

Eclipse com uma dica de ferramenta inutilizável

Mudar para um tema diferente (algo diferente de Ambiance ou Radiance) ajuda, mas eu gosto do Ambiance e quero mantê-lo. É apenas essa cor da dica de ferramenta que é absolutamente inaceitável.

Encontrei várias soluções para versões mais antigas do Ubuntu, mas elas não funcionam mais com o Unity no Ubuntu 11.10 porque não consigo encontrar nenhuma função para personalizar o tema Ambiance ou Radiance. Então, como faço isso na versão atual do Ubuntu?

kayahr
fonte

Respostas:

148

Instale e abra o gnome-color-chooserInstale o gnome-color-chooser .

Vá para SpecificTooltipse coloque o primeiro plano preto sobre fundo amarelo claro.

Nick Andrik
fonte
3
reinicie o Eclipse para que as alterações entrem em vigor
cmcginty
8
Não há necessidade de reiniciar para mim.
Ubuntudroid
1
Isso funciona para o 12.04 LTS com o Eclipse 4.2 também!
David Edwards
2
Infelizmente, isso não funcionou para mim (Ubuntu 12.04 de 64 bits e Eclipse Juno). Tanto a resposta aceita quanto a abaixo do DJo funcionaram para mim.
Luis
8
+1, mas observe que isso afeta TODAS as dicas de ferramentas do sistema. Se você deseja uma solução apenas para o Eclipse, siga a resposta da @ bain.
ysap
135

Encontrei!

Eu tive que editar esses arquivos:

/usr/share/themes/Ambiance/gtk-3.0/settings.ini
/usr/share/themes/Ambiance/gtk-3.0/gtk.css
/usr/share/themes/Ambiance/gtk-2.0/gtkrc

(Adição: para Ubuntu 12.04, parece que você apenas precisa modificar o arquivo: /usr/share/themes/Ambiance/gtk-2.0/gtkrc, substituindo a cor de fundo e de primeiro plano da dica de ferramenta pelas cores # 000000 e # f5f5b5, respectivamente )

Você precisa de privilégios de root para editar os arquivos. Use gksudo geditpara editá-los.

Pesquise tooltipnesses arquivos e você encontrará as definições de cores para o primeiro plano e o plano de fundo. Eu uso #000000como primeiro plano e #f5f5b5como plano de fundo e agora as dicas de ferramentas em todos os aplicativos estão novamente legíveis. Depois de alterar os valores das cores, simplesmente mude para outro tema e, em seguida, volte para o Ambiente, e a cor da dica de ferramenta agora está corrigida.

Aqui está o resultado:

Eclipse com tema customizado

kayahr
fonte
2
alguma maneira de fazer isso através da interface do usuário no ubuntu 11?
frankster
1
Funcionou como esperado no Xubuntu 12.10 também.
Davidcesarino 30/10/12
1
Existe uma maneira de mudar isso para o seu usuário apenas (ou seja, não requer [gk]sudoTenho certeza de que, como a maioria das configurações do GNOME, há um arquivo de configuração por usuário / dir?
MestreLion
2
@MestreLion: os temas do usuário são escolhidos ~/.themes/. Você precisará copiar a pasta Ambiance para isso.
ignite
1
Eu tive que editar gtk-3.0/gtk-main.csstambém, mas isso funcionou em 14.04. Também funciona ao usar o tema "Radiance", basta editar os mesmos arquivos na Radiancepasta.
precisa saber é o seguinte
29

Se você deseja alterar as cores da dica de ferramenta para todos os aplicativos, instale e execute o gnome-color-chooser e vá para a guia Específica> Dicas de ferramenta. Marque as caixas Primeiro plano e Segundo plano e escolha as cores.

Como funciona (você pode fazer isso manualmente):

O gnome-color-chooser adiciona o seguinte ao seu ~ / .gtkrc-2.0:

include ".gtkrc-2.0-gnome-color-chooser"

e ~ / .gtkrc-2.0-gnome-chooser:

style "gnome-color-chooser-tooltips"
{
  bg[NORMAL] = "#FFFFAF"
  fg[NORMAL] = "#000000"
}
widget "gtk-tooltip*" style "gnome-color-chooser-tooltips"

Se você quiser apenas alterar as cores das dicas de ferramentas para um único aplicativo, como eclipse, coloque o texto acima em um arquivo gtkrc personalizado (por exemplo, ~ / gtkrc-eclipse) e inicie o eclipse com GTK2_RC_FILES = ~ / gtkrc-eclipse eclipse

banho
fonte
1
Aqui está a configuração para personalizar a cor de segundo plano do diálogo de preenchimento automático no Eclipse: stackoverflow.com/a/8063723/356895 .
JJD
Você sabe como posso incluir a variável de ambiente no menu do aplicativo Ubuntu para que o Eclipse também carregue as configurações quando não for iniciado pelo shell?
JJD
3
Eu compilei um artigo que resume o tópico.
JJD 28/07
2
abordagem fantástica @bain !!! :) Não requer sudo, afeta apenas seu usuário e não precisa copiar todo o tema para o seu ~.
Obrigado
1
@JJD: Geralmente sou contra "obrigado" apenas comentários, mas seu artigo é incrível. Notei que ele usa a mesma abordagem que esta resposta. Como eu já uso um script de shell customizado para iniciar o Eclipse a partir da linha de comando e do arquivo .desktop, é fácil adicionar o GTK2_RC_FILES = ... env. Obrigado :)
MestreLion
22

Eu criei um pequeno script que faz isso por você

#/bin/sh
# Tooltip fix
# A script to fix themes files in Ubuntu 11.10
#  to have readable tooltips in applications such
#  as eclipse.
# The script edits the gtk.css, settings.ini and gtkrc files
# Author: Victor Pillac
# http://victorpillac.wordpress.com

if [[ $EUID -ne 0 ]]; then
  echo "This script must be run as root" 1>&2
  exit 1
fi  

path=/usr/share/themes
theme=Ambiance

if [ $# = 1 ]; then
  theme=$1
fi

echo "Fixing tooltips for theme $theme"
echo " (you can select a different theme by passing its name as argument)"
sed -i 's/tooltip_bg_color #000000/tooltip_bg_color #f5f5b5/g' $path/$theme/gtk-3.0/gtk.css
sed -i 's/tooltip_fg_color #ffffff/tooltip_fg_color #000000/g' $path/$theme/gtk-3.0/gtk.css
sed -i 's/tooltip_bg_color:#000000/tooltip_bg_color:#f5f5b5/g' $path/$theme/gtk-3.0/settings.ini
sed -i 's/tooltip_fg_color:#ffffff/tooltip_fg_color:#000000/g' $path/$theme/gtk-3.0/settings.ini
sed -i 's/tooltip_bg_color:#000000/tooltip_bg_color:#f5f5b5/g' $path/$theme/gtk-2.0/gtkrc
sed -i 's/tooltip_fg_color:#ffffff/tooltip_fg_color:#000000/g' $path/$theme/gtk-2.0/gtkrc
echo "Done"
Victor P.
fonte
8

Adotei uma solução um pouco diferente;

Primeiro, crie um novo script, eclipse.sh, que inicie o eclipse, o meu será assim:

#!/bin/bash
GTK2_RC_FILES=/usr/share/eclipse/gtkrc-2.0-eclipse /usr/share/eclipse/eclipse

Em seguida, crie o arquivo gtkrc (/usr/share/eclipse/gtkrc-2.0-eclipse), o meu se parecerá com o seguinte (ele também tem outras alterações para fazer melhor uso da tela):

style "my-tooltips"
{
  bg[NORMAL] = "#FFFFAF"
  fg[NORMAL] = "#000000"
}
widget "gtk-tooltip*" style "my-tooltips"

style "gtkcompact" 
{
    font_name="Ubuntu Light 11"

    GtkButton::default_border={0,0,0,0}
    GtkButton::default_outside_border={0,0,0,0}
    GtkButtonBox::child_min_width=0
    GtkButtonBox::child_min_heigth=0
    GtkButtonBox::child_internal_pad_x=4
    GtkButtonBox::child_internal_pad_y=4
    GtkMenu::vertical-padding=1
    GtkMenuBar::internal_padding=0
    GtkMenuItem::horizontal_padding=4
    GtkToolbar::internal-padding=1
    GtkToolbar::space-size=1
    GtkOptionMenu::indicator_size=0
    GtkOptionMenu::indicator_spacing=0
    GtkPaned::handle_size=4
    GtkRange::trough_border=0
    GtkRange::stepper_spacing=0
    GtkScale::value_spacing=0
    GtkScrolledWindow::scrollbar_spacing=0
    GtkExpander::expander_size=10
    GtkExpander::expander_spacing=0
    GtkTreeView::vertical-separator=0
    GtkTreeView::horizontal-separator=0
    GtkTreeView::expander-size=10
    GtkTreeView::fixed-height-mode=TRUE
    GtkWidget::focus_padding=0
    GtkTreeView::vertical-separator = 0
}

class "GtkWidget" style "gtkcompact"

style "gtkcompactextra" 
{
    xthickness=0
    ythickness=0
}

class "GtkButton"   style "gtkcompactextra"
class "GtkToolbar"  style "gtkcompactextra"
class "GtkPaned"    style "gtkcompactextra"
class "GtkNotebook" style "gtkcompact"
Mike
fonte
7

Para CDT, faça o seguinte:

Janela> Preferências> C / C ++> Editor: Opções de cores da aparência> Fundo de foco da fonte

Desmarque a opção Padrão do sistema e selecione uma cor.

Infelizmente não há nenhuma configuração que eu conheça. Muito manco. Você não precisa definir coisas assim para todas as perspectivas.

DJo
fonte
6

Eu acho que este está resolvido. Eu peguei mostrando a dica de ferramenta com letras pretas sobre fundo branco. No meu caso, parece que o Eclipse está usando configurações para dicas de ferramentas do gtk-2.0/gtkrcarquivo do diretório do tema.

Minha configuração: Ubuntu 12.04, Gnome (sem unidade), Eclipse Indigo (3.7), tema GrayDay para Gnome. O nome do tema e o próprio tema não são importantes.

Abra o terminal, vá para o diretório do tema (cd $ HOME / .themes) e, em seguida, vá para o diretório do seu tema. Se o diretório .themes estiver vazio, se não existir, você estará usando o tema do sistema em / usr / share / themes. Basta descobrir o nome do tema que você está usando (clique com o botão direito do mouse em bakcground, escolha Alterar plano de fundo da área de trabalho, o nome do tema deve estar no canto inferior direito. Se não falar nada sobre o nome do tema, use o gnome-tweak-tool para encontrar qual tema você está usando).

No diretório do tema, emita este comando:

grep -r tooltip *

ele deve listar todos os arquivos e linhas em que a "dica de ferramenta" é mencionada. Altere todo plano de fundo (tooltip_bg_color) para #ffffff e todo primeiro plano para # 000000. Últimos preto em primeiro plano branco, é isso que queremos! Especialmente, altere os valores no gtk-2.0/gtkrcarquivo.

O erro que eu estava cometendo é perseguir a cor da dica de ferramenta no diretório gtk-3.0, que não teve nenhum efeito.

Agora, vá para Eclipse, Janela -> Preferências -> Java -> Editor e defina Source Hover Background como "System color" (verifique à direita). Reinicie o Eclipse!

Esta é uma lista grep -r tooltip *do meu diretório de temas depois de fazer alterações:

gtk-2.0/gtkrc:gtk-color-scheme  = "tooltip_fg_color:#000000\ntooltip_bg_color:#ffffff\nlink_color:#0033ff"
gtk-2.0/gtkrc:style "tooltips" {
gtk-2.0/gtkrc:  bg[NORMAL]  = @tooltip_bg_color
gtk-2.0/gtkrc:  fg[NORMAL]  = @tooltip_fg_color
gtk-2.0/gtkrc:  GtkWidget::new-tooltip-style    = 0
gtk-2.0/gtkrc:# The window of the tooltip is called "gtk-tooltip"
gtk-2.0/gtkrc:widget "gtk-tooltip*"             style "tooltips"
gtk-3.0/gtk.css:/* @define-color tooltip_bg_color #343434; */
gtk-3.0/gtk.css:/* @define-color tooltip_fg_color #ffffff; */
gtk-3.0/gtk.css:@define-color tooltip_bg_color #ffffff;
gtk-3.0/gtk.css:@define-color tooltip_fg_color #343434;
gtk-3.0/gtk.css:@define-color theme_tooltip_bg_color @tooltip_bg_color;
gtk-3.0/gtk.css:@define-color theme_tooltip_fg_color @tooltip_fg_color;
gtk-3.0/gtk-widgets.css:.tooltip {
gtk-3.0/gtk-widgets.css:    background-color:   @theme_tooltip_bg_color;
gtk-3.0/gtk-widgets.css:    color:              shade(@theme_tooltip_fg_color, 0.90);
gtk-3.0/gtk-widgets.css:.tooltip * {
gtk-3.0/gtk-widgets.css:    background-color: @theme_tooltip_bg_color;
gtk-3.0/settings.ini:gtk-color-scheme   = "tooltip_fg_color:#343434\ntooltip_bg_color:#ffffff\nlink_color:#4a90d9"
gtk-3.0/settings-default.ini:gtk-color-scheme   = "tooltip_fg_color:#343434\ntooltip_bg_color:#ffffff\nlink_color:#4a90d9"
Mihael K
fonte
Na verdade, bastava seguir a resposta de jgreen e alterar apenas uma linha em um arquivo.
Teemu Leisti
3

Há também outra solução para isso: use o dconf-editor para encontrar a seguinte chave:

org->gnome->desktop->interference->gtk-color-scheme

cuja descrição diz: Uma \nlista separada name:colorconforme definido pela gtk-color-schemeconfiguração.

Escreva o esquema no gedit no estilo como o seguinte (este exemplo é meu) e cole-o no dconf-editor (observe o '\ n' em cada extremidade da linha):

fg_color:#4c4c4c4c4c4c
bg_color:#f2f2f1f1f0f0
text_color:#3c3c3c3c3c3c
base_color:#ffffffffffff
selected_fg_color:#ffffffffffff
selected_bg_color:#f0f077774646
tooltip_fg_color:#ffffff5a0e74
tooltip_bg_color:#14a784edd8b6

e o problema será resolvido imediatamente.

Shawn Zhao
fonte
org-> gnome-> desktop-> interface-> gtk-cor-esquema
Alessandro D'lncal
Como a nova Referência: GtkSettings: o esquema de cores gtk está obsoleto desde a versão 3.8 e não deve ser usado no código recém-gravado. O suporte ao esquema de cores foi descartado e não é mais suportado. Você ainda pode definir essa propriedade, mas ela será ignorada.
Alessandro D'lncal 19/08/1918
No Ubuntu 18.04 não é mais válido. Eu tentei alterá-lo pelo dconf, mas sem resultados. No Ubuntu 18.04, você precisa alterar a pasta gtk-3.0 no arquivo .config, colocando seu arquivo gtk.css para entrar em vigor. Você precisa modificar até o arquivo seettings.ini nessa pasta.
Alessandro D'lncal 19/08/1918
3

Minhas dicas de ferramenta são preto sobre amarelo. Veja a captura de tela abaixo do Ubuntu 16.04 LTS com MATE DE:

Dica de ferramenta preto sobre amarelo

Se você gosta dessa combinação de cores, use 3 arquivos de gtkrc (2 para GTK3, 1 para GTK2) abaixo:

  1. ~ / .config / gtk-3.0 / gtk.css

    /* tooltips */
    @define-color tooltip_bg_color #ffffaf;
    @define-color tooltip_fg_color #000000;
    
  2. ~ / .config / gtk-3.0 / settings.ini

    [Settings]
    gtk-color-scheme = "tooltip_bg_color:#ffffaf\ntooltip_fg_color:#000000"
    
  3. ~ / .gtkrc-2.0

    style "gnome-color-chooser-tooltips"
    {
    bg[NORMAL] = "#FFFFAF"
    fg[NORMAL] = "#000000"
    }
    
    widget "gtk-tooltip*" style "gnome-color-chooser-tooltips"
    

O terceiro arquivo foi criado pelo gnome-color-chooser. Use-o apenas se você tiver aplicativos baseados em GTK2.

O método acima foi testado no Ubuntu 14.04 LTS (Unity e GNOME), Ubuntu 16.04 LTS (Unity, GNOME, MATE), Ubuntu 18.04 LTS (Unity, GNOME, MATE).

N0rbert
fonte
No Ubuntu 18.04, a terceira e a quarta parte não são úteis porque usam o Gtk-3.0. Primeiro e segundo resolvem o problema.
Alessandro D'lncal 20/08/1918
2

Eu estava tendo o mesmo problema (Xubuntu 12.04, tema Greybird, Eclipse Indigo) e a resposta de Mihael K funcionou para mim. O único arquivo que mudei foi o gtk-2.0 / gtkrc e mudei apenas uma linha. A terceira linha após os comentários iniciais. Foram alterados os valores de cores hexadecimais de tooltip_bg_color: # 000000 para tooltip_bg_color: # ffffe1 e tooltip_fg_color: #ffffff para tooltip_fg_color: # 000000. Portanto, a linha ficará assim:

gtk_color_scheme        = "tooltip_bg_color:#ffffe1\ntooltip_fg_color:#000000" # Tooltips.

A elipse e as dicas de ferramentas reiniciadas agora são da cor amarelada à qual estou acostumado. Não precisei fazer mais ajustes no eclipse ou em qualquer outro arquivo.

jgreen
fonte
0

Uma maneira mais amigável de alterar o plano de fundo é usar a interface do usuário. Abra Sistema, Preferências, Aparência. Por padrão, o tema "Ambiente" será selecionado, mas você poderá alterá-lo para qualquer tema. Clique no botão Personalizar abaixo e mude para a guia Cores. Lá, você pode alterar as cores de primeiro e segundo plano das dicas de ferramentas, clicando nas caixas apropriadas.

Sergiy Belozorov
fonte
2
Em 11.10, isso não funciona. Posso alterar o tema em Aparência, mas não há como personalizar o tema.
Daniel kullmann
Não tenho o 11.10 instalado, mas acho estranho se eles removerem uma maneira de personalizar um tema. Talvez eles tenham renomeado o botão e / ou colocado em um local / guia diferente?
Sergiy Belozorov
Sergiy, muitos de nós pesquisamos, mas parece que não está lá. Esperamos que ele reapareça em 12.04.
1
Vocês estão realmente surpresos com as opções de personalização removidas no Gnome3 / Unity?
MestreLion 28/08
Não é mais ... depois de usar o 12.04 por um tempo, nossos administradores estão pensando em mudar para o Fedora ou alguma outra distribuição semelhante ao RHEL. O Ubuntu se tornou uma plataforma multimídia, que funciona bem para usuários domésticos, mas não para os profissionais de TI.
Sergiy Belozorov 28/08
0

No ubuntu 12.10 (quantal), você pode usar os dois comandos a seguir:

#foreground white => black
sudo sed -i s/tooltip_fg_color:#ffffff/tooltip_fg_color:#000000/g  /usr/share/themes/Ambiance/gtk-3.0/settings.ini /usr/share/themes/Ambiance/gtk-3.0/gtk.css /usr/share/themes/Ambiance/gtk-2.0/gtkrc
#background black => yellow
sudo sed -i s/tooltip_bg_color:#000000/tooltip_bg_color:#f5f5b5/g  /usr/share/themes/Ambiance/gtk-3.0/settings.ini /usr/share/themes/Ambiance/gtk-3.0/gtk.css /usr/share/themes/Ambiance/gtk-2.0/gtkrc

(Graças às outras respostas que me ajudaram a descobrir isso!)

AmanicA
fonte
0

Esta resposta é para indicar um caso raro em que ocorre um erro muito semelhante se você instalou o xulrunner e configurou o eclipse para usá-lo.

Instalei o xulrunner para fazer o GPE Designer renderizar adequadamente as interfaces de usuário do GWT no modo de design, que funcionou muito bem, mas achei que ele também quebrou as dicas de ferramentas. O bug é realmente pior do que a captura de tela acima, apenas exibe uma dica em branco.

Para corrigi-lo, você só precisa remover o parâmetro xulrunner de eclipse.ini:

-Dorg.eclipse.swt.browser.XULRunnerPath=/path/to/xulrunner/

Funcionou para mim com o Ubuntu 12.04, Eclipse 4.2 / Juno e xulrunner 1.9.2

carrizo
fonte
0

Para usuários elementares:

Vá para /usr/share/themes/elementary/gtk-3.0, edite o arquivo gtk-widgets.csscom sudo nano, digite Ctrl + Wpara localizar Tooltipse, em seguida, background-color: alpha(#color, #opacity)altere a cor para algo como #f5f5b5e defina a opacidade como 1.

usuario
fonte
0

Para abrir a janela Aparência com a guia Tab: Temas diretamente da gravação root @ terminal (você pode usar este comando também para script):

sudo -u USER gnome-appearance-properties -p theme

onde USERestá seu usuário atual na área de trabalho. Ele abrirá a Aparência corretamente, mas você ainda precisará clicar na exibição do tema na janela Aparência para iniciar o seu tema.

Para o teste com o tema de instalação: Dust from root @ terminal, comando:

sudo -u USER gnome-appearance-properties -i /home/USER/Desktop/Dust-0.4.tar.gz

recebe este erro:

(gnome-aparecimento-propriedades: 16161): Gtk-WARNING **: Não foi possível localizar o mecanismo do tema no module_path: "murrine"

mas se o tema: Poeira estiver sendo instalado, escolha o menu: Sistema / Preferências / Aparência e instala a partir da janela Aparência, instalação do tema: Poeira está correta.

É necessário um comando responsável por escolher temas na janela Aparência, mas não consigo encontrá-lo.

Khmer
fonte
0

Estou executando o Kubuntu 16.04 com o tema Breeze e o Eclipse 4.6.1 com o GTK3 padrão agora que eles corrigiram o problema de preenchimento de botão.

Para obter dicas de ferramentas instantâneas com fundo cinza claro e primeiro plano preto, fiz algumas alterações em /usr/share/themes/Breeze-gtk/gtk-3.0/gtk.css; Aqui está o que eu acabei com:

/************
 * Tooltips *
 ************/
.tooltip {
  color: #000000;
  padding: 4px;
  box-shadow: none;
}
.tooltip.background {
    background-color: #f5f5f5;
    background-clip: padding-box;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

E o original:

/************
 * Tooltips *
 ************/
.tooltip {
  color: white;
  padding: 4px;
  /* not working */
  border-radius: 5px;
  box-shadow: none;
  text-shadow: 0 1px black; }
  .tooltip.background {
    background-color: rgba(0, 0, 0, 0.8);
    background-clip: padding-box;
    border: 1px solid rgba(255, 255, 255, 0.1); }

Caso os links não estejam funcionando nos pop-ups Javadoc, pode ser útil instalar da seguinte libwebkitgtkmaneira:

sudo apt install libwebkitgtk-1.0-0
Mike Partridge
fonte