DISPLAYING A COLLECTION OF INTERACTIVE ELEMENTS THAT TRIGGER ACTIONS DIRECTED TO AN ITEM

- Google

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for displaying of collections of interactive elements that trigger actions directed to a particular contact, message, media file, or other item. In one aspect, a method is performed by a system comprising one or more data processing devices and a touchscreen display. The method includes displaying several identifiers, each identifier comprising one or more graphical or textual elements that identify an item, each identifier associated with a respective interactive element, receiving user interaction with a first of the interactive elements that is associated with a first of the identifiers, in response to the user interaction, displaying a collection of action widgets on the touchscreen display, the action widgets comprising iconic graphical indicia that each represent an action triggered by user interaction therewith, the iconic graphical indicia displayed adjacent one another in a strip-shaped area that is wider than it is high, the strip-shaped area being displaced vertically on the touchscreen display from the first identifier so that the first identifier is visible on the touchscreen notwithstanding the display of the collection of action widgets, receiving user interaction with a first of the action widgets that is in the collection displayed on the touchscreen display, and performing the action represented by the first of the action widgets on the item identified by the first identifier.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the priority of U.S. Provisional Application Ser. No. 61/255,847, filed on Oct. 28, 2009, the contents of which are incorporated herein by reference.

BACKGROUND

This specification relates to the display of collections of interactive elements that trigger actions directed to a particular contact, message, media file (e.g., image, music or video file), or other item.

