-
Mugurell authored
There are currently 3 Views interested in handling user's MotionEvents: - GeckoView which renders web content - SwipeRefreshLayout which handles pull down to refresh - BrowserToolbar which can be dynamically hidden Each of them have different behaviours based on different conditions so I - removed the coupling of BrowserToolbar and Geckoview from `NestedGeckoView`. It's `onTouchEventForResult` will now only set behaviour for GeckoView. - created a new EngineView enum to expose the `PanZoomController` possible result of how a specific user touch was handled to any components that have a reference to an instance of EngineView without the need to have `concept-engine` as a dependency. - implemented specific behaviour in `SwipeRefreshFeature` for the pull down to refresh functionality and in the `BrowserToolbarBottomBehavior` for the dynamic navigation bar functionality. Mapped PanZoomController's INPUT_RESULT to a new enum in order to not enforce the need of including geckoview as a dependency in all components interested in how a user's `MotionEvent` was handled and also because webview doesn't expose such values so we needed a wrapper for it's handled or not boolean return.
5d58e943
To find the state of this project's repository at the time of any of these versions, check out the tags.