Skip to content
  • Mikhail Zolotukhin's avatar
    Update GTK settings according to Plasma settings · 94732eb8
    Mikhail Zolotukhin authored and Nate Graham's avatar Nate Graham committed
    Summary:
    To increase usability,
    
    - fonts
    - icon theme
    - cursor theme
    - toolbar style (icons-only, text below buttons etc)
    - icons visibility in menus
    - icons visibility on buttons
    
    settings for gtk applications are now set in respective kcms, instead of separate gtk kcm.
    
    Various kcms are sending signals (dbus or Qt ones) about the configuration change. Then the gtkconfig kded daemon connects to these signals and changes gtk config files to match new settings, that were set in those kcms.
    
    D24701 is needed to notify about cursor change on Wayland.
    
    Live reloading (on a fly) is not going to work for some settings on X11. This applies to cursor theme, it's changed by partially. To illustrate that open Nautilus File Manager, change cursor theme and try to double click folders. You will see, that "loading" cursor changed its theme, but "idle" one did not.
    
    What is not tested:
    - Toolbar style for gtk3 apps other that Geany (absence of live reloading may be a Geany bug)
    - Toolbar style and icons visibility on Wayland
    
    Depends on D24701
    
    BUG: 401507
    
    BUG: 375272
    
    BUG: 411097
    
    FIXED-IN: 5.18.0
    
    Test Plan:
    # To test gtk3 applications live reloading on X11, install xsettingsd.
    # Restart kded5.
    # Open gtk2 app, gtk3 app
    # Change above mentioned settings in respective KCMs
    # Check if gtk applications are changing their settings before (sometimes) and after their restart.
    
    Rare cases:
    - To test icons on buttons use Inkscape about window.
    - To test toolbar style use Geany (gtk3, live reloading does not work) and BleachBit (gtk2)
    
    Reviewers: #plasma, #vdg, broulik, cblack
    
    Reviewed By: #plasma, broulik
    
    Subscribers: ervin, ngraham, broulik, nicolasfella, plasma-devel
    
    Tags: #plasma, #vdg
    
    Maniphest Tasks: T10611
    
    Differential Revision: https://phabricator.kde.org/D24743
    94732eb8