Merge "Fix homepage icon didn't hide in portriat mode" into main
This commit is contained in:
@@ -33,7 +33,9 @@ import android.view.ViewGroup;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceCategory;
|
||||
import androidx.preference.PreferenceFragmentCompat;
|
||||
import androidx.preference.PreferenceGroup;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import androidx.window.embedding.ActivityEmbeddingController;
|
||||
@@ -210,6 +212,9 @@ public class TopLevelSettings extends DashboardFragment implements SplitLayoutLi
|
||||
@Override
|
||||
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
|
||||
super.onCreatePreferences(savedInstanceState, rootKey);
|
||||
if (Flags.homepageRevamp()) {
|
||||
return;
|
||||
}
|
||||
int tintColor = Utils.getHomepageIconColor(getContext());
|
||||
iteratePreferences(preference -> {
|
||||
Drawable icon = preference.getIcon();
|
||||
@@ -364,13 +369,17 @@ public class TopLevelSettings extends DashboardFragment implements SplitLayoutLi
|
||||
}
|
||||
|
||||
job.init();
|
||||
int count = screen.getPreferenceCount();
|
||||
iteratePreferences(screen, job);
|
||||
}
|
||||
|
||||
private void iteratePreferences(PreferenceGroup group, PreferenceJob job) {
|
||||
int count = group.getPreferenceCount();
|
||||
for (int i = 0; i < count; i++) {
|
||||
Preference preference = screen.getPreference(i);
|
||||
if (preference == null) {
|
||||
break;
|
||||
}
|
||||
Preference preference = group.getPreference(i);
|
||||
job.doForEach(preference);
|
||||
if (preference instanceof PreferenceCategory) {
|
||||
iteratePreferences((PreferenceCategory) preference, job);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -26,15 +26,19 @@ import static org.mockito.Mockito.when;
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.platform.test.annotations.DisableFlags;
|
||||
import android.platform.test.flag.junit.SetFlagsRule;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceManager;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.flags.Flags;
|
||||
import com.android.settings.testutils.FakeFeatureFactory;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
@@ -42,6 +46,8 @@ import org.robolectric.RuntimeEnvironment;
|
||||
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class TopLevelSettingsTest {
|
||||
@Rule
|
||||
public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
|
||||
private Context mContext;
|
||||
private TopLevelSettings mSettings;
|
||||
|
||||
@@ -58,6 +64,7 @@ public class TopLevelSettingsTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
@DisableFlags(Flags.FLAG_HOMEPAGE_REVAMP)
|
||||
public void onCreatePreferences_shouldTintPreferenceIcon() {
|
||||
final Preference preference = new Preference(mContext);
|
||||
preference.setTitle(R.string.network_dashboard_title);
|
||||
|
Reference in New Issue
Block a user