A variety of related fixes:
- don't force size enable when browsing from device mounted notifications.
- don't show settings menu item as action (put in overflow).
- add sd card icon (not quite yet used, need to suss that out).
Bug:26880985,26883578,26771127
Change-Id: I36f153c42217f8092f157ded2a756c02525593ab
It opens a an alert dialog that tells user application X is requesting
access to folder Y on volume Z; if user accepts, it returns the proper
URI, otherwise it returns RESULT_CANCELED.
The requested path must satisfy the following requirements:
1.It's directory (getName()) must be one of the pre-definied folders on
Environment.
2.It's root (getParent()) must be a valid external storage root.
In order to satisfy #2, DocumentsUI calls the ExternalStorageProvider,
through a custom call() implementation.
BUG: 23011462
Change-Id: I8e491e82ae320df88f7b8923286c4c1ad050ae80
Refactor Jobs to work with files from multiple providers.
Don't shut down threadpool until service#onDestroy is called.
Bug: 26696797, 26462789, 26567205, 25162803, 26714663
Change-Id: Id43e8e3dc2294cd07dcd6a3477b19efb298c260f
Also, add a label to Downloads app, and enabled drag and drop by default.
Cleanued up menu handling in BaseActivity (use switch statement).
Bug: 26033335
Change-Id: I3cef89a4a9f9e30b4e926411e94cf06bc2dc0f8d
Also, don't show copy/paste menu items (though they can still be invoked via keyboard).
Show copy to /move to instead.
Change-Id: I6e7bdf35bf370ea30d4f12a5a200ad38ff0221f4
- Reorganize the directory fragment.
- Repurpose the "empty" view to hold a message and a button.
- Message is set to the "No items" message if a directory is empty.
- Message is set to the error message if a query error occurs.
- Don't close DocumentsUI when a query error occurs.
Change-Id: I4e1e96f23040606b410ac746252dcb0ab9286f04
- Remove footers from DirectoryFragment.
- Add a new MessageBar fragment that can display error/info messages.
BUG=22638983
Change-Id: I2075ae8e4dca8954a09c1fc57ed62bb6d3bff7a9
Add a snackbar that pops up upon deleting files, giving the user a chance to
undo the operation. If the user takes no action, the files are deleted.
This feature basically hides the files temporarily and pops up the said
snackbar, and if the user doesn' hit "undo", the files will be actually
deleted when the snackbar times out.
BUG=23518578
Change-Id: I181395aff967e62ca9287ed6fea2c7c8b8c09a71
* Remove the directory name from "pick" button.
* Allign buttons at right.
* Fix bug that the pick button turns to be hidden after screen rotation.
BUG=20285152
Change-Id: I909d52f341bf67c5627431a354a9b0ccec152a05
Execute encoding/decoding of clipboard data in background...
was seeing a lot of red flashes for large file selections.
Move the majority of the Clipboard management code into a
shared DocumentClipper class.
Hide the copy-to and move-to menus in same.
BUG=20915675
Change-Id: Iff59e846afe6f1e90e6be816f5860d8b7efe3ae1
* Remove the directory name from "pick" button.
* Allign buttons at right.
* Fix bug that the pick button turns to be hidden after screen rotation.
BUG=20285152
Change-Id: I909d52f341bf67c5627431a354a9b0ccec152a05
Add a menu item (protected behind a system property) for moving files.
Add an extra to the copy intent for transfer mode (copy/move).
Add code to CopyService to delete files after copy when in move mode.
Add tests.
BUG=20559838
Change-Id: I983f57a528327d1e7a12982b599094aad2c856ed
Currently only select-all/copy/paste of files is supported.
Note, I wasn't able to push all code into DirectoryFragment,
as Jeff Sharkey suggested, as it doesn't have direct access
to KeyEvents. Bridged this from StandaloneActivity.
Change-Id: I082c457c9c4372e689d3acbca9ae11cd5c554a63
- Enable directory picking for copying.
- Implement recursive copying inside the CopyService.
- Pretty up the notification (use an indeterminate notification while
calculating copy size)
- Do two recursive walks: one to determine the size of the copy job,
and then another to actually copy the files.
- Switch to using ContentProviderClient instances, for better error
detection and handling
- Disable copying from the Recents view.
Change-Id: Ieb38cca80edf84a487547b68f0d6b328fc4d7701
Introduce new ACTION_PICK_DIRECTORY that allows users to grant access
to an entire document subtree. Instead of requiring grants for each
individual document, this leverages new prefix URI permission grants
by defining new "via"-style URIs:
content://com.example/via/12/document/24/
This references document 24 by using a prefix grant given for
document 12. Internally, we use isChildDocument() to enforce that
24 is actually a descendant (child, grandchild, etc) of 12. Since
this is an optional API, providers indicate support with
Root.FLAG_SUPPORTS_DIR_SELECTION.
Extend DocumentsUI to support picking directories. Expose
createDocument() API to work with returned directories.
Offer to canonicalize via-style URIs into direct URIs, generating
exact permission grants along the way. Override openAssetFile()
to pass through CancellationSignal. Move testing code into ApiDemos.
Bug: 10607375
Change-Id: Ifffc1cff878870f8152eb6ca0199c5d014b9cb07
All ContentProvider calls are currently blocking, making it hard for
an app to recover when a remote provider is wedged. This change adds
hidden support to ContentProviderClient to timeout remote calls,
treating them as ANRs. This behavior is disabled by default.
Update DocumentsUI to use a 20 second timeout whenever interacting
with a storage provider.
Bug: 10993301, 10819461, 10852518
Change-Id: I10fa3c425c6a7225fff9cb7a0a07659028230cd3
When restoring a persisted stack, such as last location or a location
where save occurred, freshen the DocumentStack to get the latest
details from backend, and ensure the path is still valid.
Filter Recent directories in create mode based on roots allowed by
incoming request.
Remember when user last picked an external app, and open drawer next
time user launches for GET_CONTENT.
Fix state list drawable ordering, and avoid clobbering Drawable
callback when wrapping in InsetDrawable; tricksy hobbitses!
Make grid items smaller to always fit two columns on phones. Draw
grid items all the way to screen edge; don't clip to padding. Better
error message when folder creation failed. Show Recents in grid mode
when picking any visual content, not just images.
Bug: 10846100, 10903211, 10898993, 10892808, 10892058, 10892009, 10885012
Change-Id: Ia0f88d911abc6ea03645d6fd3e04271c21d5936a
Fixed text colors to match spec. Behold The Greyening! Centered
loader spinner in grid mode. Show multiple lines in status messages.
Add string descriptions. Fix bug where toggling size setting didn't
kick a UI rebind.
Bug: 10510022
Change-Id: Icb41ebeb4de0fed8c04fc6cf5213af1587b72641
Remember instance state across configuration changes, and enable
rotation. This remembers current modes and in-progress traversals.
Always finish action modes after launching an action. Fix sharing
by always putting Uris in extras, and always wrap in a chooser. Find
common MIME types when sharing multiple documents. Fix downloads
launching by following directory MIME type change.
Introduce "Durable" which is like Parcelable, but can be used for
both byte[] storage and Parcel transport. Make both DocumentInfo
and DocumentStack durable.
Disable recents until new behavior is implemented.
Bug: 10460236, 10446265, 10533674, 10456344, 10456702
Change-Id: I4eaf2b0b4cde611c69a1e7b5f1586f6b02019b27