commit | 1960d35f903f02f09de551858f74f46817f815b3 | [log] [tgz] |
---|---|---|
author | Jinsuk Kim <jinsukkim@chromium.org> | Thu Apr 25 02:23:30 2019 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Apr 25 02:23:30 2019 |
tree | 283a5958211337b12c163545d5b641fcb47628c9 | |
parent | 1fb5ba9566bff37648070e47e60c9d657220d788 [diff] |
Android: Navigation on TabSwitcher This CL add edge-swipe navigation to Tab switcher. Swipe from left edge exits the switcher, and swipe from right edge does nothing. An upcoming CL will add edge glow effect to the right swipe to indicate that no forward navigation is possible. FrameLayout(mViewContainer) in StackLayout which is the topmost view for tab switcher below CompositorViewHolder, is used as the container view for HistoryNavigationLayout. To make HistoryNavigationLayout (and below) a pure Android view structure without Chrome-specific classes (like Tab or ChromeActivity), introduced an interface HistoryNavigation.NavigationHelper. Its implementation NavigationHelperImpl is injected from various native page view. This makes it easy to write tests based on DumyyUiActivity. NavigationHandler.ActionDelegate is another interface that keeps NavigationHandler free of Tab/ChromeActivity. Native/rendered pages can share a common impl (TabbedActionDelegate). Tab switcher has its own implementation of ActionDelegate since it doesn't depend on Tab for navigation. Bug: 937946 Change-Id: Id9572e39ce9c6b537e118014d6924064117492af Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1573429 Commit-Queue: Jinsuk Kim <jinsukkim@chromium.org> Reviewed-by: Ted Choc <tedchoc@chromium.org> Cr-Commit-Position: refs/heads/master@{#653884}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .