Commit Graph

121 Commits

Author SHA1 Message Date
Ruchi Kandoi
37efa64d63 Fixes Settings app crashing when NfcAdapter is null
If a device doesn't support NFC then
android.settings.NFCSHARING_SETTINGS and
android.nfc.cardemulation.action.ACTION_CHANGE_DEFAULT intents shouldn't
do anything and gracefully exit.

Test: Manual; Emulate a non-NFC device and test with apks sending intents
Bug: 80094104
Bug: 80092438
Change-Id: I5b3c3fdd582679e2cb16f474ef3331bc246b0d42
2018-08-01 13:35:18 -07:00
tmfang
27c84de325 Settings Fragment Migration (Build pass app)
This patch focused on fixing compile errors and some runtime errors.

Test: We can't test it now. But we will have an integration test later.
Bug: 110259478
Change-Id: I16c471ddcd0fa1460c665b7f74d86fcace5ee67b
2018-07-11 18:24:51 -07:00
Fan Zhang
af1552251f Add some pages to search index.
* Notification access page
* VR Listener page
* Feature flags in dev options
* QS Tile developer options
* User dictionary
* Billing cycle
* Some accessibilty pages

Bug: 70720645
Test: robotests
Change-Id: I4f7d3d65b2803cebf178ac345a79721232df707c
2018-07-11 16:39:29 -07:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Doris Ling
6776da1cad Do not turn on NFC automatically when airplane mode is off.
- besides checking the value for AIRPLANE_MODE_TOGGLEABLE_RADIOS, also
check the value for AIRPLANE_MODE_RADIOS to determine if we should turn
off NFC when airplane mode is on.
- when user turns off airplane mode, only re-enable the NFC preference
and do not enable NFC by default.
- remove listening to airplane mode directly from the android beam
preference controller, as it is already listening to Nfc state, which
handles the beam state already.

Change-Id: Id41fef15fb2de873729d20d7f53b1a88b164cf95
Fixes: 80217047
Test: make RunSettingsRoboTests
2018-06-13 13:44:15 -07:00
Andre Garivay
6d48242da7 Removed guest user access to Tap & Pay via Search.
Gathered user info to verify that user is not a guest. If user is a
guest (and only a guest: other alternate users may use the feature),
they are not allowed to load the nfc_payment_settings xml file.

Change-Id: I5700b9cd4b639b031b6d464827d16f4ea4cfa03f
Fixes: 80111261
Test: Robotests
2018-06-01 09:57:23 -07:00
hjchangliao
51ea41a541 Update Android Beam screen layout
Use preference footer layout to replace
the old layout android_beam.

Change-Id: I878333ecc001631020706cb02edde48496859dcb
Fixes: 80085332
Test: Manual test
2018-05-28 11:27:26 +08:00
Chihhang Chuang
3b387a028a Refactor nfc preference controller
- Remove BaseNfcPreferenceController.
- NfcPreferenceController inherit from TogglePreferenceController.
- AndroidBeamPreferenceController inherit from BasePreferenceController.
- Override getIntentFilter in NfcPreferenceController to listen changes.
- Add an API (hasAsyncUpdate) into BasePreferenceController to
distinguish the setting which is updated asynchronously.

Change-Id: I7c9c48ea7f1ad01a02524beabf9d30baa3db891f
Fixes: 67997761
Fixes: 74887543
Test: RunSettingsRoboTests
2018-05-23 13:58:28 +08:00
Matthew Fritze
f87a1f3f41 Establish permanently unavailable settings
Distinguish between settings which are permanently unavailable on
the device, and temporarily unavailable. This enables us to restrict
which setting slices are exposed in onSliceGetDescendants.

The primary changes in this CL are renaming:
"DISABLED_UNSUPPORTED" -> "UNSUPPORTED_ON_DEVICE"
to be more clear the the setting will cannot be accessed on the device, and,
adding a new enum to encapsulate settings which are currently unavailable, but
could be enabled in the future.

Also remove UNAVAILABLE_UNKNOWN. Devs should never need this enum.

Bug: 78910582
Bug: 79245656
Test: robotests
Change-Id: I58821a6cfd6134b3b351657b6edf5f74ead00643
2018-05-09 08:36:59 -07:00
chiujason
ff244c0e40 Migrate PaymentSettings to DashboardFragment
- Move preference related logic to controllers.
- Add some test cases for controllers.

Test: manual
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.nfc
      make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.core
      atest SettingsGatewayTest UniquePreferenceTest
Change-Id: I061a194c170f63fab51974f26c24be43d67d6f6f
2018-04-30 17:24:58 -07:00
hjchangliao
98015e7c93 Merge "Make Nfc/Beam searchable based on feature availability" into pi-dev am: dc09b3ff49
am: f549cd1e05

