LINUX.ORG.RU

Крыса, иксы и масштабирование

 ,


0

2

Говорят, что красота в глазах смотрящего. Но увы, многие из нас настолько погрязли в стремлении достичь визуального идеала десктопа, что перестали радоваться простым мелочам, присущим обычным, приземленным интерфейсам. Мы потеряли наши ориентиры. Наш глаз настолько замылился, что мы не заметим истинного совершенства - воплощенного из нематериального мира платоновского эйдоса красоты - даже если его поставить перед нашими носами и водрузить над ним вульгарное поясняющее навершие в виде текстовой таблички. Мы пропустим его, и нашим вердиктом будет лишь банальное, презрительное «ШГ».

Предлагаю вам отвлечься от всего мирского и вместе со мной насладиться скриншотами рабочего стола уважаемого @kirill_rrr, который сделал их специально для меня, как убедительную демонстрацию работы дробного масштабирования под иксами, цитирую:

показываешь ему работу дробного масштабирования с отрисовкой на стороне клиента, реализованное в Х11 ещё тогда когда вайланда даже в планах не было да и вообще проблемы HiDPI не стояло

Поскольку данные скрины представляют собой шедевр визуального искусства, было бы преступлением позволить им утонуть в глубинах форума - они достойны занесения в анналы истории.

Вдохните и выдохните. Эти скриншоты подарят вам спокойствие и умиротворение. Вы поймете, что спорить с людьми о шрифтах, масштабировании, иксах и вяленде нет никакого смысла. Идеал существует, и он перед вами.

★★★★

Проверено: dataman ()
Последнее исправление: dataman (всего исправлений: 3)
Ответ на: комментарий от liksys

все иксофанбои либо сбегают в ужасе, либо просто уводят обсуждение во флуд.

Может и флуд, но как-то нет какой-то ущербности. Иксы нормальные. Правда, ради справедливости, не знаю как там в вяленом. Наверное все надо примерять на свои мониторы, у меня все замечатеотно.

dmitry237 ★★★★★
()
Последнее исправление: dmitry237 (всего исправлений: 1)
Ответ на: комментарий от dmitry237

Иксы нормальные, пока тебе не понадобится описанный выше юзкейс. После этого иксы тебе резко разонравятся, гарантирую это.

liksys ★★★★
() автор топика
Ответ на: комментарий от liksys

пока тебе не понадобится описанный выше юзкейс.

Тогда и поговорим. Но пока…

dmitry237 ★★★★★
()
Ответ на: комментарий от liksys

Каким образом? Ты передаешь масштаб через переменную окружения.

перемещаю окно между экранами и масштаб меняется соответственно значению, переданному env для текущего экрана.
Если не задавать - будет брать параметры мониторов из xrandr

Скриншоты из других DE можно увидеть?

https://i.sstatic.net/ltZji.png
https://i.sstatic.net/iLQ1m.png

Ты читал мои комментарии, или только клоунов на них ставил? Я описывал случай, когда иксы дают мыло или лесенку.

ты описывал случаи, когда пользователь сам попросил иксы растянуть картинку, перепутав scale изображения с масштабированием интерфейса. Почти в каждом таком комментарии ты или заблуждаешься, или намеренно вводишь других в заблуждение. Это тупость, троллинг или троллинг тупостью. Разве клоун тут не уместен?

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

Искуственно созданную тулкитами проблему не так просто решить. Разрабы тулкитов вроде gtk хотят чтобы ты использовал wayland, потому в таким случае решением может быть как раз отказ от gtk и использование того, что я предложил выше для QT.
Я тоже бы возможно пользовался GTK, если бы они не сопротивлялись нормальному темингу (движки тем вместо убогого css) и не пытались из себя строить нетакусиков, но увы.
Вместо того env'a можно указать QT_ENABLE_HIGHDPI_SCALING=1
QT_AUTO_SCREEN_SCALE_FACTOR=1, чтобы scale выбирался автоматически в зависимости от DPI. И не надо говорить тут, что DPI не связан со скейлингом интерфейса, он именно про то как абстрактный интерфейс отобразить в правильном масштабе на мониторе. Но если очень нужен независимый множитель масштаба - используй QT_SCREEN_SCALE_FACTORS

mittorn ★★★★★
()
Последнее исправление: mittorn (всего исправлений: 2)
Ответ на: комментарий от mittorn

если бы они не сопротивлялись нормальному темингу (движки тем вместо убогого css) и не пытались из себя строить нетакусиков, но увы.

Но ведь если смотреть реально, то это вполне себе способ «подгонки» интерфейса под себя. Обычный gtk.css позволяет кастомизировать ту же крысу. Никаких тормозов и тому подобное.

dmitry237 ★★★★★
()
Ответ на: комментарий от liksys

По-моему приложению достаточно знать DPI каждого видеовыхода, чтобы правильно растеризовать содержимое своего окна. Даже если часть окна на одном видеовыходе, а часть — на другом.

Правильно ресайзить окно приложения при его перетаскивании между видеовыходами с разным DPI это задача виндоу менеджера. Ему для этого тоже достаточно знать DPI каждого видеовыхода.

iliyap ★★★★★
()
Ответ на: комментарий от mittorn

перемещаю окно между экранами и масштаб меняется соответственно значению, переданному env для текущего экрана.

А если я хочу поменять масштаб для экрана, мне надо всё перезапускать?

https://i.sstatic.net/ltZji.png

Штош, претензии к конкретному DE - почему он так себя ведет.

Это тупость, троллинг или троллинг тупостью. Разве клоун тут не уместен?

А, ну то есть когда я говорю, что в сетапе иксов буквально нельзя получить универсального решения для описанной конфигурации, и показываю, что оба предлагаемых иксами решения неюзабельны - это троллинг тупостью. По-моему, троллишь тупостью сейчас именно ты: у тебя не иксы виноваты, что не поддерживают популярную конфигурацию железа, это юзер ее захотел использовать и сам так настроил. А иксы не виноваты, ага-да.

Искуственно созданную тулкитами проблему не так просто решить

Эту проблему создали не тулкиты. Просто появились мониторы 2к и 4к, и смешанную конфигурацию надо было начать поддерживать.

Разрабы тулкитов вроде gtk хотят чтобы ты использовал wayland

Кто мешал починить проблему задолго до того, как вяленд покатился в апстрим? Иксам 35 лет в обед. Проблема актуальна 10-15 лет, и в десятых годах иксы активно развивались, а вяленд был экспериментальной игрушкой. Почему решения не нашлось? Опять редхад говна в штаны подкинул?

не надо говорить тут, что DPI не связан со скейлингом интерфейса

DPI не связан со скейлингом интерфейса. Это факт, о котором я писал ранее. Перечитывай мои комментарии про разницу между масштабом контента и масштабом интерфейса.

В любом случае, я понял твое решение. Но оно не юзабельно по следующим причинам:

  • Применимо только к Qt, кроме которого у нас еще есть GTK, браузеры и приложения на электроне.
  • Конфигурация полностью статична: подключив к ноутбуку еще один-два монитора, я не смогу передать для них конфигурацию приложениям Qt без из перезапуска. Мониторы, при этом, могут быть любыми.

Пока я не вижу, чем это лучше того, что предлагает вяленд: его решение динамическое и универсальное для всех тулкитов. Браузеры, Qt и GTK поддерживают fractional scaling.

