Progress Windows

A progress window can be used to provide feedback during an operation that takes more than a few seconds. See the section called “Progress Bars” for more details about proper use of progress bars.

A progress window may appear in the panel window list if it is, or may be, the only window shown by an application. For example, the file download progress window of a web browser may remain after all the browser windows have been closed.

Otherwise, a progress window should be raised above the application when the application window itself is selected from the window list.

Figure 3.19. An example of a progress window

An example of a progress window

Title Format. Progress windows should have the same title as their primary text. Unlike alerts, it is expected that progress windows will be present in the window list and may be active for extended periods.

Resizing. Progress windows should be resizable if they contain non-static information the user may want to copy (for example, the source URL in a download progress window). Otherwise they should not be resizable.


Figure 3.20. A progress window for a file copy operation

A progress window for a copy operation

Checklist Windows

Occasionally a procedure is comprised of a series of user performable actions. In these cases, particularly when it is desirable that the user acquire some familiarity with the actions involved in a procedure, checklist windows may be used.

Example 3.4. Firewall Setup Wizard

A personal firewall setup wizard might install the firewall package, add entries for the firewall to /etc/xinetd.conf, restart the internet super-daemon, and configure the user's web browser to operate through the firewall. It may be desirable that the user is exposed the series of actions involved in setting up the firewall to increase the chances that they will be sucessful in making modifications later, if they so desire.

Figure 3.21. An example checklist window (In Progress)

A checklist window

Figure 3.22. An example checklist window (Ready to Start)

A checklist window

Figure 3.23. An example checklist window (Completed)

A checklist window


  • If knowing the series of steps in an operation isn't that useful to the user, just use a regular progress window. Remember that you are probably more interested in the information than most users, many of whom will find the technical steps confusing rather than helpful.

  • Unlike regular progress windows, checklist windows should not close automatically when the operation is complete and should require explicit user input before they begin. This is because one of their purposes is to inform the user concerning an operation's contingent steps.

  • The progress bar indicates progress in the overall operation, not each step. While this is more difficult to program, it is the information most useful to the user. Just estimate how long each of the steps takes relative to each other and assign each step a fixed ratio of the progress bar's progress accordingly.

  • Do not use a checklist window for a series of internal programmatic steps, use a regular progress window. For example "Connect to mail server", "Authenticate with mail server", "Download messages", "Disconnect" would not be an appropriate series of steps for a checklist window, but would be appropriate sub-operation steps for a regular progress window.