Commit Graph

145 Commits

Author SHA1 Message Date
Bonian Chen
8c0052d537 [Settings] Move display of VPN version into summary text
Move the display of version text within VPN into summary part of the
display, and limit the height of summary area.

Bug: 205460459
Test: install apk from b/205460459#comment3 and verify
Change-Id: I666b9db356feeebf04e3be688897c2d9110a5275
(cherry picked from commit 144f295d7a)
Merged-In: I666b9db356feeebf04e3be688897c2d9110a5275
2021-12-06 09:54:00 +00:00
Robin Lee
fd60c585a5 Change the owners of vpn2 settings again
Test: N/A
Change-Id: I3fa4bc4101a5942bbd9c95d7b0a8456801ba75f7
Fix: 130346282
2019-04-11 17:28:28 +02:00
Robin Lee
7463700fb4 Add OWNERS file for settings/vpn2
Adds more people who can approve changes to the VPN Settings UI.

Test: repo upload .
Fix: 130346282
Change-Id: I8bb8a7559b5967189476406a00467c6b8bcdc52e
2019-04-11 14:52:37 +00:00
lindatseng
e0f24e6f5e Make the text appearance consistant in add vpn dialog
Set the password fields text appearance programatically to get the
appearance consistant.

The style set in xml will be overriden if the field is set to password.

I set the text appearance programmatically in order to keep the
appearance consistent with the others.  The color of the text become
gray after setting the text appearance for some reason.

Note that I also do changes to the password field which is not mentioned
in the bug.

Test: visual inspection.
Bug: 127728228
Change-Id: Ie206f60877eb39addc1370ae4e2aee379597960e
2019-03-28 11:16:35 -07:00
Chalard Jean
230a9949b4 Merge "Support VPN Proxy(2/2)" am: 2a695c4b7b am: e2f74af063
am: aa5d185d7b

Change-Id: Ifa4ac76f78e24296a29f99f5733075651bed9072
2019-03-09 04:20:32 -08:00
Ryusuke Sawa
9f7875d547 Support VPN Proxy(2/2)
Adding VPN Proxy settings in advanced option.
 - Proxy host name
 - Proxy port

Bug: 118793208
Test: runtest

Change-Id: I40f3cf049f5822eefc3f9e6ba5dd0bb80c9b3945
2019-03-06 10:38:48 +09:00
Pavel Grafov
e1dd64ef2e Merge "Update to use new ConnectivityManager API." am: 70b1830e7e am: 7c47743851
am: 3184142cbe

Change-Id: I6bc7277d0f1db1576b369443719c449fc8eeed75
2019-01-28 22:14:17 -08:00
Pavel Grafov
6a0a7be9a2 Update to use new ConnectivityManager API.
Bug: 77468593
Test: builds
Change-Id: I1fa542e015add2dd8b0e8620f2021c1a5c1c9f1a
2019-01-25 18:58:17 +00:00
Dan Albert
6e91f68ae4 Revert "Update to use new ConnectivityManager API."
This reverts commit 9a9f6f313b.

Reason for revert: broke pi-dev-plus-aosp

Change-Id: Ia0ff7cdf77b4edf3bdf5e4c54376b730df48373e
2019-01-24 21:06:02 +00:00
Eran Messeri
1e9bd27e2b Further Credentials-related clean-up
Additional clean-up work related to removal of screenlock dependency
from the credentials installation flow:
* Move the CredentialStorage class to security/ so that Enterprise team
  owners could review changes to it.
* Remove the ConfigureKeyGuardDialog class as it is no longer used.
* Remove attempt to unlock KeyStore from VPN settings.
* Remove intents that will no longer be sent from the manifest.

