diff --git a/plugins/data-management/src/PluginStoreWidget/components/__snapshots__/PluginStoreWidget.test.tsx.snap b/plugins/data-management/src/PluginStoreWidget/components/__snapshots__/PluginStoreWidget.test.tsx.snap index 650159a7de..6397b6cd7d 100644 --- a/plugins/data-management/src/PluginStoreWidget/components/__snapshots__/PluginStoreWidget.test.tsx.snap +++ b/plugins/data-management/src/PluginStoreWidget/components/__snapshots__/PluginStoreWidget.test.tsx.snap @@ -789,7 +789,7 @@ exports[`renders with the available plugins 1`] = ` class="MuiTypography-root MuiTypography-h5 css-1ldbtdh-MuiTypography-root" > ')) } }} - onMouseLeave={() => model.setMouseoverId(-1)} + onMouseLeave={() => model.setMouseoverId(undefined)} onClick={event => { const ref1 = model.clickMapCanvas const ref2 = model.cigarClickMapCanvas @@ -143,10 +148,13 @@ export default observer(function LinearSyntenyRendering({ const [r1, g1, b1] = ctx1.getImageData(x, y, 1, 1).data const unitMultiplier = Math.floor(MAX_COLOR_RANGE / model.numFeats) const id = getId(r1, g1, b1, unitMultiplier) - model.setClickId(id) const f = model.featPositions[id] + if (!f) { + return + } + model.setClickId(f.f.id()) const session = getSession(model) - if (f && isSessionModelWithWidgets(session)) { + if (isSessionModelWithWidgets(session)) { session.showWidget( session.addWidget('SyntenyFeatureWidget', 'syntenyFeature', { featureData: { @@ -184,7 +192,7 @@ export default observer(function LinearSyntenyRendering({ width={width} height={height} /> - {model.mouseoverId !== -1 && tooltip && currX && currY ? ( + {model.mouseoverId && tooltip && currX && currY ? ( ) : null} diff --git a/plugins/linear-comparative-view/src/LinearSyntenyDisplay/drawSynteny.ts b/plugins/linear-comparative-view/src/LinearSyntenyDisplay/drawSynteny.ts index 33e835b986..7d626c8209 100644 --- a/plugins/linear-comparative-view/src/LinearSyntenyDisplay/drawSynteny.ts +++ b/plugins/linear-comparative-view/src/LinearSyntenyDisplay/drawSynteny.ts @@ -234,12 +234,12 @@ export function drawMouseoverSynteny(model: LinearSyntenyDisplayModel) { ctx.resetTransform() ctx.scale(highResolutionScaling, highResolutionScaling) ctx.clearRect(0, 0, width, height) - if (mouseoverId !== -1 && model.features && model.features[mouseoverId]) { - const feature = model.featPositions[mouseoverId] + const feature1 = model.featMap[mouseoverId || ''] + if (feature1) { ctx.fillStyle = 'rgb(0,0,0,0.1)' drawMatchSimple({ cb: ctx => ctx.fill(), - feature, + feature: feature1, ctx, oobLimit, viewWidth: view.width, @@ -248,14 +248,13 @@ export function drawMouseoverSynteny(model: LinearSyntenyDisplayModel) { height, }) } - - if (clickId !== -1 && model.features && model.featPositions[clickId]) { - const feature = model.featPositions[clickId] + const feature2 = model.featMap[clickId || ''] + if (feature2) { ctx.strokeStyle = 'rgb(0, 0, 0, 0.9)' drawMatchSimple({ cb: ctx => ctx.stroke(), - feature, + feature: feature2, ctx, oobLimit, viewWidth: view.width, diff --git a/plugins/linear-comparative-view/src/LinearSyntenyDisplay/model.ts b/plugins/linear-comparative-view/src/LinearSyntenyDisplay/model.ts index f63cc4e67a..e69191bc01 100644 --- a/plugins/linear-comparative-view/src/LinearSyntenyDisplay/model.ts +++ b/plugins/linear-comparative-view/src/LinearSyntenyDisplay/model.ts @@ -72,10 +72,10 @@ function stateModelFactory(configSchema: AnyConfigurationSchemaType) { featPositions: [] as FeatPos[], // currently mouse'd over feature - mouseoverId: -1, + mouseoverId: undefined as string | undefined, // currently click'd over feature - clickId: -1, + clickId: undefined as string | undefined, // currently mouseover'd CIGAR subfeature cigarMouseoverId: -1, @@ -114,7 +114,7 @@ function stateModelFactory(configSchema: AnyConfigurationSchemaType) { /** * #action */ - setMouseoverId(arg: number) { + setMouseoverId(arg?: string) { self.mouseoverId = arg }, /** @@ -126,7 +126,7 @@ function stateModelFactory(configSchema: AnyConfigurationSchemaType) { /** * #action */ - setClickId(arg: number) { + setClickId(arg?: string) { self.clickId = arg }, })) diff --git a/plugins/menus/src/AboutWidget/components/__snapshots__/AboutWidget.test.tsx.snap b/plugins/menus/src/AboutWidget/components/__snapshots__/AboutWidget.test.tsx.snap index 1a42b5c485..56d14c9af6 100644 --- a/plugins/menus/src/AboutWidget/components/__snapshots__/AboutWidget.test.tsx.snap +++ b/plugins/menus/src/AboutWidget/components/__snapshots__/AboutWidget.test.tsx.snap @@ -18,7 +18,7 @@ exports[` renders 1`] = ` JBrowse is a renders 1`] = `