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

Commit fd699a75 authored by Yiling Chuang's avatar Yiling Chuang Committed by Android (Google) Code Review
Browse files

Merge "Migrate Battery Saver" into main

parents 51a8a098 01ad71bc
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
package: "com.android.settings.flags"
container: "system"

flag {
  name: "catalyst_battery_saver_screen"
  namespace: "android_settings"
  description: "Flag for Battery Saver"
  bug: "323791114"
}
+47 −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.fuelgauge.batterysaver

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 BatterySaverScreen : PreferenceScreenCreator {
    override val key: String
        get() = KEY

    override val title: Int
        get() = R.string.battery_saver

    override val keywords: Int
        get() = R.string.keywords_battery_saver

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

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

    override fun hasCompleteHierarchy() = false

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

    companion object {
        const val KEY = "battery_saver_screen"
    }
}
+9 −0
Original line number Diff line number Diff line
@@ -17,8 +17,11 @@
package com.android.settings.fuelgauge.batterysaver;

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

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

import com.android.settings.R;
@@ -93,4 +96,10 @@ public class BatterySaverSettings extends DashboardFragment {
            pref.setLearnMoreText(getString(R.string.battery_saver_link_a11y));
        }
    }

    @Nullable
    @Override
    public String getPreferenceScreenBindingKey(@NonNull Context context) {
        return BatterySaverScreen.KEY;
    }
}
+37 −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.fuelgauge.batterysaver

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 BatterySaverScreenTest : CatalystScreenTestCase() {

    override val preferenceScreenCreator = BatterySaverScreen()

    override val flagName: String
        get() = Flags.FLAG_CATALYST_BATTERY_SAVER_SCREEN

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