Gestural Graphical User Interface for Managing Simultaneously Open Software Applications - Patent application

The method and interface for managing open applications on multifunction devices with touch-sensitive displays address inefficiencies by using application view selection modes and gestures, reducing cognitive load and conserving power.

JP7789113B2Active Publication Date: 2025-12-19APPLE INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024060944
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2010-09-22
Filing Date
2024-04-04
Publication Date
2025-12-19
Estimated Expiration
2030-09-23

Smart Images

  • Figure 0007789113000001
    Figure 0007789113000001
  • Figure 0007789113000002
    Figure 0007789113000002
  • Figure 0007789113000003
    Figure 0007789113000003
Patent Text Reader

Abstract

To provide a computing device having a faster and further efficient method and interface for managing concurrently opened applications.SOLUTION: An application view selection mode is started for selecting one of concurrently opened applications. An initial group of an opened application icon corresponds to at least a part of concurrently opened applications. A gesture is detected for each application icon that is opened in a first predefined area and an application view for a corresponding application is displayed without concurrently displaying the application view for any other applications of the concurrently opened applications. Display of the opened application icon is stopped, and the application view selection mode is ended.SELECTED DRAWING: Figure 6A
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates generally to portable electronic devices with touch-sensitive surfaces, including but not limited to portable electronic devices with touch-sensitive surfaces configured to have multiple open software applications. [Background technology]

[0002] In recent years, touch-sensitive surfaces have been increasingly used as input devices for computers and other electronic computing devices. Exemplary touch-sensitive surfaces include touchpads and touchscreen displays. Such surfaces are widely used to select, launch, and manage software applications.

[0003] Existing methods for managing simultaneously open applications on portable electronic devices are complex and inefficient. For example, portable devices with small screens (e.g., smartphones and other pocket-sized devices) typically display a single application at a time, even when multiple applications are running on the device. When using such devices, users have difficulty viewing and managing currently open applications. This situation places a significant burden on the user's cognition. Furthermore, existing methods for managing currently open applications take longer than necessary and waste energy. This latter point is particularly important in battery-operated devices. Summary of the Invention

[0004] Therefore, there is a need for a computing device with a faster and more efficient method and interface for managing simultaneously open applications. Such a method and interface complements or replaces conventional methods for managing simultaneously open applications. Such a method and interface reduces the cognitive load on the user and creates a more efficient human-machine interface. For battery-operated computing devices, such a method and interface conserves power and extends the time between battery charges.

[0005] The above-mentioned drawbacks and other problems associated with user interfaces for computing devices with touch-sensitive surfaces are mitigated or eliminated by the disclosed devices. In some embodiments, the devices are portable (e.g., notebook computers, tablet computers, or handheld devices). In some embodiments, the devices have a touchpad. In some embodiments, the devices have a touch-sensitive display (also known as a "touch screen" or "touch screen display"). In some embodiments, the devices have 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 finger contacts and gestures on the touch-sensitive surface. In some embodiments, functions may include image editing, drawing, presentation, word processing, website creation, disc authoring, table creation, games, telephony, video conferencing, emailing, instant messaging, workout support, digital photography, digital videography, web browsing, digital music playback, and / or digital video playback. Executable instructions for performing these functions may be contained on a computer-readable storage medium or other computer program configured to be executed by one or more processors.

[0006] According to some embodiments, a method is performed on a multifunction device with a touch-sensitive display. The method comprises displaying a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open applications. The method further comprises detecting a first input and, in response to detecting the first input, initiating an application view selection mode to select one of the simultaneously open applications for display in the corresponding application view, displaying an initial group of open application icons corresponding to at least some of the simultaneously open applications in a first predefined area, and simultaneously displaying at least a portion of the first application view adjacent to the first predefined area. The method further comprises detecting a gesture for each open application icon in the first predefined area and, in response to detecting the gesture for each open application icon, displaying a respective application view for the corresponding application of the simultaneously open applications on the touch-sensitive display, ceasing to display the open application icons in the first predefined area, and exiting the application view selection mode. Each application view is displayed without simultaneously displaying an application view for any other application of the multiple applications that are simultaneously open.

[0007] In some embodiments, a multifunction device includes a touch-sensitive display, one or more processors, a memory, and one or more programs stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions for displaying a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications. The one or more programs further include instructions for detecting a first input and, in response to detecting the first input, initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view, displaying an initial group of open application icons corresponding to at least some of the simultaneously open applications in a first predefined area, and simultaneously displaying at least a portion of the first application view adjacent to the first predefined area. The one or more programs further include instructions for detecting a gesture for each open application icon in the first predefined area, and instructions for, in response to detecting the gesture for each open application icon, displaying a respective application view for a corresponding application in the plurality of simultaneously open applications on the touch-sensitive display, ceasing to display the open application icons in the first predefined area, and exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views for any other applications in the plurality of simultaneously open applications.

[0008] According to some embodiments, a graphical user interface on a multifunction device having a touch-sensitive display, memory, and one or more processors for executing one or more programs stored in the memory includes a first application view on the touch-sensitive display corresponding to a first application in a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications in the plurality of simultaneously open applications. A first input is detected. In response to detecting the first input, an application view selection mode is initiated to select one of the simultaneously open applications for display in the corresponding application view. An initial group of open application icons corresponding to at least some of the plurality of simultaneously open applications is displayed in a first predefined area, and at least some of the first application view is simultaneously displayed adjacent to the first predefined area. A gesture is detected for each open application icon in the first predefined area. In response to detecting a gesture for each open application icon, a respective application view is displayed on the touch-sensitive display for a corresponding application of the multiple simultaneously open applications, the open application icon ceases to be displayed in the first predefined area, and the application view selection mode is terminated, with each application view being displayed without simultaneously displaying application views for any other applications of the multiple simultaneously open applications.

[0009] According to some embodiments, a computer-readable storage medium has stored thereon instructions that, when executed by a multifunction device with a touch-sensitive display, cause the device to display a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open applications. The instructions further cause the device to detect a first input and, in response to detecting the first input, initiate an application view selection mode to select one of the simultaneously open applications for display in the corresponding application view, display an initial group of open application icons corresponding to at least some of the simultaneously open applications in a first predefined area, and simultaneously display at least a portion of the first application view adjacent to the first predefined area. The instructions further include detecting a gesture for each open application icon in the first predefined region, and, in response to detecting the gesture for each open application icon, causing the device to display a respective application view for a corresponding application of the simultaneously open plurality of applications on the touch-sensitive display, ceasing to display the open application icons in the first predefined region, and exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications.

[0010] According to some embodiments, a multifunction device comprises a touch-sensitive display and means for displaying a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications. The multifunction device further comprises means for detecting a first input and means for responding to detecting the first input, the means for responding to detecting the first input including means for initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view, means for displaying an initial group of open application icons corresponding to at least some of the simultaneously open applications in a first predefined region, and means for simultaneously displaying at least a portion of the first application view adjacent to the first predefined region. The multifunction device further comprises means for detecting a gesture for each open application icon in the first predefined region and means for responding to detecting the gesture for each open application icon, wherein the means for responding to detecting the gesture for each open application icon includes means for displaying a respective application view for a corresponding application of the plurality of simultaneously open applications on the touch-sensitive display, means for ceasing displaying the open application icon in the first predefined region, and means for exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications.

[0011] According to some embodiments, an information processing apparatus for a multifunction device with a touch-sensitive display comprises means for displaying a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications, the first application view being displayed without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications. The information processing apparatus comprises means for detecting a first input and means for responding to detecting the first input, the means for responding to detecting the first input including means for initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view, means for displaying an initial group of open application icons corresponding to at least some of the simultaneously open applications in a first predefined area, and means for simultaneously displaying at least a portion of the first application view adjacent to the first predefined area. The information processing device further comprises means for detecting a gesture for each open application icon in the first predefined area and means for responding to detecting the gesture for each open application icon, wherein the means for responding to detecting the gesture for each open application icon includes means for displaying a respective application view for a corresponding application of the plurality of simultaneously open applications on the touch-sensitive display, means for ceasing displaying the open application icons in the first predefined area, and means for exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications.

[0012] According to some embodiments, a method is performed on a multifunction device with a touch-sensitive display. The method comprises displaying a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications. The method further comprises detecting a first input and, in response to detecting the first input, initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view and displaying images of the open applications corresponding to at least some of the simultaneously open plurality of applications in a predefined area. The images of the open applications are displayed in a three-dimensional stack that extends backward on the display. The method further comprises detecting a gesture for each image of the open applications in the three-dimensional stack and, in response to detecting the gesture for each image of the open applications, displaying a respective application view for the corresponding application of the simultaneously open plurality of applications on the touch-sensitive display, ceasing to display the three-dimensional stack of images of the open applications, and exiting the application view selection mode. Each application view is displayed without simultaneously displaying an application view for any other application of the multiple applications that are simultaneously open.

[0013] In some embodiments, a multifunction device includes a touch-sensitive display, one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions for displaying a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications. The one or more programs further include instructions for detecting a first input and, in response to detecting the first input, for initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view and displaying images of the open applications corresponding to at least some of the simultaneously open plurality of applications in a predefined area. The images of the open applications are displayed in a three-dimensional stack that extends backward on the display. The one or more programs further include instructions for detecting a gesture relative to each image of the open applications in the three-dimensional stack, and instructions for, in response to detecting the gesture relative to each image of the open applications, displaying a respective application view for a corresponding application of the multiple simultaneously open applications on the touch-sensitive display, ceasing to display the three-dimensional stack of images of the open applications, and exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views for any other applications of the multiple simultaneously open applications.

[0014] According to some embodiments, a graphical user interface on a multifunction device having a touch-sensitive display, memory, and one or more processors for executing one or more programs stored in the memory includes a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications. A first input is detected. In response to detecting the first input, an application view selection mode is initiated to select one of the simultaneously open applications for display in the corresponding application view, and images of open application icons corresponding to at least some of the simultaneously open plurality of applications are displayed in a predefined area. The images of the open applications are displayed in a three-dimensional stack extending backward on the display. A gesture is detected for each image of the open applications in the three-dimensional stack. In response to detecting the gesture for each image of the open applications, a respective application view is displayed on the touch-sensitive display for the corresponding application of the simultaneously open plurality of applications, ceasing to display the three-dimensional stack of images of the open applications, and exiting the application view selection mode. Each application view is displayed without simultaneously displaying an application view for any other application of the multiple applications that are simultaneously open.

[0015] According to some embodiments, a computer-readable storage medium stores instructions that, when executed by a multifunction device with a touch-sensitive display, cause the device to display a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications. The instructions further cause the device to detect a first input and, in response to detecting the first input, initiate an application view selection mode to select one of the simultaneously open applications for display in the corresponding application view and display images of the open applications corresponding to at least some of the simultaneously open plurality of applications in a predefined area. The images of the open applications are displayed in a three-dimensional stack that extends backward on the display. The instructions further cause the device to detect a gesture for each image of the open applications in the three-dimensional stack and, in response to detecting the gesture for each image of the open applications, display a respective application view for the corresponding application of the simultaneously open plurality of applications on the touch-sensitive display, cease displaying the three-dimensional stack of images of the open applications, and exit the application view selection mode. Each application view is displayed without simultaneously displaying an application view for any other application of the multiple applications that are simultaneously open.

[0016] According to some embodiments, a multifunction device comprises a touch-sensitive display and means for displaying a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications. The multifunction device further comprises means for detecting a first input and means for responding to detecting the first input, the means for responding to detecting the first input including means for initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view, and means for displaying images of the open applications corresponding to at least some of the plurality of simultaneously open applications in a predefined area. The images of the open applications are displayed in a three-dimensional stack that extends backward on the display. The multifunction device further comprises means for detecting a gesture relative to each image of the open applications in the three-dimensional stack and means for responding to detecting the gesture relative to each image of the open applications, the means for responding to detecting the gesture relative to each image of the open applications including means for displaying a respective application view for a corresponding application of the plurality of simultaneously open applications on the touch-sensitive display, means for ceasing display of the three-dimensional stack of images of the open applications, and means for exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying an application view for any other application of the plurality of simultaneously open applications.

[0017] According to some embodiments, an information processing device for a multifunction device with a touch-sensitive display comprises means for displaying a first application view on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications. The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications. The information processing device comprises means for detecting a first input and means responsive to detecting the first input, the means responsive to detecting the first input including means for initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view, and means for displaying images of the open applications corresponding to at least some of the simultaneously open plurality of applications in a predefined area. The images of the open applications are displayed in a three-dimensional stack that extends backward on the display. The information processing device further comprises means for detecting a gesture for each image of the open applications in the three-dimensional stack and means for responding to detecting the gesture for each image of the open applications, the means for responding to detecting the gesture for each image of the open applications including means for displaying a respective application view for a corresponding application of the plurality of simultaneously open applications on the touch-sensitive display, means for ceasing display of the three-dimensional stack of images of the open applications, and means for exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications.

[0018] According to some embodiments, a method is performed on a multifunction device with a touch-sensitive display. The method comprises displaying a first application view on the touch-sensitive display at a first size. The first application view corresponds to a first application view of a plurality of simultaneously open applications and is displayed without simultaneously displaying application views for any other applications of the simultaneously open applications at the first size. The method further comprises detecting a first input and, in response to detecting the first input, initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view and displaying images of the open applications in a predefined area. Each image is displayed at a second size smaller than the first size, and the images correspond to at least a portion of the simultaneously open applications. The method further comprises detecting a gesture for each image of the open applications in the predefined area and, in response to detecting the gesture for each image, displaying a respective application view of the corresponding application of the simultaneously open applications at the first size on the touch-sensitive display, ceasing to display the images in the predefined area, and exiting the application view selection mode. Each application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size.

[0019] In some embodiments, a multifunction device includes a touch-sensitive display, one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions for displaying a first application view on the touch-sensitive display at a first size. The first application view corresponds to a first application of a plurality of simultaneously open applications without simultaneously displaying application views for any other applications of the simultaneously open applications at the first size. The one or more programs further include instructions for detecting a first input and, in response to detecting the first input, for initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view and displaying images of the open applications in the predefined area. Each image is displayed at a second size smaller than the first size, and the images correspond to at least a portion of the plurality of simultaneously open applications. The one or more programs further include instructions for detecting a gesture relative to each image of the open applications in the predefined area, and instructions for, in response to detecting the gesture relative to each image, displaying a respective application view of a corresponding application of the multiple simultaneously open applications at a first size on the touch-sensitive display, ceasing to display the image in the predefined area, and exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views of any other applications of the multiple simultaneously open applications at the first size.

[0020] According to some embodiments, a graphical user interface in a multifunction device having a touch-sensitive display, memory, and one or more processors for executing one or more programs stored in the memory includes a first application view on the touch-sensitive display at a first size. The first application view corresponds to a first application of a plurality of simultaneously open applications and is displayed without simultaneously displaying application views for any other applications of the simultaneously open applications at the first size. A first input is detected. In response to detecting the first input, an application view selection mode is initiated to select one of the simultaneously open applications for display in the corresponding application view, and images of the open applications are displayed in predefined areas. Each image is displayed at a second size smaller than the first size, and the images correspond to at least a portion of the simultaneously open applications. A gesture is detected for each image of the open applications in the predefined area. In response to detecting the gesture for the respective image, the respective application view is displayed on the touch-sensitive display at the first size for the corresponding application of the simultaneously open applications, ceasing to display the image in the predefined area and exiting the application view selection mode. Each application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size.

[0021] According to some embodiments, a computer-readable storage medium stores instructions that, when executed by a multifunction device with a touch-sensitive display, cause the device to display a first application view of a first size on the touch-sensitive display. The first application view corresponds to a first application of a plurality of simultaneously open applications and is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size. The instructions further cause the device to detect a first input and, in response to detecting the first input, initiate an application view selection mode to select one of the simultaneously open applications for display in the corresponding application view and display images of the open applications in the predefined area. Each image is displayed at a second size smaller than the first size, and the images correspond to at least a portion of the simultaneously open applications. The instructions further include detecting a gesture for each image of the open applications in the predefined area, and, in response to detecting the gesture for each image, causing the device to display a respective application view of the simultaneously open multiple applications at a first size on the touch-sensitive display, cease displaying the image in the predefined area, and exit the application view selection mode, wherein each application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open multiple applications at the first size.

[0022] According to some embodiments, a multifunction device comprises a touch-sensitive display and means for displaying a first application view on the touch-sensitive display at a first size. The first application view corresponds to a first application of a plurality of simultaneously open applications and is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size. The multifunction device further comprises means for detecting a first input and means for responding to detecting the first input, the means for responding to detecting the first input including means for initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view and means for displaying images of the open applications in the predefined area. Each image is displayed at a second size smaller than the first size, and the image corresponds to at least a portion of the simultaneously open plurality of applications. The multifunction device further comprises means for detecting a gesture for each image of the open applications in the predefined area and means for responding to detecting the gesture for each image, the means for responding to detecting the gesture for each image including means for displaying a respective application view of a corresponding application of the plurality of simultaneously open applications in a first size on the touch-sensitive display, means for ceasing displaying the image in the predefined area, and means for exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views of any other applications of the plurality of simultaneously open applications in the first size.

[0023] According to some embodiments, an information processing device for a multifunction device with a touch-sensitive display comprises means for displaying a first application view of a first size on the touch-sensitive display. The first application view corresponds to a first application of a plurality of simultaneously open applications without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size. The information processing device comprises means for detecting a first input and means for responding to detecting the first input, the means for responding to detecting the first input including means for initiating an application view selection mode for selecting one of the simultaneously open applications for display in the corresponding application view and means for displaying images of the open applications in a predefined area. Each image is displayed at a second size smaller than the first size, and the image corresponds to at least a portion of the simultaneously open plurality of applications. The information processing device further comprises means for detecting a gesture for each image of an application open in the predefined area and means for responding to detecting the gesture for each image, the means for responding to detecting the gesture for each image including means for displaying a respective application view of a corresponding application of the plurality of simultaneously open applications in a first size on the touch-sensitive display, means for ceasing displaying the image in the predefined area, and means for exiting the application view selection mode, wherein each application view is displayed without simultaneously displaying application views of any other applications of the plurality of simultaneously open applications in the first size.

[0024] According to some embodiments, a method is performed on a multifunction device with a touch-sensitive display. The method comprises displaying a first application view on the touch-sensitive display at a first size. The first application view corresponds to a first application of a plurality of simultaneously open applications and is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size. The method further comprises simultaneously displaying images of the open applications in a predefined area. Each image is displayed at a second size smaller than the first size, and the images correspond to at least a portion of the simultaneously open plurality of applications. The method further comprises detecting a gesture on each image of the open applications in the predefined area, and displaying a respective application view on the touch-sensitive display at the first size for the corresponding application of the simultaneously open plurality of applications in response to detecting the gesture on the respective image. Each application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size.

[0025] In some embodiments, a multifunction device includes a touch-sensitive display, one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions for displaying a first application view on the touch-sensitive display at a first size, the first application view corresponding to a first application of a plurality of simultaneously open applications without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications at the first size. The one or more programs further include instructions for simultaneously displaying images of the open applications in a predefined area, each image being displayed at a second size smaller than the first size, the images corresponding to at least some of the plurality of simultaneously open applications. The one or more programs further include instructions for detecting a gesture on each image of the open applications in the predefined area, and for displaying a respective application view on the touch-sensitive display at the first size for a corresponding application of the plurality of simultaneously open applications in response to detecting the gesture on the respective image. Each application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size.

[0026] According to some embodiments, a graphical user interface on a multifunction device having a touch-sensitive display, memory, and one or more processors for executing one or more programs stored in the memory includes a first application view on the touch-sensitive display at a first size. The first application view corresponds to a first application of a plurality of simultaneously open applications and is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size. The graphical user interface further includes simultaneously displaying images of the open applications in a predefined area. Each image is displayed at a second size smaller than the first size, and the images correspond to at least a portion of the simultaneously open plurality of applications. A gesture is detected for each image of the open applications in the predefined area. In response to detecting the gesture for each image, a respective application view is displayed on the touch-sensitive display at a first size for the corresponding application of the simultaneously open plurality of applications. Each application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications at the first size.

[0027] According to some embodiments, a computer-readable storage medium has stored thereon instructions that, when executed by a multifunction device with a touch-sensitive display, cause the device to display a first application view at a first size on the touch-sensitive display. The first application view corresponds to a first application of a plurality of simultaneously open applications and is displayed without simultaneously displaying application views at the first size for any other applications of the simultaneously open plurality of applications. The instructions also cause the device to simultaneously display images of the open applications in a predefined area. Each image is displayed at a second size smaller than the first size, and the images correspond to at least some of the simultaneously open plurality of applications. The instructions also cause the device to detect a gesture on each image of the open applications in the predefined area and, in response to detecting the gesture on the respective image, display a respective application view at the first size for the corresponding application of the simultaneously open plurality of applications on the touch-sensitive display. Each application view is displayed without simultaneously displaying application views at the first size for any other applications of the simultaneously open plurality of applications.

[0028] In some embodiments, a multifunction device comprises a touch-sensitive display and means for displaying a first application view at a first size on the touch-sensitive display. The first application view corresponds to a first application of a plurality of simultaneously open applications and is displayed without simultaneously displaying application views at the first size for any other applications of the simultaneously open plurality of applications. The multifunction device further comprises means for simultaneously displaying images of the open applications in a predefined area. Each image is displayed at a second size smaller than the first size, and the images correspond to at least a portion of the simultaneously open plurality of applications. The multifunction device further comprises means for detecting a gesture on each image of the open applications in the predefined area, and means for displaying a respective application view at the first size for a corresponding application of the simultaneously open plurality of applications on the touch-sensitive display in response to detecting the gesture on the respective image. Each application view is displayed without simultaneously displaying application views at the first size for any other applications of the simultaneously open plurality of applications.

[0029] According to some embodiments, an information processing device for a multifunction device with a touch-sensitive display comprises means for displaying a first application view at a first size on the touch-sensitive display. The first application view corresponds to a first application of a plurality of simultaneously open applications, the first application view being displayed without simultaneously displaying application views at the first size for any other applications of the simultaneously open plurality of applications. The information processing device further comprises means for simultaneously displaying images of the open applications in a predefined area, each image being displayed at a second size smaller than the first size, the images corresponding to at least a portion of the simultaneously open plurality of applications. The information processing device further comprises means for detecting a gesture on each image of the open applications in the predefined area, and means for displaying a respective application view at the first size for a corresponding application of the simultaneously open plurality of applications on the touch-sensitive display in response to detecting the gesture on the respective image. Each application view is displayed without simultaneously displaying application views at the first size for any other applications of the simultaneously open plurality of applications.

[0030] According to some embodiments, a method is performed on a multifunction device with a touch-sensitive display. The method comprises performing the following operations during an application view selection mode to select one of a plurality of simultaneously open applications for display in a corresponding application view. The method comprises displaying an initial group of open application icons corresponding to at least some of the plurality of simultaneously open applications in a predefined area, detecting a gesture in the predefined area, and performing one of the following operations in response to detecting the gesture in the predefined area: if the gesture is a first scrolling gesture in a first direction, the method comprises scrolling other open application icons of the plurality of simultaneously open application icons to display them in the predefined area; if the gesture is a second scrolling gesture in a second direction opposite the first direction, the method comprises scrolling a settings icon to display them in the predefined area. If the gesture is a first gesture for each open application icon, the method comprises displaying a respective application view for a corresponding application of the plurality of simultaneously open applications on the touch-sensitive display, ceasing to display the open application icons in the predefined area, and exiting the application view selection mode.

[0031] In some embodiments, a multifunction device includes a touch-sensitive display, one or more processors, a memory, and one or more programs. The one or more programs are stored in the memory and configured to be executed by the one or more processors. The one or more programs include instructions for performing the following operations during an application view selection mode to select one of a plurality of simultaneously open applications for display in a corresponding application view: display an initial group of open application icons corresponding to at least some of the plurality of simultaneously open applications in a predefined area; detect a gesture in the predefined area; and perform one of the following operations in response to detecting the gesture in the predefined area: the one or more programs include instructions for scrolling to display other open application icons of the plurality of simultaneously open application icons in the predefined area if the gesture is a first scroll gesture in a first direction; and the one or more programs include instructions for scrolling to display a settings icon in the predefined area if the gesture is a second scroll gesture in a second direction opposite the first direction. The one or more programs include instructions for displaying, on the touch-sensitive display, a respective application view for a corresponding application in the plurality of simultaneously open applications when the gesture is a first gesture for each open application icon, instructions for ceasing displaying the open application icons in the predefined area, and instructions for exiting the application view selection mode.

[0032] According to some embodiments, a graphical user interface in a multifunction device having a touch-sensitive display, memory, and one or more processors for executing one or more programs stored in the memory is displayed during an application view selection mode for selecting one of a plurality of simultaneously open applications for display in a corresponding application view, and includes an initial group of open application icons corresponding to at least some of the simultaneously open applications in a predefined area. A gesture is detected in the predefined area. In response to detecting the gesture in the predefined area, one of the following actions is performed: if the gesture is a first scrolling gesture in a first direction, at least some of the simultaneously open applications are scrolled to display other open application icons of the simultaneously open applications in the predefined area; if the gesture is a second scrolling gesture in a second direction opposite the first direction, at least some of the simultaneously open applications are scrolled to display a settings icon in the predefined area. If the gesture is a first gesture for each open application icon, a respective application view is displayed on the touch-sensitive display for a corresponding application in the multiple simultaneously open applications, the open application icon ceases to be displayed in the predefined area, and the application view selection mode is exited.

[0033] According to some embodiments, a computer-readable storage medium has stored thereon instructions that, when executed by a multifunction device with a touch-sensitive display, cause the device to perform the following operations during an application view selection mode to select one of a plurality of simultaneously open applications for display in a corresponding application view: display an initial group of open application icons corresponding to at least some of the plurality of simultaneously open applications in a predefined area, detect a gesture in the predefined area, and perform one of the following operations in response to detecting the gesture in the predefined area: scroll to display other open application icons of the plurality of simultaneously open application icons in the predefined area if the gesture is a first scroll gesture in a first direction; and scroll to display a settings icon in the predefined area if the gesture is a second scroll gesture in a second direction opposite the first direction. The instructions cause the device, if the gesture is a first gesture for each open application icon, to display a respective application view for a corresponding application of the multiple simultaneously open applications on the touch-sensitive display, to cease displaying the open application icons in the predefined area, and to exit the application view selection mode.

[0034] According to some embodiments, a multifunction device includes a touch-sensitive display and means operable during an application view selection mode for selecting one of a plurality of simultaneously open applications for display in a corresponding application view, the means operable during the application view selection mode including: means for displaying an initial group of open application icons corresponding to at least some of the simultaneously open applications in a predefined area; means for detecting a gesture in the predefined area; and means responsive to detecting the gesture in the predefined area. The means responsive to detecting the gesture in the predefined area include: means for scrolling to display other open application icons of the simultaneously open plurality of application icons in the predefined area, the means being enabled if the gesture is a first scrolling gesture in a first direction; means for scrolling to display a settings icon in the predefined area, the means being enabled if the gesture is a second scrolling gesture in a second direction opposite the first direction; and means being enabled if the gesture is the first gesture for each open application icon. The means enabled when the gesture is a first gesture for each open icon include means for displaying a respective application view for a corresponding application of the plurality of simultaneously open applications on the touch-sensitive display, means for ceasing displaying the open application icons in the predefined area, and means for exiting the application view selection mode.

[0035] According to some embodiments, an information processing apparatus for a multifunction device with a touch-sensitive display includes means operable during an application view selection mode for selecting one of a plurality of simultaneously open applications for display in a corresponding application view, the means operable during the application view selection mode including: means for displaying an initial group of open application icons corresponding to at least some of the simultaneously open applications in a predefined area; means for detecting a gesture in the predefined area; and means responsive to detecting the gesture in the predefined area. The means responsive to detecting the gesture in the predefined area includes: means for enabling scrolling to display other open application icons of the simultaneously open plurality of application icons in the predefined area if the gesture is a first scrolling gesture in a first direction; means for enabling scrolling to display a settings icon in the predefined area if the gesture is a second scrolling gesture in a second direction opposite the first direction; and means operable when the gesture is the first gesture for each open application icon. If the gesture is a first gesture for each open application icon, the enabling means includes means for displaying a respective application view for a corresponding application of the plurality of simultaneously open applications on the touch-sensitive display, means for ceasing displaying the open application icons in the predefined area, and means for exiting the application view selection mode.

[0036] According to some embodiments, a method is performed on a multifunction device with a touch-sensitive display. The method comprises displaying a first application view of a first size in a first application. The first application view includes a user-selectable object associated with a second application different from the first application. The method further comprises detecting a first gesture at a location corresponding to the user-selectable object and, in response to detecting the first gesture, ceasing to display the first application view and displaying a second application view in the second application. The method further comprises detecting an input while in the second application and, in response to detecting the input, initiating an application view selection mode for selecting one of multiple simultaneously open applications for display in the corresponding application view, displaying an image of the open application in a first predefined area, and displaying a portion of the view including an application icon for launching the application in a second predefined area different from the first predefined area. The images of the open applications correspond to at least some of a plurality of simultaneously open applications, each image being displayed at a second size smaller than the first size, and the images including an image of a first application view and an image of a view of the second application. The method comprises detecting a second gesture during an application view selection mode and performing one of the following actions in response to detecting the second gesture: when the second gesture is at a location corresponding to the image of the first application view, the method comprises displaying the first application view of the first size in the first application, ceasing to display images in the first predefined area, and exiting the application view selection mode.The method includes, when the second gesture is at a location corresponding to the second predefined area, displaying a view including an application icon for launching the application, ceasing to display the image in the first predefined area, and exiting the application view selection mode.

[0037] In some embodiments, a multifunction device includes a touch-sensitive display, one or more processors, a memory, and one or more programs stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for displaying a first application view of a first size in a first application, the first application view including user-selectable objects associated with a second application different from the first application. The one or more programs further include instructions for detecting a first gesture at a location corresponding to a user-selectable object and, in response to detecting the first gesture, ceasing to display the first application view and displaying a second application view in the second application. The one or more programs further include instructions for detecting an input while in the second application and, in response to detecting the input, initiating an application view selection mode for selecting one of a plurality of simultaneously open applications for display in the corresponding application view, displaying images of the open application in a first predefined area, and displaying a portion of a view including an application icon for launching the application in a second predefined area different from the first predefined area. The images of the open applications correspond to at least some of the plurality of simultaneously open applications, each image displayed at a second size smaller than the first size, and the images include an image of the first application view and an image of a view of the second application. The one or more programs include instructions for detecting a second gesture during the application view selection mode and, in response to detecting the second gesture, performing one of the following actions: The one or more programs include instructions for displaying a first application view of a first size in a first application when the second gesture is at a location corresponding to an image of the first application view, instructions for ceasing displaying the image in the first predefined area, and instructions for exiting an application view selection mode. The one or more programs include instructions for displaying a view including an application icon for launching the application when the second gesture is at a location corresponding to a second predefined area, instructions for ceasing displaying the image in the first predefined area, and instructions for exiting an application view selection mode.

[0038] According to some embodiments, a graphical user interface on a multifunction device having a touch-sensitive display, memory, and one or more processors for executing one or more programs stored in the memory includes a first application view of a first size for a first application. The first application view includes a user-selectable object associated with a second application different from the first application. A first gesture is detected at a location corresponding to the user-selectable object. In response to detecting the first gesture, the display of the first application view is discontinued and a second application view is displayed in the second application. An input is detected while in the second application, and in response to detecting the input, an application view selection mode is initiated to select one of multiple simultaneously open applications for display in the corresponding application view, with images of the open applications displayed in a first predefined area and a portion of the view including an application icon for launching the application displayed in a second predefined area different from the first predefined area. The images of the open applications correspond to at least some of the simultaneously open applications, each image being displayed at a second size smaller than the first size, and the images including an image of a first application view and an image of a view of the second application. A second gesture is detected during the application view selection mode, and one of the following actions is performed in response to detecting the second gesture: if the second gesture is at a location corresponding to the image of the first application view, the first application view is displayed in the first application at a first size, ceases displaying images of the first predefined area, and exits the application view selection mode.If the second gesture is at a location corresponding to the second predefined area, a view including an application icon for launching the application is displayed, the image of the first predefined area is stopped from being displayed, and the application view selection mode is terminated.

[0039] According to some embodiments, a computer-readable storage medium stores instructions that, when executed by a multifunction device with a touch-sensitive display, cause the device to display a first application view of a first size in a first application, the first application view including a user-selectable object associated with a second application different from the first application. The instructions further cause the device to detect a first gesture at a location corresponding to the user-selectable object and, in response to detecting the first gesture, cease displaying the first application view and display a second application view in the second application. The instructions further cause the device to detect an input while in the second application and, in response to detecting the input, initiate an application view selection mode to select one of multiple simultaneously open applications for display in the corresponding application view, display an image of the open application in a first predefined area, and display a portion of the view including an application icon for launching the application in a second predefined area different from the first predefined area. The images of the open applications correspond to at least some of the simultaneously open applications, each image displayed at a second size smaller than the first size, and the images include an image of a first application view and an image of a view of the second application. The instructions further cause the device to detect a second gesture while in the application view selection mode and to perform one of the following actions in response to detecting the second gesture: when the second gesture is in a location corresponding to the image of the first application view, the instructions cause the device to display the first application view of the first size in the first application, cease displaying images in the first predefined area, and exit the application view selection mode.The instructions further cause the device to, when the second gesture is at a location corresponding to the second predefined area, display a view including an application icon for launching the application, cease displaying the image in the first predefined area, and exit the application view selection mode.

[0040] According to some embodiments, a multifunction device comprises a touch-sensitive display and means for displaying a first application view of a first size in a first application. The first application view includes a user-selectable object associated with a second application different from the first application. The multifunction device further comprises means for detecting a first gesture at a location corresponding to the user-selectable object and means for responding to detecting the first gesture, the means for responding to detecting the first gesture including means for ceasing to display the first application view and means for displaying a second application view in the second application. The multifunction device further comprises means for enabling input detection while in the second application and means for enabling input response, the means for responding to detecting the input including means for initiating an application view selection mode for selecting one of multiple applications simultaneously open for display in the corresponding application view, means for displaying an image of the open application in a first predefined area, and means for displaying a portion of the view including an application icon for launching the application in a second predefined area different from the first predefined area. The images of the open applications correspond to at least some of the simultaneously open applications, each image being displayed at a second size smaller than the first size, and the images including an image of a first application view and an image of a view of a second application. The multifunction device further comprises means for detecting a second gesture during the application view selection mode and for responding to detecting the second gesture.The means responsive to detecting the second gesture include means usable when the second gesture is at a location corresponding to the image of the first application view, the means usable when the second gesture is at a location corresponding to the image of the first application view including means for displaying the first application view of a first size in the first application, means for ceasing displaying the image in the first predefined area, and means for exiting the application view selection mode. The means responsive to detecting the second gesture include means usable when the second gesture is at a location corresponding to the second predefined area, the means usable when the second gesture is at a location corresponding to the second predefined area including means for displaying a view including an application icon for launching the application, means for ceasing displaying the image in the first predefined area, and means for exiting the application view selection mode.

[0041] According to some embodiments, an information processing device for a multifunction device with a touch-sensitive display includes means for displaying a first application view of a first size in a first application. The first application view includes a user-selectable object associated with a second application different from the first application. The information processing device further includes means for detecting a first gesture at a location corresponding to the user-selectable object and means for responding to detecting the first gesture, the means for responding to detecting the first gesture including means for ceasing to display the first application view and means for displaying a second application view in the second application. The information processing device further includes means for detecting an input usable while in the second application and means for responding to detecting the input. The means for responding to detecting the input includes means for initiating an application view selection mode for selecting one of multiple applications simultaneously open for display in the corresponding application view, means for displaying an image of the open application in a first predefined area, and means for displaying a portion of the view including an application icon for launching the application in a second predefined area different from the first predefined area. The images of the open applications correspond to at least some of the simultaneously open applications, each image being displayed at a second size smaller than the first size, and the images including an image of a first application view and an image of a second application view. The information processing device further comprises means for detecting a second gesture and means for responding to detecting the second gesture, usable during the application view selection mode.The means responsive to detecting the second gesture include means usable when the second gesture is at a location corresponding to the image of the first application view, the means usable when the second gesture is at a location corresponding to the image of the first application view including means for displaying the first application view of a first size in the first application, means for ceasing displaying the image in the first predefined area, and means for exiting the application view selection mode. The means responsive to detecting the second gesture include means usable when the second gesture is at a location corresponding to the second predefined area, the means usable when the second gesture is at a location corresponding to the second predefined area including means for displaying a view including an application icon for launching the application, means for ceasing displaying the image in the first predefined area, and means for exiting the application view selection mode.

[0042] Thus, multifunction devices with touch-sensitive displays are provided with faster and more efficient methods and interfaces for managing simultaneously open software applications, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces complement or replace conventional methods of managing simultaneously open software applications. [Brief explanation of the drawings]

[0043] For a better understanding of the above-described and additional embodiments of the present invention, reference is now made to the following detailed description taken in conjunction with the following drawings, in which like reference numerals indicate corresponding parts and in which: [Figure 1A] , [Figure 1B] FIG. 1 is a block diagram illustrating a portable multifunction device with a touch-sensitive display in accordance with some embodiments. [Figure 1C]FIG. 2 is a block diagram illustrating exemplary components for event processing in accordance with some embodiments. [Figure 2] 1 illustrates a portable multifunction device with a touch screen in accordance with some embodiments. [Figure 3] FIG. 1 is a block diagram illustrating an exemplary multifunction device with a display and a touch-sensitive surface in accordance with some embodiments. [Figure 4A] , [Figure 4B] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments. [Figure 4C] 1A-1C illustrate exemplary user interfaces for multifunction devices with touch-sensitive surfaces separate from the display in accordance with some embodiments. [Figure 5A] , [Figure 5B] , [Figure 5C] , [Figure 5D] , [Figure 5E] , [Figure 5F] , [Figure 5G] , [Figure 5H] , [Figure 5I] , [Figure 5J] , [Figure 5K] , [Figure 5L] , [Figure 5M] , [Figure 5N] , [Figure 5O] , [Figure 5P] , [Figure 5Q] , [Figure 5R] , [Figure 5S] , [Figure 5T] , [Figure 5U] , [Figure 5V] , [Figure 5W] , [Figure 5X] , [Figure 5Y] , [Figure 5Z] , [Figure 5AA] , [Figure 5BB] , [Figure 5CC] , [Figure 5DD] , [Figure 5EE] , [Figure 5FF] , [Figure 5GG] , [Figure 5HH] 1A-1C illustrate exemplary user interfaces for selecting one of simultaneously open applications according to some embodiments. [Figure 6A] , [Figure 6B] , [Figure 6C] 1 is a flowchart illustrating a method for selecting one of simultaneously open applications according to some embodiments. [Figure 7] 1 is a flowchart illustrating a method for selecting one of simultaneously open applications according to some embodiments. [Figure 8A] , [Figure 8B] , [Figure 8C] 1 is a flowchart illustrating a method for selecting one of simultaneously open applications according to some embodiments. [Figure 9] 1 is a flowchart illustrating a method for selecting one of simultaneously open applications according to some embodiments. [Figure 10] 1 is a flowchart illustrating a method for selecting one of simultaneously open applications according to some embodiments. [Figure 11A] , [Figure 11B]1 is a flowchart illustrating a method for selecting one of simultaneously open applications according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0044] Reference will now be made in detail to the embodiments. Example embodiments are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the present invention. However, it will be apparent to those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail as not to unnecessarily obscure aspects of the embodiments.

[0045] Although terms such as "first," "second," etc. are used herein to describe various elements, 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 may be referred to as a second contact, and similarly, a second contact may be referred to as a first contact, without departing from the scope of the present invention. The first contact and the second contact are both contacts, but are not the same contact.

[0046] The terminology used in the description of the invention herein is for the purpose of describing particular embodiments and is not intended to limit the invention. As used in the description of the invention and the appended claims, the singular is intended to include the plural unless otherwise specified. The term "and / or" as used herein will be understood to refer to and include any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "comprises" and / or "comprising," when used herein, specify the presence of stated features, numbers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, numbers, steps, operations, elements, components and / or sets thereof.

[0047] As used herein, the term "when" shall be interpreted to mean "when" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrase "when determined" or "when a defined state or event is detected" shall be interpreted to mean "when determining" or "in response to determining" or "when detecting a defined state or event" or "in response to detecting a defined state or event," depending on the context.

[0048] As used herein, the term "resolution" of a display refers to the number of pixels along each axis of the display (also referred to as "pixel count" or "pixel resolution") or the number of pixels in each dimension. For example, a display may have a resolution of 320 x 480. Further, as used herein, the term "resolution" of a multifunction device refers to the resolution of the display in the multifunction device. The term "resolution" does not imply any limitation on the size of each pixel or the spacing between pixels. For example, compared to a first display having a 1024 x 768 pixel resolution, a second display having a 320 x 480 pixel resolution has a lower resolution. However, the physical size of a display depends not only on pixel resolution but also on many other factors, including pixel size and pixel spacing. Thus, a first display may have the same, smaller, or larger physical size compared to a second display.

[0049] As used herein, the term "video resolution" of a display refers to the density of pixels along each axis of the display or in each dimension of the display. Video resolution is often measured in units of DPI (dots-per-inch), which counts the number of pixels arranged in a row within one inch along each dimension of the display.

[0050] Embodiments of computing devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the computing device is a portable communication device such as a mobile phone that also includes other functions, such as PDA and / or music player functionality. Exemplary embodiments of portable multifunction devices include, but are not limited to, the iPhone® and iPod Touch® devices from Apple Inc. (Cupertino, California). Other portable devices, such as laptop computers or tablet computers with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads), may also be used. It should be understood that in some embodiments, the device is not a portable communication device but a desktop computer with a touch-sensitive surface (e.g., touchscreen displays and / or touchpads).

[0051] In the following description, a computing device is described that includes a display and a touch-sensitive surface, however, it should be understood that the computing device may also include one or more other physical user interface devices, such as a physical keyboard, a mouse, and / or a joystick.

[0052] The device supports a variety of applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disc authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an email application, an instant messaging application, a workout support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.

[0053] Various applications running on the device 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 adjusted and / or changed from one application to the next and / or within each application. In this way, the device's common physical architecture (such as the touch-sensitive surface) supports various applications with user interfaces that are intuitive and transparent to the user.

[0054] The user interface includes one or more soft keyboard embodiments. Soft keyboard embodiments include standard configurations (QWERTY) and / or non-standard configurations of displayed icon symbols on the keyboard, such as those described in U.S. patent application Ser. No. 11 / 459,606, filed July 24, 2006, entitled "Keyboards For Portable Electronic Devices," and U.S. patent application Ser. No. 11 / 459,615, filed July 24, 2006, entitled "Touch Screen Keyboards For Portable Electronic Devices," both of which are incorporated herein by reference in their entirety. Keyboard embodiments include a reduced number of icons (or soft keys) compared to the number of keys on an existing physical keyboard, such as a keyboard for a typewriter. This facilitates user selection of one or more icons and, therefore, one or more corresponding symbols on the keyboard. Keyboard embodiments may be adaptive. For example, displayed icons may be modified according to user actions, such as selection of one or more icons and / or one or more corresponding symbols. One or more applications on the device may utilize common and / or different keyboard embodiments. Thus, the keyboard embodiment used may be tailored to at least some applications. In some embodiments, one or more keyboard embodiments may be tailored to each user. For example, one or more keyboard embodiments may be tailored to each user based on each user's word usage history (lexicography, slang, individual usage). Some keyboard embodiments may be tailored to reduce the likelihood of user error when selecting one or more icons and therefore one or more symbols when using soft keyboard embodiments.

[0055] Attention is now directed to embodiments of portable devices with touch-sensitive displays. Figures 1A and 1B are block diagrams illustrating portable multifunction device 100 with touch-sensitive display 112 according to some embodiments. Touch-sensitive display 112 may conveniently be referred to as a "touch screen" and is known as or referred to as a touch-sensitive display system. Device 100 includes memory 102 (which may include 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 also includes one or more light sensors 164. These components communicate via one or more communication buses or signal lines 103.

[0056] It should be understood that device 100 is merely one example of a portable multifunction device, and that device 100 may have more or fewer components than shown, may combine two or more components, or may have a different configuration or arrangement of components. The various components shown in Figures 1A and 1B may be implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing and / or application specific integrated circuits.

[0057] Memory 102 may include high-speed random access memory and may further include 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 CPU 120 and other components of device 100, such as peripherals interface 118, may be controlled by memory controller 122.

[0058] The peripheral interface 118 is used to couple the device's input / output peripherals to the CPU 120 and memory 102. The one or more processors 120 execute various software programs and / or sets of instructions stored in the memory 102 to perform various functions and process data for the device 100.

[0059] In some embodiments, the peripherals interface 118, the CPU 120, and the memory controller 122 may be implemented on a single chip, such as chip 104. In some other embodiments, they may be implemented on separate chips.

[0060] The RF (radio frequency) circuitry 108 receives and transmits RF signals, also known as electromagnetic signals. The RF circuitry 108 converts electrical signals to electromagnetic signals and electromagnetic signals to electrical signals, and communicates with communication networks and other communication devices via electromagnetic signals. The RF circuitry 108 includes 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, and memory. The RF circuitry 108 communicates with networks, such as the Internet, also known as the World Wide Web (WWW), an intranet, and / or wireless networks, such as cellular networks, wireless local area networks (LANs), and / or metropolitan area networks (MANs), to communicate with other devices via wireless communications. Wireless communications may include Global System for Mobile Communications (GSM), High Speed ​​Data for Extensions to GSM (EDGE), High Speed ​​Downlink Packet Access (HSDPA), 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.11b, IEEE 802.11g, and / or IEEE 802.11n), voice over IP (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)), SIMPLE (Session Initiation Protocol (SIP) for Instant Messaging and Presence Leveraging), and the like. The present disclosure relates to a method for providing a method for a communication system that uses any of a number of communication standards, protocols, and technologies, including, but not limited to, Instant Messaging / Presence Service (IMPS), Instant Messaging / Presence Service (IMPS), and / or Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this application.

[0061] The audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. The audio circuit 110 receives audio data from the peripheral interface 118, converts the audio data into electrical signals, and sends the electrical signals to the speaker 111. The speaker 111 converts the electrical signals into audible sound waves. The audio circuit 110 also receives electrical signals converted from sound waves by the microphone 113. The audio circuit 110 converts the electrical signals into audio data and sends the audio data to the peripheral interface 118 for processing. The audio data is read from and / or sent to memory 102 and / or RF circuitry 108 by the peripheral interface 118. In some embodiments, the audio circuit 110 further includes a headset jack (e.g., 212 in FIG. 2 ). The headset jack provides an interface between audio circuit 110 and a removable audio input / output peripheral, such as an output-only headphone or a headset with both an output (e.g., headphones for one or both ears) and an input (e.g., a microphone).

[0062] The I / O subsystem 106 couples input / output peripherals on the device 100, such as the touchscreen 112 and other input control devices 116, to a peripheral interface 118. The I / O subsystem 106 includes one or more input controllers 160 for the display controller 156 and other input or control devices. The one or more input controllers 160 receive electrical signals from and send electrical signals to the other input or control devices 116. The other input or control devices 116 include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some alternative embodiments, the input controller 160 is coupled to any (or none) of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. One or more buttons (e.g., 208 in FIG. 2) include up and down buttons for controlling the volume of the speaker 111 and / or microphone 113. The one or more buttons include a push button (e.g., 206 in FIG. 2). A short press of the push button initiates the process of using gestures on the touch screen to unlock the device or unlocks the touch screen 112, as described in U.S. patent application Ser. No. 11 / 322,549, filed Dec. 23, 2005, entitled "Unlocking a Device by Performing Gestures on an Unlock Image," which is incorporated herein by reference in its entirety. A long press of a push button (e.g., 206) powers the device 100 on or off. The user can customize the functionality of one or more buttons. The touch screen 112 is used to implement virtual or soft buttons and one or more soft keyboards.

[0063] The touch-sensitive display 112 provides an input and output interface between the device and a user. The display controller 156 receives and / or sends electrical signals to the touchscreen 112. The touchscreen 112 displays visual output to the user. The visual output includes graphics, text, icons, video, and any combination thereof (collectively referred to as "graphics"). In some embodiments, some or all of the visual output corresponds to user interface objects.

[0064] Touchscreen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on haptic and / or tactile contact. Touchscreen 112 and display controller 156 (along with any associated modules and / or sets of instructions in memory 102) detect contacts (and any movement or cessation of contact) on touchscreen 112 and translate the detected contacts into interactions with user interface objects (e.g., one or more softkeys, icons, web pages, or images) displayed on touchscreen 112. In one exemplary embodiment, the point of contact between touchscreen 112 and the user corresponds to the user's finger.