Touchscreens are graphical displays that can act as both an input and an output. For example, visual elements displayed in a touchscreen can serve a double-duty, acting both as interactive elements that receive user input and as visual outputs that convey information to a user. As a result, data processing devices that use touchscreens can be made relatively small. Indeed, touchscreens are so effective that many modern data processing devices supplement touchscreens with only a small number of other—generally mechanical—input mechanisms. Touchscreens are thus favored in data processing devices where size and portability are important design considerations, such as smartphones and personal digital assistants (PDA's).

SUMMARY

This specification describes technologies relating to the display—on touchscreen displays—of collections of interactive elements that trigger the performance of data processing and other actions. The interactive elements in such collections are directed to the performance of data-processing or other actions that are directed to a particular contact, message, media file (e.g., image, music or video file), or other item. As a result of the grouping and display of such a collection, a user can conveniently and intuitively navigate through a wide range of actions directed to a particular item, even when the touchscreen display on which the collection of interactive elements is displayed is relatively small sized.

A first aspect of these technologies is a method performed by a system comprising one or more data processing devices and a touchscreen display. The method includes displaying several identifiers, each identifier comprising one or more graphical or textual elements that identify an item, each identifier associated with a respective interactive element, receiving user interaction with a first of the interactive elements that is associated with a first of the identifiers, in response to the user interaction, displaying a collection of action widgets on the touchscreen display, the action widgets comprising iconic graphical indicia that each represent an action triggered by user interaction therewith, the iconic graphical indicia displayed adjacent one another in a strip-shaped area that is wider than it is high, the strip-shaped area being displaced vertically on the touchscreen display from the first identifier so that the first identifier is visible on the touchscreen notwithstanding the display of the collection of action widgets, receiving user interaction with a first of the action widgets that is in the collection displayed on the touchscreen display, and performing the action represented by the first of the action widgets on the item identified by the first identifier.

This first aspect and the second and third aspects can include one or more of the following features. Displaying the collection of action widgets on the touchscreen display can include apparently displacing one or more of identifiers away from the first identifier to accommodate the strip-shaped area between the displaced one or more of identifiers and the first identifier. The method can include displaying a disambiguation interactive element on the touchscreen display on a side of the strip-shaped area opposite the first identifier and receiving user interaction with the disambiguation interactive element, the user interaction disambiguating the action represented by the first of the action widgets. Performing the action represented by the first of the action widgets can include performing the action in accordance with the disambiguation provided by the user interaction with the disambiguation interactive element. Displaying the collection of action widgets can include displaying a pointed indicium that is directed toward an area in which the first identifier is found. A border can surround the collection of action widgets. The border can demarcate the collection of action widgets from other portions of the touchscreen display. The pointed indicium can extend outwardly from a relatively straighter portion of the border toward the area in which the first identifier is found. Each collection of information can be displayed in a strip-shaped area that is wider than it is high. Each strip-shaped area can occupy a majority of the width of the touchscreen display. The identifiers can be aligned horizontally in the strip-shaped areas. The method can also include receiving user interaction dragging across the strip-shaped area and in response to the user interaction, displaying a second collection of action widgets on the touchscreen display. The second collection of action widgets can include at least one action widget that is not found in the action widget collection and exclude at least one action widget that is found in the action widget collection. The first identifier can identify a first message. The action widgets in the collection can include a reply widget that, in response to user interaction, triggers a display of a presentation for authoring a reply to the first message and a repost widget that, in response to user interaction, triggers reposting of the first message to a social network. The first identifier can identify a first contact. The action widgets in the collection can include a telephone contact widget that, in response to user interaction, triggers a telephone call to the first contact and a message widget that, in response to user interaction, triggers a display of a presentation for authoring a message addressed to the first contact. The first identifier can identify a first media file. The action widgets in the collection can include a telephone contact widget that, in response to user interaction, triggers a telephone call to the first contact and a message widget that, in response to user interaction, triggers a display of a presentation for authoring a message addressed to the first contact.

A second aspect of these technologies is a device that includes a computer storage medium encoded with a computer program. The program includes instructions that when executed by a system comprising one or more data processing devices and a touchscreen display, cause the one or more data processing devices to perform operations. The operations include displaying an interactive element in a presentation on the touchscreen display, receiving user interaction with the interactive element, and displaying, in response to the user interaction, a collection of action widgets apparently overlaid on the presentation. The action widgets comprising iconic graphical indicia that each represent an action triggered by user interaction therewith. The iconic graphical indicia are displayed adjacent one another in an area that is wider than it is high and that is associated with a visible indicium that indicates to what the action triggered by user interaction with the widgets in the collection are directed. The area is displaced on the touchscreen display from the interactive element so that the interactive element is visible in the presentation notwithstanding the display of the collection of widgets.

This second aspect and the first and third aspects can include one or more of the following features. The operations can also include receiving user interaction with a first of the action widgets that is in the collection displayed on the touchscreen display and performing the action represented by the first of the action widgets in accordance with the visible indicium. The method can include displaying a disambiguation interactive element on the touchscreen display and receiving user interaction with the disambiguation interactive element, the user interaction disambiguating the action represented by the first of the action widgets. Performing the action represented by the first of the action widgets can include performing the action in accordance with the disambiguation provided by the user interaction with the disambiguation interactive element. The visible indicium can indicate that the action triggered by user interaction with the action widgets in the collection is directed to a message. The action widgets in the collection can include a reply widget that, in response to user interaction, triggers a display of a presentation for authoring a reply to the first message and a repost widget that, in response to user interaction, triggers reposting of the first message to a social network. The visible indicium can indicate that the action triggered by user interaction with the action widgets in the collection is directed to a hyperlink that refers, in a reference, to an electronic document or to a portion of an electronic document. The action widgets in the collection can include an open widget that, in response to user interaction, triggers opening of the referenced electronic document or the referenced portion of the electronic document and a share widget that, in response to user interaction, triggers transmission of a message or display of a presentation for authoring a message that includes the reference. The area in which the iconic graphical indicia are displayed can be demarcated from other portions of the presentation by a border that surrounds the collection of widgets. The visible indicium can include a pointed indicium that extends outwardly from a relatively straighter portion of the border. The interactive element can be encompassed by the border.

A third aspect of these technologies is a handheld data processing system that includes a touchscreen display and a collection of one or more data processing devices that perform operations in accordance with one or more collections of machine-readable instructions. The operations include instructing the touchscreen display to display, in response to user interaction with a first interactive element displayed on the touchscreen display in association with an identifier of a contact, a first collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified contact and display, in response to user interaction with a second interactive element displayed on the touchscreen display in association with an identifier of a message, a second collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified message. The respective of the first and the second interactive elements are visible on the touchscreen display notwithstanding the display of the respective of the first or the second collection of action widgets.

This third aspect and the first and second aspects can include one or more of the following features. The operations can include instructing the touchscreen display to display, in response to user interaction with a third interactive element displayed on the touchscreen display in association with an identifier of a media file, a third collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified media file. Each of the first interactive element and the second interactive element can be displayed on the touchscreen display in conjunction with a collection of other interactive elements. Each of the other interactive elements can be associated with an identifier of another contact or another message. The identifiers in a presentation can be displayed in respective strip-shaped areas that include information characterizing contacts, media files, or messages. The identifiers can be aligned horizontally in the strip-shaped areas. Each of the collections of action widgets can be associated with a pointed indicium that is directed to indicate the respective contact or message to which the actions are directed. The operations can include instructing the touchscreen display to display a border surrounding the first and the second action widget collections, the border demarcating the first and the second action widget collections from other portions of the touchscreen display and the pointed indicium extending outwardly from a relatively straighter portion of the borders toward the area in which the identifier of the respective contact or message is found. The operations can include instructing the touchscreen display to display the iconic graphical indicia of the first and the second action widget collections adjacent one another in a strip-shaped area that is wider than it is high. The strip-shaped area can be displaced vertically on the touchscreen display from the respective of the first and the second interactive elements. The operations can also include receiving user interaction dragging across the strip-shaped area that includes the iconic graphical indicia and in response to the dragging user interaction, instructing the touchscreen display to display a second collection of action widgets in the strip-shaped area, the second collection of action widgets including at least one action widget that is not found in the first or the second action widget collection and excluding at least one action widget that is found in the first or the second action widget collection.

The details of one or more implementations described in this specification are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic representation of a system of electronic devices that can exchange information for the performance of data processing and other activities.

FIGS. 2-14, 19, and 20 are schematic representations of the display of presentations on a portion of a touchscreen of an electronic device.

FIG. 15 is a schematic representation of a collection of electronic components that can be housed in the electronic device that displays the presentations of FIGS. 2-14.

FIG. 16 is a schematic representation of a collection of information identifying interactive elements that are to be displayed in response to user interaction with different categories of interactive elements.

FIGS. 17 and 18 are schematic representations of implementations of collections of activities in an asymmetric social network.

Like reference numbers and designations in the various drawings indicate like elements.

DETAILED DESCRIPTION

FIG. 1 is a schematic representation of a system 100 of electronic devices that can exchange information for the performance of data processing and other activities. System 100 includes a device 105 that includes a touchscreen 115 with which a user can interact. Device 105 can be, e.g., a computer, a tablet computer, a telephone, a music player, a PDA, a gaming device, or the like. In some implementations, device 105 can be mobile, portable device, as shown.

In addition to touchscreen 115, device 100 include a housing 110 and a collection of off-screen input elements 120. Housing 110 supports touchscreen 115 and off-screen input elements 120. Housing 110 also houses a collection of electronic components, as described further below.

Touchscreen 115 is a graphical display that can act as both an input and an output. For example, touchscreen 115 can sense the position and movement of a user's finger or other elements. The sensed information can be translated into commands that trigger the performance of data processing and other activities by the electronic components housed in housing 110, by other electronic devices in system 100, or by both. Touchscreen 115 can be, e.g., a liquid crystal display (LCD) device, a light emitting diode (LED) device, an organic LED (OLED) device, an E-INK device, or a flexible touch screen device. Input elements 120 are input devices that are “off” touchscreen 115. Input elements 120 are not part of touchscreen 115 and can receive input from a user that is distinct from the input received by touchscreen 115. Input elements 120 can include one or more key, pad, trackball, or other component that receives mechanical, audio, or other input from a user.

Among the electronic components housed in housing 110 are one or more wireless or wired data communication components such as transmitters, receivers, and controllers of those components. Device 105 can thus exchange information with other electronic devices in system 100, e.g., in response to user interaction with touchscreen 115.

In the illustrated implementation of system 100, device 105 includes two wireless data communication components, namely, a cellular phone transceiver and a WiFi transceiver. The WiFi transceiver is able to exchange messages 125 with a WiFi access point 125 and messages 135 with a peer electronic device 140 that also includes a WiFi transceiver. Peer electronic device 140 is associated with another individual user. The cellular phone transceiver is able to exchange messages 145 with a phone base station 155.

Phone base station 155 and WiFi access point 130 are connected for data communication with one or more data communication networks 160 via data links 162, 164 and can exchange information with one or more servers 165, 170, 175, 180.

In some implementations, peer electronic device 140 may also be able to exchange messages with WiFi access point 130 (or another WiFi access point) for data communication with data communication networks 140, device 105, and one or more of servers 165, 170, 175, 180. One or more additional devices 183, which are associated with one or more other individual users, may also be able to exchange messages 185 with phone base station 155 (or another base station) for data communication with data communication networks 140, device 105, and access to one or more of servers 165, 170, 175, 180. One or more personal computing devices 190, which are associated with one or more other individual users, may also be connected for data communication with one or more data communication networks 140, device 105, and access to one or more of servers 165, 170, 175, 180 via a data link 195

System 100 supports both direct and server-mediated interaction by the users with whom devices 105, 140, 182, 190 are associated. Such interaction includes the exchange of messages, photos, or other media directly to one another or indirectly, i.e., mediated by one or more of servers 165, 170, 175, 180.

The illustrated implementation of system 100 includes four different examples of servers that can mediate such interaction, namely, an electronic mail server 165, a social network server 170, a text message server 175, and a photo server 180. Each of servers 165, 170, 175, 180 includes one or more data processing devices that are programmed to perform data processing activities in accordance with one or more sets of machine—readable instructions. For example, electronic mail server 165 is programmed to allow a user to access electronic mail from an electronic mail client. Social network server 170 is programmed to allow users to access a social network where messages, photos, and/or other media are exchanged.

The social network provided by social network server 170 can be a symmetric social network or an asymmetric social network. In a symmetric social network, related members necessarily share the same relationship with one another. Examples of such symmetric social networks include FACEBOOK, LINKEDIN, and MYSPACE, where two or more members establish bi-directionally equivalent “friend” or other relationships generally using an invitation/response protocol that effectively requires the consent of both members to the relationship. Such bi-directionally equivalent relationships provide the same social interaction possibilities to the related members.

In an asymmetric social network, a first member's relationship to a second member is not necessarily the same as the second member's relationship to the first member. Since the character of the social interaction between members in a member network can be defined in accordance with the nature of the relationship between those members, a first member in an asymmetric social network may interact with a second member in ways that differ from the social interaction provided for the second member to interact with the first member. An example of such an asymmetric social network is TWITTER, where a first member may be a follower of a second member without the second member necessarily being a follower of the first. Indeed, in many asymmetric social networks, a second member need not even know a first member's identity even though the first member has a relationship to the second member.

Text message server 175 is programmed to allow a user to exchange chat or other text messages with other users. Media server 180 is programmed to allow a user to access a collection of one or more media files (e.g., image, music or video files) posted to photo server 180 by other individuals. In some implementations, media server 180 may restrict a user to accessing media files posted by other individuals who have somehow approved the user's access.

FIG. 2 is a schematic representation of the display of a presentation 200 on a portion of touchscreen 115 of device 105. Presentation 200 includes a collection of identifiers 205, 210, 215, 220, 225 of a contact. A contact is one or more individuals or other entity. A contact can be associated with an electronic device that can exchange information with device 105, such as one or more of devices 140, 182, 190 in system 100 (FIG. 1). In the illustrated implementation, each identifier 205, 210, 215, 220, 225 is the name of a respective contact and hence textual. However, other identifiers such as graphical, iconic, or numeric identifier can also be used.

In some implementations, presentation 200 can be part of a display of a collection of other information on touchscreen 115 of device 105. For example, touchscreen 115 can display presentation 200 along with interactive icons that trigger the performance of data processing applications by device 105. In some implementations, the contacts identified by such a presentation 200 can be limited to “favorite” contacts, as discussed further below.

Identifiers 205, 210, 215, 220, 225 are each associated with a respective interactive widget 230, 235, 240, 245, 250 by positioning or arrangement on presentation 200. Each interactive widget 230, 235, 240, 245, 250 is an interactive element that, in response to user interaction, triggers the display of a collection of additional interactive elements. The additional interactive elements trigger the performance of additional data processing or other actions that are directed to the contact identified by the associated identifier 205, 210, 215, 220, 225, as described further below.

In the illustrated implementation, each identifier 205, 210, 215, 220, 225 is associated with a respective interactive widget 230, 235, 240, 245, 250 by virtue of common positioning within an area 255 that is dedicated to the display of information characterizing a single contact. Interactive widgets 230, 235, 240, 245, 250 are positioned laterally adjacent to respective of identifiers 205, 210, 215, 220, 225 (i.e., to the right in the illustrated implementation). In the illustrated implementation, areas 255 are demarcated from one another by borders 260. In other implementations, areas 255 can be demarcated using color, empty expanses, or other visual features. In other implementations, interactive widgets 230, 235, 240, 245, 250 can be positioned adjacent areas 255.

In the illustrated implementation, each area 255 also includes a graphical indicium 265 that characterizes the contact. Each graphical indicium 265 is an photograph, an icon, or other graphical representation of the contact identified by an associated identifier 205, 210, 215, 220, 225. Graphical indicia 265 can be stored in one or more memory devices of device 105, e.g., in conjunction with other contact information.

In some implementations, each area 255 can include additional information characterizing a contact, such as some or all of the contact's “contact information.” Such contact information can include, e.g., the contact's title, image, phone number, electronic mail or other address, employer, moniker in a social network, or the like. Such additional information can also be stored in one or more memory devices of device 105.

In the illustrated implementation of device 105 (i.e., a portable, handheld device), each area 255 occupies a majority of the width W of touchscreen 115. Further, areas 255 are aligned with one another and arranged one above the other to span a majority of the height H of touchscreen 115. Identifiers 205, 210, 215, 220, 225, graphical indicia 265, and widgets 230, 235, 240, 245, 250 in different areas 255 are aligned with one another. Such an arrangement lists information characterizing the contacts identified by 205, 210, 215, 220, 225 in a convenient format that is familiar to many individuals. Other layouts are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115 than in the illustrated implementation, then areas 255 can be arranged differently and/or span relatively smaller portions of touchscreen 115.

In some implementations, the display of additional identifiers and associated interactive widgets and concomitant removal one or more of identifiers 205, 210, 215, 220, 225 and widgets 230, 235, 240, 245, 250 can be triggered by user interaction with one or more of input elements 120 and/or presentation 200. For example, in some implementations, presentation 200 can trigger scrolling navigation through a collection of contacts and contact information in response to touchscreen 115 identifying upward or downward movement of a finger or other element across presentation 200. As another example, in some implementations, presentation 200 can include additional interactive widgets that trigger, in response to user interaction, scrolling navigation through a collection of contacts and contact information.

Presentation 200 can be displayed in accordance with one or more sets of machine-readable instructions that are performed by one or more data processing devices housed in housing 110 of device 105, as described further below. The instructions can cause device 105 to display presentation 200 at various points in a set of data processing activities. For example, the instructions can cause device 105 to display presentation 200 in response to user interaction with a widget that indicates that a user wishes to make a selection from a collection of contacts.

FIG. 3 is a schematic representation of the display of a presentation 300 on a portion of touchscreen 115 of device 105. Presentation 300 is displayed on touchscreen 115 in response to user interaction with interactive widget 235 that is associated with contact identifier 210. The user interaction with interactive widget 235 that triggers the display of presentation 300 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 200, presentation 300 also includes an action widget collection 305. Action widget collection 305 is a collection of interactive elements that, in response to user interaction, trigger data processing or other actions directed to the contact identified by the identifier which is associated with the interactive widget that triggers the display of the action widget collection. The user interaction that triggers the actions can be, e.g., a single or a double click or tap on a particular action widget in collection 305 or the “dragging and dropping” of the contact identified by the identifier which is associated with the interactive widget that triggers the display of the action widget collection 305 onto a particular action widget in collection 305.

In the illustrated implementation, action widget collection 305 includes a contact display widget 310, a contact edit widget 315, a telephone contact widget 320, an e-mail contact widget 325, and a contact social network interaction widget 330. In the illustrated implementation, widgets 310, 315, 320, 325, 330 are iconic graphical indicia that represent the actions triggered by user interaction therewith, as described further below.

Contact display widget 310 is an interactive element that, in response to user interaction, triggers the display of additional information characterizing the contact identified by the identifier which is associated with the interactive widget that triggers the display of the action widget collection 305. The additional information can include one or more of, e.g., the contact's title, image, phone number, electronic mail or other address, employer, moniker in a social network, or the like. In the illustrated implementation, contact display widget 310 is an iconic graphical indicium that resembles a portion of the person of an individual and represents that the display of additional information related to the contact's person is triggered by user interaction.

Contact edit widget 315 is an interactive element that, in response to user interaction, triggers the display of interactive elements for editing information characterizing the contact identified by the identifier which is associated with the interactive widget that triggers the display of action widget collection 305. Such editing can including changing existing contact information stored in device 105 and adding new contact information to the contact information stored in a data storage device of device 105. In some implementations, the interactive elements can respond to user interaction to add or change an identifier of the contact (including the respective of identifiers 205, 210, 215, 220, 225), the contact's title, the contact's phone number, the contact's electronic mail or other address, the contact's employer, the contact's moniker in a social network, or the like. In some implementations, the interactive elements can respond to user interaction to add or change an image, an icon, or other graphical representation of the contact. In the illustrated implementation, contact edit widget 315 is an iconic graphical indicium that resembles a writing instrument and represents that editing of information characterizing the contact is triggered by user interaction.

Telephone contact widget 320 is an interactive element that, in response to user interaction, triggers a telephone call to the contact identified by the identifier which is associated with the interactive widget that triggers the display of action widget collection 305. The telephone call can be, e.g., a plain old telephone service (POTS) call, a cellular phone call, a voice over Internet protocol (VoIP) call, or other call. The telephone call can be placed to a telephone number that is stored in association with the respective of identifiers 205, 210, 215, 220, 225 in a data storage device of device 105. In the illustrated implementation, telephone contact widget 320 is an iconic graphical indicium that resembles a telephone handset and represents that the placing of a telephone call is triggered by user interaction.

E-mail contact widget 325 is an interactive element that, in response to user interaction, triggers the transmission of an electronic mail message or the display of a presentation for authoring an electronic mail message to the contact identified by the identifier which is associated with the interactive widget that triggers the display of action widget collection 305. The electronic mail message can be transmitted to an electronic mail address that is stored in association with the respective of identifiers 205, 210, 215, 220, 225 in a data storage device of device 105. In the illustrated implementation, e-mail contact widget 325 is an iconic graphical indicium that resembles a letter envelope and represents that the transmission of an electronic mail message or the display of a presentation for authoring an electronic mail message is triggered by user interaction.

Contact social network interaction widget 330 is an interactive element that, in response to user interaction, triggers interaction that is mediated by a social network with the contact identified by the identifier which is associated with the interactive widget that triggers the display of action widget collection 305. The social network can be a symmetric or an asymmetric social network. The interaction can include, e.g., opening the profile page of the contact in the social network or transmitting a message to the contact using the capabilities proved by the social network. The social network—mediated interaction can rely upon information characterizing the contact within the social network that is stored in association with the respective of identifiers 205, 210, 215, 220, 225 in a data storage device of device 105. In the illustrated implementation, contact social network interaction widget 330 is an iconic graphical indicium that resembles a net and represents that interaction that is mediated by a social network is triggered by user interaction.

In the illustrated implementation, the action widgets in collection 305 are grouped together in an area 335 that appears to be overlaid upon other portions of presentation 200 that are not visible in presentation 300. In particular, area 335 appears to obscure at least a portion of area 255 that includes information characterizing a contact that differs from the contact that is associated with the interactive widget 235 that triggers the display of action widget collection 305. As a result, at least a portion of identifier 215 of this different contact, and the associated interactive widget 240 and graphical indicia 265 are not visible in presentation 300 and appear to be obscured by the overlaid area 335.

The contact identifier 210 that is associated with the interactive widget 235 that triggers the display of action widget collection 305 is not obscured by action widget collection 305. In other words, contact identifier 210 and action widget collection 305 are both visible in presentation 300. In the illustrated implementation, all of the information characterizing the contact identified by contact identifier 210 remains visible notwithstanding the presentation of action widget collection 305 in presentation 300. Indeed, in the illustrated implementation, area 255 that includes information characterizing the contact identified by contact identifier 210 remains visible in its entirety except for a relatively small incursion by a pointed indicium, as described further below.

In the illustrated implementation, area 335 is demarcated from other portions of presentation 300 by a border 340. In other implementations, area 335 can be demarcated from other portions of presentation 300 by color or shade, by empty expanses, or by other visual features that convey that widgets 310, 315, 320, 325, 330 commonly belong to collection 305.

In the illustrated implementation, border 340 of area 335 includes a pointed indicium 345 that is directed toward area 255 that is associated with the interactive widget 235 that triggers the display of action widget collection 305. The directionality of pointed indicium 345 thus indicates that the actions triggered by user interaction with widgets 310, 315, 320, 325, 330 are directed to the contact that is associated with that same interactive widget. In the illustrated implementation, the upward-pointing directionality of indicium 345 toward area 255 that includes identifier 210 allows a user to recognize that interaction with widgets 310, 315, 320, 325, 330 trigger actions directed to the respective of viewing or editing the contact information of the contact identified by identifier 210, placing a telephone call to or e-mailing the contact identified by identifier 210, or interacting with the contact identified by identifier 210 via a social network. In the illustrated implementation, pointed indicium 345 extends outwardly from a relatively straighter portion of border 340 and extends across border 260 that demarcates area 255.

In the illustrated implementation, widgets 310, 315, 320, 325, 330 in collection 305 are arranged adjacent one another to span an area 335 that is wider than it is tall. In the illustrated implementation, area 335 spans a majority of the width W of touchscreen 115. In this, the relative sizes of the height and width dimensions of area 335 follow the relative sizes of the height and width dimensions of areas 255. In particular, areas 255 are generally strip-shaped elements that span a majority of the width W of touchscreen 115. Area 335 is also a generally strip-shaped element that spans a majority of the width W of touchscreen 115. In the illustrated implementation, the height of the strip of area 335 (i.e., in the direction of height H of touchscreen 115) is smaller than the height of the strips of areas 255, although this is not necessarily the case. Indeed, in some implementations, the height of the strip of area 335 can be the same as or larger than the height of the strips of areas 255. Other layouts of area 335 are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115 than in the illustrated implementation, then area 335 can be arranged differently and/or span a relatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 310, 315, 320, 325, 330 in collection 305 are demarcated from one another by empty expanses. In other implementations, widgets 310, 315, 320, 325, 330 can be demarcated from one another by color or shade, by borders, or by other visual features that convey that widgets 310, 315, 320, 325, 330 differ from one another.

FIG. 4 is a schematic representation of the display of a presentation 400 on a portion of touchscreen 115 of device 105. Presentation 400 is displayed on touchscreen 115 in response to user interaction with one or more interactive elements. For example, in some implementations, presentation 400 can be displayed on touchscreen 115 in response to a user dragging a finger or other element across area 335 in presentation 300 (FIG. 3).

In addition to the displayed features shared with presentations 200, 300, presentation 400 also includes an action widget collection 405. The interactive elements in action widget collection 405 differ from the interactive elements in action widget collection 305. In particular, action widget collection 405 includes at least one interactive element that is not found in action widget collection 305 and excludes at least one interactive element that is found in action widget collection 305. For example, in the illustrated implementation, action widget collection 405 includes a trio of widgets 410, 415, 420 that are not found in action widget collection 305 and excludes contact display widget 310, contact edit widget 315, and telephone contact widget 320.

In transitioning between action widget collection 305 and action widget collection 405, widgets can appear to scroll into and out of areas 305, 405 in the direction that a finger or other element is dragged. For example, in the illustrated implementation, widgets 410, 415, 420 may have shifted to the left and been deleted from area 305 as widgets 410, 415, 420 shifted into area 305 from the right in response to a user dragging a finger or other element to the left across area 335 in presentation 300.

Widgets 410, 415, 420 are interactive elements that, in response to user interaction, trigger data processing or other actions directed to the contact identified by the identifier which is associated with the interactive widget that triggers the display of action widget collection 305. For example, in the illustrated implementation, widget 410 is an interactive element that, in response to user interaction, triggers the display of a presentation for authoring a chat or other text message to the contact identified by the identifier which is associated with the interactive widget that triggers the display of action widget collection 305. The text message can be transmitted to an address that is stored in association with the respective of identifiers 205, 210, 215, 220, 225 in a data storage device of device 105. In the illustrated implementation, widget 410 is an iconic graphical indicium that resembles a bubble callout and represents that the display of a presentation for authoring a chat or other text message is triggered by user interaction.

As another example, in the illustrated implementation, widget 415 is an interactive element that, in response to user interaction, changes the contact identified by the identifier which is associated with the interactive widget that triggers the display of action widget collection 305 into a “favorite” contact. Favorite contacts are contacts who have been identified by a user of device 105 as contacts that will be treated differently from the other contacts stored in a data storage device of device 105. Favorite contacts are thus generally a proper subset of the stored contacts. Favorite contacts can be treated differently from other contacts in a variety of different ways. For example, in some implementations, incoming messages from favorite contacts are given priority over incoming messages from other, non-favorite contacts. For example, all postings to a social network by favorite contacts may be displayed by default, whereas postings by non-favorite contacts may be displayed only occasionally or only in response to an explicit request by the individual that they be displayed. As another example, in some implementations, favorite contacts are eligible to become selected followers of an individual in an asymmetric social network, whereas non-favorite contacts may not. As yet another example, in some implementations, favorite contacts may have unrestricted access to media files or other content posted to a media file sharing network or a member network by the individual who has designated the contact as a favorite. As yet another example, in some implementations, favorite contacts may have unrestricted access to information identifying an individual's current location. Information identifying a contact as a favorite contact can be stored in association with the contact information on device 105. In the illustrated implementation, widget 415 is an iconic graphical indicium that resembles a star with a plus sign and represents that the addition of the contact identified by the identifier to a collection of favorite contacts is triggered by user interaction.

As yet another example, in the illustrated implementation, widget 420 is an interactive element that, in response to user interaction, triggers the deletion of the contact identified by the identifier which is associated with the interactive widget that triggers the display of action widget collection 305. The deletion of a contact can include deleting the information characterizing the contact from a data storage device in device 105. In the illustrated implementation, widget 420 is an iconic graphical indicium that resembles the letter “X” and represents that the deletion of a contact is triggered by user interaction.

In the illustrated implementation, the action widgets in collection 405 are grouped together in the same area 335 that included collection 305 in presentation 300 (FIG. 3). Area 335 remains demarcated from other portions of presentation 300 by border 340, which includes pointed indicium 345 directed toward area 255 that is associated with the interactive widget that triggered the display of action widget collection 305. Contact identifier 210 is not obscured by action widget collection 405 but rather both contact identifier 210 and action widget collection 405 are both visible in presentation 400.

FIG. 5 is a schematic representation of the display of a presentation 500 on a portion of touchscreen 115 of device 105. Presentation 500 includes a collection of message records 505, 510, 515, 520 that each include information characterizing a message that has been received by device 105. The messages can be, e.g., electronic mail messages, chat or other text messages, messages posted over a member network, or the like. In the illustrated implementation, message records 505, 510, 515, 520 include information characterizing received messages. In other implementations, message records 505, 510, 515, 520 include information characterizing sent messages or a combination of sent and received messages.

Each message record 505, 510, 515, 520 is associated with a respective interactive widget 530, 535, 540, 545 by positioning or arrangement on presentation 500. Each interactive widget 530, 535, 540, 545 is an interactive element that, in response to user interaction, triggers the display of a collection of additional interactive elements. The additional interactive elements trigger the performance of additional data processing or other actions that are directed to the message characterized in the associated record, as described further below.

In the illustrated implementation, each message record 505, 510, 515, 520 is associated with a respective interactive widget 530, 535, 540, 545 by virtue of positioning adjacent an area 555 that is dedicated to the display of information characterizing a single message. In particular, interactive widgets 530, 535, 540, 545 are positioned laterally adjacent to a counterparty identifier in respective of message records 505, 510, 515, 520 (i.e., to the right in the illustrated implementation). In the illustrated implementation, areas 555 are demarcated from one another, and from the remainder of presentation 500, by borders 560. In other implementations, areas 555 can be demarcated using color, empty expanses, or other visual features. In other implementations, interactive widgets 530, 535, 540, 545 can be positioned within areas 555.

In the illustrated implementation, each message record 505, 510, 515, 520 includes a counterparty identifier 565, message text 570, and message transaction information 575. Counterparty identifiers 565 are the names or other information that identifies a counterparty to the message characterized by the respective of message records 505, 510, 515, 520. In the illustrated implementation, counterparty identifiers 565 are textual but other identifiers such as graphical, iconic, or numeric identifiers can also be used.

Message text 570 is at least a portion of the textual content of the messages characterized by the respective of message records 505, 510, 515, 520. The textual content can include the body of the message or the subject line of the message. In the illustrated implementation, message records 505, 510, 515, 520 include information characterizing messages received over an asymmetric social network that limits the size of postings. As a result, message text 570 often includes the complete textual content of such postings.

Message transaction information 575 is textual or other indicia that characterize one or more transactional properties of the messages characterized by the respective of message records 505, 510, 515, 520. For example, message transaction information 575 can characterize the time when the message was sent, the location from where the message was sent, and the transaction history of the message. The transactional history can include, e.g., whether the message has been forwarded or is a reply to a previous message.

In the illustrated implementation, each message record 505, 510, 515, 520 also includes a graphical indicium 580 that characterizes the counterparty on the message characterized by the respective of message records 505, 510, 515, 520. Each graphical indicium 580 is an photograph, an icon, or other graphical representation of the counterparty on the characterized message. In some implementations, graphical indicia 580 are likenesses of or identical to the graphical indicia 265 that characterize contacts and that are displayed in presentations 200, 300, 400 (FIGS. 2, 3, 4), as shown. Graphical indicia 580 can be stored in one or more memory devices of device 105 in conjunction with contact information.

In other implementations, each message record 505, 510, 515, 520 can include additional information characterizing a message, such indicia indicating whether a message has been read, indicia indicating whether the message has been labeled with a priority, an urgent, or other designator, and the like.

When device 105 is a portable, handheld device, each area 555 can occupy a majority of the width of touchscreen 115. Further, areas 555 are aligned with one another and arranged one above the other to span a majority of the height of touchscreen 115. In particular, counterparty identifiers 565, message text 570, message transaction information 575, graphical indicia 580, and widgets 530, 535, 540, 545 in different areas 555 are aligned with one another. Such an arrangement lists information characterizing the messages in a convenient format that is familiar to many individuals. Other layouts are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115, then areas 555 can be arranged differently and/or span relatively smaller portions of touchscreen 115.

In some implementations, the display of additional message records and concomitant removal one or more of message records 505, 510, 515, 520 can be triggered by user interaction with one or more of input elements 120 and/or presentation 500. For example, in some implementations, presentation 500 can trigger scrolling navigation through a collection of message information in response to touchscreen 115 identifying upward or downward movement of a finger or other element across presentation 500. As another example, in some implementations, presentation 500 can include additional interactive widgets that trigger, in response to user interaction, scrolling navigation through a collection of message information.

Presentation 500 can be displayed in accordance with one or more sets of machine-readable instructions that are performed by one or more data processing devices housed in housing 110 of device 105, as described further below. The instructions can cause device 105 to display presentation 500 at various points in a set of data processing activities. For example, the instructions can cause device 105 to display presentation 500 in response to user interaction with a widget that indicates that a user wishes to make a selection from a collection of electronic mail, chat or other text, or social network messages.

FIG. 6 is a schematic representation of the display of a presentation 600 on a portion of touchscreen 115 of device 105. Presentation 600 is displayed on touchscreen 115 in response to user interaction with interactive widget 530 that is associated with message record 505. The user interaction with interactive widget 530 that triggers the display of presentation 300 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 500, presentation 600 also includes an action widget collection 605. Action widget collection 605 is a collection of interactive elements that, in response to user interaction, trigger data processing or other actions directed to the message which is characterized in a message record associated with the interactive widget that triggers the display of the action widget collection. The user interaction that triggers the actions can be, e.g., a single or a double click or tap on a particular action widget in collection 605 or the “dragging and dropping” of the message record that is associated with the interactive widget that triggers the display of action widget collection 605 onto a particular action widget in collection 605.

In the illustrated implementation, action widget collection 605 includes a mark-as-favorite widget 610, a reply widget 615, a repost widget 620, a delete widget 625, and a locate-on-map widget 630. In the illustrated implementation, widgets 610, 615, 620, 625, 630 are iconic graphical indicia that represent the actions triggered by user interaction therewith, as described further below.

Mark-as-favorite widget 610 is an interactive element that, in response to user interaction, changes the message that is characterized in the message record associated with the interactive widget that triggers the display of action widget collection 605 into a “favorite” message. Favorite messages are messages that have been identified by a user of device 105 as messages that will be treated differently from the other messages stored in a data storage device of device 105. Favorite messages are thus generally a proper subset of the stored messages. Favorite messages can be treated differently from other messages in a variety of different ways. For example, in some implementations, favorite messages can added to a user's profile page or other collection in a social network. For example, favorite messages can be posted or reposted to an asymmetric social network, as in activities 1710, 1725 (FIG. 17). As another example, in some implementations, favorite messages may be exempted from certain automated processes, such as automatic deletion of messages from a data storage device in device 105 or automatic removal of a message record from a presentation on touchscreen 115 as new, unread messages are received by device 105. Information identifying a message as a favorite message can be stored in association with the message information on device 105. In the illustrated implementation, mark-as-favorite widget 610 is an iconic graphical indicium that resembles a star and represents that the addition of the message that is characterized in a message record associated with the interactive widget that triggers the display of action widget collection 605 is to be marked as a favorite message in response to user interaction.

Reply widget 615 is an interactive element that, in response to user interaction, triggers the display of a presentation for authoring a reply message to the counterparty identified by the counterparty identifier 565 in the message record associated with the interactive widget that triggers the display of action widget collection 605. The reply message can be directed to the electronic address from which the message characterized in the message record originated. In the illustrated implementation, reply widget 615 is an iconic graphical indicium that resembles an arrow changing direction and represents that the display of a presentation for authoring an reply message is triggered by user interaction.

Repost widget 620 is an interactive element that, in response to user interaction, triggers the “reposting”—to the social network from which it originated or to another social network—of the message that is characterized in the message record associated with the interactive widget that triggers the display of action widget collection 605. In the context of an asymmetric social network, reposting a message can include transmitting the message to followers of the user who interacts with device 105, as described further below. In the illustrated implementation, repost widget 620 is an iconic graphical indicium that resembles a pair of arrows, each changing direction to arrive at the others tail, and represents that the reposting of the message is triggered by user interaction.

Delete widget 625 is an interactive element that, in response to user interaction, triggers the deletion of the message that is characterized in the message record associated with the interactive widget that triggers the display of action widget collection 605. The deletion of a message can include deleting the information characterizing the message from a data storage device in device 105. In the illustrated implementation, delete widget 625 is an iconic graphical indicium that resembles a trash can and represents that the deletion of a contact is triggered by user interaction.

Locate-on-map widget 630 is an interactive element that, in response to user interaction, triggers the display of a map that includes an indium identifying the location from where the message that is characterized in the message record associated with the interactive widget that triggers the display of action widget collection 605 was sent. In some implementations, presentation 600 can be removed from touchscreen 115 and replaced with such a map in response to user interaction with locate-on-map widget 630. In the illustrated implementation, locate-on-map widget 630 is a tear-drop-shaped iconic graphical indicium and represents that the display of such a map is triggered by user interaction.

In the illustrated implementation, the action widgets in collection 305 are grouped together in an area 635 that appears to be overlaid upon other portions of presentation 500 that are not visible in presentation 600. In particular, area 635 appears to obscure at least a portion of the area 555 that includes information characterizing a different message. As a result, at least a portion of counterparty identifier 565, message text 570, message transaction information 575, and graphical indicia 580 are not visible in presentation 600 and appear to be obscured by the overlaid area 635.

The counterparty identifier 565 that is in record 505, which itself is associated with the interactive widget 530 that triggers the display of action widget collection 605, is not obscured by action widget collection 605. In other words, this counterparty identifier 565 and action widget collection 605 are both visible in presentation 600. In the illustrated implementation, all of the message-characterizing information in record 505 remains visible notwithstanding the presentation of action widget collection 605 in presentation 600. Indeed, in the illustrated implementation, area 555 of message record 505 remains visible in its entirety except for a relatively small incursion by a pointed indicium, as described further below.

In the illustrated implementation, area 635 is demarcated from other portions of presentation 600 by an outer border 640. In other implementations, area 635 can be demarcated from other portions of presentation 600 by color or shade, by empty expanses, or by other visual features that convey that widgets 610, 615, 620, 625, 630 commonly belong to collection 605.

In the illustrated implementation, outer border 640 of area 635 includes a pointed indicium 645 that is directed toward area 555 that is associated with the interactive widget 530 that triggers the display of action widget collection 605. The directionality of pointed indicium 645 thus indicates that the actions triggered by user interaction with widgets 610, 615, 620, 625, 630 are directed to the contact that is associated with that same interactive widget. In the illustrated implementation, pointed indicium 645 extends outwardly from a relatively straighter portion of border 640 and extends across border 560 that demarcates area 555.

In the illustrated implementation, widgets 610, 615, 620, 625, 630 in collection 605 are arranged adjacent one another to span an area 635 that is wider than it is tall. In the illustrated implementation, area 635 spans a majority of the width of touchscreen 115. In this, the relative sizes of the height and width dimensions of area 635 follow the relative sizes of the height and width dimensions of areas 555. In particular, areas 555 are generally strip-shaped elements that span a majority of the width W of touchscreen 115. Area 635 is also a generally strip-shaped element that spans a majority of the width W of touchscreen 115. In the illustrated implementation, the height of the strip of area 635 is smaller than the height of the strips of areas 555, although this is not necessarily the case. Indeed, in some implementations, the height of the strip of area 635 can be the same as or larger than the height of the strips of areas 555. Other layouts of area 635 are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115 than in the illustrated implementation, then area 635 can be arranged differently and/or span a relatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 610, 615, 620, 625, 630 in collection 605 are demarcated from one another by borders 650. In other implementations, widgets 610, 615, 620, 625, 630 can be demarcated from one another by color or shade, by empty expanses, or by other visual features that convey that widgets 610, 615, 620, 625, 630 differ from one another.

In some implementations, a different action widget collection that includes least one interactive element that is not found in action widget collection 605 and excludes at least one interactive element that is found in action widget collection 605 can be presented on touchscreen 115 in response to user interaction with one or more interactive elements. For example, in some implementations, a different action widget collection can be displayed on touchscreen 115 in response to a user dragging a finger or other element across area 635 in presentation 600. In transitioning between action widget collection 605 and such a different action widget collection, widgets can appear to scroll into and out of area 635 in the direction that a finger or other element is dragged.

FIG. 7 is a schematic representation of the display of a presentation 700 on a portion of touchscreen 115 of device 105. Presentation 700 includes a collection of media records 705, 710, 715, 720 that each include information characterizing a media file, such as an image, music or video file. In the illustrated implementation, media records 705, 710, 715, 720 each include information characterizing an image. The characterized images can be, e.g., photographs, drawings, icons, or other graphical elements. The characterized media files can be stored on device 105 or available for download from a server that is accessible over the Internet. For example, the characterized media files can be available from social network server 170 or media server 180.

Each media record 705, 710, 715, 720 is associated with a respective interactive widget 725, 730, 735, 740 by positioning or arrangement on presentation 700. Each interactive widget 725, 730, 735, 740 is an interactive element that, in response to user interaction, triggers the display of a collection of additional interactive elements. The additional interactive elements trigger the performance of additional data processing or other actions that are directed to the media files characterized in the associated media record, as described further below.

In the illustrated implementation, each media record 705, 710, 715, 720 is associated with a respective interactive widget 725, 730, 735, 740 by virtue of common positioning within an area 755 that is dedicated to the display of information characterizing a single media file. Interactive widgets 725, 730, 735, 740 are positioned laterally adjacent to respective of media file identifiers in media records 705, 710, 715, 720 (i.e., to the right in the illustrated implementation). In the illustrated implementation, areas 755 are demarcated from one another, and from the remainder of presentation 700, by borders 760. In other implementations, areas 755 can be demarcated using color, empty expanses, or other visual features. In other implementations, interactive widgets 725, 730, 735, 740 can be positioned adjacent areas 755.

Each media record 705, 710, 715, 720 includes a media file identifier 770 that each identify the media file characterized in the respective media record 705, 710, 715, 720. In the illustrated implementation, media file identifiers 770 are likenesses of the characterized images. The likenesses can be thumbnail-sized reproductions of the characterized images or other graphical elements that resemble the characterized images. In other implementations, media file identifiers 770 can be a name of the media file or other textual or numeric identifier. In some implementations, each media record 705, 710, 715, 720 can include multiple media file identifiers such as, e.g., both a likeness and a textual or numeric identifier. In some implementations, each media record 705, 710, 715, 720 can also include additional information characterizing media files, such as the names of individuals or other tags or captions associated with the media files. In some implementations, each media record 705, 710, 715, 720 can also include additional information characterizing transactional properties of the media file, such as when the media file was created or saved or from whence the media file originated.

When device 105 is a portable, handheld device, each area 755 can occupy a majority of the width of touchscreen 115. Further, areas 755 are aligned with one another and arranged one above the other to span a majority of the height of touchscreen 115. In particular, media file identifiers 770 in different areas 755 are aligned with one another. Such an arrangement lists information characterizing the media files in a convenient format that is familiar to many individuals. Other layouts are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115, then areas 755 can be arranged differently and/or span relatively smaller portions of touchscreen 115.

In some implementations, the display of additional media records and concomitant removal one or more of media records 705, 710, 715, 720 can be triggered by user interaction with one or more of input elements 120 and/or presentation 700. For example, in some implementations, presentation 700 can trigger scrolling navigation through a collection of media files in response to touchscreen 115 identifying upward or downward movement of a finger or other element across presentation 700. As another example, in some implementations, presentation 700 can include additional interactive widgets that trigger, in response to user interaction, scrolling navigation through a collection of media files.

Presentation 700 can be displayed in accordance with one or more sets of machine-readable instructions that are performed by one or more data processing devices housed in housing 110 of device 105, as described further below. The instructions can cause device 105 to display presentation 700 at various points in a set of data processing activities. For example, the instructions can cause device 105 to display presentation 700 in response to user interaction with a widget that indicates that a user wishes to make a selection from a collection of media files.

FIG. 8 is a schematic representation of the display of a presentation 800 on a portion of touchscreen 115 of device 105. Presentation 800 is displayed on touchscreen 115 in response to user interaction with interactive widget 740 that is associated with message record 720. The user interaction with interactive widget 740 that triggers the display of presentation 800 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 700, presentation 800 also includes an action widget collection 805. Action widget collection 805 is a collection of interactive elements that, in response to user interaction, trigger data processing or other actions directed to the media file which is characterized in an media record associated with the interactive widget that triggers the display of the action widget collection. The user interaction that triggers the actions can be, e.g., a single or a double click or tap on a particular action widget in collection 805 or the “dragging and dropping” of the media record that is associated with the interactive widget that triggers the display of action widget collection 805 onto a particular action widget in collection 805.

In the illustrated implementation, action widget collection 805 includes a view widget 810, an edit caption widget 815m a delete widget 820, and an information widget 825.

View widget 810 is an interactive element that, in response to user interaction, triggers the display of the media file that is characterized in the media record associated with the interactive widget that triggers the display of action widget collection 805. In some implementations, presentation 800 can be removed from touchscreen 115 and replaced with the media file in response to user interaction with view widget 810. In the illustrated implementation, view widget 810 is a graphical indicium that resembles a pair of binoculars, and represents that the display of such a media file is triggered by user interaction.

Caption edit widget 815 is an interactive element that, in response to user interaction, triggers the display of interactive elements for editing the caption of media file that is characterized in the media record associated with the interactive widget that triggers the display of action widget collection 805. Such editing can change a caption that is stored in device 105 or a caption stored at a server that is accessible over the Internet, such as social network server 170 or photo server 180. In the illustrated implementation, caption edit widget 315 is an iconic graphical indicium that resembles a writing instrument and represents that editing of a media file caption is triggered by user interaction.

Delete widget 820 is an interactive element that, in response to user interaction, triggers the deletion of the media file that is characterized in the media record associated with the interactive widget that triggers the display of action widget collection 805. The deletion of a media file can include deleting the media file and information characterizing the media file from a data storage device in device 105 or from a server that is accessible over the Internet, such as social network server 170 or photo server 180. In the illustrated implementation, delete widget 820 is an iconic graphical indicium that resembles the letter “X” and represents that the deletion of a media file is triggered by user interaction.

Information widget 825 is an interactive element that, in response to user interaction, triggers the display of additional information characterizing the media file that is characterized in the media record associated with the interactive widget that triggers the display of action widget collection 805. The additional information can include, e.g., a name of the media file or other textual or numeric identifier of the media file, the names of individuals or other tags or captions associated with the media file, information characterizing transactional properties of the media file (such as when the media file was created or saved or from whence the media file originated), or the like. The additional information can be drawn from a data storage device in device 105 or from a server that is accessible over the Internet, such as social network server 170 or photo server 180. In the illustrated implementation, information widget 825 is an iconic graphical indicium that resembles the letter “i” and represents that information characterizing a media file is triggered by user interaction.

In the illustrated implementation, the action widgets in collection 805 are grouped together in an area 835 that appears to be overlaid upon other portions of presentation 700 that are not visible in presentation 800. In particular, area 835 appears to obscure at least a portion of the area 755 that includes information characterizing a different media file. As a result, at least a portion of media file identifier 770 in record 715 is not visible in presentation 800 and appears to be obscured by the overlaid area 835.

The media file identifier 770 that is in record 720, which itself is associated with the interactive widget 730 that triggers the display of action widget collection 805, is not obscured by action widget collection 805. In other words, this media file identifier 770 and action widget collection 805 are both visible in presentation 800. In the illustrated implementation, all of the message-characterizing information in record 720 remains visible notwithstanding the presentation of action widget collection 805 in presentation 800. Indeed, in the illustrated implementation, area 755 of message record 720 remains visible in its entirety except for a relatively small incursion by a pointed indicium, as described further below.

In the illustrated implementation, area 835 is demarcated from other portions of presentation 800 by an outer border 840. In other implementations, area 835 can be demarcated from other portions of presentation 800 by color or shade, by empty expanses, or by other visual features that convey that widgets 810, 815, 820, 825 commonly belong to collection 805.

In the illustrated implementation, outer border 840 of area 835 includes a pointed indicium 845 that is directed toward area 755 that is associated with the interactive widget 730 that triggers the display of action widget collection 805. The directionality of pointed indicium 845 thus indicates that the actions triggered by user interaction with widgets 810, 815, 820, 825 are directed to the media file that is characterized in media record 720. In the illustrated implementation, pointed indicium 845 extends outwardly from a relatively straighter portion of border 840 and extends across border 760 that demarcates area 755.

In the illustrated implementation, widgets 810, 815, 820, 825 in collection 805 are arranged adjacent one another to span an area 835 that is wider than it is tall. In the illustrated implementation, area 835 spans a majority of the width of touchscreen 115. In this, the relative sizes of the height and width dimensions of area 835 follow the relative sizes of the height and width dimensions of areas 755. In particular, areas 755 are generally strip-shaped elements that span a majority of the width W of touchscreen 115. Area 835 is also a generally strip-shaped element that spans a majority of the width W of touchscreen 115. In the illustrated implementation, the height of the strip of area 835 is smaller than the height of the strips of areas 755, although this is not necessarily the case. Indeed, in some implementations, the height of the strip of area 835 can be the same as or larger than the height of the strips of areas 755. Other layouts of area 835 are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115 than in the illustrated implementation, then area 835 can be arranged differently and/or span a relatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 810, 815, 820, 825 in collection 805 are demarcated from one another by borders 850. In other implementations, widgets 810, 815, 820, 825 can be demarcated from one another by color or shade, by empty expanses, or by other visual features that convey that widgets 810, 815, 820, 825 differ from one another.

In some implementations, a different action widget collection that includes least one interactive element that is not found in action widget collection 805 and excludes at least one interactive element that is found in action widget collection 805 can be presented on touchscreen 115 in response to user interaction with one or more interactive elements. For example, in some implementations, a different action widget collection can be displayed on touchscreen 115 in response to a user dragging a finger or other element across area 835 in presentation 800. In transitioning between action widget collection 805 and such a different action widget collection, widgets can appear to scroll into and out of area 835 in the direction that a finger or other element is dragged.

FIG. 9 is a schematic representation of the display of a presentation 900 on a portion of touchscreen 115 of device 105. Presentation 900 includes a collection of media records 902, 904, 906, 908, 912, 914, 916, 918 that each include information characterizing a media file. The characterized media files can be, e.g., photographs, drawings, icons, or other graphical elements. The characterized media files can be stored on device 105 or available for download from a server that is accessible over the Internet. For example, the characterized media files can be available from social network server 170 or media file server 180.

Each media record 902, 904, 906, 908, 912, 914, 916, 918 is associated with a respective interactive widget 922, 924, 926, 928, 932, 934, 936, 938 by positioning or arrangement on presentation 900. Each interactive widget 902, 904, 906, 908, 912, 914, 916, 918 is an interactive element that, in response to user interaction, triggers the display of a collection of additional interactive elements. The additional interactive elements trigger the performance of additional data processing or other actions that are directed to the media files characterized in the associated media record, as described further below.

In the illustrated implementation, each media record 902, 904, 906, 908, 912, 914, 916, 918 is associated with a respective interactive widget 902, 904, 906, 908, 912, 914, 916, 918 by virtue of common positioning within an area 955 that is dedicated to the display of information characterizing a single media file. Interactive widgets 902, 904, 906, 908, 912, 914, 916, 918 are positioned laterally adjacent to respective of media file identifiers in media records 902, 904, 906, 908, 912, 914, 916, 918 (i.e., to the right in the illustrated implementation). In the illustrated implementation, areas 955 are demarcated from one another, and from the remainder of presentation 900, by borders 960. In other implementations, areas 955 can be demarcated using color, empty expanses, or other visual features. In other implementations, interactive widgets 922, 924, 926, 928, 932, 934, 936, 938 can be positioned adjacent areas 955.

Each media record 902, 904, 906, 908, 912, 914, 916, 918 includes a media file identifier 970 that each identify the media file characterized in the respective media record 902, 904, 906, 908, 912, 914, 916, 918. In the illustrated implementation, media file identifiers 970 are likenesses of the characterized images. The likenesses can be thumbnail-sized reproductions of the characterized images or other graphical elements that resemble the characterized images. In other implementations, media file identifiers 970 can be a name of the media file or other textual or numeric identifier. In some implementations, each media record 902, 904, 906, 908, 912, 914, 916, 918 can include multiple media file identifiers such as, e.g., both a likeness and a textual or numeric identifier. In some implementations, each media record 902, 904, 906, 908, 912, 914, 916, 918 can also include additional information characterizing media files, such as the names of individuals or other tags or captions associated with the media files. In some implementations, each media record 902, 904, 906, 908, 912, 914, 916, 918 can also include additional information characterizing transactional properties of the media file, such as when the media file was created or saved or from whence the media file originated.

When device 105 is a portable, handheld device, each area 955 can occupy a approximately one half of the width of touchscreen 115. Such dimensioning is particular convenient for images, which—absent editing—are generally dimensioned to have size ratios that facilitate such a presentation. Areas 955 are aligned with one another and arranged one above the other to span a majority of the height of touchscreen 115. In particular, media file identifiers 970 in different areas 955 are aligned with one another. Such an arrangement lists information characterizing the media files in a convenient format. Other layouts are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115, then areas 955 can be arranged differently and/or span relatively smaller portions of touchscreen 115.

In some implementations, the display of additional media records and concomitant removal one or more of media records 902, 904, 906, 908, 912, 914, 916, 918 can be triggered by user interaction with one or more of input elements 120 and/or presentation 900. For example, in some implementations, presentation 900 can trigger scrolling navigation through a collection of media files in response to touchscreen 115 identifying upward or downward movement of a finger or other element across presentation 900. As another example, in some implementations, presentation 900 can include additional interactive widgets that trigger, in response to user interaction, scrolling navigation through a collection of media files.

Presentation 900 can be displayed in accordance with one or more sets of machine-readable instructions that are performed by one or more data processing devices housed in housing 110 of device 105, as described further below. The instructions can cause device 105 to display presentation 900 at various points in a set of data processing activities. For example, the instructions can cause device 105 to display presentation 900 in response to user interaction with a widget that indicates that a user wishes to make a selection from a collection of media files.

FIG. 10 is a schematic representation of the display of a presentation 1000 on a portion of touchscreen 115 of device 105. Presentation 1000 is displayed on touchscreen 115 in response to user interaction with interactive widget 934 that is associated with message record 914. The user interaction with interactive widget 934 that triggers the display of presentation 1000 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 900, presentation 1000 also includes an action widget collection 1005. Action widget collection 1005 is a collection of interactive elements that, in response to user interaction, trigger data processing or other actions directed to the media file which is characterized in an media record associated with the interactive widget that triggers the display of the action widget collection. The user interaction that triggers the actions can be, e.g., a single or a double click or tap on a particular action widget in collection 1005 or the “dragging and dropping” of the message record that is associated with the interactive widget that triggers the display of action widget collection 1005 onto a particular action widget in collection 1005.

In the illustrated implementation, action widget collection 1005 includes view widget 810, edit widget 815, delete widget 820, and information widget 825, as described above (FIG. 8).

In the illustrated implementation, the action widgets in collection 1005 are grouped together in an area 1035 that appears to be overlaid upon other portions of presentation 900 that are not visible in presentation 1000. In particular, area 1035 appears to obscure at least a portion of two different areas 955 that each includes information characterizing a different media file. As a result, at least a portion of media file identifiers 970 in records 906, 916 are not visible in presentation 1000 and appear to be obscured by the overlaid area 1035.

The media file identifier 970 that is in record 914, which itself is associated with the interactive widget 934 that triggers the display of action widget collection 805, is not obscured by action widget collection 1005. In other words, this media file identifier 970 and action widget collection 1005 are both visible in presentation 1000. In the illustrated implementation, all of the message-characterizing information in record 920 remains visible notwithstanding the presentation of action widget collection 1005 in presentation 1000. Indeed, in the illustrated implementation, area 955 of message record 914 remains visible in its entirety except for a relatively small incursion by a pointed indicium, as described further below.

In the illustrated implementation, area 1035 is demarcated from other portions of presentation 1000 by an outer border 1040. In other implementations, area 1035 can be demarcated from other portions of presentation 1000 by color or shade, by empty expanses, or by other visual features that convey that widgets 1010, 1015, 1020, 1025 commonly belong to collection 1005.

In the illustrated implementation, outer border 1040 of area 1035 includes a pointed indicium 1045 that is directed toward area 914 that is associated with the interactive widget 934 that triggers the display of action widget collection 1005. The directionality of pointed indicium 1045 thus indicates that the actions triggered by user interaction with widgets 1010, 1015, 1020, 1025 are directed to the media file that is characterized in media record 914. In the illustrated implementation, pointed indicium 1045 extends outwardly from a relatively straighter portion of border 1040 and extends across border 960 that demarcates area 955 that is associated with interactive widget 934.

In the illustrated implementation, widgets 810, 815, 820, 825 in collection 1005 are arranged adjacent one another to span an area 1035 that is wider than it is tall. In the illustrated implementation, area 1035 is a generally strip-shaped element that spans a majority of the width W of touchscreen 115. In the illustrated implementation, the height of the strip of area 1035 is smaller than the height of the strips of areas 955, although this is not necessarily the case. Indeed, in some implementations, the height of the strip of area 1035 can be the same as or larger than the height of the strips of areas 955. Other layouts of area 1035 are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115 than in the illustrated implementation, then area 1035 can be arranged differently and/or span a relatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 810, 815, 820, 825 in collection 1005 are demarcated from one another by borders 1050. In other implementations, widgets 810, 815, 820, 825 can be demarcated from one another by color or shade, by empty expanses, or by other visual features that convey that widgets 810, 815, 820, 825 differ from one another.

In some implementations, a different action widget collection that includes least one interactive element that is not found in action widget collection 1005 and excludes at least one interactive element that is found in action widget collection 1005 can be presented on touchscreen 115 in response to user interaction with one or more interactive elements. For example, in some implementations, a different action widget collection can be displayed on touchscreen 115 in response to a user dragging a finger or other element across area 1035 in presentation 1000. In transitioning between action widget collection 1005 and such a different action widget collection, widgets can appear to scroll into and out of area 1035 in the direction that a finger or other element is dragged.

FIG. 11 is a schematic representation of the display of a presentation 1100 of an electronic document 1102 on a portion of touchscreen 115 of device 105. An electronic document is a collection of machine-readable data. Electronic documents are generally individual files that are formatted in accordance with a defined format (e.g., HTML, MS Word, or the like). Electronic documents can be electronically stored and disseminated. In some cases, electronic documents include media content such as images, audio content, and video content, as well as text and links to other electronic documents. Electronic documents need not be individual files. Instead, an electronic document can be stored in a portion of a file that holds other documents or in multiple coordinated files.

Electronic document 1102 can be stored on device 105 or accessible over the Internet. For example, presentation 1100 can be formed by a web-browser that has downloaded electronic document 1102 from a server that is accessible over the Internet.

Electronic document 1102 includes a document title 1105, a body of text 1110, and images 1115, 1120, 1125. Document title 1105 is a textual or other heading that identifies electronic document 1102. In some implementations, document title 1105 is a hyperlink that self-referentially refers to electronic document 1102 and acts as an interactive element that, in response to user interaction, triggers the display of a collection of additional interactive elements. The additional interactive elements trigger the performance of additional data processing or other actions that are directed to electronic document 1102, as described further below.

Body of text 1110 includes interactive elements 1130, 1135. Interactive elements 1130, 1135 are hyperlinks that refer to other electronic documents or to portions of other electronic documents. Interactive elements 1130, 1135 are generally formed from text that is integrated into text body 1110. In some implementations, interactive elements 1130, 1135 trigger the display of a collection of additional interactive elements in response to user interaction. The additional interactive elements trigger the performance of additional data processing or other actions that are directed to the electronic document (or portion thereof) that is referred to by interactive elements 1130, 1135, as described further below.

In some implementations, one or more of images 1115, 1120, 1125 are also interactive elements that, in response to user interaction, trigger the display of a collection of additional interactive elements. The additional interactive elements trigger the performance of additional data processing or other actions that are directed to the respective image 1115, 1120, 1125, as described further below.

FIG. 12 is a schematic representation of the display of a presentation 1200 on a portion of touchscreen 115 of device 105. Presentation 1200 is displayed on touchscreen 115 in response to user interaction with interactive element 1130 that is formed from text that is integrated into text body 1110 of electronic document 1102. The user interaction with interactive element 1130 that triggers the display of presentation 1200 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 1100, presentation 1200 also includes an action widget collection 1205. Action widget collection 1205 is a collection of interactive elements that, in response to user interaction, trigger data processing or other actions directed to the reference to the electronic document (or to portion thereof) in the interactive element that triggers the display of the action widget collection. The user interaction that triggers the actions can be, e.g., a single or a double click or tap on a particular action widget in collection 1205 or the “dragging and dropping” of the reference to the electronic document that triggers the display of action widget collection 1205 onto a particular action widget in collection 1205.

In the illustrated implementation, action widget collection 1205 includes an open widget 1210, a save widget 1215, and a share widget 1220. Open widget 1210 is an interactive element that, in response to user interaction, triggers the opening of the electronic document (or portion thereof) that is referenced in the interactive element that triggers the display of action widget collection 1205. In the illustrated implementation, open widget 1210 is an iconic graphical indicium that resembles an opened can and represents that opening of an electronic document is triggered by user interaction.

Save widget 1215 is an interactive element that, in response to user interaction, triggers saving of the reference to the electronic document (or portion thereof) in the interactive element that triggers the display of action widget collection 1205. The reference can be saved, e.g., in a data storage device in device 105. In the illustrated implementation, save widget 1215 is an iconic graphical indicium that resembles a data storage disk and represents that storing of a reference to the electronic document is triggered by user interaction.

Share widget 1220 is an interactive element that, in response to user interaction, triggers the transmission of a message or the display of a presentation for authoring an message that includes the reference to the electronic document (or portion thereof) in the interactive element that triggers the display of action widget collection 1205. The message can be an electronic mail message, a chat or other text message, a post to a member network, or the like. The message can be transmitted to an address that is stored in a data storage device of device 105. In the illustrated implementation, share widget 1220 is an iconic graphical indicium that resembles a letter envelope and represents that the transmission of a message or the display of a presentation for authoring a message is triggered by user interaction.

In the illustrated implementation, the action widgets in collection 1205 are grouped together in an area 1235 that appears to be overlaid upon other portions of presentation 1100 that are not visible in presentation 1200. In particular, area 1235 appears to obscure at least a portion of body of text 1110 and image 1125. However, interactive element 1130 is not obscured by action widget collection 1205. Instead, interactive element 1130 is visible in presentation 1200.

In the illustrated implementation, area 1235 is demarcated from other portions of presentation 1200 by an outer border 1240. In other implementations, area 1235 can be demarcated from other portions of presentation 1200 by color or shade, by empty expanses, or by other visual features that convey that widgets 1210, 1215, 1220 commonly belong to collection 1205.

In the illustrated implementation, outer border 1240 of area 1235 includes a pointed indicium 1245 that is directed toward the interactive element 1130 that triggers the display of action widget collection 1205. The directionality of pointed indicium 1245 thus indicates that the actions triggered by user interaction with widgets 1210, 1215, 1220 are directed to the electronic document (or portion thereof) that is referenced by interactive element 1130. In the illustrated implementation, pointed indicium 1245 extends outwardly from a relatively straighter portion of border 1240.

In the illustrated implementation, widgets 1210, 1215, 1220 in collection 1205 are arranged adjacent one another to span an area 1235 that is wider than it is tall. In the illustrated implementation, area 1235 is a generally strip-shaped element that spans a majority of the width W of touchscreen 115. Other layouts of area 1235 are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115 than in the illustrated implementation, then area 1235 can be arranged differently and/or span a relatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 1210, 1215, 1220 in collection 1205 are demarcated from one another by borders 1250. In other implementations, widgets 1210, 1215, 1220 can be demarcated from one another by color or shade, by empty expanses, or by other visual features that convey that widgets 1210, 1215, 1220 differ from one another.

In some implementations, a different action widget collection that includes least one interactive element that is not found in action widget collection 1205 and excludes at least one interactive element that is found in action widget collection 1205 can be presented on touchscreen 115 in response to user interaction with one or more interactive elements. For example, in some implementations, a different action widget collection can be displayed on touchscreen 115 in response to a user dragging a finger or other element across area 1235 in presentation 1200. In transitioning between action widget collection 1205 and such a different action widget collection, widgets can appear to scroll into and out of area 1235 in the direction that a finger or other element is dragged.

FIG. 13 is a schematic representation of the display of a presentation 1300 on a portion of touchscreen 115 of device 105. Presentation 1300 is displayed on touchscreen 115 in response to user interaction with a document title 1105 that is an interactive element. The user interaction with document title 1105 that triggers the display of presentation 1300 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 1100, presentation 1300 also includes an action widget collection 1305. Action widget collection 1305 is a collection of interactive elements that, in response to user interaction, trigger data processing or other actions directed to electronic document 1102 referred to by document title 1105. The user interaction that triggers the actions can be, e.g., a single or a double click or tap on a particular action widget in collection 1305 or the “dragging and dropping” of document title 1105 onto a particular action widget in collection 1305.

In the illustrated implementation, action widget collection 1305 includes open widget 1210, save widget 1215, and share widget 1220. Widgets 1210, 1215, 1220 trigger the reopening of electronic document 1102, the saving of a reference to electronic document 1102, or the transmission of a message or the display of a presentation for authoring an message that includes a reference to electronic document 1102.

In the illustrated implementation, the action widgets in collection 1305 are grouped together in an area 1235 that appears to obscure at least a portion of body of text 1110, image 1115, and interactive element 1130. However, document title 1105 is not obscured by action widget collection 1305 but is instead visible in presentation 1300.

In the illustrated implementation, area 1235 is demarcated from other portions of presentation 1200 by an outer border 1240 that conveys that widgets 1210, 1215, 1220 commonly belong to collection 1305. Outer border 1240 of area 1235 includes a pointed indicium 1245 that is directed toward document title 1105. The directionality of pointed indicium 1245 thus indicates that the actions triggered by user interaction with widgets 1210, 1215, 1220 are directed to the electronic document (or portion thereof) that is referenced by document title 1105. Other features of action widget collection 1305 share the characteristics of correspondingly numbered features in action widget collection 1205 (FIG. 12).

FIG. 14 is a schematic representation of the display of a presentation 1400 on a portion of touchscreen 115 of device 105. Presentation 1400 is displayed on touchscreen 115 in response to user interaction with image 1120 of electronic document 1102. The user interaction with image 1120 that triggers the display of presentation 1400 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 1100, presentation 1200 also includes an action widget collection 1405. Action widget collection 1405 is a collection of interactive elements that, in response to user interaction, trigger data processing or other actions directed to image 1120. The user interaction that triggers the actions can be, e.g., a single or a double click or tap on a particular action widget in collection 1405 or the “dragging and dropping” of image 1120 onto a particular action widget in collection 1405.

In the illustrated implementation, action widget collection 1205 includes a view widget 1410, a save widget 1415, and a share widget 1420. View widget 1410 is an interactive element that, in response to user interaction, triggers the display of image 1120. In some implementations, presentation 1400 can be removed from touchscreen 115 and replaced with image 1120 in response to user interaction with view widget 1410. In the illustrated implementation, view widget 1410 is a graphical indicium that resembles a pair of binoculars, and represents that the display of an image is triggered by user interaction.

Save widget 1415 is an interactive element that, in response to user interaction, triggers saving of image 1120. The image can be saved, e.g., in a data storage device in device 105. In the illustrated implementation, save widget 1415 is an iconic graphical indicium that resembles a\ data storage disk and represents that storage of an image is triggered by user interaction.

Share widget 1420 is an interactive element that, in response to user interaction, triggers the transmission of a message or the display of a presentation for authoring an message that includes the image or a reference to the image that triggers the display of action widget collection 1405. The message can be an electronic mail message, a chat or other text message, a post to a member network, or the like. The message can be transmitted to an address that is stored in a data storage device of device 105. In the illustrated implementation, share widget 1420 is an iconic graphical indicium that resembles a letter envelope and represents that the transmission of a message or the display of a presentation for authoring a message is triggered by user interaction.

In the illustrated implementation, the action widgets in collection 1405 are grouped together in an area 1435 that appears to be overlaid upon other portions of presentation 1100 that are not visible in presentation 1400. In particular, area 1435 appears to obscure at least a portion of body of text 1110 and interactive element 1135. However, image 1120 is not obscured by action widget collection 1205. Instead, image 1120 is visible in presentation 1400.

In the illustrated implementation, area 1435 is demarcated from other portions of presentation 1400 by an outer border 1440. In other implementations, area 1435 can be demarcated from other portions of presentation 1400 by color or shade, by empty expanses, or by other visual features that convey that widgets 1410, 1415, 1420 commonly belong to collection 1405.

In the illustrated implementation, outer border 1440 of area 1435 includes a pointed indicium 1445 that is directed toward the image 1120 that triggers the display of action widget collection 1405. The directionality of pointed indicium 1445 thus indicates that the actions triggered by user interaction with widgets 1410, 1415, 1420 are directed to image 1120. In the illustrated implementation, pointed indicium 1445 extends outwardly from a relatively straighter portion of border 1440.

In the illustrated implementation, widgets 1410, 1415, 1420 in collection 1405 are arranged adjacent one another to span an area 1435 that is wider than it is tall. In the illustrated implementation, area 1435 is a generally strip-shaped element that spans a majority of the width W of touchscreen 115. Other layouts of area 1435 are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115 than in the illustrated implementation, then area 1435 can be arranged differently and/or span a relatively smaller portion of touchscreen 115.

In the illustrated implementation, widgets 1410, 1415, 1420 in collection 1405 are demarcated from one another by empty expanses. In other implementations, widgets 1410, 1415, 1420 can be demarcated from one another by color or shade, by borders, or by other visual features that convey that widgets 1410, 1415, 1420 differ from one another.

In some implementations, a different action widget collection that includes least one interactive element that is not found in action widget collection 1405 and excludes at least one interactive element that is found in action widget collection 1405 can be presented on touchscreen 115 in response to user interaction with one or more interactive elements. For example, in some implementations, a different action widget collection can be displayed on touchscreen 115 in response to a user dragging a finger or other element across area 1435 in presentation 1400. In transitioning between action widget collection 1405 and such a different action widget collection, widgets can appear to scroll into and out of area 1435 in the direction that a finger or other element is dragged.

FIG. 15 is a schematic representation of a collection 1500 of electronic components. Collection 1500 can be housed in housing 110 of device 105 and includes both hardware and software components, as well as one or more data storage devices and one or more data processing devices that perform operations for displaying presentations on touchscreen 115 of device 105. For example, collection 1500 can display one or more of presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20) on touchscreen 115 of device 105.

