Commit Graph

503 Commits

Author SHA1 Message Date
Aaron J. Seigo
75e482fae2 only insert a delay before moving the drop zone the first time its shown; be sure to also reset the drop point
svn path=/trunk/KDE/kdelibs/; revision=1045332
2009-11-05 20:27:08 +00:00
Aaron J. Seigo
7751044026 move connecting the update() signal to right after we actually initialize the wallpaper; prevents the possibility of double paints we may not want
svn path=/trunk/KDE/kdelibs/; revision=1044507
2009-11-03 22:27:05 +00:00
Marco Martin
06d2502d2a check the cast success: crash--
svn path=/trunk/KDE/kdelibs/; revision=1044329
2009-11-03 13:09:41 +00:00
Sebastian Kügler
fbcf0e484e Add capability for Applets to specify X-Plasma-DropUrlPatterns, a QStringList of globs to match a URL dropped onto Plasma. This is orthogonal to the mimetype checking.
http://reviewboard.kde.org/r/2005/#review2848

svn path=/trunk/KDE/kdelibs/; revision=1042124
2009-10-29 09:09:01 +00:00
Marco Martin
432fd2f610 InternalToolBox, not PanelToolBox
BUG:211689

svn path=/trunk/KDE/kdelibs/; revision=1039834
2009-10-24 18:16:05 +00:00
Petri Damstén
042ed56b39 * Add support to load PopupApplet and Containment from path
* AppletScript::addStandardConfigurationPages adds also publish page
* AppletScript::standardConfigurationDialog does not add standard pages (there is addStandardConfigurationPages)

svn path=/trunk/KDE/kdelibs/; revision=1039471
2009-10-23 13:48:29 +00:00
Aaron J. Seigo
c765e808a7 * the drop position is always relative to the containment; don't need to do store the scene pos. this fixes drops on panels
* allow drops on the toolbox, this gives is a place to drop things on the panel at all times, similar to the context menu on toolbox
* small delay on showing the drop zone indicator so that when dragging into the tasks widget, for example, we don't end up flickering as it crosses the panel containment edge

svn path=/trunk/KDE/kdelibs/; revision=1039186
2009-10-22 22:14:22 +00:00
Marco Martin
fbae18a177 not a static cast since it can fail
svn path=/trunk/KDE/kdelibs/; revision=1038049
2009-10-20 14:53:49 +00:00
Marco Martin
6b0a4590d2 Export a really simple AbstractToolBox
add a setToolBox function

svn path=/trunk/KDE/kdelibs/; revision=1038024
2009-10-20 14:14:53 +00:00
Chani Armitage
386a38052e make rightclick work properly in folderview containments
svn path=/trunk/KDE/kdelibs/; revision=1037430
2009-10-19 04:11:05 +00:00
Aaron J. Seigo
d7915a8dff don't crash if the containment config dialog is open
BUG:210653

svn path=/trunk/KDE/kdelibs/; revision=1035776
2009-10-15 20:43:12 +00:00
Aaron J. Seigo
c5833d1939 handles are now children of the applet, so we don't need to destroy them ourselves; we do need to clear the applet pointer in the handle before it is destroyed, however.
BUG:209058

svn path=/trunk/KDE/kdelibs/; revision=1035446
2009-10-15 03:25:07 +00:00
Aaron J. Seigo
ee461e739e activity naming consistency, take 2
svn path=/trunk/KDE/kdelibs/; revision=1034920
2009-10-13 23:07:35 +00:00
Chani Armitage
cfd8409432 make a class to hold a map of default containmentactions plugins
svn path=/trunk/KDE/kdelibs/; revision=1031735
2009-10-05 20:50:57 +00:00
Aaron J. Seigo
82a8ee68dd we care about our immutablity, not scene immutability alone
svn path=/trunk/KDE/kdelibs/; revision=1029909
2009-10-01 01:21:52 +00:00
Chani Armitage
cd65144478 rightclick on popupapplet's dialog behaves like
rightclick on the applet itself

svn path=/trunk/KDE/kdelibs/; revision=1029866
2009-09-30 23:07:42 +00:00
Aaron J. Seigo
44c763a752 once we process the job, ignore any further results from it
svn path=/trunk/KDE/kdelibs/; revision=1029848
2009-09-30 21:45:19 +00:00
Aaron J. Seigo
4cd5189513 in case of job failure, be sure we don't leave the context menu just hanging around there
svn path=/trunk/KDE/kdelibs/; revision=1029846
2009-09-30 21:42:05 +00:00
Chani Armitage
ba3b1b753b merge-squash of first containment-removal branch
svn path=/trunk/KDE/kdelibs/; revision=1027320
2009-09-23 20:37:17 +00:00
Rob Scheepmaker
5b56a34dfa Support drag & drop of plasma:// and plasma+zeroconf:// urls onto plasma containments.
svn path=/trunk/KDE/kdelibs/; revision=1026777
2009-09-22 15:29:08 +00:00
Marco Martin
08d49e6fd0 introducing the concept of associated application:
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
2009-09-16 17:08:45 +00:00
Aaron J. Seigo
7d23823095 label the widgets section with a title as well
svn path=/trunk/KDE/kdelibs/; revision=1022572
2009-09-12 03:48:56 +00:00
Aaron J. Seigo
432ad10dbe clean up after a drop
svn path=/trunk/KDE/kdelibs/; revision=1022560
2009-09-12 02:38:10 +00:00
Sebastian Kügler
36b30b8751 Don't special-case local files for dropped content
Now all (local and remote) file drops use KIO to retrieve the mimetype.

