When adding a new restricted profile, user must enter some lockscreen
security. For PIN/password, return the result code (instead of cancelled)
so that UserSettings can proceed with adding the profile.
Bug: 8909229
Change-Id: I3567d7dfac869e38762f9e2a45d8ec83c51fa657
When wifi is switched off we no longer want a notification dialog
about scan-always, instead using in-panel text.
bug:8907190
Change-Id: I707f306a056068d92f69070873f1e6330b598b1e
If there is no installed accessibility services and the user goes into
the accessibility settings section, the app crashes. This is due to a
lacking null pointer check against the list of installed services
returned by the accessibility manager. We should not have returned
null, rather an empty list - too late now, sigh...
bug:8871034
Change-Id: Id3800d398af83868862847fa7ed861a9dee61c8f
When BluetoothSettings is entered via QuickSettings while an A2DP
device is connected, we aren't showing the device connection
status in the UI, because the device list is created before we've
connected to the A2DP and Headset profile services, and we weren't
refreshing the device list UI after getting the callback for
onServiceConnected() and retrieving the list of connected devices.
Add a line to HeadsetServiceListener.onServiceConnected() to call
device.refresh() after we call device.onProfileStateChanged() to
refresh the device list UI. Also copy the logic into A2dpProfile's
onServiceConnected() callback so it will refresh the UI for any
connected A2DP devices.
The reason this bug doesn't show up when entering BT settings
from the main Settings screen is because the onServiceConnected()
callbacks happen before the device list is initialized, so the
UI items are created with the correct connection status. For the
same reason, the bug doesn't occur if the Settings app is already
running and we re-enter it via Bluetooth QuickSettings.
Bug: 8724247
Change-Id: I1a993636ecab18dd6e980e3b4d2485bbed256d74
Bug: 8735493
If there's no screen lock, prompt to take the user to set a lock.
On return, check if user set the screen lock. If so, add the restricted
profile, otherwise don't add it.
Fix a small layout issue: Bug: 8721209
Change-Id: I2a18fea50a1d810d6a7fa82038b460ca4e03d5a0
Bug: 8736733
Put the summary "Restricted profile" under the user name in app restrictions panel.
Bug: 8736734
Change-Id: I6b724bd10a9246eb57831bffb737a48c01e0c285
Delaying applying the states till onPause() sometimes results in the apps
disappearing slowly as the new user is booting up, causing failed queued up
broadcasts that result in crash dialogs. This happens mainly when the user
switch is initiated via QuickSettings->LockScreen->Switch while the App
restrictions screen is still showing. The onPause() gets called when
SetupWizard actually takes focus, which is quite late, as boot completed
and other events have already been queued.
Apply the initial toggles right away and apply any user changes when primary
is going to background, or onPause(), whichever comes first.
Bug: 8685927
Also ensure that apps with restrictions get a chance to persist their defaults
as soon as they are toggled on. The user may never actually click on the settings
icon for the app (which was the only way they were getting persisted before).
Some new strings for an upcoming change.
Change-Id: I96f453d066a91c6b15eafe9a6ce3f42d98bf5e33
1. Certain accessibility settings are shown on a separate screen with
a toggle switch and a description. Sometimes the description does not
fit the screen. The preference framework is using a list view for
holding the description item. This list view was disabled, thus not
scrolling (done to avoid drawable state change on click). Now the
list view is enabled and the drawable state change on click problem
is solved by setting the selector and divider drawables to a
transparent one.
2. The layout for the list item that shows the feature description had
an unnecessary linear layout.
bug:8632146
Change-Id: Ib81a8513158d5b8d90fa80f57720c8590022ae1a
Add default IMEs to an exclusion set so that we don't include them in the
list of toggleable system apps that we show the user.
Bug: 8724246
Unrevert the change to include disabled apps, as the above change fixes the
reason for the revert.
Bug: 8713202
Change-Id: Ifced841ad3bfbde33d2403356216dd1749b7fa9a
This is breaking restricted profiles because the Google Keyboard suddenly
shows up in the list as disabled and InputMethodManagerService crashes
if the only available keyboard is not installed for the profile.
This reverts commit 90dcd7469b
Change-Id: Idd7c4f0f93a973b777889865e80c53caad759a63
If we don't show disabled system apps for toggling, they'll end up
being automatically included in the restricted profile.
Make sure that we also list disabled apps.
Bug: 8713202
Change-Id: I8f2facf496f669dfe963cdabf3d29d393097a80b
CircleFramedDrawable was trying to draw itself as big as the hosting view by
looking at the canvas size. However, due to inconsistent API behavior for the
cases with and without hardware acceleration the canvas size returns the
size of clipped canvas or the size of the entire canvas, respectively. While
we should fix the inconsistent API behavior, it is not correct for a lower
level component to know about the higher level one, i.e. a drawable trying
to infer the size of the hosting view. The hosting view should set the size
of the drawable. This change removes the dependency on the host view size and
if one wants to enlarge the drawable, he/she should just set the scale.
bug:8671059
Change-Id: Idc572da7dff60fd10cb37d3c3eca27aac2c0a21f
Since the enable touch exploration capability is dynamically granted by
the user for apps targeting pre-JellybeanMR2 API level, we have to avoid
caching copies of the service info.
Framework change:https://googleplex-android-review.googlesource.com/#/c/301722
bug:8633951
Change-Id: I2b409ca92931d1409e885d6f54e0f10cbece2e80
Rename and reword string that appears in WifiSettings when user is
restricted from modifying the networks.
Bug: 8696370
Change-Id: I1945550c05163ebff9602e4ba8ba890fece61265
Add a new action and Activity so the phone dialer can display
regulatory info via "*#07#".
Regulatory info is supplied per device by a Settings app resource
overlay. This overlay must set the boolean resource
"config_show_regulatory_info" to true, and provide either a drawable
named "regulatory_info.png" with the info in graphical form, or a
string resource named "regulatory_info_text" containing the required
information in HTML format.
Bug: 8259869
Change-Id: I73c1431a1a6d1736f9d3e4bd5be7e3771c85cbcb
Preference list was getting duplicated on pausing and resuming the activity.
Pull the user info out of the preference list and make it a static header
so that it stays fixed. Can now remove all entries before re-adding.
Disable location by default and disable ability to change Unknown sources
toggle.
Bug: 8685561
Bug: 8688400
Change-Id: I64ce728d5369e03ddaba562bcd66bb0720a037d2
This should be enabled whenever there is a credential in the keystore
since there can be unencrypted credentials in there now.
Bug: 8651830
Change-Id: I52a8262011d744d782b35d97deaabcba3b23f32b
A limited user may not have access to contacts, thus the settings
app has to be able to show UI for selecting a user photo from
gallery or via camera.
bug:8566861
Change-Id: I1974b1a19b0fee8c737d1345302e1b2fba108379
Bug: 8668906 : Add string indicating that the app has opted-in
Bug: 8663558 : Fix a crash in settings when EXTRA_RESTRICTIONS_LIST is empty
Also accept EXTRA_RESTRICTIONS_BUNDLE as a result from custom
restrictions activity
Bug: 8653389 : Some apps show up twice in the limited user config screen
Bug: 8653915 : Jank when adding a new limited user
Change-Id: I293148000be70850f565dbddb4c942d69142ae17
As per product/ux feedback, move around and rename the users.
Settings button for some users.
Fix crash in limited user when clicking on the user:
Bug: 8494377
Change-Id: I346d12646d32608b01f2c2c2c866b6da51408618
Accessibility services can perform special operations such as retrieve
the screen content, enable explore by touch, etc. To ensure the user
is aware that the service will perform special operations we were using
permissions. However, the special operations cannot be performed unless
the service is really enabled by the user and it is at this point that
we want to notify the user about the service capabilities.
This change adds the list of the service capabilities to the enable
warining dialog such that the user can asses whether to he/she is fine
with this service performing certain special operations.
Main change:https://googleplex-android-review.googlesource.com/#/c/298110/
bug:8633951
Change-Id: I1617fa82126b9a674cb74a15d7004a7cc007c7d3
Bug: 8631653
Make "Unknown sources" visible but disabled if restricted for limited user.
Bug: 8629605
Also show the restriction name as the dialog title in the picker.
Change-Id: I8d6ea3571bcc4372347cad6a2c982f35afa7cc09
Show just a message that developer options are not available for the user.
Also fix silent exit of AddAccount operation by showing a toast that user
cannot add accounts.
Bug: 7409523
Bug: 8519646
Bug: 7304007
Change-Id: Id3f430d568d6b7151ac55f86dbc0ef91803fa10c
If an app is marked as requiring an account to work, disable that app
and show a message in the summary.
Also, implement graying out of icons for deselected apps.
Bug: 8600261
Change-Id: I9cf48832675c24257e09addad4316249082c30fb