Commit Graph

413 Commits

Author SHA1 Message Date
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
David Sansome 0beab5c9a8 Temporarily use tr1/unordered_map on OS X 2012-11-22 19:38:17 +11:00
Arnaud Bienner af8e8c753e Use a better data structure to track uniques songs when removing duplicate. 2012-11-22 02:06:29 +01:00
Przemysław Dąbek a241774fb5 more consistent whitespaces 2012-11-21 18:46:42 +01:00
Przemysław Dąbek 92637cb7d1 improved removing duplicated songs 2012-11-21 16:06:19 +01:00
David Sansome 577d131c6a Use qt_blurImage instead of the handwritten function 2012-11-10 18:04:55 +11:00
Arnaud Bienner 65f1dca716 Minor style changes 2012-11-09 20:30:32 +01:00
Mateusz Kowalczyk c4796564ea Add an option to blur background image.
Fixes issue 3266.
2012-11-09 20:17:26 +01:00
David Sansome 9fae3881ed Add a new "Playlists" tab to the sidebar that contains all the playlists created by or imported into Clementine. The tab bar now contains only "open" playlists - closing a tab closes the playlist without deleting it.
Update issue 1811
Added a Playlists tree view to the sidebar.
2012-10-30 23:04:22 -07:00
David Sansome 885d98b5f0 Remove the SpecialPlaylistType class, it hasn't been used since Spotify and Grooveshark search results went into the sidebar tree. 2012-10-30 22:53:09 -07:00
Michael Niggli 4cd0e2b232 Use numerical comparisons in playlist filter when appropriate.
Update issue #3184
Committed with some style fixes.
2012-10-10 11:35:53 +02:00
David Sansome 701822dec2 Support :!= and :<> in the playlist filter box, and allow filtering on ratings using < and >. Fixes issue 3184 2012-09-29 07:42:30 +10:00
Michael Niggli 96654efd3f Delay queries on large playlists.
Fixes issue 3148
2012-09-09 00:35:50 +02:00
David Sansome c4ae0209c6 Codereview comments from revision cd6b1a2d7c 2012-08-29 20:53:24 +01:00
Michael Niggli cd6b1a2d7c Support logical operators in the playlist filter box. Fixes issue 700 2012-08-28 23:29:15 +01: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 75a057a47d Handle URL QVariants properly when displaying filenames in the playlist view. Fixes issue 3127 2012-08-26 12:24:16 +01:00
Arnaud Bienner 57d3dfc96e Add source icons for JazzRadio and SoundCloud 2012-08-09 22:36:39 +02:00
David Sansome 2035c3e7f5 Fix a bug where dragging songs to the bottom of the playlist would actually move them back to the top. 2012-07-15 12:51:19 +01:00
David Sansome de782c980d Ignore custom playlist row colours for the currently playing item - they might clash with the glowing current track indicator. Fixes issue 3042. 2012-07-15 12:44:53 +01:00
Arnaud Bienner 3b50ed8953 Clear playlist search field when Esc is pressed 2012-07-14 00:00:16 +02:00
John Maguire 83f1aa9252 Copy the character that triggered a search box focus into the search box. 2012-07-12 19:09:03 +02:00
John Maguire 6b87318710 Revert "Typedef QSearchField to old LineEdit on non Mac, and make it compatible with QSearchField"
This reverts commit 59517f5b4e.