[0065] Touchscreen 112 may use LCD (liquid crystal display), LPD (light emitting polymer display), or LED (light emitting diode) technology, although other display technologies may be used in other embodiments. Touchscreen 112 and display controller 156 detect contact and any movement or disruption of contact 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 that determine one or more points of contact with touchscreen 112. In one exemplary embodiment, projected mutual capacitance sensing technology, such as that found in the iPhone and iPod Touch from Apple Inc. (Cupertino, California), is used.

[0066] The touch-sensitive display in some embodiments of touchscreen 112 is similar to the multi-touch-sensitive touchpad described in U.S. Pat. No. 6,323,846 (Westerman et al.), U.S. Pat. No. 6,570,557 (Westerman et al.), U.S. Pat. No. 6,677,932 (Westerman), and / or U.S. Patent Application Publication No. 2002 / 0015024 A1, the entire contents of which are incorporated herein by reference. However, touchscreen 112 displays visual output from portable device 100, whereas touch-sensitive touchpads do not provide visual output.

[0067] The touch-sensitive display in some embodiments of the touch screen 112 may be any of the touch-sensitive displays described in U.S. patent application Ser. No. 11 / 381,313, filed May 2, 2006, entitled "Multipoint Touch Surface Controller," (2) U.S. patent application Ser. No. 10 / 840,862, filed May 6, 2004, entitled "Multipoint Touchscreen," (3) U.S. patent application Ser. No. 10 / 903,964, filed July 30, 2004, entitled "Gestures For Touch Sensitive Input Devices," (4) U.S. patent application Ser. No. 11 / 048,264, filed January 31, 2005, entitled "Gestures For Touch Sensitive Input Devices," and (5) U.S. patent application Ser. No. 11 / 038,590, filed January 18, 2005, entitled "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices." No. 11 / 228,758, filed September 16, 2005, entitled "Virtual Input Device Placement On A Touch Screen User Interface," (7) U.S. Patent Application No. 11 / 228,700, filed September 16, 2005, entitled "Operation Of A Computer With A Touch Screen Interface," (8) U.S. Patent Application No. 11 / 228,737, filed September 16, 2005, entitled "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard," and (9) U.S. Patent Application No. 11 / 367,749, filed March 3, 2006, entitled "Multi-Functional Hand-Held Device," all of which applications are incorporated herein by reference in their entireties.

[0068] The touchscreen 112 has a video resolution greater than 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. A user interacts with the touchscreen 112 using any suitable object or accessory, such as a stylus or finger. In some embodiments, the user interface is designed to operate primarily with finger touches and gestures, which are less precise than stylus input due to the larger contact area of ​​the finger on the touchscreen. In some embodiments, the device converts coarse finger input into precise pointer / cursor position or commands to perform the user's desired action.

[0069] In some embodiments, in addition to the touchscreen, device 100 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 may be a touch-sensitive surface separate from touchscreen 112 or may be an extension of the touch-sensitive surface formed by the touchscreen.

[0070] In some embodiments, device 100 includes a physical or virtual wheel (e.g., a click wheel) as input control device 116. A user manipulates and interacts with one or more graphical objects (e.g., icons) displayed on touchscreen 112 by rotating the click wheel or moving a contact point with the click wheel (e.g., the amount of movement of the contact point is measured by an angular displacement relative to the center point of the click wheel). The click wheel is further used to select one or more of the displayed icons. For example, the user presses at least a portion of the click wheel or an associated button. User commands and navigation commands provided by the user via the click wheel are processed by input controller 160 and one or more modules and / or sets of instructions in memory 102. In the case of a virtual click wheel, the click wheel and click wheel controller are part of touchscreen 112 and display controller 156, respectively. In the case of a virtual click wheel, the click wheel is an opaque or semi-transparent object that appears and disappears on the touchscreen display depending on user interaction with the device. In some embodiments, the virtual click wheel is displayed on a touchscreen of the portable multifunction device and is operated by user contact with the touchscreen.

[0071] Device 100 further includes a power system 162 that supplies power to the various components. Power system 162 includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a charging system, power fail 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 in a portable device.

[0072] Device 100 also includes one or more light sensors 164. FIGS. 1A and 1B show a light sensor coupled to light sensor controller 158 of I / O subsystem 106. Light sensor 164 includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Light sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. In conjunction with imaging module 143 (also called a camera module), light sensor 164 captures still images or video. In some embodiments, the light sensor is located on the back of device 100 opposite touchscreen display 112, which is on the front of the device, so that the touchscreen display is used as a viewfinder to capture still and / or video images. In some embodiments, the light sensor is located on the front of the device so that a user's image is captured for a videoconference while the user can view other videoconference participants on the touchscreen display. In some embodiments, the position of the light sensor 164 is changeable by the user (e.g., by rotating the sensor and lens on the device housing) so that a single light sensor 164 is used with the touchscreen display for both video conferencing and capturing still and / or video images.

[0073] Device 100 further includes one or more proximity sensors 166. Figures 1A and 1B show proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 may be coupled to input controller 160 of I / O subsystem 106. Proximity sensor 166 may operate as described in U.S. patent application Ser. No. 11 / 241,839, entitled "Proximity Detector In Handheld Device," U.S. patent application Ser. No. 11 / 240,788, entitled "Proximity Detector In Handheld Device," U.S. patent application Ser. No. 11 / 620,702, entitled "Using Ambient Light Sensor To Augment Proximity Sensor Output," U.S. patent application Ser. No. 11 / 586,862, entitled "Automated Response To And Sensing Of User Activity In Portable Devices," and U.S. patent application Ser. No. 11 / 638,251, entitled "Methods And Systems For Automatic Configuration Of Peripherals," the entire contents of which are incorporated herein by reference. In some embodiments, the proximity sensor powers down and disables touchscreen 112 when the multifunction device is placed near a user's ear (e.g., when the user is making a phone call).

[0074] Device 100 further includes one or more accelerometers 168. 1A and 1B show accelerometer 168 coupled to peripherals interface 118. Alternatively, accelerometer 168 may be coupled to input controller 160 of I / O subsystem 106. Accelerometer 168 may operate as described in U.S. Patent Application Publication No. 20050190059, entitled "Acceleration-Based Theft Detection System for Portable Electronic Devices," and U.S. Patent Application Publication No. 20060017692, entitled "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," the entire contents of which are incorporated herein by reference. In some embodiments, information is displayed on the touchscreen display in portrait or landscape orientation based on an analysis of data received from one or more accelerometers. In addition to the accelerometer 168, the device 100 optionally includes a magnetometer (not shown) and a GPS (or GLONASS or other global navigation system) receiver (not shown) to obtain information about the location and orientation (e.g., portrait or landscape) of the device 100.

[0075] In some embodiments, the software components stored in memory 102 include an operating system 126, a communications module (or set of instructions) 128, a touch / motion module (or set of instructions) 130, a graphics module (or set of instructions) 132, a text input module (or set of instructions) 134, a global positioning system (GPS) module (or set of instructions) 135, and applications (or sets of instructions) 136. Additionally, in some embodiments, as shown in FIGS. 1A, 1B, and 3, memory 102 stores device / global internal state 157. Device / global internal state 157 includes one or more of: an active application state indicating which applications, if any, are currently active; a display state indicating which applications, views, or other information occupy various regions of touchscreen display 112; a sensor state including information obtained from the device's various sensors and input control devices 116; and location information regarding the device's location and / or orientation.

[0076] Operating system 126 (e.g., an embedded operating system such as Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or VxWorks) includes various software components and / or drivers that control and manage general system tasks (e.g., memory management, storage control, power management, etc.) and facilitate communication between various hardware and software components.

[0077] Communications module 128 further includes various software components for facilitating communication with other devices via one or more external ports 124 and for processing data received by RF circuitry 108 and / or external ports 124. External ports 124 (e.g., Universal Serial Bus (USB), FIREWIRE®, etc.) are configured to couple directly to other devices 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 that are identical to, similar to, and / or compatible with the 30-pin connector used on iPod (registered trademark of Apple Inc.) devices.

[0078] Contact / motion module 130 detects contact with touchscreen 112 (together with display controller 156) and other touch-sensitive devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether contact has occurred (e.g., detecting a finger-down event), determining whether there is contact movement and tracking that movement across the touch-sensitive surface (e.g., detecting one or more finger-drag events), and determining whether contact has ceased (e.g., detecting a finger-up event or contact cessation). Contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of a contact point represented by a set of contact data includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point. These processes apply to a single contact (e.g., a single finger contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contact on a touchpad. In some embodiments, contact / motion module 130 and controller 160 detect contact on a click wheel.

[0079] The contact / motion module 130 detects gestures input by a user. Different gestures on a touch-sensitive surface have different contact patterns. Therefore, a gesture is detected by detecting a particular contact pattern. For example, detecting a finger tap gesture includes detecting a finger down event, followed by a finger up (lift off) event at the same location (or nearly 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 one or more finger drag events, followed by a finger up (lift off) event.

[0080] Graphics module 132 includes various known software components for rendering and displaying graphics on touchscreen 112 or other display, including components for modifying the brightness of displayed graphics. As used herein, the term "graphics" includes any object displayed to a user, including, but not limited to, text, web pages, icons (such as user interface objects, including softkeys), digital images, video, and animation.

[0081] In some embodiments, graphics module 132 stores data representing the graphics to be used. Each graphic is assigned a corresponding code. Graphics module 132 receives one or more codes from an application or the like that specify the graphics to be displayed, along with coordinate data and other graphics property data, if necessary, and generates screen image data for output to display controller 156.

[0082] Text input module 134, which may be a component of graphics module 132, provides a soft keyboard for entering text into various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).

[0083] The GPS module 135 determines the location of the device and provides that information for use in various applications (e.g., to the phone 138 for use in making location-based phone calls, to the camera 143 as picture / video metadata, and to applications that provide location-based services such as weather widgets, local yellow pages widgets, and map / navigation widgets).

[0084] The application 136 includes the following modules (or sets of instructions), or a subset or superset thereof:

[0085] Contacts module 137 (sometimes called a phone book or contact list) Telephone module 138 Videoconferencing module 139 Email client module 140 Instant Messaging (IM) Module 141 Workout Support Module 142 Camera module 143 for still and / or video images Image Management Module 144 Video player module 145 Music player module 146 Browser module 147 Calendar module 148 A widget module 149 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 acquired by the user, and a user-created widget 149-6. A widget creator module 150 that creates user-created widgets 149-6 Search Module 151 A video and music player module 152 that merges the video player module 145 and the music player module 146 Memo module 153 map module 154 and / or ·155 Online Video Modules Examples of other applications 136 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.

[0086] The contacts module 137, along with the touch screen 112, display controller 156, touch module 130, graphics module 132, and text input module 134, is used to manage a phone book or contact list (e.g., stored in memory 102 or in the application internal state 192 of the contacts module 137 in memory 370). This includes adding names to the phone book, deleting names from the phone book, associating phone numbers, email addresses, addresses, or other information with names, associating images with names, categorizing and sorting names, and providing phone numbers or email addresses to initiate and / or facilitate communication by phone 138, video conference 139, email 140, or IM 141.

[0087] Telephone module 138, along with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, contact module 130, graphics module 132, and text input module 134, is used to enter character strings corresponding to telephone numbers, access one or more telephone numbers in a telephone directory 137, modify entered telephone numbers, dial each telephone number, conduct a conversation, and disconnect or hang up when the conversation is completed. As noted above, wireless communication may use any of a number of communication standards, protocols, and technologies.

[0088] Along with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, light sensor 164, light sensor controller 158, contact module 130, graphics module 132, text input module 134, contact list 137, and telephone module 138, videoconferencing module 139 includes executable instructions for initiating, conducting, and terminating a videoconference between a user and one or more other participants according to the user's commands.

[0089] In conjunction with RF circuitry 108, touch screen 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 commands. In conjunction with image management module 144, email client module 140 greatly facilitates the creation and sending of emails containing still or video images captured by camera module 143.

[0090] Instant messaging module 141, together with RF circuitry 108, touchscreen 112, display controller 156, contact module 130, graphics module 132, and text input module 134, includes executable instructions for entering text corresponding to an instant message, modifying previously entered text, sending instant messages (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for instant messaging using telephony, or XMPP, SIMPLE, or IMPS for instant messaging using the Internet), receiving instant messages, and viewing received instant messages. In some embodiments, sent and / or received instant messages 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, "instant messaging" refers to telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).

[0091] The workout support module 142, along with the RF circuitry 108, touch screen 112, display controller 156, contact module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module 146, contains executable instructions for creating workouts (e.g., including time, distance, and / or calorie burn goals), communicating with workout sensors (sports devices), receiving workout sensor data, calibrating sensors used to monitor the workout, selecting and playing music for the workout, and displaying, storing, and transmitting workout data.

[0092] Camera module 143, along with touch screen 112, display controller 156, light sensor 164, light sensor controller 158, contact module 130, graphics module 132, and image management module 144, contain executable instructions to capture still images or video (including video streams) and store them in memory 102, modify the characteristics of the still images or video, or delete the still images or video from memory 102.

[0093] Image management module 144, along with touch screen 112, display controller 156, contact module 130, graphics module 132, text input module 134, and camera module 143, includes executable instructions for organizing, modifying (e.g., editing), otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slide show or album), and storing still and / or video images.

[0094] Along with touchscreen 112, display controller 156, contact module 130, graphics module 132, audio circuitry 110, and speaker 111, video player module 145 contains executable instructions to display, present, or play video (e.g., on touchscreen 112 or an external display connected via external port 124).

[0095] Music player module 146, along with touchscreen 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, contain executable instructions that allow a user to download and play recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files. In some embodiments, device 100 includes the functionality of an MP3 player, such as an iPod (a registered trademark of Apple Inc.).

[0096] The browser module 147, along with the RF circuitry 108, touch screen 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 user commands, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.

[0097] Calendar module 148, along with RF circuitry 108, touch screen 112, display system controller 156, contact module 130, graphics module 132, text input module 134, email client module 140, and browser module 147, contains executable instructions to create, display, modify, and store calendars and data associated with calendars (e.g., calendar entries, to-do lists, etc.) according to user instructions.

[0098] Widget modules 149, along with RF circuitry 108, touchscreen 112, display system controller 156, contact module 130, graphics module 132, text input module 134, and browser module 147, are mini-applications that can be downloaded and used by users (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 created by users (e.g., user-created widget 149-6). In some embodiments, widgets include HTML (HyperText Markup Language) files, CSS (Cascading Style Sheets) files, and JavaScript files. In some embodiments, widgets include XML (Extensible Markup Language) files and JavaScript files (e.g., Yahoo! Widgets).

[0099] The widget creator module 150, along with the RF circuitry 108, touch screen 112, display system controller 156, contact module 130, graphics module 132, text input module 134, and browser module 147, is used by a user to create a widget (e.g., turn a user-specified portion of a web page into a widget).

[0100] The search module 151, along with the touch screen 112, display system controller 156, contact module 130, graphics module 132, and text input module 134, 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 user commands.

[0101] Along with touch screen 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.

[0102] The map module 154, together with the RF circuitry 108, touch screen 112, display system controller 156, contact module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, is used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data regarding businesses and other point-of-interest information at or near a particular location, and other location-based data) in accordance with user instructions.

[0103] Online video module 155, along with touchscreen 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, contains instructions that enable a user to access emails containing links to particular online videos, browse, receive (e.g., by streaming and / or downloading), play (e.g., on the touchscreen or an external display connected via external port 124), send, or otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141 is used rather than email client module 140 to send links to particular online videos. Further description of online video applications is provided in U.S. Provisional Patent Application No. 60 / 936,562, filed June 20, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," and U.S. Patent Application No. 11 / 968,067, filed December 31, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," the entire contents of which are incorporated herein by reference.

[0104] Each of the above-identified modules and applications corresponds to a set of executable instructions for performing one or more of the functions described above and methods described herein (e.g., the computer-implemented methods and other information processing methods described herein). These modules (i.e., sets of instructions) need not be implemented as separate software programs, procedures, or modules; therefore, various subsets of the modules may be combined or rearranged in various embodiments. For example, video player module 145 may be combined with music player module 146 into a single module (e.g., video and music player module 152 in FIG. 1B). In some embodiments, memory 102 may store a subset of the above-identified modules and data structures. Additionally, memory 102 may store additional modules and data structures not described above.

[0105] In some embodiments, device 100 is a device in which operation of a predefined set of functions on the device is performed exclusively via a touchscreen and / or touchpad. Using the touchscreen and / or touchpad as the primary input control device for operation of device 100 reduces the number of physical input control devices (such as pushbuttons and dials) on device 100.

[0106] A set of predefined functions performed exclusively via the touchscreen and / or touchpad includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main, home, or root menu from any user interface displayed on device 100. In such embodiments, the touchpad is referred to as a "menu button." In other embodiments, the menu button may be a physical push button or other physical input control device rather than a touchpad.

[0107] 1C is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 (FIGS. 1A and 1B) or memory 370 (FIG. 3) includes event sorter 170 (e.g., in operating system 126) and each application 136-1 (e.g., any of applications 137-151, 155, 380-390 described above).

[0108] Event sorter 170 receives the event information and determines application 136-1 and application view 191 for application 136-1 to which the event information should be delivered. Event sorter 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192, which indicates the current application view that is displayed on touch-sensitive display 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 is currently active, and application internal state 192 is used by event sorter 170 to determine which application is currently active, and application internal state 192 is used by event sorter 170 to determine which application view 191 the event information should be delivered to.

[0109] In some embodiments, application internal state 192 includes one or more additional information: resume information used when application 136-1 resumes execution; user interface state information indicating information being displayed or ready to be displayed by application 136-1; a state queue that allows the user to return to a previous state or view of application 136-1; and a redo / undo queue of a previous action taken by the user.

[0110] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about sub-events (e.g., a user touch on touch-sensitive display 112 that is part of a multi-touch gesture). Peripherals interface 118 transmits information it receives from sensors such as proximity sensor 166, accelerometer 168, and / or microphone 113, or from I / O subsystem 106 (via audio circuitry 110). The information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.

[0111] In some embodiments, event monitor 171 sends requests to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (e.g., exceeding a predetermined noise threshold and / or receiving an input for a period longer than a predetermined duration).

[0112] In some embodiments, event sorter 170 further includes hit view determination module 172 and / or active event recognizer determination module 173.

[0113] Hit view determination module 172 provides software procedures that determine where a sub-event occurred within one or more views when touch-sensitive display 112 displays more than one view. A view consists of the controls and other elements that a user can see on the display.

[0114] 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 gestures occur. The application view (for each application) in which a touch is detected corresponds to a programmatic level within the application's programmatic or view hierarchy. For example, the lowest-level view in which a touch is detected is called the hit view, and the set of events that are recognized as appropriate input is determined based at least in part on the hit view of the initial touch that initiates the touch gesture.

[0115] Hit view determination module 172 receives information related to sub-events of a touch gesture. If 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 sequence of sub-events that form an event or potential event). Once identified by the hit view determination module, a hit view typically receives all sub-events related to the same touch or input source identified as the hit view.

[0116] Active event recognizer determination module 173 determines which views should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a 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-events are actively participating views, and determines that all actively participating views should receive a particular sequence of sub-events. In other embodiments, even if a touch sub-event is entirely restricted to the region associated with one particular view, views higher in the hierarchy remain actively participating views.

[0117] Event dispatcher module 174 dispatches 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 event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information in an event queue, which is read by each event receiver module 182.

[0118] 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 is part of another module stored in memory 102, such as contact / motion module 130.

[0119] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191. Each application view contains instructions for handling touch events that occur 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 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, each event handler 190 includes one or more of data updater 176, object updater 177, GUI updater 178, and / or event data portion 179 received from event sorter 170. Event handler 190 utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Alternatively, one or more application views 191 include one or more event handlers 190. Also, in some embodiments, each application view 191 includes one or more of a data updater 176, an object updater 177, and a GUI updater 178.

[0120] 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 event receiver 182 and event comparator 184. In some embodiments, event recognizer 180 further includes metadata 183 and at least a subset of event delivery instructions 188 (including sub-event delivery instructions).

[0121] Event receiver 182 receives event information from event sorter 170. The event information includes information about a sub-event, such as a touch or a touch movement. Depending on the sub-event, the event information further includes additional information, such as the location of the sub-event. If the sub-event relates to a touch movement, the event information further includes the speed and direction of the sub-event. In some embodiments, the event includes a device rotation from one orientation to another (e.g., from portrait to landscape or from landscape to portrait), and the event information includes corresponding information about the device's current orientation (also called the device's attitude).

[0122] The event comparator 184 compares the event information with 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 a definition of an event (e.g., a sequence of predefined sub-events), such as Event 1 (187-1) and Event 2 (187-2). In some embodiments, sub-events of Event 187 include, for example, touch start, touch end, touch movement, touch cancellation, and multi-touch. In one example, the definition of Event 1 (187-1) is a double tap on a displayed object. The double tap includes, for example, a first touch (touch start) on a displayed object for a predetermined phase, a first lift-off (touch end) for the predetermined phase, a second touch (touch start) on a displayed object for the predetermined phase, and a second lift-off (touch end) for the predetermined phase. In another example, a definition of event 2 (187-2) is a drag of a display object. For example, the drag includes a touch (or contact) to the display object for a predetermined phase, a movement of the touch across the touch-sensitive display 112, and a lift-off of the touch (end of the touch). In some embodiments, the event further includes information for one or more associated event handlers 190.

[0123] In some embodiments, event definition 187 includes a definition of an event for each user interface object. In some embodiments, event comparator 184 performs a hit test to determine the user interface object associated with the sub-event. For example, in an application view in which three user interface objects are displayed on touch-sensitive display 112, when a touch is detected on touch-sensitive display 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 display object is associated with a respective event handler 190, event comparator 184 uses the results of the hit test to determine which event handler 190 should be invoked. For example, event comparator 184 selects the event handler associated with the object and sub-event that triggers the hit test.

[0124] In some embodiments, the definition of each event 187 further includes a delay action that delays delivery of the event information until it is determined whether the sequence of sub-events corresponds to the event type of the event recognizer.

[0125] If each event recognizer 180 determines that the sequence of sub-events does not match any event in event definition 186, it enters an event-disabled, event-failed, or event-ended state and then ignores subsequent sub-events of the touch gesture. In this situation, if there are other event recognizers that remain active for the hit view, those event recognizers continue to track and process sub-events of the ongoing touch gesture.

[0126] In some embodiments, each event recognizer 180 includes metadata 183 with configurable properties, flags, and / or lists that indicate how the event delivery system performs sub-event delivery to actively involved event recognizers. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate whether sub-events are delivered to various levels of the view hierarchy or programmatic hierarchy.

[0127] In some embodiments, each event recognizer 180 invokes an event handler 190 associated with an event when one or more specific 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. Invoking the event handler 190 is distinct from the dispatch (and delayed dispatch) of sub-events to each hit view. In some embodiments, the event recognizer 180 throws a flag associated with the recognized event, and the event handler 190 associated with the flag catches the flag and performs predefined processing.

[0128] In some embodiments, event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without invoking 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 an actively participating view. The event handler associated with the set of sub-events or an actively participating view receives the event information and performs predetermined processing.

[0129] 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 player module 145. In some embodiments, object updater 177 creates and updates objects used by application 136-1. For example, object updater 176 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 information to graphics module 132 for display on the touch-sensitive display.

[0130] In some embodiments, event handler 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 application view 191 or each application 136-1. In other embodiments, they are included in two or more software modules.

[0131] It is understood that the above description of event processing of user touches on a touch-sensitive display also applies to other forms of user input for operating multifunction device 100, including input devices, and that not all user input is initiated on the touchscreen, but rather coordinates, for example, mouse movements and mouse button presses with or without single or multiple keyboard presses or holds, user movements, taps, drags, scrolling, etc. on a touchpad, pen stylus input, device movement, voice commands, detected eye movements, biometric input, and / or combinations thereof, which are utilized as inputs corresponding to sub-events that define the recognized event.

[0132] FIG. 2 illustrates portable multifunction device 100 with touchscreen 112 according to some embodiments. The touchscreen displays one or more graphics within user interface (UI) 200. In this embodiment and other embodiments described below, a user selects one or more graphics by contacting or touching the graphics, for example, using one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, contact includes gestures such as one or more taps, one or more swipes (left to right, right to left, up and / or down), and / or rotation of a finger in contact with device 100 (right to left, left to right, up and / or down). In some embodiments, inadvertent contact with a graphic does not select that graphic. For example, a swipe gesture moving over an application icon does not select the corresponding application if the gesture corresponding to selection is a tap.

[0133] Device 100 further includes one or more physical buttons, such as a "home" or menu button 204. As described above, menu button 204 is used to navigate to any application 136 in a set of applications running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on touchscreen 112.

[0134] In one embodiment, device 100 includes touchscreen 112, menu button 204, pushbuttons 206 for powering the device on / off and locking the device, volume control buttons 208, subscriber identity module (SIM) card slot 210, headset jack 212, and docking / charging external port 124. Pushbutton 206 is used to power the device on / off by pressing and holding the button in a pressed state for a predefined time interval, lock the device by pressing the button and releasing it before the predefined time interval has elapsed, and / or unlock the device or initiate an unlocking process. In another embodiment, device 100 also accepts voice input via microphone 113 for activating or deactivating certain functions.

[0135] FIG. 3 is a block diagram illustrating an exemplary multifunction device with 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 player 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 industrial controller). Typically, device 300 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 interconnecting these components. Communication bus 320 includes circuitry (sometimes called a chipset) that interconnects and controls communication between system components. Device 300 includes input / output (I / O) interface 330 with display 340, which is typically a touchscreen display. I / O interface 330 may further include a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355. Memory 370 may include high-speed random-access memory, such as DRAM, SRAM, DDR, RAM, or other random-access solid-state memory devices, and may also include 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 may optionally include 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. 1). Memory 370 may also store additional programs, modules, and data structures not currently present in memory 102 of portable multifunction device 100.For example, memory 370 of device 300 may store 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. 1) may not store those modules.

[0136] Each of the above-identified elements of FIG. 3 is stored in one or more memory devices as described above. Each of the above-identified modules corresponds to a set of instructions that perform the functions described above. The above-identified modules or programs (i.e., sets of instructions) need not be implemented as separate software programs, procedures, or modules; in various embodiments, various subsets of the modules may be combined or reconfigured. In some embodiments, memory 370 may store a subset of the above-identified modules and data structures. Additionally, memory 370 may store additional modules and data structures not described above.

[0137] Attention is now directed to embodiments of user interfaces (“UIs”) implemented on portable multifunction device 100 .

[0138] 4A and 4B show exemplary user interfaces for a menu of applications for portable multifunction device 100 in accordance with some embodiments. A similar user interface is implemented in device 300. In some embodiments, user interface 400A includes the following elements, or a subset or superset thereof: Signal strength indicators 402 for wireless communications such as cellular and Wi-Fi signals ·Time 404 ·Bluetooth sign 405 Battery status indicator 406 Tray 408 containing icons of frequently used applications Phone 138, including an indication of the number of missed calls or voicemail messages 414 · 140 email clients, including 410 unread email count displays Browser 147 Music Player 146 Icons for other applications IM141 Image Management 144 Camera 143 Video Player 145 Weather 149-1 Stock Price 149-2 Workout Support 142 Calendar 148 ·Calculator 149-3 Alarm Clock 149-4 Dictionary 149-5 User-created widgets 149-6

[0139] In some embodiments, user interface 400B includes the following elements, or a subset or superset thereof: 402, 404, 405, 406, 141, 148, 144, 143, 149-3, 149-2, 149-1, 149-4, 410, 414, 138, 140 and 147 as mentioned above Map 154 Note 153 Settings 412, which provides access to settings for the device 100 and its various applications 136, as further described below. A video and music player module 152, also known as an iPod (registered trademark of Apple Inc.) module 152 Online video module 155, also known as YouTube (registered trademark of Google Inc.) module 155

[0140] FIG. 4C illustrates an exemplary user interface for a device (e.g., device 300 of FIG. 3 ) with a touch-sensitive surface 451 (e.g., tablet or touchpad 355 of FIG. 3 ) that is separate from a display 450 (e.g., touchscreen display 112). While many of the examples below 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 that is separate from the display, as shown in FIG. 4C . In some embodiments, the touch-sensitive surface (e.g., 451 of FIG. 4C ) has a major axis (e.g., 452 of FIG. 4C ) that corresponds to a major axis (e.g., 453 of FIG. 4C ) on the display (e.g., 450). According to these embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 of FIG. 4C ) at locations corresponding to locations on the display (e.g., in FIG. 4C , 460 corresponds to 468, and 462 corresponds to 470). In this manner, 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. 4C) is used by the device to operate a user interface on the display (e.g., 450 in FIG. 4C) of the multifunction device when the touch-sensitive surface is separate from the display. It should be understood that similar methods may be used for the other user interfaces described herein.

[0141] Attention is now directed to embodiments of user interfaces (“UIs”) and related processes implemented on a multifunction device with a display and touch-sensitive surface, such as device 300 or portable multifunction device 100 .

[0142] Figures 5A-5HH illustrate exemplary user interfaces for managing simultaneously open applications according to some embodiments. The user interfaces in these figures are used to illustrate the processes described below, including the processes of Figures 6A-6C, 7, 8A-8C, 9, 10, and 11A-11B.

[0143] As used in the specification and claims, the term "open application" refers to a software application that includes persisted state information (e.g., as part of device / global internal state 157 and / or application internal state 192). An open application is any one of the following types of applications: The active application currently displayed on the display 112 (or the corresponding application view currently displayed on the display) Background applications (or background processes) that are not currently displayed on the display 112, but one or more application processes (e.g., instructions) for the corresponding application are being processed (i.e., executed) by one or more processors 120. A suspended application that is not currently running and is stored in volatile memory (e.g., DRAM, SRAM, DDR, RAM, or other volatile random-access solid-state memory element of memory 102). Dormant applications that are not running and are stored in non-volatile memory (e.g., one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile random access solid-state memory devices in memory 102)

