Sharing of captured content
By outputting a consistent user interface on the computing device, the problem of inconsistent interfaces when capturing content is solved, the user experience and efficiency are improved, and the power consumption is reduced.
Patent Information
- Application Number
- CN202380032773.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-04-04
- Filing Date
- 2023-03-30
- Publication Date
- 2024-12-17
AI Technical Summary
The lack of consistency of the user interface when existing computing devices capture and share content, making it difficult for users to quickly and easily perform common functions such as editing and cross-application/device sharing, increasing user interaction and processing when using different capture technologies. The load of the device and consumes battery power.
By receiving user input to captured content, the computing device outputs consistent graphical user interface (GUI) elements, including editing, cross-device sharing, and cross-application sharing actions, responding to user-selected actions, ensuring that users can be consistent regardless of the capture method. edit and share content on the interface.
提高了用户界面的熟悉度和响应速度,减少了用户输入量和处理器循环,降低了电池消耗,实现了更快速和简便的内容编辑和共享。
Smart Images

Figure CN119156591A_ABST
Abstract
Description
Background Art
[0001] The user can interact with the computing device to capture the content being displayed by the display device to move the captured content between applications and / or between computing devices. For example, the user can capture the content by taking a screenshot, by copying the content to one or more clipboards, or by using a sharing function provided by the operating system of the computing device. Summary of the invention
[0002] In general, the technology of the present disclosure relates to technologies for enabling computing devices to provide users with a consistent user experience for sharing captured content with applications and devices. Users of computing devices can capture content in a variety of ways, such as by copying the content or otherwise saving the content to one or more clipboards, taking screenshots, or using sharing actions provided by the operating system of the computing device. Regardless of the manner in which the user captures the content, the computing device can output a consistent user interface that enables the user to take action on the captured content. Specifically, the computing device can output a visually consistent user interface indicating editing actions and sharing actions in response to performing a capture action to capture content, regardless of how the content is captured or edited by the computing device, to enable the user to edit the captured content and share the captured content or the edited captured content across applications and devices.
[0003] In some aspects, the technology described herein relates to a method comprising: receiving, by one or more processors of a computing device, a first indication of user input corresponding to a capture action to capture content; in response to the content being captured, outputting, by the one or more processors, a graphical user interface (GUI) element including indications of multiple actions for display at a display device, wherein the multiple actions include one or more of an editing action, a cross-device sharing action, a cross-application sharing action, or one or more recommended actions associated with the content; receiving, by the one or more processors, a second indication of user input corresponding to a selection of an action from the multiple actions indicated by the GUI element; and in response to receiving the second indication of user input corresponding to a selection of an action, performing, by the one or more processors, an action.
[0004] In some aspects, the technology described herein relates to a computing device comprising: a memory; and one or more processors configured to: receive a first indication of user input corresponding to a capture action for capturing content; in response to the content being captured, output a graphical user interface (GUI) element including indications of multiple actions for display at a display device, wherein the multiple actions include one or more of an editing action, a cross-device sharing action, a cross-application sharing action, or one or more recommended actions associated with the content; receive a second indication of user input corresponding to a selection of an action from the multiple actions indicated by the GUI element; and in response to receiving the second indication of user input corresponding to a selection of an action, perform the action.
[0005] In some aspects, the technology described herein relates to a non-transitory computer-readable storage medium that includes instructions that, when executed by one or more processors, cause one or more processors of a computing device to: receive a first indication of user input corresponding to a capture action to capture content; in response to the content being captured, output a graphical user interface (GUI) element including indications of multiple actions for display at a display device, wherein the multiple actions include one or more of an editing action, a cross-device sharing action, a cross-application sharing action, or one or more recommended actions associated with the content; receive a second indication of user input corresponding to a selection of an action from the multiple actions indicated by the GUI element; and in response to receiving the second indication of user input corresponding to a selection of an action, perform the action.
[0006] The details of one or more examples are set forth in the accompanying drawings and the description below.Other features, objects, and advantages of the disclosure will be apparent from the description and drawings, and from the claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] Figures 1A to 1D is a conceptual diagram illustrating an example computing device in accordance with one or more aspects of the present disclosure.
[0008] Figure 2 is a block diagram illustrating additional details of an example computing device according to one or more aspects of the present disclosure.
[0009] Figure 3 is a block diagram illustrating an example computing device that outputs graphical content for display at a remote device in accordance with one or more techniques of this disclosure.
[0010] Figure 4 is a flow diagram illustrating example operations performed by an example computing device configured to perform notification management in accordance with one or more aspects of the present disclosure. DETAILED DESCRIPTION
[0011] In general, the technology of the present disclosure relates to technologies for computing devices to provide users with a consistent user experience for sharing captured content with applications and devices. Users of computing devices may often use computing devices to capture content in order to share such captured content with other applications and / or devices. For example, a user may use a smart phone to copy the uniform resource locator (URL) of a web link in order to share the web link with a friend, or may use a smart phone to send a picture from the smart phone to the user's laptop. A user of a computing device may use the computing device to capture content being displayed by a display device in a variety of ways, such as via copying the content, taking a screenshot, or using a sharing action (e.g., a share sheet) provided by an operating system of the computing device.
[0012] The user may be result-oriented when attempting to capture and share content. That is, the user may be primarily concerned with sharing the captured content when capturing content, and may not be very concerned with the specific manner in which the content to be shared is captured. Thus, if the user is unable to capture the specific content that the user wants to share using the specific manner of capturing content, the user may switch to another manner of capturing content to capture and share the specific content. For example, if the user is unable to copy the specific content that the user wants to share, the user may switch to taking a screenshot including the specific content in order to share the specific content.
[0013] Thus, users of computing devices may have the same mental model or overlapping mental models when considering different techniques for capturing content, such as copying, taking screenshots, and using share actions. That is, users may group these different techniques together as tools for capturing and sharing content. However, if the computing device provides different user interfaces that enable the user to perform different sets of operations depending on the technique used to capture the content, this lack of consistency may not be consistent with the user's mental model of grouping the different techniques for capturing content together as tools for capturing and sharing content. This lack of consistency with the user's mental model may make the different user interfaces provided by the computing device difficult for the user of the computing device to use.
[0014] According to aspects of the present disclosure, a computing device may, in response to performing a capture action to capture content being displayed at a display device, output a consistent user interface that enables a user to take action on the captured content regardless of how the content is captured by the computing device. That is, regardless of whether the content is captured by copying the content, by taking a screenshot, by using a sharing function provided by an operating system of the computing device, or by using any other suitable capture action or mechanism provided by an operating system or application, the computing device may output such a consistent user interface that provides the ability to edit the captured content before sharing it and the ability to share the captured content with other applications and / or devices.
[0015] The techniques of the present disclosure may provide one or more potential advantages. The techniques of the present disclosure may improve the user interface of a computing device by enabling a computing device to output a consistent user interface that provides the ability to edit captured content before sharing it and the ability to share captured content with other applications and / or devices regardless of how the content is captured by the computing device.
[0016] Specifically, outputting a consistent user interface in response to capturing content that always enables the ability to share content with other devices and perform recommended actions on the content can increase user familiarity with the user interface output in response to capturing content and can enable users of computing devices to more quickly and easily perform common functions (such as editing captured content and / or sharing captured content with other applications and devices). Increasing user familiarity with the user interface and enabling users of computing devices to more quickly and easily perform common functions (such as editing captured content and / or sharing captured content with other applications and devices) can reduce the amount of user input received by the computing device by reducing the amount of user interaction with the computing device, because the user may not have to interact with different and / or unfamiliar user interfaces presented as a result of performing different types of capture actions to capture content in order to edit and / or share the captured content. Reducing the amount of user input received by the computing device reduces the amount of processor cycles used to process the user input and thereby reduces the amount of battery power consumed by the computing device, thereby providing one or more technical advantages.
[0017] Figures 1A to 1D is a conceptual diagram illustrating an example computing device according to one or more aspects of the present disclosure. Figure 1AIn the example of , examples of computing device 110 may include a mobile phone, a tablet computer, a laptop computer, a desktop computer, a server, a mainframe, a set-top box, a television, a wearable device (e.g., a computerized watch, computerized glasses, a computerized headset, a computerized glove, etc.), a home automation device or system (e.g., a smart thermostat or a home assistant device), a personal digital assistant (PDA), a gaming system, a media player, an e-book reader, a mobile television platform, an automobile navigation or infotainment system, or any other type of mobile, non-mobile, wearable and / or non-wearable computing device.
[0018] The computing device 110 includes a user interface component (“UIC”) 112, a user interface (“UI”) module 120, and one or more application modules 122A to 122N (“application modules 122”). The UI module 120 and the application module 122 may perform the operations described herein using software, hardware, firmware, or a mixture of software, hardware, and firmware resident in and / or executed at the computing device 110. The computing device 110 may execute the UI module 120 and the application module 122 using multiple processors or multiple devices, as a virtual machine executing on underlying hardware, as one or more services of an operating system or computing platform, and / or as one or more executable programs at the application layer of the computing platform of the computing device 110.
[0019] The UIC 112 of the computing device 110 may be used as an input and / or output device of the computing device 110. The UIC 112 may be implemented using various technologies. For example, the UIC 112 may use a resistive touch screen, a surface acoustic wave touch screen, a capacitive touch screen, a projective capacitance touch screen, a pressure sensitive screen, an acoustic pulse recognition touch screen, or another presence sensitive screen technology for receiving user input as an input device. The UIC 112 may also use one or more buttons, switches, sliders, sensors, etc. as an input device. The UIC 112 may use any one or more of a liquid crystal display (LCD), a dot matrix display, a light emitting diode (LED) display, a mini LED, a micro LED, an organic light emitting diode (OLED) display, electronic ink, or a similar monochrome or color display capable of outputting visible information to a user of the computing device 110 as an output device configured to present output to the user.
[0020] UIC 112 may detect input (e.g., touch input and non-touch input) from a user of computing device 110. For example, UIC 112 may detect an indication of an input by detecting one or more gestures performed by a user (e.g., a user touching, pointing, and / or swiping with a finger or stylus at or near one or more locations of UIC 112). UIC 112 may output information to the user in the form of a user interface, which may be associated with functionality provided by computing device 110. For example, UIC 112 may present various functions and applications executed on computing device 110, such as a web browser application, an electronic messaging application, a messaging application, a map application, and the like.
[0021] Application modules 122 may include functionality to perform various operations on computing device 110. For example, application modules 122 may include email applications, text messaging applications, instant messaging applications, weather applications, video conferencing applications, social networking applications, weather applications, stock market applications, emergency alert applications, sports applications, office productivity applications, multimedia players, and the like. Although illustrated as being operable by computing device 110, one or more of application modules 122 may be operable by a remote computing device communicatively coupled to computing device 110. In such examples, the application module executed at the remote computing device may cause the remote computing device to send content and intent information using any suitable form of data communication (e.g., a wired or wireless network, short-range wireless communication such as near field communication or Bluetooth, and the like). In some examples, the remote computing device may be a computing device separate from computing device 110. For example, the remote computing device may be operatively coupled to computing device 110 via a network. Examples of remote computing devices may include, but are not limited to, servers, smart phones, tablet computing devices, smart watches, and desktop computers. In some examples, the remote computing device may not be an integrated component of computing device 110.
[0022] UI module 120 may be implemented in a variety of ways. For example, UI module 120 may be implemented as a downloadable or pre-installed application or "app". In another example, UI module 120 may be implemented as part of a hardware unit of computing device 110. In another example, UI module 120 may be implemented as part of an operating system of computing device 110. In some cases, portions of the functionality of UI module 120 or any other module described in this disclosure may be implemented across any combination of applications, hardware units, and operating systems.
[0023] The UI module 120 may interpret input detected at the UIC 112 (e.g., when a user provides one or more gestures at a location of the UIC 112 displaying the user interface 114 or another example user interface). The UI module 120 may relay information about the input detected at the UIC 112 to one or more associated platforms, operating systems, applications, and / or services executing at the computing device 110 to cause the computing device 110 to perform functions. The UI module 120 may also receive information and instructions from one or more associated platforms, operating systems, applications, and / or services executing at the computing device 110 (e.g., application module 122) to generate a GUI. In addition, the UI module 120 may act as an intermediary between one or more associated platforms, operating systems, applications, and / or services executing at the computing device 110 and various output devices of the computing device 110 (e.g., speakers, LED indicators, vibrators, etc.) to generate output (e.g., graphical output, auditory output, tactile output, etc.) with the computing device 110.
[0024] exist Figure 1A In the example of , one of the application modules 122 may send data to the UI module 120, which causes the UIC 112 to generate the user interface 114 and its elements. In response, the UI module 120 may output instructions and information to the UIC 112, which causes the UIC 112 to display the user interface 114 based on the information received from the application.
[0025] User interface 114 represents a graphical user interface with which a user of computing device 110 may interact with application modules 122 of computing device 110, such as a messaging client (e.g., a text messaging client or an email client), a web browser application, a word processing application, etc. When processing input detected by UIC 112, UI module 120 may receive information from UIC 112 in response to the input detected at the location of the screen of UIC 112 where an element of user interface 114 is displayed. UI module 120 disseminate information about the input detected by UIC 112 to other components of computing device 110 to interpret the input and cause computing device 110 to perform one or more functions in response to the input.
[0026] According to aspects of the present disclosure, a user of computing device 110 may interact with computing device 110, such as by providing user input at UIC 112 to perform a capture action to capture content at computing device 110. Content that may be captured may include content output by computing device 110, such as for display at UIC 112, for output by an audio output component of UIC 112, and the like. Content output by computing device 110 may include all or part of a GUI (such as text (including text recognized in images and videos), graphics, animated graphics, videos, and the like) output by computing device 110 for display at UIC 112, audio or sound output at an audio output component of UIC 112, and the like. In some examples, content that may be captured may also include text, audio, and / or visual descriptions of content output at computing device 110, such as text descriptions of images output for display at UIC 112. In some examples, the content that may be captured may also include files (e.g., word processing documents), applications, or any other data stored or accessible by computing device 110. The capture action may include copying the content to one or more clipboards (i.e., a copy action), taking a screenshot of the content that is output for display at UIC 112 (i.e., a screenshot action), invoking sharing functionality of an operating system of computing device 110, and / or any other action for capturing content at computing device 110.
[0027] Computing device 110 may receive an indication of such user input corresponding to a capture action to capture content, and may output, in response to the content being captured, a GUI element including indications of a plurality of actions associated with the captured content for display at a display device (e.g., UIC 112). Examples of such a GUI element may include one or more of a button, a toolbar, a menu, a list, a form, or another type of GUI element.
[0028] The operating system of computing device 110 may output a GUI element including indications of multiple actions in response to content being captured. Thus, the GUI element including indications of multiple actions in response to content being captured may be a system-wide GUI element, and computing device 110 may output a GUI element including indications of multiple actions in response to content being captured regardless of an application currently executing at computing device 110, regardless of a current foreground application executing at computing device 110, and regardless of whether the capture action performed is a capture action provided by the operating system or whether the capture action performed is a function provided by an application executed at computing device 110.
[0029] Computing device 110 may receive an indication of a user input corresponding to a selection of an action among a plurality of actions indicated in a GUI element. Computing device 110 may perform the selected action in response to receiving the indication of a user input corresponding to a selection of an action.
[0030] The multiple actions indicated by the GUI element may include an editing action, a cross-device sharing action, and a cross-application sharing action. The editing action may be an action that, if selected, enables the user to provide user input to edit the captured content, and the computing device 110 may save the resulting edited content to the clipboard. For example, if the captured content includes text, the editing action, if selected, enables the user to provide user input to edit the text, such as by inserting characters into the text, deleting characters from the text, etc. In another example, if the captured content includes an image (e.g., a captured screenshot), the editing action, if selected, enables the user to provide user input to edit the captured image, such as by cropping the image, applying an image filter to the captured image, etc.
[0031] The cross-device sharing action may be an action that, if selected, enables computing device 110 to share captured content with one or more other computing devices. That is, computing device 110 may send the captured content to one or more other computing devices that are communicatively coupled to computing device 110, such as via a communication link (e.g., Bluetooth, WIFI, or any other suitable wired or wireless communication technology, the Internet, or any other communication medium). For example, the cross-device sharing action, if selected, enables a user to select another computing device to which computing device 110 may send the captured content, such as a computing device that is near computing device 110. In another example, the cross-device sharing action, if selected, may send the content to a server system (such as a cloud storage platform) so that one or more other computing devices may be able to access the captured content via such a server system.
[0032] The cross-application sharing action may be an action that, if selected, enables computing device 110 to share captured content to one or more of application modules 122 executing at computing device 110 and / or to perform one or more actions on the captured content. For example, the cross-application sharing action, if selected, enables a user to select one or more applications to which the operating system of computing device 110 can share captured content.
[0033] In some examples, the plurality of actions indicated by the GUI element may also include one or more recommended actions associated with the captured content. Computing device 110 may determine the one or more recommended actions associated with the captured content as one or more recommended actions related to the captured content based on the type of capture action performed to capture the captured content (e.g., copy vs. capture screenshot), the content type of the captured content (e.g., whether the captured content includes text, an image, a video, etc.), data patterns detected within the captured content that may be determined using a text classifier (e.g., whether the captured content includes data, an address, a web address, a phone number, a street address, etc.), objects recognized in the captured content (e.g., a person recognized in a captured photo via facial recognition, text recognized within a captured image), metadata of the captured content (e.g., metadata of an image in the captured content, such as the location where the photo was taken, song and / or artist information for an audio clip in the captured content), and / or any other information or context associated with the captured content. Thus, computing device 110 may be able to determine different sets of one or more recommended actions for different captured content captured using different capture actions.
[0034] exist Figure 1A In the example of , UI module 120 can output instructions and information to UIC 112, which cause UIC 112 to display user interface 114. User interface 114 output by UIC 112 includes content 118, which is the text "1 Main St. Anytown, CA", which is an address. A user of computing device 110 can provide user input to perform a capture action to capture content 118 by selecting the text "1 Main St. Anytown, CA" and selecting GUI element 116 (which is a copy button) in user interface 114 to copy the selected text "1 Main St. Anytown, CA" to one or more clipboards.
[0035] Computing device 110 may output, in response to content 118 being copied to one or more clipboards, a GUI element 124 in user interface 114 that includes indications of a plurality of actions associated with captured content 118 for display at UIC 112. Specifically, GUI element 124 may include edit button 126 as an indication of an edit action, cross-device share button 128 as an indication of a cross-device share action, and cross-application share button 107 as an indication of a cross-application share action.
[0036] The computing device 110 may also determine one or more recommended actions associated with the captured content 118 in response to the content 118 being copied to one or more clipboards. The computing device 110 may determine that the captured content 118 "1 Main St. Anytown, CA" is a street address and may therefore determine that a mapping action is associated with the captured content 118 including the address "1 Main St. Anytown, CA". The mapping action may be an action that, if selected, causes the computing device 110 to output a map GUI presenting a digital map of the address included in the content 118 for display at the UIC 112. Thus, the GUI element 124 may also include a map button 130 as an indication of a mapping action.
[0037] The user may provide user input at UIC 112 to interact with GUI element 124 to select an action to be performed indicated in GUI element 124. Computing device 110 may perform the selected action in response to receiving an indication of user input at UIC 112 corresponding to a selection of an action from among the plurality of actions indicated in GUI element 124.
[0038] In some examples, the user may provide user input at UIC 112 to select edit button 126 to edit captured content 118. As described above, edit button 126 is an indication of an edit action, which may be an action that, if selected, enables the user to provide user input to edit captured content, and computing device 110 may save the resulting edited content to one or more clipboards and / or a storage device or system (e.g., a hard drive or cloud storage device) of and / or accessible by computing device 110. Thus, computing device 110 may output an edit GUI for display at UIC 112 that enables the user to edit content 118 (such as by enabling the user to edit text included in content 118) in response to receiving an indication of user input corresponding to selection of edit button 126 at UIC 112. Thus, computing device 110 may save the resulting edited content 118 to a clipboard.
[0039] In some examples, the user may provide user input at UIC 112 to select cross-device share button 128. As described above, cross-device share button 128 is an indication of a cross-device share action, which may be an action that, if selected, enables computing device 110 to share captured content 118 with one or more other computing devices. That is, computing device 110 may send captured content 118 to one or more other computing devices that are communicatively coupled to computing device 110 upon selection of the cross-device share action.
[0040] Computing device 110 may perform a cross-device sharing action to share captured content 118 with one or more other computing devices, such as by sending captured content 118 to the one or more other computing devices, in response to receiving an indication of user input corresponding to selection of cross-device share button 128 at UIC 112. In some examples, to share captured content 118 with one or more other computing devices, computing device 110 may determine one or more computing devices with which computing device 110 may share captured content 118 via any suitable technique. For example, computing device 110 may determine the one or more computing devices with which computing device 110 may share captured content 118 as one or more computing devices that are physically proximate to computing device 110 (e.g., within wireless communication range of computing device 110), one or more computing devices that are communicatively coupled to computing device 110, one or more computing devices that have been enabled to receive shared content from computing device 110, one or more computing devices that computing device 110 has determined to be relevant to captured content 118 (e.g., by performing text classification, image recognition, etc. on captured content 118), and the like.
[0041] In some examples, computing device 110 may share content 118 with one or more other computing devices in response to receiving an indication of user input corresponding to selection of cross-device share button 128 at UIC 112, without enabling the user to select the one or more computing devices with which computing device 110 shares content 118. Instead, computing device 110 may determine one or more computing devices with which computing device 110 may share captured content 118, such as via the techniques described above, and may share content 118 by sending content 118 to each of the one or more computing devices, sending content 118 to a cloud provider system accessible by each of the one or more computing devices, and the like.
[0042] In some examples, computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-device share button 128 at UIC 112, output a sharing GUI for display at UIC 112 that enables a user to select one or more other computing devices with which to share captured content 118. In some examples, the sharing GUI may be a sharing form provided by an operating system of computing device 110 that includes an indication of one or more computing devices with which computing device 110 may share content 118. A user may provide user input at UIC 112 to select one or more of the indicated one or more computing devices in the sharing GUI, and computing device 110 may, in response to receiving an indication of user input corresponding to selection of the one or more computing devices at UIC 112, share content 118 with the selected one or more devices, such as by sending content 118 to the selected one or more computing devices external to computing device 110 or by sending content 118 to a cloud storage system accessible by each of the selected one or more computing devices.
[0043] In some examples, the user may provide user input at UIC 112 to select cross-application sharing button 129. As described above, cross-application sharing button 129 is an indication of a cross-application sharing action, which may be an action that, if selected, enables computing device 110 to share captured content 118 with one or more applications at computing device 110. That is, computing device 110 may share captured content 118 with applications executing at computing device 110 upon selection of the cross-application sharing action.
[0044] Computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-application share button 129 at UIC 112, perform a cross-application sharing action to share captured content 118 with one or more applications executing at computing device 110. In some examples, to share captured content 118 with one or more applications, computing device 110 may determine one or more relevant applications at computing device 110 that may receive captured content 118 via any suitable technique, such as by performing text classification, image recognition, etc. on captured content 118.
[0045] In some examples, computing device 110 may share content 118 with one or more applications in response to receiving an indication of user input corresponding to selection of cross-application share button 129 at UIC 112, without enabling the user to select the one or more applications with which to share content 118. Instead, computing device 110 may determine one or more related applications with which computing device 110 may share captured content 118, such as via the techniques described above, and may share content 118 with each of the one or more related applications.
[0046] In some examples, computing device 110 may output a sharing GUI for display at UIC 112 that enables a user to select one or more applications with which to share captured content 118, in response to receiving an indication of user input corresponding to selection of cross-application share button 129 at UIC 112. In some examples, the sharing GUI may be a sharing form provided by an operating system of computing device 110 that includes indications of one or more applications with which computing device 110 may share content 118. The user may provide user input at UIC 112 to select one or more of the indicated one or more applications in the sharing GUI, and computing device 110 may share content 118 with each of the one or more indicated applications in response to receiving an indication of user input corresponding to selection of the one or more applications at UIC 112.
[0047] In some examples, the user may provide user input at UIC 112 to select map button 130. As described above, map button 130 is an indication of a mapping action, which may be an action that, if selected, causes computing device 110 to output a map GUI presenting a digital map of addresses included in content 118 for display at UIC 112. Thus, computing device 110 may output a map GUI presenting a digital map of addresses included in content 118 for display at UIC 112 in response to receiving an indication of user input at UIC 112 corresponding to selection of map button 130.
[0048] In some examples, computing device 110 may output a GUI element that includes at least an indication of a cross-device sharing action and an indication of an editing action regardless of the capture action performed and regardless of the captured content. Thus, computing device 110 may consistently output GUI elements with which a user may interact to edit and share captured content in response to the performance of a capture action. Consistently outputting GUI elements that include at least an indication of a cross-device sharing action and an indication of an editing action in response to the performance of different capture actions and / or the capture of different types of content may enable a user to more quickly and simply interact with computing device 110 to edit and share captured content, and may align a user's intended action with a user's mental model of sharing such captured content.
[0049] Regardless of the type of capture action performed to capture the content, the GUI elements output by computing device 110 in response to the content being captured can be visually consistent with each other. That is, regardless of whether the content is captured by copying, taking a screenshot, using a sharing function, etc., the GUI elements output by computing device 110 in response to the content being captured can be visually consistent.
[0050] In some examples, if the GUI elements are of approximately the same size, use the same color, use the same font, etc., they may be visually consistent. In some examples, if the GUI elements are of the same GUI element type, they may be visually consistent. As described above, different examples of GUI element types may include buttons, menus, fields, menu bars, button bars, toolbars, lists, forms, etc. Thus, in some examples, each GUI element output by the computing device 110 in response to content being captured may be of the same GUI element type, such as each being a button bar including a button set. In some examples, if the GUI elements are displayed at the same position or consistent position in the user interface (e.g., user interface 114), such as by being displayed at the lower left of the user interface output by the computing device 110 for display at the display device, they may also be visually consistent.
[0051] In some examples, GUI elements output by computing device 110 in response to content being captured can be visually consistent by using the same GUI element type across different GUI elements to indicate actions (e.g., edit actions, cross-device sharing actions, and cross-application sharing buttons), thereby providing standardized visual feedback to the user. For example, each GUI element output by computing device 110 in response to content being captured can use the same GUI element type (such as a button) to indicate an edit action. Similarly, each GUI element output by computing device 110 in response to content being captured can use the same GUI element type (such as a button) to indicate a cross-device sharing action.
[0052] In some examples, the GUI elements output by computing device 110 in response to content being captured may be visually consistent by placing indications of actions in the same location and / or order in each of the GUI elements. For example, each GUI element output by computing device 110 in response to content being captured may position an indication of an edit action (e.g., edit button 126) before an indication of a cross-device share action (e.g., cross-device share button 128), such as by placing the indication of the edit action to the left of the indication of the cross-device share action, by placing the indication of the edit action above the indication of the cross-device share action, etc.
[0053] As shown Figure 1B As shown, one of the application modules 122 may send data to the UI module 120, which causes the UIC 112 to generate the user interface 115 and its elements. In response, the UI module 120 may output instructions and information to the UIC 112, which causes the UIC 112 to display the user interface 115 based on the information received from the application.
[0054] User interface 115 represents a graphical user interface with which a user of computing device 110 may interact with application modules 122 of computing device 110, such as a messaging client (e.g., a text messaging client or an email client), a web browser application, a word processing application, etc. When processing input detected by UIC 112, UI module 120 may receive information from UIC 112 in response to the input detected at the location of the screen of UIC 112 where an element of user interface 115 is displayed. UI module 120 communicates information about the input detected by UIC 112 to other components of computing device 110 to interpret the input and cause computing device 110 to perform one or more functions in response to the input.
[0055] exist Figure 1B In the example of , UI module 120 can output instructions and information to UIC 112, which cause UIC 112 to display user interface 115. A user of computing device 110 can provide user input to perform a capture action to capture a screenshot of user interface 115, thereby capturing a screenshot of user interface 115 as content 117.
[0056] The computing device 110 may save the captured content 117 in one or more clipboards in response to capturing a screenshot of the user interface 115 as content 117, and may output a GUI element 134 including indications of a plurality of actions associated with the captured content 117 in the user interface 115 for display at the UIC 112. Specifically, the GUI element 134 may include an edit button 136 as an indication of an edit action, a cross-device share button 138 as an indication of a cross-device share action, and a cross-application share button 139 as an indication of a cross-application share action.
[0057] Computing device 110 may also determine, in response to content 117 being captured, one or more recommended actions associated with captured content 117. Computing device 110 may determine that captured content 117 is a screenshot and may therefore determine that a capture more action is associated with captured content 117. The capture more action may be an action that, if selected, causes computing device 110 to output a GUI in user interface 115 that may enable a user to capture additional content for display at UIC 112. Thus, GUI element 134 may therefore also include a capture more button 140 as an indication of the capture more action.
[0058] The user may provide user input at UIC 112 to interact with GUI element 134 to select an action to be performed indicated in GUI element 134. Computing device 110 may perform the selected action in response to receiving an indication of user input at UIC 112 corresponding to a selection of an action from among the plurality of actions indicated in GUI element 134.
[0059] In some examples, the user may provide user input at UIC 112 to select edit button 136 to edit captured content 117. As described above, edit button 136 is an indication of an edit action, which may be an action that, if selected, enables the user to provide user input to edit captured content, and computing device 110 may save the resulting edited content to a clipboard. Thus, computing device 110 may output an edit GUI for display at UIC 112 that enables the user to edit content 117 (such as by enabling the user to crop a screenshot in content 117, apply a filter to a screenshot in content 117, draw on content 117, etc.) in response to receiving an indication of user input corresponding to selection of edit button 136 at UIC 112. Thus, computing device 110 may save edited content 117 to a clipboard.
[0060] In some examples, the user may provide user input at UIC 112 to select cross-device sharing button 138. As described above, cross-device sharing button 138 is an indication of a cross-device sharing action, which may be an action that, if selected, enables computing device 110 to share captured content 117 with another computing device. That is, computing device 110 may send captured content 117 to one or more other computing devices that are communicatively coupled to computing device 110 upon selection of the cross-device sharing action.
[0061] Computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-device share button 138 at UIC 112, perform a cross-device sharing action to share captured content 117 with one or more other computing devices, such as by sending captured content 117 to the one or more other computing devices. In some examples, to share captured content 117 with one or more other computing devices, computing device 110 may determine one or more computing devices with which computing device 110 may share captured content 117 via any suitable technique, such as described above with respect to Figure 1A Descriptive.
[0062] In some examples, computing device 110 may share content 117 with one or more other computing devices in response to receiving an indication of user input corresponding to selection of cross-device share button 138 at UIC 112, without enabling the user to select the one or more computing devices with which computing device 110 shares content 117. Instead, computing device 110 may determine one or more computing devices with which computing device 110 may share captured content 117, such as via the techniques described above, and may share content 117 by sending content 117 to each of the one or more computing devices, sending content 117 to a cloud provider system accessible by each of the one or more computing devices, and the like.
[0063] In some examples, computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-device share button 138 at UIC 112, output a sharing GUI for display at UIC 112 that enables a user to select one or more other computing devices with which to share captured content 117. In some examples, the sharing GUI may be a sharing form that includes an indication of one or more computing devices with which computing device 110 may share content 117. The user may provide user input at UIC 112 to select one or more of the indicated one or more computing devices in the sharing GUI, and computing device 110 may, in response to receiving an indication of user input corresponding to selection of the one or more computing devices at UIC 112, share content 117 with the selected one or more devices, such as by sending content 117 to the selected one or more devices or by sending content 117 to a cloud storage system accessible by each of the selected one or more computing devices.
[0064] In some examples, the user may provide user input at UIC 112 to select cross-application sharing button 139. As described above, cross-application sharing button 139 is an indication of a cross-application sharing action, which may be an action that, if selected, enables computing device 110 to share captured content 117 with one or more applications at computing device 110. That is, computing device 110 may share captured content 117 with applications executing at computing device 110 upon selection of the cross-application sharing action.
[0065] Computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-application share button 139 at UIC 112, perform a cross-application sharing action to share captured content 117 with one or more applications executing at computing device 110. In some examples, to share captured content 117 with one or more applications, computing device 110 may determine one or more relevant applications at computing device 110 that may receive captured content 117 via any suitable technique, such as by performing text classification, image recognition, etc. on captured content 117.
[0066] In some examples, computing device 110 may share content 117 with one or more applications in response to receiving an indication of user input corresponding to selection of cross-application share button 139 at UIC 112, without enabling the user to select the one or more applications with which to share content 117. Instead, computing device 110 may determine one or more related applications with which computing device 110 may share captured content 117, such as via the techniques described above, and may share content 117 with each of the one or more related applications.
[0067] In some examples, computing device 110 may output a sharing GUI for display at UIC 112 that enables a user to select one or more applications with which to share captured content 117, in response to receiving an indication of user input corresponding to selection of cross-application share button 139 at UIC 112. In some examples, the sharing GUI may be a sharing form provided by an operating system of computing device 110 that includes indications of one or more applications with which computing device 110 may share content 117. The user may provide user input at UIC 112 to select one or more of the indicated one or more applications in the sharing GUI, and computing device 110 may share content 117 with each of the one or more indicated applications in response to receiving an indication of user input corresponding to selection of the one or more applications at UIC 112.
[0068] In some examples, the user may provide user input at UIC 112 to select capture more button 140. As described above, capture more button 140 is an indication of a capture more action, which may be an action that, if selected, causes computing device 110 to output a GUI that may enable the user to capture additional content for display at UIC 112. That is, computing device 110 may enable the user to capture additional content, such as text, images, video, audio, etc., upon selection of the capture more action.
[0069] As shown Figure 1C As shown, one of the application modules 122 may send data to the UI module 120, which causes the UIC 112 to generate the user interface 119 and its elements. In response, the UI module 120 may output instructions and information to the UIC 112, which causes the UIC 112 to display the user interface 119 based on the information received from the application.
[0070] User interface 119 represents a graphical user interface with which a user of computing device 110 may interact with application modules 122 of computing device 110, such as a messaging client (e.g., a text messaging client or an email client), a web browser application, a word processing application, etc. When processing input detected by UIC 112, UI module 120 may receive information from UIC 112 in response to the input detected at the location of the screen of UIC 112 where an element of user interface 119 is displayed. UI module 120 communicates information about the input detected by UIC 112 to other components of computing device 110 to interpret the input and cause computing device 110 to perform one or more functions in response to the input.
[0071] exist Figure 1C In the example of FIG. 1 , UI module 120 may output instructions and information to UIC 112, which cause UIC 112 to display user interface 119. User interface 119 output by UIC 112 includes content 121, which is an image. A user of computing device 110 may provide user input to perform a capture action to capture content 121 by selecting content 121 and selecting GUI element 123 (which is a share button) in user interface 119 to invoke a share function provided by the operating system of computing device 110.
[0072] In response to capturing content 121 by calling a sharing function provided by the operating system, computing device 110 may save captured content 121 in one or more clipboards and / or to a storage device, and may output a GUI element 144 in user interface 119 including indications of multiple actions associated with captured content 121 for display at UIC 112. Specifically, GUI element 144 may include an edit button 146 as an indication of an edit action, a cross-device share button 148 as an indication of a cross-device share action, and a cross-application share button 149 as an indication of a cross-application share action. Figure 1C In the example of , GUI elements 144 may not include indications of one or more recommended actions associated with captured content 121 , in addition to edit button 146 and cross-device share button 148 .
[0073] The user may provide user input at UIC 112 to interact with GUI element 144 to select an action to be performed indicated in GUI element 144. Computing device 110 may perform the selected action in response to receiving an indication of user input at UIC 112 corresponding to a selection of an action from among the plurality of actions indicated in GUI element 144.
[0074] In some examples, the user may provide user input at UIC 112 to select edit button 146 to edit captured content 121. As described above, edit button 146 is an indication of an edit action, which may be an action that, if selected, enables the user to provide user input to edit captured content 121, and computing device 110 may save the resulting edited content 121 to one or more clipboards. Thus, computing device 110 may output an edit GUI for display at UIC 112 that enables the user to edit content 121 (such as by enabling the user to crop images in content 121, apply filters to images in content 121, draw on images in content 121, etc.) in response to receiving an indication of user input corresponding to selection of edit button 146 at UIC 112. Thus, computing device 110 may save edited content 121 to a clipboard.
[0075] In some examples, the user may provide user input at UIC 112 to select cross-device sharing button 148. As described above, cross-device sharing button 148 is an indication of a cross-device sharing action, which may be an action that, if selected, enables computing device 110 to share captured content 121 with another computing device. That is, computing device 110 may send captured content 121 to one or more other computing devices that are communicatively coupled to computing device 110 upon selection of the cross-device sharing action.
[0076] Computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-device share button 148 at UIC 112, perform a cross-device sharing action to share captured content 121 with one or more other computing devices, such as by sending captured content 121 to one or more other computing devices. Computing device 110 may determine one or more computing devices with which computing device 110 may share captured content 121 via any suitable technique, such as described above with respect to Figure 1A Described.
[0077] In some examples, computing device 110 may share content 121 with one or more other computing devices in response to receiving an indication of user input corresponding to selection of cross-device share button 148 at UIC 112, without enabling the user to select the one or more computing devices with which computing device 110 shares content 121. Instead, computing device 110 may determine one or more computing devices with which computing device 110 may share captured content 121, such as via the techniques described above, and may share content 121 by sending content 121 to each of the one or more computing devices, sending content 121 to a cloud provider system accessible by each of the one or more computing devices, and the like.
[0078] In some examples, computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-device share button 148 at UIC 112, output a sharing GUI for display at UIC 112 that enables a user to select one or more other computing devices with which to share captured content 121. In some examples, the sharing GUI may be a sharing form that includes an indication of one or more computing devices with which computing device 110 may share content 121. The user may provide user input at UIC 112 to select one or more of the indicated one or more computing devices in the sharing GUI, and computing device 110 may, in response to receiving an indication of user input corresponding to selection of the one or more computing devices at UIC 112, share content 121 with the selected one or more devices, such as by sending content 121 to the selected one or more devices or by sending content 121 to a cloud storage system accessible by each of the selected one or more computing devices.
[0079] In some examples, the user may provide user input at UIC 112 to select cross-application sharing button 149. As described above, cross-application sharing button 149 is an indication of a cross-application sharing action, which may be an action that, if selected, enables computing device 110 to share captured content 121 with one or more applications at computing device 110. That is, computing device 110 may share captured content 121 with applications executed at computing device 110 upon selection of the cross-application sharing action.
[0080] Computing device 110 may perform a cross-application sharing action to share captured content 121 with one or more applications executing at computing device 110 in response to receiving an indication of user input corresponding to a selection of cross-application sharing button 149 at UIC 112. In some examples, to share captured content 121 with one or more applications, computing device 110 may determine one or more relevant applications at computing device 110 that may receive captured content 121 via any suitable technique, such as by performing text classification, image recognition, etc. on captured content 121.
[0081] In some examples, computing device 110 may share content 121 with one or more applications in response to receiving an indication of user input corresponding to selection of cross-application share button 149 at UIC 112, without enabling the user to select the one or more applications with which to share content 121. Instead, computing device 110 may determine one or more related applications with which computing device 110 may share captured content 121, such as via the techniques described above, and may share content 121 with each of the one or more related applications.
[0082] In some examples, computing device 110 may output a sharing GUI for display at UIC 112 that enables a user to select one or more applications with which to share captured content 121, in response to receiving an indication of user input corresponding to selection of cross-application share button 149 at UIC 112. In some examples, the sharing GUI may be a sharing form provided by an operating system of computing device 110 that includes an indication of one or more applications with which computing device 110 may share content 121. The user may provide user input at UIC 112 to select one or more of the indicated one or more applications in the sharing GUI, and computing device 110 may share content 121 with each of the one or more indicated applications in response to receiving an indication of user input corresponding to selection of the one or more applications at UIC 112.
[0083] As shown Figure 1D As shown, one of the application modules 122 may send data to the UI module 120, which causes the UIC 112 to generate the user interface 125 and its elements. In response, the UI module 120 may output instructions and information to the UIC 112, which causes the UIC 112 to display the user interface 125 based on the information received from the application.
[0084] User interface 125 represents a graphical user interface with which a user of computing device 110 may interact with application modules 122 of computing device 110, such as a messaging client (e.g., a text messaging client or an email client), a web browser application, a word processing application, etc. When processing input detected by UIC 112, UI module 120 may receive information from UIC 112 in response to the input detected at the location of the screen of UIC 112 where an element of user interface 125 is displayed. UI module 120 communicates information about the input detected by UIC 112 to other components of computing device 110 to interpret the input and cause computing device 110 to perform one or more functions in response to the input.
[0085] exist Figure 1D In the example of , UI module 120 can output instructions and information to UIC 112, which cause UIC 112 to display user interface 125. User interface 125 output by UIC 12 includes content 127, which is text. Specifically, content 127 is a web link with URL "http: / / www.google.com". The user of computing device 110 can provide user input to perform a capture action to capture content 127 by selecting content 127 and selecting GUI element 169 (which is a copy button) in user interface 119 to copy content 127 to the clipboard.
[0086] Computing device 110 may, in response to capturing content 127 by copying content 127 (such as to one or more clipboards), output a GUI element 154 in user interface 125 that includes indications of a plurality of actions associated with captured content 127 for display at UIC 112. Specifically, GUI element 154 may include an edit button 156 as an indication of an edit action, a cross-device share button 158 as an indication of a cross-device share action, and a cross-application share button 159 as an indication of a cross-application share action.
[0087] Computing device 110 may also determine one or more recommended actions associated with captured content 127 in response to content 127 being copied to the clipboard. Computing device 110 may determine that captured content 127 "http: / / www.google.com" is a URL, and the URL in content 127 is not captured from a web browser application. Therefore, computing device 110 may determine that a web browsing action is associated with captured content 127 as a URL. A web browsing action may be an action that, if selected, causes computing device 110 to open the URL of captured content 127 in a web browser application. Thus, GUI element 124 may also include a web browser button 160 as an indication of a web browsing action. In some examples, if computing device 110 determines that the URL in content 127 is captured from a web browser application, computing device 110 may avoid including an indication of a web browsing action in GUI element 154, because opening the URL in captured content 127 in a web browser application may be redundant.
[0088] The user may provide user input at UIC 112 to interact with GUI element 154 to select an action to be performed indicated in GUI element 154. Computing device 110 may perform the selected action in response to receiving an indication of user input at UIC 112 corresponding to a selection of an action from among the plurality of actions indicated in GUI element 154.
[0089] In some examples, the user may provide user input at UIC 112 to select edit button 156 to edit captured content 127. As described above, edit button 156 is an indication of an edit action, which may be an action that, if selected, enables the user to provide user input to edit captured content 127, and computing device 110 may save the resulting edited content 127 to one or more clipboards. Thus, computing device 110 may output an edit GUI for display at UIC 112 that enables the user to edit content 127 (such as by enabling the user to add characters to the text of content 127, delete text from content 127, or otherwise edit the text of content 127) in response to receiving an indication of user input corresponding to selection of edit button 156 at UIC 112. Thus, computing device 110 may save edited content 127 to a clipboard.
[0090] In some examples, the user may provide user input at UIC 112 to select cross-device share button 158. As described above, cross-device share button 158 is an indication of a cross-device share action, which may be an action that, if selected, enables computing device 110 to share captured content 127 with one or more other computing devices. That is, computing device 110 may send captured content 127 to one or more other computing devices that are communicatively coupled to computing device 110 upon selection of the cross-device share action.
[0091] In some examples, computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-device share button 158 at UIC 112, perform a cross-device sharing action to share captured content 127 with one or more other computing devices, such as by sending captured content 127 to the one or more other computing devices. Computing device 110 may determine one or more computing devices with which computing device 110 may share captured content 127 via any suitable technique, such as described above with respect to Figure 1A Described.
[0092] In some examples, computing device 110 may share content 127 with one or more other computing devices in response to receiving an indication of user input corresponding to selection of cross-device share button 158 at UIC 112, without enabling the user to select the one or more computing devices with which computing device 110 shares content 127. Instead, computing device 110 may determine one or more computing devices with which computing device 110 may share captured content 127, such as via the techniques described above, and may share content 127 by sending content 127 to each of the one or more computing devices, sending content 127 to a cloud provider system accessible by each of the one or more computing devices, and the like.
[0093] In some examples, computing device 110, in response to receiving an indication of user input corresponding to selection of cross-device share button 158 at UIC 112, outputs a sharing GUI for display at UIC 112 that enables a user to select one or more other computing devices with which to share captured content 127. In some examples, the sharing GUI may be a sharing form that includes an indication of one or more computing devices with which computing device 110 may share content 127. The user may provide user input at UIC 112 to select one or more of the indicated one or more computing devices in the sharing GUI, and computing device 110 may, in response to receiving an indication of user input corresponding to selection of the one or more computing devices at UIC 112, share content 127 with the selected one or more devices, such as by sending content 127 to the selected one or more devices or by sending content 127 to a cloud storage system accessible by each of the selected one or more computing devices.
[0094] In some examples, the user may provide user input at UIC 112 to select cross-application sharing button 159. As described above, cross-application sharing button 159 is an indication of a cross-application sharing action, which may be an action that, if selected, enables computing device 110 to share captured content 127 with one or more applications at computing device 110. That is, computing device 110 may share captured content 127 with applications executing at computing device 110 upon selection of the cross-application sharing action.
[0095] Computing device 110 may, in response to receiving an indication of user input corresponding to selection of cross-application share button 159 at UIC 112, perform a cross-application sharing action to share captured content 127 with one or more applications executing at computing device 110. In some examples, to share captured content 127 with one or more applications, computing device 110 may determine one or more relevant applications at computing device 110 that may receive captured content 127 via any suitable technique, such as by performing text classification, image recognition, etc. on captured content 127.
[0096] In some examples, computing device 110 may share content 127 with one or more applications in response to receiving an indication of user input corresponding to selection of cross-application share button 159 at UIC 112, without enabling the user to select the one or more applications with which to share content 127. Instead, computing device 110 may determine one or more related applications with which computing device 110 may share captured content 127, such as via the techniques described above, and may share content 127 with each of the one or more related applications.
[0097] In some examples, computing device 110 may output a sharing GUI for display at UIC 112 that enables a user to select one or more applications with which to share captured content 127, in response to receiving an indication of user input corresponding to selection of cross-application share button 159 at UIC 112. In some examples, the sharing GUI may be a sharing form provided by an operating system of computing device 110 that includes indications of one or more applications with which computing device 110 may share content 127. The user may provide user input at UIC 112 to select one or more of the indicated one or more applications in the sharing GUI, and computing device 110 may share content 127 with each of the one or more indicated applications in response to receiving an indication of user input corresponding to selection of the one or more applications at UIC 112.
[0098] In some examples, the user may provide user input at UIC 112 to select web browser button 160. As described above, web browser button 160 is an indication of a web browsing action, which may be an action that, if selected, causes computing device 110 to open a URL in content 127 in a web browser application. Thus, computing device 110 may open a URL in content 127 in a web browser application in response to receiving an indication of user input corresponding to selection of web browser button 160 at UIC 112.
[0099] As in Figures 1A to 1DAs can be seen in , regardless of the type of capture action performed to capture content, the GUI elements 124, 134, 144, and 154 output by the computing device 110 in response to the content being captured can be visually consistent with each other. For example, each of the GUI elements 124, 134, 144, and 154 is a button bar including a button set. In addition, each of the GUI elements 124, 134, 144, and 154 includes each of the instructions for editing actions, cross-device sharing actions, and cross-application sharing actions. The editing actions, cross-device sharing actions, and cross-application sharing actions in each of the GUI elements 124, 134, 144, and 154 are each the same GUI element type (e.g., button). In addition, each of the GUI elements 124, 134, 144, and 154 positions the instructions for editing actions, cross-device sharing actions, and cross-application sharing actions in the same place across the GUI elements 124, 134, 144, and 154.
[0100] Figure 2 2 is a block diagram showing additional details of a computing device 210 according to one or more aspects of the present disclosure. Figure 2 The computing device 210 is used as Figures 1A to 1D 1 is described with reference to the example of computing device 110 shown in . Figure 2 Only one particular example of computing device 210 is shown, and many other examples of computing device 210 may be used in other instances and may include a subset of the components included in the example computing device 210, or may include Figure 2 Additional components not shown.
[0101] like Figure 2 As shown in the example of FIG. 2 , the computing device 210 includes a UIC 212, one or more processors 240, one or more input components 242, one or more communication units 244, one or more output components 246, and one or more storage components 248. The storage component 248 of the computing device 210 also includes a UI module 220, an operating system 224, and one or more application modules 222A to 222N ("one or more application modules 222").
[0102] Communication channel 250 can interconnect each of components 240, 212, 244, 246, 242, and 248 for inter-component communication (physically, communicatively, and / or operationally). In some examples, communication channel 250 can include a system bus, a network connection, an inter-process communication data structure, or any other method for communicating data.
[0103] One or more input components 242 of computing device 210 can receive input. Examples of input are tactile input, audio input, and video input. In one example, input components 242 of computing device 210 include a presence-sensitive display, a touch-sensitive screen, a mouse, a keyboard, a voice response system, a camera, a microphone, or any other type of device for detecting input from a person or a machine.
[0104] One or more output components 246 of computing device 210 can generate output. Examples of output are tactile output, audio output, and video output. In one example, output component 246 of computing device 210 includes a presence-sensitive display, a sound card, a video graphics adapter card, a speaker, a liquid crystal display (LCD), an organic light-emitting diode (OLED) display, a light field display, a haptic motor, a linear actuator, or any other type of device for generating output to a person or machine.
[0105] The one or more communication units 244 of the computing device 210 can communicate with external devices via one or more wired and / or wireless networks by sending and / or receiving network signals over one or more networks. Examples of the one or more communication units 244 include a network interface card (e.g., an Ethernet card), an optical transceiver, a radio frequency transceiver, a GPS receiver, or any other type of device that can send and / or receive information. Other examples of the one or more communication units 244 can include a shortwave radio, a cellular data radio, a wireless network radio, and a universal serial bus (USB) controller.
[0106] The UIC 212 of the computing device 200 may be hardware used as an input and / or output device of the computing device 210. For example, the UIC 212 may include a display component, which may be a screen at which information is displayed by the UIC 212, and a presence-sensitive input component that may detect objects at and / or near the display component.
[0107] The one or more processors 240 may implement functionality and / or execute instructions within the computing device 210. For example, the one or more processors 240 on the computing device 210 may receive and execute instructions stored by the storage component 248 that implement the functionality of the operating system 224 and modules 220 and 222. The instructions executed by the one or more processors 240 may cause the computing device 210 to store information within the storage component 248 during program execution. Examples of the one or more processors 240 include an application processor, a display controller, a sensor hub, and any other hardware configured to function as a processing unit. The one or more processors 240 may execute instructions of the operating system 224 and modules 220 and 222 to cause the UIC 212 to render a portion of the content of the display data as one of the user interface screenshots at the UIC 212. That is, the operating system 224 and modules 220 and 222 may be operable by the one or more processors 240 to perform various actions or functions of the computing device 210 (such as in Figures 1A to 1D The actions or functions described in the description regarding computing device 110).
[0108] One or more storage components 248 within computing device 210 may store information for processing during operation of computing device 210. That is, computing device 210 may store data accessed by operating system 224 and modules 220 and 222 during execution at computing device 210. In some examples, storage component 248 is temporary storage, meaning that the primary purpose of storage component 248 is not long-term storage. Storage component 248 on computing device 210 may be configured as volatile memory for short-term storage of information and therefore does not retain stored content in the event of a power outage. Examples of volatile memory include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), and other forms of volatile memory known in the art.
[0109] In some examples, storage component 248 also includes one or more computer-readable storage media. Storage component 248 can be configured to store larger amounts of information than volatile memory. Storage component 248 can also be configured as a non-volatile memory space for long-term storage of information and retaining information after power on / off cycles. Examples of non-volatile memory include a magnetic hard disk, an optical disk, a floppy disk, flash memory, or a form of electrically programmable memory (EPROM) or electrically erasable and programmable (EEPROM) memory. Storage component 248 can store program instructions and / or information (e.g., data) associated with operating system 224 and modules 220 and 222. UI module 220, operating system 224, and one or more application modules 222 can be executed at one or more processors 240 to perform operations associated with the respective processors 240. Figures 1A to 1D The UI module 120 and one or more application modules 122 have similar functions.
[0110] The one or more processors 240 are configured to execute instructions stored in the storage component 248 to perform the techniques of the present disclosure, such as with respect to Figures 1A to 1D The technology described. For example, one or more processors 240 may be configured to execute instructions stored in storage component 248 to receive a first indication of a user input (e.g., at one or more input components 242) corresponding to a capture action to capture content (e.g., content output at one or more output components 246). One or more processors 240 may be configured to execute instructions stored in storage component 248 to output a graphical user interface (GUI) element including an indication of a plurality of actions in response to content being captured for display at a display device, wherein the plurality of actions include one or more of an editing action, a cross-device sharing action, a cross-application sharing action, or one or more recommended actions associated with the content. In some examples, one or more processors 240 may be configured to execute instructions of operating system 224 to output a GUI element, such that operating system 224 may be able to output such a GUI element in response to execution of a capture action to capture content across applications and services of computing device 210. That is, the GUI element may be an operating system-level GUI element, rather than an application-specific GUI element output by, for example, a foreground application executed by one or more processors 240.
[0111] The one or more processors 240 may be configured to execute instructions stored in the storage component 248 to receive a second indication of user input corresponding to a selection of an action from among a plurality of actions indicated by the GUI element. The one or more processors 240 may be configured to execute instructions stored in the storage component 248 to perform an action in response to receiving the second indication of user input corresponding to a selection of an action.
[0112] Figure 3 is a block diagram illustrating an example computing device that outputs graphical content for display at a remote device in accordance with one or more techniques of this disclosure. Graphical content may generally include any visual information that can be output for display, such as text, an image, a set of moving images, to name a few. Figure 3 The example shown in FIG. 1 includes a computing device 360, a presence-sensitive display 364, a communication unit 370, a projector 380, a projector screen 382, a mobile device 386, and a visual display device 390. In some examples, the presence-sensitive display 364 can be as shown in FIG. Figure 2 User interface components described in Figures 1A to 1D UIC 112 and Figure 2Although for the purpose of illustration Figures 1A to 1D is shown as a separate computing device 110 and is Figure 2 210, but a computing device such as computing device 360 may generally include a processor or other suitable computing environment for executing software instructions and need not, for example, include any components or systems that are sensitive to a display.
[0113] As in Figure 3 As shown in the example of Figures 1A to 1D An example of a computing device 110 and / or Figure 2 An example of a computing device 210 and may include a processor including the following Figure 2 360 may be operatively coupled to a presence-sensitive display 364 via a communication channel 362A, which may be a system bus or other suitable connection. Computing device 360 may also be operatively coupled to a communication unit 370, described further below, via a communication channel 362B, which may also be a system bus or other suitable connection. Although in Figure 3 360 are shown separately as examples, but computing device 360 may be operatively coupled to presence-sensitive display 364 and communication unit 370 through any number of one or more communication channels.
[0114] In other examples (such as those previously described in FIG. 1 to Figure 2 2 ), the computing device may refer to a portable or mobile device, such as a mobile phone (including a smart phone), a laptop computer, etc. In some examples, the computing device may be a desktop computer, a tablet computer, a smart TV platform, a camera, a personal digital assistant (PDA), a server, or a mainframe.
[0115] Presence-sensitive display 364 may include display device 366 and presence-sensitive input device 368. Display device 366 may, for example, receive data from computing device 360 and display graphical content. In some examples, presence-sensitive input device 368 may use capacitive, inductive, and / or optical recognition techniques to determine one or more user inputs (e.g., continuous gestures, multi-touch gestures, single-touch gestures) at presence-sensitive display 364 and use communication channel 362A to send indications of such user inputs to computing device 360. In some examples, presence-sensitive input device 368 may be physically positioned on top of display device 366 such that when a user positions an input unit over a graphical element displayed by display device 366, the location of presence-sensitive input device 368 corresponds to the location of display device 366 at which the graphical element is displayed.
[0116] like Figure 3 As shown, computing device 360 may also include and / or be operatively coupled to a communication unit 370. Communication unit 370 may include, for example, Figure 2 Examples of communication unit 370 may include a network interface card, an Ethernet card, an optical transceiver, a radio frequency transceiver, or any other type of device that can send and receive information. Other examples of such communication units may include Bluetooth, 3G and Wi-Fi radios, Universal Serial Bus (USB) interfaces, etc. Computing device 360 may also include other devices that are not described in detail for the sake of brevity and illustration. Figure 3 One or more other devices (e.g., input devices, output devices, memory, storage devices) shown in and / or operatively coupled with the one or more other devices.
[0117] Figure 3Also shown is a projector 380 and a projector screen 382. Other such examples of projection devices may include electronic whiteboards, holographic display devices, and any other suitable device for displaying graphical content. Projector 380 and projector screen 382 may include one or more communication units that enable the respective devices to communicate with computing device 360. In some examples, the one or more communication units may enable communication between projector 380 and projector screen 382. Projector 380 may receive data including graphical content from computing device 360. In response to receiving the data, projector 380 may project the graphical content onto projector screen 382. In some examples, projector 380 may use optical recognition or other suitable techniques to determine one or more user inputs (e.g., continuous gestures, multi-touch gestures, single-touch gestures) at the projector screen and use one or more communication units to send indications of such user inputs to computing device 360. In such examples, projector screen 382 may be optional, and projector 380 may project graphical content onto any suitable medium and detect one or more user inputs using optical recognition or other such suitable techniques.
[0118] In some examples, projector screen 382 may include presence-sensitive display 384. Presence-sensitive display 384 may include a subset or all of the functionality of presence-sensitive displays 384 and / or 364 as described in the present disclosure. In some examples, presence-sensitive display 384 may include additional functionality. Projector screen 382 (e.g., an electronic whiteboard) may receive data from computing device 360 and display graphical content. In some examples, presence-sensitive display 384 may use capacitive, inductive, and / or optical recognition techniques to determine one or more user inputs (e.g., continuous gestures, multi-touch gestures, single-touch gestures) at projector screen 382 and use one or more communication units to send indications of such user inputs to computing device 360.
[0119] Figure 3 Also shown are a mobile device 386 and a visual display device 390. The mobile device 386 and the visual display device 390 may each include computing capabilities and connectivity capabilities. Examples of the mobile device 386 may include an e-reader device, a convertible notebook device, a hybrid tablet device, etc. Examples of the visual display device 390 may include other semi-stationary devices such as a television, a computer monitor, etc. Figure 3As shown, mobile device 386 may include presence-sensitive display 388. Visual display device 390 may include presence-sensitive display 392. Presence-sensitive displays 388, 392 may include a subset or all of the functionality of presence-sensitive displays 384 and / or 364 as described in the present disclosure. In some examples, presence-sensitive displays 388, 392 may include additional functionality. In any case, presence-sensitive display 392 may, for example, receive data from computing device 360 and display graphical content. In some examples, presence-sensitive display 392 may use capacitive, inductive, and / or optical recognition techniques to determine one or more user inputs (e.g., continuous gestures, multi-touch gestures, single-touch gestures) at the projector screen and use one or more communication units to send indications of such user inputs to computing device 360.
[0120] As described above, in some examples, computing device 360 may output graphical content for display at presence-sensitive display 364, which is coupled to computing device 360 via a system bus or other suitable communication channel. Computing device 360 may also output graphical content for display at one or more remote devices, such as projector 380, projector screen 382, mobile device 386, and visual display device 390. For example, computing device 360 may execute one or more instructions to generate and / or modify graphical content according to the techniques of this disclosure. Computing device 360 may output data including graphical content to a communication unit of computing device 360, such as communication unit 370. Communication unit 370 may send data to one or more of the remote devices, such as projector 380, projector screen 382, mobile device 386, and / or visual display device 390. In this way, computing device 360 may output graphical content for display at one or more of the remote devices. In some examples, one or more of the remote devices may output graphical content at a presence-sensitive display included in and / or operatively coupled to the respective remote device.
[0121] In some examples, computing device 360 may not output graphical content at presence-sensitive display 364 that is operatively coupled to computing device 360. In other examples, computing device 360 may output graphical content for display both at presence-sensitive display 364 coupled to computing device 360 via communication channel 362A and at one or more remote devices. In such examples, the graphical content may be displayed at each respective device substantially simultaneously. For example, some delay may be introduced by communication latency in sending data including the graphical content to the remote devices. In some examples, the graphical content generated by computing device 360 and output for display at presence-sensitive display 364 may be different from the graphical content output for display at one or more remote devices.
[0122] Computing device 360 can use any suitable communication technology to send and receive data.For example, computing device 360 can be operatively coupled to external network 374 using network link 372A. Figure 3 Each of the remote devices shown in FIG. 3 can be operatively coupled to an external network 374 via one of the corresponding network links 372B, 372C, or 372D. The external network 374 may include a network hub, a network switch, a network router, etc., which are operatively coupled to each other, thereby Figure 3 360 and a remote device. In some examples, network links 372A to 372D may be Ethernet, ATM, or other network connections. Such connections may be wireless and / or wired connections.
[0123] In some examples, computing device 360 can be operatively coupled to Figure 3 Direct device communication 378 may include communication by which computing device 360 sends and receives data directly with a remote device using wired or wireless communication. That is, in some examples of direct device communication 378, data sent by computing device 360 may not be forwarded by one or more additional devices before being received at the remote device, and vice versa. Examples of direct device communication 378 may include Bluetooth, near field communication, universal serial bus, Wi-Fi, infrared, etc. Figure 3 One or more of the remote devices shown in the figure can be operatively coupled to the computing device 360 through communication links 376A to 376D. In some examples, the communication links 376A to 376D can be connections using Bluetooth, near field communication, universal serial bus, infrared, etc. Such connections can be wireless and / or wired connections.
[0124] According to the techniques of this disclosure, computing device 360 may receive an indication of a user input (e.g., at presence-sensitive display 364, presence-sensitive display 384, presence-sensitive display 388, or presence-sensitive display 392) corresponding to a capture action to capture content (e.g., content displayed at presence-sensitive display 364, presence-sensitive display 384, presence-sensitive display 388, or presence-sensitive display 392). Computing device 360 may output a GUI element including indications of a plurality of actions associated with the captured content for display at display device (e.g., presence-sensitive display 364, presence-sensitive display 384, presence-sensitive display 388, or presence-sensitive display 392) in response to receiving the indication of the user input. Examples of such GUI elements may include one or more of the following: buttons, toolbars, menus, lists, forms, etc.
[0125] Computing device 360 may receive an indication of a user input corresponding to a selection of an action among a plurality of actions indicated in a GUI element. Computing device 360 may execute the selected action in response to receiving the indication of the user input corresponding to the selection of the action.
[0126] Figure 4 is a flow chart illustrating example operations performed by an example computing device configured to perform notification management in accordance with one or more aspects of the present disclosure. Figure 2 The context of computing device 210 describes Figure 4 .
[0127] like Figure 4 As shown, one or more processors 240 of computing device 210 may receive a first indication of user input (eg, at one or more input components 242) corresponding to a capture action to capture content (eg, one or more output components 246) (402).
[0128] One or more processors 240 of computing device 210 may output a graphical user interface (GUI) element including an indication of a plurality of actions for display at a display device in response to content being captured, wherein the plurality of actions include one or more of an editing action, a cross-device sharing action, a cross-application sharing action, or one or more recommended actions, and combinations thereof (404). One or more processors 240 of computing device 210 may receive a second indication of user input corresponding to a selection of an action from the plurality of actions indicated by the GUI element (406). One or more processors 240 of computing device 210 may perform an action in response to receiving the second indication of user input corresponding to a selection of an action (408).
[0129] By way of example and not limitation, such computer-readable storage media may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage devices, disk storage devices or other magnetic storage devices, flash memory or any other storage medium that can be used to store the desired program code in the form of instructions or data structures and can be accessed by a computer. Moreover, any connection is appropriately referred to as a computer-readable medium. For example, if a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) or wireless technology (such as infrared, radio and microwave) is used to send instructions from a website, server or other remote source, then the coaxial cable, fiber optic cable, twisted pair, DSL or wireless technology (such as infrared, radio and microwave) is included in the definition of the medium. However, it should be understood that computer-readable storage media and data storage media do not include connections, carrier waves, signals or other temporary media, but rather relate to non-temporary tangible storage media. Disks and optical disks as used herein include compact disks (CDs), laser disks, optical disks, digital versatile disks (DVDs), floppy disks and blue-ray disks, wherein disks generally reproduce data magnetically, and optical disks reproduce data optically with lasers. The combination of the above items should also be included in the scope of computer-readable media.
[0130] Instructions may be executed by one or more processors, such as one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuit systems. Thus, the term "processor" as used herein may refer to any of the foregoing structures or any other structure suitable for the implementation of the techniques described herein. Additionally, in some aspects, the functionality described herein may be provided within dedicated hardware and / or software modules. Moreover, the techniques may be fully implemented in one or more circuits or logic elements.
[0131] The technology of the present disclosure can be implemented in a variety of devices or equipment, including wireless handheld devices, integrated circuits (ICs) or sets of ICs (e.g., chipsets). Various components, modules, or units are described in the present disclosure to emphasize the functional aspects of the device configured to perform the disclosed technology, but the various components, modules, or units are not necessarily required to be implemented by different hardware units. Instead, as described above, the various units can be combined in a hardware unit or provided by a set of interoperable hardware units including one or more processors as described above in combination with suitable software and / or firmware.
[0132] Various embodiments have been described. These and other embodiments are within the scope of the following claims.
Claims
1. A method comprising: Receiving, by one or more processors of the computing device, a first indication of a user input corresponding to a capture action to capture content; In response to the content being captured, outputting, by the one or more processors, for display at a display device, a graphical user interface element including instructions for a plurality of actions, wherein the plurality of actions include one or more of an editing action, a cross-device sharing action, a cross-application sharing action, or one or more recommended actions associated with the content. receiving, by the one or more processors, a second indication of user input corresponding to a selection of an action from the plurality of actions indicated by the graphical user interface element; as well as In response to receiving the second indication of user input corresponding to selection of the action, performing, by the one or more processors, the action.
2. The method of claim 1, further comprising: In response to the content being captured, the one or more recommended actions associated with the content are determined, by the one or more processors and based at least in part on the content.
3. The method of claim 2, wherein determining the one or more recommended actions associated with the content further comprises: determining, by the one or more processors, that the content includes a street address; as well as In response to determining that the content includes the street address, determining, by the one or more processors, that the one or more recommended actions include a mapping action that, when selected, enables the one or more processors to present a digital map of the street address included in the content.
4. The method of claim 2, wherein determining the one or more recommended actions associated with the content further comprises: determining, by the one or more processors, that the content includes a uniform resource locator; as well as In response to determining that the content includes the uniform resource locator, the one or more processors determine that the one or more recommended actions include a web browsing action, which, when selected, enables the one or more processors to open the uniform resource locator included in the content in a web browser application.
5. The method of any one of claims 1 to 4, wherein performing the action further comprises: In response to receiving an indication of a user input corresponding to a selection of the editing action, an editing graphical user interface is output by the one or more processors for display at the display device, the editing graphical user interface enabling editing of the content.
6. The method of any one of claims 1 to 5, wherein performing the action further comprises: In response to receiving an indication of user input corresponding to selection of the cross-device sharing action, the one or more processors output a sharing graphical user interface for display at the display device, the sharing graphical user interface enabling sharing of the content with one or more other computing devices.
7. The method of claim 6, wherein outputting the shared graphical user interface further comprises: outputting, by the one or more processors, the shared graphical user interface including an indication of one or more other computing devices; receiving, by the one or more processors, a third indication of a user input corresponding to a selection of another computing device of the one or more other computing devices indicated by the shared graphical user interface; as well as In response to receiving the third indication of user input corresponding to selection of the other computing device, the content is shared, by the one or more processors, with the other computing device.
8. The method of any one of claims 1 to 5, wherein performing the action further comprises: In response to receiving an indication of a user input corresponding to a selection of the cross-device sharing action, determining, by the one or more processors, one or more other computing devices with which to share the content; as well as The content is shared, by the one or more processors, with the one or more other computing devices.
9. The method of any one of claims 1 to 5, wherein performing the action further comprises: In response to receiving an indication of a user input corresponding to a selection of the cross-application sharing action, determining, by the one or more processors, one or more applications with which to share the content; as well as The content is shared, by the one or more processors, with the one or more applications.
10. The method of any one of claims 1 to 9, wherein the content comprises one or more of text, images, videos, audio output or files.
11. The method of any one of claims 1 to 10, wherein the capture action to capture the content comprises a screenshot action to capture a screenshot comprising the content.
12. The method of any one of claims 1 to 10, wherein the capture action to capture the content comprises a copy action to copy the content.
13. The method of any one of claims 1 to 10, wherein the capture action to capture the content comprises a sharing function provided by an operating system of the computing device.
14. The method according to any one of claims 1 to 13, further comprising: receiving, by the one or more processors, a fourth indication of a user input corresponding to a second capture action to capture second content, wherein the second capture action is a different type of capture action than the capture action; in response to the second content being captured, outputting, by the one or more processors, for display at the display device, a second graphical user interface element including indications of a second plurality of actions, wherein the second plurality of actions includes one or more of the editing action, the cross-device sharing action, or the cross-application sharing action; receiving, by the one or more processors, a fifth indication of user input corresponding to a selection of a second action in the second plurality of actions indicated by the second graphical user interface element; as well as In response to receiving the fifth indication of user input corresponding to selection of the second action, performing, by the one or more processors, the second action.
15. The method of claim 14, wherein the graphical user interface element and the second graphical user interface element are visually consistent with each other.
16. The method of claim 15, wherein the GUI element and the second GUI element are of the same first GUI element type.
17. A method as described in any one of claims 15 and 16, wherein the graphical user interface element and the second graphical user interface element each use the same second graphical user interface element type to indicate the editing action, wherein the graphical user interface element and the second graphical user interface element each use the same third graphical user interface element type to indicate the cross-device sharing action, and wherein the graphical user interface element and the second graphical user interface element each use the same fourth graphical user interface element type to indicate the cross-application sharing action.
18. The method of any one of claims 15 to 17, wherein the graphical user interface element and the second graphical user interface element each include indications of the edit action, the cross-device sharing action, and the cross-application sharing action in the same order.
19. A computing device comprising: Memory; as well as One or more processors configured to: receiving a first indication of a user input corresponding to a capture action to capture content; In response to the content being captured, outputting for display at a display device a graphical user interface element including indications of a plurality of actions, wherein the plurality of actions include one or more of an editing action, a cross-device sharing action, a cross-application sharing action, or one or more recommended actions associated with the content; receiving a second indication of user input corresponding to a selection of an action from the plurality of actions indicated by the graphical user interface element; as well as In response to receiving the second indication of user input corresponding to selection of the action, performing the action.
20. A non-transitory computer-readable storage medium comprising instructions, The instructions, when executed by one or more processors, cause the one or more processors of a computing device to: receiving a first indication of a user input corresponding to a capture action to capture content; In response to the content being captured, outputting for display at a display device a graphical user interface element including indications of a plurality of actions, wherein the plurality of actions include one or more of an editing action, a cross-device sharing action, a cross-application sharing action, or one or more recommended actions associated with the content; receiving a second indication of user input corresponding to a selection of an action from the plurality of actions indicated by the graphical user interface element; as well as In response to receiving the second indication of user input corresponding to selection of the action, performing the action.
