feat: add pagination on the Receive page (optional)#4501
Open
sneurlax wants to merge 1 commit into
Open
Conversation
Previously, opening a wallet with many subaddresses would cause severe lag and impact usability. This change introduces pagination to the subaddresses in the Receive tab.
To reproduce the issue, create a wallet with many addresses in monero-wallet-cli. For example, using:
```
address mnew 1000
```
30+ times in monero-wallet-cli will create a wallet with 30,001 addresses (like a very active BTCPay wallet). Without this feature, the app will lag on a performant PC. With this feature, it shows a "Loading addresses..." message while loading the first "page" of addresses. As a Quality of Life (QoL) feature, a "Scroll to bottom" button allows loading all remaining addresses at once.
- Add pagination support to the Subaddress backend.
- Add "Enable subaddress pagination" setting to Interface section.
- When pagination is disabled (default): behaves exactly like original GUI.
- When pagination is enabled:
- Load first 100 subaddresses initially.
- "Scroll to bottom" button loads all remaining addresses.
- Loading footer shows progress during fetch operations.
Collaborator
Author
Contributor
|
Reg "dynamic" - i am no QT dev, but i also attempted through blood sweat and tears to add some kind of dynamic resizing and failed. #3868 is related as this would also benefit from that. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.


Closes #4500.
Without this feature, opening a wallet with many subaddresses causes severe lag and impacts usability. This change introduces optional pagination to the subaddresses in the Receive tab.
To reproduce the issue, create a wallet with many addresses in monero-wallet-cli. For example, using:
30+ times in monero-wallet-cli will create a wallet with 30,001 addresses (like a very active BTCPay wallet). Before this feature and without it enabled (disabled by default), the app will lag on a performant PC when navigating to the Receive page. With this feature, it shows a "Loading addresses..." message while loading the first "page" of addresses. As a Quality of Life (QoL) feature, a "Scroll to bottom" button allows loading all remaining addresses at once.