Commit Graph

935 Commits

Author SHA1 Message Date
David Sansome 42cd269538 Double click visualisation for fullscreen 2010-06-06 18:29:13 +00:00
David Sansome 793e0371fe Oops, don't show the visualisation automatically 2010-06-06 18:28:58 +00:00
David Sansome c541f242c5 Visualisation overlay 2010-06-06 18:18:06 +00:00
David Sansome 994d6d9c20 Set a better default size for the visualisation, and make resizing work 2010-06-06 18:17:41 +00:00
David Sansome 1895582eb9 Basic support for ProjectM visualisations 2010-06-06 14:06:23 +00:00
David Sansome fe39d99923 Support playing \\host\share\file style URLs on Windows 2010-06-03 18:39:42 +00:00
John Maguire 2e9dc6c570 Never override UTF-8 strings from TagLib. 2010-06-03 15:22:30 +00:00
David Sansome f33604580c Stop ASCII from voting, and add a failing test 2010-06-03 15:16:15 +00:00
David Sansome 3652ff30e0 Don't assert if one of the operands to our LIKE function is NULL 2010-06-03 14:56:49 +00:00
John Maguire 8a13f3e481 Qt is nice :-) 2010-06-03 14:11:53 +00:00
John Maguire 2ad15ffec6 Code review comments for r1023 2010-06-03 13:26:46 +00:00
John Maguire 407bc7a41e Fix segfault. 2010-06-03 13:02:24 +00:00
John Maguire b9df2a09d4 Add voting for codecs, eg. if 3/4 tags in a file are windows-1251 then they will all be decoded with windows-1251. 2010-06-03 12:36:43 +00:00
David Sansome c0103cc1e0 Bring 1020 back again for Windows systems that don't seem to have a system encoding set :/ 2010-06-02 21:26:12 +00:00
David Sansome 7cbd8f7500 Revert r1020, it wasn't necessary - see issue #364 2010-06-02 21:08:37 +00:00
David Sansome 2381d2ba1a Use UTF8 explicitly rather than the local 8-bit codec 2010-06-02 21:04:03 +00:00
David Sansome 6dd32da591 Make the M3U parser use the local 8-bit encoding instead of latin1. Yes I know the spec says m3us are always latin1 - you didn't expect anyone else to actually follow that did you? Fixes issue #364. 2010-06-02 20:06:47 +00:00
David Sansome e110febc86 Add a background to the pretty OSD 2010-06-02 19:19:30 +00:00
David Sansome 6e19e777d8 Don't create SettingsDialog until RadioModel is available 2010-06-02 16:27:52 +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 c7d351f68a Make it possible to wait for a background thread to start 2010-06-02 14:22:40 +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 e891543f42 Fix the encoding of composers and albumartists as well 2010-06-02 13:22:54 +00:00
John Maguire f4385d4545 Detect cp866 & windows-1251 in "latin1" tags. 2010-06-02 12:31:40 +00:00
David Sansome 3dad151608 Undo part of r1004, thanks John 2010-05-31 21:24:54 +00:00
David Sansome d760721f61 Make this all a bit more sane 2010-05-31 20:59:13 +00:00
David Sansome 99cea19994 Create engine_ in the initialisation list. 2010-05-31 20:51:29 +00:00
David Sansome bfebbc20c9 Show multiple errors in the same dialog 2010-05-31 20:49:44 +00:00
David Sansome 5d272a89ee Codereview comment from r1000 2010-05-31 20:24:05 +00:00
David Sansome 3365c7c217 Fix a few memory leaks 2010-05-28 19:51:51 +00:00
David Sansome 2c9a29e226 Give this variable a default value so it doesn't get passed to QThread::start uninitialised 2010-05-28 18:42:11 +00:00
David Sansome 9a06fa0bfc Don't start a new timer for *every* track we play. 2010-05-28 17:14:00 +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
John Maguire 98c97d13d6 Template magic \o/ 2010-05-27 23:34:05 +00:00
David Sansome 791534703c Allow names for custom saved streams. Fixes issue #242 2010-05-27 22:53:07 +00:00
John Maguire 4836b8d420 Fix XML parsers to output file URLs. 2010-05-27 22:43:07 +00:00
John Maguire 7ad2c38333 Port XSPFParser to QXmlStreamWriter. 2010-05-27 21:16:17 +00:00
John Maguire e8dab5c065 ASX support.
Fixes issue #325
2010-05-27 20:55:34 +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 4c13e78893 Fix a mingw warning 2010-05-27 20:30:15 +00:00
John Maguire 734d505eb7 Fix media key global shortcuts on mac.
Dave: *again* :-P
2010-05-27 13:21:05 +00:00
John Maguire 722981e71d Stop streams on PlayPause. 2010-05-27 13:17:28 +00:00
David Sansome 3927d91cf1 We use decodebin2 on windows now 2010-05-25 22:25:04 +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 8164066648 More Qt 4.5 fixes 2010-05-25 21:41:53 +00:00
David Sansome 9292bd3cb5 toFloat() was Qt 4.6 2010-05-25 21:33:16 +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 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
John Maguire bfa355cf82 Force menu items into correct place on mac.
Fixes issue #342
2010-05-25 13:19:28 +00:00
David Sansome c6d1c69ad0 Make it possible to do an in-place build 2010-05-24 13:29:13 +00:00
David Sansome 46b3dc643f "Stop after this song" on tray icon menu. Fixes issue #339 2010-05-23 21:51:31 +00:00
John Maguire a0f19e5923 Remove unnecessary checks. 2010-05-23 17:04:55 +00:00
John Maguire 07b2c38690 Save support for M3U. 2010-05-23 17:00:45 +00:00
John Maguire 1b76ead951 Implement playlist saving for XSPF. 2010-05-23 16:26:32 +00:00
John Maguire a59f5a3887 *Fix m3u parsing
*Add regression test
*Fix clang warnings
2010-05-23 15:35:28 +00:00
David Sansome eb78ace541 Replay Gain support 2010-05-23 13:07:15 +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 06c6bebe15 Support for saving .pls files 2010-05-22 21:27:51 +00:00
David Sansome 211ae65e3d .pls parser. Fixes issue #302 2010-05-22 21:11:22 +00:00
David Sansome 1f8b0de49c Load playlist button works 2010-05-22 20:28:11 +00:00
David Sansome c9c44ca592 Move the playlist parsers to another directory, and add a PlaylistParser class that magically uses the right parser. 2010-05-22 20:06:19 +00:00
David Sansome d054e06444 Don't do the preloaded check on manual track changes.
Update issue #332
Status: fixed
Thanks for the patch!  Calling Stop() in there meant that the OSD got shown
briefly with a "Stopped" message though, so I've changed GstEngine::Load
instead - the problem was with the code that checked whether the pipeline had
already started to load that URL as a result of GstEngine::StartPreloading.
It'll now only do that on an automatic track change.
2010-05-22 17:19:27 +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 d921b7e4e7 Improve system tray icon click behaviour. Thanks haakonn.
Fixes issue #335
Looks good, thanks!
2010-05-22 12:43:33 +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 5de851d054 Sync translations from launchpad 2010-05-20 19:08:14 +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 becdbb05a3 Remove debug output 2010-05-19 15:53:32 +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 9b224fd87d Fix the fader behaviour a bit 2010-05-19 13:26:23 +00:00
David Sansome 33614533d8 Fix playlist wrapping into a last.fm stream, for real this time. 2010-05-19 13:08:52 +00:00
David Sansome 6bf26eca90 The Magnatune URLs are already encoded. 2010-05-19 13:03:03 +00:00
David Sansome 8b4c85a886 Make magnatune songs play again 2010-05-18 20:51:33 +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
John Maguire af3f8bcdfe Preload the next item in the playlist correctly when it's a radio station. 2010-05-18 14:30:55 +00:00
David Sansome bb015ca3aa Global shortcuts dialog should work now. 2010-05-17 11:06:50 +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 6806d78f96 Add a button to the global shortcuts dialog to open gnome's keybinding properties dialog. 2010-05-17 00:31:39 +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 84c8caea55 Automatically expand the nodes in the magnatune database when searching 2010-05-16 23:44:33 +00:00
David Sansome 4b9fd35db1 Make the "version" text bigger in the about box 2010-05-16 23:21:45 +00:00
David Sansome a8f6dc6361 Get error messages from lastfm::ws::parse properly, and make sure to finish the busy indicator if an error does occur. Featuring: epic RTTI hack. 2010-05-16 23:16:38 +00:00
David Sansome bdc5d1ab1c Make sure the OSD and album cover manager use a "no cover" image when there's no artwork 2010-05-16 22:53:42 +00:00
David Sansome f3c732019f Remove the last.fm album art loading code, and set the URL so AlbumCoverLoader can fetch it. 2010-05-16 22:46:56 +00:00
David Sansome 9694977b34 Don't pad images in the OSD 2010-05-16 22:41:01 +00:00
David Sansome 33e61f9eb8 Fix last.fm cover art 2010-05-16 22:31:59 +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 ef0f7a90cb Merge audvare's globalshortcuts branch and tidy it up a bit. It doesn't do anything yet, but the UI is there. 2010-05-16 22:22:51 +00:00
David Sansome 694c5e9f9e Wait 2 seconds after the fadeout finished before destroying the pipeline, to allow for delays in the sound server/driver. Fixes issue #294. 2010-05-15 17:55:36 +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 c5db4c025c We don't need to link against libz on windows or linux for some reason. 900 GET 2010-05-11 20:07:00 +00:00
David Sansome 49f273edd2 Add an option to add a whole folder to the playlist 2010-05-11 20:02:19 +00:00
John Maguire 6794b67a2f Fix LibraryModel tests. 2010-05-11 19:03:29 +00:00
John Maguire ae233ada44 Use canFetchMore/fetchMore instead of nasty const_casts. 2010-05-11 18:17:41 +00:00
David Sansome 51446cbb88 Implement canFetchMore and fetchMore in MergedProxyModel 2010-05-11 18:01:30 +00:00
John Maguire ff4eb346da Fix mac build 2010-05-11 12:51:31 +00:00
John Maguire 5dd0a9c35f Autodetect weird encodings in ID3v1 tags.
Fixes issue #254
2010-05-11 12:03:55 +00:00
David Sansome 72f5307524 Fix a little race condition 2010-05-10 22:47:14 +00:00
David Sansome 7302854382 Oops, fix some crashes on startup 2010-05-10 22:09:16 +00:00
David Sansome 1aee5e4667 Split all the source files up into seven new directories. 2010-05-10 21:50:31 +00:00
David Sansome 481dbae992 Save magnatune playlist items properly, also fix tests from before 2010-05-10 14:19:43 +00:00
John Maguire 37960cb5df Start of (still disabled) ID3v1 encoding detector.
Comes with const_cast hackiness \o/
Updates issue #254
2010-05-10 13:46:06 +00:00
David Sansome 41f306fd2a Load cover art from Magnatune: make AlbumCoverLoader load from http, and make the OSD load artwork asynchronously. 2010-05-10 13:15:52 +00:00
David Sansome 58da0a2f64 Use the same QNetworkAccessManager for everything, and make it use a disk cache 2010-05-10 11:12:44 +00:00
David Sansome 4ed73d74b0 Replace readElementText properly, with one that doesn't error out when it sees a child element. 2010-05-10 10:58:02 +00:00
David Sansome 9e47eb420a Make this compile on Qt 4.5 2010-05-10 09:35:45 +00:00
David Sansome a5102a2b27 Remove all existing magnatune songs before reloading the database 2010-05-09 21:31:52 +00:00
David Sansome 575d44144c Rename the "Radio" tab to "Internet" 2010-05-09 21:22:47 +00:00
David Sansome 739b0168ed Add an index to the magnatune table 2010-05-09 21:21:08 +00:00
David Sansome bef59ffd22 Don't reset the whole merged model when one of the submodels changes 2010-05-09 21:16:54 +00:00
David Sansome e2355d855d Move the library filter widget out of MainWindow into another class, and show the widget when magnatune is selected 2010-05-09 20:18:05 +00:00
David Sansome 7ef13ecf09 Display dividers properly in the Magnatune list 2010-05-09 18:55:33 +00:00
David Sansome 95bd58c5bb Load genres and cover art (although it's not used yet) 2010-05-09 18:50:54 +00:00
David Sansome 8d3353520a Magnatune context menu 2010-05-09 18:36:10 +00:00
David Sansome 8b76cfa19d Do something sensible with context menus 2010-05-09 17:53:27 +00:00
David Sansome 7ef82ef9c1 Playing Magnatune tracks now works 2010-05-09 17:32:07 +00:00
David Sansome ff8c024692 Drag and drop from the merged model 2010-05-09 17:19:48 +00:00
David Sansome 88ab9a8299 Add a table for the Magnatune library, and add the Magnatune database to it when the Magnatune node is expanded. Sort the Magnatune library model properly, and don't crash when adding or removing items. 2010-05-09 16:53:35 +00:00
David Sansome 8ce66bcbd2 Fix memory leak 2010-05-09 15:53:28 +00:00
David Sansome 6b8d6c93f9 Add a MergedProxyModel that lets us merge two models into one... 2010-05-09 15:51:04 +00:00
David Sansome 1b00aaa8b3 Big refactoring of the Library <-> LibraryBackend <-> SQLite interaction.
The LibraryBackend has now been split into a Database class that deals with setting up sqlite, and PlaylistBackend that contains the functions for persisting the playlist.  The LibraryBackend now only contains functions for accessing "a collection of songs", and can be parameterised with table names to access different collections.  It also no longer lives in a background thread, and follows the Qt memory management model instead of using shared_ptr.
Most of Library has been moved into LibraryModel - a QAbstractItemModel for any LibraryBackend.  What's left of Library is now specific to the user's local library on disk.
2010-05-09 00:10:26 +00:00
David Sansome cd8fc47bf3 A little refactoring of Library - pass in a table to get songs from 2010-05-08 21:54:36 +00:00
David Sansome 72dbfd51c5 Start of a Magnatune service that downloads the list of songs and prints them on stdout. 2010-05-08 20:56:39 +00:00
David Sansome 980d61a583 If we're not crossfading, keep the same pipeline when changing tracks and just swap out the gstreamer source - this should allow for completely gapless playback. 2010-05-08 17:39:12 +00:00
David Sansome 8ea3213f09 Codereview comments from r861 >.> 2010-05-08 15:45:09 +00:00
David Sansome 9cd0fa6d7d Better error handling for the transcoder, and a log to show the user what's going on 2010-05-08 15:36:12 +00:00
David Sansome b304b1a5a0 Remember the last used output format in the transcoder dialog 2010-05-08 14:09:56 +00:00
David Sansome 5cbed1c6b3 Use uridecodebin to pick the right source for us, rather than using giosrc sometimes, and soup/neon for http. Fixes issue #290 2010-05-08 13:54:12 +00:00
John Maguire b909f56dbb Stupid msgmerge fix. 2010-05-07 12:30:06 +00:00
David Sansome 1f0733caf5 Cancelling the transcoder now works 2010-05-06 16:28:19 +00:00
David Sansome 1287254897 Merged translations from launchpad 2010-05-06 12:52:19 +00:00
David Sansome 8c9b546cc5 Show the console window in debug mode on Windows 2010-05-05 16:56:55 +00:00
David Sansome 38d4cb40c8 Fix an infinite recursion bug. Fixes issue #284 2010-05-05 16:56:42 +00:00
David Sansome a81d0c55e7 Fix some indentation in CMakeLists 2010-05-05 16:56:35 +00:00
John Maguire a7d9c4d0dc Support drag from Finder to playlist on Mac.
Fix small build thing.
2010-05-05 11:50:45 +00:00
David Sansome 19b08540ef Force the directsound sink on windows 2010-05-04 15:51:23 +00:00
David Sansome e862555f56 Oops, AAC works better in a container... 2010-05-03 22:58:18 +00:00
David Sansome 6e3cab8667 Make the pretty OSD skip the taskbar on Windows. 2010-05-03 22:36:28 +00:00
David Sansome b114b76e10 Don't overwrite existing files 2010-05-03 21:24:43 +00:00
David Sansome c1384f0a0c Make this comment a bit more helpful 2010-05-03 20:10:55 +00:00
David Sansome e24efe390c Fix compilation on Windows 2010-05-03 20:01:23 +00:00
David Sansome 6fa0f28ca4 Working transcoder. No error handling yet 2010-05-03 19:56:21 +00:00
David Sansome d5c52f32d8 Add an almost working music transcoder. Also some small translation fixes. 2010-05-03 18:52:35 +00:00
John Maguire 7b420b6845 Some defensive programming for r819. 2010-05-03 14:55:00 +00:00
John Maguire 3adc74dfab Disable gstengine's timer when it's stopped. 2010-05-03 14:15:42 +00:00
David Sansome 7039d04ee6 Keep all the version numbers in one file, so we don't have to change it in hundreds of places each release. 2010-05-03 13:58:41 +00:00
David Sansome d3cbeed9b7 Merge translations from launchpad 2010-05-03 13:10:38 +00:00
David Sansome 6f7dbf3286 Make local file playback work on Windows again 2010-05-01 14:01:01 +00:00
David Sansome 5a7437ddd6 Fix the "add media" dialog on windows 2010-05-01 13:49:07 +00:00
David Sansome f8d68d3956 Always show icons in the menus, even on gnome in lucid 2010-05-01 13:40:21 +00:00
David Sansome b319bdfe8e Set the glib application name so Clementine shows up in the gnome-volume-control 2010-04-30 19:45:43 +00:00
David Sansome 266ad640de Fix character decoding from gstreamer errors.
Update issue 263
Status: Fixed
Nevermind, I worked out out - should be fixed now!
2010-04-30 15:37:57 +00:00
David Sansome 260fe95a93 Fix an infinite loop when a radio stream finishes 2010-04-30 15:29:33 +00:00
David Sansome 0fb1a02df5 Show the more meaningful delegate's displayText in the playlist tooltips, rather than the naked Qt::ToolTipRole text.
Update issue 267
Status: Fixed
I've fixed the strange values for numeric fields and the length field - they
should now all show the same text as shown in the playlist.
I think it's going to be harder to inhibit the tooltip if all the text is
already displayed though.
2010-04-30 15:23:52 +00:00
David Sansome 148bd538f7 Merge 0.3 rc1 tag changes back into trunk 2010-04-30 11:13:37 +00:00
David Sansome 0c9e69ed30 Group "remove" undo commands in the playlist. Fixes issue #262 2010-04-29 23:58:31 +00:00
David Sansome 70565565c7 Don't reshuffle the playlist every time the user presses next 2010-04-29 23:30:24 +00:00
David Sansome bd0b0ae0aa Change the application version to 0.3 rc1 2010-04-29 20:25:44 +00:00
David Sansome 3a52920671 Remember to pass timer events back down to the baseclass. Fixes issue #258 2010-04-29 15:54:32 +00:00
David Sansome 299783d097 Use QBasicTimer for the playlist glow as well 2010-04-28 11:09:57 +00:00
David Sansome 29a623739b Italian translation from Vincenzo Reale 2010-04-28 10:29:26 +00:00
David Sansome d5a3c74043 Make analyzers use QBasicTimer instead of QTimer 2010-04-27 21:40:28 +00:00
John Maguire f1ff15d2f7 Fix crash when using the services menu on mac. 2010-04-27 18:44:19 +00:00
David Sansome 9d72d85f09 Don't crash when asked to load a file that doesn't exist on Windows 2010-04-27 17:53:52 +00:00
David Sansome 48bd5020cd Don't crash when editing a song that doesn't exist any more, also don't even add deleted songs to the playlist. Fixes issue #253. 2010-04-27 17:37:26 +00:00
David Sansome 0579b18850 Accept empty fields in the edit tags dialog. Fixes issue #251. 2010-04-27 17:19:07 +00:00
David Sansome 3f360d254f Renumber tracks correctly starting from the top one even when the user selects them "backwards" (starting from the bottom). 2010-04-27 17:15:11 +00:00
David Sansome 30daf4aca2 Merge translations from launchpad 2010-04-27 13:51:25 +00:00
David Sansome 6d0b217e2a Don't save the tags in a file if it hasn't been changed. Fixes issue #252 2010-04-27 13:46:44 +00:00
David Sansome 6a74ac4736 Be careful about infinite recursion when loading a stylesheet that changes the palette. 2010-04-26 13:13:24 +00:00
David Sansome d6d01618c5 Only include the strings that are actually different in the british english "translation". 2010-04-26 12:00:15 +00:00
David Sansome 36af3ddbe4 After shuffling the playlist, make sure next works as expected. Fixes issue #248 2010-04-26 11:36:10 +00:00
David Sansome a0386d68d3 Tweak the playlist drop indicator slightly, and always show it at the bottom of the playlist if dropping on empty playlist space 2010-04-24 12:18:42 +00:00
John Maguire 0b5bc960ed Forgot to delete a line :-) 2010-04-23 13:33:04 +00:00
John Maguire c446ef7dad Remove extraneous NSAutoreleasePool, we create one in MacMain() now. 2010-04-23 13:32:27 +00:00
David Sansome b0dbd12ce5 Notice when a directory is renamed within the collection while Clementine is running. Fixes issue #240 2010-04-23 13:29:11 +00:00
David Sansome eecd66a7b5 Changed the playlist drop indicator to make it easier to see. Fixes issue #241 2010-04-23 13:10:03 +00:00
David Sansome a56107c598 Fix UTF8 characters in metadata received from gstreamer. Affects issue #229 2010-04-22 20:48:35 +00:00
David Sansome 4326c54bf2 Fix the currently playing track background colour on windows. Fixes issue #239 2010-04-22 20:33:05 +00:00
David Sansome 906f3526cf Fix a crash bug when you seek all the way to the end of the last track 2010-04-22 17:02:06 +00:00
David Sansome 99743d49aa Nasty hack to hopefully prevent "seek failed" errors - just don't allow two seeks to happen within 100ms of each other. 2010-04-22 16:54:09 +00:00
David Sansome f70f911dd6 Clean up cmake status output a bit 2010-04-22 16:53:41 +00:00
David Sansome 1d6d2e74b8 On KDE, stop the OSD from appearing in the middle of the screen, and under other windows. 2010-04-22 15:26:33 +00:00
David Sansome 9dca93e276 Merge translations from launchpad 2010-04-22 14:01:46 +00:00
John Maguire d01de9cdf8 Shutup "memory leak" messages on OS X. 2010-04-22 13:57:46 +00:00
David Sansome 82602f8d96 Fix setenv/putenv madness on mac 2010-04-22 13:49:16 +00:00
David Sansome 449de3f34a Fix a couple of warnings 2010-04-21 20:57:54 +00:00
David Sansome 174d66f30f Fix compilation errors in release mode 2010-04-21 20:04:27 +00:00
David Sansome 7263983e0c More debug output in CanDecode, and set the gst path in GstEngine rather than main() 2010-04-21 17:11:50 +00:00
David Sansome 06aaaf15f5 Fix a crash when reaching the end of a playlist 2010-04-21 17:11:02 +00:00
David Sansome 3cc0ed361a Ignore useless metadata from gstreamer, and metadata that comes while the next track is preloading 2010-04-21 14:04:40 +00:00
David Sansome 910553b175 Gapless playback! 2010-04-21 13:55:30 +00:00
David Sansome b6c7b6e109 Make up restore the scroll position as well if it's the same as going back. 2010-04-21 12:03:48 +00:00
David Sansome b604324728 When going back and forward in the file browser, remember which item was selected and where the view was scrolled to. 2010-04-21 11:57:35 +00:00
David Sansome 3400f2b947 Don't lose the library settings when opening the settings dialog and accepting it without navigating to the Library tab. 2010-04-21 11:24:22 +00:00
David Sansome 4eedddd57c Make the gst engine emit Error() instead of showing its own dialog when a plugin couldn't be found. 2010-04-21 11:14:12 +00:00
David Sansome 37f7b1ca3b Use lconvert from the Qt sdk rather than $PATH, if it's available 2010-04-21 11:03:30 +00:00
David Sansome 4234700e24 Trim the metadata received from tags 2010-04-20 22:20:20 +00:00
David Sansome 0656330548 Test we can load various popular file formats 2010-04-20 22:00:02 +00:00
David Sansome 8b51f90a6e Make the pretty OSD draggable on kwin 2010-04-20 19:43:56 +00:00
David Sansome 58ae505377 If you remove the currently playing song, then undo it, keep the "currently playing" status on the newly re-added song. Updates issue #152. 2010-04-20 19:08:12 +00:00
John Maguire 2f9d1867be Remove debug. 2010-04-19 20:59:34 +00:00
John Maguire ff06207732 OS X dock icon updates to show current status.
Somewhat less (but still quite) hacky system tray code.
2010-04-19 20:59:05 +00:00
David Sansome 32d5a1dd2d Add danish translation 2010-04-19 19:25:33 +00:00
David Sansome b2236bfd1e Undo and redo actions for the playlist. Note that undoing a sort or a shuffle doesn't work yet. Fixes issue #152 2010-04-19 18:44:35 +00:00
John Maguire 9d0541a53b Disable automatic loading of gstreamer plugins from non bundle locations on mac. 2010-04-19 15:00:33 +00:00
David Sansome 124ca3fe64 Lock all analyzers to 25fps, should reduce CPU usage quite a bit 2010-04-19 14:24:11 +00:00
David Sansome 66d83fd120 Oops, forgot this comment 2010-04-19 14:23:57 +00:00
David Sansome 56bb697d06 Remember maximized state between calls to hide() and show() on window managers that don't do it for us. Fixes issue #215 2010-04-19 14:10:31 +00:00
David Sansome b418141aa0 Show a tiny play or pause icon in the system tray 2010-04-19 13:53:26 +00:00
David Sansome 1dc8cca6e1 If the pretty OSD is positioned against the right/bottom edge, always display it there regardless of the size. 2010-04-19 13:16:53 +00:00
David Sansome e014b67090 Add a "Stopped" notification that's different from "Playlist finished". 2010-04-19 13:01:57 +00:00
David Sansome f4e9de8e5b Free the error messages properly, since they aren't owned by gstreamer. Thanks john :) 2010-04-19 12:30:19 +00:00
David Sansome 4bc704d7e3 Actually show error messages that come from gstreamer. Fixes issue #230 2010-04-19 12:04:35 +00:00
John Maguire 4948050327 Fix build without gstreamer.
Fixes issue #217
Thanks to christoph.gysin
2010-04-16 14:39:55 +00:00
John Maguire baf59f4c8d A bit more automation for mac builds. 2010-04-15 19:09:39 +00:00
David Sansome d3adcbabf8 Change "Behaviour" to "Behavior", and add a british english translation 2010-04-15 16:26:41 +00:00
David Sansome 13b5772aa5 Remove genitive variables in lastfmservice.cpp, and use the american spelling of "neighbor"
Fixes issue #204
2010-04-15 16:12:44 +00:00
John Maguire 8abb9ecd4b Most of the work to use Sparkle on OS X.
Updates issue #210.
2010-04-15 15:23:12 +00:00
David Sansome dd86b60411 CMake variables and commandline options to allow multiple engines to be built. Thanks christoph.gysin.
Fixes issue #203
2010-04-15 12:39:34 +00:00
David Sansome 44ffc5be75 Get metadata from shoutcast streams (like somafm) 2010-04-14 23:59:11 +00:00
David Sansome 5519985a3b Fix the names of these signals/slots 2010-04-14 22:54:15 +00:00
David Sansome 2a33954725 Codereview comments from r701 2010-04-14 22:36:28 +00:00
David Sansome be73b351ed Nothing to see here ... *ahem* 2010-04-14 22:19:07 +00:00
David Sansome 72cbf90689 Save the playlists in the background, and use shared_ptrs for all playlist items so they stay in scope after they've been deleted but while they're still being saved. 2010-04-14 22:05:41 +00:00
John Maguire b16f789ac7 700 GET
Code review comments for r699
2010-04-14 21:58:51 +00:00
John Maguire aeaebdb8d6 Fix a few mac UI bugs.
* Cmd+W closes the main window
* Clicking the dock icon shows the main window
2010-04-14 21:27:27 +00:00
David Sansome af07b5becd Store the playlist in the database. This is still quite slow. 2010-04-14 21:03:00 +00:00
John Maguire dc782cfa5b Make the Settings menu disappear on OS X. 2010-04-14 20:06:06 +00:00
John Maguire 398107fe67 Disable system tray on mac and popup menu from dock icon.
Remove sqlite plugin from deployment script.
TODO: Factor out system tray/dock rather than tons of ifdefs.
2010-04-14 19:38:09 +00:00
David Sansome b63fcb0b10 Add the new languages to the buildsystem 2010-04-14 16:50:18 +00:00