Collection 1500 includes a display interface 1505, a phone interface 1510, an interface 1515 with a wireless transceiver, a collection of data stores 1525, 1530, and a data processing system 1535. Display interface 1505 is a component that interfaces between a data processing system 1535 and touchscreen 115. Display interface 1505 can include hardware and/or software that provide a data communication path and defines a data communication protocol for the transfer of display and user interaction information between data processing system 1535 and touchscreen 115. Display interface 1505 can include one or more of a graphic processing unit, a video display controller, a video display processor, or other display interface.

Phone interface 1510 is a component that interfaces between data processing system 1535 and a cellular or other phone. Phone interface 1510 can include hardware and/or software that provide a data communication path and define a data communication protocol for the transfer of information between data processing unit 1520 and the phone.

Wireless interface 1510 is a component that interfaces between data processing system 1535 and a wireless transceiver. Wireless interface 1510 can include hardware and/or software that provide a data communication path and define a data communication protocol for the transfer of information between data processing system 1535 and the wireless transceiver.

Data stores 1525, 1530 are collections of machine—readable information stored at one or more data storage devices. Data store 1525 stores a collection of contact information, a message log, media files, or combinations thereof. The information stored in data store 1525 can be used to generate one or more of presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20). In this regard, among the contact information that can be stored at data store 1525 is information characterizing contact's home and work telephone numbers, information characterizing a contact's home page or other contributions to a social networking site or a photosharing site, information characterizing one or more electronic mail, instant message, chat, or other messaging addresses of a contact, as well as other information such as postal address information, a photograph, and the like. In some implementations, data store 1525 can also include grouping information characterizing groups of contacts. Such a group of individuals can be specified by grouping information in data store 1525.

