1. 06 Aug, 2019 1 commit
  2. 02 Aug, 2019 1 commit
    • Chris Yang's avatar
      Extract common PlatformView functionality: Painting and Semantics (#36955) · 9553f8da
      Chris Yang authored
      * painting and semantics
      
      * more comments
      
      * fixing ci
      
      * review fixes
      
      * add assert for id
      
      * rename custom layer factory to layer builder
      
      * review updates
      
      * partial review fixes
      
      * some doc updates
      
      * more doc updates
      
      * only expose getter for id in PlatformViewController
      
      * doc updates/removing all the  references
      
      * remove extra
      
      * more doc updates
      
      * some doc updates
      
      * more doc fixes
      
      * review fixes
      9553f8da
  3. 31 May, 2019 1 commit
  4. 09 May, 2019 1 commit
  5. 27 Mar, 2019 1 commit
  6. 22 Mar, 2019 1 commit
  7. 20 Mar, 2019 1 commit
    • Alexandre Ardhuin's avatar
      some spaces formatting (#29452) · a6af4228
      Alexandre Ardhuin authored
      * some space formattings
      
      * always use blocks in if-else if a block is used
      
      * format spaces in for and while
      
      * allow multiline if conditions
      
      * fix missing space
      a6af4228
  8. 12 Mar, 2019 1 commit
  9. 09 Mar, 2019 1 commit
  10. 06 Mar, 2019 1 commit
  11. 04 Mar, 2019 1 commit
    • Amir Hardon's avatar
      Make RenderUiKitView reject absorbed touch events (#28666) · 5099701f
      Amir Hardon authored
      When a touch event that is in the bounds of a RenderUiKitView is absorbed by another render object,
      the RenderUiKitView's handleEvent is not called for that object. On the platform side, the touch event hits the FlutterTouchInterceptingView which is waiting for a framework decision that never arrived on whether to reject or accept the gesture.
      
      This change fixes the issue by having RenderUiKitView register a global PointerRoute, that is used to reject absorbed touch events.
      5099701f
  12. 01 Mar, 2019 2 commits
  13. 15 Jan, 2019 1 commit
  14. 27 Dec, 2018 1 commit
    • Amir Hardon's avatar
      Actively reject UiKitView gestures. (#25792) · 50f9b883
      Amir Hardon authored
      flutter/engine#7307 changes the engine side of embedded UIView to only
      reject gestures when the framework sends a `rejectGesture` message, so
      that gesture resolution can done after a touch sequence has ended (see
      PR description for flutter/engine#7307 for more details).
      
      This change makes the framework send a `rejectGesture` message to the
      engine when a UiKitView rejects a gesture.
      
      I'm planning to land this PR before the engine side change, so right now
      it swallows the exception thrown if there is no engine implementation
      for `rejectGesture` (which keeps us with the current behavior). After
      this change lands I'll land the engine PR, and then clean up the part
      that swallows the exception.
      50f9b883
  15. 18 Dec, 2018 1 commit
  16. 10 Nov, 2018 1 commit
  17. 08 Nov, 2018 1 commit
  18. 05 Nov, 2018 1 commit
  19. 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
  20. 26 Oct, 2018 1 commit
  21. 16 Oct, 2018 2 commits
    • Alexandre Ardhuin's avatar
      Prefer void to null (#22977) · 0fb84e96
      Alexandre Ardhuin authored
      * Future<void> main
      
      * Future<void>.delayed
      
      * prefer_void_to_Null
      
      * address review comments
      0fb84e96
    • 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
  22. 01 Oct, 2018 1 commit
  23. 14 Sep, 2018 1 commit
  24. 12 Sep, 2018 1 commit
  25. 05 Sep, 2018 1 commit
  26. 31 Aug, 2018 1 commit
  27. 28 Aug, 2018 2 commits
  28. 27 Aug, 2018 1 commit
    • amirh's avatar
      Make AndroidView participate in gesture arenas. (#20917) · c594696f
      amirh authored
      Pointer events are dispatched to the Android view only if it won
      Flutter's gesture arena for the pointer.
      Specific gestures that should be dispatched to the android view can be
      specified with the gestureRecognizers parameter.
      c594696f
  29. 23 Aug, 2018 1 commit
  30. 08 Aug, 2018 1 commit
  31. 07 Aug, 2018 1 commit
    • 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
  32. 20 Jul, 2018 1 commit