view TODO @ 3408:ba6d0856c8e4

[gaim-migrate @ 3427] This should work a little bit better for everyone. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Sun, 18 Aug 2002 18:21:08 +0000
parents 18f0e61a6caf
children 6b0cb60162f4
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
	Make the set info dialog prettier

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=browse
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