EP3049908A1 - Presentation of a control interface on a touch-enabled device based on a motion or absence thereof - Google Patents
Presentation of a control interface on a touch-enabled device based on a motion or absence thereofInfo
- Publication number
- EP3049908A1 EP3049908A1 EP14781765.4A EP14781765A EP3049908A1 EP 3049908 A1 EP3049908 A1 EP 3049908A1 EP 14781765 A EP14781765 A EP 14781765A EP 3049908 A1 EP3049908 A1 EP 3049908A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- control interface
- touch screen
- state
- motion
- finger
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 107
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000001514 detection method Methods 0.000 claims abstract description 21
- 230000004044 response Effects 0.000 claims abstract description 7
- 238000004590 computer program Methods 0.000 claims description 26
- 238000009877 rendering Methods 0.000 claims description 22
- 230000008859 change Effects 0.000 claims description 19
- 230000007704 transition Effects 0.000 claims 1
- 230000005057 finger movement Effects 0.000 abstract description 6
- 210000003811 finger Anatomy 0.000 description 144
- 230000015654 memory Effects 0.000 description 24
- 238000004891 communication Methods 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 230000001413 cellular effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 210000003813 thumb Anatomy 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 241000218691 Cupressaceae Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 230000007177 brain activity Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/041—Indexing scheme relating to G06F3/041 - G06F3/045
- G06F2203/04101—2.5D-digitiser, i.e. digitiser detecting the X/Y position of the input means, finger or stylus, also when it does not touch, but is proximate to the digitiser's interaction surface and also measures the distance of the input means within a short range in the Z direction, possibly with a separate measurement setup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04804—Transparency, e.g. transparent or translucent windows
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04806—Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04808—Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen
Definitions
- Touch screens have had enormous growth in recent years. Touch screens are now common in places such as kiosks at airports, automatic teller machines (ATMs), vending machines, computers, mobile phones, etc.
- ATMs automatic teller machines
- a touch screen typically provides a user with a plurality of options through icons, and the user can select those icons to launch an application, to control an application, to obtain additional information associated with the icons, etc. If the result of a selection does not provide the user with the desired result, then he/she typically selects a "back" button or "home” button or otherwise backs out of the application or information.
- controlling an application by selecting icons typically involves multiple steps. For instance, the user may select an icon to obtain access to a control panel that includes multiple icons corresponding to controls. The user may then select one or more of the icons that correspond to the controls to control the application. Once the user is finished using the control panel, the user typically selects one or more icons to cause the control panel to be removed from the touch screen. Selecting multiple icons to achieve an intended result costs the user time. Additionally, for mobile phone users, battery life may be unnecessarily wasted.
- a motion such as a hover gesture
- absence of a motion can be detected and the control interface presented in response to the detection.
- a hover gesture can occur without a user physically touching a touch screen of a touch-enabled device. Instead, the user's finger or fingers can be positioned at a spaced distance above the touch screen. The touch screen can detect that the user's fingers are proximate to the touch screen, such as through capacitive sensing. Additionally, finger movement can be detected while the fingers are hovering to expand the existing options for gesture input.
- Example methods are described.
- finger(s) are detected in a hover position.
- the finger(s) are a spaced distance from a touch screen.
- a motion of at least one of the finger(s) is detected.
- the motion is a user command to present a control interface configured to control content associated with a virtual element that is displayed on the touch screen.
- the control interface is caused to be presented on the touch screen based on the motion.
- finger(s) are detected in a hover position.
- the finger(s) are a spaced distance from a touch screen.
- a motion of at least one of the finger(s) is detected.
- the motion is a user command to increase visibility of a control interface that is at least partially visible on the touch screen.
- the control interface is configured to control content associated with a virtual element that is displayed on the touch screen.
- the visibility of the control interface on the touch screen is caused to increase based on the motion.
- finger(s) are detected in a hover position.
- the finger(s) are a spaced distance from a touch screen.
- a user command to present a control interface is detected.
- the control interface is configured to control content associated with a virtual element that is displayed on the touch screen.
- the user command is characterized by the finger(s) remaining in the hover position for at least a specified period of time and further characterized by the finger(s) remaining motionless for at least the specified period of time.
- the control interface is caused to be presented on the touch screen based on detection of the user command.
- a first example system includes a touch screen sensor, a gesture engine, and a rendering engine.
- the touch screen sensor is configured to detect finger(s) in a hover position.
- the finger(s) are a spaced distance from a touch screen.
- the gesture engine is configured to detect a motion of at least one of the finger(s).
- the motion is a user command to present a control interface configured to control content associated with a virtual element that is displayed on the touch screen.
- the rendering engine is configured to cause the control interface to be presented on the touch screen based on the motion.
- a second example system includes a touch screen sensor, a gesture engine, and a rendering engine.
- the touch screen sensor is configured to detect finger(s) in a hover position.
- the finger(s) are a spaced distance from a touch screen.
- the gesture engine is configured to detect a motion of at least one of the finger(s).
- the motion is a user command to increase visibility of a control interface that is at least partially visible on the touch screen.
- the control interface is configured to control content associated with a virtual element that is displayed on the touch screen.
- the rendering engine is configured to cause the visibility of the control interface on the touch screen to increase based on the motion.
- a third example system includes a touch screen sensor, a gesture engine, and a rendering engine.
- the touch screen sensor is configured to detect finger(s) in a hover position.
- the finger(s) are a spaced distance from a touch screen.
- the gesture engine is configured to detect a user command to present a control interface.
- the control interface is configured to control content associated with a virtual element that is displayed on the touch screen.
- the user command is characterized by the finger(s) remaining in the hover position for at least a specified period of time and further characterized by the finger(s) remaining motionless for at least the specified period of time.
- the rendering engine is configured to cause the control interface to be presented on the touch screen based on detection of the user command.
- a first example computer program product includes a computer-readable medium having computer program logic recorded thereon for enabling a processor-based system to causing a control interface to be presented.
- the computer program product includes a first program logic module, a second program logic module, and a third program logic module.
- the first program logic module is for enabling the processor-based system to detect finger(s) in a hover position. The finger(s) are a spaced distance from a touch screen.
- the second program logic module is for enabling the processor-based system to detect a motion of at least one of the finger(s). The motion is a user command to present the control interface configured to control content associated with a virtual element that is displayed on the touch screen.
- the third program logic module is for enabling the processor-based system to cause the control interface to be presented on the touch screen based on the motion.
- a second example computer program product includes a computer-readable medium having computer program logic recorded thereon for enabling a processor-based system to cause visibility of a control interface to increase.
- the computer program product includes a first program logic module, a second program logic module, and a third program logic module.
- the first program logic module is for enabling the processor-based system to detect finger(s) in a hover position. The finger(s) are a spaced distance from a touch screen.
- the second program logic module is for enabling the processor-based system to detect a motion of at least one of the finger(s). The motion is a user command to increase the visibility of the control interface, which is at least partially visible on the touch screen.
- the control interface is configured to control content associated with a virtual element that is displayed on the touch screen.
- the third program logic module is for enabling the processor-based system to cause the visibility of the control interface on the touch screen to increase based on the motion.
- the user command is characterized by the finger(s) remaining in the hover position for at least a specified period of time and further characterized by the finger(s) remaining motionless for at least the specified period of time.
- the third program logic module is for enabling the processor-based system to cause the control interface to be presented on the touch screen based on detection of the user command.
- FIG. 1 is a system diagram of an exemplary mobile device with a touch screen for sensing a finger hover, motion and/or absence thereof, gesture, etc.
- FIGS. 4-17 are block diagrams showing various exemplary states of a touch- enabled device (e.g., a mobile device shown in FIG. 1) in accordance with embodiments.
- a touch- enabled device e.g., a mobile device shown in FIG. 1
- FIG. 18 shows examples of some hover input gestures that can be used for causing a control interface to be presented on a touch-enabled device.
- FIG. 19 depicts a flowchart of an example method for causing visibility of a control interface to be increased in accordance with an embodiment.
- FIG. 20 depicts a flowchart of an example method for causing a control interface to be presented in accordance with an embodiment.
- FIG. 21 depicts an example computer in which embodiments may be implemented.
- references in the specification to "one embodiment,” “an embodiment,” “an example embodiment,” or the like, indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Furthermore, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the relevant art(s) to implement such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
- Example embodiments described herein are capable of receiving user input on a touch screen or other touch responsive surfaces.
- touch responsive surfaces include materials which are responsive to resistance, capacitance, or light to detect touch or proximity gestures.
- a motion e.g., a hover gesture
- a hover gesture can occur without a user physically touching a touch screen. Instead, the user's finger or fingers can be positioned at a spaced distance above the touch screen.
- the touch screen can detect that the user's fingers are proximate to the touch screen, such as through capacitive sensing. Additionally, finger movement can be detected while the fingers are hovering to expand the existing options for gesture input.
- the techniques may eliminate a need to select icons on the touch screen in order to cause the control interface to be presented.
- a motion for causing a control interface to be presented may include a hover gesture.
- Such hover gesture need not necessarily be as precise as some other types of gestures (e.g., touch gestures) in order for accurate detection thereof to occur.
- Embodiments described herein focus on a mobile device, such as a mobile phone. However, the described embodiments can be applied to any device with a touch screen or a touch surface, including laptop computers, tablets, desktop computers, televisions, wearable devices, etc.
- Embodiments are described with respect to hover touch gestures (a.k.a. hover gestures) for illustrative purposes and are not intended to be limiting. It will be recognized that the embodiments described herein may be implemented using any suitable type of motion. Such motion need not necessarily include a hover touch gesture.
- Hover Touch is built into the touch framework to detect a finger above-screen as well as to track finger movement.
- a gesture engine can be used to detect motion of finger(s) or absence of such motion.
- a motion may include a hover touch gesture, though the scope of the example embodiments is not limited in this respect. It will be recognized that allowing for hover recognition significantly expands the library of available gestures to implement on a touch screen device.
- the gesture engine can be used for the recognition of hover touch gestures, including as examples: (1) finger hover pan - float a finger above the screen and pan the finger in any direction; (2) finger hover tickle/flick - float a finger above the screen and quickly flick the finger one or more times as like a tickling motion with the finger; (3) finger hover circle - float a finger or thumb above the screen and draw a circle or counter- circle in the air; (4) finger hover hold - float a finger above the screen and keep the finger stationary; (5) palm swipe - float the edge of the hand or the palm of the hand and swipe across the screen; (6) air pinch/lift/drop - use the thumb and pointing finger to do a pinch gesture above the screen, drag, then a release motion; (7) hand wave gesture - float hand above the screen and move the hand back and forth in a hand-waving motion.
- sensing of a user's hand can be based on capacitive sensing, but other techniques can be used, such as an ultrasonic distance sensor or camera-based sensing (images taken of user's hand to obtain distance and movement).
- FIG.l is a system diagram depicting an exemplary mobile device 100 including a variety of optional hardware and software components, shown generally at 102. Any components 102 in the mobile device can communicate with any other component, although not all connections are shown, for ease of illustration.
- the mobile device can be any of a variety of computing devices (e.g., cell phone, smartphone, handheld computer, Personal Digital Assistant (PDA), etc.) and can allow wireless two-way communications with one or more mobile communications networks 104, such as a cellular or satellite network, or with a local area or wide area network.
- mobile communications networks 104 such as a cellular or satellite network, or with a local area or wide area network.
- the illustrated mobile device 100 can include a controller or processor 110 (e.g., signal processor, microprocessor, ASIC, or other control and processing logic circuitry) for performing such tasks as signal coding, data processing, input/output processing, power control, and/or other functions.
- An operating system 112 can control the allocation and usage of the components 102 and support for one or more application programs 1 14 (a.k.a. applications).
- the application programs 114 can include common mobile computing applications (e.g., email applications, calendars, contact managers, web browsers, messaging applications) and any other computing applications (e.g., word processing applications, mapping applications, media player applications).
- the illustrated mobile device 100 can include memory 120.
- Memory 120 can include non-removable memory 122 and/or removable memory 124.
- the non-removable memory 122 can include RAM, ROM, flash memory, a hard disk, or other well-known memory storage technologies.
- the removable memory 124 can include flash memory or a Subscriber Identity Module (SIM) card, which is well known in GSM communication systems, or other well-known memory storage technologies, such as "smart cards.”
- SIM Subscriber Identity Module
- the memory 120 can be used for storing data and/or code for running the operating system 112 and the applications 114.
- Example data can include web pages, text, images, sound files, video data, or other data sets to be sent to and/or received from one or more network servers or other devices via one or more wired or wireless networks.
- the memory 120 can be used to store a subscriber identifier, such as an International Mobile Subscriber Identity (IMSI), and an equipment identifier, such as an International Mobile Equipment Identifier (IMEI). Such identifiers can be transmitted to a network server to identify users and equipment.
- IMSI International Mobile Subscriber Identity
- IMEI International Mobile Equipment Identifier
- the mobile device 100 can support one or more input devices 130, such as a touch screen 132, microphone 134, camera 136, physical keyboard 138 and/or trackball 140 and one or more output devices 150, such as a speaker 152 and a display 154.
- Touch screens such as touch screen 132, can detect input in different ways. For example, capacitive touch screens detect touch input when an object (e.g., a fingertip) distorts or interrupts an electrical current running across the surface. As another example, touch screens can use optical sensors to detect touch input when beams from the optical sensors are interrupted. Physical contact with the surface of the screen is not necessary for input to be detected by some touch screens.
- the touch screen 132 can support a finger hover detection using capacitive sensing, as is well understood in the art.
- Other detection techniques can be used, as already described above, including camera-based detection and ultrasonic-based detection.
- a finger hover a user's finger is typically within a predetermined spaced distance above the touch screen, such as between 0.1 to 0.25 inches, or between .0.25 inches and .05 inches, or between .0.5 inches and 0.75 inches or between .75 inches and 1 inch, or between 1 inch and 1.5 inches, etc.
- the touch screen 132 is shown to include a control interface 192 for illustrative purposes.
- the control interface 192 is configured to control content associated with a virtual element that is displayed on the touch screen 132.
- the control interface 192 is configured to control content that is provided by one or more of the applications 114.
- the control interface 192 may be presented to the user on the touch screen 132 to enable the user to access controls that control such content. Presentation of the control interface 192 may be based on (e.g., triggered by) detection of a motion within a designated distance from the touch screen 132 or absence of such motion.
- Example embodiments for causing a control interface (e.g., control interface 192) to be presented on a touch screen (e.g., touch screen 132) based on a motion or absence thereof are described in greater detail below.
- NUI Natural User Interface
- Other possible output devices can include piezoelectric or other haptic output devices. Some devices can serve more than one input/output function. For example, touch screen 132 and display 154 can be combined in a single input/output device.
- the input devices 130 can include a Natural User Interface (NUI).
- NUI is any interface technology that enables a user to interact with a device in a "natural" manner, free from artificial constraints imposed by input devices such as mice, keyboards, remote controls, and the like.
- NUI methods include those relying on speech recognition, touch and stylus recognition, gesture recognition both on screen and adjacent to the screen, air gestures, head and eye tracking, voice and speech, vision, touch, gestures, and machine intelligence.
- NUI NUI
- the operating system 112 or applications 114 can comprise speech-recognition software as part of a voice control interface that allows a user to operate the device 100 via voice commands.
- the device 100 can comprise input devices and software that allows for user interaction via a user's spatial gestures, such as detecting and interpreting gestures to provide input to a gaming application.
- Wireless modem(s) 160 can be coupled to antenna(s) (not shown) and can support two-way communications between the processor 110 and external devices, as is well understood in the art.
- the modem(s) 160 are shown generically and can include a cellular modem 166 for communicating with the mobile communication network 104 and/or other radio-based modems (e.g., Bluetooth 164 and/or Wi-Fi 162).
- At least one of the wireless modem(s) 160 is typically configured for communication with one or more cellular networks, such as a GSM network for data and voice communications within a single cellular network, between cellular networks, or between the mobile device and a public switched telephone network (PSTN).
- GSM Global System for Mobile communications
- PSTN public switched telephone network
- the mobile device can further include at least one input/output port 180, a power supply 182, a satellite navigation system receiver 184, such as a Global Positioning System (GPS) receiver, an accelerometer 186, and/or a physical connector 190, which can be a USB port, IEEE 1394 (Fire Wire) port, and/or RS-232 port.
- GPS Global Positioning System
- the illustrated components 102 are not required or all-inclusive, as any components can be deleted and other components can be added as would be recognized by one skilled in the art.
- FIG. 2 is a system diagram showing further details of components that can be used to implement a hover user input.
- a touch screen sensor 210 can detect a finger hover at a spaced distance (i.e., a non-zero distance) above a touch screen (e.g., touch screen 132).
- a spaced distance i.e., a non-zero distance
- touch screen e.g., touch screen 1302.
- Some examples of such technology are available from Cypress Semiconductor Corp. ®, although other systems that provide similar detection functionality are known in the art.
- a gesture engine 212 can receive input from the touch screen sensor to interpret user input including finger(s) in a hover position (a position at a distance above the touch screen), motion of at least one of the finger(s) or absence of such motion, etc.
- the motion may include a hover gesture (a user input command to perform an action).
- a hover gesture can include a user finger remaining in a fixed position for a predetermined period of time or some predetermined finger movement.
- Some predetermined finger movements can include a tickle movement, wherein the user moves his/her fingertip back and forth in a rapid motion to mimic tickling, or a circle movement, or a check movement (like a user is checking a box), etc.
- Specific gestures include, but are not limited to (1) finger hover pan - float a finger above the screen and pan the finger in any direction; (2) finger hover tickle/flick - float a finger above the screen and quickly flick the finger once or multiple times as like a tickling motion with the finger; (3) finger hover circle - float a finger or thumb above the screen and draw a circle or counter-circle in the air; (4) finger hover hold - float a finger above the screen and keep the finger stationary; (5) palm swipe - float the edge of the hand or the palm of the hand and swipe across the screen; (6) air pinch/lift/drop - use the thumb and pointing finger to do a pinch gesture above the screen, drag, then a release motion; (7) hand wave gesture - float hand above the screen and move the hand back and forth in a hand- waving motion. With each of these gestures, the user's fingers do not touch the screen.
- the gesture engine 212 interprets the user input, the gesture engine 212 can alert an operating system 214 of the motion (e.g., gesture), absence of motion, etc.
- the operating system 214 can cause a control interface (e.g., control interface 192) to be presented on the touch screen using a rendering engine 216. It can also be said that the rendering engine causes the control interface to be presented on the touch screen.
- FIG. 3 depicts a flowchart 300 of an example method for causing a control interface to be presented in accordance with an embodiment.
- Flowchart 300 may be performed by a mobile device, such as mobile device 100 shown in FIG. 1. It will be recognized that such a mobile device may include any one or more of the system components shown in FIG. 2. For instance, the mobile device may include touch screen sensor 210, gesture engine 212, operating system 214, and/or rendering engine 216. For illustrative purposes, flowchart 300 is described with respect to the system components shown in FIG. 2. Further structural and operational embodiments will be apparent to persons skilled in the relevant art(s) based on the discussion regarding flowchart 300.
- the method of flowchart 300 begins at step 302.
- finger(s) are detected in a hover position.
- a presence of the finger(s) may be detected in the hover position.
- the finger(s) are a spaced distance from a touch screen.
- a hover position occurs when one or more fingers are detected above a touch screen by a spaced distance (which can be any distance whether it be predetermined or based on reception of a signal), but without the one or more fingers physically touching the touch screen.
- Detection means that a touch sensor (e.g., touch screen sensor 210) recognizes that one or more fingers are near the touch screen.
- touch screen sensor 210 detects the finger(s) in the hover position.
- the finger(s) are a spaced distance from touch screen 132.
- the finger(s) may be a spaced distance from touch screen sensor 210 on touch screen 132.
- detecting the finger(s) in the hover position at step 302 causes a hover mode to be entered.
- motion(s) e.g., hover gesture(s)
- a motion of at least one of the finger(s) is detected.
- the motion is a user command to present a control interface configured to control content associated with a virtual element that is displayed on the touch screen.
- the motion occurs without the at least one of the finger(s) touching the touch screen.
- gesture engine 212 detects the motion of at least one of the finger(s).
- the motion may be detected at step 304 over an area of the touch screen in which the virtual element is displayed based on the virtual element being displayed in that area.
- the motion may be detected at step 304 over an area of the touch screen without regard to where on the touch screen the virtual element is displayed.
- Examples of a virtual element include but are not limited to a window (e.g., a window in which the content is displayed or is to be displayed); an icon; a virtual button; a photograph; a drawing; a textual document (e.g., an email); and a representation of an item, such as a map (or point of interest thereon), a song, a movie, or a computer program (e.g., a graphics editing program, a word processing program, an email program, a map program, a media player, etc.).
- the content associated with the virtual element may be content that is displayed in the virtual element, though the scope of the example embodiments is not limited in this respect.
- step 304 includes detecting that the motion occurs for at least a specified period of time.
- the specified period of time may be a fixed (e.g., predetermined) period of time (e.g., 0.5 seconds, 0.8 seconds, 1.0 seconds, 1.2 seconds, 1.5 seconds).
- the specified period may be a variable period of time that is based on one or more factors. Examples of such a factor include but are not limited to a preference (e.g., a preferred period of time) of the user, historical information regarding the user (e.g., an average, maximum, or minimum time that the user has taken historically to complete the motion (e.g., to make a specified hover gesture), etc.
- a preference e.g., a preferred period of time
- historical information regarding the user e.g., an average, maximum, or minimum time that the user has taken historically to complete the motion (e.g., to make a specified hover gesture), etc.
- the motion detected at step 304 includes a hover gesture.
- step 304 includes detecting a finger hover flick performed by the at least one of the finger(s).
- step 304 includes detecting a high-velocity flick performed by the at least one of the finger(s).
- the high-velocity flick is defined by the at least one of the finger(s) traveling at a velocity that is greater than or equal to a threshold velocity.
- detecting the finger hover flick may include measuring the velocity at which the at least one of the finger(s) travels, comparing the velocity to the threshold velocity, and determining that the velocity is greater than or equal to the threshold velocity.
- step 304 includes detecting a finger hover pan performed by the at least one of the finger(s). For instance, step 304 may include detecting the finger hover pan based on the at least one of the finger(s) moving in a specified (e.g., predetermined) direction with respect to the touch screen. In still another aspect, step 304 includes detecting a finger hover circle performed by the at least one of the finger(s).
- the at least one of the finger(s) includes a plurality of fingers (i.e., multiple fingers).
- step 304 may include detecting that the plurality of fingers are moved together (e.g., pinched together).
- step 304 ay include detecting that the plurality of fingers are moved apart.
- step 304 The example hover gestures described above with regard to step 304 are provided for illustrative purposes and are not intended to be limiting. It will be recognized that the motion detected at step 304 may include any suitable hover gesture that involves motion.
- control interface is caused to be presented on the touch screen based on the motion.
- operating system 214 and/or rendering engine 216 cause the control interface to be presented on touch screen 132 based on the motion.
- step 306 includes transitioning from a first state in which the control interface is not shown on the touch screen to a second state in which the control interface is shown on the touch screen.
- the transitioning is smooth.
- the transitioning may appear to a user as being continuous (e.g., no breaks or pauses in the transitioning from the first state to the second state). Accordingly, the control interface may fade into view on the touch screen.
- the transitioning is periodic and includes one or more discrete intermediate states between the first state and the second state.
- each successive intermediate state is characterized by an incrementally greater visibility of the control interface.
- the second state is characterized by a visibility of the control interface that is greater than a visibility of the control interface that is characterized by each the one or more discrete intermediate states.
- the transitioning has a relatively short duration (e.g., a duration of 1.0 seconds or less, a duration of 0.8 seconds or less, 0.6 seconds or less, 0.4 seconds or less, etc.).
- the transitioning has a relatively long duration (e.g., a duration of 1.5 seconds or more, a duration of 2.0 seconds or more, a duration of 2.5 seconds or more, a duration of 3.0 seconds or more, etc.).
- step 306 includes causing the control interface to change from a first state in which a portion of the control interface is shown on the touch screen to a second state in which an extent of the control interface that is greater than the portion (e.g., an entirety of the control interface) is shown on the touch screen.
- the portion of the control interfaced is less than all of the control interface.
- a proportion of the control interface that is displayed on the touch screen may be increased from a first proportion (e.g., 0.01, 2.2%, 1/20, 10%, etc.) that is greater than zero to a second proportion (e.g., 9/10, 0.963, 100%) that is greater than the first proportion.
- step 306 includes causing the control interface to change from a first state in which the control interface is partially transparent to a second state in which the control interface is opaque.
- an extent opacity of the control interface may be increased from a first extent of opacity (e.g., 10%) that is great than zero to a second extent of opacity of 100%.
- an extent of transparency of the control interface may be reduced from a first extent of transparency (e.g., 90%) that is less than one-hundred percent to a second extent of transparency of 0%>.
- step 306 includes causing the control interface to change from a first state to a second state.
- the control interface In the first state, the control interface is partially transparent to provide a first extent of transparency.
- the control interface In the second state, the control interface is partially transparent to provide a second extent of transparency that is less than the first extent.
- Each of the first extent of transparency and the second extend of transparency is greater than 0% and less than 100%.
- an extent of opacity of the control interface may be increased from a first extent of opacity (e.g., 5%) that is great than zero to a second extent of opacity (e.g., 99%) that is greater than the first opacity and that is less than 100%.
- a first extent of opacity e.g., 5%
- a second extent of opacity e.g., 99%
- the first extent of opacity corresponds to the first extent of transparency
- the second extent of opacity corresponds to the second extent of transparency. Accordingly, increasing the extent of opacity from 5% to 99% is equivalent to decreasing the extent of transparency from 95% to 1%.
- the example opacity and transparency values mentioned herein are provided for illustrative purposes and are not intended to be limiting. An extent of transparency or opacity may be any suitable value.
- control interface to be presented at step 306 are provided for illustrative purposes and are not intended to be limiting. Any suitable technique may be employed at step 306 for causing the control interface to be presented. For instance, a resolution of the control interface on the touch screen may be increased; a contrast of the control interface on the touch screen may be increased, etc.
- the virtual element is a map.
- a control interface having control(s) that enable a user to zoom in and/or zoom out with respect to a location on the map is caused to be presented on the touch screen at step 306 based on the motion of the at least one of the finger(s), which is detected at step 304.
- the control interface may include a zoom slider control that enables the user to slide a virtual switch up (or right) to increase magnification with respect to the location and/or to slide the virtual switch down (or left) to decrease magnification with respect to the location.
- the example directions mentioned above are provided for illustrative purposes and are not intended to be limiting.
- the zoom slider control may be configured such that the virtual switch may be slid along any suitable axis in any suitable direction to increase or decrease the magnification.
- the virtual element is a representation of media content (e.g., a song or a video) or a representation of a media player, which is capable of playing such content.
- a control interface having control(s) that enable a user to control the media content is caused to be presented on the touch screen at step 306.
- the control interface may include a shuttle control.
- the shuttle control may enable the user to move the media content frame by frame, control (e.g., set) a rate at which the media content is to be fast forwarded and/or rewound, etc.
- control interface may include a drag slider control that enables the user to drag a switch along an axis to fast forward and/or rewind to a desired point or frame in the media content. For instance, dragging the switch to the right may fast forward the media content from a point or frame of the media content that is currently playing. Dragging the switch to the left may rewind the media content from a point or frame of the media content that is currently playing. It will be recognized that the drag slider control may be configured such that the switch may be slid along any suitable axis in any suitable direction to fast forward or rewind the media content.
- the virtual element is a user interface.
- an item from the chrome (e.g., an application bar or an application tray) of the user interface that enables a user to add, remove, and/or change content that is displayed in the user interface is caused to be presented on the touch screen at step 306.
- the virtual element is a message (e.g., an email, a short message service (SMS), an instant message (IM), etc.), a list of such messages, or a representation of a messaging application, which manages transfer of such messages.
- SMS short message service
- IM instant message
- a control interface having control(s) that enable a user to perform operations (e.g., forward, reply, delete) with respect to a message (e.g., in a list of messages) is caused to be presented on the touch screen at step 306 based on the motion of the at least one of the finger(s), which is detected at step 304.
- a soft input panel (e.g., a virtual keyboard) is caused to be presented on the touch screen at step 306 based on the motion. For instance, a history associated with the message may be displayed on the touch screen.
- the SIP may be presented on the touch screen as a result of step 306 so that the user may type text into the message.
- presentation of the SIP may be discontinued. For instance, the SIP may disappear from the touch screen, move to an edge of the screen, become less opaque, etc., which may enable the user to view the history.
- the SIP may be presented on the touch screen again, and so on.
- the virtual element is a representation of an Internet browser.
- a control interface having control(s) that enable a user to control content that is displayed in the browser is caused to be presented on the touch screen at step 306.
- the control interface may include control(s) for navigating between web pages (e.g., from one web page to another).
- the control interface may include a shuttle control, a drag slider control, etc. for controlling the media content.
- the virtual element is a virtual viewport of a camera or a representation of an image captured by the camera.
- a control interface having control(s) that enable a user to control content in the representation of the image and/or other image(s) associated therewith is caused to be presented on the touch screen at step 306.
- the control interface may include control(s) that enable the user to zoom in and/or zoom out with respect to object(s) in image(s), turn on and/or off a flash of the camera, turn on and/or off a video mode of the camera, select a lens type and/or one or more filters to be used with respect to image(s), etc.
- FIGS. 4-17 are block diagrams showing various exemplary states of a touch- enabled device, such as mobile device 102 shown in FIG. 1, in accordance with embodiments.
- FIGS. 4-11 show various states that may occur prior to detecting a motion as described above with respect to step 304 of flowchart 300.
- FIGS. 12-17 show various states that may occur as a result of causing the control interface to be presented as described above with respect to step 306 of flowchart 300.
- FIG. 4 depicts a state of a touch-enabled device 400 in which a touch screen 402 of the touch-enabled device 400 displays a virtual element 404.
- a control interface configured to control content associated with the virtual element 404 is not shown (e.g., not displayed) on the touch screen 402.
- FIG. 5 depicts a state of a touch-enabled device 500 in which a touch screen 502 of the touch-enabled device 500 displays a virtual element 504.
- a portion of the control interface 506 is shown to be clipped by the bottom of the touch screen 502 for illustrative purposes and is not intended to be limiting. It will be recognized that portion(s) of the control interface 506 may be clipped along any one or more sides of the touch screen 502 or may be hidden behind one or more virtual element(s) on the touch screen 502.
- the virtual element 504 and the control interface 506 are non-overlapping (i.e., do not overlap) in FIG. 5, though the scope of the example embodiments is not limited in this respect (as will be seen in FIG. 6).
- FIG. 6 depicts a state of a touch-enabled device 600 in which a touch screen 602 of the touch-enabled device 600 displays a virtual element 604.
- a control interface 606 is partially shown on the touch screen 602.
- the state depicted in FIG. 6 is similar to the state depicted in FIG. 5, except that the virtual element 604 and the control interface 606 in FIG. 6 partially overlap. As shown in FIG. 6, less than all of the control interface 606 overlaps with the virtual element 604.
- FIG. 7 depicts a state of a touch-enabled device 700 in which a touch screen 702 of the touch-enabled device 700 displays a virtual element 704.
- An entirety of a control interface 706 is shown on the touch screen 702.
- the control interface 706 is shown in FIG. 7 to be partially transparent, as indicated by the dashed outer boundary thereof.
- the control interface 706 fully overlaps with the virtual element 704, such that the outer boundary of the control interface 706 is included within the outer boundary of the virtual element 704.
- FIG. 8 depicts a state of a touch-enabled device 800 in which a touch screen 802 of the touch-enabled device 800 displays a virtual element 804.
- An entirety of a control interface 806 is shown on the touch screen 802.
- the control interface 806 is shown in FIG. 8 to be partially transparent, as indicated by the dashed outer boundary thereof.
- the state depicted in FIG. 8 is similar to the state depicted in FIG. 7, except that the virtual element 804 and the control interface 806 in FIG. 6 do not overlap.
- FIG. 9 depicts a state of a touch-enabled device 900 in which a touch screen 902 of the touch-enabled device 900 displays a virtual element 904.
- a control interface 906 is partially shown on the touch screen 902.
- the control interface 906 is shown in FIG. 9 to be partially transparent, as indicated by the dashed outer boundary thereof.
- the state depicted in FIG. 9 is similar to the state depicted in FIG. 8, except that the control interface 906 in FIG. 9 is partially shown on the touch screen 902.
- a portion of the control interface 906 is shown to be clipped by the bottom of the touch screen 902 for illustrative purposes and is not intended to be limiting.
- FIG. 10 depicts a state of a touch-enabled device 1000 in which a touch screen 1002 of the touch-enabled device 1000 displays a virtual element 1004. An entirety of a control interface 1006 is shown on the touch screen 1002. The control interface 1006 is shown in FIG. 10 to be partially transparent, as indicated by the dashed outer boundary thereof. The state depicted in FIG. 10 is similar to the state depicted in FIG. 8, except that the virtual element 1004 and the control interface 1006 in FIG. 10 partially overlap.
- FIG. 11 depicts a state of a touch-enabled device 1100 in which a touch screen 1102 of the touch-enabled device 1100 displays a virtual element 1104.
- a control interface 1106 is partially shown on the touch screen 1102.
- the control interface 1106 is shown in FIG. 11 to be partially transparent, as indicated by the dashed outer boundary thereof.
- the state depicted in FIG. 11 is similar to the state depicted in FIG. 9, except that the virtual element 1104 and the control interface 1106 in FIG. 11 partially overlap.
- FIG. 12 depicts a state of a touch-enabled device 1200 in which a touch screen 1202 of the touch-enabled device 1200 displays a virtual element 1204.
- a control interface 1206 is caused to be presented on the touch screen 1202 based on a motion of finger(s) 1210, as depicted by motion indication lines 1212.
- the control interface 1206 is shown to move entirely into view on the touch screen, as depicted by arrow 1208.
- the control interface 1206 is shown to move entirely into view from the bottom of the touch screen for illustrative purposes and is not intended to be limiting. It will be recognized that the control interface 1206 may be moved entirely into view from any side of the touch screen 1202 and/or any angle in a plane that defines the touch screen 1202. It will further be recognized that the control interface 1206 need not necessarily move into view. For example, the control interface 1206 may appear in its entirety on the touch screen 1202 without contacting an outer boundary of the touch screen 1202 (e.g., from a state in which the control interface 1206 is not shown or a state in which the control interface 1206 is partially shown and/or partially transparent). In accordance with this example, the control interface 1206 may fade into view on the touch screen 1202.
- control interface 1206 fully overlaps with the virtual element 1204, such that the outer boundary of the control interface 1206 is included within the outer boundary of the virtual element 1204, though the scope of the example embodiments is not limited in this respect (as will be seen in FIGS. 13 and 14).
- FIG. 13 depicts a state of a touch-enabled device 1300 in which a touch screen 1302 of the touch-enabled device 1300 displays a virtual element 1304.
- a control interface 1306 is caused to be presented on the touch screen 1302, as depicted by arrow 1308.
- An entirety of the control interface 1306 is shown on the touch screen 1302.
- the state depicted in FIG. 13 is similar to the state depicted in FIG. 12, except that the virtual element 1304 and the control interface 1306 in FIG. 13 do not overlap.
- FIG. 14 depicts a state of a touch-enabled device 1400 in which a touch screen 1402 of the touch-enabled device 1400 displays a virtual element 1404.
- a control interface 1406 is caused to be presented on the touch screen 1402, as depicted by arrow 1408.
- An entirety of the control interface 1406 is shown on the touch screen 1402.
- the state depicted in FIG. 14 is similar to the state depicted in FIG. 12, except that the virtual element 1404 and the control interface 1406 in FIG. 14 partially overlap.
- FIG. 15 depicts a state of a touch-enabled device 1500 in which a touch screen 1502 of the touch-enabled device 1500 displays a virtual element 1504.
- a control interface 1506 is caused to be presented on the touch screen 1502 based on a motion.
- An entirety of the control interface 1506 is shown on the touch screen 1502.
- the state depicted in FIG. 15 is similar to the state depicted in FIG. 12, except that the control interface 1506 in FIG. 15 is partially transparent, as indicated by the dashed outer boundary thereof.
- the state depicted in FIG. 15 is similar to the state depicted in FIG. 7, except that an extent of transparency of the control interface 706 shown in FIG. 7 is greater than an extent of transparency of the control interface 1506 shown in FIG. 15.
- FIG. 16 depicts a state of a touch-enabled device 1600 in which a touch screen 1602 of the touch-enabled device 1600 displays a virtual element 1604. A control interface 1606 is caused to be presented on the touch screen 1602 based on a motion. An entirety of the control interface 1606 is shown on the touch screen 1602.
- the state depicted in FIG. 16 is similar to the state depicted in FIG. 13, except that the control interface 1606 in FIG. 16 is partially transparent, as indicated by the dashed outer boundary thereof.
- an extent of transparency of the control interface 806 shown in FIG. 8 is greater than an extent of transparency of the control interface 1606 shown in FIG. 16. Accordingly, an extent of opacity of the control interface 806 shown in FIG. 8 is less than an extent of opacity of the control interface 1606 shown in FIG. 16.
- FIG. 17 depicts a state of a touch-enabled device 1700 in which a touch screen 1702 of the touch-enabled device 1700 displays a virtual element 1704.
- a control interface 1706 is caused to be presented on the touch screen 1702 based on a motion.
- An entirety of the control interface 1706 is shown on the touch screen 1702.
- the state depicted in FIG. 17 is similar to the state depicted in FIG. 14, except that the control interface 1706 in FIG. 17 is partially transparent, as indicated by the dashed outer boundary thereof.
- the state depicted in FIG. 17 is similar to the state depicted in FIG. 10, except that an extent of transparency of the control interface 1006 shown in FIG. 10 is greater than an extent of transparency of the control interface 1706 shown in FIG. 17. Accordingly, an extent of opacity of the control interface 1006 shown in FIG. 10 is less than an extent of opacity of the control interface 1706 shown in FIG. 17.
- FIGS. 4-17 The example states depicted in FIGS. 4-17 are provided for illustrative purposes and are not intended to be limiting. It will be recognized that any suitable states (including states other than those described herein) may be used in the example techniques described herein for causing a control interface to be presented on a touch-enabled device.
- FIG. 18 shows examples of some hover input gestures that can be used for causing a control interface to be presented on a touch-enabled device.
- a first hover gesture 1810 is a circle gesture wherein a user's finger moves in a circular motion.
- Clockwise circle gestures can be interpreted differently from counterclockwise circle gestures.
- a counterclockwise circular gesture can be interpreted as causing an action that is opposite an action that is caused by a clockwise circular gesture (e.g., zoom in and zoom out, presentation of a control interface and discontinuation of the presentation, etc.).
- a second hover gesture 1820 is shown as a tickle motion wherein a user's fingertip moves in a back-and-forth motion.
- a third hover gesture is where a user's pointer finger is maintained in the same hover position for more than a predetermined period of time.
- Other hover gestures can be used, such as a user tracing out a check mark over a touch screen of the touch-enabled device, for example.
- various hover gestures can be detected based on predefined finger motions at a spaced distance from the touch screen.
- Other hover gestures can be a quick move in and out without touching the screen.
- Another hover gesture can be a high- velocity flick, which involves a finger traveling at a certain minimal velocity over a distance.
- Still another hover gesture is a palm-based wave gesture.
- the method of flowchart 1900 begins at step 1902.
- step 1902 fmger(s) are detected in a hover position.
- the finger(s) are a spaced distance from a touch screen.
- touch screen sensor 210 detects the finger(s) in the hover position.
- the finger(s) are a spaced distance from touch screen 132.
- the finger(s) may be a spaced distance from touch screen sensor 210 on touch screen 132.
- step 1904 motion of at least one of the finger(s) is detected.
- the motion is a user command to increase visibility of a control interface that is at least partially visible on the touch screen.
- the motion occurs without the at least one of the finger(s) touching the touch screen.
- the control interface is configured to control content associated with a virtual element that is displayed on the touch screen.
- gesture engine 212 detects the motion of at least one of the finger(s).
- step 1904 includes detecting that the motion occurs for at least a specified period of time.
- the motion includes a hover gesture (e.g., a finger hover flick, a high-velocity flick, a finger hover pan, a finger hover circle, fingers moving together, fingers moving apart, waving or swiping a hand that includes the at least one of the finger(s), etc.).
- a hover gesture e.g., a finger hover flick, a high-velocity flick, a finger hover pan, a finger hover circle, fingers moving together, fingers moving apart, waving or swiping a hand that includes the at least one of the finger(s), etc.
- the visibility of the control interface on the touch screen is caused to be increased based on the motion.
- operating system 214 and/or rendering engine 216 cause the visibility of the control interface on touch screen 132 to be increased based on the motion.
- step 1906 includes causing the control interface to change from a first state in which a portion of the control interface is shown on the touch screen to a second state in which an extent of the control interface that is greater than the portion (e.g., an entirety of the control interface) is shown on the touch screen.
- the portion of the control interfaced is less than all of the control interface.
- step 1906 includes causing the control interface to change from a first state in which the control interface is partially transparent to a second state in which the control interface is opaque.
- step 1906 includes causing the control interface to change from a first state to a second state.
- the control interface in the first state, is partially transparent to provide a first extent of transparency.
- the control interface in the second state, is partially transparent to provide a second extent of transparency that is less than the first extent.
- step 1906 may include transitioning from a first state to a second state, wherein the first state may be any of the states depicted in FIGS. 5-11 and the second state may be any of the states depicted in FIGS. 12-17. It will be recognized, however, that in this embodiment the first state cannot be the state depicted in FIG. 4.
- the control interface is not shown on the touch screen in FIG. 4 and therefore is not at least partially visible on the touch screen.
- one or more steps 1902, 1904, and/or 1906 of flowchart 1900 may not be performed. Moreover, steps in addition to or in lieu of steps 1902, 1904, and/or 1906 may be performed.
- the method of flowchart 2000 begins at step 2002.
- finger(s) are detected in a hover position.
- the fmger(s) are a spaced distance from a touch screen.
- touch screen sensor 210 detects the finger(s) in the hover position.
- the finger(s) are a spaced distance from touch screen 132.
- the finger(s) may be a spaced distance from touch screen sensor 210 on touch screen 132.
- a user command to present a control interface configured to control content associated with a virtual element that is displayed on the touch screen is detected.
- the user command is characterized by the finger(s) remaining in the hover position for at least a specified period of time.
- the user command is further characterized by the finger(s) remaining motionless for at least the specified period of time.
- gesture engine 212 detects the user command. For instance, gesture engine 212 may detect that the finger(s) remain in the hover position for at least the specified period of time and that the finger(s) remain motionless for at least the specified period of time.
- the user command is further characterized by occurrence of at least one non-hover gesture.
- a non-hover gesture is a gesture that does not include hovering. Examples of a non-hover gesture include but are not limited to a gaze gesture (e.g., gazing for at least a threshold period of time), a look-and-blink gesture (e.g., blinking while looking), a voice gesture (e.g., saying a command), etc.
- gesture engine 212 detects the at least one non-hover gesture.
- control interface is caused to be presented on the touch screen based on detection of the user command.
- operating system 214 and/or rendering engine 216 cause the control interface to be presented on touch screen 132 based on the detection of the user command.
- step 2006 includes transitioning from a first state in which the control interface is not shown on the touch screen to a second state in which the control interface is shown on the touch screen.
- step 2006 includes causing the control interface to change from a first state in which a portion of the control interface is shown on the touch screen to a second state in which an extent of the control interface that is greater than the portion (e.g., an entirety of the control interface) is shown on the touch screen. The portion of the control interfaced is less than all of the control interface.
- step 2006 includes causing the control interface to change from a first state in which the control interface is partially transparent to a second state in which the control interface is opaque.
- step 2006 includes causing the control interface to change from a first state to a second state.
- the control interface in the first state, is partially transparent to provide a first extent of transparency.
- the control interface in the second state, is partially transparent to provide a second extent of transparency that is less than the first extent.
- step 2006 may include transitioning from a first state to a second state, wherein the first state may be any of the states depicted in FIGS. 4- 11 and the second state may be any of the states depicted in FIGS. 12-17.
- one or more steps 2002, 2004, and/or 2006 of flowchart 2000 may not be performed. Moreover, steps in addition to or in lieu of steps 2002, 2004, and/or 2006 may be performed.
- Any one or more of the components 102 shown in FIG. 1, rendering engine 216, gesture engine 212, flowchart 300, flowchart 1900, and/or flowchart 2000 may be implemented in hardware, software, firmware, or any combination thereof.
- any one or more of components 102, rendering engine 216, gesture engine 212, flowchart 300, flowchart 1900, and/or flowchart 2000 may be implemented as computer program code configured to be executed in one or more processors.
- FIG. 1 For clarity, only certain selected aspects of the software -based and firmware-based implementations are described. Other details that are well known in the art are omitted.
- the disclosed technology is not limited to any specific computer language or program.
- the disclosed technology can be implemented by software and/or firmware written in C++, Java, Perl, JavaScript, Adobe Flash, or any other suitable programming language.
- one or more of components 102, rendering engine 216, operating system 214, gesture engine 212, touch screen sensor 210, flowchart 300, flowchart 1900, and/or flowchart 2000 may be implemented in a system-on-chip (SoC).
- SoC may include an integrated circuit chip that includes one or more of a processor (e.g., a microcontroller, microprocessor, digital signal processor (DSP), etc.), memory, one or more communication interfaces, and/or further circuits and/or embedded firmware to perform its functions.
- a processor e.g., a microcontroller, microprocessor, digital signal processor (DSP), etc.
- DSP digital signal processor
- FIG. 21 depicts an example computer 2100 in which embodiments may be implemented.
- mobile device 100 shown in FIG. 1 may be implemented using computer 2100, including one or more features of computer 2100 and/or alternative features.
- Computer 2100 may be a general-purpose computing device in the form of a conventional personal computer, a mobile computer, or a workstation, for example, or computer 2100 may be a special purpose computing device.
- the description of computer 2100 provided herein is provided for purposes of illustration, and is not intended to be limiting. Embodiments may be implemented in further types of computer systems, as would be known to persons skilled in the relevant art(s).
- computer 2100 includes a processing unit 2102, a system memory 2104, and a bus 2106 that couples various system components including system memory 2104 to processing unit 2102.
- Bus 2106 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures.
- System memory 2104 includes read only memory (ROM) 2108 and random access memory (RAM) 2110.
- ROM read only memory
- RAM random access memory
- BIOS basic input/output system 2112
- Computer 2100 also has one or more of the following drives: a hard disk drive 2114 for reading from and writing to a hard disk, a magnetic disk drive 2116 for reading from or writing to a removable magnetic disk 2118, and an optical disk drive 2120 for reading from or writing to a removable optical disk 2122 such as a CD ROM, DVD ROM, or other optical media.
- Hard disk drive 2114, magnetic disk drive 2116, and optical disk drive 2120 are connected to bus 2106 by a hard disk drive interface 2124, a magnetic disk drive interface 2126, and an optical drive interface 2128, respectively.
- the drives and their associated computer-readable storage media provide nonvolatile storage of computer- readable instructions, data structures, program modules and other data for the computer.
- a hard disk, a removable magnetic disk and a removable optical disk are described, other types of computer-readable storage media can be used to store data, such as flash memory cards, digital video disks, random access memories (RAMs), read only memories (ROM), and the like.
- a number of program modules may be stored on the hard disk, magnetic disk, optical disk, ROM, or RAM. These programs include an operating system 2130, one or more application programs 2132, other program modules 2134, and program data 2136.
- Application programs 2132 or program modules 2134 may include, for example, computer program logic for implementing any one or more of components 102, rendering engine 216, gesture engine 212, flowchart 300 (including any step of flowchart 300), flowchart 1900 (including any step of flowchart 1900), and/or flowchart 2000 (including any step of flowchart 2000), as described herein.
- a user may enter commands and information into the computer 2100 through input devices such as keyboard 2138 and pointing device 2140.
- Other input devices may include a microphone, joystick, game pad, satellite dish, scanner, touch screen, camera, accelerometer, gyroscope, or the like.
- serial port interface 2142 that is coupled to bus 2106, but may be connected by other interfaces, such as a parallel port, game port, or a universal serial bus (USB).
- a display device 2144 (e.g., a monitor) is also connected to bus 2106 via an interface, such as a video adapter 2146.
- computer 2100 may include other peripheral output devices (not shown) such as speakers and printers.
- Computer 2100 is connected to a network 2148 (e.g., the Internet) through a network interface or adapter 2150, a modem 2152, or other means for establishing communications over the network.
- Modem 2152 which may be internal or external, is connected to bus 2106 via serial port interface 2142.
- computer program medium and “computer-readable storage medium” are used to generally refer to media such as the hard disk associated with hard disk drive 2114, removable magnetic disk 2118, removable optical disk 2122, as well as other media such as flash memory cards, digital video disks, random access memories (RAMs), read only memories (ROM), and the like.
- Such computer-readable storage media are distinguished from and non-overlapping with communication media (do not include communication media).
- Communication media typically embodies computer- readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave.
- modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
- communication media includes wireless media such as acoustic, RF, infrared and other wireless media. Example embodiments are also directed to such communication media.
- computer programs and modules may be stored on the hard disk, magnetic disk, optical disk, ROM, or RAM. Such computer programs may also be received via network interface 2150 or serial port interface 2142. Such computer programs, when executed or loaded by an application, enable computer 2100 to implement features of embodiments discussed herein. Accordingly, such computer programs represent controllers of the computer 2100.
- Example embodiments are also directed to computer program products comprising software (e.g., computer-readable instructions) stored on any computer-useable medium. Such software, when executed in one or more data processing devices, causes a data processing device(s) to operate as described herein.
- Embodiments may employ any computer-useable or computer-readable medium, known now or in the future. Examples of computer-readable mediums include, but are not limited to storage devices such as RAM, hard drives, floppy disks, CD ROMs, DVD ROMs, zip disks, tapes, magnetic storage devices, optical storage devices, MEMS-based storage devices, nanotechnology- based storage devices, and the like.
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/035,888 US9645651B2 (en) | 2013-09-24 | 2013-09-24 | Presentation of a control interface on a touch-enabled device based on a motion or absence thereof |
PCT/US2014/056423 WO2015047880A1 (en) | 2013-09-24 | 2014-09-19 | Presentation of a control interface on a touch-enabled device based on a motion or absence thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
EP3049908A1 true EP3049908A1 (en) | 2016-08-03 |
EP3049908B1 EP3049908B1 (en) | 2021-10-13 |
Family
ID=51663494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP14781765.4A Active EP3049908B1 (en) | 2013-09-24 | 2014-09-19 | Presentation of a control interface on a touch-enabled device based on a motion or absence thereof |
Country Status (17)
Country | Link |
---|---|
US (2) | US9645651B2 (en) |
EP (1) | EP3049908B1 (en) |
JP (1) | JP2016534483A (en) |
KR (1) | KR102343783B1 (en) |
CN (1) | CN105683893B (en) |
AU (1) | AU2014327146A1 (en) |
BR (1) | BR112016004430A8 (en) |
CA (1) | CA2922493C (en) |
CL (1) | CL2016000678A1 (en) |
HK (1) | HK1223713A1 (en) |
IL (1) | IL244367A0 (en) |
MX (1) | MX356479B (en) |
PH (1) | PH12016500257A1 (en) |
RU (1) | RU2016110571A (en) |
SG (2) | SG10201807806UA (en) |
WO (1) | WO2015047880A1 (en) |
ZA (1) | ZA201600966B (en) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9563890B2 (en) * | 2002-10-01 | 2017-02-07 | Dylan T X Zhou | Facilitating mobile device payments using product code scanning |
US9576285B2 (en) * | 2002-10-01 | 2017-02-21 | Dylan T X Zhou | One gesture, one blink, and one-touch payment and buying using haptic control via messaging and calling multimedia system on mobile and wearable device, currency token interface, point of sale device, and electronic payment card |
KR101710771B1 (en) * | 2012-05-18 | 2017-02-27 | 애플 인크. | Device, method, and graphical user interface for manipulating user interfaces based on fingerprint sensor inputs |
KR102130797B1 (en) | 2013-09-17 | 2020-07-03 | 엘지전자 주식회사 | Mobile terminal and control method for the mobile terminal |
US9645651B2 (en) | 2013-09-24 | 2017-05-09 | Microsoft Technology Licensing, Llc | Presentation of a control interface on a touch-enabled device based on a motion or absence thereof |
US20150153854A1 (en) * | 2013-12-03 | 2015-06-04 | Lenovo (Singapore) Pte. Ltd. | Extension of wearable information handling device user interface |
US20150346943A1 (en) * | 2014-06-02 | 2015-12-03 | Vidya Srinivas | Storage device for touch screen displays |
US10579236B2 (en) * | 2014-06-20 | 2020-03-03 | Ati Technologies Ulc | Responding to user input including providing user feedback |
US20160378967A1 (en) * | 2014-06-25 | 2016-12-29 | Chian Chiu Li | System and Method for Accessing Application Program |
US9594489B2 (en) | 2014-08-12 | 2017-03-14 | Microsoft Technology Licensing, Llc | Hover-based interaction with rendered content |
US20160139628A1 (en) * | 2014-11-13 | 2016-05-19 | Li Bao | User Programable Touch and Motion Controller |
US10156908B2 (en) * | 2015-04-15 | 2018-12-18 | Sony Interactive Entertainment Inc. | Pinch and hold gesture navigation on a head-mounted display |
US9715366B2 (en) * | 2015-09-16 | 2017-07-25 | International Business Machines Corporation | Digital map of a physical location based on a user's field of interest and a specific sound pattern |
US10126945B2 (en) * | 2016-06-10 | 2018-11-13 | Apple Inc. | Providing a remote keyboard service |
US10606457B2 (en) * | 2016-10-11 | 2020-03-31 | Google Llc | Shake event detection system |
CN106601254B (en) * | 2016-12-08 | 2020-11-06 | 阿里巴巴(中国)有限公司 | Information input method and device and computing equipment |
US10649640B2 (en) | 2017-05-02 | 2020-05-12 | Microsoft Technology Licensing, Llc | Personalizing perceivability settings of graphical user interfaces of computers |
US10990240B1 (en) * | 2019-06-07 | 2021-04-27 | Facebook Technologies, Llc | Artificial reality system having movable application content items in containers |
KR20210100850A (en) * | 2020-02-07 | 2021-08-18 | 삼성전자주식회사 | Electronic device and system for processing user input and method thereof |
CN112764656B (en) * | 2020-12-29 | 2022-05-20 | 北京谊安医疗***股份有限公司 | Operation method of life support system all-in-one display system based on shuttle button |
US11995359B2 (en) * | 2021-12-14 | 2024-05-28 | Canon Kabushiki Kaisha | Image forming apparatus with touch and touchless input portion |
Family Cites Families (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7760187B2 (en) | 2004-07-30 | 2010-07-20 | Apple Inc. | Visual expander |
US7663607B2 (en) | 2004-05-06 | 2010-02-16 | Apple Inc. | Multipoint touchscreen |
US8479122B2 (en) | 2004-07-30 | 2013-07-02 | Apple Inc. | Gestures for touch sensitive input devices |
US7256770B2 (en) | 1998-09-14 | 2007-08-14 | Microsoft Corporation | Method for displaying information responsive to sensing a physical presence proximate to a computer input device |
US6501464B1 (en) | 2000-10-31 | 2002-12-31 | Intel Corporation | On-screen transparent keyboard interface |
US20030020733A1 (en) | 2001-07-24 | 2003-01-30 | Yin Memphis Zhihong | Computer display having selective area magnification |
US20030025676A1 (en) | 2001-08-02 | 2003-02-06 | Koninklijke Philips Electronics N.V. | Sensor-based menu for a touch screen panel |
US7411575B2 (en) | 2003-09-16 | 2008-08-12 | Smart Technologies Ulc | Gesture recognition method and touch system incorporating the same |
US8381135B2 (en) * | 2004-07-30 | 2013-02-19 | Apple Inc. | Proximity detector in handheld device |
US7489306B2 (en) | 2004-12-22 | 2009-02-10 | Microsoft Corporation | Touch screen accuracy |
JP4602166B2 (en) | 2005-06-07 | 2010-12-22 | 富士通株式会社 | Handwritten information input device. |
US7636794B2 (en) * | 2005-10-31 | 2009-12-22 | Microsoft Corporation | Distributed sensing techniques for mobile devices |
US7778874B1 (en) | 2005-11-14 | 2010-08-17 | A9.Com, Inc. | Automated generation of suggested online advertising campaign parameters |
US20070268317A1 (en) | 2006-05-18 | 2007-11-22 | Dan Banay | User interface system and method for selectively displaying a portion of a display screen |
US7956847B2 (en) | 2007-01-05 | 2011-06-07 | Apple Inc. | Gestures for controlling, manipulating, and editing of media files using touch sensitive devices |
US7877707B2 (en) * | 2007-01-06 | 2011-01-25 | Apple Inc. | Detecting and interpreting real-world and security gestures on touch and hover sensitive devices |
US8650505B2 (en) * | 2007-02-28 | 2014-02-11 | Rpx Corporation | Multi-state unified pie user interface |
US8219936B2 (en) * | 2007-08-30 | 2012-07-10 | Lg Electronics Inc. | User interface for a mobile device using a user's gesture in the proximity of an electronic device |
US8363019B2 (en) | 2008-05-26 | 2013-01-29 | Lg Electronics Inc. | Mobile terminal using proximity sensor and method of controlling the mobile terminal |
US9658765B2 (en) | 2008-07-31 | 2017-05-23 | Northrop Grumman Systems Corporation | Image magnification system for computer interface |
US8237666B2 (en) | 2008-10-10 | 2012-08-07 | At&T Intellectual Property I, L.P. | Augmented I/O for limited form factor user-interfaces |
US20100107067A1 (en) | 2008-10-27 | 2010-04-29 | Nokia Corporation | Input on touch based user interfaces |
US8564555B2 (en) | 2009-04-30 | 2013-10-22 | Synaptics Incorporated | Operating a touch screen control system according to a plurality of rule sets |
EP2252055B1 (en) * | 2009-05-13 | 2013-09-18 | Sony Europe Limited | A system for retrieval of executable applications for broadcast television |
US8493344B2 (en) | 2009-06-07 | 2013-07-23 | Apple Inc. | Devices, methods, and graphical user interfaces for accessibility using a touch-sensitive surface |
US8466934B2 (en) | 2009-06-29 | 2013-06-18 | Min Liang Tan | Touchscreen interface |
US8347221B2 (en) | 2009-10-07 | 2013-01-01 | Research In Motion Limited | Touch-sensitive display and method of control |
US8358281B2 (en) | 2009-12-15 | 2013-01-22 | Apple Inc. | Device, method, and graphical user interface for management and manipulation of user interface elements |
US8384683B2 (en) | 2010-04-23 | 2013-02-26 | Tong Luo | Method for user input from the back panel of a handheld computerized device |
US20110261030A1 (en) | 2010-04-26 | 2011-10-27 | Bullock Roddy Mckee | Enhanced Ebook and Enhanced Ebook Reader |
US9851829B2 (en) | 2010-08-27 | 2017-12-26 | Apple Inc. | Signal processing for touch and hover sensing display device |
US8780060B2 (en) | 2010-11-02 | 2014-07-15 | Apple Inc. | Methods and systems for providing haptic control |
US20120120002A1 (en) | 2010-11-17 | 2012-05-17 | Sony Corporation | System and method for display proximity based control of a touch screen user interface |
US9575561B2 (en) | 2010-12-23 | 2017-02-21 | Intel Corporation | Method, apparatus and system for interacting with content on web browsers |
JP2012168932A (en) * | 2011-02-10 | 2012-09-06 | Sony Computer Entertainment Inc | Input device, information processing device and input value acquisition method |
JP5774327B2 (en) | 2011-02-16 | 2015-09-09 | 株式会社テイエルブイ | Gas-liquid separator |
US8860717B1 (en) | 2011-03-29 | 2014-10-14 | Google Inc. | Web browser for viewing a three-dimensional object responsive to a search query |
US9285950B2 (en) | 2011-03-30 | 2016-03-15 | Google Inc. | Hover-over gesturing on mobile devices |
KR101748668B1 (en) * | 2011-04-14 | 2017-06-19 | 엘지전자 주식회사 | Mobile twrminal and 3d image controlling method thereof |
US9477348B2 (en) | 2011-04-15 | 2016-10-25 | Hewlett-Packard Development Company, L.P. | Focus-based touch and hover detection |
US9658766B2 (en) | 2011-05-27 | 2017-05-23 | Microsoft Technology Licensing, Llc | Edge gesture |
US20120304107A1 (en) * | 2011-05-27 | 2012-11-29 | Jennifer Nan | Edge gesture |
JP2012248066A (en) * | 2011-05-30 | 2012-12-13 | Canon Inc | Image processing device, control method of the same, control program and imaging apparatus |
RU2455676C2 (en) | 2011-07-04 | 2012-07-10 | Общество с ограниченной ответственностью "ТРИДИВИ" | Method of controlling device using gestures and 3d sensor for realising said method |
US20130050131A1 (en) * | 2011-08-23 | 2013-02-28 | Garmin Switzerland Gmbh | Hover based navigation user interface control |
JP5836105B2 (en) | 2011-12-20 | 2015-12-24 | シャープ株式会社 | Information processing apparatus, information processing apparatus control method, information processing apparatus control program, and computer-readable recording medium storing the program |
US20130194314A1 (en) | 2012-01-26 | 2013-08-01 | Nokia Corporation | Desktop extension |
EP2810188A1 (en) | 2012-01-30 | 2014-12-10 | Telefonaktiebolaget LM Ericsson (Publ) | An apparatus having a touch screen display |
JP5721662B2 (en) * | 2012-04-26 | 2015-05-20 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | Input receiving method, input receiving program, and input device |
CN102719990B (en) * | 2012-06-18 | 2014-07-30 | 三明学院 | Intelligent warp knitting multi-speed electronic let-off system |
US8907927B2 (en) | 2012-09-13 | 2014-12-09 | Sap Portals Israel Ltd | Camera based hover detection for touch-based mobile devices |
JP5798103B2 (en) | 2012-11-05 | 2015-10-21 | 株式会社Nttドコモ | Terminal device, screen display method, program |
US20140267130A1 (en) | 2013-03-13 | 2014-09-18 | Microsoft Corporation | Hover gestures for touch-enabled devices |
US20140267094A1 (en) | 2013-03-13 | 2014-09-18 | Microsoft Corporation | Performing an action on a touch-enabled device based on a gesture |
US9170736B2 (en) | 2013-09-16 | 2015-10-27 | Microsoft Corporation | Hover controlled user interface element |
US9645651B2 (en) | 2013-09-24 | 2017-05-09 | Microsoft Technology Licensing, Llc | Presentation of a control interface on a touch-enabled device based on a motion or absence thereof |
US20150177866A1 (en) | 2013-12-23 | 2015-06-25 | Microsoft Corporation | Multiple Hover Point Gestures |
US9501218B2 (en) | 2014-01-10 | 2016-11-22 | Microsoft Technology Licensing, Llc | Increasing touch and/or hover accuracy on a touch-enabled device |
US9594489B2 (en) | 2014-08-12 | 2017-03-14 | Microsoft Technology Licensing, Llc | Hover-based interaction with rendered content |
-
2013
- 2013-09-24 US US14/035,888 patent/US9645651B2/en active Active
-
2014
- 2014-09-19 SG SG10201807806UA patent/SG10201807806UA/en unknown
- 2014-09-19 SG SG11201601827UA patent/SG11201601827UA/en unknown
- 2014-09-19 CA CA2922493A patent/CA2922493C/en active Active
- 2014-09-19 EP EP14781765.4A patent/EP3049908B1/en active Active
- 2014-09-19 CN CN201480052612.3A patent/CN105683893B/en active Active
- 2014-09-19 BR BR112016004430A patent/BR112016004430A8/en not_active Application Discontinuation
- 2014-09-19 WO PCT/US2014/056423 patent/WO2015047880A1/en active Application Filing
- 2014-09-19 JP JP2016543999A patent/JP2016534483A/en active Pending
- 2014-09-19 KR KR1020167010272A patent/KR102343783B1/en active IP Right Grant
- 2014-09-19 RU RU2016110571A patent/RU2016110571A/en unknown
- 2014-09-19 MX MX2016003720A patent/MX356479B/en active IP Right Grant
- 2014-09-19 AU AU2014327146A patent/AU2014327146A1/en not_active Abandoned
-
2016
- 2016-02-05 PH PH12016500257A patent/PH12016500257A1/en unknown
- 2016-02-11 ZA ZA2016/00966A patent/ZA201600966B/en unknown
- 2016-03-01 IL IL244367A patent/IL244367A0/en unknown
- 2016-03-23 CL CL2016000678A patent/CL2016000678A1/en unknown
- 2016-10-19 HK HK16112025.6A patent/HK1223713A1/en unknown
-
2017
- 2017-04-25 US US15/496,893 patent/US10775997B2/en active Active
Non-Patent Citations (2)
Title |
---|
None * |
See also references of WO2015047880A1 * |
Also Published As
Publication number | Publication date |
---|---|
US20150089419A1 (en) | 2015-03-26 |
US10775997B2 (en) | 2020-09-15 |
BR112016004430A8 (en) | 2020-02-11 |
EP3049908B1 (en) | 2021-10-13 |
US20170228150A1 (en) | 2017-08-10 |
SG11201601827UA (en) | 2016-04-28 |
HK1223713A1 (en) | 2017-08-04 |
AU2014327146A1 (en) | 2016-02-25 |
IL244367A0 (en) | 2016-04-21 |
CA2922493C (en) | 2022-11-08 |
US9645651B2 (en) | 2017-05-09 |
CA2922493A1 (en) | 2015-04-02 |
SG10201807806UA (en) | 2018-10-30 |
PH12016500257B1 (en) | 2016-05-16 |
CL2016000678A1 (en) | 2016-10-07 |
RU2016110571A3 (en) | 2018-07-03 |
CN105683893B (en) | 2019-07-26 |
KR102343783B1 (en) | 2021-12-24 |
JP2016534483A (en) | 2016-11-04 |
MX2016003720A (en) | 2016-05-31 |
CN105683893A (en) | 2016-06-15 |
MX356479B (en) | 2018-05-30 |
WO2015047880A1 (en) | 2015-04-02 |
RU2016110571A (en) | 2017-09-28 |
ZA201600966B (en) | 2018-05-30 |
KR20160060109A (en) | 2016-05-27 |
PH12016500257A1 (en) | 2016-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10775997B2 (en) | Presentation of a control interface on a touch-enabled device based on a motion or absence thereof | |
KR102423826B1 (en) | User termincal device and methods for controlling the user termincal device thereof | |
US20230214107A1 (en) | User interface for receiving user input | |
US9501218B2 (en) | Increasing touch and/or hover accuracy on a touch-enabled device | |
US10346117B2 (en) | Device having a screen region on a hinge coupled between other screen regions | |
US11816325B2 (en) | Application shortcuts for carplay | |
US20140267130A1 (en) | Hover gestures for touch-enabled devices | |
EP2939097B1 (en) | Device, method, and graphical user interface for navigating user interface hierarchies | |
US20170357437A1 (en) | Device, Method, and Graphical User Interface for Manipulating Windows in Split Screen Mode | |
EP2770416B1 (en) | Context awareness-based screen scroll method, machine-readable storage medium and terminal therefor | |
US20140267094A1 (en) | Performing an action on a touch-enabled device based on a gesture | |
US20140354553A1 (en) | Automatically switching touch input modes | |
KR20180026983A (en) | Electronic device and control method thereof | |
KR20200022546A (en) | Device, method, and graphical user interface for managing concurrently open software applications | |
US10521101B2 (en) | Scroll mode for touch/pointing control | |
KR20140105352A (en) | Context awareness based screen scroll method, machine-readable storage medium and terminal | |
KR20140092106A (en) | Apparatus and method for processing user input on touch screen and machine-readable storage medium | |
CN113110770A (en) | Control method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20160322 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
DAX | Request for extension of the european patent (deleted) | ||
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20190415 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R079 Ref document number: 602014080665 Country of ref document: DE Free format text: PREVIOUS MAIN CLASS: G06F0003048800 Ipc: G06F0003010000 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06F 3/0482 20130101ALI20210430BHEP Ipc: G06F 3/0488 20130101ALI20210430BHEP Ipc: G06F 3/01 20060101AFI20210430BHEP |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
INTG | Intention to grant announced |
Effective date: 20210617 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602014080665 Country of ref document: DE |
|
RAP4 | Party data changed (patent owner data changed or rights of a patent transferred) |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 1438648 Country of ref document: AT Kind code of ref document: T Effective date: 20211115 |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: FP |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG9D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 1438648 Country of ref document: AT Kind code of ref document: T Effective date: 20211013 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20220113 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20220213 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20220214 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20220113 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20220114 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602014080665 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20220714 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20220930 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |
|
P01 | Opt-out of the competence of the unified patent court (upc) registered |
Effective date: 20230501 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220919 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220930 Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220919 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220930 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220930 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: NL Payment date: 20230822 Year of fee payment: 10 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20230823 Year of fee payment: 10 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20230822 Year of fee payment: 10 Ref country code: DE Payment date: 20230822 Year of fee payment: 10 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20140919 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211013 |