Lines 31-37
Link Here
|
31 |
String url = ""; //$NON-NLS-1$ |
31 |
String url = ""; //$NON-NLS-1$ |
32 |
Point location; |
32 |
Point location; |
33 |
Point size; |
33 |
Point size; |
34 |
boolean statusBar = true, toolBar = true, ignoreDispose; |
34 |
boolean statusBar = true, toolBar = true, ignoreDispose, acceptAllBeforeUnloadConfirms; |
35 |
int lastMouseMoveX, lastMouseMoveY; |
35 |
int lastMouseMoveX, lastMouseMoveY; |
36 |
//TEMPORARY CODE |
36 |
//TEMPORARY CODE |
37 |
// boolean doit; |
37 |
// boolean doit; |
Lines 217-222
Link Here
|
217 |
browser.notifyListeners (e.type, e); |
217 |
browser.notifyListeners (e.type, e); |
218 |
e.type = SWT.NONE; |
218 |
e.type = SWT.NONE; |
219 |
|
219 |
|
|
|
220 |
/* invoke onbeforeunload handler(s) */ |
221 |
if (!isClosing) { |
222 |
acceptAllBeforeUnloadConfirms = true; |
223 |
close (); |
224 |
acceptAllBeforeUnloadConfirms = false; |
225 |
} |
226 |
|
220 |
e.display.setData(ADD_WIDGET_KEY, new Object[] {delegate, null}); |
227 |
e.display.setData(ADD_WIDGET_KEY, new Object[] {delegate, null}); |
221 |
|
228 |
|
222 |
Safari.this.webView.setFrameLoadDelegate(null); |
229 |
Safari.this.webView.setFrameLoadDelegate(null); |
Lines 415-425
Link Here
|
415 |
StringBuffer buffer = new StringBuffer ("function "); // $NON-NLS-1$ |
422 |
StringBuffer buffer = new StringBuffer ("function "); // $NON-NLS-1$ |
416 |
buffer.append (functionName); |
423 |
buffer.append (functionName); |
417 |
buffer.append ("(win) {\n"); // $NON-NLS-1$ |
424 |
buffer.append ("(win) {\n"); // $NON-NLS-1$ |
418 |
buffer.append ("var fn = win.onbeforeunload; if (fn != null) {var str = null; try {str = fn();} catch (e) {}"); // $NON-NLS-1$ |
425 |
buffer.append ("var fn = win.onbeforeunload; if (fn != null) {try {var str = fn(); if (str != null) { "); // $NON-NLS-1$ |
419 |
buffer.append ("if (str != null) {var result = window.external.callRunBeforeUnloadConfirmPanelWithMessage(str);if (!result) return false;}}"); // $NON-NLS-1$ |
426 |
buffer.append ("var result = window.external.callRunBeforeUnloadConfirmPanelWithMessage(str); if (!result) return false;}} catch (e) {}} "); // $NON-NLS-1$ |
420 |
buffer.append ("for (var i = 0; i < win.frames.length; i++) {var result = "); // $NON-NLS-1$ |
427 |
buffer.append ("try {for (var i = 0; i < win.frames.length; i++) {var result = "); // $NON-NLS-1$ |
421 |
buffer.append (functionName); |
428 |
buffer.append (functionName); |
422 |
buffer.append ("(win.frames[i]); if (!result) return false;} return true;"); // $NON-NLS-1$ |
429 |
buffer.append ("(win.frames[i]); if (!result) return false;}} catch (e) {} return true;"); // $NON-NLS-1$ |
423 |
buffer.append ("\n};"); // $NON-NLS-1$ |
430 |
buffer.append ("\n};"); // $NON-NLS-1$ |
424 |
execute (buffer.toString ()); |
431 |
execute (buffer.toString ()); |
425 |
|
432 |
|
Lines 1067-1073
Link Here
|
1067 |
} |
1074 |
} |
1068 |
|
1075 |
|
1069 |
NSNumber callRunBeforeUnloadConfirmPanelWithMessage(int /*long*/ messageID, int /*long*/ arg) { |
1076 |
NSNumber callRunBeforeUnloadConfirmPanelWithMessage(int /*long*/ messageID, int /*long*/ arg) { |
1070 |
boolean result = webView_runBeforeUnloadConfirmPanelWithMessage_initiatedByFrame (0, messageID, 0); |
1077 |
boolean result; |
|
|
1078 |
if (acceptAllBeforeUnloadConfirms) { |
1079 |
result = true; |
1080 |
} else { |
1081 |
result = webView_runBeforeUnloadConfirmPanelWithMessage_initiatedByFrame (0, messageID, 0); |
1082 |
} |
1071 |
return NSNumber.numberWithBool (result); |
1083 |
return NSNumber.numberWithBool (result); |
1072 |
} |
1084 |
} |
1073 |
|
1085 |
|