Skip to content

Commit 3da7dce

Browse files
committed
Solve Windows&Linux build error
1 parent 314f487 commit 3da7dce

File tree

2 files changed

+104
-97
lines changed

2 files changed

+104
-97
lines changed

src/api/dispatcher_bindings.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,10 +139,12 @@ DispatcherBindings::GetNativeFunction(v8::Handle<v8::String> name) {
139139
return v8::FunctionTemplate::New(SetCrashDumpDir);
140140
else if (name->Equals(v8::String::New("AllocateId")))
141141
return v8::FunctionTemplate::New(AllocateId);
142+
#if defined(OS_MACOSX)
142143
else if (name->Equals(v8::String::New("GetNSStringWithFixup")))
143144
return v8::FunctionTemplate::New(GetNSStringWithFixup);
144145
else if (name->Equals(v8::String::New("GetNSStringFWithFixup")))
145146
return v8::FunctionTemplate::New(GetNSStringFWithFixup);
147+
#endif
146148

147149
NOTREACHED() << "Trying to get an non-exist function in DispatcherBindings:"
148150
<< *v8::String::Utf8Value(name);

src/api/menu/menu.js

Lines changed: 102 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -69,103 +69,108 @@ Menu.prototype.popup = function(x, y) {
6969
nw.callObjectMethod(this, 'Popup', [ x, y ]);
7070
}
7171

72-
Menu.prototype.createMacBuiltin = function (app_name) {
73-
var appleMenu = new Menu();
74-
appleMenu.append(new exports.MenuItem({
75-
label: nw.getNSStringFWithFixup("IDS_ABOUT_MAC", app_name),
76-
selector: "orderFrontStandardAboutPanel:"
77-
}));
78-
appleMenu.append(new exports.MenuItem({
79-
type: "separator"
80-
}));
81-
appleMenu.append(new exports.MenuItem({
82-
label: nw.getNSStringFWithFixup("IDS_HIDE_APP_MAC", app_name),
83-
selector: "hide:",
84-
key: "h"
85-
}));
86-
appleMenu.append(new exports.MenuItem({
87-
label: nw.getNSStringFWithFixup("IDS_HIDE_OTHERS_MAC", app_name),
88-
selector: "hideOtherApplications:",
89-
key: "h",
90-
modifiers: "cmd-alt"
91-
}));
92-
appleMenu.append(new exports.MenuItem({
93-
label: nw.getNSStringWithFixup("IDS_SHOW_ALL_MAC"),
94-
selector: "unhideAllApplications:",
95-
}));
96-
appleMenu.append(new exports.MenuItem({
97-
type: "separator"
98-
}));
99-
appleMenu.append(new exports.MenuItem({
100-
label: nw.getNSStringFWithFixup("IDS_EXIT_MAC", app_name),
101-
selector: "closeAllWindowsQuit:",
102-
key: "q"
103-
}));
104-
this.append(new exports.MenuItem({ label:'', submenu: appleMenu}));
105-
106-
var editMenu = new Menu();
107-
editMenu.append(new exports.MenuItem({
108-
label: nw.getNSStringWithFixup("IDS_EDIT_UNDO_MAC"),
109-
selector: "undo:",
110-
key: "z"
111-
}));
112-
editMenu.append(new exports.MenuItem({
113-
label: nw.getNSStringWithFixup("IDS_EDIT_REDO_MAC"),
114-
selector: "redo:",
115-
key: "z",
116-
modifiers: "cmd-shift"
117-
}));
118-
editMenu.append(new exports.MenuItem({
119-
type: "separator"
120-
}));
121-
editMenu.append(new exports.MenuItem({
122-
label: nw.getNSStringWithFixup("IDS_CUT_MAC"),
123-
selector: "cut:",
124-
key: "x"
125-
}));
126-
editMenu.append(new exports.MenuItem({
127-
label: nw.getNSStringWithFixup("IDS_COPY_MAC"),
128-
selector: "copy:",
129-
key: "c"
130-
}));
131-
editMenu.append(new exports.MenuItem({
132-
label: nw.getNSStringWithFixup("IDS_PASTE_MAC"),
133-
selector: "paste:",
134-
key: "v"
135-
}));
136-
editMenu.append(new exports.MenuItem({
137-
label: nw.getNSStringWithFixup("IDS_EDIT_DELETE_MAC"),
138-
selector: "delete:",
139-
key: ""
140-
}));
141-
editMenu.append(new exports.MenuItem({
142-
label: nw.getNSStringWithFixup("IDS_EDIT_SELECT_ALL_MAC"),
143-
selector: "selectAll:",
144-
key: "a"
145-
}));
146-
this.append(new exports.MenuItem({ label: nw.getNSStringWithFixup("IDS_EDIT_MENU_MAC"),
147-
submenu: editMenu}));
148-
149-
var winMenu = new Menu();
150-
winMenu.append(new exports.MenuItem({
151-
label: nw.getNSStringWithFixup("IDS_MINIMIZE_WINDOW_MAC"),
152-
selector: "performMiniaturize:",
153-
key: "m"
154-
}));
155-
winMenu.append(new exports.MenuItem({
156-
label: nw.getNSStringWithFixup("IDS_CLOSE_WINDOW_MAC"),
157-
selector: "performClose:",
158-
key: "w"
159-
}));
160-
winMenu.append(new exports.MenuItem({
161-
type: "separator"
162-
}));
163-
winMenu.append(new exports.MenuItem({
164-
label: nw.getNSStringWithFixup("IDS_ALL_WINDOWS_FRONT_MAC"),
165-
selector: "arrangeInFront:",
166-
}));
167-
this.append(new exports.MenuItem({ label: nw.getNSStringWithFixup("IDS_WINDOW_MENU_MAC"),
168-
submenu: winMenu}));
72+
if (require('os').platform() === 'darwin'){
73+
//Only OSX owns this API
74+
Menu.prototype.createMacBuiltin = function (app_name) {
75+
var appleMenu = new Menu();
76+
appleMenu.append(new exports.MenuItem({
77+
label: nw.getNSStringFWithFixup("IDS_ABOUT_MAC", app_name),
78+
selector: "orderFrontStandardAboutPanel:"
79+
}));
80+
appleMenu.append(new exports.MenuItem({
81+
type: "separator"
82+
}));
83+
appleMenu.append(new exports.MenuItem({
84+
label: nw.getNSStringFWithFixup("IDS_HIDE_APP_MAC", app_name),
85+
selector: "hide:",
86+
key: "h"
87+
}));
88+
appleMenu.append(new exports.MenuItem({
89+
label: nw.getNSStringFWithFixup("IDS_HIDE_OTHERS_MAC", app_name),
90+
selector: "hideOtherApplications:",
91+
key: "h",
92+
modifiers: "cmd-alt"
93+
}));
94+
appleMenu.append(new exports.MenuItem({
95+
label: nw.getNSStringWithFixup("IDS_SHOW_ALL_MAC"),
96+
selector: "unhideAllApplications:",
97+
}));
98+
appleMenu.append(new exports.MenuItem({
99+
type: "separator"
100+
}));
101+
appleMenu.append(new exports.MenuItem({
102+
label: nw.getNSStringFWithFixup("IDS_EXIT_MAC", app_name),
103+
selector: "closeAllWindowsQuit:",
104+
key: "q"
105+
}));
106+
this.append(new exports.MenuItem({ label:'', submenu: appleMenu}));
107+
108+
var editMenu = new Menu();
109+
editMenu.append(new exports.MenuItem({
110+
label: nw.getNSStringWithFixup("IDS_EDIT_UNDO_MAC"),
111+
selector: "undo:",
112+
key: "z"
113+
}));
114+
editMenu.append(new exports.MenuItem({
115+
label: nw.getNSStringWithFixup("IDS_EDIT_REDO_MAC"),
116+
selector: "redo:",
117+
key: "z",
118+
modifiers: "cmd-shift"
119+
}));
120+
editMenu.append(new exports.MenuItem({
121+
type: "separator"
122+
}));
123+
editMenu.append(new exports.MenuItem({
124+
label: nw.getNSStringWithFixup("IDS_CUT_MAC"),
125+
selector: "cut:",
126+
key: "x"
127+
}));
128+
editMenu.append(new exports.MenuItem({
129+
label: nw.getNSStringWithFixup("IDS_COPY_MAC"),
130+
selector: "copy:",
131+
key: "c"
132+
}));
133+
editMenu.append(new exports.MenuItem({
134+
label: nw.getNSStringWithFixup("IDS_PASTE_MAC"),
135+
selector: "paste:",
136+
key: "v"
137+
}));
138+
editMenu.append(new exports.MenuItem({
139+
label: nw.getNSStringWithFixup("IDS_EDIT_DELETE_MAC"),
140+
selector: "delete:",
141+
key: ""
142+
}));
143+
editMenu.append(new exports.MenuItem({
144+
label: nw.getNSStringWithFixup("IDS_EDIT_SELECT_ALL_MAC"),
145+
selector: "selectAll:",
146+
key: "a"
147+
}));
148+
this.append(new exports.MenuItem({ label: nw.getNSStringWithFixup("IDS_EDIT_MENU_MAC"),
149+
submenu: editMenu}));
150+
151+
var winMenu = new Menu();
152+
winMenu.append(new exports.MenuItem({
153+
label: nw.getNSStringWithFixup("IDS_MINIMIZE_WINDOW_MAC"),
154+
selector: "performMiniaturize:",
155+
key: "m"
156+
}));
157+
winMenu.append(new exports.MenuItem({
158+
label: nw.getNSStringWithFixup("IDS_CLOSE_WINDOW_MAC"),
159+
selector: "performClose:",
160+
key: "w"
161+
}));
162+
winMenu.append(new exports.MenuItem({
163+
type: "separator"
164+
}));
165+
winMenu.append(new exports.MenuItem({
166+
label: nw.getNSStringWithFixup("IDS_ALL_WINDOWS_FRONT_MAC"),
167+
selector: "arrangeInFront:",
168+
}));
169+
this.append(new exports.MenuItem({ label: nw.getNSStringWithFixup("IDS_WINDOW_MENU_MAC"),
170+
submenu: winMenu}));
171+
}
172+
173+
169174
}
170175

171176
exports.Menu = Menu;

0 commit comments

Comments
 (0)