Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b42e7730 authored by David Liu's avatar David Liu Committed by Android (Google) Code Review
Browse files

Merge "Migrate Adaptive Connectivity" into main

parents 19c977a0 b415befd
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -21,3 +21,10 @@ flag {
  description: "Flag for SIMs"
  bug: "323791114"
}

flag {
  name: "catalyst_adaptive_connectivity"
  namespace: "android_settings"
  description: "Flag for Adaptive connectivity"
  bug: "323791114"
}
+45 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2024 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.settings.network

import android.content.Context
import com.android.settings.R
import com.android.settings.flags.Flags
import com.android.settingslib.metadata.ProvidePreferenceScreen
import com.android.settingslib.metadata.preferenceHierarchy
import com.android.settingslib.preference.PreferenceScreenCreator

@ProvidePreferenceScreen
class AdaptiveConnectivityScreen : PreferenceScreenCreator {
    override val key
        get() = KEY

    override val title
        get() = R.string.adaptive_connectivity_title

    override fun isFlagEnabled(context: Context) = Flags.catalystAdaptiveConnectivity()

    override fun fragmentClass() = AdaptiveConnectivitySettings::class.java

    override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) {}

    override fun hasCompleteHierarchy() = false

    companion object {
        const val KEY = "adaptive_connectivity"
    }
}
+9 −2
Original line number Diff line number Diff line
@@ -16,6 +16,10 @@
package com.android.settings.network;

import android.app.settings.SettingsEnums;
import android.content.Context;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;

import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
@@ -30,8 +34,6 @@ public class AdaptiveConnectivitySettings extends DashboardFragment {

    private static final String TAG = "AdaptiveConnectivitySettings";

    private static final String KEY_ADAPTIVE_CONNECTIVITY_PREFERENCE = "adaptive_connectivity";

    @Override
    public int getMetricsCategory() {
        return SettingsEnums.ADAPTIVE_CONNECTIVITY_CATEGORY;
@@ -49,4 +51,9 @@ public class AdaptiveConnectivitySettings extends DashboardFragment {

    public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
            new BaseSearchIndexProvider(R.xml.adaptive_connectivity_settings);

    @Override
    public @Nullable String getPreferenceScreenBindingKey(@NonNull Context context) {
        return AdaptiveConnectivityScreen.KEY;
    }
}
+38 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2024 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.settings.network

import androidx.test.ext.junit.runners.AndroidJUnit4
import com.android.settings.flags.Flags
import com.android.settingslib.preference.CatalystScreenTestCase
import com.google.common.truth.Truth.assertThat
import org.junit.Test
import org.junit.runner.RunWith

@RunWith(AndroidJUnit4::class)
class AdaptiveConnectivityScreenTest : CatalystScreenTestCase() {
    override val preferenceScreenCreator = AdaptiveConnectivityScreen()
    override val flagName
        get() = Flags.FLAG_CATALYST_ADAPTIVE_CONNECTIVITY

    override fun migration() {}

    @Test
    fun key() {
        assertThat(preferenceScreenCreator.key).isEqualTo(AdaptiveConnectivityScreen.KEY)
    }
}