ApplicationMenu
|
Size: 1481
Comment:
|
Size: 8876
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 11: | Line 11: |
| We need to test the global menu on as many applications as possible. We will have a PPA for Lucid so that upstream developers and enthusiasts can test the Global Menu without committing to testing on Maverick. | We need to test the global menu on as many applications as possible. We will put the global menu in the Unity (Lucid) PPA so that upstream developers and enthusiasts can test the Global Menu without committing to testing on Maverick. |
| Line 20: | Line 20: |
| * Alpha 2 - Testing * Alpha 3 - Turn off double menu feature |
* Alpha 2 - Turn off double menu feature * Alpha 3 - Testing |
| Line 24: | Line 24: |
| == How to Test == | == Installation == === Netbook Installation === |
| Line 26: | Line 27: |
| Note: When testing we purposely enable the Global Menu AND keep the old menu in place. That was it is obvious to you if anything is broken. During testing you will have double menus! | '''NOTE''': The Unity panel ''does not support'' the extra appmenu indicator yet. But you can already install the different parts, and future updates will activate the feature automatically. |
| Line 28: | Line 29: |
| 1. Install the Global Menu from this PPA. 1. Instructions to use go here. 1. What things to test goes here. 1. How to file bugs and tag goes here. 1. How upstreams can get help fixing their applications go here. |
1. Install Unity from the [[https://launchpad.net/~canonical-dx-team/+archive/une|Unity PPA]]. The global menu will be part of Unity so you only need to install the "unity" package and the "indicator-applet-appmenu" package. 1. Log out and log in back into the Unity session. |
| Line 34: | Line 32: |
| == Applications to Test == | === Desktop Installation === |
| Line 36: | Line 34: |
| * TBD, either one big grid or a bunch of tagged bugs. | For development purposes, a gnome-panel compatible version is also available. 1. Register the [[https://launchpad.net/~canonical-dx-team/+archive/une|Unity PPA]] in your source.list. 1. Install packages: {{{ apt-get install appmenu-gtk indicator-applet-appmenu indicator-appmenu}}} 1. Right click on the panel, and add the "Indicator Applet Appmenu" applet. 1. Load an application with this env. flag: {{{GTK_MENUPROXY="libappmenu.so" gnome-terminal}}} 1. It should now look like this: {{attachment:globalmenu.png}} Note: if you already have other gnome-terminal's open, make sure you close them all before you issue the command above ||<style="background:Peru">Note: When testing we purposely enable the Global Menu AND keep the old menu in place. That way it is obvious to you if anything is broken. Unity will also pull in indicator-datetime, so you will end up with two clocks too. Please don't file bugs on double menus and clocks, it's like that on purpose! See below.|| == Test Plan == === Testing the rendering of the menus === The appmenu indicator presents menus on the panel but there are particular cases where this may not work, like with: * applications that have non-standard GTK or QT menu items, or specific widgets like the Firefox throbber * applications that have multiple menubars * applications that have a fullscreen mode The goal is to identify all the applications that may not be working properly in those particular cases. Note: this only works with QT or GTK based applications. Namely, OpenOffice, Mozilla or Java AWT applications are not supported. 1. Test the Application * Check every menu item, every sub menu, and every submenu item. * Check for state changes, things that cause the menus to become insensitive or reorder. * Check to make sure icons, translations, and text are correct. * If something is acting wrong check to see if the normal menu in the application window exhibits the same behavior. * Fill in the status of the application in the grid below. 1. Filing bugs: * For applications that have a bug with the global menu, file a bug on launchpad and tag it with "global-menu". * File a wishlist bug in the upstream bug tracker and ask them if they would consider supporting the global menu. Provide links to this page and to the documentation so that it's easy for application authors to find what they need. * Make sure you link the launchpad bug to the upstream bug ([[https://help.launchpad.net/Bugs/MultiProjectBugs|Instructions]]) so that we can follow the bug and see if any developers need help adapting their application. === Testing the appmenu module === The panel need to present the menubar of the currently active application. This part of the test plan ensures that this behavior is properly implemented. ==== Main use cases to support (User level) ==== * '''Using the (default) desktop menu''' - when the user is using the desktop (ie no other application is the active application), the system needs to display the default desktop menu * '''Opening an application''' - when the user opens an application, the System needs to switch the panel menu to display the menu of that application * '''Switching to another application''' - when the user switches to another application (ie another application becomes the 'active' one), the System needs to switch the panel menu similarly * '''Quitting an application''' - when the user quits an application, the System will have to determine which other application becomes the active one, and display the corresponding menu; if no application is active, a default menu should be displayed ==== Other use cases (System level) ==== * '''Managing transient windows''' - when transient windows take the focus, the System needs to present the right panel menu to the user * '''Managing unresponsive applications''' - the System needs to manage applications that either block or crash * '''Managing unsupported applications''' - the System needs to display a minimal menu corresponding to an active application that does not support our menu system ==== Filing bugs ==== * Make sure you can reproduce the issue and write down the steps to trigger the problem * [[https://bugs.launchpad.net/indicator-appmenu|File a bug against indicator-appmenu]] * Tag it with "global-menu" == Getting Help == If you're an upstream app developer and your application doesn't work we have a few options for you: 1. Upstream Application Developers - If you use GTK or Qt menus without any custom widgets it should Just Work. In some cases removing the custom menu bits should make it all work. 1. Ted Gould (tedg) and Cody Russell (bratsche) are available on #ayatana on Freenode IRC if you have a special case and need help. 1. The [[https://lists.launchpad.net/ayatana/threads.html|Ayatana Mailing List]] is the right mailing list to post technical questions and queries. 1. If you still can't find help mail [[http://launchpad.net/~jorge|JorgeCastro]] and he'll hunt someone down for you. == Applications we Have to Test == Here are all the applications that we ship by default on the Netbook Edition. After you've tested mark the status either green or red. Make sure to link to the bug report in the status column if there's a problem. || Package || Checked by || Status || || ubiquity || || || || gparted || || || || apport-gtk || || || || evolution (maybe evolution --express) || || || || file-roller || || || || empathy || || || || gcalctool || || || || gconf-editor || || || || gdm || || || || gedit || Cody Russell ||<bgcolor="#00ff00">|| || gnome-about || || || || gnome-applets || || || || software-center || || || || gnome-codec-install || || || || transmission-gtk || || || || gnome-control-center || || || || system-config-printer-gnome || || || || gnome-media || || || || gnome-menus || || || || gnome-nettool || || || || seahorse || || || || gnome-system-monitor || || || || gnome-system-tools || || || || gnome-terminal || || || || gnome-utils || || || || gucharmap || || || || checkbox-gtk || || || || language-selector || || || || chromium-browser || ||<bgcolor="#ff0000"> || || firefox || ||<bgcolor="#ff0000"> || || nautilus || || || || banshee || || || || rhythmbox || || || || alacarte || || || || ssh-askpass-gnome || || || || synaptic || || || || software-properties-gtk || || || || totem || || || || update-manager || || || || gdebi || || || || yelp || || || || gnome-disk-utility || || || || aisleriot || || || || gnome-mahjongg || || || || gnome-sudoku || || || || quadrapassel || || || || gnome-volume-control || || || || onboard || || || || openoffice.org || ||<bgcolor="#ff0000">|| || evince || || || || gnome-screensaver || || || || jockey-gtk || || || || usb-creator-gtk || || || || computer-janitor-gtk || || || || cheese || || || || simple-scan || || || || gwibber || || || || tomboy || || || || shotwell || || || == Applications that we Should Test == These applications are not shipped in UNE, but would be good to test anyway due to popularity or because you're passionate about them. Feel free to add what you want to work on! || Package || Checked by || Status || || blender || || || |
Global Menu
This will be the working page for tracking progress on the Global Menu for the Ubuntu Netbook Edition.
Announcement and design goals
Goals
We need to test the global menu on as many applications as possible. We will put the global menu in the Unity (Lucid) PPA so that upstream developers and enthusiasts can test the Global Menu without committing to testing on Maverick.
XUL applications (such as Firefox and Thunderbird) and OpenOffice are NOT targets for Maverick, as they will require more work.
- We need testing on GTK and Qt applications.
- Work on supporting other the global menu on other toolkits would be welcome, but not a priority for the DX team, help wanted.
Schedule
- Alpha 1 - Enable the global menu in Maverick and Lucid PPA.
- Alpha 2 - Turn off double menu feature
- Alpha 3 - Testing
- Beta/RC - Done
Installation
Netbook Installation
NOTE: The Unity panel does not support the extra appmenu indicator yet. But you can already install the different parts, and future updates will activate the feature automatically.
Install Unity from the Unity PPA. The global menu will be part of Unity so you only need to install the "unity" package and the "indicator-applet-appmenu" package.
- Log out and log in back into the Unity session.
Desktop Installation
For development purposes, a gnome-panel compatible version is also available.
Register the Unity PPA in your source.list.
Install packages: apt-get install appmenu-gtk indicator-applet-appmenu indicator-appmenu
- Right click on the panel, and add the "Indicator Applet Appmenu" applet.
Load an application with this env. flag: GTK_MENUPROXY="libappmenu.so" gnome-terminal
- It should now look like this:
Note: if you already have other gnome-terminal's open, make sure you close them all before you issue the command above
Note: When testing we purposely enable the Global Menu AND keep the old menu in place. That way it is obvious to you if anything is broken. Unity will also pull in indicator-datetime, so you will end up with two clocks too. Please don't file bugs on double menus and clocks, it's like that on purpose! See below. |
Test Plan
Testing the rendering of the menus
The appmenu indicator presents menus on the panel but there are particular cases where this may not work, like with:
- applications that have non-standard GTK or QT menu items, or specific widgets like the Firefox throbber
- applications that have multiple menubars
- applications that have a fullscreen mode
The goal is to identify all the applications that may not be working properly in those particular cases.
Note: this only works with QT or GTK based applications. Namely, OpenOffice, Mozilla or Java AWT applications are not supported.
- Test the Application
- Check every menu item, every sub menu, and every submenu item.
- Check for state changes, things that cause the menus to become insensitive or reorder.
- Check to make sure icons, translations, and text are correct.
- If something is acting wrong check to see if the normal menu in the application window exhibits the same behavior.
- Fill in the status of the application in the grid below.
- Filing bugs:
- For applications that have a bug with the global menu, file a bug on launchpad and tag it with "global-menu".
- File a wishlist bug in the upstream bug tracker and ask them if they would consider supporting the global menu. Provide links to this page and to the documentation so that it's easy for application authors to find what they need.
Make sure you link the launchpad bug to the upstream bug (Instructions) so that we can follow the bug and see if any developers need help adapting their application.
Testing the appmenu module
The panel need to present the menubar of the currently active application. This part of the test plan ensures that this behavior is properly implemented.
Main use cases to support (User level)
Using the (default) desktop menu - when the user is using the desktop (ie no other application is the active application), the system needs to display the default desktop menu
Opening an application - when the user opens an application, the System needs to switch the panel menu to display the menu of that application
Switching to another application - when the user switches to another application (ie another application becomes the 'active' one), the System needs to switch the panel menu similarly
Quitting an application - when the user quits an application, the System will have to determine which other application becomes the active one, and display the corresponding menu; if no application is active, a default menu should be displayed
Other use cases (System level)
Managing transient windows - when transient windows take the focus, the System needs to present the right panel menu to the user
Managing unresponsive applications - the System needs to manage applications that either block or crash
Managing unsupported applications - the System needs to display a minimal menu corresponding to an active application that does not support our menu system
Filing bugs
- Make sure you can reproduce the issue and write down the steps to trigger the problem
- Tag it with "global-menu"
Getting Help
If you're an upstream app developer and your application doesn't work we have a few options for you:
- Upstream Application Developers - If you use GTK or Qt menus without any custom widgets it should Just Work. In some cases removing the custom menu bits should make it all work.
- Ted Gould (tedg) and Cody Russell (bratsche) are available on #ayatana on Freenode IRC if you have a special case and need help.
The Ayatana Mailing List is the right mailing list to post technical questions and queries.
If you still can't find help mail JorgeCastro and he'll hunt someone down for you.
Applications we Have to Test
Here are all the applications that we ship by default on the Netbook Edition. After you've tested mark the status either green or red. Make sure to link to the bug report in the status column if there's a problem.
Package |
Checked by |
Status |
ubiquity |
|
|
gparted |
|
|
apport-gtk |
|
|
evolution (maybe evolution --express) |
|
|
file-roller |
|
|
empathy |
|
|
gcalctool |
|
|
gconf-editor |
|
|
gdm |
|
|
gedit |
Cody Russell |
|
gnome-about |
|
|
gnome-applets |
|
|
software-center |
|
|
gnome-codec-install |
|
|
transmission-gtk |
|
|
gnome-control-center |
|
|
system-config-printer-gnome |
|
|
gnome-media |
|
|
gnome-menus |
|
|
gnome-nettool |
|
|
seahorse |
|
|
gnome-system-monitor |
|
|
gnome-system-tools |
|
|
gnome-terminal |
|
|
gnome-utils |
|
|
gucharmap |
|
|
checkbox-gtk |
|
|
language-selector |
|
|
chromium-browser |
|
|
firefox |
|
|
nautilus |
|
|
banshee |
|
|
rhythmbox |
|
|
alacarte |
|
|
ssh-askpass-gnome |
|
|
synaptic |
|
|
software-properties-gtk |
|
|
totem |
|
|
update-manager |
|
|
gdebi |
|
|
yelp |
|
|
gnome-disk-utility |
|
|
aisleriot |
|
|
gnome-mahjongg |
|
|
gnome-sudoku |
|
|
quadrapassel |
|
|
gnome-volume-control |
|
|
onboard |
|
|
openoffice.org |
|
|
evince |
|
|
gnome-screensaver |
|
|
jockey-gtk |
|
|
usb-creator-gtk |
|
|
computer-janitor-gtk |
|
|
cheese |
|
|
simple-scan |
|
|
gwibber |
|
|
tomboy |
|
|
shotwell |
|
|
Applications that we Should Test
These applications are not shipped in UNE, but would be good to test anyway due to popularity or because you're passionate about them. Feel free to add what you want to work on!
Package |
Checked by |
Status |
blender |
|
|
DesktopExperienceTeam/ApplicationMenu (last edited 2012-09-06 23:39:38 by 99-72-105-142)