Comment changer la couleur de la barre de défilement?

20

Les barres de défilement dans Unity présentent un contraste très faible et je ne vois pas où la barre utilise uniquement la vision périphérique. Je dois regarder la barre de défilement.

Regardez l'interface Mac OS X et notez la barre de défilement bleue et contrastée. Vous n'avez pas besoin de le regarder directement pour avoir une idée de l'endroit où vous vous trouvez dans la page.

Comment puis-je le changer pour qu'il ait plus de contraste et que je voie où je suis à chaque fois?

culebrón
la source
1
@ culebrón voici votre capture d' écran avec un flou radial et une barre de défilement «invisible». Je vous laisse l'ajouter à votre question si vous le souhaitez.
Tom Brossman
@ culebrón cette question pourrait-elle être le problème auquel vous êtes confronté?
Bruno Pereira
2
Rapport de bogue associé: Bogue n ° 563474
Christopher Kyle Horton,
Suggérant la question non appropriée pour les sites SE: Pourquoi les développeurs pensaient-ils qu'une barre de défilement aussi faible contraste était une bonne interface utilisateur?
neuronet

Réponses:

19

Un peu tard, mais j'ai peut-être trouvé une solution GUI assez agréable et facile:

gnome-color-chooser Installer gnome-color-chooser

paramètres de la barre de défilement dans le sélecteur de couleurs Gnome

Points forts:

  • Solution entièrement graphique, pas besoin de manipuler manuellement ~/.gtkrc
  • Modifie uniquement les paramètres que vous vérifiez. Décochez-les pour revenir à leur valeur par défaut.
  • Les modifications sont appliquées dès que vous cliquez sur Apply. Pas besoin de changer de thème d'avant en arrière
  • Pas besoin de sudo (mais les modifications concernent uniquement votre utilisateur)
  • S'applique uniquement aux barres de défilement "héritées" (celles qui doivent être corrigées). La barre de défilement "superposition" n'est pas modifiée.

Les changements sont assez discrets: il édite (ou crée) ~/.gtkrcpour inclure son propre fichier de configuration:

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

Et ce fichier est assez mince aussi:

style "gnome-color-chooser-scrollbar"
{
  bg[NORMAL] = "#ACACAC"
  bg[PRELIGHT] = "#808080"
  bg[ACTIVE] = "#ACACAC"
}
widget_class "*Scrollbar" style "gnome-color-chooser-scrollbar"

Btw, j'ai choisi les couleurs ci-dessus à partir d'expériences. Ils se fondent parfaitement dans le style "monochrome-ish" d'Ambiance, étant juste un peu plus sombre (et donc plus visible) que par défaut.

Jusqu'à ce que Firefox obtienne des barres de défilement de superposition, je suis assez satisfait de mes couleurs personnalisées :)

MestreLion
la source
J'ai essayé cela dans Unity Ubuntu 14.04, cela n'a eu aucun effet sur mes barres de défilement que j'ai remarqué jusqu'à présent (y compris après le redémarrage).
neuronet
@neuronet: Oui, j'ai remarqué que cela ne fonctionnait plus dans les versions récentes de Firefox (à partir de 45 ou 47)
MestreLion
Pourquoi les bips ne peuvent-ils pas simplement faire en sorte que les développeurs Unity en fassent partie intégrante des paramètres système? Le temps que cela m'a ennuyé, j'aurais pu développer un nouveau système d'exploitation. :)
neuronet
11

J'ai construit sur ce que culebrón a décrit et créé accidentellement quelque chose que je trouve assez génial ...

Ouvrir en /usr/share/themes/Ambiance/gtk-2.0/gtkrctant que root pour modification:

gksu gedit /usr/share/themes/Ambiance/gtk-2.0/gtkrc

Modifiez ensuite la section correspondante dans ce fichier comme suit (n'oubliez pas de sauvegarder les valeurs par défaut au cas où vous n'aimeriez pas les modifications):