liksys ★★★★
() автор топика
Ответ на: комментарий от iliyap

По-моему приложению достаточно знать DPI каждого видеовыхода, чтобы правильно растеризовать содержимое своего окна.

Нет, не достаточно.

liksys ★★★★
() автор топика
Ответ на: комментарий от liksys

Твои аргументы настолько шикарны что их комментировать только портить. Так что смайлик - самое то. Когда придумаешь что то посвежее «ты не обучаем» - может появятся темы для обсуждения. Обучаться шизофрении я точно не собираюсь.

kirill_rrr ★★★★★
()
Ответ на: комментарий от liksys

или GTK3+ - и оно будет это уметь, причем без привязки к конкретному композитору.

Ты сам утверждал обратное. Опять и снова...

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

Ты сам утверждал обратное. Опять и снова…

Опять и снова - ты врёшь. Неси ссылку, где я это утверждал.

liksys ★★★★
() автор топика
Ответ на: комментарий от kirill_rrr

Твои аргументы настолько шикарны что их комментировать только портить.

Разумеется, ведь именно поэтому ты не комментируешь мой вопрос о том, как же мне все-таки настроить иксы для конфигурации с двумя мониторами 1080p/4K и масштабированием. @mittorn хотя бы попытался, а ты просто прячешься от неудобных вопросов.

Так что смайлик - самое то.

Ты в прошлых тредах ныл, что я ставил тебе клоунов. Я принципиально перестал, чтобы поддерживать хоть какой-то уровень дискуссии с тобой. Но ты не удержался и опять начал смайлоспамить от недостатка аргументов.

Обучаться шизофрении я точно не собираюсь.

Независимо от того, что бы ты там ни придумал и как бы ни хорохорился, реальность такова: проблему масштабирования за все годы в иксах так и не порешали, сжатие в сетевую прозрачность так и не завезли, в то время как вяленд допилен до юзабельного состояния, а иксы выкинуты из обоих главных DE. Причины этого действа описаны в моих комментариях в этом и предыдущих тердах, и то, что ты не согласен с этими техническими фактами - исключительно твои проблемы. Живи в манямирке и дальше. Какими бы ты меня словами не обозвал - реальность от этого не изменится.

liksys ★★★★
() автор топика
Последнее исправление: liksys (всего исправлений: 1)
Ответ на: комментарий от liksys

Почему решения не нашлось? Опять редхад говна в штаны подкинул?

Ну да, это же они занимались иксами все эти годы. Просто так взять и исправить там что-то васяны не могут. Для этого инженеры нужны, и лучше те самые, которые и сделали эти иксы при царе горохе. Я так понимаю, что даже у редхата тоже таких больше нет, поэтому пришлось делать вялого. На следующем витке спирали деградации будет наверно ещё более фееричное говно с привкусом «ИИ».

bread
()
Ответ на: комментарий от bread

Просто так взять и исправить там что-то васяны не могут.

Кто мешал? Ты помнишь истории о том, как им в 2015 принесли какой-нибудь патч, а они его не приняли по политическим соображениям? Я - нет.

Для этого инженеры нужны, и лучше те самые, которые и сделали эти иксы при царе горохе.

Полтора оплачиваемых сотрудника и куча студентов MIT?

поэтому пришлось делать вялого

Вялого начали делать в 2008, причем буквально разработчики тогдашних иксов.

liksys ★★★★
() автор топика
Ответ на: комментарий от liksys

как же мне все-таки настроить иксы для конфигурации с двумя мониторами 1080p/4K и масштабированием.

Очевидно просто настроить их для использования с двумя мониторами БЕЗ масштабирования. Это НЕ проблема.

Ты в прошлых тредах ныл, что я ставил тебе клоунов.

Ты первый начал ныть и кстати первый начал ставить их даже не читая пост.

kirill_rrr ★★★★★
()
Ответ на: комментарий от dmitry237

css не делался под пользовательский интерфейс и сделать нормальную тему на нём практически нереально. В gtk2 были движки тем, что позволяло сделать плагины, автоматически подхватывающие темы других тулкитов. в gtk3 возможности очень ограниченные. Я пытался искать тему похожую на windows classic для gtk3 и всё что я видел выглядело либо просто убого, либо фальшиво (словно на адвайту натянули картинки поверх), притом тот же софт на gtk2+redmond выглядит адекватно. И это только один из примеров. Плохо выглядят как рельефные темы(redmond, cde), так и многие плоские

mittorn ★★★★★
()
Ответ на: комментарий от liksys

А если я хочу поменять масштаб для экрана, мне надо всё перезапускать?

А у тебя часто меняется плотность пикселей экрана в реальном времени? Из чего же этот экран сделан? На этот случай ты можешь поменять dpi в свойствах xrandr и использовать QT_ENABLE_HIGHDPI_SCALING=1 QT_AUTO_SCREEN_SCALE_FACTOR=1

Эту проблему создали не тулкиты

В рамках иксов и вяленного - именно тулкиты. Местами причиной тому конечно старый код для иксов, который никто не переписывал в то время как под wayland он писался с нуля, но никто не запрещает с иксами работать как с wayland

Кто мешал починить проблему задолго до того, как вяленд покатился в апстрим?

В qt проблему решили вполне. А почему отдельное свойство под fractional scaling не завезли? Видимо, dpi хватило всем. Так что остаётся только gtk с его неполной поддержкой dpi scaling на иксах. Кстати, а запуск того же самого gtk под wayland и правда решает проблему? Или он просто размылит всё как на приложенных выше скринах?

DPI не связан со скейлингом интерфейса. Это факт, о котором я писал ранее.

Интересно, а почему на других ОС он связан напрямую? Может, они чего-то не знают? иди, объясни им!

браузеры

которые скейлят scalable pixel под DPI?

приложения на электроне.

всегда игнорировал это недоразумение, но не ужели бл%%%кий хромиум не умеет в dpi scaling?

я не смогу передать для них конфигурацию приложениям Qt без из перезапуска

xrandr в помощь

mittorn ★★★★★
()
Ответ на: комментарий от liksys

Заметь, я не пытаюсь тебя убедить использовать иксы и утверждать что это лучшее решение.
wayland действительно меняет ситуацию для случая когда приложение не умеет в dpi scaling (создавая при этом мыло). И wayland позволяет реализовать перенос окна между экранами с разной плотностью почти бесшовно на стороне композитора, когда на иксах это сделать сложнее т.к потребует разного масштабирования на разные выводы на стороне клиента, чего никогда никто не делал и вряд ли будет.
Я расставил клоунов и вмешался лишь потому что я не согласен с большинством твоих доводов по этому тему, а именно:
1. Что иксы мылят вместо масштабирования (тут ты перепутал масштабирование картинки и интерфейса, отдельной сущности масштабипрования интерфейса тут действительно нет)
2. Что DPI к масштабу интерфейса отношения не имеет (на деле же DPI должен напряимую масштабировать интерфейс, если нет отдельного свойства масштаба, он обычно и задаёт дефолтный множитель масштаба. На android и windows изменение dpi напрямую влияет на масштаб, а отдельная настройка если есть - то добавлена просто для удобства)
3. Что в неправильном масштабе элементов интерфейса виноваты именно иксы (это бы имело смысл если бы ты запустил тот же софт под wayland и там был бы корректный масштаб без мыла, но даже в этом случае разное поведение - вина тулкита, а не иксов)

