weblate icon indicating copy to clipboard operation
weblate copied to clipboard

Add pagination everywhere

Open WofWca opened this issue 4 years ago • 5 comments

Describe the problem

Many pages include lists that may get quite long. For example /user/<name>. If a user has a lot of contributions, the page may be so big that it takes 2 minutes to load it. Another example is the /projects/ page.

Describe the solution you'd like

Use pagination, as it is done on /screenshots, /user/, /changes.

Describe alternatives you've considered

In case of /user/<name>, make the contributions list a separate page.

Screenshots

No response

Additional context

Apparently mostly the views that are currently paginated are subclasses of ListView, but for /user/<name> there are multiple models. Can we do something like this for each tab: include {% include "paginator.html" with page_obj=user_translations %} and pass user_translations through get_paginator, like it's done in search.py and dashboard.py?: https://github.com/WeblateOrg/weblate/blob/f0b4c8146b7c0663003ab04233c09f3cb8457119/weblate/trans/views/search.py#L216-L224 https://github.com/WeblateOrg/weblate/blob/a7c7f4dda757fab1f89f952e4daeeef9d359c052/weblate/trans/views/dashboard.py#L274-L284

If so, I'd like to try it.

WofWca avatar May 01 '22 12:05 WofWca

I've added it to /projects/ in fc45f7f4e3f5eedb670918f3bfde7bfc53e82bd9.

For user view it is a bit more tricky because more tabs could get long and then paginating becomes tricky (you would have to pass different parameter to paginate each tab).

nijel avatar May 02 '22 08:05 nijel

This issue has been put aside. It is currently unclear if it will ever be implemented as it seems to cover too narrow of a use case or doesn't seem to fit into Weblate.

Please try to clarify the use case or consider proposing something more generic to make it useful to more users.

github-actions[bot] avatar May 02 '22 08:05 github-actions[bot]

The loading time for /user/* is bad, but elsewhere the non-pagination grants extra productivity. If I can turn it off for just me, all is well.

comradekingu avatar May 10 '22 12:05 comradekingu

Another current offender of the absence of pages is /component-list/. Also (not related to this issue though) the default order of components in component list seems to be either random, or in the order of addition, didn't quite test it. In any case default A-Z order would be nice there. Or maybe even customizable default order.

endervad avatar May 31 '22 13:05 endervad

@endervad Please file a separate issue for that.

nijel avatar Jun 06 '22 13:06 nijel