Before this CL, there is a possible phishing attack allowing a malicious
BT device to acquire permissions based on insufficient information
presented to the user in the consent dialog. This could lead to local
escalation of privilege with no additional execution privileges needed.
User interaction is needed for exploitation.
This CL add more prompts presented for users to avoid phishing attacks.
Merge Conflict Notes:
There were a number of entries in strings.xml that did not exist on this
branch. However, as the CL only adds new entries rather than modifying
old ones this should not cause a problem. There were no merge conflicts
in the java files.
Bug: 167403112
Test: send intent to test right prompts message is pop up. make -j42 RunSettingsRoboTests
Change-Id: Idc6ef558b692115bb82ea58cf223f5919b618633
Limit the component that may resolve this intent to the
bluetooth package.
Bug: 158219161
Test: Security Fix
Tag: #security
Change-Id: If732f940a7aa256f5975349118e8eb6cf5584676
Prevent non-system overlays from showing over notification listener consent dialog
Bug: 170731783
Test: use a visible overlay, ensure it's gone when notification consent is open
Change-Id: I58e017982f385ffc0d0ba2174512490b1d83dd36
Prevent non-system overlays from showing over notification listener consent dialog
Bug: 170731783
Test: use a visible overlay, ensure it's gone when notification consent is open
Change-Id: I58e017982f385ffc0d0ba2174512490b1d83dd36
Prevent non-system overlays from showing over notification listener consent dialog
Bug: 170731783
Test: use a visible overlay, ensure it's gone when notification consent is open
Change-Id: I58e017982f385ffc0d0ba2174512490b1d83dd36
Prevent non-system overlays from showing over notification listener consent dialog
Bug: 170731783
Test: use a visible overlay, ensure it's gone when notification consent is open
Change-Id: I58e017982f385ffc0d0ba2174512490b1d83dd36
Root cause:
Settings listens to four package-related broadcasts in order to refresh
injected items because UI data may change. However, when the system is
updating apps on the first boot, it triggers a burst of broadcasts. For
each broadcast Settings will reload and then redraw all injected items,
which leads to the flickering.
Solution:
1. When Settings recieves a broadcast, check if there are already two
reloading tasks to avoid redundant updates.
2. In the reloading task, check if any injected item is changed, added,
or removed to notify categories changed.
3. Only refresh the UI when any of the changed items belongs to the
current page.
Bug: 166785977
Bug: 168309941
Test: manual, robotest
Change-Id: I77745b60f84510554bff1870a5bb7a8013eab528
Merged-In: I77745b60f84510554bff1870a5bb7a8013eab528
(cherry picked from commit 20df25e6b9)
eUICC card could potential in the card error state and all the eSIM
operations will fail which could be fixed by a reboot. Thus, we need to
pop up a dialog to inform users that their eSIM profiles cannot be
erased successfully.
Bug: 163078560
Test: Manually tested by mocking the eUICC card error state.
Mock: https://docs.google.com/presentation/d/1AVNXxPbieTX1KmoewG4mo3xWPnEZyba_h9rPcwHHcr8/edit#slide=id.p
Change-Id: I102fb2de889e08554f525f2cbe1528bb9a37afd7
1. Make Wi-Fi card default to collapse.
2. Support showing a default card when there's no displayable card.
3. Solve the problem of icon not showing for cached slices in card
renderer
Bug: 163288869
Fixes: 159092915
Test: manual, robotest
Change-Id: Ie8b61ad58410337334e29b7a794353b0c6a6ba8c
To prevent the UI jank causing by the async card loads, we pre-allocate
some space for the card to fill in. After this change, only one card can
be shown at a time.
More details:
- When the card number configuration is set to 0, don't trigger the card
loader.
- The height adjusting logic is as follows.
When Settings is opened, pre-allocate a space first.
After the RV finish laying out, reset the RV to wrap_content. So if the
card has to be expanded(eg. wifi large mode or dismissal view), then it
will adjust the height accordingly. While if a card previously shown
becomes unavailable(dismissed or conditions not meet), we also reset the
RV so the space can be gone.
Bug: 163288869
Test: robotest
Change-Id: I0dcb2dae8f0533e562ad06f664b7ae7a9afecd21
If level is the same previous level, the icon didn't updated.
Bug: 162505961
Test: fake the list and check item's icon. PASS
Change-Id: I6c40bfb40fe0d1c5d576b8cc0bc5190d9ab3ef04
- Enable the filterTouchesWhenObscured attribute on all toggle
switches in all pages of the special app access
Bug: 155288585
Test: make RunSettingsRoboTests
Merged-In: I011cfe4b7e4e624a8338332ac47a353f7f3ab661
Change-Id: I85842db3faa558ea61bc878ca76ff6d8ce1a4b03
Manual network select need to have carrier name in order to
display to the user when failure.
Bug: 161425622
Test: manual
Change-Id: Ib77c14273bc9b9ea17c41cdd40f7bad0af4abc93
(cherry picked from commit bdd5e86974)
Applying to d1-dev as this change will be propagated to qpr branch.
Remove Developer Option Enhanced Connectivity. Remove controller and
layout variables/tests.
Bug: 162231796
Test: On Device Custom Build. Testing BSM trigger. Developer Option does
not appear anymore.
Change-Id: I8a385eb444e84975a3bbd7c063c5ce94e507c25f
- Enable the filterTouchesWhenObscured attribute on all toggle
switches in all pages of the special app access
Bug: 155288585
Test: make RunSettingsRoboTests
Merged-In: I011cfe4b7e4e624a8338332ac47a353f7f3ab661
Merged-In: I0731057ec6e77c6a0867784c729c3f5812ef6170
Change-Id: I02c372423287366d0706bcdf7cdecff48db2e22a
When "Add guest" got tapped multiple times then the first click starts
the guest creation process which blocks the UI thread for around 2-3
seconds, then triggers the open guest details intent, and the second
tap event starts another guest creation, but it fails (since there
can't be more than 1 guest on the device) and returns null, and in the
openUserDetails we get NullPointerException.
Test: manual test
Video: http://shortn/_i4Dce33yhl
Bug: 160267016
Change-Id: I9a4f0a91295e336d246abe5f5470682a14cb510f
- Enable the filterTouchesWhenObscured attribute on all toggle
switches in all pages of the special app access
Bug: 155288585
Test: make RunSettingsRoboTests
Merged-In: I011cfe4b7e4e624a8338332ac47a353f7f3ab661
Merged-In: I0731057ec6e77c6a0867784c729c3f5812ef6170
Change-Id: I0731057ec6e77c6a0867784c729c3f5812ef6170
- Enable the filterTouchesWhenObscured attribute on all toggle
switches in all pages of the special app access
Bug: 155288585
Test: make RunSettingsRoboTests
Merged-In: I011cfe4b7e4e624a8338332ac47a353f7f3ab661
Change-Id: I0731057ec6e77c6a0867784c729c3f5812ef6170
- ag/11612781 added filterTouchesWhenObscured to toggle widget
can't prevent the click behavior pass through the overlapped view.
- Due to click events was handled by SwitchPreference instead of the
toggle widget.
- Enable the filterTouchesWhenObscured attribute on all
SwitchPreferences in all pages of the special app access.
Bug: 155288585
Test: manual test
Here is the test steps
1.Create an overlapped view's app and launch it to overlap the
other apps.
2.Launch Settings
3.Goto Apps & notification > Advanced > Special app access
4.Click any toggle under Special app access to monitor it can be
switched or not. It must be not switched.
Change-Id: I9c9cf4719153292ed03f55a6eb9d3a308677aee3
The feature will always be available, even for users who disabled it
on Beta 1.
Bug: 160826507
Test: manual
Test: MediaControlsParentPreferenceControllerTest
Test: MediaControlsPreferenceControllerTest
Change-Id: Ia2835e7c8156d753a8f8fbf248f2509003309fd2
- Sometimes unregistering a Slice callback will have no permission to
unpin the Slice uri and throw an exception.
- Guard against the exception as the first solution.
Bug: 159722324
Test: robotest
Change-Id: Ic227331fef64c3fa6fe3e4442fba2a9b754d520d