fix: for incorrect toolbar state between routes (#2082)
This commit is contained in:
parent
5689bf5369
commit
380acc1331
@ -101,7 +101,7 @@ const commandsModule = ({ servicesManager, commandsManager }) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Find total number of tool indexes
|
// Find total number of tool indexes
|
||||||
const { viewports } = ViewportGridService.getState();
|
const { viewports } = ViewportGridService.getState() || { viewports: [] };
|
||||||
for (let i = 0; i < viewports.length; i++) {
|
for (let i = 0; i < viewports.length; i++) {
|
||||||
const viewport = viewports[i];
|
const viewport = viewports[i];
|
||||||
const hasDisplaySet = viewport.displaySetInstanceUID !== undefined;
|
const hasDisplaySet = viewport.displaySetInstanceUID !== undefined;
|
||||||
|
|||||||
@ -23,6 +23,25 @@ export default function mode({ modeConfiguration }) {
|
|||||||
// We should not be.
|
// We should not be.
|
||||||
id: 'viewer',
|
id: 'viewer',
|
||||||
displayName: 'Basic Viewer',
|
displayName: 'Basic Viewer',
|
||||||
|
/**
|
||||||
|
* Lifecycle hooks
|
||||||
|
*/
|
||||||
|
onModeEnter: ({ servicesManager, extensionManager }) => {
|
||||||
|
// Note: If tool's aren't initialized, this doesn't have viewport/tools
|
||||||
|
// to "set active". This is mostly for the toolbar UI state?
|
||||||
|
// Could update tool manager to be always persistent, and to set state
|
||||||
|
// on load?
|
||||||
|
const { ToolBarService } = servicesManager.services;
|
||||||
|
const interaction = {
|
||||||
|
groupId: 'primary',
|
||||||
|
itemId: 'Wwwc',
|
||||||
|
interactionType: 'tool',
|
||||||
|
commandOptions: undefined,
|
||||||
|
};
|
||||||
|
|
||||||
|
ToolBarService.recordInteraction(interaction);
|
||||||
|
},
|
||||||
|
onModeExit: () => {},
|
||||||
validationTags: {
|
validationTags: {
|
||||||
study: [],
|
study: [],
|
||||||
series: [],
|
series: [],
|
||||||
|
|||||||
@ -96,19 +96,19 @@ export default function ModeRoute({
|
|||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
// Core
|
|
||||||
|
|
||||||
// TODO: For some reason this is running before the Providers
|
// TODO: For some reason this is running before the Providers
|
||||||
// are calling setServiceImplementation
|
// are calling setServiceImplementation
|
||||||
// TOOD -> iterate through services.
|
// TOOD -> iterate through services.
|
||||||
|
|
||||||
// Extension
|
// Extension
|
||||||
extensionManager.onModeEnter();
|
extensionManager.onModeEnter();
|
||||||
|
mode?.onModeEnter({ servicesManager, extensionManager });
|
||||||
// Mode
|
// Mode
|
||||||
route.init({ servicesManager, extensionManager });
|
route.init({ servicesManager, extensionManager });
|
||||||
|
|
||||||
return () => {
|
return () => {
|
||||||
extensionManager.onModeExit();
|
extensionManager.onModeExit();
|
||||||
|
mode?.onModeExit({ servicesManager, extensionManager });
|
||||||
};
|
};
|
||||||
}, [
|
}, [
|
||||||
mode,
|
mode,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user