Commit Graph

607 Commits

Author SHA1 Message Date
Clang Formatter 083129f41c Automatically formatted 2018-06-13 20:37:13 +00:00
vaterlangen 465fa2ce87 Clicking on songs in playlists via remote control now respecting behavioural settings from GUI (either direct changes it or enques it) 2018-06-13 22:03:23 +02:00
Antonio Russo 6a312e7459 Limit both QSettings reads and writes (#6057)
Any access, read or write, via QSettings requires locking
`Clementine.conf`. On some devices, this can be slow. Moreover, it also
increases power use and wear on devices such as SSDs.

To improve the situation, defer QSettings updates until program close
for window resize, current playlist tab, and playlist geometry, i.e.
`PlaylistView::SaveGeometry`.

Also, limit `PlaylistView::LoadGeometry` to once per program run.

Signed-off-by: Antonio Russo <antonio.e.russo@gmail.com>
2018-05-22 11:18:54 +01:00
Chocobozzz 16b4f9a991
Merge remote-tracking branch 'upstream/master' into qt5 2018-05-14 08:25:27 +02:00
Mark Furneaux d28a318437 Clang format 2018-04-14 16:57:06 -04:00
Mark Furneaux 2793cfa7fb Add to loaderinserter 2018-04-14 16:31:48 -04:00
Mark Furneaux 3626d84964 Add play next from library 2018-03-18 22:44:00 -04:00
Mark Furneaux a789ce82ca Allow playing of tracks already in queue 2018-03-18 22:03:04 -04:00
Mark Furneaux 6e387c2578 Initial playlist implementation 2018-03-18 14:43:44 -04:00
Andreas Sturmlechner 55a39a9609 Fix build with Qt 5.11 (#6029) 2018-03-17 02:16:49 -04:00
Jonas Kvinge e52c7f6475 Fix formatting 2018-03-12 07:55:59 -04:00
Jonas Kvinge d33ac6ef81 Fix background not loading. 2018-03-12 07:55:59 -04:00
Jonas Kvinge c393926be6 Fix background not loading. 2018-03-12 07:55:59 -04:00
John Maguire 4273c03132 Merge branch 'master' into qt5 2018-02-19 16:46:42 +00:00
Chocobozzz 70f68b1926
Merge remote-tracking branch 'upstream/master' into qt5 2018-02-01 09:50:42 +01:00
Vikram Ambrose 5e065609b6 Ensure song items are shown on Favorited signal
There was an issue where the song items were only being shown
from a fresh start up but not when the playlist was created. This fixes
that issue and refactors the AddPlaylist code
2018-01-14 11:24:45 +02:00
Vikram Ambrose fefea9de61 Disable drag of track items until this is properly implemented
Stop bad things from happening until proper DnD support of track
items has been implemented
2018-01-11 13:49:18 +02:00
Vikram Ambrose ae71d24f6e Ensure all nodes are shown when filter is cleared 2018-01-11 13:31:23 +02:00
Vikram Ambrose 3da938eac2 Add search filter to playlist list page
This allows power users who keep 100s of playlists to easily
find a playlist either by directory name, playlist name or by
searching for a song artist/title a playlist might contain
2018-01-11 13:11:13 +02:00
vikramambrose 2e4a67b8da Add appearance option to hide playlist filter toolbar (#5942)
Gives the user the option of a cleaner looking interface if the
filter toolbar isn't used.
2018-01-03 15:24:56 +00:00
droserasprout 08a80a5750 Fix oversized currenttrack icon in playlistview (#5885) 2017-10-18 00:32:25 +01:00
Allan Nordhøy 566708b778 ↑↓ for "Up" and "Down" (#5841) 2017-08-29 01:45:43 +02:00
Yan Pashkovsky 7bd0639455 fix up key in playlist (#5768) 2017-06-21 15:11:41 +01:00
Chocobozzz fc517ce7a5 Merge remote-tracking branch 'upstream/master' into qt5 2017-06-05 21:28:05 +02:00
Alex Bikadorov 8953227c65 New shortcut: remove current playing song from playlist (#5723) 2017-05-31 17:59:36 +01:00
Grace Dolphy bdda50b28f Continuation of "Seek instead of navigation with arrow keys" #5550, now allows up arrow key. (#5721)
* Continuation of "Seek instead of navigation with arrow keys" #5550, now allows up arrow key to not restart the song over when the library is in focus. Works as usuhal when playlist is in focus (song gets started over).

* Update playlistview.cpp

Added in the part that is responsible for seeking properly.
2017-05-30 18:19:08 +01:00
Grace Dolphy 52f1982353 Delete Undo Fix Attempt - Should Solve Issue #5701 Using Clementine to delete a song from disk should not be added to the undo stack (#5702)
* Fix delete functionality. Skips to next song if deleted song is also currently playing.

* Added in a bool to determine if the song being deleted is meant to be deleted from the disk or just from the playlist. Took advantage of the unused variable located in removeRows to distinguish between the two options. No longer adds delete from disk to the undo stack, and deleting from the playlist goes to undo stack as it should.

* Added in a bool to determine if the song being deleted is meant to be deleted from the disk or just from the playlist. Took advantage of the unused variable located in removeRows to distinguish between the two options. No longer adds delete from disk to the undo stack, and deleting from the playlist goes to undo stack as it should.

* Update mainwindow.cpp

* Formatting Changes

* Update playlist.cpp

Simplified condition statement.

* Added in a missed boolean for RemoveSelected

* Update playlistview.cpp
2017-04-18 14:29:25 +01:00
santigl a034c2d4d0 Remove non-allowed characters in playlist filename when saving. (Fixes #5460) 2017-03-16 15:18:02 +00:00
Florian Bigard 69b2a832db Merge branch 'master' into qt5 2017-01-18 15:57:07 +01:00
Santiago Gil 00c96f7334 Consider depth levels in path sorting (#5445) (#5573) 2016-12-31 13:22:10 +00:00
Mark Furneaux 589d641955 Fix playlist save on dialogs which do not enforce extensions (#5496)
like GTK+
2016-12-21 14:41:48 +00:00
Chocobozzz 18a89f78a9 Merge remote-tracking branch 'upstream/master' into qt5 2016-10-07 14:30:09 +02:00
Ilya Selyuminov d9b3a9302a Update playlist virtual order after sorting (#5436) (#5466) 2016-08-26 08:59:26 -05:00
santigl 9ddd630b3b Ignore case in path comparison (#5445) 2016-07-24 16:15:59 -03:00
John Maguire a9ba0f3bf2 Filter out bad wikipedia images better and support other locales better.
#5416
2016-06-28 16:28:20 +01:00
John Maguire fde64e31b8 Remember filename & extension for saving playlists
Fixes #2951
2016-06-07 18:04:53 +01:00
Chocobozzz 0aa3405274 Merge remote-tracking branch 'upstream/master' into qt5 2016-05-09 12:46:08 +02:00
Alex 11670e1760 Fix playlist behaviour (#5330)
* Do not restore playback state on application start if overwritten by command line options

This also fixes unwanted pausing if a new instance is started with commandline URL combined with playback restore.
Note that the actual buggy code (MainWindow::ResumePlayback()) is not fixed here.

* Fix for commandline URLs for new instances are always appended to playlist.
2016-04-12 15:53:43 +01:00
John Maguire 9c33369fcc Merge pull request #5292 from printesoi/fix-mpris-signals
Fix mpris dbus notifications
2016-03-30 15:36:04 +01:00
Chocobozzz 4898d20ce2 Merge remote-tracking branch 'upstream/master' into qt5 2016-03-28 11:38:22 +02:00
Ivan Leontiev 9afd71c651 Fix pressing "Backspace" key on a playlist results in appending "^H" character to the filter 2016-03-25 03:45:33 +03:00
Victor Dodon 5b066991ab playlist: call InformOfCurrentSongChange only after updating the virtual index
Calling InformOfCurrentSongChange before updating the virtual index results in
sending the CanGoNext and CanGoPrevious notifications with the wrong values.
2016-03-10 21:20:53 +00:00
Chocobozzz e6e189967d Merge remote-tracking branch 'upstream/master' into qt5 2016-02-29 18:03:02 +01:00
John Maguire 0ea84e129e Merge pull request #5210 from narunlifescience/patch-2
Use icon loader for remaining icons
2016-02-11 11:24:09 +00:00
narunlifescience b6bf54be6c remove magic numbers 2016-02-11 04:41:37 -06:00
Arun Narayanankutty 9a7732577d Remove unwanted lines from playlistcontainer 2016-01-16 07:06:27 -06:00
Arun Narayanankutty 29b8d308b3 Use icon loader for remaining icons 2016-01-14 06:10:54 -06:00
Mark Furneaux 041be5b4ce Fix incorrect highlight colour in playlist when the window is inactive 2015-12-24 13:42:47 -05:00
Chocobozzz 5675091816 Add error message if editing tag from playlist fails 2015-12-20 19:07:15 +01:00
Chocobozzz ff7026c9fe Merge remote-tracking branch 'upstream/master' into qt5 2015-12-13 20:05:12 +01:00
John Maguire f300946c81 Remove most usages of QFutureWatcher 2015-11-27 14:28:12 +00:00
John Maguire 3cc9c1e446 Remove ModelFutureWatcher 2015-11-26 19:02:08 +00:00
Mark Furneaux 9b42ee50ef Set next track as current when removing tracks
Fixes #5031
Attempt to set the song after the deleted tracks as the current so that they will play next rather than the beginning of the playlist.
2015-11-23 01:48:48 -05:00
narunlifescience 9314dcead8 Remove arrow indicators from mainwindow repeat & shuffle QToolButtons 2015-11-18 03:31:46 -06:00
narunlifescience b9eca5e323 Lock/Unlock Ratings edit status 2015-10-24 23:05:23 -05:00
John Maguire fad1767f6c Revert "Lock/Unlock Ratings edit status" 2015-10-20 18:39:42 +01:00
narunlifescience bcceae175d Lock/Unlock Ratings edit status
add comment

organize

unclutter

patch to work with other languages

Update playlistheader.cpp
2015-10-18 23:06:35 -05:00
narunlifescience dd953fd86c check custom icon location, then system theme & then fallback theme
icons added & replaced
2015-10-13 22:35:49 -05:00
Eduardo Sánchez Muñoz 95dad17f3e Initialize blur_radius_ and opacity_level_ on PlaylistView constructor. 2015-10-04 13:26:35 +02:00
Chocobozzz 631a6cdabd Merge branch 'master' into qt5 2015-09-16 17:40:54 +02:00
Santi 5518dc8250 make format 2015-08-01 14:45:04 -03:00
Santi 975b277bdb Sort by album considers discs and tracks 2015-07-31 21:38:06 -03:00
Eduardo Sánchez Muñoz 11b61c2a67 Use Player::SeekForward() and Player::SeekBackward() to handle seeking with arrow keys. 2015-07-02 14:59:30 +02:00
Eduardo Sánchez Muñoz acef48df5d Support showing original year tag on the playlist. 2015-06-30 19:25:38 +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
Andreas 0abdf545a0 Network remote: Insert Song as well as urls. Is used for global search to add metadata for non library tracks. 2015-06-13 16:00:15 +02:00
Chocobozzz f4ca305fd7 remove useless qhash_qurl 2015-06-04 10:37:34 +02:00
Chocobozzz 5aec1c0e24 Merge remote-tracking branch 'upstream/master' into qt5
Update qt version to 5.4.2
2015-06-03 22:57:58 +02:00
kiselev-dv f7ebeb53da Stop after each track 2015-05-22 18:11:58 +05:00
John Maguire e899598967 Revert "Add stop after each song repeat mode" 2015-05-22 11:33:59 +01:00
John Maguire 06f053e5a6 Merge pull request #4850 from kiselev-dv/master
Add stop after each song repeat mode
2015-05-22 11:29:48 +01:00
kiselev-dv aba271ed6a format code 2015-05-20 17:34:37 +05:00
Mark Furneaux 87ca578a00 Scroll to last played track when switching playlists
Currently we just scroll to the last viewed index of the last playlist in the new one. This makes no sense and is frustrating when switching between long and short playlists.
This change scrolls to the last played track in each playlist on transition.
2015-05-19 22:23:03 -04:00
Mark Furneaux fde8ae0f30 Add constants and variable units
Scrobble point constants are now defined as the minimum and maximum time last.fm requires for a scrobble to be valid.
2015-05-18 13:22:55 -04:00
Mark Furneaux 99dffe216c Fix Last.fm scrobbling after seek
Fixes #4836
Last.fm defines a scrobble should be sent if:
-the track is longer than 30 seconds.
-the track has been played for at least half its duration, or for 4 minutes (whichever occurs earlier.)

Clementine has treated this as seconds from the start of the track, and if any seeking occurs, it nullifies the scrobble.
This IMO is incorrect. If I skip the first 10 seconds of a song, but listen to the rest (still meeting the time requirements),
I should still be able to scrobble the play. This change moves the scrobble point with every seek, requiring continuous playback
from any point that satisfies the time criteria.
2015-05-18 12:53:07 -04:00
kiselev-dv 864d4162d3 Add stop after each song repeat mode 2015-05-12 14:05:46 +05:00
Chocobozzz e986ab5a4b Merge master branch and adapt it to qt5 2015-04-16 17:16:34 +02:00
Chocobozzz 8b226c2171 Update non optionnals sources to qt5 2015-04-11 23:24:07 +02:00
Andreas 25e73d5714 Merge pull request #4679 from TheUbuntuGuy/master
Do not remove currently playing track when repopulating a dynamic playlist
2015-04-10 22:41:44 +02:00
Arnaud Bienner 7ae9e0dd9b Set starting_up_ to false in playlist container when manager is done adding playlists.
Otherwise, it was never set to false at startup if no "current_playlist" was saved in the settings, then there was no new value saved for "current_playlist".
Fixes #4011.
2015-03-25 22:13:39 +01:00
Mark Furneaux c4daa227a7 Do not remove currently playing track when repopulating a dynamic playlist 2014-12-27 20:34:29 -05:00
Krzysztof Sobiecki fa9ea6ec5f Fix compilation with moved files in internet/ 2014-12-18 23:35:21 +01:00
Simeon Bird 401f07c7cb Avoid db commits during startup
When starting clementine, each playlist is loaded in turn.
When loading a playlist, the new tab order is committed to the db,
but we don't need to do that here because we know that once all the
playlists are loaded the tab order will be the same as it was initially.

This speeds startup substantially.
kstartperf:
Before: 3.5s
After: 1.5s
2014-12-09 12:48:53 -05:00
Simeon Bird 09e839353e Speed up playlist restoring by moving sqlite query off main thread
The playlist fetching uses QtConcurrent to make the playlist on a
different thread (possibly concurrently for each item).
However, profiling reveals that the slow operation is fetching
the rows from the SQLite database, making this redundant.

Instead move the whole playlist loading, including the database access,
into a single function, and call that function in a different thread via
QtConcurrent::run.

This has the side effect of moving all the concurrent stuff from
PlaylistBackend into the callers.

kstartperf measures:

Before: 7.5s cold
        3.6 s warm

After: ~4.0 s cold
       3.5 s warm
2014-12-09 12:47:37 -05:00
Juan Luis Boya García 292fff7e3a Fix #4420: Previous track in dynamic random mix 2014-11-29 19:34:31 +01:00
John Maguire 4f4c8f6894 Merge pull request #4580 from Chocobozzz/hide_internet_services
Hide internet services
2014-10-31 12:02:29 +01:00
Arnaud Bienner 2208fa7d13 Add a source icon for CD tracks 2014-10-26 18:45:48 +01:00
Arnaud Bienner 7ac9e4c6d1 Fix a bug in InsertItems functions that makes Cdda tracks to not be saved/restored correctly when restarting Clementine 2014-10-26 17:08:12 +01:00
Arnaud Bienner dc0d3436c8 Finish CD integration update to Gstreamer 1.0
Move everything related to CDDA to a seperate class, so we can more easily reuse it in SongLoader
2014-10-26 03:32:37 +01:00
Chocobozzz 50b7b7d889 Make format after update to avoid conflicts 2014-10-15 21:57:57 +02:00
Chocobozzz 8279f21251 Revert "Make format"
This reverts commit 17b1e9fbe6.
2014-10-15 21:55:03 +02:00
Chocobozzz 17b1e9fbe6 Make format 2014-10-15 20:55:24 +02:00
Arnaud Bienner 78804b12c6 Use a save dialog option instead of quick change menu.
This is less confusing IMO. The dialog will shown up only if users decided to in the preferences, so that will not bother users who don't need this.
This reuses lot of things from Alan contribution from #4484
2014-10-07 00:29:46 +02:00
Arnaud Bienner 54d76506a7 Fix member not initialized in constructor.
Was init soon after anyway, but FWIW...
2014-10-07 00:29:46 +02:00
Alan Briolat c69f2e5561 Reuse some work from Alan from pull request #4484 2014-10-07 00:29:46 +02:00
Arnaud Bienner c35e573637 Missing things from previous commit 2014-10-07 00:29:46 +02:00
Arnaud Bienner f6e6d3b937 Revert "Finished the changes to the quick change menu. Everything should work."
This reverts commit a468085c3a.

Conflicts:
	src/playlist/playlistcontainer.cpp
	src/playlist/playlistcontainer.h
	src/ui/behavioursettingspage.cpp
2014-10-07 00:29:46 +02:00
Arnaud Bienner f7d2dd94f9 Revert "Add a quick change menu to the playlist container."
This reverts commit 1cddc696ae.

Conflicts:
	src/ui/behavioursettingspage.ui
2014-10-07 00:29:46 +02:00