Так как 17,10 решений, работающих в предыдущих версиях, больше не работают (Например, опция 2 N0rberts ("Удаляют материал полосы прокрутки наложения") в Gtk-сообщении: Отказавший к загрузочному модулю "полоса прокрутки наложения" Ubuntu 17.10.).
Причиной, почему решения, работающие в более старых версиях Ubuntu, не работают больше, являются изменения в CSS, который GTK + использует для моделирования и расположения.
Поместите это в свой ~/.config/gtk-3.0/gtk.css (создайте файл, при необходимости):
/*************
* 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;
}
Поместите то же в/root/.config/gtk-3.0/gtk.css для получения того же опыта полосы прокрутки для корневых приложений как Синаптический.
И это препятствует тому, чтобы полоса прокрутки исчезла, когда Вы неактивны:
echo "GTK_OVERLAY_SCROLLING=0" >> /etc/environment
Для изменений для вступления в силу Вы, возможно, должны были бы перезапустить приложения resp., выходят и заходят снова.
Я не абсолютно удовлетворен этим решением хотя, потому что полосы прокрутки не выглядят столь "профессиональными", как можно было бы ожидать и потому что они выглядят по-другому в различных приложениях. Например, взгляд степперов хорошо в Firefox - стрелки вверх и вниз видим. В Терминале Gnome и Наутилусе они - просто некоторые скругленные прямоугольники без стрелок (а также в приложении я разрабатываю).
Другие приложения идут со своими "собственными" полосами прокрутки - например, Geany. Они абсолютно незатронуты этими настройками и все еще смотрят, как можно было бы ожидать от достойных полос прокрутки. Возможно, кто-то может выяснить, как "украсть" их у Geany. Обновление: В 18.04 Geany больше не идет со своими собственными полосами прокрутки, но например, FBReader, и Gimp все еще делают.
Однако избавление от деформирующегося ползунка все еще работает старым способом:
echo "gtk-primary-button-warps-slider = false" >> /etc/gtk-3.0/settings.ini
Я создал подборку с различных сайтов в Интернете (прежде всего Linux Mint Forum) свою собственную полосу прокрутки для темы Ambiance в Ubuntu 18.04. У него нет оверлеев. Вы должны поместить код в ~ / .config / gtk-3.0 / gtk.css, в конце концов, с другими настройками. Выйдите и войдите, чтобы вступить в силу. Используйте его, если вам это нравится:
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%);
Возможное решение состоит в том, чтобы переключить тему с Окружения или Сияния к Adwaita с gnome-tweaks
:
gnome-tweaks
с sudo apt-get install gnome-tweaks
gnome-tweaks
Или переключитесь на порт GTK3 темы Clearlooks (установите его с sudo apt-get install clearlooks-phenix-theme
).
Я еще не нашел управляемое CSS решение.