Among the message information that can be stored in a message log is information characterizing past electronic mail messages, chat or other text messages, social network postings, telephone calls, and/or other messages. Data store 1525 can include, e.g., information characterizing the counterparty in such messages, information characterizing the timing of the messages, information characterizing the content of the messages, information characterizing other transactional characteristics of the messages, and the like. In some implementations, data store 1525 only stores information describing a proper subset of all messages received by or sent from device 105. For example, in some implementations, data store 1525 only stores a group of the most recent messages except messages that have been marked as favorites, e.g., as described above.

Among the media file information that can be stored is the media files themselves, likenesses of the media files, references (such as a URI) to media files that are stored outside of device 105, transactional characteristics of the media files, and the like. In some implementations, data store 1525 can also include user preference information that specifies user preferences for the display of presentations such as presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20). For example, data store 1525 can include information identifying the media files, contacts, or messages that have been marked as favorites.

Data store 1530 stores one or more sets of machine-readable instructions for displaying and interpreting user interaction with presentations such as presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20). Data store 1530 can include information identifying the interactive elements that are to be displayed in response to user interaction with different categories of interactive elements. For example, data store 1530 can include information identifying the widgets that are to be displayed in response to user interaction with interactive elements that are associated with contact identifiers (e.g., widgets 230, 235, 240, 245, 250), user interaction with interactive elements that are associated with message records (e.g., widgets 530, 535, 540, 545), user interaction with interactive elements that are associated with media records (e.g., widgets 725, 730, 735, 740, 922, 924, 926, 928, 932, 934, 936, 938), interactive elements that self-referentially refer to an electronic document in which the interactive elements are found (e.g., document title 1105), interactive elements in one electronic document that refer to another electronic document or to another portion of an electronic document (e.g., interactive elements 1130, 1135), and interactive media files (e.g., images 1115, 1120, 1125). In some implementations, such information can be organized as shown in FIG. 16 below.

