LINUX.ORG.RU

Пара вопросов по Wayland

 , ,


0

4

Здравствуйте

Я пытаюсь добиться, чтобы моя программа работала под Wayland (пока мне удалось запустить работу под Windows и X11). Хочу уточнить некоторые ограничения, которые, как мне кажется, в Wayland являются непреодолимыми. У меня многооконное приложение типа «одно главное окно + любое количество дополнительных окон». Дополнительные окна являются чем-то вроде «панелей», которые можно стыковать к докерам (напоминает интерфейс Photoshop-а). GUI свой, поэтому я рисую в окне всё, что хочу. Но с Wayland возникают большие проблемы.

  1. Я не вижу возможности гарантированно обнаружить нажатие кнопки «свернуть окно». Да, одно окно, на котором эта кнопка нажата свернётся, но остальные останутся на экране. Вроде бы есть состояние XDG_TOPLEVEL_STATE_MINIMIZED, но, как я понял, оно не приходит почти нигде. А другого способа вообще не видно.

  2. Как я понимаю, окна в wayland нельзя перемещать по глубине. Соответственно, запросто возможна ситуация, когда дополнительные окна оказываются под основным, о чем я даже не узнаю. Это совсем плохо.

  3. Существует проблема с ALT+TAB, потому что wayland нельзя указать какое именно окно там показывать, а значит он может выкинуть туда все окна сразу. Правда, вроде бы есть вариант с помощью xdg_toplevel_set_app_id() указать одинаковый id для всех своих окон, что в теории должно остановить wayland от показа всех окон сразу по ALT+TAB.

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

Всем спасибо!

Ответ на: комментарий от anonymous

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

ну да. и сложнее терминала и текстового редактора ничего не юзают. Ну наверное mpv иногда.

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

Ну пойди и выкати фикс в wx чтобы у них пруса и кикад заработали.

А можно, $&@#!, просто не рисовать софтварный курсор через убогие костыли, а использовать системный. И всё. Это не wx, это кикад и прусаслайсер надо фиксить от дремучей замшелости.

И то же касается дурацкой парадигмы, когда панельки приложения оформляются как отдельные системные окна и приложение непременно хочет ими рулить, как в 2000–е. Дали тебе контекст — туда и рисуй. Хочешь, одно окошко рисуй, хочешь много, любой формы и в каких угодно позициях. А гадить на десктоп панельками, чтобы в тайловом wm отдельно нужно было костылять исключения в конфиге — …поубывав бы.

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

уНу да - клоуна поставил. Слабо тебе помочь WX команде рещить такую «простую» задачу. Ну понятно никто и не сомневался что кроме как повыёживаться что в кикаде программеры рукожопы а там делать нефиг - это одно,а взять и сделать - тут как-то не очень. Вся сущность вялендбоя как на ладони. Полагаю матросы все поняли.

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

А гадить на десктоп панельками, чтобы в тайловом wm отдельно нужно было костылять исключения в конфиге — …поубывав бы.

Ух какая жопоболь у тайлоеда! Гражданин, проснитесь, никто про эти «проблемы» иксов не в курсе, страдают только мамкины анимешники.

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

Ну да - клона поставил.

Заслужил. Держи ещё.

Слабо тебе помочь WX команде рещить такую «простую» задачу.

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

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

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

Вся сущность вялендбоя

Злые «вялендбои» собрали машину времени чтобы испортить дидам программы плохой архитектурой. Прими таблетки.

MagicMirror ★★★
()

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

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

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

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

А баг в wx висит уже несколько лет.

Это их проблемы и только. Никто не обязан бежать им и помогать. К тому же от Wx сейчас принято избавляться всеми правдами и неправдами, и переходить на нормальные тулкиты. Ты ставишь в пример неосиляторов в лице разрабов кикада и Wx, и называешь говном Wayland. Но почему же я могу в том же самом Wayland пользоваться LibrePCB? И нормально проектировать что-то там?

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

Потому что привыкли что всю работу делали за них. Пора теперь и самим поработать. Wayland привносит в экосистему линуксового десктопа понятие естественного отбора - останутся лишь сильнейшие. Мелюзга, привыкшая делать оберточки над Xlib, и орущая (как ты) что все им все должны, отсеится сама собой со временем.

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

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

Вяленд - плохой. Это факт. Но вяленд получил бабло значит будущее - это вяленд, соответственно надо сделать так чтобы оно работало. Откостылить, продавить, взять измором, форкнуть - средства у всех команд свои. И тут каждый работает в мере сил. Из тех кто знает что вяленд - плохой.

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

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

