Commit Graph

608 Commits

Author SHA1 Message Date
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
Arnaud Bienner 37a6c125c0 Consider some more things as text (like numbers) when deciding if we should focus on the search bar 2014-10-04 18:08:53 +02:00
Arnaud Bienner 631c120515 Allow to change rating when "inline" editing is not enabled 2014-09-06 17:54:50 +02:00
ppkt 43a6740b48 Remove unavailable items from playlist 2014-08-24 10:44:27 +02:00
Gavin Howard 9141cd65bc Fixes requested by ArnaudBienner. 2014-08-19 13:26:00 -06:00
Gavin Howard f41bebbeb2 Ran 'make format' on my patch. 2014-08-18 09:56:01 -06:00
Gavin Howard d8ba0c4f91 Minor changes requested by hatstand. 2014-08-18 08:08:14 -06:00
Gavin Howard a468085c3a Finished the changes to the quick change menu. Everything should work. 2014-08-15 18:52:01 -06:00
Gavin Howard 1cddc696ae Add a quick change menu to the playlist container. 2014-08-15 15:37:31 -06:00
Gavin Howard 5b7819f14d Added UI and QSettings support for playlist metadata and path types. 2014-08-13 22:47:25 -06:00
Helder Martins e4054fad5e Clarified comment to be more accurate of what it does 2014-08-03 10:48:01 +01:00
Helder Martins 56fc242520 complemented condition inside reshuffleindices function to take into account the selected track 2014-07-27 23:07:50 +01:00
Arnaud Bienner 0976cc7e5c Give Clementine the answer to the ultimate question of life, the universe and everything
Probably my most valuable contribution so far
2014-07-24 23:48:45 +02:00
Helder Martins cbfd3218f2 Cleaning unnecessary code 2014-07-23 23:47:12 +01:00
Helder Martins 0c2d4e9f1c Fixed a minor issue where the playlist wasnt updating the queue order, when a track was dequeued using the ctrl-d shortcut 2014-07-23 00:15:06 +01:00
Gu1 62ecfe19f7 Add an option to disable inline song metadata editing through click 2014-06-23 18:40:00 +02:00
David Sansome c8625deffb Update persistent model indexes properly when sorting the playlist. Fixes #4358 2014-06-07 13:31:25 +10:00
David Sansome 53be1e1f65 Revert "Use guaranteed random number generator." Fixes #4400
This reverts commit 9f6899ac82.
2014-06-07 12:12:08 +10:00
Arnaud Bienner 134b617ec4 Emit dataChanged when changing skip track state.
Otherwise, when changing this for the currently playing track, the "strike out" change wasn't visible.
2014-05-25 18:44:54 +02:00
David Sansome f65c48ef9c Fix the rendering of the little numbers in the boxes on queued items in the playlist 2014-05-24 14:05:21 +10:00
John Maguire 9f6899ac82 Use guaranteed random number generator.
Fixes #4352
2014-05-20 17:03:04 +02:00
John Maguire 24a4cff807 Merge pull request #4288 from sundrythoughts/rating-optimization
Increase performance of mass rating changes.
2014-05-20 12:42:39 +01:00
David Sansome 98b6b6f906 Don't use italic text anywhere - Arabic text doesn't have italics. Fixes #4329 2014-05-11 20:42:49 +10:00
David Sansome 4e9a7ca7f3 Load all the metadata for the first song, so the duration will appear properly when it starts playing. 2014-05-11 17:35:23 +10:00
Mark Furneaux d0ca2cef6c Comment remove 2014-04-25 23:02:42 -04:00
Mark Furneaux ce8b7303c0 Formatting 2014-04-25 22:50:52 -04:00
Mark Furneaux c890af6306 More elegant solution to last commit
set_current_row now takes optional parameter "is_stopping" for when auto stop
is enabled.
2014-04-25 22:45:25 -04:00
Joseph Freeman fe4a80b2d5 Removed commented-out code and ran make format. 2014-04-25 19:41:04 -04:00
Joseph Freeman 156728390d Increase performance of mass rating changes. 2014-04-25 19:37:46 -04:00
Mark Furneaux 416d06bb06 Fix stop after track
Stop after track would cause now playing widget, OSD, and last.fm
scrobbler to change to next track after stopping. This patch prevents
set_current_row() from firing an event which triggers the track change.
2014-04-25 14:30:31 -04:00
Alexander Bikadorov a056a87c8e Coding style fixes for async song load. 2014-04-07 15:27:47 +02:00
Alexander Bikadorov 0d199be5a7 Load all songs that require disc-read non-blocking. 2014-04-02 15:57:01 +02:00
Alexander Bikadorov 27e1c16e8a Debug logging when saving a playlist. 2014-03-18 16:14:12 +01:00
Alexander Bikadorov d023b56cea Avoid saving the playlist multiple times. 2014-03-18 16:13:38 +01:00
John Maguire 5146bcdebc Some more NULL -> nullptr conversions. 2014-02-21 17:30:46 +01:00
Alexander Bikadorov 3adaf5d598 fixed indentation / coding style 2014-02-11 13:18:08 +01:00
Alexander Bikadorov c7ac2012b4 correct selection after removing rows in playlist 2014-02-10 16:51:43 +01:00
John Maguire 192b60d965 Use nullptr as parent parameter default everywhere 2014-02-10 16:03:54 +01:00
John Maguire 3323c2d094 Convert all instances of foreach() to a C++11 for
find ext src -name '*.cpp' -exec \
    sed -i -e 's/foreach(\([^,]\+\),/for (\1 :/' {} \;