In some implementations, data store 1530 can also include, e.g., iconic graphical indicia used form forming the interactive elements that are to be displayed in response to user interaction with different categories of interactive elements, instructions for forming contact, message, media file, or other records using information drawn from data store 1525, instructions for interpreting user interaction with presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20) and implementing actions responsive to such user interaction, as described above.

Data processing system 1535 is a system of one or more digital data processing devices that perform operations in accordance with the logic of one or more sets of machine-readable instructions. Data processing system 1535 can implement one or more modules for performing operations described herein Among the modules that can be implemented by data processing system 1535 are a user interface module 1540, a variety of different server interface modules 1545, and a data aggregation module 1550.

User interface module 1540 is a set of data processing activities that displays presentations such as presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20) on touch screen 115, interprets user interaction with such presentations, and performs data processing and other actions triggered by such user interaction. The operations performed by user interface module 1540 can be performed in accordance with instructions in data store 1530.

Server interface modules 1545 are sets of data processing activities that interface with servers that are external to device 105, such as servers 165, 170, 175, 180 (FIG. 1). In general, each server interface module 1545 is dedicated to obtaining information suitable for display in a presentation from a different server. Server interface modules 1545 can be, e.g., an electronic mail or message clients, as well as dedicated clients tailored to the characteristics of a specific social or photosharing network.