И кстати, раз уж на то пошло, кикад пишут реально рукожопы. Он работает, это лучшее что есть из опенсорсного, но блин…

Я в его сырцы в своё время уже совался и плюнул — проще выкинуть и заново переписать.

Например, показательное — несколько релизов тому назад перепилили поля ввода на быстрый поиск — чтобы результаты появлялись по мере набора, а не по нажатию кнопки поиска. Когда в библиотеке полторы детали — это работает. Когда же подключены все стандартные библиотеки, на каждое (!!!) нажатие шерстится вся огромная куча деталей и вся шайтан–программа подвисает секунды на три. Потом на следующее нажатие и на следующее… Казалось бы, чего стоит подождать пока пользователь завершит ввод. Или хотя бы построить отдельный быстрый индекс для этого… «А–а–а, и так сойдёт!™»

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

Корпорации хоть тайлинг не пропихивают, это уже творчество широких народных масс. Стековый композитор сложно сделать, вот и побежали клепать клоны dwm. Все равно сложно получается, и поделки застряли на уровне сырых беток. Зато можно вечно заниматься ИБД и считать звездочки на гитхабе.

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

Это их проблемы и только. Никто не обязан бежать им и помогать.

Да скажи прямо - ты обосрался. Ты не знаешь не умеешь и не можешь это сделать. Я знал!!! Я гений, Иорь Северянин….

Но почему же я могу в том же самом Wayland пользоваться LibrePCB

Польуйся, флаг в жопу барабан на шею. Или флаг куда-то еще?

Но KiCAD это лучщее из того что есть с научным вкладом ЦЕРН. А LibrePCB - пионерская свистелка.

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

Вяленд - плохой. Это факт.

«Сами вы его выбрали или его выбрали за вас, это лучший город из оставшихся.»

На вопрос почему все могут, а WX с kicad не могут ты так и не ответил.

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

Да скажи прямо - ты обосрался

Если обосрался я - почему по ляжкам течет у тебя? Да и запашок неприятный тоже от тебя.

Ты не знаешь не умеешь и не можешь это сделать. Я знал!!! Я гений, Иорь Северянин….

Кто?.....че у вас иксонутых в голове?)) не могу что? Тратить время в попытках исправить то, что априори не работает, то есть Wx?

Польуйся, флаг в жопу

Иксонутые только и думают о зондах да о флагах в жопе.

Но KiCAD это лучщее из того что есть с научным вкладом ЦЕРН. А LibrePCB - пионерская свистелка.

Поплачь

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

Винду зачем-то приплел.....че к чему вообще. Не понимаю. У меня есть LibrePCB, который меня всем устраивает. Тебя же на куски разрывает от правды - что Кикад и Wx кривое говно, не осилившее Wayland.

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

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

Не знаю как это делать в вяленом - ну вернее знаю как это сделать в одном отдельно взятом композиторе внеся нестандартные протоколы или IPC. Но я и не претендую на вяленд-эксперта.

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

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

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

Wayland привносит в экосистему линуксового десктопа понятие естественного отбора - останутся лишь сильнейшие.

Как бы тебе не остаться с голой жопой. Или десктопного софта под Линукс стало так много, что пора прореживать?

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

Сказать то че хотел, лалка? Иди штаны стирай и жопу мой. А пока делаешь это скажи - почему твои специалисты из ЦЕРН не осилили в кикад добавить Wayland, а один единственный чел осилил целый аналог написать, с очень нехилой библиотекой компонентов? И поддержкой таки Wayland? М?

Но я и не претендую на вяленд-эксперта.

Зато вони от тебя как от тех самых «экспертов», что на различные ток-шоу приглашают.

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

Хренасе тебя разорвало

А кто это в соседнем сраче 20 страниц рвался? Разве не пингвин с гвоздем башке? Береги себя, у тебя там живого места уже нет наверно.

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

И кстати, раз уж на то пошло, кикад пишут реально рукожопы. Он работает, это лучшее что есть из опенсорсного, но блин…

Ну Kicad изначально писали ученые и околонаучные инженеры для себя. Поэтому его интерфейсная часть это такая вещь в себе, им было нужно то что под капотом. А под капотом там то что никакие хоббисты из либре-ПИСИБИ ни под какими грибами не увидят. Хотя там со стороны интерфейса история наборот. Но тут кому шашечки а кому ехать. Плату уровня ардуинки по большому счету пофигу чем разводить, более мало кому надо. И уж точно не тайлинг-вяленд-боям.

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

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

