дает:

 Я работаю над программным обеспечением под названиемActivityWatch это записывает, что вы делаете на вашем компьютере. В основном это попытка решить некоторые проблемы с: RescueTime, selfspy, arbtt и т. Д.Одна из основных вещей, которые мы делаем, - записывает информацию об активном окне (класс и заголовок). В прошлом это делалось в Linux с использованием xprop, а теперь python-xlib без проблем.

Но теперь у нас есть проблема:

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

Я был

предвидя эту проблему, Но сегодня мы получилипервый запрос пользователя на поддержку Wayland фактическим пользователем Wayland. Поскольку более крупные дистрибутивы принимают Wayland в качестве протокола сервера отображения по умолчанию (Fedora 25 уже использует его, Ubuntu переключится на 17.10, который скоро появится), ситуация со временем станет более критической.Актуальные проблемы для ActivityWatch:

https://github.com/ActivityWatch/aw-watcher-window/issues/18

https://github.com/ActivityWatch/activitywatch/issues/92Существуют другие приложения, такие как ActivityWatch, для которых требуется та же функциональность (RescueTime, arbtt, selfspy и т. Д.), Они, похоже, не поддерживают Wayland, и я не могу найти какие-либо подробности о том, что они планируют сделать это.

Теперь я заинтересован в реализации поддержки Gnome, чтобы начать с

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

получить список активных окон в Wayland WestonРедактировать:

 Я спросил в #wayland на Freenode, получил следующий ответ:Изменить 2:

15:20:44  ErikBjare    Hello everybody. I'm working on a piece of self-tracking software called ActivityWatch (https://github.com/ActivityWatch/activitywatch). I know this isn't exactly the right place to ask, but I was wondering if anyone knew anything about getting the active window in any Wayland-using DE.
15:20:57  ErikBjare    Created a question on SO: https://stackoverflow.com/questions/45465016/how-do-i-get-the-active-window-on-gnome-wayland
15:21:25  ErikBjare    Here's the issue in my repo for it: https://github.com/ActivityWatch/activitywatch/issues/92
15:22:54  ErikBjare    There are a bunch of other applications that depend on it (RescueTime, selfspy, arbtt, ulogme, etc.) so they'd need it as well
15:24:23  blocage      ErikBjare, in the core protocol you cannot know which windnow has the keyboard or cursor focus
15:24:39  blocage      ErikBjare, in the wayland core protocol *
15:25:10  blocage      ErikBjare, you can just know if your window has the focus or not, it a design choise
15:25:23  blocage      avoid client spying each other
15:25:25  ErikBjare    blocage: I'm aware, that's my reason for concern. I'm not saying it should be included or anything, but as it looks now every DE would need to implement it themselves if these kind of applications are to be supported
15:25:46  ErikBjare    So wondering if anyone knew the teams working with Wayland on Gnome for example
15:26:11  ErikBjare    But thanks for confirming
15:26:29  blocage      ErikBjare, DE should create a custom extension, or use D-bus or other IPC
15:27:31  blocage      ErikBjare, I guess some compositor are around here, but I do not know myself if there is such extension already
15:27:44  blocage      compositor developers *
15:28:36  ErikBjare    I don't think there is (I've done quite a bit of searching), so I guess I need to catch the attention of some DE developers
15:29:16  ErikBjare    Thanks a lot though
15:29:42  ErikBjare    blocage: Would you mind if I shared logs of our conversation in the issue?                                     
15:30:05  blocage      just use it :) it's public                                                                                               
15:30:19  ErikBjare    ty :)

 Подалпроблема улучшения в багтрекере GnomeТЛ; др:.

 Как получить активное окно на Gnome при использовании Wayland?На мой взгляд, лучший выбор, который у вас есть, это не Wayland или любая другая доступная библиотека (их нет). На самом деле, кто знает в gnome-wayland об активных окнах, так это Mutter, поэтому вам нужно найти способ попросить Mutter активные окна. Gnome может разработать API-интерфейс для внутреннего запроса активного окна и восстановления функциональности. Но на самом деле, вам некуда просить об этом. Mutter не будет разрабатывать API для доступа к своему внутреннему представлению, потому что это будет довольно специфично только для Mutter, а не для всех оконных менеджеров Wayland. Так что это нужно добавить во внешнюю библиотеку, где эта библиотека могла бы общаться, вероятно, с текущим оконным менеджером, который используется для общего разрешения вашего запроса.

Ответы на вопрос(2)

Ваш ответ на вопрос