[0144] As used herein, the term "closed application" refers to a software application that does not include retained state information (e.g., state information for a closed application is not stored in the device's memory). Thus, closing an application includes stopping and / or removing application processing for the application and removing state information for the application from the device's memory. Generally, opening a second application while a first application is present does not close the first application. If the second application is displayed and the first application ceases to be displayed, the first application, which was the active application when it was displayed, becomes a background application, a suspended application, or a dormant application, but the first application remains open while its state information is retained by the device.

[0145] 5A-5D show exemplary user interfaces for selecting one of the simultaneously open applications and displaying the corresponding application view.

[0146] FIG. 5A illustrates an exemplary user interface ("Home Screen" 5001) displaying multiple application icons 5002 (e.g., 5002-21 through 5002-38) on touchscreen 112 of a portable electronic device (e.g., portable multifunction device 100). In FIG. 5A, finger gesture 505 (e.g., a tap gesture) is detected on touchscreen 112 at a location corresponding to Maps application icon 5002-27. (Note that application icons 5002 on the home page displayed in FIG. 5A may or may not correspond to open application icons, while application icons 5002 in FIGS. 5C-5Z correspond to open applications.) In Figure 5B, in response to detecting the finger gesture, a maps application is launched and a maps application view 5004-1 is displayed on touch screen 112. In this example, the maps application view includes a portion of a map and user interface objects such as a search input field, a search icon, and direction icons. Further in Figure 5B, an input 507 (e.g., a click or double-click on home button 204) is detected.

[0147] 5C illustrates that, in response to detecting input 507, a portion of map application view 5004-1 and application icon region 5006 are simultaneously displayed. In some embodiments, in response to detecting input 507, the device initiates an application selection mode for selecting one of the simultaneously open applications, and the portion of map application view 5004-1 and application icon region 5006 are simultaneously displayed as part of the application selection mode. Application icon region 5006 includes an initial group of open application icons corresponding to at least some of the simultaneously open applications. In this example, the multifunction device has multiple applications that are simultaneously open but not simultaneously displayed. Further in this example, application icon region 5006 includes application icons for a web browser (Safari), a music application (iPod), a financial application (stocks), and a multimedia store application (iTunes®).

[0148] In some embodiments, the simultaneous display of the map application view and the application icon region includes an animation. For example, the map application view can slide up so that part of the map application view moves off the display and part remains on the display. The animation can include the application icon region sliding in simultaneously from the bottom of the screen so that the map application view and the application icon region appear connected.

[0149] In FIG. 5C, finger gesture 509 (eg, a tap gesture) is detected on touch screen 112 at a location corresponding to web browser application icon 5002-37.

[0150] FIG. 5D shows that in response to detecting a finger gesture at a location corresponding to the web browser application icon, web browser application view 5004-2 is displayed on touch screen 112.

[0151] 5E and 5F illustrate scrolling of application icon regions. In FIG. 5E, contact 511 (e.g., a finger contact) is detected on touch screen 112 at location 511-A, which corresponds to application icon region 5006. In FIG. 5E and 5F, contact 511 moves to a different location (e.g., 511-B) on touch screen 112, and the application icons in application icon region 5006 are scrolled in accordance with the movement of contact 511.

[0152] 5G-5I show exemplary user interfaces for closing one of simultaneously open applications. In FIG. 5G, finger gesture 513 (e.g., a press and hold gesture) is detected on touch screen 112 at a location corresponding to music application icon 5002-38, and the device is in application selection mode. FIG. 5H shows that in response to detecting the finger gesture, the multifunction device enters application termination mode. In application termination mode, the music application icon is visually distinguished from the remaining application icons displayed on touch screen 112. In this example, the music application icon is animated (e.g., wobbles), and the remaining displayed application icons are dimmed. Additionally, an application termination indicia (e.g., an application termination icon such as "-" icon 5012-1) is displayed adjacent to the music application icon.

[0153] In FIG. 5H, finger gesture 515 (e.g., a tap gesture) is detected on touch screen 112 at a location corresponding to a visually distinguished application icon (e.g., music application icon 5002-38). FIG. 5I shows that in response to detecting the gesture, the visually distinguished application icon (e.g., 5002-38) is removed from the application icon region. Further in response to the gesture, the multifunction device closes the corresponding application (e.g., music application). After the visually distinguished application icon (e.g., 5002-38) is removed, the multifunction device displays a new set of application icons without visual distinctions (e.g., the application icons are not dimmed). The new set of application icons includes the application icons included in the initial set of application icons (e.g., 5002-37, 5002-26, and 5002-32), except for the closed application icon. An additional application icon (e.g., 5002-35) is added to the new set of application icons. Also, after removing the visually distinct application icon, the multifunction device exits the application termination mode and returns to the application selection mode. In some embodiments, a finger gesture (e.g., a tap gesture) at a location corresponding to application termination icon 5012-1 removes the visually distinct application icon.

[0154] 5J and 5K show exemplary user interfaces including music application views. In FIG. 5J, music application view 5004-3 (e.g., an iPod application view) is displayed. Music application view 5004-3 includes music controls (e.g., play / pause, fast forward / next track and rewind / previous track, and / or a scrub bar). FIG. 5J further shows that input 517 is detected (e.g., a single click or double click on the home button 204).

[0155] 5K, a portion of music application view 5004-3 and application icon area 5006 are simultaneously displayed. Note that in this example, a music application icon (e.g., 5002-38) is not displayed in the application icon area, but a music application view (e.g., 5004-3) is displayed regardless of when the corresponding music application is used or playing music.

[0156] FIG. 5L shows an exemplary user interface including music control icons in a predefined area (e.g., music control icons 5106 (such as a pause icon, a previous track icon, and a next track icon) in application icon area 5006-1). Note that music control icons 5106 and application icons are displayed on separate rows in (enlarged) predefined area 5006-1. In some embodiments, the application icons are scrolled while music control icons 5106 remain on the display. In FIG. 5L, a left-to-right swipe gesture 537 is detected on touchscreen 112.

[0157] 5M shows an exemplary user interface including a settings icon in a predefined region. In some embodiments, the settings icon is displayed in response to detecting a left-to-right swipe gesture 537. In FIG. 5M, settings icons (e.g., rotation lock icon 5102-1, Wi-Fi icon 5102-2, and Bluetooth icon 5102-3) are displayed in application icon region 5006-1. Each settings icon changes a corresponding setting when activated (e.g., by a finger gesture) (e.g., Wi-Fi icon 5102-2 turns Wi-Fi connectivity on or off when activated). In some embodiments, one or more application icons are displayed simultaneously with the settings icon in application icon region 5006 (not shown).

[0158] FIG. 5N illustrates rotation of multifunction device 100. In response to detecting a rotation of multifunction device 100, application icons 5002 are rotated and reconfigured. In some embodiments, the number of application icons displayed in landscape mode (e.g., five, six, etc.) is different from the number of application icons displayed in portrait mode (e.g., three, four, etc.). In some embodiments, the application icons displayed in landscape mode include application icons displayed in portrait mode (e.g., a device such as that shown in FIG. 5L displays at least a stock icon, a map icon, an iTunes icon, and a Game Center icon (not shown) after rotating from portrait mode to landscape mode). In other embodiments, the application icons displayed in landscape mode do not include application icons displayed in portrait mode (e.g., FIGS. 5M and 5N).

[0159] 5O shows another user interface for selecting an open application. When the device initiates application selection mode (e.g., via input 507 in FIG. 5B), it displays images of the open applications (e.g., 5008-10, 5008-11, and 5008-13) in predefined area 5006, rather than displaying application icons (e.g., as shown in FIG. 5C).

[0160] 5P-5Y show an exemplary user interface including user interface objects corresponding to open applications arranged in a grid, where the user interface objects are typically user selectable (or user activateable).

[0161] 5P and 5Q illustrate scrolling through open application icons arranged in a grid. In FIG. 5P, open application icons 5002 (e.g., 5002-1 through 5002-9) are displayed in a 3x3 grid. In some embodiments, the application icons 5002 are identical to the application icons shown in FIGS. 5A-5K (e.g., map application icons 5002-6 and 5002-27 are identical). In other embodiments, the application icons 5002 displayed in the grid are different from the application icons displayed elsewhere (e.g., in application icon region 5006 or home screen 5001).

[0162] 5P further illustrates that gesture 519 (e.g., a swipe gesture) is detected on touch screen 112. FIG. 5Q illustrates that, in response to detecting gesture 519, open application icons 5002 displayed on touch screen 112 in FIG. 5P are scrolled off the display and a different set of open application icons 5002 (e.g., 5002-10 through 5002-18) is displayed on touch screen 112.

[0163] 5R-5T show exemplary user interfaces including images of open applications (or corresponding application views). In FIG. 5R, images 5008 (e.g., 5008-10 through 5008-18) of open applications or application views (e.g., live thumbnails) are displayed in a grid. In some embodiments, the images of open applications are updated when the corresponding applications change their corresponding application views (e.g., a browser displays new content on a web page, a movie player plays a movie, etc.).

[0164] 5S, open application icons (e.g., 5002-35, 5002-36, and 5002-37) are displayed at least partially overlapping the images of corresponding open applications (e.g., 5008-10, 5008-11, and 5008-12). In some embodiments, open application icons 5002 are displayed adjacent to corresponding open application images 5008 without overlap. In some embodiments, open application icons 5002 are displayed completely overlapping corresponding open application images 5008.

[0165] 5T shows at least a subset of images 5008 that include status indicia for the corresponding application. In this example, map application image 5008-6 includes a compass icon 5010-1 that indicates that a particular feature (e.g., a GPS tracking feature) is activated in the corresponding map application. In some embodiments, open application icons (e.g., 5002) include status indicia.

[0166] 5U and 5V show exemplary user interfaces including an application exit mode. In FIG. 5U, one of the images (e.g., 5008-12) is displayed with a shaking animation. Furthermore, image 5008-12 includes application exit icon 5012-2. When image 5008-12 is selected (e.g., with a finger tap gesture), it removes image 5008-12 from the set of displayed images and closes the corresponding application (e.g., a web browser application). Thereafter, as shown in FIG. 5V, the remaining images (e.g., 5008-10, 5008-11, 5008-13 through 5008-18) and a new image (e.g., 5008-19) are displayed. The application exit icon operates in a manner similar to the application exit mode described above with reference to FIGS. 5G through 5I.

[0167] 5W-5X show an exemplary user interface including the simultaneous display of open application icons and a search icon 5004. In FIG. 5W, contact 521 is detected on touch screen 112 at a location corresponding to search icon 5104. FIG. 5X shows that in response to detecting contact 521 at a location corresponding to search icon 5104, keyboard 5014 is displayed on touch screen 112. In some embodiments, search icon 5104 and keyboard 5014 are simultaneously displayed on touch screen 112 with at least a subset of open application icons 5002 (e.g., application icons 5002 of FIG. 5X). In some embodiments, the simultaneously displayed application icons correspond to applications that match a search term. In some embodiments, search icon 5104 and keyboard 5014 are simultaneously displayed with a list of applications (e.g., applications that match a search term).

[0168] 5Y illustrates rotation of multifunction device 100. In response to detecting a rotation of multifunction device 100, open application icons 5002 are rotated and reconfigured. In some embodiments, the number of application icons displayed in landscape mode (e.g., 2x4, 2x5, etc.) is different from the number of application icons displayed in portrait mode (e.g., 3x3, 4x3, 4x2, etc.).

[0169] 5Z-5AA ​​illustrate gestures for displaying user-selected information. In FIG. 5Z, gesture 523 (e.g., a swipe down gesture) is detected on touch screen 112 from the top edge of the display. FIG. 5AA illustrates that, in response to detecting gesture 523, an exemplary user interface including the user-selected information is displayed. For example, the user-selected information user interface includes a user-selectable icon (e.g., done icon 5020), user-selected information (e.g., local weather 5016), and new electronic notifications (e.g., recent emails 5018-1 and upcoming events 5018-2).

[0170] 5BB and 5CC show an exemplary user interface including a three-dimensional stack of images of open applications. In FIG. 5BB, the images of the open applications are displayed in a three-dimensional stack that extends to the rear of the display. For example, the image of the most recently used open application (e.g., 5008-10) is displayed in the foreground, the image of the penultimate open application (e.g., 5008-11) is displayed to the right of the most recently used application (e.g., 5008-10), and so on. In some embodiments, images are scrolled with a swipe gesture, and the corresponding application is selected with a tap gesture. In FIG. 5BB, gesture 533 (e.g., a tap gesture) is detected at a location corresponding to each image of an open application (e.g., a mail application). In response, the mail application view is displayed as shown in FIG. 5CC.

[0171] 5CC-5HH show exemplary user interfaces for selecting one of simultaneously open applications. FIG. 5CC shows mail application view 5004-4 for an email application (e.g., Mail). In FIG. 5CC, mail application view 5004-4 includes email text that includes link 5020-1 to a web page. Gesture 525 (e.g., a tap gesture) is detected on touchscreen 112 at a location corresponding to link 5020-1.

[0172] In Figure 5DD, in response to detecting gesture 525 at a location corresponding to link 5020-1, the corresponding web page is displayed in web browser application view 5004-5. Figure 5DD further shows that input 527 (e.g., a single click or double click on home button 204) is detected.

[0173] FIG. 5EE shows that, in response to detecting input 527, a portion of home screen 5001, web browser application view 5008-12, and a portion of email application view 5008-10 are displayed. FIG. 5EE further shows that tap gesture 535 is detected at a location corresponding to email application image 5008-10. In response to detecting tap gesture 535, email application view 5004-4 (as shown in FIG. 5CC) is displayed without simultaneously displaying any other application views. FIG. 5EE further shows that swipe gesture 529 is detected on touch screen 112 at a location corresponding to email application view 5008-10. In FIG. 5FF, in response to detecting swipe gesture 529, the application views (e.g., 5008-10 and 5008-12) are scrolled and a portion of maps application view 5008-6 is displayed.

[0174] In FIG. 5FF, if gesture 531 (eg, a tap gesture) is detected at a location corresponding to map application view 5008-6, then in response, the map application view is displayed as shown in FIG. 5GG.

[0175] In FIG. 5FF, if gesture 533 (eg, a tap gesture) is detected at a location corresponding to home screen 5001, then in response home screen 5001 is displayed as shown in FIG. 5HH.

[0176] 6A-6C are flowcharts illustrating a method 600 for creating a new folder according to some embodiments. Method 600 is performed on a multifunction device with a display and a touch-sensitive surface (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1). In some embodiments, the display is a touchscreen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 600 may be combined and / or the order of some operations may be changed.

[0177] As described below, method 600 provides an intuitive way to select one of simultaneously open applications. The method reduces the cognitive load on the user when selecting one of simultaneously open applications, creating a more efficient human-machine interface. For battery-operated computing devices, allowing a user to select one of simultaneously open applications faster and more efficiently conserves power and extends the time between battery charges.

[0178] The device displays (602) a first application view (e.g., maps application view 5004-1 in FIG. 5B ) on the touch-sensitive display corresponding to a first application of a plurality of simultaneously open applications (e.g., the device has multiple open applications, such as Safari, iPod, stocks, and iTunes). The first application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open plurality of applications (e.g., in FIG. 5B , maps application view 5004-1 is displayed without simultaneously displaying application views for any other applications). In other words, in a normal operating mode, only a single application view corresponding to one of the plurality of simultaneously open applications is displayed. The other open applications (e.g., other open applications, such as Safari, iPod, stocks, and iTunes) are running in the background or in a suspended or dormant operating state.

[0179] The device detects 604 a first input (e.g., input 507 of FIG. 5B ). In some embodiments, the first input is a single tap on a home button (e.g., 204). In some embodiments, the first input is a double tap on a home button (e.g., 204). In some embodiments, the first input is a gesture on a touch-sensitive display, such as a three-finger pinch gesture or a swipe gesture.

[0180] In response to detecting a first input (606), the device performs the following actions: The device initiates an application view selection mode (608) to select one of the simultaneously open applications for display in a corresponding application view. The device displays an initial group of open application icons (e.g., application icons 5002 in application icon region 5006 of FIG. 5C ) corresponding to at least some of the simultaneously open applications in a first predefined region (e.g., a strip at a predefined location on a touch-sensitive display). In some embodiments, the device maintains the display of the first predefined region absent further input (e.g., a press and hold on home button 204 or touch screen 112) until the application view selection mode is terminated. In some embodiments, the region displays the open applications in a scrollable strip containing a linear array of open application icons (e.g., application icon region 5006 is scrollable as shown in FIGS. 5E and 5F ). The device simultaneously displays (612) at least a portion of the first application view adjacent to the first predefined region (e.g., in FIG. 5C , at least a portion of map application view 5004-1 and application icon region 5006 are simultaneously displayed). Simultaneous display offers several advantages. For example, simultaneous display provides context by maintaining the first application view while selecting an open application icon. Also, it is easy to return to the first application (and discontinue displaying the application icon region), for example, by tapping the first application view.

[0181] In some embodiments, at least a subset of the open application icons include a status indicia for the corresponding application (624 in FIG. 6B). For example, an audio application icon includes a "currently recording" indicia (e.g., a red dot) displayed on or adjacent to the audio application icon. In another example, a maps application icon includes a "GPS active" indicia (e.g., a compass image) displayed on or adjacent to the maps application icon (see, e.g., the similar example in FIG. 5S, where image 5008-6 includes compass icon 5010-1).

[0182] In some embodiments, the initial group of open application icons includes an audio application icon if the corresponding audio application is in use (626). For example, if a music player application is playing music, the initial group of open application icons always includes the corresponding music player application icon (e.g., iPod application icon 5002-38 in FIG. 5C). Displaying the audio application icon as part of the initial group of open application icons facilitates quick selection and display of the corresponding audio application. For example, it is not necessary to scroll through the open application icons in a predefined area to display the audio application icon.

[0183] In some embodiments, the open application icons are displayed (628) in the first predefined area in order, with the order determined according to usage history for the corresponding open applications. For example, assume that the multimedia store application iTunes is used first, followed by the financial application Stocks, then the music application iPod, the web browser application Safari, and finally the Maps application was the last application used before entering the application view selection mode. Then, in some embodiments, the initial group of open application icons will be iTunes, Stocks, iPod, and Safari. Also, the order of the open application icons will be Safari, iPod, Stocks, and iTunes (as shown in FIG. 5C ). In some embodiments, selecting an open application icon corresponding to one of the initial group of open applications does not change the order in which the initial group of open application icons is displayed. For example, selecting the iTunes application icon in FIG. 5C and re-entering the application view selection mode again does not change the order of the open application icons, i.e., Safari, iPod, Stocks, and iTunes. This has the advantage of providing a previously presented order of the open application icons (familiar to the user), thereby eliminating the need for the user to learn a new arrangement of the open application icons. This reduces the cognitive load on the user and creates a more efficient human-machine interface.

[0184] In some embodiments, the device displays a scrollable page, list, or array of icons (e.g., application launch icons and / or folder icons) in a predefined area of ​​the display (e.g., application icons 5002-21 through 5002-34 are displayed in the scrollable page of icons of FIG. 5A ). The device simultaneously displays pinned icons (e.g., frequently used or favorite application launch icons and / or folder icons selected by the user) in another predefined area of ​​the display (e.g., the dock area) (e.g., application icons 5002-35 through 5002-38 are pinned icons in the dock area). In some embodiments, the device also initiates an application view selection mode from this display in response to detecting an input (e.g., in response to detecting a double tap on the home button). In some embodiments, in response to detecting an input, the pinned icons in the dock area are replaced with an initial group of open application icons corresponding to at least some of the multiple simultaneously open applications. In other words, the dock area in the normal operating mode is replaced by a first predefined area containing the open application icons in the application view selection mode. In some embodiments, in response to detecting an input, the application icons on the scrollable page and dock area (e.g., application icons 5002-21 through 5002-38) slide up and at least a subset of the application icons and the predefined area containing the open application icons are simultaneously displayed in a manner similar to the simultaneous display of application view 5004-1 and predefined area 5006 in FIG. 5C.

[0185] In some embodiments, the device displays 630 a settings icon (e.g., settings icon 5102 of FIG. 5M) in a first predefined area during the application view selection mode. Exemplary settings icons include a rotation lock icon, an airplane mode icon, communication mode icons such as a Wi-Fi icon and / or a Bluetooth icon, and audio controls such as play / pause, fast forward, rewind, stop, volume control, and / or track control.

[0186] In some embodiments, if a settings icon for an open application is displayed in the first predefined area, the corresponding open application icon is not displayed in the first predefined area 632. For example, if a music player control is displayed in the first predefined area, the corresponding music player application icon is not displayed (e.g., in FIG. 5L, if music player control 5106 is displayed in application icon area 5006-1, the corresponding music player application icon (e.g., iPod) is not displayed in application icon area 5006-1).

[0187] In some embodiments, the device simultaneously displays (634) open application icons other than the audio control icon and the corresponding audio application icon in respective rows of the first predefined region (e.g., audio control icon 5106 of FIG. 5L and the other application icon in respective rows of application icon region 5006-1).

[0188] In some embodiments, at least a portion of the first application view is displayed in a second predefined area that is larger than the first predefined area and adjacent to the first predefined area (636). For example, in FIG. 5C , the area in which a portion of map application view 5004-1 is displayed is larger than and adjacent to application icon area 5006.

[0189] In some embodiments, the first set of open application icons includes an initial group of open application icons, and the first set of open application icons is displayed in a first orientation. The device detects a rotation of the multifunction device from the first orientation to a second orientation and displays a second set of open application icons in the second orientation (e.g., FIG. 5N). The initial group of open application icons and the second set of open application icons have different numbers of open application icons (e.g., in FIG. 5N, the second set of open application icons has six open application icons, while the initial group of applications in FIG. 5C has four open application icons). In some embodiments, displaying the second set of open application icons in the second orientation includes ceasing to display the first set of open application icons in the first orientation. In some embodiments, displaying the second set of open application icons in the second orientation includes reconfiguring the first set of open application icons in the first orientation.

[0190] The device detects (614 in FIG. 6A ) a gesture (e.g., a tap gesture) for each open application icon in the first predefined region (e.g., gesture 509 for application icon 5002-37 in FIG. 5C ). In response to detecting (616) the gesture for each open application icon, the device performs the following actions: The device displays (618) on the touch-sensitive display a respective application view (e.g., browser application view 5004-2 in FIG. 5D ) for a corresponding application of the simultaneously open applications. Each application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open applications (e.g., in FIG. 5D , browser application view 5004-2 is displayed without simultaneously displaying any other application views). The device ceases displaying (620) the open application icon in the first predefined region (e.g., application icon region 5006 and application icon 5002 in application icon region 5006 are not displayed in FIG. 5D ). The device exits 622 the application view selection mode (and enters normal operation mode for the respective application).

[0191] In some embodiments, while in the application view selection mode, the device performs the following operations (640 in FIG. 6C): The device detects a gesture (e.g., a tap gesture) over at least a portion of the first application view. In response to detecting the gesture over a portion of the first application view, the device displays the first application view on the touch-sensitive display without simultaneously displaying application views for any other applications of the simultaneously open applications, and exits the application view selection mode (and enters normal operation mode for the first application). For example, in FIG. 5C, if a gesture is detected on touch screen 112 at a location corresponding to maps application view 5004-1, the device displays maps application view 5004-1 without simultaneously displaying application icon region 5006, as shown in FIG. 5B, or displays application views for any other applications.

[0192] In some embodiments, in response to detecting the first input, the device slides (638) the first application view such that a portion of the first application view moves off the display and remains on the display (e.g., in FIG. 5C , a portion of the map application view 5004-1 moves off the display and still remains on the display).

[0193] In some embodiments, while in the application view selection mode, the device detects a scrolling gesture (e.g., a swipe gesture) in the first predefined region, and in response to detecting the scrolling gesture, scrolls through multiple application icons that are simultaneously open in the first predefined region according to the scrolling gesture (642) (e.g., FIGS. 5E and 5F).

[0194] In some embodiments, while displaying the initial group of open application icons in the application view selection mode, the device performs one of the following actions (644): If a first scrolling gesture in a first direction (e.g., a right-to-left swipe gesture) is detected in the first predefined region, the device scrolls to display other open application icons of the simultaneously open application icons in the first predefined region (e.g., FIGS. 5E and 5F). If a second scrolling gesture in a second direction opposite the first direction (e.g., a left-to-right swipe gesture) is detected in the first predefined region, the device scrolls to display the Settings icon in the first predefined region (e.g., FIGS. 5L and 5M). In some embodiments, if a second scrolling gesture in a second direction different from the first direction (e.g., a top-to-bottom swipe gesture, a bottom-to-top swipe gesture, or a diagonal swipe gesture) is detected in the first predefined region, the device scrolls to display the settings icon in the first predefined region.

[0195] In some embodiments, while in the application view selection mode, the device detects 646 a swipe-down gesture (e.g., gesture 523 in FIG. 5Z) starting from the top edge of the display. In response to detecting the swipe-down gesture, the device displays a user-selectable icon (e.g., done icon 5020 in FIG. 5AA), a list of new electronic notifications (e.g., recent emails 5018-1 and / or upcoming events 5018-2), and at least one of user-selected information (e.g., local weather information 5016, stock prices (not shown), news headlines (not shown), etc.).

[0196] In some embodiments, during the application view selection mode, the device performs the following operations: The device detects (648) a gesture at a location corresponding to an open application icon in the first predefined region (e.g., a press and hold gesture 513 on an open application icon 5002-38 in FIG. 5G ). In response to detecting a gesture at a location corresponding to an open application icon, the device displays an application termination icon (e.g., an “X” icon or a “-” icon 5012-1 on or adjacent to the open application icon) to close the corresponding application. The device detects a gesture at a location corresponding to the application termination icon (e.g., a tap gesture on the application termination icon 5012-1). In response to detecting a gesture at a location corresponding to the application termination icon, the device closes the corresponding application. In other words, the device performs a termination of the corresponding application so that the corresponding application is no longer an open application. Alternatively, a tap gesture on an open application icon, including an application exit icon (eg, gesture 515 on open application icon 5002-38 in FIG. 5H) has the same effect.

[0197] In some embodiments, in response to detecting a gesture at a location corresponding to an open application icon, the device shakes the open application icon at the location 650. In some embodiments, in response to detecting a gesture at a location corresponding to an open application icon, the device visually distinguishes the open application icon by dimming other open application icons (e.g., FIG. 5H).

[0198] As described above, method 600 is used to select a single application for display among multiple simultaneously open applications. Similar methods are also used to select a single view for display among multiple simultaneously open views in a single application (e.g., to select a web page for display among multiple simultaneously open web pages in a browser application).

[0199] It should be noted that the processing details described above with respect to method 600 (e.g., FIGS. 6A and 6B and 5A-5HH) are equally applicable to the methods described below. For example, methods 700, 800, 900, 1000, and 1100 may include one or more features of the various methods described above with reference to method 600. For the sake of brevity, these details will not be repeated herein.

[0200] 7 is a flow chart illustrating a method 700 for selecting one of simultaneously open applications according to some embodiments. Method 700 is performed on a multifunction device with a display and a touch-sensitive surface (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1). In some embodiments, the display is a touchscreen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 700 may be combined and / or the order of some operations may be changed.

[0201] As described below, method 700 provides an intuitive way to select one of simultaneously open applications. The method reduces the cognitive load on the user when selecting one of simultaneously open applications, creating a more efficient human-machine interface. For battery-operated computing devices, allowing a user to select one of simultaneously open applications faster and more efficiently conserves power and extends the time between battery charges.

[0202] The device displays (702) a first application view on the touch-sensitive display corresponding to a first application of the plurality of simultaneously open applications, the first application view being displayed without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications (e.g., map application view 5004-1 in FIG. 5B).

[0203] The device detects a first input (e.g., input 507 in FIG. 5B ) (704). In response to detecting the first input (706), the device initiates an application view selection mode (708) to select one of the simultaneously open applications for display in a corresponding application view, and displays images of the open applications corresponding to at least some of the simultaneously open applications in a predefined area (710) (e.g., in FIG. 5BB, image 5008 corresponding to at least some of the simultaneously open applications is displayed). The images of the open applications are displayed in a three-dimensional stack (e.g., the three-dimensional stack of image 5008 in FIG. 5BB) that extends backward on the display.

[0204] In some embodiments, the image of the open application includes an open application icon (see, e.g., a similar example of image 5008 including open application icon 5002 in FIG. 5S), or the device displays open application icons corresponding to at least some of multiple applications simultaneously open in a predefined region in the three-dimensional stack.

[0205] In some embodiments, the images of open applications in the three-dimensional stack are ordered 712 based at least in part on the recent use of the corresponding open applications (e.g., images of open applications corresponding to the most recently used open applications are displayed at the front of the stack, and images of open applications corresponding to the least recently used applications are displayed sequentially at the back of the stack).

[0206] The device detects (714) a gesture (e.g., 533 in FIG. 5BB) for each image of an open application in the three-dimensional stack. In response to detecting (716) a gesture for each image of an open application, the device performs the following actions: The device displays (718) on the touch-sensitive display a respective application view (e.g., mail application view 5004-4 in FIG. 5CC) for a corresponding application in the simultaneously open plurality of applications. Each application view is displayed without simultaneously displaying an application view for any other application in the simultaneously open plurality of applications (e.g., mail application view 5004-4 in FIG. 5CC). The device ceases displaying (720) the three-dimensional stack of open application icons and exits (722) the application view selection mode.

[0207] It should be noted that the processing details described above with respect to method 700 (e.g., FIGS. 7 and 5A-5HH) are equally applicable to the methods described below. For example, methods 800, 900, 1000, and 1100 may include one or more features of the various methods described above with reference to method 700. For the sake of brevity, these details will not be repeated herein.

[0208] 8A-8C are flow charts illustrating a method 800 for selecting one of simultaneously open applications according to some embodiments. Method 800 is performed on a multifunction device with a display and a touch-sensitive surface (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1). In some embodiments, the display is a touchscreen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 800 may be combined and / or the order of some operations may be changed.

[0209] As described below, method 800 provides an intuitive way to select one of simultaneously open applications. The method reduces the cognitive load on the user when selecting one of simultaneously open applications, creating a more efficient human-machine interface. For battery-operated computing devices, allowing a user to select one of simultaneously open applications faster and more efficiently conserves power and extends the time between battery charges.

[0210] The device displays (802) a first application view at a first size on the touch-sensitive display (e.g., the first size of the application view occupies all or nearly all (e.g., at least 80% or 90%) of the touch-sensitive display (e.g., map application view 5004-1 in FIG. 5B occupies at least 80% of touch screen 112). The first application view corresponds to a first application of the multiple simultaneously open applications (804), and the first application view is displayed without simultaneously displaying application views for any other applications of the multiple simultaneously open applications at the first size (806).

[0211] The device detects (808) a first input (e.g., input 507 in FIG. 5B ). In response to detecting (810) the first input, the device initiates (812) an application view selection mode that selects one of the simultaneously open applications for display in a corresponding application view and displays (814) images of the open applications in a predefined area (e.g., images of open applications 5008 in FIG. 5O ). Typically, the images of the open applications are user selectable and, when selected (e.g., by a gesture), initiate a particular operation associated with them (e.g., displaying a corresponding application view).

[0212] In some embodiments, the images of open applications in the predefined region are displayed in a single scrollable row or column (826 in FIG. 8B) (e.g., the images of open applications 5008 in FIG. 5O). In some embodiments, the images of open applications in the predefined region are displayed in a grid (828) (e.g., the images of open applications 5008 in a grid in FIG. 5R). The grid includes at least two rows of images of open applications.

[0213] In some embodiments, the device simultaneously displays 830 the predefined region and a search icon (e.g., search icon 5104 in FIG. 5W ). In some embodiments, the device detects 832 a gesture (e.g., 521 in FIG. 5W ) at a location corresponding to the search icon, and in response to detecting the gesture at a location corresponding to the search icon, displays a search input user interface (e.g., the user interface of FIG. 5X including keyboard 5014), receives one or more search terms in the search input user interface, performs a search using the one or more search terms, and displays the results of the search.

[0214] Each image (e.g., a live thumbnail) is displayed 834 at a second size smaller than the first size. For example, each image 5008 in Figure 5R is smaller than the map application view 5004-1 in Figure 5B. In some embodiments, the image is updated to display a reduced-size image of the corresponding application (or the current view in the corresponding application).

[0215] The images and corresponding open application icons correspond to at least some of the simultaneously open applications (844). For example, in FIG. 5R, image 5008-10 and application icon 5002-36 correspond to an email application. Thus, in some embodiments, removing image 5008-10 and application icon 5002-36 closes the corresponding email application on device 100.

[0216] In some embodiments, a grid of miniature images of open applications and / or open application icons is displayed in a predefined area within the search user interface (e.g., as a single-column array or array containing at least two rows) (e.g., application icon 5002 in FIG. 5W).

[0217] The device detects a gesture over each image of an open application in the predefined region (e.g., a gesture over image 5008-10, not shown) (816 in FIG. 8A). In response to detecting the gesture over each image (818), the device performs the following actions: The device displays (820) on the touch-sensitive display a respective application view at a first size for a corresponding application in the plurality of simultaneously open applications. The application view is displayed without simultaneously displaying application views for any other applications in the plurality of simultaneously open applications at the first size (e.g., mail application view 5004-4 in FIG. 5B). The device ceases displaying (822) the images and corresponding open application icons in the predefined region and exits (824) the application view selection mode.

[0218] In some embodiments, displaying images of open applications in the predefined area includes simultaneously displaying corresponding open application icons with each image (836 in FIG. 8C ). (For example, in FIG. 5S , application icons 5002-36, 5002-37, and 5002-38 are simultaneously displayed with images 5008-10, 5008-11, and 5008-12.) The images and corresponding open application icons correspond to at least some of multiple simultaneously open applications. In response to detecting a gesture for each image, the device ceases displaying the images and corresponding open application icons in the predefined area. Simultaneous display of images and application icons provides several advantages. In particular, a user can easily identify the application to which each miniature image corresponds. Without the simultaneous display of application icons, it is difficult to distinguish multiple images from a similar background. Therefore, simultaneous display of application icons with images reduces the cognitive load on the user and creates a more efficient human-machine interface.

[0219] In some embodiments, each open application icon in the predefined region is displayed adjacent to an image of the corresponding open application (838) (not shown). In some embodiments, each open application icon in the predefined region is displayed at least partially overlapping an image of the corresponding open application (840) (e.g., application icon 5002 in FIG. 5R). In some embodiments, each open application icon in the predefined region is displayed entirely overlapping an image of the corresponding open application (842) (not shown).

[0220] It should be noted that the processing details described above with respect to method 800 (e.g., FIGS. 8A-8C and 5A-5HH) are equally applicable to the methods described below. For example, methods 900, 1000, and 1100 may include one or more features of the various methods described above with reference to method 800. For the sake of brevity, these details will not be repeated herein.

[0221] 9 is a flow chart illustrating a method 900 for selecting one of simultaneously open applications according to some embodiments. Method 900 is performed on a multifunction device with a display and a touch-sensitive surface (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1). In some embodiments, the display is a touchscreen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 900 may be combined and / or the order of some operations may be changed.

[0222] As described below, method 900 provides an intuitive way to select one of simultaneously open applications. The method reduces the cognitive load on the user when selecting one of simultaneously open applications, creating a more efficient human-machine interface. For battery-operated computing devices, allowing a user to select one of simultaneously open applications faster and more efficiently conserves power and extends the time between battery charges.

[0223] The device displays (902) a first application view on the touch-sensitive display at a first size (e.g., the first size of the application view occupies more than 50% of the touch-sensitive display). The first application view corresponds to a first application of a plurality of simultaneously open applications (904). The first application view is displayed (906) without simultaneously displaying application views for any other applications of the plurality of simultaneously open applications at the first size. For example, in FIG. 5B , map application view 5004-1 is displayed without simultaneously displaying application views for any other applications.

[0224] The device simultaneously displays images of the open applications in the predefined area (908) (e.g., FIG. 5O). Each image is displayed at a second size (910) (e.g., a live thumbnail) that is smaller than the first size. The images correspond to at least some of the simultaneously open applications (912). In some embodiments, simultaneously displaying the images of the open applications in the predefined area includes simultaneously displaying a corresponding open application icon with each image (914). The image and corresponding open application icon correspond to at least some of the simultaneously open applications.

[0225] The device detects (916) a gesture for each image of an open application in the predefined region. In response to detecting the gesture for each image, the device displays (918) on the touch-sensitive display a respective application view at a first size for the corresponding application of the simultaneously open applications (e.g., as shown in FIG. 5CC, a gesture for image 5008-10 of an email application initiates the display of mail application view 5004-4). The respective application view is displayed without simultaneously displaying application views for any other applications of the simultaneously open applications (e.g., mail application view 5004-4 of 5CC) at a first size.

[0226] It should be noted that the processing details described above with respect to method 900 (e.g., FIGS. 9 and 5A-5HH) are equally applicable to the methods described below. For example, methods 1000 and 1100 may include one or more features of the various methods described above with reference to method 900. For the sake of brevity, these details will not be repeated herein.

[0227] 10 is a flow chart illustrating a method 1000 for selecting one of simultaneously open applications according to some embodiments. Method 1000 is performed on a multifunction device with a display and a touch-sensitive surface (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1). In some embodiments, the display is a touchscreen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 1000 may be combined and / or the order of some operations may be changed.

[0228] As described below, method 1000 provides an intuitive way to select one of simultaneously open applications. The method reduces the cognitive load on the user when selecting one of simultaneously open applications, creating a more efficient human-machine interface. For battery-operated computing devices, allowing a user to select one of simultaneously open applications faster and more efficiently conserves power and extends the time between battery charges.

[0229] During an application view selection mode (1002) in which one of multiple simultaneously open applications is selected for display in the corresponding application view, the device performs the following operations:

[0230] The device displays (1004) an initial group of open application icons (e.g., application icons 5002 in FIG. 5C) corresponding to at least some of the multiple applications that are simultaneously open in the predefined area.

[0231] The device detects a gesture in the predefined region (1006). In response to detecting a gesture in the predefined region (1008), the device performs one of the following actions:

[0232] If the gesture is a first scrolling gesture in a first direction (e.g., a right-to-left swipe gesture), the device scrolls (1010) to display other open application icons of multiple simultaneously open application icons (e.g., the application icons of Figures 5E and 5F) in the predefined area.

[0233] If the gesture is a second scrolling gesture in a second direction opposite to the first direction (e.g., a left-to-right swipe gesture), the device scrolls 1012 to display the settings icon (e.g., settings icon 5102 in FIGS. 5L-5M) in the predefined area. In some embodiments, if the gesture is a second scrolling gesture in a second direction different from the first direction (e.g., a top-to-bottom swipe gesture), the device scrolls 1012 to display the settings icon in the first predefined area.

[0234] If the gesture is a first gesture (e.g., a tap gesture) for each open application icon (1014), the device displays an application view for the corresponding application of the multiple simultaneously open applications on the touch-sensitive display (1016), ceases displaying the open application icons in the predefined area (1020), and exits the application view selection mode (1022) (and enters normal operation mode for the respective application). In some embodiments, the application view is displayed (1018) without simultaneously displaying application views for any other applications of the multiple simultaneously open applications.

[0235] In some embodiments, if the gesture is a first gesture (e.g., a tap gesture) for the respective setting icon, the device changes the corresponding setting, stops displaying open application icons in the predefined area, and exits the application view selection mode (and enters the normal operation mode for the respective application).

[0236] In some embodiments, in response to detecting a gesture in the predefined region, if the gesture is a second gesture different from the first gesture for each open application icon (e.g., tap and hold gesture 513 of FIG. 5G ), the device displays (1024) an application termination icon (e.g., an “X” icon or a “−” icon 5002-38 on or adjacent to the open application icon) to close the corresponding application.

[0237] It should be noted that the processing details described above with respect to method 1000 (e.g., FIGS. 10 and 5A-5HH) are equally applicable to the methods described below. For example, method 1100 may include one or more features of the various methods described above with reference to method 1000. For the sake of brevity, these details will not be repeated herein.

[0238] 11A and 11B are flow charts illustrating a method 1100 for selecting one of simultaneously open applications according to some embodiments. Method 1100 is performed on a multifunction device with a display and a touch-sensitive surface (e.g., device 300 of FIG. 3 or portable multifunction device 100 of FIG. 1). In some embodiments, the display is a touchscreen display and the touch-sensitive surface is on the display. In some embodiments, the display is separate from the touch-sensitive surface. Some operations of method 1100 may be combined and / or the order of some operations may be changed.

[0239] As described below, method 1100 provides an intuitive way to select one of simultaneously open applications. The method reduces the cognitive load on the user when selecting one of simultaneously open applications, creating a more efficient human-machine interface. For battery-operated computing devices, allowing a user to select one of simultaneously open applications faster and more efficiently conserves power and extends the time between battery charges.

[0240] The device displays 1102 a first application view of a first size in a first application (e.g., in FIG. 5CC, email application view 5004-4 of an email application), the first application view including a user-selectable object (e.g., link 5020-1) associated with a second application (e.g., a web browser application) different from the first application.

[0241] The device detects 1104 a first gesture (e.g., gesture 525 in FIG. 5CC) at a location corresponding to a user-selectable object. In response to detecting 1106 the first gesture, the device ceases displaying 1108 the first application view and displays 1110 a second application view (e.g., browser application view 5004-5 in FIG. 5DD) in a second application. In some embodiments, the second application view replaces the first application view (e.g., browser application view 5004-5 replaces mail application view 5004-4 in FIGS. 5CC and 5DD).

[0242] While in the second application, the device detects (1112) an input (e.g., input 527 of FIG. 5DD). In response to detecting (1114) the input, the device performs the following actions: The device initiates (1116) an application view selection mode to select one of multiple simultaneously open applications for display in a corresponding application view. The device displays (1118) images of the open applications in a first predefined area (e.g., images 5008-12 and 5008-10 of FIG. 5EE). The images of the open applications correspond to at least some of the multiple simultaneously open applications. In some embodiments, the images are displayed as a scrollable strip of images (e.g., image 5008 is scrollable as shown in FIGS. 5EE and 5FF). Each image is displayed at a second size smaller than the first size (e.g., a live thumbnail). The images include an image of the first application view and an image of a view of the second application (e.g., image 5008-12 of the browser application view and image 5008-10 of the mail application view). The device displays (1120) a portion of a view (e.g., a portion of the "home screen" 5001) that includes an application icon for launching an application (e.g., a home screen or springboard that includes the application icon) in a second predefined area that is different from the first predefined area.

[0243] In some embodiments, a device displays an image of open applications that are logically connected. For example, assume that a web browser application is opened (e.g., FIG. 5DD) in an email application (e.g., FIG. 5CC). Further assume that an e-book application is opened (not shown) in the web browser application. The device then displays an image of a subset of the email application, the web browser application, and the e-book application, regardless of any other applications that may be open at the same time.

[0244] While in the application view selection mode, the device detects a second gesture (e.g., a tap gesture) 1122. In response to detecting the second gesture 1124, the device performs one of the following actions:

[0245] If a second gesture (e.g., gesture 535 of FIG. 5EE) is in a location corresponding to the image of the first application view (1126), the device displays (1128) the first application view (e.g., map application view 5004-4 of FIG. 5CC) at a first size, ceases displaying the image in the first predefined area (1130), and exits (1132) the application view selection mode (and enters normal operation mode for the respective application).

[0246] If a second gesture (e.g., gesture 533 in FIG. 5FF) is in a location corresponding to a second predefined area (1134), the device displays (1136) a view (e.g., home screen 5001 as shown in FIG. 5HH) that includes an application icon for launching the application (i.e., displays the entire view that includes the application launch item, rather than just displaying a portion of this view), ceases displaying the image in the first predefined area (1138), and exits (1140) the application view selection mode (and begins a normal operating mode for launching an application from the view that includes the application icon).

[0247] In some embodiments, if the second gesture is at a location corresponding to the image of the respective application in the first predefined region 1142, the device displays 1144 a respective application view for the corresponding application of the simultaneously open applications on the touch-sensitive display, ceases 1148 displaying the image in the first predefined region, and exits 1150 the application view selection mode (and initiates normal operation mode for the respective application). For example, in response to detecting gesture 531 at a location corresponding to image 5008-6 of the maps application, the maps application view is displayed on the display (e.g., FIG. 5GG).

[0248] In some embodiments, each application view is displayed (1146) without simultaneously displaying application views for any other applications of the simultaneously open applications (eg, FIG. 5GG).

[0249] The operations in the above-described information processing methods are realized by executing one or more functional modules in an information processing device, such as a general-purpose processor or an application-specific chip, etc. These modules, combinations of these modules and / or their combination with general-purpose hardware (e.g., as described above with respect to Figures 1A, 1B and 3) are all included in the scope of protection of the present invention.

[0250] 6A-6C, 7, 8A-8C, 9, 10, and 11A-11B are implemented by the components shown in FIGS. 1A-1C. For example, detect operation 604, enter application view selection mode operation 608, and end application view selection mode operation 622 are implemented by event sorter 170, event recognizer 180, and event handler 190. Event monitor 171 of event sorter 170 detects contacts on touch-sensitive display 112, and event dispatcher module 174 delivers the event information to application 136-1. Each event recognizer 180 of application 136-1 compares the event information to each event definition 186 to determine whether a first contact (or device rotation) at a first location on the touch-sensitive surface corresponds to a predefined event or sub-event, such as selecting an object in a user interface or rotating the device from one orientation to another. When a predefined event or sub-event is detected, event recognizer 180 invokes an event handler 190 associated with the detection of the event or sub-event. Event handler 190 utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. In some embodiments, event handler 190 accesses each GUI updater 178 to update what is being displayed by the application. Similarly, it will be apparent to those skilled in the art how other processes may be implemented based on the components shown in FIGS. 1A-1C.

[0251] For purposes of explanation, the foregoing description has been presented with reference to specific embodiments. However, the above illustrative discussion is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application. This will enable others skilled in the art to best utilize the invention and its various modifications as suited to the particular use contemplated.

Claims

1. 1. A method comprising: A computer system having a display device and one or more input devices, displaying, via the display device, a first application view corresponding to a first application in a plurality of simultaneously open applications, the first application view being displayed without simultaneously displaying application views for any other applications in the plurality of simultaneously open applications; Detecting a first input via the one or more input devices while displaying the first application view; In response to detecting the first input, displaying via the display device representations of a plurality of recently used applications corresponding to at least some of the plurality of simultaneously open applications and an application launch user interface behind the representations; detecting a second input via the one or more input devices while displaying the representation of the plurality of recently used applications; In response to detecting the second input, While continuing to display the application launch user interface behind the plurality of representations, in accordance with determining that the second input is a movement gesture toward a position corresponding to a first representation of the plurality of representations, displaying via the display device at least a portion of a representation of a recently used application that was not displayed prior to detecting the second input; displaying, via the display device, a corresponding application view for each application in the plurality of simultaneously open applications in accordance with determining that the second input is a selection gesture toward a location in the plurality of representations corresponding to the first representation, wherein the corresponding application view is displayed without simultaneously displaying an application view for any other application in the plurality of simultaneously open applications.

2. 10. The method of claim 1, The method further includes ceasing to display the first application view in response to detecting the first input.

3. 2. The method of claim 1, wherein the second input is the movement gesture, the method comprising: In response to detecting the second input, the method further includes ceasing to display at least a portion of a representation of a recently used application that was displayed prior to detecting the second input.

4. 2. The method of claim 1, wherein the second input is the movement gesture, the method comprising: The method further includes, in response to detecting the second input, scrolling the plurality of representations in a direction associated with the movement gesture.

5. 2. The method of claim 1, wherein the second input is the movement gesture, the method comprising: The method further includes, in response to detecting the second input, displaying a number of representations that is greater than the number of representations that were displayed before detecting the second input.

6. 2. The method of claim 1, wherein the second input is the selection gesture, the method comprising: The method further comprising ceasing display of the plurality of representations in response to detecting the second input.

7. 2. The method of claim 1, wherein the second input is the selection gesture, the method comprising: The method further includes ceasing to display an application launch user interface behind the plurality of representations in response to detecting the second input.

8. 10. The method of claim 1, The method further includes, in accordance with determining that the second input is a second selection gesture directed toward a location outside the plurality of representations, displaying an application launch user interface.

9. 9. The method of claim 8, wherein the second input is the second selection gesture, the method comprising: The method further comprising ceasing displaying the plurality of representations in response to detecting the second selection gesture.

10. 1. A computer program comprising instructions, when executed by a computer system having a display device and one or more input devices, causing the computer system to: displaying, via the display device, a first application view corresponding to a first application in a plurality of simultaneously open applications, the first application view being displayed without simultaneously displaying application views for any other applications in the plurality of simultaneously open applications; Detecting a first input via the one or more input devices while displaying the first application view; In response to detecting the first input, displaying via the display device representations of a plurality of recently used applications corresponding to at least some of the plurality of simultaneously open applications and an application launch user interface behind the representations; detecting a second input via the one or more input devices while displaying the representation of the plurality of recently used applications; In response to detecting the second input, While continuing to display the application launch user interface behind the plurality of representations, in accordance with determining that the second input is a movement gesture toward a position corresponding to a first representation of the plurality of representations, displaying via the display device at least a portion of a representation of a recently used application that was not displayed prior to detecting the second input; and displaying, via the display device, a corresponding application view for each application in the plurality of simultaneously open applications in accordance with determining that the second input is a selection gesture toward a location in the plurality of representations corresponding to the first representation, wherein the corresponding application view is displayed without simultaneously displaying an application view for any other application in the plurality of simultaneously open applications.

11. A display device; one or more input devices; one or more processors; Memory and and one or more programs, the one or more programs being stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising: displaying, via the display device, a first application view corresponding to a first application in a plurality of simultaneously open applications, the first application view being displayed without simultaneously displaying application views for any other applications in the plurality of simultaneously open applications; Detecting a first input via the one or more input devices while displaying the first application view; In response to detecting the first input, displaying via the display device representations of a plurality of recently used applications corresponding to at least some of the plurality of simultaneously open applications and an application launch user interface behind the representations; detecting a second input via the one or more input devices while displaying the representation of the plurality of recently used applications; In response to detecting the second input, While continuing to display the application launch user interface behind the plurality of representations, in accordance with determining that the second input is a movement gesture toward a position corresponding to a first representation of the plurality of representations, displaying via the display device at least a portion of a representation of a recently used application that was not displayed prior to detecting the second input; and displaying, via the display device, a corresponding application view for each application in the plurality of simultaneously open applications in accordance with determining that the second input is a selection gesture toward a location in the plurality of representations corresponding to the first representation, wherein the corresponding application view is displayed without simultaneously displaying an application view for any other application in the plurality of simultaneously open applications.

Citation Information

Patent Citations

  • Image presentation and control

    US20020130896A1

  • Extensible, filtered lists for mobile device user interface

    US20070240079A1

  • Control device and control method thereof

    US20090313578A1

  • System and method for building and delivering mobile widgets

    US8595186B1

  • Entertainment terminal with improved user interface

    WO2010028480A1