Commit Graph

1716 Commits

Author SHA1 Message Date
Jeff Sharkey
8449edb11a am 2b80a35c: am f5073e71: am 5f4affda: Merge "Clarify DocumentsProvider recents behavior." into klp-dev
* commit '2b80a35cb51e6a4f939bdef0cdf8ab39e3f76905':
  Clarify DocumentsProvider recents behavior.
2013-11-05 14:23:59 -08:00
Jeff Sharkey
37ed78e504 Clarify DocumentsProvider recents behavior.
Bug: 11448309
Change-Id: I17e0ac757e549b251e08d58d5ce7d25fb253883f
2013-11-05 12:38:21 -08:00
Jeff Sharkey
e11b6b036b am b9c28ce9: am 2903d6fa: am c09b6a46: Merge "Better enforcement in DocumentsProvider.call()." into klp-dev
* commit 'b9c28ce9d4f5539e2118822750fa008d5fe77c29':
  Better enforcement in DocumentsProvider.call().
2013-10-31 18:01:56 -07:00
Jeff Sharkey
8a2998eade Better enforcement in DocumentsProvider.call().
Use ContentProvider.enforceWritePermissionInner() to handle all edge
cases around checking if caller has write permissions.  This fixes
bug where call() would throw if caller and provider were the same app.

Bug: 11464234
Change-Id: Iace8e0e4243d56ed1cdcc9680383103975107036
2013-10-31 14:55:44 -07:00
Jeff Sharkey
854419b5c7 am 88c84f97: am dd225d28: am 7fbba162: Merge "Suppress OperationCanceledException logging." into klp-dev
* commit '88c84f97186b9f5808949a8b11357f6f8d27f046':
  Suppress OperationCanceledException logging.
2013-10-29 14:59:28 -07:00
Jeff Sharkey
33819318f6 Suppress OperationCanceledException logging.
These exceptions are normal when an app has cancelled an outstanding
thumbnail request.

Bug: 11385378
Change-Id: I8aed5721b447cda5baf447ac7afd627aa1062863
2013-10-29 11:56:37 -07:00
Jeff Sharkey
8b5f453a82 am de9b66fe: am 3ac436b7: am 80f103ae: Merge "Extra to always show advanced devices." into klp-dev
* commit 'de9b66fee1bdbc914c287fb9a2aa832dc2d3e6f9':
  Extra to always show advanced devices.
2013-10-25 18:22:22 -07:00
Jeff Sharkey
96c620595b Extra to always show advanced devices.
Also always lower-case extension to extract MIME type correctly,
we may want to fix in MimeUtils at some point.

Bug: 11354402
Change-Id: I77d0c06a663cd0c4320c41553ff1980b6f9a7778
2013-10-25 16:30:54 -07:00
Jeff Sharkey
242f2a736b am 0491eaf6: am 3fa9ce8d: am ca8547b4: Merge "Add notification docs to DocumentsProvider." into klp-dev
* commit '0491eaf621816b00f1f93485d8107ca76256939c':
  Add notification docs to DocumentsProvider.
2013-10-23 12:30:23 -07:00
Jeff Sharkey
9352c383e9 Add notification docs to DocumentsProvider.
Bug: 11272209
Change-Id: I97d67c91c4f4a312cbde82afd9e27509c26517b2
2013-10-23 12:15:34 -07:00
Jeff Sharkey
3e41d9bf41 am fc7c4b9d: am 2a48dbce: am 905c50a2: Merge "Improve DocumentsProvider and contract docs." into klp-dev
* commit 'fc7c4b9d7234b645adb31cb819b75ba925adab7a':
  Improve DocumentsProvider and contract docs.
2013-10-15 17:55:45 -07:00
Jeff Sharkey
e8c00d8ed4 Improve DocumentsProvider and contract docs.
Bug: 10567557
Change-Id: I71e7f7ad172e9986e58b9c9533b1c948c5530397
2013-10-15 16:44:22 -07:00
Jeff Sharkey
d70d2d8ee3 am 25b99efb: am ac0cb359: am 8e656df0: Merge "Add extras to AFD, send orientation metadata." into klp-dev
* commit '25b99efb3259c9f6d7bcdacd3cb2bafd6b1a0e63':
  Add extras to AFD, send orientation metadata.