Иди штаны стирай

Не стирай штаны. тебе идет желтый кружок спереди и коричневая полоска сзади. А постираешь - станешь как дид иксовый. Не стирай.

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

Вы самый жалкий пират о котором я слышал!!! Но ведь слышали же?

(c)капитан Джек Воробей

И будет их поделие работать вечно через Xwayland.

И будет их поделие работать вечно.

А о нативных перделках под вейланд забудут ибо кроме умения работать под вейландом ничего за плечами и нет.

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

Они очень специфические ребята.

Так и запишем - безрукие неосиляторы современных технологий. Да, кстати. Не знаю че тебя так порвало с LibrePCB, но есть ещё потрясающий Qucs-S. Он куда круче, и таки да - запускается нативно в Wayland

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

В случае иксов это вопрос исключительно к иксам.

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

нужно это безкомпромиссно запрещать

И тогда получится вяленый :)

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

Ну Kicad изначально писали ученые и околонаучные инженеры для себя Так в том и штука.

Если вы не в курсе, как программируют учёные (не CS, да и добрая часть представителей CS–специальностей), то докладываю: хреново. Потому что у них когнитивные ресурсы вложены в то, чтобы быть специалистом в своей сфере, а не проектировать архитектуру и вылизывать UI. Как правило, это просто жуткие нагромождения из готовых блоков, которые просто getting things done, без оглядки на производительность и удобство использования.

А у кадов в целом и KiCad в частности, UI — это ключевое. То, что определяет непосредственно пригодность и эффективность работы в данном софте.

DRC, волновое сопротивление и прочие спайсы — это замечательно, но это актуально уже когда схема и/или плата сделана хотя бы наполовину. Если пользователь в процессе работы трижды всё проклянёт и уйдёт на альтиум, до использования всего этого добра дело попросту не дойдёт. И собственно первые версии три кикадом автор этих строк пользоваться не мог, из–за убогости интерфейса — когда для разных инструментов меняются роли клавиш мыши, нужно переключаться и совершать кучу лишних нажатий на каждое действие, и т.д.

К пятой версии стало более–менее комфортно, но сейчас всё опять скатывается.

А под капотом там то что никакие хоббисты из либре-ПИСИБИ ни под какими грибами не увидят.

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

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

Если серьезно, то wayland работает поживее, но не без приколов. Новые баги появляются с каждой новой версией, а старые не исправляются годами. Про тайлодрочеров тоже не верно, потому как для них только гирлянда и швай на вейлянде есть, остальные сексовые, тк как ~/.xinitrc в вейлянде не работает, а systemd им религия запрещает использовать.

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

носишься с кривым кикадом

Это ты про тот самый кикад, которым люди уж лет тридцать пользуются на виндовз и линакс? И вот сейчас его надо срочно переделывать для вяйленда? Не много ли чести для вялого?

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

И вот сейчас его надо срочно переделывать для вяйленда?

Не хотите - не надо. Никто на самом деле не заставляет, дело не в этом. Брать в пример проект, тоннами гвоздей приколоченный к X, и ныть «из-за пративного вейланда больно гвозди выдирать» - по меньшей мере глупо, если не намеренная провокация flame.

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

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

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

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

Нет, не про тот. КiCad уже несколько раз переписывали, если что. И это не преувеличение. KiCad тридцатилетней давности воообще мало кто из участников этого треда застал — это была малоизвестная студенческая поделка, набор отдельных утилит, как gEDA.

Кикад пятнадцатилетней давности уже вполне похож на современный, но им было больно пользоваться, поэтому ему предпочитали проприетарного орла и спираченный пикад под вайном. Потом, году так в 2013 проект заметили в CERN — это было единственное более–менее современное опенсорное ПО, в котором можно было со скрипом, но разрабатывать платы для свободной публикации.

Какое–то время разработчики из CERN’a пилили кикад на фуллтайм — и это, не побоюсь этого слова, золотое время для данной софтины. Причесали UI (стало можно пользоваться без мата), причесали кодбазу, появилась 3d–визуализация и куча всего необходимого. На кикад стало переходить куча народу, он стал стандартом для OHW–проектов. Но примерно к 2020 поддержка и спонсорство от CERN сошли на нет.

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

Переписывали под третий wxPython, переписывали на питон отдельные модули. Поэтому, в том что перепишут, когда в очередной раз прижмёт — не сомневаюсь нисколько. Но вот получится ли этим пользоваться по итогу — это уже вопрос… И к wayland этот вопрос не имеет никакого отношения.

anonymous
()