Как получить большую статическую полосу прокрутки (она же обычная полоса прокрутки)?

Я рад, что внешние полосы прокрутки наложения наконец исчезли.

Но полоса прокрутки - все еще тонкая линия бритвы, которая становится менее тонкой полосой прокрутки, но все же тонкой полосой прокрутки при наведении курсора мыши.

Как я могу получить нормальную полосу прокрутки? То есть, как и в других ОС, как в Firefox, полоса прокрутки, которая не меняется в зависимости от того, на что указывает мышь, и с хорошей шириной.

Я уже пробовал

gsettings set com.canonical.desktop.interface scrollbar-mode normal

, но не повезло.

57
задан 24 January 2018 в 12:46

6 ответов

Отредактируйте этот файл /usr/share/themes/Ambiance/gtk-3.0/gtk-widgets.css

Найдите эту строку (около строки 1200): -GtkRange-slider-width: 10;

И измените 10 на большее число, например 20 или 30, и готово:)

Я тоже думаю, что они слишком маленькие ...

Смотрите это изображение:

enter image description here

Если вы измените размер полосы прокрутки на 16 и хотите, чтобы они оставались такими, а не сжимались, когда на ней нет мыши, то внесите изменения, указанные на рисунке выше.

Если вы используете размер кроме 16, просто поэкспериментируйте с размерами полей, чтобы получить правильный ответ.

23
ответ дан 24 January 2018 в 22:46

നിങ്ങൾ അവിടെ ജാഗ്രത പാലിക്കണമെന്ന് ഞാൻ കരുതുന്നു. സിസ്റ്റത്തിലെ എല്ലാ ഉപയോക്തൃ അക്ക of ണ്ടുകളുടെയും പ്രവർത്തനത്തിൽ‌ നിങ്ങൾ‌ ഇടപെടാൻ‌ ഉദ്ദേശിക്കുന്നില്ലെങ്കിൽ‌, ഒരു തീമിനായി സിസ്റ്റം വ്യാപകമായ സ്ഥിരസ്ഥിതികൾ‌ എഡിറ്റുചെയ്യാൻ‌ ഞങ്ങളിൽ‌ പലരും ശുപാർശ ചെയ്യുന്നില്ല. അത് ചെയ്യുമ്പോൾ നിങ്ങൾ ഒരു പിശക് സംഭവിക്കുകയാണെങ്കിൽ, അത് എല്ലാ ഉപയോക്തൃ അക്കൗണ്ടുകളെയും ബാധിക്കുന്നു. ജാഗ്രത പാലിക്കേണ്ട മറ്റൊരു കാര്യം, പാക്കേജുകൾ‌ അപ്‌ഡേറ്റുചെയ്യുമ്പോൾ‌, നിങ്ങളുടെ മാറ്റങ്ങൾ‌ മായ്‌ക്കപ്പെടും.

ഈ തന്ത്രത്തിന്റെ മറ്റൊരു പോരായ്മ, ഇത് ഒരു ജി‌ടി‌കെ തീമിൻറെ സ്വഭാവത്തെ മാത്രമേ മാറ്റുകയുള്ളൂ, പക്ഷേ എല്ലാ ജി‌ടി‌കെ- 3.0 തീമുകൾ.

പകരം, ഒരു ഉപയോക്തൃ അക്ക within ണ്ടിനുള്ളിലെ കോൺഫിഗറേഷൻ ഫയലുകൾ എഡിറ്റുചെയ്യുക. ആവശ്യമുള്ള എൻഡ്‌പോയിന്റിലേക്കുള്ള ഏറ്റവും കുറഞ്ഞ ദൂരം ഏതാണ് എന്ന് കണ്ടെത്തുക എന്നതാണ് തന്ത്രം. നിങ്ങൾ എഡിറ്റുചെയ്യുന്ന ജി‌ടി‌കെ ഫയൽ ഒരു സി‌എസ്‌എസ് (കാസ്കേഡിംഗ് സ്റ്റൈൽ ഷീറ്റുകൾ) സജ്ജീകരണത്തിന്റെ ഭാഗമാണ്, അതിനാൽ നിങ്ങളുടെ അക്കൗണ്ടിൽ ഇച്ഛാനുസൃതമാക്കൽ ക്രമീകരണങ്ങളിൽ മാറ്റം വരുത്തും. . നിങ്ങൾ മുകളിൽ എഡിറ്റുചെയ്യുന്ന തീം ഫയലിൽ നിന്ന് നിരവധി നിർദ്ദിഷ്ട മാറ്റങ്ങൾ സംയോജിപ്പിക്കാൻ കഴിയുമെന്ന് ഞാൻ കണ്ടെത്തും. ഒരു സമയത്ത്‌ ഞാൻ‌ വളരെയധികം ക്രമീകരണങ്ങൾ‌ ചെയ്യാൻ‌ ശ്രമിച്ചു, പക്ഷേ ഞാൻ‌ ഇപ്പോൾ‌ “ലളിതമായി സൂക്ഷിക്കുക” മോഡിലാണ്.

