Summary:
The "Encoding" entry had been deprecated in 2006
(https://cgit.freedesktop.org/xdg/xdg-specs/commit/?id=6855384d021d88557f80674798c584c15b547f36)
and there is no current workspace known which still requires it being set
(incl. Plasma itself).
Also has the usage been incomplete and sometimes not at the beginning as
required if used (once scripty had sorted all entries in desktop files
alphabetically and it was not restored everywhere).
Removing them altogether creates consistency and avoids further confusion
about and wasted resources for this unused data bit.
Removing those entries also from Plasma/5.12 branch avoid conflicts on
merging to master, given the entries are often next to translated entries,
or generous merging which lets the entries slip back into existance.
Reviewers: #plasma, fvogt, broulik, mart
Reviewed By: #plasma, mart
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D11563
Summary:
Currently the media controller only works with MPRIS services which support
the PlayPause command. By the MPRIS spec this is an optional feature though.
While most players out there support this, the MPRIS support in Gwenview
currently worked on does not (would need some more rewrite of internals).
Which makes the Media controller applet and/or Gwenview look broken :)
To keep the current design with a central Play/Not Play button, this patch
changes its behaviour depending on the CanPause flag:
CanPause=true -> show either Play or Pause
CanPause=false -> show Play enabled/disabled
Reviewers: broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10973
Summary:
The license key is specified as GPL, while the actual code (I checked)
in all these cases is licensed under GPL version 2 or later. This commit
fixes the metadata.desktop files to reflect the actual license.
Test Plan: Manually checked, also compared to the keys looked for in kaboutdata.cpp
Reviewers: #plasma, sitter, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D6627
Summary:
The lockscreen uses the MPRIS dataengine. This leads to two applications
registring the service using the same component name which leads to the
shortcuts not working when the lock screen closes.
We want to have the applet register the shortcuts, but not every
dataengine user.
Ideally this shouldn't be in the dataengine either because DataEngines
are read only. This moves the logic to the service which is writable and
registers the shortcuts for the multiplexer there when requested from
the applet.
BUG: 380526
FIXED-IN: 5.10.1
Test Plan:
Opened media player.
Used play/pause shortcut. (the only one my keyboard has)
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D6100
Length is in microseconds, so watching a long video (in excess of 33.3 minutes) will break the slider.
CHANGELOG: Media Controller can now properly handle and seek long tracks (> 30 minutes)
BUG: 377623
FIXED-IN: 5.8.7
Also don't try to call SetPosition when position didn't change.
Fixes sometimes reseting position to 0 after expanding applet.
Differential Revision: https://phabricator.kde.org/D3904
Both CanRaise and CanQuit are required only for the context menu whose actions
are updated before it is shown. Avoids some needless binding re-evaluations.
Previously, we would show "paused" only when explicitly paused, not when there isn't even
media loaded. "Paused" should always be the icon when nothing's playing, obviously.
This also avoids a weird sequence of "paused - playing - hidden" when stopping a paused track.
Depending on the kind of media, e.g. network stream, or slow player with huge
collection, it can take a considerable amount of time for it to start playing.
Avoid having panel contents jumping around because of this.
BUG: 367807
FIXED-IN: 5.9.0
When playing a song, it's either the artist or empty. However, when nothing's playing
we would have a main text of "No media playing" with the applet description as
subtext "allows to control media" which is out of place
This works around a bug or strange behavior in QtQuick Controls Slider where when
reducing the maximumValue, the value is clamped to it (ie. reduced to it) but when
increasing it again, it gets its old value back up until maximumValue.
Differential Revision: https://phabricator.kde.org/D2647
There's no point in loading a massive album art (I've seen music files having
sizes of up to 1500x1500) just to show it scaled down again.
Also changes the binding from playerCombo.visible to playerCombo.count so it doesn't
change the sourceSize causing a reload of the image whenever the applet gets hidden/shown
since visible propagates recursively
Seems the Slider value is not reset when Next/Previous buttons are pressed
in Media Controller widget. This causes next/previous song to seek the slider
position instead of starting from beginning.
BUG: 362473
REVIEW: 127789
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
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