Search in sources :

Example 56 with NetworkScorerAppData

use of android.net.NetworkScorerAppData in project android_packages_apps_Settings by SudaMod.

the class UseOpenWifiPreferenceController method updateEnableUseWifiComponentName.

private void updateEnableUseWifiComponentName() {
    NetworkScorerAppData appData = mNetworkScoreManagerWrapper.getActiveScorer();
    mEnableUseWifiComponentName = appData == null ? null : appData.getEnableUseOpenWifiActivity();
}
Also used : NetworkScorerAppData(android.net.NetworkScorerAppData)

Example 57 with NetworkScorerAppData

use of android.net.NetworkScorerAppData in project platform_packages_apps_Settings by BlissRoms.

the class NetworkScorerPicker method updateCandidates.

@VisibleForTesting
public void updateCandidates() {
    final PreferenceScreen screen = getPreferenceScreen();
    screen.removeAll();
    final List<NetworkScorerAppData> scorers = mNetworkScoreManager.getAllValidScorers();
    final String defaultAppKey = getActiveScorerPackage();
    final RadioButtonPreference nonePref = new RadioButtonPreference(getPrefContext());
    nonePref.setTitle(R.string.network_scorer_picker_none_preference);
    if (scorers.isEmpty()) {
        nonePref.setChecked(true);
    } else {
        nonePref.setKey(null);
        nonePref.setChecked(TextUtils.isEmpty(defaultAppKey));
        nonePref.setOnClickListener(this);
    }
    screen.addPreference(nonePref);
    final int numScorers = scorers.size();
    for (int i = 0; i < numScorers; i++) {
        final RadioButtonPreference pref = new RadioButtonPreference(getPrefContext());
        final NetworkScorerAppData appData = scorers.get(i);
        final String appKey = appData.getRecommendationServicePackageName();
        pref.setTitle(appData.getRecommendationServiceLabel());
        pref.setKey(appKey);
        pref.setChecked(TextUtils.equals(defaultAppKey, appKey));
        pref.setOnClickListener(this);
        screen.addPreference(pref);
    }
}
Also used : PreferenceScreen(android.support.v7.preference.PreferenceScreen) NetworkScorerAppData(android.net.NetworkScorerAppData) RadioButtonPreference(com.android.settings.widget.RadioButtonPreference) VisibleForTesting(android.support.annotation.VisibleForTesting)

Example 58 with NetworkScorerAppData

use of android.net.NetworkScorerAppData in project platform_packages_apps_Settings by BlissRoms.

the class NetworkScorerPickerPreferenceController method updateState.

@Override
public void updateState(Preference preference) {
    final List<NetworkScorerAppData> allValidScorers = mNetworkScoreManager.getAllValidScorers();
    boolean enabled = !allValidScorers.isEmpty();
    preference.setEnabled(enabled);
    if (!enabled) {
        preference.setSummary(null);
        return;
    }
    NetworkScorerAppData scorer = mNetworkScoreManager.getActiveScorer();
    if (scorer == null) {
        preference.setSummary(mContext.getString(R.string.network_scorer_picker_none_preference));
    } else {
        preference.setSummary(scorer.getRecommendationServiceLabel());
    }
}
Also used : NetworkScorerAppData(android.net.NetworkScorerAppData)

Example 59 with NetworkScorerAppData

use of android.net.NetworkScorerAppData in project platform_packages_apps_Settings by BlissRoms.

the class NetworkScorerPickerPreferenceControllerTest method updateState_scorersAvailable_preferenceEnabled.

@Test
public void updateState_scorersAvailable_preferenceEnabled() {
    ComponentName scorer = new ComponentName(TEST_SCORER_PACKAGE, TEST_SCORER_CLASS);
    NetworkScorerAppData scorerAppData = new NetworkScorerAppData(0, scorer, TEST_SCORER_LABEL, null, /* enableUseOpenWifiActivity */
    null);
    when(mNetworkScorer.getAllValidScorers()).thenReturn(Collections.singletonList(scorerAppData));
    Preference preference = mock(Preference.class);
    mController.updateState(preference);
    verify(preference).setEnabled(true);
}
Also used : Preference(android.support.v7.preference.Preference) ComponentName(android.content.ComponentName) NetworkScorerAppData(android.net.NetworkScorerAppData) Test(org.junit.Test)

Example 60 with NetworkScorerAppData

use of android.net.NetworkScorerAppData in project platform_packages_apps_Settings by BlissRoms.

the class NetworkScorerPickerTest method testUpdateCandidates_validScorers_noActiveScorer.

@Test
public void testUpdateCandidates_validScorers_noActiveScorer() {
    ComponentName scorer = new ComponentName(TEST_SCORER_PACKAGE_1, TEST_SCORER_CLASS_1);
    NetworkScorerAppData scorerAppData = new NetworkScorerAppData(0, scorer, TEST_SCORER_LABEL_1, null, /* enableUseOpenWifiActivity */
    null);
    when(mNetworkScoreManager.getAllValidScorers()).thenReturn(Lists.newArrayList(scorerAppData));
    when(mNetworkScoreManager.getActiveScorerPackage()).thenReturn(null);
    ArgumentCaptor<RadioButtonPreference> arg = ArgumentCaptor.forClass(RadioButtonPreference.class);
    mFragment.updateCandidates();
    verify(mPreferenceScreen, times(2)).addPreference(arg.capture());
    final RadioButtonPreference nonePref = arg.getAllValues().get(0);
    assertThat(nonePref.getKey()).isNull();
    assertThat(nonePref.isChecked()).isTrue();
    final RadioButtonPreference testScorerPref = arg.getAllValues().get(1);
    assertThat(testScorerPref.getTitle()).isEqualTo(TEST_SCORER_LABEL_1);
    assertThat(testScorerPref.isChecked()).isFalse();
}
Also used : ComponentName(android.content.ComponentName) NetworkScorerAppData(android.net.NetworkScorerAppData) RadioButtonPreference(com.android.settings.widget.RadioButtonPreference) Test(org.junit.Test)

Aggregations

NetworkScorerAppData (android.net.NetworkScorerAppData)64 ComponentName (android.content.ComponentName)36 Test (org.junit.Test)35 RadioButtonPreference (com.android.settings.widget.RadioButtonPreference)21 Preference (android.support.v7.preference.Preference)18 VisibleForTesting (android.support.annotation.VisibleForTesting)6 PreferenceScreen (android.support.v7.preference.PreferenceScreen)6 Preference (androidx.preference.Preference)3 VisibleForTesting (androidx.annotation.VisibleForTesting)1 PreferenceScreen (androidx.preference.PreferenceScreen)1 BeforeClass (org.junit.BeforeClass)1