Merge "Revert "Fix onUserInteraction not called with 3-button-nav and e..."" into main
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index 707fa60..07cbaa9 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -7532,6 +7532,7 @@
                             animationCallback.onBackCancelled();
                         } else {
                             topCallback.onBackInvoked();
+                            return FINISH_HANDLED;
                         }
                         break;
                 }
@@ -7539,16 +7540,14 @@
                 if (keyEvent.getAction() == KeyEvent.ACTION_UP) {
                     if (!keyEvent.isCanceled()) {
                         topCallback.onBackInvoked();
+                        return FINISH_HANDLED;
                     } else {
                         Log.d(mTag, "Skip onBackInvoked(), reason: keyEvent.isCanceled=true");
                     }
                 }
             }
-            if (keyEvent.getAction() == KeyEvent.ACTION_UP) {
-                // forward a cancelled event so that following stages cancel their back logic
-                keyEvent.cancel();
-            }
-            return FORWARD;
+
+            return FINISH_NOT_HANDLED;
         }
 
         @Override