Cache the last created temporary handles at a requested size #2601
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When rendering images at a specific targetSize, the most recently created temporary handle is cached. If a handle of a different size is needed, the previous handle is disposed of and replaced with the new one. The last cached handle is also disposed of when the image itself is destroyed.
This change does not affect the visual appearance and is purely an optimization. It is especially useful when a user scrolls through a diagram, as the same-size image may be redrawn multiple times. Without handle caching, new image handles would need to be created repeatedly whenever the image is redrawn. More details can be found at vi-eclipse/Eclipse-Platform#326 (comment)