നിങ്ങൾ‌ക്ക് ധാരാളം ക്രമീകരണങ്ങൾ‌ എഡിറ്റുചെയ്യാൻ‌ താൽ‌പ്പര്യമുണ്ടെങ്കിൽ‌, ശരിയായത് കോപ്പി ചെയ്യുക എന്നതാണ് മുഴുവൻ gtk-widgets.css ഫയലും നിങ്ങളുടെ ~ / .config / gtk-3.0 ഫോൾഡറിൽ ഇടുക. ക്രമീകരണങ്ങളോടെ ടൗൺ ഫിഡ്‌ലിംഗിലേക്ക് പോകുക.

അതേ ഫോൾഡറിൽ, എനിക്ക് "settings.ini" എന്ന പേരിൽ ഒരു ഫയൽ ഉണ്ട്

[Settings]
gtk-primary-button-warps-slider = false

ഇത് സ്ക്രോൾബാറിലെ ഒരു ക്ലിക്ക് ഫയലിലെ ഒരു നിശ്ചിത പോയിന്റിലേക്ക് നീങ്ങുന്നത് തടയുന്നു, പകരം അത് ഒരു സ്ക്രീനിൽ മുന്നേറുന്നു. ഞാൻ അത് ഇഷ്ടപ്പെടുന്നു!

അറിഞ്ഞിരിക്കേണ്ട മറ്റൊരു കാര്യം, ആ തീം ഫയൽ മാറ്റുന്നത് (മുമ്പ് or ഡോറിയൻ ശുപാർശ ചെയ്തതോ അല്ലെങ്കിൽ ഞാൻ നിർദ്ദേശിച്ചതുപോലെ എല്ലാ ജിടികെ -32 അടിസ്ഥാനമാക്കിയുള്ള തീമുകൾക്കായുള്ള ഉപയോക്തൃ അക്ക change ണ്ട് മാറ്റമോ) അടിസ്ഥാനമാക്കിയുള്ള പ്രോഗ്രാമുകൾ മാത്രം മാറ്റുന്നു എന്നതാണ്. GTK-3.0 ടൂൾകിറ്റ്. ഇത് എല്ലാ അപ്ലിക്കേഷനുകൾക്കുമായുള്ള സ്ക്രോൾബാറിനെ മാറ്റില്ല. ആ gtk-3.0 കോൺഫിഗറേഷൻ ഫയൽ വായിക്കുന്നവർക്ക് മാത്രമാണ്. നിങ്ങൾ ഒരു gtk-3.0 തീം എഡിറ്റുചെയ്യുന്നതിനാൽ, QT അല്ലെങ്കിൽ gtk-2.0 ഉപയോഗിച്ച് എഴുതിയ അപ്ലിക്കേഷനുകൾ മാറില്ല. അതിനാൽ, എല്ലാ പ്രോഗ്രാമുകളുടെയും സ്ക്രോൾബാർ വലുപ്പം മാറ്റുന്നത് നിങ്ങൾ പ്രതീക്ഷിച്ചതിലും വളരെ ബുദ്ധിമുട്ടുള്ള / മടുപ്പിക്കുന്നതാണ്.

ജി‌ടി‌കെ -2 ലും ഞാൻ സ്ക്രോൾബാർ വീതി മാറ്റി. ഇത് ചെയ്തു ഒരു പ്രത്യേക ഫോൾഡർ ~ / .config / gtk-2.0. സൃഷ്ടിക്കേണ്ട ഫയലിന് പേര് നൽകിയിട്ടുണ്ട് gtkrc

style "scroll"
{
 GtkScrollbar::slider-width = 20
}

gtk-2.0 വ്യത്യസ്തമായി രൂപകൽപ്പന ചെയ്ത സജ്ജീകരണമാണ്, അതിനാൽ വാക്യഘടന വ്യത്യസ്തമാണ്, നിങ്ങൾക്ക് gtk-3.0 css gtk-2.0 ഫോൾഡറിലേക്ക് പകർത്താൻ കഴിയില്ല.

ചില അപ്ലിക്കേഷനുകൾ മോശമായി പെരുമാറുന്നത് ഞാൻ ശ്രദ്ധിച്ചു സ്ലൈഡർ തൊട്ടിനുള്ളിലെ "ഗ്രാബറിന്റെ" വലുപ്പം ശരിയായി വലുപ്പം മാറ്റാത്തതിനാൽ നിങ്ങൾ സ്ക്രോൾബാർ വ്യത്യസ്തമാക്കുന്നു. @ ഡോറിയന്റെ ഫയലിലെ സ്ക്രോൾ‌ബാർ‌-വലിച്ചിടൽ‌ മാറ്റങ്ങൾ‌ ഇതിന് സഹായിക്കുമെന്ന് ഞാൻ‌ സംശയിക്കുന്നു. ഞാൻ തിരിച്ചുവന്ന് അത് പരീക്ഷിക്കാം. ഞാൻ നിങ്ങളെ അറിയിക്കും.

സംഗ്രഹം: "പഴയ സമയ ലിനക്സ് സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്റർ ഉപദേശം" സിസ്റ്റം വ്യാപകമായ അടിസ്ഥാനത്തിൽ കോൺഫിഗറേഷൻ ഫയലുകൾ എഡിറ്റുചെയ്യരുത് എന്നതാണ്. നിങ്ങൾ നിങ്ങളുടെ സിസ്റ്റത്തെ അപകടത്തിലാക്കുന്നു, നിങ്ങളുടെ മാറ്റങ്ങൾ പുനരവലോകനങ്ങളിൽ നിലനിൽക്കില്ല, ഇതിന് റൂട്ട് ആക്സസ് ആവശ്യമാണ്, ഇത് ഇതുപോലുള്ള സൗന്ദര്യവർദ്ധക കാര്യങ്ങൾക്ക് ഒരിക്കലും നല്ലതല്ല. നിങ്ങളുടെ ഉപയോക്തൃ അക്കൗണ്ടിൽ മാറ്റങ്ങൾ വരുത്തുന്നതിനുള്ള ഒരു മാർഗം കണ്ടെത്തുക.

പി.എസ്. സിസ്റ്റം ഫയലുകളുമായി നിങ്ങൾക്ക് ശരിക്കും താൽപ്പര്യമുണ്ടെങ്കിൽ (എല്ലാ ഉപയോക്താക്കൾക്കും എന്റെ പ്രിയപ്പെട്ട ഫുട്ബോൾ ടീം നിറങ്ങൾ അവരുടെ വാൾപേപ്പറും വർണ്ണ സ്കീമും ആയിരിക്കണമെന്ന് ഞാൻ നിർബന്ധിക്കുന്നുവെങ്കിൽ ചിലപ്പോൾ ഞാൻ ചെയ്യും :)), നിങ്ങൾ ആദ്യം ചെയ്യേണ്ടത് അതിന്റെ ഒരു പകർപ്പ് ഉണ്ടാക്കുക എന്നതാണ് യഥാർത്ഥ ഫയലിന് യഥാർത്ഥ "gtk-widgets.css.orig" എന്ന് പേര് നൽകുക. നിങ്ങളുടെ ഫയൽ എഡിറ്റുചെയ്യുമ്പോൾ, നിങ്ങളുടെ എഡിറ്റിന്റെ ഒരു പകർപ്പ് "gtk-widgets.css.20160919" ആയി സംരക്ഷിക്കുക, അവിടെ എനിക്ക് YYYYMMDD തീയതി ഉണ്ട്. ഈ രീതിയിൽ, ഡെബ് പാക്കേജ് അപ്‌ഡേറ്റുചെയ്യുമ്പോൾ, നിങ്ങളുടെ എഡിറ്റുചെയ്‌ത ഫയലിന്റെ ഒരു പകർപ്പ് നിങ്ങൾക്ക് ലഭിക്കും. Gtk-widgets.css എന്ന് നിങ്ങൾ എഡിറ്റുചെയ്യുന്നവ പാക്കേജ് ഇൻസ്റ്റാളേഷൻ വഴി ഇല്ലാതാക്കപ്പെടും.

28
ответ дан 24 January 2018 в 22:46

Вот шаги для восстановления полос прокрутки, которые не исчезают и имеют постоянную ширину, то есть «классические». Протестировано в сеансе GNOME Flashback в Ubuntu 16.04 (также работает в Unity).