2014-02-10 14:43:32 +01:00
Dave Sansome 89369029ab Merge branch 'skip_track' of https://github.com/asiviero/Clementine into asiviero-skip_track
Conflicts:
	src/playlist/playlist.cpp
	src/playlist/playlistitem.h
	src/ui/mainwindow.cpp
2014-02-08 13:19:23 +11: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 71893e4847 Use nullptr instead of NULL everywhere. 2014-02-06 17:29:59 +01:00
John Maguire d309d4ab27 Use c++11 instead of boost where possible. 2014-02-06 16:51:39 +01:00
Mladen Pejaković 657bbcf00f Fix for pull request #4170 2014-02-04 15:04:19 +01:00
Mladen Pejaković 033d266fe9 Add contexts to some translation strings 2014-02-03 21:54:02 +01:00
asiviero c0132b2ed3 Renaming skip properties, strike out track when it is to be skipped 2014-01-27 00:26:51 -02:00
David Sansome f816a47ad9 Make SongLoader add URLs as raw streams if there exists a URL handler
for that scheme.  This fixes a bug where sky:// URLs couldn't be added
with MPRIS.
2014-01-24 23:54:38 +11:00
asiviero c817431593 Greying out song and added verification to next on album mode 2014-01-20 22:35:01 -02:00
asiviero 5c21768760 Minor fixes and label adjustments 2014-01-20 22:10:23 -02:00
asiviero 1c0a221563 Added skip track feature 2014-01-20 22:10:16 -02:00
asiviero 048c2d9b9c Modified queue to store tracks to skip 2014-01-20 22:10:08 -02:00
David Sansome d3749eace9 Select the current item if the selection is empty when using Tab to move from
the playlist filter to the playlist view.  Fixes #4116
2014-01-14 20:07:03 +11:00
John Maguire 1a972e0f36 Fix rendering of source icons in playlist view on retina OS X 10.9 2014-01-10 16:57:32 +01:00
David Sansome 8416188056 Show a message in the Devices pane on Windows to say that most devices won't work. Fixes #4059 2014-01-05 11:32:07 +11:00
Arnaud Bienner 2a0f1266ce Revert "Disable inline editing with 'SelectedClicked'. Still available using F2. Fixes 3251 (once again)."
This reverts commit 4a1d3e2de6.
2013-11-30 18:10:20 +01:00
Arnaud Bienner 4a1d3e2de6 Disable inline editing with 'SelectedClicked'. Still available using F2. Fixes 3251 (once again). 2013-11-22 21:55:46 +01:00
Arnaud Bienner 3715e5f15e Revert revision 316b5d7db4 and revision e7a5c482fe (aka re-enable inline editing) 2013-11-22 20:59:31 +01:00
Arnaud Bienner 316b5d7db4 (Add a comment to explain why I removed this) 2013-11-17 19:42:06 +01:00
Arnaud Bienner e7a5c482fe Don't allow tag inline editing anymore.
This was a pretty good idea, but now we have a dedicated tag dialog editor, I'm not sure it is very useful. It was probably faster to edit tags this way, but I'm afraid lot of people may inadvertently modify their tags because of this. Still allow inline editing of score and comment, because they sound less critical to me.
Fixes issue 3251.
2013-11-17 19:00:44 +01:00
Arnaud Bienner 2e18b7eb96 Check playlist exists in manager. Fixes issue 3878 2013-10-03 20:36:46 +02:00
Arnaud Bienner fb78321c16 Don't ignore Folder (so we don't ignore playlists they contain and we don't end up with dangling pointers in playlists_by_id_) 2013-10-02 22:58:47 +02:00
Mateusz Kowalczyk aa347d0a57 Don't ask about closing the playlist if it's empty
Fixes issue 3827.
2013-08-28 21:38:17 +02:00
Andreas 2c0b505b7b Append playlist id to new playlists. 2013-08-17 15:54:39 +02:00
Arnaud Bienner 379b8743f9 Force the position of the checkbox for the confirmation prompt (looked bad on Windows) + update an old, not up to date comment 2013-08-11 16:36:28 +02:00
Arnaud Bienner 9f38f14fbf Don't really need the QObject:: here 2013-08-10 21:46:17 +02:00
Arnaud Bienner e3c5f3398c Add a "don't prompt me again" checkbox to the "warn_close_playlist" message box 2013-08-10 20:18:29 +02:00
Andreas 4fe293b6d0 The insert and remove signal for a playlist was not correct. 2013-07-31 19:06:29 +02:00
Arnaud Bienner 00a0e990fd Correct typo 2013-07-28 15:37:02 +02:00
Arnaud Bienner f75c0a2b97 Add an option for not being asked before closing a playlist 2013-07-27 19:59:15 +02:00
Andreas 1e4819f2df Add stop after current track feature to network remote. 2013-07-20 19:38:37 +02:00
Arnaud Bienner b53e58d407 Ask user for confirmation before closing a non-favorite playlist, as it will be deleted. Don't ask if middle-clicked 2013-07-18 00:37:31 +02:00
Arnaud Bienner f245f7ed82 Add a playlistlist view with a helper text 2013-06-29 18:05:03 +02:00
Arnaud Bienner 77d80fc60b Add a playlistlist view with a helper text 2013-06-29 18:05:00 +02:00
Arnaud Bienner a5e6c3273c Delete a playlist when unstaring it from the left 'Playlists' panel and when it's not opened 2013-06-29 16:16:52 +02:00
Arnaud Bienner cee18eebb2 Add a tooltip to the favorite widget 2013-06-29 16:12:53 +02:00
Arnaud Bienner 253a8ffde4 Add save action from playlistlist tab, so we can save favorite playlists without opening them.
Remove unnecessary/duplicate actions from playlistlist tab.
2013-05-23 20:09:35 +02:00
Arnaud Bienner e4c2070a98 Oops 2013-05-12 23:58:54 +02:00
Arnaud Bienner 94a70d61b9 Save playlist' id instead of tab's id in favorite widget, so we don't have to update it when tab are moved 2013-05-12 23:36:32 +02:00
Arnaud Bienner e9f14d9f8a Fix GetPlaylist and update network remote 2013-05-11 23:59:51 +02:00
Arnaud Bienner 5e6821dead Add a 'favorite' widget to playlist tab, and keep in playlistlist container only favorite playlists, instead of all playlists. 2013-05-11 23:18:03 +02:00
Andreas 8888cc410a Send closed playlists too if requested. 2013-04-16 13:57:04 +02:00
David Sansome dac22dbd72 Explicitly cast scoped_ptrs to bool. Fixes issue 3570. 2013-04-15 21:41:54 +10:00
pie.or.paj 18e8d6ca20 - Added basic playlist management (add and remove tracks) in network remote. 2013-04-13 11:57:05 +02:00
Arnaud Bienner 88918d45c5 Update issue 1175:
Save rating and statistics in two distinct ways, and let users activate them separately in preferences.
2013-03-30 23:42:29 +01:00
Andreas 329a91c265 SetActiveToCurrent: Check if the playlist changed. If not, then do not call SetActivePlaylist(). 2013-03-20 15:33:53 +01:00
Mateusz Kowalczyk 2cb58ab937 Blur the colour channels instead of just the alpha channel of playlist
background images.  Fixes issue 3498
2013-03-10 18:19:40 +11:00
David Sansome d89954ae31 Fix style, hide the new columns by default, and move the new columns to the end of the enum 2013-03-10 18:16:14 +11:00
Uwe Klotz a6d3b48231 Extend tag support: performer, grouping
The transaction handling while upgrading the database schema had to be revised.
Furthermore some QSqlQuery statements needed to be finished properly.