Bug: 120901345
Test: m -j RunSettingsRoboTests
Test: Manual with CtsVerifier
Change-Id: Ia708ede3366892d74c148f3712a63858d5ab53b7
2019-01-24 16:26:25 +00:00
Pavel Grafov
9a9f6f313b Update to use new ConnectivityManager API.
Bug: 77468593
Test: builds
Change-Id: I614c20b9a1c6748614163766866bb59b15d794f1
Merged-In: I614c20b9a1c6748614163766866bb59b15d794f1
2019-01-23 19:53:01 +00:00
Fan Zhang
31b210017b Migrate all MetricsProto enums to SettingsEnums
Bug: 122855168
Test: rebuild
Change-Id: I962d9a71179f86b7cae9dc5e9a00e0aa1557dc76
2019-01-17 14:55:42 -08:00
Philip P. Moltmann
e3f721132a RestrictedLockUtils was split into ...Internal
This means that in some cases RestrictedLockUtils has to be used and in
some RestrictedLockUtilsInternal.

This causes a lot of trivial code changes.

I also updated the ordering of the imports in all affected files.

Bug: 110953302
Test: Built
      make -j RunSettingsRoboTests
Change-Id: I9bdf8b89134f853bae4f38c81af436715c73e924
2018-08-30 08:11:39 -07:00
Fan Zhang
23f8d59d02 Sort imports
Having consistent import order will reduce chance of merge
conflict between internal and external master

Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
2018-08-28 22:13:15 +00:00
Aurimas Liutikas
b1af85d155 Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
Merged-In: I941dea40562170649bf056e675cc32e5163c0e39
(cherry picked from commit a290b873d0)
2018-08-28 11:48:56 -07:00
tmfang
41ab6b4bf8 Migrate all AlertDialogs to AndroidX version
This CL only changed AlertDialog imports.
So, reviewer can review it easily.

Change-Id: I097bc44394195b14287f4f920c570ac8653f356a
Fixes: 111413092
Test: This CL can't pass Robo test.
2018-07-20 11:32:13 +08:00
Fan Zhang
176ccd0c35 Clean up: fix incorrect @VisibleForTesting imports
Test: rebuild and robotests
Change-Id: I33d7ee1c0622c01f592920baaf01d44ad19d9a13
2018-07-13 13:08:53 -07:00
tmfang
99cc23d0da Settings Fragment Migration (Change imports)
This commit *only* changes imports and optimize imports.
We don't do anything else.

This patch can't compile pass and run test case.
We will update other patches to fix these problem.

Change list.

1. import android.app.Fragment; ->
   import androidx.fragment.app.Fragment;
2. import android.app.DialogFragment; ->
   import androidx.fragment.app.DialogFragment;
3. import android.app.ListFragment; ->
   import androidx.fragment.app.ListFragment;
4. import android.app.LoaderManager; ->
   import androidx.loader.app.LoaderManager;
5. import android.content.AsyncTaskLoader; ->
   import androidx.loader.content.AsyncTaskLoader;
6. import android.content.Loader; ->
   import androidx.loader.content.Loader;
7. import android.app.FragmentTransaction; ->
   import androidx.fragment.app.FragmentTransaction;
8. import android.app.FragmentManager; ->
   import androidx.fragment.app.FragmentManager;
9. import android.app.LoaderManager.LoaderCallbacks; ->
    import androidx.loader.app.LoaderManager.LoaderCallbacks;

Bug: 110259478
Test: Can't test it.
Change-Id: I0a3f98fff34a3494a839c3c42aeabcec3df2c8b3
2018-07-11 18:23:51 -07:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Irina Dumitrescu
addc82e454 Clean up KeyStore exception warning caused by adding a new VPN.
Bug:109791294
Test: manually navigate to settings and click the + button in VPN.
Change-Id: Ib94778ef3fdab0fc8147477b91f644c54dc04c24
2018-06-12 17:22:12 +01:00
hjchangliao
e86eec0c07 Rename SubSettingLauncher.setTitle, add java doc
For make this method usage more clear,
setTitle(charSequence) rename as setTitleText,
add java doc: it is only for user generated string
setTitle(int) rename as setTitleRes.

