Review Request 119658: [WIP] Support per-activity favourites in Kicker
Ivan Čukić
ivan.cukic at kde.org
Tue Dec 15 11:10:08 UTC 2015
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/119658/
-----------------------------------------------------------
(Updated Dec. 15, 2015, 11:10 a.m.)
Status
------
This change has been discarded.
Review request for Plasma, Eike Hein and Marco Martin.
Repository: plasma-desktop
Description
-------
Basic changes to support KActivities.ResourceModel-based favourites in Kicker.
What works:
- Favourites are shown
- They can be added and removed
- Shared with other launchers (currently kickoff)
What does not (request for comments):
- launching the favourites
KActivities.ResourceModel does not have a method to open an URL, while Kicker relies on the 'trigger' method. The important question to discuss is whether it should know that at all, or it should leave launching to the client application (like kickoff currently does).
From my POV, the model *needs* to only provide the URL, and the application should know how to open the URL it provided to the model in the first place. It *could* have a (convenience) method to launch the URL, but there will be a lot of URLs that it can not understand (like akonadi:something, etc.). The convenience method would be useful in a few places, not only Kicker.
- drag'n'drop rearanging does not work
KActivities.ResourceModel is based on QSortFilterProxyModel. This means that whenever an item is moved from one place to another, the model reloads itself (at least, the client sees it as a reload).
This QSFPM behaviour collides with the d'n'd implementation in Kicker (as opposed to Kickoff) because it does the d'n'd by moving an item one place at a time, instead of moving it directly to the destination. That is, if an item is moved from 2nd to 5th position, Kicker will move it 2nd->3rd, 3rd->4th, 4th->5th. The model will invalidate the dragged item on the first step, and other steps will not work.
I need ideas and opinions for these issues.
Cheers!
Diffs
-----
applets/kicker/package/contents/ui/SideBarSection.qml 0411545
applets/kicker/plugin/favoritesmodel.h 342d3d1
applets/kicker/plugin/favoritesmodel.cpp 3494a65
Diff: https://git.reviewboard.kde.org/r/119658/diff/
Testing
-------
Thanks,
Ivan Čukić
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20151215/e231b41f/attachment.html>
More information about the Plasma-devel
mailing list