Digikam/SoK2012/WallpaperPlugin

From KDE Community Wiki


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.

Note

Please use the talk page to discuss this proposal.