Change-Id: I972cb6a8ff90873dfdc25c23f6dc3d68103c8e4e
Fixes: 78347436
Test: make RunSettingsRoboTests
2018-05-09 10:00:05 +08:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
Fan Zhang
e0d2140256 Use proper icon size for default app prefs.
Change-Id: Ib48c7a546fcd3a3a9e32b7a65cbdadd54721f252
Fixes: 77726902
Test: robotests
2018-04-09 10:29:58 -07:00
Fan Zhang
01cfb9d8c5 Remove wrapper for ConnectionManager/IPackageManager
Bug: 76167422
Test: robotests
Change-Id: I5f051b0ce58b97a3cfd5d4bae469463dcd6d83ac
2018-04-02 17:09:10 -07:00
Fan Zhang
615563db0c Migrate more subsetting launching to SubSettingLauncher
Bug: 73250851
Test: robotests
Change-Id: Ic0bf23f6ac6f717bdd3d477fdb84af68badae8e6
2018-02-15 15:39:56 -08:00
Fan Zhang
e0b0e9f902 Refactor help menu stuff into a controller
This is a clean up to action bar menu item pattern, we will use the same
pattern to build search icon on all pages in a later change.

Bug: 68814716
Test: robotests
Change-Id: Iedd3ec263e8ccb63ed75ec7a95b28c00878b1de4
2017-11-29 15:51:04 -08:00
Fan Zhang
fc29247da4 Use small icon in location and vpn settings UI
Fixes: 65182905
Test: rerun tests
Change-Id: I18aa5c5bb4c8f573872cda3d003506c4dff5177c
2017-10-30 14:24:49 -07:00
Doris Ling
dee1a22c45 Consolidate all wrappers used for testing.
- Add the wrapper package and move all wrappers to the wrapper package.
- Get rid of some wrapper interface/impl implementation and have a
wrapper class directly.

Bug: 65634579
Test: make RunSettingsRoboTests
Change-Id: Ic757d8f7bacfa7a034c7e692205bc1dc4b0e1de1
2017-09-14 18:24:49 -07:00
Charles He
fc1ce57b13 Disable always-on VPN options if an app has opted out.
The user can turn on / off always-on for individual VPN apps in
Settings > Network > VPN. Now that we're providing an opt-out of the
always-on feature for VPN apps, we should disabled the toggles if the
VPN app has an explicit opt-out.

Related unit tests are also removed as the check is now performed in the
frameworks, not in Settings.

Bug: 36650087
Test: CTS Verifier

Change-Id: I486fec14a1f8b86e7120dbdbfed3885801ab4dd7
2017-06-27 14:14:31 +01:00
Lorenzo Colitti
b6245156f6 Add a "sign into network" button to the wifi details page.
Bug: 36203355
Test: manually signed into captive portal
Test: make -j64 RunSettingsRoboTests
Change-Id: I3242ef30125ddfdaaac9b80ead4f8ac14ea6d364
2017-05-03 22:14:08 +09:00
Fan Zhang
62dfc300ed Update vpn icon from setting gear to vpn key.
Change-Id: Ic135d5e28a0547e949c8170f985e4de26e05ad51
Fix: 37781101
Test: visual
2017-04-29 19:48:06 +00:00
Fan Zhang
b0509b48c6 Don't show vpn info box when we don't have anything useful
Change-Id: I12a71b38486cab8a6a188c299e90a7674926dc98
Fix: 36068109
Test: make RunSettingsRoboTests -j40
2017-04-11 12:02:29 -07:00
Charles He
1b5015cae6 VPN settings: add missing string resource
Previously, a string resource was deleted by mistake in commit
cce4e61260. This bug went uncaught by
local and presubmit build checks. We add the missing string back to
strings.xml to fix the build. The affected string is referenced in
ManageablePreference.java.

Apologies for any inconvenience.