svn path=/trunk/KDE/kdelibs/; revision=1022557
2009-09-12 01:44:01 +00:00
Aaron J. Seigo
860e54d92c support wallpaper drops
svn path=/trunk/KDE/kdelibs/; revision=1019584
2009-09-03 23:22:48 +00:00
Aaron J. Seigo
e41352c6ec move our data files into a common place with some decent organization
svn path=/trunk/KDE/kdelibs/; revision=1019549
2009-09-03 20:40:22 +00:00
Chani Armitage
bf8eb6de86 Revert "give contextmenuevent a chance to run"
ooops. that patch relies on 4.6, didn't mean to commit it yet

svn path=/trunk/KDE/kdelibs/; revision=1018488
2009-09-01 18:46:28 +00:00
Chani Armitage
0afd8efd8c give contextmenuevent a chance to run
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
2009-09-01 18:42:26 +00:00
Chani Armitage
eab10293a8 consider the handle part of the applet for mouseevents
svn path=/trunk/KDE/kdelibs/; revision=1017591
2009-08-30 23:41:23 +00:00
Chani Armitage
024d23a07f for contextmenu events triggered by the mouse on the containment, fall
through to the mouse events. it's easier to handle that way

svn path=/trunk/KDE/kdelibs/; revision=1017492
2009-08-30 18:52:10 +00:00
Chani Armitage
93aead97a1 allow click-throughs for the containment's graphicsitems
this makes folderview happier, yay

svn path=/trunk/KDE/kdelibs/; revision=1017491
2009-08-30 18:52:05 +00:00
Chani Armitage
f725121a2a don't use qgraphicsitem_cast, + some cleanup
svn path=/trunk/KDE/kdelibs/; revision=1017490
2009-08-30 18:51:58 +00:00
Chani Armitage
22506da412 make rightclick-on-folderview work
svn path=/trunk/KDE/kdelibs/; revision=1017489
2009-08-30 18:51:51 +00:00
Chani Armitage
af4925f777 SVN_SILENT: less negative
svn path=/trunk/KDE/kdelibs/; revision=1017488
2009-08-30 18:51:32 +00:00
Aaron J. Seigo
87b743188e update the toolbox when the activity changes as it may be showing the name of it
svn path=/trunk/KDE/kdelibs/; revision=1016743
2009-08-28 19:07:56 +00:00
Aaron J. Seigo
1f57b0c726 send in both press and release events
svn path=/trunk/KDE/kdelibs/; revision=1015482
2009-08-25 16:14:05 +00:00
Aaron J. Seigo
de4e6d5bf1 remove the handle from the scene before deleting it; this prevents full screen repaints whenever a widget has the mouse passed over it. will backport.
svn path=/trunk/KDE/kdelibs/; revision=1012691
2009-08-17 23:40:07 +00:00
Chani Armitage
0ecafe8131 use trigger for config group
svn path=/trunk/KDE/kdelibs/; revision=1012648
2009-08-17 22:31:37 +00:00
Chani Armitage
2ab601f945 various bits of cleanup:
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
2009-08-17 22:31:32 +00:00
Chani Armitage
ae2378a8da some code cleanup
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
2009-08-17 22:31:18 +00:00
Chani Armitage
5070e300f5 API changes needed for configurable contextmenu.
-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
2009-08-17 22:31:08 +00:00
Chani Armitage
69365ddada paste is triggered by a plugin now.
also, clean up the drop/paste handling a bit

svn path=/trunk/KDE/kdelibs/; revision=1012643
2009-08-17 22:31:03 +00:00
Chani Armitage
464df207d1 API review stuff
-have one virtual QEvent function
-move eventToString to ContextAction
-remove needsConfig reason
-remove configurationAction
-remove dataengine stuff

svn path=/trunk/KDE/kdelibs/; revision=1012642
2009-08-17 22:30:58 +00:00
Chani Armitage
d82fe71821 stuff needed for configuration of plugins
svn path=/trunk/KDE/kdelibs/; revision=1012641
2009-08-17 22:30:54 +00:00
Chani Armitage
9d2a2e40ba api review part 1
removed some dead signals and an unnecessary const

svn path=/trunk/KDE/kdelibs/; revision=1012640
2009-08-17 22:30:50 +00:00
Chani Armitage
f0a68d537c make rightclick plugins possible
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
2009-08-17 22:30:46 +00:00
Chani Armitage
a848e4fdcf make config restore work.
svn path=/trunk/KDE/kdelibs/; revision=1012638
2009-08-17 22:30:42 +00:00
Chani Armitage
7da00b4c7c API needed for the config dialog
I factored out eventToString into a static function
and also added @since tags to all my functions

svn path=/trunk/KDE/kdelibs/; revision=1012637
2009-08-17 22:30:38 +00:00
Chani Armitage
493196dff3 use contextaction plugins.
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
2009-08-17 22:30:34 +00:00
Sebastian Kügler
5ea600487a Make dropping remote content onto Plasma work
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
2009-08-08 22:01:16 +00:00