Firefox, économiseur d'écran et Xfce

Comment un bogue énervant m'a conduit à contribuer à Firefox.

Contexte

J'ai la fâcheuse manie de changer l'environnement de bureau de mon ordinateur tous les 6 mois à peu près. À cette occasion, j'utilise régulièrement Xfce dont la simplicité et légèreté me plaisent.

Lors de mon dernier essai, je remarque un comportement fâcheux : l'écran se met en veille lorsque je visionne une vidéo Youtube avec Firefox. Encore une fâcheuse manie !

On creuse

Je profite de l'occasion pour creuser le problème et voir si je peux le résoudre. Après quelques recherches, je trouve un rapport de bogue similaire à mon problème, lié au composant xfce4-power-manager.

Le mainteneur de projet suggère que Firefox n'appelle pas la bonne interface D-Bus lorsqu'il veut inhiber la mise en veille de l'écran. D-Bus est un démon qui permet de faire communiquer différents programmes entre eux, via des interfaces pré-définies. Le problème n'apparait pas avec Chromium, qui doit certainement faire quelque chose de différent !

Hacker Firefox

Je plonge donc dans les entrailles de Firefox. Je trouve le fichier qui s'occupe de cette fonctionnalité : WakeLockListener.cpp. Je compare avec le code qui remplit la même fonction chez Chromium pour avoir une meilleure idée de ce qui peut mal …

plus ...