LINUX.ORG.RU

увеличиваются окна меню трея kde в xmonad

 , , ,


0

3

я когда-то давно сделал костыль в xmonad, который убирает рамку у окон трея kde(у тех, что есть _KDE_NET_WM_WINDOW_TYPE_OVERRIDE), ибо с ней они выглядят ужасно. но возникла другая проблема, которую я всё это время не замечал: при каждом открытии окна оно увеличивается по высоте и ширине на 1 пиксель по сравнению с предыдущим разом. конфиги на github, за это поведение отвечает файл .xmonad/lib/XMonad/Config/Plasma.hs

★★★★

Этому багу много годков. Связано с smartBorders. Пример: если играешь в игру, то при переключении окон, в правом углу изображение увеличивается на 1-2 пиксела. Разработчики только хмыкали, писали, что в модуле всё норм. Жаль, поменял железо, ссылки на переписку прибил.

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

а можно ли как-то не передавать управление модификатору smartBorders в определённых случаях? да, это жуткий костыль, но по идее он должен работать, судя по тому что ты написал.

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

Когда я рыл на сайте, то не нашел. Я был не одинок в проблеме, что сейчас не знаю, так как отказался от модуля в целом. Но сами разработчики не знают, где рыть (наш код прозрачен и т.д.). Повторюсь, баг выезжал при использовании 3D. без 3D приложений всё шурупало как было расписано. А в 3D приложении при переключении окон картинка расползалась по правому краю на 1-2 пикселя, пять-шесть переключений и не попадаешь в меню «выход» )))

Да, на сайте предлагают в layouts пихать. Мол FullScreen с NoBor... Н отогда смысл в smart?

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

у меня 3d приложения(xonotic, cs) работают; проблема лишь с тем, что я написал. ещё была с krunner'ом, но тому, наоборот, помогло отсутствие границ.

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

кстати, похоже, у меня виновен не smartBorders, потому что когда я его убрал, проблема осталась.

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

если смотреть на твой конфиг сейчас на хабе, то он должен говорить (no scope smart блала).

where full = smartBorders ∘ fullscreenFull $ Full

Сам не могу проверить с плазмой, но в xfce всё шурупало нормально.

И у тебя там ничего нет «страшного». Единчтвенное, что ты подключаешь для xmonad ∘ plasma?

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

я же сказал, что всё, что отвественно за проблемы, в файле .xmonad/lib/XMonad/Config/Plasma.hs . его и подключаю. xmonad подгружает ещё модули из ~/.xmonad/lib/, если что

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

в Виме

в емаксе. но в чём-то ты прав, потому что емакс-то с evil'ом

propertyHideBorders выключить ну и smartBorders

именно эти две вещи(причём только вместе) и способствуют проблеме. но мне-то надо, чтобы они были включены, и всё работало.

Я бы ewmh в xmonad.hs врубал

ewmh необходим для взаимодействия с плазмой, так что всё же по-моему лучше оставить. смысл в том, чтобы [inine]plasma defaultConfig было уже полностью юзабельно с плазмой.

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

Во. Надо его по функциям разобрать. ewmh - если не ошибаюсь, поддержка стандарта. А с игрушками в полноэкранном режиме чтобы траблов не было, рекомендую поставить в основной конфиг. И в потоке зачем ты используешь: propertyHideBorders (ClassName «krunner» `Or` ClassName «plasmashell») ∘ desktopLayoutModifiers ∘ smartBorders ∘

зачем пропускать данные через smartBorders?

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

ewmh - если не ошибаюсь, поддержка стандарта

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

А с игрушками в полноэкранном режиме чтобы траблов не было

дело в том что их и нет. трабл-то с popup'ами трея.

зачем пропускать данные через smartBorders

не понял. можешь объяснить подробнее, что я делаю не так, и как правильно? желательно ещё почему.

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

Да выкуси из выражения propertyHideBorders функцию smartborders И вообще, чего надо именно кде? Чем не нравится сам xmonad? Есть любителям и dzen2 и xmobar, как Душа пожелает.

Дальше. Писал, что есть проблема с ф-й smart... Убери её из конфига ( перепиши, закоментируй). Как побороть не знают и разрабы функции. У тебя композиции вместе с ней, зачем, хз.

Сама propertyHideBorders, если написана для убирания рамки (на постоянной основе), думаю написана избыточно, хотя я ламер. Уверен, делается всё проще. Есть же Nofu^Wborder. Я бы её и применил к тому, что хочу без рамки. Но это всё вилами по воде. Не моё соединять Gnome и xmonad или kde.

Да, ewmh бывает совсем не надо.

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

выкуси из выражения propertyHideBorders функцию smartborders

ты имеешь в виду перенести smartBorders в xmonad.hs или вообще убрать?

Писал, что есть проблема с ф-й smart...

говорю же, что виновата не она(убирал, не помогало)

Есть же Nofu^Wborder

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

Да, ewmh бывает совсем не надо.

да, но лично я не представляю, как юзать kde + xmonad без ewmh.

И вообще, чего надо именно кде? Чем не нравится сам xmonad? Есть любителям и dzen2 и xmobar, как Душа пожелает.

я посидел пару месяцев на xmonad + taffybar, с kde мне нравится больше:

  • не надо заставлять wm делать вещи, которые ему делать не положено(запускать приложения, управлять плеером, громкостью, ставить бэкграунд etc)
  • более удобная настройка внешнего вида, да и вообще красивее выглядит
  • kdeшные приложения
  • etc
f1u77y ★★★★
() автор топика

f1u77y скажи пожалуйста,

Ты в галерее выложил скриншот пятой плазмы.

1. Как ты сделал, чтобы в таск баре отображались только иконки запущенных приложений?

2. Значок wi-fi в системном трее — это какое приложение?

А то я только что установил plasma-meta и разобраться не могу что доустановить нужно.

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

;) А че, четко. Итак, снова к баранам. Я столкнулся с багом при применении функции smartBorder, ты написал свою функцию, при ипользовании которой мы получаем такой же баг. Теперь осталось отрыть исходник smartBo... и сравнить, где код похож. Там и закопано. Потом отдать сообществу пропатченную версию, получить тонну к ЧСВ и удовлетворенно забыть, да лень ))

И да, я предлагаю вообще пока убрать smartBorder.

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

и да, я забыл добавить в список krunner

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

осталось отрыть исходник smartBo... и сравнить, где код похож

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

И да, я предлагаю вообще пока убрать smartBorder.

мне лично некомфортно, когда около окна в фулскрине есть рамочка.

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

icons-only task manager

Упс, слона и не заметил.

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

Так уже все перерыл, найти не могу.

eix plasma-meta
[I] kde-plasma/plasma-meta
     Available versions:  (5) (~)5.4.0 [M](~)5.4.1[1] **5.4.49.9999[1] (**)9999{tbz2}[1]
       {bluetooth +display-manager gtk networkmanager pulseaudio +sddm +wallpapers}
     Installed versions:  9999(5){tbz2}[1](09:26:22 PM 09/05/2015)(bluetooth display-manager gtk sddm wallpapers -networkmanager -pulseaudio)
     Homepage:            https://www.kde.org/workspaces/plasmadesktop/
     Description:         Merge this to pull in all Plasma 5 packages

[1] "kde" /var/lib/layman/kde

Ты так устанавливал или еще что-то добалял?

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

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

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

Еще уточню.

1. У тебя networkmanager установлен? 2. Когда на этот значок (wi-fi) тыкаешь, там никаких пунктов меню, типа about нет? Если есть, скажи, что там написано.

pol01
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.