From f695f37e75c1ab8f3116f5fee0e7d3b02b833f7d Mon Sep 17 00:00:00 2001 From: crashdance Date: Sun, 18 Jan 2026 23:03:39 +0100 Subject: [PATCH 1/4] fix: correct height layout of virtual table in object tree sidebar --- .../public/layout/view/panels/objectTreeSidebar.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/QualityControl/public/layout/view/panels/objectTreeSidebar.js b/QualityControl/public/layout/view/panels/objectTreeSidebar.js index ba9b06236..3145bafe4 100644 --- a/QualityControl/public/layout/view/panels/objectTreeSidebar.js +++ b/QualityControl/public/layout/view/panels/objectTreeSidebar.js @@ -38,12 +38,11 @@ export default (model) => } return [ searchForm(model), - h( - '.scroll-y', + h('.flex-column.flex-grow', {}, [ searchInput.trim() !== '' - ? virtualTable(model, 'side', objectsToDisplay) - : treeTable(model), - ), + ? virtualTable(model, 'side', objectsToDisplay, { maxHeightRows: 500 }) + : h('.scroll-y', treeTable(model)), + ]), objectPreview(model), ]; }, From 70148d1078d3fd0aa9412e6dcdb07d425d6e05f3 Mon Sep 17 00:00:00 2001 From: crashdance Date: Sun, 18 Jan 2026 23:07:48 +0100 Subject: [PATCH 2/4] fix: update virtual table layout to use 'main' context in object tree sidebar --- QualityControl/public/layout/view/panels/objectTreeSidebar.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/QualityControl/public/layout/view/panels/objectTreeSidebar.js b/QualityControl/public/layout/view/panels/objectTreeSidebar.js index 3145bafe4..a52ad37d7 100644 --- a/QualityControl/public/layout/view/panels/objectTreeSidebar.js +++ b/QualityControl/public/layout/view/panels/objectTreeSidebar.js @@ -40,7 +40,7 @@ export default (model) => searchForm(model), h('.flex-column.flex-grow', {}, [ searchInput.trim() !== '' - ? virtualTable(model, 'side', objectsToDisplay, { maxHeightRows: 500 }) + ? virtualTable(model, 'main', objectsToDisplay) : h('.scroll-y', treeTable(model)), ]), objectPreview(model), From d4ea2a7e2435ab4b1a52b54a1b72a3326332b2a8 Mon Sep 17 00:00:00 2001 From: crashdance Date: Sun, 18 Jan 2026 23:08:20 +0100 Subject: [PATCH 3/4] fix: adjust virtual table context between 'main' and 'side' in object tree components --- QualityControl/public/layout/view/panels/objectTreeSidebar.js | 2 +- QualityControl/public/object/objectTreePage.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/QualityControl/public/layout/view/panels/objectTreeSidebar.js b/QualityControl/public/layout/view/panels/objectTreeSidebar.js index a52ad37d7..6ecbe619d 100644 --- a/QualityControl/public/layout/view/panels/objectTreeSidebar.js +++ b/QualityControl/public/layout/view/panels/objectTreeSidebar.js @@ -40,7 +40,7 @@ export default (model) => searchForm(model), h('.flex-column.flex-grow', {}, [ searchInput.trim() !== '' - ? virtualTable(model, 'main', objectsToDisplay) + ? virtualTable(model, 'side', objectsToDisplay) : h('.scroll-y', treeTable(model)), ]), objectPreview(model), diff --git a/QualityControl/public/object/objectTreePage.js b/QualityControl/public/object/objectTreePage.js index 7a9b19716..f8075cf97 100644 --- a/QualityControl/public/object/objectTreePage.js +++ b/QualityControl/public/object/objectTreePage.js @@ -62,7 +62,7 @@ export default (model) => { qcObject.name.toLowerCase().includes(searchInput.toLowerCase())); return h('.flex-column.flex-grow', [ actionablesHeaderGroup(model.object), - virtualTable(model, 'side', objectsToDisplay), + virtualTable(model, 'main', objectsToDisplay), ]); } return h('', [ From 0f97234996f68cbb97adc39cff85ebf98239222f Mon Sep 17 00:00:00 2001 From: crashdance Date: Sun, 18 Jan 2026 23:08:39 +0100 Subject: [PATCH 4/4] fix: remove table header from virtual table --- QualityControl/public/object/virtualTable.js | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/QualityControl/public/object/virtualTable.js b/QualityControl/public/object/virtualTable.js index 29ebda4d4..07438043b 100644 --- a/QualityControl/public/object/virtualTable.js +++ b/QualityControl/public/object/virtualTable.js @@ -29,7 +29,6 @@ export default function virtualTable(model, location = 'main', objects = []) { FONT = location === 'side' ? '.f6' : ''; return h('.flex-grow.flex-column', { }, [ - location !== 'side' && tableHeader(), h( '.scroll-y.animate-width', tableContainerHooks(model), @@ -94,16 +93,6 @@ const objectFullRow = (model, item, location) => ]), ]); -/** - * Create a table header separately so that it does not get included - * in the virtual list scrolling events - * @returns {vnode} - virtual node element - */ -const tableHeader = () => - h('table.table.table-sm.text-no-select', { - style: 'margin-bottom:0', - }, h('thead', [h('tr', [h('th', 'Name')])])); - /** * Set styles of the floating table and its position inside the big div .tableLogsContentPlaceholder * @param {Model} model - root model of the application