Как отключить декодирование клиентской стороны во всем мире в GNOME?

Я использую Ubuntu GNOME 17.04. Один из них встречает украшение на стороне клиента (CSD), поскольку большинство официальных приложений GNOME (Nautilus, gedit, Evince и т. Д.) Используют GtkHeaderBars (объединенная панель заголовка и панель инструментов, см. Скриншоты), тогда как других приложений нет.

Скриншоты (из GtkHeaderBars ):

Наутилус с GtkHeaderBar Nautilus без GtkHeaderBar [ ! d4]

Для согласованности я хочу отключить GtkHeaderBars глобально (во всех приложениях, использующих его), и использовать отдельные заголовки. Есть ли способ достичь этого?

Я слышал о пакете gtk3-nocsd, но не смог заставить его работать с GNOME для всех приложений.

13
задан 25 January 2018 в 13:30

6 ответов

Хотя я согласен с Вассилисом в том, что CSD ужасны - к счастью, он ошибается в возможности отключить их.

В Ubuntu установите пакет gtk3-nocsd, а затем выйдите из системы и войдите в систему.

Этот «взлом» заставляет приложения GTK + больше не отключать оформление окна оконного менеджера. Результат может выглядеть немного странным - вот как выглядит приложение калькулятора GNOME со стандартным CSD:

И с помощью NOCSD hack:

[ ! d4]

Вы можете увидеть несколько примеров того, почему утверждение Vassilis о том, что CSD - это ужасная идея, которая разрушила пользовательский интерфейс Linux, верна:

В заголовке окна без CSD отображается " & lt; 2> ", потому что я запустил два окна калькулятора одновременно, чтобы сделать скриншоты, а CSD-файл также называется« Калькулятор », но не показывает его, поэтому, если ваш оконный менеджер имеет пользовательский интерфейс списка окон ( например, «панель задач»), и вы видите там «Калькулятор», это не будет тривиально найти его на экране. У моего оконного менеджера включен «drop shadows», который упрощает мне видеть, какие окна находятся над другими окнами, но окно CSD отключает его без уважительной причины, что делает мой экран еще более сложным для понимания, чем нужно. Я использую функции «всегда сверху», поэтому я попросил мой оконный менеджер отобразить удобную кнопку, чтобы включить ее рядом с другими кнопками управления окнами, но приложение CSD, очевидно, не знает об этом и не делает Покажите это. Такая же проблема с кнопкой «pin to current workspace», хотя здесь ошибка более вопиющая, поскольку она находится в конфигурации по умолчанию, и GTK + должен был это знать. Что не показано (потому что я ленился) - это меню оконных операций (щелкните правой кнопкой мыши по названию), что окно CSD имеет очень ограниченный набор доступных опций (в основном, 6 стандартных операций и «всегда сверху»), в то время как мой оконный менеджер предлагает гораздо больше функций, которые я часто использую). Еще одна вещь, которая не показана, заключается в том, что окно CSD не меняет цвет заголовка, когда неактивен, в отличие от всех остальных окон, которые у меня есть. Это было бы более вопиющей ошибкой, если бы KDE не была такой потрясающей настольной средой и настроила приложение GTK + для использования правильных цветов названия - на других DEs активный цвет заголовка GTK + CSD даже не соответствует активному «родному» окну название цвет.
4
ответ дан 18 July 2018 в 05:54

Мне удалось запустить просмотрщик evince PDF с украшениями, предоставляемыми моим оконным менеджером (Openbox) на Ubuntu 18.04 следующим образом:

$ sudo apt-get install gtk3-nocsd $ gtk3-nocsd evince
1
ответ дан 18 July 2018 в 05:54

Боюсь, этого не может быть сделано, если разработчик приложения не позаботится о такой функции. Отображение строки заголовка в верхней части окна не означает, что CDS фактически отключен.

Client Side Decorations уничтожил пользовательский интерфейс Linux, а приложения и настольные среды выглядели уродливыми, а не родными.

Надеюсь, что каждый разработчик просто проигнорирует направляющие линии Gnome и сохранит свое приложение полезным и последовательным для всех сред.

9
ответ дан 18 July 2018 в 05:54

