Interactive applications use progress bars to provide users with feedback on the progress of lengthy tasks such as downloading large files. Current graphical user interface toolkits pop up a window with the progress bar; as the operation progresses, the length of the bar increases from left to right to indicate how much of the task has been completed, and to enable users to estimate how much longer the task will take. When the task is complete, the application closes the window containing the progress bar and opens the window containing the content. But there’s a problem.
The disadvantage of separating the progress bar window and the content window is that the link between the two windows is not clear—the progress bar window disappears before the content window is opened. The progress bar window might be at one location on the screen, possibly moved by the user, and the content window might be opened up at another location. The only way for the user to connect the two windows is to remember and use the name of the file being opened.
When users begin more than one lengthy task, several progress bar windows will be on screen simultaneously. It’s difficult to identify which content window has opened, especially when the screen is cluttered; only the disappearance of one of the progress bar windows indicates that a new content window has opened. Also, progress bar windows tend to be the same size and shape which makes discrimination between progress bar windows difficult.
After thinking about this problem for a while, I came up with progress windows. Progress windows combine the progress bar window with the content window. The content window opens immediately and is sized to fit the content rather than the progress bar. The progress bar fills the content window and is updated as the lengthy task progresses. When the task is complete, the progress bar is replaced with the content.
Progress windows overcome the disadvantages of progress bars. The sequence of opening and closing pop up windows is avoided because the progress bar is displayed in the content window. The size and shape of the content window is maintained throughout and provides a stable visual anchor that enables the user to monitor progress more easily. There is a direct correspondence between the progress bar and the content because they are displayed in the same window.
The following image show an example progress bar window. Progress is shown by decreasing the length of the bar from left to right until it disappears.
The following image show another type of progress window that shows progress by decreasing the extent of the arc of a circle anti-clockwise from 12 o’clock until it disappears.
Watch this demo to see a progress window in action.