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:
- By selecting Connect > Edit Connections ... on the applet's context menu
- 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:
- All available preferred networks are listed first, in order of
preference (see
Edit Preferred Networks). In
these mockups, preferred networks are listed in bold text, however some
sort of icon in the first column might be better.
- Any other available networks are shown next, in decreasing order
of signal strength.
- Any networks to which the user is currently connected are
indicated by a 'connected' icon in the first column. In this
mockup, the user is connected to the Second Floor network.
- If Show Encrypted Networks Only
is selected, all non-encrypted networks are hidden from the user,
whether they are Preferred or not.
- If Show Preferred Networks Only is selected, no non-preferred
networks areshown. (I'm actually doubtlful that this one is
necessary, given that preferred networks are always shown first in the
list anyway.)
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:
- Connect. When
a disconnected network is selected, this button is labelled Connect
(not mnemonic on O, not on C as in mockup). When a connected
network is selected, this button is labelled Disconnect.
Clicking this button attempts to connect or disconnect from the
selected network as appropriate. When connecting to an encrypted
network, the WEP Key dialog may be
displayed.
- Refresh. Updates
the
list of available networks and their signal strengths. We may opt
to leave this button out if we make the list updateautomatically every
few seconds instead.
- Properties. Opens
the Network Properies dialog for the selected network.
- New Network. Opens
the Wireless Network
Properties dialog with the default values pre-selected, to allow
the user to enter the details of a network
that is available but not listed because it did not identify
itself. When the Properties dialog is OKed, connectivity is
checked, and an alert displayed depending on the result (click here for latest Glade file):
If the network is available:
Default button = Connect
If the network is not available:
Default button = Add to Preferred
- Add to Preferred.
Adds the selected non-preferred network to the user's Preferred
Networks list. Clicking this button opens the Preferred Networks dialog, with
the chosen network added to the bottom of the list and pre-selected.
The Add to Preferred button is disabled when a preferred network
is selected.
- Edit Preferred Networks.
Opens the Preferred Networks
dialog.
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:
- Up. Moves the
selected network upwards by one position in the list. Disabled
ifthe selected network is already first in the list.
- Down. Moves the
selected network downwards by one position in the list. Disabled
ifthe selected network is already last in the list.
- Remove. Removes the
selected network from the list, after confirmation from the user (click here for latest Glade file):
Default button = Remove
- Properties. Opens
the Wireless Network Properties
dialog.
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.
- Name (SSID). The
name/SSID of the connection.
- Data encryption checkbox.
Checked if the network requires a data encryption key to be
entered prior to connection.
- Authentication checkbox.
Checked if the network requires an authentication key to be entered
prior to connection.
- Network (WEP) key.
The currently-stored WEP key for this connection is editable
here, in a masked entry field. Disabled unless either the Data encryption or Authentication checkboxes are
checked, and the Key is provided
automatically checkbox is not
checked.
- Key format. Drop-down
list box. The options are Hexadecimal
or ASCII. Disabled unless
either the Data encryption or Authentication checkboxes are
checked, and the Key is provided
automatically checkbox is not
checked.
- Key Length. Drop-down listbox. The
options are 10 digits (40 bits)
and 26 digits (104 bits) if Hexadecimal format is
selected, or 5 characters (40 bits)
and 13 characters (104 bits)
if ASCII format is selected.
Disabled
unless either the Data encryption
or Authentication checkboxes
are
checked, and the Key is provided
automatically checkbox is not
checked.
- Key Index. Spin
button. Valid entries are 0, 1, 2 or 3. Disabled unless
either the Data encryption or Authentication checkboxes are
checked, and the Key is provided
automatically checkbox is not
checked.
- This is an ad-hoc network
checkbox. Checked if the network does not use wireless access
points.
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.
|