Skip to content

Commit e1824e7

Browse files
author
Sebastian Benjamin
committed
Restore SNP labels
1 parent d1bb9a6 commit e1824e7

File tree

4 files changed

+23
-9
lines changed

4 files changed

+23
-9
lines changed

jbrowse/src/client/JBrowse/Browser/plugins/ExtendedVariantPlugin/ExtendedVariantWidget/ExtendedVariantWidget.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -337,6 +337,9 @@ export default jbrowse => {
337337
const [infoFields, setInfoFields] = useState<Map<string, FieldModel>>(null)
338338

339339
const feat = JSON.parse(JSON.stringify(feature))
340+
feat["vcfMetadataInfo"] = Object.fromEntries(
341+
Object.entries(featureInfoFields).map(([k, v]: [string, any]) => [k, v?.Description || v]),
342+
)
340343
const { samples } = feat
341344
feat["samples"] = null
342345

jbrowse/src/client/JBrowse/Browser/plugins/ExtendedVariantPlugin/index.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import Plugin from '@jbrowse/core/Plugin';
22
import PluginManager from '@jbrowse/core/PluginManager';
3+
import { LinearBasicDisplayComponent } from '@jbrowse/plugin-linear-genome-view';
34
import ExtendedVariantWidget from './ExtendedVariantWidget';
45
import ExtendedVariantDisplay from './ExtendedVariantDisplay';
56
import DisplayType from '@jbrowse/core/pluggableElementTypes/DisplayType';
@@ -62,7 +63,6 @@ export default class ExtendedVariantPlugin extends Plugin {
6263
const WidgetType = jbrequire('@jbrowse/core/pluggableElementTypes/WidgetType')
6364
const TrackType = jbrequire('@jbrowse/core/pluggableElementTypes/TrackType')
6465
const LGVPlugin = pluginManager.getPlugin('LinearGenomeViewPlugin',) as import('@jbrowse/plugin-linear-genome-view').default
65-
const { BaseLinearDisplayComponent } = LGVPlugin.exports
6666

6767
pluginManager.addAdapterType(() =>
6868
new AdapterType({
@@ -93,7 +93,9 @@ export default class ExtendedVariantPlugin extends Plugin {
9393
stateModel,
9494
trackType: 'ExtendedVariantTrack',
9595
viewType: 'LinearGenomeView',
96-
ReactComponent: BaseLinearDisplayComponent,
96+
// Use LinearBasicDisplayComponent so canvas floating labels are rendered.
97+
// BaseLinearDisplayComponent alone does not mount FloatingLabels.
98+
ReactComponent: LinearBasicDisplayComponent,
9799
})
98100
})
99101

jbrowse/src/org/labkey/jbrowse/JBrowseController.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -715,10 +715,10 @@ else if (MGAP.equalsIgnoreCase(form.getSession()))
715715
else if (MGAP_FILTERED.equalsIgnoreCase(form.getSession()))
716716
{
717717
resp = getDemoSession("external/mGAPSession.json");
718-
resp.getJSONArray("tracks").getJSONObject(0).getJSONArray("displays").getJSONObject(0).getJSONObject("renderer").put("activeSamples", "m00004,m00005");
719-
resp.getJSONArray("tracks").getJSONObject(0).getJSONArray("displays").getJSONObject(0).getJSONObject("renderer").put("palette", "AF");
720-
resp.getJSONArray("tracks").getJSONObject(0).getJSONArray("displays").getJSONObject(0).getJSONObject("renderer").put("supportsLuceneIndex", true);
721-
resp.getJSONArray("tracks").getJSONObject(0).getJSONArray("displays").getJSONObject(0).getJSONObject("renderer").put("infoFilters", new JSONArray(){{
718+
resp.getJSONArray("tracks").getJSONObject(0).getJSONArray("displays").getJSONObject(0).put("activeSamples", "m00004,m00005");
719+
resp.getJSONArray("tracks").getJSONObject(0).getJSONArray("displays").getJSONObject(0).put("palette", "AF");
720+
resp.getJSONArray("tracks").getJSONObject(0).getJSONArray("displays").getJSONObject(0).put("supportsLuceneIndex", true);
721+
resp.getJSONArray("tracks").getJSONObject(0).getJSONArray("displays").getJSONObject(0).put("infoFilters", new JSONArray(){{
722722
put("AF:gt:0.1");
723723
}});
724724

jbrowse/test/src/org/labkey/test/tests/external/labModules/JBrowseTestHelper.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -143,10 +143,19 @@ public static By getVariantWithinTrack(BaseWebDriverTest test, String trackId, S
143143
{
144144
Locator.XPathLocator l = getTrackLocator(test, trackId, true);
145145
test.waitForElementToDisappear(Locator.tagWithText("p", "Loading"));
146-
l = l.append(Locator.xpath("//*[name()='text' and contains(text(), '" + variantText + "')]")).notHidden().parent();
147-
if (appendPolygon){
148-
l = l.append("/*[name()='polygon']");
146+
147+
String svgPath = "//*[name()='text' and contains(text(), '" + variantText + "')]";
148+
if (appendPolygon)
149+
{
150+
svgPath += "/parent::*/*[name()='polygon']";
149151
}
152+
else
153+
{
154+
svgPath += "/parent::*";
155+
}
156+
157+
String canvasPath = "//div[@data-feature-id and contains(normalize-space(.), '" + variantText + "')]";
158+
l = l.append(Locator.xpath("(" + svgPath + "|" + canvasPath + ")")).notHidden();
150159

151160
test.waitForElement(l);
152161

0 commit comments

Comments
 (0)