Test: make SettingsRoboTests; manually navigate through VPN settings
Bug: 36815998
Change-Id: Ibc2ef9ad43cad73ef5f078714faf5c52bc7198c6
2017-04-01 18:37:10 +00:00
Robin Lee
b8b310df17 VPN: uncheck lockdown if always-on is off
Change-Id: I00933e0c8567997d800f9f31f78c7b19922a52b8
Fix: 36713605
Test: make RunSettingsRoboTests -j30
2017-03-30 16:01:02 +00:00
Robin Lee
b26ce1e13b resolve merge conflicts of 90f009ebb5 to master
Test: make RunSettingsRoboTests
Change-Id: I7f0eece61918c29d33316fa755eca2e8f4deba46
2017-03-27 17:35:57 +01:00
Charles He
cce4e61260 VPN settings: update strings for always-on VPN
To conform with UX guidelines and conventions, the following changes are
made to the UI of app VPN's PreferenceFragment:
(1. Always-on toggle title stays the same)
2. Always-on toggle subtext changes from "active"/"inactive" to an
explanation of the feature
3. Lockdown toggle title is shortened
4. Lockdown toggle subtext is removed completely

And the following changes are made to the legacy VPN's ConfigDialog:
5. Error message that is displayed below the "Always-on VPN" checkbox
6. Replacing \u2019 with \'

Bug: 36382729
Test: manually navigate through VPN settings
Test: make SettingsRoboTests
Change-Id: If1b4faec8743dfbf6e3f8062b53190ad63700d25
2017-03-24 16:02:57 +00:00
liurong
2710b99d2f [VpnSettings]Crash when activity has been recycled
This is a case we found in monkey test, the main thread handles message while the activity has been recycled. It will raise a NullPointerException when we use getActivity() in following lines.
Assumpt the situation is: settings run in background and activity been recycled quickly, but handler still in the process.

Test: NA

Change-Id: I19db4f13e13294618ec8e42e4d9c54ce23504344
Signed-off-by: liurong <liurong@xiaomi.com>
2017-03-24 15:21:23 +00:00
Charles He
ad828f1551 VPN settings: gray out always-on checkbox dynamically
In the ConfigDialog for legacy VPNs, many configurations do not support
Always-on VPN. Previously, when a user entered an unsupported set of
settings, the Always-on VPN checkbox could still be ticked, and the
Save or Connect action buttons would be disabled. This was not intuitive
as the user could not easily figure out which part of the settings was
incompatible that grayed out the action buttons.

With this change, we disable the Always-on VPN checkbox immediately as
the user enters any incompatible setting. We also display the reason why
Always-on VPN is disabled. This will make it more straightforward for
the users to understand which setting is conflicting with the Always-on
feature.

This change is also the first step towards refactoring the ConfigDialog
for legacy VPNs with PreferenceFragment.

Test: manual
Bug: 29208008
Bug: 28072644
Change-Id: I1e6d32a1069ca0b936513f4985ffb9a9412b249c
2017-03-22 20:29:46 +00:00
Fan Zhang
b43bc628d8 VPN screen clean up
Fix: 35960168
Fix: 35856128
Test: visual
- Increase new vpn dialog padding
- Update VPN icon

Change-Id: Ibc7f4fc5b9eff24693a25542e7d3481fbe3c393d
2017-03-07 16:21:38 -08:00
Robin Lee
7f96c4c848 Update string: lockdown confirmation dialog title
The most common string shown previously was:
  "Set always-on VPN?"

It's now a different string:
  "Only allow connections through VPN?"

This makes more sense because the only way to get to this dialog in
stock Settings is by first enabling a specific VPN and afterwards
trying to set the same VPN to lockdown mode.

In this case the prompt should specifically refer to lockdown, not
having a VPN connection in general (because the user clearly already
has one).

Test: m Settings -j20, install a VPN, connect to it, open Settings > Network > Vpn > {VPN name} and select 'only allow connections through VPN'. Verify the title is now the one referred to in the commit message.
Fix: 34491069
Change-Id: Ic74a8b91eb8ae64fbe15723c173281f4ede52b06
2017-02-16 19:14:25 +00:00
Fan Zhang
c6ca314c0b Log source with visibility change
- Add a method in VisibilityLoggerMixin to log visible event using
  LogMaker, which allows logging additional FIELD_CONTEXT field.
- In Utils.startFragment, add current page's metricsCategory as an extra
  to next page.
