¿Cómo cambiar el color de la barra de desplazamiento?

20

Las barras de desplazamiento en Unity tienen un contraste muy bajo, y no puedo ver dónde está usando solo la visión periférica. Tengo que mirar la barra de desplazamiento.

Mire la interfaz de Mac OS X y observe la barra de desplazamiento azul y contrastante. No necesita mirarlo directamente para tener la idea de dónde se encuentra en la página.

¿Cómo puedo cambiarlo para que tenga más contraste y ver dónde estoy cada vez?

culebrón
fuente
1
@ culebrón aquí está tu captura de pantalla con un desenfoque radial y una barra de desplazamiento 'invisible'. Te dejaré agregarlo a tu pregunta si quieres.
Tom Brossman
@ culebrón, ¿podría ser esta pregunta el problema que estás enfrentando?
Bruno Pereira
2
Informe de error relacionado: Error # 563474
Christopher Kyle Horton
Sugerir la pregunta no apropiada para los sitios de SE: ¿Por qué los desarrolladores pensaron que una barra de desplazamiento de tan bajo contraste era una buena interfaz de usuario?
neuronet

Respuestas:

19

Un poco tarde, pero quizás he encontrado una solución GUI bastante agradable y fácil:

gnome-color-chooser Instalar gnome-color-chooser

configuración de la barra de desplazamiento en Gnome Color Chooser

Destacar:

  • Solución completamente GUI, no es necesario jugar manualmente con ~/.gtkrc
  • Solo cambia la configuración que verifica. Desactívelos para volver al valor predeterminado.
  • Los cambios se aplican tan pronto como hace clic Apply. No es necesario cambiar de tema de un lado a otro
  • No necesita sudo (pero los cambios son solo para su usuario)
  • Se aplica solo a las barras de desplazamiento "heredadas" (las que necesitan ser reparadas). La barra de desplazamiento "superpuesta" no se modifica.

Los cambios son bastante discretos: edita (o crea) ~/.gtkrcpara incluir su propio archivo de configuración:

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

Y ese archivo también es bastante delgado:

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

Por cierto, he elegido los colores anteriores de los experimentos. Se mezclan muy bien con el estilo "monocromático" de Ambiance, siendo un poco más oscuro (y, por lo tanto, más visible) que el predeterminado.

Hasta que Firefox obtenga barras de desplazamiento superpuestas, estoy bastante contento con mis colores personalizados :)

MestreLion
fuente
Intenté esto en Unity Ubuntu 14.04, no tuvo ningún efecto en mis barras de desplazamiento que he notado hasta ahora (incluso después de reiniciar).
neuronet
@neuronet: Sí, he notado que esto dejó de funcionar en versiones recientes de Firefox (de 45 o 47)
MestreLion
¿Por qué los desarrolladores de Unity no pueden hacer de esto una parte destacada de la configuración del sistema? La cantidad de tiempo que me ha molestado por esto podría haber desarrollado un nuevo sistema operativo. :)
neuronet
11

Construí sobre lo que culebrón describió y accidentalmente creé algo que creo que es bastante impresionante ...

Abrir /usr/share/themes/Ambiance/gtk-2.0/gtkrccomo root para modificación:

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

Luego modifique la sección correspondiente en ese archivo a lo siguiente (recuerde hacer una copia de seguridad de los valores predeterminados en caso de que no le gusten los cambios):

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}
    }
}

Guarde, luego aplique los cambios alternando temas o cerrando sesión.

Las barras de desplazamiento nuevas, impresionantes y utilizables pueden verse así:

askuhn
fuente
Por alguna razón, hacer esto no afecta en absoluto a las barras de desplazamiento del terminal. ¡Incluso jugueteé /usr/share/themes/Ambiance/gtk-2.0/apps/gnome-terminal.rcpero no me alegré!
adarshr
Lo siento, adarshr, pero no estoy lo suficientemente familiarizado con el tema para ayudarte con las barras de desplazamiento de la Terminal. Esperemos que alguien más pueda saltar con una solución. :)
askuhn
9

