Digikam/SoK2012/WallpaperPlugin
Digikam SoK 2012 Wallpaper Plugin
This page is meant to gather information about the idea which aims to make Wallpaper kipi-plugin work with KDE4.
Project Details
This is one of the bug reports regarding this plug-in. Since the transition to Plasma Desktop in KDE4 this plugin doesn't seem to work anymore. Now there is no straightforward way to set any image as wallpaper through digikam.
In KDE3, DCOP was the IPC used and the wallpaper plugin was implemented based on this. But in KDE4, this isn't possible anymore as D-BUS is the primary IPC.
The wallpaper plugin will need to be rewritten to take this into account.
Project Timeline
TODO
Milestone name | Milestone description | Assigned to | Status |
---|---|---|---|
Plasma/Wallpaper | Go through the Plasma/Wallpaper class | Varun | Done |
D-Bus | Getting familiar with D-Bus interface | Varun | Done |
Mock App | Creating a mock application that uses D-Bus interface to change wallpaper | Varun | Done |
Plugin Implementation | Implement the plugin | Varun | Done |
UPDATES
23 May - "Image" is the default Plasma plugin to display wallpapers. This project can be implemented by either using this default plugin or by creating and using a separate Plasma plugin for digikam. Need to discuss more about this before deciding on which is better.
09 June - Have successfully created an applet that can change the wallpaper of the current activity/desktop. It looks like if the path to the image is known, explicit D-Bus communication is not needed at all. Using certain functions from Plasma::Containment and Plasma::Wallpaper classes this can be achieved. Since we already know the filepath in digikam, we should be able to implement this plugin easily. At the moment checking if there can be any stability issues by doing this way.
11 July - D-Bus connection is needed in this case as we do not have access to the current containment object. Have proposed a patch to Plasma which will give a D-Bus interface for changing wallpaper - Here. Implemented Wallpaper Plugin to use this interface and tested the same to work properly.