Choosing Appropriate Feedback
To determine which type of visual feedback to provide for a particular operation, consider these factors:
- Whether your application can provide an estimate of the operation's progress.
- Whether the operation blocks the user from issuing further commands in your application.
- Whether your application has a dedicated space, such as a status bar, for indicating the status of operations.
The table below shows which type of feedback to provide for operations that usually take at least 1 second to finish. In the "Appropriate Feedback" column, "Internal progress animations" means progress animations displayed in an application's dedicated status area, and "External progress animations" means progress animations displayed somewhere other than in a dedicated status area— typically, in an alert box.
Table 7-2 Visual feedback types for operations that take at least 1 second
Typical Duration > 5 seconds? | User blocked from issuing further commands? | Application has dedicated status area? | Appropriate feedback |
---|---|---|---|
Yes | Yes | Yes | Internal animation plus pointer feedback |
Yes | Yes | No | Pointer feedback |
Yes | No | Yes | Internal animation |
No | Yes | Yes | Internal animation plus pointer feedback |
No | Yes | No | External animation plus pointer feedback |
No | No | Yes | Internal animation |
No | No | No | External animation |
Guidelines
- Use a busy pointer whenever users are blocked from interaction with your application for 1 second or longer. Display the busy pointer less than 1 second after the operation begins.
- If a command will likely take 10 seconds or longer to finish, provide a Esc, that lets users terminate the command's processing even if your application cannot undo the command's effects. See Section 7.6 ― Allowing Interruptions. or button, which can also be activated by pressing
- When using an external animation, leave the window containing the animation on-screen for at least 1 second after the operation has completed, with a successful completion message. Change the or button to an button during this period— pressing this button should close the window immediately.