Dragging an app link .desktop file from Folder View showing desktop:/
from Folder View (but not Dolphin) to desktop/panel, spawning an Icon,
was broken because:
- KDirModel::metaData adds the UDS_LOCAL_PATH (local file) url as
text/uri-list to the drag MIME data, but also the original desktop:/
URL as a second special MIME format for KDE URLs, using KUrlMimeData
- Dolphin only does the first part, using a partial code copy from
KDirModel
- ContainmentInterface::processMimeData uses KUrlMimeData with default
options to decode the drag MIME data - the default option is
PreferKdeURLs, so it retrieves the desktop:/ URL from the FV drag
but not the Dolphin drag (since it lacks it)
- Thus the Icon applet is handed a desktop:/ URL in the FV case, which
the code - not using KIO - isn't written to handle
This patch adds an async KIO::StatJob to the Icon code when
QURL::isLocalFile is fast to try and resolve an URL to a more local
one the rest of the code can handle.
Rewriting more of the Icon code to use KIO /would/ have been nice,
however it ultimately ends up using KDesktopFile which can't handle
non-local files, so at some point resolving to the proxied-for path
would happen anyway.
BUG:356548
Calculate the plasmoid status and tooltips in a binding rather than invoking
Logic.updateFoo manually; this way we can have the QML engine do what it can do best.
Unfortunately it cannot look inside JS objects, so we cannot have the inhibitions
be handled the same way.
The emblem-mounted is not supposed to be used for an action. It worked fine with
Oxygen where it looked like a plug but doesn't with Breeze.
BUG: 358875
FIXED-IN: 5.7.0
When the applet is opened you can press the following keys to control it:
* Space (and K): Play/Pause
* P: Previous song
* N: Next song
* S: Stop playback
* Left key (or J): seek back 5s
* Right key (or L): seek forward 5s
* Home: Go to beginning of track
* End: Go to end of track (ie. basically goes to next track)
* 0..9: Jump to 0%, 10%, 20%, etc of track's length depending on the number
Of course there's still the global shortcuts so you don't actually need this.
While at it I made the slider a bit more reliable while manipulating it so it
wouldn't twitch around.
BUG: 351146
FIXED-IN: 5.6.0
Instead of an hardcoded list of translations of country names, look
them up in the iso_3166 domain, provided by iso-codes. The names of
countries are changes to their ISO 3166 versions in iso-codes.
Look for iso-codes in cmake, but just as indication of it as runtime
dependency.
REVIEW: 126879
This simplifies the component by removing the Loader-property combo and
leaves just a read-only TextEdit
BUG: 358981
Reviewers: #plasma
Subscribers: plasma-devel
Projects: #plasma
Differential Revision: https://phabricator.kde.org/D899
something really wrong is going on on the proxymodel updates
the wrong item gets removed from the list.
it may be a wrong mapping between source and dest model
(doesn't seem so)
or may have been some misguided attempt by QML to recycle delegates
anyways resetting the model in some conditions even if expensive
seems to be the only way to workaround this.
Anyways this systray implementation is beyond any repair and
the rewritten version won't have to rely on so many models
and proxymodels
BUG:357627
CCBUG:352055
something really wrong is going on on the proxymodel updates
the wrong item gets removed from the list.
it may be a wrong mapping between source and dest model
(doesn't seem so)
or may have been some misguided attempt by QML to recycle delegates
anyways resetting the model in some conditions even if expensive
seems to be the only way to workaround this.
Anyways this systray implementation is beyond any repair and
the rewritten version won't have to rely on so many models
and proxymodels
BUG:357627
CCBUG:352055
Instead of showing a detached status bar with the device name, show the message
below the device in the list.
When removing a device, device notifier will pop up and a "You can now safely remove
this device" message will show up with a highlight gradually fading away until 5 seconds
later the device is removed from the list.
REVIEW: 126688
The attached patch retrieves the position from the player when:
- a new maximum is set to the slider (most cases)
- the the slider is already at the end (when the same song is played again)
Note that adding 1 sec to the slider when the remaining is less than a second
sets the slider to maximum. Handling at that moment seemed to be too soon when
I tried it. Waiting for the next iteration looked to be a better transition
REVIEW: 126779
BUG: 358135
FIXED-IN: 5.6.0
If more than one player is currently running, a ComboBox will allow to choose
the player to control. Doing so will make all controls (ie. the slider, album art,
player buttons as well as the tooltip and system tray icon, active state) reflect
the current player's state.
By default the "@multiplex" source is still used which tries to choose the player
automatically (I guess...) and it also reverts to that if the current player quits.
As in "panel options" when systray is in the panel.
Only one of the formerly two (see
https://git.reviewboard.kde.org/r/125973/) methods did this, so I think
it's safe to remove from the one I'm keeping.
REVIEW: 125972
Remove almost completely duplicated function.
One was used for right clicking on expanded items, the other for full
compact items.
A missing action for expanded items is added so the two menus are now
consistent.
Global co-ordinates are used as args for menus everywhere so we can
share the mapping code SNIs currently use.
REVIEW: 125973