Update issue 3047
Status: Accepted
Breaks the mac build. We should do a proper fix for this.
2012-07-12 14:04:29 +02:00
Arnaud Bienner 59517f5b4e Typedef QSearchField to old LineEdit on non Mac, and make it compatible with QSearchField
Fixes issue 3047. (for now)
2012-07-10 00:44:05 +02:00
John Maguire 0558c7bf69 Fix build for Qt < 4.7 2012-07-09 11:34:47 +02:00
cornicis dcab14e5fe added removeDuplicateSongs() function to playlist.cpp and added this action to the playlist-menu
Fixes issue #21
2012-07-06 11:46:04 +02:00
John Maguire b01a0de8d6 Re-enable a few disabled features from the Qocoa porting. 2012-06-28 12:35:20 +02:00
John Maguire 569c8295db Add qocoa and use it for the playlist search field. 2012-06-28 11:39:43 +02:00
David Sansome b9bb449651 Use the first visible column when dragging+dropping within the playlist, instead of column 0 which may be hidden
Fixes issue 2879
2012-06-15 10:18:38 +01:00
Robbert Krebbers 3b186c698d Allow playlist sorting and shuffling to be undone. Fixes issue 654.
Also:
  - When sorting a dynamic playlist, only songs after the currently playing track are sorted.
  - When moving songs in a dynamic playlist, recolor them if moved across the current track.
  - When playing a future song in a dynamic playlist, move it to the current location.  Fixes issue 1140
2012-06-09 14:33:51 +01:00
David Sansome 836a2b0c89 Update the moodbar column on the correct model 2012-05-30 11:06:41 +01:00
David Sansome 8c33cb91e0 Don't show any tooltips for the Mood column 2012-05-27 22:01:37 +01:00
David Sansome b03563f317 Make it possible to compile out moodbar support 2012-05-27 21:33:05 +01:00
David Sansome a2feaa61e7 Create and render moodbars in background threads to avoid blocking the UI 2012-05-27 18:53:57 +01:00
David Sansome 19c3e1d5ec Add a Mood column to the playlist 2012-05-27 16:46:16 +01:00
Arnaud Bienner 14cba7e704 Use application's palette when setting text color of the current playing song's row 2012-05-15 00:49:14 +02:00
David Flatz 1e9a7e2119 Fix segfault when drag&dropping playlist entries from different instance
Fixes issue 2896
2012-04-25 16:38:59 +01:00
Arnaud Bienner 58c217c1fa Always save previous background image, and start fading only is visible 2012-03-28 00:45:14 +02:00
David Sansome 7d9f2b7b7d Use LineEdit::set_focus() instead of QWidget::setFocus() on LineEdit widgets that might be OS X search widgets
Fixes issue 2823
2012-03-25 21:14:39 +01:00
Arnaud Bienner b9d449f3b0 Fadeout when player stop.
+ Also clear all background images when changing background image type to something different from AlbumCover or Custom
+ Remove useless code
2012-03-18 19:22:08 +01:00
Arnaud Bienner 9dff2dd0b1 Give background_type a default value, as some compilers sometimes wrongly assume that it might be used uninitialized 2012-03-17 13:34:29 +01:00
Arnaud Bienner ab0a050855 Add a fading animation when background image change 2012-03-16 22:39:39 +01:00
Arnaud Bienner 4e54634504 Reset current_covert_art when player is stopped 2012-03-13 23:15:53 +01:00
Arnaud Bienner 2a4ab30a69 Connect player->playlistview signals directly in playlistview, now that we have an Application object which holds player. 2012-03-13 22:59:18 +01:00
Arnaud Bienner b676676b9a Precompute the (CPU expensive) opacity filter in a new set_background_image function.
Also, convert the image and modify only alpha channel
2012-03-10 18:55:22 +01:00
Arnaud Bienner 45c172f3fb If the new playing song has no covers, display nothing as playlist background, instead of default cover.png, which isn't very nice as a background IMHO 2012-03-08 23:42:34 +01:00
Arnaud Bienner 0b9d7f2a1a Move all the logic about background precomputation in a new method, to make paintEvent cleaner 2012-03-08 22:39:27 +01:00
Arnaud Bienner b00bdcf04e Scale background image before applying (CPU expensive) opacity filter on it, if the scaled image will be smaller than the original one 2012-03-08 22:25:29 +01:00
John Maguire d09f96d6eb Use qBound instead of ಠ__ಠ 2012-03-06 14:46:35 +01:00
John Maguire 8e6dd551ef Fix background image rendering on Mac by pre-computing the opacity change.
Fixes issue #2745
2012-03-06 13:40:19 +01:00
Arnaud Bienner 790808c47d Add source icon for Jamendo songs.
Rely on URL's host. This doesn't sound perfect to me, but I can't think of a better way to do this.
Maybe making a comparison with one the Jamendo's streaming URLs host would have been better, but I think "api.jamendo.com" is very unlikely to change someday.
2012-03-05 01:13:11 +01:00
Arnaud Bienner 3b19d730b6 Add the ability to have the current playing song cover as playlist's background.
I think it can be nice. But some users' feedback about this might be nice...
Also, few things may be improved (like adding fading when cover changes)
2012-03-03 01:20:37 +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
Arnaud Bienner 906d6f5995 Force background redraw when changing background preferences. 2012-02-19 22:40:58 +01:00
Arnaud Bienner 639fcf6a3b Change background opacity 2012-02-19 22:26:11 +01:00
Arnaud Bienner 7912caa115 Do not use QPainter::setOpacity because, as explained in http://techbase.kde.org/Development/Tutorials/Graphics/Performance#QPainter::setOpacity.28.29 this deactivate hardware acceleration and make Clementine use 100% CPU when using a custom image as background. 2012-02-19 21:43:55 +01:00
Arnaud Bienner 089586ad07 Activate fast QString concatenation.
As this is not source compatible because we sometimes assumed (now wrongly) that '+' operation returns QString object (it now returns QStringBuilder object actually), some minor other corrections were needed.
2012-02-19 14:44:33 +01:00
Arnaud Bienner 2f710a9395 Add the ability to modify the playlistview's background image.
Updates issue 365
It is now possible to also modify background image, instead of just hide the default one
2012-02-18 19:57:36 +01:00
David Sansome 845fe2122e Use the highlighted text colour as the text colour of the currently playing song in the playlist view 2012-02-02 20:33:40 +00:00
David Sansome 7166f0d922 When pressing Ctrl+C on a playlist item, copy the text of all visible columns, rather than just the text of the "current" one. Fixes issue 2558 2012-01-29 19:24:13 +00:00
David Sansome 626ce20ec0 Merge branch 'external-tagreader' 2012-01-08 18:38:48 +00:00
David Sansome 5b71ed0837 Use a better spotify icon in the Source row, clean up pixmap drawing code 2012-01-08 15:16:36 +00:00
David Sansome bdf0ff4930 Make the "Loading" song info indicator and playlist queue/stop after indicators look nicer by aligning their QPainters properly 2012-01-07 23:52:31 +00:00
David Sansome 4618651cf4 Merge branch 'master' into external-tagreader 2012-01-07 22:52:18 +00:00
David Sansome 9be641ee87 The external tagreader mostly works now:
* Make TagReaderClient a singleton until it's easier to pass dependencies around
 * Add a WaitForSignal() that uses a local event loop to wait for a signal to be emitted
 * Add a WaitForFinished() to _MessageReplyBase that blocks using a semaphore
 * Add blocking versions of all TagReaderClient methods
 * Use the TagReaderClient everywhere that Song::InitFromFile and friends were used before
