Skip to content

Conversation

@cameronwhite
Copy link
Member

This improves performance significantly with larger images, especially for tools like Lasso Select which marked the entire canvas as being modified, and also with the animated selection outline which caused many continuous updates

Instead of having the select tools use the canvas invalidation events, the canvas widget can just listen for selection change events from the document and update accordingly

Bug: #1909

This improves performance significantly with larger images, especially for tools like Lasso Select which marked the entire canvas as being modified, and also with the animated selection outline which caused many continuous updates

Instead of having the select tools use the canvas invalidation events, the canvas widget can just listen for selection change events from the document and update accordingly

Bug: #1909
@cameronwhite cameronwhite linked an issue Dec 27, 2025 that may be closed by this pull request
@cameronwhite cameronwhite merged commit 89a58be into master Dec 27, 2025
13 checks passed
@cameronwhite cameronwhite deleted the fix/canvas-selection-performance branch December 27, 2025 20:04
cameronwhite added a commit that referenced this pull request Jan 10, 2026
…ges (#1912)

* Avoid rebuilding the flattened canvas texture when the selection changes

This improves performance significantly with larger images, especially for tools like Lasso Select which marked the entire canvas as being modified, and also with the animated selection outline which caused many continuous updates

Instead of having the select tools use the canvas invalidation events, the canvas widget can just listen for selection change events from the document and update accordingly

* Cache the selection path for some minor performance improvement

Bug: #1909
(cherry picked from commit 89a58be)
cameronwhite added a commit that referenced this pull request Jan 10, 2026
…ges (#1912)

* Avoid rebuilding the flattened canvas texture when the selection changes

This improves performance significantly with larger images, especially for tools like Lasso Select which marked the entire canvas as being modified, and also with the animated selection outline which caused many continuous updates

Instead of having the select tools use the canvas invalidation events, the canvas widget can just listen for selection change events from the document and update accordingly

* Cache the selection path for some minor performance improvement

Bug: #1909
(cherry picked from commit 89a58be)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Pinta 3.1 select tool very slow and UI freezes

2 participants