Index: chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java |
index 342e59ffec409de6722e8619cd25c8b392bf48c6..52cc9ab18c8ca34231b0418f297b106332b6d062 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java |
@@ -119,6 +119,7 @@ import org.chromium.chrome.browser.widget.emptybackground.EmptyBackgroundViewWra |
import org.chromium.chrome.browser.widget.findinpage.FindToolbarManager; |
import org.chromium.content.browser.ContentVideoView; |
import org.chromium.content.browser.ContentViewCore; |
+import org.chromium.content.browser.accessibility.BrowserAccessibilityManager; |
import org.chromium.content.browser.crypto.CipherFactory; |
import org.chromium.content.common.ContentSwitches; |
import org.chromium.content_public.browser.LoadUrlParams; |
@@ -146,17 +147,11 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode |
private static final int FIRST_RUN_EXPERIENCE_RESULT = 101; |
@Retention(RetentionPolicy.SOURCE) |
- @IntDef({ |
- BACK_PRESSED_NOTHING_HAPPENED, |
- BACK_PRESSED_HELP_URL_CLOSED, |
- BACK_PRESSED_MINIMIZED_NO_TAB_CLOSED, |
- BACK_PRESSED_MINIMIZED_TAB_CLOSED, |
- BACK_PRESSED_TAB_CLOSED, |
- BACK_PRESSED_TAB_IS_NULL, |
- BACK_PRESSED_EXITED_TAB_SWITCHER, |
- BACK_PRESSED_EXITED_FULLSCREEN, |
- BACK_PRESSED_NAVIGATED_BACK |
- }) |
+ @IntDef({BACK_PRESSED_NOTHING_HAPPENED, BACK_PRESSED_HELP_URL_CLOSED, |
+ BACK_PRESSED_MINIMIZED_NO_TAB_CLOSED, BACK_PRESSED_MINIMIZED_TAB_CLOSED, |
+ BACK_PRESSED_TAB_CLOSED, BACK_PRESSED_TAB_IS_NULL, BACK_PRESSED_EXITED_TAB_SWITCHER, |
+ BACK_PRESSED_EXITED_FULLSCREEN, BACK_PRESSED_NAVIGATED_BACK, |
+ BACK_PRESSED_ACCESSIBILITY_EXITED_AUTOFILL_POPUP}) |
private @interface BackPressedResult {} |
private static final int BACK_PRESSED_NOTHING_HAPPENED = 0; |
private static final int BACK_PRESSED_HELP_URL_CLOSED = 1; |
@@ -167,7 +162,8 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode |
private static final int BACK_PRESSED_EXITED_TAB_SWITCHER = 6; |
private static final int BACK_PRESSED_EXITED_FULLSCREEN = 7; |
private static final int BACK_PRESSED_NAVIGATED_BACK = 8; |
- private static final int BACK_PRESSED_COUNT = 9; |
+ private static final int BACK_PRESSED_ACCESSIBILITY_EXITED_AUTOFILL_POPUP = 9; |
+ private static final int BACK_PRESSED_COUNT = 10; |
private static final String TAG = "ChromeTabbedActivity"; |
@@ -1486,6 +1482,17 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode |
return true; |
} |
+ // Navigate back to the element hosting the autofill popup when navigating in accessibility |
+ // mode. |
+ BrowserAccessibilityManager browserAccessibilityManager = |
+ currentTab.getContentViewCore().getBrowserAccessibilityManager(); |
+ if (browserAccessibilityManager != null |
+ && browserAccessibilityManager.handleBackPressed()) { |
dmazzoni
2017/03/28 16:47:35
Instead of handleBackPressed(), maybe call this so
csashi
2017/03/28 17:48:10
Acknowledged. Looks like your review crossed my up
|
+ recordBackPressedUma("Navigating back from Autofill Popup", |
+ BACK_PRESSED_ACCESSIBILITY_EXITED_AUTOFILL_POPUP); |
+ return true; |
+ } |
+ |
if (getToolbarManager().back()) { |
recordBackPressedUma("Navigating backward", BACK_PRESSED_NAVIGATED_BACK); |
RecordUserAction.record("MobileTabClobbered"); |