fix: for initialImageIndex mismatch issue for loading SR after disabling prompts (#4732)

Co-authored-by: ashikcn <ashik@L1140.trenser.com>
This commit is contained in:
ashik-trenser 2025-01-28 19:23:42 +05:30 committed by GitHub
parent 078a72996f
commit 8e3e2085d4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 19 additions and 6 deletions

View File

@ -124,7 +124,11 @@ function commandsModule({
type,
});
},
updateStoredPositionPresentation: ({ viewportId, displaySetInstanceUID }) => {
updateStoredPositionPresentation: ({
viewportId,
displaySetInstanceUID,
referencedImageId,
}) => {
const presentations = cornerstoneViewportService.getPresentations(viewportId);
const { positionPresentationStore, setPositionPresentation, getPositionPresentationId } =
usePositionPresentationStore.getState();
@ -136,10 +140,18 @@ function commandsModule({
)?.[0];
if (previousReferencedDisplaySetStoreKey) {
setPositionPresentation(
previousReferencedDisplaySetStoreKey,
presentations.positionPresentation
);
if (referencedImageId) {
setPositionPresentation(previousReferencedDisplaySetStoreKey, {
viewReference: {
referencedImageId,
},
});
} else {
setPositionPresentation(
previousReferencedDisplaySetStoreKey,
presentations.positionPresentation
);
}
return;
}

View File

@ -51,7 +51,7 @@ export function WindowLevelActionMenu({
const { colorbarService, cornerstoneViewportService } = servicesManager.services;
const viewportInfo = cornerstoneViewportService.getViewportInfo(viewportId);
const viewport = cornerstoneViewportService.getCornerstoneViewport(viewportId);
const backgroundColor = viewportInfo.getViewportOptions().background;
const backgroundColor = viewportInfo?.getViewportOptions().background;
const isLight = backgroundColor ? utilities.isEqual(backgroundColor, [1, 1, 1]) : false;
const { t } = useTranslation('WindowLevelActionMenu');

View File

@ -97,6 +97,7 @@ function TrackedMeasurementsContextProvider(
commandsManager.runCommand('updateStoredPositionPresentation', {
viewportId: activeViewportId,
displaySetInstanceUID: referencedDisplaySetUID,
referencedImageId: trackedMeasurement.referencedImageId,
});
viewportGridService.setDisplaySetsForViewport({