Kakao/WebKit, mit “ - Fenster.open()" JavaScript-links öffnen die in einer Instanz von Safari

Baue ich eine ganz einfache Cocoa-Anwendung mit WebKit zum anzeigen einer Flash - /Silverlight-Anwendung in es. Sehr basic, keine Absichten, denn es ist ein browser selbst.

So weit ich in der Lage gewesen, um es zu öffnen, grundlegende html-links (<a href="..." />) in einer neuen Instanz von Safari mit

[[NSWorkspace sharedWorkspace] openURL:[request URL]];

Nun mein Problem ist das öffnen eines Links in einer neuen Instanz von Safari, wenn window.open() ist in JavaScript verwendet. Ich "glaube" (und durch dieses,, ich habe die hacken den code und ich bin nicht sicher, ob ich das tatsächlich gemacht habe oder nicht) habe ich diese Art von Arbeit durch die Einstellung des WebView ist policyDelegate und Umsetzung Ihrer

-webView:decidePolicyForNavigationAction:request:frame:decisionListener:

delegate-Methode. Doch dies führte zu etwas unberechenbar Verhalten.

Also die einfache Frage, was brauche ich zu tun, so dass, wenn window.open() aufgerufen wird, wird der link geöffnet wird in einer neuen Instanz von Safari.

Dank

Großer Punkt ist, ich bin normalerweise eine .NET-Entwickler, und haben nur gearbeitet, mit Kakao/WebKit für ein paar Tage.

  • Ich habe genau das gleiche problem. Es scheint ein Fehler zu sein, dass webView:decidePolicyForNewWindowAction:request:newFrameName:decisionListener ist nicht genannt.
InformationsquelleAutor FireWire | 2008-11-06
Schreibe einen Kommentar