diff options
Diffstat (limited to 'core/js/js.js')
-rw-r--r-- | core/js/js.js | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/core/js/js.js b/core/js/js.js index ee4b03dd99d..2aa7bf1bc55 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -1512,12 +1512,30 @@ function initCore() { var resizeMenu = function() { var appList = $('#appmenu li'); - var availableWidth = $('#header-left').width() - $('#nextcloud').width() - 44; - var appCount = Math.floor((availableWidth)/44); + var headerWidth = $('#header-left').width() - $('#nextcloud').width() + var usePercentualAppMenuLimit = 0.33; + var minAppsDesktop = 8; + var availableWidth = headerWidth - $(appList).width(); + var isMobile = $(window).width() < 768; + if (!isMobile) { + availableWidth = headerWidth * usePercentualAppMenuLimit; + } + var appCount = Math.floor((availableWidth / $(appList).width())); + if (isMobile && appCount > minAppsDesktop) { + appCount = minAppsDesktop; + } + if (!isMobile && appCount < minAppsDesktop) { + appCount = minAppsDesktop; + } + // show at least 2 apps in the popover if(appList.length-1-appCount >= 1) { appCount--; } + // show at least one icon + if(appCount < 1) { + appCount = 1; + } $('#more-apps a').removeClass('active'); var lastShownApp; |