X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e669ddde233a87d1e80ce2b102d0a18ce9daedfe..08670ea85abf4b4946a9ce64971b591d7b1ee30b:/src/osx/webview_webkit.mm diff --git a/src/osx/webview_webkit.mm b/src/osx/webview_webkit.mm index c513eaa1a9..74e23a63cc 100644 --- a/src/osx/webview_webkit.mm +++ b/src/osx/webview_webkit.mm @@ -14,8 +14,8 @@ #include "wx/osx/webview_webkit.h" -#if wxUSE_WEBVIEW_WEBKIT && (defined(__WXOSX_COCOA__) \ - || defined(__WXOSX_CARBON__)) +#if wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT && (defined(__WXOSX_COCOA__) \ + || defined(__WXOSX_CARBON__)) // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -389,7 +389,7 @@ bool wxWebViewWebKit::Create(wxWindow *parent, //Register our own class for custom scheme handling [NSURLProtocol registerClass:[WebViewCustomProtocol class]]; - LoadUrl(strURL); + LoadURL(strURL); return true; } @@ -735,7 +735,7 @@ void wxWebViewWebKit::MacVisibilityChanged(){ #endif } -void wxWebViewWebKit::LoadUrl(const wxString& url) +void wxWebViewWebKit::LoadURL(const wxString& url) { [[m_webView mainFrame] loadRequest:[NSURLRequest requestWithURL: [NSURL URLWithString:wxNSStringWithWxString(url)]]]; @@ -1018,13 +1018,13 @@ void wxWebViewWebKit::RegisterHandler(wxSharedPtr handler) if (webKitWindow && frame == [sender mainFrame]){ NSString *url = [[[[frame dataSource] request] URL] absoluteString]; wxString target = wxStringWithNSString([frame name]); - wxWebViewNavigationEvent thisEvent(wxEVT_COMMAND_WEB_VIEW_NAVIGATED, - webKitWindow->GetId(), - wxStringWithNSString( url ), - target, false); + wxWebViewEvent event(wxEVT_COMMAND_WEB_VIEW_NAVIGATED, + webKitWindow->GetId(), + wxStringWithNSString( url ), + target); if (webKitWindow && webKitWindow->GetEventHandler()) - webKitWindow->GetEventHandler()->ProcessEvent(thisEvent); + webKitWindow->GetEventHandler()->ProcessEvent(event); } } @@ -1036,13 +1036,13 @@ void wxWebViewWebKit::RegisterHandler(wxSharedPtr handler) NSString *url = [[[[frame dataSource] request] URL] absoluteString]; wxString target = wxStringWithNSString([frame name]); - wxWebViewNavigationEvent thisEvent(wxEVT_COMMAND_WEB_VIEW_LOADED, - webKitWindow->GetId(), - wxStringWithNSString( url ), - target, false); + wxWebViewEvent event(wxEVT_COMMAND_WEB_VIEW_LOADED, + webKitWindow->GetId(), + wxStringWithNSString( url ), + target); if (webKitWindow && webKitWindow->GetEventHandler()) - webKitWindow->GetEventHandler()->ProcessEvent(thisEvent); + webKitWindow->GetEventHandler()->ProcessEvent(event); } } @@ -1062,7 +1062,9 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) case NSURLErrorResourceUnavailable: case NSURLErrorHTTPTooManyRedirects: +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 case NSURLErrorDataLengthExceedsMaximum: +#endif case NSURLErrorBadURL: case NSURLErrorFileIsDirectory: *out = wxWEB_NAV_ERR_REQUEST; @@ -1084,16 +1086,20 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) *out = wxWEB_NAV_ERR_USER_CANCELLED; break; +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 case NSURLErrorCannotDecodeRawData: case NSURLErrorCannotDecodeContentData: - case NSURLErrorBadServerResponse: case NSURLErrorCannotParseResponse: +#endif + case NSURLErrorBadServerResponse: *out = wxWEB_NAV_ERR_REQUEST; break; case NSURLErrorUserAuthenticationRequired: case NSURLErrorSecureConnectionFailed: +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 case NSURLErrorClientCertificateRequired: +#endif *out = wxWEB_NAV_ERR_AUTH; break; @@ -1130,16 +1136,16 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) wxWebViewNavigationError type; wxString description = nsErrorToWxHtmlError(error, &type); - wxWebViewNavigationEvent thisEvent(wxEVT_COMMAND_WEB_VIEW_ERROR, - webKitWindow->GetId(), - wxStringWithNSString( url ), - wxEmptyString, false); - thisEvent.SetString(description); - thisEvent.SetInt(type); + wxWebViewEvent event(wxEVT_COMMAND_WEB_VIEW_ERROR, + webKitWindow->GetId(), + wxStringWithNSString( url ), + wxEmptyString); + event.SetString(description); + event.SetInt(type); if (webKitWindow && webKitWindow->GetEventHandler()) { - webKitWindow->GetEventHandler()->ProcessEvent(thisEvent); + webKitWindow->GetEventHandler()->ProcessEvent(event); } } } @@ -1156,15 +1162,15 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) wxWebViewNavigationError type; wxString description = nsErrorToWxHtmlError(error, &type); - wxWebViewNavigationEvent thisEvent(wxEVT_COMMAND_WEB_VIEW_ERROR, - webKitWindow->GetId(), - wxStringWithNSString( url ), - wxEmptyString, false); - thisEvent.SetString(description); - thisEvent.SetInt(type); + wxWebViewEvent event(wxEVT_COMMAND_WEB_VIEW_ERROR, + webKitWindow->GetId(), + wxStringWithNSString( url ), + wxEmptyString); + event.SetString(description); + event.SetInt(type); if (webKitWindow && webKitWindow->GetEventHandler()) - webKitWindow->GetEventHandler()->ProcessEvent(thisEvent); + webKitWindow->GetEventHandler()->ProcessEvent(event); } } @@ -1172,15 +1178,15 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) forFrame:(WebFrame *)frame { wxString target = wxStringWithNSString([frame name]); - wxWebViewNavigationEvent thisEvent(wxEVT_COMMAND_WEB_VIEW_TITLE_CHANGED, - webKitWindow->GetId(), - webKitWindow->GetCurrentURL(), - target, true); + wxWebViewEvent event(wxEVT_COMMAND_WEB_VIEW_TITLE_CHANGED, + webKitWindow->GetId(), + webKitWindow->GetCurrentURL(), + target); - thisEvent.SetString(wxStringWithNSString(title)); + event.SetString(wxStringWithNSString(title)); if (webKitWindow && webKitWindow->GetEventHandler()) - webKitWindow->GetEventHandler()->ProcessEvent(thisEvent); + webKitWindow->GetEventHandler()->ProcessEvent(event); } @end @@ -1204,14 +1210,14 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) webKitWindow->m_busy = true; NSString *url = [[request URL] absoluteString]; wxString target = wxStringWithNSString([frame name]); - wxWebViewNavigationEvent thisEvent(wxEVT_COMMAND_WEB_VIEW_NAVIGATING, - webKitWindow->GetId(), - wxStringWithNSString( url ), target, true); + wxWebViewEvent event(wxEVT_COMMAND_WEB_VIEW_NAVIGATING, + webKitWindow->GetId(), + wxStringWithNSString( url ), target); if (webKitWindow && webKitWindow->GetEventHandler()) - webKitWindow->GetEventHandler()->ProcessEvent(thisEvent); + webKitWindow->GetEventHandler()->ProcessEvent(event); - if (thisEvent.IsVetoed()) + if (!event.IsAllowed()) { webKitWindow->m_busy = false; [listener ignore]; @@ -1231,12 +1237,12 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) wxUnusedVar(actionInformation); NSString *url = [[request URL] absoluteString]; - wxWebViewNavigationEvent thisEvent(wxEVT_COMMAND_WEB_VIEW_NEWWINDOW, - webKitWindow->GetId(), - wxStringWithNSString( url ), "", true); + wxWebViewEvent event(wxEVT_COMMAND_WEB_VIEW_NEWWINDOW, + webKitWindow->GetId(), + wxStringWithNSString( url ), ""); if (webKitWindow && webKitWindow->GetEventHandler()) - webKitWindow->GetEventHandler()->ProcessEvent(thisEvent); + webKitWindow->GetEventHandler()->ProcessEvent(event); [listener ignore]; } @@ -1309,4 +1315,4 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) @end -#endif //wxUSE_WEBVIEW_WEBKIT +#endif //wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT