Merge changes from topic "pss-app-selector-screenshot" into tm-qpr-dev am: 47c21d1216 am: ea0153c0fc

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19536771

Change-Id: I564154cc33172568868446a04202cfc4a432b867
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Nick Chameyev
2022-09-06 14:03:47 +00:00
committed by Automerger Merge Worker
6 changed files with 266 additions and 52 deletions

View File

@@ -63,6 +63,7 @@ import android.database.DataSetObserver;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Insets;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.drawable.AnimatedVectorDrawable;
@@ -146,6 +147,7 @@ import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.function.Supplier;
/**
@@ -281,6 +283,7 @@ public class ChooserActivity extends ResolverActivity implements
private long mQueriedSharingShortcutsTimeMs;
private int mCurrAvailableWidth = 0;
private Insets mLastAppliedInsets = null;
private int mLastNumberOfChildren = -1;
private int mMaxTargetsPerRow = 1;
@@ -2546,7 +2549,11 @@ public class ChooserActivity extends ResolverActivity implements
|| gridAdapter.calculateChooserTargetWidth(availableWidth)
|| recyclerView.getAdapter() == null
|| availableWidth != mCurrAvailableWidth;
boolean insetsChanged = !Objects.equals(mLastAppliedInsets, mSystemWindowInsets);
if (isLayoutUpdated
|| insetsChanged
|| mLastNumberOfChildren != recyclerView.getChildCount()) {
mCurrAvailableWidth = availableWidth;
if (isLayoutUpdated) {
@@ -2567,7 +2574,7 @@ public class ChooserActivity extends ResolverActivity implements
return;
}
if (mLastNumberOfChildren == recyclerView.getChildCount()) {
if (mLastNumberOfChildren == recyclerView.getChildCount() && !insetsChanged) {
return;
}
@@ -2578,6 +2585,7 @@ public class ChooserActivity extends ResolverActivity implements
int offset = calculateDrawerOffset(top, bottom, recyclerView, gridAdapter);
mResolverDrawerLayout.setCollapsibleHeightReserved(offset);
mEnterTransitionAnimationDelegate.markOffsetCalculated();
mLastAppliedInsets = mSystemWindowInsets;
});
}
}
@@ -3070,7 +3078,12 @@ public class ChooserActivity extends ResolverActivity implements
mChooserMultiProfilePagerAdapter.setupContainerPadding(
getActiveEmptyStateView().findViewById(R.id.resolver_empty_state_container));
}
return super.onApplyWindowInsets(v, insets);
WindowInsets result = super.onApplyWindowInsets(v, insets);
if (mResolverDrawerLayout != null) {
mResolverDrawerLayout.requestLayout();
}
return result;
}
private void setHorizontalScrollingEnabled(boolean enabled) {