- When we return early when detecting when to skip applying the bounds
the stored bounds and rotation weren't being updated
- In landscape, the addition of the nav bar inset in the bottom pushed
the movement bounds to be out of range, which cause an incorrect
offset to be calculated
- Simplified the logic to calculate the offset for the adjustment for
IME and shelf -- keep track of the previous offset, check the previous
movement+offset bounds with the next movement+offset bounds and only
update if the PIP is currently between those two bounds
- Tweak to landscape policy, if there isn't enough space for the ime
offset, then don't apply it as a part of the shift
Bug: 126199952
Test: Go to landscape + pip, open IME and dismiss IME and ensure the
PIP is pushed off and restored correctly
Test: In portrait, test going from app/home/ime and verify that the right
offsets are applied, and then if the stack is not in the bounds of
the offset change, that it is not applied
Change-Id: I67eee7d321995f403137db940b06f685d0c919af
Idmap now checks if the version of the vendor partition is greater than
or equal to 29 or a development codename to enable enforcement of
overlayable resources.
Bug: 119390857
Test: manual
Change-Id: Ica25800432993beb7464436d4fba7cb391e621ef
We cannot create an API for now, hence the code needs to be duplicated.
Make sure we find the twin-class.
Test: Built
Bug: 131188778
Change-Id: I1cf50f15fb63fd02d9c6a0f326c3a5cd90192d8c
So that later we can add more policy to it.
Test: atest CtsPermission2TestCases:RestrictedPermissionsTest
Bug: 131188778
Change-Id: Idc8738cbdb418fa7494100309345660139f32373
If NetworkMonitor detects partial connectivity before
EVENT_PROMPT_UNVALIDATED arrives, show the partial
connectivity notification immediately. Re-notify
partial connectivity silently if no internet
notification already there.
Bug: 130683832
Bug: 130766237
Test: atest com.android.server.ConnectivityServiceTest
Change-Id: I7d4eddc643ec795c3961097dc1bdd314d168f6c7
Merged-In: I1b79d3faf96ffe792738935088e4ebbdfcc0d878
(cherry picked from commit 58d4e7304c)
This reverts commit b023773a18.
Reason for revert: Not yet decided to release this at this stage
Change-Id: Ic0018cadcc228667a64f6f8c694bb6a04f00adc9
Bug: 130857483
Bug: 133201131
Bug: 132291669
When using multi-mode and holding the phone in portrait, android will
report it's orientation as LANDSCAPE. Take multi-window mode into
account when determining fixed widths as well as number of items per
row.
Bug: 132828939
Test: Use multi-window mode
Change-Id: I97b722ea58c9f79aea2a3ab594c3ad7d78f8607c
1. A previous change was made in ConnectionServiceAdapterServant to add
another parameter, requiring the user of SomeArgs. I think this fix is
pretty self-explanatory. (facepalm)
2. queryRemoteConnectionServices in ConnectionServiceAdapter had an issue
where the callback would not get called if there was more than one
IConnectionServiceAdapter instances. This isn't an error condition, but
a condition where we don't query telecom for the list of valid remote
connection services. We ensure a callback with an empty list is made
(this is similar to what Telecom already does).
This seems to be an issue inherent with DSDS because there can be multiple
SIM ConnectionServices where before there was only one.
Test: Run CTS tests.
Bug: 133639062
Change-Id: I1c508e97d1f0ea1bc72ad7ebd026c1ad66a52de3
Currently, updateBoundsSurface was getting called when the surface
changed, not just when the size changed. This meant it could be calling
setWindowCrop and deferTransaction when no size had changed. If size
hadn't changed, there was a high possibility that no new frames would be
submitted by the client, causing the deferTransaction to wait forever.
Since the deferTransaction was still waiting, SurfaceFlinger would wake
up every vsync to check if it should call doTransaction for the deferred
transaction. This caused 60Hz composition even when frames were rendered
slower.
Fixes: 132110524
Test: SF doesn't compose 30fps app at 60Hz
Change-Id: Icf3a99b34c288575438bfcd05e9077ea7919b4ca
ITelephony can enter a bad state with an incorrect SubId and throw an
NPE as shown in the attached bug. This is not an expected error, so a
bugreport will be triggered on userdebug builds on catch.
Test: Local
Bug: 134067547
Change-Id: Ib8f3b69eb3870c3567578aadaee6cf2693526fbd
Previously when batterystats history buffer exceeds MAX_HISTORY_BUFFER
size, we create a new history file which is empty until batterystats
history buffer is written to the file. But the buffer is written to the
file every 30 minutes by default. When the file is empty, if the
system server process crashed or abrupt powered off, the file will remain
empty.
During the device bootup, batterystats reads history buffer from
the empty file and failed. The important mHistoryBaseTime variable is zero,
which causes all timestamps in subsequent history events are wrong, this
causes volta go/powerbug displays wrong, also Battery Usage in Settings
are wrong.
The fix is to not create new empty history file on disk until we actually
write history buffer to the file.
This problem can be manually reproduced by creating new empty file under
battery-history directory, then power off the device by long press power
button.
Bug: 133525277
Test: frameworks/base/core/tests/coretests/src/com/android/internal/os/BatteryStatsHistoryTest.java
Change-Id: I0c22881df6897e8832b472cc5e82fbf2727eb252
This reverts commit 3c2731fdce.
Reason for revert: This was only needed to unbreak internal dogfooding
Test: This is a clean revert
Bug: 134161027
Change-Id: I309bc5158190da71fc0ba867a5d15c6260623ed5