Change-Id: Ied4f01787aec0cf8f261483e942615abd1889918
2018-04-25 10:23:11 -07:00
hjchangliao
1ff466675d Make Nfc/Beam searchable based on feature availability
Update logic of updateNonIndexableKeys,
in BaseNfcPreferenceController to fix issue.
Add robotest to avoid same problem.

Change-Id: I1de5324b5a7147ff58e3c366ee7e8cf858e3283c
Fixes: 78540155
Test: make RunSettingsRoboTests
2018-04-25 17:12:33 +00:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
Tony Mantler
0fcd6cbaa8 Autogenerate SearchIndexableResources subclass
Bug: 77148954
Test: RunSettingsLibRoboTests RunSettingsRoboTests RunSettingsGoogleRoboTests RunArcSettingsRoboTests
Change-Id: I842c42c55014c3310070ef22bd4f0d9a70dfd804
2018-04-03 10:26:55 -07:00
HJ ChangLiao
b247311b2a Move BT, NFC out of Conntection pref
Move BT, NFC preference out of Connection Preference,
To Connected devices page.
Because NFC and Android Beam are controlled by the same controller,
Create each controller for those preference and leave the sharing part.

Change-Id: I8bc303a5f487de9c667487119b49e1e4130aa80c
Fixes: 72458929
Test: manually test, make RunSettingsRoboTests
2018-03-28 09:55:22 +08:00
arangelov
e35badd9d5 Make "Action not allowed" dialog compliant with Material Spec and replace full screen activities with the dialog.
Bug: 64893948
Test: make ROBOTEST_FILTER=ActionDisabledByAdminDialogTest -j40 RunSettingsRoboTests
Test: make ROBOTEST_FILTER=ActionDisabledByAdminDialogHelperTest -j40 RunSettingsRoboTests
Change-Id: I9308d8d86a3789b8f2c92b9f4f20cf00cce71d14
2018-03-05 20:27:51 +00:00
Doris Ling
72489725c6 Change superclass to InstrumentedFragment.
- for fragments that do not implement the preference screen, change them
to inherit from InstrumentedFragment instead.

Change-Id: I791c2634024bd2c248efea955be5c680180d735c
Fixes: 68277111
Test: make RunSettingsRoboTests
2018-02-02 13:41:16 -08:00
Antony Sargent
2d4974a40b Show current setting for Tap & Pay
In Settings > Apps & notifications > Advanced > Default apps > Tap & pay
the setting labeled "Use default" is a drop down preference but wasn't
showing the current value it's set to in its summary. This CL fixes
that.

Change-Id: I891289abad781c3eeafa2d7979373f0d53faafc6
Fixes: 67754372
Test: make -j64 RunSettingsRoboTests
2018-01-17 11:30:45 -08:00
Doris Ling
4a01283309 Remove the feature flag for using new title.
- remove all code that check for the feature flag, and use the new logic
by default.

Change-Id: I7fbe60da84c1c0f35e7241402a71d2bc4cd300e6
Fixes: 64564191
Test: make RunSettingsRoboTests
2017-11-13 17:58:13 -08:00
Fan Zhang
a72620b67b Use setVisible instead of removePreference everywhere.
Change-Id: I2e8084b23d3cb2c0a31a38c01716fc76236734ea
Fixes: 68956750
Test: robotests
2017-11-09 13:22:36 -08:00
Doris Ling
024668a2c5 Remove duplicate preferences in Accessibility settings.
- addPreferencesFromResource() call has been added to
InstrumentedPreferenceFragment, and hence sub-class should not call it
again.

Change-Id: Ia016d9d407ac3f838c962d1ced585647382a051a
Fixes: 68820835
Test: make RunSettingsRoboTests
2017-11-02 18:12:27 -07:00
Doris Ling
ed4685fafb Update activity titles for fragments without preference screen.
1. Move getPreferenceScreenResId() from individual subclass to
InstrumentedPreferenceFragment.

2. Removed InstrumentedPreferenceFragment.getTitle() and let the
preference fragments that do not have preference screen set the activity
title directly instead.

3. Removed OptionsMenuFragment as all it does is call
setHasOptionMenu().
- changed subclasses of OptionsMenuFragment to extend from
InstrumentedPreferenceFragment directly.
- none of the exisitng subclasses actually implements the option menu
related methods to provide any option menu. So, the setHasOptionMenu()
call is not added to the subclasses.

4. Update Languages preference title.
- launch the fragment from the preference controller instead of from the
default handling, as we need the title res id at launch time to get it
work properly when retrieving the title from back stack.