Lo anterior cambia la barra de desplazamiento para las aplicaciones que usan los archivos de tema gtk2. También lo hace el gnome-color-chooser, (al menos el que está en el repositorio actual). Para aplicaciones gtk3, como gnome-terminal y gedit en 13.04 usando gnome-fallback, uno necesita cambiar /usr/share/themes/Ambiance/gtk-3.0/gtk-widgets.css.

Para hacer esto

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

y reemplace la * scrollbar *sección con esto:

/*************
 * 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 {
}

Esto proporciona una barra de desplazamiento en gtk3 que se ve así:

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

Lo cual es un poco similar al de gtk2 anterior. Sin embargo, las pequeñas garrapatas y los pasos adecuados no se incluyen aquí.

Tom Andreas Nærland
fuente
Funciona para terminal el 14.04, gracias.
markdsievers
3
Esto funciona muy bien para aplicaciones gtk3 como firefox 46 y superior. En lugar de modificar los archivos de tema originales, los cambios se pueden agregar a ~ / .config / gtk-3.0 / gtk.css, dando a cada usuario su propio aspecto preferido mientras conserva los originales.
yoyoma2
8

Encontré la solución: sudo y abrir /usr/share/themes/Ambiance/gtk-2.0/gtkrcy encontrar este código:

style "scrollbar" = "button" {

A continuación, entre llaves, cambie las líneas bg [ALGO] para que se vean así:

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

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

O mire los colores declarados en la línea 1 del archivo y seleccione el que prefiera. Para actualizar el aspecto, en Configuración del sistema / Apariencia, cambie el tema a otro y vuelva a Ambiente.

editar: Parece que Xterm usa el tema Radiance. Las barras de desplazamiento en Radiance son negras sobre negras y son invisibles. ¡Muy elegante, sí! Necesito editar ese tema también.

culebrón
fuente
Puede presentar un informe de error para notificar a los desarrolladores: necesitamos que el color de la barra de desplazamiento sea configurable y su caso de uso lo resaltará. Gracias.
fossfreedom
@fossfreedom, creo que podría editar la "Unidad" de la "Barra de desplazamiento de la Unidad", ya que creo que el OP se refiere a las barras de desplazamiento convencionales (gtk-2.0) que vemos en LibreOffice y Firefox, por ejemplo. Dejar "Unity" en su lugar puede dar la impresión de que se está hablando de las "nuevas" barras de desplazamiento de superposición.
@ vasa1 - Dejaré que el OP responda esta ...
fossfreedom
Podría ser una mejor idea hacer esta modificación en el directorio de un usuario en lugar de en todo el sistema
Jorge Castro
1

Aunque no es una respuesta directa a la pregunta, si no te gustan las nuevas barras de desplazamiento (no te culpo, en mi opinión personal son bastante horrendas), puedes volver a las barras de desplazamiento estándar ejecutando el siguiente comando:

sudo apt-get remove overlay-scrollbar liboverlay-scrollbar3-0.2-0 liboverlay-scrollbar-0.2-0
AClockWorkLemon
fuente
Es posible que el OP se preocupe por las barras de desplazamiento convencionales y no por la barra de desplazamiento de superposición, ya que la edición /usr/share/themes/Ambiance/gtk-2.0/gtkrcayudó.
Estoy de acuerdo con ellos, se ven elegantes, pero lo "elegante" es obviamente exagerado aquí, a costa de la usabilidad. Lo mismo ocurre con la moda de escribir en minúsculas o mayúsculas, "ubuntu". Cuantos menos palos sobresalen de la línea, peor es la legibilidad.
culebrón
La pregunta es obviamente sobre la barra de desplazamiento convencional (o "heredada"), ya que es la que tiene un contraste deficiente. Puede que le guste o no el nuevo estilo de superposición, pero su delgado color naranja sobre gris al menos tiene el contraste adecuado.
MestreLion
0

Otra alternativa:

Algunos temas que vienen con barras de desplazamiento de colores (Adwaita, NewLooks, etc.) tienen barras de desplazamiento que se pueden cambiar fácilmente alterando la selected_bg_colorconfiguración mediante dconf-editor: ¿Cómo cambio el color de "Elementos seleccionados"?

dgo.a
fuente