Abstract:
Some embodiments provide a mapping application that includes a novel compass control that can be used to navigate a presentation of a map. The mapping application displays one of a two-dimensional (2D) presentation of the map and a three-dimensional (3D) presentation of the map at a given time. The compass control may be used to rotate a view of the map based on a first type of input to the compass control and transition between the 2D presentation and the 3D presentation based on a second type of input to the compass control. In addition to causing the application to perform the various operations, the compass control in some embodiments serves as (1) an indicator as to whether the mapping application is currently in a 2D mode or a 3D mode and (2) an indicator that continuously points to north.
Abstract:
Systems and methods for proactively assisting users with accurately locating a parked vehicle are disclosed herein. An example method includes: automatically, and without instructions from a user: determining that a user of the electronic device is in a vehicle that has come to rest at a geographic location. Upon determining that the user has left the vehicle at the geographic location, the method includes automatically, and without instructions from a user: determining whether positioning information, retrieved from the location sensor to identify the geographic location, satisfies accuracy criteria. Upon determining that the positioning information does not satisfy the accuracy criteria, the method includes: providing a prompt to the user to input information about the geographic location. In response to providing the prompt, the method includes receiving information from the user about the geographic location and storing the information as vehicle location information.
Abstract:
A mapping application that intelligently places distance labels along a route in a map is disclosed. A distance label placed at a particular position of the route shows the distance to the particular location from the starting point of the route. Distance labels allow the user of the map to quickly appreciate the distances between the various points of interest (e.g., maneuvers) along the route. In some mapping applications that display the route as a list of driving directions, the distance labels are placed alongside the list of driving directions, and each distance label is associated with a maneuver in the list of directions.
Abstract:
An avatar editing environment is disclosed that allows users to create custom avatars for use in online games and other applications. Starting with a blank face the user can add, rescale and position different elements (e.g., eyes, nose, mouth) on the blank face. The user can also change the shape of the avatar's face, the avatar's skin color and the color of all the elements. In some implementations, touch input and gestures can be used to manually edit the avatar. Various controls can be used to create the avatar, such as controls for resizing, rotating, positioning, etc. The user can choose between manual and automatic avatar creation. The avatar editing environment can be part of a framework that is available to applications. One or more elements of the avatar can be animated.
Abstract:
A sharing extension point receives a request from a host application for sharing content, the sharing extension point being one of the extension points of an extension framework of an operating system, each corresponding to a common interface to extend a predefined functionality of one application to another application. In response, a sharing extension capable of providing content sharing services is launched. Data representing a share sheet created by the sharing extension is injected into a content viewer within the host application as a share sheet clone, where the share sheet clone has a reduced resolution image of the content displayed therein. In response to receiving a commit command for sharing, the actual content is retrieved from the host application and the retrieved content is transmitted to the sharing extension to enable the sharing extension to post the share sheet on a sharing platform.
Abstract:
Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display are disclosed herein. In one aspect, a method includes presenting content in a first application. At least a portion of the content is presented without requiring input from a user. The method further includes receiving a request to open a second application. In response to receiving the request, the second application is presented with an input-receiving field. Before receiving any user input at the input-receiving field, a selectable user interface object is displayed with an indication that the portion of the content was viewed in the first application, allowing the user to paste at least the portion of the content into the input-receiving field. In response to detecting a selection of the selectable user interface object, the portion of the content is pasted into the input-receiving field.
Abstract:
A device implementing a system for providing query completion suggestions includes at least one processor configured to receive a partial query, and derive one or more query completion suggestions for the partial query from content items that are locally stored on the device, each respective query completion suggestion being associated with metadata extracted from one of the content items from which the respective query completion suggestion was derived. The at least one processor is further configured to rank the one or more query completion suggestions based at least in part on the metadata associated with each of the one or more query completion suggestions. The at least one processor is further configured to provide, for display, at least one of the one or more ranked query completion suggestions.
Abstract:
Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display are disclosed herein. In one aspect, a method includes obtaining information identifying a first physical location viewed by a user in a first application. The method further includes detecting a first input. In response to detecting the first input: a second application is identified that is capable of accepting geographic location information; and an affordance is presented that is distinct from the first application, with a suggestion to open the second application. The suggestion includes information about the first physical location. The method further includes detecting a second input at the affordance. In response to detecting the second input at the affordance, the second application is opened and populated to include information that is based at least in part on the information identifying the first physical location.
Abstract:
Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display are disclosed herein. In one aspect, a method includes executing, on the device, an application in response to an instruction from a user of the electronic device. While executing the application, the method further includes collecting usage data. The usage data at least includes one or more actions performed by the user within the application. The method also includes: automatically, without human intervention, obtaining at least one trigger condition based on the collected usage data and associating the at least one trigger condition with a particular action of the one or more actions performed by the user within the application. Upon determining that the at least one trigger condition has been satisfied, the method includes providing an indication to the user that the particular action associated with the trigger condition is available.