Technical discussions | Discussions techniques
matttbe, Monday 11 February 2013 à 09:25
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Hello,
Here is just some ideas but I need some technical advises before trying to code them
I think it can be interesting to integrate some tools from Unity/Gnome-Shell/... but which one? Maybe Unity WebApps?
About Unity WebApps, it should not be too hard to support it because we already have Indicator-Sound (Sound-Menu), Indicator-Messages (Messaging-Menu) and the Launcher API. But I don't know what we have to do more... (connecting to a daemon? some hacks?)
I plan to port Sound-Menu (only the part about the Indicator applet) to Indicator3 (like Messaging-Menu, etc.) but should I drop the support of GTK2? It's just because this applet needs a recent version of GTK2 and Indicator (and then I guess that if this distribution contains that, GTK3 should be available). But I guess it shouldn't be hard to support both versions (e.g. Messaging Menu supports both versions).
Also, about Indicator, is there an easy way to create more than one icon for one applet (and not use a kind of hack like the one in Status-Notifier): Instead of creating a new applet for each indicator (all files in /usr/lib/indicators3/*/)ls /usr/lib/indicators3/7/*.so
/usr/lib/indicators3/7/libapplication.so
/usr/lib/indicators3/7/libappmenu.so
/usr/lib/indicators3/7/libbluetooth.so
/usr/lib/indicators3/7/libdatetime.so
/usr/lib/indicators3/7/libmessaging.so
/usr/lib/indicators3/7/libpower.so
/usr/lib/indicators3/7/libprintersmenu.so
/usr/lib/indicators3/7/libsession.so
/usr/lib/indicators3/7/libsoundmenu.so
/usr/lib/indicators3/7/libsyncindicator.so I want to create a generic applet to load all indicator applets (except some of them like messaging, soundmenu, application, etc.) and easily create a new icon for each applet. I can also create a generic applet that can be duplicated and load only one file (that can be modified in the config panel) but it's not user-friendly... |
fabounet, Monday 11 February 2013 à 12:12
|
|
Subscription date : 30 November 2007
Messages : 17118
|
pour les web apps, je ne sais pas comment ça marche (en fait j'en ai jamais vu une seule, même en utilisant Unity, j'ai eu des popup dans firefox mais apparemment ça ne marche pas)
pour Sound-Menu, ça serait bien d'utiliser le menu fournit par le .so dans le cas où on l'utilise
pour les autres indicateurs, utiliser le menu dans tous les cas, mais il me semble que c'est déjà le cas, donc je ne vois pas trop ce qu'il manque. c'est déjà très facile de supporter un nouvel indicateur non ?
pour une applet générique (multi-instance où tu choisis dans la config quel indicateur tu veux je suppose ?) pourquoi pas, peut-etre en permettant de changer d'indicateur via le menu du clic droit pour ne pas devoir aller dans la config ?
je pense que supporter gtk2/gtk3 devrait etre fait dans Indicator-applet*, l'applet ne devrait pas avoir à se soucier de ça si possible.
Edit: dans le genre bonnes idées, supporter les nouveaux menus serait bien (Gnome, KDE). c'est déjà fait pour Ubuntu, j'avais prévu de le faire pour Gnome mais pas encore eu le temps.
aussi voir si Mutter peut nous aider (Exposé des fenetres/bureau) |
matttbe, Monday 11 February 2013 à 14:48
|
|
Subscription date : 24 January 2009
Messages : 12573
|
pour les web apps, je ne sais pas comment ça marche (en fait j'en ai jamais vu une seule, même en utilisant Unity, j'ai eu des popup dans firefox mais apparemment ça ne marche pas) Je ne l'ai jamais utilisé non plus mais j'ai vu des démo avec GMail/Google: il faut accepter la notif dans Firefox puis une icône GMail est créée (ça je ne trouve pas ça important) mais surtout une entrée est rajoutée dans Messaging Menu, prévenant l'arrivée de nouveau mail. Pour Grooveshark, Sound-Menu était utilisé.
Je vois que ces fichiers sont installé sur mon pc: /usr/bin/ubuntu-webapps-update-index
/usr/bin/unity-webapps-desktop-file
/usr/bin/unity-webapps-runner
/usr/lib/libunity-webapps-repository.so
/usr/lib/libunity-webapps.so
/usr/lib/libunity-webapps/unity-webapps-context-daemon
/usr/lib/libunity-webapps/unity-webapps-service Les 2 derniers ont l'air intéressants, je suppose qu'il y a un service comme avec les autres. Comment le lancer? Comment s'y connecter?
pour Sound-Menu, ça serait bien d'utiliser le menu fournit par le .so dans le cas où on l'utilise Je vais regarder à ça!
pour les autres indicateurs, utiliser le menu dans tous les cas, mais il me semble que c'est déjà le cas, donc je ne vois pas trop ce qu'il manque. c'est déjà très facile de supporter un nouvel indicateur non ? Oui mais il y en a plusieurs indicateurs, s'il faut créer une applet pour chaque alors qu'il n'y a qu'une ligne ou 2 qui changent (voir la différence en Printer-Menu et Sync-Menu) et surtout, que l'on est pas certain que le .so en question est installé ou non.
pour une applet générique (multi-instance où tu choisis dans la config quel indicateur tu veux je suppose ?) pourquoi pas, peut-etre en permettant de changer d'indicateur via le menu du clic droit pour ne pas devoir aller dans la config ? Pour moi, dans l'idéal, ce serait d'avoir une applet qui se duplique automatiquement en fonction des "indicateurs" disponibles. Dans la config, on pourrait y trouver une "blacklist" pour ne pas démarrer certains indicateurs.
À l'init, le dossier /usr/lib/indicators3/7/ serait parcouru et une icône serait créée pour chaque indicateur (en se connectant à tous les signaux pour afficher les bons menus, etc.).
Du coup, ma question est de savoir si tu vois une méthode assez simple pour réaliser ça ou est-ce qu'il faut créer plusieurs images dans l'icône réservée à l'applet et réagir en fonction d'où on a cliqué sur cette grande icône (comme avec Status-Notifier).
Le gros problème est donc qu'il y aurait qu'une seule icône donc pas génial pour les effets (comme avec Status-Notifier, il faudrait les enlever) et pas moyen de "disperser" les icônes, ça ne formerait qu'un bloc. Mais c'est parfaitement faisable.
je pense que supporter gtk2/gtk3 devrait etre fait dans Indicator-applet*, l'applet ne devrait pas avoir à se soucier de ça si possible. Oui, c'est juste que je ne me souviens plus si c'était possible d'utiliser la même technique avec les anciennes versions de indicators et que Sound-Menu demande une version récente de libido, dbus-menu, etc. (du coup ça compilera avec GTK2 que si on possède des versions récentes des autres et donc on possédera certainement GTK3). Mais je vais regarder si c'est simple d'avoir un truc comme avec Messaging-Menu (supporter indicator-applet et indicator-applet3)
Edit: dans le genre bonnes idées, supporter les nouveaux menus serait bien (Gnome, KDE). c'est déjà fait pour Ubuntu, j'avais prévu de le faire pour Gnome mais pas encore eu le temps.
aussi voir si Mutter peut nous aider (Exposé des fenetres/bureau) Ah oui, bonnes idées |
fabounet, Monday 11 February 2013 à 16:10
|
|
Subscription date : 30 November 2007
Messages : 17118
|
on est pas certain que le .so en question est installé ou non
ça l'applet peut le tester au lancement, et retourner FALSE pour ne pas être chargée (et donc ne pas apparaitre dans la config)
pour l'applet générique on peut faire comme Status-notifier, mais je verrais plutôt une icône par menu (ça permettrait de garder les effets, et de les placer où on veut) enfin c'est à voir.
alors qu'il n'y a qu'une ligne ou 2 qui changent
peut-etre alors qu'il faudrait développer un peu plus indicator-applet, pour pouvoir créer une applet indicateur en 5mn. |
matttbe, Monday 11 February 2013 à 17:58
|
|
Subscription date : 24 January 2009
Messages : 12573
|
ça l'applet peut le tester au lancement, et retourner FALSE pour ne pas être chargée (et donc ne pas apparaitre dans la config) Bonne idée mais ça oblige de couvrir tous les "indicators" (si on ne se contente que ceux des dépôts officiels, ça peut aller mais si on doit regarder aux ppa )
pour l'applet générique on peut faire comme Status-notifier, mais je verrais plutôt une icône par menu (ça permettrait de garder les effets, et de les placer où on veut) enfin c'est à voir. Oui, je suis d'accord mais comment faire cela automatiquement, sans créer une applet par indicator ni en dupliquer une et changer la config?
peut-etre alors qu'il faudrait développer un peu plus indicator-applet, pour pouvoir créer une applet indicateur en 5mn. C'est déjà le cas
Copier/Coller, changer le nom du fichier, le nom de l'applet, la description et choisir une icône. Mais il faut recompiler, du coup ce n'est pas pratique pour en ajouter de nouvelles. |
fabounet, Thursday 14 February 2013 à 23:23
|
|
Subscription date : 30 November 2007
Messages : 17118
|
pour ceux qui veulent la suite, il fallait être sur IRC |
lylambda, Friday 15 February 2013 à 00:18
|
|
Subscription date : 06 September 2009
Messages : 1635
|
pour ceux qui veulent la suite, il fallait être sur IRC Tsss, y en a que pour les abonnés… On aura droit à un résumé quand même ? |
matttbe, Friday 15 February 2013 à 14:57
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Petit résumé:
- Le Sound-Menu est maintenant importé du fichier .so si libindicator3 est dispo (mais uniquement le menu, le reste est contrôlé depuis le backend alsa)
- Je vais regarder si c'est possible d'avoir une applet générique pour les "indicators" (en chargeant automatiquement tous les indicateurs installé (comme sur Unity/Gnome-Panel) à l'exception de certains d'entre eux). L'applet s'auto-instancierait en créant donc une nouvelle icône pour chaque indicator.
- Par contre, on n'a pas discuté des webapps (et je pense que ça pourrait être intéressant d'y regarder d'un petit peu plus prêt car c'est bien possible que ce soit très simple à mettre en place )
|
fabounet, Friday 15 February 2013 à 17:28
|
|
Subscription date : 30 November 2007
Messages : 17118
|
bien sûr, en gros on a décidé de recoder le dock en Javascript pour suivre le chemin tracé par Gnome.
PS: un troll se cache dans ce message, sauras-tu le débusquer ? |
matttbe, Saturday 16 February 2013 à 01:25
|
|
Subscription date : 24 January 2009
Messages : 12573
|
un troll se cache dans ce message, sauras-tu le débusquer Tu ne parlais pas de Java plutôt? |
lylambda, Saturday 16 February 2013 à 13:45
|
|
Subscription date : 06 September 2009
Messages : 1635
|
Merci pour ces infos
Par contre, CD continu de s'axer beaucoup sur Unity/Gnome. Ça ne risque pas de créer de gros écarts avec KDE ou XFCE, par exemple ? (vrais question ) |
fabounet, Saturday 16 February 2013 à 18:48
|
|
Subscription date : 30 November 2007
Messages : 17118
|
on support déjà KWin, et surtout on respecte les standards, donc si les autres le font aussi ça devrait bien se passer
c'est juste que Unity et Gnome proposent des nouveautés intéressantes (et c'est récent, il y'a peu ils étaient très instables ce qui a retardé leur support), comparé à XFCE qui n'avance pas vite ou KDE qui est déjà stable. |
lylambda, Sunday 17 February 2013 à 00:21
|
|
Subscription date : 06 September 2009
Messages : 1635
|
D'où lr non support du nouveau systray par xfce ?
En tout cas c'est très clair, merci |
matttbe, Sunday 17 February 2013 à 03:08
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Fab vient d'ajouter le support de Gnome-Shell pour gérer le mode "Exposé" et show all desktops! Merci |
fabounet, Sunday 17 February 2013 à 13:18
|
|
Subscription date : 30 November 2007
Messages : 17118
|
D'où lr non support du nouveau systray par xfce ?
ça c'est à eux de s'y mettre, KDE et Unity le supporte et ça marche très bien. c'est vraiment dommage qu'il y'ait tellement d'inertie
surtout que c'est inévitable (wayland) et que ça a des avantages |
Technical discussions | Discussions techniques
|