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

Commit f688b04e authored by Xin Li's avatar Xin Li
Browse files

Merge sc-v2-dev-plus-aosp-without-vendor@8433047

Bug: 226662282
Merged-In: I310e7924c7767b24b697fc96a098b37db4cf1216
Change-Id: I8bd98ceff90846a20679bfb6c55b37c1765fd13b
parents 17561f2a 5976b981
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@
 */
package com.android.launcher3.taskbar;

import static android.view.InsetsState.ITYPE_BOTTOM_MANDATORY_GESTURES;
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
import static android.view.WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL;
@@ -195,7 +196,8 @@ public class TaskbarActivityContext extends ContextThemeWrapper implements Activ
        WindowManagerWrapper wmWrapper = WindowManagerWrapper.getInstance();
        wmWrapper.setProvidesInsetsTypes(
                mWindowLayoutParams,
                new int[] { ITYPE_EXTRA_NAVIGATION_BAR, ITYPE_BOTTOM_TAPPABLE_ELEMENT }
                new int[] { ITYPE_EXTRA_NAVIGATION_BAR, ITYPE_BOTTOM_TAPPABLE_ELEMENT,
                        ITYPE_BOTTOM_MANDATORY_GESTURES }
        );
        // Adjust the frame by the rounded corners (ie. leaving just the bar as the inset) when
        // the IME is showing
+8 −1
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ import android.view.accessibility.AccessibilityEvent;
import android.widget.FrameLayout;

import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.InsettableFrameLayout;
import com.android.launcher3.Utilities;
import com.android.launcher3.util.MultiValueAlpha;
@@ -545,8 +546,14 @@ public abstract class BaseDragLayer<T extends Context & ActivityContext>
    public WindowInsets dispatchApplyWindowInsets(WindowInsets insets) {
        if (Utilities.ATLEAST_Q) {
            Insets gestureInsets = insets.getMandatorySystemGestureInsets();
            int gestureInsetBottom = gestureInsets.bottom;
            DeviceProfile dp = mActivity.getDeviceProfile();
            if (dp.isTaskbarPresent) {
                // Ignore taskbar gesture insets to avoid interfering with TouchControllers.
                gestureInsetBottom = Math.max(0, gestureInsetBottom - dp.taskbarSize);
            }
            mSystemGestureRegion.set(gestureInsets.left, gestureInsets.top,
                    gestureInsets.right, gestureInsets.bottom);
                    gestureInsets.right, gestureInsetBottom);
        }
        return super.dispatchApplyWindowInsets(insets);
    }