Шаг 1. Сделайте резервную копию / etc / environment . Запустите sudo nano / etc / environment и добавьте туда следующую строку:

GTK_OVERLAY_SCROLLING=0

Это предотвратит автоматическое скрытие полосы прокрутки.

Шаг 2. Чтобы избежать подделки основного файла темы /usr/share/themes/Ambiance/gtk-3.0/gtk-widgets.css , мы заимствуем оттуда код, изменим его и поместим в пользовательский папка профиля. Создайте ~ / .config / gtk-3.0 / gtk.css и вставьте в него следующие строки:

/* Adding the buttons on the edges (if you don't need them, skip the next 4 lines)
 */

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

/* Scrollbar trough squeezes when cursor hovers over it. Disabling that
 */

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

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

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

/* Slider widens to fill the scrollbar when cursor hovers over it. Making it permanent
 */

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

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

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

Шаг 3. Создайте ~ / .config / gtk-3.0 / settings.ini и добавьте в него следующие строки:

[Settings]
gtk-primary-button-warps-slider = false

Это восстановит постраничную прокрутку, когда вы щелкаете полосу прокрутки по обе стороны от слайдер. Если этот файл уже существует, просто добавьте последнюю строку в его раздел [Настройки] .

Шаг 4. Удалите пакеты overlay-scrollbar и overlay-scrollbar-gtk2 - они вам больше не понадобятся.

P.S. Если вы используете некоторые приложения, которым требуются права суперпользователя (например, Synaptic, Gedit и т. Д.), Вам также следует поместить эти файлы gtk.css и settings.ini в папку профиля root:

sudo cp ~/.config/gtk-3.0/gtk.css /root/.config/gtk-3.0/
sudo cp ~/.config/gtk-3.0/settings.ini /root/.config/gtk-3.0/

PPS Если вы обнаружите, что эти полосы прокрутки слишком узкие для вас, сделайте их шире. Просто добавьте следующую строку в ваш ~ / .config / gtk-3.0 / gtk.css :

.scrollbar {
  -GtkRange-slider-width: 15;
}

Увеличьте ширину по своему усмотрению (по умолчанию 10). При необходимости также обновите /root/.config/gtk-3.0/gtk.css .

11
ответ дан 24 January 2018 в 22:46

Изменение -GtkRange-slider-width не влияет на тему GTK + 3 по умолчанию. Вместо этого вы можете сделать следующее:

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

    /* Padding around the slider */
    border: 5px solid transparent;
}

(Поместите вышеуказанное в ~ / .config / gtk-3.0 / gtk.css .)

15
ответ дан 24 January 2018 в 22:46

Я использую Ubuntu 18.04, и это было единственное решение, которое изменило полоса прокрутки для ВСЕГО, от Firefox до LibreOffice и gnome-terminal. Приведенные выше решения отлично работали для одного или двух приложений, но не для всех.

Примечание: это дает вам ДЕЙСТВИТЕЛЬНО большие полосы прокрутки, которые хороши для больших мониторов, потому что вы можете видеть их краем глаза, не заглядывая в сторону экрана каждый раз, когда вы хотите их взять. Если вам нужны меньшие, измените все 70 пикселей на меньшее число, например 20 или 30 пикселей, и настройте его соответственно.

Поместите следующий текст в ~ / .config / gtk-3.0 / gtk.css :


.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: 150px;
    min-width: 70px;
}

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

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

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

scrollbar {
    min-width: 70px;
    min-height: 70px;
}
5
ответ дан 23 November 2019 в 00:06

На Ubuntu 20.04 я объединил некоторые из приведенных выше решений, чтобы просто получить более толстую полосу прокрутки в Libre Office, не изменяя ее цвет.

Вот код, который я объединил из ответов выше:

/* Adding the buttons on the edges (if you don't need them, skip the next 4 lines)
 */

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

/* Scrollbar trough squeezes when cursor hovers over it. Disabling that
 */

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

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

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

/* Slider widens to fill the scrollbar when cursor hovers over it. Making it permanent
 */

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

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

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


.scrollbar {
  -GtkRange-slider-width: 15;
}

.scrollbar.vertical slider,
scrollbar.vertical slider {
    min-height: 150px;
    min-width: 70px;
}

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

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

.scrollbar.horizontal.slider:hover,
scrollbar.horizontal:hover slider {
    min-height: 10px;
}
0
ответ дан 20 August 2021 в 13:19

Другие вопросы по тегам:

Похожие вопросы: