[gaim-migrate @ 4203]
[pidgin-git.git] / TODO
blobd58b267518407e6bbae0c7b00d3dc3ba84a8ff2f
1 WINGAIM:
2         font issues?
3         resizing windows does not work correctly [what's the problem here?]
4                 resizing blist only updates window when you let go of mouse,
5                 i can't think of what else i might have ment after having 
6                 deryni test things
7         Gtk windows that appear when you hover over a button, and just stay there and never close until you click on them once
8         sounds while away?      
10 gtk2/new prefs
11         when a conversation has been manually resized, it should not be 
12                 resized to the default on: 1)buddy icon. 2)im image 3)new tab
13         blist shortcuts apparently not working
14         better gtk2-ified icons: maybe a send icon? review the ones we're using now. do they make sense?
15         sound player preference not being saved
16         resize blist doesn't work on some systems.
17         most toolbar buttons stay depressed after being clicked once, only raise when clicked a second time.
18                 smiles and links do not.
19         buddy ticker stays arou+nd when you sign off - showing the 
20                 buddies who were online
21         text like <font color=blah>with only some text</font> being colored causes the whole line to be colored. 
22         lots of font troubles. esp in picking good fonts to use when the theme doesn't have an installed one.
23         on away tab, if you set the time between responces, you 
24                 reset the type of idle time reporting. similar
25                 problems may exist in other combinations.
26         when auto-away (by idle time) is activated, away message window 
27                 does not pop up.
28         pressing save on new away message dialog does not immediately add 
29                 away message to list of away messages. 
30         ignore font faces doesn't ignore the font faces in a person's info
31         kicking someone in #name-extention causes a kick to display in #name as well
32                 and vice-versa
33         the preference for the width of a chat is not being used when chats and 
34                 conversations are in the same window.
35         resizing text entry area below default doesn't work well.
36                 some people report being unable to shrink it at all
37         escape to close window pref or function doesn't work right
38                 has to do with incorrect initial focus.
39         there is a blank line in the blist for a couple seconds after someone
40                 signs off. [gtk2 bug with the deprecated gtklist?]
41         themes don't set background correctly in the blist. (reported, not verified)
43 GAIM-REMOTE:
44         need a doc written up for gaim-remote on usage
45         need to implement everything listed in gaim-remote --help
47 PORTABILITY/i18n
48 icq i18n
49 info dialog
50         
51 DISCUSSION:
52         protocol action to log into webmail for those that support such
53                 (aim, yahoo, msn)
54                 maybe a r-click option to send to user(yahoo, msn)
55         "console beep" sound option should use different frequency beeps
56                 for different events, or at least give some way to allow
57                 this behavior. 
58         do we really need some of the preferences? (Ignore TIK messages.
59                 Does anyone use that method of retrieving Away messages anymore?)
60                 toc does?
61         show alias in list of people in chat
62         tab complete to alias, translate to nick on send for chat
63         disable x on blist when docklet loaded?
64         timestamp on debug messages?
65         ximian serial numbers in rpms cause... problems.
66         sorting of conversation tabs, if the ordering of left-to-right
67                 order by opening isn't good enough for you
68         msn auth expires (better, but still not perfect)
69         rpm and deb installs should create menu items in kde if possible
70         gaim should detect if message is sent and only log on success
71                 for protocols capable of offline messaging, this would
72                 always log, but aim messages would only be logged if
73                 sent to an online person. this would essentially entail
74                 making logging dependent on the return status of the
75                 serv send msg command. 
76         option to disable close for x seconds after recieve im. this would
77                 short circuit missing messages as you close the window.
78                 make it an option that's off by default. 
79         the privacy dialog has five different options now.  this looks
80                 rather ugly.  When we redesign the dialog, perhaps we should
81                 change the privacy setting to a combobox? 
82         options on key bindings. (differnet window managers map different things. 
83                 make the control key switchable with the alt key or similar)
84                 maybe make control/alt+arrow optionally replace control+bracket
85                 is this a good idea?
88 IN GENERAL:
89         Do we still want 'import'?  If so, it should be under 'tools', not 'file'
90         add a way for a plugin to store/retrive config values (fixed?)
91         segfault on pressing back with messages in queue if coming back
92                 for the second time in a given instance of gaim
93         stack trace should exit instead of just sitting there
94         documentation needed. (both online and not)
95         check to make sure gaimrc properly unescapes things like a " in 
96                 a password as the .gaimrc file is read in.
97         PERMIT ONLY PEOPLE ON MY LIST TO IM ME IS NEEDED ASAP!!!!!!!!
98                 this is now possible for aim, but not for yahoo et al
99         automake 1.4 support bug, non-root users can't get gaim to compile
100                 by putting the gtk2 and glib2 m4 files in the m4 dir
101         automake 1.6 support not perfect.
102         add ircproxy option to proxy preferences.
103         per-sn controls on how to compute idle time
104         self alias does not display in irc chat. (and maybe other chats)
105         adding and removing buddies needs cleaned up.
106                 basically, add_buddy should be calling ui_add_buddy 
107                 and serv_add_buddy as needed (require an extra arg to 
108                 add_buddy to tell it what needs done) and the various
109                 ways a buddy can come to be needing added should be
110                 calling some type of request_add_buddy (this would be
111                 part of both the core<->ui interface and the core<->prpl
112                 interface
113         convert from licq and eb to gaim
114                 licq has a directory with one file per buddy
115                 eb i don't know. but the trick there would be 
116                 converting to several accounts at once.
117                 we have a perl script for licq and c code for eb.
118         fix memory leaks
119         block buddy option from right click menu in blist
120         sounds/Makefile needs to use host CC, not target 
121                 (thats the only part that seems broken for cross-compiling)
122                 --Disconnect
123         screenshot plugin
124         xmms remote plugin
125         statusimage plugin
126         status report w/out being on own list
127         SEARCH FUNCTION FOR LOG FILES
128         preference to set logfile path. (i think there is a patch to add this)
129         gzip storage of logs
130         fix crash when someone writes just as you close the chat window.
131         make the option to have escape close a window be global (error messages, account editor, ect)
132         throw-away away message (unsaved) for single account (vrs set all away)
134 ----
135 THE CORE:
136         Need to write the core side of the core-ui protocol
137         Non-blocking gethostbyname()
138         Cancelable proxy_connect
139         remember previous state better. both away, and allow start to invisible.
140         better privacy controls.
141         networking code rethink (libgnet?)
142         netbsd gethostbyname() problem
143         GPG Encryption of messages (gaim-e plugin included with gaim would satify this)
144         Separate core functions from UI stuff.
145                 about.c, applet.[ch], away.c, browser.c, buddy.c, conversation.c,
146                 convo.h, dialogs.c, gtk*, plugins.c, prefs.c, prpl.c, sound.c,
147                 ticker.c, ui.h
148                         little to no work (mostly GTK)
150                 core.[ch], html.c, list.c, module.c, multi.h, proxy.[ch], perl.c,
151                 prpl.h, util.c
152                         little to no work (mostly CORE)
154                 buddy_chat.c, gaim.h, idle.c, multi.c, server.c
155                         standard splitting (for idleness, core needs to be in
156                         charge of gaim-use idleness)
158                 aim.c - need to redo main() completely
159                         - current main should be moved mostly to core
160                         - GTK main should connect to core
161                 gaimrc.c - Need to figure out how to save UI preferences
163                 Ideally at the end of this the prpls should only need to include
164                 prpl.h and they'll get everything they need without anything
165                 *cough*GTK*cough* that they don't.
167 ----
168 THE PROTOCOLS:
170 TOC:
171         Other RVOUS Actions
173 AIM(via oscar):
174         watch for aol's upcoming increased aim/icq merge
175         groups are read off server in a different order from
176                 winaim. this is a problem for people who use
177                 both and want thier list to be in a certain 
178                 order. along the same lines, because we
179                 don't read in the same order i'd bet, 
180                 we don't write to the server in a way
181                 that would cause winaim to produce the
182                 ordering gaim has. 
183         option to ignore chat room invitations. (this is something you 
184                 could vary concievably want to be done per account, 
185                 so perhaps a protocol action would be best)
186         some way to close direct connect w/out closing convo.
187         idle time display in get_info displays in minutes instead
188                 of computing hours and days as the blist does
189         in non-tabed conversations, clicking the x to close the
190                 window does not close the direct connection.
191                 using escape and the close button do.
192         STILL have blist corruption troubles?
193         canceled direct im should still allow new attempt
194         failed direct im attempt should allow new attempt
195                 some way to cancel an attempt that isn't happening
196         Colors in Chat room are wrong (using Gold too much)
197         away message when directly connected bug 
198                 only displays on one side
199                 if direct connected to winaim, lockup when 
200                         winaim goes away, unlocks when winaim returns
201         Voice Chat
203 ICQ(via oscar, who cares about the icq prpl):
204         get info on offline user incorrectly says user is online.
205         typing notification
206         set the Nickname to be the self-alias
207         Chat (this is different from aim chat)
208         File Transfer (do we really want this?)
209         New User Registration
210         color support
211         more privacy options
212         more info support
213         increased authorization support
214         set status message 
215                 and of course when gaim can set them, it needs to
216                 be able to get the ones it sets. (yes this is 
217                 redundent. its a reflection of my current mood)
218         search for users
219         option to set alias to nick
221 Yahoo:
222         new mail message with no info in it ie ()
223         web cam support
224         bug: won't allow me to delete myself from my list past sign on
225         Chat
226         File Transfer (do we really want this?)
227         color (is this possible)?
228                 <fade> tags need parsed.
229         encrypted conversations
230         show idle time on blist
231         display profile
232         make away message display like that of aim/icq/jabber
233         auto reply on away
234         privacy options (block, unblock)
235         voice chat
237 MSN:
238         typing notification is broken in gtk1-stable
239         spaces in friendly names not always unescaped for display, and so displaying
240                 as %20 (this may be fixed)
241         bug: some people recieve blank messages. clicking to ignore font faces
242                 works around this problem. gaim should detect and use the default
243                 font when the requested font isn't found.
244         Majortool says to tell sean about "already in opposite list" 
245                 errors are still happening, now whenever you start
246                 gaim. follow from prior conversation. 
247                 javabsp|away: the (C) and (R) works
248                 (23:02:54) MajorTool: LSchiere: yeah what javabsp|away 
249                 is talking about but its certain ones
250         bug: doesn't save blist to file on read from server
251                 as this could be introducing new people,
252                 esp if there is no existing file, it shold.
253         store group name that buddy is in on server
254         set the friendly name to be the self alias
255         typing notification in group chats
256         start group chat support
257         better group chat support in general
258                 lots of reports of problems.
259         font face and color send support
260         International freindly name support
261         Need some way of indicating "invite" in IM window
262         File Transfer (do we really want this?)
263         auto reply on away
264         people search function.
265         voice chat
267 IRC:
268         gaim generates ~5 popups when it fails to sign on
269                 an irc server because the nick is already
270                 in use.
271         Error 421, unknown command when going away. sometimes.
272         /ban, /kickban, /names
273         CTCP version generates an autoreply when person is away or idle. 
274                 the error box used vy it also binds the focus (like
275                 all other error popups). i'm not sure there is a way
276                 around this second issue. (fixed?)
277         fix segfault on attempted send after having been /remove'ed
278         multi word remove messages
279         auto reply to /msg on away 
280         no list of people on /join 
282 Jabber:
283         Segfault on account creation, esp. on register new account
284         problem seeing buddies with long blist?
285         make password change take effect w/out restart
286         *sigh* file transfer (do we really need/want this?)
287         Jabber Transports (having them show up on the buddy list should be
288                 fairly easy; having an appropriate right-click menu for
289                 them should also be somewhat easy. Providing a UI for adding
290                 transports should be rather difficult.)
291         Browsing
292         Bug: Opening/closing/re-opening conferences (to the same "room"?)
293                 and changing conf. rm. nicks results in wrong nick re-appearing
294                 (to other clients) and crash on close of conference dialog.
295         Server Admin operations (messages, etc.)
296         Add option for user info to be published or not in JUD.
297         Ability to "IM" conference room "buddies"
298         Some way to see/list roster items to which you have no subscription
299                 yourself?  Some way to delete them or subscribe to them if you want?
300         Show self on buddylist
301         Delete server account.
302         Messaging an "Away" Jabber user doesn't get an away message back?
303         Permit/Deny buddy support.
304         List of users on Jabber server?
305         SSL support
306         show idle time on blist
307         a populate roster from local blist. most useful if you want to migrate a 
308                 blist from one account to another, also useful if something freaky
309                 happens and the server blist is lost.
310         conferenceing needs straightening out in general
311                 some s2s issues, maybe
312                 join room 2x issues, maybe
313                 colors for nicks
315 Napster: (should this even exist?)
316         File Transfer (do we really want this?)
317         New User Registration
318         remove this protocol?
320 Zephyr:
321         God help us.
323 Gadu-Gadu:
324         New User Registration
325         There's probably 100 other things but since I've hardly used the Windows
326                 client before I'm not sure what any of them are
328 ----
329 THE UIS:
331 GTK1.2(some of this applies to gtk2 also):
332         preference to ignore colors not being used or not being saved. in 0.59.5
333         GLib-CRITICAL **: file gstrfuncs.c: line 1194 (g_strcasecmp): assertion `s1 != NULL' failed. 
334                 warnings in latest release.
335                 it seems that when a certain packet is received, the assertion fails. something 
336                 about SIGNON without PAUSE.
337         choose a browser you don't have installed, click a link 2x, crash.
338         option to have input box scroll instead of line wrap. input box only.
339         BUG: hidden smilies don't always work right in protocols with specific smilies. even aim.
340                 this is somewhat transitory, and very annoying.
341         copy grabs html as well as text. 
342         bug report: The pixmaps arrow_down.xpm and arrow_right.xpm don't have proper 
343                 transparency... it only causes problems if your GTK theme is pixmap based
344         bug: if you remove a group in one prpl, it disappears from the online tab
345                 even if there are still buddies in that group online
346         make it so that same sn entries don't merge. use gc's to do this
347         right click on url gives browser choice (preference option)
348         option to choose person on blist when adding to permit/deny lists
349         prpl specfic smiles in group chats.
350         make output of /list searchable
351         option not to raise windows on event while away
352         make entry widget height preference a relative size, that is it doesn't change the
353                 overall height of the window.
354         Only show one instance of each aim_user at a time in the sign on dialog. 
355                 reset the progress bar on disconnect instead of creating a new entry.
356         Status labels in buddy list (mostly just for yahoo/msn)
357         buddy pounce -> drop down list of buddies
358         buddy pounce -> add service to list of accounts
359         buddy pounce -> add chooser to sound
360         fix buddy ticker resize bug.
361                 can't shrink it below default
362         Transparency for GtkIMHtml
363         Rewrite the HTML parser in GtkIMHtml
364         Moving GTK/GDK and related things out of the prpls
365                 TOC: file transfer (move into the core)
366         Better way of showing away state - and possibly in main window
367         Away needs to be modified to include "show" and "status", i.e. you can have
368                 an away state, and an away message. This is exactly what ICQ does -
369                 you're "N/A" (show in Jabber) and your away message is "I'm gone."
370                 (status in Jabber). Since it only applies to ICQ and Jabber (and
371                 actually, currently only Jabber, since icqlib doesn't handle away
372                 messages yet), there should be some way of indicating that it can
373                 do both without breaking the others. My suggestion is to put "/" at
374                 the end of the "state", and when that's there, have it be a menu with
375                 all of the custom messages, e.g. in Jabber it'd return "Away/" as one
376                 of the states, and you'd see "Away" with a menu of all the away
377                 messages you have.
379         Need to write the ui side of the core-ui protocol
381         Syd is cool and gave all of these ideas:
382                 Have multiple tickers in the same window, one for buddies
383                         like it is now, one for who just came online/offline
384                         (scrolled faster possibly because that doesn't
385                         happen very often), etc.
386                 Have tooltips on the passing buddies on the ticker
387                 Have a stock ticker (a plugin could easily make use of
388                         GtkTicker)
392 Then, of course, are all the Bugs that need to be fixed
393         http://sourceforge.net/tracker/?atid=100235&group_id=235&func=browse
394         
396 and the Feature Requests. SourceForge should really allow users
397 to vote on feature requests and bugs.....
398         http://sourceforge.net/tracker/?atid=350235&group_id=235&func=browse