D11195: Use separate config group for each wallpaper plugin

Алексей Шилин noreply at phabricator.kde.org
Sat Mar 10 11:12:47 UTC 2018


aleksejshilin added a comment.


  In D11195#222313 <https://phabricator.kde.org/D11195#222313>, @davidedmundson wrote:
  
  > One could argue keeping the colour persist across wallpapers is a feature, what problems does it cause?
  
  
  It's not limited to colors, that's just a testcase. And unless there is a well-defined key naming convention I haven't found, that keys have the same name doesn't imply they have the same meaning. For example, 'Provider' key may have totally different acceptable values across different wallpaper plugins, 'Color' may mean 'background color', 'skin color' (imagine dynamic emoji wallpaper :) ) and so on.
  
  But that's not the main point. I've played with different wallpaper types, and that's what ended up in ~/.config/plasma-org.kde.plasma.desktop-appletsrc:
  
    [Containments][1][Wallpaper][General]
    Blur=true
    Color=170,0,0
    FillMode=2
    Image=file:///usr/share/wallpapers/Next/contents/images/1366x768.png
    Provider=bing
    SlidePaths=/home/aleksej/Изображения
    
    [Containments][1][Wallpaper][org.kde.color][General]
    Color=255,0,0
    
    [Containments][1][Wallpaper][org.kde.image][General]
    Blur=true
    Color=170,0,0
    FillMode=2
    Image=file:///usr/share/wallpapers/Next/contents/images/1366x768.png
    SlidePaths=/home/aleksej/Изображения
    
    [Containments][1][Wallpaper][org.kde.potd][General]
    Color=170,0,0
    FillMode=1
    Provider=bing
    
    [Containments][1][Wallpaper][org.kde.slideshow][General]
    Color=170,0,0
    FillMode=6
    SlidePaths=/home/aleksej/Изображения
  
  As you see, separate config groups are used by the plugins anyway. More importantly, they are the ones plasmashell actually reads at startup. It's just ContainmentConfigView is using the wrong group for these settings. And it starts doing that only after one changes Wallpaper Type for the first time in the dialog. Try this:
  
  1. Right-click the desktop and click Configure Desktop.
  2. Select Wallpaper Type -> Plain Color. If it's already selected, select a different one first.
  3. Click the chooser button and select green, then hit OK.
  4. Open the dialog again. Don't switch wallpaper types. Change the color to red and click Apply.
  5. Select Picture of the Day as Wallpaper Type. The selected color is still green.
  
  So, wallpaper plugins "share" configuration only accidentally due to ContainmentConfigView::setCurrentWallpaper() bug.

REPOSITORY
  R120 Plasma Workspace

REVISION DETAIL
  https://phabricator.kde.org/D11195

To: aleksejshilin, #plasma, mart, davidedmundson
Cc: davidedmundson, plasma-devel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20180310/76212bb3/attachment.html>


More information about the Plasma-devel mailing list