After the first two days of idea generation, we divided up into groups to design specific solutions for the open questions. Some Window Management and Widgets people tackled the following topics together:
- Where do widgets live and how they migrate between different views (e.g. dragging)
- Enabling window tiling and smart natural sizing/aspect ratio
- Defining groups of windows (same domain or user-defined)
- Introducing window tiling to newbies (initially full-screen, then introducing extra apps)
- Advanced window tiling
- Live icons - more data about an application available from an icon
- Associating icons/dialogs/widgets/applications/notifications of the same set/flow
- Where do notifications show up
- Are system/applications/widgets/web updates notifications different?
- Standard widget representations for different views
The discussion mainly steered towards window management and a new panel layout.
The top panel will have the following major areas.
- "Activities" button in the left corner that will bring up an overlay mode for switching context by starting new applications, opening documents, or switching to other open applications.
- Battery status, network status, time and weather information.
- Notifications center containing a dropdown with a stack of recent notifications and an indicator of how many new notifications there are and how urgent they are if the notifications are being hushed.
- User's name along with availability indicator in the right corner, pressing which brings up an actions menu with user's status, IM options, system preferences, and quit options.
The panel won't allow adding additional icons or application launchers to encourage use of the overlay mode and standardize the look. Widgets and application launchers can be placed on the optional sidebar.
There will be no bottom panel. The task list will be available via the overlay mode or the sidebar.
The panel design should stay simple and work well for the portrait mode.
Overlay Mode for Switching Context
Overlay mode takes up the whole screen, but leaves the top panel in place. It can be started by pressing the Activities key or by using some short key combination. It contains a sidebar with top applications and recently used documents. Selecting more for either devotes a big section of the screen to an application browser or to a file browser/Journal. In a default mode, most of the screen is used for displaying used workspaces expose style, and applications in those workspaces expose style as well. There is an add button for adding more workspaces.
Clicking on an application or a document places it on a selected workspace and takes the user back to the workspace. It's possible to drag applications and documents to workspaces and between workspaces. This leaves the user in the expose mode until the user clicks on the workspace or on some application on the workspace to get back to it. Holding a Ctrl key while clicking multiple applications on a workspace restores all of them and takes the user to the workspace. Restoring multiple applications at once should result in a smart tiling of these applications.
Because clicking the Activities button and getting the sidebar with applications and documents should feel like a menu, the user should be able to click and hold the mouse button down, releasing it on the application that should be launched/document that should be opened/application that should be restored. This will result in a single click context switch.
The overlay mode should make use of workspaces a more natural part of the user interaction flow and make application selection and context switching faster by displaying all applications on all workspaces expose style.
It should be possible to specify the preferred tiling for a set of applications by switching from expose style workspace view to a layout view, defining the set of applications that comprise a group, and rearranging their layout. Once some applications are specified as a part of a group, alterations to their respective layout that are done during a regular workspace mode should be saved.
New Actions Menu
The actions menu will be available by clicking on the desktop user's name at the top right corner of the panel.
The highlights are incorporating the IM activity such as changing a status, availability mode, and bringing up the contacts list.
The desktop user image is easily changeable from the menu. Updating the status should affect all the places where the user likes to display their status, such as Facebook and Twitter.
As we expect the sidebar to contain some desirable functionality, we are including a view sidebar toggle in this key menu.
The quit options choice was influenced by this Exit Strategy document.
There should be one centralized way to display all sorts of notifications, ranging from system updates about battery time left to updates about new e-mails to updates about your friends' activity on the web to rss feed updates. People currently poll too many various applications and web pages to get the new information, and the desktop is well positioned to aggregate all of them. Application developers should be aware of that feature and use it. It then would be up to the user to specify which applications should place updates into the notifications stack and which notifications should pop up and when. The notification center would be represented by an icon on the top panel, with an indicator for the number and urgency of unseen notifications, and stacker pop ups of recent notifications.
The notification stacker should provide an ability to view earlier notifications and also filter by type. Some notifications, like battery time left information, should only use one notification bubble in the stack, and not place multiple ones with updated information. As such, the notifications stack should be similar to the Mugshot stacker or Facebook's panel notifications pop up.
Each notification should have an icon for an application it's coming from, a title, a (possibly expandable) description that might include images, and an ability to include links to applications or web pages. It might also be possible to place buttons on notifications if there is a use case for this.
A user should be able to hush the notifications pop-ups for a certain period of time, in which case only the indicator for the number and urgency of unseen applications should be updated.
Sidebar and Widgets Placing
The sidebar should be placed on the left side underneath the "Activities" button and be transformed into the activities/files selector sidebar in the overlay mode.
The sidebar should come preconfigured with useful widgets, like a recent files selector/Journal widget, task list widget, most used applications widget, and some fun ones, like Rhythmbox current song album art display. The sidebar should have two modes - a wide one and a slim one that only contains icons. It should be possible to drag the widgets out from the sidebar to the desktop or to rearrange their positions on the sidebar. It should also be possible to remove a widget by right-clicking on it and selecting a remove option from the menu.
Widgets selection should be available from the desktop preferences menu or there should be an "add a widget" option on the sidebar. It should be possible to add Google Gadgets as desktop widgets.
Since the sidebar is optional, it doesn't have to be available and shouldn't be needed in the portrait mode.
The sidebar mode and widget placing should be the same across all workspaces. Because it should be possible to place the widgets on the desktop, an empty workspace would make all the widgets visible. We can call it My(Work)Space and make it available as some sort of a desktop homepage for the user, similar to the iGoogle homepage.