Changeset 202329 in webkit


Ignore:
Timestamp:
Jun 22, 2016 9:55:49 AM (8 years ago)
Author:
weinig@apple.com
Message:

WKWebView with no WKNavigationDelegate does not follow universal links
<rdar://problem/24374110>
https://bugs.webkit.org/show_bug.cgi?id=158997

Reviewed by Dan Bernstein.

Source/WebKit2:

API Test:

WKWebView.DefaultNavigationDelegate

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _initializeWithConfiguration:]):
When initializing the WKWebView, set a default navigation client.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewDefaultNavigationDelegate.mm: Added.

Add a new test that shows that we have a default navigation delegate by swizzling
-[NSWorkspace openURL:]. This will only be called if there is a default client.

Location:
trunk
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r202316 r202329  
     12016-06-21  Sam Weinig  <sam@webkit.org>
     2
     3        WKWebView with no WKNavigationDelegate does not follow universal links
     4        <rdar://problem/24374110>
     5        https://bugs.webkit.org/show_bug.cgi?id=158997
     6
     7        Reviewed by Dan Bernstein.
     8
     9        API Test:
     10             WKWebView.DefaultNavigationDelegate
     11
     12        * UIProcess/API/Cocoa/WKWebView.mm:
     13        (-[WKWebView _initializeWithConfiguration:]):
     14        When initializing the WKWebView, set a default navigation client.
     15
    1162016-06-21  Chris Dumez  <cdumez@apple.com>
    217
  • trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm

    r202316 r202329  
    543543
    544544    _navigationState = std::make_unique<WebKit::NavigationState>(self);
     545    _page->setNavigationClient(_navigationState->createNavigationClient());
     546
    545547    _uiDelegate = std::make_unique<WebKit::UIDelegate>(self);
    546548    _page->setFindClient(std::make_unique<WebKit::FindClient>(self));
  • trunk/Tools/ChangeLog

    r202327 r202329  
     12016-06-21  Sam Weinig  <sam@webkit.org>
     2
     3        WKWebView with no WKNavigationDelegate does not follow universal links
     4        <rdar://problem/24374110>
     5        https://bugs.webkit.org/show_bug.cgi?id=158997
     6
     7        Reviewed by Dan Bernstein.
     8
     9        * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
     10        * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewDefaultNavigationDelegate.mm: Added.
     11        Add a new test that shows that we have a default navigation delegate by swizzling
     12        -[NSWorkspace openURL:]. This will only be called if there is a default client.
     13
    1142016-06-22  Per Arne Vollan  <pvollan@apple.com>
    215
  • trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj

    r202316 r202329  
    101101                7C3965061CDD74F90094DBB8 /* Color.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C3965051CDD74F90094DBB8 /* Color.cpp */; };
    102102                7C3DB8E41D12129B00AE8CC3 /* CommandBackForward.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C3DB8E21D12129B00AE8CC3 /* CommandBackForward.mm */; };
     103                7C417F331D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C417F311D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm */; };
    103104                7C486BA11AA12567003F6F9B /* bundle-file.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7C486BA01AA1254B003F6F9B /* bundle-file.html */; };
    104105                7C54A4BE1AA11CCA00380F78 /* WKBundleFileHandle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C54A4BC1AA11CCA00380F78 /* WKBundleFileHandle.cpp */; };
     
    753754                7C3965051CDD74F90094DBB8 /* Color.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Color.cpp; sourceTree = "<group>"; };
    754755                7C3DB8E21D12129B00AE8CC3 /* CommandBackForward.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CommandBackForward.mm; sourceTree = "<group>"; };
     756                7C417F311D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKWebViewDefaultNavigationDelegate.mm; sourceTree = "<group>"; };
    755757                7C486BA01AA1254B003F6F9B /* bundle-file.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = "bundle-file.html"; sourceTree = "<group>"; };
    756758                7C54A4BC1AA11CCA00380F78 /* WKBundleFileHandle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKBundleFileHandle.cpp; sourceTree = "<group>"; };
     
    11671169                                93E943F11CD3E87E00AC08C2 /* VideoControlsManager.mm */,
    11681170                                2D00065D1C1F58940088E6A7 /* WKPDFViewResizeCrash.mm */,
     1171                                7C417F311D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm */,
    11691172                                0F3B94A51A77266C00DE3272 /* WKWebViewEvaluateJavaScript.mm */,
    11701173                                9984FACA1CFFAEEE008D198C /* WKWebViewTextInput.mm */,
     
    21002103                                7CCE7EAF1A411A3800447C4C /* PlatformUtilities.cpp in Sources */,
    21012104                                0F139E781A423A6B00F590F5 /* PlatformUtilitiesCocoa.mm in Sources */,
     2105                                7C417F331D19E14800B8EF53 /* WKWebViewDefaultNavigationDelegate.mm in Sources */,
    21022106                                7CCE7EA61A411A0F00447C4C /* PlatformUtilitiesMac.mm in Sources */,
    21032107                                7CCE7EA71A411A1300447C4C /* PlatformWebViewMac.mm in Sources */,
Note: See TracChangeset for help on using the changeset viewer.