Jim Broadus
6240fd3d0a
player: Fix crash on UrlHandler error.
...
In a case where a playlist is composed entirely of unresolvable
internet service URLs and the playlist is set to repeat, playing an
item will result in an infinite (until crash) recursive condition.
HandleLoadResult is called with a NoMoreTracks result. It then calls
NextItem, which calls PlayAt for the next item, which, again, calls
HandleLoadResult.
This can be reproduced by logging into a subsonic server, adding items
to an empty playlist, then signing out.
To solve this, separate the error condition from the NoMoreTracks
result. Handle URL resolution errors the same way that media playback
errors are handled, where an error count is incremented and the player
stops if a limit is reached. The common code also notifies the playlist
of the error and provides user feedback by graying out the item.
2021-06-21 12:52:25 +01:00
Jim Broadus
2339404852
player: Send request when reporting playback status
...
Modify the signals emitted by the engine when a url is determined to be
valid or invalid to send the entire request. This will allow additional
metadata to be added to the request, providing a mechanism to better
identify the request source.
2021-03-12 15:20:42 +00:00
Maarten Jacobs
cb88954a3b
Changed usage of boolean to enumeration
...
Changed the NextInternal() and NextItem() methods to use a enumerated value to track whether "next track" or "next album" is desired
2021-01-26 23:35:10 +00:00
Maarten Jacobs
8fcdbd5114
Adding a "play next album" function, in addition to "play next
...
track".
Changed shortcut key for Next Album from "space" to F9
Fixed indentation in player.cpp
Fixed spacing in player.cpp.
Updated player.cpp to ensure while loop takes into consideration the last
song on the playlist.
Fixed lint formatting error in player.cpp
Additional changes to player.cpp to make sure next album search reacts properly to the given repeat mode.
Updated player.cpp to address cpplint issues.
Fixing formatting issues.
Fixing formatting errors.
Finished formatting updates.
Final formatting...
Final formatting
Really final formatting...
Addressed issues from code review.
Added functionality to disable Next Album option when repeat mode is "repeat track".
Added commentary to recent changes.
Disable Next Album action also when Repeat Mode is Repeat_Album
In addition to disabling this action for the Next_Track repeat mode, the same applies to the Next_Album repeat mode.
2021-01-26 23:35:10 +00:00
NicolasToussaint
ee72b974bf
add CLI play-playlist option, to play given playlist name.
2020-11-28 20:24:56 +00:00
John Maguire
341dc7326f
Reformat all C++
2020-09-22 14:56:06 +01:00
vaterlangen
fcf96cb6ff
Queue size and duration is now displayed in queue manager && Album Cover Popup fixes ( #6086 )
2018-06-18 14:21:44 +01:00
Eduardo Sánchez Muñoz
f6fc7035ac
mpris: Fix track not restarting when playing the first track on the playlist and menu_previousmode setting is PreviousBehaviour_Restart.
2015-07-17 20:01:02 +02:00
Eduardo Sánchez Muñoz
75e94a64d1
Add option to change the time step when seeking using the keyboard.
2015-07-03 20:54:17 +02:00
Mark Furneaux
f4b7c22bc2
Revert "Revert "Add track intro mode""
...
This reverts commit ece262f7f4
.
2015-06-15 16:27:40 -04:00
John Maguire
ece262f7f4
Revert "Add track intro mode"
2015-06-15 15:49:08 -04:00
Mark Furneaux
b57cebbf2d
Add track intro mode
...
This repeat mode plays the beginning of each track, good for quickly getting a feel for a new album for example.
2015-06-14 13:32:58 -04:00
Krzysztof Sobiecki
24b6fbf36c
Add ability to parse more of "innovative" datetime formats. close #4760
2015-02-27 02:11:53 +01:00
Arnaud Bienner
43768d4af8
Small modifications to previous pull request:
...
- remove reference to iPod, as this is not iPod specific IMO
- make comment clearer
2015-01-19 15:01:33 +01:00
Andre Siviero
e4df00050d
Includes in alphabetical order, moved Player ReloadSettings() to Player init
2015-01-08 01:10:35 -02:00
Andre Siviero
1120f97844
Added iPod-like behavior to previous button
2015-01-06 02:36:08 -02:00
Krzysztof Sobiecki
6efb5d05b7
Fix some problems
2014-11-05 17:48:04 +01:00
Krzysztof Sobiecki
c0614dbe09
Fix copyright notices inside src/core
2014-11-05 17:48:03 +01:00
Krzysztof Sobiecki
0af1470cce
Clean up src/core
2014-11-05 17:48:03 +01:00
Mark Furneaux
f793d09d8e
Fix play bleeding into next track after auto stop
...
If "fade out on stop" is enabled, the "stop after this track" feature
would stop not stop the on current track, but instead start playing
the next track and fade out on that immediately. This patch disables
fadeout when the engine is stopped by HandleStopAfter().
2014-04-26 00:58:08 -04:00
John Maguire
4ab4bbc23f
Remove Last.fm radio support.
...
Fixes #4259
2014-03-28 14:55:04 +01:00
John Maguire
192b60d965
Use nullptr as parent parameter default everywhere
2014-02-10 16:03:54 +01:00
John Maguire
bebd781fdf
Reformat all non-3rd-party C/C++/Objective-C++.
...
Command line:
find src ext -regex '.*\.\(h\|cpp\|mm\)' -exec clang-format -i
-style='{BasedOnStyle: Google, DerivePointerBinding: false}' {} \;
2014-02-07 16:34:20 +01:00
John Maguire
d309d4ab27
Use c++11 instead of boost where possible.
2014-02-06 16:51:39 +01:00
Arnaud Bienner
7084697aa3
Prevent Clementine to loop forever when trying to play a song with repeat enabled in a playlist which contains only unavailable songs
2014-02-04 22:08:32 +01:00
Andreas
1e4819f2df
Add stop after current track feature to network remote.
2013-07-20 19:38:37 +02:00
Kevin Cox
7381f381e6
Added --restart-or-previous option.
...
Fixes bug #3524 .
2013-05-29 15:27:07 -04:00
Anand
1aec4a4c7f
When pressing the Previous button in Repeat Track mode, go to the previous track instead of repeating the current one. Fixes issue 2897
2012-08-26 13:11:28 +01:00
David Sansome
48f15c9fc7
Refactoring: instead of passing individual pointers to useful core classes (like TaskManager or LibraryBackend) to each class that uses them, pass one singleton-like Application instance everywhere.
2012-02-26 14:40:51 +00:00
David Sansome
0335d57a0f
Improve pipeline buffering: on an underrun event playback will now pause until the buffer is completely full. Fixes audio stuttering on when listening to radio streams on slow networks.
2012-01-23 15:01:39 +00:00
John Maguire
bcf9475f2b
Add a source column to the playlist view with appropriate icons.
2012-01-04 11:56:09 +00:00
David Sansome
53e175e503
When stopping due to "Stop after this track", set the current song to the one after, so when the user presses Play it plays the next song instead of the last one again.
2011-09-27 23:31:15 +01:00
David Sansome
9fadf57acc
Revert "Move TaskManager::Task and UrlHandler::LoadResult structs out of their parent classes - PythonQt doesn't understand nested structs."
...
This reverts commit 5234798a7f
.
2011-07-23 15:32:12 +01:00
Andrea Decorte
527171fadb
Toggle visibility for Pretty OSD by command line and global shortcut.
...
Fixes issue 1344
2011-06-05 08:21:17 +00:00
David Sansome
5234798a7f
Move TaskManager::Task and UrlHandler::LoadResult structs out of their parent classes - PythonQt doesn't understand nested structs.
2011-05-21 10:43:25 +00:00
David Sansome
06852aaeb7
Show spotify search results in a separate playlist tab rather than in a tree in the sidebar.
2011-04-28 17:50:45 +00:00
David Sansome
255682b057
Remove the special load behaviour from Playlist Items and instead add URL Handlers that do the same job but for all playlist item types.
2011-04-28 15:10:28 +00:00
Paweł Bara
032b5f7e48
initial commit of "multiple covers providers" feature:
...
- simple API for cover providers (both C++ and SIP)
- a new "package" for cover related code
2011-04-02 13:34:06 +00:00
David Sansome
cb275f318f
Add an option to disable automatic crossfading between tracks on the same album or from the same cuesheet. Fixes issue 1479
2011-03-13 18:37:46 +00:00
Paweł Bara
8722e00103
Clementine now skips songs that don't exist anymore (updates issue #250 )
2011-03-10 18:01:35 +00:00
David Sansome
f801252e3d
Refactor Player and PlaylistManagers to have interfaces and add more MPRIS1 tests
2011-02-13 18:37:45 +00:00
David Sansome
e18409ebf4
Factor out a PlayerInterface from Player, and use it in MPRIS1 and MPRIS2
2011-02-13 18:36:29 +00:00
Paweł Bara
1c1d9551bb
fixes issue #553 ('seek forward' and 'seek backward' hotkeys worked wrong)
2011-01-19 16:05:16 +00:00
Paweł Bara
9f95909848
exterminating a deceiving parameter name
2011-01-06 21:53:50 +00:00
Paweł Bara
55683887c0
implemented Seeked signal for MPRIS 2
2011-01-06 21:08:11 +00:00
John Maguire
bde7902686
Refactor some initial setup out of MainWindow::MainWindow().
2011-01-04 11:33:22 +00:00
David Sansome
35242f740e
Fix dbus
2010-12-26 17:24:44 +00:00
David Sansome
e3a9bd7b26
Make DBUS bits optional on Linux. Thanks Nickollai. Fixes issue #1177
2010-12-26 13:38:35 +00:00
David Sansome
6737b8a5c2
Always use the gstreamer engine, remove xine, vlc and phonon engines.
2010-12-26 13:01:35 +00:00
David Sansome
28fdb147d8
Make last.fm optional. Thanks volkov0aa. Fixes issue #49
2010-12-18 17:28:02 +00:00