let nextItemID = 1
class TouchBar extends EventEmitter {
-
// Bind a touch bar to a window
static _setOnWindow (touchBar, window) {
if (window._touchBar != null) {
this.windowListeners = {}
this.items = {}
this.ordereredItems = []
+
const registerItem = (item) => {
this.items[item.id] = item
item.on('change', () => {
}
}
items.forEach((item) => {
- this.ordereredItems.push(item)
if (!(item instanceof TouchBarItem)) {
throw new Error('Each item must be an instance of a TouchBarItem')
}
+ this.ordereredItems.push(item)
registerItem(item)
})
}
- // Called by BrowserWindow.setTouchBar
_addToWindow (window) {
const {id} = window
window._setTouchBarItems(this.ordereredItems)
}
- // Called by BrowserWindow.setTouchBar
_removeFromWindow (window) {
const removeListeners = this.windowListeners[window.id]
if (removeListeners != null) removeListeners()