MenuItem roles camelCase-compatible

This commit is contained in:
Zhuo Lu 2017-12-28 13:22:39 +08:00
parent a161f6e368
commit d45914c3f7
5 changed files with 30 additions and 27 deletions

View file

@ -162,7 +162,7 @@ const roles = {
}
},
// Edit submenu (should fit both Mac & Windows)
editMenu: {
editmenu: {
label: 'Edit',
submenu: [
{
@ -185,7 +185,7 @@ const roles = {
},
process.platform === 'darwin' ? {
role: 'pasteandmatchstyle'
role: 'pasteAndMatchStyle'
} : null,
{
@ -197,13 +197,13 @@ const roles = {
} : null,
{
role: 'selectall'
role: 'selectAll'
}
]
},
// Window submenu should be used for Mac only
windowMenu: {
windowmenu: {
label: 'Window',
submenu: [
{

View file

@ -11,6 +11,8 @@ const MenuItem = function (options) {
for (let key in options) {
if (!(key in this)) this[key] = options[key]
}
if (typeof this.role === 'string' || this.role instanceof String)
this.role = this.role.toLowerCase()
this.submenu = this.submenu || roles.getDefaultSubmenu(this.role)
if (this.submenu != null && this.submenu.constructor !== Menu) {
this.submenu = Menu.buildFromTemplate(this.submenu)