throbber
as) United States
`a2) Patent Application Publication (0) Pub. No.: US 2012/0304107 Al
` Nanet al. (43) Pub. Date: Nov. 29, 2012
`
`
`
`US 20120304107A1
`
`(54) EDGE GESTURE
`
`(22)
`
`Filed:
`
`May27, 2011
`
`(76)
`
`Inventors:
`
`Jennifer Nan, Seattle, WA (US);
`Jesse Clay Satterfield, Seattle, WA
`(US); David A. Matthews, San
`Francisco, CA (US); ThomasP.
`Russo,Seattle,WA (US); Robert J.
`Jarrett, Snohomish, WA (US);
`Weidong Zhao, Redmond, WA
`(US); Jensen Harris, Bellevue, WA
`(US); Chattanya Dev Sareen,
`Seattle, WA (US)
`
`(21) Appl. No.:
`
`13/118,221
`
`Publication Classification
`
`(51)
`
`Int. Cl.
`(2006.01)
`GO6F 3/01
`(2006.01)
`GO6F 3/048
`(52) US. Ch. cece 715/781; 715/863; 715/810
`
`(57)
`
`ABSTRACT
`
`techniques and apparatuses
`This document describes
`enabling an edge gesture. In some embodiments, these tech-
`niques and apparatuses enable selection ofa user interface not
`currently exposed on a display through an edge gesturethatis
`easy-to-use and remember.
`
` Adorns ~-
`BhReork af
`“eg.
`Mome
`
`ed
`poe
`i.
`,
`
`».
`
`STL
`
`Satelite Atay Crash To Banh
`os
`afhe National Weather Service bas
`just inarned thet a waether selelite
`has been damaged by a frietear and
`is in a decevina orbit.
`
`bitur: the sex? tac
`Fotvis vill likely
`
`ator.
`
`
`we pdioe
`
`1
`
`APPLE 1104
`
`APPLE 1104
`
`1
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 1 of 14
`
`US 2012/0304107 Al
`
`108 —~,
`*%
`
`Computing Davies 12
`
`Processor]!
`
`Madia 118
`
`Onerating Bystenr
`420
`
`Application UA
`
`rae
`i
`
`i;
`
`i
`
`i
`
`Windows-Based Mode Module
`$22
`
`ey
`.
`;
`immersive Mode Mrriube
`i24
`
`Systerr-irderisce Module
`
`Gesture Hancler
`43
`
`Applications} 138
`
`2
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 2 of 14
`
`US 2012/0304107 Al
`
`
`
`Receive Gesture
`
`—Baiereevee wheterStart Point of *
`
`Gesture b atidae
`met
`.
`
`'
`
`Yas
`
`Nis
`
`26
`
`“Batermine Wher Line frorn Sint
`eon io Leer Point is Approximaioly
`Perpendicular
`
`~
`
`o-
`
`No
`
`nay
`
`
`
`au.
`Pass Gestureto
`Exposed LA

`
`YES |
`
`End
`
`Than Exposed LH
`
`Pease Gesture to Entity Other
`
`Fig. 2
`
`3
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 3 of 14
`
`US 2012/0304107 Al
`
`we
`ra)
`dre National Weatier Service has
`just loarnect thet e wealher satelite
`has been darned by 4 meteor and
`ig ic a decaying orbit.
`
`Bei
`Bef
`Your
`
`
`
`Hosnat
`
`
`
`
`he currandyuncertain of
`(ne of reentry or
`nig if dabria, the
`3
`gicated that
`yehin the reext ied
`pebris will Healy
`BIOL,
`
` 7 i i j i
`
`Fig. 3
`
`4
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 4 of 14
`
`US 2012/0304107 Al
`
`
`
`Fig. 4
`
`5
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 5 of 14
`
`US 2012/0304107 Al
`
`
`
`6
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 6 of 14
`
`US 2012/0304107 Al
`
`
`
`7
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 7 of 14
`
`US 2012/0304107 Al
`
`fhe Mational Weather Gurvice has
`
`rat learned that a weelher saleiite
`
`
`Home!
`
`in a decaying orbit.
`
`
`
`
`rendyurnomriain of
`ae of reentry or
`A
`
`
`:
`dir of dabris, the
`gy
`
`ALYsannanny,,}porrnnnnnnnnngnnnoninnnainiiinnnmnnisonmnminniisenniit oe golf
`PUR won be re *
`wy dicated that
`vouir
`
`me within the mek? two
`baat cletris will Healy
`
`heequator,
`
`
`8
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 8 of 14
`
`US 2012/0304107 Al
`
`B00my
`
`
`
`
`
`Boe
`
`Detarmine thal a Gesture Made vara User intariace
`hes a Start Point Within an Edge of the User Interface
`ara @ Loter Point Not WiHhin the Edge
`
`
`
`
`
`804
`Determine Which Liser Interface to Present
`Based on Factor of Gesture
`
`Present Determined User interface
`
`
`
`9
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 9 of 14
`
`US 2012/0304107 Al
`
`GOD wom,
`
`Receive o Successive Pont of the festure
`
`wn
`904
`ie
`|
`;
`Reversal Ue" Determine, Based on Successive
`“i
`Pond, Whether Reversal or dealtior
`Extansion or Metther_
`:
`
`Exterior
`
`Second User interface
`
`Cease hiPrasent
`Second User
`inferiace
`
`|
`
`Present Third User
`interface or Expand
`
`10
`
`10
`
`

`

`Patent Application Publication
`
`Nov. 29,2012 Sheet 10 of 14
`
`US 2012/0304107 Al
`
`
`
`
`(Prony Sue Brown
`Han
`on
`: Email Subjeck Lal's Meet. |
`
`yon 1004
`om AGIQ = 1006
`
`
`
`Ze
`
`oNpws
`
`ig,
`‘eolher Salatie May
`Ri Grash To Sard
`
`The conference call funotion
`
`
`
`onmy ofios phone seamsip
`"og
`.
`.
`:
`
`#4
`~The National Weather
`be outst onder ~canwemeet
`
`
`| Serving has just
`in Negla’s office? She has the
`
`new le meaiing soltvare cn
`| nomad that 3 weather
`
`
`her computer,
`i saigiite has beer
`
`VAL my
`j darmaged by 4 meteor
`“Tyarent
`| aral is in a decaying
`fA?
`
`:
`| Sue
`| Orbit.
`
`
` canadecacaansaanaccccccceaccinsanscscccccsscscccsasssssg Mat
`
`
`
`
`
`Fig. 10
`
`11
`
`11
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 11 of 14
`
`US 2012/0304107 Al
`
`1 4
`
`,
`EU338
`;a
`
`
`
`i From Sue Brown
` Subjeck Lets Meat. 3
`
`
`
`E| The conference call Liction
`Bi on my offies phone agemne i
`i
`he cul of ordercan we mee
`n Navia's office? She has the
`3B Dew lee rmetingsodmens orp PP
`Bi her commuter,
`1
`TOEmy AS
`pi Thankel
`1110 -——QOMR LS {Ht
`
`wn
`
`Fig. 17
`
`12
`
`12
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 12 of 14
`
`US 2012/0304107 Al
`
`sone $004
`f
`
`pow 1008
`f
`
`her noiteday /
`
`The conferees call lunciion
`
`be cut of order ~ car we amet
`in Mazio’s affion? She hes the
`new live meeting sofhears on
`
`ee asews
`vYeather Saieliite May
`Crash Toa Earth
`
`” TheMeational Weather
`Service has just
`leamed that a weather
`saiedite has bean
`damaged by a meteor
`and ig ina decaying
`orbit.
`
`{DOE ——"
`
`Fig. 12
`
`13
`
`13
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 13 of 14
`
`US 2012/0304107 Al
`
`pt
`
`| News
`
`The conferenns call function
`ny
`Boe phone seems to
`
`vreather Safaive May
`a
`ei Crash To Garth
`*
`
`The National Weather
`| Service has just
`i learned that a weather
`i satellite has beer
`
`| damaged by a meteor
`Land is ins decaying
`+ orbit.
`
`Fig. 13
`
`14
`
`14
`
`

`

`Patent Application Publication
`
`Nov. 29, 2012 Sheet 14 of 14
`
`US 2012/0304107 Al
`
`Device
`Applications
`
`Madue
`ded
`
`Sesture
`Harter
`428
`
`| Application(s}
`
` | Systern-interlace |
`
`Proceasing
`& Control
`4432
`
`Communication
`Device(s}
`
`Devine
`Dalia
`+404
`
`eieefeeiieiieeieniieiseeieiniieiieeieninieiienienineeiseienineieing,
`
`Chater
`inpulle)
`4456
`
`CONTInCation
`inferface(s}
`
`Storage
`Mecha
`4478
`
`Fig. 14
`
`15
`
`

`

`US 2012/0304107 Al
`
`Nov. 29, 2012
`
`EDGE GESTURE
`
`FIG.4 illustrates the example immersive interface
`[0010]
`of FIG. 3 along with example edges.
`BACKGROUND
`
`[0011] FIG.5illustrates the example immersive interface
`of FIGS. 3 and 4 along with angular variance lines from a
`perpendicular line and a line from a start pointto a later point
`ofa gesture.
`[0012]
`FIG.6 illustrates the edges of the immersive inter-
`face shownin FIG.4 along with two regions inthe right edge.
`[0013]
`FIG.7 illustrates an application-selection interface
`presented by a system-interface module in response to an
`edge gesture and over the immersive interface and webpage
`of FIG.3.
`[0014]
`FIG.8 illustrates an example method for enabling
`edge gestures including determining an interface to present
`based on somefactor of the gesture.
`[0015]
`FIG. 9 illustrates an example method enabling
`expansion of, or ceasing presentation of, a user interface
`presented in response to an edge gesture or presentation of
`another user interface.
`
`[0001] Conventional techniques for selecting a user inter-
`face that is not currently exposed on a display are often
`confusing, take up valuable display space, cannot be univer-
`sally applied across different devices, or provide a poor user
`experience.
`[0002]
`Some conventional techniques, for example, enable
`selection of a user interface through onscreen controls in a
`task bar, within a floating window, or on a window frame.
`These onscreen controls, however, take up valuable display
`real estate and can annoyusers by requiring usersto find and
`select the correct control.
`[0003]
`Someother conventional techniques enable selec-
`tion ofa user interface through hardware, such as hot keys and
`buttons. At best these techniques require users to remember
`what key, key combination, or hardwarebutton to select. Even
`in this best case users often accidentally select keys or but-
`tons. Further, in many cases hardware-selection techniques
`cannot be universally applied, as hardware on computing
`devices can vary by device model, generation, vendor, or
`manufacturer. In such cases either the techniques will not
`work or work differently across different computing devices.
`This exacerbates the problem of users needing to remember
`the correct hardware, as many users have multiple devices,
`and so may need to rememberdifferent hardware selections
`for different devices. Further still, for many computing
`devices hardware selection forces users to engage a comput-
`ing device outside the user’s normal flow ofinteraction, such
`as when a touch-screen device requires a user to changehis or
`her mental and physical orientation from display-basedinter-
`actions to hardware-basedinteractions.
`
`SUMMARY
`
`[0004] This document describes techniques and appara-
`tuses enabling an edge gesture. In some embodiments, these
`techniques and apparatuses enable selection of a userinter-
`face not currently exposed on a display through an edge
`gesture that is easy-to-use and remember.
`[0005] This summary is provided to introduce simplified
`concepts for enabling an edge gesture that are further
`described below in the Detailed Description. This summary is
`not intended to identify essential features of the claimed
`subject matter, nor is it intended for use in determining the
`scopeof the claimed subject matter. Techniques and/or appa-
`ratuses enabling an edge gesture are also referred to herein
`separately or in conjunction as the “techniques”as permitted
`by the context.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`are
`enabling an edge gesture
`[0006] Embodiments
`described with referenceto the following drawings. The same
`numbersare used throughout the drawings to reference like
`features and components:
`[0007]
`FIG.1 illustrates an example system in which tech-
`niques enabling an edge gesture can be implemented.
`[0008]
`FIG.2 illustrates an example method for enabling
`edge gestures based on the edge gesture being approximately
`perpendicular to an edge in which the gesture begins.
`[0009]
`FIG. 3 illustrates an example tablet computing
`device having a touch-sensitive display presenting an immer-
`sive interface.
`
`FIG. 10 illustrates a laptop computer having a
`[0016]
`touch-sensitive display having a windows-based email inter-
`face and two immersive interfaces.
`[0017]
`FIG. 11 illustrates the interfaces of FIG. 10 along
`with two gestures having a start point, later points, and one or
`more successive points.
`[0018]
`FIG. 12 illustrates the windows-based email inter-
`face of FIGS. 10 and 11 along with an email handling inter-
`face presented in response to an edge gesture.
`[0019]
`FIG. 13 illustrates the interfaces of FIG. 12 along
`with an additional-email-options interface presented in
`response to a gesture determined to have a successive point a
`preset distance from the edge.
`[0020]
`FIG. 14 illustrates an example device in which tech-
`niques enabling edge gestures can be implemented.
`
`DETAILED DESCRIPTION
`
`[0021] Overview
`[0022] This document describes techniques and appara-
`tuses enabling an edge gesture. These techniques enable a
`user to quickly and easily select an interface not currently
`exposed on the user’s device, as well as other operations.
`[0023] Consider a case where a user is watching a movie on
`a tablet computing device. Assumethat the movie is playing
`on an immersive interface occupying all of the display and
`that the user would like to check her social-networking
`webpage without stopping the movie. The described tech-
`niques and apparatuses enable herto select other interfaces
`through a simple swipe gesture started at an edge of her
`display. She may swipe from one edgeofherdisplay and drag
`out a user interface enabling her to select her social network-
`ing website. Or instead, assumethat she wouldlike to interact
`with the media application playing the movie in a mannernot
`permitted by the immersive interface, such as to display a
`menu enabling subtitles or a director’s commentary. She may
`swipe from another edgeofher tablet’s display and drag out
`a control menu for the immersive interface and select items
`and/or commandsfrom this menu quicklyandeasily.
`[0024]
`In both of these cases valuable real estate used to
`play the movie wasnot taken up with on-screen controls, nor
`wasthe user required to rememberandfind a hardware but-
`ton. Furtherstill, no gesture, other than onestarting from an
`edge,
`is used by the techniques in this example, thereby
`permitting the immersive interface to use nearly all com-
`monly-available gestures. Additionally, by considering edge
`
`16
`
`16
`
`

`

`US 2012/0304107 Al
`
`Nov. 29, 2012
`
`gestures or portions thereof, the techniques do not affect
`performanceof a gesture or touch input system as the edge
`gestures can be processed before the entire gesture is com-
`plete avoiding latency associated with processing entire ges-
`tures started elsewhere.
`
`System-interface module 126 provides one or more
`[0033]
`interfaces through which interaction with operating system
`120 is enabled, such as an application-launchinginterface, a
`start menu, or a system tools or options menu, to namejust a
`few.
`
`[0025] These are but two examples of the many ways in
`which the techniques enable and use edge gestures, others of
`which are described below.
`
`[0026]
`Example System
`FIG. 1 illustrates an example system 100 in which
`[0027]
`techniques enabling an edge gesture can be embodied. Sys-
`tem 100 includes a computing device 102, which is illustrated
`with six examples: a laptop computer 104, a tablet computer
`106, a smart phone 108, a set-top box 110, a desktop com-
`puter 112, and a gaming device 114, though other computing
`devices and systems, such as servers and netbooks, mayalso
`be used.
`
`[0028] Computing device 102 includes computer processor
`(s) 116 and computer-readable storage media 118 (media
`118). Media 118 includes an operating system 120, windows-
`based mode module 122, immersive mode module 124, sys-
`tem-interface module 126, gesture handler 128, and one or
`moreapplications 130, each having one or moreapplication
`user interfaces 132.
`
`[0029] Computing device 102 also includesor hasaccess to
`one or more displays 134 and input mechanisms 136. Four
`example displays are illustrated in FIG. 1. Input mechanisms
`136 mayinclude gesture-sensitive sensors and devices, such
`as touch-based sensors and movement-tracking sensors(e.g.,
`camera-based), as well as mice (free-standingor integral with
`a keyboard), track pads, and microphones with accompany-
`ing voice recognition software, to name a few. Input mecha-
`nisms 136 may beseparate or integral with displays 134;
`integral examples include gesture-sensitive displays with
`integrated touch-sensitive or motion-sensitive sensors.
`[0030] Windows-based mode module 122 presents appli-
`cation user interfaces 132 through windows having frames.
`These frames may provide controls through whichto interact
`with an application and/or controls enabling a user to move
`and resize the window.
`
`Immersive mode module 124 provides an environ-
`[0031]
`ment by which a user may view andinteract with one or more
`of applications 130 through application user interfaces 132.
`In some embodiments, this environment presents content of,
`and enables interaction with, applications with little or no
`window frame and/or without a need for a user to manage a
`window frame’s layout or primacyrelative to other windows
`(e.g., which window is active or up front) or manually size or
`position application user interfaces 132.
`[0032] This environment can be, but is not required to be,
`hosted and/or surfaced without use of a windows-based desk-
`top environment. Thus, in some cases immersive mode mod-
`ule 124 presents an immersive environment that is not a
`window (even one without a substantial frame) and precludes
`usage of desktop-like displays (e.g., a taskbar). Furtherstill,
`in some embodiments this immersive environmentis similar
`to an operating system in that it is not closeable or capable of
`being un-installed. While not required, in some cases this
`immersive environmentenablesuse ofall or nearly all of the
`pixels of a display by applications. Examples of immersive
`environments are provided below as part of describing the
`techniques, though they are not exhaustive or intended to
`limit the techniques described herein.
`
`[0034] Operating system 120, modules 122, 124, and 126,
`as well as gesture handler 128 can be separate from each other
`or combinedor integrated in any suitable form.
`[0035] Example Methods
`[0036]
`FIG. 2 depicts a method 200 for enabling edge ges-
`tures based on the edge gesture being approximately perpen-
`dicular to an edge in which the gesture begins. In portions of
`the following discussion reference may be made to system
`100 of FIG. 1, reference to which is made for example only.
`[0037] Block 202 receives a gesture. This gesture may be
`receivedat variousparts of a display, such as over a windows-
`based interface, an immersive interface, or no interface. Fur-
`ther, this gesture may be madeandreceived in various man-
`ners, such as a pointer tracking a movementreceived through
`a touch pad, mouse,or roller ball or a physical movement
`made with arm(s), finger(s), or a stylus received through a
`motion-sensitive or touch-sensitive mechanism. In some
`
`cases, the gesture is received off of or proximate to a physical
`edge ofthe display (e.g., as a finger or stylus encounters the
`edge of the display) by a touch digitizer, a capacitive touch
`screen, or a capacitive sensor, just to name a few.
`[0038] By way of example consider FIG. 3, which illus-
`trates a tablet computing device 106. Tablet 106 includes a
`touch-sensitive display 302 shown displaying an immersive
`interface 304 that includes a webpage 306. As part of an
`ongoing example, at block 202 gesture handler 128 receives
`gesture 308 as shownin FIG.3.
`[0039] Block 204 determines whethera start point of the
`gesture is at an edge. As noted above,the edge in question can
`be an edge of a user interface, whether immersive or win-
`dows-based, and/or of a display. In somecases, of course, an
`edge of a user interface is also an edge of a display. The size
`ofthe edge can vary based on variousfactors aboutthe display
`or interface. A small display or interface may have a smaller
`size in absolute orpixel terms than a large display or interface.
`Ahighly sensitive input mechanism permits a smaller edge as
`well. In some instances, an edge may extend beyond an edge
`of the display or a screen when an input mechanism is able to
`receive a gesture portion beyond the display or screen.
`Example edges are rectangular and vary between one and
`twenty pixels in one dimension andan interface limit of the
`interface ordisplay in the other dimension,though othersizes
`and shapes, including convex and concave edges may instead
`be used.
`
`[0040] Continuing the ongoing example, consider FIG.4,
`whichillustrates immersive interface 304 and gesture 308 of
`FIG. 3 as well as left edge 402, top edge 404,right edge 406,
`and bottom edge 408. For visual clarity webpage 306 is not
`shown.In this example the dimensions of the interface and
`display are of a moderate size, between that of smart phones
`and that of many laptop and desktop displays. Edges 402,
`404, 406, and 408 have a small dimensionof twenty pixels or
`about 10-15 mm in absolute terms, an area of each shown
`bounded by dashedlines at twenty pixels from the display
`limit at edge limit 410, 412, 414, and 416, respectively.
`[0041] Gesture handler 128 determines that gesture 308 has
`a start point 418 and thatthis start point 418 is within left edge
`402. Gesture handler 128 determines the start point in this
`case by receiving data indicating [X,Y] coordinatesin pixels
`
`17
`
`17
`
`

`

`US 2012/0304107 Al
`
`Nov. 29, 2012
`
`at which gesture 308 begins and comparingthefirst of these
`coordinates to those pixels contained within each edge 402-
`408. Gesture handler 128 often can determinethe start point
`and whetherit is in an edge faster than a samplerate, thereby
`causing little or no performance downgrade from techniques
`that simply pass gestures directly to an exposedinterface over
`which a gesture is made.
`[0042] Returning to method 200 generally, if block 204
`determinesthatthe start point of the gesture is not at an edge,
`method 200 proceeds along a “No”path to block 206. Block
`206 passes the gestures to an exposeduserinterface, such as
`an underlying interface over which the gesture was received.
`Altering the ongoing example, assumethat gesture 308 was
`determinednot to have a start point within an edge. In sucha
`case gesture handler 128 passes buffered data for gesture 308
`to immersive user interface 304. After passing the gesture,
`method 200 ends.
`
`qualifies the gesture. Examples include whena laterpointis
`within the edge, such as dueto a hover, tap, press-and-hold,or
`up-and-downgesture (e.g., to scroll content in the user inter-
`face), when the gesture is set to be a single-input gesture and
`a secondinputis received (e.g., a first finger starts at an edge
`but a second finger then lands anywhere), or if a tap event
`occurs during or prior to the gesture (e.g., a finger is already
`making contact elsewhere or contact is received elsewhere
`during the gesture).
`[0049]
`If block 208 determines that the line is approxi-
`mately perpendicular based a later point outside the edge,
`method 200 proceeds along a “Yes” path to block 210.
`[0050] Block 210 respondsto the positive determination of
`block 208 by passing the gesture to an entity other than the
`exposeduser interface. This entity is not a user interface over
`which the gesture was received, assuming it was received
`over a user interfaceat all. Block 210 may determine to which
`If block 204 determines that the start point of the
`[0043]
`entity to pass the gesture as well, such as based on an edge or
`gesture is in an edge, method 200 proceeds along a “Yes”path
`region of an edge in whichthe start point of the gesture is
`to block 208. Optionally, block 204 may determinealength of
`received. Consider FIG. 6, for example, which illustrates
`a portion ofthe gesture before method proceeds to block 208.
`immersive interface 304 and edges 402, 404, 406, and 408 of
`In some cases, determining the length of the portion of the
`FIG.4 but adds top region 602 and bottom region 604to right
`gesture allows the determinationofthe start point to be made
`edge 406. A start point in top region 602 can result in a
`prior to acompletion ofthe gesture. Block 208 respondsto the
`different entity (or even a same entity but a different user
`positive determination of block 204 by determining whether
`interface provided in response) than a start point received to
`a line from the start point to a later point of the gesture is
`bottom region 604. Likewise, a start pointin top edge 404 can
`approximately perpendicular from the edge.
`result in a different entity or interface than left edge 402 or
`[0044] Block 208, in some embodiments, determines the
`bottom edge 408.
`later point used. Gesture handler 128, for example, can deter-
`[0051]
`In some cases, this entity is an application associ-
`mine the later point of the gesture based on the later point
`ated withtheuserinterface. In such a case, passing the gesture
`being received a preset distance from the edge orthe start
`to the entity can be effective to cause the application to
`point, such as past edge limit 410 for edge 402 or twenty
`present a second user interface enabling interaction with the
`pixels from start point 418, all of FIG. 4. In some other
`application. In the movie example above, the entity can be the
`embodiments, gesture handler 128 determinesthe later point
`media player playing the movie but not the immersiveinter-
`based on it being received a preset time after receipt of the
`face displaying the movie. The media player can then present
`start point, such an amountoftimeslightly greater than used
`a second user interface enabling selection of subtitles or a
`generally by computing device 102 to determine that a ges-
`director’s commentary rather than selections enabled by the
`ture is a tap-and-hold or hovergesture.
`interface displaying the movie, such as “pause,” “play,” and
`[0045]
`For the ongoing embodiment, gesture handler 128
`“stop.” This capability is permitted in FIG. 1, where one of
`uses a later-received point of gesture 308 received outside of
`applications 130 can includeor be capable ofpresenting more
`edge 402 so long as that later-received pointis received within
`than one application user interface 132. Thus, block 210 can
`a preset time.Ifno point is received outside ofthe edge within
`pass the gesture to system-interface module 126, the one of
`that preset time, gesture handler 128 proceeds to block 206
`applications 130 currently presenting the user interface, or
`and passes gesture 308 to immersive interface 304.
`another of applications 130, to namejust three possibilities.
`[0046] Using thestart point, block 208 determines whether
`[0052] Concluding the ongoing embodiment, at block 210
`a line from the start point to the later point of the gesture is
`gesture handler 128 passes gesture 308 to system-interface
`approximately perpendicular to the edge. Various angles of
`module 126. System-interface module 126 receives the buff-
`variance can be usedin this determination by block 208, such
`ered portion of gesture 308 and continuesto receive the rest of
`as five, ten, twenty, or thirty degrees.
`gesture 308 as it is made by the user. FIG. 7 illustrates a
`possible response upon receiving gesture 308, showing an
`[0047] By way of example, consideran angle ofvariance of
`application-selection interface 702 presented by system-in-
`thirty degrees from perpendicular. FIG. 5 illustrates this
`terface module 126 and over immersive interface 304 and
`example variance, showing immersive interface 304, gesture
`webpage 306 from FIG. 3. Application-selection interface
`308, left edge 402, left edge limit 410, and start point 418 of
`702 enables selection of various other applications and their
`FIGS. 3 and 4 along with a thirty-degree variance lines 502
`respective interfaces at selectable application tiles 704, 706,
`from perpendicular line 504. Thus, gesture handler 128 deter-
`708, and 710.
`mines that line 506 from start point 418 to later point 508
`(which is at about twenty degrees from perpendicular) is
`[0053] The example application-selection interface 702 is
`approximately perpendicular based on being within the
`an immersiveuser interface presented using immersive mode
`example thirty-degree variance line 502.
`module 124, thoughthis is not required. Presented interfaces,
`ora list thereof, may instead be windows-basedandpresented
`[0048] Generally, if block 208 determines that the line is
`using windows-based module 122. Both ofthese modules are
`not approximately perpendicular to the edge, method 200
`illustrated in FIG.1.
`proceeds along a “No” path to block 206 (e.g., a path of a
`finger is curved). As noted in part above, block 208 mayalso
`determine that a later point or other aspect of a gesture dis-
`
`[0054] Block 210 mayalso or instead determineto pass the
`gesture to different entities and/or interfaces based on other
`
`18
`
`18
`
`

`

`US 2012/0304107 Al
`
`Nov. 29, 2012
`
`lar to manners described in other methods, such as with a
`progressive display of application-selection user interface
`702 of FIG.7.
`
`the gesture received. Example factors are
`factors about
`described in greater detail in method 800 below.
`[0055] Note that method 200 and other methods described
`Following method 200 and/or method 800 in whole
`[0062]
`hereafter can be performed in real-time, such as while a
`or in part, the techniques may proceed to perform method 900
`gesture is being made and received. This permits, among
`of FIG. 9. Method 900 enables expansionof a user interface,
`other things, a user interface presented in responseto a ges-
`presentation of another interface, or ceasing presentation of
`ture to be presented prior to completion of the gesture. Fur-
`the userinterface presented in response to an edge gesture.
`ther, the user interface can be presented progressively as the
`gesture is received. This permits a user experience of drag-
`[0063] Block 902 receives a successive pointof the gesture
`ging out the user interface from the edge as the gesture is
`and after presentation of at least some portion of the second
`performed with the user interface appearing to “stick”to the
`user interface. As noted in part above, methods 200 and/or
`gesture (e.g., to a mouse point or person’s finger making the
`800 are able to present or cause to be presented a second user
`gesture).
`interface, such as a seconduserinterface for the same appli-
`cation associated with a current user interface, a different
`FIG. 8 depicts a method 800 for enabling edge ges-
`[0056]
`application, or a system userinterface.
`tures including determining an interface to present based on
`some factor of the gesture. In portions of the following dis-
`[0064] By way of example, consider FIG. 10, which illus-
`cussion reference may be made to system 100 of FIG. 1,
`trates a laptop computer 104 having a touch-sensitive display
`reference to which is made for example only. Method 800
`1002 displaying a windows-based email interface 1004 and
`two immersive interfaces 1006 and 1008. Windows-based
`may act wholly or partly separate from, or in conjunction
`with, other methods described herein.
`email interface 1004 is associated with an application that
`[0057] Block 802 determines that a gesture made over a
`manages email, which can be remote or local to laptop com-
`
`userinterface hasastart point at an edgeofthe user interface puter 104. FIG. 10 also illustrates two gestures, 1010 and
`and a later point not within the edge. Block 802 may operate 1012. Gesture 1010 proceeds inastraight line while gesture
`
`similarly to or use aspects ofmethod 200, such as determining
`1012 reverses back (shown with two arrows to show two
`a later point on which to base block 802’s determination.
`directions).
`Block 802 mayact differently as well.
`[0065]
`FIG. 11 illustrates gesture 1010 havinga start point
`[0058]
`In one case, for example, block 802 determinesthat
`1102, a later point 1104, and a successive point 1106, and
`a gesture is a single-finger swipe gesture starting at an edge of
`gesture 1012 having a samestart point 1102, a later point
`
`an exposed immersive user interface and havinga later point 1108, andafirst successive point 1110, and a second succes-
`not at the edge butnot based on an angle ofthe gesture. Based
`sive point 1112. FIG. 11 also shows a bottom edge 1114, a
`on this determination, block 802 proceeds to block 804 rather
`later-point area 1116, and an interface-addition area 1118.
`thanpassthe gestureto the exposed immersiveuserinterface.
`[0066] Block 904 determines, based on the successive
`[0059] Block 804 determines which interface to present
`point, whether the gesture includes a reversal, an extension, or
`based on one or morefactors ofthe gesture. Block 804 may do
`neither. Block 904 may determinea reversal in the direction
`so based on a final or intermediate length of the gesture,
`of the gesture by determiningthat a successive pointis at the
`whetherthe gesture is single or multi-point (e.g., single-finger
`edgeoris closer to the edge than a prior point of the gesture.
`or multi-finger), or a speed of the gesture. In somecases, two
`Block 904 may determinethat the gesture extends based on
`or more factors of a gesture determine which interface to
`the successive point being a preset distance from the edge or
`present such as a drag-and-hold gesture having a drag length
`the later point. If neither of these is determined to be true,
`and hold timeor a drag-and-drop gesture having a drag length
`method 900 may repeat blocks 902 and 904 to receive and
`and drop position. Thus, block 804 may determineto present
`analyze additional successive points until the gesture ends. If
`block 904 determines that there is a reversal, method 900
`a start menu in response to a multi-finger gesture, an appli-
`cation-selection interface in response to a relatively short
`proceeds along “Reversal” path to block 906. If block 904
`single-finger gesture, or a system-control interface permitting
`determinesthat the gesture is extended, method 900 proceeds
`selection to shut down computing device 102 in response to
`along an “Extension”path to block 908.
`relatively long single-finger gesture, for example. To do so,
`[0067]
`In the context of the present example, assume that
`gesture handler 128 may determinethe length of the gesture,
`gesture handler 128 receives first successive point 1110 of
`speed, or a numberof inputs (e.g., fingers).
`gesture 1012. Gesture handler 128 then d

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