1. 19 Sep, 2023 1 commit
    • David Iglesias's avatar
      [web] Encode AssetManifest.bin as JSON and use that on the web. (#131382) · c7c9d8ee
      David Iglesias authored
      This PR modifies the web build slightly to create an `AssetManifest.json`, that is a JSON(base64)-encoded version of the `AssetManifest.bin` file.
      
      _(This should enable all browsers to download the file without any interference, and all servers to serve it with the correct headers.)_
      
      It also modifies Flutter's `AssetManifest` class so it loads and uses said file `if (kIsWeb)`.
      
      ### Issues
      
      * Fixes https://github.com/flutter/flutter/issues/124883
      
      ### Tests
      
      * Unit tests added.
      * Some tests that run on the Web needed to be informed of the new filename, but their behavior didn't have to change (binary contents are the same across all platforms).
      * I've deployed a test app, so users affected by the BIN issue may take a look at the PR in action:
        * https://dit-tests.web.app
      c7c9d8ee
  2. 09 Jun, 2023 1 commit
  3. 07 Jun, 2023 1 commit
    • Andrew Kolos's avatar
      Do not try to load main/default asset image if only higher-res variants exist (#128143) · 759ebef6
      Andrew Kolos authored
      Fixes https://github.com/flutter/flutter/issues/127090.
      
      https://github.com/flutter/flutter/pull/122505 did a few things to speed up the first asset load that a flutter app performs. One of those things was to not include the main asset in its own list of variants in the asset manifest. The idea was that we know that the main asset always exists, so including it in its list of variants is a waste of storage space and loading time (even if the cost was tiny).
      
      However, the assumption that the main asset always exists is wrong. From [Declaring resolution-aware image assets](https://docs.flutter.dev/ui/assets-and-images#resolution-aware), which predates https://github.com/flutter/flutter/pull/122505:
      
      > Each entry in the asset section of the pubspec.yaml should correspond to a real file, with the exception of the main asset entry. If the main asset entry doesn’t correspond to a real file, then the asset with the lowest resolution is used as the fallback for devices with device pixel ratios below that resolution. The entry should still be included in the pubspec.yaml manifest, however.
      
      For example, it's valid to declare `assets/image.png` as an asset even if only `assets/3x/image.png` exists on disk.
      
      This fix restores older behavior of including a main asset as a variant of itself in the manifest if it exists.
      
      This fix also includes a non-user-visible behavior change:
      * `"dpr"` is no longer a required field in the asset manifest's underlying structure. For the main asset entry, we do not include `"dpr"`. It makes less sense for the tool to decide what the default target dpr for an image should be. This should be left to the framework.
      759ebef6
  4. 15 May, 2023 1 commit
    • Andrew Kolos's avatar
      rename AssetManifest.bin (#126077) · d3e0e03e
      Andrew Kolos authored
      Fixes #124883. Will require a g3fix.
      
      Renames `AssetManifest.bin` to `AssetManifest.smcbin` (madeup extension for "Standard Message Codec binary").
      d3e0e03e
  5. 15 Mar, 2023 1 commit
  6. 11 Mar, 2023 1 commit
  7. 06 Mar, 2023 1 commit
  8. 23 Feb, 2023 1 commit
  9. 21 Feb, 2023 1 commit
    • Andrew Kolos's avatar
      Speed up first asset load by using the binary-formatted asset manifest for... · e3db0488
      Andrew Kolos authored
      Speed up first asset load by using the binary-formatted asset manifest for image resolution (#118782)
      
      * add asset manifest bin loading and asset manifest api
      
      * use new api for image resolution
      
      * remove upfront smc data casting
      
      * fix typecasting issue
      
      * remove unused import
      
      * fix tests
      
      * lints
      
      * lints
      
      * fix import
      
      * fix outdated type name
      
      * restore AssetManifest docstrings
      
      * update test
      
      * update other test
      
      * make error message for invalid keys more useful
      e3db0488
  10. 07 Dec, 2022 1 commit
  11. 05 Dec, 2022 1 commit
  12. 01 Oct, 2022 1 commit
  13. 08 Jun, 2022 1 commit
  14. 27 May, 2022 1 commit
  15. 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
  16. 27 Apr, 2022 1 commit
  17. 23 Apr, 2021 1 commit
  18. 27 Jan, 2021 1 commit
  19. 06 Oct, 2020 1 commit
  20. 16 Sep, 2020 1 commit
  21. 11 Jun, 2020 1 commit
  22. 06 May, 2020 1 commit
  23. 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
  24. 30 Sep, 2019 1 commit
  25. 24 Sep, 2019 1 commit
  26. 25 Jun, 2019 1 commit
  27. 15 Jun, 2019 1 commit
  28. 10 Jun, 2019 1 commit
  29. 07 Mar, 2019 1 commit
  30. 21 Feb, 2019 1 commit
  31. 04 Oct, 2018 1 commit
  32. 12 Sep, 2018 1 commit
  33. 02 Aug, 2018 1 commit
  34. 27 Jul, 2018 1 commit
  35. 23 Jul, 2018 1 commit
  36. 16 Jul, 2018 2 commits
  37. 26 May, 2018 1 commit