Fix ManageStoragePreferenceController always consume click event

ManageStoragePreferenceController should only consume click
event when its preference key matches the key of the clicked
preference.

Bug: 228970667
Test: atest ManageStoragePreferenceControllerTest
Change-Id: Ia6c62cf457fc4cadc27dc160dbd9b04ec3392d68
This commit is contained in:
Arc Wang
2022-04-19 17:08:22 +08:00
parent 3c354a2d38
commit ea4260c0e7
2 changed files with 64 additions and 0 deletions

View File

@@ -22,6 +22,7 @@ import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.UserHandle;
import android.os.storage.StorageManager;
import android.text.TextUtils;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
@@ -65,6 +66,10 @@ public class ManageStoragePreferenceController extends BasePreferenceController
@Override
public boolean handlePreferenceTreeClick(Preference preference) {
if (!TextUtils.equals(getPreferenceKey(), preference.getKey())) {
return super.handlePreferenceTreeClick(preference);
}
final MetricsFeatureProvider metricsFeatureProvider =
FeatureFactory.getFactory(mContext).getMetricsFeatureProvider();
metricsFeatureProvider.action(mContext, SettingsEnums.STORAGE_FREE_UP_SPACE_NOW);