Bug: 64564191
Test: blaze-bin/screenshots/android/i18nscreenshots/i18nscreenshots
Change-Id: Ibecdcab32cbaed8bf604ec5ebe0a926b4e489a7d
2017-10-26 12:01:06 -07:00
Doris Ling
03a3b518de Update preference screen title.
- Add missing title to preference screen xml so that they will be used to
set the activity title when the fragment is launched.
- Also updated some incorrect preference screen titles.
- Overrides getTitle() in preference fragments that do not use the
preference screen xml.

Bug: 64564191
Test: blaze-bin/screenshots/android/i18nscreenshots/i18nscreenshots
Change-Id: Id72d5ddf18f0962bc484de8bbd847a2e55d6371e
2017-10-25 11:02:07 -07:00
Cai, Min1
573f3d5917 Merge "Refresh payment preference while resume" am: 05650bb3da am: 088baf348b am: f523ca10aa
am: 84a60e3cf3

Change-Id: I037f72265acc57e531edc337e3e523ece20063a3
2017-10-16 21:45:23 +00:00
Cai, Min1
84a60e3cf3 Merge "Refresh payment preference while resume" am: 05650bb3da am: 088baf348b
am: f523ca10aa

Change-Id: I25dea8b9ddb1740c907d4ef79c74fe8b201352a2
2017-10-16 19:59:50 +00:00
Cai, Min1
088baf348b Merge "Refresh payment preference while resume"
am: 05650bb3da

Change-Id: Ib4876e7d4f17b99699f3b7f328cd1b1eafb19eba
2017-10-16 19:29:33 +00:00
Cai, Min1
0b97d35478 Refresh payment preference while resume
To show latest payment service list on Tap&pay menu.

Test: install payment service and go back to Tap&pay menu
Bug: 67718335
Change-Id: I6f421176b9c461898224b50d06f67a49645f0d18
2017-10-12 01:12:14 +00:00
jackqdyulei
d8964a5735 Add OWNERS for folder nfc
Bug: 65294119
Test: Manual
Change-Id: I69af58183c5b89af96c1a8808665fa506a620012
2017-09-11 12:23:01 -07:00
Ruchi Kandoi
8bd3ec13c6 Nfc Payment Preference check if the dialog is non-null before dismissing
Test: monkey test
Bug: 64758793
Change-Id: I3905096889b2dc6ef468afc76e9767f63b4163ad
2017-08-16 13:45:39 -07:00
Ruchi Kandoi
bf81a17a31 Merge "Avoid Race condition with accessibility for NFC toggle switch" into oc-dr1-dev
am: 9eff3f90d8

Change-Id: I35b7606035a45c1705d0d8775b55c5d7ec9aa672
2017-08-09 20:22:10 +00:00
Ruchi Kandoi
1eab553653 Avoid Race condition with accessibility for NFC toggle switch
Bug: 64429429
Test: Enable TalkBack; Toggle NFC settings
Change-Id: Iadeae0ca33c32b320c202efc2acf0be647b10078
2017-08-08 20:58:29 +00:00
Daniel Nishi
ea39f74a42 Merge "Make nfc toggability logic static and public." into oc-dr1-dev
am: b27d65fa55

Change-Id: Id09171357fb772cc05ec668eafa10e5320cefeb5
2017-08-01 23:18:58 +00:00
Daniel Nishi
c0659ea40d Make nfc toggability logic static and public.
Test: exercised in other robotests
Change-Id: Id51c9fd820afd539c1d647feb90eecf73ffbf4a7
2017-07-27 13:06:33 -07:00
Fan Zhang
2ea6700336 Show default app icon in default app screen.
- Renamed AdvancedAppSettings to DefaultAppSettings.
- Add logic to DefaultAppPreferenceController to also display icon.
- Modified DefautlAssistPrefController to suppress gear icon, and use
  the controller in default app setting UI to display icon.
- Remove dynamic injected payment setting activity and create the
  setting statically in xml.
