GNOME Wireless Configuration UI Spec - Draft 5 (revision history)

Summary of User Requirements

Most users

Show available wireless networks (occasional by many)
Connect to an available network (frequent by many)
Monitor connection state (occasional by many)
Monitor signal strength (occasional by many)
Disconnect from network (frequent by many)

Some users

Automatically switch to a different network if connection is lost (occasional by few)
Manually switch to a different network  if connection is lost  (occasional by few)
Manually configure a new network connection (occasional by few)

Overview

This design extends the functionality of the exsiting network status monitor applet (gnome-netstatus in cvs), and adds a new capplet.   Ideally this requires co-operation from the network status monitor maintainer (markmc) to get the changes into the community... however, this is at odds with the current community approach, which is to have a separate WiFi applet.  I've filed bugzilla  RFEs 136083 and136087 about this, we'll see what develops...

A signal strength indicator is added to the applet, along with context menu items for editing and switching to a different wireless network.

The capplet allows discovery, creation and editing of wireless networks.

Applet

Non-wireless Interface

When the applet is displaying the  properties of a non-wireless interface (as selected in the applet's Properties dialog), its behaviour is identical to that  in current GNOME.  No wireless-related options are shown.  The only slight change is in the tooltip format, for consistency with the proposed tooltip format for wireless connections.

Icon

Unchanged from current GNOME, .ie:

Idle
Sending
Receiving
Sending/Receiving
Error
Disconnected


Context menu

Unchanged from current GNOME, i.e.:

Properties... 
About...
---
Remove
Lock
Move

Applet Tooltip for non-wireless interfaces

Slight change from current GNOME.

Format:

<b>interface</b>
Connected at [xxx [K|M]b/s] | Disconnected

Examples:

eth0
Connected at 10 Mb/s
eth1
Disconnected
ppp0
Connected at 57.6 Kb/s

Properties Dialog

Unchanged from current GNOME, i.e.:



Wireless Interface

When the applet is displaying the  properties of a wireless interface (as selected in the applet's Properties dialog), its behaviour is identical to that  in current GNOME.  No wireless-related options are shown.

Icon

The connection icon is augmented with a signal strength indicator (these icons for illustrative purposes only, will probably need something a bit classier):





0-24%
25-49%
50-74%
75-100%

Examples:

   
Idle, good signal
Sending, medium signal strength
Disconnected, low signal strength

TODO: For vertical panels, the bar should run horizontally below the icon.

Context menu

Two new entries compared to current GNOME:

Properties...
---
Connect  >>
Disconnect (greyed-out if not currently connected to a wireless network)
--
About...
---
Remove
Lock
Move

Clicking Disconnect disconnects the interface from all wireless networks.

The contents of the Connect menu depend on the current connection status and the number of wireless networks currently available.  In general it contains a radio button list of currently-available networks  and their current signal strength  (preferred networks in order of preference first, then a separator, then others in order of signal strength-- see examples below, and  capplet) ,  and an Edit Connections command. Clicking Edit Connections... opens the capplet.  Clicking a network name disconnects from the current network (if necessary) and connects to the selected network.  The WEP Entry Dialog is popped up if necessary.

Some examples of the Connect submenu:

1. Zero, one or more networks configured, but none currently available:

Edit Connections...

2. One  network available (whether a preferred network or not), and currently connected:

o Office       75%
  ---
  Edit Connections...

4. Two preferred and two other networks available, currently not connected to any of them::

  Office1       90%  <-- Preferred networks, in
  Office2       95%  <-- order of preference
  ---
  Office4       95%  <-- Other currently available networks, in
  Office3       90%  <-- order of signal strength
  ---
  Edit Connections...

Clicking "Office2" at this point would attempt to connect to the Office2  network.  After a successful connection, the Connect submenu would look  like:

  Office1       90%  <-- Preferred networks, in
o Office2       95%  <-- order of preference
  ---
  Office4       95%  <-- Other currently available networks, in
  Office3       90%  <-- order of signal strength
  ---
  Edit Connections...

Applet Tooltip

Format:

<b>SSID - interface</b>
Connected at [xxx [K|M]b/s] | Disconnected
Strength:  <signal strength>%

Examples:

HomeWireless - eth0
Connected at 10 Mb/s
Signal Strength: 85%
OfficeWireless - eth1
Disconnected
Signal Strength: 50%

Properties Dialog

Click here for the latest Glade file.

As current GNOME but with a signal strength indicator.  This entire frame (label, progress bar and percentage)  is hidden for non-wireless interfaces.  The signal strength indicator updates with the same frequency as the transmit/receive icon.

Window title (not shown in this pic) is "Connection Properties: <SSID> - <interface>".  Example:

Connection Properties: OfficeNet - eth0





The Configure button is only shown when the properties of a wireless connection are being shown, and  opens the capplet to allow the user to configure their connection.  NB: I don't know how easy this would be to implement, since the Configure button is currently only used to launch certain distros' own network configuration tools, which may themselves include wireless configuration tools.  So that code could get ugly :)

Capplet

The capplet can  be opened in one of two ways:

  1. By selecting Connect > Edit Connections ... on the applet's context menu
  2. By selecting Launch->Preferences->Internet->Wireless Connections.  (Discussion with Misha/Leo this morning:  we may want to add this capplet as a tab to the existing Internet Preferences dialog  (i.e. have  a Proxies and Wireless tab, and possibly others like Dial-Up in future) and have them managed by a Location/Profiles feature.   I've kept the capplet down to a single dialog, rather than a tabbed dialog of its own, in case we decide we definitely want to do this.)

Click here for the latest glade file.



As with other capplets, the dialog is instant apply.

The list is single-selection only, has a striped background appearance, and always has one item selected (the first in the list by default).  It shows all currently available wireless networks, as follows:
So, in the mockup above, the user has two preferred networks (First Floor and Second Floor, in that order), and is currently connected to the Second Floor network.  Another network, Third Floor, is also currently available.

The buttons behave as follows:


Default button = Connect


Default button = Add to Preferred

Edit Preferred Networks


Click here for the latest glade file.



This dialog is modeless and instant apply.  Changes are immediately updated in this dialog and in the parent capplet.  If the parent capplet is closed, so is this dialog.

The list is single-selection only, has a plain background, and always has one item selected (the first in the list by default). It shows networks that the user has added using the Add to Preferred button in the parent capplet.  (I didn't add a button to allow the user to add a new network from scratch, because there are already loads of buttons and I didn't think it would be a very useful feature... am I wrong?)

If the Automatically connect to available networks in this order checkbox is checked, the system connects to the first available network on the list when the wireless interface is started.  If it is unchecked, the user must connect manually to a wireless network, using the capplet.

The buttons behave as follows:

Wireless Network Properties

Click here for the latest glade file.



This dialog is modal, explicit apply and can be opened from either the Wireless Connections capplet (via the Properties or New Network button) or the Preferred Connections dialog (via the Properties button).  It allows the properties of a selected connection to be displayed or edited.


WEP Entry Dialog

Pops up when attempting to a network that requires an authentication key to be entered.

The WEP key for a preferred network is saved along with the rest of the network configuration, so the user should only have to enter it once.  However would a sysadmin want the ability to force the key to be entered every time a connection attempt is made?  If so, we'll need to provide a gconf key for this that APOC can configure.

NB: may want to consider integrating saved-WEP functionality with the new-but-relatively-untested GNOME 2.6 gnome-keyring mechanism, which allows multiple passwords to be saved/retrieved with a single master password.  (Similar to Mozilla password manager.)

The WEP key for non-preferred networks should be saved until the user logs out (so they should not have to enter it more than once per login session), and then deleted.

Click here for the latest glade file.






Document Revision History


Date
Version
Changes
5-Mar-04 Draft 1
Initial draft.
9-Mar-04 Draft 2
Remove unavailable networks from applet context menus.
12-Mar-04 Draft 3
Add speed to non-wireless tooltips, add New Network functionality, mention that non-preferred networks should have non-persistent WEP keys
15-Mar-04
Draft 4
Modify New Network functionality such that only available networks show up in the available network list again, and add alert screenshots/ glade files.
16-Mar-04
Draft 5
Include suggested use of Configure button in applet Properties dialog.