Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 926d04ec authored by Brandon Dayauon's avatar Brandon Dayauon Committed by Android (Google) Code Review
Browse files

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

parents 1874371a b1840e3f
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -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;
+6 −1
Original line number Diff line number Diff line
@@ -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;
    }
}