2013-10-15 04:02:48 -07:00
Jeff Sharkey
c1c8f3f97d Add extras to AFD, send orientation metadata.
AssetFileDescriptor augments a ParcelFileDescriptor with details
about how it should be interpreted, so extend it to support a Bundle
of extras.  Then use these extras to share thumbnail orientation
metadata.

The raw image data of EXIF thumbnails matches the orientation of
the enclosing image, but the thumbnail data doesn't repeat the EXIF
flags.  This meant that receivers of openDocumentThumbnail() would
get an image that needed to be transformed, but without enough
context to actually transform it.

Instead of transforming and recompressing the image on the fly on
the provider side, send a transformation hint that the receiver
side can interpret.

Bug: 11205688
Change-Id: Ibc5a7ad002377a55e6ffcb5ac5c8829841002e06
2013-10-14 15:28:19 -07:00
John Spurlock
cf2d725b55 resolved conflicts for merge of f1dd32c8 to master
Change-Id: Ied96bfce952fa95eeceb1b8cf64e53830d4d03ac
2013-10-14 14:49:58 -04:00
John Spurlock
f1a36648ca Implement new SYSTEM_UI_FLAG_IMMERSIVE_STICKY.
Migrate transient bar mode to IMMERSIVE_STICKY, and
introduce new behavior for IMMERSIVE: namely the
opaque bars are revealed by clearing the flags on swipe.

Remove low-profile optimization that confuses api demos
and other apps using low-profile as a signal.

TransientNavigationConfirmation renamed to
ImmersiveModeConfirmation, and its associated resources,
since the confirmation is now shown when the nav bar is
shown in either of the two immersive modes.

Remove unused Toast.makeBar and associated hidden framework
bits now that the confirmation uses a cling instead.

Bug:11062108
Change-Id: Iae49d31973940b9bee9f5b1827756db5eaa76aa3
2013-10-14 13:11:21 -04:00
Jeff Sharkey
6a4991f5ed am 467b30bb: am d0da14a9: am aa841672: Merge "Support overriding calling package in Documents." into klp-dev
* commit '467b30bb2bb1a2333835dd39b78fcd4b2f240ae6':
  Support overriding calling package in Documents.
2013-10-09 14:07:16 -07:00
Jeff Sharkey
e835012229 am 530fcce7: am 4df901a4: am 7cd3e905: Merge "Drop <meta-data> support for DocumentsProviders." into klp-dev
* commit '530fcce7ca266bbd53653fa2ba912c0a1e864e44':
  Drop <meta-data> support for DocumentsProviders.
2013-10-09 14:07:09 -07:00
Jeff Sharkey
15be83612c Support overriding calling package in Documents.
Calling package is only used to pick the stack to restore, not for
security purposes.  This lets other system tools (like Printing)
indicate the real caller.

Bug: 11149540
Change-Id: I155e32577eaeda7dfcb80a7d84ac3b54f281590a
2013-10-09 13:52:26 -07:00
Jeff Sharkey
d2e1e810a7 Drop <meta-data> support for DocumentsProviders.
Prebuilts have finished migrating to new <intent-filter> based
approach.  Also update isDocumentUri() to match new definition.

Bug: 11109484
Change-Id: Ib95e2c3f5a9ff70b8d5e411f68ad49d1990dae8c
2013-10-09 13:31:13 -07:00
Daniel Sandler
32bc10303c am 4be3db70: am f3a56199: am 40bacdf4: Merge "Don\'t wake users up with low battery sounds." into klp-dev
* commit '4be3db7018154406ab74e029482a7d82dbcd3a5a':
  Don't wake users up with low battery sounds.
2013-10-08 16:02:16 -07:00
Daniel Sandler
dea6462aab Don't wake users up with low battery sounds.
Battery sounds will always play when the screen is on, and
then for Settings.Global.LOW_BATTERY_SOUND_TIMEOUT
milliseconds after the screen goes off. After that, low
battery alerts will be pushed out the airlock until the
screen comes back on again.

If battery sounds are suppressed via this mechanism you'll
see a log line like:

	V/PowerUI ( 3161): screen off too long (5779ms, limit
	5000ms): not waking up the user with low battery sound

The default value of LOW_BATTERY_SOUND_TIMEOUT is a settings
provider resource: R.integer.def_low_battery_sound_timeout.

Bug: 10487557
Change-Id: Iddd42038aa630631dc8f1833f20fcc5a0c646681
2013-10-08 17:37:06 +00:00
Amith Yamasani
632b7dc884 am 6db7f39b: am 1eae6109: am 1b5a2e63: Merge "Don\'t backup/restore ringer mode" into klp-dev
* commit '6db7f39ba573fd087c79da9585801c3f277ac8fc':
  Don't backup/restore ringer mode
