summaryrefslogtreecommitdiff
path: root/core/java/android/content/ClipDescription.java
Commit message (Collapse)AuthorAgeFilesLines
* Add IS_REMOTE extra for ClipDataMiranda Kephart2022-10-281-3/+11
| | | | | | | | | | | | This extra can be used to indicate that a ClipData comes from a separate device rather than being local. It is a rendering hint that can be used to take different behavior based on the source device of copied data. Bug: 246808749 Test: manual (no behavior change) Merged-In: I6998b7a216fac73a1387367f4179efb95d7562c5 Change-Id: I6998b7a216fac73a1387367f4179efb95d7562c5
* Add Extra to mark ClipData items as "sensitive".Jon Moeller2022-03-291-0/+20
| | | | | | | | | | | | | This extra enables applications to mark ClipData items as sensitive, indicating that the data within should not ordinarily be displayed. Applications (e.g. IMEs that store clipboard history) can use this flag to prevent sensitive data from being unintentionally displayed on screen. Bug: 195554988 Test: N/A Change-Id: Ibccd3944842a40d3e5afec2dd99f32eb7a3564db
* Add logging for app drag and dropWinson Chung2021-08-131-0/+10
| | | | | | | | | | - Allow source to specify an instance id for the drag instance (we'll create one otherwise if not specified) - Log start/drop/end as per go/dragdrop_splitscreen_logging Bug: 191686897 Test: statsd_testdrive -terse 90 Change-Id: I215208777e3627859079abac90520b1772478c5e
* Add text classification results to clip description and clip data.Oli Lan2021-03-101-0/+110
| | | | | | | | | | | | | | | | | | | | | | | With this change, text classification is performed on text in clip data when it is set as the primary clip, if it is below a certain length. This allows information about which entities (e.g. URLs, addresses) are present in the text to be added to the ClipDescription. With toast notifications being added when an app accesses clipboard, this change will allow apps to tell if clipboard contains information they are interested in before they access the clip data. This will allow unnecessary clipboard accesses to be avoided. If entities are detected in the clip data, the results of classification are added to the ClipData so that users of this API do not then need to repeat text classification themselves in order to locate the entities. Bug: 180577441 Test: new CTS tests added to ClipDescriptionTest Change-Id: I334db4805b8b72e0e00c721fe6efe64ec0661a8a
* Add ClipDescription method to determine if the clip is styled text.Oli Lan2021-02-101-0/+23
| | | | | | | | | | | | | | | | | | | | This adds a new method to ClipDescription to allow callers to determine if the associated ClipData is styled text, without accessing the ClipData directly. This information is used by editors such as TextView or WebView when they show a selection toolbar, in order to determine if a "Paste as plain text" option should be shown. Currently, ClipData must be accessed in order to do this, so a clipboard access occurs whenever text is selected. Avoiding these clipboard accesses is desirable because a user-visible message may in future be shown whenever ClipData is accessed (see b/167676460), which may cause user confusion. Bug: 167660455 Test: new tests added to ClipDescriptionTest in CTS Change-Id: I48bea4d11a68b198d60016b364a3cfa0b0bf277e
* 5/ Validate and resolve shortcut & task activity infosWinson Chung2020-11-031-2/+2
| | | | | | | | | - Resolve shortcut activity infos - Fix issue with resolving activity infos for restored tasks after reboot Bug: 169894807 Test: atest DragDropControllerTests Change-Id: I581de3ff31747e4a3369ef5b8c96cef132aa2bb5
* Update ClipData.toString and related code to not leak common forms of PIINikita Dubrovsky2020-10-271-7/+22
| | | | | | Bug: 171732792 Test: atest CtsContentTestCases:ClipDataTest Change-Id: I530795fb8bf6d69e33c1122b1cf8b9e9e4c6aee4
* Merge "Add View.onReceiveContent() and View.getOnReceiveContentMimeTypes()"Nikita Dubrovsky2020-10-271-0/+19
|\
| * Add View.onReceiveContent() and View.getOnReceiveContentMimeTypes()Nikita Dubrovsky2020-10-261-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added View.onReceiveContent() which will invoke the callback if one is set. Added View.getOnReceiveContentMimeTypes() to return the MIME types that the view can receive, removing the getSupportedMimeTypes() method from the callback interface. Changed the code to pass MIME types as a String[] instead of a Set<String> in order to: * Avoid repeated conversion from Set to array in onCreateInputConnection. * Avoid misleading users of the API into using contains() to compare MIME types (ClipDescription.compareMimeTypes should be used in order to correctly handle wilcards such as "image/*"). Bug: 170191676 Bug: 152068298 Test: atest CtsViewTestCases:ViewTest Test: atest CtsViewTestCases:ViewOnReceiveContentTest Test: atest CtsWidgetTestCases:TextViewOnReceiveContentCallbackTest Test: atest FrameworksCoreTests:TextViewOnReceiveContentCallbackTest Test: atest FrameworksCoreTests:AutofillValueTest Change-Id: Id0c7f8f5fd3c7c44827a62dba1b2b205433e7540
* | 2/ Add support for dragging shortcuts and tasksWinson Chung2020-10-261-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | - Add mechanism for creating PendingIntents to launch apps in the same way as starting through LauncherApps service - Require callers starting a task launch to either be the recents component or have the START_TASKS_FROM_RECENTS permission Bug: 169894807 Test: atest LauncherAppsTest Test: atest DragDropControllerTest Change-Id: I2f9f622b4ef7a8aba06b0854a1549a2c07cf38e1
* | 1/ Add basic infra for global drag handling in the ShellWinson Chung2020-10-231-15/+12
|/ | | | | | | | | | | | | | | | | | | | | | | | - Add private window flag INTERCEPT_GLOBAL_DRAG_AND_DROP (protected by MANAGE_ACTIVITY_STACKS permission) to be considered as a part of the normal flow for global drag and drops even if the window is not visible. In addition, the window with the flag receives the clip data on DRAG_STARTED and the drag surface on DROP. If the window consumes the drop, then it will relinquish cleanup of the drag surface from the system. - Add MIMETYPE_APPLICATION_ACTIVITY for an app to report that they are starting a global drag of an activity. The associated data must include an intent with the pending intent and user to launch the activity for. - Add a test drag handler on the shell end to receive the drag, setup a drag layout, and just launch the intent (for now). Bug: 169894807 Test: atest DragDropControllerTest Test: atest DragDropTest Change-Id: I7f5cdca3cf515b693a8f1e507e90e22a670b5fa6 Merged-In: I7f5cdca3cf515b693a8f1e507e90e22a670b5fa6 Signed-off-by: Winson Chung <winsonc@google.com>
* Rename writeToProto to be dumpDebugJeffrey Huang2019-12-051-2/+2
| | | | | | | | | We want to eventually migrate some of these APIs to be @SystemApi for mainline modules. The #dumpDebug name is more appropriate than #writeToProto. Bug: 142279786 Test: Manual Change-Id: I60793e91cedf6b720d4ecef6a8484f4fed4ff30f
* Public APIs for ID-specific Uris, misc items.Jeff Sharkey2019-08-221-0/+10
| | | | | | | | | | | | | | We have getContentUri() for entire collections of items, but we only have ID-specific overloads for some of the MediaStore classes; let's get them all added for consistency. Remove primary/secondary directory logic, which was replaced by new RELATIVE_PATH column before Q launched. Bug: 137890034 Test: atest --test-mapping packages/providers/MediaProvider Exempt-From-Owner-Approval: trivial API refactoring Change-Id: Iae4e7fe57adff071c35af459e31223a1fd05fef2
* All Parcelable CREATOR fields are @NonNull.Jeff Sharkey2019-02-281-1/+1
| | | | | | | | | If they were null, then the Parcelable would fail to work. Bug: 126726802 Test: manual Change-Id: I7929ffa2f20e5de1c8e68e8263cca99496e9d014 Exempt-From-Owner-Approval: Trivial API annotations
* incidentd: dumping jobscheduler to protoKweku Adams2018-01-091-0/+23
| | | | | | | Bug: 65750819 Test: flash device and check incident.proto output Also test: $ cts-tradefed run cts-dev --module CtsIncidentHostTestCases --test com.android.server.cts.JobSchedulerIncidentTest Change-Id: I4abc01ca893edcbaf4d2254e4f807e06f5cb91f8
* Fix a spelling.Sudheer Shanka2017-04-211-1/+1
| | | | | | Bug: 37419581 Test: N/A Change-Id: Ia647911524f0a2ebc304e46753a2299bbdd61617
* Update ClipDescription.getTimeStamp to use currentTimeMillis timebase.Sudheer Shanka2017-04-201-4/+5
| | | | | | | | Bug: 37419581 Test: cts-tradefed run singleCommand cts-dev -m CtsContentTestCases -t \ android.content.cts.ClipDescriptionTest Change-Id: I699bfc073c471534eee0b3aa0300a6b6682ab8dd
* Add new api ClipDescription.getTimestamp.Sudheer Shanka2017-01-301-0/+36
| | | | | | | | | | ClipDescription.getTimestamp can be used to know the time at which the associated ClipData is copied to global clipboard. Bug: 30873580 Test: cts-tradefed run singleCommand cts-dev --module CtsContentTestCases -t \ android.content.cts.ClipDescriptionTest Change-Id: I9486ab3fe0696959d42f6b4c98e40f5becee3019
* Add ClipData.addItem(Item, ContentResolver)Vladislav Kaznacheev2017-01-201-17/+34
| | | | | | | | | | Unlike the existing addItem(Item), this method updates the MIME type list in the ClipDescription. Bug: 28750744 Test: cts-tradefed ... -m CtsContentTestCases --test android.content.cts.ClipboardManagerTest Change-Id: Ida0477267d1319a31a738dfd704c0af71928dd2f
* Hide unnecessary extra name constants in ClipDescriptionVladislav Kaznacheev2016-04-051-0/+2
| | | | | Bug: 27530944 Change-Id: I6989a55ea4f5d16d7cfd2ba3ab9342f0be34113c
* Add extras to ClipDescriptionVladislav Kaznacheev2015-12-021-0/+58
| | | | | | | | | | | | This is required to expand metadata capabilities of DragEvent. Apps receiving ACTION_DRAG_* events have access to ClipDescription, but not ClipData. Adding extras to ClipDescription allows for a richer behavior of apps responding to these events. Bug: 25788641 Change-Id: I07e374f71d16f8441dc3a0b02c7d833e0139b74b
* Add debugging for issue #23190084: [APPComm][Dev Test] {Unable to share photo...Dianne Hackborn2015-08-141-7/+13
| | | | | | | | | | | | | ...from Camera360 to Hangouts } In the short URI toString, include a small summary of the ClipData (instead of just saying it has a clip data). This makes it a lot easier to understand what is happening when you look at the log of activity starts. Also separate out the activity manager dump of URI permission grants from its dump of providers, so it is easy to just look at that state. Change-Id: I68093d9f279944e1aa9a29347075f237f4f55ed3
* Docfixes: three typos and escape */*.John Spurlock2014-01-061-1/+1
| | | | Change-Id: I418d855b5d08a1a20eaca3d8e4d2e5d0fca23dd5
* Add direct support for HTML formatted text in ClipData etc.Dianne Hackborn2012-04-131-0/+5
| | | | | | | | | | | When using the clipboard, ACTION_SEND, etc., you can now supply HTML formatted text as one of the representations. This is exposed as a set of methods on ClipData for building items with HTML formatted text, and retrieving and coercing to HTML (and styled) text. In addtion, there is a new EXTRA_HTML_TEXT for interoperating with the old ACTION_SEND protocol. Change-Id: I8846520a480c8a5f829ec1e693aeebd425ac170d
* Add new Intent API for associating a ClipData with an Intent.Dianne Hackborn2012-03-081-0/+33
| | | | | | | | | | | | | | | | Allows applications to propagate multiple URI grants through an Intent. Later on, we should probably redefine the share actions to be based on this ClipData with the old extras-based approach only there for compatibility. Even if we don't do that, though, this allows you to do a multi-select share that grants multiple URI permissions by stuffing the URIs in a ClipData. Also add some documentation in various places telling people how they can grant URI permissions. Change-Id: Id4ba8e72c11caf7e1f1f438cb7af058d1586a37c
* docs: Add developer guide cross-references, Project ACRE, round 4Joe Fernandez2011-12-221-0/+7
| | | | Change-Id: I1b43414aaec8ea217b39a0d780c80a25409d0991
* Fix some SDK build breakage. Not all.Dianne Hackborn2010-08-271-1/+1
| | | | Change-Id: I2791b0a7c48d03cb6e5ca93771efb56c0a0c1956
* Improve clipboard API.Dianne Hackborn2010-08-271-0/+206
- Rename ClippedData to ClipData. - Introudce ClipDescription subclass. - Add convenience APIs for creating a ClipData. - Add ClipboardManager API to get just the ClipDescription. - Define MIME types associated with a clip. Change-Id: If97ef91aa99a4dd0ec74ccaea504345c9ef12b5c