AU2021212114A1 - Crown input for a wearable electronic device - Google Patents

Crown input for a wearable electronic device Download PDF

Info

Publication number
AU2021212114A1
AU2021212114A1 AU2021212114A AU2021212114A AU2021212114A1 AU 2021212114 A1 AU2021212114 A1 AU 2021212114A1 AU 2021212114 A AU2021212114 A AU 2021212114A AU 2021212114 A AU2021212114 A AU 2021212114A AU 2021212114 A1 AU2021212114 A1 AU 2021212114A1
Authority
AU
Australia
Prior art keywords
crown
scroll
rotation
display
speed
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
Application number
AU2021212114A
Other versions
AU2021212114B2 (en
AU2021212114B9 (en
Inventor
Gary I Butcher
Imran Chaudhri
Jonathan R. Dascola
Alan C. Dye
Christopher Patrick Foss
Aurelio GUZMAN
Jonathan P. Ive
Chanaka G. Karunamuni
Duncan Robert Kerr
Stephen O. Lemay
Kevin Lynch
Christopher Wilson
Eric Lance Wilson
Lawrence Y. Yang
Nicholas Zambetti
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Priority to AU2021212114A priority Critical patent/AU2021212114B9/en
Publication of AU2021212114A1 publication Critical patent/AU2021212114A1/en
Publication of AU2021212114B2 publication Critical patent/AU2021212114B2/en
Priority to AU2023237127A priority patent/AU2023237127A1/en
Application granted granted Critical
Publication of AU2021212114B9 publication Critical patent/AU2021212114B9/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0362Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 1D translations or rotations of an operating part of the device, e.g. scroll wheels, sliders, knobs, rollers or belts
    • GPHYSICS
    • G04HOROLOGY
    • G04GELECTRONIC TIME-PIECES
    • G04G21/00Input or output devices integrated in time-pieces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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/04817Interaction 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 using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction 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/0488Interaction 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)
  • Electric Clocks (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)

Abstract

A computer-implemented method is disclosed in which first crown rotation direction associated with a physical crown of an electronic device is received. In response to determining that a rotation of the physical crown in a first scroll direction has occurred based on the first crown rotation direction, a view displayed on a display of the electronic device is caused to be scrolled in the first scroll direction. While the view displayed on the display is being scrolled in the first scroll direction, second crown rotation direction is received. In response to receiving the second crown rotation direction and in accordance with a determination that a rotation of the physical crown in a second scroll direction, opposite from the first scroll direction, has occurred based on the second crown rotation direction, the view is continued to be scrolled in the first scroll direction for a first time interval and then scrolled in the second scroll direction for a second time interval subsequent to the first time interval.

Description

CROWN INPUT FOR A WEARABLE ELECTRONIC DEVICE CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Provisional Patent Application Serial No. 61/873,356, filed September 3, 2013, entitled "CROWN INPUT FOR A WEARABLE ELECTRONIC DEVICE"; U.S. Provisional Patent Application Serial No. 61/873,359, filed September 3, 2013, entitled "USER INTERFACE OBJECT MANIPULATIONS IN A USER INTERFACE"; U.S. Provisional Patent Application Serial No. 61/959,851, filed September 3, 2013, entitled "USER INTERFACE FOR MANIPULATING USER INTERFACE OBJECTS"; U.S. Provisional Patent Application Serial No. 61/873,360, filed September 3, 2013, entitled "USER INTERFACE FOR MANIPULATING USER INTERFACE OBJECTS WITH MAGNETIC PROPERTIES"; and U.S. Non-provisional Patent Application Serial No. 14/476,657, filed September 3, 2014, entitled "USER INTERFACE FOR MANIPULATING USER INTERFACE OBJECTS WITH MAGNETIC PROPERTIES". The content of these applications is hereby incorporated by reference in its entirety for all purposes.
[0002] This application is related to co-pending applications U.S. Non-provisional Patent Application filed September 3, 2014, concurrently herewith, entitled "USER INTERFACE OBJECT MANIPULATIONS IN A USER INTERFACE", naming Nicholas Zambetti et al. '0 as inventors; and U.S. Non-provisional Patent Application filed September 3, 2014, concurrently herewith, entitled "USER INTERFACE FOR MANIPULATING USER INTERFACE OBJECTS", naming Nicholas Zambetti et al. as inventors. This application is also related to U.S. Provisional Patent Application Serial No. 61/747,278, filed December 29, 2012, entitled "Device, Method, and Graphical User Interface for Manipulating User Interface Objects with Visual and/or Haptic Feedback." The content of these applications is hereby incorporated by reference in its entirety for all purposes.
[0002a] Incorporated herein by reference, in its entirety, is PCT/US2014/053951 (published as W02015/034960), filed on 3 September 2014. Field
[0003] The following disclosure relates generally to wearable electronic devices and, more specifically, to interfaces for wearable electronic devices. Background
[0004] Advanced personal electronic devices can have small form factors. These personal electronic devices can include, but are not limited to, tablets and smart phones. Use of such personal electronic devices involves manipulation of user interface objects on display screens that also have small form factors to complement the design of the personal electronic devices.
[0005] Exemplary manipulations that users can perform on personal electronic devices can include navigating a hierarchy, selecting a user interface object, adjusting the position, size, and zoom of user interface objects, or otherwise manipulating the user interfaces. Exemplary user interface objects can include digital images, video, text, icons, maps, control elements, such as buttons, and other graphics. A user can perform such manipulations in image management software, video editing software, word processing software, software execution platforms, such as an operating system's desktop, website browsing software, and other environments.
[0006] Existing methods for manipulating user interface objects on reduced-size touch sensitive displays can be inefficient. Further, existing methods generally provide less precision than is preferable.
[0006a] Reference to any prior art in the specification is not, and should not be taken as, an acknowledgment or any form of suggestion that this prior art forms part of the common general knowledge in any jurisdiction or that this prior art could reasonably be expected to be understood, regarded as relevant and/or combined with other pieces of prior art by a person skilled in the art.
Summary
[0006b] According to a first aspect of the invention there is provided a computer implemented method comprising: receiving first crown rotation direction associated with a physical crown of an electronic device; in response to determining that a rotation of the physical crown in a first scroll direction has occurred based on the first crown rotation direction, causing a view displayed on a display of the electronic device to be scrolled in the first scroll direction; while the view displayed on the display is being scrolled in the first scroll direction, receiving second crown rotation direction; in response to receiving the second crown rotation direction and in accordance with a determination that a rotation of the physical crown in a second scroll direction, opposite from the first scroll direction, has occurred based on the second crown rotation direction: for a first time interval, continuing to scroll the view in the first scroll direction; and for a second time interval subsequent to the first time interval, scrolling the view in the second scroll direction opposite the first scroll direction.
[0006c] According to a second aspect of the invention there is provided an electronic device, comprising: a physical crown; a display; one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of the first aspect.
[0006d] According to a third aspect of the invention there is provided a computer-readable storage medium storing one or more programs configured to be executed by one or more processors, the one or more programs including instructions for performing the method of the previous aspects.
[0007] The present disclosure relates to manipulating a user interface on a wearable electronic device using a mechanical crown. In some examples, the user interface can be scrolled or scaled in response to a rotation of the crown. The direction of the scrolling or scaling and the amount of scrolling or scaling can depend on the direction and amount of rotation of the crown, respectively. In some examples, the amount of scrolling or scaling can be proportional to the change in rotation angle of the crown. In other examples, a velocity of scrolling or a velocity of scaling can depend on a velocity of angular rotation of the crown. In these examples, a greater velocity of rotation can cause a greater velocity of scrolling or scaling to be performed on the displayed view.
[0007a] As used herein, except where the context requires otherwise, the term "comprise" and variations of the term, such as "comprising", "comprises" and "comprised", are not intended to exclude further additives, components, integers or steps.
Brief Description of the Drawings
[0008] FIG. 1 illustrates an exemplary wearable electronic device according to various examples.
[0009] FIG. 2 illustrates a block diagram of an exemplary wearable electronic device according to various examples.
[0010] FIG. 3 illustrates an exemplary process for scrolling through applications using a crown according to various examples.
[0011] FIGs. 4-8 illustrate screens showing the scrolling of applications using the process of FIG. 3.
[0012] FIG. 9 illustrates an exemplary process for scrolling a view of a display using a crown according to various examples.
[0013] FIGs. 10-14 illustrate screens showing the scrolling of a view of a display using the process of FIG. 9.
[0014] FIG. 15 illustrates an exemplary process for scaling a view of a display using a crown according to various examples.
[0015] FIGs. 16-20 illustrate screens showing the scaling of a view of a display using the process of FIG. 15.
[0016] FIG. 21 illustrates an exemplary process for scrolling a view of a display based on a angular velocity of rotation of a crown according to various examples.
[0017] FIGs. 22-40 illustrate screens showing the scrolling of a view of a display using the process of FIG. 21.
[0018] FIG. 41 illustrates an exemplary process for scaling a view of a display based on a angular velocity of rotation of a crown according to various examples.
[0019] FIGs. 42-44 illustrate screens showing the scaling of a view of a display using the process of FIG. 41.
[0020] FIG. 45 illustrates an exemplary computing system for modifying a user interface in response to a rotation of a crown according to various examples. Detailed Description
[0021] In the following description of the disclosure and examples, reference is made to the accompanying drawings in which it is shown by way of illustration specific examples that can be practiced. It is to be understood that other examples can be practiced and structural changes can be made without departing from the scope of the disclosure.
[0022] The present disclosure relates to manipulating a user interface on a wearable electronic device using a mechanical crown. In some examples, the user interface can be scrolled or scaled in response to a rotation of the crown. The direction of the scrolling or scaling and the amount of scrolling or scaling can depend on the direction and amount of rotation of the crown, respectively. In some examples, the amount of scrolling or scaling can be proportional to the change in rotation angle of the crown. In other examples, a velocity of scrolling or a velocity of scaling can depend on a velocity of angular rotation of the crown. In these examples, a greater velocity of rotation can cause a greater velocity of scrolling or scaling to be performed on the displayed view.
[0023] FIG. 1 illustrates exemplary personal electronic device 100. In the illustrated example, device 100 is a watch that generally includes body 102 and strap 104 for affixing device 100 to the body of a user. That is, device 100 is wearable. Body 102 can be designed to couple with straps 104. Device 100 can have touch-sensitive display screen (hereafter touchscreen) 106 and crown 108. Device 100 can also have buttons 110, 112, and 114.
[0024] Conventionally, the term 'crown,' in the context of a watch, refers to the cap atop a stem for winding the watch. In the context of a personal electronic device, the crown can be a physical component of the electronic device, rather than a virtual crown on a touch sensitive display. Crown 108 can be mechanical meaning that it can be connected to a sensor for converting physical movement of the crown into electrical signals. Crown 108 can rotate in two directions of rotation (e.g., forward and backward). Crown 108 can also be pushed in towards the body of device 100 and/or be pulled away from device 100. Crown 108 can be touch sensitive, for example, using capacitive touch technologies that can detect whether a user is touching the crown. Moreover, crown 108 can further be rocked in one or more directions or translated along a track along an edge or at least partially around a perimeter of body 102. In some examples, more than one crown 108 can be used. The visual appearance of crown 108 can, but need not, resemble crowns of conventional watches. Buttons 110, 112, and 114, if included, can each be a physical or a touch-sensitive button. That is, the buttons may be, for example, physical buttons or capacitive buttons. Further, body 102, which can include a bezel, may have predetermined regions on the bezel that act as buttons.
[0025] Display 106 can include a display device, such as a liquid crystal display (LCD), light emitting diode (LED) display, organic light-emitting diode (OLED) display, or the like, positioned partially or fully behind or in front of a touch sensor panel implemented using any desired touch sensing technology, such as mutual-capacitance touch sensing, self-capacitance touch sensing, resistive touch sensing, projection scan touch sensing, or the like. Display 106 can allow a user to perform various functions by touching over hovering near the touch sensor panel using one or more fingers or other object.
[0026] In some examples, device 100 can further include one or more pressure sensors (not shown) for detecting an amount of force or pressure applied to the display. The amount of force or pressure applied to display 106 can be used as an input to device 100 to perform any desired operation, such as making a selection, entering or exiting a menu, causing the display of additional options/actions, or the like. In some examples, different operations can be performed based on the amount of force or pressure being applied to display 106. The one or more pressure sensors can further be used to determine a position that the force is being applied to display 106.
[0027] FIG. 2 illustrates a block diagram of some of the components of device 100. As shown, crown 108 can be coupled to encoder 204, which can be configured to monitor a physical state or change of physical state of crown 108 (e.g., the position of the crown), convert it to an electrical signal (e.g., convert it to an analog or digital signal representation of the position or change in position of crown 108), and provide the signal to processor 202. For instance, in some examples, encoder 204 can be configured to sense the absolute rotational position (e.g., an angle between 0 360) of crown 108 and output an analog or digital representation of this position to processor 202. Alternatively, in other examples, encoder 204 can be configured to sense a change in rotational position (e.g., a change in rotational angle) of crown 108 over some sampling period and to output an analog or digital representation of the sensed change to processor 202. In these examples, the crown position information can further indicate a direction of rotation of the crown (e.g., a positive value can correspond to one direction and a negative value can correspond to the other). In yet other examples, encoder 204 can be configured to detect a rotation of crown 108 in any desired manner (e.g., velocity, acceleration, or the like) and can provide the crown rotational information to processor 202. The rotational velocity can be expressed in numerous ways. For example, the rotational velocity can be expressed in a direction and a speed of rotation, such as hertz, as rotations per unit of time, as rotations per frame, as revolutions per unit of time, as revolutions per frame, as a change in angle per unit of time, and the like. In alternative examples, instead of providing information to processor 202, this information can be provided to other components of device 100. While the examples described herein refer to the use of rotational position of crown 108 to control scrolling or scaling of a view, it should be appreciated that any other physical state of crown 108 can be used.
[0028] In some examples, the physical state of the crown can control physical attributes of display 106. For example, if crown 108 is in a particular position (e.g., rotated forward), display 106 can have limited z-axis traversal ability. In other words, the physical state of the crown can represent physical modal functionality of display 106. In some examples, a temporal attribute of the physical state of crown 108 can be used as an input to device 100. For example, a fast change in physical state can be interpreted differently than a slow change in physical state.
[0029] Processor 202 can be further coupled to receive input signals from buttons 110, 112, and 114, along with touch signals from touch-sensitive display 106. Processor 202 can be configured to interpret these input signals and output appropriate display signals to cause an image to be produced by touch-sensitive display 106. While a single processor 202 is shown, it should be appreciated that any number of processors or other computational devices can be used to perform the general functions discussed above.
[0030] FIG. 3 illustrates an exemplary process 300 for scrolling through a set of displayed applications using a crown according to various examples. In some examples, process 300 can be performed by a wearable electronic device similar to device 100. In these examples, a visual representation (e.g., icons, graphical images, textual images, and the like) of one or more applications of a set of applications can be displayed on display 106 of device 100 and process 300 can be performed to visually scroll through the set of applications by sequentially displaying the applications in response to a turning of crown 108. In some examples, the scrolling can be performed by translating the displayed contents along a fixed axis.
[0031] At block 302, crown position information can be received. In some examples, the crown position information can include an analog or digital representation of the absolute position of the crown, such as an angle between 0-360°. In other examples, the crown position information can include an analog or digital representation of a change in rotational position of the crown, such as a change in rotational angle. For example, an encoder similar to encoder 204 can be coupled to a crown similar to crown 108 to monitor and measure its position. The encoder can convert the position of crown 108 into crown position information that can be transmitted to a processor similar to processor 202.
[0032] At block 304, it can be determined if a change in position has been detected. In some examples, where the crown position information includes an absolute position of the crown, determining whether a change in position has occurred can be performed by comparing the position of the crown at two different instances in time. For example, the processor (e.g., processor 202) can compare the most recent position of the crown (e.g., crown 108) as indicated by the crown position information to an earlier (e.g., immediately preceding) position of the crown as indicated by previously received crown position information. If the positions are the same or within a threshold value (e.g., a value corresponding to a tolerance of the encoder), it can be determined that no change in position has occurred. If, however, the positions are not the same or are different by at least the threshold value, it can be determined that a change in position has occurred. In other examples, where the crown position information includes a change in position over some length of time, determining whether a change in position has occurred can be performed by determining whether the absolute value of the change in position is equal to zero or is less than a threshold value (e.g., a value corresponding to a tolerance of the encoder). If the absolute value of the change in position is equal to zero or is less than the threshold value, it can be determined that no change in position has occurred. If, however, the absolute value of the change in position is greater than zero or the threshold value, it can be determined that a change in position has occurred.
[0033] If it is determined at block 304 that no change in position of the crown has been detected, the process can return to block 302 where new crown position information can be received. If, however, it is instead determined at block 304 that that a change in position of the crown has been detected, the process can proceed to block 306. As described herein, a positive determination at block 304 can cause the process to proceed to block 306, while a negative determination can cause the process to return to block 302. However, it should be appreciated that the determination performed at block 304 can be reversed such that a positive determination can cause the process to return to block 302, while a negative determination can cause the process to proceed to block 306. For example, block 304 can alternatively determine if no change in position is detected.
[0034] At block 306, at least a portion of a set of applications can be scrolled through based on the detected change in position. The set of applications can include any ordered or unordered set of applications. For example, the set of applications can include all applications stored on the wearable electronic device, all open applications on the wearable electronic device, a user selected set of applications, or the like. Additionally, the applications can be ordered based on frequency of use, a user-defined ordering, relevance, or any other desired ordering.
[0035] In some examples, block 306 can include visually scrolling through the set of applications by sequentially displaying the applications in response to the detected change in position of the crown. For example, the display (e.g., display 106) can be displaying one or more applications of the set of applications. In response to detecting a change in position of the crown (e.g., crown 108), the currently displayed one or more applications can be translated off the display to make room for one or more other applications to be translated onto the display. In some examples, the one or more other applications being translated onto the display can be selected for display based on their relative ordering within the set of applications corresponding to the direction opposite the direction of translation. The direction of the translation can depend on the direction of the change in position of the crown. For example, turning the crown clockwise can cause a scrolling of the display in one direction, while turning the crown counter clockwise can cause a scrolling of the display in a second (e.g., opposite) direction. Additionally, the distance or speed of scrolling can depend on the amount of detected change in the position of the crown. The distance of scrolling can refer to the on-screen distance that the content is scrolled. The speed of scrolling can refer to the distance that the content is scrolled over a length of time. In some examples, the distance or speed of the scrolling can be proportional to the amount of detected rotation. For instance, the amount of scroll corresponding to a half-turn of the crown can be equal to 50% of the amount of scroll corresponding to a full turn of the crown. In some examples where the set of applications includes an ordered list of applications, the scrolling can stop in response to reaching the end of the list. In other examples, the scrolling can continue by looping around to the opposite end of the list of applications. The process can then return to block 302 where new crown position information can be received.
[0036] It should be appreciated that the actual values used to linearly map the change in crown position to the distance or speed of scrolling can be varied depending on the desired functionality of the device. Moreover, it should be appreciated that other mappings between the scroll amount or speed and the change in the position of the crown can be used. For example, acceleration, velocity (described in greater detail below with respect to FIGs. 21-44), or the like, can be used to determine the distance or speed of scrolling. Additionally, non-linear mappings between the crown characteristic (e.g., position, velocity, acceleration, etc.) and the scroll amount or scroll speed can be used.
[0037] To further illustrate the operation of process 300, FIG. 4 depicts an example interface of device 100 having a visual representation (e.g., icons, graphical images, textual images, and the like) of application 406 and portions of the visual representations of applications 404 and 408. Applications 404, 406, and 408 can be part of a set of applications that includes any group of any number of ordered or unordered applications (e.g., all applications on device 100, all open applications on device 100, user favorites, or the like). At block 302 of process 300, processor 202 of device 100 can receive crown position information from encoder 204. Since crown 108 is not being rotated in FIG. 4, a negative determination can be made by processor 202 at block 304, causing the process to return to block 302.
[0038] Referring now to FIG. 5, crown 108 is being rotated in the upward direction as indicated by rotation direction 502. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 302 of process 300. Thus, processor 202 can make a positive determination at block 304, causing the process to proceed to block 306. At block 306, processor 202 can cause display 106 to scroll through at least a portion of the set of applications on device 100. The scrolling can have a scroll direction 504 corresponding to the rotation direction 502 of crown 108 and a scroll amount or speed based on a characteristic (e.g., distance, velocity, acceleration, or the like) of the rotation of crown 108. In the illustrated example, the scroll distance can be proportional to the amount of rotation of crown 108. As shown, display 106 can scroll through the set of applications by causing the visual representations of the applications to translate in scroll direction 504. As a result, application 408 has been completely removed from display 106, a portion of application 406 has been removed from display 106, and a greater portion of application 404 is displayed on display 106. As the user continues to rotate crown 108 in rotation direction 502, processor 202 can continue to cause display 106 to scroll the view of the set of applications in scroll direction 504, as shown in FIG. 6. In FIG. 6, application 406 is barely visible on the right side of display 106, application 404 is centered within display 106, and a newly displayed application 402 is displayed on the left side of display 106. In this example, application 402 can be another application within the set of applications and can have an ordered position to the left or previous to application 404. In some examples, if application 402 is the first application in the list of applications and the user continues to rotate crown 108 in rotation direction 502, processor 202 can limit the scrolling of display 106 to stop scrolling once application 402 is centered within the display. Alternatively, in other examples, processor 202 can continue the scrolling of display 106 by looping to the end of the set of applications to cause the last application (e.g., application 408) of the set of applications to be displayed to the left of application 402.
[0039] Referring now to FIG. 7, crown 108 is being rotated in the downward rotation direction 506. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 302 of process 300. Thus, processor 202 can make a positive determination at block 304, causing the process to proceed to block 306. At block 306, processor 202 can cause display 106 to scroll the view of applications in scroll direction 508 corresponding to rotation direction 506. In this example, scroll direction 508 is in the opposite direction of scroll direction 504. However, it should be appreciated that scroll direction 508 can be in any desired direction. Similar to the scrolling performed in response to rotation of crown 108 in rotation direction 502, the scrolling performed in response to the rotation of crown 108 in rotation direction 506 can depend on a characteristic (e.g., distance, velocity, acceleration, or the like) of the rotation of crown 108. In the illustrated example, the scroll distance can be proportional to the amount of rotation of crown 108. As shown, display 106 can scroll through the set of applications by causing the visual representations of the applications to translate in scroll direction 508. As a result, application 402 has been completely removed from display 106, a position of application 404 has been removed from display 106, and a greater position of application 406 is displayed on display 106. As the user continues to rotate crown 108 in rotation direction 506, processor 202 can continue to cause display 106 to scroll the view of the set of applications in scroll direction 508, as shown in FIG. 8. In FIG.8, application 404 is barely visible on the left side of display 106, application 406 is centered within display 106, and application 408 is again displayed on the right side of display 106. In some examples, if application 408 is the last application in the list of applications and the user were to continue to rotate crown 108 in rotation direction 508, processor 202 can limit the scrolling of display 106 to stop scrolling once application 408 is centered within the display. Alternatively, in other examples, processor 202 can continue the scrolling of display 106 by looping to the start of the set of applications to cause the first application (e.g., application 402) of the set of applications to be displayed to the right of application 408.
[0040] While a specific scrolling example is provided, it should be appreciated that other displays of applications can similarly be scrolled using a mechanical crown of a wearable electronic device in a similar manner. Additionally, the distance or speed of scrolling can be configured to depend on any characteristic of the crown.
[0041] FIG. 9 illustrates an exemplary process 900 for scrolling a view of a display using a crown according to various examples. The view can include a visual representation of any type of data being displayed. For example, the view can include a display of a text, a media item, a webpage, a map, or the like. Process 900 can be similar to process 300, except that it can be more generally applied to any type of content or view being displayed on the display of a device. In some examples, process 900 can be performed by a wearable electronic device similar to device 100. In these examples, content or any other view can be displayed on display 106 of device 100 and process 900 can be performed to visually scroll the view in response to a turning of crown 108. In some examples, the scrolling can be performed by translating the displayed contents along a fixed axis.
[0042] At block 902, crown position information can be received in a manner similar or identical to that described above with respect to block 302. For instance, the crown position information can be received by a processor (e.g., processor 202) from an encoder (e.g., encoder 204) and can include an analog or digital representation of the absolute position of the crown, a change in rotational position of the crown, or other positional information of the crown.
[0043] At block 904, it can be determined if a change in position has been detected in a manner similar or identical to that described above with respect to block 304. For instance, block 904 can include comparing the position of the crown at two different instances in time, or can include determining if an absolute value of a change in crown position is equal to zero or below a threshold value. If no change in position is detected, the process can return to block 902. Alternatively, if a change in position is detected, the process can proceed to block 906. As described herein, a positive determination at block 904 can cause the process to proceed to block 906, while a negative determination can cause the process to return to block 902. However, it should be appreciated that the determination performed at block 904 can be reversed such that a positive determination can cause the process to return to block 902, while a negative determination can cause the process to proceed to block 906. For example, block 904 can alternatively determine if no change in position is detected.
[0044] At block 906, a view of a display can be scrolled based on the detected change in position. Similar to block 306 of process 300, block 906 can include visually scrolling a view by translating the view of the display in response to the detected change in position of the crown. For example, the display (e.g., display 106) can be displaying a portion of some content. In response to detecting a change in position of the crown (e.g., crown 108), the currently displayed portion of the content can be translated off the display to make room for other portions of the content that were not previously displayed. The direction of the translation can depend on the direction of the change in position of the crown. For example, turning the crown clockwise can cause a scrolling of the display in one direction, while turning the crown counter-clockwise can cause a scrolling of the display in a second (e.g., opposite) direction. Additionally, the distance or speed of scrolling can depend on the amount of detected change in the position of the crown. In some examples, the distance or speed of the scrolling can be proportional to the amount of detected rotation. For instance, the amount of scroll corresponding to a half-turn of the crown can be equal to 50% of the amount of scroll corresponding to a full turn of the crown. The process can then return to block 902 where new crown position information can be received.
[0045] It should be appreciated that the actual values used to linearly map the change in crown position to the distance or speed of scrolling can be varied depending on the desired functionality of the device. Moreover, it should be appreciated that other mappings between the scroll amount and change in position can be used. For example, acceleration, velocity (described in greater detail below with respect to FIGs. 21-44), or the like, can be used to determine the distance or speed of scrolling. Additionally, non-linear mappings between the crown characteristic (e.g., position, velocity, acceleration, etc.) and the scroll amount or scroll speed can be used.
[0046] To further illustrate the operation of process 900, FIG. 10 depicts an example interface of device 100 having a visual representation of lines of text containing numbers 1-9. At block 902 of process 900, processor 202 of device 100 can receive crown position information from encoder 204. Since crown 108 is not being rotated in FIG. 10, a negative determination can be made by processor 202 at block 904, causing the process to return to block 902.
[0047] Referring now to FIG. 11, crown 108 is being rotated in the upward rotation direction 1102. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 902 of process 900. Thus, processor 202 can make a positive determination at block 904, causing the process to proceed to block 906. At block 906, processor 202 can cause display 106 to scroll through the lines of text being displayed on display 106. The scrolling can have a scroll direction 1104 corresponding to the rotation direction 1102 of crown 108 and a scroll amount or speed based on a characteristic (e.g., distance, velocity, acceleration, or the like) of the rotation of crown 108. In the illustrated example, the scroll distance can be proportional to the amount of rotation of crown 108. As shown, display 106 can scroll through the lines of text by causing the text to translate in scroll direction 1104. As a result, a portion of line 1002 has been removed from display 106, while a portion of line 1004 is newly displayed on the bottom of display 106. The lines of text between lines 1002 and 1004 have similarly been translated in scroll direction 1104. As the user continues to rotate crown 108 in rotation direction 1102, processor 202 can continue to cause display 106 to scroll the lines of text in scroll direction 1104, as shown in FIG. 12. In FIG. 12, line 1002 is no longer visible within display 106 and line 1004 is now completely in view of display 106. In some examples, if line 1004 is the last line of text and the user continues to rotate crown 108 in rotation direction 1102, processor 202 can limit the scrolling of display 106 to stop scrolling once line 1004 is fully displayed within display 106. In other examples, processor 202 can continue the scrolling of display 106 by looping to the start of the lines of text to cause the first line of text (e.g., line 1002) to be displayed below line 1004. In yet other examples, a rubberbanding effect can be performed by displaying a blank space below line 1004, and snapping the lines of text back to align line 1004 with the bottom of display 106 in response to a stop in rotation of crown 108. It should be appreciated that the action performed in response to reaching the end of content displayed within display 106 can be selected based on the type of data being displayed.
[0048] Referring now to FIG. 13, crown 108 is being rotated in the downward rotation direction 1106. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 902 of process 900. Thus, processor 202 can make a positive determination at block 904, causing the process to proceed to block 906. At block 906, processor 202 can cause display 106 to scroll the lines of text in scroll direction 1108 corresponding to rotation direction 1106. In this example, scroll direction 1108 is in the opposite direction of scroll direction 1104. However, it should be appreciated that scroll direction 1108 can be in any desired direction. Similar to the scrolling performed in response to rotation of crown 108 in rotation direction 1102, the scrolling performed in response to the rotation of crown 108 in rotation direction 1106 can depend on a characteristic (e.g., distance, velocity, acceleration, or the like) of the rotation of crown 108. In the illustrated example, the scroll distance can be proportional to the amount of rotation of crown 108. As shown, display 106 can scroll through the lines of text by causing the lines of text to translate in scroll direction 1108. As a result, a portion of line 1004 can be removed from display 106, while a portion of line 1002 can again be displayed at the top of display 106. As the user continues to rotate crown 108 in rotation direction 1106, processor 202 can continue to cause display 106 to scroll the lines of text in scroll direction 1108, as shown in FIG. 14. As shown in FIG.14, line 1004 has been translated off of display 106, while line 1002 is now fully visible. In some examples, if line 1002 is the first line of text and the user continues to rotate crown 108 in rotation direction 1106, processor 202 can limit the scrolling of display 106 to stop scrolling once line 1002 is at the top of display 106. In other examples, processor 202 can continue the scrolling of display 106 by looping to the end of the lines of text to cause the last line of text (e.g., line 1004) to be displayed above line 1002. In yet other examples, arubberbanding effect can be performed by displaying a blank space above line 1002, and snapping the lines of text back to align line 1002 with the top of display 106 in response to a stop in rotation of crown 108. It should be appreciated that the action performed in response to reaching the end of content displayed within display 106 can be selected based on the type of data being displayed.
[0049] While a specific scrolling example is provided, it should be appreciated that other types of data, such as media items, webpages, or the like, can similarly be scrolled using a mechanical crown of a wearable electronic device in a similar manner. Additionally, the distance or speed of scrolling can be configured to depend on any characteristic of the crown.
[0050] FIG. 15 illustrates an exemplary process 1500 for scaling a view (e.g., zooming in or out) of a display using a crown according to various examples. The view can include a visual representation of any type of data being displayed. For example, the view can include a display of a text, a media item, a webpage, a map, or the like. Process 1500 can be similar to processes 300 and 900, except that instead of scrolling between applications or scrolling a view of a device, the view can be scaled positively or negatively in response to rotation of the crown. In some examples, process 1500 can be performed by a wearable electronic device similar to device 100. In these examples, content or any other view can be displayed on display 106 of device 100 and process 1500 can be performed to visually scale the view in response to a turning of crown 108.
[0051] At block 1502, crown position information can be received in a manner similar or identical to that described above with respect to block 302 or 902. For instance, the crown position information can be received by a processor (e.g., processor 202) from an encoder (e.g., encoder 204) and can include an analog or digital representation of the absolute position of the crown, a change in rotational position of the crown, or other positional information of the crown.
[0052] At block 1504, it can be determined if a change in position has been detected in a manner similar or identical to that described above with respect to block 304 or 904. For instance, block 1504 can include comparing the position of the crown at two different instances in time, or can include determining if an absolute value of a change in crown position is equal to zero or below a threshold value. If no change in position is detected, the process can return to block 1502. Alternatively, if a change in position is detected, the process can proceed to block 1506. As described herein, a positive determination at block 1504 can cause the process to proceed to block 1506, while a negative determination can cause the process to return to block 1502. However, it should be appreciated that the determination performed at block 1504 can be reversed such that a positive determination can cause the process to return to block 1502, while a negative determination can cause the process to proceed to block 1506. For example, block 1504 can alternatively determine if no change in position is detected.
[0053] At block 1506, a view of a display can be scaled based on the detected change in position. Block 1506 can include visually scaling a view (e.g., zooming in/out) in response to the detected change in position of the crown. For example, the display (e.g., display 106) can be displaying a portion of some content. In response to detecting a change in position of the crown (e.g., crown 108), the view can be scaled by increasing or decreasing the size of the currently displayed portion of the content in the view depending on the direction of the change in position of the crown. For example, turning the crown clockwise can cause the contents within a view of the display to increase in size (e.g., zooming in), while turning the crown counter-clockwise can cause the contents within the view of the display to decrease in size (e.g., zooming out). Additionally, the amount or speed of scaling can depend on the amount of detected change in the position of the crown. In some examples, the amount or speed of the scaling can be proportional to the amount of detected rotation of the crown. For instance, the amount of scaling corresponding to a half-turn of the crown can be equal to 50% of the amount of scaling corresponding to a full turn of the crown. The process can then return to block 1502 where new crown position information can be received.
[0054] It should be appreciated that the actual values used to linearly map the change in crown position to the amount or speed of scaling can be varied depending on the desired functionality of the device. Moreover, it should be appreciated that other mappings between the scale amount and change in position can be used. For example, acceleration, velocity (described in greater detail below with respect to FIGs. 21-44), or the like, can be used to determine the amount or speed of scaling. Additionally, non-linear mappings between the crown characteristic (e.g., position, velocity, acceleration, etc.) and the scale amount or scale speed can be used.
[0055] To further illustrate the operation of process 1500, FIG. 16 depicts an example interface of device 100 showing a triangle 1602. At block 1502 of process 1500, processor 202 of device 100 can receive crown position information from encoder 204. Since crown 108 is not being rotated in FIG. 16, a negative determination can be made by processor 202 at block 1504, causing the process to return to block 1502.
[0056] Referring now to FIG. 17, crown 108 is being rotated in the upward rotation direction 1702. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 1502 of process 1500. Thus, processor 202 can make a positive determination at block 1504, causing the process to proceed to block 1506. At block 1506, processor 202 can cause display 106 to scale the view being displayed on display 106. The scaling can increase or decrease the size of the view depending on the rotation direction of crown 108 and can have a scale amount or speed based on a characteristic (e.g., distance, velocity, acceleration, or the like) of the rotation of crown 108. In the illustrated example, the scale amount can be proportional to the amount of rotation of crown 108. As shown, display 106 can scale the view containing triangle 1602 using a positive scaling factor. As a result, triangle 1602 in FIG. 17 appears larger than that shown in FIG. 16. As the user continues to rotate crown 108 in rotation direction 1702, processor 202 can continue to cause display 106 to scaling the view containing the image of triangle 1602 using a positive scaling factor, as shown in FIG. 18. In FIG. 18, triangle 1602 appears larger than those shown in FIGS. 16 and 17. When the rotation of crown 108 stops, the scaling of the view containing triangle 1602 can similarly stop. In some examples, if the view of triangle 1602 has been scaled to its maximum amount and the user continues to rotate crown 108 in rotation direction 1702, processor 202 can limit the scaling of display 106. In yet other examples, arubberbanding effect can be performed by allowing the view containing triangle 1602 to increase in size to a rubberbanding limit that is greater than the maximum scaling amount for the view and then snapping the size of the view back to its maximum scaling amount in response to a stop in rotation of crown 108. It should be appreciated that the action performed in response to reaching the scaling limit of display 106 can be configured in any desired manner.
[0057] Referring now to FIG. 19, crown 108 is being rotated in the downward rotation direction 1704. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 1502 of process 1500. Thus, processor 202 can make a positive determination at block 1504, causing the process to proceed to block 1506. At block 1506, processor 202 can cause display 106 to scale the view using a negative scaling factor corresponding to rotation direction 1704. Similar to the scaling performed in response to rotation of crown 108 in rotation direction 1702, the scaling performed in response to the rotation of crown 108 in rotation direction 1704 can depend on a characteristic (e.g., distance, velocity, acceleration, or the like) of the rotation of crown 108. In the illustrated example, the scaling amount can be proportional to the amount of rotation of crown 108. As shown, display 106 can scale the view containing the image of triangle 1602 using a negative scaling factor. As a result, triangle 1602 in FIG. 19 is smaller than that shown in FIG. 18. As the user continues to rotate crown 108 in rotation direction 1704, processor 202 can continue to cause display 106 to scale the view of containing image of triangle 1602 using a negative scaling factor, as shown in FIG. 20. In FIG.20, triangle 1602 is smaller than those shown in FIGs. 18 and 19. When the rotation of crown 108 stops, the scaling of the view containing triangle 1602 can similarly stop. In some examples, if the view containing triangle 1602 has been scaled to its minimum amount and the user continues to rotate crown 108 in rotation direction 1704, processor 202 can limit the scaling of display 106. In yet other examples, arubberbanding effect can be performed by allowing the view containing triangle 1602 to decrease in size to a rubberbanding limit that is less than the minimum scaling amount for the view, and then snapping the size of the view back to its minimum scaling amount in response to a stop in rotation of crown 108. It should be appreciated that the action performed in response to reaching the scaling limit of display 106 can be configured in any desired manner.
[0058] While a specific scaling example is provided, it should be appreciated that views of other types of data, such as media items, webpages, or the like, can similarly be scaled using a mechanical crown of a wearable electronic device in a similar manner. Additionally, the amount or speed of scaling can be configured to depend on any characteristic of the crown. Moreover, in some examples, when reaching a minimum or maximum scaling of a view, continued rotation of the crown in the same direction can cause the scaling to reverse direction. For example, an upward rotation of the crown can cause a view to zoom-in. However, upon reaching a scaling limit, the upward rotation of the crown can then cause the view to scale in the opposite direction (e.g., zoom-out).
[0059] FIG. 21 illustrates an exemplary process 2100 for scrolling a view of a display based on an angular velocity of rotation of a crown according to various examples. The view can include a visual representation of any type of data being displayed. For example, the view can include a display of a text, a media item, a webpage, or the like. Process 2100 can be similar to process 900, except that it can scroll the view based on a scrolling velocity that depends on the angular velocity of rotation of the crown. In some examples, process 2100 can be performed by a wearable electronic device similar to device 100. In these examples, content or any other view can be displayed on display 106 of device 100 and process 2100 can be performed to visually scroll the view in response to a turning of crown 108. In some examples, the scrolling can be performed by translating the displayed contents along a fixed axis.
[0060] At block 2102, a view of the display of the wearable electronic device can be displayed. As mentioned above, the view can include any visual representation of any type of data that is displayed by a display of the device.
[0061] At block 2104, crown position information can be received in a manner similar or identical to that described above with respect to block 902 of process 900. For instance, the crown position information can be received by a processor (e.g., processor 202) from an encoder
(e.g., encoder 204) and can include an analog or digital representation of the absolute position of the crown, a change in rotational position of the crown, or other positional information of the crown.
[0062] At block 2106, the scroll velocity (e.g., speed and scroll direction) can be determined. In some examples, the scrolling of a view can be determined using a physics-based modeling of the motion. For example, the view can be treated as an object having a movement velocity that corresponds to the velocity of scrolling across the display of the device. The rotation of the crown can be treated as a force being applied to the view in a direction corresponding to the direction of rotation of the crown, where the amount of force depends on the speed of angular rotation of the crown. For example, a greater speed of angular rotation can correspond to a greater amount of force being applied to the view. Any desired linear or non-linear mapping between the speed of angular rotation of the crown and the force being applied to the view can be used. In addition, a drag force can be applied in a direction opposite the direction of scroll. This can be used to cause the velocity of scrolling to decay over time, allowing the scrolling to stop absent additional input from the user. Thus, the velocity of scrolling at discrete moments in time can take the general form of:
VT=V(T-1) + AVCROWN - AVDRAG.
[0063] In equation 1.1, VT represents the determined scroll velocity (speed and direction) at time T, V(T-1) represents the previous scroll velocity (speed and direction) at time T-1, AVCROWN represents the change in velocity caused by the force applied to the view in response to the rotation of the crown, and AVDRAG represents the change in velocity of the view caused by the drag force opposing the motion of the view (scrolling of the view). As mentioned above, the force applied to the view by the crown can depend on the speed of angular rotation of the crown. Thus, AVCROWN can alsodepend on the speed of angular rotation of the crown. Typically, the greater the speed of angular rotation of the crown, the greater the value of AVCROWN will be. However, the actual mapping between the speed of angular rotation of the crown and AVCROWN can be varied depending on the desired user feel of the scrolling effect. For example, various linear or non-linear mappings between the speed of angular rotation of the crown and AVCROWN can be used. In some examples, AVDRAG can depend on the velocity of scrolling such that at greater velocities, a greater opposing change in velocity can be produced. In other examples, AVDRAG can have a constant value. However, it should be appreciated that any constant or variable amount of opposing change in velocity can be used to produce a desired scrolling effect.
Note, typically, in the absence of user input in the form of AVCROWN, VT will approach (and become) zero based on AVDRAG in accordance with equation 1.1, but VT would not change signs without user input in the form of crown rotation (AVCROWN).
[0064] As can be seen from equation 1.1, the velocity of scrolling can continue to increase as long as AVCROWN is greater than AVDRAG. Additionally, the velocity of scrolling can have non zero values even when no AVCROWN input isbeing reeived. Thus, if the view is scrolling with a non-zero velocity, it can continue to scroll without the user rotating the crown. The scroll distance and time until the scrolling stops can depend on the scroll velocity at the time the user stops rotating the crown and the AVDRAG component.
[0065] In some examples, when the crown is rotated in a direction corresponding to a scroll direction that is opposite the direction that the view is currently being scrolled, the V(T-1) component can be reset to a value of zero, allowing the user to quickly change the direction of the scrolling without having to provide a force sufficient to offset the current scroll velocity of the view.
[0066] At block 2108, the display can be updated based on the scroll speed and direction determined at block 2106. This can include translating the displayed view by an amount corresponding to the determined scroll speed and in a direction corresponding to the determined scroll direction. The process can then return to block 2104, where additional crown position information can be received.
[0067] It should be appreciated that blocks 2104, 2106, and 2108 can be repeatedly peformed at any desired frequency to continually determine the velocity of scrolling and to update the display accordingly.
[0068] To further illustrate the operation of process 2100, FIG. 22 depicts an example interface of device 100 having a visual representation of lines of text containing numbers 1-9. At block 2102 of process 2100, processor 202 of device 100 can cause display 106 to display the illustrated interface. At block 2104, processor 202 can receive crown position information from encoder 204. At block 2106, a scroll speed and scroll direction can be determined. Since the current scroll speed is zero and since crown 108 is not currently being rotated, it can be determined using equation 1.1 that the new velocity of scrolling is zero. At block 2108, processor 202 can cause display 106 to update the display using the speed and direction determined at block 2106. However, since the determined velocity was zero, no change to the display need be made. For purposes of explanation, FIGs. 23-29 depict subsequent views of the interface shown in FIG. 22 at different points of time, where the length of time between each view is equal.
[0069] Referring now to FIG. 23, crown 108 is being rotated in the upward rotation direction with rotation speed 2302. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2106, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scrolling VT.
In this example, rotation of crown 108 in the upward direction corresponds to an upward scroll direction. In other examples, other directions can be used. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 23, this update has caused the lines of text to translate in the upward direction with scroll speed 2304. Since crown 108 has only begun to rotate, rotation speed 2302 can be relatively low compared to typical rotation speeds of the crown. Thus, scroll speed 2304 can similarly have a relatively low value compared to typical or maximum scroll speeds. As a result, only a portion of the line of text containing the value "1"has been translated off the display.
[0070] Referring now to FIG. 24, crown 108 is being rotated in the upward rotation direction with rotation speed 2306, which can be greater than rotation speed 2302. Processor 202 can again receive crown position information from encoder 204 at block 2104. Thus, at block 2106, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scrolling VT. Since the display previously had a non-zero scroll speed value (e.g., as shown in FIG. 23), the new AVCROWN value corresponding torotation speed 2306 can be added to the previous scroll velocity value V(T-1) (e.g., having scroll speed 2304). Thus, as long as the new AVCROWN value is greater than the AVDRAG value, the new scroll speed 2308 can be greater than scroll speed 2304. However, if the AVCROWN value corresponding to rotation speed 2306 is less than the AVDRAG value, the new scroll speed 2308 can be less than scroll speed 2304. In the illustrated example, the new AVCROWN value isassumed to be greater than the AVDRAG value. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 24, this update has caused the lines of text to translate in the upward direction with scroll speed 2308. Since the AVCROWN value corresponding to rotation speed 2306 is greater than the AVDRAG value, scroll speed 2308 can be greater than scroll speed 2304. As a result, the lines of text have been translated a greater distance over the same length of time, causing a full line of text to be translated vertically off the display.
[0071] Referring now to FIG. 25, crown 108 is being rotated in the upward rotation direction with rotation speed 2310, which can be greater than rotation speed 2306. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2106, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scrolling VT. Since the display previously had a non-zero scroll speed value (e.g., as shown in FIG. 24), the new AVCROWN value corresponding to rotation speed 2310 can be added to the previous scroll velocity value V(_1) (e.g., having scroll speed 2308). Thus, as long as the new AVCROWN value is greater than the AVDRAG value, the new scroll speed 2312 can be greater than scroll speed 2308. However, if the AVCROWN value corresponding to rotation speed 2310 is less than the AVDRAG value, the new scroll speed 2312 can be less than scroll speed 2308. In the illustrated example, the new AVCROWN value is assumed tob e greater than the AVDRAGvalue. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 25, this update has caused the lines of text to translate in the upward direction with scroll speed 2312. Since the AVCROWN value corresponding torotation speed 2310 is greater than the AVDRAG value, scroll speed 2312 can be greater than scroll speed 2308. As a result, the lines of text have been translated a greater distance over the same length of time, causing 1.5 lines of text to be translated vertically off the display.
[0072] Referring now to FIG. 26, crown 108 is being rotated in the upward rotation direction with rotation speed 2314, which can be greater than rotation speed 2310. Processor202can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2110, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scrolling VT. Since the display previously had a non-zero scroll speed value (e.g., as shown in FIG. 25), the new AVCROWN value corresponding to rotation speed 2314 can be added to the previous scroll velocity value V(_1) (e.g., having scroll speed 2312). Thus, as long as the new AVCROWN value is greater than the AVDRAG value, the new scroll speed 2316 can be greater than scroll speed 2312. However, if the AVCROWN value corresponding to rotation speed 2314 is less than the AVDRAG value, the new scroll speed 2316 can be less than scroll speed 2312. In the illustrated example, the new AVCROWN value is assumed tob e greater than the AVDRAGvalue. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 26, this update has caused the lines of text to translate in the upward direction with scroll speed 2316. Since the
AVCROWN value corresponding torotation speed 2314 is greater than the AVDRAG value, scroll speed 2316 can be greater than scroll speed 2312. As a result, the lines of text have been translated a greater distance over the same length of time, causing two lines of text to be translated vertically off the display.
[0073] Referring now to FIG. 27, crown 108 is not being rotated in any direction. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2110, processor 202 can determine the new velocity of scrolling VT
based on the previous scroll velocity V(_1)(e.g., having scroll speed 2316) and the AVDRAG value. Thus, as long as the previous scroll speed 2316 is greater than the AVDRAG value, the scroll speed can have a non-zero value even when no rotation of the crown is being performed. However, if the previous scroll velocity V(T-1) (e.g., having scroll speed 2316) is equal to the AVDRAG value, the scroll speed can have a value of zero. In the illustrated example, the previous scroll velocity V(T_1)(e.g., having scroll speed 2316) is assumed to be greater than the AVDRAG
value. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 27, this update has caused the lines of text to translate in the upward direction with scroll speed 2318. Since AVDRAG can have a non zero value and because the previous scroll velocity V(T_1) (e.g., having scroll speed 2316) can be greater than the AVDRAG value, scroll speed 2318 can have a non-zero value that is less than scroll speed 2316. As a result, the lines of text have been translated a shorter distance over the same length of time, causing 1.5 lines of text to be translated vertically off the display.
[0074] Referring now to FIG. 28, crown 108 is not being rotated in any direction. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2110, processor 202 can determine the new velocity of scrolling VT based on the previous scroll velocity V(T-1) (e.g., having scroll speed 2318) and the AVDRAG value. Thus, as long as the previous scroll speed 2318 is greater than the AVDRAG value, the scroll speed can have a non-zero value even when no rotation of the crown is being performed. However, if the previous scroll velocity V(T1) (e.g., having scroll speed 2318) is equal to the AVDRAG value, the scroll speed can have a value of zero. In the illustrated example, the previous scroll velocity V(T1)(e.g., having scroll speed 2318) is assumed to be greater than the AVDRAG
value. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 28, this update has caused the lines of text to translate in the upward direction with scroll speed 2320. Since AVDRAG can have a non zero value and because the previous scroll velocity V(T-1) (e.g., having scroll speed 2318) can be greater than the AVDRAG value, scroll speed 2320 can have a non-zero value that is less than scroll speed 2318. As a result, the lines of text have been translated a shorter distance over the same length of time, causing one line of text to be translated vertically off the display.
[0075] Referring now to FIG. 29, crown 108 is not being rotated in any direction. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2110, processor 202 can determine the new velocity of scrolling VT
based on the previous scroll velocity V(T_1)(e.g., having scroll speed 2320) and the AVDRAG value. Thus, as long as the previous scroll speed 2320 is greater than the AVDRAG value, the scroll speed can have a non-zero value even when no rotation of the crown is being performed. However, if the previous scroll velocity V(T-1) (e.g., having scroll speed 2320) is equal to the AVDRAG value, the scroll speed can have a value of zero. In the illustrated example, the previous scroll velocity V(T-1) (e.g., having scroll speed 2320) is assumed to be greater than the AVDRAG
value. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 29, this update has caused the lines of text to translate in the upward direction with scroll speed 2322. Since AVDRAG can have a non zero value and because the previous scroll velocity V(T-1) (e.g., having scroll speed 2320) can be greater than the AVDRAG value, scroll speed 2322 can have a non-zero value that is less than scroll speed 2320. As a result, the lines of text have been translated a shorter distance over the same length of time, causing 0.5 lines of text to be translated vertically off the display. This decay in scroll velocity can continue until the previous scroll velocity V(T-1) is equal to the AVDRAG value, causing the scroll velocity to fall to zero. Alternatively, the decay in scroll velocity can continue until the previous scroll velocity V(T_1) falls below a threshold value, after which it can be set to a value of zero.
[0076] To further illustrate the operation of process 2100, FIG. 30 depicts an example interface of device 100 having a visual representation of lines of text containing numbers 1-9 similar to that shown in FIG. 22. FIGs. 31-36 illustrate the scrolling of the display at scroll speeds 3104, 3108, 3112, 3116, 3118, and 3120 based on input rotation speeds 3102, 3106, 3110, and 3114, in a similar manner as described above with respect to FIGs. 23-28. Thus, the lengths of time between subsequent views shown in FIGs. 31-36 are equal. For purposes of explanation, FIGs. 37-40 depict subsequent views of the interface shown in FIG. 36 at different points of time, where the length of time between each view is equal.
[0077] In contrast to FIG. 29 where no rotation input was received, a downward rotation having rotation speed 3702 can be performed at FIG. 37. In this instance, processor 202 can again receive crown position information from encoder 204 reflecting this downward rotation at block 2104. At block 2106, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scrolling VT. Since the downward rotation of crown 108 is in the opposite direction of the scrolling shown in FIG. 36, the AVCROWN value can have a polarity that is opposite that of the previous scroll velocity value V(T-1). In some examples, the new velocity of scrolling VT can be calculated by adding the new AVCROWN value (having an opposite polarity) to the previous scroll velocity value V(T-1) and subtracting the AVDRAG value. In other examples, such as that shown in FIG. 37, the previous scroll velocity value V(T-1) can be set to zero when rotation of crown 108 is in a direction opposite that of the previous scrolling (e.g., the polarity of AVCROWN is opposite that of V(T1). This can be performed to allow the user to quickly change the direction of scrolling without having to offset the previous velocity of scrolling. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 37, this update has caused the lines of text to translate in the downward direction with scroll speed 3704. Since crown 108 has only begun to rotate, rotation speed 3702 can be relatively low compared to typical rotation speeds of the crown. Thus, scroll speed 3704 can similarly have a relatively low value compared to typical or maximum scroll speeds. As a result, a relatively slow scrolling can be performed, causing 0.5 lines of text to be translated vertically off the display.
[0078] Referring now to FIG. 38, crown 108 is being rotated in the downward rotation direction with rotation speed 3706, which can be greater than rotation speed 3702. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2106, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scrolling VT. Since the display previously had a non-zero scroll speed value (e.g., as shown in FIG. 37), the new AVCROWN value corresponding to rotation speed 3706 can be added to the previous scroll velocity value V(T1) (e.g., having scroll speed 3704). Thus, as long as the new AVCROWN value is greater than the AVDRAG value, the new scroll speed 3708 can be greater than scroll speed 3704. However, if the AVCROWN valuecorresponding to rotation speed 3706 is less than the AVDRAG value, the new scroll speed 3708 can be less than scroll speed 3704. In the illustrated example, the new AVCROWN value is assumed to be greater than the AVDRAG value. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 38, this update has caused the lines of text to translate in the downward direction with scroll speed 3708. Since the AVCROWN value corresponding torotation speed 3706 is greater than the AVDRAG value, scroll speed 3708 can be greater than scroll speed 3704. As a result, the lines of text have been translated a greater distance over the same length of time, causing a full line of text to be translated vertically off the display.
[0079] Referring now to FIG. 39, crown 108 is being rotated in the downward rotation direction with rotation speed 3710, which can be greater than rotation speed 3706. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2106, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scrolling VT. Since the display previously had a non-zero scroll speed value (e.g., as shown in FIG. 38), the new AVCROWN value corresponding to rotation speed 3710 can be added to the previous scroll velocity value V(T-1) (e.g., having scroll speed 3708). Thus, as long as the new AVCROWN value is greater than the AVDRAG value, the new scroll speed 3712 can be greater than scroll speed 3708. However, if the AVCROWN valuecorresponding to rotation speed 3710 is less than the AVDRAG value, the new scroll speed 3712 can be less than scroll speed 3708. In the illustrated example, the new AVCROWN value is assumed to be greater than the AVDRAG value. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 39, this update has caused the lines of text to translate in the downward direction with scroll speed 3712. Since the AVCROWN value corresponding torotation speed 3710 is greater than the AVDRAG value, scroll speed 3712 can be greater than scroll speed 3708. As a result, the lines of text have been translated a greater distance over the same length of time, causing 1.5 lines of text to be translated vertically off the display.
[0080] Referring now to FIG. 40, crown 108 is being rotated in the downward rotation direction with rotation speed 3714, which can be greater than rotation speed 3710. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 2104. Thus, at block 2110, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scrolling VT. Since the display previously had a non-zero scroll speed value (e.g., as shown in FIG. 39), the new AVCROWN value corresponding to rotation speed 3714 can be added to the previous scroll velocity value V(T-1) (e.g., having scroll speed 3712). Thus, as long as the new AVCROWN value is greater than the AVDRAG value, the new scroll speed 3716 can be greater than scroll speed 3712. However, if the AVCROWN value corresponding to rotation speed 3714 is less than the AVDRAG value, the new scroll speed 3716 can be less than scroll speed 3712. In the illustrated example, the new AVCROWN value is assumed to be greater than the AVDRAG value. At block 2108, processor 202 can cause display 106 to update the display based on the determined scroll speed and direction. As shown in FIG. 40, this update has caused the lines of text to translate in the downward direction with scroll speed 3716. Since the AVCROWN value corresponding torotation speed 3714 is greater than the AVDRAG value, scroll speed 3716 can be greater than scroll speed 3712. As a result, the lines of text have been translated a greater distance over the same length of time, causing two lines of text to be translated vertically off the display.
[0081] While not shown, if the rotation of crown 108 stops, the view can continue to be scrolled in a downward direction in a manner similar to that described above with respect to FIGs.35 and 36. The speed and amount of scroll that can be performed can depend on the scroll speed when the rotation of crown 108 stopped and the value used for AVDRAG
[0082] While a specific scrolling example is provided, it should be appreciated that other types of data, such as media items, webpages, applications, or the like, can similarly be scrolled using process 2100 in a similar manner. For example, process 2100 can be performed to scroll through a list of applications in a manner similar to that described above with respect to process 300. However, the velocity of scrolling through the applications when using process 2100 can depend on the velocity of angular rotation of the crown.
[0083] FIG. 41 illustrates an exemplary process 4100 for scaling a view of a display based on an angular velocity of rotation of a crown according to various examples. The view can include a visual representation of any type of data being displayed. For example, the view can include a display of a text, a media item, a webpage, or the like. Process 4100 can be similar to process 2100, except that process 4100 can determine a scaling velocity (e.g., an amount and direction of change in size per unit time) rather than determine a scrolling velocity. While the quantities being determined are different, they can be determined in a similar manner. In some examples, process 4100 can be performed by a wearable electronic device similar to device 100. In these examples, content or any other view can be displayed on display 106 of device 100 and process 4100 can be performed to visually scale the view in response to a turning of crown 108.
[0084] At block 4102, a view of the display of the wearable electronic device can be displayed. As mentioned above, the view can include any visual representation of any type of data that is displayed by a display of the device.
[0085] At block 4104, crown position information can be received in a manner similar or identical to that described above with respect to block 902 of process 900. For instance, the crown position information can be received by a processor (e.g., processor 202) from an encoder (e.g., encoder 204) and can include an analog or digital representation of the absolute position of the crown, a change in rotational position of the crown, or other positional information of the crown.
[0086] At block 4106, the scale velocity (e.g., speed and positive/negative scaling direction) can be determined. In some examples, the scaling of a view can be determined using a physics based modeling of motion. For example, the velocity of scaling can be treated as a velocity of a moving object. The rotation of the crown can be treated as a force being applied to the object in a direction corresponding to the direction of rotation of the crown, where the amount of force depends on the speed of angular rotation of the crown. As a result, the scaling velocity can increase or decrease and can move in different directions. For example, a greater speed of angular rotation can correspond to a greater amount of force being applied to the object. Any desired linear or non-linear mapping between speed of angular rotation and force being applied to the object can be used. In addition, a drag force can be applied in a direction opposite the direction of motion (e.g., scaling). This can be used to cause the velocity of scaling to decay over time, allowing the scaling to stop absent additional input from the user. Thus, the velocity of scaling at discrete moments in time can take the general form of:
VTV(T-1) + AVCROWN - AVDRAG. (1.2)
[0087] In equation 1.2, VT represents the determined scale velocity (speed and direction) at time T, V(T1) represents the previous scale velocity (speed and direction) at time T-1, AVCROWN
represents the change in scale velocity caused by the force applied in response to the rotation of the crown, and AVDRAG represents the change in scale velocity caused by the drag force opposing the motion of the scaling. As mentioned above, the force applied to the scaling by the crown can depend on the speed of angular rotation of the crown. Thus, AVCROWN can also depend on the speed of angular rotation of the crown. Typically, the greater the speed of angular rotation of the crown, the greater the value of AVCROWN will be. However, the actual mapping between the speed of angular rotation of the crown and AVCROWN can be varied depending on the desired user feel of the scaling effect. In some examples, the AVDRAG can depend on the velocity of scaling, such that at greater velocities, a greater opposing change in scaling can be produced. In other examples, AVDRAG can have a constant value. However, it should be appreciated that any constant or variable amount of opposing change in velocity can be used to produce a desired scaling effect. Note, typically, in the absence of user input in the form of AVCROWN, VT will approach (and become) zero based on AVDRAG in accordance with equation 1.2, but VT would not change signs without user input in the form of crown rotation (AVcRoWN
[0088] As can be seen from equation 1.2, the velocity of scaling can continue to increase as long as AVCROWN is greater than AVDRAG. Additionally, the velocity of scaling can have non zero values even when no AVCROWN input isbeing reeived. Thus, if the view is scaling with a non-zero velocity, it can continue to scale without the user rotating the crown. The scale amount and time until the scaling stops can depend on the scale velocity at the time the user stops rotating the crown and the AVDRAG component.
[0089] In some examples, when the crown is rotated in the opposite direction corresponding to a scale direction that is opposite the direction that the view is currently being scaled, the V(T-1)
component can be reset to a value of zero, allowing the user to quickly change the direction of the scaling without having to provide a force sufficient to offset the current scale velocity of the view.
[0090] At block 4108, the display can be updated based on the scale speed and direction determined at block 4106. This can include scaling the view by an amount corresponding to the determined scale speed and in a direction (e.g., larger or smaller) corresponding to the determined scale direction. The process can then return to block 4104, where additional crown position information can be received.
[0091] It should be appreciated that blocks 4104, 4106, and 4108 can be repeatedly performed at any desired frequency to continually determine the speed of scaling and to update the display accordingly.
[0092] To further illustrate the operation of process 4100, FIG. 42 depicts an example interface of device 100 having an image of triangle 4202. At block 4102 of process 4100, processor 202 of device 100 can cause display 106 to display the illustrated triangle 4202. At block 4104, processor 202 can receive crown position information from encoder 204. At block 4106, a scale speed and scale direction can be determined. Since the current scroll velocity is zero and since crown 108 is not currently being rotated, it can be determined using equation 1.2 that the new velocity of scaling is zero. At block 4108, processor 202 can cause display 106 to update the display using the speed and direction determined at block 4106. However, since the determined velocity was zero, no change to the display need be made. For purposes of explanation, FIGs. 43 and 44 depict subsequent views of the interface shown in FIG. 42 at different points of time, where the length of time between each view is equal.
[0093] Referring now to FIG. 43, crown 108 is being rotated in the upward rotation direction with rotation speed 4302. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 4104. Thus, at block 4106, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scaling VT. In this example, rotation of crown in the upward direction equates to a positive scaling direction (e.g., increasing the size of the view). In other examples, other directions can be used. At block 4108, processor 202 can cause display 106 to update the display based on the determined scale speed and direction. As shown in FIG. 43, this update has caused triangle 4202 to increase in size with a rate of change corresponding to the determined scale speed. Since crown 108 has only begun to rotate, rotation speed 4302 can be relatively low compared to typical rotation speeds of the crown. Thus, the scale speed can similarly have a relatively low value compared to typical or maximum scroll speeds. As a result, only a small change in size of triangle 4202 can be observed.
[0094] Referring now to FIG. 43, crown 108 is being rotated in the upward rotation direction with rotation speed 4304, which can be greater than rotation speed 4302. Processor 202 can again receive crown position information that reflects this rotation from encoder 204 at block 4104. Thus, at block 4106, processor 202 can convert this rotation speed into a AVCROWN value to determine the new velocity of scaling VT. Since the display previously had a non-zero scale velocity value (e.g., as shown in FIG. 43), the new AVCROWN value corresponding to rotation speed 4304 can be added to the previous scale velocity value V(T-1). Thus, as long as the new AVCROWN value is greater than the AVDRAG value, the new scale velocity can be greater than the previous scale velocity. However, if the AVCROWN value corresponding to rotation speed 4304 is less than the AVDRAG value, the new scale velocity can be less than the previous scale velocity. In the illustrated example, the new AVCROWN value is assumed to be greater than the AVDRAG value. At block 4108, processor 202 can cause display 106 to update the display based on the determined scale speed and direction. As shown in FIG. 44, this update has caused triangle 4202 to increase in size with the determined scale velocity. Since the AVCROWN value corresponding to rotation speed 4304 is greater than the AVDRAG value, the scale velocity can be greater than the previous scale velocity. As a result, a larger change in size of triangle 4202 can be observed than that illustrated in FIG. 43.
[0095] Similar to the scrolling performed using process 2100, the scaling of the view containing triangle 4202 can continue after rotation of crown 108 has ceased. However, the rate at which the view containing triangle 4202 increases in size can decrease over time due to the AVDRAG value of equation 1.2. Additionally, a similar scaling that decreases the size of the view containing triangle 4202 can be performed in response to crown 108 being rotated in the opposite direction. The velocity of the scaling can be calculated in a similar manner as that used to calculate the positive scaling shown in FIGs. 42-44. Moreover, similar to the scrolling performed using process 2100, the speed and direction of scaling can be set to zero in response to a rotation of crown 108 in a direction opposite the direction of scaling. This can be performed to allow the user to quickly change the direction of the scaling.
[0096] Moreover, in some examples, when reaching a minimum or maximum scaling of a view, the velocity scaling can reverse directions. For example, the velocity of scaling can cause the view to zoom-in with a non-zero speed. Upon reaching a scaling limit, the direction of the scaling can reverse to cause the view to scale in the opposite direction (e.g., zoom-out) with the same speed that the view was scaling prior to reaching the scaling limit.
[0097] In some examples, the scrolling or scaling performed in any of the processes described above (e.g., process 300, 900, 1500, 2100, or 4100) can be stopped in response to a change of context of the electronic device. A context can represent any condition that makes up the environment in which the crown position information is being received. For example, a context can include a current application being executed by the device, a type of application or process being displayed by the device, a selected object within a view of the device, or the like. To illustrate, if crown position information indicating that a change in position of crown 108 is being received while performing process 300, device 100 can scroll through a list of applications, as described above. However, in response to a change in context in the form of a user selecting one of the displayed applications, which causes device 100 to open the application, device 100 can cease to perform the previously occurring scrolling function of block 306 to prevent the scrolling function from being performed within the opened application. In some examples, after detecting a change in context, device 100 can also ignore inputs from crown 108 by ceasing to perform the scrolling function of block 306 even if crown 108 continues to be rotated. In some examples, device 100 can cease to perform the scrolling function of block 306 in response to a change in position of crown 108 for a threshold length of time after detecting a change in context. The threshold length of time can be any desired time, such as 1, 2, 3, 4, or more seconds. A similar behavior can also be performed in response to detecting a change in context while performing process 900 or 1500. For example, device 100 can cease to perform a previously occurring scrolling or scaling function in response to detecting a change in context. Additionally, in some examples after detecting a change in context, device 100 can also ignore inputs from crown 108 by ceasing to scroll or zoom a view in response to changes in position of crown 108 for a threshold length of time after detecting the change in context. A similar behavior can also be performed in response to detecting a change in context while performing blocks 2100 or 4100. For example, device 100 can stop a previously occurring scrolling or zooming function having a non-zero speed in response to detecting a change in context. Additionally, in some examples after detecting a change in context, device 100 can also ignore inputs from crown 108 by ceasing to scroll or zoom a view in response to changes in position of crown 108 for a threshold length of time after detecting the change in context. Stopping a scrolling or scaling function and/or ignoring future inputs from crown 108 in response to detecting a change in context can advantageously prevent an input entered while operating in one context from carrying over to another context in an undesired way. For example, a user can use crown 108 to scroll through a list of applications using process 300 and can select a desired music application while the momentum of crown 108 causes crown 108 to continue to spin. Without stopping the scrolling function and without ignoring inputs from crown 108 in response to detecting the change in context, device 100 can cause a scrolling function to be performed within the selected application or can interpret the input from crown 108 in another manner (e.g., to adjust a volume of the music application) unintended by the user.
[0098] In some examples, changes in certain types of contexts may not result in device 100 stopping an ongoing scrolling or scaling function and/or causing device 100 to ignore future inputs from crown 108. For example, if device 100 is simultaneously displaying multiple views or objects within display 106, selection between the displayed views or objects may not cause device 100 to stop the scrolling or scaling function and/or may not cause device 100 to ignore future inputs of crown 108, as described above. For example, device 100 can simultaneously display two sets of lines of text similar to that shown in FIG. 10. In this example, device 100 can scroll through one of the sets using process 900. In response to a user selection of the other set of lines of text (e.g., via a tap on the touch-sensitive display of device 100 at a location corresponding to the other set of lines of text), device 100 can begin to scroll through the other set of lines of text based on the previous scroll speed and/or current detected changes in position of crown 108. However, if a different type of change in context occurs (e.g., a new application is opened, an item not currently being displayed by device 100 is selected, or the like), device 100 can stop an ongoing scrolling or scaling function and/or can ignore inputs from crown 108 for a threshold length of time, as described above. In other examples, rather than begin to scroll through the other set of lines of text based on the previous scroll speed and/or the current change in position of crown 108 in response to a user selection of the other set of lines of text (e.g., via a tap on the touch-sensitive display of device 100 at a location corresponding to the other set of lines of text), device 100 can stop an ongoing scrolling or scaling function and/or can ignore inputs from crown 108 for a threshold length of time. However, the threshold length of time can be shorter than the threshold length of time used for changes in other types of changes in context (e.g., a new application is opened, an item not currently being displayed by device 100 is selected, or the like). While specific types of context changes are provided above, it should be appreciated that any type of context changes can be selected.
[0099] In some examples, device 100 can include a mechanism for detecting physical contact with crown 108. For example, device 100 can include a capacitive sensor configured to detect changes in capacitance caused by contact with crown 108, a resistive sensor configured to detect changes in resistance caused by contact with crown 108, a pressure sensor configured to detect a depression of crown 108 caused by contact with crown 108, a temperature sensor configured to detect a change in temperature of crown 108 caused by contact with crown 108, or the like. It should be appreciated that any desired mechanism for detecting contact with crown 108 can be used. In these examples, the presence or absence of contact with crown 108 can be used to stop the scrolling or scaling performed in any of the processes described above (e.g., process 300, 900, 1500, 2100, or 4100). For instance, in some examples, device 100 can be configured to perform scrolling or scaling functions as described above with respect to processes 300, 900, 1500, 2100, or 4100. In response to detecting an abrupt stop in the rotation of crown 108 (e.g., a stop or decrease in rotation speed that exceeds a threshold value) while contact with crown 108 is detected, device 100 can stop the scrolling or scaling being performed. This occurrence can represent the situation where the user quickly rotates crown 108, but intentionally brings it to a stop, indicating a desire to halt the scrolling or scaling. However, in response to detecting an abrupt stop in the rotation of crown 108 (e.g., a stop or decrease in rotation speed that exceeds a threshold value) while contact with crown 108 is not detected, device 100 can continue the scrolling or scaling being performed. This occurrence can represent the situation where the user quickly rotates crown 108 by performing a forward or backwards flicking gesture, removes their finger from crown 108, and rotates their wrist back in order to further wind crown 108 using another flicking gesture. In this situation, it is likely that the user does not intend for the scrolling or scaling to stop.
[00100] While processes 300, 900, 2100, ad 4100 have been described above as being used to perform scrolling or scaling of objects or views of a display, it should be appreciated that they can more generally be applied to adjust any type of value associated with the electronic device. For example, rather than scroll or scale a view in a particular direction in response to a change in position of crown 108, device 100 can instead increase a selected value (e.g., a volume, a time within a video, or any other value) by an amount or a speed in a manner similar to that described above for scrolling or scaling. Additionally, rather than scroll or scale a view in an opposite direction in response to a change in position of crown 108 in the opposite direction, device 100 can instead decrease the selected value by an amount or a speed in a manner similar to that described above for scrolling or scaling.
[00101] One or more of the functions relating to scaling or scrolling a user interface can be performed by a system similar or identical to system 4500 shown in FIG. 45. System 4500 can include instructions stored in a non-transitory computer readable storage medium, such as memory 4504 or storage device 4502, and executed by processor 4506. The instructions can also be stored and/or transported within any non-transitory computer readable storage medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. In the context of this document, a "non-transitory computer readable storage medium" can be any medium that can contain or store the program for use by or in connection with the instruction execution system, apparatus, or device. The non-transitory computer readable storage medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, a portable computer diskette (magnetic), a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM) (magnetic), a portable optical disc such a CD, CD
R, CD-RW, DVD, DVD-R, or DVD-RW, or flash memory such as compact flash cards, secured digital cards, USB memory devices, memory sticks, and the like.
[00102] The instructions can also be propagated within any transport medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. In the context of this document, a "transport medium" can be any medium that can communicate, propagate or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The transport medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic or infrared wired or wireless propagation medium.
[00103] In some examples, system 4500 can be included within device 100. In these examples, processor 4506 can be used as processor 202. Processor 4506 can be configured to receive the output from encoder 204, buttons 110, 112, and 114, and from touch-sensitive display 106. Processor 4506 can process these inputs as described above with respect to FIGs. 3, 9, 15, 21, and 41, and processes 300, 900, 1500, 2100, and 4100. It is to be understood that the system is not limited to the components and configuration of FIG. 45, but can include other or additional components in multiple configurations according to various examples.
[00104] Although the disclosure and examples have been fully described with reference to the accompanying drawings, it is to be noted that various changes and modifications will become apparent to those skilled in the art. Such changes and modifications are to be understood as being included within the scope of the disclosure and examples as defined by the appended claims.

Claims (14)

What is claimed is:
1. A computer-implemented method comprising: receiving first crown rotation direction associated with a physical crown of an electronic device; in response to determining that a rotation of the physical crown in a first scroll direction has occurred based on the first crown rotation direction, causing a view displayed on a display of the electronic device to be scrolled in thefirst scroll direction; while the view displayed on the display is being scrolled in the first scroll direction, receiving second crown rotation direction; in response to receiving the second crown rotation direction and in accordance with a determination that a rotation of the physical crown in a second scroll direction, opposite from the first scroll direction, has occurred based on the second crown rotation direction: for a first time interval, continuing to scroll the view in the first scroll direction; and for a second time interval subsequent to the first time interval, scrolling the view in the second scroll direction opposite the first scroll direction.
2. The computer-implemented method of claim 1, wherein causing the view displayed on the display of the electronic device to be scrolled in thefirst scroll direction includes scrolling the view at a first determined scroll speed that is based on a speed of the first crown rotation direction, and wherein causing the view displayed on the display of the electronic device to be scrolled in the second scroll direction includes scrolling the view at a second determined scroll speed that is based on a speed of the second crown rotation direction.
3. The computer-implemented method of claim 1-2, wherein a respective determined scroll speed is determined based on: a magnitude of a previous scroll speed; and a magnitude of a crown scroll speed component, wherein the crown scroll speed component represents a change in scroll speed based on angular rotation of the physical crown; and a magnitude of a drag scroll speed component.
4. The computer-implemented method of claim 1-2, wherein a respective determined scroll speed is determined based on: a magnitude and direction of a previous scroll speed; and a magnitude and direction of a crown scroll speed component, wherein the crown scroll speed component represents a change in scroll speed based on angular rotation of the physical crown.
5. The computer-implemented method of claim 1-2, wherein a respective determined scroll speed that is determined based on a magnitude and direction of a previous scroll speed and a magnitude and direction of a crown scroll speed component is decreased based on a drag scroll speed component, wherein the crown scroll speed component represents a change in scroll speed based on angular rotation of the physical crown.
6. The computer-implemented method of claim 1-2, wherein receiving the first crown rotation direction includes detecting a change in rotation of the physical crown over a length of time and receiving the second crown rotation direction includes detecting a change in rotation of the physical crown over a length of time.
7. The computer-implemented method of claim 1-2, wherein the electronic device is a watch.
8. The computer-implemented method of claim 1-2, wherein the physical crown is a mechanical crown that rotates relative to a housing of the electronic device.
9. The computer-implemented method of claim 1-2, wherein continuing to scroll the view displayed on the display of the electronic device in the first scroll direction includes reducing a scroll speed of the view.
10. The computer-implemented method of claim 9, wherein the scroll speed of the view is gradually reduced over time.
11. The computer-implemented method of claim 1-2, wherein scrolling the view in the second scroll direction includes increasing a scroll speed of the view.
12. The computer-implemented method of claim 11, wherein the scroll speed of the view is gradually increased over time.
13. An electronic device, comprising: a physical crown; a display; one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any of claims 1 - 12.
14. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors, the one or more programs including instructions for performing the method of any of claims 1 - 12 .
AU2021212114A 2013-09-03 2021-08-06 Crown input for a wearable electronic device Active AU2021212114B9 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
AU2021212114A AU2021212114B9 (en) 2013-09-03 2021-08-06 Crown input for a wearable electronic device
AU2023237127A AU2023237127A1 (en) 2013-09-03 2023-09-28 Crown input for a wearable electronic device

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US201361873356P 2013-09-03 2013-09-03
US201361959851P 2013-09-03 2013-09-03
US201361873360P 2013-09-03 2013-09-03
US201361873359P 2013-09-03 2013-09-03
US61/873,359 2013-09-03
US61/873,356 2013-09-03
US61/959,851 2013-09-03
US61/873,360 2013-09-03
US201414476657A 2014-09-03 2014-09-03
AU2014315319A AU2014315319B2 (en) 2013-09-03 2014-09-03 Crown input for a wearable electronic device
US14/476,657 2014-09-03
PCT/US2014/053951 WO2015034960A1 (en) 2013-09-03 2014-09-03 Crown input for a wearable electronic device
AU2018200289A AU2018200289B2 (en) 2013-09-03 2018-01-12 Crown input for a wearable electronic device
AU2019257521A AU2019257521A1 (en) 2013-09-03 2019-11-01 Crown input for a wearable electronic device
AU2021212114A AU2021212114B9 (en) 2013-09-03 2021-08-06 Crown input for a wearable electronic device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
AU2019257521A Division AU2019257521A1 (en) 2013-09-03 2019-11-01 Crown input for a wearable electronic device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
AU2023237127A Division AU2023237127A1 (en) 2013-09-03 2023-09-28 Crown input for a wearable electronic device

Publications (3)

Publication Number Publication Date
AU2021212114A1 true AU2021212114A1 (en) 2021-08-26
AU2021212114B2 AU2021212114B2 (en) 2023-07-20
AU2021212114B9 AU2021212114B9 (en) 2023-11-23

Family

ID=51589515

Family Applications (11)

Application Number Title Priority Date Filing Date
AU2014315319A Active AU2014315319B2 (en) 2013-09-03 2014-09-03 Crown input for a wearable electronic device
AU2014315325A Active AU2014315325B2 (en) 2013-09-03 2014-09-03 User interface object manipulations in a user interface
AU2014315324A Active AU2014315324B2 (en) 2013-09-03 2014-09-03 User interface for manipulating user interface objects
AU2017276285A Active AU2017276285B2 (en) 2013-09-03 2017-12-14 User interface for manipulating user interface objects
AU2018200289A Active AU2018200289B2 (en) 2013-09-03 2018-01-12 Crown input for a wearable electronic device
AU2019206101A Active AU2019206101B2 (en) 2013-09-03 2019-07-18 User interface for manipulating user interface objects
AU2019257521A Abandoned AU2019257521A1 (en) 2013-09-03 2019-11-01 Crown input for a wearable electronic device
AU2021201748A Active AU2021201748C1 (en) 2013-09-03 2021-03-19 User interface for manipulating user interface objects
AU2021212114A Active AU2021212114B9 (en) 2013-09-03 2021-08-06 Crown input for a wearable electronic device
AU2022235585A Pending AU2022235585A1 (en) 2013-09-03 2022-09-21 User interface for manipulating user interface objects
AU2023237127A Pending AU2023237127A1 (en) 2013-09-03 2023-09-28 Crown input for a wearable electronic device

Family Applications Before (8)

Application Number Title Priority Date Filing Date
AU2014315319A Active AU2014315319B2 (en) 2013-09-03 2014-09-03 Crown input for a wearable electronic device
AU2014315325A Active AU2014315325B2 (en) 2013-09-03 2014-09-03 User interface object manipulations in a user interface
AU2014315324A Active AU2014315324B2 (en) 2013-09-03 2014-09-03 User interface for manipulating user interface objects
AU2017276285A Active AU2017276285B2 (en) 2013-09-03 2017-12-14 User interface for manipulating user interface objects
AU2018200289A Active AU2018200289B2 (en) 2013-09-03 2018-01-12 Crown input for a wearable electronic device
AU2019206101A Active AU2019206101B2 (en) 2013-09-03 2019-07-18 User interface for manipulating user interface objects
AU2019257521A Abandoned AU2019257521A1 (en) 2013-09-03 2019-11-01 Crown input for a wearable electronic device
AU2021201748A Active AU2021201748C1 (en) 2013-09-03 2021-03-19 User interface for manipulating user interface objects

Family Applications After (2)

Application Number Title Priority Date Filing Date
AU2022235585A Pending AU2022235585A1 (en) 2013-09-03 2022-09-21 User interface for manipulating user interface objects
AU2023237127A Pending AU2023237127A1 (en) 2013-09-03 2023-09-28 Crown input for a wearable electronic device

Country Status (5)

Country Link
JP (11) JP6170250B2 (en)
KR (12) KR102045111B1 (en)
AU (11) AU2014315319B2 (en)
DK (1) DK179231B1 (en)
WO (3) WO2015034965A1 (en)

Families Citing this family (94)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9100493B1 (en) * 2011-07-18 2015-08-04 Andrew H B Zhou Wearable personal digital device for facilitating mobile device payments and personal use
TWI439960B (en) 2010-04-07 2014-06-01 Apple Inc Avatar editing environment
US9459781B2 (en) 2012-05-09 2016-10-04 Apple Inc. Context-specific user interfaces for displaying animated sequences
US9753436B2 (en) 2013-06-11 2017-09-05 Apple Inc. Rotary input mechanism for an electronic device
EP3014400B1 (en) 2013-08-09 2020-06-03 Apple Inc. Tactile switch for an electronic device
WO2015088492A1 (en) 2013-12-10 2015-06-18 Apple Inc. Input friction mechanism for rotary inputs of electronic devices
WO2015122885A1 (en) 2014-02-12 2015-08-20 Bodhi Technology Ventures Llc Rejection of false turns of rotary inputs for electronic devices
KR102239316B1 (en) 2014-09-02 2021-04-13 애플 인크. Wearable electronic device
US10145712B2 (en) 2014-09-09 2018-12-04 Apple Inc. Optical encoder including diffuser members
US9829350B2 (en) 2014-09-09 2017-11-28 Apple Inc. Magnetically coupled optical encoder
US9651405B1 (en) 2015-03-06 2017-05-16 Apple Inc. Dynamic adjustment of a sampling rate for an optical encoder
EP3251139B1 (en) 2015-03-08 2021-04-28 Apple Inc. Compressible seal for rotatable and translatable input mechanisms
WO2016155761A1 (en) * 2015-03-27 2016-10-06 Saronikos Trading And Services, Unipessoal Lda Electronic wrist or pocket watch comprising a rotary crown
WO2016171467A1 (en) 2015-04-23 2016-10-27 Samsung Electronics Co., Ltd. Electronic device including rotary member and display method thereof
KR102406102B1 (en) 2015-04-24 2022-06-10 삼성전자주식회사 Electronic apparatus and method for displaying object thereof
KR20160131275A (en) * 2015-05-06 2016-11-16 엘지전자 주식회사 Watch type terminal
KR102356449B1 (en) * 2015-05-13 2022-01-27 삼성전자주식회사 Apparatus and method for providing additional information according to rotary input
CN105117118B (en) * 2015-07-28 2019-02-01 Oppo广东移动通信有限公司 A kind of method and smartwatch controlling video playing
CN105137746B (en) * 2015-07-28 2018-03-27 广东欧珀移动通信有限公司 A kind of receives frequency adjusting method and intelligent watch
CN105013175A (en) * 2015-07-28 2015-11-04 广东欧珀移动通信有限公司 Game motion control method and intelligent watch
CN105117120B (en) * 2015-07-28 2017-07-11 广东欧珀移动通信有限公司 The table hat and the operating method of intelligent watch of a kind of intelligent watch
CN105068738A (en) * 2015-07-28 2015-11-18 广东欧珀移动通信有限公司 Control method for smartwatch and smartwatch
CN105005479B (en) * 2015-07-28 2018-06-29 广东欧珀移动通信有限公司 A kind of alarm clock method for closing and smartwatch
CN105117001B (en) * 2015-07-28 2017-07-11 广东欧珀移动通信有限公司 The table hat and the operating method of intelligent watch of a kind of intelligent watch
CN105117119B (en) * 2015-07-28 2018-12-11 广东欧珀移动通信有限公司 A kind of method and smartwatch of rotation of screen picture
CN105117150B (en) * 2015-07-28 2021-06-04 Oppo广东移动通信有限公司 Air conditioner control method and smart watch
CN105116997B (en) * 2015-07-28 2018-05-29 广东欧珀移动通信有限公司 A kind of data encryption, the method for decryption and smartwatch
CN105025630A (en) * 2015-07-28 2015-11-04 广东欧珀移动通信有限公司 Brightness adjusting method and intelligent watch
CN105138116B (en) * 2015-07-28 2018-07-06 广东欧珀移动通信有限公司 A kind of information displaying method, smartwatch, terminal device and system
CN105117143B (en) * 2015-07-28 2020-07-03 Oppo广东移动通信有限公司 Information display method, smart watch, server and system
CN105117002B (en) * 2015-07-28 2017-07-11 广东欧珀移动通信有限公司 The table hat and the operating method of intelligent watch of a kind of intelligent watch
CN105116996A (en) * 2015-07-28 2015-12-02 广东欧珀移动通信有限公司 Control method for smart watch and smart watch
CN105137819B (en) * 2015-07-28 2019-07-02 Oppo广东移动通信有限公司 A kind of method and smartwatch of music
CN105025629B (en) * 2015-07-28 2019-11-29 Oppo广东移动通信有限公司 A kind of control method and smartwatch of smartwatch
CN106708379B (en) * 2015-07-28 2020-01-10 Oppo广东移动通信有限公司 Interface operation method and device and smart watch
CN105116998B (en) * 2015-07-28 2019-05-21 Oppo广东移动通信有限公司 A kind of method and smartwatch of fastopen
CN105022947B (en) * 2015-07-28 2019-02-22 Oppo广东移动通信有限公司 A kind of fingerprint identification method and smartwatch of smartwatch
CN105389074A (en) * 2015-07-28 2016-03-09 广东欧珀移动通信有限公司 Control method for smart watch and smart watch
CN105117121B (en) * 2015-07-28 2019-04-02 Oppo广东移动通信有限公司 A kind of method that smartwatch is sought help and smartwatch
CN105141755A (en) * 2015-07-28 2015-12-09 广东欧珀移动通信有限公司 Information reply method, smart watch, terminal equipment and system
EP3337583B1 (en) 2015-08-20 2024-01-17 Apple Inc. Exercise-based watch face
CN105224208B (en) * 2015-08-26 2018-07-06 广东欧珀移动通信有限公司 The method and smartwatch that a kind of page is shown
CN105068412B (en) * 2015-08-26 2017-10-17 广东欧珀移动通信有限公司 A kind of intelligent watch and operating method
CN105204893B (en) * 2015-08-26 2018-07-06 广东欧珀移动通信有限公司 A kind of application control method and smartwatch
CN105117129A (en) * 2015-08-26 2015-12-02 广东欧珀移动通信有限公司 Interface operation method and device and smart watch
CN105227201B (en) * 2015-08-26 2018-03-27 广东欧珀移动通信有限公司 A kind of communication information answering method and intelligent watch
CN105117010B (en) * 2015-08-26 2018-12-11 广东欧珀移动通信有限公司 A kind of method and smartwatch starting application program
CN105224072B (en) * 2015-08-26 2018-07-06 广东欧珀移动通信有限公司 The control method and smartwatch of a kind of music
CN105117014B (en) * 2015-08-26 2018-03-27 广东欧珀移动通信有限公司 A kind of friend-making management method and intelligent watch
CN105068742B (en) * 2015-08-26 2018-03-27 广东欧珀移动通信有限公司 The control method and intelligent watch of a kind of intelligent watch
CN105117011B (en) * 2015-08-26 2017-08-29 广东欧珀移动通信有限公司 A kind of method for operating application program, device and intelligent watch
CN105117013B (en) * 2015-08-26 2018-03-27 广东欧珀移动通信有限公司 The unlocking method and intelligent watch of a kind of intelligent watch
CN105117012B (en) * 2015-08-26 2018-06-29 广东欧珀移动通信有限公司 A kind of display interface method of adjustment and smartwatch
CN105068847B (en) * 2015-08-26 2016-12-28 广东欧珀移动通信有限公司 A kind of application program launching method and intelligent watch
CN105208675B (en) * 2015-08-26 2018-09-04 广东欧珀移动通信有限公司 A kind of wireless connection method and smartwatch based on smartwatch
CN105224193B (en) * 2015-08-26 2018-05-29 广东欧珀移动通信有限公司 The control method and smartwatch of a kind of smartwatch
US9983029B2 (en) 2015-09-30 2018-05-29 Apple Inc. Integrated optical encoder for tilt able rotatable shaft
US10503271B2 (en) * 2015-09-30 2019-12-10 Apple Inc. Proximity detection for an input mechanism of an electronic device
US11281167B2 (en) 2016-01-14 2022-03-22 Huawei Technologies Co., Ltd. Electronic device and a method of operating such an electronic device
US20190025940A1 (en) * 2016-01-22 2019-01-24 Lg Electronics Inc. Watch-type mobile terminal and method of operation thereof
US10048837B2 (en) 2016-02-16 2018-08-14 Google Llc Target selection on a small form factor display
US10503258B2 (en) 2016-03-04 2019-12-10 Apple Inc. Input mechanism with force and rotation inputs and haptic feedback
US10025399B2 (en) 2016-03-16 2018-07-17 Lg Electronics Inc. Watch type mobile terminal and method for controlling the same
CN107203261B (en) 2016-03-16 2022-05-24 Lg电子株式会社 Watch type mobile terminal and control method thereof
JP6927670B2 (en) * 2016-05-26 2021-09-01 株式会社アイ・オー・データ機器 Operation reception device, program, and operation reception method
US10061399B2 (en) 2016-07-15 2018-08-28 Apple Inc. Capacitive gap sensor ring for an input device
US10019097B2 (en) 2016-07-25 2018-07-10 Apple Inc. Force-detecting input structure
KR102607562B1 (en) * 2016-08-30 2023-11-30 삼성전자주식회사 Method for providing visual effects according to interaction based on bezel and electronic device for the same
US10324620B2 (en) 2016-09-06 2019-06-18 Apple Inc. Processing capacitive touch gestures implemented on an electronic device
CN108140361B (en) 2016-09-23 2022-03-11 苹果公司 Film watching mode
DK179412B1 (en) 2017-05-12 2018-06-06 Apple Inc Context-Specific User Interfaces
DK179555B1 (en) 2017-05-16 2019-02-13 Apple Inc. User interface for a flashlight mode on an electronic device
US10962935B1 (en) 2017-07-18 2021-03-30 Apple Inc. Tri-axis force sensor
US10203662B1 (en) 2017-09-25 2019-02-12 Apple Inc. Optical position sensor for a crown
DK180078B1 (en) 2018-05-07 2020-03-31 Apple Inc. USER INTERFACE FOR AVATAR CREATION
US11722764B2 (en) 2018-05-07 2023-08-08 Apple Inc. Creative camera
US11327650B2 (en) 2018-05-07 2022-05-10 Apple Inc. User interfaces having a collection of complications
US11360440B2 (en) 2018-06-25 2022-06-14 Apple Inc. Crown for an electronic watch
US11561515B2 (en) 2018-08-02 2023-01-24 Apple Inc. Crown for an electronic watch
US11181863B2 (en) 2018-08-24 2021-11-23 Apple Inc. Conductive cap for watch crown
CN211293787U (en) 2018-08-24 2020-08-18 苹果公司 Electronic watch
CN209625187U (en) 2018-08-30 2019-11-12 苹果公司 Electronic watch and electronic equipment
US11194299B1 (en) 2019-02-12 2021-12-07 Apple Inc. Variable frictional feedback device for a digital crown of an electronic watch
US11960701B2 (en) 2019-05-06 2024-04-16 Apple Inc. Using an illustration to show the passing of time
US10878782B1 (en) 2019-09-09 2020-12-29 Apple Inc. Techniques for managing display usage
DK181103B1 (en) 2020-05-11 2022-12-15 Apple Inc User interfaces related to time
US11921998B2 (en) 2020-05-11 2024-03-05 Apple Inc. Editing features of an avatar
CN115552375A (en) 2020-05-11 2022-12-30 苹果公司 User interface for managing user interface sharing
JP7100224B2 (en) * 2020-05-11 2022-07-13 アップル インコーポレイテッド Time-related user interface
US11550268B2 (en) 2020-06-02 2023-01-10 Apple Inc. Switch module for electronic crown assembly
US11694590B2 (en) 2020-12-21 2023-07-04 Apple Inc. Dynamic user interface with time indicator
US11720239B2 (en) 2021-01-07 2023-08-08 Apple Inc. Techniques for user interfaces related to an event
US11921992B2 (en) 2021-05-14 2024-03-05 Apple Inc. User interfaces related to time
US11776190B2 (en) 2021-06-04 2023-10-03 Apple Inc. Techniques for managing an avatar on a lock screen

Family Cites Families (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530455A (en) * 1994-08-10 1996-06-25 Mouse Systems Corporation Roller mouse for implementing scrolling in windows applications
US6047301A (en) * 1996-05-24 2000-04-04 International Business Machines Corporation Wearable computer
US6266098B1 (en) * 1997-10-22 2001-07-24 Matsushita Electric Corporation Of America Function presentation and selection using a rotatable function menu
JP3673425B2 (en) * 1999-04-16 2005-07-20 松下電器産業株式会社 Program selection execution device and data selection execution device
US7469381B2 (en) 2007-01-07 2008-12-23 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
EP1052566A1 (en) * 1999-05-14 2000-11-15 Alcatel Graphical user interface
US6661438B1 (en) * 2000-01-18 2003-12-09 Seiko Epson Corporation Display apparatus and portable information processing apparatus
US6522347B1 (en) 2000-01-18 2003-02-18 Seiko Epson Corporation Display apparatus, portable information processing apparatus, information recording medium, and electronic apparatus
US6809724B1 (en) * 2000-01-18 2004-10-26 Seiko Epson Corporation Display apparatus and portable information processing apparatus
US7081905B1 (en) * 2000-06-30 2006-07-25 International Business Machines Corporation Method and apparatus for dynamically controlling scroller speed employed for a user interface of a wearable appliance
US6556222B1 (en) * 2000-06-30 2003-04-29 International Business Machines Corporation Bezel based input mechanism and user interface for a smart watch
JP2002175139A (en) * 2000-12-07 2002-06-21 Sony Corp Information processor, menu display method and program storage medium
JP3762243B2 (en) * 2001-03-26 2006-04-05 陣山 俊一 Information processing method, information processing program, and portable information terminal device
US7312785B2 (en) * 2001-10-22 2007-12-25 Apple Inc. Method and apparatus for accelerated scrolling
JP2003248544A (en) * 2002-02-25 2003-09-05 Sony Corp Graphical user interface, method for operating information processor, the information processor, and program
WO2003075146A1 (en) * 2002-03-05 2003-09-12 Sony Ericsson Mobile Communications Japan, Inc. Image processing device, image processing program, and image processing method
JP3761165B2 (en) * 2002-05-13 2006-03-29 株式会社モバイルコンピューティングテクノロジーズ Display control device, portable information terminal device, program, and display control method
JP2004021522A (en) * 2002-06-14 2004-01-22 Sony Corp Apparatus, method, and program for information processing
JP2004070654A (en) * 2002-08-06 2004-03-04 Matsushita Electric Ind Co Ltd Portable electronic equipment
JP2004184396A (en) * 2002-10-09 2004-07-02 Seiko Epson Corp Display device, clock, method for controlling display device, control program, and recording medium
JP2004178584A (en) 2002-11-26 2004-06-24 Asulab Sa Input method of security code by touch screen for accessing function, device or specific place, and device for executing the method
US20040130581A1 (en) * 2003-01-03 2004-07-08 Microsoft Corporation Interaction model
JP2004259063A (en) * 2003-02-26 2004-09-16 Sony Corp Device and method for display processing for three dimensional object and computer program
US8046705B2 (en) * 2003-05-08 2011-10-25 Hillcrest Laboratories, Inc. Systems and methods for resolution consistent semantic zooming
US20040264301A1 (en) * 2003-06-30 2004-12-30 Microsoft Corporation Calendar user interface
ES2767875T3 (en) * 2003-12-01 2020-06-18 Blackberry Ltd Method to provide notifications of new events on a small screen device
US7454713B2 (en) * 2003-12-01 2008-11-18 Sony Ericsson Mobile Communications Ab Apparatus, methods and computer program products providing menu expansion and organization functions
US8082382B2 (en) * 2004-06-04 2011-12-20 Micron Technology, Inc. Memory device with user configurable density/performance
US7778671B2 (en) * 2004-10-08 2010-08-17 Nokia Corporation Mobile communications terminal having an improved user interface and method therefor
JP2006140990A (en) * 2004-10-13 2006-06-01 Olympus Corp Image display apparatus, camera, display methods of image display apparatus and camera
KR100630154B1 (en) * 2005-08-31 2006-10-02 삼성전자주식회사 Method for controlling display according to declension degree using a terrestrial magnetism sensor and the mobile terminal thereof
US20070063995A1 (en) * 2005-09-22 2007-03-22 Bailey Eric A Graphical user interface for use with a multi-media system
JP2007170995A (en) * 2005-12-22 2007-07-05 Casio Comput Co Ltd Electronic equipment and electronic timepiece
KR100678963B1 (en) * 2005-12-28 2007-02-06 삼성전자주식회사 Portable device and operation method comprising input button to enable revolution
KR100754674B1 (en) * 2006-03-10 2007-09-03 삼성전자주식회사 Method and apparatus for selecting menu in portable terminal
KR100896055B1 (en) * 2007-01-15 2009-05-07 엘지전자 주식회사 Mobile terminal having a rotating input device and display method thereof
KR20080073868A (en) * 2007-02-07 2008-08-12 엘지전자 주식회사 Terminal and method for displaying menu
TW200734916A (en) * 2007-05-03 2007-09-16 Ying-Chu Lee Method of using mouse wheel to operate picture
CN101821702A (en) * 2007-10-12 2010-09-01 法国电信公司 Device for displaying plurality of multimedia documents
JP4462338B2 (en) * 2007-11-27 2010-05-12 セイコーエプソン株式会社 Electronic clock, electronic clock time correction method, electronic clock control program
JP5356713B2 (en) * 2008-03-28 2013-12-04 京セラ株式会社 Mobile phone
JP2009265793A (en) * 2008-04-23 2009-11-12 Sony Ericsson Mobilecommunications Japan Inc Display and operation device, operation device and program
KR101512041B1 (en) * 2008-07-01 2015-04-14 엘지전자 주식회사 Mobile terminal and control method thereof
KR101546774B1 (en) * 2008-07-29 2015-08-24 엘지전자 주식회사 Mobile terminal and operation control method thereof
KR101555055B1 (en) * 2008-10-10 2015-09-22 엘지전자 주식회사 Mobile terminal and display method thereof
US20110055752A1 (en) * 2009-06-04 2011-03-03 Rubinstein Jonathan J Method and Apparatus for Displaying and Auto-Correcting an Over-Scroll State on a Computing Device
JP5513071B2 (en) * 2009-10-26 2014-06-04 株式会社プロフィールド Information processing apparatus, information processing method, and program
CH701440A2 (en) * 2009-07-03 2011-01-14 Comme Le Temps Sa Wrist touch screen and method for displaying on a watch with touch screen.
KR101608764B1 (en) * 2009-07-14 2016-04-04 엘지전자 주식회사 Mobile terminal and method for controlling display thereof
KR101595384B1 (en) * 2009-07-20 2016-02-18 엘지전자 주식회사 Watch type mobile terminal
KR101649646B1 (en) * 2010-02-11 2016-08-19 엘지전자 주식회사 Portable terminal
US8930841B2 (en) * 2010-02-15 2015-01-06 Motorola Mobility Llc Methods and apparatus for a user interface configured to display event information
CH702862A1 (en) * 2010-03-30 2011-09-30 Comme Le Temps Sa Wristwatch electronic display.
US20110316888A1 (en) * 2010-06-28 2011-12-29 Invensense, Inc. Mobile device user interface combining input from motion sensors and other controls
JP5676952B2 (en) * 2010-07-26 2015-02-25 キヤノン株式会社 Display control apparatus, display control method, program, and storage medium
JP5745241B2 (en) * 2010-09-08 2015-07-08 任天堂株式会社 Information processing program, information processing apparatus, information processing system, and information processing method
US9104211B2 (en) * 2010-11-19 2015-08-11 Google Inc. Temperature controller with model-based time to target calculation and display
US9244606B2 (en) * 2010-12-20 2016-01-26 Apple Inc. Device, method, and graphical user interface for navigation of concurrently open software applications
KR101740439B1 (en) * 2010-12-23 2017-05-26 엘지전자 주식회사 Mobile terminal and method for controlling thereof
US9423951B2 (en) * 2010-12-31 2016-08-23 Microsoft Technology Licensing, Llc Content-based snap point
KR101785323B1 (en) * 2011-01-05 2017-10-17 삼성전자주식회사 Method and apparatus for providing a user interface in a portable terminal
TWI441051B (en) * 2011-01-25 2014-06-11 Compal Electronics Inc Electronic device and information display method thereof
US20120246678A1 (en) * 2011-03-24 2012-09-27 Tobe Barksdale Distance Dependent Scalable User Interface
JP2013003718A (en) * 2011-06-14 2013-01-07 Mitsubishi Electric Information Systems Corp Information processing device, scroll display method of information processing device, and scroll display program
EP2551784A1 (en) * 2011-07-28 2013-01-30 Roche Diagnostics GmbH Method of controlling the display of a dataset
US20130097566A1 (en) * 2011-10-17 2013-04-18 Carl Fredrik Alexander BERGLUND System and method for displaying items on electronic devices
JP6159078B2 (en) * 2011-11-28 2017-07-05 京セラ株式会社 Apparatus, method, and program
JP2013152693A (en) * 2011-12-27 2013-08-08 Nintendo Co Ltd Information processing program, information processing device, image display method, and image display system
US9007323B2 (en) * 2012-02-03 2015-04-14 Panasonic Intellectual Property Management Co., Ltd. Haptic feedback device, method for driving haptic feedback device, and drive program
JP2013164700A (en) * 2012-02-10 2013-08-22 Samsung Electronics Co Ltd Scroll method and scroll device for portable terminal
KR20130094054A (en) * 2012-02-15 2013-08-23 삼성전자주식회사 Apparatus and method for managing object in portable electronic device

Also Published As

Publication number Publication date
AU2021201748A1 (en) 2021-04-15
WO2015034960A1 (en) 2015-03-12
JP2019215891A (en) 2019-12-19
KR20210070395A (en) 2021-06-14
AU2023237127A1 (en) 2023-10-19
KR102111452B1 (en) 2020-05-15
KR20180041779A (en) 2018-04-24
AU2018200289A1 (en) 2018-02-01
JP2021177397A (en) 2021-11-11
KR102305362B1 (en) 2021-09-24
JP2016532212A (en) 2016-10-13
DK179231B1 (en) 2018-02-19
AU2014315325B2 (en) 2017-05-04
JP6547039B2 (en) 2019-07-17
JP2019194892A (en) 2019-11-07
JP6170250B2 (en) 2017-07-26
AU2019206101A1 (en) 2019-08-08
JP2018136983A (en) 2018-08-30
KR20180122752A (en) 2018-11-13
KR20160048967A (en) 2016-05-04
AU2014315325A1 (en) 2016-04-21
KR102143895B1 (en) 2020-08-12
JP6333387B2 (en) 2018-05-30
KR102045111B1 (en) 2019-11-14
JP2018142361A (en) 2018-09-13
AU2018200289B2 (en) 2019-08-01
AU2014315324A1 (en) 2016-04-28
JP7223081B2 (en) 2023-02-15
KR20160048972A (en) 2016-05-04
KR20200084906A (en) 2020-07-13
KR20200096999A (en) 2020-08-14
KR102072614B1 (en) 2020-02-03
AU2022235585A1 (en) 2022-10-13
AU2019257521A1 (en) 2019-11-28
JP2021182426A (en) 2021-11-25
WO2015034966A1 (en) 2015-03-12
JP2023126783A (en) 2023-09-12
AU2021212114B2 (en) 2023-07-20
AU2021201748B2 (en) 2022-07-07
AU2019206101B2 (en) 2020-12-24
JP2016534462A (en) 2016-11-04
KR20190114034A (en) 2019-10-08
AU2017276285A1 (en) 2018-01-18
JP6397918B2 (en) 2018-09-26
AU2021201748C1 (en) 2023-03-16
KR102029303B1 (en) 2019-10-07
JP6924802B2 (en) 2021-08-25
AU2014315319B2 (en) 2017-10-26
JP2016532973A (en) 2016-10-20
DK201670117A1 (en) 2016-03-21
JP6564493B2 (en) 2019-08-21
KR20190032627A (en) 2019-03-27
AU2017276285B2 (en) 2019-04-18
JP2023065397A (en) 2023-05-12
KR20210010661A (en) 2021-01-27
AU2021212114B9 (en) 2023-11-23
WO2015034965A1 (en) 2015-03-12
AU2014315319A1 (en) 2016-04-21
AU2014315324B2 (en) 2017-10-12
JP7128153B2 (en) 2022-08-30
KR102263620B1 (en) 2021-06-11
KR20180054897A (en) 2018-05-24
JP7471262B2 (en) 2024-04-19
KR102131228B1 (en) 2020-07-07
KR20160048955A (en) 2016-05-04

Similar Documents

Publication Publication Date Title
AU2021212114B2 (en) Crown input for a wearable electronic device
US10503388B2 (en) Crown input for a wearable electronic device
EP3039513B1 (en) Crown input for a wearable electronic device
US10691230B2 (en) Crown input for a wearable electronic device
US11829576B2 (en) User interface object manipulations in a user interface
US10275117B2 (en) User interface object manipulations in a user interface

Legal Events

Date Code Title Description
FGA Letters patent sealed or granted (standard patent)
SREP Specification republished