mittorn ★★★★★
()
Ответ на: комментарий от kirill_rrr

И? В гноме приколочен шаг масштабирования. При этом и гном, и кеды используют один и тот же протокол. Если ты запустишь приложение на Qt в гноме, оно будет подчиняться тем же правилам, что и приложения на GTK. И наоборот: если ты запустишь приложение GTK в кедах, у него внезапно появится масштабирование с большим шагом.

Всё работает кросскомпозиторно и для каждого композитора приложение не должно изобретать уникальную логику мусштабирования.

liksys ★★★★
() автор топика
Ответ на: комментарий от kirill_rrr

Очевидно просто настроить их для использования с двумя мониторами БЕЗ масштабирования. Это НЕ проблема.

А, ну как всегда у иксофанатиков: если иксы чего-то не умеют - это нинужно. Купи монитор 4к и попробуй попользоваться - а я посмотрю на твои впечатления.

Ты первый начал ныть и кстати первый начал ставить их даже не читая пост.

Ты врёшь, как обычно.

liksys ★★★★
() автор топика
Ответ на: комментарий от mittorn

А у тебя часто меняется плотность пикселей экрана в реальном времени?

Я могу захотеть вместить на экран больше окон. Появляется, знаешь ли, иногда необходимость. Не очень удобно, конечно, но делать нечего.

На этот случай ты можешь поменять dpi в свойствах xrandr

Не могу. Мы уже выяснили, что DPI повлияет только на шрифты и избранные части интерфейса, а не на весь интерфейс целиком.

В рамках иксов и вяленного - именно тулкиты. Местами причиной тому конечно старый код для иксов

Из этих двух причин истинная - именно вторая. Можешь еще раз перечитать мой комментарий, где объясняется проблема координатной сетки иксов.

А почему отдельное свойство под fractional scaling не завезли?

Потому что тогда возникала проблема с координатной сеткой, которую ты упорно игнорируешь.

Кстати, а запуск того же самого gtk под wayland и правда решает проблему?

Правда. Два годна назад я купил себе ноут с 2K-экраном, и обнаружил, что от кручения DPI (я хотел сделать масштаб x1.5) интерфейс KDE и приложение просто превращается в говно - а я пользуюсь софтом и на Qt, и на GTK. После этого поставил вяленд, на котором ВНЕЗАПНО проблема исчезла сама собой, и оказалось, что у меня и динамический масштаб есть, и всё, что я перечислил.

Интересно, а почему на других ОС он связан напрямую? Может, они чего-то не знают? иди, объясни им!

Потому что их графические системы были спроектированы примерно в теже времена, что и иксы, и тогда считалось, что DPI было достаточно.

которые скейлят scalable pixel под DPI?

Которые поддерживают fractional-scaling от вяленда и скейлят так, как им сказано.

всегда игнорировал это недоразумение

Можно бесконечно считать это недоразумением - и я это поддерживаю - но пользоваться этим иногда приходится ввиду отсутствия альтернатив.

xrandr в помощь

См. первый пункт.

liksys ★★★★
() автор топика
Ответ на: комментарий от mittorn

Я расставил клоунов и вмешался лишь потому что я не согласен с большинством твоих доводов по этому тему

Для несогласия используется палец вниз. А ты расставил клоунов, потому что мои факты звучат неприятно, контраргументов у тебя нету, а выставить меня неправым очень хочется. Отсюда логичный выход в виде «клоуна» - ведь гораздо удобнее просто объявить слова человека клоунадой, чем спорить с ним, не так ли?

Что иксы мылят вместо масштабирования (тут ты перепутал масштабирование картинки и интерфейса, отдельной сущности масштабипрования интерфейса тут действительно нет)

Нет, ты просто выдаешь желаемое за действительное. Опция xrandr буквально называется --scale и использовалась во времена пузатых CRT-мониторов. Использовалась именно для масштабирования интерфейса. Ты включаешь дурачка, утверждая, что это на самом деле масштабирование картинки, но тогда получается, что эта опция сделана ради ничего и юзкейса у нее нет. Получается абсурд: фича есть, но использовать ее для масштабирования интерфейса не надо. Для чего еще ее можно использовать - загадка. Но точно не для масштабирования, нет-нет.

Что DPI к масштабу интерфейса отношения не имеет

Действительно, не имеет. Главная аксиома в том, что кручение произвольного DPI ради интерфейса не должно ломать масштаб контента. Опять же, мое утверждение подкреплено примером софта для вёрстки, где машстаб контента должен соответствовать DPI, а вот интерфейс может скейлиться произвольно, потому что тебе не важно его соответствие реальным размером - главное, чтобы рисовался в комфортном масштабе для глаз. Я могу понять твое желание приколотить его к DPI, но тогда нам нужны два DPI: один для контента, второй для интерфейса.

DPI должен напряимую масштабировать интерфейс, если нет отдельного свойства масштаба

Собственно, о чем я и говорил: в этом случае свойство масштаба тоже должно быть в DPI, потому что иначе получить соответствие между монитором и контентом будет проблематично. На самом деле, такой подход имел бы право на жизнь, если бы в линуксах был консенсус по использованию DPI. Но консенсуса нет, каждый делает как хочет, а иксовый протокол принципиально не может поддерживать разный DPI для разных мониторов.

Что в неправильном масштабе элементов интерфейса виноваты именно иксы

Именно так: иксы не позволяют крутить DPI отдельно для монитора по прчине проблем с координатной сеткой и необходимости ввести какие-то условные единицы для нее, поломав обратную совместимость.

это бы имело смысл если бы ты запустил тот же софт под wayland и там был бы корректный масштаб без мыла

Это буквально так и происходит: я запускаю кеды, в кедах запускаю весь перечисленный софт на Qt и GTK, и всё просто рисуется в масштабе x1.5 на одному экране, x2 на другом и x1 на третьем. Причина этого в том, что в вяленде есть соответствующий протокол с прописанным соглашением о том, как это должно работать. В иксах же его нет - но виноваты, по твоей невероятной логике не иксы, а тулкиты, лол.

liksys ★★★★
() автор топика
Последнее исправление: liksys (всего исправлений: 2)
Ответ на: комментарий от liksys

Что «И?»? Сколько ты видел мониторов, для которых допустимо использовать приколоченный шаг масштабирования? Гном подходит исключительно для понторезов, у которых 4К понитор используется в fullHD режиме исключительно ля того чтобы шрифты вместо сглаживания рисовались двойным dpi. Оно может и актуально для всяких кривых оледов, но называть это поддержкой масштабирования как то блин странно. Особенно на фоне того, что Х11 умеет делать то же самое целочисленным скейлом без мыла и лично ты это за масштабирование не считаешь. И я в кои то веки сэтим согласен.

И более того, ты не отрицаешь что гтк3+ будет работать криво при произвольном масштабировании.

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 1)
Ответ на: комментарий от liksys

Купи монитор 4к и попробуй попользоваться - а я посмотрю на твои впечатления.

Покажи мне 4К с соотношением сторон 4:3.

