Journal kded-appmenu: le retour

Posté par  (site web personnel) .
Étiquettes :
15
12
sept.
2012

Bonjour,

Kded-appmenu est un module KDE permettant de déporter l'affichage du menu sous KDE.

dans mes précédents jounaux, je parlais d'une intégration dans KDE 4.9 qui n'a pas eu lieu à cause d'une remise en cause du fonctionnement de kded-appmenu.

En effet, l'ancienne architecture forçait à faire rentrer une librairie dans KDE dont l'API (à cause de restrictions dans libdbusmenu-qt) ne donnait pas satisfaction.

Donc, pour cette nouvelle version, kded-appmenu:
- S'occupe seul de dessiner les différent menus
- Discute via dbus avec kwin
- Propose une nouvelle barre de menu globale
- Sera peut être dans KDE 4.10

Ca ressemble à cela:
http://youtu.be/cID1KR_dlIs?hd=1

http://kde-apps.org/content/show.php/kded-appmenu?content=153882
https://git.reviewboard.kde.org/r/104344/

  • # Not foune

    Posté par  (site web personnel, Mastodon) . Évalué à 2. Dernière modification le 12 septembre 2012 à 14:28.

    Au vu de ta page perso, je croyais que c'était mort dans un affreux 404 depuis longtemps :D

  • # Vue d'ensemble ?

    Posté par  . Évalué à 2.

    Dans toutes ces histoires de menu déporté, je commence à me perdre un peu.

    Je n'ai pas actuellement kded-appmenu, mais néanmoins j'utilise le plasmoid de menu global, qui fonctionne naturellement avec toutes les applications Qt (dont KDE), ainsi que les autres applications compatibles avec dbusmenu (ex: firefox avec extension globalmenu, originellement développée pour Ubuntu Unity). Je n'y arrive pas encore avec les autres applis GTK (qui sont censées utiliser le même protocole, pour peu qu'on ait un GTK patché, ce qui est mon cas), ni avec chrome/chromium (qui, je crois, fonctionne pourtant avec Unity). Par ailleurs j'ai installé le service pour krunner qui me permet d'accéder aux menus des applications compatibles.

    Ma configuration actuelle ne me permet en revanche pas de déporter le menu vers la barre de titre d'une fenêtre, par exemple, mais j'ai l'impression que c'est la seule chose qui me manque par rapport à ce que pourrait m'apporter kded-appmenu (d'ailleurs, est-ce que kwin ne doit plus être patché pour cela?).

    Alors est-ce qu'une bonne âme se sent en mesure de lister tous les composants de cette galaxie, le rôle qu'ils jouent (ou qu'ils ont joué dans le passé s'ils sont obsolètes, ou qu'ils vont jouer dans un futur proche), et leurs interactions ?

    • [^] # Re: Vue d'ensemble ?

      Posté par  (site web personnel) . Évalué à 3. Dernière modification le 12 septembre 2012 à 15:21.

      Alors,

      pour les applications gtk2, il faut:
      - libdbusmenu-gtk2
      - appmenu-gtk2
      - gtk2 patché

      Pour les applications gtk3, il faut:
      - libdbusmenu-gtk3
      - appmenu-gtk3
      - gtk3 patché

      Disponible sous Aur pour ArchLinux.

      D'ailleurs:
      http://kde-apps.org/content/show.php/libkappmenu?content=153883
      http://kde-apps.org/content/show.php/plasma-widget-kappmenubar?content=153884

      Pour le plasmoid d'Aurelien Gateau compatible avec kded-appmenu.

      Libkappmenu est la librairie qui pose problème (car ne donnant accès qu'a un QMenu ce qui est problématique pour l'utilisation de QML).

      J'ai contacté le mainteneur qui n'est plus Aurelien sans réponse pour l'instant. J'ai une branche de cette librairie qui ne dépend pas de libdbusmenu-qt donc au pire on pourra faire le boulot directement dans libkappmenu si vraiment on a pas de réponse du coté de chez Canonical.

      Sinon, oui il faut patcher kwin pour avoir le button dans la barre de titre.

      La barre de menu global de kded se démarque par rapport au plasmoid par son coté dynamique: centré sur l'écran et suivant l'écran courant pour le multi screen.

      • [^] # Re: Vue d'ensemble ?

        Posté par  . Évalué à 2.

        Le côté dynamique peut être sympa, en effet.

        Ouhla, libkappmenu? Encore une lib de plus? (je viens de vérifier, elle n'est pas installée sur mon système)

        Bon, pour résumer, quelle est la pile state-of-the-art pour KDE ?

        Et que fait exactement kded-appmenu? Est-ce que c'est juste ce nouvel afficheur de menu + les contrôles qui vont bien dans systemsettings, pour configurer le menu déporter (y compris vers d'autres afficheurs que celui fourni, comme le runner ou le kwin patché)?

        • [^] # Re: Vue d'ensemble ?

          Posté par  . Évalué à 3.

          Ah libkappmenu est une dépendance du plasmoid que tu donnes en lien, qui apparemment est un fork du plasmoid que j'utilise.

        • [^] # Re: Vue d'ensemble ?

          Posté par  (site web personnel) . Évalué à 2.

          Et que fait exactement kded-appmenu?

          plasma-widget-menubar était à la fois un plasmoid KDE et à la fois un Registrar dbusmenu (le truc qui vole le menu aux applications).

          Problème, il vole la possibilité aux autres applications de récupérer les menus, krunner-appmenu utilise une astuce pour contourner le problème mais du coup ne sais pas récupérer les menu sans le plasmoid.

          Kded-appmenu est aussi un Registrar dbusmenu et libkappmenu est la librairie qui permet aux autres outils (un plasmoid, krunner, what else) de demander à ce registrar les menus.

          • [^] # Re: Vue d'ensemble ?

            Posté par  . Évalué à 2.

            Bon pas de chance, je n'arrive pas à faire marcher les nouveaux packages :( (aussi bien le plasmoid à l'ancienne que ton nouveau menu que le plugin apprunner)… comme beaucoup de commentateurs sur kde-look on dirait d'ailleurs.
            Ma config: KDE 4.9.1, OpenSuse 12.2 avec dépôts Ayatana (pour appmenu-qt), si ça peut aider :).

            • [^] # Re: Vue d'ensemble ?

              Posté par  (site web personnel) . Évalué à 2.

              qdbus org.kde.kded /modules/appmenu

              donne quoi ?

              • [^] # Re: Vue d'ensemble ?

                Posté par  . Évalué à 2. Dernière modification le 12 septembre 2012 à 16:57.

                Cela donne ceci: http://pastebin.com/xXJpQBwE
                Maintenant, c'est après avoir juste réinstallé kded-appmenu et relancé le service sans relancer KDE.
                Bizarrement, j'avais à peu près la même sortie avec kded-appmenu arrêté.

                Autre bizarrerie: certaines apps apparaissent sans menu du tout, alors que d'autres gardent le menu classique dans la fenêtre.

                • [^] # Re: Vue d'ensemble ?

                  Posté par  (site web personnel) . Évalué à 2.

                  Ok, c'est bon…

                  Et tu as suivi toute le procédure sur le site kde-apps ? En particulier le choix du type de menu ?

                  • [^] # Re: Vue d'ensemble ?

                    Posté par  . Évalué à 2. Dernière modification le 12 septembre 2012 à 16:59.

                    Oui, j'ai un peu tout essayé.

                    Au fait question: est-ce que les changements faits avec kwriteconfig sont à effet immédiat, ou bien il faut relancer le service et les fenêtres concernées ?

                    • [^] # Re: Vue d'ensemble ?

                      Posté par  (site web personnel) . Évalué à 2.

                      Il faut appeler la methode reconfigure() du module kded via qdbus.

                      • [^] # Re: Vue d'ensemble ?

                        Posté par  . Évalué à 2.

                        Bon, j'ai réussi à faire marcher la barre.
                        En fait le problème c'était la commande kwriteconfig que j'avais copiée/collée bêtement depuis le texte explicatif, si bien que ça m'avait ajouté une section étrange :
                        ["Menubar]
                        "MenuBarStyle"=style"

                        au lieu de :

                        [Menubar style]
                        MenuBarStyle=TopHorizontal

                        Bref, il suffit d'enlever les antislashes et la commande marche. Je pense que je ne suis pas le seul béotien à m'être laissé prendre.

                        Du coup maintenant, j'ai une feature request. Vu que j'ai ma barre plasma sur le bord haut de l'écran, j'aimerais bien que la barre de menu la recouvre, plutôt que de partir du dessous du panneau plasma (ce qui rend le menu difficile à attendre vu qu'il n'est plus en bord d'écran).

                        Enfin, vu que le résultat que je cherche à obtenir est quelque chose proche d'Unity, ce serait sans doute plus naturel de partir du plasmoid plasma-widget-kappmenubar. Je le fusionnerais bien avec le plasmoid "Contrôle de l'application courante" : le menu remplacerait le titre de la fenêtre au survol.

                        Quoique j'aime bien l'idée de cette barre qui me suit d'un écran à l'autre :)

  • # Curiosité

    Posté par  . Évalué à 2.

    Dans ta video, quelle est cette barre horizontale (dock) qui place des repères sur les cotés des icônes quand elles sont ouvertes ou réduites ?
    C'est une option dans KDE standard, c'est un module complémentaire ?
    Merci ;)

    • [^] # Re: Curiosité

      Posté par  (site web personnel) . Évalué à 4. Dernière modification le 12 septembre 2012 à 16:26.

      icon-tasks disponible dans les kdeplasma-addons (donc officiel).

      C'est utilisé par défaut sous Mageia d'ailleurs.

      J'en profite (ca m'évitera de faire un autre journal plus tard) que les scripts dockmanager pour Kde et plus ont reçus quelques nouvelles applications en support:
      http://kde-look.org/content/show.php/dockmanager-kde_and_extra?content=151511

      Pour rappel ces scripts permettent à icon-tasks de proposer des actions contextuels ou des personnalisations aux lanceurs d'applications.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.