1. 18 Jul, 2022 1 commit
  2. 08 Jun, 2022 1 commit
  3. 25 May, 2022 1 commit
  4. 03 Feb, 2022 1 commit
  5. 21 Jan, 2022 1 commit
    • Marcel Kirchhoff's avatar
      Call image stream listeners asynchronously if added asynchronously (#95525) · c1e24765
      Marcel Kirchhoff authored
      * Call image stream listeners with new flag
      
      * Make _synchronousCall private
      
      * Rename _synchronousCall parameter to be more descriptive and add more documentation
      
      * Rename _hasInitialListeners to _addingInitialListeners and provide a better explanation
      
      * Formatting fix
      
      * Add tests
      
      * Remove dependency on decoration_test.dart
      
      * Simplify tests
      
      * Remove empty line in comment
      
      * Documentation
      
      * Trigger tests
      
      * Trigger tests
      
      * Flip boolean value
      c1e24765
  6. 11 Dec, 2021 1 commit
  7. 07 Sep, 2021 1 commit
  8. 23 Aug, 2021 1 commit
  9. 27 Jul, 2021 1 commit
  10. 15 Jul, 2021 1 commit
  11. 14 Jul, 2021 3 commits
  12. 13 Jul, 2021 2 commits
  13. 01 Jul, 2021 1 commit
  14. 29 Jun, 2021 1 commit
    • Greg Spencer's avatar
      Randomize Framework tests, opt out some tests that currently fail. (#85159) · b5f9612c
      Greg Spencer authored
      This turns on order shuffling for all tests that don't fail with it on, marking those tests that do fail with a tag so that they will be run without shuffling on.
      
      To determine which tests fail with it on, I ran all the tests 100 times with different random shuffle seeds, and then also ran it with the date seeds from today until the end of July, and tagged all of the test suites (files) that fail, with a seed that caused them to fail.
      b5f9612c
  15. 28 May, 2021 1 commit
  16. 06 Mar, 2021 1 commit
  17. 27 Jan, 2021 1 commit
  18. 30 Oct, 2020 1 commit
  19. 06 Oct, 2020 1 commit
  20. 05 Oct, 2020 1 commit
  21. 01 Oct, 2020 2 commits
    • Dan Field's avatar
      Revert dispose images when done (#67100) · 473358d9
      Dan Field authored
      * Revert "docs for image disposal (#67066)"
      
      This reverts commit bcb2ac5a.
      
      * Revert "Dispose of images after using them (#66688)"
      
      This reverts commit a7954691.
      473358d9
    • Dan Field's avatar
      Dispose of images after using them (#66688) · a7954691
      Dan Field authored
      * Dispose of images after using them
      Adds ImageInfo.clone, ImageInfo.dispose, and ImageInfo.isCloneOf.
      Makes all stateful holders of ui.Image objects properly clone and dispose of them.
      Behavior change for ImageStreamCompleter: Removing the last listener after registering at least one listener results in the object being disposed, and new listeners cannot be added, unless a keepAlive handle is created.
      Makes all non-stateful holders of ui.Image (i.e. paintImage and RawImage) assert that whoever gave the image to them has not disposed it on them.
      a7954691
  22. 22 Sep, 2020 1 commit
  23. 11 Jun, 2020 1 commit
  24. 22 Apr, 2020 1 commit
  25. 27 Nov, 2019 1 commit
    • Ian Hickson's avatar
      License update (#45373) · 449f4a66
      Ian Hickson authored
      * Update project.pbxproj files to say Flutter rather than Chromium
      
      Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.
      
      * Update the copyright notice checker to require a standard notice on all files
      
      * Update copyrights on Dart files. (This was a mechanical commit.)
      
      * Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.
      
      Some were already marked "The Flutter Authors", not clear why. Their
      dates have been normalized. Some were missing the blank line after the
      license. Some were randomly different in trivial ways for no apparent
      reason (e.g. missing the trailing period).
      
      * Clean up the copyrights in non-Dart files. (Manual edits.)
      
      Also, make sure templates don't have copyrights.
      
      * Fix some more ORGANIZATIONNAMEs
      449f4a66
  26. 23 May, 2019 2 commits
  27. 21 May, 2019 2 commits
    • Todd Volkert's avatar
      Add support for ImageStreamListener.onChunk() (#33092) · 27d3c2fc
      Todd Volkert authored
      This is another step towards supporting image loading
      progress notification at the widgets layer.
      
      This adds an `ImageChunkEvent` class along with associated
      `ImageChunkListener` callback signature and an `onChunk`
      property to `ImageStreamListener`. The events serve to
      notify registered listeners when byte chunks are received
      while loading an image.
      
      https://github.com/flutter/flutter/issues/32374
      27d3c2fc
    • Todd Volkert's avatar
      Add some sanity to the ImageStream listener API (#32936) · 592f81e7
      Todd Volkert authored
      The current API was broken in that you registered multiple
      callbacks at once, but when you removed listeners, only the
      primary listener was used to determine what was removed.
      This led to unintuitive cases where the caller could get
      unexpected behavior.
      
      This updates the API to add and remove listeners using
      a newly introduced [ImageStreamListener] object, a value
      object that has references to the individual callbacks
      that may fire.
      
      flutter/flutter#24722
      flutter/flutter#32374
      flutter/flutter#32935
      592f81e7
  28. 02 Apr, 2019 1 commit
    • Amir Hardon's avatar
      Make sure _handleAppFrame is only registered once per frame (#30346) · b6afc16a
      Amir Hardon authored
      There were 2 possible scenarios in which _handleAppFrame is added more than once as a frame callback. When this happens it is possible that the second invocation will try to access _nextFrame.image when _nextFrame is null and crash. The 2 scenarios are:
      
      Scenario 1
      
      A GIF frame is decoded and a Flutter frame is executed before it's time to show the next GIF frame.
      The timer that's waiting for enough time to elapse is invoked, and schedules a callback for the next Flutter frame(here).
      Before the next Flutter frame is executed, MultiFrameImageStreamCompleter#removeListener is called followed by ``MultiFrameImageStreamCompleter#addListenerthat is invoking_decodeNextFrameAndSchedule` which is adding `_handleAppFrame` again as a next frame callback.
      Scenario 2
      removeListener and addListener are called multiple times in succession, every call to addListener can result in another registration of _handleAppFrame to the next Flutter frame callbacks list.
      
      This patch fixes the issue by guarding against a second registration of _handleAppFrame.
      b6afc16a
  29. 09 Mar, 2019 1 commit
  30. 07 Mar, 2019 1 commit
  31. 06 Mar, 2019 1 commit
  32. 21 Feb, 2019 1 commit
  33. 29 Jan, 2019 2 commits