1. 06 Jan, 2023 2 commits
  2. 18 Dec, 2022 1 commit
    • alanwutang11's avatar
      Fix is canvas kit bool (#116944) · c0dddacb
      alanwutang11 authored
      * isCanvasKit implement and test
      
      * isCanvasKit implement and test
      
      * ++
      
      * forgot license
      
      * make isCanvasKit a getter
      
      * addressed comments
      
      * forgot to change names of integration test files
      
      * typo
      
      * simplified tests
      
      * comments
      c0dddacb
  3. 15 Dec, 2022 1 commit
    • Martin Kustermann's avatar
      Improve documentation of `compute()` function (#116878) · fc3571ef
      Martin Kustermann authored
      This improves the documentation of the `compute()` function as follows:
      
        * Instead of making `compute` a top-level constant, we make it a
          function. This allows the generated API docs to show a function
          signature with parameters and their names, making it *much* clearer
          to users what function is being documented.
      
        * We mention that on web-backends this is running `compute()` on the
          normal eventloop whereas on on native platforms it runs in a
          separate isolate.
      
        * We mention that callback, message and result have to be sendable
          across isolates. We also mention that they may be copied.
      
        * We link to both `Isolate.run` & `SendPort.send` for more information.
      
        * We use `M` for the type of `message` instead the rather confusing
          `Q`.
      fc3571ef
  4. 13 Dec, 2022 1 commit
  5. 11 Dec, 2022 1 commit
  6. 07 Dec, 2022 1 commit
  7. 29 Nov, 2022 2 commits
  8. 18 Nov, 2022 1 commit
  9. 12 Nov, 2022 1 commit
  10. 11 Nov, 2022 2 commits
  11. 14 Oct, 2022 1 commit
  12. 06 Oct, 2022 1 commit
  13. 04 Oct, 2022 1 commit
  14. 29 Sep, 2022 1 commit
  15. 23 Sep, 2022 1 commit
  16. 20 Sep, 2022 1 commit
  17. 19 Sep, 2022 1 commit
  18. 15 Sep, 2022 1 commit
  19. 12 Sep, 2022 1 commit
  20. 10 Sep, 2022 1 commit
  21. 07 Sep, 2022 2 commits
  22. 02 Sep, 2022 1 commit
  23. 10 Aug, 2022 1 commit
  24. 04 Aug, 2022 1 commit
  25. 03 Aug, 2022 1 commit
  26. 26 Jul, 2022 1 commit
  27. 20 Jul, 2022 1 commit
    • Vyacheslav Egorov's avatar
      Use persistent hash map to store _inheritedWidgets (#107068) · 81300293
      Vyacheslav Egorov authored
      * Use persistent hash map to store _inheritedWidgets
      
      Instead of using a HashMap and copying it down the tree
      which leads to quadratic time and space complexity
      use a persistent data structure which can amortize
      the cost by sharing parts of the structure.
      
      The data shows HAMT based PersistentHashMap to be
      5-10x faster for building _inheritedWidgets and
      considerably more space effecient (e.g. bringing
      amount of memory allocated when constructing
      _inheritedWidgets in a tree with 150 InheritedWidget
      down to 70Kb from 970Kb).
      
      PersistentHashMap is slower than HashMap for
      access: 2-3x in relative terms, but in absolute
      terms we are only talking about ~0.2ns slow down
      per access and various app benchmarks we run have
      have not revealed any significant regressions.
      81300293
  28. 18 Jul, 2022 1 commit
  29. 27 Jun, 2022 1 commit
  30. 24 Jun, 2022 1 commit
  31. 16 Jun, 2022 1 commit
  32. 09 Jun, 2022 1 commit
  33. 08 Jun, 2022 1 commit
  34. 31 May, 2022 1 commit
    • Greg Spencer's avatar
      Switch debugAssertNotDisposed to be a static (#104772) · 16b73481
      Greg Spencer authored
      This reverts part of the change made in #103456 to expose a debug check for subclasses of ChangeNotifier to avoid code duplication. Instead of making debugAssertNotDisposed a public instance function, it is now a public static function. It makes it harder to call, slightly, but it means that everyone who implemented ChangeNotifier instead of extending it doesn't get broken.
      16b73481
  35. 25 May, 2022 1 commit
    • Pierre-Louis's avatar
      Use `curly_braces_in_flow_control_structures` for `foundation`, `gestures`,... · 9cc72df7
      Pierre-Louis authored
      Use `curly_braces_in_flow_control_structures` for `foundation`, `gestures`, `painting`, `physics` (#104610)
      
      * Use `curly_braces_in_flow_control_structures` for `foundation`
      
      * Use `curly_braces_in_flow_control_structures` for `gestures`
      
      * Use `curly_braces_in_flow_control_structures` for `painting`
      
      * Use `curly_braces_in_flow_control_structures` for `physics`
      
      * fix comments
      
      * remove trailing space
      
      * fix TODO style
      9cc72df7
  36. 19 May, 2022 1 commit
    • Greg Spencer's avatar
      Add ShortcutsRegistry (#103456) · f6c3ee31
      Greg Spencer authored
      This adds a ShortcutsRegistry for ShortcutActivator to Intent mappings that can be modified from its descendants.
      
      This is so that descendants can make shortcuts dynamically available to a larger portion of the app than just their descendants. This is a precursor needed by the new MenuBar, for instance, so that the menu bar itself can be placed where it likes, but the shortcuts it defines can be in effect for most, if not all, of the UI surface in the app. For example, the "Ctrl-Q" quit binding would need to work even if the focused widget wasn't a child of the MenuBar.
      
      This just provides the shortcut to intent mapping, the actions activated by the intent are described in the context where they make sense. For example, defining a "Ctrl-C" shortcut mapped to a "CopyIntent" should perform different functions if it happens while a TextField has focus vs when a drawing has focus, so those different areas would need to define different actions mapped to "CopyIntent". A hypothetical "QuitIntent" would probably be active for the entire app, so would be mapped in an Actions widget near the top of the hierarchy.
      f6c3ee31