Copyright 2008 Sun Microsystems, Inc. 1. Introduction 1.1. Project/Component Working Name: Avant-window-navigator 1.2. Name of Document Author/Supplier: Henry Zhang (hua.zhang@sun.com) 1.3. Date of This Document: 10/07/08 1.4. Name of Major Document Customer(s)/Consumer(s): 1.4.1. The PAC or CPT you expect to review your project: Solaris PAC 1.4.2. The ARC(s) you expect to review your project: LSARC 1.4.3. The Director/VP who is "Sponsoring" this project: Robert.Odea@Sun.Com 1.4.4. The name of your business unit: JDS Desktop Engineering, OPG 1.5. Email Aliases: 1.5.1. Responsible Manager: leo.binchy@Sun.COM 1.5.2. Responsible Engineer: hua.zhang@Sun.COM 1.5.3. Marketing Manager: jeff.mcmeekin@sun.com 1.5.4. Interest List: awn@sun.com 2. Project Summary 2.1. Project Description: Avant Window Navigator (AWN/Awn) is a dock-like navigation bar for the desktop. 2.2. Risks and Assumptions: 1. The AWN manager allows users to easily download and install new applets from the Applet Gallery. There is a risk that a user might install additional applets which might not work properly due to a missing dependency, or because they are not stable. So if user like to add new applets, should go to Applet Gallery, and install the stable ones. If someone develop the applet for AWN, should follow Applet Submission at http://wiki.awn-project.org/Awn_Extras:Applet_Submission 2. AWN does not support accessibility at the moment, the community has not consider this before, so need to take some push so to make it support accessibility. Currently user can use Ctl+Alt+Tab to switch between the running applications, so this supports some degree of accessibility 3. Business Summary 3.1. Problem Area: Now all of the Operating System is providing the desktop tool for user to view and control system, user can start many applications in the system, so it's useful to provide user a GUI tool to list all of the running applications, and user can use it to active/deactive the application or access some location by simply click one icon. This project provides an alternative GUI panel for easier navigation of running applications and the filesystem. 3.2. Market/Requester: JDS Desktop group 3.3. Business Justification: AWN provides an alternative GUI panel which displays a dock-like bar at the bottom of the screen. It shows the user all of their running applications and allows users to easily switch between them. It also allows users to specify commonly used folders on the filesystem which will be shown to the user so they can quickly navigate to them by clicking on an icon. User can also install additional applets from the upstream community if they wish. 3.4. Competitive Analysis: AWN has a similar approach to the panel as the Leopard dock in MacOS. 3.5. Opportunity Window/Exposure: It is expected that this project will be integrated into Nevada B99. 3.6. How will you know when you are done?: When it is ported to Nevada and runs correctly. The project will be complete when there are no stoppers, P1 or P2 bugs. 4. Technical Description: 4.1. Details: Avant Window Navigator (AWN/Awn) is a dock-like navigation bar for the desktop that positions itself at the bottom of the screen. And it can be used to keep track of open windows and behaves like the gnome-panel window list applet. You can also add a place or location (home folder or a drive for example) to the dock, so users have more control of their computer just from the dock. AWN also has the ability to embed external applets. Look and feel are fully customisable, and theming support is also available. AWN ships with only the Launcher/Taskmanager applet by default, which is used to manage the launcher and task running. Many other applets, such as the Main Menu, "Stacks", CPU meter, and GMail notifier applets can be found in Awn Extras. After installing additional applets, users can install them to the dock via awn-manager in the "Applets" section. Users also can develop plugins for AWN, which allow already-existing applications to interact with AWN. Awn Extras is a project focusing on providing a number of important applets (not unlike the panel applets for Gnome and Xfce) in a single package, along with a number of plugins that allow applications to better interface with Awn's task manager. These applets range from a Trash applet to fancy workspace switcher. To obtain them, follow the Awn Extras download instructions. You will find plugins in /awn-extras/awn-plugins. If users wish to develop their own applets, it's easy enough. If the applet is written in Python, you can install it directly, no need to compile, but if it is in C or Vala, Makefile will be provided to handle the installation details properly, then you can compile and install. Now on Solaris we have gnome-panel run by default, and AWN is also the Similar tool. At the moment, AWN will not replace gnome-panel. Instead, these programs are intended to be run together. Reasons why we cannot replace gnome-panel with AWN include: * 1, AWN need compositing support. Before can run AWN, you have to start Compiz, and then AWN can run, so in a non-Compiz environment, we can only use gnome-panel. * 2, There is no launch menu by default in AWN, and the AWN menu can't updates when applications are installed. * 3, Trash in AWN is not stable enough now. We also ship gDesklets on Solaris. gDesklets provides applet-like objects which display on the desktop background. These compliment whatever style of panel the user may be using, whether they are using gnome-panel or AWN. 4.2. Bug/RFE Number(s): N/A 4.3. In Scope: The applets included into the core distribution of AWN 4.4. Out of Scope: Applets developed by third party developers and the ones in awn-extras. 4.5. Interfaces: Imported Interfaces Interface Stability Comments ------------------- ----------- ----------------------------------- X11 libraries & protocols Standard ASARC 1995/265, PSARC 1998/299 libXrender.so.1 External dbus Volatile LSARC/2006/368 libXdamage External LSARC/2003/506 libXcomposite Volatile PSARC/2007/240 gnome-python2-gconf Uncommitted LSARC/2005/506 gnome-python-desktop Volatile LSARC/2006/202 Python Volatile PSARC/2005/532, PSARC/2006/290 PSARC/2006/290 GNOME Committed Platform Libraries Committed LSARC/2007/520 GTK+ library GNOME 2.20 Exported Interfaces Stability Comments ------------------------- ------------- --------------------------------- /usr/bin/awn-applet-activation Volatile /usr/bin/avant-window-navigator Volatile /usr/bin/awn-launcher-editor Volatile /usr/bin/awn-manager Volatile /usr/bin/awn-schema-to-gconf Volatile SUNWavant Uncommitted Package name SUNWavant-devel Uncommitted Package name SUNWavant-root Uncommitted Package name 4.6. Doc Impact: Man page will need to be added 4.7. Admin/Config Impact: There are no changes to the system administration and configuration. 4.8. HA Impact: N/A 4.9. I18N/L10N Impact: To be needed 4.10. Packaging & Delivery: The new packages are: - SUNWavant - SUNWavant-devel - SUNWavant-root 4.11. Security Impact: There is no additional security impact for Solaris. 4.12. Dependencies: libwnck-1.0 gnome-desktop-2.0 libgnome-2.0 gnome-vfs-2.0 gconf-2.0 x11 xproto dbus-glib-1 libglade-2.0 xdamage xcomposite xrender python2.5-dev python-gnome2-dev python-gnome2-desktop-dev python-gnome2-extras-dev 5. Reference Documents: Avant Window Navigator main project page: http://launchpad.net/awn Avant Window Navigator Wiki: http://wiki.awn-project.org/ Avant Window Navigator Forum: http://www.planetblur.org/hosted/awnforum 6. Resources and Schedule: 6.1. Projected Availability: Expect to integrated into Nevada in build 99 in Q3 2008 6.2. Cost of Effort: Development 1.0 Engineers - 1 Months Testing 0.5 Engineers - 1 Week RE 0.5 Engineers - 1 Week 6.3. Cost of Capital Resources: N/A 6.4. Product Approval Committee requested information: 6.4.1. Consolidation or Component Name: JDS / OpenSolaris 6.4.3. Type of CPT Review and Approval expected: Standard 6.4.4. Project Boundary Conditions: None 6.4.5. Is this a necessary project for OEM agreements: No 6.4.6. Notes: N/A 6.4.7. Target RTI Date/Release: Nevada B99 - August 2008 6.4.8. Target Code Design Review Date: August 2008 6.4.9. Update approval addition: New project, no Solaris PAC approval yet 6.5. ARC review type: FastTrack 7. Prototype Availability: 7.1. Prototype Availability: August 2008 7.2. Prototype Cost: 1 engineer 1 QA 1 RE