Skip to content

Commit 4135162

Browse files
committed
Allow registration of listeners during browser creation (config.listeners)
1 parent a7b5cc2 commit 4135162

File tree

3 files changed

+15
-5
lines changed

3 files changed

+15
-5
lines changed

dev/ucsc/hub.html

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,19 @@
4646
const hub = await Hub.loadHub("https://hgdownload.soe.ucsc.edu/hubs/GCA/009/914/755/GCA_009914755.4/hub.txt", hubOptions)
4747

4848
const igvConfig = {
49-
reference: hub.getGenomeConfig()
49+
reference: hub.getGenomeConfig(),
50+
listeners: {
51+
'genomechange': ({genome, trackConfigurations}) => {
52+
console.log('genomechange')
53+
console.log(genome)
54+
console.log(trackConfigurations)
55+
}
56+
}
5057
}
5158

59+
5260
const browser = await igv.createBrowser(document.getElementById('igvDiv'), igvConfig)
5361

54-
browser.on('genomechange', (args) => {
55-
console.log(args)
56-
})
5762

5863
const selector = document.getElementById("select")
5964
selector.addEventListener("change", () => document.getElementById("hub-input").value = selector.value)

js/browser.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,12 @@ class Browser {
115115
// Map of event name -> [ handlerFn, ... ]
116116
this.eventHandlers = {}
117117

118+
if(config.listeners) {
119+
for(let evt of Object.keys(config.listeners)) {
120+
this.on(evt, config.listeners[evt])
121+
}
122+
}
123+
118124
this.on('trackremoved', () => {
119125

120126
const found = this.findTracks(track => typeof track.getSamples === 'function')

js/igv-create.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ async function createBrowser(parentDiv, config) {
6969
const browser = new Browser(config, parentDiv)
7070
allBrowsers.push(browser)
7171

72-
7372
// Lod initial sessio
7473
browser.startSpinner()
7574

0 commit comments

Comments
 (0)