- Add DefaultPaymentSettingsPreference to display default payment app
  title (no icon because we can't get it)

Change-Id: I6b8c768da0bafe5ec9a85ba9c79c7993b449be25
Fix: 36458534
Test: robotests
2017-07-13 13:49:28 -07:00
Tony Mantler
1d583e125f Make PreferenceController a mixin
Bug: 62912136
Test: Existing tests in BaseSearchIndexProviderTest
Change-Id: Ieda359806c09a019840b2005446c7ec8b61fdb00
2017-06-26 10:58:36 -07:00
Juan Lang
c04c3f7bd7 Use SettingsLib's versions of Custom* classes.
Bug: 30046624
Merged-In: I2584e820b72bb4672c53fd1a9f63c7f1662e0809
Test: make RunSettingsRoboTests
Change-Id: Icd4390c46532bedb3824511867208337c74c00a3
2017-06-21 14:47:37 -07:00
Juan Lang
4482812cb1 Use SettingsLib's versions of Custom* classes.
Test: make RunSettingsRoboTests
Change-Id: I2584e820b72bb4672c53fd1a9f63c7f1662e0809
2017-06-21 12:07:50 -07:00
Hiroki Yamamoto
ea5e18c809 Merge "NFC: Reset Tap&pay summary text if default payment is not set" am: e990bf3041 am: 56a8267f59 am: 77452b8a57
am: a1f5332068

Change-Id: If7351ccb7896cc1cfeb83837b09650a50ed1b55a
2017-06-06 19:47:06 +00:00
Hiroki Yamamoto
a1f5332068 Merge "NFC: Reset Tap&pay summary text if default payment is not set" am: e990bf3041 am: 56a8267f59
am: 77452b8a57

Change-Id: I19237cb1f24dc1f0b127b2bd2476ee1f3a28b0bb
2017-06-06 19:34:49 +00:00
Hiroki Yamamoto
a322f6eab3 NFC: Reset Tap&pay summary text if default payment is not set
Reset Tap&pay summary text even default payment is null
to show the correct status that is no payment service.

Test: manual
Bug: 62366917
Change-Id: Ida9cf0b205e56163505862498b1ac4d679c2c92a
2017-06-06 11:23:03 +00:00
Fan Zhang
82be5f0c3f Misc fixes to search and UI.
- Use prefContext to create preference.
- rename "Gestures" to "Gesture shortcuts"
- Add search keyword to individual gesture settings so when search
  "gesture" they also show up.
- call super() for all getNonIndexableKeys() in search provider

Fix: 38327387
Fix: 36621897
Fix: 36685646
Test: make RunSettingsRoboTests

Change-Id: Ia5ddfeae08cb27c278dfb8d2376594e21d8f283c
2017-05-23 14:55:23 -07:00
Juan Lang
777ed2535a Depend on SettingsLib's version of lifecycle and FooterMixin.
The implementations have been imported into SettingsLib. Setting's copy
can now be removed, which this change also does.

Test: Manually check battery status, which uses FooterMixin, looks OK.
make RunSettingsLibRobotTests && make RunSettingsRoboTests
     && make RunSettingsGoogleRoboTests
Change-Id: I6539605fdad80d156ff5ff249e68df4a1c412067
2017-05-12 11:10:46 -07:00
Ruchi Kandoi
7ca6c2410c Add searchable index for Bluetooth and Nfc only if the feature exists
Test: make RunSettingsRoboTests
Bug: 35657961
Change-Id: Ie2f4722b2b1599981c933f87f95016909ba92022
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2017-04-24 13:15:35 -07:00
Fan Zhang
fe292515d8 Refactor the layout for MasterSwitch to a 2 target pref
And move the layout to settingslib.

The new TwoTargetPreference is a preference object that has a vertical
divider between main panel and widget (if it exists).

Converted master switch, restricted preference, gear preference to use
the new style

Change-Id: Ia3848cebb06b8edc4e60abf9b0caf13cdb29c22c
Fix: 36511169
Test: make RunSettingsRoboTests
2017-03-22 16:03:40 -07:00
Doris Ling
f2cf2aea37 Remove code that check for dashboard feature.
- remove DashboardFeatureProvider.isEnabled() and all relating code
and tests.

Bug: 35764802
Test: make RunSettingsRoboTests
Change-Id: If7796677abc8904b7436525836d50cdef38e37a4
2017-03-07 11:15:03 -08:00
Andre Eisenbach
7e0df1e48c Add key to NFC search index option
Bug: 35657617
Test: manual
Change-Id: If9350272f7e48b061dea2f0da75c3c5bcd0ee9ac
2017-02-23 22:54:06 +00:00
Andre Eisenbach
4d03c5b489 Do not index NFC for search if NFC is not present
Bug: 35657617
Test: manual
Change-Id: I320b46d4d384611725d2dea628cf42180b8018ac
2017-02-23 12:45:57 -08:00
Matthew Fritze
2108f91fe6 Implements queryNonIndexableKeys for Settings
queryNonIndexableKeys returns a list of all of the
non-indexable keys for all providers in Settings

Change-Id: Id53cb2f55662e85c66f1c3f0c0e7d933b19fedaf
Fixes: 34623460
Test: RunSettingsRoboTests
2017-01-25 14:33:45 -08:00
Tamas Berghammer
5a638a6ad1 DO NOT MERGE: Revert "Update package names to work with the proto3 compiler"
This reverts commit fbd5f5fdce.

Change-Id: I769f7a0f509996ccc39fd1c628cad7e5ec1202bf
2017-01-18 19:28:11 +00:00
Tamas Berghammer
fbd5f5fdce Update package names to work with the proto3 compiler
Bug: b/28974522
Change-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a
(cherry picked from commit 265d3c2a0c)
2017-01-11 11:28:10 +00:00