Merge "Remove unneeded cast to SettingsActivity" into main

This commit is contained in:
Treehugger Robot
2024-10-16 09:02:46 +00:00
committed by Android (Google) Code Review
5 changed files with 27 additions and 30 deletions

View File

@@ -16,6 +16,7 @@
package com.android.settings.fuelgauge.batterytip; package com.android.settings.fuelgauge.batterytip;
import android.app.Activity;
import android.content.Context; import android.content.Context;
import android.os.BadParcelableException; import android.os.BadParcelableException;
import android.os.Bundle; import android.os.Bundle;
@@ -27,7 +28,6 @@ import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference; import androidx.preference.Preference;
import androidx.preference.PreferenceScreen; import androidx.preference.PreferenceScreen;
import com.android.settings.SettingsActivity;
import com.android.settings.core.BasePreferenceController; import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction; import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction;
@@ -52,7 +52,7 @@ public class BatteryTipPreferenceController extends BasePreferenceController {
private BatteryTipListener mBatteryTipListener; private BatteryTipListener mBatteryTipListener;
private List<BatteryTip> mBatteryTips; private List<BatteryTip> mBatteryTips;
private Map<String, BatteryTip> mBatteryTipMap; private Map<String, BatteryTip> mBatteryTipMap;
private SettingsActivity mSettingsActivity; private Activity mActivity;
private MetricsFeatureProvider mMetricsFeatureProvider; private MetricsFeatureProvider mMetricsFeatureProvider;
private boolean mNeedUpdate; private boolean mNeedUpdate;
@VisibleForTesting TipCardPreference mCardPreference; @VisibleForTesting TipCardPreference mCardPreference;
@@ -66,8 +66,8 @@ public class BatteryTipPreferenceController extends BasePreferenceController {
mNeedUpdate = true; mNeedUpdate = true;
} }
public void setActivity(SettingsActivity activity) { public void setActivity(Activity activity) {
mSettingsActivity = activity; mActivity = activity;
} }
public void setFragment(InstrumentedPreferenceFragment fragment) { public void setFragment(InstrumentedPreferenceFragment fragment) {
@@ -126,7 +126,7 @@ public class BatteryTipPreferenceController extends BasePreferenceController {
} else { } else {
final BatteryTipAction action = final BatteryTipAction action =
BatteryTipUtils.getActionForBatteryTip( BatteryTipUtils.getActionForBatteryTip(
batteryTip, mSettingsActivity, mFragment); batteryTip, mActivity, mFragment);
if (action != null) { if (action != null) {
action.handlePositiveAction(mFragment.getMetricsCategory()); action.handlePositiveAction(mFragment.getMetricsCategory());
} }

View File

@@ -16,16 +16,15 @@
package com.android.settings.fuelgauge.batterytip; package com.android.settings.fuelgauge.batterytip;
import android.app.Activity;
import android.app.AppOpsManager; import android.app.AppOpsManager;
import android.content.Context; import android.content.Context;
import android.content.Intent;
import android.os.UserHandle; import android.os.UserHandle;
import android.os.UserManager; import android.os.UserManager;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import com.android.internal.util.CollectionUtils; import com.android.internal.util.CollectionUtils;
import com.android.settings.SettingsActivity;
import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction; import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction;
import com.android.settings.fuelgauge.batterytip.actions.OpenBatterySaverAction; import com.android.settings.fuelgauge.batterytip.actions.OpenBatterySaverAction;
@@ -33,8 +32,6 @@ import com.android.settings.fuelgauge.batterytip.actions.OpenRestrictAppFragment
import com.android.settings.fuelgauge.batterytip.actions.RestrictAppAction; import com.android.settings.fuelgauge.batterytip.actions.RestrictAppAction;
import com.android.settings.fuelgauge.batterytip.actions.SmartBatteryAction; import com.android.settings.fuelgauge.batterytip.actions.SmartBatteryAction;
import com.android.settings.fuelgauge.batterytip.actions.UnrestrictAppAction; import com.android.settings.fuelgauge.batterytip.actions.UnrestrictAppAction;
import com.android.settings.fuelgauge.batterytip.tips.AppLabelPredicate;
import com.android.settings.fuelgauge.batterytip.tips.AppRestrictionPredicate;
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip; import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip; import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip; import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip;
@@ -52,7 +49,7 @@ public class BatteryTipUtils {
AppOpsManager appOpsManager, UserManager userManager) { AppOpsManager appOpsManager, UserManager userManager) {
final List<UserHandle> userHandles = userManager.getUserProfiles(); final List<UserHandle> userHandles = userManager.getUserProfiles();
final List<AppOpsManager.PackageOps> packageOpsList = final List<AppOpsManager.PackageOps> packageOpsList =
appOpsManager.getPackagesForOps(new int[] {AppOpsManager.OP_RUN_ANY_IN_BACKGROUND}); appOpsManager.getPackagesForOps(new int[]{AppOpsManager.OP_RUN_ANY_IN_BACKGROUND});
final List<AppInfo> appInfos = new ArrayList<>(); final List<AppInfo> appInfos = new ArrayList<>();
for (int i = 0, size = CollectionUtils.size(packageOpsList); i < size; i++) { for (int i = 0, size = CollectionUtils.size(packageOpsList); i < size; i++) {
@@ -82,28 +79,28 @@ public class BatteryTipUtils {
* Get a corresponding action based on {@code batteryTip} * Get a corresponding action based on {@code batteryTip}
* *
* @param batteryTip used to detect which action to choose * @param batteryTip used to detect which action to choose
* @param settingsActivity used to populate {@link BatteryTipAction} * @param activity used to populate {@link BatteryTipAction}
* @param fragment used to populate {@link BatteryTipAction} * @param fragment used to populate {@link BatteryTipAction}
* @return an action for {@code batteryTip} * @return an action for {@code batteryTip}
*/ */
public static BatteryTipAction getActionForBatteryTip( public static BatteryTipAction getActionForBatteryTip(
BatteryTip batteryTip, BatteryTip batteryTip,
SettingsActivity settingsActivity, Activity activity,
InstrumentedPreferenceFragment fragment) { InstrumentedPreferenceFragment fragment) {
switch (batteryTip.getType()) { switch (batteryTip.getType()) {
case BatteryTip.TipType.SMART_BATTERY_MANAGER: case BatteryTip.TipType.SMART_BATTERY_MANAGER:
return new SmartBatteryAction(settingsActivity, fragment); return new SmartBatteryAction(activity, fragment);
case BatteryTip.TipType.BATTERY_SAVER: case BatteryTip.TipType.BATTERY_SAVER:
case BatteryTip.TipType.LOW_BATTERY: case BatteryTip.TipType.LOW_BATTERY:
return new OpenBatterySaverAction(settingsActivity); return new OpenBatterySaverAction(activity);
case BatteryTip.TipType.APP_RESTRICTION: case BatteryTip.TipType.APP_RESTRICTION:
if (batteryTip.getState() == BatteryTip.StateType.HANDLED) { if (batteryTip.getState() == BatteryTip.StateType.HANDLED) {
return new OpenRestrictAppFragmentAction(fragment, (RestrictAppTip) batteryTip); return new OpenRestrictAppFragmentAction(fragment, (RestrictAppTip) batteryTip);
} else { } else {
return new RestrictAppAction(settingsActivity, (RestrictAppTip) batteryTip); return new RestrictAppAction(activity, (RestrictAppTip) batteryTip);
} }
case BatteryTip.TipType.REMOVE_APP_RESTRICTION: case BatteryTip.TipType.REMOVE_APP_RESTRICTION:
return new UnrestrictAppAction(settingsActivity, (UnrestrictAppTip) batteryTip); return new UnrestrictAppAction(activity, (UnrestrictAppTip) batteryTip);
default: default:
return null; return null;
} }

View File

@@ -16,23 +16,23 @@
package com.android.settings.fuelgauge.batterytip.actions; package com.android.settings.fuelgauge.batterytip.actions;
import android.app.Activity;
import android.app.settings.SettingsEnums; import android.app.settings.SettingsEnums;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.core.SubSettingLauncher; import com.android.settings.core.SubSettingLauncher;
import com.android.settings.fuelgauge.SmartBatterySettings; import com.android.settings.fuelgauge.SmartBatterySettings;
import com.android.settingslib.core.instrumentation.Instrumentable; import com.android.settingslib.core.instrumentation.Instrumentable;
public class SmartBatteryAction extends BatteryTipAction { public class SmartBatteryAction extends BatteryTipAction {
private SettingsActivity mSettingsActivity; private Activity mActivity;
private Fragment mFragment; private Fragment mFragment;
public SmartBatteryAction(SettingsActivity settingsActivity, Fragment fragment) { public SmartBatteryAction(Activity activity, Fragment fragment) {
super(settingsActivity.getApplicationContext()); super(activity.getApplicationContext());
mSettingsActivity = settingsActivity; mActivity = activity;
mFragment = fragment; mFragment = fragment;
} }
@@ -41,7 +41,7 @@ public class SmartBatteryAction extends BatteryTipAction {
public void handlePositiveAction(int metricsKey) { public void handlePositiveAction(int metricsKey) {
mMetricsFeatureProvider.action( mMetricsFeatureProvider.action(
mContext, SettingsEnums.ACTION_TIP_OPEN_SMART_BATTERY, metricsKey); mContext, SettingsEnums.ACTION_TIP_OPEN_SMART_BATTERY, metricsKey);
new SubSettingLauncher(mSettingsActivity) new SubSettingLauncher(mActivity)
.setSourceMetricsCategory( .setSourceMetricsCategory(
mFragment instanceof Instrumentable mFragment instanceof Instrumentable
? ((Instrumentable) mFragment).getMetricsCategory() ? ((Instrumentable) mFragment).getMetricsCategory()

View File

@@ -18,6 +18,7 @@ package com.android.settings.fuelgauge.batteryusage;
import static com.android.settings.fuelgauge.BatteryBroadcastReceiver.BatteryUpdateType; import static com.android.settings.fuelgauge.BatteryBroadcastReceiver.BatteryUpdateType;
import android.app.Activity;
import android.app.settings.SettingsEnums; import android.app.settings.SettingsEnums;
import android.content.Context; import android.content.Context;
import android.database.ContentObserver; import android.database.ContentObserver;
@@ -32,7 +33,6 @@ import androidx.loader.content.Loader;
import androidx.preference.Preference; import androidx.preference.Preference;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.Utils; import com.android.settings.Utils;
import com.android.settings.fuelgauge.BatteryHeaderPreferenceController; import com.android.settings.fuelgauge.BatteryHeaderPreferenceController;
import com.android.settings.fuelgauge.BatteryInfo; import com.android.settings.fuelgauge.BatteryInfo;
@@ -125,7 +125,7 @@ public class PowerUsageSummary extends PowerUsageBase
@Override @Override
public void onAttach(Context context) { public void onAttach(Context context) {
super.onAttach(context); super.onAttach(context);
final SettingsActivity activity = (SettingsActivity) getActivity(); final Activity activity = getActivity();
mBatteryHeaderPreferenceController = use(BatteryHeaderPreferenceController.class); mBatteryHeaderPreferenceController = use(BatteryHeaderPreferenceController.class);

View File

@@ -37,13 +37,13 @@ import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.provider.Settings; import android.provider.Settings;
import androidx.fragment.app.FragmentActivity;
import androidx.loader.app.LoaderManager; import androidx.loader.app.LoaderManager;
import androidx.loader.content.Loader; import androidx.loader.content.Loader;
import androidx.preference.Preference; import androidx.preference.Preference;
import androidx.preference.PreferenceScreen; import androidx.preference.PreferenceScreen;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.fuelgauge.BatteryBroadcastReceiver; import com.android.settings.fuelgauge.BatteryBroadcastReceiver;
import com.android.settings.fuelgauge.BatteryInfo; import com.android.settings.fuelgauge.BatteryInfo;
import com.android.settings.fuelgauge.BatteryUtils; import com.android.settings.fuelgauge.BatteryUtils;
@@ -82,7 +82,7 @@ public class PowerUsageSummaryTest {
sAdditionalBatteryInfoIntent = new Intent("com.example.app.ADDITIONAL_BATTERY_INFO"); sAdditionalBatteryInfoIntent = new Intent("com.example.app.ADDITIONAL_BATTERY_INFO");
} }
@Mock private SettingsActivity mSettingsActivity; @Mock private FragmentActivity mActivity;
@Mock private LoaderManager mLoaderManager; @Mock private LoaderManager mLoaderManager;
@Mock private Loader<BatteryTip> mBatteryTipLoader; @Mock private Loader<BatteryTip> mBatteryTipLoader;
@Mock private Loader<BatteryInfo> mBatteryInfoLoader; @Mock private Loader<BatteryInfo> mBatteryInfoLoader;
@@ -106,7 +106,7 @@ public class PowerUsageSummaryTest {
mFragment = spy(new TestFragment(mRealContext, mLoaderManager)); mFragment = spy(new TestFragment(mRealContext, mLoaderManager));
mFragment.initFeatureProvider(); mFragment.initFeatureProvider();
doNothing().when(mFragment).restartBatteryStatsLoader(anyInt()); doNothing().when(mFragment).restartBatteryStatsLoader(anyInt());
when(mFragment.getActivity()).thenReturn(mSettingsActivity); when(mFragment.getActivity()).thenReturn(mActivity);
when(mFeatureFactory.powerUsageFeatureProvider.getAdditionalBatteryInfoIntent()) when(mFeatureFactory.powerUsageFeatureProvider.getAdditionalBatteryInfoIntent())
.thenReturn(sAdditionalBatteryInfoIntent); .thenReturn(sAdditionalBatteryInfoIntent);
mFragment.mBatteryUtils = Mockito.spy(new BatteryUtils(mRealContext)); mFragment.mBatteryUtils = Mockito.spy(new BatteryUtils(mRealContext));