Commit Graph

322 Commits

Author SHA1 Message Date
David Sansome 8cdce2767b Implement the reset play counts button 2010-12-25 11:54:21 +00:00
Arnaud Bienner 3218e08118 Displaying different text depending on the number of selected songs 2010-12-21 00:20:36 +00:00
David Sansome c8520021d7 Start of a new edit tag dialog. Lots of things don't work and it doesn't actually save tags yet (so it's about as useful as before). 2010-12-19 23:40:36 +00:00
David Sansome 05a1bf6e37 Make the clear button a part of the search textbox. Fixes issue #1071 2010-12-18 20:32:05 +00:00
John Maguire 21415ff230 Fix some mac ui and metadata bugs. 2010-12-14 15:00:46 +00:00
David Sansome 5e17e93360 Smarter adding/removing from various artists. Fixes issue #717 2010-12-11 14:17:07 +00:00
David Sansome 47c13c4479 Listen for keyPressEvent instead of keyReleaseEvent in the library view. Thanks arnaud.bienner. Fixes issue #1042 2010-12-09 14:33:20 +00:00
David Sansome 34532ed85f Allow editing tracks from the library pane. Thanks arnaud.bienner. Fixes issue #65 2010-12-06 21:16:04 +00:00
David Sansome 3216f5b75e Remove ( and ) characters from FTS queries. Fixes issue #1010 2010-12-04 18:16:00 +00:00
David Sansome dd937fb06d Make searching more responsive on large libraries (Jamendo) 2010-11-27 20:20:26 +00:00
David Sansome af234763f2 Do library searching and grouping in a background thread 2010-11-27 20:09:00 +00:00
David Sansome e63c101223 Don't show the various artists node for Jamendo (there aren't any various artists albums) - making search a bit faster 2010-11-27 19:37:34 +00:00
David Sansome bea4b39020 Make Jamendo search work again 2010-11-27 19:37:09 +00:00
David Sansome f11c494c44 Add a random smart playlist to Jamendo 2010-11-27 19:18:56 +00:00
David Sansome b1bf95a668 Remember which library a dynamic playlist was using when you restart clementine 2010-11-27 19:11:36 +00:00
David Sansome 623b90e5e2 Make sure the smart playlists node really really gets put at the top 2010-11-27 18:43:49 +00:00
David Sansome 69d3d89b0f Have a different list of smart playlists for Jamendo and the normal Library. Only add default Jamendo smart playlists once. 2010-11-27 17:52:08 +00:00
David Sansome b85ddbb380 Put the Jamendo songs in a separate database that gets attached to the main database. "Reload" it by deleting the file, which is much faster than DELETEing all the songs inside. Make reloading the Jamendo, Icecast and Magnatune databases always bypass the network cache. Store the Jamendo track IDs in a separate table - for some reason this makes inserts faster. Fix the Jamendo model after the inital database load. Make the Jamendo dymanic playlist use the entries that are already in the local database rather than fetching the song metadata again. 2010-11-27 16:14:09 +00:00
David Sansome 4e60558053 Use the Jamendo track id as the ROWID for tracks, and implement reloading the database. 2010-11-25 23:05:37 +00:00
David Sansome 23d1ea81ea Add dividers to the list of icecast stations 2010-11-24 21:34:54 +00:00
David Sansome e4a3a12a83 Show progress information while downloading and parsing Jamendo and Icecast catalogues. Also parse Jamendo in chunks rather than all in one go. 2010-11-23 18:53:08 +00:00
Paweł Bara 5ceb64c9e3 "mute" command in main menu and context menu of tray icon (Fixes issue #962)
"now playing" tray icon's tooltip in Qt environments
2010-11-21 21:36:27 +00:00
David Sansome a73b46d382 Don't show smart playlists in the library when it's filtered 2010-11-21 12:16:40 +00:00
David Sansome 7d54549213 Add support for dynamic playlists. A dynamic playlist is just a smart playlist that chooses and adds a new track when you finish listening to a song. 2010-11-20 18:49:54 +00:00
David Sansome 759e97c275 Fix a bug where smart playlists wouldn't get removed correctly 2010-11-20 15:47:44 +00:00
David Sansome 353485e34e Better smart playlist icons 2010-11-20 15:29:42 +00:00
David Sansome 69db0e0ee4 Don't draw the library view at all if there are no songs in the library 2010-11-20 14:59:11 +00:00
David Sansome ed1a25693c Add missing licenses to debian/copyright, and add copyright information to each source file 2010-11-20 13:27:10 +00:00
David Sansome ffdfc0ed34 Make deleting smart playlists work 2010-11-20 12:27:19 +00:00
David Sansome 63d2496784 Add a couple more default smart playlists. Fixes issue #971 2010-11-20 12:05:51 +00:00
David Sansome bb1c2b22ef Create, edit and delete smart playlists from the context menu 2010-11-18 23:08:37 +00:00
David Sansome 1f267881fe Put all smart playlist classes in their own namespace 2010-11-18 20:19:33 +00:00
David Sansome d9ed5c91ef Add smart playlist context menu items 2010-11-18 19:34:04 +00:00
David Sansome 4750c19d00 Remove the playlists tab and add a smart playlists section to the library view instead 2010-11-17 20:21:04 +00:00
David Sansome 9e20ef13bc Automatic scoring. Thanks Arnaud Bienner. Fixes issue #141 2010-11-01 21:15:52 +00:00
David Sansome 2a480f7b1c Somewhat-working smart playlist preview widget for the wizard. Still needs a lot of polish. 2010-10-29 18:41:49 +00:00
David Sansome 30afc130a4 Start of some work for smart/dynamic playlists. Only simple generators based on sql queries are supported, and the UI still needs polish. 2010-10-24 15:38:12 +00:00
David Sansome bcddb2317a Allow song ratings to be set by clicking on the stars in the playlist 2010-10-17 21:56:19 +00:00
David Sansome f706c21be6 Add a library backend function to set song ratings 2010-10-17 20:53:48 +00:00
David Sansome 0a42a9efb5 Don't ever restructure or reset the library model when statistics on a song are changed. 2010-10-17 19:34:45 +00:00
David Sansome a13e0ba3f3 Increment play and skip counts when playing or skipping songs from the library 2010-10-17 19:27:31 +00:00
David Sansome 56d72a00bf Try the next UI experiment - wide buttons down the side like Qt Creator 2010-10-01 19:27:01 +00:00
David Sansome 8c0b17c000 Ooops, perhaps the code to stop devices from auto-expanding would work better in the DeviceView class. 2010-09-18 14:29:43 +00:00
David Sansome 3f926f0cca Don't recursively expand (and connect) devices in the device view. Fixes issue #610 2010-09-18 13:55:04 +00:00
David Sansome ce1e7f73df Fix the artist and album library icons in Qt 4.7 2010-09-18 13:35:52 +00:00
David Sansome 7419c52bec Fix a path handling problem that caused the OK button to be greyed out when copying files to a device on Windows. Also show an error message when trying to copy songs that can't be copied (like streams). Fixes issue #750 2010-09-15 20:00:17 +00:00
John Maguire 214d77bc0e Fix test and fix song loader infinite loop. 2010-08-31 21:24:57 +00:00
David Sansome 1453d264dd Fix an assert when setting the library grouping to None 2010-08-30 16:37:29 +00:00
David Sansome ce0e468d75 Sort items in the library view under the correct divider when they have no unicode decomposition.
Update issue #672
Can you try this and see if it fixes it for you?
2010-08-30 16:20:04 +00:00
David Sansome 5a616cf40a Fix the organise dialog 2010-08-30 15:40:53 +00:00
David Sansome 2a160bee5f Pass the list of songs into the organiser from the library 2010-08-30 15:28:55 +00:00
David Sansome 1311a29dfa Fix some weird behaviour in the library view 2010-08-30 14:03:32 +00:00
David Sansome 3cf2b5ba47 Revert to the old type-to-scroll behaviour in the library view 2010-08-30 10:31:44 +00:00
David Sansome 2881b6b6b2 Clean up this code a bit 2010-08-29 16:58:22 +00:00
David Sansome d337ffc6e4 Group things in the library model by the unicode decomposition of their
first character, and do a locale aware sort.  Fixes issue #668 (again).
2010-08-29 16:46:28 +00:00
David Sansome eb65c06b24 Make pressing enter in the library filter widget add the search results to the playlist. Also make the cursor keys work when the filter widget is focused. Fixes issue #641 2010-08-29 12:15:30 +00:00
John Maguire d87733b005 Use Mac search widget for library & magnatune. 2010-08-28 19:29:20 +00:00
David Sansome 8306ddc90b Convert paths to native windows seperators in many places throughout the UI 2010-08-28 19:07:23 +00:00
David Sansome d980fd5ff8 Remove the pointless CreateInThread method from BackgroundThread and instead move objects to the right thread after creation. 2010-08-27 18:36:57 +00:00
David Sansome 35708a09c5 Lazy load more context menus and dialogs 2010-08-27 16:15:54 +00:00
John Maguire b450545a63 Disable focus rectangle on Mac for playlist & library views. 2010-08-26 12:22:13 +00:00
David Sansome c0ea45a9c9 Show an error dialog when copying or deleting files failed. 2010-08-14 11:51:50 +00:00
David Sansome 5e00eb11de Pass shared_ptrs to music storage things to the organiser thread so they won't get deleted if the device is disconnected 2010-08-09 21:50:46 +00:00
David Sansome 1cbd0af8fb Fix compilation with gcc 2010-08-04 08:17:31 +00:00
John Maguire 36264e0b2b Separate out UniversalEncodingHandler. 2010-08-03 19:29:49 +00:00
John Maguire e67f9a66c8 Load playlist in separate threads on startup. 2010-08-03 18:57:17 +00:00
David Sansome a207a3def5 Make pressing return in the library view the same as double clicking 2010-07-31 17:29:52 +00:00
David Sansome 51b5e7d607 Fix an assert when the library is grouped by file type 2010-07-31 16:13:50 +00:00
David Sansome 1f2b69c6bc Add support for deleting files from the filesystem, devices, and ipods. 2010-07-31 16:12:16 +00:00
David Sansome 5a1fe772ac Fix the ordering of tracks in the library view, again 2010-07-31 15:00:31 +00:00
David Sansome a236861dfa Option to group the library by file type 2010-07-31 14:14:03 +00:00
David Sansome a21b7541e5 Sort items in the library model that don't have track/disc information in a more deterministic way 2010-07-31 12:50:00 +00:00
David Sansome 6f259d4ecc Show a free space bar in the organise dialog, and also show how much space would be taken up after copying files. 2010-07-29 22:16:12 +00:00
David Sansome 87b8c3ce69 Detect symlinks in music library. Patch by Knuckster 2010-07-29 18:40:10 +00:00
David Sansome b2aba2bac2 Add an option to eject a device after copying files to it. Now with bonus multiple virtual inheritance. 2010-07-25 09:52:29 +00:00
David Sansome 81a1a9926e Disable the "copy to device" action if there are no devices connected 2010-07-24 18:31:05 +00:00
David Sansome c35bd8779a Make sure -1 and "" get stored in the database instead of NULL for song metadata. Thanks YellowOnion. Fixes issue #396. Fixes issue #479. 2010-07-24 15:13:09 +00:00
David Sansome 9f2d610e9d Add a menu item for copying songs to devices. Only filesystem devices supported so far 2010-07-19 21:16:22 +00:00
David Sansome 62616304d8 Add a MusicStorage interface that can be used to abstract away the details of copying a file to a device. 2010-07-19 19:56:29 +00:00
David Sansome 0d0f1521f2 Show embedded cover art in the album cover manager too, but only for the first file in an album 2010-07-19 18:08:25 +00:00
David Sansome f64cdb23e9 Make the AlbumCoverLoader read embedded album cover art when it's available. Fixes issue #516 2010-07-19 17:55:02 +00:00
David Sansome fca4fb8264 On second thoughts, use temporary metadata for all playlist items. 2010-07-10 19:45:29 +00:00
David Sansome d620779696 Add an option to disable directory watchers 2010-07-10 17:03:28 +00:00
David Sansome 2762d80722 Show the scanning progress in the device view 2010-07-04 15:56:08 +00:00
David Sansome 4a8bff5f4e Cope with removable media changing mount point 2010-07-04 12:10:44 +00:00
David Sansome 88474551d5 Make the device view prettier 2010-07-04 11:34:25 +00:00
David Sansome 2deca7fd61 Add a DeviceManager which holds all the listers and connected devices. Make FilesystemDevices use their own LibraryWatcher. 2010-06-26 12:41:18 +00:00
David Sansome 2b17a8ee1f Revert r1344 (the timer tracing), it didn't help 2010-06-25 22:04:24 +00:00
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 dbe51d2cf5 Add an "Organise files..." menu option to the Library view 2010-06-24 22:45:30 +00:00
David Sansome 05b6c8fe71 Allow organising of whole directories, and pause the library watcher while organising is in progress. 2010-06-24 21:46:18 +00:00
David Sansome 44d58482f0 Make the LibraryWatcher report on its progresss. Fixes issue #436 2010-06-23 14:00:18 +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 492d8fec87 Use sqlite's Full Text Search on the songs table 2010-06-20 16:30:10 +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 7eb83634b7 Update the library view when album covers get set by the cover manager 2010-06-18 13:47:11 +00:00
David Sansome 6d39996466 Make the indentation in the settings pages more consistent 2010-06-16 22:45:13 +00:00
David Sansome 7f3c0b853a Sort by album artist properly.
Update issue #408
Status: Fixed
Looks good, thanks!
2010-06-16 14:52:01 +00:00
David Sansome efcd2c968a Search library on composer and genre too 2010-06-12 13:19:55 +00:00
David Sansome 7e1b54a779 Fix the height of items in the album cover manager, don't show artists with no albums, and add a status bar (currently unused) 2010-06-11 22:35:41 +00:00
David Sansome 0e83490766 Search in albumartist too. Fixes issue #387 2010-06-11 12:01:41 +00:00
David Sansome 15df3b90a3 Set window icons on all the dialogs. Fixes issue #394 2010-06-10 22:09:35 +00:00
David Sansome 9b713c2ed9 Add or load *all* selected library items, not just the one that you right clicked on. Fixes issue #366 2010-06-09 15:49:05 +00:00
David Sansome 5f92d652a9 Show a "Configure Magnatune" button on the magnatune header 2010-06-09 15:38:00 +00:00
David Sansome f1fb9ab6b9 Remove the library config dialog and make it show the page in the settings dialog instead 2010-06-08 23:06:29 +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 3365c7c217 Fix a few memory leaks 2010-05-28 19:51:51 +00:00
David Sansome 48830f2acc When doing a keyboard search in the library view, scroll so that the index is at the top of the viewport instead of at the bottom. Fixes issue #354 2010-05-28 12:52:22 +00:00
David Sansome e6a13c76f1 Be sure to signal about changes to the library model so that the proxy model's cache gets updated. 2010-05-25 22:18:27 +00:00
David Sansome 0021e5f7e4 Make library scanning on startup optional, and add a menu item to update the library. Fixes issue #341 2010-05-25 20:40:45 +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 a95fb6d1e6 Do UpdateCompilations in the library scanner thread so as to not block
the GUI on startup.
2010-05-20 12:27:48 +00:00
David Sansome 3d8c11ff5a Fix tests 2010-05-19 17:00:09 +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 55bc18a9c0 Fix the appearance of several dialogs when using a high font DPI. Fixes issue #310 2010-05-17 00:47:43 +00:00
David Sansome 84c8caea55 Automatically expand the nodes in the magnatune database when searching 2010-05-16 23:44:33 +00:00
David Sansome 4954a99867 Call fetchMore() when recursively expanding the library view, to fix a bug where empty items would appear when you searched the library. 2010-05-16 22:28:26 +00:00
David Sansome f7c08d375a Add a "load" menu item to the library, files view, and radio view to replace the current playlist with the selection. Also add an option to make this the default. Fixes issue #311 2010-05-15 17:45:04 +00:00
David Sansome 1aee5e4667 Split all the source files up into seven new directories. 2010-05-10 21:50:31 +00:00