-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Minimal selects much slower because of HTML styling #3297
Comments
This is potentially a bad regression for users that rely on minimal selects from external files so it could be a candidate for a point release. This was never very fast to begin with because spinners build every option view at once (as opposed to recycling them as with the In the longer term, I think that it would be ideal for minimal selects to use |
it depends, I used Android 5 and a form with 100 choices and it was like 0.5s -> 2.2s
It might be difficult to do that with both the spinner (select_one) and alert dialog with multiple choices (select-multiple). I think our goal should be to create our own dialog which would use RecyclerView and support both select_one and select_multiple. Then we could even use MediaLayouts in such a dialog supporting images/audios/video. It would be a bigger change so not for now and that's why I can see two options: to leave it as is or to revert. I'm not sure what's better... |
Fixed in #3964 |
Nice. |
Software and hardware versions
Collect v1.23.0
Problem description
Identified by @JohnTheBeloved.
#3204 renders styled options for minimal selects. The additional step of styling each option slows things down significantly because it's done for every option upfront rather than with the RecyclerView-based select implementations when it's done as an option is displayed.
Steps to reproduce the problem
Load a form with hundreds of choices in a select one/multiple question with the minimal appearance.
Expected behavior
Performance is the same or better as in v1.22.0 and prior.
The text was updated successfully, but these errors were encountered: