This adds stub generation for the non-updatable part of the platform,
and changes the full stub jars to be a combination of multiple jars:
the stubs of the updatable modules and the stubs of the remaining part
of the platform.
Composing the stub jars like this allows overriding the individual parts
with prebuilts rather than building everything from source. This makes
the build safer, as we can make sure that the stub of the apex that is
used is also what is used to build the rest of the platform against.
The monolithic droidstubs rules remain for now, as it has other
functions than generating stub sources (api lint, current.txt,
checklast). It remains a goal to get rid of this, but by submitting this
CL first it can be done in steps.
Bug: 144149403
Test: m android{,_system}_{monolith,merged}_stubs_current
Test: m
Change-Id: I255486112c03f237aa342cfb93f3b473a2f50470
Merged-In: I255486112c03f237aa342cfb93f3b473a2f50470
Test: make, flash, let device go to sleep due to keycode_power and
energy saver mode, verify that <Standby> is only sent when mIsActiveSource is true.
Bug: 155228844
Change-Id: Ie62d60e8c4fa573aac6c08a4c1093d5f1a52d7f3
If upstream is cellular, set the TTL in Router Advertisements to
"network-set TTL - 1" for carrier requirement. For other non-cellular
upstream, set TTL as "network-set TTL + 1" to preventing arbitrary
distinction between tethered and untethered traffic.
Bug: 154776299
Test: atest TetheringTests
Merged-In: I7f2696a642f96c6aafb5613b980bf5bcdd08bbda
Change-Id: I7f2696a642f96c6aafb5613b980bf5bcdd08bbda
When quick switch a delayed task, before onTaskAppeared called,
if the user holds gesture on nav bar, TRANSIT_WALLPAPER_OPEN from closing
app happens will cancel recents animation when
WC#applyAnimationUnchecked, and that will cause the black screen if the
delayed task not yet drawn and there is no recents task snapshot on top.
Since cancelling recents animation during quick switching doesn't make
sense, to fix that, we should check the animation task target if is
still controlled by recents animation, if so, we should not cancel it.
Also, make sure if the appeared task has already been in task target list,
(i.e. task A appreared, quick switch to task B, before task B appeared,
quick switch back to task A) if so, we don't need to callback task
appeared again.
Fix: 156670249
Test: manual as issue test steps.
Change-Id: I303403d63c91c08fabcb8c5b1b1aac42c4ec65db
Previously CL[1] used display#ensureActivitiesVisible instead of
stack#ensureActivitiesVisible, and it caused recursive calls on
ensureActivitiesVisible in a very hidden way. A possible scenario
is when an activity paused and AM tried to resume another activity
which did not support multi-resume.
[1]: Id8253eb97581a9dd52ab748117d9cd4cc63a206d
fixes: 156189923
Test: atest DisplayContentTests#testEnsureActivitiesVisibleNotRecursive
Change-Id: Iba2a052e4a1d91edfc6fa80954a730ad5ca3ff0d
The original code for translating volume key presses into CEC
commands was sending the equivalent of a key up / key down for
each call to adjustSuggestedStreamVolume. This behavior caused
CEC commands to pile up in HdmiControlService, and a repeated
key press (user keeping finger on volume button on remote) would
cause volume to still change on the CEC device handling volume
even after the key was released.
The fix consists in changing how PhoneWindowManager communicates
with AudioService, by passing the key event directly, so AudioService
can communicate the key up / key down information to the CEC
library, which already deals with repeated commands on the CEC bus.
Bug: 137311120
Test: connect DUT to CEC TV or receiver capable of handling vol cmds,
keep pressing on vol key, verify releasing key stops volume
changes on TV/receiver.
Change-Id: I7a75af651b6b424129515a8991b5afb15c62dba3
Merged-In: I7a75af651b6b424129515a8991b5afb15c62dba3
(cherry picked from commit 12ba113894ec8ad7c24913a0a09ea70047d25353)
(cherry picked from commit 7e58c9145d71ba92053ad6629f910456566cfea9)
Expired the old response while received input method subtype changed.
When user next tap on an autofill field, trigger a new fill request for
the new input method.
Bug: 150483555
Test: manual switch imput method
Test: atest CtsAutoFillServiceTestCases
Change-Id: I97be067db3a79d2481c05aeb59875ec24514199d
Bug: 154869719
Test: atest TetheringTests
Original-Change: https://android-review.googlesource.com/1288503
Fix TetheringServiceTest test WRITE_SETTINGS permission failure
AdoptShellPermissionIdentity can not pass permission check by
Settings#checkAndNoteWriteSettingsOperation. It would compare the caller
uid and its package name. See error below:
1. java.lang.SecurityException:
Specified package com.android.shell under uid 10239 but it is really 2000
2. java.lang.SecurityException:
uid 10245 does not have android.permission.UPDATE_APP_OPS_STATS.
Override the method and test if caller hold WRITE_SETTINGS directly.
Bug: 154869719
Test: TetheringTests, TetheringCoverageTests, NetworkStackNextTests,
NetworkStackCoverageTests
Original-Change: https://android-review.googlesource.com/1313806
Change-Id: I7beea3f011d930e433443ed62d772a3f8cce5d78
Merged-In: I7beea3f011d930e433443ed62d772a3f8cce5d78
Illegal state warning logs were able to observe on normal
activity starts flow.
Also should only returning the activity if it is the descendant
of this task.
Bug: 156882835
Test: atest TaskTests
Change-Id: Ia44bbbd8254e3f05b440153c180a3317e4d79209
UidAtomTests:testAppOps is a test class and test method of
CtsStatsdHostTestCases. To run this in Test Mapping, it should
specify CtsStatsdHostTestCases. as the name in TEST_MAPPING file,
and android.cts.statsd.atom.UidAtomTests as the options.
Bug: 155714228
Test: presubmit test.
Change-Id: I7df08ae811425020ebbeae6a8e9f1317065c00c9
The app-op wasn't required back then, and granting it shouldn't change
the filesystem view.
Bug: 150819885
Test: atest CtsNoPermissiontestCases25 (still fails, but for a different
reason now).
Change-Id: Id505013233c44ad624d3a4b929bbd3c36ecfd8ce
If a top-fullscreen-app window is hiding status bar but the focus is
changed to a non-fullscreen window, we let the top-fullscreen-app window
keep controlling status bar. This CL makes the logic compatible with the
legacy insets mode.
Fix: 156322689
Test: WindowInsetsControllerTests
Change-Id: I74387c2c794c8a5a7056eea3ba4ec7257c66652a