- In next page's onResume(), extract the previous page's metricsCategory
  and send it to VisibilityLoggerMixin.visible()
- Update all caller with additional paramters

Change-Id: I8e1f2597fa465b7d3aa16fa1d21c052a3219694a
Fix: 35359289
Test: RunSettingsRoboTests
2017-02-15 17:17:19 -08:00
Fan Zhang
62e66c9ca4 Move GearPreference to widget package.
- This is step1 of making gear preference more flexible to use.

Bug: 33579296
Test: builds
Change-Id: I30ac6c75f7ad16ec5c732fbb93170e5fab0eacb7
2017-02-08 16:09:12 -08:00
Robin Lee
edfeaace61 resolve merge conflicts of cb1968148a to master
Test: make RunSettingsRoboTests
Change-Id: I436af9f0415b9ad7ea0ea53f4f68d337fdbaa0aa
2017-01-19 23:58:30 +00:00
insight.lee
03159e4c85 Clear VPN after Clear credentials if VPN is being established
1. There is no way to disconnect VPN after 'Clear credentials'
without removing whole Internet connection because VPN profile to
disconnect is removed when Clear credentials.

2. This commit checks whether VPN is being established or not when
Clear credentials and disconnect VPN if VPN is being established.
Lastly, this shows a toast message to inform VPN disconnected.

Test: manual - took a photo

Signed-off-by : Sungmin Lee <insight.lee@lge.com>
Bug: 29093779

Change-Id: Id5ea01c8731b3b0fca2a31d9d84e8c103952b377
2017-01-18 10:44:57 +09:00
Bartosz Fabianowski
0d22680807 Add global HTTP proxy to Privacy Settings page
This CL allows the user to see on the Enterprise Privacy Settings
page whether the admin set a global HTTP proxy.

Test: make RunSettingsRoboTests
Bug: 32692748

Change-Id: I3c7c46f806f39c90425fd8e098a749f3cc1e9278
2017-01-12 20:09:10 +01:00
Bartosz Fabianowski
fc018e4672 Add Always on VPN to Privacy Settings page
This CL adds information about always-on VPNs to the Enterprise
Privacy Settings page.

Test: make RunSettingsRoboTests
Bug: 32692748

Change-Id: I2b59e2ec4c55308b323aaa478cd9c847fe0b4b55
2017-01-12 20:04:56 +01:00
Robin Lee
d5afb5a60c resolve merge conflicts of 6446d2f to master
Change-Id: Ibf37d7fed8f8fbb32a601944f504494101c21a3e
2016-12-23 12:16:19 +00:00
insight.lee
7c4d52c570 Update VPN preference state after disallow configuring VPN policy has changed.
1. When Settings > More and change disallow configuring VPN policy
   and resume Settings, update VPN preference state.

2. When Settings > More > VPN and change disallow configuring VPN policy
   and resume VPN Settings, update its state.

Test: manual

Signed-off-by : Sungmin Lee <insight.lee@lge.com>

Change-Id: I4f3c85733ca6ba05cba46e2f4854f54a42b10c21
2016-12-22 16:14:48 +09:00
Robin Lee
e7347dd8c0 Implement always-on VPN separate lockdown setting
Allows Settings to control whether always-on VPN is required for the
connection to complete, or if it is offered on a best-efforts basis.

Change-Id: I5eb273a99e7559adc66b05e647c9130a819f99d4
Test: runtest -x tests/app/src/com/android/settings/vpn2/VpnTests.java
Fix: 32420810
2016-12-20 15:20:43 +00:00
Robin Lee
9c2758f407 VpnSettings PreferenceList tests
For validating that when VPNs are added / removed, the right set of
changes are made to the PreferenceGroup in which they are supposed to
be shown.

Bug: 30998549
Bug: 29093779
Test: runtest -x packages/apps/Settings/tests/unit/src/com/android/settings/vpn2/PreferenceListTest.java
Change-Id: I9394db0e78cc984ab62e3670aa0a7942ae767a66
2016-11-28 17:42:56 +00:00