Fixes: 35873807
Test: manual, set a notification to enqueue once a second for a few
minutes while also repeatedly granting and denying notification listener
access to a couple of apps in Settings and verifying
that nothing crashes and log is clean.
Change-Id: I15f429d61bf5f9ad639e524a94288a6d2db2cb56
When reparenting a task to another stack have window manager move the
destination stack to the front at the same time it is reparenting the
task if REPARENT_MOVE_STACK_TO_FRONT is set to avoid jank.
Test: manual
Bug: 37299899
Change-Id: I45678e742188a4871f93a11178f7ab2b60c7bcc3
This patch changes how callback unregistration works in order to be
consistent with undocumented use cases currently de-facto supported
by the API (although in a buggy way):
- callback recycling: releasing then reregistering a callback again.
- multiple request registrations with the same callback.
The second use case is not desirable but needs to be taken into account
for now for the purpose of correctly releasing NetworkRequests
registered in ConnectivityService.
In order to support request release in both use cases with minimal
amount of complexity for the time being the following changes are done:
- request to callback unmapping is done synchronously at callback
release time.
- all requests associated to a callback are unmapped at callback
release time.
This fixes the following issues:
- a callback stops being triggered as soon as it is released.
Otherwise when recycling the callback immediately, it is possible
the previous request associated with it triggers it, confusing the
app.
- when a callback is registered multiple times, the requests are not
leaked.
- when a callback is registered multiple times and then released, the
N-1 first registrations do not trigger the callback anymore.
In the future it would be desirable to enforce the intended 1:1 mapping
between callbacks and requests at registration time.
Bug: 35921499, 35955593, 20701525
Test: - added new tests in ConnectivityManagerTest to test releasing,
recycling, and a disabled test for no multiple regristration.
- new tests catch regression causing b/35921499, b/35955593.
Change-Id: Ia0917ac322fc049f76adb4743bc745989fed6d26
This patch introduces a new settings value to specify more than one url
for the fallback http probe in addition to the existing settings value.
If more than one url exists, a network will rotate urls for the fallback
probe one by one everytime the fallback probe is sent.
Test: built, flashed, tested manually with various portal networks.
Bug: 36532213
Merged-In: I3c010bfee5b99db03a500776fbf47959a29d0578
(cherry picked from commit eef918a66c984ac7bb1f541665f4dc9bb88ea7ac)
Change-Id: If4d9a091c3a04a33895032d9b0d05c1dc66968e7
Having PHY_LE_* constants defined in four different places, with one
value being different than others is misleading. Leave just PHY_LE_*
definitions in BluetoothDevice, and add PHY_LE*_MASK for the mask used
in PHY update API.
This patch also removes need to translate PHY value between PHY update
request and event, as mask is used for request, and the value is
returned in event.
Bug: 30622771
Test: manual
Change-Id: I897effa1204a024465d55501c83c542566c4d37c
(cherry picked from commit 9e377194e35c0fb9ac5771f5658c095ed97e0838)
* changes:
Fixing missing movement bounds notification to SystemUI.
Fixing animating bounds regression.
Tightening up rotation behavior for PIP (2/3)
Tightening up rotation behavior for PIP (1/3)