2013-10-07 17:09:04 -07:00
Amith Yamasani
1b5a2e630a Merge "Don't backup/restore ringer mode" into klp-dev 2013-10-07 23:57:36 +00:00
Amith Yamasani
77c8831ff6 Don't backup/restore ringer mode
Backing it up might result in restoring a new device to a silent,
or vibrate-only state, which is not a good out-of-box experience.

Bug: 11025824
Change-Id: I5b63fd3da012ffc4253338aae31527302a2d276a
2013-10-07 15:23:16 -07:00
Jeff Sharkey
5b6372171c am 9d1383c6: am 5e02e0a9: am bcc77b50: Merge "Add <intent-filter> support to <provider>." into klp-dev
* commit '9d1383c61ca0932cb36b104a89c32db15de6a10e':
  Add <intent-filter> support to <provider>.
2013-10-07 15:16:14 -07:00
Jeff Sharkey
bcc77b502b Merge "Add <intent-filter> support to <provider>." into klp-dev 2013-10-07 21:41:45 +00:00
Jeff Sharkey
85f5f81320 Add <intent-filter> support to <provider>.
For the new documents work, we're only interested in the subset of
ContentProviders that actually implement DocumentsContract.  Instead
of returning all providers, add <intent-filter> support to make it
easier to limit the set of returned ProviderInfo.

Define a well-known action for DocumentsProviders, and start using it
when querying for roots.  Continue supporting the old <meta-data>
approach until all apps have been updated.

Bug: 8599233
Change-Id: I05f049bba21311f5421738002f99ee214447c909
2013-10-07 14:19:13 -07:00
Jeff Sharkey
0841c51696 am 43fac87f: am 77b7f39f: am fc141ef2: Merge "Avoid NPE when ProviderInfo is missing." into klp-dev
* commit '43fac87f2a8f4843614a5784b830801a90f30150':
  Avoid NPE when ProviderInfo is missing.
2013-10-04 17:35:54 -07:00
Jeff Sharkey
fc141ef20b Merge "Avoid NPE when ProviderInfo is missing." into klp-dev 2013-10-04 21:49:07 +00:00
Jeff Sharkey
9095c5a823 Avoid NPE when ProviderInfo is missing.
Bug: 11052428
Change-Id: I6cb0cf2030a28f571c3f13cd0b9ba76627974697
2013-10-04 13:53:50 -07:00
Robert Greenwalt
3378384123 am 72566b98: am 1c6fdd6c: am cac2fd30: Merge "Revert "Use a build-specific wifi country code"" into klp-dev
* commit '72566b98dba80f21923cb6b299754d510951d611':
  Revert "Use a build-specific wifi country code"
2013-10-04 13:36:49 -07:00
Robert Greenwalt
cac2fd302e Merge "Revert "Use a build-specific wifi country code"" into klp-dev 2013-10-04 18:33:51 +00:00
Daniel Sandler
cf4ed58514 am 12aea9d7: am 97bc628f: am 0a660528: Merge "Goo goo ga joob." into klp-dev
* commit '12aea9d7972abad702f9ded550179af722acdf47':
  Goo goo ga joob.
2013-10-04 09:11:03 -07:00
Robert Greenwalt
3ea0c99b67 Revert "Use a build-specific wifi country code"
This reverts commit c33cd23c17.

bug:11064682
Change-Id: I35825a7005e75f3abf02f23f31dee1cb7b101c31
2013-10-03 21:15:54 +00:00
Daniel Sandler
2fdb68b3c2 Goo goo ga joob.
Bug: 10240151
Change-Id: I7b702c397cb9f5ac3294ae27ffc6185df6a64678
2013-10-03 00:19:35 -04:00
Jeff Sharkey
11e9274fc0 am c7ce6985: am 50a8663d: am 437befc1: Merge "Docs change: annotate media intent actions." into klp-dev
* commit 'c7ce69853ad8297ac5cad4a1e91b6f40f0d671d9':
  Docs change: annotate media intent actions.
2013-10-02 10:48:14 -07:00
Jeff Sharkey
32cd2fb596 Docs change: annotate media intent actions.
Bug: 11043141
Change-Id: I66777c5ce25014d8e64da5b4ce3f70334befb0b7
2013-10-02 10:11:25 -07:00
Jeff Sharkey
b6ab3b982b am 7f60e70e: am 666b998b: am 364fc14f: Merge "Detect wedged ContentProviders, treat as ANR." into klp-dev
* commit '7f60e70e815d381035b141843395830407c198d9':
  Detect wedged ContentProviders, treat as ANR.
2013-10-02 09:43:21 -07:00
Svetoslav
2caf51b5bf am 8fd521c7: am 95b1bbfe: Merge "Fix the build" into klp-dev
* commit '8fd521c7447a6f95006adb56cfa60ff49e1befab':
  Fix the build
2013-10-01 23:11:00 -07:00
Robert Greenwalt
d29724c640 am 2b6b3d9c: am bad5d694: Merge "Use a build-specific wifi country code" into klp-dev
* commit '2b6b3d9c495d3c8332aad6515a1db06e8fde3848':
  Use a build-specific wifi country code
2013-10-01 18:50:20 -07:00
Jeff Sharkey
7aa7601c09 Detect wedged ContentProviders, treat as ANR.
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
2013-10-01 09:50:41 -07:00
Svetoslav
95b1bbfe6c Merge "Fix the build" into klp-dev 2013-10-01 00:36:56 +00:00
Svetoslav
f43e851f96 Fix the build
Change-Id: I2d701199808b1a0d482b9593c8b0730a408c3e8e
2013-09-30 17:33:05 -07:00
Alan Viverette
410d4e33c5 Add accessibility display adjustments
BUG: 9057596
Change-Id: I5e7cc05159387cb00701e162d015e2f7ca6cbf4c
2013-09-30 15:38:09 -07:00
Robert Greenwalt
bad5d694c7 Merge "Use a build-specific wifi country code" into klp-dev 2013-09-30 21:13:24 +00:00
Robert Greenwalt
c33cd23c17 Use a build-specific wifi country code
This ignores any previous setting and instead uses
a value set at build time.  This does not preclude
us from using some other signal to determine country
for wifi channel limits.

bug:10513734
Change-Id: Ib82c07285af70fbd82eb0466b7391979ebc8be10
2013-09-29 15:45:47 -07:00
Jeff Sharkey
6efba22ce5 New roots UX, async, performance, docs.
Yet another iteration from UX on how roots should be ordered.  Since
we no longer categorize by type, remove from public API.  Updated
asset drop with new dividers.

Update public API docs to be explicit about required columns.  Hide
flags and columns that aren't required for third-party apps.

Move remainder of potentially blocking work to AsyncTasks, including
creating directories, picked root resolution, and creation of new
documents once picked.

Improve performance of layouts by removing baseline alignment and
reduce hierarchy depth.  Set alpha on ImageViews directly to avoid
offscreen rendering hit.

Limit returned recents to 45 days.  Show load in recents when still
waiting for backends.  Show empty message when no recents stacks to
create from.  Use unique key when saving recent stacks.

Bug: 10941423, 10819454, 10964412, 10960718
Change-Id: I08cf589dcda7e203acf67928f4d30322ae36ee94
2013-09-27 17:13:13 -07:00
Jeff Sharkey
ee2f7df9ee Tighten flags enforcement, API to test Uris.
Check and throw if callers request invalid grant flags.  Add API to
test if a Uri is backend by a DocumentsProvider.

Bug: 10919391, 10935608
Change-Id: Ifa6afefb95983558c8c64dc15ddf650e9fe07080
2013-09-26 13:14:45 -07:00
Jeff Sharkey
e66c1778f8 Require that persistable Uri permissions be taken.
Change our Intent flag to indicate that a Uri permission grant is
persistable, but don't actually persist it until explicitly taken by
the receiving app.  This prevents apps from spamming each other if
persisted permissions aren't really required.

Remember the last time a persisted grant was taken by an app, and
use this to prune away the oldest grants when the number of grants
grows too large.  Allow apps to query persisted grants they are
holding, and allow them to release previously persisted grants. Add
public UriPermission class to return grant details and timestamp.

Track various permission strengths separately, and combine together
after each mutation pass.  Persistable grants are currently treated
like global grants, but they could be moved to have owners in the
future.  Require that grant holders trying to extend a persistable
permission actually hold a persistable permission themselves.

Bug: 10835779
Change-Id: I95b2f797c04ce7fd2612f9a644685dbd44e03759
2013-09-25 15:16:41 -07:00