Merge "Add variable to check if button should apply keyboard insets" into tm-qpr-dev

This commit is contained in:
Brandon Dayauon
2022-10-08 12:15:26 +00:00
committed by Android (Google) Code Review
2 changed files with 17 additions and 1 deletions
@@ -799,6 +799,17 @@ public abstract class BaseAllAppsContainerView<T extends Context & ActivityConte
return mActivityContext.getDeviceProfile().isTablet ? mBottomSheetBackground : this;
}
/**
* Sets whether the view or its children should react to the window inset.
* Used for when exiting all apps -> workspace and determines if window inset
* should be applied.. ex) the work mode switch.
*/
public void setApplyWindowInset(boolean shouldApplyWindowInset) {
if (mWorkManager.getWorkModeSwitch() != null) {
mWorkManager.getWorkModeSwitch().setApplyWindowInset(shouldApplyWindowInset);
}
}
/** Holds a {@link BaseAllAppsAdapter} and related fields. */
public class AdapterHolder {
public static final int MAIN = 0;
@@ -52,6 +52,7 @@ public class WorkModeSwitch extends Button implements Insettable, View.OnClickLi
private int mFlags;
private boolean mWorkEnabled;
private boolean mOnWorkTab;
private boolean mApplyWindowInset;
public WorkModeSwitch(Context context) {
this(context, null, 0);
@@ -168,7 +169,7 @@ public class WorkModeSwitch extends Button implements Insettable, View.OnClickLi
@Override
public WindowInsets onApplyWindowInsets(WindowInsets insets) {
if (!Utilities.ATLEAST_R) {
if (!Utilities.ATLEAST_R || !mApplyWindowInset) {
return insets;
}
if (insets.isVisible(WindowInsets.Type.ime())) {
@@ -197,4 +198,8 @@ public class WorkModeSwitch extends Button implements Insettable, View.OnClickLi
private void removeFlag(int flag) {
mFlags &= ~flag;
}
public void setApplyWindowInset(boolean applyWindowInset){
mApplyWindowInset = applyWindowInset;
}
}