DEVICE, METHODS, AND GRAPHICAL USER INTERFACES FOR NAVIGATING, DISPLAYING, AND EDITING MEDIA ITEMS HAVING MULTIPLE DISPLAY MODES - Patent application
By optimizing user interface methods and interfaces in electronic devices, the complexity and inefficiency of navigation, display and editing of multi-display mode media items is solved, achieving a more efficient user experience and longer battery life.
Patent Information
- Application Number
- JP2024047073
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2017-12-18
- Filing Date
- 2024-03-22
- Publication Date
- 2025-04-28
- Estimated Expiration
- 2038-05-02
AI Technical Summary
When existing electronic devices navigate, display and edit media items in multiple display modes, users operate in complex, inefficient, and are unfavorable to battery life.
By implementing a faster and more efficient user interface method and interface in electronic devices, including detecting user input in a multi-user selectable display mode and optimizing image display and selection in the editing interface, reducing the number and type of user input.
Improves the user's navigation, display and editing efficiency in multi-display mode media items, reduces battery consumption, and extends the battery life of the device.
Smart Images

Figure 0007669554000001 
Figure 0007669554000002 
Figure 0007669554000003
Abstract
Description
[Technical field]
[0001] This application relates generally to electronic devices with touch-sensitive surfaces, including, but not limited to, electronic devices with touch-sensitive surfaces for navigating, displaying, and / or editing media items having multiple user-selectable display modes. [Background technology]
[0002] The use of electronic devices to capture, view, edit, and share digital content has increased significantly in recent years. Users frequently create media items (e.g., images and / or videos such as Live Photos from Apple Inc. of Cupertino, California) on their portable electronic devices (e.g., smartphones, tablets, and dedicated digital cameras), view and edit their media items within image management applications (e.g., Photos from Apple Inc. of Cupertino, California) and / or digital content management applications (e.g., iTunes from Apple Inc. of Cupertino, California), and share their digital content with others via instant messaging, email, social media applications, and other communication applications.
[0003] Some media items may be displayed in multiple different display modes, which can make it difficult for users to navigate, view, and edit such media items because the multiple display modes create multiple options for viewing and editing a given media item. Summary of the Invention
[0004] Thus, there is a need for electronic devices with faster, more efficient methods and interfaces for navigating, displaying, and editing media items having multiple display modes. Such methods and interfaces, optionally, complement or replace conventional methods for navigating, displaying, and editing media items having multiple display modes. Such methods and interfaces reduce the number, range, and / or type of inputs from a user, creating a more efficient human-machine interface. For battery-operated devices, such methods and interfaces conserve power and extend the time between battery charges.
[0005] The above deficiencies and other problems associated with user interfaces for electronic devices having touch-sensitive surfaces are reduced or eliminated by the devices of the present disclosure. In some embodiments, the device is a desktop computer. In some embodiments, the device is portable (e.g., a notebook computer, a tablet computer, or a handheld device). In some embodiments, the device is a personal electronic device (e.g., a wearable electronic device such as a watch). In some embodiments, the device has a touchpad. In some embodiments, the device has a touch-sensitive display (also known as a "touch screen" or "touch screen display"). In some embodiments, the device has a graphical user interface (GUI), one or more processors, memory, and one or more modules, programs, or sets of instructions stored in the memory for performing a number of functions. In some embodiments, a user interacts with the GUI primarily through stylus and / or finger contacts and gestures on the touch-sensitive surface. In some embodiments, the functionality optionally includes image editing, drawing, presenting, word processing, spreadsheet creation, game playing, making phone calls, video conferencing, emailing, instant messaging, training support, digital photography, digital videography, web browsing, digital music playback, note taking, and / or digital video playback, and executable instructions to perform those functionality are optionally contained on a non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.
[0006] According to some embodiments, a method is performed in an electronic device having a display and a touch-sensitive surface, the method including: displaying, in a first user interface on the display, one or more images from a media item corresponding to the sequence of images in a corresponding display mode that is one of a plurality of user-selectable display modes of the media item corresponding to the sequence of images; detecting a first input while displaying the one or more images from the media item in the corresponding display mode; and in response to detecting the first input, displaying, on the display, an editing user interface for the corresponding display mode, the editing user interface for the corresponding display mode configured to change which images are included in the media item when the media item is displayed in the corresponding display mode, the editing user interface for the corresponding display mode displaying the images in the sequence of images. displaying an editing user interface that displays in parallel a first region configured to display an image in the sequence of images, a second region separate from the first region including a representation of the image in the sequence of images, a user-adjustable start trim affordance indicating a first boundary for playing through the sequence of images, and a user-adjustable end trim affordance indicating a second boundary for playing through the sequence of images; adjusting the media item according to one or more editing inputs while displaying the editing user interface for the corresponding display mode; detecting an input to exit the editing user interface for the corresponding display mode; exiting the editing user interface for the corresponding display mode; and displaying the media item edited in the corresponding display mode in the first user interface.
[0007] According to some embodiments, a method is performed in an electronic device having a display and a touch-sensitive surface, the method including: displaying, in a first user interface on the display, one or more images from a media item corresponding to the sequence of images in a first display mode that is one of a plurality of user-selectable display modes of the media item corresponding to the sequence of images; detecting a first input while displaying the one or more images from the media item in the first display mode; in response to detecting the first input, displaying, on the display, a display mode selection user interface that displays multiple representations of the media item in parallel, including a second representation of the media item corresponding to a second display mode different from the first display mode; detecting an input on a second representation of the multiple representations of the media item while displaying the display mode selection user interface on the display; and in response to detecting the input on the second representation of the multiple representations of the media item, selecting a second display mode of the multiple user-selectable display modes of the media item that corresponds to the second representation of the multiple representations of the media item.
[0008] According to some embodiments, a method is performed in an electronic device having a display and a touch-sensitive surface. The method includes displaying in a first user interface on the display representations of media items corresponding to a sequence of images, the media items including a representative image from the sequence of images in a first display mode, detecting a first input while displaying the representations of the media items corresponding to the sequence of images in the first display mode, and in response to detecting the first input, displaying in the first display mode an editing user interface for the media items, the editing user interface having a first region configured to sequentially display images in the sequence of images at a first magnification, representations of the images in the sequence of images at a second magnification less than the first magnification, a user-adjustable representative image selection affordance configured to select a new representative image in the sequence of images via a position of the representative image selection affordance in the second region, and a representation of the media items corresponding to the sequence of images in a first display mode. the first region including a first range trim affordance and a second region separate from the first region including a plurality of range trim affordances, the second region including a first range trim affordance and a second range trim affordance including a user-adjustable start trim affordance indicating a first boundary for playing through the series of images and a user-adjustable end trim affordance indicating a second boundary for playing through the series of images; detecting a second input directed at the representative image selection affordance while displaying the editing user interface; moving the representative image selection affordance in the second region according to the second input while detecting the second input directed at the representative image selection affordance; displaying a visually enhanced representation of an image in the second region corresponding to a current position of the representative image selection affordance in the second region; and displaying in the first region an image from the series of images corresponding to the current position of the representative image selection affordance in the second region.
[0009] According to some embodiments, a method is performed in an electronic device having a display and a touch-sensitive surface. The method includes displaying, in a first user interface on the display, a representation of a first media item corresponding to a sequence of images in a first display mode of a plurality of user-selectable display modes, the first media item being part of a collection of media items arranged in an order based on a predetermined criterion, with one or more leading media items preceding the first media item in the order and one or more trailing media items following the first media item in the order; detecting, while displaying the representation of the first media item, a touch input comprising movement in a corresponding direction on the touch-sensitive surface; and, in response to detecting the touch input, selecting a first media item from the sequence of images in a first display mode of a plurality of user-selectable display modes, the first media item being part of a collection of media items arranged in an order based on a predetermined criterion, with one or more leading media items preceding the first media item in the order and one or more trailing media items following the first media item in the order; detecting, while displaying the representation of the first media item, a touch input comprising a movement in a corresponding direction on the touch-sensitive surface; displaying the rear media item in the first display mode, including displaying content from the plurality of images in the second series of images in a manner determined based on the first display mode in accordance with a determination that the movement is in the first direction and the rear media item corresponding to the second series of images is specified to be displayed in the first display mode; and displaying the rear media item in the second display mode, including displaying content from the plurality of images in the second series of images in a manner determined based on the second display mode in accordance with a determination that the movement is in the first direction and the rear media item is specified to be displayed in a second display mode different from the first display mode.
[0010] According to some embodiments, a method is performed in an electronic device having a display and a touch-sensitive surface. The method includes displaying, in a first user interface on the display, a first representation of a first media item corresponding to a sequence of images in a corresponding display mode of a plurality of user-selectable display modes, detecting a touch input on the touch-sensitive surface at a location corresponding to the representation of the first media item while displaying, on the display, the first representation of the first media item in the corresponding display mode, in response to detecting the touch input and while the touch input continues to be detected on the touch-sensitive surface at the location corresponding to the representation of the first media item, replacing the display of the first representation of the media item with a static representation of the first media item that does not change over time, the static representation of the first media item that does not change over time, and in accordance with a determination that the touch input does not satisfy the representation change criterion.
[0011] According to some embodiments, an electronic device includes a display, a touch-sensitive surface, optionally one or more sensors that detect intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators, one or more processors, and a memory having stored thereon one or more programs, the one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to perform or cause to be performed any of the operations of the methods described herein. According to some embodiments, a computer-readable storage medium has stored therein instructions that, when executed by an electronic device having a display, a touch-sensitive surface, optionally one or more sensors that detect intensity of contact with the touch-sensitive surface, and optionally one or more tactile output generators, cause the device to perform or cause to be performed any of the operations of the methods described herein. According to some embodiments, a graphical user interface on an electronic device having a display, a touch-sensitive surface, optionally one or more sensors that detect the intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators, a memory, and one or more processors executing one or more programs stored in the memory includes one or more of the elements displayed in any of the methods described herein, and the elements are updated in response to input as described in any of the methods described herein. According to some embodiments, the electronic device includes a display, a touch-sensitive surface, optionally one or more sensors that detect the intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators, and means for performing or causing to be performed any of the operations of the methods described herein. According to some embodiments, an information processing apparatus for use in an electronic device having a display, a touch-sensitive surface, optionally one or more sensors that detect the intensity of contact with the touch-sensitive surface, optionally one or more tactile output generators includes means for performing or causing to be performed any of the operations of the methods described herein.
[0012] Thus, electronic devices having a display, a touch-sensitive surface, optionally one or more sensors that detect the intensity of contact with the touch-sensitive surface, and optionally one or more tactile output generators are provided with improved methods and interfaces for navigating, displaying, and editing media items having multiple display modes, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces may complement or replace conventional methods for navigating, displaying, and editing media items having multiple display modes. [Brief description of the drawings]
[0013] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout:
[0014] [Figure 1A] 1 is a block diagram illustrating a portable multifunction device having a touch-sensitive display in accordance with some embodiments.
[0015] [Figure 1B] FIG. 2 is a block diagram illustrating example components for event processing according to some embodiments.
[0016] [Diagram 2] 1 illustrates a portable multifunction device with a touch screen in accordance with some embodiments.
[0017] [Diagram 3] 1 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface in accordance with some embodiments.
[0018] [Figure 4A] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments.
[0019] [Figure 4B] 1 illustrates an exemplary user interface for a multifunction device having a touch-sensitive surface separate from a display in accordance with some embodiments.
[0020] [Figure 4C] 1 illustrates an example of a dynamic intensity threshold according to some embodiments. [Figure 4D] 1 illustrates an example of a dynamic intensity threshold according to some embodiments. [Figure 4E] 1 illustrates an example of a dynamic intensity threshold according to some embodiments.
[0021] [Figure 5A] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5B] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5C] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5D] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5E] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5F] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5G]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5H] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5I] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5J] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5K] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5L] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5M] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5N] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5O] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5P] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5Q]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5R] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5S] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5T] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5U] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5V] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5W] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5X] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5Y] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5Z] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AA]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AB] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AC] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AD] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AE] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AF] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5A-G] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AH] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AI] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AJ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AK]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AL] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AM] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AN] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AO] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AP] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AQ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AR] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AS] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AT] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AU]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AV] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AW] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AX] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AY] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5AZ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BA] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BB] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BC] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BD] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BE]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BF] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BG] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BH] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BI] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BJ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BK] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BL] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BM] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BN] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BO]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BP] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BQ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BR] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BS] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BT] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BU] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BV] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BW] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BX] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BY]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5BZ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CA] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CB] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CC] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5C-D] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CE] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CF] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CG] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CH] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CI]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CJ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CK] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CL] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CM] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CN] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CO] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CP] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CQ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CR] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CS]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Fig. 5CT] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CU] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CV] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CW] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CX] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CY] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5CZ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DA] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DB] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DC]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DD] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DE] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DF] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DG] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DH] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DI] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DJ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DK] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DL] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DM]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DN] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DO] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DP] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DQ] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DR] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DS] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DT] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DU] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DV] 1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments. [Figure 5DW]1 illustrates an exemplary user interface for navigating, viewing, and editing media items having multiple display modes according to some embodiments.
[0022] [Figure 6A] 1 is a flow diagram of a method for editing a media item having multiple display modes according to some embodiments. [Figure 6B] 1 is a flow diagram of a method for editing a media item having multiple display modes according to some embodiments. [Figure 6C] 1 is a flow diagram of a method for editing a media item having multiple display modes according to some embodiments. [Figure 6D] 1 is a flow diagram of a method for editing a media item having multiple display modes according to some embodiments. [Figure 6E] 1 is a flow diagram of a method for editing a media item having multiple display modes according to some embodiments. [Figure 6F] 1 is a flow diagram of a method for editing a media item having multiple display modes according to some embodiments.
[0023] [Figure 7A] 1 is a flow diagram of a method for navigating and selecting a display mode for a media item having multiple display modes, according to some embodiments. [Figure 7B] 1 is a flow diagram of a method for navigating and selecting a display mode for a media item having multiple display modes, according to some embodiments. [Figure 7C] 1 is a flow diagram of a method for navigating and selecting a display mode for a media item having multiple display modes, according to some embodiments. [Figure 7D] 1 is a flow diagram of a method for navigating and selecting a display mode for a media item having multiple display modes, according to some embodiments.
[0024] [Figure 8A] 1 is a flow diagram of a method for changing a representative image for a media item corresponding to a sequence of images according to some embodiments. [Figure 8B] 1 is a flow diagram of a method for changing a representative image for a media item corresponding to a sequence of images according to some embodiments. [Figure 8C] 1 is a flow diagram of a method for changing a representative image for a media item corresponding to a sequence of images according to some embodiments. [Figure 8D] 1 is a flow diagram of a method for changing a representative image for a media item corresponding to a sequence of images according to some embodiments. [Figure 8E] 1 is a flow diagram of a method for changing a representative image for a media item corresponding to a sequence of images according to some embodiments. [Figure 8F] 1 is a flow diagram of a method for changing a representative image for a media item corresponding to a sequence of images according to some embodiments.
[0025] [Figure 9A] 1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. [Figure 9B] 1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. [Figure 9C] 1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. [Figure 9D]1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. [Figure 9E] 1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. [Figure 9F] 1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. [Figure 9G] 1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. [Figure 9H] 1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. [Figure 9I] 1 is a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments.
[0026] [Figure 10A] 1 is a flow diagram of a method for illustrating a correspondence between a dynamic representation of a media item and a static representation of the media item, where the media item has multiple user-selectable display modes, according to some embodiments. [Figure 10B] 1 is a flow diagram of a method for illustrating a correspondence between a dynamic representation of a media item and a static representation of the media item, where the media item has multiple user-selectable display modes, according to some embodiments. [Figure 10C]1 is a flow diagram of a method for illustrating a correspondence between a dynamic representation of a media item and a static representation of the media item, where the media item has multiple user-selectable display modes, according to some embodiments. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0027] A number of different techniques are described herein for navigating, displaying, and / or editing media items having multiple user-selectable display modes. Using one or more of these techniques (optionally in conjunction with one another) reduces the number, range, and / or type of inputs from the user and provides a more efficient human-machine interface. This allows users to interact faster and more efficiently with media items having multiple display modes. For battery-operated devices, these improvements conserve power and increase the time between battery charges. Some of the techniques described herein include the following: Editing media items with multiple display modes; Navigating and selecting a display mode for a media item having multiple display modes; Changing the representative image for a media item corresponding to a sequence of images; Navigating through a collection of media items, the media items having multiple user-selectable display modes; and Showing a correspondence between dynamic representations of a media item and static representations of a media item, where the media item has multiple user-selectable display modes.
[0028] In the following, Figures 1A, 1B, 2, and 3 provide a description of an exemplary device. Figures 4A-4B and 5A-5DW show exemplary user interfaces for navigating, displaying, and editing media items having multiple display modes. Figures 6A-6F show a flow diagram of a method for editing media items having multiple display modes, according to some embodiments. Figures 7A-7D show a flow diagram of a method for navigating and selecting a display mode for a media item having multiple display modes. Figures 8A-8F show a flow diagram of a method for changing a representative image for a media item corresponding to a sequence of images. Figures 9A-9I show a flow diagram of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes. Figures 10A-10C show a flow diagram of a method for showing a correspondence between a dynamic representation of a media item and a static representation of the media item, where the media items have multiple user-selectable display modes. The user interfaces of FIGS. 5A-5DW are used to illustrate the processes of FIGS. 6A-6F, 7A-7D, 8A-8F, 9A-9I, and 10A-10C. Exemplary Devices
[0029] Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments being described. However, it will be apparent to those skilled in the art that the various embodiments described may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.
[0030] In this specification, terms such as first, second, etc. are used in some examples to describe various elements, but it will be understood that these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first contact can be referred to as a second contact, and similarly, a second contact can be referred to as a first contact, without departing from the scope of the various embodiments described. Although a first contact and a second contact are both contacts, they are not the same contact unless the context clearly indicates otherwise.
[0031] The terminology used in the description of the various embodiments described herein is for the purpose of describing particular embodiments only and is not intended to be limiting. In the description of the various embodiments described and in the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It should also be understood that as used herein, the term "and / or" refers to and includes any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "includes," "including," "comprises," and / or "comprising," as used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0032] As used herein, the term "if" is optionally interpreted to mean "when," "upon," "in response to determining," or "in response to detecting," depending on the context. Similarly, the phrases "if it is determined" or "if [a stated condition or event] is detected" are optionally interpreted to mean "upon determining" or "in response to determining," or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]," depending on the context.
[0033] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Other portable electronic devices, such as laptops or tablet computers having a touch-sensitive surface (e.g., a touchscreen display and / or a touchpad), are optionally used. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer having a touch-sensitive surface (e.g., a touchscreen display and / or a touchpad).
[0034] In the following discussion, electronic devices are described that include a display and a touch-sensitive surface, however, it should be understood that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse, and / or a joystick.
[0035] The device typically supports a variety of applications, such as one or more of note-taking applications, drawing applications, presentation applications, word processing applications, website creation applications, disc authoring applications, spreadsheet applications, gaming applications, telephony applications, video conferencing applications, email applications, instant messaging applications, training support applications, photo management applications, digital camera applications, digital video camera applications, web browsing applications, digital music player applications, and / or digital video player applications.
[0036] The various applications running on the device optionally use at least one common physical user-interface device, such as a touch-sensitive surface. One or more features of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or changed for each application and / or within each application. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports a variety of applications with user interfaces that are intuitive and easy to understand for the user.
[0037] Attention is now directed to embodiments of portable devices with touch-sensitive displays. FIG. 1A is a block diagram illustrating a portable multifunction device 100 having a touch-sensitive display system 112, according to some embodiments. Touch-sensitive display system 112 may be conveniently referred to as a "touch screen" or simply a touch-sensitive display. Device 100 includes memory 102 (optionally including one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input / output (I / O) subsystem 106, other input or control devices 116, and external port 124. Device 100 optionally includes one or more light sensors 164. Device 100 optionally includes one or more intensity sensors 165 that detect the intensity of a contact on device 100 (e.g., a touch-sensitive surface, such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 that generate tactile output on device 100 (e.g., generate tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate over one or more communication buses or signal lines 103.
[0038] As used herein and in the claims, the term "tactile output" is a physical displacement of a device relative to a previous position of the device, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device that will be detected by a user with the user's sense of touch. For example, in a situation where a device or a component of a device is in contact with a touch-sensitive user's surface (e.g., the fingers, palm, or other part of the user's hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in a physical property of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a "down-click" or "up-click" of a physical actuator button. In some cases, the user feels a tactile sensation such as a "down-click" or "up-click" even when no movement of a physical actuator button associated with the touch-sensitive surface is physically pressed (e.g., displaced) by the user's action. As another example, movement of a touch-sensitive surface is optionally interpreted or sensed by a user as "roughness" of the touch-sensitive surface, even when there is no change in the smoothness of the touch-sensitive surface. Such user interpretation of touch depends on the user's personal sensory perception, but there are many sensory perceptions of touch that are common to a majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., an "up click," a "down click," "roughness"), unless otherwise noted, the generated tactile output corresponds to a physical displacement of the device, or a component of the device, that produces the described sensory perception for a typical (or average) user.Using tactile output to provide haptic feedback to the user can improve usability of the device and make the user-device interface more efficient (e.g., by helping the user provide appropriate inputs when operating / interacting with the device and reducing user errors), as well as reducing power usage and improving the battery life of the device by allowing the user to use the device more quickly and efficiently.
[0039] In some embodiments, the tactile output pattern specifies characteristics of the tactile output, such as the amplitude of the tactile output, the shape of the movement waveform of the tactile output, the frequency of the tactile output, and / or the duration of the tactile output.
[0040] When tactile outputs having different tactile output patterns are generated by the device (e.g., via one or more tactile output generators that move a movable mass to generate the tactile output), the tactile outputs may cause different tactile sensations when a user holds or touches the device. When the user's sensations are based on the user's perception of the tactile output, most users are able to identify changes in the waveform, frequency, and amplitude of the tactile output generated by the device. Thus, the waveform, frequency, and amplitude can be adjusted to indicate to the user that different actions have been performed. Thus, in some situations, tactile output having a tactile output pattern designed, selected, and / or developed to simulate the properties (e.g., size, material, weight, stiffness, smoothness, etc.), behaviors (e.g., vibration, displacement, acceleration, rotation, expansion, etc.), and / or interactions (e.g., collision, adhesion, repulsion, attraction, friction, etc.) of objects in a given environment (e.g., a user interface including graphical features and objects, a simulated physical environment having virtual boundaries and virtual objects, an actual physical environment having physical boundaries and physical objects, and / or any combination of the above) provides a user with useful feedback that reduces input errors and increases the efficiency of a user's operation of the device. In addition, the tactile output is optionally generated to correspond to feedback unrelated to simulated physical properties, such as input thresholds or object selection. In some situations, such tactile output provides a user with useful feedback that reduces input errors and increases the efficiency of a user's operation of the device.
[0041] In some embodiments, a tactile output with a suitable tactile output pattern serves as a cue to the appearance of an event of interest behind the scene in a user interface or device. Examples of events of interest include activation of an affordance (e.g., a real button, a virtual button, or a toggle switch) provided on the device or in the user interface, success or failure of a requested action, reaching or crossing a boundary in the user interface, entering a new state, switching input focus between objects, activating a new mode, reaching or crossing an input threshold, detection or recognition of a type of input or gesture, etc. In some embodiments, a tactile output is provided to serve as a warning or alert to an impending event or outcome that will occur unless a redirection or interrupt input is detected in a timely manner. Tactile output is also used in other contexts to improve the user experience, improve the accessibility of the device to users with visual or motor impairments or other accessibility needs, and / or improve the efficiency and functionality of the user interface and / or device. The tactile output, optionally accompanied by audio output and / or visible user interface changes, further enhances the user's experience when interacting with the user interface and / or device, facilitates better communication of information about the state of the user interface and / or device, reduces input errors, and increases the efficiency of the user's operation of the device.
[0042] It is understood that device 100 is only one example of a portable multifunction device, and that device 100 optionally has more or fewer components than those shown, optionally combines two or more components, or optionally has a different configuration or arrangement of those components. The various components shown in FIG. 1A are implemented in hardware, software, firmware, or a combination thereof, including one or more signal processing circuits and / or application specific integrated circuits.
[0043] Memory 102 optionally includes high-speed random access memory, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Access to memory 102 by other components of device 100, such as CPU(s) 120 and peripherals interface 118, is optionally controlled by memory controller 122.
[0044] A peripheral interface 118 may be used to couple input and output peripherals of the device to the CPU(s) 120 and memory 102. The one or more processors 120 operate or execute various software programs and / or instruction sets stored in the memory 102 to perform various functions and process data for the device 100.
[0045] In some embodiments, peripherals interface 118, CPU(s) 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0046] The radio frequency (RF) circuitry 108 transmits and receives RF signals, also referred to as electromagnetic signals. The RF circuitry 108 converts electrical signals to electromagnetic signals or electromagnetic signals to electrical signals and communicates with communication networks and other communication devices via electromagnetic signals. The RF circuitry 108 optionally includes well-known circuits for performing these functions, including, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, etc. The RF circuitry 108 optionally communicates with networks, such as the Internet, also referred to as the World Wide Web (WWW), an intranet, and / or wireless networks, such as cellular telephone networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs), and with other devices, by wireless communication.The wireless communication optionally includes any of the following wireless technologies: Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual Cell HSPA (DC-HSPADA), Long Term Evolution (LTE), Near Field Communication (NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11b, IEEE 802.11g, and / or IEEE 802.11n), Voice over Internet Protocol (VoIP), Wi-MAX, protocols for email (e.g., Internet Message Access Protocol (IMAP) and / or Post Office Protocol (POP)), instant messaging (e.g., Extensible Messaging and Presence Protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Extensions (SIMPLE), Instant Messaging and Presence Service (IMPS)), and / or Short Message Service (SMS), or any other suitable communications protocol, including communications protocols not yet developed as of the filing date of this document.
[0047] The audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and the device 100. The audio circuit 110 receives audio data from the peripherals interface 118, converts the audio data into an electrical signal, and transmits the electrical signal to the speaker 111. The speaker 111 converts the electrical signal into sound waves audible to humans. The audio circuit 110 also receives the electrical signal converted from the sound waves by the microphone 113. The audio circuit 110 converts the electrical signal into audio data, and transmits the audio data to the peripherals interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to the memory 102 and / or the RF circuit 108 by the peripherals interface 118. In some embodiments, the audio circuit 110 also includes a headset jack (e.g., 212, FIG. 2). The headset jack provides an interface between audio circuitry 110 and a detachable audio input / output peripheral such as an output-only headphone or a headset that has both an output (e.g., one-ear or binaural headphones) and an input (e.g., a microphone).
[0048] I / O subsystem 106 couples input / output peripherals on device 100, such as touch-sensitive display system 112 and other input or control devices 116, with peripheral interface 118. I / O subsystem 106 optionally includes one or more input controllers 160 for display controller 156, light sensor controller 158, intensity sensor controller 159, haptic feedback controller 161, and other input or control devices. One or more input controllers 160 receive electrical signals from and send electrical signals to other input or control devices 116. Other input or control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some alternative embodiments, input controller(s) 160 are optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, a stylus, and / or a pointer device such as a mouse. The one or more buttons (e.g., 208, FIG. 2) optionally include up / down buttons for volume control of the speaker 111 and / or microphone 113. The one or more buttons optionally include a push button (e.g., 206, FIG. 2).
[0049] Touch-sensitive display system 112 provides an input and output interface between the device and a user. Display controller 156 receives electrical signals from and / or transmits electrical signals to touch-sensitive display system 112. Touch-sensitive display system 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively "graphics"). In some embodiments, some or all of the visual output corresponds to a user interface object. As used herein, the term "affordance" is a user-interactive graphical user interface object (e.g., a graphical user interface object configured to respond to input directed towards the graphical user interface object). Examples of user-interactive graphical user interface objects include, but are not limited to, a button, a slider, an icon, a selectable menu item, a switch, a hyperlink, or other user interface control.
[0050] Touch-sensitive display system 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on haptic and / or tactile contact. Touch-sensitive display system 112 and display controller 156 (along with any associated modules and / or instruction sets in memory 102) detect contacts (and any movement or breaking of contact) on touch-sensitive display system 112 and translate the detected contacts into interactions with user interface objects (e.g., one or more soft keys, icons, web pages, or images) displayed on touch-sensitive display system 112. In some embodiments, the point of contact between touch-sensitive display system 112 and the user corresponds to the user's finger or stylus.
[0051] Touch-sensitive display system 112 optionally uses liquid crystal display (LCD), light emitting polymer display (LPD), or light emitting diode (LED) technology, although other display technologies are used in other embodiments. Touch-sensitive display system 112 and display controller 156 optionally detect contact and any movement or disruption thereof using any of a number of now known or later developed touch sensing technologies, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with touch-sensitive display system 112. In some embodiments, projected mutual capacitance sensing technology is used, such as that found in the iPhone®, iPod Touch®, and iPad® from Apple Inc. of Cupertino, California.
[0052] Touch-sensitive display system 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen video resolution exceeds 400 dpi (e.g., 500 dpi, 800 dpi, or higher). A user optionally contacts touch-sensitive display system 112 using any suitable object or accessory, such as a stylus, finger, or the like. In some embodiments, the user interface is designed to work with finger-based contacts and gestures, which may be less precise than stylus-based input due to the larger area of finger contacts on the touchscreen. In some embodiments, the device translates the coarse finger-based input into precise pointer / cursor positions or commands to perform the actions desired by the user.
[0053] In some embodiments, in addition to the touchscreen, device 100 optionally includes a touchpad (not shown) for activating or deactivating certain functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touchscreen, does not display visual output. The touchpad is optionally a touch-sensitive surface separate from touch-sensitive display system 112 or an extension of the touch-sensitive surface formed by the touchscreen.
[0054] Device 100 also includes a power system 162 that provides power to the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, power failure detection circuitry, power converters or inverters, power status indicators (e.g., light emitting diodes (LEDs)), and any other components associated with the generation, management, and distribution of power within a portable device.
[0055] Device 100 also optionally includes one or more light sensors 164. FIG. 1A shows a light sensor coupled to light sensor controller 158 in I / O subsystem 106. Light sensor(s) 164 optionally include a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Light sensor(s) 164 receive light from the environment, projected through one or more lenses, and convert the light into data representing an image. In conjunction with imaging module 143 (also referred to as a camera module), light sensor(s) 164 optionally captures still images and / or video. In some embodiments, the light sensor is located on the back of device 100, opposite touch-sensitive display system 112 on the front of the device, so that the touch screen can be used as a viewfinder for still and / or video image acquisition. In some embodiments, another light sensor is placed on the front of the device so that an image of the user is captured (e.g., for a selfie, for a video conference while the user views other video conference participants on the touch screen, etc.).
[0056] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows a contact intensity sensor coupled to intensity sensor controller 159 in I / O subsystem 106. Contact intensity sensor(s) 165 optionally include one or more piezoresistive strain gauges, capacitive force sensors, electrical force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensor(s) 165 receive contact intensity information (e.g., pressure information or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is juxtaposed with or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the back of device 100, opposite touchscreen display system 112, which is located on the front of device 100.
[0057] Device 100 also optionally includes one or more proximity sensors 166. Figure 1A shows proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 is coupled to input controller 160 in I / O subsystem 106. In some embodiments, the proximity sensor turns off and disables touch-sensitive display system 112 when the multifunction device is placed near a user's ear (e.g., when the user is conducting a phone call).
[0058] Device 100 also optionally includes one or more tactile output generators 167. FIG. 1A shows a tactile output generator coupled to haptic feedback controller 161 in I / O subsystem 106. In some embodiments, tactile output generator(s) 167 include one or more electroacoustic devices, such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating components (e.g., components that convert electrical signals into tactile output on the device). Tactile output generator(s) 167 receive tactile feedback generation instructions from haptic feedback module 133 and generate tactile outputs on device 100 that can be sensed by a user of device 100. In some embodiments, at least one tactile output generator is disposed on or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112) and generates a tactile output, optionally by moving the touch-sensitive surface vertically (e.g., in / out of the surface of device 100) or horizontally (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is disposed on the back of device 100, opposite touch-sensitive display system 112, which is located on the front of device 100.
[0059] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows accelerometer 168 coupled to peripherals interface 118. Alternatively, accelerometer 168 is optionally coupled to input controller 160 in I / O subsystem 106. In some embodiments, information is displayed on the touch screen display in a portrait or landscape view based on analysis of data received from the one or more accelerometers. In addition to accelerometer(s) 168, device 100 optionally includes a magnetometer (not shown) and a GPS (or GLONASS or other global navigation system) receiver (not shown) for obtaining information regarding the location and orientation (e.g., portrait or landscape) of device 100.
[0060] In some embodiments, the software components stored in memory 102 include an operating system 126, a communications module (or instruction set) 128, a contact / motion module (or instruction set) 130, a graphics module (or instruction set) 132, a haptic feedback module (or instruction set) 133, a text input module (or instruction set) 134, a Global Positioning System (GPS) module (or instruction set) 135, and applications (or instruction set) 136. Additionally, in some embodiments, as shown in Figures 1A and 3, memory 102 stores device / global internal state 157. Device / global internal state 157 includes one or more of: active application state, which indicates which applications, if any, are currently active; display state, which indicates what applications, views, or other information are occupying various areas of touch-sensitive display system 112; sensor state, which includes information obtained from the device's various sensors and other input or control devices 116; and position and / or location information regarding the device's position and / or orientation.
[0061] Operating system 126 (e.g., an embedded operating system such as iOS, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or VxWorks) includes various software components and / or drivers for controlling and managing overall system tasks (e.g., memory management, storage device control, power management, etc.) and facilitating communication between various hardware and software components.
[0062] The communications module 128 also includes various software components for facilitating communication with other devices via one or more external ports 124 and for processing data received by the RF circuitry 108 and / or the external ports 124. The external ports 124 (e.g., Universal Serial Bus (USB), FIREWIRE®, etc.) are adapted to couple to other devices directly or indirectly via a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external ports are multi-pin (e.g., 30-pin) connectors identical to, similar to, and / or compatible with the 30-pin connectors used in some iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. In some embodiments, the external ports are Lightning connectors identical to, similar to, and / or compatible with the Lightning connectors used in some iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California.
[0063] Contact / motion module 130 optionally detects contact with touch-sensitive display system 112 (in cooperation with display controller 156), and with other touch-sensitive devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes software components for performing various operations related to detecting contact (e.g., by a finger or stylus), such as determining if contact has occurred (e.g., detecting a finger down event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a proxy for the force or pressure of the contact), determining if there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger drag events), and determining if the contact has stopped (e.g., detecting a finger up event or an interruption of the contact). Contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point, as represented by the series of contact data, optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point. These actions are optionally applied to a single contact (e.g., one finger contact or stylus contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contacts on a touchpad.
[0064] Contact / motion module 130 optionally detects gesture input by a user. Different gestures on a touch-sensitive surface have different contact patterns (e.g., different movements, timing, and / or strength of detected contacts). Thus, gestures are optionally detected by detecting a particular contact pattern. For example, detecting a finger tap gesture includes detecting a finger down event, followed by detecting a finger up (lift off) event at the same location (or substantially the same location) as the finger down event (e.g., at the location of an icon). As another example, detecting a finger swipe gesture on a touch-sensitive surface includes detecting a finger down event, followed by detecting one or more finger drag events, followed by detecting a finger up (lift off) event. Similarly, taps, swipes, drags, and other gestures are optionally detected with respect to a stylus by detecting a particular contact pattern with respect to the stylus.
[0065] In some embodiments, detecting a finger tap gesture depends on the length of time between detecting a finger down event and detecting a finger up event, but is not related to the strength of the finger contact between detecting a finger down event and detecting a finger up event. In some embodiments, a tap gesture is detected according to determining that the length of time between a finger down event and a finger up event is less than a predefined value (e.g., less than 0.1, 0.2, 0.3, 0.4, or 0.5 seconds), regardless of whether the strength of the finger contact during the tap meets a given intensity threshold (greater than a nominal contact detection intensity threshold), such as a light or deep pressure intensity threshold. Thus, a finger tap gesture may satisfy certain input criteria that do not require that the characteristic intensity of the contact meet a given intensity threshold in order for the particular input criterion to be met. For clarity, a finger contact in a tap gesture generally needs to meet a nominal contact detection intensity threshold below which the contact is not detected in order to detect a finger down event. A similar analysis applies to detecting a tap gesture or other contact with a stylus. In cases where the device is capable of detecting contact of a finger or stylus hovering over the touch-sensitive surface, the nominal contact-detection intensity threshold optionally does not correspond to physical contact between the finger or stylus and the touch-sensitive surface.
[0066] In a similar manner, the same concepts apply to other types of gestures. For example, swipe gestures, pinch gestures, de-pinch gestures, and / or long press gestures are optionally detected based on meeting criteria that are either unrelated to the intensity of the contacts included in the gesture or do not require the contacts performing the gesture to reach an intensity threshold in order to be recognized. For example, swipe gestures are detected based on the amount of movement of one or more contacts, pinch gestures are detected based on the movement of two or more contacts towards each other, de-pinch gestures are detected based on the movement of two or more contacts away from each other, and long press gestures are detected based on a duration of contact on the touch-sensitive surface that is less than a threshold amount of movement. Thus, a statement that a particular gesture recognition criterion does not require that the intensity of a contact(s) meet a corresponding intensity threshold in order for the particular gesture recognition criterion to be satisfied means that the particular gesture recognition criterion can be satisfied when the contact(s) in the gesture do not reach the corresponding intensity threshold, and can also be satisfied in situations where one or more of the contacts in the gesture reach or exceed the corresponding intensity threshold. In some embodiments, a tap gesture is detected based on a determination that a finger down event and a finger up event are detected within a predetermined time period, regardless of whether the contact is above or below the corresponding intensity threshold during the predetermined time period, and a swipe gesture is detected based on a determination that a movement of the contact is greater than a predetermined magnitude, even if the contact exceeds the intensity threshold corresponding to the end of the movement of the contact. Even in implementations in which detection of gestures is affected by the strength of the contact performing the gesture (e.g., the device detects a long press more quickly when the intensity of the contact exceeds an intensity threshold, or the device is slow to detect a tap input when the intensity of the contact is higher), detection of those gestures does not require that the contact reach a particular intensity threshold, so long as the criteria for recognizing the gesture can be met in situations in which the contact does not reach a particular intensity threshold (e.g., even if the amount of time it takes to recognize the gesture varies).
[0067] The contact intensity threshold, duration threshold, and movement threshold are combined in various different combinations in some situations to create heuristics for distinguishing between two or more different gestures directed at the same input element or region, thereby enabling multiple different interactions with the same input element to provide a richer set of user interactions and responses. A statement that a particular set of gesture recognition criteria does not require that the intensity of the contact(s) meet the corresponding intensity threshold in order for the particular gesture recognition criterion to be satisfied does not preclude the simultaneous evaluation of other intensity-dependent gesture recognition criteria to identify other gestures having criteria that are satisfied when the gesture includes a contact having an intensity above the corresponding intensity threshold. For example, in some situations, a first gesture recognition criterion for a first gesture that does not require that the intensity of the contact(s) meet the corresponding intensity threshold in order for the first gesture recognition criterion to be satisfied is in competition with a second gesture recognition criterion for a second gesture that is dependent on the contact(s) reaching the corresponding intensity threshold. In such a competition, a gesture is optionally not recognized as satisfying the first gesture recognition criteria for the first gesture if the second gesture recognition criteria for the second gesture are satisfied first. For example, if the contact reaches the corresponding intensity threshold before it moves the predetermined amount of movement, a deep press gesture is detected rather than a swipe gesture. Conversely, if the contact moves the predetermined amount of movement before it reaches the corresponding intensity threshold, a swipe gesture is detected rather than a deep press gesture. Even in such a situation, the first gesture recognition criteria for the first gesture still do not require that the intensity of the contact(s) meet the corresponding intensity threshold for the first gesture recognition criteria to be satisfied, because if the contact remains below the corresponding intensity threshold until the end of the gesture (e.g., a swipe gesture with a contact that does not increase in intensity to above the corresponding intensity threshold), the gesture will have been recognized by the first gesture recognition criteria as a swipe gesture.In that way, a particular gesture recognition criterion that does not require that the intensity of the contact(s) meet a corresponding intensity threshold in order for the particular gesture recognition criterion to be satisfied may still be dependent on the intensity of the contact with respect to an intensity threshold in the sense that (A) in some circumstances it may ignore the intensity of the contact with respect to an intensity threshold (e.g., for a tap gesture) and / or (B) in some circumstances the particular gesture recognition criterion (e.g., for a long press gesture) will not function if a competing set of intensity-dependent gesture recognition criteria (e.g., for a deep press gesture) recognizes an input as corresponding to an intensity-dependent gesture before the particular gesture recognition criterion recognizes a gesture corresponding to the input (e.g., for a long press gesture that competes with a deep press gesture for recognition).
[0068] Graphics module 132 includes various known software components for rendering and displaying graphics on touch-sensitive display system 112 or other display, including components for modifying the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual characteristics) of the displayed graphics. As used herein, the term "graphics" includes any object that can be displayed to a user, including, but not limited to, text, web pages, icons (such as user interface objects including soft keys), digital images, videos, and animations.
[0069] In some embodiments, graphics module 132 stores data representing the graphics to be used. Each graphic is, optionally, assigned a corresponding code. Graphics module 132 receives one or more codes specifying the graphics to be displayed, such as from an application, along with coordinate data and other graphic characteristic data, as appropriate, and then generates screen image data for output to display controller 156.
[0070] The haptic feedback module 133 includes various software components that generate instructions (e.g., instructions used by the haptic feedback controller 161) for creating tactile outputs at one or more locations on the device 100 using the tactile output generator(s) 167 in response to user interaction with the device 100.
[0071] Text input module 134 is optionally a component of graphics module 132 and provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).
[0072] The GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to the phone 138 for use in location-based calling, to the camera 143 as photo / video metadata, and to applications that provide location-based services, such as a weather widget, a local yellow pages widget, and a maps / navigation widget).
[0073] Application 136 optionally includes the following modules (or sets of instructions), or a subset or superset thereof: ● a contacts module 137 (sometimes called an address book or contact list); ● Telephone module 138, ●Video conferencing module 139; ● an email client module 140; ● Instant messaging (IM) module 141; ● Training support module 142, A camera module 143 for still and / or video images, ● Image management module 144, ● Browser module 147, ● Calendar module 148, A widget module 149, optionally including one or more of a weather widget 149-1, a stock price widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, as well as user-created widgets 149-6; A widget creator module 150 for creating user-created widgets 149-6; ● Search module 151, ● a video and music player module 152, optionally consisting of a video player module and a music player module; ● Memo module 153, Map module 154, and / or ●Online video module 155.
[0074] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA® enabled applications, encryption, digital rights management, voice recognition, and voice duplication.
[0075] Contacts module 137, along with touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, includes executable instructions (e.g., stored in memory 102 or in the application internal state 192 of contacts module 137 in memory 370) for managing an address book or contact list, including adding a name(s) to the address book, deleting a name(s) from the address book, associating phone number(s), email address(es), address(es), or other information with a name, associating an image with a name, categorizing and sorting names, providing phone numbers and / or email addresses to initiate and / or facilitate communication by telephone 138, video conference 139, email 140, or IM 141, and the like.
[0076] In cooperation with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, telephone module 138 includes executable instructions for entering a sequence of characters corresponding to a telephone number, accessing one or more telephone numbers in address book 137, modifying an entered telephone number, dialing each telephone number, conducting a conversation, and disconnecting or hanging up when the conversation is completed. As discussed above, the wireless communication optionally uses any of a number of communication standards, protocols, and technologies.
[0077] In cooperation with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch-sensitive display system 112, display controller 156, light sensor(s) 164, light sensor controller 158, contact module 130, graphics module 132, text input module 134, contact list 137, and telephone module 138, video conferencing module 139 contains executable instructions to initiate, conduct, and terminate a video conference between a user and one or more other participants according to the user's commands.
[0078] In conjunction with RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, email client module 140 contains executable instructions for creating, sending, receiving, and managing emails in response to user instructions. In conjunction with image management module 144, email client module 140 greatly facilitates the creation and sending of emails with still or video images captured by camera module 143.
[0079] In cooperation with RF circuitry 108, touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, instant messaging module 141 includes executable instructions for entering a series of characters corresponding to an instant message, modifying previously entered characters, sending each instant message (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephone-based instant messaging, or using XMPP, SIMPLE, Apple Push Notification Service (APNs), or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, sent and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments, such as those supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, an "instant message" refers to both telephone-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, APNs, or IMPS).
[0080] In cooperation with the RF circuitry 108, the touch-sensitive display system 112, the display controller 156, the contact module 130, the graphics module 132, the text input module 134, the GPS module 135, the map module 154, and the video and music player module 152, the training support module 142 includes executable instructions to create workouts (e.g., having time, distance, and / or calorie burn goals), communicate with training sensors (in the sports device and the smart watch), receive training sensor data, calibrate the sensors used to monitor the workouts, select and play music for the workouts, and display, store, and transmit the training data.
[0081] Camera module 143, along with touch-sensitive display system 112, display controller 156, light sensor(s) 164, light sensor controller 158, contact module 130, graphics module 132, and image management module 144, contain executable instructions to capture still images or videos (including video streams) and store them in memory 102, change characteristics of the still images or videos, and / or delete still images or videos from memory 102.
[0082] Image management module 144, along with touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, text input module 134, and camera module 143, contain executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slide show or album), and storing still and / or video images.
[0083] Browser module 147, together with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, and text input module 134, contains executable instructions for browsing the Internet according to a user's commands, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.
[0084] Calendar module 148, along with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, email client module 140, and browser module 147, contain executable instructions to create, display, modify, and store calendars and data associated with calendars (e.g., calendar items, to-do lists, etc.) according to a user's instructions.
[0085] Together with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, and browser module 147, widget module 149 is optionally a mini-application downloaded and used by a user (e.g., weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5), or a mini-application created by a user (e.g., user-created widget 149-6). In some embodiments, a widget includes a Hypertext Markup Language (HTML) file, a Cascading Style Sheets (CSS) file, and a JavaScript file. In some embodiments, a widget includes an Extensible Markup Language (XML) file and a JavaScript file (e.g., Yahoo! Widget).
[0086] In cooperation with the RF circuitry 108, the touch-sensing display system 112, the display system controller 156, the contact module 130, the graphics module 132, the text input module 134, and the browser module 147, the widget creator module 150 contains executable instructions for creating widgets (e.g., turning user-specified portions of a web page into a widget).
[0087] In cooperation with touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, and text input module 134, search module 151 contains executable instructions to search for text, music, sound, images, video, and / or other files in memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with a user's commands.
[0088] In conjunction with touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 contains executable instructions that enable a user to download and play recorded music or other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions to display, present, or otherwise play videos (e.g., on touch-sensitive display system 112 or on an external display connected wirelessly or via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).
[0089] In cooperation with the touch-sensitive display system 112, display controller 156, contact module 130, graphics module 132, and text input module 134, notes module 153 contains executable instructions for creating and managing notes, to-do lists, and the like according to user commands.
[0090] In cooperation with RF circuitry 108, touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, map module 154 contains executable instructions to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data about stores and other points of interest at or near a particular location, and other location-based data) in accordance with a user's instructions.
[0091] In conjunction with touch-sensitive display system 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, online video module 155 contains executable instructions that enable a user to access, view, receive (e.g., by streaming and / or downloading), and play (e.g., on touch screen 112 or on an external display connected wirelessly or via external port 124) online videos in one or more file formats, such as H.264, and send and otherwise manage emails with links to particular online videos. In some embodiments, instant messaging module 141 is used to send links to particular online videos, rather than email client module 140.
[0092] Each of the above identified modules and applications corresponds to an executable instruction set that performs one or more of the functions described above, as well as the methods described in this application (e.g., computer-implemented methods and other information processing methods described herein). The modules (i.e., instruction sets) need not be implemented as separate software programs, procedures, or modules, and thus various subsets of the modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 102 optionally stores a subset of the modules and data structures identified above. Additionally, memory 102 optionally stores additional modules and data structures not described above.
[0093] In some embodiments, device 100 is a device in which operation of a given set of functions is performed exclusively through a touchscreen and / or touchpad. Using the touchscreen and / or touchpad as the primary input control device for operation of device 100 optionally reduces the number of physical input control devices (push buttons, dials, etc.) on device 100.
[0094] The set of predetermined functions performed solely through the touchscreen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main menu, a home menu, or a root menu from any user interface displayed on device 100. In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touchpad.
[0095] 1B is a block diagram illustrating example components for event processing, according to some embodiments. In some embodiments, memory 102 (in FIG. 1A) or 370 (in FIG. 3) includes an event sorter 170 (e.g., in operating system 126) and a respective application 136-1 (e.g., any of applications 136, 137-155, 380-390 described above).
[0096] Event sorter 170 receives the event information and determines application 136-1 and application view 191 of application 136-1 to which the event information is to be delivered. Event sorter 170 includes an event monitor 171 and an event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192 that indicates the current application view(s) that are displayed on touch-sensitive display system 112 when the application is active or running. In some embodiments, device / global internal state 157 is used by event sorter 170 to determine which application(s) are currently active, and application internal state 192 is used by event sorter 170 to determine application view 191 to which the event information is to be delivered.
[0097] In some embodiments, application internal state 192 includes additional information such as one or more of resume information used when application 136-1 resumes execution, user interface state information indicating information that is being displayed or ready to be displayed by application 136-1, a state queue that allows a user to return to a previous state or view of application 136-1, and a redo / undo queue of previous actions taken by the user.
[0098] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about sub-events (e.g., a user's touch on touch-sensitive display system 112 as part of a multi-touch gesture). Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, accelerometer(s) 168, and / or microphone 113 (via audio circuitry 110). Information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display system 112 or a touch-sensitive surface.
[0099] In some embodiments, event monitor 171 sends a request to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits the event information. In other embodiments, peripherals interface 118 sends the event information only when there is a significant event (e.g., receiving an input above a predetermined noise threshold and / or for longer than a predetermined period of time).
[0100] In some embodiments, the event sorter 170 also includes a hit view determination module 172 and / or an active event recognizer determination module 173 .
[0101] Hit view determination module 172 provides software procedures for determining where in one or more views a sub-event occurred when touch-sensitive display system 112 displays more than one view. A view consists of controls and other elements that a user can see on the display.
[0102] Another aspect of a user interface associated with an application is the set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application view (of the respective application) in which the touch is detected optionally corresponds to a programmatic level within the programmatic or view hierarchy of the application. For example, the lowest level view in which the touch is detected is optionally referred to as a hit view, and the set of events that are recognized as suitable inputs is optionally determined based at least in part on the hit view of the initial touch that initiates the touch gesture.
[0103] Hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should process the sub-events. In most situations, the hit view is the lowest level view in which the initiating sub-event occurs (i.e., the first sub-event in a series of sub-events that form an event or potential event). Once a hit view is identified by the hit view determination module, the hit view typically receives all sub-events related to the same touch or input source for which it was identified as the hit view.
[0104] Active event recognizer determination module 173 determines which view(s) in the view hierarchy should receive the particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive the particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that contain the physical location of the sub-event are actively participating views, and therefore all actively participating views should receive the particular sequence of sub-events. In other embodiments, even if the touch sub-event is completely confined to an area associated with one particular view, views higher in the hierarchy still remain actively participating views.
[0105] Event dispatcher module 174 dispatches the event information to event recognizers (e.g., event recognizer 180). In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers the event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information obtained by each event receiver module 182 in an event queue.
[0106] In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In yet other embodiments, event sorter 170 is a stand-alone module or part of another module stored in memory 102, such as contact / motion module 130.
[0107] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each including instructions for handling touch events occurring within a respective view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, each application view 191 includes multiple event recognizers 180. In other embodiments, one or more of the event recognizers 180 are part of a separate module, such as a user interface kit (not shown) or a higher level object from which application 136-1 inherits methods and other properties. In some embodiments, the corresponding event handler 190 includes one or more of a data updater 176, an object updater 177, a GUI updater 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or calls data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Instead, one or more of the application views 191 include one or more respective event handlers 190. Also, in some embodiments, one or more of the data updater 176, the object updater 177, and the GUI updater 178 are included in the corresponding application view 191.
[0108] Each event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies an event from the event information. Event recognizer 180 includes an event receiver 182 and an event comparator 184. In some embodiments, event recognizer 180 also includes at least a subset of metadata 183 and event delivery instructions 188 (optionally including sub-event delivery instructions).
[0109] The event receiver 182 receives event information from the event sorter 170. The event information includes information about a sub-event, e.g., information about a touch or a movement of a touch. Depending on the sub-event, the event information also includes additional information, such as a position of the sub-event. When the sub-event involves a movement of a touch, the event information also optionally includes a speed and a direction of the sub-event. In some embodiments, the event includes a rotation of the device from one orientation to another (e.g., from portrait to landscape or vice versa), and the event information includes corresponding information about the current orientation of the device (also referred to as the device's attitude).
[0110] The event comparator 184 compares the event information to predefined event or sub-event definitions and determines the event or sub-event or determines or updates the state of the event or sub-event based on the comparison. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes definitions of events (e.g., a sequence of predefined sub-events), such as event 1 (187-1) and event 2 (187-2). In some embodiments, the sub-events in the event 187 include, for example, touch start, touch end, touch movement, touch stop, and multiple touches. In one example, the definition for event 1 (187-1) is a double tap on a displayed object. The double tap includes, for example, a first touch (touch start) for a predefined stage on the displayed object, a first lift-off (touch end) for a predefined stage, a second touch (touch start) for a predefined stage on the displayed object, and a second lift-off (touch end) for a predefined stage. In another example, a definition of event 2 (187-2) is a drag on a displayed object. A drag includes, for example, a touch (or contact) of a predetermined stage on a displayed object, a movement of the touch across the touch-sensitive display system 112, and a lift-off of the touch (end of the touch). In some embodiments, the event also includes information about one or more associated event handlers 190.
[0111] In some embodiments, event definition 187 includes a definition of the event for each user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, in an application view in which three user interface objects are displayed on touch-sensitive display system 112, when a touch is detected on touch-sensitive display system 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a corresponding event handler 190, event comparator 184 uses the results of the hit test to determine which event handler 190 to activate. For example, event comparator 184 selects the event handler associated with the sub-event and object that triggers the hit test.
[0112] In some embodiments, each event 187 definition also includes a delay action that delays delivery of the event information until it is determined whether a set of sub-events corresponds to the event type of the event recognizer.
[0113] If the respective event recognizer 180 determines that the sequence of sub-events does not match any event in the event definition 186, the respective event recognizer 180 enters an event disabled, event failed, or event finished state and thereafter ignores subsequent sub-events of the touch gesture. In this situation, any other event recognizers that remain active for the hit view continue to track and process sub-events of the ongoing touch gesture.
[0114] In some embodiments, corresponding event recognizers 180 include metadata 183 with configurable properties, flags, and / or lists that indicate to actively participating event recognizers how the event delivery system should perform sub-event delivery. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact with each other or are enabled to interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how sub-events are delivered to various levels in a view or programmatic hierarchy.
[0115] In some embodiments, each event recognizer 180 activates an event handler 190 associated with an event when one or more particular sub-events of the event are recognized. In some embodiments, each event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is separate from sending (and postponing sending) the sub-events to the respective hit view. In some embodiments, the event recognizer 180 pops a flag associated with the recognized event, and the event handler 190 associated with the flag catches the flag and performs a predefined process.
[0116] In some embodiments, the event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with a set of sub-events or to an actively participating view. The event handler associated with the set of sub-events or the actively participating view receives the event information and performs a predetermined process.
[0117] In some embodiments, data updater 176 creates and updates data used by application 136-1. For example, data updater 176 updates phone numbers used by contacts module 137 or stores video files used by video and music player module 152. In some embodiments, object updater 177 creates and updates objects used by application 136-1. For example, object updater 177 creates new user interface objects or updates the positions of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on the touch-sensitive display.
[0118] In some embodiments, event handler(s) 190 includes or has access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of a respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.
[0119] It should be understood that the foregoing description of event processing of a user's touch on a touch-sensitive display also applies to other forms of user input for operating multifunction device 100 with input devices, not all of which are initiated on a touch screen. For example, mouse movements and mouse button presses, contact movements such as tapping, dragging, scrolling on a touchpad, optionally coordinated with single or multiple presses or holds of a keyboard, pen stylus input, device movement, verbal commands, detected eye movements, biometric input, and / or any combination thereof, are optionally utilized as inputs corresponding to sub-events that define the event to be recognized.
[0120] FIG. 2 illustrates portable multifunction device 100 having a touch screen (e.g., touch-sensitive display system 112, FIG. 1A ), according to some embodiments. The touch screen optionally displays one or more graphics in user interface (UI) 200. In these embodiments, as well as those described below, a user is enabled to select one or more of the graphics by making a gesture on the graphics, for example, with one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of the one or more graphics is performed when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, upwards and / or downwards), and / or rolling of a finger in contact with device 100 (right to left, left to right, upwards and / or downwards). In some implementations or situations, accidental contact with a graphic does not select the graphic, for example, a swipe gesture sweeping over an application icon optionally does not select the corresponding application when the gesture corresponding to selection is a tap.
[0121] Device 100 also optionally includes one or more physical buttons, such as a "home" or menu button 204. As mentioned above, menu button 204 is optionally used to navigate to any application 136 in a set of applications optionally running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on a touch screen display.
[0122] In some embodiments, device 100 includes a touch screen display, a menu button 204 (sometimes referred to as a home button 204), a push button 206 for powering the device on / off and locking the device, a volume control button(s) 208, a subscriber identity module (SIM) card slot 210, a headset jack 212, and an external docking / charging port 124. Push button 206 is optionally used to power the device on / off by pressing and holding the button down for a predetermined period of time, to lock the device by pressing and releasing the button before the predetermined period of time has elapsed, and / or to unlock the device or initiate an unlocking process. In some embodiments, device 100 also accepts verbal input through microphone 113 to activate or deactivate some features. Device 100 also optionally includes one or more contact intensity sensors 165 that detect the intensity of a contact on touch-sensitive display system 112 and / or one or more tactile output generators 167 that generate a tactile output to a user of device 100.
[0123] FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface, according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia playback device, a navigation device, an educational device (such as a child's learning toy), a gaming system, or a control device (e.g., a home or commercial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 for interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes referred to as a chipset) that interconnects and controls communication between system components. Device 300 includes input / output (I / O) interfaces 330, including a display 340, which is typically a touchscreen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350, as well as a touchpad 355, a tactile output generator 357 for generating tactile output on device 300 (e.g., similar to tactile output generator(s) 167 described above with reference to FIG. 1A), sensors 359 (e.g., optical sensors, acceleration sensors, proximity sensors, touch-sensitive sensors, and / or contact intensity sensors similar to contact intensity sensor(s) 165 described above with reference to FIG. 1A). Memory 370 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid-state memory devices, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 370 optionally includes one or more storage devices located remotely from CPU 310.In some embodiments, memory 370 stores programs, modules, and data structures similar to, or a subset of, the programs, modules, and data structures stored in memory 102 of portable multifunction device 100 (FIG. 1A). Additionally, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores drawing module 380, presentation module 382, word processing module 384, website creation module 386, disk authoring module 388, and / or spreadsheet module 390, while memory 102 of portable multifunction device 100 (FIG. 1A) optionally does not store those modules.
[0124] Each of the elements in FIG. 3 identified above is optionally stored in one or more of the memory devices mentioned above. Each of the modules identified above corresponds to an instruction set for performing the functions described above. The modules or programs (i.e., instruction sets) identified above need not be implemented as separate software programs, procedures, or modules, and thus various subsets of those modules are optionally combined or otherwise rearranged in various embodiments. In some embodiments, memory 370 optionally stores a subset of the modules and data structures identified above. Additionally, memory 370 optionally stores additional modules and data structures not described above.
[0125] Attention is now directed to embodiments of a user interface (“UI”) that is optionally implemented on portable multifunction device 100.
[0126] 4A shows an exemplary user interface for a menu of applications on portable multifunction device 100, according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof: signal strength indicator(s) for wireless communication(s), such as cellular and Wi-Fi signals; ●Time, ●Bluetooth (registered trademark) indicator, ● Battery status indicator, • A tray 408 with icons of frequently used applications, such as: ○ An icon 416 for the phone module 138, labeled “Phone”, optionally including an indicator 414 of the number of missed calls or voicemail messages; ○ An icon 418 of the email client module 140, labeled “Mail”, optionally including an indicator 410 of the number of unread emails; ○ An icon 420 for the Browser module 147, labeled "Browser"; and ○ An icon 422 of the video and music player module 152 labeled "Music", and ● Icons of other applications, such as: ○ Icon 424 of IM module 141, labeled "Messages"; ○ Icon 426 of the calendar module 148, labeled "Calendar", ○ Icon 428 of the image management module 144, labeled "Photos"; ○ An icon 430 of the camera module 143, labeled “camera”; ○ Icon 432 of the online video module 155, labeled "Online Video"; ○ Icon 434 of Stocks widget 149-2, labeled "Stock Prices"; ○ An icon 436 for the map module 154, labeled "Map"; ○ Icon 438 of weather widget 149-1, labeled "Weather"; ○ Icon 440 of alarm clock widget 149-4, labeled "Clock"; ○ Icon 442 of Training Support Module 142, labeled "Training Support"; ○ An icon 444 of the Notes module 153, labeled "Notes"; and ○ An icon 446 for a settings application or module that provides access to settings related to the device 100 and its various applications 136.
[0127] 4A are merely examples. For example, other labels are optionally used for the various application icons. In some embodiments, the label for each application icon includes the name of the application that corresponds to the respective application icon. In some embodiments, the label for a particular application icon is different from the name of the application that corresponds to that particular application icon.
[0128] FIG. 4B illustrates an exemplary user interface on a device (e.g., device 300, FIG. 3) having a touch-sensitive surface 451 (e.g., tablet or touchpad 355, FIG. 3) separate from a display 450. Although many of the following examples are given with reference to input on touchscreen display 112 (where the touch-sensitive surface and display are combined), in some embodiments, the device detects input on a touch-sensitive surface separate from the display, as shown in FIG. 4B. In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4B) has a major axis (e.g., 452 in FIG. 4B) that corresponds to a major axis (e.g., 453 in FIG. 4B) on the display (e.g., 450). According to those embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 in FIG. 4B) at locations that correspond to respective locations on the display (e.g., in FIG. 4B, 460 corresponds to 468 and 462 corresponds to 470). In this manner, when the touch-sensitive surface is separate from the display, user input (e.g., contacts 460 and 462, and their movement) detected by the device on the touch-sensitive surface (e.g., 451 in FIG. 4B ) is used by the device to operate a user interface on the display (e.g., 450 in FIG. 4B ) of the multifunction device. It is to be understood that similar methods are optionally used for the other user interfaces described herein.
[0129] In addition, while the following examples are given primarily with reference to finger input (e.g., finger touch, finger tap gesture, finger swipe gesture, etc.), it should be understood that in some embodiments, one or more of those finger inputs are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of a touch) followed by movement of a cursor along the path of the swipe (e.g., instead of a contact movement). As another example, a tap gesture is optionally replaced with a mouse click while the cursor is positioned over the location of the tap gesture (e.g., instead of detecting a contact and then stopping detection of the contact). Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice are optionally used simultaneously, or mice and finger contacts are optionally used simultaneously.
[0130] As used herein, the term "focus selector" is an input element that indicates the current portion of a user interface with which a user is interacting. In some implementations involving a cursor or other location marker, the cursor functions as a "focus selector" such that when an input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 in FIG. 3 or touch-sensitive surface 451 in FIG. 4B) while the cursor is over a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations involving a touchscreen display (e.g., touch-sensitive display system 112 in FIG. 1A or touchscreen in FIG. 4A) that enables direct interaction with user interface elements on the touchscreen display, a contact detected on the touchscreen functions as a "focus selector" such that when an input (e.g., a press input by contact) is detected on the touchscreen display at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one region of the user interface to another region of the user interface (e.g., by using the tab or arrow keys to move focus from one button to another) without a corresponding cursor movement or contact movement on the touchscreen display. In these implementations, the focus selector moves to follow the movement of focus between various regions of the user interface. Regardless of the specific form taken by the focus selector, the focus selector is generally a user interface element (or a contact on a touchscreen display) that is controlled by the user to communicate the user's intended interaction with the user interface (e.g., by indicating to the device which element of the user interface the user intends to interact with).For example, positioning of a focus selector (e.g., a cursor, touch, or selection box) over a corresponding button while a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen) indicates that the user intends to activate that corresponding button (and not another user interface element shown on the device's display).
[0131] As used herein and in the claims, the term “intensity” of a contact on a touch-sensitive surface is the force or pressure (force per unit area) of a contact (e.g., a finger contact or a stylus contact) on the touch-sensitive surface, or a proxy for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values that includes at least four distinct values, and more typically includes hundreds (e.g., at least 256) distinct values. The intensity of a contact is optionally determined (or measured) using various techniques and various sensors or combinations of sensors. For example, one or more force sensors under or adjacent to the touch-sensitive surface are optionally used to measure the force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted average or sum) to determine an estimated force of the contact. Similarly, a pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and / or change in the contact area detected on the touch-sensitive surface, the capacitance and / or change in the capacitance of the touch-sensitive surface proximate the contact, and / or the resistance and / or change in the capacitance of the touch-sensitive surface proximate the contact, are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the surrogate measure for the force or pressure of the contact is used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the surrogate measure). In some implementations, the surrogate measure for the force or pressure of the contact is converted to an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure).Using the intensity of contact as an attribute of user input enables a user to access additional device functionality that may not otherwise be easily accessible to the user on a device of reduced size with limited assets for displaying affordances (e.g., on a touch-sensitive display) and / or receiving user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons).
[0132] In some embodiments, the contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an action has been performed by a user (e.g., whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by the activation thresholds of a particular physical actuator, but can be adjusted without changing the physical hardware of the device 100). For example, the mouse “click” threshold of a trackpad or touchscreen display can be set to any of a wide range of predefined thresholds without modifying the hardware of the trackpad or touchscreen display. Furthermore, in some implementations, a user of the device is provided with software settings to adjust one or more of the sets of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or by adjusting multiple intensity thresholds at once with a system-level click “strength” parameter).
[0133] As used herein and in the claims, the term "characteristic intensity" of a contact is a characteristic of the contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on a plurality of intensity samples. The characteristic intensity is optionally based on a predefined number of intensity samples, i.e., a set of intensity samples collected during a predefined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predefined event (e.g., after detecting a contact, before detecting lift-off of the contact, before or after detecting the start of movement of the contact, before detecting an end of the contact, before or after detecting an increase in the intensity of the contact, and / or before or after detecting a decrease in the intensity of the contact). The characteristic intensity of the contact is optionally based on one or more of a maximum intensity of the contact, a mean value of the intensity of the contact, an average value of the intensity of the contact, a top 10% value of the intensity of the contact, a half value of the maximum intensity of the contact, a 90% value of the maximum intensity of the contact, a value generated by low pass filtering the intensity of the contact starting over a predefined period or at a predefined time, and the like. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an operation is performed by the user. For example, the set of one or more intensity thresholds may include a first intensity threshold and a second intensity threshold. In this example, a first action is performed as a result of a contact having a characteristic intensity not exceeding the first threshold, a second action is performed as a result of a contact having a characteristic intensity exceeding the first intensity threshold and not exceeding the second intensity threshold, and a third action is performed as a result of a contact having a characteristic intensity above the second intensity threshold. In some embodiments, the comparison between the characteristic intensity and one or more intensity thresholds is not used to determine whether to perform a first operation or a second operation, but rather is used to determine whether to perform one or more operations (e.g., to perform a respective option or to refrain from performing a respective operation).
[0134] In some embodiments, a portion of the gesture is identified for purposes of identifying the characteristic intensity. For example, a touch-sensitive surface may receive a continuous swipe contact (e.g., a drag gesture) that transitions from a start position to an end position, at which point the intensity of the contact increases. In this example, the characteristic intensity of the contact at the end position may be based on only a portion of the continuous swipe contact (e.g., only the portion of the swipe contact at the end position) rather than the entire swipe contact. In some embodiments, a smoothing algorithm may be applied to the intensity of the swipe contact prior to identifying the characteristic intensity of the contact. For example, the smoothing algorithm optionally includes one or more of an unweighted moving average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some circumstances, these smoothing algorithms eliminate small increases or decreases in the intensity of the swipe contact for purposes of identifying the characteristic intensity.
[0135] The user interface diagrams described herein may optionally be configured with one or more intensity thresholds (e.g., a touch-detection intensity threshold IT0, a light pressure intensity threshold IT L , deep pressure intensity threshold IT D (For example, at least initially, L higher than 0.01, and / or one or more other intensity thresholds (e.g., IT L An intensity threshold lower than IT H), showing the current intensity of the contact on the touch-sensitive surface relative to the light intensity threshold. This intensity diagram is typically not part of the displayed user interface, but is provided to aid in interpretation of the diagram. In some embodiments, the light pressure intensity threshold corresponds to an intensity at which the device performs an action normally associated with clicking a physical mouse button or trackpad. In some embodiments, the deep pressure intensity threshold corresponds to an intensity at which the device performs an action different from the action normally associated with clicking a physical mouse button or trackpad. In some embodiments, when a contact is detected having a characteristic intensity below the light pressure intensity threshold (e.g., above a nominal contact-detection intensity threshold ITO below which contact is no longer detected), the device moves the focus selector in accordance with the movement of the contact on the touch-sensitive surface without performing an action associated with the light or deep pressure intensity thresholds. In general, unless otherwise noted, these intensity thresholds are consistent among the various sets of user interface diagrams.
[0136] In some embodiments, the device's response to an input detected by the device depends on criteria based on the contact intensity during the input. For example, for some "light press" inputs, the intensity of the contact during the input that exceeds a first intensity threshold triggers a first response. In some embodiments, the device's response to an input detected by the device depends on criteria that include both the contact intensity during the input and time-based criteria. For example, for some "deep press" inputs, the intensity of the contact during the input that exceeds a second intensity threshold that is greater than the first intensity threshold for a light press triggers a second response only if a delay time has elapsed between meeting the first intensity threshold and meeting the second intensity threshold. This delay time is typically less than 200 ms (milliseconds) in time (e.g., 40 ms, 100 ms, or 120 ms depending on the magnitude of the second intensity threshold, with the delay time increasing as the second intensity threshold increases). This delay time helps to avoid accidental recognition of a deep press input. As another example, for some "deep press" inputs, there is a period of reduced sensitivity that occurs after the time the first intensity threshold is met. During the period of decreased sensitivity, the second intensity threshold is increased. This temporary increase in the second intensity threshold also serves to avoid accidental deep pressure inputs. For other deep pressure inputs, the response to the detection of a deep pressure input does not depend on a time-based criterion.
[0137] In some embodiments, one or more of the input intensity thresholds and / or corresponding outputs vary based on one or more factors, such as user settings, contact movement, input timing, running application, rate at which intensity is applied, number of simultaneous inputs, user history, environmental factors (e.g., ambient noise), position of focus selector, etc. Exemplary factors are described in U.S. Patent Application Publication Nos. 14 / 399,606 and 14 / 624,296, which are incorporated herein by reference in their entireties.
[0138] For example, FIG. 4C illustrates a dynamic intensity threshold 480 that varies over time based in part on the intensity of touch input 476 over time. The dynamic intensity threshold 480 is the sum of two components, a first component 474 that decays over time after a predefined delay time p1 from when touch input 476 is first detected, and a second component 478 that tracks the intensity of touch input 476 over time. The initial high intensity threshold of the first component 474 reduces accidental triggering of a "deep press" response while still allowing an immediate "deep press" response if touch input 476 provides sufficient intensity. The second component 478 reduces unintended triggering of a "deep press" response due to gradual intensity variations of the touch input. In some embodiments, a "deep press" response is triggered when touch input 476 meets the dynamic intensity threshold 480 (e.g., at point 481 in FIG. 4C).
[0139] FIG. 4D illustrates another dynamic intensity threshold 486 (e.g., intensity threshold I D ) is shown in FIG. 4D. Two other intensity thresholds are shown: the first intensity threshold I H and a second intensity threshold I L In FIG. 4D, the touch input 484 crosses the first intensity threshold I before time p2. H and a second intensity threshold I L 4D, the dynamic intensity threshold 486 decays over time, with the decay occurring after a predefined delay p1 from time 482 (the second intensity threshold I L This type of dynamic intensity threshold begins at time 488 when the response associated with the first intensity threshold I H or the second intensity threshold I L Immediately after or simultaneously with triggering a response associated with a lower intensity threshold, such as D Reduce accidental triggering of associated responses.
[0140] FIG. 4E illustrates yet another dynamic intensity threshold 492 (e.g., intensity threshold I D In FIG. 4E, the intensity threshold I LThe response associated with the intensity threshold I is triggered after a delay time p2 from when the touch input 490 is first detected. At the same time, the dynamic intensity threshold 492 decays after a predefined delay time p1 from when the touch input 490 is first detected. Thus, the intensity threshold I is triggered after a delay time p1 from when the touch input 490 is first detected. L The decrease in the intensity of the touch input 490 after triggering a response associated with the touch input 490 may occur when the intensity of the touch input 490 exceeds another intensity threshold, e.g., intensity threshold I L Even when the intensity threshold I D A response associated with the event may be triggered.
[0141] Light pressure intensity threshold IT L From a strength below the light pressure strength threshold IT L and deep pressure intensity threshold IT D An increase in the characteristic intensity of a contact to an intensity between is sometimes referred to as a "light press" input. D From intensity below the threshold IT D An increase in the characteristic intensity of a touch to an intensity above the touch detection intensity threshold IT0 is sometimes referred to as a "deep press" input. L An increase in the characteristic intensity of the contact to an intensity between may be referred to as detection of a contact on the touch surface. A decrease in the characteristic intensity of the contact from an intensity above the contact-detection intensity threshold IT0 to an intensity below the contact-detection intensity threshold IT0 may be referred to as detection of lift-off of the contact from the touch surface. In some embodiments, IT0 is zero. In some embodiments, IT0 is greater than zero. In some examples, shaded circles or ellipses are used to represent the intensity of the contacts on the touch-sensitive surface. In some examples, unshaded circles or ellipses are used to represent each contact on the touch-sensitive surface without specifying the intensity of each contact.
[0142] In some embodiments described herein, one or more actions are performed in response to detecting a gesture including a respective press input or in response to detecting a respective press input performed on a respective contact (or contacts), where the respective press input is detected based at least in part on detecting an increase in intensity of the contact (or contacts) above a press input intensity threshold. In some embodiments, the respective actions are performed in response to detecting an increase in intensity of the respective contact above a press input intensity threshold (e.g., the respective actions are performed on a "downstroke" of the respective press input). In some embodiments, the press input includes an increase in intensity of the respective contact above a press input intensity threshold and a subsequent decrease in intensity of the contact below the press input intensity threshold, where the respective actions are performed in response to detecting a subsequent decrease in intensity of the respective contact below the press input threshold (e.g., the respective actions are performed on an "upstroke" of the respective press input).
[0143] In some embodiments, the device employs intensity hysteresis to avoid accidental inputs, sometimes referred to as "jitter," and the device defines or selects a hysteresis intensity threshold that has a predefined relationship to the pressure input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units below the pressure input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable percentage of the pressure input intensity threshold). Thus, in some embodiments, the pressure input includes an increase in the intensity of each contact above the pressure input intensity threshold, followed by a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to the pressure input intensity threshold, and the respective action is performed in response to detecting the subsequent decrease in intensity of each contact below the hysteresis intensity threshold (e.g., the respective action is performed on the "upstroke" of the respective pressure input). Similarly, in some embodiments, a press input is detected only when the device detects an increase in the intensity of the contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold, and optionally a subsequent decrease in the intensity of the contact to an intensity below the hysteresis intensity, and a respective action is performed in response to detecting the press input (e.g., an increase in the intensity of the contact or a decrease in the intensity of the contact, as the case may be).
[0144] For ease of explanation, the description of the operations performed in response to a press input associated with a press input intensity threshold or in response to a gesture including a press input is optionally triggered in response to detecting an increase in the intensity of the contact above the press input intensity threshold, an increase in the intensity of the contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold, a decrease in the intensity of the contact below the press input intensity threshold, or a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to the press input intensity threshold. Furthermore, in examples where an operation is described as being performed in response to detecting a decrease in the intensity of the contact below a press input intensity threshold, the operation is optionally performed in response to detecting a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to and lower than the press input intensity threshold. As discussed above, in some embodiments, the triggering of these responses also depends on a time-based criterion being met (e.g., a delay time has elapsed between the first intensity threshold being met and the second intensity threshold being met). User Interface and Associated Processes
[0145] Attention is now directed to embodiments of user interfaces ("UI") and associated processes that may be implemented on an electronic device, such as portable multifunction device 100 or device 300, that includes a display, a touch-sensitive surface, (optionally) one or more tactile output generators for generating tactile output, and (optionally) one or more sensors for detecting the intensity of contact with the touch-sensitive surface.
[0146] 5A-5DW show exemplary user interfaces for navigating, viewing, and editing media items having multiple display modes, according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes in FIGS. 6A-6F, 7A-7D, 8A-8F, 9A-9I, and 10A-10C. For ease of explanation, some of the embodiments are discussed with reference to operations performed on a device having touch-sensitive display system 112. In such embodiments, the focus selector is optionally a respective finger or stylus contact, a representative point corresponding to a finger or stylus contact (e.g., an enantiomeric center of the respective contact or a point associated with the respective contact), or an enantiomeric center of two or more contacts detected on touch-sensitive display system 112. However, similar operations are optionally performed on a device having display 450 and separate touch-sensitive surface 451 in response to detecting a contact on touch-sensitive surface 451 while displaying the user interface shown in the figures on display 450, along with a focus selector.
[0147] 5A-5U show exemplary user interfaces for media playback and editing, according to some embodiments. In FIG. 5A, device 100 displays home user interface 500-1. Home user interface 500-1 displays different applications selectable by a user. In response to detecting tap 502-1 on image application 428, device 100 opens image application 428. Image application 428 displays a user interface for navigating, viewing, and editing media items. Media user interface 500-2 in FIG. 5B displays thumbnail images in a grid pattern for easy selection by a user. In some embodiments, each thumbnail image is a representative image associated with a series of images in a media item, starting with an initial image and ending with a final image, that may be "played" in response to detecting a particular user action. In response to detecting tap 502-2 on media item 550, device 100 displays media item display user interface 501, as shown in FIG. 5C. The media item display user interface 501 includes controls such as a favorite item control 504-a, a shared media item control 504-b, a delete media item control 504-c, an edit media item control 504-d, and a media item details control 504-e. The media item display user interface 501 includes a display area 508. The display area 508 displays a representative image of a media item 550 and indicates via a display mode indicator 512 that the user interface is in a "lively" display mode media items 550. The media item display user interface 501 also includes a media item collection area 510. The media item collection area 510 displays a representation (e.g., a thumbnail) of a representative image 514 of the media item 550 in addition to displaying other thumbnail representations of media items stored on the device 100. As shown in FIGS. 5C-5D, a light pressure intensity threshold IT LIn response to detecting a press by contact 502-3 greater than 1000, device 100 plays media items 550 according to one of sequences 538-1 and 538-2, for example, beginning with representative image 532 and eventually progressing to initial image 534 before finally ending with final image 536, as shown in FIG. 5E. Representative image 532 is then redisplayed. Representative image 532 represents media items 550 within a photo application (e.g., within a library or other collection). The representative image is typically displayed in a number of user interfaces within a photo application, such as in a first area of a media item display user interface 501 (e.g., FIG. 5C) as a representation 514 (e.g., a thumbnail), in a second area of a media item display user interface 501 (e.g., FIG. 5C), in a first area 523 of an editing user interface 503 (e.g., FIG. 5V) as a representation (e.g., a thumbnail), in a second area 521 of an editing user interface 503, and in an array of images (e.g., FIG. 5B) as a representation 514 (e.g., a thumbnail).
[0148] FIG. 5F is similar to FIG. 5C, except that the media item 550 is in a "loop" display mode. Without user input, the device 100 repeatedly loops the media item 550 according to, for example, sequence 538-2 shown in FIG. 5G. In FIG. 5H, the device 100 displays the media item display user interface 501 in the "loop" mode. In response to detecting a tap gesture 502-5 on the edit control 504-d while in the "loop" display mode, the device 100 displays the media item editing user interface 503, as shown in FIG. 5I, and in particular, displays the media item editing user interface 503-2 in the "loop" mode. The media item editing user interface 503 includes a media editing display area 523 and an image sequence area 524. In the "loop" mode, the media editing display area 523 displays a series of images associated with the media item 550 in a loop sequence, as described in FIG. 5G. The sequence of images in the media item 550 can be trimmed using a start trim affordance 516 and / or an end trim affordance 518. The media item editing user interface 503 also includes editing controls such as a done control 505-a, a crop control 505-b, a color control 505-c, a timer control 505-d, a mute control 505-f, a wand control 505-g, and a playback toggle control 505-h. In some embodiments, the media item editing user interface 503-2 in "loop mode" refrains from displaying a representative image selection affordance, as shown in FIG. 5I. In other embodiments, the media item editing user interface 503-2 in "loop mode" displays a representative image selection affordance 520, as shown in FIG. 5J.
[0149] FIG. 5K is similar to FIG. 5C, except that media item 550 is in a "front-back" viewing mode. In this example, device 100 plays media item 550 forward and backward, for example, according to sequence 538-3 shown in FIG. 5L. In FIG. 5M, device 100 displays media item viewing user interface 501 in the "front-back" mode. In response to detecting tap gesture 502-6 on edit control 504-d while in the "front-back" viewing mode, device displays media item editing user interface 503-3, as shown in FIG. 5N. FIG. 5N is similar to FIG. 5I, except that media item 550 is in the "front-back" editing mode. In some embodiments, media item editing user interface 503-3 refrains from displaying a representative image selection affordance, as shown in FIG. 5N. In other embodiments, media item editing user interface 503-3 displays a representative image selection affordance 520, as shown in FIG. 5O.
[0150] FIG. 5P is similar to FIG. 5C, except that media item 550 is in a "merged" display mode. In this example, device 100 displays a merged image of a series of images associated with the media item in display area 508. As shown in FIGS. 5P-5Q, a light pressure intensity threshold IT L In response to detecting a press by contact 502-7 above, device 100 plays media item 550, for example, according to sequence 538-4 shown in FIG. 5R. In FIG. 5S, device 100 displays media item viewing user interface 501 in a "merged" mode. In response to detecting a tap gesture 502-8 on edit control 504-d, device displays media item editing user interface 503-4, as shown in FIG. 5T. FIG. 5T is similar to FIG. 5I, except that media item 550 is in a "merged" editing mode. In this mode, editing display area 523 displays a merged still image of the series of images associated with media item 550.
[0151] 5U-5BE illustrate exemplary user interfaces for media editing, according to some embodiments. In FIG. 5U, while displaying media item display user interface 501 in “live” mode, device 100 detects tap 502-9 on edit control 504-d. In response, device 100 displays media item edit user interface 503-1, shown in FIG. 5V. Media item edit user interface 503-1 is similar to FIG. 5I, which illustrates “loop” mode edit user interface 503-2, except that a static representative image of media item 550 is shown in edit display area 523. In FIG. 5W, in response to detecting a drag of contact 502-10 on start trim affordance 516, device 100 updates edit display area 523 to display a new initial image in the sequence as the drag of contact 502-10 is continued by the user, as shown in FIG. 5X-5Z. Start trim affordance 516 also moves in response to detecting drag 502-10. In some embodiments, as shown in FIG. 5Y, device 100 prevents start trim affordance 516 from moving past representative image selection affordance 520 and instead provides haptic response 527. In FIG. 5AA, upon liftoff of contact 502-10, device 100 re-displays the representative image in edit display area 523. In response to detecting a tap by contact 502-11 on done control 505-a, device 100 saves trimmed media item 550 because a portion of the series of images associated with media item 550 has been trimmed, as indicated by the location of start trim affordance 516.
[0152] Figure 5AB follows Figure 5Z, where device 100 continues to detect the dragging by contact 502-10. In Figure 5AB, if start trim affordance 516 is permitted to move beyond the location of representative image selection affordance 520 shown in Figure 5Z, device 100 displays representative image indicator 542 over the original representative image. In addition, device 100 moves representative image selection affordance 520 to an image in the series of images adjacent the location of start trim affordance 516.
[0153] In Figure 5AC, in response to lift-off of contact 502-10 (lift-off indicated by a dotted oval), device 100 displays a "Make Key Photo" confirmation affordance 525 near the new location of representative image selection affordance 520. In response to detecting tap 502-11 at confirmation affordance 525 as shown in Figure 5AD, device 100 sets the image associated with representative image selection affordance 520 as the new representative image of media item 550 as shown in Figure 5AE. In response to detecting tap 502-12 away from confirmation affordance 525 as shown in Figure 5AF, device 100 does not set the new image associated with representative image selection affordance 520 as the new representative image of media item 550 as shown in Figure 5AG. In this example, start trim affordance 516 and representative image selection affordance 520 revert to the representative image indicated by the original location of representative image selection affordance 520.
[0154] In FIG. 5AH, which follows FIG. 5AE, device 100 detects a tap 502-14 on the done control 505-a. In response, device 100 saves the new trimmed media item, exits the media editing user interface 503, and displays the media item display user interface 501. In some embodiments, for example, if the media item edit is destructive, in response to detecting the tap 502-14 on the done control 505-a, device 100 displays a new media item save menu 526, as shown in FIG. 5AI. In FIG. 5AJ, in response to detecting a tap gesture 502-16 on the “Trim Original” option of the new media item save menu 526, device 100 saves the trimmed media item, exits the media editing user interface 503, and displays the trimmed media item in the media item display user interface 501, as shown in FIG. 5AK. In Figure 5AL, in response to detecting a tap gesture 502-18 on the "Save as New" option of the new media item save menu 526, the device 100 retains the media item 550, saves the trimmed media item as a new media item, exits the media editing user interface 503, and displays the media item viewing user interface 501, as shown in Figure 5AM, where both a representation of the original (untrimmed) media item 514 and a representation of the new (trimmed) media item 515 are shown within the media item collection area 510.
[0155] 5AN-5AP illustrate exemplary user interfaces for editing a merged photo, according to some embodiments. In FIG. 5AN, device 100 displays a media item editing user interface 503-4 in a "merged" image mode. In this mode, device 100 displays a merged still image of a series of images associated with media item 550 in editing display area 523. In FIG. 5AO, in response to detecting input by contact 502-20 at start trim affordance 516, device 100 displays an image adjacent to start trim affordance 516 in editing display area 523 (instead of the merged image). Upon lift-off, device 100 reverts to displaying the merged still image in editing display area 523, as shown in FIG. 5AP.
[0156] FIG. 5AQ continues from FIG. 5X, except that device 100 detects a lift-off of drag gesture 502-10. In response, device 100 displays a representative image of media item 550 in editing display area 523. Device 100 then detects a drag gesture with contact 502-22 at representative image selection affordance 520, as shown in FIGS. 5AR-5AX. FIGS. 5AS-5AU show that as image selection affordance 520 is scrolled horizontally, additional images in the sequence of images in the media item are simultaneously shown at image selection affordance 520 and in display area 523. At lift-off, device 100 detects that the location of lift-off of contact 502-22 is near the original location of the representative image. In response, device 100 snaps representative image selection affordance 520 to the original representative image.
[0157] 5AY-5BA illustrate exemplary user interfaces for switching between media item editing modes 503, according to some embodiments. In FIG. 5AY, while in a live mode media item editing user interface 503-1, device 100 displays a representative image of the media item in editing display area 523. Device 100 detects an input by contact 502-24 (e.g., a tap or press) on display mode indicator 512 while the media item is in the "live" editing mode. In response, device 100 displays an editing mode selection menu 528 having an editing mode associated with media item 550, as shown in FIG. 5AZ. In response to detecting a tap 502-26 on a "loop" editing mode option, device 100 displays a series of images associated with media item 550 in "loop" editing mode 503-2, as shown in FIG. 5BA.
[0158] 5BB-5BE illustrate exemplary user interfaces for editing a media item using an end trim affordance 518, according to some embodiments. In FIG. 5BB, while displaying a media item editing user interface 503-1, device 100 detects a drag by contact 502-28 on end trim affordance 518. In response, device 100 moves end trim affordance 518 and displays images in image sequence region 524 adjacent to end trim affordance 518 in editing display region 523, as shown in FIG. 5BB-5BC. In response to detecting a lift-off of contact 502-28, device 100 displays a representative image in editing display region 523, as shown in FIG. 5BD. In FIG. 5BE, in response to detecting a tap 502-30 on "Done" control 505-a, device 100 creates and saves a trimmed media item based on the positions of start trim affordance 516 and end trim affordance 518.
[0159] 5BF-5BR illustrate exemplary user interfaces for displaying additional information about a media item, according to some embodiments. In FIG. 5BF, device 100 displays media item display user interface 501 in a “livery” display mode for media item 550. In response to detecting upward swipe 560-2, as shown in FIG. 5BG, device 100 displays display mode selection user interface 511, including “livery” display mode representation 540-1, “loop” display mode representation 540-2, “back and forth” display mode representation 540-3, and “merge” display mode representation 540-4, as shown in FIG. 5BH. Device 100 also displays display mode selection indicators 541 around “livery” display mode representation 540-1 to indicate that “livery” display mode representation 540-1 is the currently selected display mode. In response to detecting a tap 560-4 on the "loop" display mode representation 540-2, device 100 switches to the "loop" display mode within display area 508, hides display mode selection user interface 511, and displays the entire display area 508, as shown in FIG. 5BI. In response to detecting an upward swipe 560-6, device 100 displays display mode selection user interface 511, as shown in FIG. 5BH, except that display mode selection indicator 541 is positioned around "loop" display mode representation 540-2. In response to detecting a leftward swipe with contact 560-8, or alternatively a tap on display mode expansion list indicator 540-5, as shown in FIG. 5BJ, device 100 slides the representations shown in display mode selection user interface 511 and displays a new "movie" display mode representation 540-6, as shown in FIG. 5BK. In response to detecting upward swipe 560-10 in Figure 5BL while displaying display mode selection user interface 511, device 100 displays a map 562 showing a location 564 where a media item was generated by device 100, as shown in Figure 5BM. In response to detecting upward swipe 560-12 in Figure 5BM, device 100 displays additional information associated with media item 550, as shown in Figure 5BN.
[0160] In Figure 5BO, which appears after Figure 5BH, device 100 displays display mode selection user interface 511 and displays media items 550 in the "loop" display mode. In response to detecting tap 560-14 on "loop" display mode representation 540-2, device 100 hides display mode selection user interface 511 and displays entire display area 508.
[0161] 5BP-5BR illustrate exemplary user interfaces for displaying a display mode selection user interface 511 while device 100 is in portrait mode, according to some embodiments. In FIG. 5BP, device 100 displays two representations in display mode selection user interface 511, a “library” display mode representation 540-1 and a “loop” display mode representation 540-2. In response to detecting a leftward swipe 560-16 or a tap on display mode expansion list indicator 540-5, as shown in FIG. 5BP, device 100 displays two new representations in display mode selection user interface 511, a “previous / next” display mode representation 540-3 and a “merge” display mode representation 540-4, as shown in FIG. 5BQ. In FIG. 5BR, in response to detecting a tap 560-18 on “details” control 504-e, device 100 displays media item 550 in merge mode in media item display user interface 501.
[0162] 5BS-5CM show exemplary user interfaces for editing media items, according to some embodiments. In FIG. 5BS, device 100 displays media item display user interface 501. In response to detecting a tap 560-2 on edit control 504-d, as shown in FIG. 5BT, device 100 displays media item edit user interface 503-1, as shown in FIG. 5BU. Media item edit user interface 503-1 includes media items 550 displayed in a “live” display mode in edit display area 523. In response to detecting a drag by contact 570-4 on representative image selection affordance 520, as shown in FIG. 5BV-5BW, device 100 updates the image shown in edit display area 523 and also updates the position of representative image selection affordance 520 in image sequence area 524 to correspond to the horizontal position of contact 570-4. In addition, when representative image selection affordance 520 is moved to a position other than the original representative image, device 100 displays representative image indicator 542 in image sequence region 524 at a position above the original representative image, as shown in FIG. 5BW. In FIG. 5BX, when contact 570-4 returns to the position of the original representative image, device 100 refrains from displaying representative image indicator 542 and provides haptic response 527. In FIG. 5BY, when contact 570-4 shown in FIG. 5BV continues rightward and contacts a trim affordance, such as start trim affordance 516, in some embodiments device 100 does not provide a haptic response. In FIG. 5BZ, drag 570-4 continues before the final lift-off in FIG. 5CA. In response to detecting lift-off, device 100 displays confirmation affordance 525 near or at the current position of representative image selection affordance 520. In response to detecting a tap 570-6 on the confirmation affordance 525, as shown in FIG. 5CB, device 100 sets the image in the image sequence area 524 associated with the representative image selection affordance 520 as the new representative image of the media item 550, as shown in FIG. 5CC.Alternatively, in response to detecting a tap 570-8 remote from the confirmation affordance 525, as shown in FIG. 5CD, device 100 does not set the image in the image sequence area 524 associated with the representative image selection affordance 520 as a new representative image for the media item 550, as shown in FIG. 5CE.
[0163] After FIG. 5CC, in FIG. 5CF, device 100 detects a drag by contact 570-10 on representative image selection affordance 520. If drag 570-10 moves representative image selection affordance 520 away from the new representative image in representative image sequence 524, new representative image indicator 543 is displayed in a position above the new representative image in image sequence region 524, as shown in FIG. 5CF. If drag 570-10 moves representative image selection affordance 520 back to the new representative image in image sequence region 524, as shown in FIG. 5CG, device 100 provides haptic response 527. In FIG. 5CH, after lift-off of contact 570-10, representative image selection affordance 520 is positioned at the new representative image. In response to detecting a drag by contact 570-12 on start trim affordance 516, device 100 moves start trim affordance 516. In some embodiments, in response to detecting that drag 570-12 has moved start trim affordance 516 to representative image selection affordance 520, as shown in FIG. 5CI, device 100 prevents start trim affordance 516 from moving past representative image selection affordance 520 and provides haptic response 527. After liftoff of contact 570-12, device detects a drag by contact 570-14 on representative image affordance 520 toward start trim affordance 516, as shown in FIG. 5CJ. In response, device 100 moves start trim affordance 516 along with representative image affordance 520, as shown in FIG. 5CK.
[0164] 5CK-5CM show exemplary user interfaces for selectively providing a haptic response when dragging representative image selection affordance 520 over a representative image. In FIG. 5CK, device 100 detects a drag by contact 570-15 on representative image selection affordance 520. In response, device 100 moves representative image selection affordance 520. In FIG. 5CL, device 100 provides haptic response 527 if the velocity of drag gesture 570-15, as represented by the length of arrow 572, is below a velocity threshold. In FIG. 5CM, device 100 refrains from providing a haptic response if the velocity of drag gesture 570-15, as represented by the length of arrow 574, is above a velocity threshold.
[0165] 5CN-5DJ illustrate exemplary user interfaces for displaying and playing media items, according to some embodiments. In FIG. 5CN, device 100 displays media item display user interface 501 showing a representative image of original media item 550 in display area 508 while in a "live" display mode. In FIG. 5CO, device 100 detects a swipe gesture by contact 580-2. In response, device 100 slides original media item 550 off the screen and slides new media item 584 onto the screen, following original media item 550 in the collection of media items, as shown in FIG. 5CP. In FIG. 5CP, new media item 584 has the same display mode as original media item 550, i.e., "live." As shown in FIG. 5CP, while continuing to detect the swipe gesture by contact 580-2, device 100 displays only an initial image in new media item 584 because new media item 584 is in a live display mode. In Figures 5CQ-5CR, in response to detecting lift-off of contact 580-2, the device sequentially plays a series of images associated with new media item 584, from the initial image to the representative image, as the new media item 584 slides onto the screen.
[0166] Figure 5CS is similar to Figure 5CP, except that new media item 584 is in a "loop" display mode. As shown in Figure 5CS, while detecting a swipe with contact 580-4, device 100 loops through a series of images associated with new media item 584 as new media item 584 slides across the screen because new media item 584 is in "loop" display mode.
[0167] Figure 5CT is similar to Figures 5CP and 5CS, except that new media item 584 is in a "front-back" display mode. As shown in Figure 5CT, while detecting a swipe with contact 580-6, device 100 plays a sequence of images associated with new media item 584 in a front-back pattern as new media item 584 slides onto the screen because new media item 584 is in the "front-back" display mode.
[0168] Figure 5CU is similar to Figures 5CP and 5CS, except that new media item 586 sequentially precedes original media item 550 in the collection of media items, and new media item 586 is in a "front-back" display mode. As shown in Figure 5CU, while detecting the swipe with contact 580-8, device 100 plays a sequence of images associated with new media item 586 in a front-back pattern as new media item 586 slides onto the screen because new media item 586 is in the "front-back" display mode.
[0169] Figure 5CV is similar to Figure 5CP, except that new media item 584 is in a "merged" display mode. As shown in Figure 5CV, while detecting a swipe by contact 580-10, device 100 displays a static merged image of new media item 584. In response to lift-off of contact 580-10, device 100 plays at least a portion (e.g., one-quarter, one-half, or three-quarters) of the sequence of images associated with new media item 584 and then displays the merged image.
[0170] Figure 5CW is similar to Figure 5CV, except that new media item 586 sequentially precedes original media item 550 in the collection of media items. As shown in Figure 5CW, while detecting a swipe by contact 580-12, device 100 displays a static merged image of new media item 586. In Figure 5CX, in response to lift-off of contact 580-12, device 100 plays at least a portion (e.g., one-quarter, one-half, or three-quarters) of the sequence of images associated with new media item 586 and then displays the merged image.
[0171] FIGURE 5CY is similar to FIGURE 5CW, except that new media item 586 is in a "live" display mode. While detecting the swipe by contact 580-14, device 100 displays an initial image of new media item 586 because new media item 586 is in a "live" display mode. In response to detecting lift-off of contact 580-14, device 100 sequentially plays a series of images associated with new media item 586, from the initial image to the representative image, as new media item 586 slides onto the screen.
[0172] Figure 5CZ is similar to Figure 5CY, except that new media item 586 is in a "loop" display mode. While detecting swipe 580-16, device 100 displays a series of images associated with new media item 586 that loop as new media item 586 slides across the screen because new media item 586 is in a "loop" display mode.
[0173] In FIG. 5DA, device 100 detects a tap by contact 580-18 on a representation 514 of media item 550 in media item collection region 510. In response, device 100 displays an expanded representation 551 of media item 550 in media item collection region 510 showing at least a portion of another image associated with media item 550, as shown in FIG. 5DB. Device 100 also displays scrubber bar 544. In response to detecting a swipe by contact 580-20 and swipe 580-22, as shown in FIGS. 5DB-5DE, device 100 scrubs through expanded representation 551 of media item 550 moving relative to scrubber bar 544 accordingly, and displays an image in the series of images associated with the media item in display region 508. When scrubber bar 544 is positioned away from representative image 514, representative image indicator 542 is displayed above representative image 514, as shown in FIG. 5DC. When scrubber bar 544 slowly returns to the vicinity of representative image 514, device 100 generates haptic response 527 and snaps to representative image 514, as shown in Figures 5DD-5DE.
[0174] In Figure 5DF, device 100 detects a swipe with contact 580-24 in display area 508. In response, device 100 displays a new media item 584 in area 508 that sequentially follows the original media item 550 in the collection of media items, and scales the augmented representation 551 of media item 550 back down to a single image (e.g., a thumbnail image of a representative image of media item 550), as shown in Figure 5DG.
[0175] In Figures 5DG to 5DJ, the intensity threshold (e.g., IT L In response to detecting a press input by contact 580-26 exceeding an intensity threshold (e.g., IT), device 100 displays an augmented representation 552 of media item 584 within media item collection region 510 that shows at least a portion of another image associated with media item 584. L In response to detecting a press input by contact 580-26 exceeding the media item 584 in the media item collection area 510, device 100 also displays a playhead 545 that moves over the extended representation of the media item 584 in the media item collection area 510 to indicate the current playback position within the series of images within the media item 584 shown in area 508.
[0176] 5DK-5DW show exemplary user interfaces for displaying a sequence of images associated with a media item according to a display mode of the media item, according to some embodiments. In FIG. 5DK, device 100 displays media item 550 on media item display user interface 501 in a "loop" mode, as indicated by display mode indicator 512, where a sequence of images associated with the media item are displayed sequentially and repeatedly in a loop within display area 508. As shown in FIG. 5DL-5DM, in response to a press input by contact 590-2 exceeding a light press intensity threshold, device 100 displays a representative image of media item 550 in a static display. In FIG. 5DN, after lift-off of contact 590-2, device 100 returns to displaying media item 550 in a dynamic "loop" mode. Alternatively, in FIG. 5DO, after a decrease in the intensity of contact 590-2, device 100 returns to displaying media item in a dynamic "loop" mode.
[0177] In FIG. 5DP, device 100 displays media item 550 in a "merged" mode in media item display user interface 501, as indicated by display mode indicator 512, with a series of images associated with the media item displayed side-by-side in display area 508 as a static merged image. As shown in FIGS. 5DP-5DQ, in response to a pressure input by contact 590-4 above a light pressure intensity threshold, device 100 sequentially displays a series of images associated with the media item. In FIG. 5DR, after lift-off of contact 590-4, device 100 reverts to displaying media item 550 as a static merged image. Alternatively, in FIG. 5DS, after a decrease in the intensity of contact 590-4, device 100 reverts to displaying media item 550 as a static merged image.
[0178] In Figure 5DT, device 100 displays the media item on media item display user interface 501 in a "forward and backward" mode, as indicated by display mode indicator 512, with a series of images associated with media item 550 being displayed sequentially and repeatedly forward and backward in display area 508. As shown in Figures 5DT-5DU, in response to a pressure input by contact 590-6 exceeding a light pressure intensity threshold, device 100 displays a representative image associated with the media item. After detecting lift-off (or, in some embodiments, a decrease in intensity) of contact 590-6, device 100 returns to repeatedly playing forward and backward the series of images associated with media item 550 in display area 508.
[0179] In Figure 5DV, device 100 displays media items in a "live" mode on media item display user interface 501, as indicated by display mode indicator 512, and a representative image associated with the media item is displayed in display area 508. As shown in Figures 5DV-5DW, in response to a pressure input by contact 590-8 above a light pressure intensity threshold, device 100 sequentially displays a series of images associated with the media item. After lift-off (or, in some embodiments, a reduction in intensity) of contact 590-6, device 100 reverts to displaying the representative image.
[0180] 6A-6F are flow diagrams of a method 600 for editing a media item having multiple display modes, according to some embodiments. Method 600 is performed on an electronic device (e.g., device 300, FIG. 3, or portable multifunction device 100, FIG. 1A) having a display, a touch-sensitive surface, and optionally one or more sensors for detecting the intensity of contact with the touch-sensitive surface. In some embodiments, the display is a touchscreen display, and the touch-sensitive surface is on or integrated into the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 600 are optionally combined and / or the order of some operations is optionally changed.
[0181] As described below, the method 600 provides an intuitive way to edit a media item having multiple display modes. By providing an editing user interface tailored to the currently selected display mode of the media item, it becomes easy to see how edits will affect the media item in the current display mode. The method reduces the number, range, and / or type of inputs from a user when editing a media item having multiple display modes, thereby producing a more efficient human-machine interface. For battery-operated electronic devices, allowing a user to edit media items having multiple display modes faster and more efficiently conserves power and increases the time between battery charges.
[0182] The device displays (602) in a first user interface on the display one or more images from the media item corresponding to the sequence of images in a corresponding display mode that is one of a plurality of user-selectable display modes of the media item corresponding to the sequence of images (e.g., a live photo display mode, a loop display mode, a long exposure display mode, a before and after display mode, a video display mode, a strobe effect display mode, or other display mode for displaying the media item selectable by the user). For example, FIG. 5U shows a media item display user interface 501 in a "live" mode.
[0183] While displaying one or more images from a media item in a corresponding display mode, the device detects (604) a first input (e.g., a tap gesture by contact on an edit affordance, such as tap 502-9 on edit control 504-d, as shown in FIG. 5U).
[0184] In response to detecting the first input, the device displays (606) an editing user interface for the corresponding display mode on the display. For example, FIG. 5V shows a media item editing user interface 503-1 for a “live” mode. The editing user interface for the corresponding display mode is one of a plurality of editing user interfaces for a media item corresponding to a series of images. A given editing user interface in the plurality of editing user interfaces is tailored to the corresponding display mode of the media item. For example, an editing user interface for a live photo display mode of a media item displays a representative image of the media item in a first region (e.g., editing display region 523 of FIG. 5V) because the representative image is to be displayed in the live photo display mode without user interaction. For example, an editing user interface for a loop display mode displays looping media items in a first region (e.g., editing display region 523 of FIG. 5I) because looping media items are to be displayed in the loop display mode without user interaction. For example, an editing user interface for the forward / backward display mode displays the forward / backward media items in a first area (e.g., editing display area 523 of FIG. 5N) because the forward / backward media items are displayed in the forward / backward display mode without user interaction. For example, an editing user interface for the merged display mode of media items displays a merged image of the media items in a first area (e.g., editing display area 523 of FIG. 5T) because the merged image is displayed in the merged display mode without user interaction.
[0185] In some embodiments, a given editing user interface in the plurality of editing user interfaces includes an affordance tailored to a corresponding display mode of a media item. For example, an editing user interface for a library photo display mode of a media item includes a representative image selection affordance 520 (FIG. 5V) configured to adjust a representative image (e.g., a key photo) in the library photo display mode. In some embodiments, an editing user interface for a loop display mode does not have a representative image selection affordance because the representative image cannot be adjusted in the loop display mode of a media item (e.g., FIG. 5I). In some other embodiments, an editing user interface for a loop display mode has a representative image selection affordance for adjusting a representative image of a media item (e.g., FIG. 5J).
[0186] In some embodiments, a given editing user interface is displayed in response to detecting an input corresponding to a request to edit a media item while a corresponding display mode of the media item is active. For example, as shown in FIGS. 5U-5V, in response to detecting a tap gesture on the "Edit" icon 504-d (FIG. 5U) when a live photo display mode of the media item is active, an editing user interface for the live photo display mode is displayed. For example, as shown in FIGS. 5H and 5I or 5H and 5J, in response to detecting a tap gesture on the "Edit" icon 504-d (FIG. 5H) when a loop display mode of the media item is active, an editing user interface for the loop display mode is displayed. And so on. The editing user interface for the corresponding display mode is configured to change which images are included in the media item when the media item is displayed in the corresponding display mode (e.g., the editing user interface for the corresponding display mode is configured to trim a sequence of images in the media item displayed in the corresponding display mode to a subset of less than all of the sequence of images). In some embodiments, trimming reduces the number of images in the sequence of images from the media item displayed in the corresponding display mode without removing images in the sequence of images from the media item (e.g., non-destructive editing). In some embodiments, trimming permanently removes images in the sequence of images from the media item (e.g., destructive editing). In some embodiments, trimming the media item in the corresponding display mode also applies (carries over) to other display modes of the media item. In some embodiments, trimming the media item in the corresponding display mode does not apply to other display modes of the media item, thereby allowing the trimming to be tailored to each display mode of the media item. The editing user interface for the corresponding display mode displays in parallel a first (default) region (e.g., region 523 of FIG. 5V) configured to display images in the sequence of images.In some embodiments, for some display modes, the first region displays images in the sequence of images one at a time, such that as a corresponding image is played back, the corresponding image fills the first region. In some embodiments, for some display modes, the first region displays images in the sequence of images merged into a single image that fills the first region. An editing user interface for the corresponding display mode displays in parallel a second (default) area (e.g., area 521 of FIG. 5V ) separate from the first area including a representation of an image in the series of images (e.g., a reduced representation of multiple images in the series of images of a media item is displayed in a slider in the second area), a user-adjustable start trim affordance (e.g., start handle 516 of FIG. 5V ) indicating a first boundary for playing through the series of images (e.g., the start trim affordance defines a starting image in a subset of the series of images via a position of the start trim affordance in the second area), and a user-adjustable end trim affordance (e.g., end handle 518 of FIG. 5V ) indicating a second boundary for playing through the series of images (e.g., the end trim affordance defines an ending image in the subset of the series of images via a position of the end trim affordance in the second area).
[0187] In some embodiments, the first region displays (608) a preview of the media item showing how the media item will be displayed in a corresponding display mode (e.g., by automatically playing a sequence of images repeatedly in the first region in the editing user interface for some display modes, or by merging multiple images into a single image in the first region in the editing user interface for other display modes), where the preview includes content from multiple images in the sequence of images. For example, FIG. 5I illustrates a media item editing user interface 503-2 in which images from a media item 550 are looped in the editing display area 523. For example, FIG. 5T illustrates a media item editing user interface 503-4 in which a static merged image of a media item 550 is shown in the editing display area 523. Providing a preview tailored to the currently selected display mode of the media item makes it easier to see how edits will affect the media item in the current display mode. This improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user and reduces user errors when operating / interacting with the device).
[0188] In some embodiments, the editing user interface for the corresponding display mode displays (610) multiple image adjustment affordances (e.g., 505-a through 505-h, FIG. 5V) in parallel that, when activated, provide access to image adjustment functions (e.g., cropping, rotating, filtering, lighting, markup, magic wand, undo, save / done, and / or other image editing functions). Providing quick access to these image editing functions improves usability of the device and makes the editing user interface more efficient (e.g., by reducing the number, scope, and / or type of inputs from a user required to edit a media item).
[0189] In some embodiments, the editing user interface includes a volume affordance (e.g., mute toggle 505-f, FIG. 5V) that toggles the sound of a media item on and off when activated (612). Providing an affordance for turning off the sound of a media item while editing improves usability of the device and makes the editing user interface more efficient (e.g., by providing or removing sound as needed while manipulating / interacting with the editing user interface).
[0190] While displaying the editing user interface for the corresponding display mode, the device adjusts (edits) the media item (614) according to one or more editing inputs (e.g., detected inputs directed at range trim affordances such as start trim affordance 516 or end trim affordance 518, representative image selection affordance 520, and / or other affordances in the editing user interface for the corresponding display mode) and detects input that exits the editing user interface for the corresponding display mode (e.g., a tap with contact 502-11 in FIG. 5AA).
[0191] The device exits the editing user interface for the corresponding display mode 616. For example, after the tap with contact 502-11 of Figure 5AA, the device displays media item display user interface 501, as shown in Figure 5AK.
[0192] The device displays (618) the edited media item in the corresponding display mode in the first user interface (e.g., in response to detecting an input to exit the editing user interface for the corresponding display mode). In some embodiments, in response to detecting activation of the "Done" button (e.g., by a tap gesture), the device saves the changes made in the editing user interface for the corresponding display mode and displays (e.g., in the first user interface) the edited media item in the corresponding display mode. For example, after the tap with contact 502-14 of FIG. 5AH, the device displays media item display user interface 501 including trimmed media item 550, as shown in FIG. 5AK.
[0193] In some embodiments, in response to detecting activation of the "Done" button (e.g., by a tap gesture), the device displays activatable options (e.g., "Trim Original," "Save as New Clip," and "Cancel," as shown in FIG. 5AI). In some embodiments, in response to detecting activation of the "Trim Original" option (e.g., by a tap gesture), the device applies the changes made in the editing user interface to the media item, saves the changes, and displays the edited media item in a corresponding display mode (see, e.g., FIGS. 5AJ-5AK). In some embodiments, in response to detecting activation of the "Save as New Clip" option (e.g., by a tap gesture), the device creates a new media item that includes the changes made in the editing user interface to the original media item, saves the new media item, and displays the new media item in a corresponding display mode (see, e.g., FIGS. 5AL-5AM).
[0194] In some embodiments, while displaying an editing user interface for the corresponding display mode, the device detects (620) an input corresponding to an adjustment of the start trim affordance (e.g., detects a drag gesture on the start trim affordance in the second region), and while detecting the input corresponding to the adjustment of the start trim affordance, the device stops displaying a preview of the media item in the corresponding display mode in the first region and displays, in the first region, a representation of an image corresponding to a position of the start trim affordance in the representation of the series of images. Similarly, while detecting an input corresponding to an adjustment of the end trim affordance, the device stops displaying a preview of the media item in the corresponding display mode in the first region and displays, in the first region, a representation of an image corresponding to a position of the end trim affordance in the representation of the series of images. More generally, while detecting an input corresponding to an adjustment of the range trim affordance, the device stops displaying a preview of the media item in the corresponding display mode in the first region and displays, in the first region, a representation of an image corresponding to a position of the range trim affordance in the representation of the series of images. For example, as shown in Figures 5W-5Z, adjusting the start trim affordance 516 changes the image displayed in the editing display area 523. Showing a representation of the image corresponding to the location of the range trim affordance while adjusting the range trim affordance facilitates precise trimming of the media item. This improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user and reduces user errors when manipulating / interacting with the editing user interface).
[0195] In some embodiments, the device detects (622) an end of the input corresponding to an adjustment of the start trim affordance (e.g., detects lift-off of the contact from the start trim affordance), and in response to detecting the end of the input corresponding to the adjustment of the start trim affordance, displays a second preview of the media item in the corresponding display mode within the first region, the second preview including a subset of less than all of the images in the series of images, the subset not including images in the series of images that precede the image that corresponds to the current position of the start trim affordance (e.g., see FIG. 5AH). Similarly, in response to detecting the end of the input on the end trim affordance, the device displays a second preview of the media item in the corresponding display mode within the first region, the second preview including a subset of less than all of the images in the series of images, the subset not including images in the series of images that precede the image that corresponds to the current position of the end trim affordance. By providing an updated preview tailored to the currently selected display mode of the media item in response to detecting the end of the input (e.g., detecting lift-off), it becomes easier to see how the range trim edit affects the media item in the current display mode, which improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user and by reducing the number of inputs when operating / interacting with the editing user interface).
[0196] In some embodiments, trimming a series of images in a media item also trims the corresponding audio in the media item 624. Trimming both images and corresponding audio in response to the same input improves usability of the device and makes the editing user interface more efficient (e.g., by reducing the number of inputs when operating / interacting with the editing user interface).
[0197] In some embodiments, an editing user interface for the corresponding display mode that is displayed in response to detecting a first input in accordance with a determination that the corresponding display mode is a loop display mode is an editing user interface for the loop display mode, and the device displays (626) a looping series of images in a first region in the editing user interface for the loop display mode (e.g., see 503-2 in FIG. 5I), and while displaying the looping series of images in the first region in the editing user interface for the loop display mode, the device detects an input on the start trim affordance, and while detecting the input on the start trim affordance, the device stops looping the series of images in the first region, adjusts a position of the start trim affordance in the second region in accordance with the input on the start trim affordance, and displays, in the first region, an image in the series of images that corresponds to the position of the start trim affordance in the second region. Similarly, while detecting an input on the end trim affordance, the device stops looping the series of images in the first region, adjusts the position of the end trim affordance in the second region according to the input on the end trim affordance, and displays, in the first region, an image in the series of images that corresponds to the position of the end trim affordance in the second region. More generally, while detecting an input on the range trim affordance, the device stops looping the series of images in the first region, adjusts the position of the range trim affordance in the second region according to the input on the range trim affordance, and displays, in the first region, an image in the series of images that corresponds to the position of the range trim affordance in the second region. Providing a dynamic preview of the loop display mode of a media item makes it easier to see how edits affect the media item in the loop display mode. This improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user and reducing user errors when operating / interacting with the device).Additionally, by switching to showing a representation of the image that corresponds to the location of the range trim affordance while adjusting the range trim affordance, it becomes easier to precisely trim a media item, which in turn improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user, reducing user errors when manipulating / interacting with the editing user interface).
[0198] In some embodiments, the device detects (628) an end of the input on the start trim affordance (e.g., detects lift-off of the contact from the start trim affordance) and, in response to detecting the end of the input on the start trim affordance, displays a subset of less than all of the images in the series of images to be looped in the first region, the subset not including images in the series of images that precede an image corresponding to the current position of the start trim affordance. Similarly, in response to detecting the end of the input on the end trim affordance, the device displays a subset of less than all of the images in the series of images to be looped in the first region, the subset not including images in the series of images that precede an image corresponding to the current position of the end trim affordance. In some embodiments, the editing user interface for the loop display mode does not include a representative image selection affordance configured to select a representative image in the series of images via a position of the representative image selection affordance in the second region. Providing an updated preview of the looping media items in response to detecting the end of the input (e.g., detecting lift-off) facilitates viewing how range trim edits affect the media items in the loop display mode. This improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user and by reducing the number of inputs when operating / interacting with the editing user interface).
[0199] In some embodiments, pursuant to determining that the corresponding display mode is a front-to-back display mode, the corresponding editing user interface displayed in response to detecting the first input is an editing user interface for the front-to-back display mode, and the device displays (630) in a first region in the editing user interface for the front-to-back display mode (see, e.g., FIG. 5N). While displaying the series of images playing repeatedly forward then backward in the first region in the editing user interface for the front-to-back display mode, the device detects an input on the start trim affordance, stops playing the series of images forward then backward in the first region while detecting the input on the start trim affordance, adjusts a position of the start trim affordance in the second region according to the input on the start trim affordance, and displays in the first region an image in the series of images that corresponds to the position of the start trim affordance in the second region. Similarly, while detecting an input on the end trim affordance, the device stops playing the series of images forward and then backward in the first region, adjusts the position of the end trim affordance in the second region according to the input on the end trim affordance, and displays in the first region an image in the series of images that corresponds to the position of the end trim affordance in the second region. More generally, while detecting an input on the range trim affordance, the device stops playing the series of images forward and then backward in the first region, adjusts the position of the range trim affordance in the second region according to the input on the range trim affordance, and displays in the first region an image in the series of images that corresponds to the position of the range trim affordance in the second region. Providing a dynamic preview of the back-to-back viewing mode of a media item makes it easier to see how edits affect the media item in the back-to-back viewing mode. This improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which input produces the result intended by the user and reduces user errors when operating / interacting with the device).Additionally, by switching to showing a representation of the image that corresponds to the location of the range trim affordance while adjusting the range trim affordance, it becomes easier to precisely trim a media item, which in turn improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user, reducing user errors when manipulating / interacting with the editing user interface).
[0200] In some embodiments, the device detects an end of input on the start trim affordance (632) (e.g., detects lift-off of the contact from the start trim affordance) and, in response to detecting the end of input on the start trim affordance, displays a subset of less than all of the images in the sequence of images playing forwards then backwards in the first region, the subset not including images in the sequence of images that exist before an image corresponding to the current position of the start trim affordance. Similarly, in response to detecting the end of input on the end trim affordance, the device displays a subset of less than all of the images in the sequence of images playing forwards then backwards in the first region, the subset not including images in the sequence of images that exist after an image corresponding to the current position of the end trim affordance. In some embodiments, the editing user interface for the forward / backward display mode does not include a representative image selection affordance configured to select a representative image in the sequence of images via a position of the representative image selection affordance in the second region. Providing updated previews of the previous and next media items in response to detecting the end of an input (e.g., detecting lift-off) facilitates viewing how a range trim edit affects media items in a previous and next viewing mode, which improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user and by reducing the number of inputs when operating / interacting with the editing user interface).
[0201] In some embodiments, the corresponding editing user interface displayed in response to detecting the first input pursuant to determining that the corresponding display mode is a merged display mode is an editing user interface for a merged display mode (e.g., a long exposure mode, a strobe mode, or other mode that displays a merged image using multiple images in a sequence of images in a media item), and the device displays (634) a (single) merged image in a first region in the editing user interface for the merged display mode, the merged image including content from multiple images in the sequence of images displayed in parallel (e.g., see FIG. 5T). While displaying the merged image in the first region in the editing user interface for the merged display mode, the device detects an input on the start trim affordance, and while detecting the input on the start trim affordance, the device stops displaying the merged image in the first region, adjusts a position of the start trim affordance in the second region according to the input on the start trim affordance, and displays, in the first region, an image in the sequence of images that corresponds to the position of the start trim affordance in the second region (e.g., see FIGS. 5A-5A). Similarly, while detecting an input on the end trim affordance, the device stops displaying the merged image in the first region, adjusts the position of the end trim affordance in the second region according to the input on the end trim affordance, and displays, in the first region, an image in the series of images that corresponds to the position of the end trim affordance in the second region. More generally, while detecting an input on the range trim affordance, the device stops displaying the merged image in the first region, adjusts the position of the range trim affordance in the second region according to the input on the range trim affordance, and displays, in the first region, an image in the series of images that corresponds to the position of the range trim affordance in the second region. Providing a preview of the merged display mode of a media item makes it easy to see how edits affect the media item in the merged display mode.This improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback to assist the user in determining which input will produce the result intended by the user and reducing user errors when operating / interacting with the device). Furthermore, by switching to showing a representation of the image that corresponds to the position of the range trim affordance while adjusting the range trim affordance, it becomes easier to precisely trim the media item. This also improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback to assist the user in determining which input will produce the result intended by the user and reducing user errors when operating / interacting with the editing user interface).
[0202] In some embodiments, the device detects (636) an end of the input on the start trim affordance (e.g., detects lift-off of the contact from the start trim affordance) and, in response to detecting the end of the input on the start trim affordance, displays in the first region a (single) merged image created from a subset of less than all of the images in the series of images, where the subset does not include images in the series of images that precede the image that corresponds to the current position of the start trim affordance (e.g., see Figures 5AO-5AP). Similarly, in response to detecting the end of the input on the end trim affordance, the device displays in the first region an updated (single) merged image created from a subset of less than all of the images in the series of images, where the subset does not include images in the series of images that precede the image that corresponds to the current position of the end trim affordance. Providing an updated preview of the merged image in response to detecting the end of the input (e.g., detects lift-off) facilitates viewing how the range trim edits affect the media item in merge mode. This improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user and by reducing the number of inputs when operating / interacting with the editing user interface).
[0203] In some embodiments, pursuant to a determination that the series of images in the media item have been captured by a camera, the series of images includes a representative image, the series of images includes one or more images captured by the camera after capturing the representative image, and the series of images includes one or more images captured by the camera prior to capturing the representative image, and the corresponding display mode is a library photo display mode, the device displays (638) a representative image selection affordance in the second region (e.g., representative image selection affordance 520 in region 521 of FIG. 5V ) configured to select a representative image in the series of images via a location of the representative image selection affordance in the second region. Providing affordances for adjusting the representative image of the media item improves usability of the device and provides a more efficient editing user interface.
[0204] In some embodiments, in accordance with a determination that the corresponding display mode is a library photo display mode, the corresponding editing user interface displayed in response to detecting the first input is an editing user interface for the library photo display mode, and the device displays (640) a representative image of the series of images in a first region in the editing user interface for the library photo display mode, detects an input on the start trim affordance while displaying the representative image in the first region in the editing user interface for the library photo display mode, stops displaying the representative image in the first region while detecting the input on the start trim affordance, adjusts a position of the start trim affordance in the second region according to the input on the start trim affordance, and displays, in the first region, an image in the series of images that corresponds to the position of the start trim affordance in the second region (e.g., see Figures 5W-5AA). Similarly, while detecting an input on the end trim affordance, the device stops displaying the representative image in the first region, adjusts the position of the end trim affordance in the second region according to the input on the end trim affordance, and displays, in the first region, an image in the series of images that corresponds to the position of the end trim affordance in the second region (e.g., see Figures 5BB-5D). More generally, while detecting an input on the range trim affordance, the device stops displaying the representative image in the first region, adjusts the position of the range trim affordance in the second region according to the input on the range trim affordance, and displays, in the first region, an image in the series of images that corresponds to the position of the range trim affordance in the second region. Providing a live photo display mode preview of a media item makes it easy to see how edits affect the media item in the live photo display mode. This may improve usability of the device and make the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user, reducing user errors when operating / interacting with the device).Additionally, by switching to showing a representation of the image that corresponds to the location of the range trim affordance while adjusting the range trim affordance, it becomes easier to precisely trim a media item, which in turn improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user, reducing user errors when manipulating / interacting with the editing user interface).
[0205] In some embodiments, the device detects (642) the end of the input on the start trim affordance (e.g., detects lift-off of the contact from the start trim affordance) and, in response to detecting the end of the input on the start trim affordance, displays the representative image in the first region (e.g., FIGS. 5Z-5AA). Similarly, in response to detecting the end of the input on the end trim affordance, the device displays the representative image. In response to detecting the end of the input (e.g., detects lift-off), providing an updated preview of the media item in the live photo mode makes it easier to see how the range trim edits affect the media item in the live photo display mode. This improves usability of the device and makes the editing user interface more efficient (e.g., by providing feedback to assist the user in determining which inputs produce the results intended by the user and by reducing the number of inputs when manipulating / interacting with the editing user interface).
[0206] In some embodiments, while displaying an editing user interface for the library photo display mode, the device detects (644) an input directed at a corresponding range trim affordance (e.g., a start trim affordance or an end trim affordance), where the input begins while the corresponding range trim affordance is in a start position and where the input has a corresponding magnitude (e.g., detecting a contact (or cursor) drag gesture that begins on the start trim affordance and includes a component of movement along a slider that includes a scaled-down representation of a plurality of images in the sequence of images), and in response to detecting the input directed at the corresponding range trim affordance, detects that the corresponding magnitude of the input is In response to a determination that the corresponding magnitude of the input corresponds to moving the corresponding trim range affordance by a first amount that is less than the distance between the start location of the corresponding trim range affordance and the representative image selection affordance, the device moves the corresponding trim range affordance by the first amount (without moving the representative image selection affordance), and in response to a determination that the corresponding magnitude of the input corresponds to moving the corresponding trim range affordance by a second amount that is greater than the distance between the start location of the corresponding trim range affordance and the representative image selection affordance, the device moves the corresponding trim range affordance by the second amount and also moves the representative image selection affordance (see, e.g., FIGS. 5X-5Y and 5AA). In some embodiments, the device moves the start trim affordance along the slider in accordance with a component of the movement of the contact (of the drag gesture) along the slider. In some embodiments, once the start trim affordance is at, on, or next to a representation of the current representative image, continued movement of the contact along the slider continues to move the start trim affordance and also changes the current representative image within the media item to the image that corresponds to the current position of the start trim affordance. Moving the range trim affordance in this manner allows both the range of a media item and the representative image of the media item to be changed simultaneously with a single input, thereby reducing the number of inputs required to perform these operations and making the editing user interface more efficient.In some embodiments, the start trim affordance cannot move beyond a representation in the second region that corresponds to the current representative image in the sequence of images. In some embodiments, once the start trim affordance is at, on, or next to a representation of the current representative image, continued movement of the contact along the slider does not continue to move the start trim affordance and does not change the current representative image in the media item. Moving the range trim affordance in this manner improves usability of the device and makes the user device interface more efficient (e.g., by preventing the user from accidentally changing the representative image with the range trim affordance). Similarly, in some embodiments, the device moves the end trim affordance along the slider according to a component of the movement of the contact (of the drag gesture) along the slider. In some embodiments, once the end trim affordance is at, on, or next to a representation of the current representative image, continued movement of the contact along the slider continues to move the end trim affordance and changes the current representative image in the media item to an image that corresponds to the current position of the end trim affordance. In some embodiments, the end trim affordance cannot move beyond the representation in the second region that corresponds to the current representative image in the media item. In some embodiments, once the end trim affordance is at, on, or next to the representation of the current representative image, continued movement of the contact along the slider does not continue to move the end trim affordance and does not change the current representative image in the media item.
[0207] In some embodiments, while detecting an input directed at the representative image selection affordance, the device displays (646) an indicator of the current representative image of the media item in the second region if the position of the representative image selection affordance in the second does not correspond to a representation of the current representative image of the media item (e.g., dot 542 in FIG. 5AB is displayed adjacent to a miniature representation of the current representative image of the media item). In some embodiments, when the editing user interface is initially displayed, the representative image selection affordance is displayed in a position corresponding to the representation of the representative image of the media item, as shown in FIG. 5W, and the dot is not displayed. In some embodiments, when the representative image selection affordance is moved away from a position corresponding to the representation of the representative image of the media item (e.g., in response to a drag gesture on the representative image selection affordance), the dot is displayed at or adjacent to the representation of the representative image of the media item, as shown in FIGS. 5AQ-5AV. In some embodiments, the indicator is displayed when the representative image selection affordance is moved away from its initial position, and the indicator ceases to be displayed when the representative image selection affordance returns to its initial position. Displaying an indicator of the current representative image of a media item in this manner provides improved visual feedback to the user and assists the user in returning to the current representative image if the user decides not to change the current representative image, thereby improving usability of the device and making the user-device interface more efficient (e.g., by providing feedback that assists the user in determining which input will produce the result intended by the user and reducing user errors when operating / interacting with the device).
[0208] In some embodiments, while detecting an input directed at the representative image selection affordance, in accordance with a determination that the representative image selection affordance is within a predetermined distance (greater than zero) to a location corresponding to a representation of the current representative image of the media item, the device snaps the representative image selection affordance to a location corresponding to the representation of the current representative image of the media item (648) (see, e.g., FIGS. 5AW-5AX). Snapping the representative image selection affordance in this manner helps the user return to the current representative image if the user decides not to change the current representative image. This improves usability of the device and makes the user device interface more efficient (e.g., by providing feedback that assists the user in determining which input will produce the result intended by the user and reduces user errors when operating / interacting with the device).
[0209] In some embodiments, the electronic device has one or more tactile output generators, and the device generates a tactile output (650) when the representative image selection affordance snaps to a position corresponding to the representation of the current representative image of the media item (see, e.g., haptic response 527 in FIG. 5AX). Providing haptic feedback in this manner improves usability of the device and makes the user-device interface more efficient (e.g., by alerting the user that the representative image selection affordance has returned to a position corresponding to the representation of the current representative image, thereby helping the user achieve their intended results and reducing user errors when operating / interacting with the device).
[0210] In some embodiments, while displaying an edit user interface for the corresponding display mode, the device detects (652) an input that displays an edit user interface option, and in response to detecting the input that displays the edit user interface option, displays a plurality of edit display mode affordances including a first edit display mode affordance, detects an input on the first edit display mode affordance, and in response to detecting the input on the first edit display mode affordance, changes the edit user interface from the edit user interface for the corresponding display mode to an edit user interface for the display mode corresponding to the first edit display mode affordance. For example, activating (e.g., with a tap gesture) display mode indicator icon 512 (FIG. 5AY) causes display of menu 528 (FIG. 5AZ) that includes edit display mode options for the media item. Then, activating (e.g., with a tap gesture) edit display mode option 529-1 (FIG. 5AZ) causes the edit user interface for the library photo display mode (FIG. 5AZ) to change to the edit user interface for the loop display mode (FIG. 5BA). Providing the ability to easily change between editing user interfaces for different display modes of a media item improves usability of the device and makes the user device interface more efficient (e.g., by helping a user navigate to an editing mode that corresponds to a given display mode of a media item, thereby allowing the user to preview the effect of edits on that display mode).
[0211] In some embodiments, an electronic device having a display and a touch-sensitive surface displays one or more images from a media item corresponding to the sequence of images in a corresponding display mode in a first user interface on the display, the corresponding display mode being one of a plurality of user-selectable display modes for the sequence of images (e.g., a library photo display mode, a loop display mode, a long exposure display mode, a before and after display mode, a video display mode, a strobe effect display mode, or other display mode for displaying the sequence of images selected by a user) (see, e.g., FIG. 5U). While displaying the one or more images from the media item, the device detects a first input (e.g., a tap gesture with contact on an edit affordance) (see, e.g., tap 502-9 on edit control 504-d in FIG. 5U). In response to detecting the first input, the device displays an edit user interface for the media item (see, e.g., FIG. 5V). The edit user interface for the media item is configured to modify which images are included in the media item (e.g., trim the sequence of images to a subset of less than all of the images in the sequence). The media item editing user interface displays a first (default) area that includes a representation of the media item that includes content from multiple images in a sequence of images (e.g., by playing the sequence of images over time or by merging the multiple images into a single image) (see, e.g., editing display area 523 in FIG. 5V). In some embodiments, the first area displays the images in the sequence of images one at a time, with the corresponding image filling the first area as it is displayed.The editing user interface for a media item displays in parallel a first region and a second (default) region (e.g., a slider optionally including reduced representations of multiple images in the series of images) separate from the first region (e.g., see area 521 in FIG. 5V ) including a representation of an image in the series of images, as well as multiple editing affordances for selecting a different image in the series of images as a reference point for the media item (e.g., a start image, an end image, and / or a representative image), including a user-adjustable trim affordance (e.g., start handle 516 in FIG. 5V ) that defines a start image in the subset of the series of images via the position of the start trim affordance in the second region, and a user-adjustable end trim affordance (e.g., end handle 518 in FIG. 5V ) that defines an end image in the subset of the series of images via the position of the end trim affordance in the second region. In some embodiments, the editing user interface for a media item displays multiple image adjustment affordances (e.g., affordances 505-a-505-h in FIG. 5V) in parallel that, when activated, provide access to image adjustment functions (e.g., crop, rotate, filter, lighting, markup, magic wand, undo, save / done, and / or other image editing functions). While displaying the editing user interface for the corresponding display mode, the device detects a second input corresponding to an adjustment of a corresponding editing affordance of the multiple editing affordances (e.g., detects a drag gesture that adjusts a position of a start trim affordance or an end trim affordance in the second region) (see, e.g., FIGS. 5W-5X). In response to detecting the second input, the device stops displaying in the first region a representation of the media item that includes content from the multiple images in the series of images and displays in the first region a representation of an image that corresponds to the position of the corresponding editing affordance in the representation of the series of images (see, e.g., FIGS. 5W-5X).
[0212] It should be understood that the particular order described for the operations in Figures 6A-6F is merely an example, and the order described is not intended to indicate that the operations are the only order in which they may be performed. Those skilled in the art will recognize various ways to reorder the operations described herein. In addition, it should be noted that other process details described herein with respect to other methods described herein (e.g., methods 700, 800, 900, and 1000) are also applicable in a similar manner to method 600 described above with respect to Figures 6A-6F. For example, the contacts, gestures, user interface objects, trim range affordances, display modes, media items, representative image selection affordances, tactile outputs, and animations described above with reference to method 600, optionally have one or more of the characteristics of the contacts, gestures, user interface objects, trim range affordances, display modes, media items, representative image selection affordances, tactile outputs, and animations described herein with reference to other methods described herein (e.g., methods 700, 800, 900, and 1000). For the sake of brevity, those details will not be repeated here.
[0213] 7A-7D are flow diagrams of a method for navigating and selecting a display mode for a media item having multiple display modes, according to some embodiments. Method 700 is performed on an electronic device (e.g., device 300, FIG. 3, or portable multifunction device 100, FIG. 1A) having a display, a touch-sensitive surface, and optionally one or more sensors for detecting the intensity of contact with the touch-sensitive surface. In some embodiments, the display is a touchscreen display and the touch-sensitive surface is on or integrated into the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 700 are optionally combined and / or the order of some operations is optionally changed.
[0214] As described below, the method 700 provides an intuitive way to navigate and select a display mode for a media item having multiple display modes. The method reduces the number, range, and / or type of inputs from a user when navigating between multiple display modes of a media item, thereby producing a more efficient human-machine interface. For battery-operated electronic devices, allowing a user to navigate between multiple display modes of a media item more quickly and efficiently conserves power and increases the time between battery charges.
[0215] The device displays (702) one or more images from the media item corresponding to the sequence of images in a first display mode within a first user interface on the display, the first display mode being one of a plurality of user-selectable display modes of the media item corresponding to the sequence of images (e.g., a live photo display mode, a loop display mode, a long exposure display mode, a before and after display mode, a video display mode, a strobe effect display mode, or other display mode for displaying the media item selected by the user) (e.g., see FIG. 5BF).
[0216] In some embodiments, one or more images from a media item are displayed (704) in the first user interface at a first magnification, and respective representations of the media items are displayed in the display mode selection user interface at a second magnification less than the first magnification (see, e.g., FIGS. 5BF and 5BH). Displaying representations of the media items in the display mode selection user interface at a lower magnification than the media items in the first user interface (e.g., media item playback interface) allows multiple representations to be shown and selectable simultaneously in the display mode selection user interface while also allowing easier viewing of the (larger) media items in the first user interface. This improves usability of the device and makes the user device interface more efficient.
[0217] In some embodiments, the media item (706) corresponding to the sequence of images is a first media item in a collection of media items (e.g., a media library, folder, album, or camera roll), the collection of media items is arranged in an order based on a predetermined criteria (e.g., date / time of creation of the media items in the collection, date / time of last edit, name, size, etc.), one or more forward media items precede the first media item in the order, and one or more backward media items follow the first media item in the order, and the electronic device replaces the display of the first media item with a display of a backward media item in the collection in response to detecting a swipe in a second direction (e.g., leftward), and the electronic device replaces the display of the first media item with a display of a forward media item in the collection in response to detecting a swipe in a third direction (e.g., rightward) different from the second direction. Using swipe gestures (e.g., leftward and rightward) provides an efficient input for navigating among media items in the collection of media items, as further described herein with reference to method 800. This improves usability of the device and makes the user-device interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user, reducing user errors when operating / interacting with the device).
[0218] While displaying one or more images from a media item in a first display mode, the device detects (708) a first input (e.g., detects a swipe gesture by contact on a currently displayed image in the sequence of images) (e.g., see FIG. 5BG).
[0219] In some embodiments, the first input is a swipe (e.g., an upward swipe gesture with contact) in a first direction (e.g., upward swipe 560-2 in FIG. 5BG) (710). The swipe gesture (e.g., an upward swipe gesture) provides an efficient and intuitive input for navigating from a first user interface (e.g., a media item playback interface) to a display mode selection user interface that avoids cluttering the UI with additional display controls, thereby improving usability of the device and making the user device interface more efficient (e.g., by providing feedback to assist the user in determining which input will produce the result intended by the user and reducing user errors when operating / interacting with the device), as well as reducing device power usage and improving battery life by allowing the user to use the device more quickly and efficiently.
[0220] In response to detecting the first input, the device displays (712) on the display a display mode selection user interface (e.g., a user interface configured to select a display mode for a media item corresponding to a sequence of images) that displays multiple representations of the media item in parallel, including a second representation of the media item that corresponds to a second display mode different from the first display mode (see, e.g., display mode selection user interface 511 of FIG. 5BH). In some embodiments, for a given representation of a media item, text (or another display mode identifier) describing the corresponding display mode is displayed adjacent to the given representation.
[0221] In some embodiments, the multiple representations of the media item include a first representation of the media item corresponding to a first display mode (e.g., “live” indicator 540-1 for the “live” display mode of FIG. 5BH) (714). In some embodiments, each representation of the media item corresponds to a corresponding display mode of a multiple user-selectable display modes of the media item. In some embodiments, for a given representation of the media item, text describing the corresponding display mode (or another display mode identifier) is displayed adjacent to the given representation. Displaying a representation of the media item in a display mode selection user interface corresponding to a mode currently displayed in the first user interface helps provide a context for navigation and provides a path back to the first user interface having the media item displayed in the same mode. This improves usability of the device and makes the user device interface more efficient (e.g., by providing feedback that helps the user determine which input will produce the result intended by the user and reduces user errors when operating / interacting with the device).
[0222] In some embodiments, the representations of the media item to be displayed in response to detecting the first input are selected (716) based on an analysis of the images in the sequence of images and predetermined requirements of the multiple different candidate display modes (e.g., if the device determines that the sequence of images in the media item meets the loop representation criteria, the device displays / suggests only the loop representation). Automatically selecting a representation of the media item for display within the display mode selection user interface helps the user navigate to a better display mode for the media item if a given representation corresponds to a particular display mode for the media item, thereby improving usability of the device and making the user device interface more efficient (e.g., by automatically showing only representations of display mode options for media items that are likely to be of interest to the user).
[0223] In some embodiments, the plurality of user-selectable display modes of the media item includes a library picture display mode configured to play a sequence of images in the media item in response to detecting an input (e.g., a next image input or a press input including an increase in intensity of a contact above an intensity threshold) on a representative image in the sequence of images (718) (see, e.g., FIG. 5BH). In some embodiments, playing the sequence of images in response to detecting the input includes starting with a currently displayed image (e.g., the representative image) that is in the middle of the sequence of images. In some embodiments, playing the sequence of images in response to detecting the input includes crossfading to a previous (e.g., chronologically first) image in the sequence of images and playing from the first image. In some embodiments, playing the sequence of images in response to detecting the input includes starting playback with the currently displayed image, then crossfading to the first image and playing through the sequence of images from the first image.
[0224] In some embodiments, the multiple user-selectable display modes of the media item include a loop display mode configured to (repeatedly) display a sequence of images in the media item in a loop (e.g., displaying images sequentially from the start of the sequence to the end, then starting again at the start of the sequence) (720) (e.g., “loop” indicator 540-2 of the “loop” display mode in FIG. 5BH).
[0225] In some embodiments, the multiple user-selectable display modes of the media item include a front-back display mode configured to display a series of images within the media item playing repeatedly forward and then backward (e.g., displaying images sequentially forward from the start of the sequence to the end, then starting from the end and playing backward to the start of the sequence) (722) (e.g., “front-back” indicator 540-3 of the “front-back” display mode in FIG. 5BH).
[0226] In some embodiments, the multiple user-selectable display modes of the media item include a merged image display mode configured to display a single merged image that includes content from multiple images in the sequence of images (724) (e.g., “Merge” indicator 540-4 of the “Merge” display mode in FIG. 5BH).
[0227] In some embodiments, the single merged image contains content of the same object appearing in the same location in multiple images in a sequence of images merged together in a manner that obscures moving features in between the different images and simulates the effect of long exposure times during image capture.
[0228] In some embodiments, the single merged image contains content of the same object appearing in different locations in multiple images in the sequence of images, and the different locations of the object in the multiple images are enhanced to simulate the effect of multiple exposures using strobe lighting, such that a moving object appears multiple times in the merged image.
[0229] In some embodiments, while in a merged display mode (e.g., a long exposure display mode), detecting the same input that initiates playback in a library photo display mode (e.g., a swipe, a press input including an increase in the intensity of the contact above an intensity threshold, or a long press on the displayed merged image) will crossfade from the merged image to playback of a series of images in the media item and then crossfade back to the merged image.
[0230] In some embodiments, the plurality of user-selectable display modes of the media items includes a movie display mode configured to play a sequence of images in the media items, with playback beginning with the earliest image in the sequence of images, in response to detecting a tap input on a representation of the sequence of images (e.g., instead of detecting a swipe, long press, or press input) (726). In some embodiments, the editing user interface for the movie display mode includes a control that causes the media items to be saved solely as video files (e.g., GIF, MOV, MP4, WMV, or AVI files) rather than as media items that include both still images (e.g., JPEG) and video (e.g., MOV) (e.g., "movie" indicator 540-6 for the "movie" display mode in FIG. 5BK).
[0231] In some embodiments, each representation of the media item in the display mode selection user interface displays (728) a preview of the media item in the corresponding display mode, with each representation displayed in the display mode selection user interface at a second magnification less than the first magnification of the media item in the corresponding display mode (see, e.g., FIG. 5BH). For example, a first representation of the media item corresponding to a loop display mode displays a series of images in the media item that loop at the second reduced magnification. For example, a second representation corresponding to a front-to-back display mode displays a series of images that repeatedly play forward and then backward at the second reduced magnification. For example, a third representation corresponding to a long exposure display mode displays the series of images as a single merged image at the second reduced magnification. For example, a fourth representation corresponding to a strobe display mode displays a subset of the series of images as a single merged image at the second reduced magnification. In some embodiments, these previews of the corresponding display modes are displayed in parallel at the second magnification (e.g., as a set of thumbnail images with a preview of the particular display mode applied to each thumbnail image). Displaying reduced representations of media items in a display mode selection user interface as previews of corresponding display modes provides a context for navigation, thereby improving usability of the device and making the user device interface more efficient (e.g., by providing feedback that assists the user in determining which input will produce the result intended by the user and reducing user errors when operating / interacting with the device).
[0232] In some embodiments, within the display mode selection user interface, the representations of the media items are scrollable (730) (see, e.g., FIGS. 5BJ-5BK). In some embodiments, the representations of the media items are displayed in rows and configured to scroll horizontally in response to detecting a drag or swipe gesture along the rows. In some embodiments, the representations of the media items are displayed in columns and configured to scroll vertically in response to detecting a drag or swipe gesture along the columns. Having scrollable representations of the media items within the display mode selection user interface exposes a user to additional display mode navigation options on devices with small displays. This improves usability of the device and makes the user device interface more efficient (e.g., on devices with small displays).
[0233] In some embodiments, in response to detecting the first input, the display mode selection user interface displays less than all of one or more images from the media items in the first display mode at a first magnification and multiple representations of the sequence of images at a second magnification less than the first magnification (732) (see, e.g., FIG. 5BH). Displaying a portion (e.g., a bottom portion) of the media items in the first display mode at the first magnification within the display mode selection user interface provides a context for navigation from the display mode selection user interface back to the first user interface (e.g., using a swipe down gesture back to the first user interface). This improves usability of the device and makes the user device interface more efficient (e.g., by providing feedback that assists the user in determining which input will produce the result intended by the user).
[0234] In some embodiments, the display mode selection user interface displays geographic location information about the media items (734) (see, e.g., FIG. 5BM). In some embodiments, the display mode selection user interface displays additional information associated with the series of images in the media items, such as information about people in the series of images (e.g., based on facial recognition of people), a map showing the locations where the series of images were taken, links to other photos taken at or near the same location, links to other photos taken at or near the same time (e.g., taken on the same day), and / or other related content. In some embodiments, the display mode selection user interface includes additional information associated with the media items (e.g., a map corresponding to the location of the media items, a collection of photos that includes the media items, people appearing in the images in the media items, an option to display related images, an option to display images from the same day, etc.). Displaying such information about the media items in the display mode selection user interface provides context about the media items and provides a quick navigation path to additional information related to the media items. This improves usability of the device and makes the user device interface more efficient (e.g., by providing quick access to additional information related to the media items).
[0235] While displaying the display mode selection user interface on the display, the device detects (736) an input on a second one of the multiple representations of the media item (e.g., a tap 560-4 on the “loop” indicator 540-2 as shown in FIG. 5BH).
[0236] In response to detecting an input on a second one of the representations of the media item, the device selects a second one of the plurality of user-selectable display modes of the media item that corresponds to the second one of the plurality of representations of the media item (738). In some embodiments, the second representation of the media is visually distinguished from the other representations (e.g., by highlighting, placing a box around it, etc.) to indicate that the display mode corresponding to the second representation has been selected (e.g., display mode selection indicator 541 of FIG. 5BJ).
[0237] In some embodiments, the device displays (740) an indicator of the first display mode within a first user interface on the display (e.g., displays a "live" indicator 540-1 of FIG. 5BH, a "loop" indicator 540-2 of FIG. 5BH, a "long exposure" indicator 540-3 of FIG. 5BH, or a "before / after" indicator 540-4 of FIG. 5BH). Displaying an indicator of the first display mode within the first user interface helps provide a context for navigation. This improves usability of the device and makes the user-device interface more efficient (e.g., by providing feedback that helps the user determine which inputs will produce the results intended by the user and reduces user errors when operating / interacting with the device).
[0238] In some embodiments, in response to detecting an input on a second one of the representations of the media item, the device stops displaying the display mode selection user interface (742) and displays (e.g., in the first user interface on the display) one or more images from the media item in the (selected) second display mode that corresponds to the second one of the representations of the media item (see, e.g., FIGS. 5BH-5BI). Selecting a particular display mode, exiting the display mode selection user interface, and displaying the media item in the selected display mode in response to a single input on a given representation of the media item (e.g., a tap gesture on the given representation) reduces the number of inputs required to perform these operations and makes navigation more efficient.
[0239] In some embodiments, in response to detecting an input on a second one of the representations of the media item, the device displays (744) (e.g., in a first user interface on the display) an indicator of a (selected) second display mode that corresponds to the second one of the representations of the media item (e.g., displaying the "loop" indicator 540-2 of FIG. 5BH). Displaying an indicator of the selected display mode helps provide a context for navigation, which improves usability of the device and makes the user-device interface more efficient (e.g., by providing feedback that helps the user determine which input will produce the result intended by the user and reduces user errors when operating / interacting with the device).
[0240] In some embodiments, after selecting a second display mode of the plurality of user-selectable display modes of the media item corresponding to a second representation of the plurality of representations of the media item, while the second display mode corresponding to the second representation is selected, the device detects (746) a second input (e.g., a tap gesture on the “Done” icon, a downward swipe, a double-tap gesture on the second representation 540-2 or a tap 560-14 as shown in FIG. 5BO, or other input to exit the display mode selection user interface) and, in response to detecting the second input, stops displaying the display mode selection user interface and displays (e.g., within the first user interface on the display) one or more images from the media item in the (selected) second display mode corresponding to the second representation of the plurality of representations of the media item. In some embodiments, in response to detecting the second input, the device also displays an indicator of the selected display mode corresponding to the second representation of the plurality of representations of the sequence of images. By requiring another input after selecting the desired display mode to exit the display mode selection user interface, inadvertent navigation away from the display mode selection user interface is reduced. This improves usability of the device and makes the user-device interface more efficient (e.g., by providing feedback that assists the user in determining which inputs will produce the results intended by the user, reducing user errors when operating / interacting with the device).
[0241] In some embodiments, while displaying one or more images from the media item in the first display mode within the first user interface on the display, pursuant to an (automatic) determination that a second display mode of the media item meets the recommendation criteria, the device displays (748) a suggestion to switch from the first display mode to the second display mode (e.g., including instructions for accessing a display mode selection user interface). Automatically suggesting alternative display modes for the media item assists the user in navigating to a better display mode for the media item, thereby improving usability of the device and making the user device interface more efficient.
[0242] It should be understood that the particular order described for the operations in Figures 7A-7D is merely an example, and the order described is not intended to indicate that the operations are the only order in which they may be performed. Those skilled in the art will recognize various ways to reorder the operations described herein. In addition, it should be noted that other process details described herein with respect to other methods described herein (e.g., methods 600, 800, 900, and 1000) are also applicable in a similar manner to method 700 described above with respect to Figures 7A-7D. For example, the contacts, gestures, user interface objects, trim range affordances, display modes, media items, representative image selection affordances, tactile outputs, and animations described above with reference to method 700, optionally have one or more of the characteristics of the contacts, gestures, user interface objects, trim range affordances, display modes, media items, representative image selection affordances, tactile outputs, and animations described herein with reference to other methods described herein (e.g., methods 600, 800, 900, and 1000). For the sake of brevity, those details will not be repeated here.
[0243] 8A-8F are flow diagrams of a method for changing a representative image for a media item corresponding to a sequence of images, according to some embodiments. Method 800 is performed in an electronic device (e.g., device 300, FIG. 3, or portable multifunction device 100, FIG. 1A) having a display, a touch-sensitive surface, and optionally one or more sensors for detecting the intensity of contact with the touch-sensitive surface. In some embodiments, the display is a touchscreen display and the touch-sensitive surface is on or integrated into the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 800 are optionally combined and / or the order of some operations is optionally changed.
[0244] As described below, the method 800 provides an intuitive way to change representative images for media items that correspond to a sequence of images. The method reduces the number, range, and / or type of inputs from a user when changing representative images for a media item, thereby producing a more efficient human-machine interface. For battery-operated electronic devices, allowing a user to change representative images for media items more quickly and efficiently conserves power and increases the time between battery charges.
[0245] The device displays (802) a representation of a media item corresponding to a sequence of images within a first user interface on the display, the media item including a representative image from the sequence of images (e.g., displaying a representative image from the sequence of images) (e.g., see FIG. 5BS). In some embodiments, the media item includes an image captured in response to a single activation of a shutter button, such as a tap on a virtual shutter button, a click of a physical shutter button, or a long press input on a virtual or physical shutter button in a first display mode (e.g., a library photo display mode).
[0246] While displaying a representation of a media item corresponding to a series of images in a first display mode, the device detects a first input (e.g., a tap gesture by contact on an edit affordance) (804) (see, e.g., FIG. 5BT).
[0247] In response to detecting the first input, the device displays (806) an editing user interface for the media item in a first display mode on the display (e.g., see FIG. 5BU). In some embodiments, the editing user interface is configured to trim the sequence of images in the media item displayed in the live photo display mode to a subset of less than all of the images in the sequence, and the editing interface is configured to select a new representative image for the media item in the live photo display mode. The editing user interface concurrently displays a first (default) area (e.g., editing display area 523 as shown in FIG. 5BU) configured to sequentially display images in the sequence of images at a first magnification. In some embodiments, the first area displays images in the sequence of images one at a time, with the corresponding image filling the first area as it is displayed. The editing user interface may include a representation of an image in the sequence of images at a second magnification less than the first magnification (e.g., in a slider including a reduced representation of a plurality of images in the sequence of images in the media item), a user-adjustable representative image selection affordance configured to select a new representative image in the sequence of images via a position of the representative image selection affordance in the second region (e.g., key image frame 520 of FIG. 5BU), and a user-adjustable start trim affordance indicating a first boundary for playing through the sequence of images (e.g., start handle 516 of FIG. 5BU). 5BU) indicating a second boundary for playing through the series of images (e.g., the end trim affordance defines an end image in the subset of the series of images via the position of the end trim affordance in the second region), and a user-adjustable end trim affordance (e.g., end handle 518 in FIG. 5BU) indicating a second boundary for playing through the series of images (e.g., the end trim affordance defines an end image in the subset of the series of images via the position of the end trim affordance in the second region).
[0248] In some embodiments, the sequence of images in the media item has been captured (808) by a camera (e.g., a camera that is part of the electronic device or a camera separate from the electronic device), and the sequence of images includes one or more images captured by the camera after capturing the representative image, and the sequence of images includes one or more images captured by the camera before capturing the representative image.
[0249] While displaying the editing user interface, the device detects (810) a second input directed at the representative image selection affordance (e.g., detects a contact (or cursor) drag gesture that begins on the representative image selection affordance and includes a movement component along a slider that includes a reduced representation of multiple images in the sequence of images) (e.g., the drag by contact 570-4 shown in FIG. 5BV).
[0250] While detecting a second input directed at the representative image selection affordance, the device moves (812) the representative image selection affordance in the second region in accordance with the second input (e.g., moves the representative image selection affordance along the slider in accordance with a component of the movement of the contact (of the drag gesture) along the slider), displays a visually highlighted representation of the image in the second region that corresponds to the current position of the representative image selection affordance in the second region (e.g., surrounds the representation of the image with the representative image selection affordance as the representative image selection affordance moves along a representation of the image in the series of images in the slider, enlarges the representation of the image relative to other representations in the slider in the second region, and / or changes the image displayed in the representative image selection affordance as the representative image selection affordance moves along the representation of the image in the series of images in the slider), and displays in the first region an image from the series of images that corresponds to the current position of the representative image selection affordance in the second region. (e.g., a representation of an image in the second region that corresponds to the current location of the representative image selection affordance in the second region is highlighted while the corresponding image is displayed at a higher magnification in the first region) (see, e.g., Figures 5BW-5BX).
[0251] In some embodiments, a representation of the image in the second region corresponding to the current location of the representative image selection affordance in the second region and an image in the first region corresponding to the current location of the representative image selection affordance are updated (814) as the location of the representative image selection affordance moves within the second region (see, e.g., FIGS. 5BW-5BX). Providing simultaneous updates of the image in the first region and the representation in the second region as the location of the representative image selection affordance moves provides visual feedback to assist in selecting a new representative image. This improves usability of the device and makes the user device interface more efficient (e.g., by providing feedback to assist the user in determining which inputs will produce the results intended by the user and selecting a new representative image).
[0252] In some embodiments, the device detects (816) the end of the second input (e.g., detects lift-off of the contact that was providing the second input), and in response to detecting the end of the second input, the device displays a representative image confirmation affordance (e.g., displays “Create Key Photo (Representative Image)” in FIG. 5CA in response to detecting lift-off of contact 570-4 in FIG. 5BZ). In some embodiments, the representative image confirmation affordance is displayed adjacent to the location of the representative image selection affordance at the end of the second input. In some embodiments, the representative image selection affordance remains in the location to which it was moved in response to the second input, even after the second input has ended (e.g., until another input is detected or until a predetermined time has passed). Displaying the representative image confirmation affordance when the input has ended provides visual feedback that helps guide the user during the selection of a new representative image. This improves usability of the device and makes the user-device interface more efficient (e.g., by providing feedback that assists the user in determining which input produces the result intended by the user and selecting a new representative image, reducing user errors when operating / interacting with the device).
[0253] In some embodiments, while displaying the representative image confirmation affordance, the device detects (818) an input directed at the representative image confirmation affordance (e.g., detects a tap gesture on the representative image confirmation affordance or a hidden hit area of the representative image confirmation affordance) and, in response to detecting the input directed at the representative image confirmation affordance, updates the representative image in the media item to an image corresponding to the current location of the representative image selection affordance in the second region. For example, tap gesture 570-6 on "Make Key Photo" in FIG. 5CB confirms the selection of the image corresponding to the current location of the representative image selection affordance, displayed in the first region, as the updated representative image of the media item. Requiring a confirmation input after tentatively selecting a new representative image for a media item reduces accidental or unnecessary selection of a new representative image. This improves usability of the device and makes the user device interface more efficient (e.g., by providing feedback to assist the user in determining which input will produce the result intended by the user and reducing user errors when operating / interacting with the device).
[0254] In some embodiments, while displaying the representative image review affordance, the device detects (820) an input that is not directed toward the representative image review affordance (e.g., detects a tap gesture in the editing user interface away from the representative image review affordance or a hidden hit area of the representative image review affordance) and, in response to detecting the input that is not directed toward the representative image review affordance, refrains from updating the representative image in the media item to an image that corresponds to the current location of the representative image selection affordance in the second region. For example, tap gesture 570-8 away from “Make Key Photo” in FIG. 5CD cancels the selection of the image that corresponds to the current location of the representative image selection affordance, displayed in the first region, as the updated representative image of the media item. Thus, in some embodiments, the device detects an input while the representative image review affordance is displayed, and in response to detecting the input, in accordance with a determination that the input is directed toward the representative image review affordance, the device updates the representative image in the media item to an image that corresponds to the current location of the representative image selection affordance in the second region. Additionally, pursuant to determining that the input is not directed to the representative image confirmation affordance, the device refrains from updating the representative image in the media item to an image that corresponds to the current location of the representative image selection affordance in the second region. As described above, by requiring a confirmation input after a tentative selection of a new representative image for a media item, accidental or unnecessary selection of a new representative image is reduced. This improves usability of the device and makes the user-device interface more efficient (e.g., by providing feedback that assists the user in determining which input will produce the result intended by the user, reducing user errors when operating / interacting with the device).
[0255] In some embodiments, in response to detecting input not directed at the representative image confirmation affordance, the device ceases displaying the representative image confirmation affordance (822) and moves the position of the representative image selection affordance in the second region to (or adjacent to) a representation of the representative image (e.g., the image in the media item that was the representative image prior to detecting the second input) (see, e.g., FIGS. 5CD-5CE). If selection of a new representative image is not confirmed, the device automatically removes any changes made to the user interface to indicate the tentative selection of a new representative image, reducing the number of inputs required from the user, thereby generating a more efficient human-machine interface.
[0256] In some embodiments, while displaying the editing user interface, the device detects (824) a third input directed at a corresponding range trim affordance (e.g., a start trim affordance or an end trim affordance), where the third input begins while the corresponding range trim affordance is in a start position and where the third input has a corresponding magnitude (e.g., detecting a contact (or cursor) drag gesture that begins on the start trim affordance and includes a component of movement along a slider that includes a reduced representation of a plurality of images in the sequence of images), and detects a third input directed at the corresponding range trim affordance. In response to this, in accordance with a determination that the corresponding magnitude of the third input corresponds to moving the corresponding range trim affordance by a first amount that is less than the distance between the start position of the corresponding range trim affordance and the representative image selection affordance, the corresponding range trim affordance is moved by a first amount, and in accordance with a determination that the corresponding magnitude of the third input corresponds to moving the corresponding range trim affordance by a second amount that is greater than the distance between the start position of the corresponding range trim affordance and the representative image selection affordance, the corresponding range trim affordance is moved adjacent to the representative image selection affordance (e.g., see Figures 5CH to 5CJ).
[0257] In some embodiments, the device moves the start trim affordance along the slider according to a component of the movement of the contact (of the drag gesture) along the slider. In some embodiments, once the start trim affordance is at, on, or next to a representation of the current representative image, continued movement of the contact along the slider continues to move the start trim affordance and also changes the current representative image within the media item to an image corresponding to the current position of the start trim affordance (see, e.g., Figures 5Y, 5AB, and 5AC). Moving the range trim affordance in this manner allows both the range of the media item and the representative image of the media item to be changed simultaneously with a single input, thereby reducing the number of inputs required to perform these operations and making the editing user interface more efficient.
[0258] In some embodiments, the start trim affordance cannot be moved beyond the representation in the second region that corresponds to the current representative image in the sequence of images. In some embodiments, once the start trim affordance is at, on, or next to the representation of the current representative image, continued movement of the contact along the slider does not continue to move the start trim affordance and does not change the current representative image in the media item. Moving the range trim affordance in this manner improves usability of the device and makes the user device interface more efficient (e.g., by preventing a user from accidentally changing the representative image with the range trim affordance).
[0259] Similarly, in some embodiments, the device moves the end trim affordance along the slider according to a component of the movement of the contact (of the drag gesture) along the slider. In some embodiments, once the end trim affordance is at, on, or next to a representation of the current representative image, continued movement of the contact along the slider continues to move the end trim affordance and also changes the current representative image in the media item to an image that corresponds to the current position of the end trim affordance.
[0260] In some embodiments, the end trim affordance cannot move beyond the representation in the second region that corresponds to the current representative image in the media item. In some embodiments, once the end trim affordance is at, on, or next to the representation of the current representative image, continued movement of the contact along the slider does not continue to move the end trim affordance and does not change the current representative image in the media item.
[0261] In some embodiments, while detecting a second input directed at the representative image selection affordance, the device displays (826) an indicator of the current representative image of the media item in the second region (e.g., dot 542 in FIG. 5CD is displayed adjacent to a reduced-size representation of the current representative image in the media item). Displaying an indicator of the current representative image of the media item provides improved visual feedback to the user and helps the user return to the current representative image if the user decides not to change the current representative image. This improves usability of the device and makes the user-device interface more efficient (e.g., by providing feedback that assists the user in determining which input will produce the result intended by the user and reduces user errors when operating / interacting with the device).
[0262] In some embodiments, while detecting a second input directed at the representative image selection affordance, the device refrains from displaying an indicator of the current representative image of the media item in the second region (828) when the representative image selection affordance is in a position corresponding to the representation of the representative image of the media item (see, e.g., FIGS. 5CK-5CL). In some embodiments, when the editing user interface is initially displayed, the representative image selection affordance is displayed in a position corresponding to the representation of the representative image of the media item, as shown in FIG. 5BU, and the dot is not displayed. In some embodiments, when the representative image selection affordance is moved away from a position corresponding to the representation of the representative image of the media item (e.g., in response to a drag gesture on the representative image selection affordance), the dot is displayed at or adjacent to the position corresponding to the representation of the representative image of the media item, as shown in FIG. 5BY-5CA. In some embodiments, when the representative image selection affordance is moved away from its initial position, the indicator is displayed, and when the representative image selection affordance returns to its initial position, the indicator ceases to be displayed. Displaying an indicator of the current representative image of a media item in this manner provides improved visual feedback to the user and assists the user in returning to the current representative image if the user decides not to change the current representative image, thereby improving usability of the device and making the user-device interface more efficient (e.g., by providing feedback that assists the user in determining which input will produce the result intended by the user and reducing user errors when operating / interacting with the device).
[0263] In some embodiments, in response to detecting an input directed at the representative image confirmation affordance, the device displays (830) an indicator of an original representative image of the series of images in the second region (e.g., dot 542 in FIG. 5BY is displayed adjacent to a scaled-down representation of the original representative image of the media item). In some embodiments, after the representative image of the media item is changed, the indicator is displayed in the second region at or adjacent to a scaled-down representation of the original representative image of the media item. In some embodiments, the indicator of the original representative image is displayed in parallel with the indicator of the current representative image (e.g., when the current representative image is different from the original representative image and the representative image selection affordance is displayed away from the location of the current representative image or the location of the original representative image, as shown by dots 542 and 543 in FIG. 5CF). Displaying an indicator of the original representative image of the media item provides improved visual feedback to the user, helping the user return to the original representative image. This improves usability of the device and makes the user-device interface more efficient (e.g., by providing feedback that assists the user in determining which input will produce the result intended by the user and reducing user errors when operating / interacting with the device).
[0264] In some embodiments, the electronic device has one or more tactile output generators, and while detecting a second input directed at the representative image selection affordance, the device generates a tactile output when the representative image selection affordance moves over a location corresponding to a representation of the representative image of the media item (832) (see, e.g., haptic response 527 shown in FIG. 5CL). In some embodiments, the device generates a tactile output when the representative image selection affordance advances over a reduced representation of the original representative image of the media item. In some embodiments, the tactile output is generated when the representative image selection affordance is moved past the location of the original representative image at a velocity less than a threshold velocity, and the tactile output is not generated when the representative image selection affordance is moved past the location of the original representative image at a velocity greater than the threshold velocity (see, e.g., FIGS. 5CL and 5CM). Providing tactile feedback in this manner improves the usability of the device and makes the user-device interface more efficient (e.g., by alerting the user that the representative image selection affordance has returned to a location corresponding to a representation of the original representative image, thereby assisting the user in achieving an intended result and reducing user errors when operating / interacting with the device).
[0265] In some embodiments, the electronic device has one or more tactile output generators, and after updating a representative image in the sequence of images, while detecting input within the editing user interface and directed to the representative image selection affordance, the device generates a tactile output when the representative image selection affordance moves over a location corresponding to a representation of the updated representative image of the media item (834) (see, e.g., FIG. 5CI). In some embodiments, the device generates a tactile output when the representative image selection affordance advances over a reduced representation of the current representative image of the media item. In some embodiments, the tactile output is generated when the representative image selection affordance is moved past the location of the current representative image at a velocity less than a threshold velocity, and the tactile output is not generated when the representative image selection affordance is moved past the location of the current representative image at a velocity greater than the threshold velocity. Providing tactile feedback in this manner improves operability of the device and makes the user device interface more efficient (e.g., by alerting the user that the representative image selection affordance has returned to a location corresponding to a representation of the updated representative image, thereby assisting the user in achieving an intended result and reducing user errors when operating / interacting with the device).
[0266] In some embodiments, the electronic device has one or more tactile output generators, and while detecting input within the editing user interface and directed to the corresponding range trim affordance, the device generates a tactile output when the corresponding range trim affordance is moved to a position corresponding to a representation of a representative image of the media item (836) (e.g., FIG. 5CL). In some embodiments, the device generates a tactile output when the start trim affordance is over a scaled-down representation of the current representative image of the media item. Similarly, in some embodiments, the device generates a tactile output when the end trim affordance is over a scaled-down representation of the current representative image of the media item. In some embodiments, the device generates a tactile output when it receives an input corresponding to a request to move the corresponding range trim affordance to a position at or beyond the representation of the representative image of the media item. Providing tactile feedback in this manner improves the usability of the device and makes the user device interface more efficient (e.g., by alerting the user that the range trim affordance has been moved to a position corresponding to a representation of a representative image of the media item, thereby assisting the user in achieving an intended result and reducing user errors when operating / interacting with the device).
[0267] In some embodiments, the device detects (838) an input corresponding to a request to move the representative image selection affordance beyond the trim range affordance, and in response to detecting the input corresponding to the request to move the representative image selection affordance, moves the trim range affordance (e.g., to the same location as the representative image selection affordance or adjacent to the representative image selection affordance) (see, e.g., FIGS. 5CJ-5CK). Moving the representative image selection affordance in this manner allows both the range of a media item and the representative image of the media item to be changed simultaneously with a single input, thereby reducing the number of inputs required to perform these operations and making the editing user interface more efficient.
[0268] In some embodiments, the device detects (840) an input corresponding to a request to move the representative image selection affordance beyond the trim range affordance, and in response to detecting the input corresponding to the request to move the representative image selection affordance, moves the trim range affordance (e.g., to the same location as the trim range affordance) in accordance with a determination that the trim range affordance is not at the end of the series of images, and refrains from moving the trim range affordance in accordance with a determination that the trim range affordance is at the end of the series of images (see, e.g., FIGS. 5CJ-5CK). Moving the representative image selection affordance in this manner enables both the range of a media item and the representative image of the media item to be changed simultaneously with a single input, thereby reducing the number of inputs required to perform these operations and making the editing user interface more efficient.
[0269] In some embodiments, the device detects (842) an input corresponding to a request to move the representative image selection affordance relative to the trim range affordance, and in response to detecting the input corresponding to the request to move the representative image selection affordance relative to the trim range affordance, in response to determining that the input corresponding to the request to move the representative image selection affordance relative to the trim range affordance is a request to move the trim range affordance to a position beyond the representative image selection affordance (e.g., a drag input that starts on the trim range affordance and moves over the representative image selection affordance), the device moves the range trim affordance adjacent to the representative image selection affordance and generates a tactile output (e.g., FIG. 5CI), and pursuant to a determination that the input corresponding to the request to move the representative image selection affordance relative to the range trim affordance is a request to move the representative image selection affordance to a position beyond the range trim affordance (e.g., a drag input that starts on the representative image selection affordance and moves over the range trim affordance), the device moves the representative image selection affordance adjacent to the range trim affordance without generating a tactile output (e.g., FIG. 5CJ-FIG. 5CK). Providing haptic feedback in this manner improves operability of the device and makes the user-device interface more efficient (e.g., by providing haptic feedback in some situations that would assist the user but not providing haptic feedback in other situations that may provide too much feedback or may confuse the user, thereby assisting the user in achieving the intended results and reducing user errors when operating / interacting with the device).
[0270] In some embodiments, the device detects (844) an input corresponding to a request to edit the series of images (e.g., change the start point, end point, or representative image of the series of images in a media item), and, in response to detecting the input corresponding to the request to edit the series of images, moves the representative image selection affordance (e.g., adjacent to the range trim affordance) in response to a determination that the input corresponding to the request to edit the series of images is a request to move the representative image selection affordance adjacent to or beyond a representation of the current representative image (e.g., a drag input starting on the representative image selection affordance and moving adjacent to or beyond a scaled-down representation of the current representative image of the media item in a slider), and conditionally generates a tactile output based on whether a speed of movement of the input exceeds a corresponding speed threshold (e.g., a drag input having a speed above a corresponding speed threshold when moving across or adjacent to the scaled-down representation of the current representative image). if so, the device generates a corresponding tactile output; if the drag input has a speed below a corresponding speed threshold when moving over or adjacent to the scaled-down representation of the current representative image, the device refrains from generating the corresponding tactile output, or vice versa) (e.g., Figures 5CM-5CN); pursuant to a determination that the input corresponding to a request to edit the series of images is a request to move the range trim affordance to a position beyond the representation of the current representative image (e.g., a drag input that starts on the range trim affordance and moves adjacent to or over a scaled-down representation of the current representative image of the media item in a slider, such as the representative image selection affordance), the device moves the range trim affordance (e.g., adjacent to the representative image selection affordance) and generates a tactile output regardless of the movement speed of the input (e.g., the tactile output is generated regardless of whether the drag input is above or below the movement speed threshold) (e.g., see Figure 5CH).Providing haptic feedback in this manner improves operability of the device and makes the user-device interface more efficient (e.g., by providing haptic feedback in some situations that would assist the user, but not providing haptic feedback in other situations that may provide too much feedback or may confuse the user, thereby helping the user achieve their intended results and reducing user errors when operating / interacting with the device).
[0271] It should be understood that the particular order described for the operations in Figures 8A-8F is merely an example, and the order described is not intended to indicate that the operations are the only order in which they may be performed. Those skilled in the art will recognize various ways to reorder the operations described herein. In addition, it should be noted that other process details described herein with respect to other methods described herein (e.g., methods 600, 700, 900, and 1000) are also applicable in a similar manner to method 800 described above in connection with Figures 8A-8F. For example, the contacts, gestures, user interface objects, trim range affordances, display modes, media items, representative image selection affordances, tactile outputs, and animations described above with reference to method 800, optionally have one or more of the characteristics of the contacts, gestures, user interface objects, trim range affordances, display modes, media items, representative image selection affordances, tactile outputs, and animations described herein with reference to other methods described herein (e.g., methods 600, 700, 900, and 1000). For the sake of brevity, those details will not be repeated here.
[0272] 9A-9I are flow diagrams of a method for navigating through a collection of media items, where the media items have multiple user-selectable display modes, according to some embodiments. Method 900 is performed on an electronic device (e.g., device 300, FIG. 3, or portable multifunction device 100, FIG. 1A) having a display, a touch-sensitive surface, and optionally one or more sensors for detecting the intensity of contact with the touch-sensitive surface. In some embodiments, the display is a touchscreen display, and the touch-sensitive surface is on or integrated into the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 900 are optionally combined and / or the order of some operations is optionally changed.
[0273] As described below, the method 900 provides an intuitive way of navigating through a collection of media items, where the media items have multiple user-selectable display modes. This method creates a more efficient human-machine interface for such navigation. For battery-operated electronic devices, allowing users to navigate through such collections of media items more efficiently conserves power and increases the time between battery charges.
[0274] The device displays (902) within a first user interface on the display a representation of a first media item corresponding to a series of images (e.g., images captured in response to a single activation of a shutter button, such as a tap on a virtual shutter button, a click of a physical shutter button, or a long press input on a virtual or physical shutter button) in a first display mode (e.g., a library photo display mode) of a plurality of user-selectable display modes, where the first media item is part of a collection of media items (e.g., in a media library, folder, album, or camera roll) arranged in an order based on predetermined criteria (e.g., date / time of creation, date / time of last edit, name, size, etc. of the media items in the collection), with one or more leading media items preceding the first media item in the order and one or more trailing media items following the first media item in the order (see, e.g., FIG. 5CN).
[0275] In some embodiments, the plurality of user-selectable display modes of the corresponding media item includes a live photo display mode. When the corresponding media item is in the live photo display mode, the electronic device displays a representative image of the sequence of images in the corresponding media item while a touch input that causes the corresponding media item to be displayed on the display is detected. In response to detecting an end of the touch input that causes the corresponding media item to be displayed on the display (e.g., detecting a lift-off of the touch input contact), the device plays images in the sequence of images in the corresponding media item starting with the representative image, then cross-fades to the start image in the sequence of images, plays through the sequence of images from the start image, and then redisplays the representative image. In some embodiments, the second sequence of images continues to play from the corresponding image while the rear media item slides onto the display (after an end of the touch input is detected). Playing the subsequent (or previous) media item in the live photo display mode in this manner "animates" the subsequent (or previous) media item during navigation, thereby indicating to the user that the subsequent (or previous) media item is in the live photo display mode. This helps users more efficiently navigate and view the media items in their collection in their selected display mode.
[0276] In some embodiments, the plurality of user-selectable display modes of the corresponding media items includes a front-to-back display mode configured to display a sequence of images in the corresponding media item that play repeatedly forward and then backward (904) (see, e.g., FIG. 5CT). When the corresponding media item is in the front-to-back display mode, the sequence of images in the corresponding media item begin to play forward and then backward while a touch input that causes the corresponding media item to be displayed on the display (e.g., a swipe / drag gesture that causes the corresponding media item to be scrolled on the display) is detected, and the sequence of images in the corresponding media item begin to play forward and then backward after the touch input that causes the corresponding media item to be displayed on the display ends (e.g., after detecting lift-off of the contact that provided the swipe / drag gesture). In some embodiments, the touch input scrolls the corresponding media item on the display, and the corresponding media item begins to play forward and then backward when it has scrolled a quarter, a third, a half, or some other predefined amount on the display. In some embodiments, the second series of images continues to play back and forth while the rear media item slides onto the display (either before or after the end of the touch input is detected). Playing the subsequent (or previous) media item in the forward / backward display mode in this manner initiates the forward or back subsequent (or previous) media item during navigation, thereby indicating to the user that the subsequent (or previous) media item is in the forward / backward display mode. This helps the user more efficiently navigate and view the media items in the collection in their selected display mode.
[0277] In some embodiments, the plurality of user-selectable display modes of the corresponding media items includes a merged image display mode configured to display a single merged image including the parallel displayed content from the plurality of images in the sequence of images in the corresponding media items (906) (see, e.g., FIG. 5CV). When the corresponding media items are in the merged image display mode, the electronic device displays the single merged image while a touch input that causes the corresponding media items to be displayed on the display (e.g., a swipe / drag gesture that causes the corresponding media items to be scrolled on the display) is detected. In response to detecting an end of the touch input that causes the corresponding media items to be displayed on the display (e.g., detecting a lift-off of the contact of the swipe / drag gesture), the electronic device plays the plurality of images in the sequence of images in the corresponding media items (e.g., cross-fades from the single merged image to a corresponding image in the sequence of images, and then plays through the sequence of images from the corresponding image, where the corresponding image is one of a starting image in the sequence of images in the corresponding media items, a representative image in the sequence of images in the corresponding media items, or an ending image in the sequence of images in the corresponding media items), and then re-displays the single merged image. In some embodiments, the second series of images continues to play while the rear media item slides onto the display (after the end of the touch input is detected). In some embodiments, playing the images in the series of images includes starting the playing of the images in the series of images at a starting image in the series of images, then playing through all or a portion (e.g., one-quarter, one-half, or three-quarters) of the images in the series, and then redisplaying the merged images. Playing the subsequent (or previous) media item in a merged display mode in this manner during navigation indicates to the user that the subsequent (or previous) media item is in a merged display mode, thereby assisting the user in more efficiently navigating and viewing the media items in a collection in their selected display mode.
[0278] In some embodiments, a collection of media items includes media items that include only a single still image, and for such media items, only the single still image is displayed in response to detecting a touch input that causes t...
Claims
1. In an electronic device having a display and a touch-sensitive surface, displaying within a first user interface on the display a representation of a media item corresponding to a sequence of images, the media item including a representative image from the sequence of images in a first display mode; detecting a first input while displaying the representation of the media item corresponding to the sequence of images in the first display mode; responsive to detecting the first input, on the display in the first display mode, an editing user interface for the media item, the editing user interface comprising: a first region configured to sequentially display images in the sequence of images at a first magnification; a second region separate from the first region, a reduced representation of an image in the series of images at a second magnification less than the first magnification displayed in a slider in the second area; a user-adjustable representative image selection affordance configured to select a new representative image in the sequence of images via a position of the representative image selection affordance relative to the slider; and A second region including: Display in parallel, Displaying an editing user interface; detecting a second input directed toward the representative image selection affordance while displaying the editing user interface; while detecting the second input directed toward the representative image selection affordance; moving the representative image selection affordance relative to the slider in accordance with the second input; displaying within the first region an image from the set of images that corresponds to a current position of the representative image selection affordance relative to the slider; A method comprising:
2. the sequence of images in the media item are captured by a camera; the series of images includes one or more images captured by the camera after capturing the representative image; the sequence of images includes one or more images captured by the camera prior to capturing the representative image; The method of claim 1.
3. 2. The method of claim 1 , wherein both the representation of an image in the second region corresponding to the current position of the representative image selection affordance relative to the slider and the image in the first region corresponding to the current position of the representative image selection affordance are updated as the position of the representative image selection affordance moves relative to the slider.
4. Detecting an end of the second input; and displaying a representative image confirmation affordance in response to detecting the end of the second input; The method of claim 1 , comprising:
5. Detecting an input directed toward the representative image confirmation affordance while displaying the representative image confirmation affordance; in response to detecting the input directed toward the representative image confirmation affordance, updating the representative image in the sequence of images to the image that corresponds to the current position of the representative image selection affordance relative to the slider; The method of claim 4 , comprising:
6. In response to detecting the input directed to the representative image confirmation affordance, displaying within the second region an indicator of an original representative image of the series of images. The method according to claim 5.
7. The electronic device having one or more tactile output generators, the method comprising: after updating the representative image in the sequence of images, generating a tactile output when the representative image selection affordance moves over a location corresponding to a representation of the updated representative image in the sequence of images while detecting input within the editing user interface and directed at the representative image selection affordance. The method according to claim 5.
8. Detecting an input not directed toward the representative image confirmation affordance while displaying the representative image confirmation affordance; in response to detecting the input not directed toward the representative image confirmation affordance, refraining from updating the representative image in the media item to the image that corresponds to the current position of the representative image selection affordance relative to the slider; The method of claim 4 , comprising:
9. In response to detecting the input not directed toward the representative image confirmation affordance, Stopping displaying the representative image confirmation affordance; and moving the position of the representative image selection affordance relative to the slider to a representation of the representative image; The method of claim 8 , comprising:
10. a third input, while displaying the editing user interface, directed to a corresponding range trim affordance displayed in the slider, the third input begins while the corresponding range trim affordance is in a start position; and the third input has a corresponding magnitude. detecting a third input; and in response to detecting the third input directed toward the corresponding range trim affordance; moving the corresponding range trim affordance by a first amount in accordance with a determination that the corresponding magnitude of the third input corresponds to moving the corresponding range trim affordance by the first amount that is less than a distance between the start position of the corresponding range trim affordance and the representative image selection affordance; moving the corresponding trim range affordance adjacent to the representative image selection affordance in accordance with a determination that the corresponding magnitude of the third input corresponds to moving the corresponding trim range affordance by a second amount that is greater than the distance between the starting position of the corresponding trim range affordance and the representative image selection affordance; 10. The method of claim 1 , comprising:
11. displaying, within the second region, an indicator of a current representative image in the sequence of images while detecting the second input directed toward the representative image selection affordance. The method of claim 1.
12. while detecting the second input directed at the representative image selection affordance, refraining from displaying the indicator of the current representative image in the series of images in the second region when the representative image selection affordance is in a position corresponding to a representation of the representative image in the series of images. The method of claim 11.
13. the electronic device having one or more tactile output generators, the method comprising: generating a tactile output when the representative image selection affordance moves over a location corresponding to a representation of the representative image in the sequence of images while detecting the second input directed at the representative image selection affordance. The method of claim 1.
14. the electronic device having one or more tactile output generators, the method comprising: while detecting input within the editing user interface and directed at a corresponding range trim affordance displayed within the slider, generating a tactile output when the corresponding range trim affordance is moved to a position corresponding to a representation of the representative image within the sequence of images. The method of claim 1.
15. Detecting an input corresponding to a request to move the representative image selection affordance beyond a range trim affordance displayed within the slider; in response to detecting the input corresponding to the request to move the representative image selection affordance, moving the trim range affordance; The method of claim 1 , comprising:
16. Detecting an input corresponding to a request to move the representative image selection affordance beyond a range trim affordance displayed within the slider; In response to detecting the input corresponding to the request to move the representative image selection affordance, moving the trim range affordance in accordance with a determination that the trim range affordance is not at an end of the sequence of images; refraining from moving the trim range affordance in accordance with a determination that the trim range affordance is at an end of the sequence of images; The method of claim 1 , comprising:
17. The method of claim 16, further comprising: detecting an input corresponding to a request to move the representative image selection affordance relative to a range trim affordance displayed within the slider; in response to detecting the input corresponding to the request to move the representative image selection affordance relative to the range trim affordance; in response to a determination that the input corresponding to the request to move the representative image selection affordance relative to the range trim affordance is a request to move the range trim affordance to a position beyond the representative image selection affordance, moving the range trim affordance adjacent to the representative image selection affordance and generating a tactile output; moving the representative image selection affordance adjacent to the trim range affordance without generating a tactile output in response to a determination that the input corresponding to the request to move the representative image selection affordance relative to the trim range affordance is a request to move the representative image selection affordance to a position beyond the trim range affordance; The method of claim 1 , comprising:
18. detecting an input corresponding to a request to edit the sequence of images; in response to detecting the input corresponding to the request to edit the sequence of images, in response to a determination that the input corresponding to the request to edit the sequence of images is a request to move the representative image selection affordance adjacent to or beyond a representation of a current representative image, moving the representative image selection affordance and conditionally generating a tactile output based on whether a speed of movement of the input exceeds a corresponding speed threshold; pursuant to a determination that the input corresponding to the request to edit the set of images is a request to move a range trim affordance displayed in the slider to a position beyond the representation of the current representative image, moving the range trim affordance and generating a tactile output regardless of the rate of movement of the input; The method of claim 1 , comprising:
19. The method of claim 1, wherein the first area displays a preview of the media item indicating how the media item will be displayed in the first display mode, the preview including content from a plurality of images in the series of images.
20. while detecting an input directed at the representative image selection affordance, if a position of the representative image selection affordance within the slider does not correspond to a representation of a current representative image of the media item, displaying an indicator of the current representative image of the media item within the second region; The method of claim 1 , comprising:
21. While detecting an input directed at the representative image selection affordance, snapping the representative image selection affordance to the position corresponding to the representation of the current representative image of the media item pursuant to a determination that the representative image selection affordance is within a predetermined distance to a position corresponding to the representation of the current representative image of the media item; 21. The method of claim 20, comprising:
22. A display and a touch-sensitive surface; and one or more processors; Memory, One or more programs; 11. An electronic device comprising: one or more programs stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising: displaying within a first user interface on the display a representation of a media item corresponding to a sequence of images, the media item including a representative image from the sequence of images in a first display mode; detecting a first input while displaying the representation of the media item corresponding to the sequence of images in the first display mode; responsive to detecting the first input, on the display in the first display mode, an editing user interface for the media item, the editing user interface comprising: a first region configured to sequentially display images in the sequence of images at a first magnification; a second region separate from the first region, a reduced representation of an image in the series of images at a second magnification less than the first magnification displayed in a slider in the second area; a user-adjustable representative image selection affordance configured to select a new representative image in the sequence of images via a position of the representative image selection affordance relative to the slider; and A second region including: Display in parallel, Display the editing user interface, detecting a second input directed toward the representative image selection affordance while displaying the editing user interface; while detecting the second input directed toward the representative image selection affordance; moving the representative image selection affordance relative to the slider in accordance with the second input; displaying within the first region an image from the set of images that corresponds to a current position of the representative image selection affordance relative to the slider; An electronic device that includes a set of instructions.
23. The electronic device described in claim 22, wherein the one or more programs include a set of instructions that, when executed by the one or more processors of the electronic device, cause the electronic device to perform a method described in any one of claims 2 to 21.
24. When executed by an electronic device having a display and a touch-sensitive surface, the electronic device: displaying within a first user interface on the display representations of media items corresponding to a sequence of images, the media items including representative images from the sequence of images in a first display mode; detecting a first input while displaying the representation of the media item corresponding to the sequence of images in the first display mode; responsive to detecting the first input, on the display in the first display mode, an editing user interface for the media item, the editing user interface comprising: a first region configured to sequentially display images in the sequence of images at a first magnification; a second region separate from the first region, a reduced representation of an image in the series of images at a second magnification less than the first magnification displayed in a slider in the second area; a user-adjustable representative image selection affordance configured to select a new representative image in the sequence of images via a position of the representative image selection affordance relative to the slider; and A second region including: Display in parallel, Display the editing user interface, detecting a second input directed toward the representative image selection affordance while displaying the editing user interface; while detecting the second input directed toward the representative image selection affordance; moving the representative image selection affordance relative to the slider in accordance with the second input; displaying within the first region an image from the set of images that corresponds to a current position of the representative image selection affordance relative to the slider; A computer program containing a set of instructions.
25. The computer program of claim 24, further comprising a set of instructions that, when executed by the one or more processors of the electronic device, cause the electronic device to perform a method according to any one of claims 2 to 21.
Citation Information
Patent Citations
Map information display program
JP2003107990A
Conference information storage device, system, conference information display device, and program
JP2008090526A
Image confirmation apparatus
JP2011135212A
Page search method and terminal supporting the same
JP2014149834A
Device and method for capturing an extended digital image and for bidirectional action with an extended digital image
JP2018515860A