throbber
@Technica| Disclosure Bulletin
`Vol- 34 No- 7A Deeembel’ 1991
`
`PAUSE PREVIEW: A TECHNIQUE FOR IMPROVING THE INTERACTIVITY OF DIRECT
`MANIPULATION
`
`An illustrative sequence, showing how Pause Preview could be used
`in a copy operation within a text editor application.
`
`for improving the interactivity of
`Pause Preview
`direct manipulation user interfaces.
`It allows the user to preview
`the effects cl direct manipulations by pausing during the continuous
`phase of the manipulation.
`Our usability tests have shown that it
`that works.
`
`I-"igure 1. The phrase ‘is a technique‘ has been selected and is being dragged,
`to specify a copy operation. The vertical bar indicates the moving
`insertion point.
`
`j.
`
`Pause Preview is a technique for improving the interactivity of
`direct manipulation user interfaces.
`It allows the user to preview
`the effects of direct manipulations by pausing during the continuous
`phase of the manipulation.
`Our usability tests have shown that it
`that works
`
`Figure 2. The user pauses with the insertion point after the last sentence.
`The display previews the effect of completing the copy.
`
`
`for improving the interactivity of
`Pause Preview
`direct manipulation user interfaces.
`It allows the user to preview
`the effects of direct manipulations by pausing during the continuous
`phase of the manipulation.
`Our usability tests have shown that it
`that works.
`
`Figure 3. The user moves the mouse away from the insertion point, and the
`display reverts.
`
`Users of direct manipulation user interfaces may be uncertain Of
`the
`effects of some manipulation, for a variety of reasons. . Pause Preview
`is a technique for providing visual feedback before a direct manipula-
`tion is completed. Pause Preview allows costly do/undo/redo sequences
`to be replaced by conversation-like preview/reject/continue sequences.
`
`IBM Corp. 1991
`
`1
`
`20
`
`MS 1007
`
`1
`
`MS 1007
`
`

`
`PAUSE PREVIEW: A TECHNIQUE FOR IMPROVING THE INTERACTIVITY OF DIRECT
`MANIPULATION — Continued
`
`Illustrative copy sequence. continued.
`
`for improving the interactivity of
`Pause Preview
`direct manipulation user interfaces.
`It allows the user to preview
`the effects of direct manipulations by pausing during the continuous
`hase of the manipulation.
`Our usability tests have shown that it
`hat works.
`
`Figure 4. The user moves the insertion point to before "that works’.
`
`
`technique for improving the interactivity of
`Pause Preview is
`direct manipulation user interfaces.
`It allows the user to preview
`the effects of direct manipulations py pausing during the continuous
`phase of the manipulation.
`Our usability tests have shown that it
`that works-
`
`Figure 5. The user pauses, and the display shows a preview of the new copy.
`
`
`Pause Preview is a technique for improving the interactivity of
`direct manipulation user interfaces-
`it ailows the user to preview
`the effects of direct manipuiations by pausing during the continuous
`phase of the manipulation.
`Our usability tests have shown that it
`is a technique that works.
`
`Figure 6. The user releases the mouse button to accept the preview.
`
`Current direct manipulation interfaces allow many user actions,
`like move, copy and delete,
`to be accomplished by "dragging" interface
`objects with a mouse.
`In a typical design, an object is first "picked
`up", by some sequence that ends with a mouse button depressed.
`"Drag-
`ging" means moving the mouse with this button still depressed.
`Re-
`leasing the mouse button at a target
`location completes the action
`specification.
`
`This interaction design allows separate effects to be realized lby
`a consistent action sequence and has been widely touted as a success-
`ful piece of interface technology. However, it leads to some problems
`for the user.
`
`The user cannot see what will actually happen until releasing the
`dragged object.
`Even when the command semantics are directly related
`to the action, such as with moving and copying,
`the user is typically
`only shown some impoverished representation of
`the picked—up object,
`such as a shimmering outline. When the command semantics are more
`dependent on the destination, as with deletion,
`the same model
`is
`used, and now the intended effect only becomes visible at all on com-
`pletion of the action, i.e., on release of the mouse button. This is
`
`21
`
`Vol. 34 No. 7A December 1991
`
`I
`131*! Technical Disclosure Bulletin
`
`2
`
`

`
`PAUSE PREVIEW: A TECHNIQUE FOR IMPROVING THE INTERACTIVITY OF DIRECT
`MANIPULATION — Continued
`
`the destination
`the specification of
`particularly problematic if (a)
`must be precise,
`such as when moving a graphic object
`to align with
`another, or
`(b) when the boundaries of meaningful destination loca-
`tions on the screen are not clearly marked (this problem is exacerb-
`ated if adjacent
`locations have very different effects), or
`(c) when
`the user is uncertain of the semantics of moving to some destination.
`Furthermore,
`inaccurate or inadvertent actions can often only be re-
`paired,
`if at all, by undoing the entire sequence, which imposes a
`substantial redo cost: a correction move
`to a different, nearby des-
`tination will often involve undoing, reselecting, and redragging.
`To
`overcome these interactive problems with direct manipulation, we sug-
`gest
`that
`any graphic effects of actions should be visible before
`button release (or whatever action is the syntactic marker of action-
`completion).
`The problem this raises is one of computational cost -
`the graphic computations required to show the effects changing as the
`mouse
`is moved are prohibitive,
`and would,
`in any case, present a
`confusing, unstable display.
`
`To solve this problem this article reveals a technique in which
`previews of results are driven by the rhythm of user actions.
`If the
`user pauses
`for
`some criterion time in a uuse movement,
`then the
`preview can be computed.
`The rhythmic criterion for previewing could
`be refined, or adapted to the user, but
`the general
`idea remains the
`same.
`Under
`this pause—preview design, mouse button release plays
`the role of knowingly accepting an action's effects.
`By simply moving
`away, before acceptance,
`the user can reject the preview and so auto-
`matically repair unwanted effects, allowing small changes in destina-
`tions to be effected with minimal respecification.
`
`Pause Preview combines two interface desiderata: a) It should be
`possible to preview the effects of actions as well as possible before
`completing them. b) Do/Undo/Redo should be forestalled whenever pos-
`sible by a dynamic Preview/Reject/Continue.
`
`The Pause Preview concept is applicable to most of the wide range
`of direct manipulation interactions.
`As a proof of concept, we have
`implemented Pause Preview for
`text operations
`in a prototype text
`editor, and for cell-manipulation in a prototype spreadsheet.
`In the
`text editor, strings of
`text can be selected then dragged to a new
`location.
`(Holding down the CTRL key makes
`this "move" operation a
`“copy".)
`In the spreadsheet, cells, and configurations of cells can
`likewise be moved or copied. During text dragging the user sees a
`special cursor,
`and an insertion-marker
`that marks where
`the text
`would be inserted if the mouse button were
`released. During cell
`dragging the user sees an outline of the "picked up" cell or cells.
`Depending on the selection,
`an entire configuration of cells may be
`moved at once, making the effects particularly hard to predict.
`
`In the Pause Preview implementation for either application the
`user can preview the effect of move/copy by pausing for one second at
`
`Vol. 34 No.
`
`7A December 1991
`
`IBM Technical Disclosure Bulletin
`
`22
`
`,___l..-.—-——-—..a--
`
`3
`
`

`
`PAUSE PREVIEW: A TECHNIQUE FOR IMPROVING THE INTERACTIVITY OF DIRECT
`MANIPULATION - Continued
`
`If this
`an insertion point, with the mouse button still depressed.
`effect is not desired,
`the command can be declined by simply dragging
`away.
`As
`in the standard interaction, move/copy is actually effected
`by releasing the mouse button, which can be done without pausing or
`after or during a pause—preview.
`The figures show a possible sequence
`of use of Pause Preview in a text copy operation.
`
`Both our prototype implementations have been evaluated for ef-
`ficacy. Three naive participants performed a series of direct manipu-
`lation tasks with and without pause preview available.
`Two
`further
`subjects, who were experienced with the system before Pause Preview
`had been added, performed the tasks with the pause preview facility
`available. All
`5 of our subjects reported being favorably impressed
`with the pause preview facility. All subjects chose to use Pause
`Preview for some
`tasks throughout
`the experimental sessions
`(though
`not for all tasks), although it was explicitly stated by the experi-
`menter that they need not use the facility.
`
`to use Pause Preview, we
`On those tasks where subjects chose not
`found no evidence of
`interference from the pause—detection software,
`nor did subjects report any such interference.
`
`the naive subjects made errors using the system without
`Each of
`Pause Preview that
`they subsequently or previously used Pause Preview
`to avoid.
`
`All subjects made spontaneous
`Preview facility.
`For example,
`
`favorable remarks about
`
`the Pause
`
`"It's great...
`S1:
`happen";
`
`I don't need to remember exactly what will
`
`S2:
`
`"That helps a lot";
`
`S4:
`
`"That feels comfortable."
`
`In sumary, both subjective and objective measures suggested that
`pause preview has the potential for improving the usability of direct
`manipulation interfaces.
`
`Notes on an Implementation of Pause Preview
`
`We have implemented pause-previewing in an object—oriented pro-
`graming environment
`on a PS/2* under OS/2* Presentation Manager*
`(PM).
`In PM, all mouse events result
`in messages sent
`to an appli-
`cation.
`In our prototype applications,
`for example,
`the actions re-
`quired to move an object
`involve pressing the second mouse button
`while on top of
`the object, moving the mouse while still depressing
`mouse button 2, and releasing the button at
`the target
`location;
`PM
`informs an application of these user actions by sending button—2—down,
`
`23
`
`Vol. 34 No. 7A December 1991
`
`IBM Technical Disclosure Bulletin
`
`4
`
`

`
`PAUSE PREVIEW: A TECHNIQUE FOR IMPROVING THE INTERACTIVITY OF DIRECT
`MANIPULATION - Continued
`
`a stream of button—2-move, and button—2-up messages. We have created a
`monitoring object, called the Pausefianager, which is informed each
`time any of these messages is received.
`The following pseudo-code and
`subsequent explanation portray the basic algorithm employed by the
`PauseManager
`in response
`to these messages
`in order
`to implement
`pause—previewing:
`
`button-2—down
`
`tell the application to save its current state for possible later
`undo,
`initialize local variables (such as button2MoveTime, but-
`ton2MovePosition, paused, undoRequired)
`
`button—2—move
`
`if current cursor position = button2MovePosition (i.e., if cursor
`is in same position as last
`time button-2-move message was
`re-
`ceived)
`
`if already paused, return (i.e., do nothing)
`if time now — button2HoveTime > = pauseThreshold
`send the 'userPausing' message to the application in-
`forming it that the
`user has paused and it should perform its pause-
`preview behavior,
`undokequired = true,
`paused := true,
`return
`
`else return (i.e., do nothing)
`else button2MovePosition := current cursor position,
`button2MoveTime := time now,
`paused := false,
`if undoRequired
`inform the application to do an undo button-2—up reset
`all variables
`(e.g., paused := undoRequired := false,
`etc.)
`
`When a user pauses in one location for greater than a pre-speci-
`fied threshold length of
`time (e.g., one second),
`the pause-preview
`occurs.
`If the user then continues to move the mouse with mouse but-
`
`the application window reverts to its pre~preview
`ton—2 still down,
`appearance. The above pseudo—code implements this by first saving the
`application window's state at
`the point of button—2-down. When
`a
`button-2—move first occurs,
`the current
`time and cursor location are
`recorded.
`Each time a button-2«move occurs,
`the PauseManager deter-
`mines whether the cursor is in the same position as previously (note:
`PM sends the button—2—move message so long as the button is depressed,
`even if no actual. movement has occurred).
`If so,
`the PauseManager
`dmcks
`if the pause threshold has been surpassed,
`that
`is, has
`the
`user paused at
`the same location for the threshold amount of time? If
`so,
`the PauseManager
`sends
`a umssage to the application object
`in-
`forming it of a user pause event
`(the application object is known by
`determining which window is under the cursor at its current location).
`
`Vol. 34 No. 7A December 1991
`
`IBM Technical Disclosure Bulletin
`
`24
`
`P
`
`f
`E
`3
`i

`
`‘
`
`;
`1
`(

`I
`[
`{
`[
`R
`
`1
`
`5
`
`

`
`PAUSE PREVIEW: A TECHNIQUE FOR IMPROVING THE INTERACTIVITY OF DIRECT
`MANIPULATION - Continued
`
`the process essentially be-
`If the cursor is at a new location,
`gins once again, with the new location and current
`time saved for
`later examination; also‘, if the user had been paused and has now moved
`the cursor,
`the application is told to perform an undo operation,
`thereby reversing the application's window to its previous state.
`The
`pseudo—code presented here omits minor details not necessary for our
`discussion. Note also that,
`for all of the above to work, each ap-
`plication implements its own pause—previewing behavior in responselto
`the 'userPausing' message, plus the ability to save its current state
`and undo.
`
`* Trademark of IBM Corp.
`
`25
`
`Vol. 34 No. 7A December 1991
`
`IBM Technical Disclosure Bulletin
`
`6

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket