view TODO @ 2896:7e82b69b03b7

[gaim-migrate @ 2909] eh. committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Sun, 16 Dec 2001 21:57:59 +0000
parents e967c0d93930
children 3b07b6d287ad
line wrap: on
line source

THE CORE:
	GPG Encryption of messages
	Have plugin_event use varargs instead of void*
	Separate core functions from UI stuff.
		about.c, applet.[ch], away.c, browser.c, buddy.c, conversation.c,
		convo.h, dialogs.c, gtk*, plugins.c, prefs.c, prpl.c, sound.c,
		ticker.c, ui.h
			little to no work (mostly GTK)

		core.[ch], html.c, list.c, module.c, multi.h, proxy.[ch], perl.c,
		prpl.h, util.c
			little to no work (mostly CORE)

		buddy_chat.c, gaim.h, idle.c, multi.c, server.c
			standard splitting (for idleness, core needs to be in
			charge of gaim-use idleness)

		aim.c - need to redo main() completely
			- current main should be moved mostly to core
			- GTK main should connect to core
		gaimrc.c - Need to figure out how to save UI preferences

		Ideally at the end of this the prpls should only need to include
		prpl.h and they'll get everything they need without anything
		*cough*GTK*cough* that they don't.

	Need to write the core side of the core-ui protocol
	Non-blocking gethostbyname()
	Cancelable proxy_connect

----
THE PROTOCOLS:

TOC:
	Other RVOUS Actions

Oscar:
	File Transfer
	Other RVOUS Actions

Yahoo:
	Chat
	File Transfer

ICQ:
	Chat
	File Transfer
	New User Registration

MSN:
	Need some way of indicating "invite" in IM window
	File Transfer

IRC:
	/whois, /ban, /kickban, /list, /names
	DCC
	CTCP

Jabber:
	Jabber Transports (having them show up on the buddy list should be
		fairly easy; having an appropriate right-click menu for
		them should also be somewhat easy. Providing a UI for adding
		transports should be rather difficult.)
	Rework how subscriptions are handled
	Browsing
	New User Registration

Napster:
	File Transfer
	New User Registration

Zephyr:
	God help us.

Gadu-Gadu:
	New User Registration
	There's probably 100 other things but since I've hardly used the Windows
		client before I'm not sure what any of them are

----
THE UIS:

GTK:
	Transparency for GtkIMHtml
	Rewrite the HTML parser in GtkIMHtml
	Moving GTK/GDK and related things out of the prpls
		TOC: file transfer (move into the core)
	Status labels in buddy list (mostly just for yahoo/msn)
	Better way of showing away state - and possibly in main window
	Away needs to be modified to include "show" and "status", i.e. you can have
		an away state, and an away message. This is exactly what ICQ does -
		you're "N/A" (show in Jabber) and your away message is "I'm gone."
		(status in Jabber). Since it only applies to ICQ and Jabber (and
		actually, currently only Jabber, since icqlib doesn't handle away
		messages yet), there should be some way of indicating that it can
		do both without breaking the others. My suggestion is to put "/" at
		the end of the "state", and when that's there, have it be a menu with
		all of the custom messages, e.g. in Jabber it'd return "Away/" as one
		of the states, and you'd see "Away" with a menu of all the away
		messages you have.

	Need to write the ui side of the core-ui protocol

	Syd is cool and gave all of these ideas:
		Have multiple tickers in the same window, one for buddies
			like it is now, one for who just came online/offline
			(scrolled faster possibly because that doesn't
			happen very often), etc.
		Have tooltips on the passing buddies on the ticker
		Have a stock ticker (a plugin could easily make use of
			GtkTicker)

	Buddy Icons need to be converted to use new gdk-pixbuf (GTK2)


Then, of course, are all the Bugs that need to be fixed
	http://sourceforge.net/tracker/?atid=100235&group_id=235&func=broswe
and the Feature Requests. SourceForge should really allow users
to vote on feature requests and bugs.....
	http://sourceforge.net/tracker/?atid=350235&group_id=235&func=browse