В остальном: использование 4К мониторов в фуллХД режиме меня не интересует. Именно поэтому мне не нужен вайланд, в котором тоже много чего «не работает значит не нужно».

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 1)
Ответ на: комментарий от kirill_rrr

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

Любые. Прям щас таким 2K-моником пользуюсь с масштабированием x1.5. Ты не с того угла на проблему смотришь: вяленд на уровне протокола (и тулкиты на уровне рендера) позволяют крутить масштаб как угодно. Но прямо сейчас не существует мониторов, для которых нужен бы был масштаб типа x1.1, 1.9 и так далее, поэтому в гноме ограничили шаг масштабирования, и это лишь ограничение ползунка: для 1080p используется x1, для 2K лучше всего подходит x1.5, для 4K - x2. Еще раз, кратко: в вяленде заложено, что можно крутить как угодно, но в гноме ограничились разумными числами. В кедах ограничение менее жесткое. При этом это всё еще один и тот же протокол.

4К понитор используется в fullHD режиме исключительно ля того чтобы шрифты вместо сглаживания рисовались двойным dpi

Все современные ноуты сейчас идут как минимум с экранами 2K, а жить с этим надо независимо от твоего отношения к понторезам. И у экранов большого разрешения есть большой плюс: отсутствие заметных пиксельных лесенок, просто потому, что шрифт того же размера рисуется с большим количеством пикселей. Это просто улучшение качества картинки. Я не понимаю, почему ради иксов я должен от этого отказываться.

Особенно на фоне того, что Х11 умеет делать то же самоецелочисленным скейлом без мыла и лично ты это за масштабирование не считаешь.

См. ниже. Кручение DPI приводит к идентичным эффектам на любом тулките и на иксах, и на вяленде, потому что в итоге у тебя получится несоответствие пиксельного размера отрендеринной картинке оффсету на мониторе. Т.е. в результыте кручения DPI ты можешь получить дробные значения размеров шрифта и элементов, с сопутствующим мылом.

И более того, ты не отрицаешь что гтк3+ будет работать криво при произвольном масштабировании.

Я не это сказал. Я сказал, что если ты не используешь целое или полуцелое масштабирование - будут проблемы. Более того, проблемы будут независимо от тулкита, даже если ты будешь крутить DPI под иксами, а не масштаб, потому что пиксельная сетка любого монитора дискретна. Включи уже голову наконец.

Покажи мне 4К с соотношением сторон 4:3.

Как это связано с моим предложением? Или ты принципиально хочешь пользоваться только 4:3?

В остальном: использование 4К мониторов в фуллХД режиме меня не интересует.

Тебе не нужен - большинству остальных людей нужен. Причем настолько подавляющему, что иксы были выкинуты на помойку.

liksys ★★★★
() автор топика
Последнее исправление: liksys (всего исправлений: 1)
Ответ на: комментарий от liksys

Прям щас таким 2K-моником пользуюсь с масштабированием x1.5

2К мониторам подходит масштаб от 110 до 130%. Нужно быть упоротым гномофанатиком чтобы сидеть там со 150%.

вяленд на уровне протокола (и тулкиты на уровне рендера) позволяют крутить масштаб как угодно

На уровне протокола он может декларировать что угодно, но 2/3 вайланд-софта это гтк3+, а она до сих пор этого не научилась. И не научится, т.к. разработчики забросили 3 ветку на которой написано подавляющее большинства гтк-софта потому что гтк4 для конченых мазохистов. Нехилая такая мина замедленного действия под вайланд и линуксовый десктоп в целом. Последствия предательства гнома всё ещё продолжают отыгрываться. Как раз Х11 довыпилят и тогда рванёт так рванёт!

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

Вот не надо, сейчас есть всё что угодно, от HD на 25 дюймов до 4К на 12 дюймов и даже если забить на предпочтения пользователей и свести всё к единому стандартному глазу - нужны любые масштабы от 70 до 400%. И особенно важно чтобы вакуумные UI гнома можно было перевести в 60-80% масштаб, иначе на 1,2 милиона пикселей будет приходиться 2 кнопки и 150 символов полезной нагрузки. И ещё бы стандартный размер шрифта настроить, но как раз этого протокола в вайланде нету! А в Х11 есть.

Все современные ноуты сейчас идут как минимум с экранами 2K

Во первых это не так, а во вторых 2К это меньше 10% к fullHD.

И у экранов большого разрешения есть большой плюс: отсутствие заметных пиксельных лесенок

Это не большой плюс, это малозначительное улучшение. Качественно подобранный шрифт важнее чем удвоение пикселей. Тот же пиксельный Терминус 8-10 в консоли на SD выглядит лучше чем дизайнерские извращения на 4К.

Я не понимаю, почему ради иксов я должен от этого отказываться.

Потому что ради иксов ты отказываешься не от этого, а чтобы получить много приятных графических возможностей и десктопных юзеркейсов. Если не веришь - можешь попробовать собрать вот эту конфигурацию ДЕ со скринов по составу софта (только браузер не фокс-60 а вивальди) и внешнему виду на вайланде. Это должно быть смешно. Или очень грустно.

Т.е. в результыте кручения DPI ты можешь получить дробные значения размеров шрифта и элементов, с сопутствующим мылом.

А можешь не получить! Только вот какой нибудь 6,5 или 11,5 размер шрифта нормально рисуется и уж тем более это никак не зависит от соотношения физических и логических дюймов экрана.

Более того, проблемы будут независимо от тулкита

А где эти мифические проблемы? Видимо там же где и мыло на моих скриншотах? Вот если бы разработчики умели округлять нецелые числа... На самом деле проблемы возникают исключительно там, где на интерфейс натягиваются растровые изображения или где графика захардкожена в пикселях. Правда в 2026 году их остаётся удивительно много, целых процентов 10 в qt6.

Или ты принципиально хочешь пользоваться только 4:3?

Да, разумеется. Мне высоты не хватает, а особенно для двухстрочной панели и окон сеткой 2х2. Зачем ещё может потребоваться 4К-монитор? У меня не случается припадков если я вижу лесенку пикселей. Это было бы очень странно с учётом того что я смотрел на экраны ещё в 2000-х и даже в 90-х.

Причем настолько подавляющему, что иксы были выкинуты на помойку.

Настолько подавляющему, что под виндой fullHD и 125% масштаба всё ещё является золотым стандартом.

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

2К мониторам подходит масштаб от 110 до 130%. Нужно быть упоротым гномофанатиком чтобы сидеть там со 150%.

Я понимаю, что тебе очень хочется обозвать меня гномофанатиком, но я сижу на кедах. А 150% у меня по той простой причине, что это ноубук 13 дюймов с 2K-экраном. Мне удобно так. Если ты недоволен гномом (как и я) - просто используй KDE.

На уровне протокола он может декларировать что угодно, но 2/3 вайланд-софта это гтк3+, а она до сих пор этого не научилась.

Ну, тут у иксов с вялендом паритет: масштабирования в GTK3 не было на иксах, нет его и на вяленде. А шрифты покрутить я могу и там, и там. Правда, есть нюанс: GTK3 поддерживает целочисленное масштабирование, только что специально ради тебя посмотрел в исходниках. Для масштаба 150% композитор здесь задает для GTK масштаб 200%, а затем даунскейлит это до 150%. Получается немного мыльцо, но есть нюанс: ровно так же вели бы себя иксы при использовании опции --scale (только они бы портили весь экран, а так у меня только парочка GTK3-приложений работает вот так). И про 2/3 вяленд софта - это тя явно перегнул. Весь софт на Qt уже давно поддерживает вяленд. На моем десктопе большая часть софта - это что-то на Qt, и лишь единицы на GTK.

