Paweł Bara
77151d7ebd
Hiding some of Song's cover art logic complexity in Song's API (namely: embedded and manually unset covers).
2011-02-02 21:01:08 +00:00
Paweł Bara
ce104b9cf4
working on making disable for library filter widget work on MacOS (Updates issue #1396 )
2011-02-02 16:46:57 +00:00
Paweł Bara
8aedda1795
moving the 'Save cover to file' action into AlbumCoverChoiceController; implementing the action in all related places (now playing widget, album cover manager, edit tag dialog)
...
now playing widget: disable all cover related context menu options (except for the 'save cover' one) when in 'Kittens' mode
2011-02-02 16:22:04 +00:00
Paweł Bara
5b5d3f0c2e
watch out for optional last.fm dependencies in AlbumCoverChoiceController -> fixes issue #1393
...
from the creators of "david is always right" movie -> maybe fix issue #1396
2011-01-31 15:21:32 +00:00
Paweł Bara
2959dbff85
'show duplicates only' view for library where you can see which songs in your library are duplicated and delete unnecessary duplicates (fixes issue #1328 )
2011-01-30 21:00:49 +00:00
David Sansome
0beb12fc14
Add some options to control what happens when you double click or use the menu to add tracks to the playlist
2011-01-24 21:16:26 +00:00
David Sansome
fe818e5597
Don't drop the embedded art indicator from songs when updating the library. Thanks markwatkinson
2011-01-23 15:36:09 +00:00
Paweł Bara
70952d94d8
I wonder how those Cisco routers are so good if people responsible for them are SLACKERS!
2011-01-18 17:20:42 +00:00
Paweł Bara
e24e786a5d
incorporating David's suggestions
2011-01-18 17:12:05 +00:00
Paweł Bara
07739d6c68
Python bindings for LibraryView + new UI hook for plugins: the view's context menu
...
support for IN operator in LibraryQuery.AddWhere
2011-01-18 16:34:43 +00:00
Paweł Bara
ddd3f119d3
CUE songs are now properly updated in library - you can delete a CUE sheet, add it, you can change section markers in it etc. and everything should work as expected
...
Song now knows it's cue path (if any)
2011-01-15 18:46:23 +00:00
Paweł Bara
4f7e804638
library: watcher now updates CUE associated songs + ignores the not-CUE-associated songs in a CUE sheet
...
CueParser: properly update length for the last song from every FILE in multifile CUE sheet
new 'playlist_path' argument in the 'Load' part of PlaylistParser's API
2011-01-11 23:09:59 +00:00
David Sansome
135b32642e
Refactor all the code that handles adding items to the playlist - whether it be by a context menu item, double clicking in a view or dragging. Everything now uses the models' mimeData() instead of duplicating the same code everywhere.
2011-01-10 22:26:13 +00:00
David Sansome
d78ad452f2
Make the "No cover" image the same size as the cover art when showing cover art in the library. Thanks markwatkinson. Fixes issue #785 .
2011-01-02 18:58:52 +00:00
David Sansome
43940de195
Add an option to show cover art in the library view. Thanks markwatkinson. Fixes issue #785
2011-01-02 14:51:01 +00:00
David Sansome
6ea9ea3b4d
Add a linebreak to a tooltip
2010-12-30 18:26:13 +00:00
David Sansome
ca032eb445
Add an "Enqueue to playlist" menu item. Thanks bendarb. Fixes issue #980
2010-12-29 15:08:43 +00:00
Paweł Bara
da5f941333
consider .cues when scanning the library
...
persist the new 'beginning' marker of songs
fixed a bug where %allsongstables script would not update the attached databases
2010-12-28 15:36:01 +00:00
David Sansome
1362809b5d
Make the library scanner use filter words for selecting cover art. Thanks markwatkinson. Fixes issue #634
2010-12-28 12:52:58 +00:00
David Sansome
9b82ecbb72
Add tag completers for albumartist, composer and genre, and load completion models in background threads
2010-12-25 13:11:09 +00:00
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