Now that we support webview fallback packages - packages that should be
enabled if and only if no other webview packages are available - we need
to ensure that the Settings UI consistently shows that these packages
cannot be enabled or disabled (e.g. the 'Enable' and 'Disable' buttons
for enabling/disabling them are greyed out).
Also, remove the Dialog that lets a user enable a disabled webview
package from the webview implementation Dev Setting. Instead show a
Toast if the user has chosen an invalid package.
Bug: 26375524, 26375860
Change-Id: I949083d3f7c83cd2e049dd2c5c15ec5ab880fe07
Each default preference needs to have its corresponding
PreferenceAvailabilityProvider to provide us the availability of it.
If no corresponding provider is found, it is considered to be not
available. So it encourages other developers who will add new default app
preference later to consider the availability of it.
Bug:27143673
Change-Id: I073b7122dddc579504f397c5de2bdd4df3826269
Currently the uninstall button is disabled for a package
with an active device admin. This change enables the button,
which when clicked gives the user an option to deactivate
all the DAs in the package and then uninstall the package.
Bug: b/22359208
cherry pick of I8b955305927751185a4c982dadb5b1b6b07efe5e
Change-Id: Ib2ab0e35b74fc8dba7168174b2bc8fd383fe94fe
getPrimary() is removed from the API due to potential confusion about
what it means.
Bug: 26984092
Change-Id: If218de84251461016f4ac06aa9a1cb8610b90d39
Change summary to: Normal (nothing blocked), Partially blocked
(at least one topic blocked), or Totally blocked (entire app
blocked).
Allow filtering on apps that are partially or totally blocked.
Bug: 26882239
Change-Id: I29924147a97a3d1693b0286d48905485e11edf1d
1. Print settings already support managed profile. Follow the UI of that.
ProfileSettingsPreferenceFragment is created to act as the base class
for per-profile setting.
2. Only show browser and dialer default setting in managed profile.
BUG=26707733
Change-Id: I20d00203e14db58ec03638f692dd83a1bd50c59c
When the admin has disabled fingerprint as unlock option, we let the
user know that the admin has disabled that option with a more details
link which will trigger the admin support dialog. And made some small
fixes apart from this.
Change-Id: I01021b952dc6fb29a65d37401a6411a6088d5cef
Update the UX and dig the data usage screen out of a huge whole of
technical debt. Switch every to use Preferences rather than standard
layouts and ListViews.
Split data usage into several fragments, all separated.
DataUsageSummary:
- Shows a summary of the 'default' usage at the top, this will be
the default sim on phones, or wifi if it has it, or ethernet
as last attempt to show something.
- Also has individual categories for each network type that has
data, cell, wifi, and ethernet. Maybe should look into bt though?
DataUsageList:
- Takes a NetworkTemplate as an input, and can only be reached from
the network specific categories in DataUsageSummary
- Shows a graph of current usage for that network and links to
app detail page for any app.
- Has gear link to quick get to billing cycle screen if available
BillingCycleSettings:
- Just a screen with the cycle day and warning/limits separated
out from the data usage.
AppDataUsage:
- App specific data usage details
- May need some UX iteration given lack of clarity in the spec
Bug: 22459566
Change-Id: I0222d8d7ea7b75a9775207a6026ebbdcce8f5e46
A session keeps in ApplicationsState list. The fragment don't release
the session when it is destroyed. The cause of out of memory is that the
session list is increased, but it can't be released.
Change-Id: I23635610c9fdfb8a3423299a91cf9b11cb5cdb65
Signed-off-by: daqiangx <daqiangx.li@intel.com>
The privilege for an app to write to the system settings is protected
by an app-op signature permission. App-op permissions are special: if
the app-op is deny/allow we deny/allow write access; if the app-op is
default holding the permission determies write access. The settings
code assumes that CHANGE_NETWORK_STATE is an app op permission
(system|appop) while it is a normal permission which any app gets by
declaring it used in the manifest.
The side effect is that the state of the toggle in the UI for write
system settings will initially be in the wrong state if the app uses
both WRITE_SETTINGS and CHANGE_NETWORK_STATE. However, the code in
the public API an app uses to check write settings access would return
the opposite since it checks the WRITE_SETTINGS permission and its
app op. Hence, if an app requires write settings to start the user
will see in the settings UI it has access but the app will not have
access, so the app would prompt the user to allow write settings.
The non-obvious fix is for the user to toggle the setting off and on
to get the app op in the right state and be able to launch the app.
bug:25843134
Change-Id: I3d726a66c7f9857bc7dbd5946fdbb8f340c6eb4d
(cherry picked from commit 356fb2d10d)
When the home screen selected by the user isn't encryption aware, we
still need to put something on the ActivityStack. For now, let's use
an empty activity that knows how to dismiss itself when the
credential-encrypted storage is unlocked; that's enough for the
system to re-resolve the home intent and find the real home screen.
Also follow method refactoring.
Bug: 22358539
Change-Id: Iebc4ad8d2dd62ada079cab03d5765f7631fd4beb
The privilege for an app to write to the system settings is protected
by an app-op signature permission. App-op permissions are special: if
the app-op is deny/allow we deny/allow write access; if the app-op is
default holding the permission determies write access. The settings
code assumes that CHANGE_NETWORK_STATE is an app op permission
(system|appop) while it is a normal permission which any app gets by
declaring it used in the manifest.
The side effect is that the state of the toggle in the UI for write
system settings will initially be in the wrong state if the app uses
both WRITE_SETTINGS and CHANGE_NETWORK_STATE. However, the code in
the public API an app uses to check write settings access would return
the opposite since it checks the WRITE_SETTINGS permission and its
app op. Hence, if an app requires write settings to start the user
will see in the settings UI it has access but the app will not have
access, so the app would prompt the user to allow write settings.
The non-obvious fix is for the user to toggle the setting off and on
to get the app op in the right state and be able to launch the app.
bug:25843134
Change-Id: I3d726a66c7f9857bc7dbd5946fdbb8f340c6eb4d