Commit Graph

409 Commits

Author SHA1 Message Date
David Sansome cc6413ab0e Add tracing to every timer event, might help track down CPU usage... 2010-06-25 08:46:03 +00:00
David Sansome a8f505e266 Don't fiddle playlist entries if the directory ID doesn't match what it was before - eg. if you delete a directory and add another one, and some IDs get reused. 2010-06-24 22:21:54 +00:00
David Sansome f808591ec7 Refactor the loading indicator widget into a seperate TaskManager class that can handle tasks with progress 2010-06-23 13:21:30 +00:00
David Sansome dafedbf00c Cache the playlist tree pixmap while the user is dragging stuff over it, making the repeated repaints less expensive. 2010-06-20 19:02:19 +00:00
David Sansome b18fcee586 Fix a crash when clearing a playlist 2010-06-18 16:06:51 +00:00
David Sansome 34a1772ed2 Don't replace song fields in the playlist when loading them on startup 2010-06-18 15:37:36 +00:00
David Sansome d2f2eb89e0 Don't count the length of tracks that don't have a length 2010-06-18 15:32:52 +00:00
David Sansome d3be5a4215 Make double-clicking on radio items work properly again. It's hacks all the way down... 2010-06-18 15:31:49 +00:00
David Sansome 43ae900852 Move the clear playlist button down to the bottom again. 2010-06-18 15:07:21 +00:00
David Sansome 8dd0b9902b When album cover art changes, update songs matching those albums in the playlist 2010-06-18 14:26:46 +00:00
David Sansome 4dbd1f2a2f Make sure the last played track gets restored properly when we re-open clementine 2010-06-17 17:43:58 +00:00
David Sansome 840a617ae8 Move the clear playlist button to the top 2010-06-17 15:41:45 +00:00
David Sansome 0d7eabcfb0 Show the "status bar" as part of the central widget 2010-06-16 19:21:15 +00:00
David Sansome 9b39b2db68 Move tabs to the top 2010-06-16 18:50:01 +00:00
David Sansome ea87eddcd2 Fix some weirdness when saving and restoring the state of the playlist QHeaderView. Fixes issue #413 2010-06-16 17:15:13 +00:00
David Sansome 68edaff32f Show the whole URL in the playlist for streams that don't have a title or basefilename set. 2010-06-16 16:18:28 +00:00
David Sansome 357f229e02 Make saved radio streams use the song loader when dragged to the playlist 2010-06-16 16:11:23 +00:00
David Sansome f162d9d620 Add a SongLoaderInserter that loads a list of URLs and inserts them into a playlist when it's done. Wire up everything in the GUI that loads URLs or filenames to use the new SongLoader. 2010-06-15 18:24:08 +00:00
David Sansome b6a642ab15 Major graphical change: add a vertical line between the repeat/playlist buttons and the playlist length label 2010-06-14 16:18:15 +00:00
David Sansome e46d93b599 Move the track length indicator to the right, and add information about the selected tracks 2010-06-13 12:45:05 +00:00
David Sansome a8d79582c1 Add a status bar indicator to tell the user how many tracks are loaded. Fixes issue #155 2010-06-12 21:20:53 +00:00
David Sansome f739ae5e00 (Vertical) center align playlist items again.
Update issue #379
Fixed the alignment.
2010-06-11 16:41:29 +00:00
David Sansome 3fe941f5c1 Make the playlist header present a one-level menu for showing and hiding columns. Fixes issue #381 2010-06-10 17:40:14 +00:00
David Sansome 07ba35ff6d Append a "Hz", "bpm", "kbps" etc. suffix to bit rate, sample rate and BPM columns in the playlist 2010-06-10 17:04:40 +00:00
David Sansome 6eea954fb1 Right-align numeric fields in the playlist 2010-06-10 17:04:05 +00:00
David Sansome c41344524d Display the BPM column in the playlist properly. 2010-06-10 16:54:07 +00:00
David Sansome 782166db41 Invalidate the currently playing track cache when scrolling sideways. Fixes issue #377 2010-06-09 15:37:54 +00:00
David Sansome 40bb827fcd Make all the source files a single cmake target again. 2010-06-08 22:39:31 +00:00
David Sansome 5099503b45 Make the small toolbar buttons stay small even on gtk styles that use bigger buttons 2010-06-08 11:43:34 +00:00
David Sansome c834a5f31f Do the compilation processing in the database thread, and make everything lock on the database to ensure two threads don't access it at once. 2010-06-02 16:22:20 +00:00
David Sansome 03d876a599 Put the Database object in its own thread, and create the Library and Playlist backends in that database thread. The database calls don't happen in the database thread yet, but this is the first step towards making sure sqlite access is thread safe. 2010-06-02 15:58:07 +00:00
David Sansome 24b22b1b17 Invalidate the cached current row pixmap when the column headers are moved/resized and when the song's metadata changes. 2010-06-02 13:51:16 +00:00
David Sansome ed03c4cd72 Lower the CPU usage of the currently playing track animation by about 50% by caching the row pixmap and lowering the framerate slightly. 2010-05-27 20:31:00 +00:00
David Sansome 7ecdb772a7 Always map model indexes from the UI to the source playlist model when using them in the playlist.
Update issue #340
Status: fixed
I think I've fixed all these bugs now, but please reopen if you find
another situation where the wrong track gets used in a filtered playlist.
2010-05-25 19:39:04 +00:00
David Sansome 89bbaeed5f Add a filter for each type of playlist in the load/save dialogs. 2010-05-22 22:29:52 +00:00
David Sansome b487ec00ef GUI for saving playlists 2010-05-22 22:20:00 +00:00
David Sansome 1f8b0de49c Load playlist button works 2010-05-22 20:28:11 +00:00
David Sansome aff901e44d Show a message on the playlist when a search yielded no matches. 2010-05-22 17:03:18 +00:00
David Sansome ab1b80c1db Playlist filtering 2010-05-22 16:36:13 +00:00
David Sansome 6a3c9aae0c Double clicking on empty space in the playlist tabbar makes a new playlist, and middle clicking a tab removes it 2010-05-22 14:33:17 +00:00
David Sansome 9baa1f74c7 Fix a weird bug when removing the last-but-one playlist 2010-05-22 14:28:37 +00:00
David Sansome 0ef6a2dc88 Hide the tab bar when there are no tabs in it 2010-05-21 10:57:40 +00:00
David Sansome e572fbf487 Oops, fix remove and rename 2010-05-21 10:44:26 +00:00
David Sansome 98235eea03 Remember the ordering of playlists 2010-05-21 10:37:24 +00:00
David Sansome 119c6fbd6e Refer to playlists by ID rather than index in the tabbar, so they can be moved around 2010-05-21 10:29:17 +00:00
David Sansome a274f8cbfc Select newly created playlists 2010-05-21 09:41:57 +00:00
David Sansome 0aa579c2be Disable the Delete playlist action if there's only one playlist left. 2010-05-21 09:37:27 +00:00
David Sansome 103f933dab Save the currently selected tab 2010-05-20 23:18:55 +00:00
David Sansome 7e913fb38b Show a playing/pause icon on the active tab 2010-05-20 22:48:11 +00:00
David Sansome 1572124962 Seperate last played values for each playlist 2010-05-20 22:30:55 +00:00
David Sansome f17a422797 Make sure only one playlist can have the "current" song 2010-05-20 21:51:01 +00:00
David Sansome e515724bf7 Basic support for multiple playlists. Not everything works yet 2010-05-20 21:21:55 +00:00
David Sansome b116d4a306 First go at a UI for playlist search and multiple playlists. Nothing works yet. 2010-05-20 14:12:15 +00:00
David Sansome 4d57ccb41c Use icons from the desktop theme where possible, fall back on oxygen. 2010-05-19 15:45:29 +00:00
David Sansome a292677320 Refactor the way Player gets tracks to play from RadioPlaylistItems. They can now return synchronously with a URL, asynchronously via a signal, or with an error. This properly fixes the problem of preloading a last.fm stream when the track before is about to end. 2010-05-18 20:43:10 +00:00
David Sansome 63c2640032 Select the entire row when scrolling to the currently playing item. 2010-05-18 18:19:19 +00:00
David Sansome 56765caf64 Make previous follow the same order of virtual indices that next follows.
Update issue #316
I've fixed the second part of your report in this one - pressing "back" should follow the same random order now.  It goes a bit weird if you go back past the first random track you played, but I don't care too much about that :)
2010-05-17 00:02:22 +00:00
David Sansome 3891bc032d Add a "jump to the currently playing track" menu option. Fixes issue #316 2010-05-16 23:55:00 +00:00
David Sansome 1aee5e4667 Split all the source files up into seven new directories. 2010-05-10 21:50:31 +00:00