1. 30 Jan, 2019 1 commit
  2. 29 Jan, 2019 1 commit
  3. 07 Jan, 2019 1 commit
  4. 10 Nov, 2018 2 commits
  5. 08 Nov, 2018 1 commit
  6. 02 Nov, 2018 1 commit
  7. 01 Nov, 2018 1 commit
  8. 31 Oct, 2018 3 commits
    • Amir Hardon's avatar
      Re-land "Initial framework support for iOS platform views." (#23781) · 8de86d41
      Amir Hardon authored
      Re-landing #23412 with a fix to the PlatformLayer's addToScene signature.
      
      #23412 was broken by the change to Layer done in #23434.
      
      It seemed green as the presubmits were done before #23434 was landed, and when #23412 landed it broke the build.
      
      Reverts #23779
      8de86d41
    • Amir Hardon's avatar
      b20e7a26
    • Amir Hardon's avatar
      Initial framework support for iOS platform views. (#23412) · 67ffe1c2
      Amir Hardon authored
      This PR adds the full framework stack (layer->render object->widget, and
      service) for embedding iOS views with minimal functionality.
      
      I allowed myself to throw the entire framework stack in one PR since we're mostly
      mirroring the structure we already established for embedded Android views, so this PR
      is a little bigger than usual. I'm happy to break it down to the
      different pieces of the stack if reviewers prefer.
      
      Specifically this PR adds:
      * A UiKitView widget for embedding a UIView in the widget tree.
      * A RenderUiKitView which is the render object for showing a
        UIView.
      * A PlatformViewLayer which denotes the position of a UIView in the
        layer tree.
      * The iOS platform_views system channel client code in services/platform_views.dart
      * Splits the fake platform views controller to an Android and iOS
        controllers.
      
      TBD in following PRs:
      * Plumb the layout direction all the way to the platform view (currently
        there is still no engine support for it).
      * Integrate with gesture arenas (engine support is still missing as
        well).
      67ffe1c2
  9. 16 Oct, 2018 1 commit
    • Amir Hardon's avatar
      Make AndroidView take gesture recognizer factories. (#21657) · 707eaf5e
      Amir Hardon authored
      Before this PR AndroidView's gestureRecognizers field was a list of
      gesture recognizers. This was problematic as when the widget was rebuilt
      with the same gesture recognizer instances we would try to re-join the
      recognizers to a gesture arena team and crash (as a OneSeqeunceGestureRecognizer
      team can only be set once).
      
      With this change, we instead take a set of factories.
      This allows AndroidView to create the gesture recognizers just before
      adding them to the team, and thus be sure that they are only added once to a
      team.
      
      The factories are identified by the type of the object they create, this
      allows AndroidView to know when it is given an equivalent set of gesture
      recognizer factories, and do nothing in that case.
      707eaf5e
  10. 14 Sep, 2018 1 commit
  11. 12 Sep, 2018 1 commit
  12. 07 Sep, 2018 1 commit
  13. 06 Sep, 2018 1 commit
    • Amir Hardon's avatar
      Add an EagerGestureRecognizer. (#21407) · 9506d1e1
      Amir Hardon authored
      This recognizer can be passed in AndroidView's gesureRecognizers when we
      want all touch events in the view bounds to be immediately dispatched
      to the Android view.
      9506d1e1
  14. 05 Sep, 2018 1 commit
  15. 29 Aug, 2018 2 commits
  16. 28 Aug, 2018 2 commits
  17. 27 Aug, 2018 2 commits
  18. 23 Aug, 2018 1 commit
  19. 07 Aug, 2018 2 commits
    • Amir Hardon's avatar
      AndroidView touch support. · ccaa0636
      Amir Hardon authored
      This PR adds 2 features to RenderAndroidView and AndroidView:
      
      1. Hit testing behavior
      Adds a `PlatformViewHitTestBehavior` which is similar to
      `HitTestBehavior` without the `deferToChild` option (as platform views
      don't have child render objects) and with a `transparent` option which
      prevents it from forwarding any events to the Android view.
      
      2. MotionEvent recomposing logic
      FlutterView and the framework `converter.dart` are working together to
      transform each Android MotionEvent object into one or more
      `PointerEvent` objects.
      
      This PR adds the reverse logic (in _MotionEventDispatcher which is used
      by RenderAndroidView) which turns a stream of PointerEvent objects into
      MotionEvent objects.
      
      The correctness of the recomposing logic is tested in an integration
      test which will land in a separate PR (the unit test PR is pretty big,
      trying to keep as many bite-size PRs for reviewer's convenience)
      ccaa0636
    • amirh's avatar
  20. 28 Jul, 2018 1 commit
  21. 20 Jul, 2018 1 commit