Loading libs/window_ext_lib.aar +16.2 KiB (159 KiB) File changed.No diff preview for this file type. View original file View changed file src/com/android/settings/activityembedding/ActivityEmbeddingUtils.java +0 −12 Original line number Diff line number Diff line Loading @@ -16,10 +16,7 @@ package com.android.settings.activityembedding; import android.app.Activity; import android.app.ActivityTaskManager; import android.content.Context; import android.graphics.Rect; import android.util.DisplayMetrics; import android.util.FeatureFlagUtils; import android.util.Log; Loading Loading @@ -65,13 +62,4 @@ public class ActivityEmbeddingUtils { return isFlagEnabled && isSplitSupported; } /** Whether the screen meets two-pane resolution. */ public static boolean isTwoPaneResolution(Activity activity) { final Rect currentTaskBounds = ActivityTaskManager.getInstance().getTaskBounds(activity.getTaskId()); return currentTaskBounds.width() >= getMinCurrentScreenSplitWidthPx(activity) && currentTaskBounds.height() >= getMinSmallestScreenSplitWidthPx(activity); } } src/com/android/settings/homepage/SettingsHomepageActivity.java +10 −7 Original line number Diff line number Diff line Loading @@ -42,6 +42,7 @@ import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentTransaction; import androidx.window.embedding.SplitController; import androidx.window.embedding.SplitRule; import com.android.settings.R; Loading Loading @@ -85,8 +86,9 @@ public class SettingsHomepageActivity extends FragmentActivity implements private View mTwoPaneSuggestionView; private CategoryMixin mCategoryMixin; private Set<HomepageLoadedListener> mLoadedListeners; private SplitController mSplitController; private boolean mIsEmbeddingActivityEnabled; private boolean mIsTwoPaneLastTime; private boolean mIsTwoPane; /** A listener receiving homepage loaded events. */ public interface HomepageLoadedListener { Loading Loading @@ -149,7 +151,8 @@ public class SettingsHomepageActivity extends FragmentActivity implements super.onCreate(savedInstanceState); setContentView(R.layout.settings_homepage_container); mIsEmbeddingActivityEnabled = ActivityEmbeddingUtils.isEmbeddingActivityEnabled(this); mIsTwoPaneLastTime = ActivityEmbeddingUtils.isTwoPaneResolution(this); mSplitController = SplitController.getInstance(); mIsTwoPane = mSplitController.isActivityEmbedded(this); final View appBar = findViewById(R.id.app_bar_container); appBar.setMinimumHeight(getSearchBoxHeight()); Loading Loading @@ -213,9 +216,9 @@ public class SettingsHomepageActivity extends FragmentActivity implements @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); final boolean isTwoPane = ActivityEmbeddingUtils.isTwoPaneResolution(this); if (mIsTwoPaneLastTime != isTwoPane) { mIsTwoPaneLastTime = isTwoPane; final boolean newTwoPaneState = mSplitController.isActivityEmbedded(this); if (mIsTwoPane != newTwoPaneState) { mIsTwoPane = newTwoPaneState; updateHomepageAppBar(); updateHomepageBackground(); } Loading Loading @@ -254,7 +257,7 @@ public class SettingsHomepageActivity extends FragmentActivity implements } final Window window = getWindow(); final int color = ActivityEmbeddingUtils.isTwoPaneResolution(this) final int color = mIsTwoPane ? Utils.getColorAttrDefaultColor(this, com.android.internal.R.attr.colorSurface) : Utils.getColorAttrDefaultColor(this, android.R.attr.colorBackground); Loading Loading @@ -416,7 +419,7 @@ public class SettingsHomepageActivity extends FragmentActivity implements if (!mIsEmbeddingActivityEnabled) { return; } if (ActivityEmbeddingUtils.isTwoPaneResolution(this)) { if (mIsTwoPane) { findViewById(R.id.homepage_app_bar_regular_phone_view).setVisibility(View.GONE); findViewById(R.id.homepage_app_bar_two_pane_view).setVisibility(View.VISIBLE); } else { Loading src/com/android/settings/homepage/TopLevelSettings.java +2 −1 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import androidx.preference.Preference; import androidx.preference.PreferenceFragmentCompat; import androidx.preference.PreferenceScreen; import androidx.recyclerview.widget.RecyclerView; import androidx.window.embedding.SplitController; import com.android.settings.R; import com.android.settings.Utils; Loading Loading @@ -144,7 +145,7 @@ public class TopLevelSettings extends DashboardFragment implements if (mFirstStarted) { mFirstStarted = false; } else if (mIsEmbeddingActivityEnabled && isOnlyOneActivityInTask() && !ActivityEmbeddingUtils.isTwoPaneResolution(getActivity())) { && !SplitController.getInstance().isActivityEmbedded(getActivity())) { // Set default highlight menu key for 1-pane homepage since it will show the placeholder // page once changing back to 2-pane. Log.i(TAG, "Set default menu key"); Loading src/com/android/settings/widget/HighlightableTopLevelPreferenceAdapter.java +2 −2 Original line number Diff line number Diff line Loading @@ -31,10 +31,10 @@ import androidx.preference.PreferenceGroup; import androidx.preference.PreferenceGroupAdapter; import androidx.preference.PreferenceViewHolder; import androidx.recyclerview.widget.RecyclerView; import androidx.window.embedding.SplitController; import com.android.settings.R; import com.android.settings.Utils; import com.android.settings.activityembedding.ActivityEmbeddingUtils; import com.android.settings.homepage.SettingsHomepageActivity; /** Loading Loading @@ -255,6 +255,6 @@ public class HighlightableTopLevelPreferenceAdapter extends PreferenceGroupAdapt } private boolean isHighlightNeeded() { return ActivityEmbeddingUtils.isTwoPaneResolution(mHomepageActivity); return SplitController.getInstance().isActivityEmbedded(mHomepageActivity); } } Loading
libs/window_ext_lib.aar +16.2 KiB (159 KiB) File changed.No diff preview for this file type. View original file View changed file
src/com/android/settings/activityembedding/ActivityEmbeddingUtils.java +0 −12 Original line number Diff line number Diff line Loading @@ -16,10 +16,7 @@ package com.android.settings.activityembedding; import android.app.Activity; import android.app.ActivityTaskManager; import android.content.Context; import android.graphics.Rect; import android.util.DisplayMetrics; import android.util.FeatureFlagUtils; import android.util.Log; Loading Loading @@ -65,13 +62,4 @@ public class ActivityEmbeddingUtils { return isFlagEnabled && isSplitSupported; } /** Whether the screen meets two-pane resolution. */ public static boolean isTwoPaneResolution(Activity activity) { final Rect currentTaskBounds = ActivityTaskManager.getInstance().getTaskBounds(activity.getTaskId()); return currentTaskBounds.width() >= getMinCurrentScreenSplitWidthPx(activity) && currentTaskBounds.height() >= getMinSmallestScreenSplitWidthPx(activity); } }
src/com/android/settings/homepage/SettingsHomepageActivity.java +10 −7 Original line number Diff line number Diff line Loading @@ -42,6 +42,7 @@ import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentTransaction; import androidx.window.embedding.SplitController; import androidx.window.embedding.SplitRule; import com.android.settings.R; Loading Loading @@ -85,8 +86,9 @@ public class SettingsHomepageActivity extends FragmentActivity implements private View mTwoPaneSuggestionView; private CategoryMixin mCategoryMixin; private Set<HomepageLoadedListener> mLoadedListeners; private SplitController mSplitController; private boolean mIsEmbeddingActivityEnabled; private boolean mIsTwoPaneLastTime; private boolean mIsTwoPane; /** A listener receiving homepage loaded events. */ public interface HomepageLoadedListener { Loading Loading @@ -149,7 +151,8 @@ public class SettingsHomepageActivity extends FragmentActivity implements super.onCreate(savedInstanceState); setContentView(R.layout.settings_homepage_container); mIsEmbeddingActivityEnabled = ActivityEmbeddingUtils.isEmbeddingActivityEnabled(this); mIsTwoPaneLastTime = ActivityEmbeddingUtils.isTwoPaneResolution(this); mSplitController = SplitController.getInstance(); mIsTwoPane = mSplitController.isActivityEmbedded(this); final View appBar = findViewById(R.id.app_bar_container); appBar.setMinimumHeight(getSearchBoxHeight()); Loading Loading @@ -213,9 +216,9 @@ public class SettingsHomepageActivity extends FragmentActivity implements @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); final boolean isTwoPane = ActivityEmbeddingUtils.isTwoPaneResolution(this); if (mIsTwoPaneLastTime != isTwoPane) { mIsTwoPaneLastTime = isTwoPane; final boolean newTwoPaneState = mSplitController.isActivityEmbedded(this); if (mIsTwoPane != newTwoPaneState) { mIsTwoPane = newTwoPaneState; updateHomepageAppBar(); updateHomepageBackground(); } Loading Loading @@ -254,7 +257,7 @@ public class SettingsHomepageActivity extends FragmentActivity implements } final Window window = getWindow(); final int color = ActivityEmbeddingUtils.isTwoPaneResolution(this) final int color = mIsTwoPane ? Utils.getColorAttrDefaultColor(this, com.android.internal.R.attr.colorSurface) : Utils.getColorAttrDefaultColor(this, android.R.attr.colorBackground); Loading Loading @@ -416,7 +419,7 @@ public class SettingsHomepageActivity extends FragmentActivity implements if (!mIsEmbeddingActivityEnabled) { return; } if (ActivityEmbeddingUtils.isTwoPaneResolution(this)) { if (mIsTwoPane) { findViewById(R.id.homepage_app_bar_regular_phone_view).setVisibility(View.GONE); findViewById(R.id.homepage_app_bar_two_pane_view).setVisibility(View.VISIBLE); } else { Loading
src/com/android/settings/homepage/TopLevelSettings.java +2 −1 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import androidx.preference.Preference; import androidx.preference.PreferenceFragmentCompat; import androidx.preference.PreferenceScreen; import androidx.recyclerview.widget.RecyclerView; import androidx.window.embedding.SplitController; import com.android.settings.R; import com.android.settings.Utils; Loading Loading @@ -144,7 +145,7 @@ public class TopLevelSettings extends DashboardFragment implements if (mFirstStarted) { mFirstStarted = false; } else if (mIsEmbeddingActivityEnabled && isOnlyOneActivityInTask() && !ActivityEmbeddingUtils.isTwoPaneResolution(getActivity())) { && !SplitController.getInstance().isActivityEmbedded(getActivity())) { // Set default highlight menu key for 1-pane homepage since it will show the placeholder // page once changing back to 2-pane. Log.i(TAG, "Set default menu key"); Loading
src/com/android/settings/widget/HighlightableTopLevelPreferenceAdapter.java +2 −2 Original line number Diff line number Diff line Loading @@ -31,10 +31,10 @@ import androidx.preference.PreferenceGroup; import androidx.preference.PreferenceGroupAdapter; import androidx.preference.PreferenceViewHolder; import androidx.recyclerview.widget.RecyclerView; import androidx.window.embedding.SplitController; import com.android.settings.R; import com.android.settings.Utils; import com.android.settings.activityembedding.ActivityEmbeddingUtils; import com.android.settings.homepage.SettingsHomepageActivity; /** Loading Loading @@ -255,6 +255,6 @@ public class HighlightableTopLevelPreferenceAdapter extends PreferenceGroupAdapt } private boolean isHighlightNeeded() { return ActivityEmbeddingUtils.isTwoPaneResolution(mHomepageActivity); return SplitController.getInstance().isActivityEmbedded(mHomepageActivity); } }