Commit Graph

330 Commits

Author SHA1 Message Date
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