Homepage UX revamp

- unified Search and Suggestion behavior between regular phone and two
  pane
- don't adjust padding
- update new icon drawable
- support group homepage preference with round corner on phone
- Remove avator from homepage
- Adjust homepage preference order

Bug: 333989622
Bug: 334130370
Test: visual
Change-Id: I9880b52553f164745766c8b9d5c996585285e52a
This commit is contained in:
Edgar Wang
2024-04-16 14:51:42 +00:00
parent 5ef0fe533e
commit 47400df7ae
35 changed files with 1284 additions and 36 deletions

View File

@@ -42,8 +42,10 @@ import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.activityembedding.ActivityEmbeddingRulesController;
import com.android.settings.activityembedding.ActivityEmbeddingUtils;
import com.android.settings.core.RoundCornerPreferenceAdapter;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.flags.Flags;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.support.SupportPreferenceController;
@@ -84,7 +86,7 @@ public class TopLevelSettings extends DashboardFragment implements SplitLayoutLi
@Override
protected int getPreferenceScreenResId() {
return R.xml.top_level_settings;
return Flags.homepageRevamp() ? R.xml.top_level_settings_v2 : R.xml.top_level_settings;
}
@Override
@@ -331,10 +333,14 @@ public class TopLevelSettings extends DashboardFragment implements SplitLayoutLi
@Override
protected RecyclerView.Adapter onCreateAdapter(PreferenceScreen preferenceScreen) {
if (!mIsEmbeddingActivityEnabled || !(getActivity() instanceof SettingsHomepageActivity)) {
return super.onCreateAdapter(preferenceScreen);
if (mIsEmbeddingActivityEnabled && (getActivity() instanceof SettingsHomepageActivity)) {
return mHighlightMixin.onCreateAdapter(this, preferenceScreen, mScrollNeeded);
}
return mHighlightMixin.onCreateAdapter(this, preferenceScreen, mScrollNeeded);
if (Flags.homepageRevamp()) {
return new RoundCornerPreferenceAdapter(preferenceScreen);
}
return super.onCreateAdapter(preferenceScreen);
}
@Override
@@ -376,7 +382,10 @@ public class TopLevelSettings extends DashboardFragment implements SplitLayoutLi
}
public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
new BaseSearchIndexProvider(R.xml.top_level_settings) {
new BaseSearchIndexProvider(
Flags.homepageRevamp()
? R.xml.top_level_settings_v2
: R.xml.top_level_settings) {
@Override
protected boolean isPageSearchEnabled(Context context) {