Skip to content

Commit df7e227

Browse files
authored
Handle different API in Voila (#107)
1 parent 0baebe6 commit df7e227

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed

src/widgets.ts

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,22 @@ export class BokehView extends DOMWidgetView {
101101
const events = (window as any).require('base/js/events')
102102
events.on('kernel_idle.Kernel', () => this._process_msg())
103103
} else if ((this.model.widget_manager as any).context != null) {
104-
// Handle JupyterLab
105-
(this.model.widget_manager as any).context.sessionContext.statusChanged.connect((_: any, status: any) => {
106-
if (status === "idle")
107-
this._process_msg()
108-
})
109-
} else {
110-
if (this.model.get("combine_events"))
104+
// Handle JupyterLab and Voila
105+
const context = (this.model.widget_manager as any).context
106+
const statusChanged = (context.session != null ?
107+
context.session.kernel.statusChanged :
108+
context.sessionContext.statusChanged)
109+
if (statusChanged != null) {
110+
statusChanged.connect((_: any, status: any) => {
111+
if (status === "idle")
112+
this._process_msg()
113+
})
114+
} else if (this.model.get("combine_events")) {
111115
console.warn("BokehView cannot combine events because Kernel idle status cannot be determined.")
116+
this._combine = false
117+
}
118+
} else if (this.model.get("combine_events")) {
119+
console.warn("BokehView cannot combine events because Kernel idle status cannot be determined.")
112120
this._combine = false
113121
}
114122
this.listenTo(this.model, "msg:custom", (content, buffers) => this._consume_patch(content, buffers))

0 commit comments

Comments
 (0)