Wie entferne ich Overlay-Bildlaufleisten in Ubuntu 17.10 und 18.04?

Antworten:

3

Der Grund, warum Lösungen, die in älteren Ubuntu-Versionen funktionieren, nicht mehr funktionieren, sind Änderungen in CSS, die GTK + für das Styling und Layout verwendet.

Fügen Sie dies in Ihre ~ / .config / gtk-3.0 / gtk.css ein (erstellen Sie gegebenenfalls die Datei):

/*************
 * scrollbar *
 *************/

.scrollbar,
scrollbar {
    -GtkScrollbar-has-backward-stepper: 1;
    -GtkScrollbar-has-forward-stepper: 1;
}

scrollbar slider {
    background-color: @scrollbar_track_color;
}

.scrollbar.vertical slider,
scrollbar.vertical slider {
    min-height: 15px;
    min-width: 10px;
}

.scrollbar.horizontal.slider,
scrollbar.horizontal slider {
    min-width: 15px;
    min-height: 10px;
}

.scrollbar.vertical.slider:hover,
scrollbar.vertical:hover slider {
    min-width: 10px;
}

.scrollbar.horizontal.slider:hover,
scrollbar.horizontal:hover slider {
    min-height: 10px;
}

.scrollbar.contents,
scrollbar contents {
    background-color: transparent;
    background-image: none;
    background-size: 0;
    border: none;
    border-radius: 0;
}

.scrollbar.trough,
scrollbar trough {
    background-image: none;
    border: none;
}

.scrollbar:hover:backdrop,
.scrollbar.dragging:backdrop,
scrollbar:hover:backdrop,
scrollbar.dragging:backdrop {
    background-color: alpha(@backdrop_selected_bg_color, 0.5);
}


.scrollbar.vertical:hover:dir(ltr),
.scrollbar.vertical:active:dir(ltr),
scrollbar.vertical:hover:dir(ltr),
scrollbar.vertical:active:dir(ltr) {
    margin-left: 0px;
}

.scrollbar.vertical:hover:dir(rtl),
.scrollbar.vertical:active:dir(rtl),
scrollbar.vertical:hover:dir(rtl),
scrollbar.vertical:active:dir(rtl) {
    margin-right: 0px;
}

.scrollbar.horizontal:hover,
.scrollbar.horizontal:active,
scrollbar.horizontal:hover,
scrollbar.horizontal:active {
    margin-top: 0px;
}

.scrollbar.slider,
scrollbar slider {
    background-color: alpha(@backdrop_filling_bg, 0.75);
    border-radius: 10px;
}

.scrollbar.slider:hover,
.scrollbar.slider:active,
scrollbar slider:hover,
scrollbar slider:active {
    border-radius: 20px;
    margin: 0;
}


.scrollbar.vertical:dir(ltr):not(:hover):not(.dragging),
scrollbar.vertical:dir(ltr):not(:hover):not(.dragging) {
    margin-left: 0px;
}

.scrollbar.vertical:dir(rtl):not(:hover):not(.dragging),
scrollbar.vertical:dir(rtl):not(:hover):not(.dragging) {
    margin-right: 0px;
}

.scrollbar.horizontal:not(:hover):not(.dragging),
scrollbar.horizontal:not(:hover):not(.dragging) {
    margin-top: 0px;
}


.scrollbar.slider:hover,
scrollbar slider:hover {
    background-color: alpha(@backdrop_filling_bg, 0.6);
}

.scrollbar.slider:active,
scrollbar slider:active {
    background-color: @backdrop_filling_bg;
}

.scrollbar.slider:backdrop,
scrollbar slider:backdrop {
    background-color: alpha(@backdrop_filling_bg, 0.75);
}

.scrollbar.slider:hover:backdrop,
scrollbar slider:hover:backdrop {
    background-color: alpha(@backdrop_filling_bg, 0.6);
}

.scrollbar.slider:active:backdrop,
scrollbar slider:active:backdrop {
    background-color: @backdrop_filling_bg;
}

Fügen Sie dasselbe in /root/.config/gtk-3.0/gtk.css ein, um die gleiche Bildlaufleistenerfahrung für Root-Anwendungen wie Synaptic zu erhalten.