The server interface modules 1545 can obtain information for display by issuing service requests to a server and extracting the formation from the responses to those requests. The requests and responses are communicated from device 105 to the relevant server over one or both of interfaces 1510, 1515. The information extracted from the responses to the service requests can include, e.g., incoming electronic mail and text messages, a name or other identifier of a counterparty, an excerpt or other content from a posting on a photosharing or social network site, a likeness of an image, a counterparty's location, transactional information regarding a message or a media file, and the like.

Data aggregation module 1550 is a set of data processing activities that aggregates information drawn from data store 1525 and server interfaces 1545 for display of that information in presentations such as presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20). In some implementations, data aggregation module 1450 compares the names or other identifiers of counterparties on a message with names or other identifiers information in contact information in data store 1525 to, e.g., locate a graphical indicium such as graphical indicia 580 that characterizes the counterparty on the message for use in forming message records.

In general, data aggregation module 1550 includes rules for filtering messages or other items that are characterized in a presentation such as presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20).

The items that are characterized in a presentation can be limited in several different ways, including whether the items have been marked as favorites, whether the items involved a particular counterparty, and/or whether the items are found in a particular memory location, such as a particular file, directory, or location on a network. Data aggregation module 1550 can thus filter items to implement these and other limitations.

In some implementations, data aggregation module 1550 can also include extraction rules for extracting appropriate information for presentation from, e.g., electronic mail and other messages stored in data store 1525 and the responses to service requests received by server interfaces 1545. For example, data aggregation module 1550 can extract the subject line of electronic mail messages or a title of a posting on a photosharing or social network for display in a presentation such as presentations 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1900, 2000 (FIGS. 2-14, 19, 20).

