https://trac.macports.org/ticket/48317 http://trac.wxwidgets.org/changeset/2a13ad64d85213846147c31f095e7b419487f677/git-wxWidgets Fix wxOSX build under 10.10. Use proper types for webkit variants. Closes http://trac.wxwidgets.org/ticket/16329. --- include/wx/defs.h.orig +++ include/wx/defs.h @@ -3169,14 +3169,22 @@ enum wxUpdateUI DECLARE_WXCOCOA_OBJC_CLASS(UIEvent); DECLARE_WXCOCOA_OBJC_CLASS(NSSet); DECLARE_WXCOCOA_OBJC_CLASS(EAGLContext); +DECLARE_WXCOCOA_OBJC_CLASS(UIWebView); typedef WX_UIWindow WXWindow; typedef WX_UIView WXWidget; typedef WX_EAGLContext WXGLContext; typedef WX_NSString* WXGLPixelFormat; +typedef WX_UIWebView OSXWebViewPtr; #endif +#if wxOSX_USE_COCOA_OR_CARBON +DECLARE_WXCOCOA_OBJC_CLASS(WebView); +typedef WX_WebView OSXWebViewPtr; +#endif + + #endif /* __WXMAC__ */ /* ABX: check __WIN32__ instead of __WXMSW__ for the same MSWBase in any Win32 port */ --- include/wx/html/webkit.h.orig +++ include/wx/html/webkit.h @@ -18,7 +18,6 @@ #endif #include "wx/control.h" -DECLARE_WXCOCOA_OBJC_CLASS(WebView); // ---------------------------------------------------------------------------- // Web Kit Control @@ -107,7 +106,7 @@ class WXDLLIMPEXP_CORE wxWebKitCtrl : public wxControl wxString m_currentURL; wxString m_pageTitle; - WX_WebView m_webView; + OSXWebViewPtr m_webView; // we may use this later to setup our own mouse events, // so leave it in for now. --- include/wx/osx/webview_webkit.h.orig +++ include/wx/osx/webview_webkit.h @@ -158,7 +158,7 @@ class WXDLLIMPEXP_WEBVIEW wxWebViewWebKit : public wxWebView wxWindowID m_windowID; wxString m_pageTitle; - wxObjCID m_webView; + OSXWebViewPtr m_webView; // we may use this later to setup our own mouse events, // so leave it in for now. --- src/osx/webview_webkit.mm.orig +++ src/osx/webview_webkit.mm @@ -296,7 +296,7 @@ DEFINE_ONE_SHOT_HANDLER_GETTER( wxWebViewWebKitEventHandler ) wxWebViewWebKit* webKitWindow; } -- initWithWxWindow: (wxWebViewWebKit*)inWindow; +- (id)initWithWxWindow: (wxWebViewWebKit*)inWindow; @end @@ -305,7 +305,7 @@ DEFINE_ONE_SHOT_HANDLER_GETTER( wxWebViewWebKitEventHandler ) wxWebViewWebKit* webKitWindow; } -- initWithWxWindow: (wxWebViewWebKit*)inWindow; +- (id)initWithWxWindow: (wxWebViewWebKit*)inWindow; @end @@ -314,7 +314,7 @@ DEFINE_ONE_SHOT_HANDLER_GETTER( wxWebViewWebKitEventHandler ) wxWebViewWebKit* webKitWindow; } -- initWithWxWindow: (wxWebViewWebKit*)inWindow; +- (id)initWithWxWindow: (wxWebViewWebKit*)inWindow; @end @@ -442,7 +442,7 @@ void wxWebViewWebKit::GoBack() if ( !m_webView ) return; - [(WebView*)m_webView goBack]; + [m_webView goBack]; } void wxWebViewWebKit::GoForward() @@ -450,7 +450,7 @@ void wxWebViewWebKit::GoForward() if ( !m_webView ) return; - [(WebView*)m_webView goForward]; + [m_webView goForward]; } void wxWebViewWebKit::Reload(wxWebViewReloadFlags flags) @@ -849,7 +849,7 @@ void wxWebViewWebKit::Cut() if ( !m_webView ) return; - [(WebView*)m_webView cut:m_webView]; + [m_webView cut:m_webView]; } void wxWebViewWebKit::Copy() @@ -857,7 +857,7 @@ void wxWebViewWebKit::Copy() if ( !m_webView ) return; - [(WebView*)m_webView copy:m_webView]; + [m_webView copy:m_webView]; } void wxWebViewWebKit::Paste() @@ -865,7 +865,7 @@ void wxWebViewWebKit::Paste() if ( !m_webView ) return; - [(WebView*)m_webView paste:m_webView]; + [m_webView paste:m_webView]; } void wxWebViewWebKit::DeleteSelection() @@ -873,7 +873,7 @@ void wxWebViewWebKit::DeleteSelection() if ( !m_webView ) return; - [(WebView*)m_webView deleteSelection]; + [m_webView deleteSelection]; } bool wxWebViewWebKit::HasSelection() const @@ -1007,7 +1007,7 @@ void wxWebViewWebKit::RegisterHandler(wxSharedPtr handler) @implementation WebViewLoadDelegate -- initWithWxWindow: (wxWebViewWebKit*)inWindow +- (id)initWithWxWindow: (wxWebViewWebKit*)inWindow { [super init]; webKitWindow = inWindow; // non retained @@ -1197,7 +1197,7 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) @implementation WebViewPolicyDelegate -- initWithWxWindow: (wxWebViewWebKit*)inWindow +- (id)initWithWxWindow: (wxWebViewWebKit*)inWindow { [super init]; webKitWindow = inWindow; // non retained @@ -1335,7 +1335,7 @@ wxString nsErrorToWxHtmlError(NSError* error, wxWebViewNavigationError* out) @implementation WebViewUIDelegate -- initWithWxWindow: (wxWebViewWebKit*)inWindow +- (id)initWithWxWindow: (wxWebViewWebKit*)inWindow { [super init]; webKitWindow = inWindow; // non retained -- 2.1.0.rc0