Und dies verhindert, dass die Bildlaufleiste verschwindet, wenn Sie inaktiv sind:

echo "GTK_OVERLAY_SCROLLING=0" >> /etc/environment

Damit Änderungen wirksam werden, müssen Sie möglicherweise die Anwendungen neu starten. Melden Sie sich ab und wieder an.

Ich bin mit dieser Lösung jedoch nicht ganz zufrieden, da die Bildlaufleisten nicht so "professionell" aussehen, wie man es erwarten könnte, und weil sie in verschiedenen Anwendungen unterschiedlich aussehen. ZB sehen die Stepper in Firefox OK aus - die Aufwärts- und Abwärtspfeile sind sichtbar. In Gnome Terminal und Nautilus sind dies nur einige abgerundete Rechtecke ohne Pfeile (sowie in der Anwendung, die ich entwickle).

Andere Anwendungen verfügen über "eigene" Bildlaufleisten - z. B. Geany. Sie sind von diesen Einstellungen völlig unberührt und sehen immer noch so aus, wie man es von anständigen Bildlaufleisten erwarten würde. Vielleicht kann jemand herausfinden, wie man sie Geany "stiehlt". Update: In 18.04 kommt Geany nicht mehr mit eigenen Bildlaufleisten, aber zB FBReader und Gimp immer noch.

Das Entfernen des Warping-Schiebereglers funktioniert jedoch immer noch auf die alte Weise:

echo "gtk-primary-button-warps-slider = false" >> /etc/gtk-3.0/settings.ini
wdp
quelle
Danke, diese Tortur hat funktioniert, aber ich verstehe nicht, warum sie nicht einfach den zugrunde liegenden Fehler beheben. Bildlaufleisten sind eine äußerst grundlegende Funktion der Benutzeroberfläche, und es ist absurd, dass Linux sie immer noch nicht dazu bringt, zuverlässig sichtbar zu bleiben.
Boann
Dies funktioniert für mich in KUbuntu 18.04, mit der Ausnahme, dass in Firefox 70.0.1 der Daumen der Bildlaufleiste unsichtbar wird.
NXT
2

Mögliche Lösung besteht darin, das Thema von Ambiance oder Radiance zu Adwaita zu wechseln , mit gnome-tweaks:

  1. Installieren gnome-tweaksmitsudo apt-get install gnome-tweaks
  2. Starten gnome-tweaks
  3. Gehen Sie zur Registerkarte Darstellung , erweitern Sie unter Themen Anwendungen und wählen Sie hier Adwaita aus.

Oder wechseln Sie zum GTK3-Port des Clearlooks-Themas (installieren Sie es mit sudo apt-get install clearlooks-phenix-theme).

Ich habe noch keine CSS-gesteuerte Lösung gefunden.

N0rbert
quelle
0

Ich habe auf verschiedenen Websites im Web (vor allem im Linux Mint Forum) meine eigene Bildlaufleiste für das Thema Ambiance in Ubuntu 18.04 erstellt. Es hat keine Überlagerungen. Sie müssen den Code schließlich mit anderen Optimierungen in die Datei ~ / .config / gtk-3.0 / gtk.css einfügen. Melden Sie sich ab und an, um wirksam zu werden. Verwenden Sie es, wenn es Ihnen gefällt:

    scrollbar slider {
    /* Size of the slider */
    min-width: 18px;
    min-height: 18px;
    border-radius: 15px;

    /* Padding around the slider */
    border: 1px solid #606307;
}

scrollbar trough {
    background-color: shade(@theme_bg_color, 0.5);
}

scrollbar button,
scrollbar button.vertical,
scrollbar button.horizontal,
scrollbar .button,
scrollbar .button.vertical,
scrollbar .button.horizontal {
    color: shade(@theme_bg_color, 0.10);
    background-color: shade(@theme_bg_color, 0.6);
}

scrollbar.vertical slider,
scrollbar.vertical .slider {
    background-image: radial-gradient(ellipse at center, #dba13f 0%, #7c4e00 100%);
}

scrollbar.horizontal slider,
scrollbar.horizontal .slider {
    background-image: radial-gradient(ellipse at center, #dba13f 0%, #7c4e00 100%);
Alessandro D'lncal
quelle