Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Image decoding in corelib #1408

Merged
merged 15 commits into from Jul 20, 2022
Merged

Image decoding in corelib #1408

merged 15 commits into from Jul 20, 2022

Commits on Jul 20, 2022

  1. WIP: Make image decoding a feature of the core library

    This includes the cache of decoded images, the HTMLImage element support
    and the SVG rendering adapter.
    
    The objective is that Image holds an ImageInner, which is not a path
    anymore that the backend has to process, but instead always either
    decoded image data, a pointer to a static texture or an SVG tree that
    can be rendered to the desired size.
    tronical committed Jul 20, 2022
    Copy the full SHA
    0f9749e View commit details
    Browse the repository at this point in the history
  2. Copy the full SHA
    6d1bb88 View commit details
    Browse the repository at this point in the history
  3. Copy the full SHA
    18dbdd3 View commit details
    Browse the repository at this point in the history
  4. Fix doc warnings

    tronical committed Jul 20, 2022
    Copy the full SHA
    7c72c56 View commit details
    Browse the repository at this point in the history
  5. Copy the full SHA
    f1396f9 View commit details
    Browse the repository at this point in the history
  6. Cleanup an unwanted impl From on Image

    ogoffart authored and tronical committed Jul 20, 2022
    Copy the full SHA
    38884ae View commit details
    Browse the repository at this point in the history
  7. HTML image in core

    ogoffart authored and tronical committed Jul 20, 2022
    Copy the full SHA
    46787c6 View commit details
    Browse the repository at this point in the history
  8. Simplify image cache API

    Make the image cache return Image, instead of ImageInner
    tronical committed Jul 20, 2022
    Copy the full SHA
    5b40df1 View commit details
    Browse the repository at this point in the history
  9. Fix duplicated images when building with embedded images

    For embedded images the path is empty but we unconditionally used it to create a TextureCacheKey,
    which clashes.
    
    Instead, preserve and store the ImageCacheKey in the ImageInner variants.
    tronical committed Jul 20, 2022
    Copy the full SHA
    d5866da View commit details
    Browse the repository at this point in the history
  10. Move ImageCacheKey into the image module

    That way it'll be eaiser to deal with the code with image-decoders disabled
    tronical committed Jul 20, 2022
    Copy the full SHA
    3d3925c View commit details
    Browse the repository at this point in the history
  11. Copy the full SHA
    1f86b39 View commit details
    Browse the repository at this point in the history
  12. Remove unneeded dependencies from the gl backend

    Since image rendering is now done in core
    ogoffart authored and tronical committed Jul 20, 2022
    Copy the full SHA
    45d3126 View commit details
    Browse the repository at this point in the history
  13. Add bounds to the decoded image cache

    This defaults to 5 MB right now and SVGs aren't counted properly.
    tronical committed Jul 20, 2022
    Copy the full SHA
    450dfaa View commit details
    Browse the repository at this point in the history
  14. Copy the full SHA
    68543e3 View commit details
    Browse the repository at this point in the history
  15. Simplify internal svg rendering API a little bit

    Since there is only one call site now, we can also return the correct
    type without inconveniencing any other code.
    tronical committed Jul 20, 2022
    Copy the full SHA
    6a8e117 View commit details
    Browse the repository at this point in the history