style "scrollbar" = "button" {
    xthickness = 2
    ythickness = 2

    bg[NORMAL] = shade (0.62, @bg_color)
    bg[PRELIGHT] = shade (0.66, @bg_color)

    bg[ACTIVE] = shade (0.64, @bg_color)

    engine "murrine"
    {
        border_shades = {0.95, 0.90}
        roundness = 3
        contrast = 1.0
        trough_shades = {0.92, 0.98}
        lightborder_shade = 1.3
        glowstyle = 5
        glow_shade = 1.02
        gradient_shades = {1.2, 1.0, 1.0, 0.86}
        trough_border_shades = {0.9, 0.98}
    }
}

Enregistrez, puis appliquez les modifications en basculant les thèmes ou en vous déconnectant.

Les nouvelles barres de défilement, impressionnantes et utilisables, pourraient ressembler à:

askuhn
la source
Pour une raison quelconque, cela n'affecte pas du tout les barres de défilement du terminal. J'ai même tripoté /usr/share/themes/Ambiance/gtk-2.0/apps/gnome-terminal.rcmais pas de joie!
adarshr
Désolé adarshr, mais je ne suis pas assez familier avec le thème pour vous aider avec les barres de défilement du terminal. Espérons que quelqu'un d'autre puisse intervenir avec une solution. :)
askuhn
9

Ce qui précède modifie la barre de défilement pour les applications qui utilisent les fichiers de thème gtk2. Il en va de même pour le sélecteur de couleurs gnome (au moins celui du référentiel actuel). Pour les applications gtk3, comme gnome-terminal et gedit en 13.04 utilisant gnome-fallback, il faut changer /usr/share/themes/Ambiance/gtk-3.0/gtk-widgets.css.

Pour faire ça

sudo gedit /usr/share/themes/Ambiance/gtk-3.0/gtk-widgets.css

et remplacez la * scrollbar *section par ceci:

/*************
 * scrollbar *
 *************/
.scrollbar,
.scrollbar.vertical {
    -GtkScrollbar-has-backward-stepper: 0;
    -GtkScrollbar-has-forward-stepper: 0;
    -GtkRange-slider-width: 14;

    border-radius: 3px;

    border-image: none;
}

.scrollbar.trough,
.scrollbar.trough.vertical {
    border-color: shade (@bg_color, 0.64);
}

.scrollbar.trough.horizontal {
}

.scrollbar.slider,
.scrollbar.slider:hover,
.scrollbar.button,
.scrollbar.slider.vertical,
.scrollbar.slider.vertical:hover,
.scrollbar.button.vertical {
    border-width: 1px;
    border-style: solid;
    border-color: shade (@bg_color, 0.4);
    background-image: -gtk-gradient (linear, left top, right top,
                                     from (shade (@button_bg_color, 0.76)),
                                     to (shade (@button_bg_color, 0.62)));
    box-shadow: inset 1px 0 shade (@button_bg_color, 0.85),
                inset -1px 0 shade (@button_bg_color, 0.62),
                inset 0 1px shade (@button_bg_color, 0.9),
                inset 0 -1px shade (@button_bg_color, 0.62);
}

.scrollbar.slider.horizontal,
.scrollbar.slider.horizontal:hover,
.scrollbar.button.horizontal {
    background-image: -gtk-gradient (linear, left top, left bottom,
                                     from (shade (@button_bg_color, 0.76)),
                                     to (shade (@button_bg_color, 0.62)));
    box-shadow: inset 1px 0 shade (@button_bg_color, 0.85),
                inset -1px 0 shade (@button_bg_color, 0.62),
                inset 0 1px shade (@button_bg_color, 0.9),
                inset 0 -1px shade (@button_bg_color, 0.62);

}

.scrollbar.button,
.scrollbar.button:insensitive {
}

Cela donne une barre de défilement dans gtk3 qui ressemble à ceci:

http://i.stack.imgur.com/m385G.png

