diff --git a/default_app/menu.js b/default_app/menu.js index 062bf716af..6dd37b2d32 100644 --- a/default_app/menu.js +++ b/default_app/menu.js @@ -69,15 +69,7 @@ const setDefaultApplicationMenu = () => { ] }, { - role: 'window', - submenu: [ - { - role: 'minimize' - }, - { - role: 'close' - } - ] + role: 'windowMenu' }, { role: 'help', @@ -158,23 +150,6 @@ const setDefaultApplicationMenu = () => { } ] }) - template[3].submenu = [ - { - role: 'close' - }, - { - role: 'minimize' - }, - { - role: 'zoom' - }, - { - type: 'separator' - }, - { - role: 'front' - } - ] } else { template.unshift({ label: 'File', diff --git a/lib/browser/api/menu-item-roles.js b/lib/browser/api/menu-item-roles.js index 61c6226f63..a3075a99ff 100644 --- a/lib/browser/api/menu-item-roles.js +++ b/lib/browser/api/menu-item-roles.js @@ -216,17 +216,23 @@ const roles = { role: 'minimize' }, { - role: 'close' + role: 'zoom' }, - + process.platform !== 'darwin' ? { + label: 'close' + } : null, process.platform === 'darwin' ? { type: 'separator' } : null, - process.platform === 'darwin' ? { role: 'front' + } : null, + process.platform === 'darwin' ? { + type: 'separator' + } : null, + process.platform === 'darwin' ? { + role: 'window' } : null - ] } } diff --git a/spec/api-menu-item-spec.js b/spec/api-menu-item-spec.js index 04e7b08f44..49d0366f34 100644 --- a/spec/api-menu-item-spec.js +++ b/spec/api-menu-item-spec.js @@ -349,11 +349,14 @@ describe('MenuItems', () => { expect(item.label).to.equal('Window') expect(item.submenu.items[0].role).to.equal('minimize') - expect(item.submenu.items[1].role).to.equal('close') + expect(item.submenu.items[1].role).to.equal('zoom') if (process.platform === 'darwin') { expect(item.submenu.items[2].type).to.equal('separator') expect(item.submenu.items[3].role).to.equal('front') + + expect(item.submenu.items[4].type).to.equal('separator') + expect(item.submenu.items[5].role).to.equal('window') } })