2012-01-07 00:26:07 +00:00
David Sansome 74c4720054 Don't crash when the playlist view in the smart playlist preview doesn't get a Player*. 2012-01-06 11:22:17 +00:00
David Sansome bfd725f2ed Don't crash when adding new columns to a stretch header view.
Fixes issue 2562
2012-01-04 18:45:08 +00:00
John Maguire 11619c9484 Bump the playlist view state version. 2012-01-04 15:43:28 +00:00
John Maguire 7a8103a352 Don't scale the source icon pixmap badly. 2012-01-04 13:59:07 +00:00
John Maguire 6200983dbc Add pixmap cache to source icons. 2012-01-04 12:04:17 +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 0aba1ce77d Fix a crash when creating a new smart playlist 2011-11-29 13:01:54 +00:00
Robbert Krebbers 7c1cedeac8 Fix a bug where moving songs down in the playlist could not be undone properly. Fixes issue 1908 2011-11-29 11:39:47 +00:00
David Sansome 05460f9975 Mark spotify streams as not seekable 2011-11-28 18:45:12 +00:00
David Sansome b873209d39 Remove the <xiphcomment.h> include from song.h so that windows headers don't infect everything else. Also move other bits of song.h into song.cpp, and reduce the number of includes in song.h. 2011-11-28 13:56:55 +00:00
Angus Gratton 360aaabd0d Add playlist album artist for use in playlist grid view (Issue 509) 2011-11-28 11:04:38 +00:00
David Sansome da532ef3ca Make manual track changes ignore the "repeat track" setting. Fixes issue 2426 2011-11-27 21:02:37 +00:00
David Sansome b8ee548eb4 Rename the existing "Shuffle by album" mode to "Shuffle tracks in this album", and add a new "Shuffle albums" mode that plays all the tracks in each album sequentially, but then jumps to a different random album afterwards.
Fixes issue 1152
2011-11-27 15:01:10 +00:00
Arnaud Bienner ceab3bd6f0 Add Grooveshark songs as internet items, when adding them from global search, so user can use all GS custom actions 2011-11-24 00:30:11 +01:00
Arnaud Bienner 867a072579 Improve UpdateItems complexity: still quadratic in wort-case, twice better in average, but linear in best case, which is very likely to happen in real usecases 2011-11-19 16:01:58 +01:00
Arnaud Bienner fdad2bd706 Make the async load of folders thread-safe 2011-11-18 21:55:54 +01:00
David Sansome 23bc7acaee Show filenames in the filename column if the URL has a "file" scheme. Also convert the path to native separators for windows 2011-11-12 19:57:21 +00:00
David Sansome efce2498ca Indicate which column alignment action is currently set on each column in the menu. 2011-11-12 16:23:41 +00:00
David Sansome 63fdf11cd8 Keep the playlist column alignment setting in PlaylistView instead of in each individual Playlist, ensuring all playlists share the same column alignments and there's only one place to save/restore them.
Fixes issue 1795
2011-11-12 16:12:51 +00:00
Arnaud Bienner 48db13b353 Make Playlist's InformOfCurrentSongChange public and use it when updating item instead of using UpdateItems (which will create a new item) 2011-11-11 02:42:48 +01:00
HyperQuantum 94a7ceb898 Add an "Expand" button to add more tracks to a dynamic playlist. Fixes issue 1268 2011-11-10 11:21:41 +00:00
Arnaud Bienner 89680a02f0 Add the ability to have custom actions for PlaylistItems, and InternetPlaylistItems (through services). Add 'add to playlists' actions for Grooveshark 2011-11-06 16:12:44 +01:00
Arnaud Bienner 4143823870 Get GrooveShark songs' length (give the ability to seek through stream). markStream and markSongComplete, as resquested by GrooveShark 2011-10-02 12:05:56 +02: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 d62d11df8d When songs are added to the end of the playlist, scroll the playlist to ensure the top one is visible. 2011-09-27 22:28:12 +01:00
David Sansome 8f3ea57a64 Fix the background colour of items in the global search popup in Qt 4.7 with the GTK style. 2011-09-19 11:06:25 +01:00
David Sansome c1041ed6d4 Support for playing tracks from local library 2011-08-29 03:32:41 +01:00
David Sansome 804cbbc14e Save the playlist after editing fields of files in it - affects files that are not in the library. 2011-08-27 23:09:42 +01:00
David Sansome 9312f153b7 Don't show a notification and update the now playing widget when editing a song that isn't currently playing. Fixes issue 1689 2011-08-27 23:08:53 +01:00
David Sansome 7e0e4e48e4 When loading a CUE from disk that isn't in the library, don't overwrite the metadata of its first song with the metadata from the audio file. Fixes issue 2092 2011-08-27 22:29:35 +01:00
Arnaud Bienner cb28557a77 Correct typo 2011-08-08 23:44:49 +02:00