John Maguire
0822482b4d
Respect XDG_CACHE_HOME for network & moodbar cache.
...
Fixes issue #3264
2012-11-06 15:38:40 +01:00
Veniamin Gvozdikov
95dc49ac77
Fix IsLaptop() check on FreeBSD.
...
Fixes issue #3244
2012-10-31 13:30:23 +01:00
David Sansome
9fae3881ed
Add a new "Playlists" tab to the sidebar that contains all the playlists created by or imported into Clementine. The tab bar now contains only "open" playlists - closing a tab closes the playlist without deleting it.
...
Update issue 1811
Added a Playlists tree view to the sidebar.
2012-10-30 23:04:22 -07:00
John Maguire
6cadc9321d
Remove legacy config file migration code for mac.
2012-10-29 12:47:59 +00:00
John Maguire
1abd9c3821
Fix the types of some MPRIS metadata fields.
2012-10-15 11:40:18 +02:00
John Maguire
20196edcac
Ooops.
2012-10-11 16:18:14 +02:00
John Maguire
d674d9ecf7
Implement MediaPlayer2.Playlists from MPRIS2.
...
Fixes issue #3194
2012-10-11 15:38:51 +02:00
John Maguire
4de0b93305
Add Fullscreen/CanSetFullscreen properties for MPRIS 2.2
2012-10-11 13:45:42 +02:00
John Maguire
a56947e356
Add support for new musicbrainz cover art archive.
...
See: http://blog.musicbrainz.org/?p=1616
2012-10-10 14:45:13 +02:00
John Maguire
a1361dfa7e
Enable fullscreen support for OS X 10.7+
...
Fixes issue #2329
2012-10-09 14:56:17 +02:00
John Maguire
606bf71208
Disable automatic conversions to QUrl from strings.
2012-09-26 17:09:13 +02:00
John Maguire
6dbd0baafc
Remove conditional code for Leopard.
2012-09-26 12:38:32 +02:00
Arnaud Bienner
f51ac3f970
Actually check if a file exists to know if it's local or not (therefore set the scheme to "file" therefore interpret it correctly in SongLoader)
...
URLs with ":" were sometimes wrongly interpreted as remote URLs. But some local files may have ":", and moreover on Windows all files have ":" because of the drive letter scheme.
2012-09-17 20:47:57 +02:00
John Maguire
340e6dabce
Use notification center on OS X when available.
2012-09-13 16:15:28 +02:00
David Sansome
5940b0ead1
Make SongKick results a bit prettier
2012-08-27 12:25:33 +01:00
Anand
1aec4a4c7f
When pressing the Previous button in Repeat Track mode, go to the previous track instead of repeating the current one. Fixes issue 2897
2012-08-26 13:11:28 +01:00
David Sansome
edb57e1b92
Add a constructor to DBusStatus to fix a build failure in release mode.
2012-08-20 10:28:29 +01:00
David Sansome
6fca8b1c3d
Fix some possible crashes when requesting MPRIS data during Clementine's startup
2012-08-17 14:41:57 +01:00
John Maguire
c5b74c832e
Add tasks for indexing Google Drive songs.
2012-08-06 14:00:54 +02:00
John Maguire
e06ae8a282
Support reading OGG & FLAC files from Google Drive.
2012-07-31 15:18:14 +02:00
David Sansome
9653a45f66
Read Google Drive metadata in the tagreader worker process
2012-07-28 19:35:12 +01:00
John Maguire
f48383c73e
Index Google Drive MP3s and write to local database.
2012-07-27 16:04:12 +02:00
Arnaud Bienner
0e3dc5a8be
Add new ConcurrentRun templates for void functions, and functions with 3 arguments + corresponding test cases.
...
+ SongLoader now has its own QThreadPool to load folders/playlist in background.
Update issue 2598
This should fix slowliness problems reported.
2012-07-16 00:06:55 +02:00
David Sansome
73792668eb
Check for the length of a track being <= 0 instead of == 0 when seeking.
2012-07-15 12:17:44 +01:00
Arnaud Bienner
7f89e8832e
When loading songs aync, always load the first song of our list, as it may be played immediately once added to the playlist
...
Fixes issue 2598
2012-07-14 00:53:42 +02:00
David Sansome
497928d693
Don't try seeking a song if there's no song playing, or the song isn't seekable.
...
Fixes issue 3041
2012-07-10 15:00:47 +01:00
David Sansome
abe8d10b9c
Add a compatibility header so liblastfm and liblastfm1 can both be used with the same source.
2012-06-28 18:40:20 +01:00
Harald Sitter
769baa5c16
Use liblastfm1
2012-06-28 18:40:20 +01:00
Arnaud Bienner
b49c3db6e0
Sort retrieved GS songs only in some cases.
...
Indeed, even it makes sense sometimes (e.g. for playlists) it doesn't make sense at all for search results...
Make the sorting function part of Song.
2012-06-27 01:55:51 +02:00
John Maguire
74fe419659
Factor out metatype registration.
2012-06-20 15:07:28 +02:00
David Sansome
413f3b5186
Scale the missing cover image in the Edit Tag dialog, and don't overwrite the art_automatic field when reloading metadata.
2012-06-17 16:55:19 +01:00
David Sansome
21fbd40f9f
Don't try to initialise the library model until after the grouping settings have been read from the config. Fixes issue 3005
2012-06-16 20:54:08 +01:00
David Sansome
404deff537
In RedirectFollower, don't emit readyRead() from replies that contain a redirect header. Fixes issue 3000
2012-06-14 13:50:49 +01:00
John Maguire
b237d436d1
Remove obsolete code for unicode sqlite LIKE.
2012-06-11 12:05:31 +02:00
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
69980c80da
Use g_signal_parse_name instead of g_signal_lookup in CheckedGConnect to support connections that look like "signal-name::detail". Also use qFatal() instead of Q_ASSERT(0).
2012-06-09 14:23:21 +01:00
John Maguire
cbc650f44b
Use CHECKED_GCONNECT instead of g_signal_connect everywhere.
2012-06-08 15:34:00 +02:00
John Maguire
80ab12aeff
More concise checking of callback param counts.
2012-06-08 15:13:23 +02:00
John Maguire
ae4898655d
Add support to gsignal checker for more parameters.
2012-06-08 14:30:31 +02:00
John Maguire
2da6c40fb5
Add runtime checker for gsignal callback arguments.
2012-06-08 14:27:38 +02:00
David Sansome
abdc6d8844
Add moodbar settings to the settings dialog
2012-05-27 23:56:40 +01:00
David Sansome
b03563f317
Make it possible to compile out moodbar support
2012-05-27 21:33:05 +01:00
David Sansome
51229b88c5
Create or load moodbar data for songs
2012-05-25 17:18:07 +01:00
Arnaud Bienner
4caa3fc17e
Mutex-lock DB to avoid concurrent access while doing backup DB, as it will be actually locked the DB, and what make Clementine stop if we try to modify it (e.g. add a new playlist)
2012-05-20 21:54:17 +02:00
Kacper "mattrick" Banasik
f606ae9ba8
Add an option to prefer AlbumArtist tag over Artist when scrobbling to Last.fm. Fixes issue 2901
2012-05-13 16:05:17 +01:00
Arash Abedinzadeh
36903ee17f
Fix missing boundary check for PlayTrack DBus method.
...
Fixes issue #2914
2012-05-07 12:26:13 +02:00
John Maguire
133c2e1640
Postpone the database check & backup to a little while after startup.
2012-04-13 15:49:56 +02:00
John Maguire
e9ace3a2cb
Support loading a spotify URL from the command line.
2012-03-22 16:55:05 -07:00
john.maguire
cd193b0d7f
Fix typo in cast.
2012-03-17 15:11:21 +00:00
John Maguire
2078eff8f3
Fix misleading error message.
2012-03-16 15:47:25 +01:00
John Maguire
9ed8ab63aa
Run a database backup on startup after the integrity check.
...
Update issue #2743
Database backup now run on startup, still needs a way to restore.
2012-03-16 14:52:03 +01:00
Marti Raudsepp
9cf279f5a3
Run database integrity check on startup
...
Update issue #2743
Integrity check now run on startup
2012-03-15 16:01:57 +01:00
John Maguire
ab0ae4414b
Alphabetically sort SomaFM streams.
...
Fixes issue #2807
2012-03-15 15:42:22 +01:00
David Sansome
204f7acbfa
Merge branch 'podcasts'. Fixes issue 44
2012-03-12 19:40:31 +00:00
David Sansome
5327b72f0b
Implement the "Delete after x days" feature for listened podcasts.
2012-03-12 19:35:47 +00:00
John Maguire
63ee8b2e55
Update a couple of old debug statements.
2012-03-12 17:25:05 +01:00
John Maguire
c91024ad33
Add support for NSObject to QDebug.
2012-03-12 17:25:04 +01:00
John Maguire
8e89838621
Support loading multiple files or a folder from dropping on the Mac dock icon.
...
Fixes issue #2787
2012-03-12 17:24:53 +01:00
David Sansome
09dfd31630
Add a qHash(QUrl) overload for Qt < 4.7
2012-03-12 14:10:16 +00:00
David Sansome
2750877a72
Support iTunes and Zune podcast URL schemes through SongLoader
2012-03-11 18:14:53 +00:00
David Sansome
f16fc8867e
Allow podcasts to be added through the normal SongLoader mechanism (dragging to the playlist, on the commandline, "Add Stream", etc.)
2012-03-11 17:57:15 +00:00
David Sansome
c27b8a5e95
Fix some broken behaviour in SongLoader when loading a playlist that was bigger than one GstBuffer. The pipeline would be stopped early because it was still asynchronously moving to the PLAYING state.
2012-03-11 17:20:12 +00:00
David Sansome
d538b71809
Add buttons and menu items to open the Podcast settings page. Also route these requests through Application rather than InternetModel
2012-03-10 22:39:24 +00:00
David Sansome
792a2e239d
Better (some) UI feedback of downloading podcasts. Also fix a bug parsing the timestamps you see in some RSS feeds
2012-03-10 21:06:16 +00:00
David Sansome
b0dd1bd284
Add a podcast downloader
2012-03-10 15:32:36 +00:00
David Sansome
1fc8b85ff6
Fix compilation on Windows
2012-03-09 18:40:51 +00:00
John Maguire
62ea8bd4eb
Detect battery presence on Mac.
2012-03-09 17:29:55 +01:00
David Sansome
1abf059d16
Add a Podcasts settings page and the start of some gpodder.net syncing
2012-03-09 15:26:38 +00:00
David Sansome
b9e08bbfe6
Update podcasts on a schedule and on demand. Update them immediately after subscribing, and make episodes appear in the tree.
2012-03-09 15:26:15 +00:00
David Sansome
f2885c0319
Return more useful aggregate information from the PodcastBackend, show something in the Internet service
2012-03-06 18:40:17 +00:00
David Sansome
c91acdb3f1
Add an Add Podcast dialog
2012-03-06 18:39:34 +00:00
David Sansome
90bbed1ec9
Add podcast parsing and database classes
2012-03-06 18:39:23 +00:00
John Maguire
5ddf9bcf41
Postpone FSEvent stream updates to avoid churn when adding large numbers of directories.
2012-03-06 12:53:20 +01:00
David Sansome
b53578c490
Don't reset a song's rating back to 0 if it was edited in the EditTagDialog
2012-03-04 13:36:22 +00:00
David Sansome
ab5ccf69da
Refactoring: remove BackgroundThread
2012-02-26 15:05:46 +00:00
David Sansome
bacef04405
Refactoring: remove a couple of the AlbumCoverLoader instances and instead use a shared CurrentArtLoader.
2012-02-26 14:40:51 +00: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
John Maguire
47e437383e
Remove unnecessary includes.
2012-02-02 14:08:14 +01:00
John Maguire
3e65d3d5f0
Add ScopedNSAutoreleasePool from Chromium.
2012-01-31 13:54:03 +01:00
David Sansome
facb366017
Remove subdirectory watches after a directory is removed from the library. Otherwise subdirectories that changed after the directory was removed would be re-scanned and re-added.
2012-01-29 17:39:28 +00:00
David Sansome
0335d57a0f
Improve pipeline buffering: on an underrun event playback will now pause until the buffer is completely full. Fixes audio stuttering on when listening to radio streams on slow networks.
2012-01-23 15:01:39 +00:00
David Sansome
58c0f464cd
Queue messages in WorkerPool instead of in each individual handler, so the entire queue isn't lost if a worker crashes.
2012-01-22 18:53:17 +00:00
Руслан Ижбулатов
5c45e22e28
Make SAC and WMDM optional
2012-01-22 14:35:22 +00:00
John Maguire
17c8189dcf
Add and use scoped_cftyperef from Chromium.
2012-01-20 15:46:33 -08:00
John Maguire
87b94de0d7
Save background stream state as soon as it is changed.
2012-01-20 15:24:43 -08:00
John Maguire
e83616ad09
Fix build on Clang.
2012-01-19 15:33:16 -08:00
Alan Briolat
66cc5d432e
Add pretty printer for Qt enums.
2012-01-19 14:20:26 -08:00
Arnaud Bienner
da35fab076
Save default QApplication palette when starting Clementine
...
Update issue 2603
Hopefully, this will fix this issue for other systems this time...
2012-01-14 16:27:49 +01:00
Arnaud Bienner
97d8365c56
Also refresh stylesheet when chanfing application's QPalette
2012-01-14 16:27:36 +01:00
Arnaud Bienner
22d1608bdc
Explicitly use a default QPalette
...
Update issue 2603
Hopefully, this fixes this issue
2012-01-12 23:01:05 +01:00
John Maguire
dfdb71b164
Make it so!
...
Fixes issue #2527
2012-01-10 17:00:17 +01:00
Arnaud Bienner
b08567b697
Merge commit '710536ad506d' into appearance
2012-01-09 20:24:26 +01:00
Arnaud Bienner
c2d794c014
Merge branch 'master' into appearance
2012-01-09 20:15:10 +01:00
Arnaud Bienner
ea063e1c39
Add missing modifications
2012-01-09 20:08:09 +01:00
Arnaud Bienner
710536ad50
Start working on UI customization. Allow user to change global background/foreground colors. Some work still required to update all components' colors
...
Update issue 219
Started!
2012-01-09 00:01:01 +01:00
David Sansome
68a379ef26
Use pb::spotify instead of spotify_pb for the protobuf namespace
2012-01-07 23:26:27 +00:00
David Sansome
ccb3a0aa3a
Show a detailed error when the tagreader executable couldn't be started.
2012-01-07 22:58:30 +00:00
David Sansome
31f423a0ff
Fix a compilation error
2012-01-07 22:58:19 +00:00
David Sansome
4618651cf4
Merge branch 'master' into external-tagreader
2012-01-07 22:52:18 +00:00
David Sansome
e9c0b4bd69
Musicbrainz tagging improvements:
...
* Fix a bug where the song title would be used for the album field
* Get the album's year as well
* Include all releases for a song in the results list
* Remove duplicate albums
* Sort results
2012-01-07 21:51:02 +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
9041117867
Move everything around in the source tree - static libraries and external binaries now go in "ext/". Add a generic worker pool.
2012-01-05 23:25:13 +00:00
David Sansome
85f2f087cb
Start work on moving everything that uses taglib out into an external process.
2012-01-05 23:24:48 +00:00
John Maguire
483c36748e
const& and tweaks to Mac directory canonicalisation.
2012-01-05 16:11:39 +00:00
John Maguire
761737eb4d
Add more robust subdirectory detection in LibraryWatcher.
2012-01-05 15:56:46 +00:00
John Maguire
97f3885f58
Add copyright headers.
2012-01-05 15:08:15 +00:00
John Maguire
55e9fd8dc3
Disable watching for FS updates when requested.
2012-01-05 15:01:43 +00:00
John Maguire
9fdfb52225
Use FSEvent-based filesystem watcher on Mac.
2012-01-05 14:51:23 +00:00
David Sansome
4cbc221f00
Don't set a "file" url scheme on files in devices that already have URL prefixes (like afc:// for iPod Touches)
...
Fixes issue 2564
2012-01-04 22:11:42 +00:00
John Maguire
0139f36e2d
Add scoped_nsobject from Chrome.
2012-01-04 15:33:12 +00:00
John Maguire
3f0c779308
Add QObject constructor.
2012-01-04 15:26:22 +00:00
John Maguire
96aa95bebd
Add filesystem watcher using Mac FSEvents API.
2012-01-04 15:24:53 +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
54df30c15d
Remove the global search popup for now until it can be made a bit prettier
2011-12-12 20:49:09 +00:00
Eike Hein
e613f86acf
Don't report version number in MPRIS2 Identity.
...
Fixes issue #2447
2011-12-01 09:28:11 +00:00
David Sansome
22e6a649b7
Remove the custom gstspotifytcpsrc and use tcpserversrc ! gdpdepay to receive data. Use a gstreamer pipeline on the other end as well to send data.
2011-11-28 18:45:12 +00:00
John Maguire
e9d770a864
Remove pjsip/stun code and make PortForwarder at least compile.
2011-11-28 16:22:13 +01: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
Angus Gratton
edb9b0b4fe
Add album effective_artist filter that falls back to artist when unavailable (Issue 509)
2011-11-28 11:04:38 +00:00
David Sansome
be4e70a9b1
Don't crash when using Player::PlayAt to play an index that doesn't exist. Fixes issue 2330
2011-11-27 22:24: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
8334484c1e
Fix some symbol naming conflicts that happen when including windows header files (taglib >1.7 brings them in for us).
2011-11-27 19:43:07 +00:00
David Sansome
7444f437aa
Fade out tracks properly when changing between two URLs that have registered URL handlers (like spotify and grooveshark).
2011-11-27 16:35:36 +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
Angus Gratton
5ee9961d4f
Fix bug w/ Organize deleting old files
...
Fixes issue #1806
2011-11-25 15:28:43 +01:00
Arnaud Bienner
cc20e6b6ae
Use task manager on most GS actions
2011-11-23 01:07:40 +01:00
Arnaud Bienner
fdad2bd706
Make the async load of folders thread-safe
2011-11-18 21:55:54 +01:00
David Sansome
13ae806005
Only use the Unity hack on Ubuntu. Fixes issue 2198
2011-11-13 00:40:29 +00:00
Arnaud Bienner
2511a97077
Add an index on filename on songs table. Particullary, this heavily speed up the 'Add folder' usecase
2011-11-12 19:33:50 +01:00
David Sansome
53f1f6509b
Fix URLs in device tables as well when upgrading
2011-11-12 17:15:10 +00:00
Arnaud Bienner
48db13b353
Make Playlist's InformOfCurrentSongChange public and use it when updating item instead of using UpdateItems (which will create a new item)
2011-11-11 02:42:48 +01:00
John Maguire
85ab8e260a
Restore Qt 4.7 behaviour by adding a content type to POST requests that don't have one.
2011-11-10 23:42:34 +01:00
John Maguire
8e4ec35c61
Fix playlist detection when playlist size is < 512 bytes.
...
Fixes issue #2319
2011-11-10 21:42:40 +01:00
John Maguire
ed0e6ba898
Lion build fixes
2011-11-10 20:56:49 +01:00
John Maguire
a57d947a33
Show global shortcuts dialog on Lion.
...
Fixes issue #2104
2011-11-09 13:59:25 +01:00
David Sansome
e3b7afbdf2
Add "Your radio streams" global search provider
2011-11-06 15:00:50 +00:00
David Sansome
8c69094931
Add a generic class for the "cached list of stuff" pattern used by last.fm and di.fm/sky.fm for keeping friend lists or stream lists around and refreshing them after a certain length of time
2011-11-06 00:02:32 +00:00
Arnaud Bienner
860d355f00
Ability to add a Grooveshark song to Grooveshark user's favorites
2011-11-02 00:02:49 +01:00
Arnaud Bienner
85ea3fe37f
Add songs to Grooveshark playlists by drag and drop
2011-10-30 23:59:43 +01:00
John Maguire
a1ece63f3a
Use URLs for openInFileBrowser.
2011-10-26 14:54:24 +02:00
John Maguire
cc986b7177
Update show in file browser to work with URLs.
...
Fixes issue #2002
2011-10-26 14:43:28 +02:00
David Sansome
9a739a3346
Add a DBus interface onto the global search engine, and add a KDE krunner plugin that performs global searches in Clementine.
...
This is optional and is not compiled unless you have the plasma developer packages installed.
2011-10-19 23:17:24 +01:00
David Sansome
da825d4659
Make clicking outside the global search tooltip work again
2011-10-15 21:57:08 +01:00
David Sansome
4cabb98b43
Fix compilation of the gnome global shortcuts backend when dbus isn't available
2011-10-15 20:49:53 +01:00
David Sansome
ce501d982a
Don't show the global search popup immediately when clicking in the search field, making it possible to double click the search box to select all text.
2011-10-15 20:48:48 +01:00
David Sansome
2bffe1fa82
Register and unregister for media key notifications properly from the gnome settings daemon
2011-10-14 22:01:25 +01:00
John Maguire
a526c7c13d
Make closures non-copyable.
2011-10-06 14:45:55 +02:00
John Maguire
265b174dc9
Fix warning on GCC 4.6
2011-10-06 14:24:33 +02:00
John Maguire
5e343611bf
Add some asserts to closure.
2011-10-06 13:19:42 +02:00
John Maguire
a6e8797b9d
Add some syntactic sugar to closures.
2011-10-06 13:11:18 +02:00
John Maguire
e77de84451
Add a closure variant using tr1::function. This may break the build...
2011-10-05 14:55:39 +02:00
John Maguire
fc34a244c6
Tidy up closure implementation.
2011-10-05 11:36:08 +02:00
John Maguire
20a967a19f
Basic working closure implementation.
2011-10-04 18:26:40 +02:00
Arnaud Bienner
4143823870
Get GrooveShark songs' length (give the ability to seek through stream). markStream and markSongComplete, as resquested by GrooveShark
2011-10-02 12:05:56 +02:00
Casey Jones
a49e2828e6
Display album art from FLAC tags
2011-09-28 00:16:02 +01:00
David Sansome
53e175e503
When stopping due to "Stop after this track", set the current song to the one after, so when the user presses Play it plays the next song instead of the last one again.
2011-09-27 23:31:15 +01:00
David Sansome
54016a8286
Add missing --help text for --search-popup
2011-09-25 11:53:42 +01:00
Arnaud Bienner
2406fdabf6
Check pointer nullity
2011-09-22 19:50:43 +02:00
Arnaud Bienner
399829291d
Merge branch 'master' of https://code.google.com/p/clementine-player into grooveshark
...
Conflicts:
data/data.qrc
2011-09-20 00:37:20 +02:00
David Sansome
e10efbc484
Make "Add and play now" work
2011-09-18 23:26:21 +01:00
John Maguire
b0c880d444
Adds --search-popup command line option.
2011-09-16 16:19:52 +02:00
Arnaud Bienner
99fdba877e
Merge branch 'master' into grooveshark
2011-09-02 00:35:40 +02:00
Arnaud Bienner
096680c576
Add Hmac for MD5
2011-09-01 23:45:47 +02:00
John Maguire
551a85cb9b
Add missing copyright headers.
2011-09-01 16:07:07 +01:00
John Maguire
c2d68fd697
Basic search popup triggered by a global shortcut.
2011-09-01 14:23:16 +01:00
John Maguire
85e101c8a7
Fix the global shortcut grabber on Mac.
2011-09-01 14:10:30 +01:00
David Sansome
2cbe90c2e5
When playing a last.fm stream, don't scrobble the next item in the playlist in between each track of the last.fm stream. Fixes issue 1943
2011-08-28 02:59:19 +01:00
David Sansome
195f618bf2
When organising files, make %albumartist behave as %artist if the song has no albumartist tag set.
2011-08-28 00:02:41 +01:00
David Sansome
1d098a40b8
Revert commit ddfb90a0a1
, and always delete files from disk rather than sending them to trash.
2011-08-27 23:54:55 +01:00
David Sansome
5884502389
Fix a bug loading where song metadata wouldn't be loaded from the library when loading a local file containing spaces. Fixes issue 2192
2011-08-27 22:51:30 +01:00
David Sansome
7e0e4e48e4
When loading a CUE from disk that isn't in the library, don't overwrite the metadata of its first song with the metadata from the audio file. Fixes issue 2092
2011-08-27 22:29:35 +01:00
Arnaud Bienner
5cbb86f247
Use toEncoded instead of toString in SQL query
2011-08-19 22:37:59 +02:00
Arnaud Bienner
f319a615d9
Use url when checking if a file is already in DB instead of filename when loading files (this usecase has been missed when we have decide to use urls everywhere)
2011-08-18 22:43:52 +02:00
David Sansome
082716e9c9
Don't try to compile audio CD support if libcdio isn't installed.
2011-08-10 16:30:36 +01:00
David Sansome
ae4cfeff1c
Always assume Icecast-style stream metadata is in the "Artist - Title" format, as this seems more common. Remove the hacks for soma.fm and stations from the icecast list. Fixes issue 1035
2011-07-26 15:56:19 +01:00
David Sansome
b628c2a26e
Use a template function instead of a macro
2011-07-26 13:22:23 +01:00
David Sansome
c366f722fb
Show the album cover dimensions on top of the images in the album cover search dialog.
...
Fixes issue 1704
2011-07-26 13:02:59 +01:00
David Sansome
5c90404915
Sort album covers by image size. Fixes issue 2048
2011-07-26 12:17:28 +01:00
David Sansome
a1062eb96f
Add sha256 and hmac-sha256 functions
2011-07-23 19:33:00 +01:00
David Sansome
9fadf57acc
Revert "Move TaskManager::Task and UrlHandler::LoadResult structs out of their parent classes - PythonQt doesn't understand nested structs."
...
This reverts commit 5234798a7f
.
2011-07-23 15:32:12 +01:00
David Sansome
dd3eee63e5
Remove python scripting support
2011-07-23 15:32:12 +01:00
Tyler Rhodes
ded8e5f6f0
Refactor "Radio" files into "Internet" files.
2011-07-15 13:27:50 +00:00
David Sansome
c8305c0eee
Don't record an undo step when all the songs inserted into the playlist were vetoed. Thanks schizosfera.
2011-07-01 20:48:18 +00:00
John Maguire
6e86caae2c
Define QT_STRICT_ITERATORS and fix the associated bugs.
2011-06-20 15:08:06 +00:00
David Sansome
36165ea9bf
Keep the state of the rain and hypnotoad menu actions in sync with whether they're actually playing. Fixes issue 1986
2011-06-19 14:42:00 +00:00
David Sansome
67f41ef886
Oops, remove some unused dbus includes
2011-06-18 22:05:35 +00:00
David Sansome
fd7d24b11a
Add Clementine to the Unity system tray whitelist on startup.
2011-06-18 19:08:09 +00:00
David Sansome
7415d85dce
When initialising a song from a library query, don't always assume the metadata originally came from a file (which means icycast tags are ignored when it is played). Fixes issue 1857
2011-06-17 20:00:10 +00:00
David Sansome
99390486bf
Show a song's URL in the title playlist column if it doesn't have a title or base filename.
2011-06-17 19:32:03 +00:00
John Maguire
25587286b2
Fix error when unref'ing cdda element after failing to read CD.
2011-06-15 19:28:25 +00:00
Arnaud Bienner
7fca5d37dc
Minor modifications on load audio CD, including better cleaning of objects
2011-06-14 23:38:43 +00:00
David Sansome
563de288ba
Encode URLs properly when doing the DB schema conversion to store filenames as URLs
2011-06-14 14:46:02 +00:00
Tyler Rhodes
a452971708
Change Mac media keys to respond on key release. Fixes issue 1985.
2011-06-13 10:20:37 +00:00
Tyler Rhodes
80abba66ca
Fix my compile fix in r3373
2011-06-10 09:37:50 +00:00
John Maguire
4917ae8f4f
Fix compile error.
2011-06-10 09:35:03 +00:00
Tyler Rhodes
006e085b7d
Fixes 64-bit compile issue from r3372
2011-06-10 09:19:30 +00:00
Arnaud Bienner
272841ab73
Starting audio CD support. Starts issue 701
2011-06-09 23:08:43 +00:00
Andrea Decorte
527171fadb
Toggle visibility for Pretty OSD by command line and global shortcut.
...
Fixes issue 1344
2011-06-05 08:21:17 +00:00
John Maguire
97a8aa54be
Use SPMediaKeyTap for global media keys on Mac.
...
Thanks to: tyler.s.rhodes@gmail.com
2011-05-30 10:09:34 +00:00
David Sansome
7de618beff
Fix registration of metatypes for list handlers on Qt 4.7
2011-05-29 14:08:55 +00:00
John Maguire
54a79f0665
Always pause on --pause.
...
Fixes issue #1599
2011-05-26 15:40:53 +00:00
John Maguire
799279afcd
Untested attempt to read album artist tags from ogg/flac/mp4 properly.
...
Fixes issue #1624
2011-05-26 15:30:42 +00:00
David Sansome
7228eb8676
Buffer stdout and stderr properly, and integrate with python's logging module
2011-05-22 11:48:12 +00:00
David Sansome
5234798a7f
Move TaskManager::Task and UrlHandler::LoadResult structs out of their parent classes - PythonQt doesn't understand nested structs.
2011-05-21 10:43:25 +00:00
John Maguire
8dd745895a
Add --version command line flag.
...
Fixes issue #1867
Thanks to: tyler.s.rhodes@gmail.com
2011-05-16 19:21:46 +00:00
David Sansome
792352be3b
When songs disappear from the filesystem (either they're deleted or are on a removable media that was unmounted), mark them as unavailable instead of removing them from the database. Thanks google@robbertkrebbers.nl. Fixes issue 401
2011-05-14 13:43:57 +00:00
David Sansome
3deb371537
If the spotify blob isn't installed, try to download it from the Clementine website. Also, make the blob separate from the core Spotify code in Clementine so you can build the core code without building the blob
2011-04-29 19:44:51 +00:00
David Sansome
5efe63462c
Get album art for Spotify tracks
2011-04-29 13:41:42 +00:00
David Sansome
06852aaeb7
Show spotify search results in a separate playlist tab rather than in a tree in the sidebar.
2011-04-28 17:50:45 +00:00
David Sansome
255682b057
Remove the special load behaviour from Playlist Items and instead add URL Handlers that do the same job but for all playlist item types.
2011-04-28 15:10:28 +00:00
David Sansome
ccb9f8cf94
Use URLs everywhere instead of filenames. Move the URL parsing and song loading code out of individual playlist parsers and into the base class. Fix the playlist parser unit tests.
2011-04-28 12:27:53 +00:00
David Sansome
b15156a7a3
Handle bigger protobuf messages, add spotify searching to the UI
2011-04-27 16:38:28 +00:00
David Sansome
3d6677fe6d
Allow radio services (Spotify) to store whole songs in playlist items
2011-04-26 22:06:58 +00:00
David Sansome
2bec9a00fc
Add license headers to all the spotify source files and obfuscate the API key
2011-04-26 13:43:13 +00:00
David Sansome
e152e3a3e3
Start of some spotify support - builds a binary blob linked against libspotify that Clementine starts as a separate process.
2011-04-25 19:16:26 +00:00
David Sansome
101985defa
Fix a build failure with glib >= 2.25
2011-04-22 17:52:09 +00:00
David Sansome
5a2f522895
Fix compilation on release builds
2011-04-22 17:17:37 +00:00
David Sansome
3eedc916ad
Add a new logging system
2011-04-22 16:50:29 +00:00
David Sansome
8f4c1dbbf6
When doing gapless playback, fix a bug where the TrackEnded signal would be emitted too early, before the track had actually ended. This caused the song after the current song to get scrobbled and its playcount increased. Fixes issue 1771
2011-04-17 14:11:37 +00:00
David Sansome
12b6bbd166
Scrobble radio streams even if we don't know the length of each individual part. Fixes issue 681
2011-04-16 15:13:53 +00:00
Arnaud Bienner
f7e614684d
Minor modifications thanks to David' comments. Adding some comments to explain the new process: hope it's clearer now
2011-04-16 15:06:13 +00:00
Arnaud Bienner
65ef047c38
Loading file in async way, in two times: fast loading files and insert them in playlist view, while loading info (tags, ...) in background thread
2011-04-16 14:04:15 +00:00
David Sansome
8d6f818d25
Maybe fix an assert when connecting WMDM devices
2011-04-16 13:39:31 +00:00
Andrea Decorte
5d8f1fe872
Added scrobbling button in main window and a global shortcut for
...
toggling it. Fixes issue 1090
Improved last.fm error handling
2011-04-07 16:25:52 +00:00
John Maguire
18bfa12042
Add the beginnings of an ICE socket implementation.
...
Currently, it can be demoed using --stun-test and the icedemo from pjsip as the other client.
TODOs:
Add ability to do a full demo using only 2 clementine instances.
Complete session initiation over XMPP.
Add local & port forwarded sockets as options.
2011-04-07 13:38:27 +00:00
Paweł Bara
032b5f7e48
initial commit of "multiple covers providers" feature:
...
- simple API for cover providers (both C++ and SIP)
- a new "package" for cover related code
2011-04-02 13:34:06 +00:00
David Sansome
a10d396f22
Fix the InsertUrls dbus method so it inserts tracks at the end of the playlist and plays them again.
2011-03-31 18:47:25 +00:00
David Sansome
e5bc2be85f
Add some more debugging output for deciding when to scrobble a song
2011-03-29 21:12:49 +00:00
David Sansome
f416c27483
Fix a compiler warning in mpris1.cpp
2011-03-29 19:05:04 +00:00
David Sansome
7d6eee590a
Don't force the track to stop at the end of a section unless it's part of a cue sheet. Fixes issue 1610. Fixes issue 1636.
2011-03-28 22:11:07 +00:00
David Sansome
f2ddc92a0d
Maybe fix the mac build without breakpad
2011-03-26 17:36:13 +00:00
David Sansome
0968e6680b
Oops, Fix a compile error
2011-03-25 21:52:56 +00:00
David Sansome
a707b4c502
Add a little bit of debugging output for system proxy URLs on linux
2011-03-25 20:13:04 +00:00
John Maguire
d86dce4b96
Add support for Google breakpad on mac. (Uploading crash reports doesn't work yet due to redirect).
2011-03-25 11:38:03 +00:00
David Sansome
d50cfaed46
Add google breakpad to 3rdparty, and gather crash reports
2011-03-23 21:53:24 +00:00
Jonathan Anderson
ddfb90a0a1
clementine Issue 858
2011-03-23 11:23:55 +00:00
John Maguire
b767c1ccf2
Fix display of stopped stream when stopped via play/pause shortcut.
2011-03-21 17:07:15 +00:00
John Maguire
eceb4164c1
Add more trayicon mouse wheel actions.
...
Update issue 1597
Status: Fixed
Thanks for the patch!
2011-03-21 15:15:17 +00:00
Paweł Bara
e619d7a280
fixing a bug where streams were removed from playlist during Clementine's startup
2011-03-20 16:07:24 +00:00
Paweł Bara
bfb068a6d1
conditionally hide some context menu actions in library view and playlist view
...
Song.is_stream()
2011-03-20 12:43:10 +00:00
David Sansome
9086ab8ed4
Add a "Show in file browser..." to the library context menu as well. Fixes issue #1563
2011-03-17 19:52:21 +00:00
Andrea Decorte
4b6e2a8a62
Add global shortcuts for repeat and shuffle modes. Fixes issue #955
2011-03-17 08:21:05 +00:00
David Sansome
85502e5516
Don't crash at the end of the last song on a playlist
2011-03-14 20:04:33 +00:00
David Sansome
cb275f318f
Add an option to disable automatic crossfading between tracks on the same album or from the same cuesheet. Fixes issue 1479
2011-03-13 18:37:46 +00:00
David Sansome
f22f361f66
Revert "Do not cross-fade if two songs of the same CUE file are consecutively being played"
...
This reverts r2921.
2011-03-13 18:37:39 +00:00
David Sansome
002ae13817
Use the canonical file path (resolve symlinks and '..') when adding directories to the library, and when adding files to the playlist. Fixes issue #1494
2011-03-13 14:43:03 +00:00
David Sansome
d7dbd21438
Fixed some of the "metadata changed" when doing a library rescan
2011-03-13 13:40:24 +00:00
David Sansome
db8359838a
Set a timeout of 5 seconds on musicbrainz network requests. Fixes issue #1390
2011-03-13 13:17:35 +00:00
David Sansome
b51566cdd9
Remove the dependencies on libtunepimp, libofa, libmusicbrainz. Use the gstreamer ofa plugin instead to fingerprint songs.
2011-03-12 21:19:41 +00:00
Paweł Bara
c8c394d200
don't push new URL into engine in the CurrentMetadataChanged slot - send it the beginning and end markers only
...
this means that Clementine still skips broken songs while at the same time fixes issue #1565
2011-03-12 20:20:13 +00:00
Paweł Bara
e25e9efffc
Clementine now skips broken streams (radios for example). At least I hope it always does. ;) Fixes issue #1562 .
2011-03-12 13:24:30 +00:00
Paweł Bara
8722e00103
Clementine now skips songs that don't exist anymore (updates issue #250 )
2011-03-10 18:01:35 +00:00
John Maguire
19af887465
Disable automated tag encoding correction and instead just mark tags as "suspicious".
2011-03-06 16:39:36 +00:00
David Sansome
2cb8b8dba7
Stop cue sections at exactly the right place, and move seamlessly between consecutive sections of the same file. Fixes issue #1233 . Fixes issue #1419 .
2011-03-06 16:35:47 +00:00
David Sansome
c2445edad5
Add a "complete tags automatically" shortcut to the playlist context menu. Fixes issue #1532
2011-03-06 14:07:41 +00:00
Andrew Udvare
4fe36ad7b3
Do not test if both songs don't have CUE files
2011-03-06 03:31:04 +00:00
Andrew Udvare
dabeab9360
Do not cross-fade if two songs of the same CUE file are consecutively being played
2011-03-06 03:15:28 +00:00
David Sansome
285f2c9ff9
Add cross-links to the PyQt4 docs, document Song, NetworkAccessManager, PlaylistSequence
2011-02-27 17:16:22 +00:00
David Sansome
4471e27ef6
Python docs for PlaylistParser, and clean up the interface a bit
2011-02-27 12:14:32 +00:00
Paweł Bara
aa6c3ab35b
a way to mark DB schema versions as requiring a full library rescan
...
message dialog for a user when he's reached a full library rescan requiring schema version (like the final one of CUE sheet support)
2011-02-25 20:10:41 +00:00
David Sansome
b04fbf226c
Fix MPRIS2's CanPause() PlayPause() behaviour
2011-02-23 19:31:12 +00:00
John Maguire
2e286e4271
Fix broken signal in MPRIS1.
...
Fixes issue #1497
2011-02-23 11:11:17 +00:00
David Sansome
bab78c2b4f
Fix mpris2's PlayPause method
2011-02-22 20:13:02 +00:00
David Sansome
107b7b54f9
Add an extra line to the track slider popup to show the difference between the current time and the destination time.
2011-02-21 20:59:30 +00:00
Paweł Bara
e1d5abd83e
first step of making CUEs read only (playlist view)
2011-02-21 18:18:16 +00:00
David Sansome
72096bf1c8
Move ArtLoader from mpris_common.h to its own file, add libxrme to 3rdparty, add a working XMPP remote.
2011-02-19 18:24:11 +00:00
David Sansome
304ce97b16
Fix a crash bug in MPRIS2 if MPRIS1 couldn't register on the bus.
2011-02-19 18:24:05 +00:00
Paweł Bara
7de912d3a1
moving the responsibility for naming playlists into mimeData() methods (into models)
...
this means that pretty names for new playlists now also work when double clicking (in certain mode) or dragging and dropping
fixes issue #1477
2011-02-16 18:29:35 +00:00
John Maguire
b106979fb7
Use correct preferences file on OS X and migrate old config files.
2011-02-16 13:43:01 +00:00
Arnaud Bienner
7221d93888
Minor syntactic changes on tagfetcher
2011-02-14 22:26:58 +00:00
David Sansome
dadbb3e6e5
Oops again :(
2011-02-14 21:23:01 +00:00
David Sansome
8c691d2b3e
Use constants instead of "1eN" literals for converting between time units.
2011-02-14 19:34:37 +00:00
Paweł Bara
0182829223
user-friendly name for 'Open in new playlist' playlists (fixes issue #1445 )
2011-02-14 17:00:13 +00:00
David Sansome
e67f39cedb
Fix the windows build
2011-02-13 20:25:55 +00:00
David Sansome
f801252e3d
Refactor Player and PlaylistManagers to have interfaces and add more MPRIS1 tests
2011-02-13 18:37:45 +00:00
David Sansome
12da941885
Add a really basic unit test for MPRIS1
2011-02-13 18:37:21 +00:00
David Sansome
e18409ebf4
Factor out a PlayerInterface from Player, and use it in MPRIS1 and MPRIS2
2011-02-13 18:36:29 +00:00
David Sansome
507c5e2632
Change the fields in Song from seconds to nanoseconds
2011-02-13 18:34:30 +00:00
David Sansome
37618dae96
Use nanoseconds instead of seconds or milliseconds throughout the Player and Engine.
2011-02-13 18:29:27 +00:00
Paweł Bara
60ac6768b8
Fresh new 'open in new playlist' action (Updates issue #1431 ).
2011-02-09 17:51:59 +00:00
Paweł Bara
e08c6cc6a5
just a prettier expression
2011-02-05 13:45:40 +00:00
Paweł Bara
9a9d8ad177
don't let invalid CUE related media files into library (invalid == those which were not recognized by TagLib)
...
better logging of erroneous DB queries (error + query + bound values instead of just error)
2011-02-05 13:43:04 +00:00
John Maguire
4fb6f92ad4
Fix compile warning on mac.
2011-02-04 15:25:05 +00:00
John Maguire
084b9a2fe3
Remove taglib prefix from includes as the taglib include path contains it already.
2011-02-04 12:36:56 +00:00
Paweł Bara
ed4b7abde0
changed my mind - reverting my playlist changes to previous status quo (just making the PlaylistParser's contract more explicit)
...
this doesn't mean the previous revision was pointless - it still fixed one CUE related bug which I forgot to mention...
2011-02-03 22:21:15 +00:00
Paweł Bara
7bdac8fba6
when loading playlist, take only it's valid songs (+ force validity of CUE and PLS related songs)
2011-02-03 17:47:32 +00:00
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
John Maguire
9786570f35
Add support for saving album covers/kittens.
...
Fixes issue #1395
2011-01-31 20:53:38 +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
Arnaud Bienner
6c42240b02
Minor correction in tagfetcher. Thanks David
2011-01-29 15:32:55 +00:00
Arnaud Bienner
e9f19f2cdb
Correct regression introduced in r2705. Partially fixes issue 1390
2011-01-29 15:18:14 +00:00
David Sansome
bcc35ec29c
Add a test for stuff in the module's global dict
2011-01-28 21:43:10 +00:00
John Maguire
ba0c7bab65
Change "kittens" feature to fetch the kittens tag instead of cat tag for fluffier kittens.
2011-01-27 16:54:03 +00:00
John Maguire
703a3b43d6
Mac build fixes for musicbrainz integration.
2011-01-27 14:48:58 +00:00
David Sansome
f929a88473
Fix mpris
2011-01-24 21:25:09 +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
5e9edd52fe
Hold the taglib mutex while loading embedded cover art from files. Fixes issue #1350
2011-01-24 20:06:59 +00:00
Arnaud Bienner
03df8195b0
Minors modification on TagFetcher. Fixes issue #1346
2011-01-24 17:03:36 +00:00
David Sansome
4291d21eab
Load embedded cover art from ogg files. Thanks markwatkinson. Fixes issue #1232
2011-01-23 15:50:59 +00:00
David Sansome
795a4df422
Fix compilation on mac and windows
2011-01-22 14:13:56 +00:00
David Sansome
2ecf61a57e
Move everything DBus related back to the main thread and use synchronous method calls everywhere
2011-01-22 12:47:19 +00:00
Arnaud Bienner
729e8e729d
Adding track selection dialog for tag fetcher results. Also corrected tagfetcher to prevent from infinite loop when no result is found
2011-01-20 23:42:28 +00:00
Paweł Bara
1c1d9551bb
fixes issue #553 ('seek forward' and 'seek backward' hotkeys worked wrong)
2011-01-19 16:05:16 +00:00
Paweł Bara
a575dac451
restoring CUE related files in playlist after Clementine's restart (fixes issue #68 )
2011-01-19 15:36:40 +00:00
David Sansome
3f9dec3808
Add an "Install script from file..." button
2011-01-18 23:10:22 +00:00
Arnaud Bienner
abb93cd020
Minor modification to tag fetcher (including adding mutex to prevent crashes) and changing cursor during tag fetching
2011-01-17 22:58:16 +00:00
Paweł Bara
a883630ab3
duplicate remover script ( fixes #21 )
...
fix a scripting crash when one native object was registered more than once
veto mechanism for inserting songs into playlist
2011-01-16 23:46:58 +00:00
Arnaud Bienner
55f212a713
Oops..
2011-01-15 20:35:12 +00:00
Arnaud Bienner
d53e74a91f
Start auto tagging support (using MusicBrainz)
2011-01-15 20:00:39 +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
John Maguire
9249952b03
Only guess tag encoding for id3v1/2 tags.
2011-01-12 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
d922a75327
Add some more tracing to MPRIS registration on startup
2011-01-09 23:14:44 +00:00
David Sansome
380fa71e86
Do gnome global shortcut registration in a background thread
2011-01-09 23:11:51 +00:00
David Sansome
b3c211e26a
Move MPRIS setup to a background thread
2011-01-08 15:31:14 +00:00
Paweł Bara
9f95909848
exterminating a deceiving parameter name
2011-01-06 21:53:50 +00:00
Paweł Bara
55683887c0
implemented Seeked signal for MPRIS 2
2011-01-06 21:08:11 +00:00
Paweł Bara
3372340f6b
fixes the DesktopEntry() property of MPRIS 2
2011-01-06 19:29:54 +00:00
Paweł Bara
bb79a68be0
some minor .cue related changes
2011-01-04 17:12:29 +00:00
John Maguire
3f923d2cb1
Add default parameters to MPRIS constructors.
2011-01-04 11:53:37 +00:00
John Maguire
bde7902686
Refactor some initial setup out of MainWindow::MainWindow().
2011-01-04 11:33:22 +00:00
Paweł Bara
59378166b4
finalized the support for loading .cue based media using 'files' tab or drag and drop from the system's file browser
...
use FILE's PERFORMER as albumartist
2011-01-03 23:36:10 +00:00
Paweł Bara
bbe97b00a2
make engine 'multiple-section songs' aware -> you should now be able to play your .cue related music
2011-01-02 18:53:45 +00:00
David Sansome
5b1000834f
Add some basic script loading support and add python bindings for the Player class
2010-12-31 18:13:28 +00:00
David Sansome
b578c61b36
Fix loading songs with non-ascii characters in the filename on Windows. Fixes issue #1207 . Fixes issue #531 . Fixes issue #813 .
2010-12-30 17:13:11 +00:00
David Sansome
a9a8b849ca
Add some safeguards to the merged proxy model against dereferencing child models that have been deleted
2010-12-28 23:21:56 +00:00
David Sansome
d1d0236385
Make the "show full size" menu item in the now playing widget and edit tag dialog work with embedded covers
2010-12-28 22:20:54 +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
97d7fe764a
Download higher resolution images from last.fm. Thanks markwatkinson. Fixes issue #1187
2010-12-26 20:19:12 +00:00
David Sansome
35242f740e
Fix dbus
2010-12-26 17:24:44 +00:00
David Sansome
dc31a0be7e
Make it possible to disable all lyric providers.
2010-12-26 15:06:11 +00:00
David Sansome
fd00924f26
Fix parsing non-ascii filenames passed on the commandline (or through a file browser). Fixes issue #773 . Fixes issue #752 .
2010-12-26 14:54:46 +00:00
David Sansome
e3a9bd7b26
Make DBUS bits optional on Linux. Thanks Nickollai. Fixes issue #1177
2010-12-26 13:38:35 +00:00
David Sansome
6737b8a5c2
Always use the gstreamer engine, remove xine, vlc and phonon engines.
2010-12-26 13:01:35 +00:00
David Sansome
b5942aa7d6
Fix network access on linux without a proxy
2010-12-26 12:03:10 +00:00
David Sansome
ae9ada254c
Maybe fix build error
2010-12-25 17:41:18 +00:00
David Sansome
9b22f2ce40
Proxy support. Fixes issue #38
2010-12-25 17:25:29 +00:00
David Sansome
843cd92615
Increment play counts even if the song is shorter than 30 seconds. Fixes issue #1172
2010-12-25 13:37:45 +00:00
Paweł Bara
d7fe4600b8
an initial version of .cue sheets parser
...
initial support for multipart media files in Song ('beginning' and 'end' fields)
2010-12-23 21:13:43 +00:00
Arnaud Bienner
ccd26b4002
Removing trackSkipped when stopping: even if Amarok wasn't acting like this, in my opinion, a 'stopped' track should not be considered as 'skipped'
2010-12-21 00:38:07 +00:00
David Sansome
2d8028d89a
Use a smaller cover in the tray icon tooltip again. Fixes issue #1135
2010-12-19 15:04:22 +00:00
David Sansome
a6445f2fe7
Don't strip off file extensions in the OSD. Fixes issue #1066
2010-12-18 20:40:35 +00:00
David Sansome
c133a8db7c
Don't scale album art when saving it to /tmp. Fixes issue #1096
2010-12-18 19:42:06 +00:00
David Sansome
f1f0a384a5
Sort songs loaded from directories by filename if there are no other tags present. Fixes issue #1104
2010-12-18 18:47:44 +00:00
David Sansome
28fdb147d8
Make last.fm optional. Thanks volkov0aa. Fixes issue #49
2010-12-18 17:28:02 +00:00
David Sansome
623ab527ee
Maybe fix a crash when loading tags from MP3 files with encrypted frames
2010-12-18 17:01:25 +00:00
David Sansome
6ec77eadf6
Fix a display bug in the Last played column for songs that haven't been played in the last week. Thanks gmail@robbertkrebbers.nl. Fixes issue #1081
2010-12-18 16:50:00 +00:00
Paweł Bara
5893c27d2b
missing include failing on windows
2010-12-17 17:05:55 +00:00
Paweł Bara
32f9825794
global shortcuts for rating songs (Fixes issue #1089 )
...
renaming *index* methods in Playlist to *row*
2010-12-17 00:21:20 +00:00
Paweł Bara
4563c2dbd9
you can now use "file path" attribute when creating dynamic playlists (Fixes issue #1073 )
...
some more MPRIS 2 corrections (Updates issue #1058 )
2010-12-15 15:50:22 +00:00
John Maguire
f95d893945
Add support for building without Sparkle on mac.
2010-12-14 18:20:14 +00:00
John Maguire
21415ff230
Fix some mac ui and metadata bugs.
2010-12-14 15:00:46 +00:00
Paweł Bara
5082d81ba4
some corrections to MPRIS 2 (Updates issue #1058 )
2010-12-12 23:20:41 +00:00
John Maguire
f28d67966a
Fix flickr url for kittens.
2010-12-11 14:31:03 +00:00
David Sansome
01cccc0468
Cache the last emitted state from the engine to fix some invalid values being emitted over DBUS while a last.fm stream is buffering. Fixes issue #374
2010-12-11 13:38:51 +00:00
David Sansome
67452baa4d
Fix a crash when requesting an invalid playlist index over MPRIS. Fixes issue #1041
2010-12-11 10:58:15 +00:00
David Sansome
08b2bcc816
Always write URLs in XML based playlists, instead of URLs of relative paths. Also load playlist items from the library if possible. Fixes issue #1054
2010-12-11 10:35:07 +00:00
David Sansome
7650c1eddc
Remove "-session" from the commandline to fix session management on KDE. Fixes issue #769
2010-12-11 10:04:17 +00:00
John Maguire
5f6dcbe4b7
Early Caturday!
2010-12-10 14:26:29 +00:00
Arnaud Bienner
6b35eea469
Moving emitTrackSkipped from Next to PlayAt, to handle cases where user doesn't use Next button to skip a track. Also emit TrackSkipped in Stop if track was not ended
2010-12-10 00:11:38 +00:00
John Maguire
81f43ac4f5
Unbreak the build.
2010-12-09 14:19:09 +00:00
John Maguire
4c66007e26
Code review comments from r2370.
2010-12-09 13:06:00 +00:00
John Maguire
3a19bb9d46
Fix config file location on Mac and automatically migrate.
2010-12-09 12:34:08 +00:00
Paweł Bara
04bbf73cff
MPRIS' TracklistChanged event now contains the length of the playlist that has actually changed (Update issue #374 )
...
the PlaylistChanged event now shows which playlist has changed
2010-12-08 00:09:17 +00:00
Paweł Bara
6bf3162449
some MPRIS 1 bugfixes (Updates issue #374 )
...
also:
- PlaylistSequence: RepeatMode and ShuffleMode are changed before change event is emitted
- PlaylistManager: emits an event after it has been initialized (which, for example, indicates that it's PlaylistSequence is now in place)
2010-12-07 21:14:40 +00:00
David Sansome
44dc05a87a
Don't stop the track when it's about to end if crossfading is enabled but fadeout is disabled. Fixes issue #1040
2010-12-07 20:29:13 +00:00
David Sansome
bbf0cd48c2
Insert songs as library playlist items if they're in the library. Fixes issue #1039
2010-12-07 19:33:19 +00:00
David Sansome
8aa7973312
Always create the schema in external databases if it doesn't exist yet. Fixes issue #1034
2010-12-07 19:07:12 +00:00
David Sansome
6a27020ccd
Make the volume down shortcut decrease the volume instead of increasing it... Fixes issue #1033
2010-12-07 18:52:21 +00:00
John Maguire
d17703d39a
Add function for getting the correct config directory on mac.
2010-12-06 17:06:02 +00:00
Paweł Bara
9f3e5773fb
QT tooltip now includes cover art and is generally prettier (updates issue #125 )
...
ArtLoader is now available to every object, even if MPRIS is off
2010-12-05 23:41:41 +00:00
David Sansome
cef02b4f61
Fix database test
2010-12-05 12:53:12 +00:00
David Sansome
fc15d66321
Remove a lot of the old MPRIS code from the Player class, and fix a couple of MPRIS2 bugs
2010-12-05 11:39:06 +00:00
David Sansome
f9959a4fba
Treat the Jamendo database schema the same as other databases.
2010-12-05 10:55:21 +00:00
David Sansome
987dd8c57a
Refactor and fix most of the MPRIS code. Fixes issue #374
2010-12-04 22:27:58 +00:00
David Sansome
f94f2cd03c
Clean up the background streams settings page a bit, and use a different icon
2010-12-04 15:11:50 +00:00
John Maguire
b67bc3939a
Fix a couple of mpris bugs.
...
Update issue #374
I've fixed some of the GetStatus/GetMetadata issues.
2010-12-03 15:01:36 +00:00
John Maguire
c625acfd87
Refactor background streams.
...
Add volume control for background streams and infrastructure for custom streams.
2010-12-03 13:53:43 +00:00
John Maguire
880909104e
Fix album cover handling in Jamendo.
2010-11-29 13:34:30 +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
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
John Maguire
eca1704384
Sort of working Jamendo dynamic playlist.
2010-11-26 15:16:48 +00:00
David Sansome
188c7a53ec
Add a database table, backend, and model for Icecast radio stations. Added a filter widget as well, but it doesn't actually search or sort yet.
2010-11-23 22:36:00 +00:00
Paweł Bara
eb41dea464
the title and artist of the currently playing song are now the title of Clementine's window (Fixes issue #779 )
...
better unmute behavior if Clementine was muted before it was closed (Fixes issue #983 )
2010-11-23 19:38:15 +00:00
John Maguire
5feabe09de
Add Jamendo support.
...
Fixes issue #470
2010-11-23 17:38:39 +00:00
David Sansome
89e3fde23b
Add missing copyright headers to the icecast source and objective-c
2010-11-23 11:42:19 +00:00
John Maguire
c2c3c8145b
Add basic icecast directory support.
...
Fixes issue #601
2010-11-22 16:57:26 +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
4356adb9e3
Fix the windows and mac builds
2010-11-21 15:46:43 +00:00
David Sansome
0a5d286798
Bound song scores properly. Thanks arnaud.bienner
2010-11-21 15:38:26 +00:00
David Sansome
626c75cd45
Add MPRIS2 and gnome sound menu support
2010-11-21 15:13:26 +00:00
David Sansome
5969e2b3d7
Remember whether a dynamic playlist was active between restarts
2010-11-20 20:30:21 +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
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
9e20ef13bc
Automatic scoring. Thanks Arnaud Bienner. Fixes issue #141
2010-11-01 21:15:52 +00:00
John Maguire
6c5ce58eda
Better check for MS-WMSP.
2010-10-25 12:19:36 +00:00
John Maguire
cc782430cf
Fix MS-WMSP streams.
...
Fixes issue #912
2010-10-25 12:14:28 +00:00
David Sansome
5d9e43bc14
Add a new smart playlist wizard. Doesn't do anything yet except look pretty.
2010-10-24 23:46:05 +00:00
John Maguire
29d1e9e7cb
Add bizarrely named "mtime" to MPRIS.
...
Fixes issue #893
2010-10-19 11:20:50 +00:00
David Sansome
f55ffe15d6
Format the last played column more nicely
2010-10-17 20:53:15 +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
42e4c4a8db
Add a skipcount field to the database, and read the last played time into Song objects. (still not used in the GUI yet).
2010-10-17 17:50:20 +00:00
David Sansome
f5750bc348
More comments
2010-10-17 16:30:22 +00:00
David Sansome
eb9660edad
Parse FMPS ratings and played counts from mp3 id3v2 tags
2010-10-17 16:03:49 +00:00
David Sansome
95556df6aa
Move database schema into a subdirectory of data/
2010-10-17 11:22:34 +00:00
David Sansome
47004d0ac3
Fix album cover manager test
2010-10-16 18:21:28 +00:00
David Sansome
b5f366c40a
Add a thread safe network disk cache, and remove the need to pass a NetworkAccessManager around everywhere. Fixes issue #852
2010-10-16 17:20:54 +00:00
David Sansome
b97b2138fa
Play last.fm tag radio or similar artists radio when clicking on a tag in the song/artist info pane.
2010-10-16 15:22:14 +00:00
David Sansome
14fb4ca202
Ignore playlists when loading local directories. Fixes issue #886
2010-10-16 12:37:33 +00:00
John Maguire
2d19c2899a
Ignore engine metadata notifications if the song was previously loaded via taglib.
...
Fixes issue #880
Fixes issue #864
Fixes issue #574
2010-10-12 11:55:45 +00:00
David Sansome
2f3732e73e
Move lyrics into the song info pane, refactor out a load of the common code between artist and song info.
2010-10-10 16:09:20 +00:00
David Sansome
d09bae16ee
Don't crash when the receiver of a network get is destroyed before the request finishes
2010-10-09 14:15:05 +00:00
John Maguire
4c186f15dc
Add more fields to MPRIS GetMetadata
2010-09-29 17:03:32 +00:00
David Sansome
4f1a4fe39a
Some initial lyrics support. Scrapes all the sites that are supported by Amarok's Ultimate Lyrics script. No GUI or configuration yet.
2010-09-26 14:21:23 +00:00
David Sansome
bd59b7009b
Don't crash when trying to load a wma file without a tag.
2010-09-25 15:46:35 +00:00
David Sansome
6971f81be4
Use QFile::decodeName when reading command-line arguments. Fixes isse #752
2010-09-25 15:15:05 +00:00
David Sansome
625e4dffdb
Replace more invalid FAT32 characters in filenames. Fixes issue #799
2010-09-25 15:04:58 +00:00
David Sansome
24cb79285a
Fix some weird behaviour when renaming a device and changing the sorting order in the devices view.
2010-09-18 12:33:23 +00:00
David Sansome
d0699e0bb5
Fix a crash when loading a local directory that contains other directories or playlists.
2010-09-18 11:50:20 +00:00
David Sansome
e95c4979f8
Replace ? characters when copying files to devices (since they're invalid on FAT32 filesystems), and check the return value of QDir::mkpath. Fixes issue #721 .
2010-09-18 10:06:30 +00:00
David Sansome
0adc88a07d
Ignore iTunNORM comment fields in ID3v2 tags
2010-09-15 19:24:31 +00:00
David Sansome
0a7fa788b3
On second thoughts, lose the gotos and handle the last.fm errors by throwing.
2010-09-13 23:52:05 +00:00
David Sansome
89c873f9ef
There are no gotos in this code
2010-09-13 23:44:11 +00:00
John Maguire
4570d891f2
Change global shortcuts on Mac to be eaten.
...
Update issue #722
Fixed on Mac.
2010-09-13 10:14:46 +00:00
David Sansome
c2ac3f8f32
Don't mount GIO devices automatically, instead put them in a "not mounted" state in the GUI and mount them when double-clicked on. Fixes issue #719 . Probably fixes issue #723 .
2010-09-11 12:29:44 +00:00
David Sansome
6fea62d68e
Make the organise dialog and free space bar look better with a dark theme. Fixes issue #630
2010-09-05 12:49:56 +00:00
John Maguire
214d77bc0e
Fix test and fix song loader infinite loop.
2010-08-31 21:24:57 +00:00
John Maguire
ad16a8b1ba
Load local files from the DB if we already have them.
2010-08-31 19:45:33 +00:00
John Maguire
bf5245d499
Remove warning for sql queries on the GUI thread.
2010-08-31 18:46:00 +00:00
David Sansome
1dd6ac323e
Get the drive letter for MSC WMDM devices on Windows 7
2010-08-30 19:58:01 +00:00
David Sansome
e4f5e97b17
Allow GetSupportedFiletypes to return an error, and make it possible to request a list of supported filetypes at the same time as opening the device for copying - making things much faster on MTP devices.
2010-08-30 12:22:15 +00:00
David Sansome
d7e71ad14a
Fix some little progress calculation bugs
2010-08-30 12:00:11 +00:00
David Sansome
728925097d
Show progress information when transcoding files to copy to a device
2010-08-30 11:36:40 +00:00
David Sansome
ebe237cd40
Codereview comments from r1844
2010-08-29 19:50:06 +00:00
David Sansome
93b35a6379
Clean up transcoded files from /tmp
2010-08-29 19:26:20 +00:00
David Sansome
4b381e00fd
Transcode files when copying them to devices
2010-08-29 19:22:21 +00:00
David Sansome
5873fe80a6
Pick a good default format to transcode to
2010-08-29 16:12:55 +00:00
David Sansome
d8ea4660e7
Store the device's transcode preference in the database
2010-08-29 15:32:36 +00:00
David Sansome
04e7e26088
Allow devices to report progress information about individual songs back to the Organise object. Implement this for MTP
2010-08-28 21:55:30 +00:00
John Maguire
c801ce1a2d
Rollback analyzer changes.
2010-08-28 18:48:16 +00:00
David Sansome
f5cbeabb9b
Copy string metadata properly
2010-08-28 13:52:29 +00:00
David Sansome
a066eb9968
Recognise music on devices where WMDM/FormatCode isn't provide, such as mass storage devices.
2010-08-28 13:23:33 +00:00
David Sansome
c625ac229d
Fix all the windows crashes
2010-08-28 12:30:53 +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
a776758ad1
Clear the "stop after this track" marker after stopping after this track. Fixes issue #552
2010-08-26 19:29:55 +00:00
David Sansome
dad73e7e7e
Fix a mingw compile error in release mode
2010-08-25 22:13:58 +00:00
David Sansome
3a67124fd9
Support copying files to WMDM devices. Sometimes doesn't crash 100% of the time.
2010-08-23 19:13:27 +00:00
David Sansome
bd4b6b2b50
Set a proper filename on songs that are copied over MTP
2010-08-22 17:54:49 +00:00