Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F14864579
D14456.id42106.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
1 KB
Subscribers
None
D14456.id42106.diff
View Options
diff --git a/web/explorer/explorer-server/code/common.js b/web/explorer/explorer-server/code/common.js
--- a/web/explorer/explorer-server/code/common.js
+++ b/web/explorer/explorer-server/code/common.js
@@ -228,31 +228,21 @@
'<a class="item" href="HREF" onclick="goToPage(event, NUMBER)">NUMBER</a>';
const determinePaginationSlots = lastPage => {
- let availableWidth = $('.ui.container').width();
+ if (lastPage <= 0) {
+ return Infinity;
+ }
// pagination slot
const padding = 2 * 16;
const letter = 8;
- const tier1 = padding + 1 * letter;
- const tier2 = padding + 2 * letter;
- const tier3 = padding + 3 * letter;
- const tier4 = padding + 4 * letter;
-
- let predictedTier;
- if (lastPage > 0 && lastPage < 10) {
- predictedTier = tier1;
- } else if (lastPage > 9 && lastPage < 100) {
- predictedTier = tier2;
- } else if (lastPage > 99 && lastPage < 1000) {
- predictedTier = tier3;
- } else if (lastPage > 999 && lastPage <= 10000) {
- predictedTier = tier4;
- }
+ const paginationWidth = padding + Math.log10(lastPage) * letter;
+
+ let availableWidth = $('.ui.container').width();
- availableWidth -= tier1;
- availableWidth -= predictedTier;
+ // Leave a 1-slot extra margin for a nicer rendering on mobile
+ availableWidth -= paginationWidth;
- return Math.round(availableWidth / predictedTier);
+ return Math.round(availableWidth / paginationWidth);
};
pagination.generatePaginationRequestRange = () => {
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Tue, May 20, 20:38 (14 h, 35 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5865902
Default Alt Text
D14456.id42106.diff (1 KB)
Attached To
D14456: [explorer] Fix pagination for larger page counts
Event Timeline
Log In to Comment