Commit Graph

10 Commits

Author SHA1 Message Date
Zhen Zhang
c10ec56e0f Add ethernet tether option into AllInOneTetherSettings
Create controller for ethernet tether preference in
AllInOneTetherSettings and corresponding test.

Test: AllInOneTetherSettingsTest; UsbTetherPreferenceControllerTest;
BluetoothTetherPreferenceControllerTest;
EthernetTetherPreferenceControllerTest;
WifiTetherDisablePreferenceControllerTest; TetherEnablerTest
Bug: 153690620

Change-Id: I8918d5c8a82c521b00eb3c712af80c2041778595
2020-04-20 13:53:58 -07:00
Zhen Zhang
7f2d6ce058 Refactor new tether settings to remove SharedPreferences
Bluetooth, USB and Wifi Disable tether preferences will turn on/off that
type of tethering interface instantly without storing it into
SharedPreferences. They are listening to TetherEnabler to update their
state.
Refactored to remove dependancy on SharedPreferences.

Bug: 151367756
Test: TetherEnablerTest; BluetoothTetherPreferenceControllerTest;
UsbTetherPreferenceControllerTest;
WifiTetherDisablePreferenceControllerTest; AllInOneSettingsTest;
AllInOneTetherPreferenceControllerTest

Change-Id: Ia6cc60bc4de8f08413beb6d41552a18f6fa6a55b
2020-03-20 13:15:10 -07:00
Zhen Zhang
1745955f35 Refresh summary when update state of preference
TogglePreferenceController won't call refresh summary for
SwitchPreference. Need to call it explicitly in updateState to update
the subtext.

Bug: 150885013
Test: Manually test
Change-Id: I0dafd78d867fc0c66906ee9a2daa7692bb15224b
2020-03-05 14:10:37 -08:00
Zhen Zhang
abb734920d Let tether preference controllers extend TogglePreferenceController
Refactored USBTether, BluetoothTether and WifiTetherDisable preference
controllers to extend TogglePreferenceControllers, since they are all
SwitchPreference.

Bug: 150634051
Test: UsbTetherPreferenceControllerTest,
BluetoothTetherPreferenceControllerTest,
WifiTetherDisablePreferenceControllerTest,
CodeInspectionTest

Change-Id: I3b1d1c4e678c65ced8dd506a87c3c43ed300d64f
2020-03-03 11:28:18 -08:00
Zhen Zhang
084875a104 Make tether option preferences listen to own SharedPreferences change
The SharedPreferences value could be changed by other classes. This can
help make UI consistent with shared preferences value.

Bug: 148968321
Test: UsbTetherPreferenceControllerTest;
BluetoothTetherPreferenceControllerTest;
WifiTetherDisablePreferenceControllerTest;
CodeInspectionTest.

Change-Id: I11bdad2729e88c07ea1f046d9e95a6a63b398931
2020-03-02 10:56:27 -08:00
Zhen Zhang
15ec99114d Update summary for WifiTetherDisablePreference accordingly
The summary of this preference is depenent on other two preferences for
USB tether and Bluetooth tether. The summary is updated accordingly.

Bug: 146818850
Test: CodeInspectionTest, WifiTetherDisablePreferenceControllerTest,
manually test.

Change-Id: I366d10a43814ea0d7def466b1976928f17875029
2020-02-11 17:48:21 -08:00
Zhen Zhang
ec966cb7a3 Add tether preferences into AllInOneTetherSettings
These preferences are for user to toggle a specific tethering option,
like USB, BT or WIFI.

Bug: 147323306
Test: CodeInspectionTest, AllInOneTetherSettingsTest, TetherEnablerTest
Change-Id: I1229ffd2dd12b39e9c6e48dc29c6e46ce9ad7634
2020-02-10 23:04:37 -08:00
Zhen Zhang
258fb7f672 Make tether preference controllers extend BasePreferenceController
These controllers extended AbstractPreferenceController, which is not
quite compatible with some of the present framework. Especially for
indexable keys of settings search.

TetherEnabler and AllInOneTetherSettings are refactored based on the
change. Tests are updated.

Bug: 147272749
Test: CodeInspectionTest and other tests of classes touched by this CL
Change-Id: Ic3ad13e735d133c0959a0a309319a6fd5165b015
2020-02-05 10:18:57 -08:00
Zhen Zhang
b60e8ca294 Create a fragment class for the new "Hotspot & tethering" screen
This fragment class is created to display Wifi tether settings, Usb
tether settings and bluetooth tether settings within the single "Hotspot &
tethering" screen. By creating a new fragemnt, we can safely change the
UI by replace fragment name in xml file.
Right now, it only supports wifi tether settings and mostly copied from
WifiTetherSettings.java.

Bug: 146447611
Test: AllInOneTetherSettingsTest is created and run.
Change-Id: Icdac0d4930451e6956dbf6ef0f4b65bce96fed3f
2020-01-12 23:32:44 -08:00
Zhen Zhang
a990206ee7 Create preference controller for each tethering option
These controllers are responsible for persisting preference values and
managing the visibility and switch state. TetherEnabler will be
listening to changes of shared prefernce values and turn on/off
corresponding type of tethering when tethering is on at that time.

Bug: 146582865
Test: tests are created for each controller class.
Change-Id: I7e601b2bd693da59269517d2988bade7475e7f12
2020-01-06 23:55:30 -08:00