function setup (parentWindow) {
  var view = views[parentWindow.id] = new BrowserView({
    webPreferences: {
      defaultEncoding: 'utf-8',
      preload: path.join(__dirname, 'fg', 'shell-menus', 'index.build.js')
    }
  })
  view.webContents.on('console-message', (e, level, message) => {
    console.log('Shell-Menus window says:', message)
  })
  view.webContents.loadURL('beaker://shell-menus/')
}
Shell Menus

NOTES
- There can only ever be one Shell Menu view for a given browser window
- Shell Menu views are created with each browser window and then shown/hidden as needed
- The Shell Menu view contains the UIs for multiple menus and swaps between them as needed
- When unfocused, the Shell Menu view is hidden (it's meant to act as a popup menu)