TODO (last updated 2003-02-07)
==============================

Seahorse TODO list.
Items are listed under the stable release version goal.
For example, items under 0.8.0 will be implemented in the 0.7 series,
and items under 1.0 will be implemented in the 0.9 series.

A = assigned
X = finished
? = not necessarily required, maybe not possible or worth effort

Contact a maintainer if you'd like to be responsible for a task.
Also check bugzilla for other tasks.

0.8 (Focus: Key management)
-----------------------------

[?] Require GPGME 0.4 (Resp: Jacob)
[ ] Require GnuPG 1.2.2 (Resp: Jacob)
[A] Key edit operations (Resp: Jacob)
	[X] Add uid
	[X] Add subkey
	[A] Sign key (wait for signature listing)
	[X] Delete subkey
	[X] Change subkey expires
	[A] Add revoker (wait for revoker listing)
	[?] List revokers
	[?] Delete signature (requires gpgme 0.4)
	[?] Revoke signature (requires gpgme 0.4)
	[X] Revoke subkey
	[ ] Delete uid (requires gpg 1.2.2)
	[ ] Set primary uid (requires gpg 1.2.2)
	[?] Add photo id (wait to show photo id)
	[?] Show photo id
	[ ] User id preferences (requires gpg 1.2.2)
[ ] Show key signatures (Resp: Jacob) (requires gpgme 0.4)
[X] Show user IDs instead of subkeys in key manager (Resp: Jacob)
[?] Export key to server
[?] Import key from server
[A] Make libseahorse; comment with gtk-doc (Resp: Jacob)
[ ] Nice fingerprint (Resp: Jacob)
[ ] Encrypt & Sign operation; update as necessary (Resp: Jacob)
[A] Update help with new usage & more concepts (Resp: Jacob & Gnome Doc Team)
[ ] Icons for text editor popup (Resp: Jacob)
[A] Don't list disabled or non-capable keys for encryption recipients (Resp: Jacob)
[X] Key sorting by uid, trust & validity (Resp: Jacob)
[X] Hide subkeys be default (Resp: Jacob)
[ ] Icons in list for visual indication of key status (Resp: Jacob)
[A] Right click key menu (Resp: Jacob)
[?] If key's owner trust changes, must refresh all signed keys to recalc validity (wait for key signatures)

1.0 (Focus: Gnome integration & usability)
--------------------------------------------

[ ] Command line operations (Resp: Jacob)
[ ] Nautilus component (Resp: Jacob) (requires command line)
[ ] Drag data in = import (Resp: Jacob)
[ ] Drag key out = export (Resp: Jacob)
[ ] Drag between recipients (Resp: Jacob)
[?] Multiple key selection (Resp: Jacob)
[ ] Help glossary and more concepts (Resp: Jacob & Gnome Doc Team)
[ ] Usability review (Resp: Jacob & Gnome Usability Team)
[ ] Require Gnome2.2 (Resp: Jacob)
[ ] Accessability review (Resp: Jacob & Gnome Usability Team)
[ ] Context gconf listener (Resp: Jacob)
[ ] Error check gconf & gnome help (Resp: Jacob)

Future Features
---------------

[ ] Gedit plugin
[ ] Evolution component
[ ] Bonoboize
[ ] Visual trust diagram
[ ] Complete usage & concept manual
[ ] Other app plugins

Non-tasked issues/todo
----------------------

1. Register with gnome-vfs so can do file ops in nautilus, similar to file-roller.
However, due to the use of seahorse's preferences, a control-center capplet (is this the correct word?)
should be provided.
	*: Import, Encrypt, Sign
	.asc: Decrypt, Verify
	.gpg: Decrypt
	.sig: Verify
	no file: Export
2. Changing a key's owner trust may affect the validity of any keys it has signed.
Since keys are cached, the signed key's validity may not be correct until it has been updated.
The context could do a second pass through the keys so that each key will listen
to changes to those keys that have signed it.
3. Register a keys:/// uri, which could allow editing from within nautilus.
4. Not every operation needs to be run with the main context. For example,
signing does not necessarily require a complete key listing.
Perhaps a new context should not automatically list keys, but instead do so on demand.
