1. 13 10月, 2020 1 次提交
  2. 10 10月, 2020 1 次提交
    • G
      Migration to PlatformDispatcher and multi-window (#20496) · 85b0031f
      Greg Spencer 提交于
      This is a PR for converting the dart:ui code in the engine to use a multi-window API. The goal here is to convert from the window singleton to an API that has the concept of multiple windows. Also, I'm matching up the new PlatformDispatcher class to talk directly to the PlatformConfiguration class in the engine. I'm not attempting to actually enable creating multiple windows here, just migrate to an API that has a concept of multiple windows. The multi-window API in this PR currently only ever creates one window.
      
      The design doc for this change is here.
      
      The major changes in this PR:
      
      Move the platfom-specific attributes out of Window, and into the new PlatformDispatcher class that holds all of the platform state, so that the platform code need only update the configuration on this class.
      Create FlutterView, FlutterWindow, and SingletonFlutterWindow classes to separate out the concepts of a view (of which there may be multiple in a window), a window (of which there may be multiple on a screen, and they host views), and a window where there is only ever expected to be one (this hosts the entire API of the former Window class, and will eventually be the type of the window singleton).
      Next step after this PR lands:
      
      Remove the Window class entirely (it is replaced by SingletonFlutterWindow). Some minor changes in the Framework are needed to switch to using SingletonFlutterWindow directly first.
      
      The Window class still exists in this PR, but will be removed as soon as the framework is converted to point to the SingletonFlutterWindow class instead. They share the same API, just have different names (Window is currently a subclass of SingletonFlutterWindow). The intention is that the Window name will be freed up to use as a widget class name in the framework for managing windows. The singleton called window will remain, and keep the same API it has now.
      85b0031f
  3. 07 10月, 2020 1 次提交
  4. 26 9月, 2020 1 次提交
  5. 12 9月, 2020 2 次提交
    • C
      Clean up C++ includes (#21127) · 08dabe96
      Chris Bracken 提交于
      Cleans up header order/grouping for consistency: associated header, C/C++ system/standard library headers, library headers, platform-specific #includes.
      
      Adds <cstring> where strlen, memcpy are being used: there are a bunch of places we use them transitively.
      
      Applies linter-required cleanups. Disables linter on one file due to included RapidJson header. See https://github.com/flutter/flutter/issues/65676
      
      This patch does not cover flutter/shell/platform/darwin. There's a separate, slightly more intensive cleanup for those in progress.
      08dabe96
    • C
      Prefer C++ standard headers to their C counterpart (#21091) · 16b900b6
      Chris Bracken 提交于
      We currently use a mix of C standard includes (e.g. limits.h) and their
      C++ variants (e.g. climits). This migrates to a consistent style for all
      cases where the C++ variants are acceptable, but leaves the C
      equivalents in place where they are required, such as in the embedder
      API and other headers that may be used from C.
      16b900b6
  6. 15 8月, 2020 1 次提交
  7. 07 8月, 2020 1 次提交
  8. 04 8月, 2020 1 次提交
    • D
      fuchsia: Remove dead code / break dependencies (#19396) · 12a37478
      David Worsham 提交于
      The fuchsia code around metrics and sizing was just sending this
      information through a side-channel, when the engine already had the
      information available. So, delete all of it to make future CLs simpler.
      
      Additionally, the SceneUpdateContext has many unneccesary dependencies
      re: metrics and PaintTasks. Break those to make future CLs simpler.
      
      Tested: Ran all unittests and ran workstation on Fuchsia
      BUG: 53062, 53063
      12a37478
  9. 01 8月, 2020 1 次提交
  10. 31 7月, 2020 1 次提交
    • G
      Fix lint errors in lib/ui (#19988) · a6cd3ebc
      Greg Spencer 提交于
      This fixes all of the lint errors in lib/ui, except for a few (three, I think) where it would have changed the API, converting non-const references to pointers. For those, I just did NOLINT on the particular line instead of ignoring the whole file.
      a6cd3ebc
  11. 29 7月, 2020 1 次提交
  12. 23 7月, 2020 1 次提交
  13. 07 7月, 2020 1 次提交
  14. 20 6月, 2020 1 次提交
  15. 19 6月, 2020 1 次提交
  16. 16 6月, 2020 1 次提交
  17. 02 5月, 2020 1 次提交
  18. 22 4月, 2020 1 次提交
  19. 08 4月, 2020 1 次提交
    • C
      always forward move event (#17541) · e2fcc66f
      chunhtai 提交于
      flutter/flutter#54022
      
      The original issue is the _MotionEventsDispatcher depends on all down pointers to send out their own move events. If the third pointer has the movement of zero, it will get filter out by the PointerDataPacketConverter. This result with only two pointer move events been sent to RenderAndroidView, and they both get ignored because it is waiting for the third one.
      
      This pr fixes it by always forward the move event
      e2fcc66f
  20. 23 2月, 2020 1 次提交
  21. 10 1月, 2020 1 次提交
  22. 09 1月, 2020 1 次提交
  23. 19 12月, 2019 2 次提交
  24. 05 12月, 2019 1 次提交
    • D
      Wire up Opacity on Fuchsia, round 2 (#14024) · d117ac97
      David Worsham 提交于
      * Remove erroneous ChildView opacity
      
      * Wire frame metrics through contexts
      
      * Maintain layer stack inside of SceneBuilder
      
      * Remove EnsureSingleChild
      
      * Centralize system-composite and elevation logic
      
      * Wire up OpacityLayer to Scenic
      d117ac97
  25. 20 11月, 2019 1 次提交
  26. 11 10月, 2019 1 次提交
  27. 28 9月, 2019 2 次提交
  28. 27 9月, 2019 2 次提交
  29. 26 9月, 2019 1 次提交
    • D
      [fuchsia] Wire up OpacityLayer to Scenic (#11322) · fcc4ab32
      David Worsham 提交于
      On Fuchsia, add a build flag for compositing OpacityLayers using the system
      compositor vs Skia, which exposes a fastpath for opacity via Scenic.
      This will only work under certain circumstances, in particular nested
      OpacityLayers will not render correctly!
      
      On Fuchsia, add a build flag for compositing PhysicalShapeLayers using
      the system compositor vs Skia. Set to off by default, which restores
      performant shadows on Fuchsia.
      
      Remove the opacity exposed from ChildView, as that was added mistakenly.
      
      Finally, we centralize the logic for switching between the
      system-composited and in-process-composited paths inside of
      ContainerLayer. We also centralize the logic for computing elevation
      there. This allows the removal of many OS_FUCHSIA-specific code-paths.
      
      Test: Ran workstation on Fuchsia; benchmarked before and after
      Bug: 23711
      Bug: 24163
      
      * Fix broken tests
      fcc4ab32
  30. 31 8月, 2019 1 次提交
  31. 17 8月, 2019 1 次提交
  32. 03 8月, 2019 1 次提交
  33. 15 6月, 2019 1 次提交
  34. 07 6月, 2019 1 次提交
  35. 11 5月, 2019 1 次提交
  36. 18 4月, 2019 1 次提交
    • M
      Pipe Z bounds from ViewportMetrics to Flow (#8583) · 0e27e0fc
      Michael Klimushyn 提交于
      This is the first step in making Flutter aware of and responsive to Z
      bound overflow. On its own this patch shouldn't result in any changes in
      behavior. This will need to be followed up with a patch in Fuchsia's
      Flutter runner to set the Z bounds after this lands, and another patch
      in the engine actually implementing the desired overflow behavior.
      
      This Z bound info is routed through the engine itself to make sure the
      bounds in flow are truly consistent from the Fuchsia runner. However
      these values should eventually be exposed to the framework as well.
      0e27e0fc