Feuille de route de LXPanel

De LXDE.org
Aller à : navigation, rechercher

Le panneau lui-même

Le support actuel des panneaux multiples est plutôt sale et a besoin d'être amélioré.

Amélioration de l'infrastructure

  • Implémenter les panneaux en sous-classant GtkWindow et en utilisant complètement les fonctionnalités fournies par GObject ;
  • Encapsuler certains événements dans une classe PanelConfig et afficher certaines notifications avec des signaux GObject (par exemple, le signal « changed ») ;
  • Les propriétés d'un panneau peuvent être enregistrées comme des propriétés GObject ; ainsi, on peut avoir des notifications de changement fournies par le système GObject et toutes les appliquettes peuvent se connecter à « notify::<nom-de-la-propriété> » pour obtenir les notifications appropriées ; par exemple, des propriétés utiles sont :
    • text-color,
    • orientation,
    • position ;

les appliquettes peuvent alors utiliser g_signal_connect(config, "notify::text-color", G_CALLBACK(on_text_color_changed), applet); pour modifier leur couleur de texte quand l'utilisateur règle une nouvelle couleur dans la boîte de dialogue des préférences ;

  • Encapsuler les événements X11 utiles dans une classe GObject : X11Events ; cet objet est unique et fournit des signaux de notification pour se connecter à :
    • window-manager-changed,
    • run-dialog,
    • show-app-menu ;

il fournit aussi des propriétés utiles :

    • working-area (ainsi, se connecter à « notify::working-area » permet de savoir que l'esapce de travail est changé),
    • cur-desktop ;

il fournit également des méthodes utiles :

    • x11_events_get_current_window(),
    • x11_events_list_windows() ;

cela devrait fonctionner comme libwnck mais implémente uniquement les choses les plus basiques ; cela devrait fournir suffisamment d'abstraction et éviter aux appliquettes d'avoir recours directement à des appels X11 ; l'appliquette de la barre des tâches pourrait devenir plus propre une fois ceci effectué.

Amélioration de la gestion de la disposition de l'interface graphique

  • Utiliser les nouvelles classes « LXButton » et « LXGrid » ;
  • Utiliser une interface GtkOrientable ? (Est-ce nécessaire ?) ;
  • Séparer les parties de l'interface graphique et les autres, si possible ; il serait ainsi bien plus aisé de mettre à niveau vers GTK+ 3 ou même de changer de boîte à outils pour l'interface graphique, à l'avenir.

Permettre l'utilisation de certaines appliquettes hors de LXPanel

Implémenter un conteneur simple embarqué dans GtkSocket et ajouter les appliquettes de LXPanel dedans. Ainsi, les appliquettes de LXPanel dans des greffons dynamiques pourraient devenir des applications « systray ». Une façon de lancer ceci serait :

lxpanel-applet batt

Le programme lxpanel-applet crée un port systray et charge le greffon de batterie. Il embarque ensuite le greffon à l'intérieur de systray. On peut utiliser cette façon de faire pour implémenter des appliquettes gnome-panel et ainsi permettre l'utilisation des appliquettes de LXPanel dans gnome-panel.

Considérer l'utilisation de dbus dans des greffons optionnels

Implémenter un nouveau greffon de batterie avec dbus et upower.

Greffon de mixeur de volume audio

  • Il devrait appeler des outils externes comme le contrôleur de volume de PulseAudio ou gnome-volume-control ;
  • Il devrait gérer les canaux multiples de manière adéquate ;
  • Laisser l'utilisateur régler le canal modifié par cette appliquette.

Intégration de l'appliquette de date et d'heure dans les outils d'administration de date et d'heure existant

  • L'intégrer avec time-admin ou d'autres alternatives possibles si elles existent ;
  • Pourrait fournir des fonctionnalité de base pour modifier l'heure du système.

Tansfert de certains greffons, comme netstat, dans des projets séparés

  • Le greffon netstat n'est plus à jour et devrait être retiré un jour si personne n'y touche à nouveau ;
  • Le greffon netstat a besoin d'être examiné et corrigé.

Lanceur d'applications

Il devrait permettre l'ajout personnalisé d'applications définies par les utilisateurs.

Menu des applications

Créer un greffon séparé spécifiquement pour le menu des applications est bien mieux que de mettre le greffon de menu existant en désordre. De cette façon, on peut lui ajouter plus de fonctionnalités sans problème de compatibilité avec le greffon de menu original venant de fbpanel.