2 votes

Barre de défilement GTK avec un creux transparent ou non

Est-il possible dans GTK-2 ou/et GTK-3 d'enlever le passage de la barre de défilement ou le rendre invisible ?

Je sais qu'il existe des scripts pour supprimer les steppers de la barre de défilement, comme :

GtkScrollbar::has-forward-stepper = 0

Maintenant je veux savoir s'il existe un tel script pour supprimer l'auge.

En d'autres termes, la barre de défilement GTK est à la fin du contenu, mais je veux la mettre sur le contenu - tout comme la barre de défilement superposée.

EDIT : Clarifions ma question. J'ai modifié les thèmes GTK-2 et GTK-3 pour rendre les barres de défilement plus similaires à Overlay, car je n'aime pas les barres de défilement larges à faible contraste. J'ai donc modifié gtkrc y gtk-widgets.css fichiers pour changer la couleur du curseur en orange et le creux en blanc, mais comme on le voit dans la capture d'écran ci-dessous, le contraste entre le creux et un fond sombre est gênant.

gtk-2 white trough on a dark background

La question est ici si c'est possible de complètement supprimer l'auge ou le rendre transparent . Je suppose que la dernière possibilité existe.

Mon idéal est quelque chose comme ça :

Terminal with Overlay scrollbar which has no trough

2voto

AliN Points 5534

Les couleurs transparentes (RGBA) sont possibles en GTK-3 en utilisant alpha ainsi pour rendre la cuvette transparente :

.scrollbar.trough,
.scrollbar.trough.vertical {
    border: alpha (@base_color, 0.0);
    background: alpha (@base_color, 0.0);
}

Je ne connais pas encore GTK-2.

1voto

Je ne suis pas sûr d'avoir bien compris votre question, mais...

J'utilise Lubuntu 13.04 avec le thème Greybird ( sudo apt-get install shimmer-themes ). J'ai lourdement modifié les aspects gtk2 et gtk3 pour les adapter à mes goûts. L'image montre un peu d'une fenêtre gedit (en haut) et un peu de mon gestionnaire de fichiers, Thunar (en bas). Comme vous pouvez le voir, le creux n'est pas vraiment distinctif.

                                                     scrollbar trough

Pour obtenir cet effet, si c'est ce que vous recherchez, j'ai édité ~/.themes/MyGreybird/gtk-2.0/gtkrc y ~/.themes/MyGreybird/gtk-3.0/gtk.css y ~/.themes/MyGreybird/gtk-3.0/gtk-widgets.css .

Malheureusement, je ne peux pas vraiment dire si c'est ce hack ou celui-là qui m'a donné le look actuel. Si vous cherchez quelque chose comme ce que j'ai, essayez d'éditer les fichiers similaires à ceux que j'ai mentionnés en cherchant des choses comme :

  • GtkScrollbar ::trough-border
  • prelight_shade ... # niveau d'ombrage pour le curseur de la barre de défilement, comboboxstyle(1), et état de pré-éclairage avec gradient_colors
  • trough_shades # dessiner un gradient sur le creux de GtkScrollbar et GtkProgressbar

Ceux-ci sont en gtkrc et je les ai commentés dans mon thème en ayant # au début de la ligne.

Ensuite, en gtk-widgets.css mon thème a :

.scrollbars-junction,
.scrollbar.trough,
.scrollbar.trough.vertical {
    border-width: 0;
    border-radius: 0;
/*    background-image: -gtk-gradient(linear, left top, right top,
                                     from (shade(@theme_bg_color, 1.1)),
                                     to (shade(@theme_bg_color, 1.3)));*/
    background-color: shade(@theme_bg_color, 0.9);
}

.scrollbar.trough.horizontal {
/*    background-image: -gtk-gradient(linear, left top, left bottom,
                                     from (shade(@theme_bg_color, 1.1)),
                                     to (shade(@theme_bg_color, 1.3)));*/
    background-color: shade(@theme_bg_color, 0.9);
}

Encore une fois, j'ai commenté certaines choses (en utilisant /* y */ ).

Je ne suis pas sûr d'avoir été très clair mais, en gros, il suffit de chercher des choses pertinentes et de les commenter ou de les modifier !

J'utilise gedit comme éditeur avec un plug-in qui enregistre plusieurs sauvegardes horodatées, de sorte que si je casse quelque chose, je peux revenir en arrière.

Veuillez noter que certaines applications peuvent avoir leur propre système de barre de défilement et que vous devrez vous en occuper séparément.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X