revert previous commit, its has been certified as crap
[amarok.git] / TODO
blobe4c8f53f8a24ca4e5f0030cc9449e49de6fd757b
1 TODO-list for Amarok
2 ======================
3 <nick>  == reported by
4 -->nick == assigned to
7 SHORT-TERM (URGENT):
8  <sebr>    When using "Copy files to collection" in the filebrowser, tags wont get recognised from
9            urls which are organised from media:/ locations.
11  <jeff>    When playing a stream from e.g. Ampache, even if an Artist is detected, Wikipedia
12            will pull up "Artist - Song" instead of just Artist.
14  <sebr>    PlaylistBrowser::slotDoubleClicked() and PlaylistBrowser::addSelectedToPlaylist()
15            should be merged for better code reusage. They are practically the same.
17  <markey>  I just deleted a tag by accident: Clicked on a file in the playlist, pressed
18            delete to remove the track from the playlist. I had not noticed that it
19            went into edit mode, though. So I clicked somewhere else, and BAM, the new
20            empty tag was written. My tag was gone :S IMHO we should require confirmation
21            before writing, e.g. only write the tag after pressing enter.
23  <markey>  When you start a lastfm stream, the old metadata from the last stream is 
24            shown before the new stream starts. Doesn't look nice.
26 <shanachie> update podcast-tuples when the feed get's corrected after a mistake by the podcaster/publisher. eg. pubdate, url, title.
28  <sebr>    We need to check for pkg-config when configuring, otherwise we can't check for things
29            like libgpod. Currently its a silent error, and its very difficult to debug without
30            trawling through configure.in.in
32  <sebr>    Don't reload media device plugins when saving config settings. Its annoying, slow
33            and all around unnecessary.  It also crashes if the device is connected/loaded.
34            <aumuell> Cannot reproduce anything of this with ipods - i think i fixed that already.
36  <markey>  After doing "Delete downloaded podcast", the icon still indicates downloaded.
38  <sebr>    LastFm:
39              - determine how hard it would be to tag songs
40  <eean>      - display history in the playlist somehow  <markey> I'm against this.
41                -subitems?
42                -just disabled?
43              - 'stop after current track' should work
45  <sebr>    Adding an m3u with non existant items has filesize = 16,777,216.0 TB!
47  <illiss.> Loading normal (M3U) playlists from the playlist browser doesn't block the UI per se,
48            but it does nothing for really long time, until suddenly the whole playlist shows up,
49            which is strange and confusing.
51  <markey>  Add DCOP functions for showing dialogs, similar to kdialog.
53  <sebr>    More consistent playlistbrowser drag and drop actions; No dropping of default streams, set
54            e->accept( false ) if dropping one type onto another.
56  <sebr>    Use KIO queues for podcast download queues.  Should simplify the lot.  Problems atm included
57            selecting multiple downloads individually, and automatic downloads occuring for more that one
58            podcast item.
59  <eean>    Currently custom dynamic playlist selection is simply based on the titles. So its less then
60            ideal. Via some method, each playlist should be assigned iteratively a number paired with its
61            type.. Dynamic playlists and static playlists should probably have seperate numbering so
62            that the "next" number can be determined by looking at one XML file.
63            Remembering which PartyEntry was used on close should be remembered with the same method.
65   <markey> Consider moving the GHNS provider list to a different server than amarok.kde.org,
66            possibly download.kde.org or similar. (When our site is down, the GHNS feature fails
67            to work entirely)
69   <markey> Amarok fails to download any stream playlist from http://dir.xiph.org. Part of the problem is
70            PlaylistLoader::isPlaylistFile(const KURL&), which only looks at the filename's extension. This
71            fails for URLs like http://dir.xiph.org/listen.php?pid=669641&file=listen.m3u, because the filename
72            is "listen.php". So it must look at the whole url instead.
73   <mxcl>   Just before we load any engine plugin, write to a file, and it we don't succeed the next time
74            Amarok starts show a big warning saying "Gah!" and load a different one.
76  <shakes>  The scrobbler code should report some sort of error message rather than just saying that the
77            submit failed. That way when last.fm goes down we wouldn't get so many people asking why they
78            can't submit. It'd also be nice to be able to tell people they've got their password wrong.
80 <jefferai> When hovering the mouse over the Repeat/Random icons in the bottom taskbar, the popups that appear
81            not only have inconsistent icons with the ones shown in the taskbar, but they're pixellated and ugly
82            as sin.  Should probably be redone as SVGs.
84 <jefferai> Xine proxy value is not saved across sessions.  Problem exists in Xine-UI as well, at least for me.
85            Maybe an upstream bug and nothing we can fix.
87 MID-TERM:
88  <eean>    Implement a "Find My Music" button in the first-run wizard. Just a basic
89            thing that will look at file extensions and try to figure out where the users
90            music is located. Ignore /opt/, /usr etc. to avoid adding sound effects. Prompt
91            user with the directories at the end of the scan, allowing them to exclude some.
93   <eean>   Implement leinir's mockup:
94            www.leinir.dk/temp/gallery/?image=pictures/amarok-playlist-bar-dynamic-mode.png
95           <leinir> The idea with the look of the top is, as you can probably see from the colours
96             otherwise present, that it's the active window titlebar/colour/font, with the name of the
97             playlist being un-bolded (if the window title is bold)...
98           <leinir> eean: Some people will identify the active window by titlebar colour alone :)
100   <mp8> Album covers as icons from filebrowser.
102   <mxcl>   Should be able to open collection browser by right clicking on stuff in contextB, so show the
103            artist or album that is right clicked.
105   <mxcl>   Perhaps a nice idea: when you drag playlistItems to a branch in the collection browser
106            it prompts to change the track's tags, so drag a track to the "moolaaa" album and that
107            track get's it's album tag changed to "moolaaa" and is inserted into the branch, so the user
108            know's what has happened.
110   <mxcl>   User asked for a CTRL-J itty-bitty dialog that allows you to jump to a specific part
111            of a track. I'll see if I can do it with tiny amount of code -->mxcl
113   <muesli> Don't rely on KDE timeouts to see whether a file is accessible or not,
114            since this really sucks for disconnected network shares. XMMS handles
115            this way better and it really is a problem in userland. maybe a thread
116            helps, which simply tries to fopen() the file. if this task hasn't been
117            finished in (let's say) 3 seconds, jump to the next song. XMMS even
118            remembers such files and their folders, so that it's not going to open
119            another file from that folder for the next few minutes. what about hdd
120            sleep-timeouts? opinions?
122 LONG-TERM:
125   <markey> Use more accurate interpolation for analyzers (cubic or spline)
127            Tabbed playlists.
128            Pro: it's convenient to have several playlists
129            Contra: the playlist is getting cluttered enough as it is!
130            <illissius> I already added a comment wrt this to the b.k.o bug, but here's the idea:
131                        switch between playlists with the playlist browser -- that's what it's there for.
132                        This avoids the clutter. The way it'd work is the currently playing playlist would
133                        have the same fancy fading thing the current track has. The context menu for playlists
134                        would have two seperate items, one for showing and one for playing. When just showing,
135                        the previous playlist would continue playing while you view/edit the other one.
136                        (If you doubleclick a song in the new playlist, it would naturally start playing that
137                        one instead). What to do when the user doubleclicks a playlist -- show, play, or both
138                        -- is TBD.
140            Make windows magnetic / sticking together (difficult).
142   <mxcl>   Implement beat detection (thread?), interface should glow/move to
143            the beat, visualisations have access to beat/bpm info.
145            Audio system info widget, showing all available codecs and similar info.
147 IDEAS:
149            Bookmarks inside of tracks (good for very long tracks), and nifty bookmark browser
151            Using filelight (as a kpart maybe) for a graphical representation of the playlist. so
152            you could see at first glance how the altogether playing time is divided into different
153            albums, tunes and so on.
156 DO-NOT-IMPLEMENT (stuff that was rejected):
158   <markey> Allow removing of playlist items by dragging back into browser.
159   <larson> I think this is really weird. When I drag something I expect that someting to be
160            ADDed or opened in the target. Not removed from the sender.
161            (RFC: is this still appropriate or would it be misleading?)
162   <muesli> imho, it's misleading and not hid-compatible. i would rather
163            expect that file to be copied to the browser's current directory.
165           "Hide playlist when main widget is not active" option (?? comments please: )
166   <berkus> Noo, we have it hiding into tray, thats enough (imagine how much flashing will be
167            if i drag mouse around with "focus follows mouse" on - this is the one i use all the time)
168   <mxcl>   Hence it's an option, you'd not use it with focus follows mouse. But it was just an idea
169            anyway.. dunno if I like the sound of it anymore either.
172 BACKTRACES/DEBUG/VALGRIND: