Skip to content

Commit d267d8d

Browse files
committed
Properly size linear genome view after creation
1 parent 8160a96 commit d267d8d

File tree

3 files changed

+4257
-4946
lines changed

3 files changed

+4257
-4946
lines changed

plugins/linear-genome-view/src/BaseLinearDisplay/models/BaseLinearDisplayModel.tsx

+19-6
Original file line numberDiff line numberDiff line change
@@ -329,7 +329,7 @@ function stateModelFactory() {
329329
},
330330
{
331331
label: 'Collapse introns',
332-
onClick: () => {
332+
onClick: async () => {
333333
const { contextMenuFeature } = self
334334
if (contextMenuFeature) {
335335
const refName = contextMenuFeature.get('refName')
@@ -347,11 +347,24 @@ function stateModelFactory() {
347347
assemblyName: view.assemblyNames[0],
348348
})) || []
349349
res.sort((a, b) => a.start - b.start)
350-
getSession(self).addView('LinearGenomeView', {
351-
...getSnapshot(view),
352-
id: nanoid(),
353-
displayedRegions: res,
354-
})
350+
351+
// need to strip ID before copying view snap
352+
const { id, ...rest } = getSnapshot(view)
353+
const newView = getSession(self).addView(
354+
'LinearGenomeView',
355+
{
356+
...rest,
357+
id: nanoid(),
358+
tracks: rest.tracks.map(track => {
359+
const { id, ...rest } = track
360+
return { ...rest, id: nanoid() }
361+
}),
362+
displayedRegions: res,
363+
},
364+
) as LGV
365+
await when(() => newView.initialized)
366+
367+
newView.showAllRegions()
355368
}
356369
},
357370
},

plugins/linear-genome-view/src/LinearGenomeView/components/Header.tsx

+3-6
Original file line numberDiff line numberDiff line change
@@ -112,14 +112,11 @@ const Controls = ({ model }: { model: LGV }) => {
112112
}
113113

114114
const LinearGenomeViewHeader = observer(({ model }: { model: LGV }) => {
115+
const Wrapper = model.hideHeaderOverview ? React.Fragment : OverviewScalebar
115116
return !model.hideHeader ? (
116-
model.hideHeaderOverview ? (
117+
<Wrapper model={model}>
117118
<Controls model={model} />
118-
) : (
119-
<OverviewScalebar model={model}>
120-
<Controls model={model} />
121-
</OverviewScalebar>
122-
)
119+
</Wrapper>
123120
) : null
124121
})
125122

0 commit comments

Comments
 (0)