Collecting ground for ideas that could go into the design.
== Mail ==
# Reference mails while composing mail
* It should be possible to view other mails for reference while composing a mail, with minimal interruption to the workflow.
* Drag & drop parts of other threads/mails to quote it in your mail
# Focus Mode for mail composer
# Focus Reading mode
A fullscreen interface to quickly go through inbox and categorize all mails.
# Accounts as activities
Set current account to avoid having to select that explicitly.
# Automatically determine identity to use
* Determine identity to use for responses by selecting the identity matching the email address that the mail has been sent to.
* Potentially determine identity by currently selected folder and the most used address there.
# Send email
First select account (if necessary), second address in a nice popup with searchbar (like phone), then compose message
# Global undo
All actions are reversible, even if just for a short period.
# Summary page
* Unread mails
* Open invitations
* Open todos
* Upcoming events
# Attachments in the cloud
* Save attachments to cloud.
* Attach from cloud
# Invitation inbox
Move invitations to open invitations and don't keep them in the mail inbox.
# Attachment metadata
Keep metadata with saved attachment to find mail again where the attachment is coming from.
# Attachment view
# Folder navigation
* enabled state
* github-like tree presentation
* Only present parent hierarchy of folder
* Make non-enabled folders browsable by expanding any visible folder (in the worst case that is the account's toplevel folder)
** The non-enabled folders vanish again when navigating outside of the currently selected subtree
# Thread navigation
* Flat threadlist. Expand to github-like navigation in list view.
* Conversation view in message viewer.
# Application navigation
* Always visible sidebar with application icons (for d&d), expands with names on hover
# Composer
* Inline for quick replys
* Composer is an overlay (focus mode style)
* For referencing stuff the left side of the overlay turns into a partial application view that allows to reference all content in kube (mails, events, todos, ...). This doesn't mess with the current application state.
* Detatch composer into separate window still useful for:
** Reference stuff outside of kube
** Have multiple composers open
# Per account contact favorites for recepient selection
# Always assemble full threads including sent mails
* deduplicate for users that get their own replies from the mailinglist
# Sent mail folder
* Not configurable outside of account (a pop account just has a local maildir as well for that)
# Open sender in addressbook
* Any sender can be viewed in the addressbook viewer, information from available vcards is automatically merged in
# Show all attachments of a thread in the thread header
* But also show them next to the actual message header
# Only show subject of thread once
* Show again in case of change in the middle of a thread
# Outbox
* One for the complete client
* Appears only when something is in the queue and shows count or error state
* Flat list with send-later date visualization and potential error state
* Delete, edit, retry sending actions
* D&d on outbox or removing outbox is not possible
== Unified messaging ==
== Calendar ==
#
== Addressbook ==
# Search centric interface
# Prioritize favorites by statistics
* Current account first, always
* Prioritize most recent/most used
* Favorites is a fixed number of contacts (i.e. 5)
* The rest is alphabetic
# Forward contact without notes
* Notes likely contain personal information that you don't always want to share with third parties. When forwarding a contact we can ask if the notes should be sent as well and default to not sending them.
# Deduplicate contacts to persons
# Provide interface to setup and visualize trust for crypto
* Green lock for secure
== Faceted Search ==
* Instead or additionally to a powerful query syntax faceted search should make it easy to assemble multiple search constraints
** Search first for the folder you're interested, then search for the actual mail
* Substring match for autocompletion (command-t)
== Project as Context ==
* Set a project (a glorified tag) as context to automatically have:
** Relevant contacts first in addressbook
** Different mail folder selection
** Relevant tasklists and notebooks
** Relevant calendars and events
** Shareable projects that automatically share notes/tasklists/mailinglists/....