From a24a3de5e52cb3ff2846cc40525cb353e83b9842 Mon Sep 17 00:00:00 2001 From: rocketraccoon Date: Fri, 10 Jul 2026 02:00:53 +0700 Subject: [PATCH 1/3] fix: accept visible images --- lib/static/modules/selectors/tree.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/static/modules/selectors/tree.js b/lib/static/modules/selectors/tree.js index 3b53d4b26..3bddc2f95 100644 --- a/lib/static/modules/selectors/tree.js +++ b/lib/static/modules/selectors/tree.js @@ -192,10 +192,17 @@ export const getSelectedBrowserIds = createSelector( } ); -const getAcceptableOrRevertableImages = (browserIds, browsersById, resultsById, imagesById, isStaticImageAccepterEnabled, gui) => { +const getAcceptableOrRevertableImages = ( + browserIds, browsersById, resultsById, imagesById, isStaticImageAccepterEnabled, gui, expandedTreeNodesById +) => { const visibleResultIds = browserIds.map(browserId => last(browsersById[browserId].resultIds)); - return visibleResultIds.flatMap(resultId => { + return visibleResultIds.flatMap((resultId) => { + const suitePath = resultsById[resultId].suitePath.join('/'); + if (expandedTreeNodesById && !expandedTreeNodesById[suitePath]) { + return []; + } + return resultsById[resultId].imageIds .map(imageId => imagesById[imageId]) .filter(image => isAcceptable(image) || isScreenRevertable({ @@ -209,6 +216,7 @@ const getAcceptableOrRevertableImages = (browserIds, browsersById, resultsById, export const getVisibleImages = createSelector( getVisibleBrowserIds, getBrowsers, getResults, getImages, getIsStaticImageAccepterEnabled, getIsGui, + (state) => state.ui.suitesPage.expandedTreeNodesById, getAcceptableOrRevertableImages ); From 785160d1b5f5bd1d2e15eaa75f156bcc51b1ec0e Mon Sep 17 00:00:00 2001 From: rocketraccoon Date: Tue, 14 Jul 2026 12:34:08 +0700 Subject: [PATCH 2/3] fix: state function --- lib/static/modules/selectors/tree.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/static/modules/selectors/tree.js b/lib/static/modules/selectors/tree.js index 3bddc2f95..7985a1931 100644 --- a/lib/static/modules/selectors/tree.js +++ b/lib/static/modules/selectors/tree.js @@ -192,6 +192,8 @@ export const getSelectedBrowserIds = createSelector( } ); +const getExpandedTreeNodesById = (state) => (state.ui.suitesPage.expandedTreeNodesById); + const getAcceptableOrRevertableImages = ( browserIds, browsersById, resultsById, imagesById, isStaticImageAccepterEnabled, gui, expandedTreeNodesById ) => { @@ -216,7 +218,7 @@ const getAcceptableOrRevertableImages = ( export const getVisibleImages = createSelector( getVisibleBrowserIds, getBrowsers, getResults, getImages, getIsStaticImageAccepterEnabled, getIsGui, - (state) => state.ui.suitesPage.expandedTreeNodesById, + getExpandedTreeNodesById, getAcceptableOrRevertableImages ); From 3ff0b989dec5792c56c207563aa0c0d89af1f7a8 Mon Sep 17 00:00:00 2001 From: rocketraccoon Date: Tue, 14 Jul 2026 22:03:24 +0700 Subject: [PATCH 3/3] fix: helper --- lib/static/modules/selectors/tree.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/static/modules/selectors/tree.js b/lib/static/modules/selectors/tree.js index 7985a1931..625952f89 100644 --- a/lib/static/modules/selectors/tree.js +++ b/lib/static/modules/selectors/tree.js @@ -193,6 +193,7 @@ export const getSelectedBrowserIds = createSelector( ); const getExpandedTreeNodesById = (state) => (state.ui.suitesPage.expandedTreeNodesById); +const getTreeEntityId = (result) => result.suitePath.join('/'); const getAcceptableOrRevertableImages = ( browserIds, browsersById, resultsById, imagesById, isStaticImageAccepterEnabled, gui, expandedTreeNodesById @@ -200,7 +201,7 @@ const getAcceptableOrRevertableImages = ( const visibleResultIds = browserIds.map(browserId => last(browsersById[browserId].resultIds)); return visibleResultIds.flatMap((resultId) => { - const suitePath = resultsById[resultId].suitePath.join('/'); + const suitePath = getTreeEntityId(resultsById[resultId]); if (expandedTreeNodesById && !expandedTreeNodesById[suitePath]) { return []; }