LINUX.ORG.RU

Пользователям KDE Plasma 5 доступен прокси из системного трея XEmbed в SNI

 ,


3

2

David Edmundson, один из разработчиков KDE, начал проект «xembed-sni-proxy». Эта программа позволяет пользователям KDE Plasma 5 использовать приложения, поддерживающие только старый протокол системного трея (XEmbed), так же просто как и приложения, использующие новую спецификацию StatusNotifierItem.

Данная программа должна упростить переход с KDE 4 на KDE Plasma 5 для обычных пользователей, которым неизвестна разница между старым протоколом системного трея (XEmbed) и новой спецификацией StatusNotifierItem, но которые могут быть разочарованы, когда некоторые из их программ внезапно исчезнут из области «системного трея» после обновления системы.

Пакеты с программой xembed-sni-proxy уже доступны для пользователей Arch Linux и Debian. По всей видимости в официальный репозиторий Ubuntu до релиза Ubuntu Wily программа попасть не успеет, поэтому для пользователей Ubuntu Vivid и Ubuntu Wily подготовлен специальный PPA.

Сообщения об ошибках просьба присылать в соответствующий раздел проекта на GitHub.

>>> Подробности

★★

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

[sarcasm]Как жаль, что при переходе на Wayland это будет не нужно[/sarcasm]

Как и сам Wayland.

Что, собственно, я и выразил. Ведь кедоразрабы сказали «никакого XEmbed — скоро Wayland. Страдайте». Еще до того Wayland как до луны раком, ИМХО.

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

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

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

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

4.2

org.freedesktop.StatusNotifierItem.IconPixmap
Carries an ARGB32 binary representation of the icon

org.freedesktop.StatusNotifierItem.ContextMenu
Asks the status notifier item to show a context menu, this is typically a consequence of user input, such as mouse right click

org.freedesktop.StatusNotifierItem.Activate
Asks the status notifier item for activation, this is typically a consequence of user input, such as mouse left click

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

Ну так стабильная ветка - KDE 4.x, где всё работает.

Вылезай из анабиоза. Оно уже год как не поддерживается. В Qt4 тоже ни одного коммита с июня.

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

Прежде всего не нужно было выпиливать поддержку xembed в KDE.

Тогда бы им пришлось впиливать её своими силами (что они и сделали - в новости). Ибо в qt5 все X-овые костыли выпилены by design. Но это ерунда. Теперь ещё konqueror переносить надо на webengine (blink). Ибо старый добрый QtWebKit - deprecated с июня.

Suigintou ★★★★★
()
Последнее исправление: Suigintou (всего исправлений: 1)

Как специально для меня. Перешёл на Plasma 5 и мучаюсь с Gajim'ом уже неделю.

Ебилда ещё не появилось?

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

Не представляю какое из приложений умеет только в XEmbed.

У Gajim'а нет значка и способов вернуть не нашёл. Багу у них багзилле уже пол года. Пишут что libappindicator достаточно поставить, но мне не помогает.

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

пользователям gentoo он уже давно был доступен через флаг legacytray)

Спасибо, не знал. Пойду пересоберу пожалуй и не буду мучатся.

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

Ибо в qt5 все X-овые костыли выпилены by design

5 кубиков разупорина внутривенно, Qt 5 поддерживает Xembed-трей

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

GTK+ не поддерживает SNI без сторонних библиотек.

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

sni-qt - плагин для Qt 4, заставляющий QSystemTrayIcon использовать спецификацию SNI вместо XEmbed, если возможно. Сабж же это демон (?), преобразующий иконки XEmbed-трея в StatusNotifierItem'ы для программ/тулкитов, не умеющих в SNI.

equeim ★★
()

Кстати говоря, GNOME on Wayland прекрасно поддерживает XEmbed-трей через XWayland.

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

Ибо в qt5 все X-овые костыли выпилены by design.

Тогда это не разработчики KDE виноваты, а разработчики Qt. Зачем разработчики Qt выпилили работающую фичу? Кто им разрешил это делать?

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

Так значит в Qt 5.4.2 теперь есть полноценный xembed-трей? Тогда зачем разработчикам KDE понадобилось сейчас пилить костыль, его заменяющий? И что, если я сейчас поставлю KDE 5 и Qt 5.4.2, у меня будет полноценный трей, без всяких sni-qt и прочих прокси?

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

Нет, в Plasma 5 XEmbed-трея нет. А в Qt 5.4.2 его починили со стороны приложений (для тех DE, где он поддерживается).

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

