Contexte: je travaille sur un morceau de logiciel appelé ActivityWatch qui enregistre ce que vous faites sur votre ordinateur. Fondamentalement, une tentative de s'attaquer à certains des problèmes avec: RescueTime, selfspy, arbtt, etc.
L'une des principales choses que nous faisons est un journal d'informations sur la fenêtre active (classe et le titre). Dans le passé, cela a été fait à l'aide sur Linux à l'aide de xprop et maintenant python-xlib sans problème.
Mais maintenant, nous avons un problème: Wayland est à la hausse, et aussi loin que je peux voir Wayland n'a aucune notion d'une fenêtre active. Donc, ma crainte est que nous devrons mettre en place un soutien pour chaque environnement de bureau disponible pour Wayland (en supposant qu'ils vous offrent la possibilité d'obtenir des informations sur la fenêtre active à tous).
J'espère qu'ils finiront par converger et ont en commun certaines de l'interface pour obtenir ce fait, mais je ne retiens pas mon souffle...
J'ai été d'anticiper ce problème. Mais aujourd'hui nous avons eu notre première demande de l'utilisateur pour Wayland soutien par un réel Wayland utilisateur. Que les grandes distributions sont l'adoption de Wayland comme l'affichage par défaut du serveur de protocole (Fedora 25 est déjà, Ubuntu va basculer dans 17.10 qui est à venir bientôt), la situation va devenir plus critique au fil du temps.
Questions pertinentes pour ActivityWatch:
- https://github.com/ActivityWatch/aw-watcher-window/issues/18
- https://github.com/ActivityWatch/activitywatch/issues/92
Il existe d'autres applications comme ActivityWatch qui exigent de la même fonctionnalité (RescueTime, arbtt, selfspy, etc.), ils ne semblent pas le support de Wayland, et je ne peux pas trouver toutes les informations sur eux prévoient de le faire.
Maintenant, je suis intéressé par la mise en œuvre de l'appui pour Gnome pour commencer avec, et le suivi avec les autres, comme le chemin devient plus clair.
Une question similaire concernant Weston a été posée ici: obtenir la liste des fenêtres actives dans wayland weston
Edit: j'ai demandé à #wayland sur Freenode, a obtenu la réponse suivante:
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 :)
Edit 2: Déposé une amélioration de problème dans le Gnome le bugtracker.
tl;dr: Comment puis-je obtenir la fenêtre active sur Gnome lors de l'utilisation de Wayland?