The right way to expose this API is done via MediaBrowser.
Bug: b/28791287
Change-Id: I0a8a185934fd7aaa9f2b5eac7398955fa380060f
(cherry picked from commit b5fbb75aa2)
All draw* calls in Canvas are regular JNI
All draw* calls in DisplayListCanvas are FastNative
Unifies Canvas JNI on nMethodName naming
CanvasPerf results before:
INSTRUMENTATION_STATUS: basicViewGroupDraw_min=12492
INSTRUMENTATION_STATUS: recordSimpleBitmapView_min=13912
and after:
INSTRUMENTATION_STATUS: basicViewGroupDraw_min=11945
INSTRUMENTATION_STATUS: recordSimpleBitmapView_min=13318
Test: refactor, makes & boots
Change-Id: I06000df1d125e17d60c6498865be7a7638a4a13e
By design, ChooserActivity (the activity that shows up when there's an
intent sent that can be handled by multiple apps) always default to not
show if there's only one app available to choose from. This adds the
extra in Intent such that if passed in, the parent activity can choose
to override the behavior and force show the chooser even if there's only
one app. Default is still skipping the chooser.
Bug: 31830662
Change-Id: I17d676e77094cded4af99c7433f511e8c6c58164
(cherry picked from commit 2c5adbdf1942898baa97a3c8a7976fc7c0627902)
Now that WebView can be loaded from one out of a set of packages we
provide an API for fetching information about this package.
Such API is especially useful for debugging crashes.
Bug: 30597460
Change-Id: I13dd746f7efcf2917b517053010b73ea35241325
This is a follow up CL to my previous CL [1] that let
IInputConnectionWrapper to call InputContentInfo#requestPermission()
automatically so that temporary URI permissions can be granted
automatically on API 25+ devices whenever
INPUT_CONTENT_GRANT_READ_URI_PERMISSION is specified.
However, in that CL we forgot to handle exceptions thrown from
InputContentInfo#requestPermission(). This is problematic because it is
actually easy for IMEs to cause SecurityException by specifying a
content URI that does not allow grantUriPermission, e.g.:
inputConnection.commitContent(
new InputContentInfo(Uri.parse("content://call_log/test"),
new ClipDescription("test", new String[]{"image/gif"}));
As a result, IMEs can let the application crash at any time because
InputContentInfo#requestPermission() is automatically called inside the
Framework.
This CL makes sure that exceptions thrown from
InputContentInfo#requestPermission() can be handled gracefully.
[1]: Id955435dd2e72549ee7134f46b3c6951581694ad
f3806f57a5
Bug: 32162481
Change-Id: I08916a1f54518390d3b67ab1673dc901e3f9716a
1. Taking into account scroll state
2. Drawing focus also for views with edges.
Bug: 32099818
Test: Manually ensure that that button draws focus
Change-Id: I085db4deb1561d8b480e4012018d48bc83a7f81f
* Extend this API to take tree URI
* Add toString(), equals() and hashCode() to Path
* Address Jeff's comments in ag/1513538
* Add unit tests for findPath
Bug: 30948740
Change-Id: Iaf852d0e40fae37623e9bb9ffa1c6fbe334c1b21
(cherry picked from commit d4ab7ade7171a4382ef4f61f2a5f078a17800e83)
* changes:
Automatically turn on adb for userdebug and eng builds.
Fixed handling of usb state during adb changes.
Refactored setCurrentFunction and setUsbDataUnlocked into single method.
Remove the kick from config switches in UsbDeviceManager
- This CL provides the framework for manipulating the pinned stack using
an input policy (to be determined later) provided by the SystemUI.
Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testNonTappablePipActivity
Change-Id: I025c41fff26ed05a35d68e59f10330680ed11ea8
Fix a bug where the DisplayMetrics wouldn't be updated for a Resources
object on the default display. Since multi-window, we want to update
all Resources.
This didn't always manifest itself due to recreation of assets, which
would force an update of DisplayMetrics. Re-use of an AssetManager from
the cache would expose the bug.
Bug:32133693
Bug:31998629
Test: cts-tradefed run cts --module CtsServicesHostTestCases
Change-Id: Ic51ab82710517b87eb995ccf982085dba876ad58
With current approach there is a high chance of making a programming
error and altering the state of singleton Configuration.EMPTY object,
because previously configuration was usually set by link to it.
This CL changes the behavior to create Configuration member objects
only once and alter their state afterwards.
Test: Manual and existing tests still pass.
Change-Id: Ie267c2fbf555f137670b7bd2cd251b817c69bc8e
We previously didn't allow home activities to be resizeable due to not fully
understanding how the UX would work. We now have a better idea of how the UX will
work. However, since this is a behavior change for home activities we require them
to explicitly say they want to be resizeable vs. the framework assuming they can
be resizeable based on their target sdk.
Bug: 30982291
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test android.server.cts
Change-Id: I41aefc8c3b3da4c2cf66be81835222196df3ef26
To support resizeable home activities we need to make the home activity
resizeable only when the app explicitly says it is resizeable. To be able
to do that we need to track if we are allowing the app to be resizeable
due to the sdk version it is targetting separately from it explicitly
setting it so that activity manager and window manager can make the right
choices in a follow-up CL.
Bug: 30982291
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test android.server.cts
Change-Id: I10f53ee9e57a41a3edece91cf68c5e8ef4bf4489
The 2-finger gesture feature which this code is used for never
shipped and was removed from the code base.
Test: Existing tests pass.
Change-Id: I1540c8729fe87fef8e39b41747438557a8da2fa6
This gets rid of an extraneous configuration change when going from
adb to adb + file transfer as previously the config would have been
reset once for functions and once for data unlocked.
It also simplifies some of the code.
Test: manually changing usb configurations
Change-Id: Ica10a195338b2189db13113f44657393db110bee
Test: Manual testing with modified experimental print service and new
CTS test for the new API
Fixes: 27746841
Change-Id: I4ef728e54679271a01397d9f04d3b8ac804ffcf3