Не представляю какое из приложений умеет только в XEmbed.

  • Приложения на Qt5, если в системе используются библиотеки Qt5 < 5.4.2. Лечится обновлением.
  • Приложения на Qt4, если библиотеки Qt4 не содержат патч из Ubuntu и не установлен sni-qt. При установленом sni-qt и пропатченном Qt4 работают более-менее адекватно.
  • Приложения на GTK+ 2.x и GTK+ 3.x, если не установлены libindicator и libindicator-gtk3. При установленном libindicator(-gtk3) в трее работают далеко не все программы (причину проблемы не искал).
  • Приложения на Java, использующие реализацию иконки системного трея из openjdk-jre. Если разработчики озаботятся, то могут реализовать трей на основе GTK+ (мне известен один такой пример) или Qt, в остальных случаях — работать не будет.
  • Программы, запущенные из-под Wine.
  • Проприетарные программы, статически слинкованные с Qt5 < 5.4.2.
  • Проприетарные программы, статически слинкованные с Qt4.
  • ...
Tehnick ★★
() автор топика
Ответ на: комментарий от Tehnick

При использовании sni-qt есть проблема при одновременном использовании 32- и 64-битных библиотек Qt4: в системном трее будут либо только иконки 32-битных программ, либо только иконки 64-битных программ...

s/libindicator/libappindicator/

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

Про иконку с диска ниже уже ответили.

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

Не следует путать SNI с его реализациями в различных DE. Не знаю, что там отчебучили разработчики GNOME Shell и Unity, но в KDE Plasma 5 приложения, использующие спецификацию SNI, различают левый и правый клики на иконках в «системном трее» и реагируют соответствующе. Более того, теперь иконки в трее реагируют на прокрутку колесика мыши при наведении курсора на них (например, можно отрегулировать яркость монитора или громкость), чего раньше не было.

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

http://susepaste.org/view/raw/71739600

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

Tehnick ★★
() автор топика

начал проект

упростить переход

уже доступны

попасть не успеет

подготовлен специальный PPA

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

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

Приложения на Qt4

Не-KDE приложения на Qt4. Те, что из KDE должны уметь.

При установленном libindicator(-gtk3) в трее работают далеко не все программы (причину проблемы не искал).

Приложение должно быть собрано с поддержкой libappindicator. А скорее всего, еще и пропатчено для добавления этой самой поддержки.

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

Такая же бяка. А потом для разнообразия вылетела Плазма и стало как было :).

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

У меня эта «пустота» (по крайней мере от Пиджина) реагирует на тычки мышью. А вот Мёртвая говядина - никак, даже меню не выезжает.

dv76 ★★★★
()

уссаться! не прошло и года, как я вновь увидел в трее иконку claws-mail. слава костылям!

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

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

4.2! В Veromix давным-давно рулю громкостью колесиком.

anonymous
()

Это же адаптер, а не прокси.

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

Очевидно, что я не использую все эти мессенджеры одновременно. На скриншоте — результат проверки работы xembed-sni-proxy в моей системе. Там же указаны версии Plasma и KF5.

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

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

Tehnick ★★
() автор топика

Позитивная новость!

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

Версии плазмы и kf5 у меня те же, xembed-sni-proxy собран из гита вчера, но более ранние версии вели себя так же.

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

Пользователи скайпа это не их пользователи, а рабы Microsoft.

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

Я из-за этого вернулся на четвертокеды :)
Теперь можно опять обновляться?)

Согласен

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

В том, что есть ещё некьютишные программы, не поддерживающие sni.

Adjkru ★★★★★
()
Ответ на: почта от dk101

Меня почтовик уведомляет.

DeadEye ★★★★★
()

с помощью xembed-sni-proxy teamviewer (wine) теперь отображается в трее?

brothermechanic ★★★★★
()

Поставил. Состав трея не изменился. А хотелось бы там увидеть хотя бы Gajim.

Wizard_ ★★★★★
()

Поставил, наконец появился dropbox (никакой sni-qt его назад не возвращал, по крайней мере у меня в арче, дропбокс из аура.) Работает очень плохо, на фоне иконки случайный набор пикселей, видимо тупо неинициализированный буфер из памяти отрисовывает.

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

Qt 5 поддерживает Xembed-трей

В QSystemTrayIcon? Там довольно весёлая поддержка - QTBUG-31762. Одна из причин переезда с четвертокед на KF5.

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

Зачем разработчики Qt выпилили работающую фичу? Кто им разрешил это делать?

xcb.

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

Поставил, наконец появился dropbox (никакой sni-qt его назад не возвращал, по крайней мере у меня в арче, дропбокс из аура.) Работает очень плохо, на фоне иконки случайный набор пикселей, видимо тупо неинициализированный буфер из памяти отрисовывает.

в qt4 тоже был такой баг/фича-что «некоторые» иконки рисовались неправильно(вайн приложений/гтк даже родных кутэшных или проприетарщины типа скайпа или стима)

забавно

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

Установил снова sni-qt и sni-qt:i386, перезагрузил ПК и вроде как всё заработало. Дистр Дебиан.

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