Fixes issue 2556
2013-03-10 18:16:03 +11:00
Arnaud Bienner fa5a16e057 Inhibit autoscroll only for 30 seconds instead of 1 minute 2013-03-05 23:51:27 +01:00
David Sansome cec965edf9 Don't try to manipulate null playlist background images. 2013-02-17 14:07:46 +11:00
David Sansome 122d5ad139 Clean up the appearance settings page and add sensible defaults 2013-02-17 14:03:39 +11:00
David Sansome c03f69daa7 Restore the blur amount setting when the settings dialog is loaded. Also remove some unusued variables. Fixes issue 3497 2013-02-17 13:55:54 +11:00
Mateusz Kowalczyk f40b8ab892 Add adjustable transparency to album art background.
Fixes issue #3431
2013-02-15 14:39:14 +01:00
Alan Briolat cc2be1ef15 Save playlist tab order when closing a tab, fixes issue 3393 2013-01-17 09:22:42 +01:00
Mateusz Kowalczyk 5b88c5f4a4 Select the next tab when a playlist tab is closed. Fixes issue 3347. 2012-12-24 19:35:31 +11:00
Alexey Bo c7be61f11d Compare encoded urls. Fixes issue 2842. Some random tracks are not properly read from the cue sheet after clementine restart 2012-11-26 19:59:05 +01:00
Perttu Ahola 40081a97e7 Start following the cursor again when Ctrl+J is pressed. Fixes issue 697. 2012-11-24 21:21:49 +11:00
David Sansome a6eea2b941 Fix an off-by-one error when choosing which row to select after removing items in the playlist 2012-11-24 17:10:20 +11:00
David Sansome 65aa0ebae0 Hide the moodbar column by default. 2012-11-24 15:59:36 +11:00
John Maguire 8bbcd6b760 Use a better check for support for std::unordered_map. 2012-11-22 12:24:38 +01:00