Хотя я согласен с Вассилисом в том, что CSD ужасны - к счастью, он ошибается в возможности отключить их.

В Ubuntu установите пакет gtk3-nocsd, а затем выйдите из системы и войдите в систему.

Этот «взлом» заставляет приложения GTK + больше не отключать оформление окна оконного менеджера. Результат может выглядеть немного странным - вот как выглядит приложение калькулятора GNOME со стандартным CSD:

И с помощью NOCSD hack:

[ ! d4]

Вы можете увидеть несколько примеров того, почему утверждение Vassilis о том, что CSD - это ужасная идея, которая разрушила пользовательский интерфейс Linux, верна:

В заголовке окна без CSD отображается " & lt; 2> ", потому что я запустил два окна калькулятора одновременно, чтобы сделать скриншоты, а CSD-файл также называется« Калькулятор », но не показывает его, поэтому, если ваш оконный менеджер имеет пользовательский интерфейс списка окон ( например, «панель задач»), и вы видите там «Калькулятор», это не будет тривиально найти его на экране. У моего оконного менеджера включен «drop shadows», который упрощает мне видеть, какие окна находятся над другими окнами, но окно CSD отключает его без уважительной причины, что делает мой экран еще более сложным для понимания, чем нужно. Я использую функции «всегда сверху», поэтому я попросил мой оконный менеджер отобразить удобную кнопку, чтобы включить ее рядом с другими кнопками управления окнами, но приложение CSD, очевидно, не знает об этом и не делает Покажите это. Такая же проблема с кнопкой «pin to current workspace», хотя здесь ошибка более вопиющая, поскольку она находится в конфигурации по умолчанию, и GTK + должен был это знать. Что не показано (потому что я ленился) - это меню оконных операций (щелкните правой кнопкой мыши по названию), что окно CSD имеет очень ограниченный набор доступных опций (в основном, 6 стандартных операций и «всегда сверху»), в то время как мой оконный менеджер предлагает гораздо больше функций, которые я часто использую). Еще одна вещь, которая не показана, заключается в том, что окно CSD не меняет цвет заголовка, когда неактивен, в отличие от всех остальных окон, которые у меня есть. Это было бы более вопиющей ошибкой, если бы KDE не была такой потрясающей настольной средой и настроила приложение GTK + для использования правильных цветов названия - на других DEs активный цвет заголовка GTK + CSD даже не соответствует активному «родному» окну название цвет.
4
ответ дан 24 July 2018 в 18:28
  • 1
    Из вопроса: «Я слышал о пакете gtk3-nocsd, но не смог заставить его работать с GNOME для всех приложений. & Quot; – muru 25 January 2018 в 13:30
  • 2
    Хм ... Пропустил это, извините. @pomsky: Какие проблемы у вас были с gtk3-nocsd? – Guss 25 January 2018 в 14:32
  • 3
    Он не работал с Наутилусом, например, в прошлый раз, когда я пытался. – pomsky 25 January 2018 в 18:34
  • 4
    Он работает правильно для меня на Kubuntu 17.10. Я не уверен, когда Nautilus загружается под сеансом Unity, но если это произойдет до скрипта gtk3-nocsd XSession, это может быть причиной. Если это по-прежнему не работает для вас - пингуйте меня. – Guss 25 January 2018 в 20:22

Мне удалось запустить просмотрщик evince PDF с украшениями, предоставляемыми моим оконным менеджером (Openbox) на Ubuntu 18.04 следующим образом:

$ sudo apt-get install gtk3-nocsd $ gtk3-nocsd evince
1
ответ дан 24 July 2018 в 18:28

Боюсь, этого не может быть сделано, если разработчик приложения не позаботится о такой функции. Отображение строки заголовка в верхней части окна не означает, что CDS фактически отключен.

Client Side Decorations уничтожил пользовательский интерфейс Linux, а приложения и настольные среды выглядели уродливыми, а не родными.

Надеюсь, что каждый разработчик просто проигнорирует направляющие линии Gnome и сохранит свое приложение полезным и последовательным для всех сред.

9
ответ дан 24 July 2018 в 18:28

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

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