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

Render performance #1905

Open
wants to merge 12 commits into
base: master
Choose a base branch
from
Open

Render performance #1905

wants to merge 12 commits into from

Conversation

SystemKeeper
Copy link
Collaborator

I noticed a few issues when scrolling and found some places where we can improve the time needed for each cell. Especially the invisible cells still needed quite some computing, even though they are not displayed:

CPU cycles before:
Bildschirmfoto 2024-11-30 um 17 15 55

After:
Bildschirmfoto 2024-11-30 um 17 18 56

So this PR:

  • Does not include invisible messages in the table view
  • Caches parsed markdown
  • Caches auth parameters (before we queried the keychain for each avatar/message)
  • Simplifies cell prepareForReuse
  • Pass down TalkAccount (so we don't query it for each cell multiple times). Since we indirectly require a TalkAccount for the chat view controllers, we can also make it mandatory and pass it down.

@SystemKeeper
Copy link
Collaborator Author

I saw (very very few) animation issues with this PR, nothing I would consider serious, but still too much to not see a coincidence with this PR. 5c17fd3 reverts part of the reuse simplification, which I suspect could cause that.

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.

1 participant