Outils pour utilisateurs

Outils du site


applications_gtk_sous_kde

Différences

Ci-dessous, les différences entre deux révisions de la page.


applications_gtk_sous_kde [2022/08/27 11:30] (Version actuelle) – créée - modification externe 127.0.0.1
Ligne 1: Ligne 1:
 +====== Applications Gtk sous KDE ======
 +On traite ici du problème des personnes utilisant KDE comme environnement de bureau.
 +
 +L'interface graphique de certaines applications (tq. iceweasel/firefox) utilise la boîte à outils graphique Gtk (2 ou 3). KDE s'appuie sur Qt, d'où certains problèmes d'uniformité de l'interface. Les deux principaux aspects concernés sont l'//apparence// et l'//interaction// (le "look and feel").
 +
 +En termes d'**apparence**, on veut que les applications aient à peu près la même allure : habillage, polices, icônes, fenêtres de dialogue, etc.
 +
 +En terme d'**interaction**, on veut que les applications réagissent de la même manière : réaction aux actions de la souris, simple ou double clic, ordre de classement dans les liste. Un exemple critique est celui des fenêtres de sélection de fichier (file chooser, file picker).
 +
 +Il existe [[https://wiki.archlinux.org/index.php/Uniform_Look_for_Qt_and_GTK_Applications|plusieurs stratégies]] pour uniformiser l'interface des applications. Il est conseillé de **choisir une stratégie** et de s'y tenir, sinon on risque de ne plus savoir où est géré tel ou tel paramètre de configuration. On évitera notamment de picorer ça et là, sur le web, des recettes partielles qui ont toutes les chances de s'inscrire dans des stratégies différentes (même si les contributeurs n'en savent rien).
 +
 +
 +===== Apparence =====
 +==== QtCurve ====
 +Un moyen rapide d'uniformiser la présentation est d'utiliser QtCurve. Ce jeu de composants graphiques existe aussi bien pour Qt que pour Gtk. Chaque application utilise la variante qui lui convient (Qt ou Gtk) pour produire, au final, un rendu similaire.
 +
 +Sous Debian Whezzy, on installe le paquetage-chapeau qtcurve.
 +<code>
 +$ sudo apt-get install qtcurve
 +</code>
 +
 +On indique ensuite à KDE d'utiliser QtCurve : Configuration du système > Apparence des applications. Ainsi, les applications basées sur Qt utiliseront QtCurve.
 +
 +Pour les applications basées sur Gtk, aucune configuration n'est nécessaire si QtCurve a été installé sur une système vierge((L'installation du paquetage suffit.)). Si les applications Gtk s'obstinent à ne pas utiliser Qt Curve, il faut définir explicitement. On installe alors le paquetage //gtk-chtheme// qui permet de choisir le "thème" appliqué à Gtk (ici, QtCurve).
 +<code>
 +$ sudo apt-get install gtk-chtheme
 +</code>
 +
 +Il est également possible de choisir le thème appliqué à Gtk à travers le panneau de configuration de KDE, moyennant l'installation d'un paquetage supplémentaire : //kde-config-gtk-style//. On accède au réglage par "Configuration du système > Apparence des applications > Configuration de Gtk". Des problèmes de fonctionnement (non vérifiés) de ce paquetage sont signalés sur des versions récentes de KDE.
 +
 +==== gtk-qt-engine ====
 +Une autre solution consiste à utiliser un "convertisseur" de thèmes qui va traduire à la volée l'interface Gtk en Qt. On installe alors les paquetage nécessaires :
 +<code>$ sudo apt-get install gtk-qt-engine kde-config-gtk-style</code>
 +La configuration du comportement des applications Gtk se fait alors à travers le volet additionnel du panneau de configuration système de KDE : Configuration du système > Apparence des applications > Configuration de Gtk.
 +===== Interaction =====
 +Au delà de l'apparence et de certains comportement (ombrage dynamique, réaction au survol de la souris…) on souhaite conserver nos habitudes d'interaction. Ceci est d'autant plus important que Qt comme Gtk intègrent des composants de haut-niveau tels qu'un navigateur de fichier.
 +==== Navigateur de fichier ====
 +Une application utilise le navigateur de fichier intégré dans sa boîte à outils graphique. Par exemple, iceweasel/firefox aura l'allure d'une application Qt/KDE jusqu'au moment où l'on voudra enregistrer un fichier.
 +
 +Une première option consisterait à obliger Gtk à utiliser le navigateur de fichiers de KDE. Il n'y a malheureusement pas solution générique. On peut, par exemple, imposer ce comportement à iceweasel((about:config puis inverser "ui.allow_platform_file_picker")), mais le résultat n'est ni graphiquement satisfaisant, ni fonctionnellement complet.
 +
 +On doit donc se contenter de "rustines" pour se débarasser des comportements les plus perturbants de Gtk. Typiquement on voudrait que, dans le navigateur de fichiers :
 +  - les fichiers soient affichés dans le même ordre,
 +  - les fichiers et répertoires masqués soient visibles ou non,
 +  - les fichiers soient accompagnés des même informations (droits, dates…),
 +  - les dossiers s'ouvrent de la même manière (double ou simple clic).
 +
 +=== Ordre des fichiers ===
 +Je n'ai pas trouvé de solution à ce problème. Tout au plus peut-on configurer l'ordre de classement qui sera sytématiquement appliqué, par défaut, à tous les dossiers affichés dans le navigateur de fichiers de Gtk. Autrement dit, sans tenir compte des préférences propres à chaque dossier, telles que définies dans KDE/Dolphin.
 +<code>
 +$ nano ~/.config/gtk-2.0/gtkfilechooser.ini
 +</code>
 +puis modifier les paramètres (il faut tatonner, faute de documentation). Voici un exemple de ce fichier :
 +<code>
 +[Filechooser Settings]
 +LocationMode=filename-entry
 +ShowHidden=false
 +ExpandFolders=true
 +ShowSizeColumn=false
 +GeometryX=200
 +GeometryY=195
 +GeometryWidth=1082
 +GeometryHeight=643
 +SortColumn=modified
 +SortOrder=descending
 +</code>
 +
 +=== Éléments masqués ===
 +Dans le navigateur de fichiers :
 +
 +<code>Ctrl + H</code> affiche ou masque les fichiers et répertoires masqués.
 +=== Chemin absolu ===
 +Dans le navigateur de fichiers :
 +
 +<code>Ctrl + L</code> active la saisie du chemin absolu
 +===== Firefox : Dolphin ou Gwenview =====
 +Sous KDE, il arrive que Firefox s'obstine à utiliser Gwenview comme navigateur de fichier. Ce sera notamment le cas lorsqu'on demandera à "Ouvrir le dossier contenant le fichier" qui vient d'être téléchargé. Inutile de chercher dans les Préférences de Firefox où se fait le choix du navigateur de fichier à utiliser :-\
 +
 +Il faut modifier un fichier de configuration : ///usr/share/applications/mimeinfo.cache//
 +
 +Dans ce fichier, éditer le paramètre //inode/directory// en réorganisant l'ordre de préférences entres les différentes applications (utilisables pour afficher un répertoire). Le résultat devrait ressembler à ça :
 +
 +<code>inode/directory=kde4-dolphin.desktop;kde4-gwenview.desktop;kde4-filelight.desktop;kde4-kfmclient_dir.desktop;kde4-cervisia.desktop;</code>
 +
 +Procédure :
 +  - sudo nano /usr/share/applications/mimeinfo.cache
 +    - ^w inode
 +    - réorganiser
 +    - ^o ^x
 +  - fermer tous les firefox ouverts
 +  - redémarrer firefox
 +  - apprécier le changement
 +
 +
 +Source : [[http://askubuntu.com/questions/267514/open-containing-folder-in-firefox-does-not-use-my-default-file-manager|Open containing folder” in Firefox does not use my default file manager]] (askubuntu.com) (en)
 +
 +