Ce qui est un peu similaire à celui de gtk2 ci-dessus. Les petites tiques et les steppers appropriés ne sont pas inclus ici cependant.

Tom Andreas Nærland
la source
Fonctionne pour le terminal le 14.04, merci.
markdsievers
3
Cela fonctionne très bien pour les applications gtk3 comme firefox 46 et supérieur. Au lieu de modifier les fichiers de thème d'origine, les modifications peuvent être ajoutées à ~ / .config / gtk-3.0 / gtk.css en donnant à chaque utilisateur son apparence préférée tout en préservant les originaux.
yoyoma2
8

Trouvé la solution: sudo et ouvrez /usr/share/themes/Ambiance/gtk-2.0/gtkrcet trouvez ce code:

style "scrollbar" = "button" {

Au-dessous des accolades, changez les lignes bg [QUELQUE CHOSE] pour qu'elles ressemblent à:

    bg[NORMAL] = @selected_bg_color
    bg[PRELIGHT] = shade (1.04, @selected_bg_color)

    bg[ACTIVE] = shade (0.96, @selected_bg_color)

Ou regardez les couleurs déclarées à la ligne 1 du fichier et sélectionnez celle que vous préférez. Pour mettre à jour l'apparence, dans Paramètres système / Apparence, changez le thème en un autre et revenez à Ambiance.

edit: Apparaît que Xterm utilise le thème Radiance. Les barres de défilement de Radiance sont noires sur noir et sont tout simplement invisibles. Si élégant, oui! Vous devez également modifier ce thème.

culebrón
la source
Veuillez déposer un rapport de bogue pour informer les développeurs - nous avons besoin de la couleur de la barre de défilement configurable et votre cas d'utilisation le mettra en évidence. Merci.
fossfreedom
@fossfreedom, je pense que vous pouvez éditer le "Unity" de "Unity scroll-bar" car je pense que l'OP fait référence aux barres de défilement conventionnelles (gtk-2.0) que nous voyons dans LibreOffice et Firefox, par exemple. Laisser "Unity" en place peut donner l'impression qu'il s'agit des "nouvelles" barres de défilement de superposition dont on parle.
@ vasa1 - Je laisserai l'OP répondre à celle-ci ...
fossfreedom
Il serait peut-être préférable de faire cette modification dans le répertoire d'un utilisateur au lieu de l'ensemble du système
Jorge Castro
1

Bien que ce ne soit pas une réponse directe à la question, si vous n'aimez pas les nouvelles barres de défilement (je ne vous en veux pas, elles sont assez horribles à mon avis), vous pouvez revenir aux barres de défilement standard en exécutant la commande suivante:

sudo apt-get remove overlay-scrollbar liboverlay-scrollbar3-0.2-0 liboverlay-scrollbar-0.2-0
AClockWorkLemon
la source
Il est possible que l'OP se préoccupe des barres de défilement conventionnelles et non de la barre de défilement de superposition, car l'édition a /usr/share/themes/Ambiance/gtk-2.0/gtkrcaidé.
Je suis d'accord avec eux, ils ont l'air élégant, mais la chose "élégante" est évidemment exagérée ici, au détriment de la convivialité. Il en va de même pour la mode d'écriture en toutes petites lettres ou en majuscules, "ubuntu". Moins il y a de bâtons qui dépassent de la ligne, pire est la lisibilité.
culebrón
La question concerne évidemment la barre de défilement conventionnelle (ou "héritée"), car c'est celle qui présente un contraste médiocre. Vous aimerez peut-être le nouveau style de superposition, mais sa fine orange sur le gris a au moins un contraste approprié.
MestreLion
0

Une autre alternative:

Certains thèmes fournis avec des barres de défilement colorées (Adwaita, NewLooks, etc.) ont des barres de défilement qui peuvent être facilement modifiées en modifiant le selected_bg_colorparamètre à l'aide de dconf-editor: Comment puis-je changer la couleur des «éléments sélectionnés»?

dgo.a
la source