FIG. 16 is a schematic representation of a collection 1600 of information identifying the interactive elements that are to be displayed in response to user interaction with different categories of interactive elements. Collection 1600 can be stored in data store 1530 of device 105 (FIG. 15). In the illustrated implementation, collection 1600 is implemented in a data table 1605. Data table 1605 organizes the interactive elements that are to be displayed in response to user interaction with different categories of interactive elements into rows 1610, 1612, 1614, 1615, 1620, 1625, 1630, 1635, 1640, 1645, 1650, 1655 and columns 1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678, 1680, 1682. Each row 1610, 1612, 1614,1615, 1620, 1625, 1630, 1635, 1640, 1645, 1650, 1655 is associated with a different category of interactive element that are to trigger the display of additional interactive elements. Each column 1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678, 1680, 1682 includes data specifying whether a particular additional interactive element is to be displayed in response to user interaction with the category of interactive element associated with respective of rows 1610, 1612, 1614,1615, 1620, 1625, 1630, 1635, 1640, 1645, 1650, 1655.

For example, in the illustrated implementation, the data in columns 1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678, 1680, 1682 specify that user interaction with an interactive element that is associated with a contact identifier (e.g., any of widgets 230, 235, 240, 245, 250) are to trigger the display of a view interactive element, a delete interactive element, an edit interactive element, a text interactive element, a phone interactive element, and an email interactive element.

As another example, in the illustrated implementation, the data in columns 1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678, 1680, 1682 specify that user interaction with an interactive element that is associated with an media record (e.g., any of widgets 725, 730, 735, 740, 922, 924, 926, 928, 932, 934, 936, 938) are to trigger the display of a save interactive element, a favorite interactive element, a view interactive element, a delete interactive element, an edit interactive element, a post-to-social-network interactive element, and an information interactive element.

The interactive elements specified in columns 1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678, 1680, 1682 need not be displayed in a single action widget collection but rather can be displayed in multiple action widget collections that are accessible, e.g., in response to a user dragging a finger or other element across areas 335, 635, 835, 1035, 1235, 1335 in presentations 300, 400, 600, 800, 1000, 1200, 1300, 1400.

FIG. 17 is a schematic representation of an implementation of a collection of activities 1700 in an asymmetric social network. Activities 1700 occur in the context of a single level asymmetric social network in which a first member can become a follower of a second member without the second member necessarily becoming a follower of the first member. In the illustrated implementation, a first user “Apple” authors a post 1705 using a data processing device (e.g., any of devices 105, 140, 182, 190 (FIG. 1)). The data processing device can also receive input from the first user that triggers “posting” of post 1705. Post 1705 is accordingly transmitted at 1710 to social network server 1755 (e.g., server 170 (FIG. 1)), which receives the transmission, identifies the transmission as a posting by the first user, and identifies members who are related to the first member as followers in the network. Social network server 1755 then relays content from post 1705 to those followers at 1715. These followers can receive and review the transmitted content at one or more data processing devices (e.g., devices 105, 140, 182, 190 (FIG. 1)).

One of the followers, namely, second user “Orange,” may chose to reply to the content from post 1705 and author a reply post 1720 using a data processing device (e.g., devices 105, 140, 182, 190 (FIG. 1)). The data processing device can also receive input from the second user that triggers posting of reply post 1720. Reply post 1720 thus reposts at least some of the content from post 1705 to the asymmetric social network. Reply post 1720 is accordingly transmitted at 1725 to asymmetric social network server 1755, which receives the transmission, identifies the transmission as a reply posting by the second user, and identifies members who are related to the second member as followers in the network. Social network server 1755 also identifies the author of the post that is being replied to, namely, first user “Apple.” Social network server 1755 then relays content from reply post 1720 to both the followers of second user “Orange” at 1730 and to the author of post 1705 at 1735. The followers of second user “Orange” can receive and review the transmitted content from reply post 1720 at one or more data processing devices (e.g., devices 105, 140, 182, 190 (FIG. 1)). The author of post 1705 (i.e., first user “Apple”) can receive and review the transmitted content from reply post 1720 at one or more data processing devices (e.g., devices 105, 140, 182, 190 (FIG. 1)).

As a consequence of the asymmetry in the relationships between members, there is a directionality to the flow of posts in the illustrated asymmetric social network. In particular, posts tends to preferentially flow in the direction indicated by arrow 1740, i.e., from an author to that author's followers. In the illustrated example, there is an exception to this directionality, namely, the transmission of content from reply post 1720 to the author of post 1705 at 1735. Nevertheless, the preferred directionality is in the direction indicated by arrow 1740.

FIG. 18 is a schematic representation of an implementation of a collection of activities 1800 in an asymmetric social network. Activities 1800 occur in the context of a multiple level asymmetric social network in which a first member can become either a “public follower” or a “selected follower” of a second member without the second member necessarily becoming a follower of the first member. A public follower is a member of the asymmetric social network who receives a proper subset of the posts (i.e., the public posts) authored by the followed member. A selected follower is a member of the asymmetric social network who generally receives all of the posts (i.e., both public and private posts) authored by the followed member. In some implementations, a selected follower relationship between two members is established by an invitation/response protocol that effectively requires the consent of both members to the selected follower relationship.

In the illustrated implementation, first user “Apple” authors a post 1805 using a data processing device (e.g., devices 105, 140, 182, 190 (FIG. 1)). In the course of authoring post 1805, first user “Apple” indicates whether post 1805 is a public or a private post, e.g., by interacting with an interactive element such as a widget that designates the post as a public or private post. Post 1805 includes information characterizing the indication.

In response to input from the first user that triggers the posting of post 1805, post 1805 is accordingly transmitted at 1815 to social network server 1755, which receives the transmission, identifies the transmission as a posting by the first user, and determines whether post 1805 is to be posted publicly or privately. In response to determining that post 1805 is to be posted publicly, server 1755 identifies both public and selected followers of first user “Apple” and relays content from post 1805 to those followers at 1820 and at 1825. Server 1755 also relays content from a post 1805 that is to be posted publicly to the public profile of first user “Apple” at 1830. A profile is a representation of an individual or a group of individuals on a member network. A profile generally includes details such as a name, a hometown, interests, pictures, and other information characterizing an individual or a group of individuals. A profile is public if other network members (or even the general public) do not require the consent of the represented individual or group in order to access the profile.

In response to determining that post 1805 is to be posted privately, server 1755 identifies selected followers of first user “Apple” and relays content from post 1805 to those followers at 1820. Private posts 1805 are not relayed to public followers of first user “Apple” or to the public profile of first user “Apple.” In either case, the followers to whom post 1805 is relayed can receive and review the transmitted content at one or more data processing devices (e.g., devices 105, 140, 182, 190 (FIG. 1)).

Activities 1800 can also be used in posting a reply post (not shown). In particular, the author of a reply post can indicate whether a reply post is to be publicly or privately posted. In some implementations, a reply to a private post may be forbidden or delete information identifying the author of the replied-to post.

FIG. 19 is a schematic representation of the display of a presentation 1900 on a portion of touchscreen 115 of device 105. Presentation 1900 is displayed on touchscreen 115 in response to user interaction with interactive widget 235 that is associated with contact identifier 210. The user interaction with interactive widget 235 that triggers the display of presentation 1900 can be, e.g., a single or a double click or tap.

As shown, presentation 1900 shares features with presentation 300, including action widget collection 305. However, the action widgets in collection 305 are grouped together in an area 1905 that appears to have displaced areas 255 which are below the contact that is associated with the interactive widget 235 that triggers the display of action widget collection 305. In particular, areas 255 that include identifiers 215, 220, 225 appear to have been shifted downward to accommodate area 1905. As a result, area 1905 does not appear overlaid upon and does not appear to obscure at least a portion of area 255 that includes information characterizing a contact that differs from the contact that is associated with the interactive widget 235 that triggers the display of action widget collection 305.

As a result of this apparent displacement of some of the areas 255, at least a portion of one or more areas 255 may no longer be visible on touchscreen 115 of device 105. In particular, in some implementations, touchscreen 115 may not be large enough continue to display all areas 255 without resizing after shifting to accommodate area 1905. Such implementations are schematically illustrated in FIG. 19 by the area 255 which includes identifier 225 and interactive widget 250. In particular, this area is shown cut off, with a portion of this area outside the area of touchscreen 115 that displays presentation 1900.

In other implementations, one or more areas 255 can be shifted upward to accommodate area so that the contact identifier that is associated with the interactive widget that triggers the display of action widget collection 305 is not obscured by action widget collection 305.

In the illustrated implementation, area 1905 is demarcated from other portions of presentation 1900 by a border 1910. In other implementations, area 1905 can be demarcated from other portions of presentation 1900 by color or shade, by empty expanses, or by other visual features that convey that widgets 310, 315, 320, 325, 330 commonly belong to collection 305. In the illustrated implementation, border 1910 of area 1905 includes a pointed indicium 345 that is extends outwardly from a relatively straighter portion of border 1910 and extends across border 260 that demarcates area 255.

In the illustrated implementation, area 1905 that is wider than it is tall. In the illustrated implementation, area 1905 spans a majority of the width of touchscreen 115. In this, the relative sizes of the height and width dimensions of area 1905 follow the relative sizes of the height and width dimensions of areas 255. In particular, areas 255 are generally strip-shaped elements that span a majority of the width W of touchscreen 115. Area 19055 is also a generally strip-shaped element that spans a majority of the width W of touchscreen 115. In the illustrated implementation, the height of the strip of area 1905 (i.e., in the direction of height H of touchscreen 115) is smaller than the height of the strips of areas 255, although this is not necessarily the case. Indeed, in some implementations, the height of the strip of area 1905 can be the same as or larger than the height of the strips of areas 255. Other layouts of area 1905 are possible, e.g., in other contexts. By way of example, if device 105 includes a relatively larger touchscreen 115 than in the illustrated implementation, then area 1905 can be arranged differently and/or span a relatively smaller portion of touchscreen 115.

Such an apparent displacement of identifiers and associated interactive elements can be used in other contexts. For example, rather than apparently overlaying area 635 on area 555 that includes information characterizing a different message as shown in presentation 600 (FIG. 6), one or more areas 555 can appear to have been shifted upward or downward to accommodate an area that includes action widget collection 605. As another example, rather than apparently overlaying area 835 on area 755 that includes information characterizing a different media file as shown in presentation 800 (FIG. 8), one or more areas 755 can appear to have been shifted upward or downward to accommodate an area that includes action widget collection 805. As another example, rather than apparently overlaying area 1035 on areas 955 that includes information characterizing different media files as shown in presentation 1000 (FIG. 10), two or more areas 955 can appear to have been shifted upward or downward to accommodate an area that includes action widget collection 1005.

FIG. 20 is a schematic representation of the display of a presentation 2000 on a portion of touchscreen 115 of device 105. Presentation 2000 is displayed on touchscreen 115 in response to user interaction with e-mail contact widget 325 in action widget collection 305 that is itself displayed in response to user interaction with interactive widget 235. The user interaction with e-mail contact widget 325 that triggers the display of presentation 2000 can be, e.g., a single or a double click or tap.

In addition to the displayed features shared with presentation 300, presentation 2000 also includes an action disambiguation section 2005. Disambiguation section 2005 is a display area in presentation 2000 that includes interactive elements for resolving ambiguity as to the particular action that is to be triggered by user interaction with an interactive widget in action widget collection 305.

In the illustrated implementation, disambiguation section 2005 includes a pair of disambiguation widgets 2010, 2015 and a disambiguation save widget 2020. Disambiguation widgets 2010, 2015 are interactive elements that, in response to user interaction, resolve ambiguity as to the action that is to be performed on the identified contact. In the illustrated instance, disambiguation widgets 2010, 2015 disambiguate the action triggered by e-mail contact widget 325, namely, the electronic mail address of the contact which is addressed by user interaction with e-mail contact widget 325. In other instances, disambiguation widgets 2010, 2015 can disambiguate other actions. For example, in some instances, the action triggered by telephone contact widget 320 (e.g., which telephone number of the contact is called), the action triggered by contact social network interaction widget 330 (e.g., which social network of the contact mediates the interaction), the action triggered by widget 410 (e.g., which chat or text message functionality or address is used), the action triggered by a save widget 1215, 1415 (e.g., where the image or document is to be saved), the action triggered by a share widget 1220, 1420 (e.g., how the image, a reference to the image, or a reference to the electronic document is to be shared), or other action can be disambiguated by disambiguation widgets 2010, 2015. Disambiguation widgets 2010, 2015 can thus be presented in one or more of areas 335, 635, 835, 1035, 1235, 1435, 1905.

In some implementations, the action which is disambiguated by disambiguation widgets 2010, 2015 is indicated by an indicium 2022 associated with a particular action widget in collection 305. In the illustrated implementation, indicium 2022 is a border 2022 that surrounds mail contact widget 325. In other implementations, indicium 2022 can be shading, coloring, or another visual features that distinguishes mail contact widget 325 from the other widgets in action widget collection 305.