И не научится, т.к. разработчики забросили 3 ветку

Нет, они ее поддерживают - просто новых фич не добавляют. Пока я искал в коде инфу о поддержке fractional-scale на вяленде, наткнулся на прям свежий коммит, который что-то фиксит и улучшает в этом направлении. GTK3 будет задепрекейчен тогда, когда когда выйдет GTK5, и вот комментарий одного из разработчиков GTK, который это подтверждает.

Как раз Х11 довыпилят и тогда рванёт так рванёт!

Примерно то же самое говорили, когда закапывали GTK2, но не рвануло. Старый софт отомрет; что-то будет переписано на новом GTK, а что-то вообще уйдет с GTK на Qt, как это сделал Audacity.

Вот не надо, сейчас есть всё что угодно, от HD на 25 дюймов до 4К на 12 дюймов и даже если забить на предпочтения пользователей и свести всё к единому стандартному глазу - нужны любые масштабы от 70 до 400%.

Хорошо, давай предположим, что это действительно так. Тогда получается, что гном неюзабелен, а KDE - очень даже, потому что он всё это позволяет делать. Это же прекрасно: у тебя есть здоровя конкуренция, где разработчики кед запилили нормальную реализацию вяленда, в которой лично ты можешь настроть масштабирование так, как твоей душе угодно, а не как за тебя разработчики решили.

Во первых это не так

Скорее, это почти всегда так, если ты выбираешь ноут не за три копейки. Когда я в прошлом году выбирал хороший ноут, ни у одной из интересующих меня моделей не было 1080p. Дальше их будет становиться еще меньше: матрицы-то дешевеют.

а во вторых 2К это меньше 10% к fullHD.

Давай посчитаем вместе. Мой экран имеет разрешение 2256x1504. Разрешение FullHD - 1920x1080. Итак: 2256 / 1920 * 100 = 117.5, 1504 / 1080 * 100 ~= 139%. Итого получается, что мой 2K больше FullHD по горизонтали на 17.5%, и по вертикали на целых 39%. Можем посчитать по площади: (2256 * 1504) / (1920 * 1080) * 100 ~= 164%. Итого, 2K больше по площади, чем FullHD на целых 64%. Похоже, ты ошибаешься в своей оценке «меньше 10%», и 2K всё-таки значительно больше FullHD.

Это не большой плюс, это малозначительное улучшение. Тот же пиксельный Терминус 8-10 в консоли на SD выглядит лучше чем дизайнерские извращения на 4К.

Откуда тебе знать, как выглядит хорошо настроенный 4K, если ты им не пользуешься? Качественно подобранный шрифт на 4K будет выглядеть в два раза плавнее (не мыльнее, плавнее!), и его изгибы будут более приятны глазу.

liksys ★★★★
() автор топика
Ответ на: комментарий от kirill_rrr

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

Каких именно? Перечисли, пожалуйста.

Если не веришь - можешь попробовать собрать вот эту конфигурацию ДЕ

Не обижайся, но у меня от твоих шрифтов уже вытекают глаза. Я свою конфигурацию тащу еще со времен KDE3, и за это время переполз с монитора 1024x768 на упомянутый 2K, пройдя абсолютно все промежуточные стадии, включая не очень стандартную 1366x768. Переносил ее на четвертые кеды, потом на пятые, и теперь вот на шестые. И я совершенно точно могу сказать, что сейчас это всё работает лучше, чем работало раньше, и шрифт гораздо более приятно рендерится, чем рендерился раньше.

Только вот какой нибудь 6,5 или 11,5 размер шрифта нормально рисуется и уж тем более это никак не зависит от соотношения физических и логических дюймов экрана.

Давай на секунду оставим в стороне вяленд и иксы. Ты понимаешь, что для рендера шрифтов нет совершенно никакой разницы, в каких именно единицах измерения он получает информацию о том, сколько пикселей должно содержаться в твоих буквах по высоте? Размер шрифта чаще всего задается в пикселях, допустим, 14px. У тебя экран 96dpi - это значение принято по умолчанию для рендеринга один к одному. Чтобы увеличить шрифт, ты берешь и ставишь, скажем, 72dpi. Рендер делает следующее: 96 / 72 * 14 = 18.6(6). И у тебя получается нецелое количество пикселей, которые в итоге надо нарисовать на экране. Если твой тулкит ничего не знает о DPI, и получает только цифру масштаба, вычисления делаются так же, только тебе не нужен базис в виде 96. Для масштаба 130% ты будешь делать что-то типа этого: 1.3 * 14 = 18.2. Здесь тоже получается дробный результат.

У шрифтового рендера здесь два пути. Первый - округлить значение до 18 или 19 пикселей. Не будет никакого мыла, но отображение будет не совсем точным с точки зрения того, как тулкит хотел показать тебе контент. Второй путь - использовать всякую магию, например зажигать не совсем черный цвет пикселя с краю, а серый, или вообще какой-то оттенок голубого по углам. Наше зрение выполняет интерполяцию, и нам кажется, что буковка будет чуть больше, чем дискретное число пикселей. Если алгоритм хороший - мыла не будет. Если алгоритм так себе - то будет мыло. Второй неожиданный результат: чем меньше шрифт - тем больше будет ошибка округления, и тем мыльнее будет результат.

Чем больше у тебя разрешение экрана, и при этом меньше его размер, т.е. чем больше физический DPI - тем меньше шрифтовому рендеру нужно хаков, чтобы отрисовать буковку максимально точно к тому, как ее хотел отобразить тулкит. Еще раз повторю: ни иксы, ни вяленд здесь вообще никаким боком, всё работает независимо от них и до них. Именно поэтому использование экранов большого разрешения дает лучшие результаты, а не потому что вяленд или что-то еще. Когда ты рисуешь шрифт на 4K с двойным масштабированием, 14px превращается в 28px, и те части буковок, на скругление которых уходило 3-4 пикселя, теперь будет уходить 6-8. Шрифт будет выглядеть плавнее и без лесенок.

А где эти мифические проблемы?

Я уже говорил: как только ты начнешь использовать иксовый скейлинг. Пока ты его не используешь - всё работает так, как я описал выше.

Мне высоты не хватает, а особенно для двухстрочной панели и окон сеткой 2х2.

Если ты купишь достаточно большой 4K-монитор, ты можешь либо вообще не использовать масштабирование, и у тебя будет просто охренеть сколько места по вертикали, либо использовать такой масштаб, чтобы у тебя было такое же количество места по вертикали, как на твоем текущем 4:3, но при этом ты получишь еще и дополнительное боковое пространство.

Зачем ещё может потребоваться 4К-монитор?

Я недавно USB-стек отлаживал анализатором - отключал масштабирование вообще, чтобы увидеть как можно больше данных из дампа на одной странице - было удобно видеть, что там по кабелю летает. А еще я дизассемблировал UEFI - там вообще надо было несколько панелей с кодом открыть: ассемблер, выхлоп декомпилятора на псевдо-си, всякие навигации по соседним функциям. Можешь поставить какую-нибудь Ghidra и попробовать сам, чтобы прочувствовать необходимость большого разрешения. А еще у меня своя анимационная студия: целая команда художников от руки мультики рисуют, и там тоже нужен 4K, потому что картинка рендерится в 1080p, а помимо 1080p в середине экрана вокруг мульта хренова туча контролов рисовальных прог.

Настолько подавляющему, что под виндой fullHD и 125% масштаба всё ещё является золотым стандартом.

Круто, ты сам себя переиграл. В винде масштабирование работает буквально так же, как в вяленде: приложению передается коэффициент масштабирования рендеру. А если рендер так не умеет - то его апскейлит сама ось - прям как KWin в кедах. То есть, если следовать твоей логике, 125% масштаба это золотой стандарт, и раз так, то иксы, которые не могут работать, как графика в винде, следует выкинуть на помойку %)

liksys ★★★★
() автор топика
Ответ на: комментарий от liksys

При этом и гном, и кеды используют один и тот же протокол

а кого это волнует, если реализация разная? На заборе тоже написано...

mittorn ★★★★★
()
Ответ на: комментарий от liksys

Я могу захотеть вместить на экран больше окон.

Изменением масштаба? Как минимум. это очень странно, ведь информация станет мельче, чем её хотели представить...

Не могу. Мы уже выяснили, что DPI повлияет только на шрифты и избранные части интерфейса, а не на весь интерфейс целиком.

Вероятно, это баг конкретного тулкита

Потому что тогда возникала проблема с координатной сеткой, которую ты упорно игнорируешь.

И какая же? Координаты дочерних окон? Кто-то их ещё использует? В каком-нибудь TDE - да, но мы кажется говорим про современные тулкиты, где она масштабируемая и не завязана на подобные примитивы...

и оказалось, что у меня и динамический масштаб есть, и всё, что я перечислил.

И без мыла прям, в тех случаях, когда под иксами оно не масштабировалось?

Потому что их графические системы были спроектированы примерно в теже времена, что и иксы, и тогда считалось, что DPI было достаточно.

А может его и было достаточно, просто кому-то очень хоотелось продвигать вяленный любой уеной и специально заткнули исксовый путь сломанными костылями?

Можно бесконечно считать это недоразумением - и я это поддерживаю - но пользоваться этим иногда приходится ввиду отсутствия альтернатив.

если жрать подобное говно - придётся жрать его вечно т.к на рынке при равной цене понижается качество, но не повышается

См. первый пункт.

пункт - брехня. Почему-то какому-нибудь gdi и android.view придумывать отделььный скейлинг не надо, но иксам якобы нужно, но ради чего?

mittorn ★★★★★
()
Ответ на: комментарий от liksys

Для несогласия используется палец вниз.

возможно, но я как-то привык уже тут клоуна использовать. В принципе его могло бы хватить, пока мне не показалось «слишком толстым»

Опция xrandr буквально называется --scale и использовалась во времена пузатых CRT-мониторов. Использовалась именно для масштабирования интерфейса.

не интерфейса, а изображения. xrandr не оперирует интерфейсом, он оперирует параметрами монитора и изображения. Интерфейс скейлится под dpi монитора, scale масштабирует вывод изображения на монитор, это разные сущности

Для чего еще ее можно использовать - загадка

например, когда хочется понизхить разрешения вывода изображения. Я использовал в 2 ситуациях:
1. когда надо было играть в игру на fullhd мониторе, а GPU не справлялся: scale 2x2 и рендер картинки игры в 960x540 + integer scaling
2. когда на более мощном GPU хоотелось сгладить старую игру лучше, чем msaa: ставил scale 0.25x0.25 со стандартной фильтрацией, игра рисовалась без лесенок
Никакого применения для интерфейса я тут не вижу, он обычно в этих случаях выглядит убого

Я могу понять твое желание приколотить его к DPI, но тогда нам нужны два DPI: один для контента, второй для интерфейса.

А с какой целью может понадобится рисовать интерфейс с DPI отличным от физического DPI вывода?
Разве что для всяких проекторов и больших экранов, но они зачастую и не репортят корректный DPI (почему? Да как раз потому что интерфейс станет тогда слишком мелким!)

Но консенсуса нет, каждый делает как хочет, а иксовый протокол принципиально не может поддерживать разный DPI для разных мониторов

тогда же что указывает опция --dpi для выводов в xrandr? Но да, почему-то мнокие тулкиты вроде gtk не хотят его использовать полноценно. только вот в чём тут проблема иксов? Это всего лишь какие-то фрики, игнорирующие действительность, каких сейчас немало и без них

Именно так: иксы не позволяют крутить DPI отдельно для монитора по прчине проблем с координатной сеткой и необходимости ввести какие-то условные единицы для нее, поломав обратную совместимость.

Иксы дают коориднаты в пикселях и привязку к inch, оставляя остальные условные единицы клиентам. scalable pixel выводится уже из неё. Если кто-то не смог в обыконвенную рациональную дробь и школа не помогла, то тут надеяться можно лишь на медицину, но веьма сомнительно

В иксах же его нет - но виноваты, по твоей невероятной логике не иксы, а тулкиты, лол.

Если тулкит без звиздюлей от мамки не может отмасштабить интерфейс - виноваты иксы...

mittorn ★★★★★
()
Ответ на: комментарий от mittorn

а кого это волнует, если реализация разная?

Волнует разработчиков тулкитов и пользователей: программа запускается на любом композиторе.

Как минимум. это очень странно, ведь информация станет мельче, чем её хотели представить…

Есть информация, для которой масштаб важен - см. пример с версткой. Для другой информации - нет, как в моем примере с анализатором протокола USB.

Вероятно, это баг конкретного тулкита

Это не баг тулкита, это отсуствие консенсуса по использованию DPI, о чем я уже неоднократно писал.

И какая же?

Перечитай пример еще раз, внимательно.

И без мыла прям, в тех случаях, когда под иксами оно не масштабировалось?

Да.

если жрать подобное говно

От того, что я не буду пользоваться каким-то инструментом, у меня не появится альтернатива ему - если только сам не напишу. Но самому писать времени нет - я и так достаточно делаю для опенсорса, пусть кто-нибудь другой пишет замену приложениям на электроне.

пункт - брехня

Отрицание реальности детектед.

Почему-то какому-нибудь gdi и android.view придумывать отделььный скейлинг не надо, но иксам якобы нужно, но ради чего?

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

liksys ★★★★
() автор топика
Ответ на: комментарий от mittorn

не интерфейса, а изображения… например, когда хочется понизхить разрешения вывода изображения

Ты просто подменяешь понятия. Ты буквально изменил масштаб интерфейса игры, но называешь это изменением разрешения изображения.

Никакого применения для интерфейса я тут не вижу, он обычно в этих случаях выглядит убого

Других вариантов в иксах не предусмотрели.

А с какой целью может понадобится рисовать интерфейс с DPI отличным от физического DPI вывода?

Потому что ты можешь хотеть сделать кнопки покрупнее, или наоборот помельче, а контент оставить неизменным. Что особенно актуально для экранов с большими разрешениями.

тогда же что указывает опция –dpi для выводов в xrandr?

Давай посмотрим ман вместе: –dpi from-output - This also sets the value reported as physical size of the X screen as a whole (union of all configured monitors). In configurations with multiple monitors with different DPIs, the value has no physical meaning, but it may be used by some legacy clients which do not support RandR version 1.2 to compute a reference font scaling. This option uses either the specified DPI value, or the DPI of the given output, to compute an appropriate physical size using whatever pixel size will be set. Typical values are the default (96 DPI), the DPI of the only monitor in single-monitor configurations, or the DPI of the primary monitor in multi-monitor configurations.

Это всего лишь какие-то фрики, игнорирующие действительность, каких сейчас немало и без них

Занятно, что даже ман говорит, что это используется только для шрифтов, и то - каким-то легаси. Похоже, твои представления об иксах и смысле опции --dpi оказались ложными.

Если кто-то не смог в обыконвенную рациональную дробь и школа не помогла, то тут надеяться можно лишь на медицину, но веьма сомнительно

Я снова обращаю твое внимание на проблему относительности координатной сетки, возникающую в полный рост.

liksys ★★★★
() автор топика
Ответ на: комментарий от liksys

Если ты недоволен гномом (как и я) - просто используй KDE.

Дело не в гноме. Дело в ГТК-приложениях ,которые вынуждены приколачиваться гвоздями к гному и хреново работать в других окружениях. Если ты забыл, мы обскуждаем твоё утверждение что гтк3+ приложенияполностью поддерживают вайланд, включая любые варианты дробного масштабирования.

Для масштаба 150% композитор здесь задает для GTK масштаб 200%, а затем даунскейлит это до 150%

У них была реализация с отрисовкой х3 со сжатием х2. Мыла нет, есть тормоза. Но они там и так и так есть.

иксы при использовании опции --scale

Если ты пытаешься использовать иксы с опцией --scale - у тебя руки кривые.

Примерно то же самое говорили, когда закапывали GTK2, но не рвануло.

Потому что её никто не задепрекейтил и не выпилил из реп. До сих пор бери и пользуйся. Но что заставляет тебя думать что гномосеки не сломают и не выпилят гтк3 когда до них дойдёт, что никому их гтк5 да и 4 тож не упёрлись?

Тогда получается, что гном неюзабелен, а KDE - очень даже, потому что он всё это позволяет делать.

С поправкой что гном здесь это гном3+ - он всегда именно таким и был уже на уровне самой концепции «надо срочно всё сломать и сделать непохожим на всё что хорошо работает». К КДЕ у меня многочисленные, но не критичные претензии. Так что в целом утверждение верно.

Это же прекрасно: у тебя есть здоровя конкуренция, где разработчики кед запилили нормальную реализацию вяленда

Нет, это не прекрасно. Платформа раскалывается на прибитую гвозядми к гному, использующую кде-специфичные протоколы и всё остальное, где как повезёт. А среднестатистическое приложение в произвольном композиторе работает 50/50. Проще выпилить всю эту чушь и продолжать сидеть на Х11, где, о боже, не раобтает 10-битный цвет и засвечивание сверхярких областей. А работа с hiDPI просто требует некоторых лишних телодвижений.

Мой экран имеет разрешение 2256x1504

...и не является 2К-экраном. Он ближе к 1440р экрану, даже выше. А это уже совсем другой класс. Не представляю даже где ты именно этот размер откопал, проще поймать единорога. Если так хочешь сравнивать свой «2К» с шириной 1920, тогда сравнивай с соответствующим 1920х1440.

Откуда тебе знать, как выглядит хорошо настроенный 4K, если ты им не пользуешься?

Не пользуюсь не значит не видел.

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

Дело не в гноме. Дело в ГТК-приложениях ,которые вынуждены приколачиваться гвоздями к гному и хреново работать в других окружениях.

Где они приколачиваются к гному?

Если ты забыл, мы обскуждаем твоё утверждение что гтк3+ приложенияполностью поддерживают вайланд

Ты всё еще не показал, как они не поддерживают вяленд.

включая любые варианты дробного масштабирования.

Настолько же, насколько и в иксах.

У них была реализация с отрисовкой х3 со сжатием х2. Мыла нет, есть тормоза. Но они там и так и так есть.

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

Если ты пытаешься использовать иксы с опцией –scale - у тебя руки кривые.

Уроки сверхманевренности от @kirill_rrr. Виноваты все вокруг: и юзеры, которые хотят просто работать с железом, который есть, и тулкиты, но ни разу не иксы, в которых существует костыль под названием --scale по причине отсуствия раздельного DPI на монитор.

Потому что её никто не задепрекейтил

Ее зедепрекейтили сами разработчики GTK, поддерживается она сообществом и мейнтейнерами дистров.

А среднестатистическое приложение в произвольном композиторе работает 50/50.

Но ведь нет же. Я поставил вяленд вместо иксов, и у меня всё просто заработало, как раньше - только масштаб стал работать.

…и не является 2К-экраном.

Является: In consumer products, 2560 × 1440 (1440p) is sometimes referred to as 2K. Впрочем, это сорта 2K.

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

Вполне обычный размер и экран. Вот тут. Это Framework 13, совершенно обычной конфигурации.

Если так хочешь сравнивать свой «2К» с шириной 1920, тогда сравнивай с соответствующим 1920х1440.

Хорошо, давай по-твоему: (1920 * 1440) / (1920 * 1080) * 100 ~= 133%. Итого, твой вариант монитора на 33% больше классического 1080p, что в три раза дальше от твоей оценки в «меньше 10%».

Не пользуюсь не значит не видел.

Видеть и пользоваться - две большие разницы.

liksys ★★★★
() автор топика
Ответ на: комментарий от liksys

Мыло может быть, если сервер картинку пожал. А так, от 1366х768 трудно ожидать качества на мониторе с бо́льшим разрешением. Я всего лишь показал, что есть настройка масштаба, и она не целочисленная, и даже меняет масштаб. Но да, она делает это с мылом. Есть ещё один вариант изменить масштаб, временно – зажать Alt и покрутить колесо мыши. При этом настройка меняется только на одном мониторе.

yars068 ★★★★★
()
Последнее исправление: yars068 (всего исправлений: 2)
Ответ на: комментарий от dmitry237

Правда, ради справедливости, не знаю как там в вяленом.

На самом деле ровно также, за исключением того что из-за дебильного сесурити кое-что работать отказывается. Даже в гноме.

Единственный плюс - вяленд дает прямую работу с dmabuf для аппаратного ускорения, за счет этого аппаратое декодирование видео например работает гораздо эффективнее. Не то чтобы в иксе это принципиально невозможно - просто корпоративная разработка сделала выбор в пользу вяленда и в иксах эти фичи просто не развили. Да и бесполезно уже - ну даже если кто-то смелый реализует это в иксе - корпоративные разрабы не станут делать поддержку этого в драйверах ибо они уже переориентировались на вяленд.

