From 36f9d496976b4fd16bb337394a23d6806f9c557c Mon Sep 17 00:00:00 2001 From: Dan Wallis Date: Sat, 11 May 2024 10:47:28 +0100 Subject: [PATCH] Create setting to control build queue auto-resize --- src/evolve.less | 1 + src/index.js | 42 ++++++++++++++++++++++++++++++------------ src/main.js | 28 ++++++++++++++++------------ src/vars.js | 4 ++++ strings/strings.json | 5 +++++ 5 files changed, 56 insertions(+), 24 deletions(-) diff --git a/src/evolve.less b/src/evolve.less index f0bd68b18..68048132c 100644 --- a/src/evolve.less +++ b/src/evolve.less @@ -2407,6 +2407,7 @@ a { margin-bottom: 0 !important; } + .queue, .theme, .localization { margin-bottom: 1rem; diff --git a/src/index.js b/src/index.js index fbddeba24..1ea683603 100644 --- a/src/index.js +++ b/src/index.js @@ -147,6 +147,9 @@ export function mainVue(){ global.settings.queuestyle = style; updateQueueStyle(); }, + setQueueResize(mode) { + global.settings.q_resize = mode; + }, icon(icon){ global.settings.icon = icon; save.setItem('evolved',LZString.compressToUTF16(JSON.stringify(global))); @@ -1285,18 +1288,6 @@ export function index(){ ${drawIcon('star',16,irank)} {{ 'star' | label }} ${iconlist} - - {{ 'queuestyle' | label }} - - - {{ 'standardqueuestyle' | label }} - {{ 'listqueuestyle' | label }} - {{ 'bulletlistqueuestyle' | label }} - {{ 'numberedlistqueuestyle' | label }} -
{{ 'locale' | label }} @@ -1318,6 +1309,20 @@ export function index(){ {{ 'large_log' | label }} {{ 'large_all' | label }} +
+ +
+ {{ 'queuestyle' | label }} + + + {{ 'standardqueuestyle' | label }} + {{ 'listqueuestyle' | label }} + {{ 'bulletlistqueuestyle' | label }} + {{ 'numberedlistqueuestyle' | label }} + {{ 'q_merge' | label }} @@ -1329,7 +1334,20 @@ export function index(){ {{ 'merge_nearby' | label }} {{ 'merge_all' | label }} + + {{ 'q_resize' | label }} + + + {{ 'q_resize_auto' | label }} + {{ 'q_resize_grow' | label }} + {{ 'q_resize_shrink' | label }} + {{ 'q_resize_manual' | label }} +
+ {{ 'pause' | label }} {{ 'm_keys' | label }} {{ 'c_cat' | label }} diff --git a/src/main.js b/src/main.js index f46f69277..acb2d76c6 100644 --- a/src/main.js +++ b/src/main.js @@ -10203,19 +10203,23 @@ function midLoop(){ let min = rem * 5; let max = totHeight - (5 * rem); - const buildQueueElement = $(`#buildQueue`).get(0); - if (buildQueueElement.scrollHeight > buildQueueElement.clientHeight) { - // The build queue has a scroll-bar. - buildHeight++; - } else { - let minHeight = rem; - buildQueueElement.childNodes.forEach(function (e) { - minHeight += e.clientHeight || 0; - }); + if (global.settings.q_resize !== 'manual') { + const buildQueueElement = $(`#buildQueue`).get(0); + if (['auto', 'grow'].includes(global.settings.q_resize) && + buildQueueElement.scrollHeight > buildQueueElement.clientHeight + ) { + // The build queue has a scroll-bar. + buildHeight++; + } else if (['auto', 'shrink'].includes(global.settings.q_resize)) { + let minHeight = rem; + buildQueueElement.childNodes.forEach(function (e) { + minHeight += e.clientHeight || 0; + }); - if (buildQueueElement.clientHeight > minHeight) { - // The build queue is larger than it needs to be. - buildHeight = Math.min(buildHeight, minHeight); + if (buildQueueElement.clientHeight > minHeight) { + // The build queue is larger than it needs to be. + buildHeight = Math.min(buildHeight, minHeight); + } } } diff --git a/src/vars.js b/src/vars.js index c204e7f64..5c101906f 100644 --- a/src/vars.js +++ b/src/vars.js @@ -1685,6 +1685,10 @@ if (!global.settings['queuestyle']){ global.settings['queuestyle'] = 'standardqueuestyle'; } +if (!global.settings['q_resize']){ + global.settings.q_resize = 'auto'; +} + $('html').addClass(global.settings.theme); $('html').addClass(global.settings.queuestyle); diff --git a/strings/strings.json b/strings/strings.json index b93e53f55..7304c7731 100644 --- a/strings/strings.json +++ b/strings/strings.json @@ -100,6 +100,11 @@ "listqueuestyle": "List queue", "bulletlistqueuestyle": "Bullet list queue", "numberedlistqueuestyle": "Numbered list queue", + "q_resize": "Queue size", + "q_resize_auto": "Grow and shrink", + "q_resize_grow": "Grow", + "q_resize_shrink": "Shrink", + "q_resize_manual": "Manual", "add": "Add", "remove": "Remove", "active": "Active",