Changeset 176408 in webkit
- Timestamp:
- Nov 20, 2014 12:01:40 PM (9 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r176400 r176408 1 2014-11-20 Anders Carlsson <andersca@apple.com> 2 3 Add -[WKWebView loadData:MIMEType:textEncodingName:baseURL:] 4 https://bugs.webkit.org/show_bug.cgi?id=138929 5 <rdar://problem/18683802> 6 7 Reviewed by Dan Bernstein. 8 9 Also, re-implement -[WKWebView loadHTMLString:baseURL:] in terms of this newly added function 10 and assume a UTF-8 encoding. This matches what Legacy WebKit does. 11 12 * UIProcess/API/Cocoa/WKWebView.h: 13 * UIProcess/API/Cocoa/WKWebView.mm: 14 (-[WKWebView loadHTMLString:baseURL:]): 15 (-[WKWebView loadData:MIMEType:textEncodingName:baseURL:]): 16 * UIProcess/WebPageProxy.cpp: 17 (WebKit::WebPageProxy::loadData): 18 * UIProcess/WebPageProxy.h: 19 1 20 2014-11-20 Antti Koivisto <antti@apple.com> 2 21 -
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.h
r176340 r176408 106 106 - (WKNavigation *)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL; 107 107 108 /*! @abstract Sets the webpage contents and base URL. 109 @param data The data to use as the contents of the webpage. 110 @param MIMEType The MIME type of the data. 111 @param encodingName The data's character encoding name. 112 @param baseURL A URL that is used to resolve relative URLs within the document. 113 @result A new navigation. 114 */ 115 - (WKNavigation *)loadData:(NSData *)data MIMEType:(NSString *)MIMEType characterEncodingName:(NSString *)characterEncodingName baseURL:(NSURL *)baseURL WK_AVAILABLE(WK_MAC_TBA, WK_IOS_TBA); 116 108 117 /*! @abstract Navigates to an item from the back-forward list and sets it 109 118 as the current item. -
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm
r176340 r176408 435 435 - (WKNavigation *)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL 436 436 { 437 uint64_t navigationID = _page->loadHTMLString(string, baseURL.absoluteString); 437 NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding]; 438 439 return [self loadData:data MIMEType:@"text/html" characterEncodingName:@"UTF-8" baseURL:baseURL]; 440 } 441 442 - (WKNavigation *)loadData:(NSData *)data MIMEType:(NSString *)MIMEType characterEncodingName:(NSString *)characterEncodingName baseURL:(NSURL *)baseURL 443 { 444 uint64_t navigationID = _page->loadData(API::Data::createWithoutCopying(data).get(), MIMEType, characterEncodingName, baseURL.absoluteString); 438 445 if (!navigationID) 439 446 return nil; -
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp
r176363 r176408 785 785 } 786 786 787 voidWebPageProxy::loadData(API::Data* data, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData)787 uint64_t WebPageProxy::loadData(API::Data* data, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData) 788 788 { 789 789 if (m_isClosed) 790 return; 790 return 0; 791 792 uint64_t navigationID = generateNavigationID(); 793 794 auto transaction = m_pageLoadState.transaction(); 795 796 m_pageLoadState.setPendingAPIRequestURL(transaction, !baseURL.isEmpty() ? baseURL : ASCIILiteral("about:blank")); 791 797 792 798 if (!isValid()) … … 796 802 m_process->send(Messages::WebPage::LoadData(data->dataReference(), MIMEType, encoding, baseURL, WebContextUserMessageEncoder(userData, process())), m_pageID); 797 803 m_process->responsivenessTimer()->start(); 798 } 799 804 805 return navigationID; 806 } 807 808 // FIXME: Get rid of loadHTMLString and just use loadData instead. 800 809 uint64_t WebPageProxy::loadHTMLString(const String& htmlString, const String& baseURL, API::Object* userData) 801 810 { -
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
r176363 r176408 309 309 uint64_t loadRequest(const WebCore::ResourceRequest&, API::Object* userData = nullptr); 310 310 uint64_t loadFile(const String& fileURL, const String& resourceDirectoryURL, API::Object* userData = nullptr); 311 voidloadData(API::Data*, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData = nullptr);311 uint64_t loadData(API::Data*, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData = nullptr); 312 312 uint64_t loadHTMLString(const String& htmlString, const String& baseURL, API::Object* userData = nullptr); 313 313 void loadAlternateHTMLString(const String& htmlString, const String& baseURL, const String& unreachableURL, API::Object* userData = nullptr);
Note: See TracChangeset
for help on using the changeset viewer.