Для меня причин перехода было 3.

  1. На иксах все работает - в вяленом не особо. А значит поле непаханное где можно что-то покодить просто для профилактики деменции. Просто так кодить лениво - а когда это реально нужно проще убедить себя вечером после работы поковырять плюсы вместо просомтра какой-нибудь тупой киношки.

  2. На вяленом фокс (да и хромой) жрут меньше батареи и крутят меньше вентилятор - а сейчас все ушло в вебню. И это тоже не то чтобы принципиальная проблема икса а скорее то что под вяленым броузеры развиватся и оптимизируются, а под иксом - поддерживется возможность скомпилировать.

  3. Wayfire в отличии от Compiz показывает в Expose и свитчерах минимизированные окна, и как ни странно лучше работает в мультимониторном конфиге (не в плане масшатбирования - я нищебродской болезнью подклчения дедушкинго 1024Х768 монитора вторым экраном к 3К ноутбуку не страдаю). Но это уже спасибо не вяленому а разрабам wayfirе.

По итогам полученным десктопом доволен и на иксы нет желания возвращаться.

Qui-Gon ★★★★★
()
Ответ на: комментарий от liksys

Ты всё еще не показал, как они не поддерживают вяленд.

Элементарно. Есть архивный менеджер который в гноме называется file-roller. В мате- engrampa.

В иксах открываешь этим роллером архив и драг-дропом кидаешь оттуда файлы в FM - все копируется. В вяленом - х там плавал. Была у меня шальная мысль подглядеть как же гном gtk4 решил эту проблему и сбэкпортить в мате - но каково было мое удивление когда я это решение увидел. Они эту фичу просто выпилили. То есть не смогли на вяленом реализовать. Совсем.

То есть туева хуча приложений хоть и написаны на тулките который в принципе поддерживает вяленд (gtk3, gtk4 например) - но само по себе использование тулкита не гарантирует что приложение будет работать. Для этого надо еще данный тулкит соответствующим образом использовать. Мало того что не фрикодить внурь свои собственные костыли, но еще и вызвать определенные функции тулкита на определенном графическом дисплее - так чтобы на вяленде вызывалость вялендово, а на иксе - иксово. Вызов иксовой функции того же gtk под вялендом даст вам дамп. И наоборот.

Qui-Gon ★★★★★
()
Ответ на: комментарий от Qui-Gon

Разговор с товарищем выше у нас шел про то, что вяленд-приложения под одними вялендами работают, под другими - нет. А ты мне приводишь пример недопортированного софта с иксов на вяленд.

на вяленде вызывалость вялендово, а на иксе - иксово

Тулкиты скрывают эту разницу и дают готовую абстракцию. DnD - это довольно простая штука. У тебя есть пример конкретного API в каком-нибудь Qt/GTK4, где функции DnD для иксов и вяленда кардинально различаются?

Впрочем, я могу допустить, что где-то оно может быть действительно так. Но это лишь означает, что разработчики не почесались правильно портировать свой софт. Функции есть, но использовать их им было лень.

liksys ★★★★
() автор топика
Ответ на: комментарий от liksys

DnD - это довольно простая штука.

Не в этом случае. Там жж в том что надо не просто бросить в окно - а бросить в определнную папочку в окне. То есть у меня открытое окно фм - там картинки субфолдеров. И бросая файлы между картинакми папок я инициирую распаковку в корень того что отображено, а на картику папочки - внутрь папочки. Для этого там наделали иксовые костыли, ибо обычный DND так не умет. Ну собственно файлов то нет - сам по себе акт бросания «файлов» в определенное место инициировал команду распаковки архива в определенное место. Под иксами это реализовали - а под вяленым нет, ибо сесурити тебе не позвоялет утащить данные другого приложения. То есть можно было бы наверное если этот алгоритм разделить на пополам и половинку отдать в файл-менеджер а вторую половинку оставить в файл-роллере - но это означает что файл-роллер станет по сути частью наутилуса и сможет кидать только туда. А под иксом - он в любой гтк фм может кидать. И это не стали переделывать ибо долго а фича не то чтобы прям меганужная. Но просто пример того что может перестать работать вообще.

А под разными вейландами - ну например я использую форк wlr-ssr для граббинга видео с экрана. Рабтает только с wlroots композиторами. С гномом не работает. Так что тоже такое бывает вполне себе. А если мы еще версии протоколов посмотрим - то к гадалке не ходи попытка запуститт современный софт на каком-нибудь древнем композиторе будет грусть и боль.

Qui-Gon ★★★★★
()
Ответ на: комментарий от Qui-Gon

сесурити тебе не позвоялет утащить данные другого приложения

В DnD у тебя либо летают метаданные, либо небольшие фрагменты данных. Под вялендом всё работает точно так же. Проблема в том, что разрабы просто не сделали эту функцию. В том, что ты описал, я не вижу никакого нарушения протоколов, которое требовало бы невероятных костылей.

А под разными вейландами - ну например я использую форк wlr-ssr для граббинга видео с экрана. Рабтает только с wlroots композиторами.

Так это какой-то велосипед, сделанный под конкретный композитор. Консенсус сейчас в том, что это должно быть через XDG, и софт, написанный так, работает везде.

попытка запуститт современный софт на каком-нибудь древнем композиторе будет грусть и боль

Со старыми иксами всё точно так же было.

liksys ★★★★
() автор топика
Ответ на: комментарий от liksys

Во времена до вяленда, десктопные WM становились настолько всеобъемлющими, что начинали брать на себя часть функций иксов.

И какие же это функции иксов?

Большая часть функций стандартизирована между композиторами и вынесена во внешние библиотеки.

Да-да, я видел.

Дежурно напоминаю, что на момент активного развития иксов существовал примерно десяток X-серверов, плохо совместимых между собой.
Потом всё устаканилось, в процессе же расширения иксов велосипедились, создавались и умирали.
Вяленд сейчас проходит через тот же этап взросления софта.

Дежурно напоминаю, что мы живём в сейчас, а не в будущем. А вы пишете «никаких проблем нет», а не «никаких проблем в будущем не будет».

Когда «нинужно» кричат фанатики иксов - это действительно нинужно, понимать надо. А когда я использую ту же логику - это кошмар, лол.

Мне нет разницы до того, что кричат какие фанатики. Я вижу, что вы это кричите. И ужасаюсь тому, какой вы фанатик.

«— Вам же из телевизора врут! — А нашим врагам ещё хуже врут из телевизора!»

А реальность такова, что 96% учтенных юзеров KDE включили вяленд, и они не стали возвращаться на иксы, потому что не заметили разницы.

Я просто процитирую первоисточник: “Our internal metrics within KDE show that over 95% of users of Plasma 6.6 are on Wayland, with a gradual increase every release”.

Я не нашёл никаких упоминаний о том, что кому-то там что-то «включили», что эти «кто-то» об этом знали, и что у них была возможность «возвращаться на иксы».

Like, вот у человека Kubuntu. Ему как-то внезапно, удалённо «включают вяленд». Спустя несколько недель у него появляется всплывающее окно: «Внимание! Вам был включен вяленд! Вы хотите возвращаться на иксы? [Да] [Нет] [Повторить] [Отменить]»?

Так, что ли? Или как? Или во всплывающем окне было написано: «Внимание! Вам был включен вяленд! У вас что-нибудь отвалилось? [Да] [Нет] [Повторить] [Отменить]»?

shdown ★★
()
Ответ на: комментарий от shdown

Я вижу, что вы это кричите. И ужасаюсь тому, какой вы фанатик.

Ясно, отправляйся в игнор.

liksys ★★★★
() автор топика
Последнее исправление: liksys (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.