In the illustrated implementation, disambiguation widgets 2010, 2015 are each a textual presentation of a different electronic mail address of the contact. User interaction with one of disambiguation widgets 2010, 2015 triggers the transmission of an electronic mail message to that respective address or the display of a presentation for authoring an electronic mail message addressed to that respective address. The user interaction that triggers the such a transmission or presentation can be, e.g., a single or a double click or tap on a respective one of disambiguation widgets 2010, 2015.

Disambiguation save widget 2020 is an interactive element that, in response to user interaction, saves the disambiguation provided by disambiguation widgets 2010, 2015. The saved disambiguation can be stored with other user preferences (e.g., in data store 1525) and used to disambiguate subsequent actions without additional user disambiguation. For example, the resolution of electronic mail address ambiguity by user interaction with disambiguation widgets 2010, 2015 can be saved and subsequent electronic mail communications to the contact identified by identifier 210 can be addressed to the selected electronic mail address by default. In the illustrated implementation, disambiguation save widget 2020 resembles a check box that is associated with text 2025 that sets forth the consequences of user interaction with disambiguation save widget 2020.

In the illustrated implementation, disambiguation section 2005 displayed within area 335 that includes action widget collection 305 and that appears to be overlaid upon other portions of presentations 200, 300 that are not visible in presentation 2000. In particular, area 335 appears to obscure at least a portion of a pair of areas 255 that include information characterizing contacts that differs from the contact that is associated with the interactive widget 235 that triggers the display of action widget collection 305. In other implementations, identifiers and their associated interactive elements can be apparently displaced by area 335 (FIG. 19).

In the illustrated implementation, disambiguation section 2005 displayed within border 340 that demarcates area 335 from the remainder of presentation 2000. In other implementations, area 335 can be demarcated from other portions of presentation 2000 by color or shade, by empty expanses, or by other visual features that convey that action widget collection 305 is associated with disambiguation section 2005. In the illustrated implementation, disambiguation section 2005 is positioned on the opposite side of action widget collection 305 from contact identifier 210 that is associated with the interactive widget 235 that triggers the display of action widget collection 305.

Embodiments of the subject matter and the operations described in this specification can be implemented in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Embodiments of the subject matter described in this specification can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions, encoded on computer storage medium for execution by, or to control the operation of, data processing apparatus.

Alternatively or in addition, the program instructions can be encoded on an artificially-generated propagated signal, e.g., a machine-generated electrical, optical, or electromagnetic signal, that is generated to encode information for transmission to suitable receiver apparatus for execution by a data processing apparatus. A computer storage medium can be, or be included in, a computer-readable storage device, a computer-readable storage substrate, a random or serial access memory array or device, or a combination of one or more of them. Moreover, while a computer storage medium is not a propagated signal, a computer storage medium can be a source or destination of computer program instructions encoded in an artificially-generated propagated signal. The computer storage medium can also be, or be included in, one or more separate physical components or media (e.g., multiple CDs, disks, or other storage devices).

The operations described in this specification can be implemented as operations performed by a data processing apparatus on data stored on one or more computer-readable storage devices or received from other sources.

The term “data processing apparatus” encompasses all kinds of apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, a system on a chip, or multiple ones, or combinations, of the foregoing The apparatus can include special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit). The apparatus can also include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or a combination of one or more of them. The apparatus and execution environment can realize various different computing model infrastructures, such as web services, distributed computing and grid computing infrastructures.

A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub-programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.

The processes and logic flows described in this specification can be performed by one or more programmable processors executing one or more computer programs to perform actions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit).

Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for performing actions in accordance with instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. However, a computer need not have such devices. Moreover, a computer can be embedded in another device, e.g., a mobile telephone, a personal digital assistant (PDA), a mobile audio or video player, a tablet computer, a game console, a Global Positioning System (GPS) receiver, or a portable storage device (e.g., a universal serial bus (USB) flash drive), to name just a few. Devices suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.

To provide for interaction with a user, embodiments of the subject matter described in this specification can be implemented on a computer having a display device, e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input. In addition, a computer can interact with a user by sending documents to and receiving documents from a device that is used by the user; for example, by sending web pages to a web browser on a user's client device in response to requests received from the web browser.

While this specification contains many specific implementation details, these should not be construed as limitations on the scope of any inventions or of what may be claimed, but rather as descriptions of features specific to particular embodiments of particular inventions. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

Thus, particular implementations have been described. Other implementations are within the scope of the following claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In certain implementations, multitasking and parallel processing may be advantageous.

Claims

1. A method performed by a system comprising one or more data processing devices and a touchscreen display, the method comprising:

displaying, by the system on the touchscreen display, several identifiers, each identifier comprising one or more graphical or textual elements that identify an item, each identifier associated with a respective interactive element;
receiving, by the system, user interaction with a first of the interactive elements that is associated with a first of the identifiers;
in response to the user interaction, the system displaying a collection of action widgets on the touchscreen display, the action widgets comprising iconic graphical indicia that each represent an action triggered by user interaction therewith, the iconic graphical indicia displayed adjacent one another in a strip-shaped area that is wider than it is high, the strip-shaped area being displaced vertically on the touchscreen display from the first identifier so that the first identifier is visible on the touchscreen notwithstanding the display of the collection of action widgets;
receiving, by the system, user interaction with a first of the action widgets that is in the collection displayed on the touchscreen display; and
performing, by the system, the action represented by the first of the action widgets on the item identified by the first identifier.

2. The method of claim 1, wherein displaying the collection of action widgets on the touchscreen display comprises apparently displacing one or more of identifiers away from the first identifier to accommodate the strip-shaped area between the displaced one or more of identifiers and the first identifier.

3. The method of claim 1, wherein:

the method further comprises: displaying a disambiguation interactive element on the touchscreen display on a side of the strip-shaped area opposite the first identifier, and receiving user interaction with the disambiguation interactive element, the user interaction disambiguating the action represented by the first of the action widgets; and
performing the action represented by the first of the action widgets comprises performing the action in accordance with the disambiguation provided by the user interaction with the disambiguation interactive element.

4. The method of claim 1, wherein displaying the collection of action widgets comprises displaying a pointed indicium that is directed toward an area in which the first identifier is found.

5. The method of claim 4, wherein:

a border surrounds the collection of action widgets, the border demarcating the collection of action widgets from other portions of the touchscreen display; and
the pointed indicium extends outwardly from a relatively straighter portion of the border toward the area in which the first identifier is found.

6. The method of claim 1, wherein each collection of information is displayed in a strip-shaped area that is wider than it is high.

7. The method of claim 6, wherein each strip-shaped area occupies a majority of the width of the touchscreen display.

8. The method of claim 6, wherein the identifiers are aligned horizontally in the strip-shaped areas.

9. The method of claim 1, further comprising:

receiving, by the system, user interaction dragging across the strip-shaped area; and
in response to the user interaction, the system displaying a second collection of action widgets on the touchscreen display, the second collection of action widgets including at least one action widget that is not found in the action widget collection and excluding at least one action widget that is found in the action widget collection.

10. The method of claim 1, wherein:

the first identifier identifies a first message; and
the action widgets in the collection include: a reply widget that, in response to user interaction, triggers a display of a presentation for authoring a reply to the first message; and a repost widget that, in response to user interaction, triggers reposting of the first message to a social network.

11. The method of claim 1, wherein:

the first identifier identifies a first contact; and
the action widgets in the collection include: a telephone contact widget that, in response to user interaction, triggers a telephone call to the first contact; and a message widget that, in response to user interaction, triggers a display of a presentation for authoring a message addressed to the first contact.

12. The method of claim 1, wherein:

the first identifier identifies a first media file; and
the action widgets in the collection include: a telephone contact widget that, in response to user interaction, triggers a telephone call to the first contact; and a message widget that, in response to user interaction, triggers a display of a presentation for authoring a message addressed to the first contact.

13. A device comprising a computer storage medium encoded with a computer program, the program comprising instructions that when executed by a system comprising one or more data processing devices and a touchscreen display, cause the one or more data processing devices to perform operations, the operations comprising:

displaying an interactive element in a presentation on the touchscreen display;
receiving user interaction with the interactive element; and
displaying, in response to the user interaction, a collection of action widgets apparently overlaid on the presentation, the action widgets comprising iconic graphical indicia that each represent an action triggered by user interaction therewith, the iconic graphical indicia displayed adjacent one another in an area that is wider than it is high and that is associated with a visible indicium that indicates to what the action triggered by user interaction with the widgets in the collection are directed, the area being displaced on the touchscreen display from the interactive element so that the interactive element is visible in the presentation notwithstanding the display of the collection of widgets.

14. The device of claim 13, wherein the operations further comprise:

receiving user interaction with a first of the action widgets that is in the collection displayed on the touchscreen display; and
performing the action represented by the first of the action widgets in accordance with the visible indicium.

15. The device of claim 14, wherein:

the operations further comprise: displaying a disambiguation interactive element on the touchscreen display, and receiving user interaction with the disambiguation interactive element, the user interaction disambiguating the action to be performed with the first of the action widgets; and
performing the action represented by the first of the action widgets comprises performing the action in accordance with the disambiguation provided by the user interaction with the disambiguation interactive element.

16. The device of claim 14, wherein:

the visible indicium indicates that the action triggered by user interaction with the widgets in the collection is directed to a message; and
the action widgets in the collection include: a reply widget that, in response to user interaction, triggers a display of a presentation for authoring a reply to the first message; and a repost widget that, in response to user interaction, triggers reposting of the first message to a social network.

17. The device of claim 14, wherein the visible indicium indicates that the action triggered by user interaction with the action widgets in the collection is directed to a hyperlink that refers, in a reference, to an electronic document or to a portion of an electronic document.

18. The device of claim 17, wherein the widgets in the collection include:

an open widget that, in response to user interaction, triggers opening of the referenced electronic document or the referenced portion of the electronic document; and
a share widget that, in response to user interaction, triggers transmission of a message or display of a presentation for authoring a message that includes the reference.

19. The device of claim 14, wherein the area in which the iconic graphical indicia are displayed is demarcated from other portions of the presentation by a border that surrounds the collection of widgets.

20. The device of claim 19, wherein the visible indicium comprises a pointed indicium that extends outwardly from a relatively straighter portion of the border.

21. The device of claim 19, wherein the interactive element is encompassed by the border.

22. A handheld data processing system comprising:

a touchscreen display; and
a collection of one or more data processing devices that perform operations in accordance with one or more collections of machine-readable instructions, the operations including instructing the touchscreen display to display, in response to user interaction with a first interactive element displayed on the touchscreen display in association with an identifier of a contact, a first collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified contact, and display, in response to user interaction with a second interactive element displayed on the touchscreen display in association with an identifier of a message, a second collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified message,
wherein the respective of the first and the second interactive elements are visible on the touchscreen display notwithstanding the display of the respective of the first or the second collection of action widgets.

23. The handheld data processing system of claim 22, wherein the operations include instructing the touchscreen display to display, in response to user interaction with a third interactive element displayed on the touchscreen display in association with an identifier of a media file, a third collection of action widgets comprising iconic graphical indicia that each represent an action directed to the identified media file.

24. The handheld data processing system of claim 22, wherein each of the first interactive element and the second interactive element are displayed on the touchscreen display in conjunction with a collection of other interactive elements, each of the other interactive elements associated with an identifier of another contact or another message.

25. The handheld data processing system of claim 24, wherein the identifiers in a presentation are displayed in respective strip-shaped areas that include information characterizing contacts, media files, or messages.

26. The handheld data processing system of claim 25, wherein the identifiers are aligned horizontally in the strip-shaped areas.

27. The handheld data processing system of claim 22, wherein each of the collections of action widgets is associated with a pointed indicium that is directed to indicate the respective contact or message to which the actions are directed.

28. The handheld data processing system of claim 27, wherein the operations including instructing the touchscreen display to display:

a border surrounding the first and the second action widget collections, the border demarcating the first and the second action widget collections from other portions of the touchscreen display; and
the pointed indicium extending outwardly from a relatively straighter portion of the borders toward the area in which the identifier of the respective contact or message is found.

29. The handheld data processing system of claim 22, wherein the operations including instructing the touchscreen display to display the iconic graphical indicia of the first and the second action widget collections adjacent one another in a strip-shaped area that is wider than it is high, the strip-shaped area being displaced vertically on the touchscreen display from the respective of the first and the second interactive elements.

30. The handheld data processing system of claim 29, wherein the operations further include:

receiving user interaction dragging across the strip-shaped area that includes the iconic graphical indicia; and
in response to the dragging user interaction, instructing the touchscreen display to display a second collection of action widgets in the strip-shaped area, the second collection of action widgets including at least one action widget that is not found in the first or the second action widget collection and excluding at least one action widget that is found in the first or the second action widget collection.
Patent History
Publication number: 20110099507
Type: Application
Filed: Apr 9, 2010
Publication Date: Apr 28, 2011
Applicant: GOOGLE INC. (Mountain View, CA)
Inventors: Christopher D. Nesladek (San Francisco, CA), Jeffrey A. Sharkey (Sunnyvale, CA)
Application Number: 12/757,244
Classifications
Current U.S. Class: Entry Field (e.g., Text Entry Field) (715/780); Pull Down (715/843); Selectable Iconic Array (715/835); Extracting Call Id From Transmitted Signal (379/142.04); Touch Panel (345/173); Gesture-based (715/863)
International Classification: G06F 3/048 (20060101); H04M 15/06 (20060101); G06F 3/041 (20060101); G06F 3/033 (20060101);