an an application and/or an url list can be associated with an aplet
and a context menu entry and an applet handle button will be added to
launch that application.
the applet will be considered a preview of something, where the
application its full view, for example the picture frame can open
gwenview
svn path=/trunk/KDE/kdelibs/; revision=1024487
this is icky and depends on scene()->sendEvent
but we need it to know whether the containment plugin has child items
expecting a contextmenuevent, before we eat the event.
by the time contextmenuevent runs normally it's too late.
svn path=/trunk/KDE/kdelibs/; revision=1018486
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
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