Remove the hack that fixed some bugs in Qt, since those bugs are now fixed, and
now this hack introduces its own bugs...
Add unit test to verify that it works.
CCBUG: 180612
svn path=/branches/KDE/4.3/kdelibs/; revision=1013326
load requires a containment
fix @since (I could've sworn I did this already..)
rename ContextAction->ContainmentActions
misc. improvements from aaron
no more warnings
qDeleteAll
don't iterate with keys()
svn path=/trunk/KDE/kdelibs/; revision=1012647
fix copyright
always init a contextaction before trying to use it
no more unexpected click-throughs
contextAction() returns the plugin name instead of a pointer
svn path=/trunk/KDE/kdelibs/; revision=1012645
-setContainment, so that we don't have to try and use the parent any
more.
-hasConfigurationInterface; this should've already been there.
-default values for a couple of functions that I think make sense
svn path=/trunk/KDE/kdelibs/; revision=1012644
this makes rightclicks use the plugin configured for rightclick
and adds a new method to the plugin for when an applet is rightclicked
(we need a list of actions then that we can insert into the menu)
this also adds a signal for immutability and improves handling of
needs-configuring plugins
svn path=/trunk/KDE/kdelibs/; revision=1012639
there are a few defaults, only one real plugin exists so far
rightclicks are still overridden by the contextmenu event.
the user is warned about plugins that need configuring.
svn path=/trunk/KDE/kdelibs/; revision=1012636
this is based off the wallpaper plugin. lots of copy&paste happened. the
dataengine code is still in there, just in case some plugin wants it
someday...
svn path=/trunk/KDE/kdelibs/; revision=1012635
The idea is that you drop a file from a webpage, or basically a URL onto Plasma and Plasma creates a suitable applet to display this URL. For example an image frame for picture, or a previewer for pdf files. Downloading the data itself (and possibly saving it) is left to the applets. The mimetype needs to be retrieved as it cannot be determined from the URL.
The code pathes I've changed or added are, roughly:
- "something" is dropped onto Plasma
- if it's a remote URL, we don't know the mimetype of the object behind the URL yet
- a KIO::TransferJob is used to retrieve the mimetype asynchronously, and will call back
- we open a QMenu that says "Fetching file type..."
- If the user closes the menu while the mimetype is being retrieved, we will open a new one
- When the TransferJob calls back, and we have our mimetype, we offer a list of applets suitable for this kind of content
- If the user chooses to create an applet, we put the transfer job on hold to make it available for recycling by the applet
- If the user dismisses the offering, we kill the job
Thanks to marco for reviewing and everybody else for the input :)
Next steps are making some more applets work with this.
CCMAIL:plasma-devel@kde.org
svn path=/trunk/KDE/kdelibs/; revision=1009004
the parent applet is too little
popupapplet uses the parent size insted of the containment to decide the
switch between full and popup, in all normal cases parent is the
containment, except for the ugly applet in applet cases
svn path=/trunk/KDE/kdelibs/; revision=1008775