summaryrefslogtreecommitdiffstats
path: root/packages/DocumentsUI/AndroidManifest.xml
Commit message (Collapse)AuthorAgeFilesLines
* Delete StandaloneActivity from M (DO NOT MERGE)Steve McKay2015-05-111-11/+0
| | | | | | | The activity is already disabled by default. Fix an issue where copy support error handling was attempting to invoke StandaloneActivity. Change-Id: If15c312a183cae1b2a84517e7f7b3123c11bd619
* DocumentsUI roots can have settings.Jeff Sharkey2015-04-121-1/+1
| | | | | | | | | | Roots use a flag to indicate they have settings, and DocumentsUI offers to launch towards someone who handles a new Settings intent. Slight rename of browse intent for clarity. Bug: 19993667 Change-Id: I86302ec1cfac5e435d8bc5701bdb85fb9b0dcbae
* Browse mode for DocumentsUI, removed volume state.Jeff Sharkey2015-04-121-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The existing management mode is too specific, and requires that storage backends add queryChildDocumentsForManage(), etc. Instead, to offer more natural browsing support, add a new BROWSE_ROOT intent. It behaves mostly like MANAGE_ROOT, except that it doesn't mutate its Uris with setManageMode(), and it shortcuts straight to VIEW on clicked documents. It can be launched like this: $ adb shell am start -a android.provider.action.BROWSE_ROOT -d content://com.android.externalstorage.documents/root/8405-1DFB -c android.intent.category.DEFAULT Also rename a MetricsConstants to make it clearer, and don't auto-mount all emulated volumes. Fix bugs around parceling of DiskInfo/VolumeInfo. Method to resolve the best description for a VolumeInfo, which might need to fall back to DiskInfo. Add back "removed" volume state so we send broadcast when a volume is destroyed, matching the expected public API behavior. Bug: 19993667 Change-Id: I13aff32c5e11dfc63da44aee9e93a27f4690a43f
* Enable directory selection. Add an IntentService to copy files.Ben Kwa2015-04-031-0/+5
| | | | Change-Id: I0bec0224aa1b52766664c23f77d60affec702111
* Implement a standalone file manager activity.Steve McKay2015-03-251-1/+12
| | | | Change-Id: Iaf86ef416b979cea4ab3890d3a26f09741392c3d
* Move DocumentsUI settings into overflow menu.Jeff Sharkey2014-08-081-6/+0
| | | | | | | Also use different strings based on device type to make clearer. Bug: 13437894 Change-Id: I4053780de2c7197fb45cc53aee7659e9d0d75c0a
* More DocumentsUI material iteration.Jeff Sharkey2014-07-291-1/+1
| | | | | | | | | | | | | | Move to using Toolbar for all actions. Drawer contains its own Toolbar with separate title, and hamburger is always visible. Change drawer items to match spec. Switching to Toolbar allows us to remove nasty dialog-on-tablet hacks, yay! This also means we can finally get real IME resizing support. Move to using elevation for all shadows; this removes more nasty hacks around drawing directory shadows. Bug: 15836082 Change-Id: Iba70b898f385a7debd8aabfc98ff39d20bca860d
* Refactor directory API to "opening document tree."Jeff Sharkey2014-06-091-1/+1
| | | | | | | | | Cleans up API so it consistently refers to opening or working with a subtree of documents. Also separates isChildDocument() support from the concept of directory tree selection. Bug: 15429194 Change-Id: Ice66a751ff4bd0cc4d34c44c5da13a0dc4186dc9
* Add directory selection to DocumentsProvider.Jeff Sharkey2014-04-221-12/+6
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* Switch framework Holo references to Quantum.LightAlan Viverette2014-04-011-1/+1
| | | | Change-Id: Ib545a143f1959b6104adbc9d594dd626851d90b3
* Remove persisted stacks when app removed/cleared.Jeff Sharkey2013-10-241-0/+8
| | | | | | | | When an app's data is cleared, or it's uninstalled, remove any persisted stacks. Bug: 11355566 Change-Id: I4e5cf0ec710591ad62f1ad52c2e358616631af41
* Detect wedged ContentProviders, treat as ANR.Jeff Sharkey2013-10-011-0/+1
| | | | | | | | | | | | | 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
* Create unique files, root ordering, UI bugs.Jeff Sharkey2013-09-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | When a file already exists on disk, try adding a counter suffix to make a unique name. Move services near top of roots list, just below recents. Remove "Documents" root. Increase number of recents allowed from single provider, and add more logging to diagnose wedged loaders. When launching GET_CONTENT apps, wait for successful result before relaying result; canceled requests now return to DocumentsUI. Add CloseGuard to ContentProviderClients, since leaked instances can keep the remote process alive. Fix UI bug around trailing breadcrumbs. Fix bug that dropped Recents from roots list. Add up action to Settings activity. Give our activity a default icon while waiting for async roots to load. Bug: 10818683, 10819461, 10819461, 10819196, 10860199 Change-Id: I7b9e26b1cf8353dd3175458b23da2b4bda6c5831
* Load RootInfo in background, invalidation.Jeff Sharkey2013-09-191-8/+0
| | | | | | | | | | | | | | | | | Move all RootInfo queries to background threads to avoid janking the UI. Update passes happen on spawed task, which swaps out updated cache results when finished. Support partial updates when only a single package/authority has changed. Watch for change notifications for roots, since flags can change over time. Ignore stopped packages when in background, but query them for roots when launching any picker UI. Optimize management launches by treating as one-shot requests that don't need to wait for all RootInfo. Bug: 10600454, 10745490 Change-Id: Ibc7b15688ef6b41bd7e9dd0d7564b501e60e49a9
* DocumentsUI tablet support.Jeff Sharkey2013-09-121-3/+3
| | | | | | | | | | | | | | Shows as a faux dialog on larger tablets, since the normal dialog themes from framework don't support action bars. Instead, this hacks itself to look like a dialog with an InsetDrawable. Detects touches in dim area to dismiss dialog. Show all action bar icons on tablets, and roots panel is always visible with a different shadow. Show settings in dialog. Allow mode switches in recents. Bug: 10329832 Change-Id: Id02982ce7b0d4694962d32f8d5286fdfcc207208
* Separate root and document management.Jeff Sharkey2013-09-061-3/+2
| | | | | | | | | Two hidden intents for managing roots and documents, used to support Downloads UI. Touching an item tries launching as MANAGE_DOCUMENT first before falling back to VIEW. Provide MIME type for roots. Bug: 10446265, 10531347, 10599641 Change-Id: Ia5584bd6ce3e5a9b0048e8caf1447e3053664413
* Instance state, fix sharing, Durable objects.Jeff Sharkey2013-09-011-5/+2
| | | | | | | | | | | | | | | | | | | 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
* Stronger DocumentsProvider contract.Jeff Sharkey2013-08-281-2/+2
| | | | | | | | | | | | | | | | | | | Using a contract class requires that a provider implement it exactly with little help. This change introduces a DocumentsProvider abstract class that provides a client-side implementation of the contract that greatly reduces developer burden, and improves correctness. This also moves to first-class DocumentRoot objects, and moves calls with complex side effects to be ContentProvider.call() invocations, offering more granular permission control over Uri operations that shouldn't be available through Uri grants. This new design also relaxes the requirement that root information be burned into every Uri. Migrate ExternalDocumentsProvider and DocumentsUI to adopt new API. Bug: 10497206 Change-Id: I6f2b3f519bfd62a9d693223ea5628a971ce2e743
* Management actions, invalidate caches.Jeff Sharkey2013-08-181-0/+9
| | | | | | | | | | | | | | In manage mode, touching launches a VIEW intent for the file. Also adds actions for sharing and deleting. Move roots and thumbnail caches into Application object, and flush cache when thumbnail size changes. Listen for package changes and broadcasts that should invalidate our roots cache. Pick default grid/list mode based on provider hint. Bug: 10329983, 10330210, 10378834, 10330069 Change-Id: I75afb1c58ab71bb9d55852b1059da7257a376248
* Documents management mode; API adjustment.Jeff Sharkey2013-08-151-0/+6
| | | | | | | | | | | | | | | Create documents manage mode to support Downloads and transient storage devices. Locks user into requested backend root, and forces file sizes on and sorting by last modified. Separate API constants for Documents versus Roots, and give concrete MIME types for roots. Treat null sizes as unknown. Documents are always enabled in list so that divider is drawn. Mark external storage file as writable. Bug: 10329983, 10332993, 10332952 Change-Id: I05f4fdf5b04041a38e1ba7fb30202a3b0c615bf6
* DocumentsUI handles GET_CONTENT; hinting, errors.Jeff Sharkey2013-08-151-0/+8
| | | | | | | | | | | | | | Document browser now takes over all GET_CONTENT requests that request openable Uris. It shows both storage backends and includes other apps that respond to GET_CONTENT. Only grants transient read permissions. Better guarding against throwing storage backends. Send sort order and local-only hinting to backends. Require that OPEN/CREATE_DOC users include openable category. Bug: 10330112, 10329976, 10340741, 10331689, 10329971 Change-Id: Ieb8768a6d71201816046f4a4c48832061a313c28
* Settings, replace files, sorting by size, tweaks.Jeff Sharkey2013-08-071-1/+9
| | | | | | | | | | | | | | | | Add settings to show file sizes and advanced storage devices, both disabled by default. Add sorting by size when enabled in settings. Always show all documents, but only allow selection when they match MIME filter. When creating, select entire filename on focus. When creating, treat selected documents as replacement targets using that exact Uri unless display name is changed. Show available bytes for device roots. Show empty text label in empty directories. Split grid backend and details into two separate lines. Fix path label ordering when rendering recent directories. Change-Id: I44c62e8adb8ca7d4355510a13d1ba975196a2d29
* Recents in create, uniform item layouts.Jeff Sharkey2013-08-061-1/+4
| | | | | | | | | | | | | Show recent directories in a separate fragment, and save as serialized versions of new DirectoryStack. Cleaner behavior around recents and search, instead of treating them as pseudo-Documents. More uniform item layouts between list and grid, including both date and size information, and originating storage root in recents. Avoid clashing directory loaders by assigning unique numbers. Promote list/grid switching up into activity. Change-Id: I9a93460b896067ca036d7e772eeabde31face2e1
* Reference docs by ROOT_ID and DOC_ID; recents.Jeff Sharkey2013-08-021-0/+5
| | | | | | | | | | | The same document may be present with different sematics under multiple storage roots, so always reference using both ROOT_ID and DOC_ID. This enables backends to revoke permissions for an entire root, such as when an account is removed. Start building provider to remember recently accessed documents. Change-Id: I75befa2e61393dec12fcc7fd27f631fcddae46fa
* Disable documents test UI.Jeff Sharkey2013-07-161-1/+1
| | | | Change-Id: Iae8ef3e751a53a3f7df0a7c5bc666ec75e91d9e9
* Support sorting in storage UI.Jeff Sharkey2013-07-011-1/+11
| | | | | | | | | | Extract mode information into DisplayState which is now consistent across directory traversal. Use grid mode by default when working with images. Dialog to switch sort order. Add testing UI to exercise until we have real clients. Change-Id: Ic423584d4559732fb3d2aea9e0406b57d43f6e6d
* Iterate on storage UI.Jeff Sharkey2013-07-011-1/+3
| | | | | | | | Support both grid and list view of documents. Show breadcrumb navigation trail in action bar. Start supporting file and directory creation. Change-Id: I93a973da7b0d4387a57fe719e7bb20944adb0290
* External storage provider, document picker UI.Jeff Sharkey2013-05-011-0/+21
Continuing to flesh out storage backends by adding an external storage document backend. Still rough, but it can traverse files and directories. Early pass at OPEN/CREATE_DOC picker UI, which offers to traverse any known storage backends. Supports opening subdirectories and returning a picked file. Change-Id: Idc3554036b3816a93d9b465ee8a620746859d2ae