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

Commit f505fefd authored by Peter Kalauskas's avatar Peter Kalauskas Committed by Android (Google) Code Review
Browse files

Merge "Move call to hide IME until next frame" into tm-dev

parents 9063daac c4e1489b
Loading
Loading
Loading
Loading
+13 −3
Original line number Original line Diff line number Diff line
@@ -32,6 +32,7 @@ import android.animation.ValueAnimator;
import android.content.Context;
import android.content.Context;
import android.graphics.Insets;
import android.graphics.Insets;
import android.graphics.Rect;
import android.graphics.Rect;
import android.os.Trace;
import android.util.AttributeSet;
import android.util.AttributeSet;
import android.view.WindowInsetsAnimationControlListener;
import android.view.WindowInsetsAnimationControlListener;
import android.view.WindowInsetsAnimationController;
import android.view.WindowInsetsAnimationController;
@@ -44,6 +45,7 @@ import androidx.annotation.Nullable;


import com.android.internal.widget.LockscreenCredential;
import com.android.internal.widget.LockscreenCredential;
import com.android.internal.widget.TextViewInputDisabler;
import com.android.internal.widget.TextViewInputDisabler;
import com.android.systemui.DejankUtils;
import com.android.systemui.R;
import com.android.systemui.R;
import com.android.systemui.animation.Interpolators;
import com.android.systemui.animation.Interpolators;
/**
/**
@@ -194,9 +196,17 @@ public class KeyguardPasswordView extends KeyguardAbsKeyInputView {


                            @Override
                            @Override
                            public void onAnimationEnd(Animator animation) {
                            public void onAnimationEnd(Animator animation) {
                                // Run this in the next frame since it results in a slow binder call
                                // to InputMethodManager#hideSoftInput()
                                DejankUtils.postAfterTraversal(() -> {
                                    Trace.beginSection("KeyguardPasswordView#onAnimationEnd");
                                    // // TODO(b/230620476): Make hideSoftInput oneway
                                    // controller.finish() eventually calls hideSoftInput
                                    controller.finish(false);
                                    controller.finish(false);
                                    runOnFinishImeAnimationRunnable();
                                    runOnFinishImeAnimationRunnable();
                                    finishRunnable.run();
                                    finishRunnable.run();
                                    Trace.endSection();
                                });
                            }
                            }
                        });
                        });
                        anim.setInterpolator(Interpolators.FAST_OUT_LINEAR_IN);
                        anim.setInterpolator(Interpolators.FAST_OUT_LINEAR_IN);