Sections

The ABC User Interface

The UI of our desktop client is designed to mimic the native look-and-feel of Windows XP providing users with familiar tools.

Activity Bar

The main user interface component is the Activity Bar illustrated in figure 1. This bar augments the Windows XP Taskbar since activities -- and not applications -- are the main focus in ABC. In order to facilitate an intuitive understanding of how the bar works, the activity bar is deliberately designed to resemble the Windows Taskbar. The `Activities' button is used to list the current user's activities as shown in figure 3. The action buttons are used to:

  1. Create a new activity
  2. Suspend the current activity
  3. Invite other participants
  4. Save the activity locally
  5. Perform a zoom on the activity
  6. To show the radar view
  7. Show the ABC control panel

Frequently used activities are shown in the middle part of the bar, and the status icons on the left reveal the collaborative status for the current user including information on other users.


Fig. 1 - The Activity Bar

Windowed applications are added and removed as services in an activity by using the `pin icon' in the application title bar as illustrated in figure 2. Applications can thus be moved to another activity by first removing them from the current one, suspending the activity and then resuming the new one and adding the application to this activity.


Fig. 2 - The pinning mechanism

In the ABC user interface, activities can be suspended and resumed in several ways. The typical way is to suspend the current activity and resume another by selecting a new activity in the activity bar or in the activity list as illustrated in figure 3.

For easy activity alternation, we have extended Windows XP with a `Ctrl+Tab' switcher similar in functionality to the Windows `Alt+Tab' switcher. By pressing `Ctrl+Tab' a user can quickly switch between his activities. The Windows `Alt+Tab' switcher is still active and is used to toggle between application windows within an activity. The same goes for the Windows taskbar which allows you to switch between applications within the current activity.


Fig. 3 - The list showing available activities

Zoom

The ABC user interface for Windows XP is also a zoomable window manager which enables the user to zoom in (focus) and out on (overview) activities as illustrated in figure 4. This zoom functionality is used to adapt the user interface to different display sizes and thus supports the principle of activity roaming in the underlying ABC architecture. When an activity is resumed on various Windows XP devices with different screen resolutions, the zoom component can be used to make the activity fit the current screen. In figure 4 the applications of a blurred activity is seen distributed on the desktop. The shortcut `Ctrl+1' is used to toggle between focus and blur and enables the user to quickly get an overview of an activity and focus on details by clicking on the window. The zoom functionality is primarily designed to enable the ABC user interface to support activity adaptation to different devices. The functionality which the zoom component provides also proved useful in single-device activity handling as it helped users manage activities with many windows in a spatial 2D metaphor that conserve the arrangement of windows. In contrast to other zoomable user interfaces, we maintain the window size and position, and do not automatically rearrange windows (like Expos\'e in Mac OS X) or introduce new layout metaphors using e.g. 3D.


Fig. 4 - A zoomed out activity - the numbers are used when a speech-command should select the application on which to focus

Radar

In order to navigate within an activity and to support peripheral awareness, we have implemented a radar view as illustrated in figure 5. This radar resides transparently on top of the application windows and a red square indicates the current viewport. By dragging the red square in the radar view, the current viewport on the Windows XP desktop is adjusted. Individual applications can also be dragged. Radar views have been shown to outperform other types of overview mechanisms when the manipulation is done discreetly, therefore we also support simply clicking in the view to move to that location. The viewports are local, which means that other collaborating users will not be able to see when the view is changed on one machine.


Fig. 5 - The radar view - the red square indicates the current view