Bug 386621

Summary: Support downloading Wallpaper Plugins from KDE Store
Product: [Plasma] plasmashell Reporter: Chris Holland <zrenfire>
Component: generalAssignee: David Edmundson <kde>
Status: RESOLVED FIXED    
Severity: wishlist CC: johnmaverick74, nate, plasma-bugs
Priority: NOR Keywords: usability
Version: master   
Target Milestone: 1.0   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In: 5.15.0
Sentry Crash Report:

Description Chris Holland 2017-11-07 18:07:31 UTC
We can look at plasma-workspace/wallpapers/image for an example of how to do this.
https://github.com/KDE/plasma-workspace/tree/master/wallpapers/image

1. Add "get-hot-new-stuff" button to the right of the plugin dropdown in:
   https://github.com/KDE/plasma-desktop/blob/master/desktoppackage/contents/configuration/ConfigurationContainmentAppearance.qml

import org.kde.kconfig 1.0 // for KAuthorized

QtControls.Button {
    iconName: "get-hot-new-stuff"
    visible: KAuthorized.authorize("ghns")
    onClicked: _____.getNewWallpaperPlugin(this)
}

Note that we'll need to create a new C++ function similar to:
* https://github.com/KDE/plasma-workspace/blob/master/wallpapers/image/image.cpp#L594
* https://github.com/KDE/plasma-workspace/blob/master/components/shellprivate/widgetexplorer/widgetexplorer.cpp#L443

The widget explorer might be more relevant.

Once we have the code, we can make a wallpaperplugin.knsrc (probably in plasma-workspace).

Lastly we need to create a new category on store.kde.org (this could be done now actually).
We'll also need to move this product (https://store.kde.org/p/1197828/) which is current incorrectly in the Plasma Widget category.
Comment 1 John 2018-04-06 21:41:45 UTC
I found about this bug from https://store.kde.org/p/1213488/
This should indeed be supported!!! :)
Comment 2 Chris Holland 2018-10-10 00:06:51 UTC
Git commit 5e1b650859fe5287f25f3a2306a6ac26058c46c6 by Chris Holland.
Committed on 09/10/2018 at 23:34.
Pushed by cholland into branch 'master'.

Add wallpaperplugin.knsrc + QML function to open GHNS dialog

Differential Revision: https://phabricator.kde.org/D12040

M  +6    -1    components/shellprivate/CMakeLists.txt
M  +2    -0    components/shellprivate/shellprivateplugin.cpp
A  +55   -0    components/shellprivate/wallpaperplugin/wallpaperplugin.cpp     [License: BSD]
A  +46   -0    components/shellprivate/wallpaperplugin/wallpaperplugin.h     [License: BSD]
A  +8    -0    components/shellprivate/wallpaperplugin/wallpaperplugin.knsrc

https://commits.kde.org/plasma-workspace/5e1b650859fe5287f25f3a2306a6ac26058c46c6
Comment 3 Chris Holland 2018-10-10 00:16:53 UTC
Git commit 347f43c42b702115c6b3aefbcdb92eecf35a0a6a by Chris Holland.
Committed on 10/10/2018 at 00:12.
Pushed by cholland into branch 'master'.

Add "Get Wallpaper Plugins..." button to Config Desktop dialog

Differential Revision: https://phabricator.kde.org/D12041

M  +15   -5    desktoppackage/contents/configuration/ConfigurationContainmentAppearance.qml

https://commits.kde.org/plasma-desktop/347f43c42b702115c6b3aefbcdb92eecf35a0a6a