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

QgsBrowserGuiModel::flags(): cache value for faster browser redrawn (refs #53265) #53267

Merged
merged 2 commits into from
May 30, 2023

Conversation

rouault
Copy link
Contributor

@rouault rouault commented May 29, 2023

@nyalldawson I see you've assigned yourself just when I was debugging this myself too. (my fault, should have assigned myself)

I couldn't reproduce the big lag @jfbourdon mentions (the folder with the 130 .gdb opens in < 2 seconds for me), but when panning it, I could see that each .gdb item displayed was opened to call its acceptDrop() method, which caused a small but perceptible lag.

Not totally sure about my fix. I considered adding a setter/getter in QgsDataItem itself, but that didn't feel much elegant to put there the result of caching.

@github-actions github-actions bot added this to the 3.32.0 milestone May 29, 2023
@nyalldawson
Copy link
Collaborator

Oops -- overlapping fix is in #53268

I think both are compatible though. The only issue with handling caching in the model is that we can't respond to external changes, eg some new QgsDataItemGuiProvider which a plugin installs which implements drop support for an item.

@rouault
Copy link
Contributor Author

rouault commented May 30, 2023

The only issue with handling caching in the model is that we can't respond to external changes, eg some new QgsDataItemGuiProvider which a plugin installs which implements drop support for an item.

addressed per commit ce83b23

@nyalldawson nyalldawson merged commit 9023a67 into qgis:master May 30, 2023
30 checks passed
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.

None yet

2 participants