diff --git a/quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java b/quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java index 7e4fa08abc..224c05e89e 100644 --- a/quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java @@ -48,6 +48,7 @@ import android.graphics.Region; import android.graphics.Region.Op; import android.graphics.drawable.AnimatedVectorDrawable; import android.graphics.drawable.PaintDrawable; +import android.inputmethodservice.InputMethodService; import android.util.Property; import android.view.Gravity; import android.view.MotionEvent; @@ -591,6 +592,11 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT return; } + if (InputMethodService.canImeRenderGesturalNavButtons() && mContext.isGestureNav()) { + // IME is rendering the nav buttons, so we don't need to create a new layer for them. + return; + } + mSeparateWindowParent.addOnAttachStateChangeListener(new OnAttachStateChangeListener() { @Override public void onViewAttachedToWindow(View view) { diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java index ec685b68df..e37bd21a68 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java @@ -256,6 +256,10 @@ public class TaskbarActivityContext extends ContextThemeWrapper implements Activ return mNavMode == Mode.THREE_BUTTONS; } + public boolean isGestureNav() { + return mNavMode == Mode.NO_BUTTON; + } + public int getLeftCornerRadius() { return mLeftCorner == null ? 0 : mLeftCorner.getRadius(); }