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