| 2016-03-18 Simon Fraser <simon.fraser@apple.com> |
| |
| Sideways-scrollable RTL document has wrong initial and reload offset in WKWebView |
| https://bugs.webkit.org/show_bug.cgi?id=155660 |
| |
| Reviewed by Tim Horton. |
| |
| There were two problems with the scroll position of RTL documents on initial and reload |
| in WKWebView. |
| |
| First, in the delegatesScrolling() code path, ScrollView::updateScrollbars() needs to |
| tell someone that the scroll origin changed, to trigger a scroll to the page origin. |
| |
| Secondly, WKWebView had scrollPosition/scrollOffset confusion in various places. In |
| the restorePageState() code path, WebCore passes an exposedRect; this patch makes |
| it explicit that it's an exposedContentRect, and passes scrollOrigin so that it can |
| be mapped into scrollOffset-relative coordinates that the UIScrollView wants. |
| |
| When reloading an RTL page, there was an additional issue; restorePageState() |
| restored the exposedRect, but then we'd see the origin change as a programmatic scroll |
| to 0,0, clobbering the exposedRect. Fix by using a "_commitDidRestoreExposedRect" flag |
| on the WKWebView that is used to ignore the programmatic scroll in that case. |
| |
| Ideally these changes would fix fast/scrolling/scroll-position-on-reload-rtl.html, but the |
| test still fails because of timing differences between OS X and iOS. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _didCommitLayerTree:]): |
| (-[WKWebView _layerTreeCommitComplete]): |
| (-[WKWebView _restorePageStateToExposedRect:scrollOrigin:scale:]): |
| (-[WKWebView _scrollToContentScrollPosition:scrollOrigin:]): |
| (-[WKWebView _restorePageStateToExposedRect:scale:]): Deleted. |
| (-[WKWebView _scrollToContentOffset:scrollOrigin:]): Deleted. |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::requestScroll): |
| (WebKit::PageClientImpl::layerTreeCommitComplete): |
| (WebKit::PageClientImpl::restorePageState): |
| * UIProcess/ios/WKContentView.h: |
| * UIProcess/ios/WKContentView.mm: |
| (-[WKContentView _layerTreeCommitComplete]): |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::layerTreeCommitComplete): |
| (WebKit::WebPageProxy::restorePageState): |
| * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm: |
| (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::restorePageState): |
| |
| 2016-03-18 Brady Eidson <beidson@apple.com> |
| |
| NSURLSession: Set download resume data when a download fails due to an error. |
| https://bugs.webkit.org/show_bug.cgi?id=155665 |
| |
| Reviewed by Alex Christensen. |
| |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): Save the resume data from the |
| NSError userInfo if it exists. |
| |
| 2016-03-18 Chris Dumez <cdumez@apple.com> |
| |
| Speculative revalidation requests do not have their HTTP user-agent set |
| https://bugs.webkit.org/show_bug.cgi?id=155620 |
| <rdar://problem/24657567> |
| |
| Reviewed by Brady Eidson. |
| |
| Speculative revalidation requests do not have their HTTP user-agent set |
| which could lead to different content getting returned by the server. |
| |
| To address the problem, we save the original request's 'user-agent' in |
| the disk cache and re-use it later on for speculative validation |
| requests. |
| |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: |
| (WebKit::NetworkCache::constructRevalidationRequest): |
| (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry): |
| * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp: |
| (WebKit::NetworkCache::SubresourceInfo::encode): |
| (WebKit::NetworkCache::SubresourceInfo::decode): |
| (WebKit::NetworkCache::SubresourceInfo::SubresourceInfo): |
| (WebKit::NetworkCache::SubresourceInfo::operator=): |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry): |
| (WebKit::NetworkCache::SubresourcesEntry::updateSubresourceLoads): |
| (WebKit::NetworkCache::SubresourcesEntry::decodeStorageRecord): Deleted. |
| * NetworkProcess/cache/NetworkCacheSubresourcesEntry.h: |
| (WebKit::NetworkCache::SubresourceInfo::SubresourceInfo): |
| |
| 2016-03-18 Enrica Casucci <enrica@apple.com> |
| |
| Add id attribute to _WKActivatedElementInfo. |
| https://bugs.webkit.org/show_bug.cgi?id=155666 |
| rdar://problem/25181956 |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/ios/InteractionInformationAtPosition.h: |
| * Shared/ios/InteractionInformationAtPosition.mm: |
| (WebKit::InteractionInformationAtPosition::encode): |
| (WebKit::InteractionInformationAtPosition::decode): |
| * UIProcess/API/Cocoa/_WKActivatedElementInfo.h: |
| * UIProcess/API/Cocoa/_WKActivatedElementInfo.mm: |
| (-[_WKActivatedElementInfo _initWithType:URL:location:title:ID:rect:image:]): |
| (-[_WKActivatedElementInfo ID]): |
| (-[_WKActivatedElementInfo _initWithType:URL:location:title:rect:image:]): Deleted. |
| * UIProcess/API/Cocoa/_WKActivatedElementInfoInternal.h: |
| * UIProcess/ios/WKActionSheetAssistant.mm: |
| (-[WKActionSheetAssistant showImageSheet]): |
| (-[WKActionSheetAssistant showLinkSheet]): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _showAttachmentSheet]): |
| (-[WKContentView _showLinkSheet]): |
| (-[WKContentView _dataForPreviewItemController:atPosition:type:]): |
| (-[WKContentView _presentedViewControllerForPreviewItemController:]): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::getPositionInformation): |
| |
| 2016-03-18 Antti Koivisto <antti@apple.com> |
| |
| Protect against excessive cache traversal |
| https://bugs.webkit.org/show_bug.cgi?id=155635 |
| rdar://problem/24241008 |
| |
| Reviewed by Darin Adler. |
| |
| We can't handle unlimited number of parallel cache traversal requests from the client. |
| We'll run out of dispatch queues and other system resources. CPU will spin. |
| |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::NetworkCache::Cache::traverse): |
| |
| Add limit of maximum 3 traversals. When exceeded return nothing and log an error. |
| |
| * NetworkProcess/cache/NetworkCache.h: |
| |
| 2016-03-18 Darin Adler <darin@apple.com> |
| |
| Disable Caches in Safari's Develop menu does not disable caches. |
| https://bugs.webkit.org/show_bug.cgi?id=64483 |
| |
| Reviewed by Antti Koivisto. |
| |
| * Shared/WebPreferencesDefinitions.h: Added ResourceCachingDisabled. |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetResourceCachingDisabled): Added. |
| (WKPreferencesGetResourceCachingDisabled): Added. |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: Ditto. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): Push ResourceCachingDisabled setting |
| into WebCore. |
| |
| 2016-03-18 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Try to fix GTK+ debug build after r198364. |
| |
| * WebProcess/gtk/WebProcessMainGtk.cpp: Use WTF::sleep(). |
| |
| 2016-03-17 Alex Christensen <achristensen@webkit.org> |
| |
| SpeculativeLoad needs to continue NetworkLoad when it receives a redirect response |
| https://bugs.webkit.org/show_bug.cgi?id=155612 |
| |
| Reviewed by Andy Estes. |
| |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: |
| (WebKit::NetworkCache::SpeculativeLoad::willSendRedirectedRequest): |
| Call continueWillSendRequest. Otherwise, we will hang a thread in the NetworkProcess |
| if we are using ResourceHandle or we will not call the willPerformHTTPRedirection |
| completion handler if we are using NetworkSession. This will cause us to stop loading |
| from the server after the maximum number of connections is reached. |
| |
| 2016-03-17 Tim Horton <timothy_horton@apple.com> |
| |
| Find-in-page indicator in Mail viewer is the wrong scale and cut off |
| https://bugs.webkit.org/show_bug.cgi?id=155605 |
| <rdar://problem/23948165> |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/mac/WKTextFinderClient.mm: |
| (-[WKTextFinderClient didGetImageForMatchResult:]): |
| Initialize the NSImage with the correct size, instead of inferring the |
| size from the bitmap, so that we don't lose information about device pixel ratio. |
| |
| 2016-03-17 Anders Carlsson <andersca@apple.com> |
| |
| Remove use of dyld_register_image_state_change_handler() in PluginProcessMac.mm |
| https://bugs.webkit.org/show_bug.cgi?id=155596 |
| |
| Reviewed by Dan Bernstein. |
| |
| Use _dyld_register_func_for_add_image instead which is API. Use dladdr to find the image path given its header. |
| |
| * Platform/spi/Cocoa/DyldSPI.h: Removed. |
| * PluginProcess/mac/PluginProcessMac.mm: |
| (WebKit::PluginProcess::platformInitializeProcess): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-03-17 Chris Dumez <cdumez@apple.com> |
| |
| Set the WebContent process's main thread QoS to USER-INTERACTIVE |
| https://bugs.webkit.org/show_bug.cgi?id=155595 |
| <rdar://problem/22534965> |
| |
| Reviewed by Antti Koivisto. |
| |
| Increase the WebContent process main thread's QoS to USER-INTERACTIVE |
| instead of USER-INITIATED as it is drawing UI. However, use a relative |
| priority of -1 so that its priority is lower than the one of the |
| scrolling thread. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| |
| 2016-03-17 Alex Christensen <achristensen@webkit.org> |
| |
| Support manually accepting invalid SSL certificates with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=155442 |
| <rdar://problem/24847398> |
| |
| Reviewed by Darin Adler. |
| |
| When we click continue after getting a warning about an invalid SSL certificate, we call |
| NSURLRequest setAllowsSpecificHTTPSCertificate in NetworkProcess::allowSpecificHTTPSCertificateForHost, |
| which stores information in CFNetwork about the specific invalid SSL certificate we want to accept. |
| If we see such a certificate during a server trust evaluation, we want to tell CFNetwork to accept it. |
| This fixes a loop when going to https://badssl.com, clicking on expired, and clicking continue. |
| |
| * NetworkProcess/NetworkDataTask.h: |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::didReceiveChallenge): |
| (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::transferSandboxExtensionToDownload): |
| (WebKit::certificatesMatch): |
| (WebKit::NetworkDataTask::allowsSpecificHTTPSCertificateForHost): |
| (WebKit::NetworkDataTask::suggestedFilename): |
| |
| 2016-03-17 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [Mac][cmake] Unreviewed buildfix after r198070. Just for fun. |
| |
| * PlatformMac.cmake: |
| |
| 2016-03-17 Andy Estes <aestes@apple.com> |
| |
| [Mac] Enable Content-Disposition: attachment sandbox |
| https://bugs.webkit.org/show_bug.cgi?id=155578 |
| <rdar://problem/21886326> |
| |
| Reviewed by Dan Bernstein. |
| |
| Covered by the existing set of attachment sandbox tests, which have always been run on Mac. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| |
| 2016-03-16 Beth Dakin <bdakin@apple.com> |
| |
| Provide NSSpellChecker spellChecking methods with the current insertion point |
| https://bugs.webkit.org/show_bug.cgi?id=155532 |
| -and corresponding- |
| rdar://problem/24066952 |
| |
| Reviewed by Simon Fraser. |
| |
| Pass the insertionPoint to the UIProcess |
| * UIProcess/TextChecker.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::checkTextOfParagraph): |
| (WebKit::WebPageProxy::getGuessesForWord): |
| (WebKit::WebPageProxy::requestCheckingOfString): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/efl/TextCheckerEfl.cpp: |
| (WebKit::TextChecker::checkTextOfParagraph): |
| (WebKit::TextChecker::getGuessesForWord): |
| (WebKit::TextChecker::requestCheckingOfString): |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| (WebKit::TextChecker::getGuessesForWord): |
| (WebKit::TextChecker::requestCheckingOfString): |
| (WebKit::TextChecker::checkTextOfParagraph): |
| * UIProcess/ios/TextCheckerIOS.mm: |
| (WebKit::TextChecker::checkTextOfParagraph): |
| (WebKit::TextChecker::getGuessesForWord): |
| (WebKit::TextChecker::requestCheckingOfString): |
| * UIProcess/mac/TextCheckerMac.mm: |
| (WebKit::TextChecker::checkTextOfParagraph): |
| (WebKit::TextChecker::getGuessesForWord): |
| (WebKit::TextChecker::ignoreWord): |
| (WebKit::TextChecker::requestCheckingOfString): |
| |
| Extract the insertion point from the VisibleSelection that WebCore has |
| passed. |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::insertionPointFromCurrentSelection): |
| (WebKit::WebEditorClient::checkTextOfParagraph): |
| (WebKit::WebEditorClient::getGuessesForWord): |
| (WebKit::WebEditorClient::requestCheckingOfString): |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| |
| 2016-03-16 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r192184): CleanMyDrive 2's tutorial window is blank |
| https://bugs.webkit.org/show_bug.cgi?id=155550 |
| <rdar://problem/24250689> |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _setDrawsTransparentBackground:]): |
| The app is using this SPI via key-value coding, so just keeping the implementation |
| is sufficient to make AppKit stop throwing an undefined key exception. |
| Log once that this is deprecated (... it's also SPI) and then forward to setDrawsBackground. |
| |
| 2016-03-16 Daniel Bates <dabates@apple.com> |
| |
| <video> and <audio> elements do not obey Content Security Policy on redirect |
| https://bugs.webkit.org/show_bug.cgi?id=155509 |
| <rdar://problem/10234844> |
| |
| Reviewed by Alex Christensen. |
| |
| Use 0ms as the maximum buffering time for media resource just as we do currently. |
| |
| * WebProcess/Network/WebLoaderStrategy.cpp: |
| (WebKit::maximumBufferingTime): |
| |
| 2016-03-16 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, rolling out r198235, r198240, r198241, and |
| r198252. |
| |
| Causing crashes on ARM |
| |
| Reverted changesets: |
| |
| "Remove compile time define for SEPARATED_HEAP" |
| https://bugs.webkit.org/show_bug.cgi?id=155508 |
| http://trac.webkit.org/changeset/198235 |
| |
| "Gardening: build fix after r198235." |
| http://trac.webkit.org/changeset/198240 |
| |
| "Build fix." |
| http://trac.webkit.org/changeset/198241 |
| |
| "Rename performJITMemcpy to something more inline with our |
| normal webkit function names" |
| https://bugs.webkit.org/show_bug.cgi?id=155525 |
| http://trac.webkit.org/changeset/198252 |
| |
| 2016-03-16 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r196803. |
| https://bugs.webkit.org/show_bug.cgi?id=155534 |
| |
| Introduced several rendering issues in popular websites |
| (Requested by KaL on #webkit). |
| |
| Reverted changeset: |
| |
| "[GTK] Limit the number of tiles according to the visible |
| area" |
| https://bugs.webkit.org/show_bug.cgi?id=126122 |
| http://trac.webkit.org/changeset/196803 |
| |
| 2016-03-15 Enrica Casucci <enrica@apple.com> |
| |
| Follow up to r195769. |
| https://bugs.webkit.org/show_bug.cgi?id=155519 |
| rdar://problem/25146483 |
| |
| Reviewed by Tim Horton. |
| |
| There are two code paths that lead to calling handleSyntheticClick() |
| where we need to check if the default action can be performed on the |
| data detector link. |
| Only one was covered in r195769 and this patch addresses the missing one. |
| I've also discovered that the point reported in DidNotHandleTapAsClick was |
| incorrectly always (0, 0) and I've fixed it. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::handleTap): |
| |
| 2016-03-15 Ryan Haddad <ryanhaddad@apple.com> |
| |
| Unreviewed, rolling out r198230. |
| |
| This change caused LayoutTests to fail on Mac |
| |
| Reverted changeset: |
| |
| "REGRESSION (r194660): Navigating to HTTPS sites may fail with |
| error" |
| https://bugs.webkit.org/show_bug.cgi?id=155455 |
| http://trac.webkit.org/changeset/198230 |
| |
| 2016-03-15 Oliver Hunt <oliver@apple.com> |
| |
| Remove compile time define for SEPARATED_HEAP |
| https://bugs.webkit.org/show_bug.cgi?id=155508 |
| |
| Reviewed by Mark Lam. |
| |
| Remove the feature define. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-03-15 Daniel Bates <dabates@apple.com> |
| |
| REGRESSION (r194660): Navigating to HTTPS sites may fail with error |
| https://bugs.webkit.org/show_bug.cgi?id=155455 |
| <rdar://problem/24308793> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Fixes an issue where navigating to an HTTPS site may fail because the Security Framework uses |
| a cache directory that it does not have permission to use. |
| |
| * Shared/mac/ChildProcessMac.mm: |
| (WebKit::codeSigningIdentifierForProcess): Queries the Security Framework for the code signed |
| bundle identifier/code signing identifier. |
| (WebKit::ChildProcess::initializeSandbox): Use the client identifier as part of the user directory |
| suffix. Verify that the client identifier matches the code signed bundled identifier/code |
| signing identifier for the code signed app/tool. Fix minor code style issue; use a C++-style cast |
| instead of a C-style cast when casting an OSStatus to a long. |
| (WebKit::findSecCodeForProcess): Deleted; incorporated logic into WebKit::codeSigningIdentifierForProcess(). |
| |
| 2016-03-15 Antti Koivisto <antti@apple.com> |
| |
| Add Antti to WebKit2 Owners file |
| https://bugs.webkit.org/show_bug.cgi?id=155504 |
| |
| Reviewed by Anders Carlsson and Sam Weinig. |
| |
| * Owners: |
| |
| 2016-03-15 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| EFL build has been broken since r198180 |
| https://bugs.webkit.org/show_bug.cgi?id=155488 |
| |
| Unreviewed build fix. |
| |
| * WebProcess/UserContent/WebUserContentController.h: Use ENABLE(USER_MESSAGE_HANDLERS) guard. |
| |
| 2016-03-15 Chris Dumez <cdumez@apple.com> |
| |
| Regression(r197939): ASSERTION FAILED: url.containsOnlyASCII() in URL.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=155449 |
| <rdar://problem/25134826> |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Bump WK2 Network Disk Cache version after r197939 as the new cache format |
| is not compatible with the old one and leads to assertions being hit when |
| browsing in Debug builds. |
| |
| SubresourceInfo used to only contain a boolean and would therefore be |
| serialized as "0" / "1". However, after r197939, a URL field was added |
| and when trying to decode old cache entries with the new format, we |
| would try to construct a URL from the String "0" or "1". This would |
| assert because these are not valid URLs. |
| |
| * NetworkProcess/cache/NetworkCacheStorage.h: |
| |
| 2016-03-14 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, rolling out r197981. |
| |
| Caused a massive PLT regression on Mac. |
| |
| Reverted changeset: |
| |
| "Font antialiasing (smoothing) changes when elements are |
| rendered into compositing layers" |
| https://bugs.webkit.org/show_bug.cgi?id=23364 |
| http://trac.webkit.org/changeset/197981 |
| |
| 2016-03-14 Sam Weinig <sam@webkit.org> |
| |
| Add a baseURL parameter to _WKUserStyleSheet |
| https://bugs.webkit.org/show_bug.cgi?id=155219 |
| |
| Reviewed by Tim Horton. |
| |
| - Moves to a model for user content where instead of using a WebCore::UserContentController |
| object, we implement the new WebCore::UserContentProvider interface (on the existing |
| WebUserContentController object). |
| - Uses this to maintain maps of UserStylesSheets and UserScripts along with their identifiers, |
| freeing up the URL, which had been acting as the identifier, to be used as the baseURL which |
| was what it was intended for. |
| - Adds a baseURL property to _WKUserStyleSheet. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new files. |
| |
| * Scripts/webkit/messages.py: |
| (headers_for_type): |
| Add support for sending WebUserContentControllerDataTypes. |
| |
| * Shared/WebUserContentControllerDataTypes.cpp: Added. |
| (WebKit::WebUserScriptData::encode): |
| (WebKit::WebUserScriptData::decode): |
| (WebKit::WebUserStyleSheetData::encode): |
| (WebKit::WebUserStyleSheetData::decode): |
| * Shared/WebUserContentControllerDataTypes.h: Added. |
| Add helper types for sending user content over IPC. |
| |
| * UIProcess/API/APIUserScript.cpp: |
| (API::UserScript::generateUniqueURL): |
| (API::UserScript::UserScript): |
| * UIProcess/API/APIUserScript.h: |
| * UIProcess/API/APIUserStyleSheet.cpp: |
| (API::UserStyleSheet::generateUniqueURL): |
| (API::UserStyleSheet::UserStyleSheet): |
| * UIProcess/API/APIUserStyleSheet.h: |
| Add identifiers for tracking across processes. |
| |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.h: |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.mm: |
| (-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:baseURL:userContentWorld:]): |
| (-[_WKUserStyleSheet baseURL]): |
| Add new initializer which takes a baseURL as well as an accessor for the baseURL. |
| |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::addProcess): |
| (WebKit::WebUserContentControllerProxy::addUserScript): |
| (WebKit::WebUserContentControllerProxy::removeUserScript): |
| (WebKit::WebUserContentControllerProxy::addUserStyleSheet): |
| (WebKit::WebUserContentControllerProxy::removeUserStyleSheet): |
| Pass identifiers as well as user content. |
| |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::addUserScript): |
| (WebKit::InjectedBundle::addUserStyleSheet): |
| Move user content in via move semantics rather than using a unique_ptr. |
| |
| (WebKit::InjectedBundle::removeUserScript): |
| (WebKit::InjectedBundle::removeUserStyleSheet): |
| (WebKit::InjectedBundle::removeUserScripts): |
| (WebKit::InjectedBundle::removeUserStyleSheets): |
| (WebKit::InjectedBundle::removeAllUserContent): |
| Update for new function signatures. |
| |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::WebUserContentController): |
| (WebKit::WebUserContentController::~WebUserContentController): |
| (WebKit::WebUserContentController::addUserContentWorlds): |
| (WebKit::WebUserContentController::removeUserContentWorlds): |
| (WebKit::WebUserContentController::addUserScripts): |
| (WebKit::WebUserContentController::removeUserScript): |
| (WebKit::WebUserContentController::removeAllUserScripts): |
| (WebKit::WebUserContentController::addUserStyleSheets): |
| (WebKit::WebUserContentController::removeUserStyleSheet): |
| (WebKit::WebUserContentController::removeAllUserStyleSheets): |
| (WebKit::WebUserContentController::addUserScriptMessageHandlers): |
| (WebKit::WebUserContentController::removeUserScriptMessageHandler): |
| (WebKit::WebUserContentController::addUserContentExtensions): |
| (WebKit::WebUserContentController::removeUserContentExtension): |
| (WebKit::WebUserContentController::removeAllUserContentExtensions): |
| (WebKit::WebUserContentController::addUserScriptInternal): |
| (WebKit::WebUserContentController::addUserScript): |
| (WebKit::WebUserContentController::removeUserScriptWithURL): |
| (WebKit::WebUserContentController::removeUserScriptInternal): |
| (WebKit::WebUserContentController::removeUserScripts): |
| (WebKit::WebUserContentController::addUserStyleSheetInternal): |
| (WebKit::WebUserContentController::addUserStyleSheet): |
| (WebKit::WebUserContentController::removeUserStyleSheetWithURL): |
| (WebKit::WebUserContentController::removeUserStyleSheetInternal): |
| (WebKit::WebUserContentController::removeUserStyleSheets): |
| (WebKit::WebUserContentController::removeAllUserContent): |
| (WebKit::WebUserContentController::forEachUserScript): |
| (WebKit::WebUserContentController::forEachUserStyleSheet): |
| * WebProcess/UserContent/WebUserContentController.h: |
| * WebProcess/UserContent/WebUserContentController.messages.in: |
| Convert to inheriting from UserContentProvider, rather than containing a UserContentController. |
| This means adding the storage for the user content, which has been simplified to avoid using |
| unique_ptrs. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::addUserScript): |
| (WebKit::WebPage::addUserStyleSheet): |
| (WebKit::WebPage::removeAllUserContent): |
| Update to call the WebUserContentController, rather than going to the UserContentController, which |
| no longer exists. |
| |
| * WebProcess/WebPage/WebPageGroupProxy.cpp: |
| (WebKit::WebPageGroupProxy::userContentController): |
| * WebProcess/WebPage/WebPageGroupProxy.h: |
| Return the WebUserContentController rather than old UserContentController. |
| |
| 2016-03-14 Joonghun Park <jh718.park@samsung.com> |
| |
| Purge PassRefPtr from ArrayBuffer, ArchiveResource, Pasteboard, LegacyWebArchive and DataObjectGtk |
| https://bugs.webkit.org/show_bug.cgi?id=150497 |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/APIWebArchive.mm: |
| (API::WebArchive::WebArchive): |
| * Shared/APIWebArchiveResource.mm: |
| (API::WebArchiveResource::data): |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::addArchiveResource): |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::bufferForType): |
| (WebKit::WebPlatformStrategies::readBufferFromPasteboard): |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| * WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm: |
| (WebKit::WebEditorClient::documentFragmentFromAttributedString): |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::WebDragClient::declareAndWriteDragImage): |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::webArchiveData): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::resourceDataForFrame): |
| |
| 2016-03-14 Oliver Hunt <oliver@apple.com> |
| |
| Temporarily disable the separated heap. |
| https://bugs.webkit.org/show_bug.cgi?id=155472 |
| |
| Reviewed by Geoffrey Garen. |
| |
| Temporarily disable this. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-03-14 Beth Dakin <bdakin@apple.com> |
| |
| [iOS] WKPreviewAction conforms to NSCopying but doesn’t override - |
| copyWithZone: |
| https://bugs.webkit.org/show_bug.cgi?id=155395 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/API/Cocoa/WKPreviewActionItem.mm: |
| (-[WKPreviewAction copyWithZone:]): |
| |
| 2016-03-14 Anders Carlsson <andersca@apple.com> |
| |
| Remove usage of -[UIGestureRecognizer requireOtherGestureToFail:] |
| https://bugs.webkit.org/show_bug.cgi?id=155461 |
| rdar://problem/25143282 |
| |
| Reviewed by Beth Dakin. |
| |
| Use -[UIGestureRecognizer requireGestureRecognizerToFail:] instead, which has been API ever since UIGestureRecognizer was added. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _createAndConfigureDoubleTapGestureRecognizer]): |
| |
| 2016-03-14 Anders Carlsson <andersca@apple.com> |
| |
| REGRESSION (r191691): Can't Share Selected Text |
| https://bugs.webkit.org/show_bug.cgi?id=155459 |
| rdar://problem/24893625 |
| |
| Reviewed by Tim Horton. |
| |
| Add the selected text as well. Somehow this got lost in the refactoring. |
| |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (WebKit::WebContextMenuProxyMac::createShareMenuItem): |
| |
| 2016-03-14 Tim Horton <timothy_horton@apple.com> |
| |
| Revert r194125 and r194186: We're going to fix this a different way. |
| |
| * Shared/NativeWebGestureEvent.h: |
| * Shared/mac/NativeWebGestureEventMac.mm: |
| (WebKit::pointForEvent): |
| (WebKit::NativeWebGestureEvent::NativeWebGestureEvent): |
| (WebKit::distanceForTouches): Deleted. |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView selectFindMatch:completionHandler:]): |
| (-[WKWebView _web_superInputContext]): |
| (-[WKWebView touchesBeganWithEvent:]): Deleted. |
| (-[WKWebView touchesMovedWithEvent:]): Deleted. |
| (-[WKWebView touchesEndedWithEvent:]): Deleted. |
| (-[WKWebView touchesCancelledWithEvent:]): Deleted. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView namesOfPromisedFilesDroppedAtDestination:]): |
| (-[WKView initWithFrame:processPool:configuration:webView:]): |
| (-[WKView touchesBeganWithEvent:]): Deleted. |
| (-[WKView touchesMovedWithEvent:]): Deleted. |
| (-[WKView touchesEndedWithEvent:]): Deleted. |
| (-[WKView touchesCancelledWithEvent:]): Deleted. |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::WebViewImpl): |
| (WebKit::WebViewImpl::magnifyWithEvent): |
| (WebKit::WebViewImpl::smartMagnifyWithEvent): |
| (WebKit::WebViewImpl::rotateWithEvent): |
| (WebKit::WebViewImpl::touchesOrderedByAge): Deleted. |
| (WebKit::WebViewImpl::touchesBeganWithEvent): Deleted. |
| (WebKit::WebViewImpl::touchesMovedWithEvent): Deleted. |
| (WebKit::WebViewImpl::touchesEndedWithEvent): Deleted. |
| (WebKit::WebViewImpl::touchesCancelledWithEvent): Deleted. |
| |
| 2016-03-14 Anders Carlsson <andersca@apple.com> |
| |
| Fix build. |
| |
| Create an empty PDF selection. |
| |
| * Shared/mac/PDFKitImports.h: |
| * Shared/mac/PDFKitImports.mm: |
| (WebKit::pdfSelectionClass): |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::nextMatchForString): |
| |
| 2016-03-14 Beth Dakin <bdakin@apple.com> |
| |
| Unable to commit previews in Mobile Safari |
| https://bugs.webkit.org/show_bug.cgi?id=155450 |
| -and corresponding- |
| rdar://problem/25135529 |
| |
| Reviewed by Tim Horton. |
| |
| _uiDelegateProvidedPreviewingViewController was being consulted before |
| invoking the old SPI, which was always wrong. It should have been consulted |
| before calling the new API! But also, it doesn’t seem to be necessary at all |
| since [WKContentView _previewItemController:commitPreview:] is only invoked |
| when a custom view controller has been provided. |
| |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _registerPreview]): |
| (-[WKContentView _unregisterPreview]): |
| (-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]): |
| (-[WKContentView _presentedViewControllerForPreviewItemController:]): |
| (-[WKContentView _previewItemController:commitPreview:]): |
| |
| 2016-03-14 Brent Fulgham <bfulgham@apple.com> |
| |
| PingHandle delete's itself but pointer is still used by handleDataURL |
| https://bugs.webkit.org/show_bug.cgi?id=154752 |
| <rdar://problem/24872347> |
| |
| Reviewed by Alex Christensen. |
| |
| When a PingLoad is destroyed, we should tell its client so that the client can clear the pointer it |
| holds to the element to avoid accidentally attempting to use deallocated memory. |
| |
| * NetworkProcess/PingLoad.h: |
| (WebKit::PingLoad::~PingLoad): Notify the client we are being destroyed. |
| |
| 2016-03-14 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix the GTK+ build after r198124. |
| |
| WebsiteDataTypes is now an OptionSet. |
| |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkit_web_context_clear_cache): |
| |
| 2016-03-14 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Reimplement webkit_web_context_clear_cache functionality. |
| https://bugs.webkit.org/show_bug.cgi?id=146041 |
| |
| Reviewed by Michael Catanzaro. |
| |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkit_web_context_clear_cache): |
| |
| 2016-03-14 Jeremy Huddleston Sequoia <jeremyhu@apple.com> |
| |
| Install WebKit2 WebProcess NetworkProcess on OSX when not building the Mac PORT |
| https://bugs.webkit.org/show_bug.cgi?id=152651 |
| |
| Reviewed by Philippe Normand. |
| |
| * CMakeLists.txt: |
| |
| 2016-03-13 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Remove ENABLE(ES6_TEMPLATE_LITERAL_SYNTAX) guards |
| https://bugs.webkit.org/show_bug.cgi?id=155417 |
| |
| Reviewed by Yusuke Suzuki. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-03-13 Dan Bernstein <mitz@apple.com> |
| |
| [Mac] Injected bundle in relocatable WebContent service can’t use XPC services from other relocatable frameworks |
| https://bugs.webkit.org/show_bug.cgi?id=155414 |
| <rdar://problem/24428418> |
| |
| Reviewed by Sam Weinig. |
| |
| * Configurations/DebugRelease.xcconfig: |
| Set WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT to NO, because |
| engineering builds are ad-hoc signed and therefore can’t have a private entitlement. |
| |
| * Configurations/WebContent-OSX.entitlements: Added. Includes the XPC domain extension |
| entitlement. |
| |
| * Configurations/WebContentService.xcconfig: |
| Set WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT to YES if not already set |
| and the framework is relocatable. Set CODE_SIGN_ENTITLEMENTS to the new entitlements file |
| if the domain extension entitlement is needed. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Added reference to new file. |
| |
| 2016-03-13 Dean Jackson <dino@apple.com> |
| |
| <attachment> should be a runtime-enabled feature |
| https://bugs.webkit.org/show_bug.cgi?id=155413 |
| <rdar://problem/25120753> |
| |
| Reviewed by Sam Weinig and Anders Carlsson. |
| |
| Add an internal setting on WKWebViewConfiguration |
| to enable the <attachment> element support. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _initializeWithConfiguration:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration init]): |
| (-[WKWebViewConfiguration copyWithZone:]): |
| (-[WKWebViewConfiguration _attachmentElementEnabled]): |
| (-[WKWebViewConfiguration _setAttachmentElementEnabled:]): |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-03-12 Sam Weinig <sam@webkit.org> |
| |
| WebKit can easily crash below NetworkSession::dataTaskForIdentifier() with NSURLSession enabled |
| <rdar://problem/25129946> |
| https://bugs.webkit.org/show_bug.cgi?id=155401 |
| |
| Reviewed by Alex Christensen. |
| |
| The issue was that NSURLSessionDataTasks can continue to invoke their NSURLSession's delegate methods |
| after -[NSURLSession invalidateAndCancel] is called. So, when the NetworkSession was destroyed, and |
| still had outstanding data tasks, the session delegate would get called, try to use the session, and |
| crash. To fix this I: |
| |
| - Made NetworkSession RefCounted. |
| - Gave NetworkSession two delegates, one for each NSURLSession. |
| - Made each delegate have a strong reference to the NetworkSession that gets cleared out in the |
| newly implemented URLSession:didBecomeInvalidWithError: method. |
| - Changed from simply destroying the NetworkSession in SessionTracker::destroySession(), to derefing |
| it and explicitly calling invalidateAndCancel on the two associated NSURLSessions (which in turn |
| eventually cause the URLSession:didBecomeInvalidWithError: to fire). |
| - To ensure the correct lifetime of the WebCore::NetworkStorageSession, I made it a member of the |
| NetworkSession. This also allowed some simplification inside SessionTracker. |
| |
| * NetworkProcess/NetworkDataTask.h: |
| (WebKit::NetworkDataTask::setPendingDownload): |
| (WebKit::NetworkDataTask::pendingDownloadLocation): |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkSession::sessionID): |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| (WebKit::NetworkDataTask::~NetworkDataTask): |
| (WebKit::NetworkDataTask::willPerformHTTPRedirection): |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate initWithNetworkSession:]): |
| (-[WKNetworkSessionDelegate URLSession:didBecomeInvalidWithError:]): |
| (WebKit::NetworkSession::setCustomProtocolManager): |
| (WebKit::NetworkSession::create): |
| (WebKit::NetworkSession::defaultSession): |
| (WebKit::NetworkSession::NetworkSession): |
| (WebKit::NetworkSession::~NetworkSession): |
| (WebKit::NetworkSession::invalidateAndCancel): |
| (WebKit::NetworkSession::networkStorageSession): |
| (WebKit::NetworkSession::clearCredentials): |
| * NetworkProcess/mac/RemoteNetworkingContext.mm: |
| (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession): |
| * Shared/SessionTracker.cpp: |
| (WebKit::identifierBase): |
| (WebKit::SessionTracker::getIdentifierBase): |
| (WebKit::SessionTracker::setIdentifierBase): |
| (WebKit::staticSessionMap): |
| (WebKit::SessionTracker::networkSession): |
| (WebKit::SessionTracker::storageSession): |
| (WebKit::staticStorageSessionMap): |
| (WebKit::SessionTracker::sessionID): |
| (WebKit::SessionTracker::setSession): |
| (WebKit::SessionTracker::destroySession): |
| (WebKit::SessionTracker::forEachNetworkStorageSession): |
| (WebKit::storageSessionToID): Deleted. |
| (WebKit::SessionTracker::storageSessionMap): Deleted. |
| * Shared/SessionTracker.h: |
| * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: |
| (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession): |
| (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts): |
| (WebKit::WebFrameNetworkingContext::localFileContentSniffingEnabled): |
| (WebKit::WebFrameNetworkingContext::scheduledRunLoopPairs): |
| * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp: |
| (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession): |
| (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts): |
| (WebKit::WebFrameNetworkingContext::WebFrameNetworkingContext): |
| |
| 2016-03-12 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Delete dead SVG Font code |
| https://bugs.webkit.org/show_bug.cgi?id=154718 |
| |
| Reviewed by Antti Koivisto. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-03-12 Beth Dakin <bdakin@apple.com> |
| |
| Make preview inline navigation work API |
| https://bugs.webkit.org/show_bug.cgi?id=155383 |
| -and corresponding- |
| rdar://problem/25117985 |
| |
| Reviewed by Dan Bernstein. |
| |
| With this patch: |
| _WKElementInfo is now WKElementInfo in file and class names. Header is now |
| public. |
| |
| _WKPreviewElementInfo is now WKPreviewElementInfo in file and class names. |
| Header is now public. |
| |
| _WKPreviewAction is now WKPreviewActionItem in filenames (header is now |
| public), the protocol _WKPreviewActionItem is now WKPreviewActionItem, and |
| the _WKPreviewAction class is now WKPreviewAction. (The internal header is |
| still project, of course.) |
| and |
| WKPreviewActionIdentifiersPrivate.h/mm is now |
| WKPreviewActionItemIdentifiers.h/mm and all the the identifiers have been |
| updated. Header is now public. |
| |
| * Shared/API/Cocoa/WebKit.h: |
| * UIProcess/API/Cocoa/WKElementInfo.h: Copied from UIProcess/API/Cocoa/_WKElementInfo.h. |
| * UIProcess/API/Cocoa/WKElementInfo.mm: Copied from UIProcess/API/Cocoa/_WKElementInfo.mm. |
| (-[WKElementInfo copyWithZone:]): |
| (-[_WKElementInfo copyWithZone:]): Deleted. |
| * UIProcess/API/Cocoa/WKElementInfoInternal.h: Copied from UIProcess/API/Cocoa/_WKElementInfoInternal.h. |
| * UIProcess/API/Cocoa/WKPreviewActionIdentifiersPrivate.h: Removed. |
| * UIProcess/API/Cocoa/WKPreviewActionIdentifiersPrivate.mm: Removed. |
| * UIProcess/API/Cocoa/WKPreviewActionItem.h: Copied from UIProcess/API/Cocoa/_WKPreviewAction.h. |
| * UIProcess/API/Cocoa/WKPreviewActionItem.mm: Copied from UIProcess/API/Cocoa/_WKPreviewAction.mm. |
| * UIProcess/API/Cocoa/WKPreviewActionItemIdentifiers.h: Copied from UIProcess/API/Cocoa/WKPreviewActionIdentifiersPrivate.h. |
| * UIProcess/API/Cocoa/WKPreviewActionItemIdentifiers.mm: Copied from UIProcess/API/Cocoa/WKPreviewActionIdentifiersPrivate.mm. |
| * UIProcess/API/Cocoa/WKPreviewActionItemInternal.h: Copied from UIProcess/API/Cocoa/_WKPreviewActionInternal.h. |
| * UIProcess/API/Cocoa/WKPreviewElementInfo.h: Copied from UIProcess/API/Cocoa/_WKPreviewElementInfo.h. |
| * UIProcess/API/Cocoa/WKPreviewElementInfo.mm: Copied from UIProcess/API/Cocoa/_WKPreviewElementInfo.mm. |
| (-[WKPreviewElementInfo _initWithLinkURL:]): |
| (-[_WKPreviewElementInfo _initWithLinkURL:]): Deleted. |
| * UIProcess/API/Cocoa/WKPreviewElementInfoInternal.h: Copied from UIProcess/API/Cocoa/_WKPreviewElementInfoInternal.h. |
| * UIProcess/API/Cocoa/WKUIDelegate.h: |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h: |
| * UIProcess/API/Cocoa/_WKElementInfo.h: Removed. |
| * UIProcess/API/Cocoa/_WKElementInfo.mm: Removed. |
| * UIProcess/API/Cocoa/_WKElementInfoInternal.h: Removed. |
| * UIProcess/API/Cocoa/_WKPreviewAction.h: Removed. |
| * UIProcess/API/Cocoa/_WKPreviewAction.mm: Removed. |
| * UIProcess/API/Cocoa/_WKPreviewActionInternal.h: Removed. |
| * UIProcess/API/Cocoa/_WKPreviewElementInfo.h: Removed. |
| * UIProcess/API/Cocoa/_WKPreviewElementInfo.mm: Removed. |
| * UIProcess/API/Cocoa/_WKPreviewElementInfoInternal.h: Removed. |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]): |
| (previewIdentifierForElementAction): |
| (-[WKContentView _presentedViewControllerForPreviewItemController:]): |
| (-[WKContentView _previewItemController:commitPreview:]): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-03-12 Jeremy Huddleston Sequoia <jeremyhu@apple.com> |
| |
| [GTK][Mac] Use DYLD_LIBRARY_PATH on OSX rather then LD_LIBRARY_PATH |
| https://bugs.webkit.org/show_bug.cgi?id=152650 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * PlatformGTK.cmake: |
| |
| 2016-03-11 John Wilander <wilander@apple.com> |
| |
| Move prevalent resource classifier from WebCore to WebKit. |
| https://bugs.webkit.org/show_bug.cgi?id=155242 |
| <rdar://problem/24913272> |
| |
| Reviewed by Andy Estes. |
| |
| * UIProcess/WebResourceLoadStatisticsStore.cpp: |
| (WebKit::WebResourceLoadStatisticsStore::create): |
| (WebKit::WebResourceLoadStatisticsStore::~WebResourceLoadStatisticsStore): |
| (WebKit::hasPrevalentResourceCharacteristics): |
| (WebKit::classifyPrevalentResources): |
| - Moved these two functions from WebCore. |
| (WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated): |
| - Calls processStatistics with a lamda function to classify prevalent resources. |
| * WebKit2.xcodeproj/project.pbxproj: |
| - Fixed the ordering of source files. |
| |
| 2016-03-11 Sam Weinig <sam@webkit.org> |
| |
| WebKit needs a new sandbox profile addition for DataDetectors |
| <rdar://problem/25091102> |
| |
| Reviewed by Brent Fulgham. |
| |
| * WebProcess/com.apple.WebProcess.sb.in: |
| |
| 2016-03-11 Chris Dumez <cdumez@apple.com> |
| |
| Regression(r198040): WebKit2.DocumentStartUserScriptAlertCrashTest API test is crashing in debug |
| https://bugs.webkit.org/show_bug.cgi?id=155382 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| r198040 introduced an assertion to make sure we never call |
| applicationBundleIsEqualTo() before setApplicationBundleIdentifier() |
| is called. This new assertion found a bug as it turns out we were |
| calling setApplicationBundleIdentifier() too late during the |
| WebProcess initialization and some runtime applications checks were |
| already done by then. |
| |
| To address the problem, this patch moves the |
| setApplicationBundleIdentifier() call as early as possible during |
| the WebProcess and the NetworkProcess initialization. It also moves |
| it to the Cocoa specific files for clarity. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::initializeNetworkProcess): |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: |
| (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2016-03-11 Enrica Casucci <enrica@apple.com> |
| |
| Use only selected text for Look up. |
| https://bugs.webkit.org/show_bug.cgi?id=155380 |
| |
| Reviewed by Tim Horton. |
| |
| The corresponding piece that uses the extended context for Look up |
| is not ready yet. For the moment default to retrieving the selected text. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _lookup:]): |
| |
| 2016-03-11 Chelsea Pugh <cpugh@apple.com> |
| |
| [iOS] Allow clients to specify text suggestions to be used for a form input session |
| https://bugs.webkit.org/show_bug.cgi?id=155343 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/_WKFormInputSession.h: |
| * UIProcess/API/Cocoa/_WKInputDelegate.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKFormInputSession suggestions]): Add a getter for suggestions. |
| (-[WKFormInputSession setSuggestions:]): Add a setter, which calls setSuggestions with our suggestions on the input delegate. |
| (-[WKContentView insertTextSuggestion:]): Call _webView:insertTextSuggestion:inInputSession: on our input delegate so clients know |
| a text suggestion was tapped. |
| |
| 2016-03-11 Anders Carlsson <andersca@apple.com> |
| |
| Creating and releasing a WKBackForwardListItem crashes |
| https://bugs.webkit.org/show_bug.cgi?id=155376 |
| rdar://problem/17377712 |
| |
| Reviewed by Dan Bernstein. |
| |
| Make init unavailable. |
| |
| * UIProcess/API/Cocoa/WKBackForwardListItem.h: |
| |
| 2016-03-11 Beth Dakin <bdakin@apple.com> |
| |
| Follow-up to: |
| |
| _WKPreviewAction should be in an internal header |
| https://bugs.webkit.org/show_bug.cgi?id=155370 |
| |
| Rubber-stamped by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/_WKPreviewActionInternal.h: |
| |
| 2016-03-11 Beth Dakin <bdakin@apple.com> |
| |
| _WKPreviewAction should be in an internal header |
| https://bugs.webkit.org/show_bug.cgi?id=155370 |
| |
| Reviewed by Tim Horton. |
| |
| Move _WKPreviewAction to an Internal header since only the protocol needs to |
| be SPI. |
| * UIProcess/API/Cocoa/_WKPreviewAction.h: |
| * UIProcess/API/Cocoa/_WKPreviewAction.mm: |
| * UIProcess/API/Cocoa/_WKPreviewActionInternal.h: Added. |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-03-11 Yusuke Suzuki <utatane.tea@gmail.com> |
| |
| [ES6] Implement Reflect.set without receiver support |
| https://bugs.webkit.org/show_bug.cgi?id=155024 |
| |
| Reviewed by Geoffrey Garen. |
| |
| NPJSObject::setProperty may call `methodTable()->put` operation, but we intentionally do not propagate it to the caller's ::put. |
| In the current implementation, we just use the result of ::setProperty call. |
| This is `true` when ::setProperty attempts to call `methodTable()->put`. |
| In ::setProperty, after calling `methodTable()->put`, ::setProperty function clears the exception state. |
| So this is not the same semantics to the simple data property store. Rather, this is like the accessor. |
| In ECMA262 [[Set]], it returns true if there is a setter. So we just use the returned value of ::setProperty. |
| This indicates that there is a setter for the given [[Set]] operation. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::put): |
| * WebProcess/Plugins/Netscape/JSNPObject.h: |
| |
| 2016-03-10 David Kilzer <ddkilzer@apple.com> |
| |
| REGRESSION (r197986): Don't try to link to undefined $(WEBKIT_SYSTEM_INTERFACE_LIBRARY) |
| |
| Follow-up build fix for: |
| AX: Force allow user zoom |
| <https://bugs.webkit.org/show_bug.cgi?id=155056> |
| |
| Fixes the following build failure: |
| ld: library not found for -l-lAccessibility |
| clang: error: linker command failed with exit code 1 (use -v to see invocation) |
| |
| * Configurations/WebKit.xcconfig: Remove |
| "-l$(WEBKIT_SYSTEM_INTERFACE_LIBRARY)" from OTHER_LDFLAGS since |
| that macro is not defined, and there is no need to link to |
| libWebKitSystemInterface.a. |
| |
| 2016-03-10 Jeremy Jones <jeremyj@apple.com> |
| |
| Set AVURLAssetUsesNoPersistentCacheKey on AVAsset to match caching policy. |
| https://bugs.webkit.org/show_bug.cgi?id=155117 |
| rdar://problem/6802240 |
| |
| Reviewed by Simon Fraser. |
| |
| Make AVAsset AVURLAssetUsesNoPersistentCacheKey match !m_websiteDataStore->isPersistent() |
| This will prevent persistent media caches when webkit is using in-memory caching. |
| |
| * Shared/WebPageCreationParameters.cpp: Add mediaShouldUsePersistentCache. |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::creationParameters): Add mediaShouldUsePersistentCache. |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::mediaShouldUsePersistentCache): Added. |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::m_mediaUsesPersistentCache): Added. |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::mediaShouldUsePersistentCache): Added. |
| |
| 2016-03-10 Nan Wang <n_wang@apple.com> |
| |
| AX: Force allow user zoom |
| https://bugs.webkit.org/show_bug.cgi?id=155056 |
| |
| Reviewed by Simon Fraser. |
| |
| Linked libAccessibility library so that we can observe the accessibility |
| setting change for the force always user scalable feature. |
| |
| * Configurations/WebKit.xcconfig: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (shouldAllowPictureInPictureMediaPlayback): |
| (forceAlwaysUserScalableChangedCallback): |
| (-[WKWebView _initializeWithConfiguration:]): |
| (-[WKWebView dealloc]): |
| (-[WKWebView _navigationGestureDidEnd]): |
| (-[WKWebView _updateForceAlwaysUserScalable]): |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::setViewportConfigurationMinimumLayoutSize): |
| (WebKit::WebPageProxy::updateForceAlwaysUserScalable): |
| (WebKit::WebPageProxy::setMaximumUnobscuredSize): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::disableInspectorNodeSearch): |
| (WebKit::WebPage::updateForceAlwaysUserScalable): |
| (WebKit::innerFrameQuad): |
| |
| 2016-03-10 Simon Fraser <simon.fraser@apple.com> |
| |
| Font antialiasing (smoothing) changes when elements are rendered into compositing layers |
| https://bugs.webkit.org/show_bug.cgi?id=23364 |
| |
| Reviewed by Tim Horton. |
| |
| Send the ContentsFormat to the UI process (but nothing happens to it there yet). |
| |
| Allow internal clients to turn off smoothed layer text, so that WebKitTestRunner |
| can disable it. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * Shared/mac/RemoteLayerTreeTransaction.h: |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode): |
| (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode): |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextEnableSmoothedLayerText): |
| * UIProcess/API/C/WKContextPrivate.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::createNewWebProcess): |
| (WebKit::WebProcessPool::enableSmoothedLayerText): |
| (WebKit::WebProcessPool::WebProcessPool): Deleted. |
| * UIProcess/WebProcessPool.h: |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp: |
| (WebKit::PlatformCALayerRemote::setContentsFormat): |
| (WebKit::PlatformCALayerRemote::contentsFormat): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::enableSmoothedLayerText): |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: |
| |
| 2016-03-10 Enrica Casucci <enrica@apple.com> |
| |
| Expose additional WKDataDetectorTypes. |
| https://bugs.webkit.org/show_bug.cgi?id=155331 |
| rdar://problem/24175813 |
| |
| Reviewed by Tim Horton. |
| |
| Adding API to enable data detection of tracking numbers, |
| flight number and spotlight suggestions. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (fromWKDataDetectorTypes): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| |
| 2016-03-10 Beth Dakin <bdakin@apple.com> |
| |
| defaultActions in UIDelegate method |
| _webView:previewingViewControllerForElement:defaultActions: need to be |
| use-able by a client |
| https://bugs.webkit.org/show_bug.cgi?id=155304 |
| -and corresponding- |
| rdar://problem/24269296 |
| |
| Reviewed by Anders Carlsson. |
| |
| This patch adds a new protocol, WKPreviewActionItem, which is a sub-protocol |
| of UIPreviewActionItem. The new protocol adds an identifier so that clients |
| can identify which of our default actions they want to use. In order for a |
| client to use our default action items, they need to return those actions in |
| their UIViewController's implementation of previewActionItems. |
| |
| Change the defaultActions to NSArray <id <WKPreviewActionItem>> * |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| |
| This new file defines our sub-protocol and sub-class for WKPreviewActions. |
| * UIProcess/API/Cocoa/_WKPreviewAction.h: Added. |
| * UIProcess/API/Cocoa/_WKPreviewAction.mm: Added. |
| (+[_WKPreviewAction actionWithIdentifier:title:style:handler:]): |
| |
| New BOOL _uiDelegateProvidedPreviewingViewController keeps track of whether |
| the client returned a view controller from |
| _webView:previewingViewControllerForElement:defaultActions:. If they did |
| return a view controller, then we should invoke |
| _webView:commitPreviewingViewController: at commit time. If they returned |
| nil, then they indicated that WebKit should continue with default previewing |
| behavior, so we will not invoke the UIDelegate’s commit method. |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _registerPreview]): |
| (-[WKContentView _unregisterPreview]): |
| (-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]): |
| |
| In order for our default actions to be useful, we have to create |
| _WKPreviewActions. |
| (-[WKContentView _presentedViewControllerForPreviewItemController:]): |
| |
| Only invoke _webView:commitPreviewedViewController: if |
| _uiDelegateProvidedPreviewingViewController is YES. |
| (-[WKContentView _previewItemController:commitPreview:]): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-03-10 Jer Noble <jer.noble@apple.com> |
| |
| Add WebCore, WebKit, & WebKit2 preference/setting to enable Main Content heuristic. |
| https://bugs.webkit.org/show_bug.cgi?id=155326 |
| <rdar://problem/25095408> |
| |
| Reviewed by Beth Dakin. |
| |
| Add SPI to get and set the new preference. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetMainContentUserGestureOverrideEnabled): |
| (WKPreferencesGetMainContentUserGestureOverrideEnabled): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _initializeWithConfiguration:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration init]): |
| (-[WKWebViewConfiguration copyWithZone:]): |
| (-[WKWebViewConfiguration _mainContentUserGestureOverrideEnabled]): |
| (-[WKWebViewConfiguration _setMainContentUserGestureOverrideEnabled:]): |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-03-10 Alex Christensen <achristensen@webkit.org> |
| |
| Remove firing assertion after r197865. |
| https://bugs.webkit.org/show_bug.cgi?id=155137 |
| rdar://problem/25096835 |
| |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveData:]): |
| This assertion was firing. I'm looking into why. |
| |
| 2016-03-07 Jer Noble <jer.noble@apple.com> |
| |
| Add separate WK and WK2 preferences for requiring user gestures for video media, distinct from user gestures for media generally |
| https://bugs.webkit.org/show_bug.cgi?id=155141 |
| |
| Reviewed by Beth Dakin. |
| |
| Add a new preference, videoPlaybackRequiresUserGesture, distinct from mediaPlaybackRequiresUserGesture. Legacy clients of |
| mediaPlaybackRequiresUserGesture will still be able to use it normally, as setting that preference to true will effectively |
| set both audioPlaybackRequiresUserGesture and videoPlaybackRequiresUserGesture to true. Make these preferences all available |
| universally, rather than just on PLATFORM(IOS). This requires adding a definition for -setRequiresUserActionForMediaPlayback: |
| and -requiresUserActionForMediaPlayback on !PLATFORM(IOS). |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetVideoPlaybackRequiresUserGesture): |
| (WKPreferencesGetVideoPlaybackRequiresUserGesture): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _initializeWithConfiguration:]): |
| (-[WKWebView _setObscuredInsets:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration init]): |
| (-[WKWebViewConfiguration encodeWithCoder:]): |
| (-[WKWebViewConfiguration initWithCoder:]): |
| (-[WKWebViewConfiguration copyWithZone:]): |
| (-[WKWebViewConfiguration requiresUserActionForMediaPlayback]): |
| (-[WKWebViewConfiguration setRequiresUserActionForMediaPlayback:]): |
| (-[WKWebViewConfiguration allowsInlineMediaPlayback]): |
| (-[WKWebViewConfiguration setAllowsInlineMediaPlayback:]): |
| (-[WKWebViewConfiguration _requiresUserActionForVideoPlayback]): |
| (-[WKWebViewConfiguration _setRequiresUserActionForVideoPlayback:]): |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-03-10 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r197943. |
| https://bugs.webkit.org/show_bug.cgi?id=155317 |
| |
| This change broke Windows, WinCairo, GTK and EFL builds |
| (Requested by ryanhaddad on #webkit). |
| |
| Reverted changeset: |
| |
| "Add a baseURL parameter to _WKUserStyleSheet" |
| https://bugs.webkit.org/show_bug.cgi?id=155219 |
| http://trac.webkit.org/changeset/197943 |
| |
| 2016-03-10 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] push media stream state to the UI process |
| https://bugs.webkit.org/show_bug.cgi?id=155281 |
| |
| Reviewed by Dean Jackson. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didCommitLoadForFrame): Don't clear m_mediaState, it is done in |
| WebPageProxy::resetState. This reverts a change added in r197929. |
| |
| |
| 2016-03-08 Sam Weinig <sam@webkit.org> |
| |
| Add a baseURL parameter to _WKUserStyleSheet |
| https://bugs.webkit.org/show_bug.cgi?id=155219 |
| |
| Reviewed by Tim Horton. |
| |
| - Moves to a model for user content where instead of using a WebCore::UserContentController |
| object, we implement the new WebCore::UserContentProvider interface (on the existing |
| WebUserContentController object). |
| - Uses this to maintain maps of UserStylesSheets and UserScripts along with their identifiers, |
| freeing up the URL, which had been acting as the identifier, to be used as the baseURL which |
| was what it was intended for. |
| - Adds a baseURL property to _WKUserStyleSheet. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new files. |
| |
| * Scripts/webkit/messages.py: |
| (headers_for_type): |
| Add support for sending WebUserContentControllerDataTypes. |
| |
| * Shared/WebUserContentControllerDataTypes.cpp: Added. |
| (WebKit::WebUserScriptData::encode): |
| (WebKit::WebUserScriptData::decode): |
| (WebKit::WebUserStyleSheetData::encode): |
| (WebKit::WebUserStyleSheetData::decode): |
| * Shared/WebUserContentControllerDataTypes.h: Added. |
| Add helper types for sending user content over IPC. |
| |
| * UIProcess/API/APIUserScript.cpp: |
| (API::UserScript::generateUniqueURL): |
| (API::UserScript::UserScript): |
| * UIProcess/API/APIUserScript.h: |
| * UIProcess/API/APIUserStyleSheet.cpp: |
| (API::UserStyleSheet::generateUniqueURL): |
| (API::UserStyleSheet::UserStyleSheet): |
| * UIProcess/API/APIUserStyleSheet.h: |
| Add identifiers for tracking across processes. |
| |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.h: |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.mm: |
| (-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:baseURL:userContentWorld:]): |
| (-[_WKUserStyleSheet baseURL]): |
| Add new initializer which takes a baseURL as well as an accessor for the baseURL. |
| |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::addProcess): |
| (WebKit::WebUserContentControllerProxy::addUserScript): |
| (WebKit::WebUserContentControllerProxy::removeUserScript): |
| (WebKit::WebUserContentControllerProxy::addUserStyleSheet): |
| (WebKit::WebUserContentControllerProxy::removeUserStyleSheet): |
| Pass identifiers as well as user content. |
| |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::addUserScript): |
| (WebKit::InjectedBundle::addUserStyleSheet): |
| Move user content in via move semantics rather than using a unique_ptr. |
| |
| (WebKit::InjectedBundle::removeUserScript): |
| (WebKit::InjectedBundle::removeUserStyleSheet): |
| (WebKit::InjectedBundle::removeUserScripts): |
| (WebKit::InjectedBundle::removeUserStyleSheets): |
| (WebKit::InjectedBundle::removeAllUserContent): |
| Update for new function signatures. |
| |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::WebUserContentController): |
| (WebKit::WebUserContentController::~WebUserContentController): |
| (WebKit::WebUserContentController::addUserContentWorlds): |
| (WebKit::WebUserContentController::removeUserContentWorlds): |
| (WebKit::WebUserContentController::addUserScripts): |
| (WebKit::WebUserContentController::removeUserScript): |
| (WebKit::WebUserContentController::removeAllUserScripts): |
| (WebKit::WebUserContentController::addUserStyleSheets): |
| (WebKit::WebUserContentController::removeUserStyleSheet): |
| (WebKit::WebUserContentController::removeAllUserStyleSheets): |
| (WebKit::WebUserContentController::addUserScriptMessageHandlers): |
| (WebKit::WebUserContentController::removeUserScriptMessageHandler): |
| (WebKit::WebUserContentController::addUserContentExtensions): |
| (WebKit::WebUserContentController::removeUserContentExtension): |
| (WebKit::WebUserContentController::removeAllUserContentExtensions): |
| (WebKit::WebUserContentController::addUserScriptInternal): |
| (WebKit::WebUserContentController::addUserScript): |
| (WebKit::WebUserContentController::removeUserScriptWithURL): |
| (WebKit::WebUserContentController::removeUserScriptInternal): |
| (WebKit::WebUserContentController::removeUserScripts): |
| (WebKit::WebUserContentController::addUserStyleSheetInternal): |
| (WebKit::WebUserContentController::addUserStyleSheet): |
| (WebKit::WebUserContentController::removeUserStyleSheetWithURL): |
| (WebKit::WebUserContentController::removeUserStyleSheetInternal): |
| (WebKit::WebUserContentController::removeUserStyleSheets): |
| (WebKit::WebUserContentController::removeAllUserContent): |
| (WebKit::WebUserContentController::forEachUserScript): |
| (WebKit::WebUserContentController::forEachUserStyleSheet): |
| * WebProcess/UserContent/WebUserContentController.h: |
| * WebProcess/UserContent/WebUserContentController.messages.in: |
| Convert to inheriting from UserContentProvider, rather than containing a UserContentController. |
| This means adding the storage for the user content, which has been simplified to avoid using |
| unique_ptrs. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::addUserScript): |
| (WebKit::WebPage::addUserStyleSheet): |
| (WebKit::WebPage::removeAllUserContent): |
| Update to call the WebUserContentController, rather than going to the UserContentController, which |
| no longer exists. |
| |
| * WebProcess/WebPage/WebPageGroupProxy.cpp: |
| (WebKit::WebPageGroupProxy::userContentController): |
| * WebProcess/WebPage/WebPageGroupProxy.h: |
| Return the WebUserContentController rather than old UserContentController. |
| |
| 2016-03-10 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r197923. |
| https://bugs.webkit.org/show_bug.cgi?id=155301 |
| |
| Rolling out this change due to breaking the build and |
| LayoutTests. (Requested by ryanhaddad on #webkit). |
| |
| Reverted changeset: |
| |
| "Font antialiasing (smoothing) changes when elements are |
| rendered into compositing layers" |
| https://bugs.webkit.org/show_bug.cgi?id=23364 |
| http://trac.webkit.org/changeset/197923 |
| |
| 2016-03-10 Chris Dumez <cdumez@apple.com> |
| |
| Speculative revalidation requests do not have their 'first party for cookies' URL set |
| https://bugs.webkit.org/show_bug.cgi?id=155284 |
| <rdar://problem/25053203> |
| |
| Reviewed by Antti Koivisto. |
| |
| Speculative revalidation requests did not have their 'first party for cookies' |
| URL set. This means the underlying NSURLRequest has a nil mainDocumentURL. |
| Without a way to determine whether the cookie is in a third-party context, |
| CFNetwork defaults to accepting all cookies for these resources. |
| |
| * NetworkProcess/cache/NetworkCacheCoders.cpp: |
| (WebKit::NetworkCache::Coder<WebCore::URL>::encode): |
| (WebKit::NetworkCache::Coder<WebCore::URL>::decode): |
| * NetworkProcess/cache/NetworkCacheCoders.h: |
| Add template specialization to support encoding / decoding WebCore::URL. |
| |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: |
| (WebKit::NetworkCache::constructRevalidationRequest): |
| Set the "first party for cookies" URL on the revalidation request. |
| |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::registerSubresourceLoad): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::saveToDiskIfReady): |
| Now keep the subresources' ResourceRequests, in addition to their key, so we can later |
| extract the 'first party for cookies' URL from the request and save it to disk. |
| |
| (WebKit::NetworkCache::SpeculativeLoadManager::registerLoad): |
| Pass the ResourceRequest in addition to the key to |
| PendingFrameLoad::registerSubresourceLoad(). |
| |
| (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry): |
| Add an extra SubresourceInfo parameter, in addition to the Entry, so we |
| have access to the first party for cookies URL. Pass this URL to |
| constructRevalidationRequest(). |
| |
| (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry): |
| Add an extra SubresourceInfo parameter, in addition to the Entry, so we |
| have access to the first party for cookies URL. |
| |
| (WebKit::NetworkCache::SpeculativeLoadManager::startSpeculativeRevalidation): |
| Pass the SubresourceInfo to preloadEntry(). |
| |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h: |
| |
| * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp: |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::encode): |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::decode): |
| Encode / Decode new firstPartyForCookies member. |
| |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry): |
| (WebKit::NetworkCache::SubresourcesEntry::updateSubresourceLoads): |
| Take SubresourceLoad objects in, instead of simple Key objects so we have |
| access to the ResourceRequest. We extract the first party for cookies URL |
| from the request and pass it to the SubresourceInfo constructor. |
| |
| * NetworkProcess/cache/NetworkCacheSubresourcesEntry.h: |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::SubresourceInfo): |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourceLoad::SubresourceLoad): |
| |
| 2016-02-22 Jer Noble <jer.noble@apple.com> |
| |
| Enable AVFoundationNSURLSessionEnabled by default |
| https://bugs.webkit.org/show_bug.cgi?id=154469 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| |
| 2016-03-10 Eric Carlson <eric.carlson@apple.com> |
| |
| Unreviewed, revert changes accidentally committed with previous patch. |
| |
| * WebProcess/com.apple.WebProcess.sb.in: |
| |
| 2016-03-10 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] push media stream state to the UI process |
| https://bugs.webkit.org/show_bug.cgi?id=155281 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageGetMediaState): New. |
| * UIProcess/API/C/WKPagePrivate.h: |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didCommitLoadForFrame): Clear m_mediaState. |
| (WebKit::WebPageProxy::isPlayingMediaDidChange): Call m_pageClient.isPlayingMediaDidChange when |
| audio or video state changes, call m_uiClient->isPlayingAudioDidChange when audio, vidoe, |
| or media stream state changes. |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::mediaStateFlags): New. |
| |
| 2016-03-09 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Artifacts when using web view background color |
| https://bugs.webkit.org/show_bug.cgi?id=155229 |
| |
| Reviewed by Mario Sanchez Prada. |
| |
| This is because when using a web view color, we fill with the |
| color every rectangle updated by the web process, but we should |
| always fill the entire backing store before rendering the actual |
| contents on top. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::display): Ensure the web process always |
| renders the whole visible rectangle when background is rendered by |
| the UI process. |
| |
| 2016-03-09 Simon Fraser <simon.fraser@apple.com> |
| |
| Font antialiasing (smoothing) changes when elements are rendered into compositing layers |
| https://bugs.webkit.org/show_bug.cgi?id=23364 |
| rdar://problem/7288429 |
| |
| Reviewed by Tim Horton. |
| |
| Send the ContentsFormat to the UI process (but nothing happens to it there yet). |
| |
| * Shared/mac/RemoteLayerTreeTransaction.h: |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode): |
| (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp: |
| (WebKit::PlatformCALayerRemote::setContentsFormat): |
| (WebKit::PlatformCALayerRemote::contentsFormat): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.h: |
| |
| 2016-03-09 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Add runtime flags for shadow DOM and custom elements |
| https://bugs.webkit.org/show_bug.cgi?id=155213 |
| |
| Reviewed by Dean Jackson. |
| |
| Set the runtime flag based on preferences. Enable shadow DOM and disable custom elements by default. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetShadowDOMEnabled): |
| (WKPreferencesGetShadowDOMEnabled): |
| (WKPreferencesSetCustomElementsEnabled): |
| (WKPreferencesGetCustomElementsEnabled): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-03-09 Brent Fulgham <bfulgham@apple.com> |
| |
| Handling 'allowUniversalAccessFromFileURLs' on WKWebViewConfiguration causes test breakage |
| https://bugs.webkit.org/show_bug.cgi?id=155265 |
| <rdar://problem/11101440> |
| |
| Reviewed by Andy Estes. |
| |
| We require "AllowUniversalAccessFromFileURLs" to permit file URLs from accessing |
| localStorage. However, this setting is not available on the Cocoa WKPreference (by design). |
| Instead, you need to set this value on the WKWebViewConfiguration. |
| |
| Back out the work-around landed in r197889, |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration init]): Remove test workaround. |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): Set the correct flag on |
| the WKWebViewConfiguration. |
| |
| 2016-03-09 Enrica Casucci <enrica@apple.com> |
| |
| Retrieve additional context for some data detector link for preview and action menu. |
| https://bugs.webkit.org/show_bug.cgi?id=155278 |
| rdar://problem/24884951 |
| |
| Reviewed by Tim Horton. |
| |
| Data detector results for items like calendar events, can be augmented |
| retrieving the text surrounding the link. |
| |
| * Platform/spi/ios/DataDetectorsUISPI.h: |
| * Shared/ios/InteractionInformationAtPosition.h: |
| * Shared/ios/InteractionInformationAtPosition.mm: |
| (WebKit::InteractionInformationAtPosition::encode): |
| (WebKit::InteractionInformationAtPosition::decode): |
| * UIProcess/ios/WKActionSheetAssistant.mm: |
| (-[WKActionSheetAssistant showDataDetectorsSheet]): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _dataForPreviewItemController:atPosition:type:]): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::getPositionInformation): |
| |
| 2016-03-09 Gavin Barraclough <barraclough@apple.com> |
| |
| Last opened tab does not receive SetHiddenPageTimerThrottlingIncreaseLimit message |
| https://bugs.webkit.org/show_bug.cgi?id=155126 |
| |
| Reviewed by Anders Carlson. |
| |
| WebPageProxy will increment the hidden page throttling counter from within its constructor, |
| which currently causes the WebProcessPool to try to synchronously message all processes. |
| The web page triggering the increment then fails to receive the message, since it was |
| still being constructed. Make the update of the limit async, such that the page is fully |
| constructed before the WebProcessPool processes the update. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::m_hiddenPageThrottlingAutoIncreasesCounter): |
| - This now schedules a zero-delay timer to handle the update. |
| (WebKit::m_hiddenPageThrottlingTimer): |
| - This is now responsible for calling updateHiddenPageThrottlingAutoIncreaseLimit. |
| * UIProcess/WebProcessPool.h: |
| - Added m_hiddenPageThrottlingTimer. |
| |
| 2016-03-09 David Kilzer <ddkilzer@apple.com> |
| |
| REGRESSION (r197149): Missing availability checks when soft-linking DataDetectors.framework |
| <http://webkit.org/b/155258> |
| |
| Reviewed by Andy Estes. |
| |
| * Platform/mac/MenuUtilities.mm: |
| (WebKit::menuItemForTelephoneNumber): |
| (WebKit::menuForTelephoneNumber): |
| - Add check that returns early if DataDetectors.framework is not |
| available. |
| |
| * Shared/mac/WebHitTestResultData.mm: |
| (WebKit::WebHitTestResultData::platformDecode): |
| - Add Debug assertion. The soft-linked code should never be |
| called if there was no actionContext passed in. |
| |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::dismissContentRelativeChildWindowsFromViewOnly): |
| - Protect calls to DDActionsManager with availability check. |
| |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _clearImmediateActionState]): |
| (-[WKImmediateActionController immediateActionRecognizerWillBeginAnimation:]): |
| - Protect calls to DDActionsManager with availability check. |
| (-[WKImmediateActionController _animationControllerForDataDetectedText]): |
| (-[WKImmediateActionController _animationControllerForDataDetectedLink]): |
| - Add check that returns early if DataDetectors.framework is not |
| available. |
| |
| 2016-03-09 Keith Rollin <krollin@apple.com> |
| |
| Add state dumping facility |
| https://bugs.webkit.org/show_bug.cgi?id=154930 |
| <rdar://problem/24939135> |
| |
| Reviewed by Anders Carlsson. |
| |
| Collect the times at which pages are loaded. Dump them when an OS |
| state dump is triggered. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didCommitLoad): |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::lastPageLoadTime): |
| * WebProcess/WebProcess.h: |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::registerWithStateDumper): |
| (WebKit::WebProcess::platformInitializeProcess): |
| |
| 2016-03-09 Anders Carlsson <andersca@apple.com> |
| |
| _WKWebsiteDataSize.h should be an SPI header. |
| |
| Rubber-stamped by Tim Horton. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-03-09 Brent Fulgham <bfulgham@apple.com> |
| |
| Handling 'allowUniversalAccessFromFileURLs' on WKWebViewConfiguration causes test breakage |
| https://bugs.webkit.org/show_bug.cgi?id=155265 |
| |
| Unreviewed work-around to allow testing to continue. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration init]): Workaround build break. |
| |
| 2016-03-09 Alex Christensen <achristensen@webkit.org> |
| |
| Fix use-after-free when cancelling synchronous XHR when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=155253 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::continueWillSendRequest): |
| Store the completion handler on the stack before calling didFail, which deletes the |
| NetworkLoad, so we don't access m_redirectCompletionHandler after deleting the NetworkLoad. |
| |
| 2016-03-09 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r197698. |
| https://bugs.webkit.org/show_bug.cgi?id=155252 |
| |
| Caused assertions, and wasn't reviewed by a WK2 owner |
| (Requested by andersca on #webkit). |
| |
| Reverted changeset: |
| |
| "Last opened tab does not receive |
| SetHiddenPageTimerThrottlingIncreaseLimit message" |
| https://bugs.webkit.org/show_bug.cgi?id=155126 |
| http://trac.webkit.org/changeset/197698 |
| |
| 2016-03-09 Conrad Shultz <conrad_shultz@apple.com> |
| |
| WebsiteDataStore::Configuration::legacyWebsiteDataStoreConfiguration() should respect the passed-in configuration |
| https://bugs.webkit.org/show_bug.cgi?id=155250 |
| |
| Reviewed by Anders Carlsson. |
| |
| Note that the legacy directories are already set by default in ProcessPoolConfiguration::createWithLegacyOptions(), |
| which is also where the shouldHaveLegacyDataStore flag, which will cause this code path to be reached, is set. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::legacyWebsiteDataStoreConfiguration): |
| Use the passed-in configuration to set the application cache, network cache, and media keys storage directories. |
| |
| 2016-03-09 Chris Dumez <cdumez@apple.com> |
| |
| Speculative disk cache resource revalidations are sometimes wasted |
| https://bugs.webkit.org/show_bug.cgi?id=155187 |
| <rdar://problem/25032905> |
| |
| Reviewed by Antti Koivisto. |
| |
| Speculative disk cache resource revalidations were sometimes wasted. |
| |
| We would sometimes correctly revalidate a resource but the |
| NetworkResourceLoader then either: |
| 1. Fail to reuse the speculatively validated entry |
| 2. Reuse the speculatively validated entry but then validate it again |
| |
| Bug 1 was caused by the revalidated entry key sometimes being |
| different from the cached entry key. This could happen when |
| revalidation fails (the server did not send back a 304) in |
| which case we call NetworkCache::store() which creates a new |
| cache Entry, generating a cache key from our revalidation |
| request. If the original request has a cache partition or a |
| range, then the keys would not match because we did not set |
| the cache partition or the range on the revalidation request. |
| This has been addressed by setting the cache partition on the |
| revalidation request in constructRevalidationRequest() and by |
| not doing revalidation if the original request had a 'range' |
| header. |
| |
| Bug 2 was caused by us marking a speculatively revalidated entry |
| as "not needing revalidating" only in Cache::update(). Cache::update() |
| is only called in the case the revalidation was successful (server |
| returned a 304). If revalidation was not successful, Cache::store() |
| would be called instead was we would fail to update the |
| needsRevalidation flag. NetworkResourceLoader would then validate |
| again the resource that was already speculatively revalidated. |
| To address the problem, we now update the 'needsRevalidation' flag |
| as soon as the speculative revalidation completes, in |
| SpeculativeLoad::didComplete(). |
| |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::NetworkCache::Cache::retrieve): |
| (WebKit::NetworkCache::makeCacheKey): |
| (WebKit::NetworkCache::Cache::update): |
| * NetworkProcess/cache/NetworkCacheEntry.cpp: |
| (WebKit::NetworkCache::Entry::setNeedsValidation): |
| * NetworkProcess/cache/NetworkCacheEntry.h: |
| * NetworkProcess/cache/NetworkCacheKey.cpp: |
| (WebKit::NetworkCache::noPartitionString): |
| (WebKit::NetworkCache::Key::Key): |
| (WebKit::NetworkCache::Key::hasPartition): |
| * NetworkProcess/cache/NetworkCacheKey.h: |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: |
| (WebKit::NetworkCache::SpeculativeLoad::didComplete): |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: |
| (WebKit::NetworkCache::constructRevalidationRequest): |
| (WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage): |
| (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry): |
| |
| 2016-03-09 Brent Fulgham <bfulgham@apple.com> |
| |
| Local HTML should be blocked from localStorage access unless "Disable Local File Restrictions" is checked |
| https://bugs.webkit.org/show_bug.cgi?id=155185 |
| |
| Reviewed by Anders Carlsson. |
| <rdar://problem/11101440> |
| |
| Tested by TestWebKitAPI tests IndexedDB.IndexedDBMultiProcess and IndexedDB.IndexedDBPersistence. |
| |
| Allow Cocoa WKWebViewConfiguration access to the 'allowUniversalAccessFromFileURLs' setting. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (- [WKWebView _initializeWithConfiguration]): Set 'allowUniversalAccessFromFileURLsKey' in |
| page configuration. |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration _allowUniversalAccessFromFileURLs]): Added, |
| (-[WKWebViewConfiguration _setAllowUniversalAccessFromFileURLs:]): Added. |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: |
| |
| 2016-03-09 Enrica Casucci <enrica@apple.com> |
| |
| Add two finger tap on links. |
| https://bugs.webkit.org/show_bug.cgi?id=155205 |
| rdar://problem/22937516 |
| |
| Reviewed by Sam Weinig. |
| |
| Adds two finger tap gesture recognizer. When performed |
| on a link, it calls the delegate. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView setupInteraction]): |
| (-[WKContentView cleanupInteraction]): |
| (-[WKContentView _removeDefaultGestureRecognizers]): |
| (-[WKContentView _addDefaultGestureRecognizers]): |
| (-[WKContentView _twoFingerSingleTapGestureRecognized:]): |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::handleTwoFingerTapAtPoint): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::handleTwoFingerTapAtPoint): |
| |
| 2016-03-09 Alex Christensen <achristensen@webkit.org> |
| |
| Always call NSURLSession completion handlers |
| https://bugs.webkit.org/show_bug.cgi?id=155137 |
| |
| Reviewed by Darin Adler. |
| |
| There are some edge cases which should not be hit, but if they are they would cause the |
| network process to hang and network resources to be leaked. This can be avoided. |
| There are also a few release asserts that do not need to crash release builds. |
| |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| (WebKit::NetworkDataTask::didReceiveChallenge): |
| (WebKit::NetworkDataTask::didCompleteWithError): |
| (WebKit::NetworkDataTask::didReceiveResponse): |
| (WebKit::NetworkDataTask::didReceiveData): |
| (WebKit::NetworkDataTask::willPerformHTTPRedirection): |
| (WebKit::NetworkDataTask::scheduleFailure): |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| |
| 2016-03-08 Sam Weinig <sam@webkit.org> |
| |
| Roll r197632 back in now that the bots have caught up. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView textInputTraits]): |
| |
| 2016-03-08 Oliver Hunt <oliver@apple.com> |
| |
| Start moving to separated writable and executable mappings in the JIT |
| https://bugs.webkit.org/show_bug.cgi?id=155178 |
| |
| Reviewed by Fil Pizlo. |
| |
| Update feature defines. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-03-08 Brent Fulgham <bfulgham@apple.com> |
| |
| [WK2][Mac] Allow processes to set "fast-dev-casheable" bit in Network Process |
| https://bugs.webkit.org/show_bug.cgi?id=155189 |
| <rdar://problem/25042678> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Update the NetworkProcess sandbox profiles with a declaration that using the |
| system-fctl to touch the "hot file" flag (to support caching operations) |
| is allowed. I should have done this in Bug 154503, but did not. |
| |
| * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: Add sandbox permission. |
| |
| 2016-03-08 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r197793 and r197799. |
| https://bugs.webkit.org/show_bug.cgi?id=155195 |
| |
| something weird happened while landing this and everything |
| broke (Requested by olliej on #webkit). |
| |
| Reverted changesets: |
| |
| "Start moving to separated writable and executable mappings in |
| the JIT" |
| https://bugs.webkit.org/show_bug.cgi?id=155178 |
| http://trac.webkit.org/changeset/197793 |
| |
| "arm64 build fix after r197793." |
| http://trac.webkit.org/changeset/197799 |
| |
| 2016-03-08 Brent Fulgham <bfulgham@apple.com> |
| |
| [WK2] Grant explicit read access to ManagedPreferences |
| https://bugs.webkit.org/show_bug.cgi?id=155173 |
| <rdar://problem/24910550> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb: Add new |
| read permission. |
| |
| 2016-03-08 Anders Carlsson <andersca@apple.com> |
| |
| Ignore deprecation warnings. |
| |
| * Shared/mac/ChildProcessMac.mm: |
| (WebKit::ChildProcess::stopNSAppRunLoop): |
| * Shared/mac/WebEventFactory.mm: |
| (WebKit::mouseButtonForEvent): |
| (WebKit::mouseEventTypeForEvent): |
| (WebKit::clickCountForEvent): |
| (WebKit::globalPointForEvent): |
| (WebKit::pointForEvent): |
| (WebKit::textFromEvent): |
| (WebKit::unmodifiedTextFromEvent): |
| (WebKit::isKeypadEvent): |
| (WebKit::isKeyUpEvent): |
| (WebKit::modifiersForEvent): |
| (WebKit::WebEventFactory::createWebKeyboardEvent): |
| * UIProcess/API/Cocoa/WKNavigationAction.mm: |
| (toNSEventModifierFlags): |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::becomeFirstResponder): |
| (WebKit::WebViewImpl::updateContentInsetsIfAutomatic): |
| (WebKit::WebViewImpl::viewDidMoveToWindow): |
| (WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent): |
| (WebKit::WebViewImpl::createFullScreenWindow): |
| (WebKit::WebViewImpl::sendToolTipMouseExited): |
| (WebKit::WebViewImpl::sendToolTipMouseEntered): |
| (WebKit::applicationFlagsForDrag): |
| (WebKit::WebViewImpl::setLastMouseDownEvent): |
| (WebKit::WebViewImpl::doneWithKeyEvent): |
| (WebKit::WebViewImpl::collectKeyboardLayoutCommandsForEvent): |
| (WebKit::WebViewImpl::performKeyEquivalent): |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::beginModal): |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (WebKit::WebContextMenuProxyMac::showContextMenu): |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformCanAttach): |
| * UIProcess/mac/WebPopupMenuProxyMac.mm: |
| (WebKit::WebPopupMenuProxyMac::populate): |
| (WebKit::WebPopupMenuProxyMac::showPopupMenu): |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::modifierFlagsFromWebEvent): |
| (WebKit::getEventTypeFromWebEvent): |
| * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm: |
| (WebKit::cssAlignmentValueForNSTextAlignment): |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::convertImageToBitmap): |
| |
| 2016-03-08 Oliver Hunt <oliver@apple.com> |
| |
| Start moving to separated writable and executable mappings in the JIT |
| https://bugs.webkit.org/show_bug.cgi?id=155178 |
| |
| Reviewed by Filip Pizlo. |
| |
| Update feature defines. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-03-08 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r197766. |
| https://bugs.webkit.org/show_bug.cgi?id=155183 |
| |
| Has platform-specific code in non-platform files (Requested by |
| smfr on #webkit). |
| |
| Reverted changeset: |
| |
| "AX: Force allow user zoom" |
| https://bugs.webkit.org/show_bug.cgi?id=155056 |
| http://trac.webkit.org/changeset/197766 |
| |
| 2016-03-04 Ada Chan <adachan@apple.com> |
| |
| Fix lifetime issues regarding WebVideoFullscreenInterfaceMac |
| https://bugs.webkit.org/show_bug.cgi?id=155130 |
| |
| Reviewed by Beth Dakin. |
| |
| Now that both fullscreen and video controls manager rely on WebVideoFullscreenInterface, |
| we now keep track of a "client count" for each context ID so we'll only remove it |
| from the context map after all the "clients" are done with it. |
| |
| Before this change, every time WebVideoFullscreenManager::setUpVideoControlsManager() |
| is called, the existing interface is cleared and a new one is created even when there's |
| an existing interface for that. With this change, we reuse the existing interface for |
| the video element. |
| |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::invalidate): |
| Also clear out m_clientCounts. |
| (WebKit::WebVideoFullscreenManagerProxy::addClientForContext): |
| If the context ID is not in m_clientCounts yet, add the count of 1 to |
| that table for that ID. Otherwise, increment the count by 1. |
| (WebKit::WebVideoFullscreenManagerProxy::removeClientForContext): |
| Assert that we have added this context id to m_clientCounts before. |
| Decrement the count. If it reaches 0, remove this context ID from both |
| m_clientCounts and m_contextMap. |
| (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): |
| We have started a new fullscreen session using this interface. Call |
| addClientForContext() to update the client count. |
| (WebKit::WebVideoFullscreenManagerProxy::setUpVideoControlsManagerWithID): |
| If the current controls manager set up has the same context ID as the one |
| passed in, we don't have to do anything. Otherwise, if we have set up |
| the video controls manager with a different ID before, call removeClientForContext() |
| on the old ID to decrement its client count. Set m_controlsManagerContextId |
| to the new value and call addClientForContext() with it. |
| (WebKit::WebVideoFullscreenManagerProxy::didCleanupFullscreen): |
| Instead of removing the mapping from m_contextMap directly, reset the fullscreen |
| mode on the interface and call removeClientForContext(), which removes the mapping |
| only if there's no more client using the interface. |
| * WebProcess/cocoa/WebVideoFullscreenManager.h: |
| * WebProcess/cocoa/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::~WebVideoFullscreenManager): |
| Clear m_clientCounts. |
| (WebKit::WebVideoFullscreenManager::removeContext): |
| Add a helper method for removing the context. |
| (WebKit::WebVideoFullscreenManager::addClientForContext): |
| If the context ID is not in m_clientCounts yet, add the count of 1 to |
| that table for that ID. Otherwise, increment the count by 1. |
| (WebKit::WebVideoFullscreenManager::removeClientForContext): |
| Assert that we have added this context id to m_clientCounts before. |
| Decrement the count. If it reaches 0, remove this context ID from |
| m_clientCounts and call removeContext() to clean up this context. |
| (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): |
| We have started a new fullscreen session using this interface. Call |
| addClientForContext() to update the client count. Create a layer hosting |
| context if it's not there. |
| (WebKit::WebVideoFullscreenManager::setUpVideoControlsManager): |
| If we have set up a context for this video element before, see if it's |
| the one we are currently managing video controls for. If it is, return early. |
| Otherwise, call removeClientForContext() on the previous m_controlsManagerContextId |
| and update m_controlsManagerContextId to the context ID of this video element. |
| If there's no context created for this video element yet, set one up. |
| Send a SetUpVideoControlsManagerWithID message to the proxy object in the UI process |
| so it'll update its controls manager context ID. Also, conditionalize all of this |
| under PLATFORM(MAC) to be consistent with WebVideoFullscreenManagerProxy. |
| (WebKit::WebVideoFullscreenManager::didCleanupFullscreen): |
| Just reset the fullscreen mode on the interface and call removeClientForContext() which |
| only cleans up the context if there's no more client using it. |
| |
| 2016-03-08 Timothy Hatcher <timothy@apple.com> |
| |
| Web Inspector: Add automation protocol methods for navigation |
| |
| https://bugs.webkit.org/show_bug.cgi?id=155163 |
| rdar://problem/25029054 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/Automation/Automation.json: |
| * UIProcess/Automation/WebAutomationSession.cpp: |
| (WebKit::WebAutomationSession::getBrowsingContexts): Set url. |
| (WebKit::WebAutomationSession::getBrowsingContext): Added. |
| (WebKit::WebAutomationSession::navigateBrowsingContext): Added. |
| (WebKit::WebAutomationSession::goBackInBrowsingContext): Added. |
| (WebKit::WebAutomationSession::goForwardInBrowsingContext): Added. |
| (WebKit::WebAutomationSession::reloadBrowsingContext): Added. |
| * UIProcess/Automation/WebAutomationSession.h: |
| |
| 2016-03-08 Nan Wang <n_wang@apple.com> |
| |
| AX: Force allow user zoom |
| https://bugs.webkit.org/show_bug.cgi?id=155056 |
| |
| Reviewed by Chris Fleizach. |
| |
| Soft linked libAccessibility library so that we can observe the accessibility |
| setting change for the force always user scalable feature. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::forceAlwaysUserScalableChangedCallback): |
| (WebKit::WebPage::create): |
| (WebKit::m_shouldDispatchFakeMouseMoveEvents): |
| (WebKit::WebPage::~WebPage): |
| (WebKit::WebPage::preferencesDidChange): |
| (WebKit::WebPage::updateForceAlwaysUserScalable): |
| (WebKit::WebPage::updatePreferences): |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2016-03-08 Csaba Osztrogonác <ossy@webkit.org> |
| |
| One more unreviewed speculative buildfix after r197728. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::didFinishLoading): |
| (WebKit::NetworkResourceLoader::continueWillSendRequest): |
| |
| 2016-03-08 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Unreviewed speculative buildfix after r197728. |
| |
| * WebProcess/Network/WebLoaderStrategy.cpp: |
| (WebKit::WebLoaderStrategy::scheduleLoad): |
| |
| 2016-03-08 Timothy Hatcher <timothy@apple.com> |
| |
| Web Inspector: Make WebAutomationSession::closeBrowsingContext work as expected |
| |
| https://bugs.webkit.org/show_bug.cgi?id=155162 |
| rdar://problem/25027191 |
| |
| Reviewed by Brian Burg. |
| |
| * UIProcess/Automation/WebAutomationSession.cpp: |
| (WebKit::WebAutomationSession::closeBrowsingContext): |
| Call closePage, the same method ultimately used by window.close(). |
| |
| * UIProcess/WebPageProxy.h: Make closePage public. |
| |
| 2016-03-07 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| REGRESSION(r197062): [GTK] Transparent backgrounds no longer work after r197062 |
| https://bugs.webkit.org/show_bug.cgi?id=155119 |
| |
| Reviewed by Martin Robinson. |
| |
| This is because after r197062 we are now realizing the view too |
| early, even before the toplevel window has been realized, forcing |
| the toplevel window to be realized. If the RGBA visual is set on |
| the window after it has been realzied it doesn't have any |
| effect. We should wait until the toplevel window is realized to |
| realize the web view, giving time to the application to set RGBA |
| visual and background color. If the toplevel window is already |
| realized we realize the web view immediately, so that this doesn't |
| affect the tearing problems fixed in r197062. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (toplevelWindowRealized): |
| (webkitWebViewBaseSetToplevelOnScreenWindow): |
| |
| 2016-03-07 Keith Rollin <krollin@apple.com> |
| |
| Enhance logging: Use "always on" macros |
| https://bugs.webkit.org/show_bug.cgi?id=154499 |
| <rdar://problem/24757730> |
| |
| Reviewed by Chris Dumez. |
| |
| Make use of new logging macros by reporting on frame and resource |
| load activity. |
| |
| Connection updated to report IPC errors, helping us identify when |
| messaging between processes breaks down. |
| |
| ChildProcess updated to log if it is terminating early. Some |
| sysdiagnose logging from customers indicate that this is happening in |
| the wild. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::startNetworkLoad): |
| (WebKit::NetworkResourceLoader::didFinishLoading): |
| (WebKit::NetworkResourceLoader::didFailLoading): |
| (WebKit::NetworkResourceLoader::continueWillSendRequest): |
| (WebKit::NetworkResourceLoader::isAlwaysOnLoggingAllowed): |
| * NetworkProcess/NetworkResourceLoader.h: |
| * Platform/IPC/Connection.cpp: |
| (IPC::Connection::waitForSyncReply): |
| * Shared/ChildProcess.cpp: |
| (WebKit::didCloseOnConnectionWorkQueue): |
| * WebProcess/Network/WebLoaderStrategy.cpp: |
| (WebKit::WebLoaderStrategy::scheduleLoad): |
| * WebProcess/Network/WebResourceLoader.cpp: |
| (WebKit::WebResourceLoader::willSendRequest): |
| (WebKit::WebResourceLoader::didReceiveResponse): |
| (WebKit::WebResourceLoader::didReceiveData): |
| (WebKit::WebResourceLoader::didFinishResourceLoad): |
| (WebKit::WebResourceLoader::didFailResourceLoad): |
| (WebKit::WebResourceLoader::didReceiveResource): |
| (WebKit::WebResourceLoader::isAlwaysOnLoggingAllowed): |
| * WebProcess/Network/WebResourceLoader.h: |
| |
| 2016-03-07 Brent Fulgham <bfulgham@apple.com> |
| |
| Reduce startup and shutdown cost of resource load statistics |
| https://bugs.webkit.org/show_bug.cgi?id=155120 |
| <rdar://problem/25010167> |
| |
| Reviewed by Andy Estes. |
| |
| Use a dedicated WorkQueue to process resource load statistics data. Allow |
| processing to load (and save) previously stored statistics asynchronously so |
| that it does not delay startup. |
| |
| Now that we have a more rational storage situation, get rid of the 'writeToDisk' |
| method since it is no longer needed in the WK2 layer. |
| |
| Move all of the Resource Load Statistics file handling code from WebCore to this |
| API layer. |
| |
| * UIProcess/WebResourceLoadStatisticsStore.cpp: |
| (WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore): Initialize |
| member variable with storage path, rather than passing to WebCore code. |
| (WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated): Revised to |
| use the new WorkQueue code. |
| (WebKit::WebResourceLoadStatisticsStore::setResourceLoadStatisticsEnabled): When |
| activating the feature, purge any old statistics before loading from disk. |
| (WebKit::WebResourceLoadStatisticsStore::readDataFromDiskIfNeeded): Added. |
| (WebKit::WebResourceLoadStatisticsStore::processWillOpenConnection): Added. |
| (WebKit::WebResourceLoadStatisticsStore::processDidCloseConnection): Added. |
| (WebKit::WebResourceLoadStatisticsStore::applicationWillTerminate): Make sure all |
| of the WorkQueue tasks are done before terminating. |
| (WebKit::WebResourceLoadStatisticsStore::persistentStoragePath): Moved from WebCore. |
| (WebKit::WebResourceLoadStatisticsStore::writeEncoderToDisk): Ditto. |
| (WebKit::WebResourceLoadStatisticsStore::createDecoderFromDisk): Ditto. |
| (WebKit::WebResourceLoadStatisticsStore::writeToDisk): Deleted. |
| * UIProcess/WebResourceLoadStatisticsStore.h: |
| (WebKit::WebResourceLoadStatisticsStore::coreStore): |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::WebsiteDataStore::webProcessWillOpenConnection): Call new WebResourceLoadStatisticsStore code. |
| (WebKit::WebsiteDataStore::webProcessDidCloseConnection): Ditto. |
| |
| 2016-03-07 Alex Christensen <achristensen@webkit.org> |
| |
| Fix cookies with private browsing and NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=155147 |
| rdar://problem/25018279 |
| |
| Reviewed by Brady Eidson. |
| |
| In the NetworkSession constructor, we look for a NetworkStorageSession in the SessionTracker |
| and use that NetworkStorageSession's CFHTTPCookieStorageRef in the NSURLSessionConfiguration. |
| NetworkStorageSessions were being set in SessionTracker's storageSessionMap after NetworkSessions |
| were created, causing the NSHTTPCookieStorage of the NSURLSession to be different from the |
| CFHTTPCookieStorageRef used by document.cookie in newly created private browsing sessions. |
| This fixes that problem by passing the NetworkStorageSession as a constructor parameter to the |
| NetworkSession so it can use the correct CFHTTPCookieStorageRef in its NSURLSessionConfiguration |
| before it is in the storageSessionMap. |
| |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkSession::sessionID): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::defaultSession): |
| (WebKit::NetworkSession::NetworkSession): |
| * NetworkProcess/mac/RemoteNetworkingContext.mm: |
| (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession): |
| * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: |
| (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession): |
| |
| 2016-03-07 Brent Fulgham <bfulgham@apple.com> |
| |
| Correct bug in resource load statistics debug flag for legacy clients |
| https://bugs.webkit.org/show_bug.cgi?id=155118 |
| <rdar://problem/25020088> |
| |
| Reviewed by Andy Estes. |
| |
| Some clients launch WebKit2 using the "legacy" configuration for the website data store. |
| The Resource Load Statistics code was not added to this type of configuration, which |
| prevents various WebKit2 clients from using this code. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::legacyWebsiteDataStoreConfiguration): Tell the legacy initializer where to |
| find the resource load statistics data. |
| |
| 2016-03-07 Daniel Bates <dabates@apple.com> |
| |
| Cleanup: Add convenience function URL::procotolIsBlob() |
| https://bugs.webkit.org/show_bug.cgi?id=155127 |
| <rdar://problem/25016829> |
| |
| Reviewed by Brent Fulgham. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): Modified to use URL::protocolIsBlob(). |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::NetworkResourceLoader): Ditto. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::canHandleRequest): Ditto. |
| |
| 2016-03-07 Simon Fraser <simon.fraser@apple.com> |
| |
| Use CGColorSpaceCopyICCData instead of CGColorSpaceCopyICCProfile |
| https://bugs.webkit.org/show_bug.cgi?id=155123 |
| rdar://problem/24990256 |
| |
| Reviewed by Tim Horton. |
| |
| On newer OSes, use CGColorSpaceCopyICCData(). |
| |
| * Shared/mac/ColorSpaceData.mm: |
| (WebKit::ColorSpaceData::encode): |
| |
| 2016-03-07 Gavin Barraclough <barraclough@apple.com> |
| |
| Last opened tab does not receive SetHiddenPageTimerThrottlingIncreaseLimit message |
| https://bugs.webkit.org/show_bug.cgi?id=155126 |
| |
| Reviewed by Chris Dumez. |
| |
| WebPageProxy will increment the hidden page throttling counter from within its constructor, |
| which currently causes the WebProcessPool to try to synchronously message all processes. |
| The web page triggering the increment then fails to receive the message, since it was |
| still being constructed. Make the update of the limit async, such that the page is fully |
| constructed before the WebProcessPool processes the update. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::m_hiddenPageThrottlingAutoIncreasesCounter): |
| - This now schedules a zero-delay timer to handle the update. |
| (WebKit::m_hiddenPageThrottlingTimer): |
| - This is now responsible for calling updateHiddenPageThrottlingAutoIncreaseLimit. |
| * UIProcess/WebProcessPool.h: |
| - Added m_hiddenPageThrottlingTimer. |
| |
| 2016-03-05 Enrica Casucci <enrica@apple.com> |
| |
| Support preview on attachment elements. |
| https://bugs.webkit.org/show_bug.cgi?id=155074 |
| rdar://problem/24806079 |
| |
| Reviewed by Sam Weinig. |
| |
| Allowing preview to start on attachment elements. |
| Adding a private UIDelegate method to provide the data for the preview. |
| |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]): |
| (-[WKContentView _dataForPreviewItemController:atPosition:type:]): |
| |
| 2016-03-06 Andreas Kling <akling@apple.com> |
| |
| Reduce page cache capacity from 3 to 2. |
| <https://webkit.org/b/155087> |
| |
| Reviewed by Antti Koivisto. |
| |
| It's extremely rare that users go back more than 2 pages in the page cache, |
| and nowadays the network cache makes even un-cached pages fast to reload. |
| |
| Trimming the page cache from 3 to 2 entries has a very nice effect on heap |
| fragmentation. I'm seeing a ~5% progression on the iPad PLUM test locally; |
| average memory usage across 300 loads goes from ~121MB to ~114MB. |
| |
| * Shared/CacheModel.cpp: |
| (WebKit::calculateCacheSizes): |
| |
| 2016-03-05 Sam Weinig <sam@webkit.org> |
| |
| Revert usage of autofill field name for use with UITextInputTraits |
| until our bots can catch up. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView textInputTraits]): |
| |
| 2016-03-05 Chris Dumez <cdumez@apple.com> |
| |
| Consolidate RuntimeApplicationChecks and RuntimeApplicationChecksIOS |
| https://bugs.webkit.org/show_bug.cgi?id=155035 |
| |
| Reviewed by Darin Adler. |
| |
| Update runtime application checks. |
| |
| * UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm: |
| (API::WebsiteDataStore::defaultApplicationCacheDirectory): |
| * UIProcess/Cocoa/VersionChecks.mm: |
| (WebKit::linkedOnOrAfter): |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| (WebKit::WebProcessPool::legacyPlatformDefaultApplicationCacheDirectory): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::expectsLegacyImplicitRubberBandControl): |
| (WebKit::WebPageProxy::appleMailPaginationQuirkEnabled): |
| |
| 2016-03-05 Sam Weinig <sam@webkit.org> |
| |
| Add support for processing the autofill field name out of form control elements ultimately to aid input methods |
| <rdar://problem/23041180> |
| https://bugs.webkit.org/show_bug.cgi?id=155079 |
| |
| Reviewed by Enrica Casucci. |
| |
| * Shared/AssistedNodeInformation.cpp: |
| (WebKit::AssistedNodeInformation::encode): |
| (WebKit::AssistedNodeInformation::decode): |
| * Shared/AssistedNodeInformation.h: |
| Add AutofillFieldName. Convert some coders to use encodeEnum/decodeEnum instead of casting. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView textInputTraits]): |
| Map AutofillFieldNames to the associated UITextContentTypes. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::getAssistedNodeInformation): |
| Extract the AutofillFieldNames onto the AssistedNodeInformation for <input> elements |
| and <textarea> elements. |
| |
| 2016-03-05 Timothy Hatcher <timothy@apple.com> |
| |
| Implement the Automation protocol commands by tracking WebPageProxy objects |
| that are controlled by automation and assigning them a UUID handle. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=154953 |
| rdar://problem/24947489 |
| |
| Reviewed by Brian Burg. |
| |
| * UIProcess/API/APIAutomationSessionClient.h: |
| (API::AutomationSessionClient::didRequestNewWindow): |
| Return a WebPageProxy instead of void so it can be assigned a UUID handle. |
| |
| * UIProcess/API/Cocoa/_WKAutomationSessionDelegate.h: |
| Return a WKPageRef from _automationSessionDidRequestNewWindow:. |
| |
| * UIProcess/Automation/WebAutomationSession.cpp: |
| (WebKit::WebAutomationSession::webPageProxyForHandle): |
| (WebKit::WebAutomationSession::handleForWebPageProxy): |
| (WebKit::WebAutomationSession::getBrowsingContexts): |
| (WebKit::WebAutomationSession::createBrowsingContext): |
| (WebKit::WebAutomationSession::closeBrowsingContext): |
| (WebKit::WebAutomationSession::switchToBrowsingContext): |
| |
| * UIProcess/Automation/WebAutomationSession.h: |
| Added new methods and maps to track pages and handles. |
| |
| * UIProcess/Cocoa/AutomationSessionClient.h: |
| * UIProcess/Cocoa/AutomationSessionClient.mm: |
| (WebKit::AutomationSessionClient::didRequestNewWindow): |
| Return a WebPageProxy from the WKPageRef. |
| |
| * UIProcess/WebPageProxy.h: Make setFocus public. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::setAutomationSession): |
| Set the WebProcessPool on the WebAutomationSession so it can be used to find |
| WebPageProxy objects controlled by automation. |
| |
| 2016-03-05 Timothy Hatcher <timothy@apple.com> |
| |
| Rename Automation protocol methods to use "BrowsingContext" instead of "Window". |
| Also flesh out the protocol commands more by adding switchToBrowsingContext |
| and return a BrowsingContextHandle for createBrowsingContext. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=154953 |
| rdar://problem/24947489 |
| |
| Reviewed by Brian Burg. |
| |
| * UIProcess/Automation/Automation.json: |
| * UIProcess/Automation/WebAutomationSession.cpp: |
| (WebKit::WebAutomationSession::getBrowsingContexts): |
| (WebKit::WebAutomationSession::createBrowsingContext): |
| (WebKit::WebAutomationSession::closeBrowsingContext): |
| (WebKit::WebAutomationSession::switchToBrowsingContext): |
| (WebKit::WebAutomationSession::getWindows): Deleted. |
| (WebKit::WebAutomationSession::openWindow): Deleted. |
| (WebKit::WebAutomationSession::closeWindow): Deleted. |
| * UIProcess/Automation/WebAutomationSession.h: |
| |
| 2016-03-05 Yusuke Suzuki <utatane.tea@gmail.com> |
| |
| [ES6] Support Reflect.construct |
| https://bugs.webkit.org/show_bug.cgi?id=147330 |
| |
| Reviewed by Saam Barati. |
| |
| * WebProcess/Plugins/Netscape/JSNPMethod.cpp: |
| (WebKit::JSNPMethod::getCallData): |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::getCallData): |
| (WebKit::JSNPObject::getConstructData): |
| * WebProcess/Plugins/Netscape/NPJSObject.cpp: |
| (WebKit::NPJSObject::hasMethod): |
| (WebKit::NPJSObject::construct): |
| (WebKit::NPJSObject::invoke): |
| |
| 2016-03-04 Alex Christensen <achristensen@webkit.org> |
| |
| Fix file mime-types when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=155058 |
| |
| Reviewed by Andy Estes. |
| |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| Call adjustMIMETypeIfNecessary like we do in connection didReceiveResponse in |
| WebCoreResourceHandleAsOperationQueueDelegate.mm. |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| Don't content sniff file urls. This check is analogous to ResourceHandle::shouldContentSniffURL. |
| |
| 2016-03-04 Sam Weinig <sam@webkit.org> |
| |
| [WebKit2] Add WebKit2 equivalent of -[WebView _insertNewlineInQuotedContent] |
| <rdar://problem/24943591> |
| https://bugs.webkit.org/show_bug.cgi?id=155057 |
| |
| Reviewed by Tim Horton. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (WKBundlePageInsertNewlineInQuotedContent): |
| * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::insertNewlineInQuotedContent): |
| * WebProcess/WebPage/WebPage.h: |
| Expose WKBundlePageInsertNewlineInQuotedContent as SPI. |
| |
| 2016-03-04 Brent Fulgham <bfulgham@apple.com> |
| |
| Stub API to support a debug menu option for measuring resource load statistics |
| https://bugs.webkit.org/show_bug.cgi?id=154998 |
| <rdar://problem/24944604> |
| |
| Reviewed by Andy Estes. |
| |
| * UIProcess/API/APIWebsiteDataStore.cpp: |
| (API::WebsiteDataStore::resourceLoadStatisticsEnabled): Added stub. |
| (API::WebsiteDataStore::setResourceLoadStatisticsEnabled): Ditto. |
| * UIProcess/API/APIWebsiteDataStore.h: |
| * UIProcess/API/C/WKWebsiteDataStoreRef.cpp: |
| (WKWebsiteDataStoreSetResourceLoadStatisticsEnabled): Added method that calls through |
| to the underlying APIWebsiteDataStore class. |
| (WKWebsiteDataStoreGetResourceLoadStatisticsEnabled): Ditto. |
| * UIProcess/API/C/WKWebsiteDataStoreRef.h: |
| |
| 2016-03-03 Enrica Casucci <enrica@apple.com> |
| |
| Add a mechanism to customize the long press action. |
| https://bugs.webkit.org/show_bug.cgi?id=154995 |
| rdar://problem/24823732 |
| |
| Reviewed by Tim Horton. |
| |
| Adding a new private delegate method to allow clients to |
| replace the action sheet displayed for images and links. |
| The change also adds support for attachment elements. |
| |
| * Shared/ios/InteractionInformationAtPosition.h: |
| * Shared/ios/InteractionInformationAtPosition.mm: |
| (WebKit::InteractionInformationAtPosition::encode): |
| (WebKit::InteractionInformationAtPosition::decode): |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| * UIProcess/API/Cocoa/_WKActivatedElementInfo.h: |
| * UIProcess/ios/WKActionSheetAssistant.h: |
| * UIProcess/ios/WKActionSheetAssistant.mm: |
| (-[WKActionSheetAssistant showImageSheet]): |
| (-[WKActionSheetAssistant showLinkSheet]): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _showImageSheet]): |
| (-[WKContentView _showAttachmentSheet]): |
| (-[WKContentView _showLinkSheet]): |
| (-[WKContentView _actionForLongPress]): |
| (-[WKContentView actionSheetAssistant:shouldIncludeAppLinkActionsForElement:]): |
| (-[WKContentView actionSheetAssistant:showCustomSheetForElement:]): |
| (-[WKContentView actionSheetAssistant:decideActionsForElement:defaultActions:]): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::getPositionInformation): |
| |
| 2016-03-04 Brent Fulgham <bfulgham@apple.com> |
| |
| [WK2] Gather resource load statistics |
| https://bugs.webkit.org/show_bug.cgi?id=154278 |
| <rdar://problem/24702892> |
| |
| Reviewed by Andy Estes. |
| |
| Revise the WebProcess to notify the UIProcess about resource load statistics. These |
| updates are not time-critical, and do not need to be done in concert with the actual |
| load. As resource loads are made, each WebProcess notifies the UIProcess of the new |
| load counts, then clears its local state. These statistics are then aggregated in |
| the UIProcess. |
| |
| * CMakeLists.txt: Add new ResourceLoadStatisticsState files to build. |
| * DerivedSources.make: Ditto. |
| * Platform/IPC/ArgumentCoders.h: Update to support HashCountedSets. |
| * PlatformEfl.cmake: Add new ResourceLoadStatisticsState files to build. |
| * PlatformGTK.cmake: Ditto. |
| * PlatformMac.cmake: Ditto. |
| * Shared/API/APIObject.h: Add new ResourceLoadStatistics type. |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<ExceptionDetails>::decode): Support new ResourceLoadStatistics type. |
| (IPC::ArgumentCoder<ResourceLoadStatistics>::encode): Added. |
| (IPC::ArgumentCoder<ResourceLoadStatistics>::decode): Added. |
| * Shared/WebCoreArgumentCoders.h: |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): Handle 'resourceLoadStatisticsEnabled' flag. |
| (WebKit::WebProcessCreationParameters::decode): Ditto. |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/API/APIProcessPoolConfiguration.cpp: |
| (API::ProcessPoolConfiguration::ProcessPoolConfiguration): Add storage location for the |
| resource load statistics. |
| (API::ProcessPoolConfiguration::copy): Handle the new storage location and the feature flag. |
| * UIProcess/API/APIProcessPoolConfiguration.h: |
| * UIProcess/API/APIWebsiteDataStore.cpp: |
| (API::WebsiteDataStore::defaultResourceLoadStatisticsDirectory): Added stub. |
| * UIProcess/API/APIWebsiteDataStore.h: |
| * UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm: |
| (API::WebsiteDataStore::defaultResourceLoadStatisticsDirectory): Added. |
| (API::WebsiteDataStore::defaultDataStoreConfiguration): Added support for the new resource |
| load statistics storage location. |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _initializeWithConfiguration:]): Sync Process Pool configuration parameters |
| with the state of our websiteData object's "ResourceLoadStatisticsEnabled" flag, so that |
| new processes are created in the right state. |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.mm: |
| (-[WKWebsiteDataStore _resourceLoadStatisticsEnabled]): Added. |
| (-[WKWebsiteDataStore _setResourceLoadStatisticsEnabled:]): Added. |
| * UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::createNewWebProcess): Handle new flag for enabling resource |
| load statistics. |
| * UIProcess/WebResourceLoadStatisticsStore.cpp: Added. |
| (WebKit::WebResourceLoadStatisticsStore::create): |
| (WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore): |
| (WebKit::WebResourceLoadStatisticsStore::~WebResourceLoadStatisticsStore): |
| (WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated): |
| (WebKit::WebResourceLoadStatisticsStore::setResourceLoadStatisticsEnabled): |
| (WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsEnabled): |
| (WebKit::WebResourceLoadStatisticsStore::readDataFromDiskIfNeeded): |
| (WebKit::WebResourceLoadStatisticsStore::writeToDisk): |
| (WebKit::WebResourceLoadStatisticsStore::applicationWillTerminate): |
| * UIProcess/WebResourceLoadStatisticsStore.h: Added. |
| (WebKit::WebResourceLoadStatisticsStore::coreStore): |
| * UIProcess/WebResourceLoadStatisticsStore.messages.in: Added. |
| * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: |
| (WebKit::WebsiteDataStore::platformInitialize): Register a termination handler |
| to close down the resource load statistics store. |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::WebsiteDataStore::WebsiteDataStore): Initialize the new WebResourceLoadStatisticsStore |
| member. |
| (WebKit::WebsiteDataStore::webProcessWillOpenConnection): Register the WebResourceLoadStatisticsStore |
| object as a work queue message receiver |
| (WebKit::WebsiteDataStore::webProcessDidCloseConnection): Unregister WebResourceLoadStatisticsStore. |
| (WebKit::WebsiteDataStore::resourceLoadStatisticsEnabled): Added. |
| (WebKit::WebsiteDataStore::setResourceLoadStatisticsEnabled): Ditto. |
| * UIProcess/WebsiteData/WebsiteDataStore.h: |
| (WebKit::WebsiteDataStore::resourceLoadStatisticsStore): Added. |
| * WebKit2.xcodeproj/project.pbxproj: Add new ResourceLoadStatisticsState files to build. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): Take into account the new parameter |
| specifying whether resource load statistics are being captured. |
| (WebKit::WebProcess::WebProcess): Initialized statistics changed notification timer. |
| (WebKit::WebProcess::statisticsChangedTimerFired): Added. Send bundles of site load |
| statistics to the UIProcess on a set interval. Clear out local cache after each send. |
| (WebKit::WebProcess::setResourceLoadStatisticsEnabled): Added. |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: Add new SetResourceLoadStatisticsEnabled message. |
| |
| 2016-03-04 Daniel Bates <dabates@apple.com> |
| |
| Temporarily use bundle identifier as part of user directory suffix |
| https://bugs.webkit.org/show_bug.cgi?id=155042 |
| <rdar://problem/24983174> |
| |
| Reviewed by Brent Fulgham and Brady Eidson. |
| |
| * Shared/mac/ChildProcessMac.mm: |
| (WebKit::ChildProcess::initializeSandbox): |
| |
| 2016-03-04 Alex Christensen <achristensen@webkit.org> |
| |
| Release build fix after r197572. |
| https://bugs.webkit.org/show_bug.cgi?id=154993 |
| |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]): |
| |
| 2016-03-04 Alex Christensen <achristensen@webkit.org> |
| |
| Use NSURLSession for loading in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=154993 |
| |
| Reviewed by Sam Weinig. |
| |
| * config.h: |
| |
| 2016-03-04 Alex Christensen <achristensen@webkit.org> |
| |
| Use NetworkSession for pings |
| https://bugs.webkit.org/show_bug.cgi?id=154984 |
| |
| Reviewed by Antti Koivisto. |
| |
| Before this patch, we were using NSURLConnection for pings when the rest of the loading was being |
| done with NSURLSession. To fix this, I implemented PingLoad, which is the NetworkSession equivalent |
| of PingHandle. |
| |
| This fixes http/tests/security/contentSecurityPolicy/report-status-code-zero-when-using-https.html |
| |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::loadPing): |
| (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier): |
| * NetworkProcess/PingLoad.h: Added. |
| (WebKit::PingLoad::PingLoad): |
| (WebKit::PingLoad::willPerformHTTPRedirection): |
| (WebKit::PingLoad::didReceiveChallenge): |
| (WebKit::PingLoad::didReceiveResponseNetworkSession): |
| (WebKit::PingLoad::didReceiveData): |
| (WebKit::PingLoad::didCompleteWithError): |
| (WebKit::PingLoad::didBecomeDownload): |
| (WebKit::PingLoad::didSendData): |
| (WebKit::PingLoad::wasBlocked): |
| (WebKit::PingLoad::cannotShowURL): |
| (WebKit::PingLoad::timeoutTimerFired): |
| (WebKit::PingLoad::~PingLoad): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-03-04 Timothy Hatcher <timothy@apple.com> |
| |
| Inform WebKit and WebCore if a page is controlled by automation. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=154991 |
| rdar://problem/24965784 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageGetIsControlledByAutomation): |
| (WKPageSetControlledByAutomation): |
| * UIProcess/API/C/WKPagePrivate.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setControlledByAutomation): |
| (WebKit::WebPageProxy::creationParameters): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::isControlledByAutomation): |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (WKBundlePageIsControlledByAutomation): |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::m_shouldDispatchFakeMouseMoveEvents): |
| (WebKit::WebPage::isControlledByAutomation): |
| (WebKit::WebPage::setControlledByAutomation): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2016-03-03 Chris Dumez <cdumez@apple.com> |
| |
| Regression(r196770): Unable to use HipChat Mac app |
| https://bugs.webkit.org/show_bug.cgi?id=154999 |
| <rdar://problem/24931959> |
| |
| Reviewed by Darin Adler. |
| |
| Have the NetworkProcess and the WebProcess pass the UIProcess bundle |
| identifier to WebCore so that we can do app detection of applications |
| using a WK2 WebView (such as HipChat). |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::initializeNetworkProcess): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| |
| 2016-03-03 Simon Fraser <simon.fraser@apple.com> |
| |
| Use larger tiles when possible to reduce per-tile painting overhead |
| https://bugs.webkit.org/show_bug.cgi?id=154985 |
| rdar://problem/23635219 |
| |
| Reviewed by Tim Horton. |
| |
| Do a bit of #include cleanup. |
| |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.h: |
| * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp: |
| * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h: |
| |
| 2016-03-03 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| Use std::make_unique<> when creating std::unique_ptr<> |
| https://bugs.webkit.org/show_bug.cgi?id=154574 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/cache/NetworkCacheStatistics.cpp: |
| (WebKit::NetworkCache::Statistics::open): |
| * NetworkProcess/cache/NetworkCacheStatistics.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::createColorChooser): |
| |
| 2016-03-03 Alex Christensen <achristensen@webkit.org> |
| |
| Move SPI to CFNetworkSPI.h |
| https://bugs.webkit.org/show_bug.cgi?id=154992 |
| |
| Reviewed by Andy Estes. |
| |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::applyBasicAuthorizationHeader): |
| |
| 2016-03-03 Alex Christensen <achristensen@webkit.org> |
| |
| Use CredentialStorage with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154939 |
| |
| Reviewed by Darin Adler. |
| |
| * config.h: |
| Added compile-time flag to help us be able to keep track and remove this code when we can. |
| * NetworkProcess/NetworkDataTask.h: |
| (WebKit::NetworkDataTask::pendingDownloadLocation): |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::clearCachedCredentials): |
| (WebKit::NetworkProcess::ensurePrivateBrowsingSession): |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkSession::sessionID): |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::applyBasicAuthorizationHeader): |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| Use a credential storage and preemptively apply basic authentication headers if we have credentials from the storage. |
| This is analogous to code in ResourceHandle::createNSURLConnection. |
| |
| (WebKit::NetworkDataTask::didReceiveChallenge): |
| Make this look more like ResourceHandle::didReceiveAuthenticationChallenge. |
| The call to tryPasswordBasedAuthentication was moved from the delegate callback to here. |
| |
| (WebKit::NetworkDataTask::willPerformHTTPRedirection): |
| Use credentials from the credential storage if they exist. This is analogous to code in ResourceHandle::willSendRequest. |
| |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| Use credentials from the credential storage if they exist. This is analogous to code in ResourceHandle::tryHandlePasswordBasedAuthentication. |
| |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): |
| If we are given a credential with CredentialPersistenceForSession, put it in the credential storage and give |
| CFNetwork a credential with CredentialPersistenceNone so it won't automatically be used again until the credential |
| storage says its ok to use again. This gives us the ability to clear session credentials when logout credentials are used. |
| This is analogous to code in ResourceHandle::receivedCredential. |
| |
| (WebKit::NetworkSession::defaultSession): |
| (WebKit::NetworkSession::NetworkSession): |
| (WebKit::NetworkSession::~NetworkSession): |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| (WebKit::NetworkSession::clearCredentials): Deleted. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::clearCachedCredentials): |
| (WebKit::WebProcess::focusedWebPage): |
| We no longer need to clear credentials from the NSURLSessions because we don't store session credentials in them. |
| Instead, calling CredentialStorage.clearCredentials is sufficient. |
| |
| 2016-03-03 Andy Estes <aestes@apple.com> |
| |
| Adopt CFNetwork storage partitioning SPI |
| https://bugs.webkit.org/show_bug.cgi?id=154957 |
| rdar://problem/23614620 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): Computed the storage partition identifier for the new session task. |
| If non-empty, set it using a NSURLSessionTask SPI. |
| |
| 2016-03-03 Alex Christensen <achristensen@webkit.org> |
| |
| [WK2] testRunner.setPrivateBrowsingEnabled doesn't work with NetworkProcess |
| https://bugs.webkit.org/show_bug.cgi?id=115274 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::blobSize): |
| (WebKit::NetworkConnectionToWebProcess::ensureLegacyPrivateBrowsingSession): |
| * NetworkProcess/NetworkConnectionToWebProcess.h: |
| * NetworkProcess/NetworkConnectionToWebProcess.messages.in: |
| * NetworkProcess/NetworkProcess.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::setPrivateBrowsingEnabled): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::destroyPrivateBrowsingSession): |
| (WebKit::WebProcess::ensureLegacyPrivateBrowsingSessionInNetworkProcess): |
| (WebKit::WebProcess::pluginProcessConnectionManager): |
| * WebProcess/WebProcess.h: |
| |
| 2016-03-02 Alex Christensen <achristensen@webkit.org> |
| |
| Properly cancel downloads when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154893 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/Downloads/Download.cpp: |
| (WebKit::Download::Download): |
| * NetworkProcess/Downloads/Download.h: |
| * NetworkProcess/Downloads/cocoa/DownloadCocoa.mm: |
| (WebKit::Download::cancel): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| |
| 2016-03-01 Ada Chan <adachan@apple.com> |
| |
| Update the media element's presentation mode properly after going in and out of full screen via the Full Screen API |
| https://bugs.webkit.org/show_bug.cgi?id=154834 |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::exitFullscreenWithoutAnimationToMode): |
| Call the new exitFullscreenWithoutAnimationToMode() method on WebVideoFullscreenInterfaceMac. |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::exitVideoFullscreenToModeWithoutAnimation): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| * WebProcess/cocoa/WebVideoFullscreenManager.h: |
| * WebProcess/cocoa/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::exitVideoFullscreenToModeWithoutAnimation): |
| |
| 2016-03-02 Beth Dakin <bdakin@apple.com> |
| |
| Crashes in media tests after http://trac.webkit.org/changeset/197461 |
| https://bugs.webkit.org/show_bug.cgi?id=154933 |
| |
| Reviewed by Eric Carlson. |
| |
| Since the controlsManagerInterface is not guaranteed to exist, it doesn't |
| make sense to return a reference. Return a pointer instead. |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::isVisible): |
| (WebKit::WebVideoFullscreenManagerProxy::controlsManagerInterface): |
| (WebKit::WebVideoFullscreenManagerProxy::fullscreenMayReturnToInline): |
| |
| 2016-03-02 Beth Dakin <bdakin@apple.com> |
| |
| Add support for playbackControlsManager |
| https://bugs.webkit.org/show_bug.cgi?id=154742 |
| -and corresponding- |
| rdar://problem/23833753 |
| |
| Reviewed by Jer Noble. |
| |
| WebVideoFullscreenManagerProxy ensures the model and interface for the |
| UIProcess side of the playbackControlsManager. It also caches the |
| m_controlsManagerContextId so that it can return the |
| controlsManagerInterface. |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::setUpVideoControlsManagerWithID): |
| (WebKit::WebVideoFullscreenManagerProxy::controlsManagerInterface): |
| |
| Pipe isPlayingMediaDidChange() to WebViewImpl, and use that information to |
| update WebViewImplAdditions. |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::isPlayingMediaDidChange): |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::isPlayingMediaDidChange): |
| (WebKit::WebPageProxy::isPlayingVideoWithAudio): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::isPlayingAudio): |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::isPlayingMediaDidChange): |
| |
| Pipe setUpVideoControlsManager to the WebVideoFullscreenManager. |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::setUpVideoControlsManager): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| Ensure the model an interface for the playbackControlsManager on the |
| WebProcess side and pass the message to the UIProcess to do the same. |
| * WebProcess/cocoa/WebVideoFullscreenManager.h: |
| * WebProcess/cocoa/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::setUpVideoControlsManager): |
| |
| 2016-03-02 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| REGRESSION(r197409): [GTK] Web process always crashes on WebPage construction after r197409 |
| https://bugs.webkit.org/show_bug.cgi?id=154918 |
| |
| Reviewed by Žan Doberšek. |
| |
| We have an incorrect check in DrawingAreaImpl constructor that has |
| never actually worked because it uses the page settings before |
| they were initialized. But that has been fixed in r197409 and now |
| we are always forcing accelerated compositing mode incorrectly, |
| because m_alwaysUseCompositing is set in the constructor and never |
| changed again. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): Remove code to set |
| settings and m_alwaysUseCompositing, since that should be done in |
| updatePreferences(). |
| (WebKit::DrawingAreaImpl::updatePreferences): Update the settings |
| accordingly and always update m_alwaysUseCompositing when AC is |
| enabled and forced in the settings. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): WebPage::updatePreferences() calls |
| DrawingArea::updatePreferences(), but since r197409 it happens |
| before the drawing area has been created. So, call |
| DrawingArea::updatePreferences() in the constructor right after |
| the main frame has been created, since |
| DrawingArea::updatePreferences() uses the main frame. |
| |
| 2016-02-29 Ada Chan <adachan@apple.com> |
| |
| Adopt the new version of AVOutputDeviceMenuController's showMenuForRect method. |
| https://bugs.webkit.org/show_bug.cgi?id=154823 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::showPlaybackTargetPicker): |
| (WebKit::WebPageProxy::customPlaybackActionSelected): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::showPlaybackTargetPicker): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::customPlaybackActionSelected): |
| |
| 2016-02-29 Brent Fulgham <bfulgham@apple.com> |
| |
| [WK2] Stub support for WebsiteDataTypeResourceLoadStatistics |
| https://bugs.webkit.org/show_bug.cgi?id=154689 |
| <rdar://problem/24702576> |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/WebsiteData/WebsiteDataType.h: Add new WebsiteDataTypeResourceLoadStatistics. |
| * UIProcess/API/Cocoa/WKWebsiteDataRecord.mm: |
| (dataTypesToString): Handle new type. |
| * UIProcess/API/Cocoa/WKWebsiteDataRecordInternal.h: |
| (WebKit::toWebsiteDataTypes): Ditto. |
| (WebKit::toWKWebsiteDataTypes): Ditto. |
| * UIProcess/API/Cocoa/WKWebsiteDataRecordPrivate.h: Add new _WebsiteDataTypeResourceLoadStatistics. |
| |
| 2016-03-01 Alex Christensen <achristensen@webkit.org> |
| |
| Correctly keep track of NetworkDataTasks with and without credentials when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154876 |
| |
| Reviewed by Brady Eidson. |
| |
| I was seeing an assertion failure from ASSERT(!m_session.m_dataTaskMap.contains(taskIdentifier())) |
| in the NetworkDataTask constructor sometimes. This is because a task identifier is not enough information |
| to uniquely find a NetworkDataTask in a NetworkSession since r196034 because there are two NSURLSessions |
| in a NetworkSession, one with credentials and one without. The assertion would fire in a case like if we |
| made the first NetworkDataTask with credentials (taskIdentifier is 1) and the first NetworkDataTask |
| without credentials before the first NetworkDataTask with credentials was finished. In that case, the |
| taskIdentifier would also be 1, which would conflict with the other taskIdentifier. That taskIdentifier |
| would uniquely identify the task in the correct NSURLSession, though, so the solution is to keep a map |
| for each NSURLSession in the NetworkSession. |
| |
| * NetworkProcess/NetworkDataTask.h: |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| (WebKit::NetworkDataTask::~NetworkDataTask): |
| (WebKit::NetworkDataTask::suspend): |
| (WebKit::serverTrustCredential): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:didSendBodyData:totalBytesSent:totalBytesExpectedToSend:]): |
| (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveData:]): |
| (-[WKNetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| (WebKit::NetworkSession::clearCredentials): |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| (WebKit::NetworkSession::addDownloadID): |
| |
| 2016-03-01 Andreas Kling <akling@apple.com> |
| |
| REGRESSION (r154616): Accelerated drawing is off during the initial load |
| <https://webkit.org/b/123812> |
| |
| Reviewed by Tim Horton. |
| |
| Load preferences before instantiating the first DrawingArea. This ensures that we do the |
| initial paint using accelerated drawing, and avoids allocating persistent data structures |
| only needed by the software rendering path. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| |
| 2016-03-01 Alex Christensen <achristensen@webkit.org> |
| |
| Fix tests when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154866 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::globalCustomProtocolManager): |
| (WebKit::NetworkSession::setCustomProtocolManager): |
| |
| Use a static NeverDestroyed instead of a local NeverDestroyed. |
| This fix was suggested by Darin after I broke the custom protocol tests in r197362. |
| |
| (WebKit::NetworkSession::clearCredentials): |
| |
| In r197223 I added code that I thought cleared the credentials of a session, but it was |
| actually trying (and failing) to remove the credentials from the NSURLCredentialStorage that |
| were stored with NSURLCredentialPersistencePermanent. |
| This was causing credentials stored in an NSURLSession with NSURLCredentialPersistenceForSession |
| to remain for the next tests, and was causing credentials from previous tests, usually from |
| http/tests/loading/basic-credentials-sent-automatically.html, to be used in future tests. |
| Creating a new NSURLSession is the equivalent of CredentialStorage::clearCredentials because it |
| removes all credentials stored with NSURLCredentialPersistenceForSession. |
| |
| 2016-03-01 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| NetworkCache: Web process leaks resource buffer when using shareable reasources |
| https://bugs.webkit.org/show_bug.cgi?id=154852 |
| |
| Reviewed by Darin Adler. |
| |
| ResourceLoader::didReceiveBuffer() expects a PassRefPtr, but we |
| are passing a raw pointer making PassRefPtr to take another |
| reference instead of transfering the ownership as expected. |
| |
| * WebProcess/Network/WebResourceLoader.cpp: |
| (WebKit::WebResourceLoader::didReceiveResource): |
| |
| 2016-02-29 Zan Dobersek <zdobersek@igalia.com> |
| |
| ThreadedCompositor: clean up composition-specific resources before shutting down the thread |
| https://bugs.webkit.org/show_bug.cgi?id=154793 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: |
| (WebKit::ThreadedCompositor::runCompositingThread): Before concluding the |
| compositing thread run, clean up all the resources that were allocated at |
| the start, and in the reverse order. Specifically, we now also deallocate |
| the CoordinatedGraphicsScene and the SimpleViewportController objects. This |
| way these are not deallocated on the main thread when the ThreadedCompositor |
| destructor would otherwise clean them up. |
| |
| 2016-02-29 Zan Dobersek <zdobersek@igalia.com> |
| |
| ThreadSafeCoordinatedSurface: remove the unused private create() static method |
| https://bugs.webkit.org/show_bug.cgi?id=154792 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Remove the static ThreadSafeCoordinatedSurface::create() method that accepted |
| a std::unique_ptr<ImageBuffer> object as its third parameter. This was not used |
| anywhere. |
| |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp: |
| (WebKit::ThreadSafeCoordinatedSurface::create): Deleted. |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h: |
| |
| 2016-02-29 Simon Fraser <simon.fraser@apple.com> |
| |
| Remove the experimental feature of antialiased font dilation |
| https://bugs.webkit.org/show_bug.cgi?id=154843 |
| |
| Reviewed by Zalan Bujtas. |
| |
| Remove the "antialiased font dilation" code path, and related prefs. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetAntialiasedFontDilationEnabled): |
| (WKPreferencesGetAntialiasedFontDilationEnabled): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _antialiasedFontDilationEnabled]): Deleted. |
| (-[WKPreferences _setAntialiasedFontDilationEnabled:]): Deleted. |
| * UIProcess/API/Cocoa/WKPreferencesPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): Deleted. |
| |
| 2016-02-29 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: WebKit 2 IPC layer easily confused about multiple web processes being connected. |
| https://bugs.webkit.org/show_bug.cgi?id=154837 |
| |
| Reviewed by Alex Christensen. |
| |
| The crux of the bug is that WebProcesses cannot assign themselves server-unique identifiers... |
| The server must do that for them. |
| |
| A once-per-session-per-WebProcess sync message and a few updates to connection management fix this. |
| |
| * DatabaseProcess/DatabaseToWebProcessConnection.cpp: |
| (WebKit::DatabaseToWebProcessConnection::didReceiveSyncMessage): |
| (WebKit::generateConnectionToServerIdentifier): |
| (WebKit::DatabaseToWebProcessConnection::establishIDBConnectionToServer): |
| * DatabaseProcess/DatabaseToWebProcessConnection.h: |
| * DatabaseProcess/DatabaseToWebProcessConnection.messages.in: |
| |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp: |
| (WebKit::WebIDBConnectionToServer::WebIDBConnectionToServer): |
| (WebKit::generateConnectionToServerIdentifier): Deleted. |
| |
| * WebProcess/Databases/WebToDatabaseProcessConnection.cpp: |
| (WebKit::WebToDatabaseProcessConnection::didReceiveMessage): |
| (WebKit::WebToDatabaseProcessConnection::idbConnectionToServerForSession): |
| * WebProcess/Databases/WebToDatabaseProcessConnection.h: |
| |
| 2016-02-29 Alex Christensen <achristensen@webkit.org> |
| |
| Don't call NetworkProcess::singleton from WebProcess when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154829 |
| |
| Reviewed by Anders Carlsson. |
| |
| We were calling NetworkProcess::singleton when making the default session in the |
| WebProcess, which caused bad things to happen. We also were never clearing the |
| credentials in the WebProcess between tests because it used to always call |
| NetworkProcess::singleton, which caused flaky tests. |
| |
| This fixes repeatable crashes in http/tests/media/media-document-referer.html and |
| http/tests/media/media-document.html when using NetworkSession. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::NetworkProcess): |
| (WebKit::NetworkProcess::~NetworkProcess): |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::configurationForType): |
| (WebKit::globalCustomProtocolManager): |
| (WebKit::NetworkSession::setCustomProtocolManager): |
| (WebKit::NetworkSession::defaultSession): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::clearCachedCredentials): |
| |
| 2016-02-29 Gavin Barraclough <barraclough@apple.com> |
| |
| RefCounter<T>::Event -> RefCounterEvent |
| https://bugs.webkit.org/show_bug.cgi?id=154767 |
| |
| Reviewed by Darin Adler. |
| |
| RefCounter<T>::Event is kinda verbose to use, and there is no need for this |
| to be specific to a particular typeof RefCounter. Move the enum class up to |
| the top level & rename to RefCounterEvent. |
| |
| Also remove UserObservablePageToken - this is vestigial & not really offering |
| anything over just using UserObservablePageCounter::Token directly. |
| |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::PluginProcessManager): |
| * UIProcess/Plugins/PluginProcessManager.h: |
| * UIProcess/Plugins/mac/PluginProcessManagerMac.mm: |
| (WebKit::PluginProcessManager::updateProcessSuppressionDisabled): |
| * UIProcess/ProcessThrottler.cpp: |
| (WebKit::ProcessThrottler::ProcessThrottler): |
| (WebKit::m_backgroundCounter): |
| (WebKit::m_suspendMessageCount): |
| * UIProcess/ProcessThrottler.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::WebProcessPool): |
| (WebKit::m_processSuppressionDisabledForPageCounter): |
| (WebKit::m_hiddenPageThrottlingAutoIncreasesCounter): |
| * UIProcess/WebProcessPool.h: |
| |
| 2016-02-29 Konstantin Tokarev <annulen@yandex.ru> |
| |
| Fixed compilation with !ENABLE(DATABASE_PROCESS). |
| https://bugs.webkit.org/show_bug.cgi?id=154813 |
| |
| Reviewed by Michael Catanzaro. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::terminateDatabaseProcess): Added missing #if |
| guard. |
| |
| 2016-02-29 Adrien Plazas <aplazas@igalia.com> |
| |
| [GTK] Touch slider test fails due to assertion in webkitWebViewBaseTouchEvent() |
| https://bugs.webkit.org/show_bug.cgi?id=153829 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Once a touch event sequence is identified as a gesture, remove it |
| from the list of handled touch events. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseTouchEvent): |
| |
| 2016-02-29 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [Mac][cmake] Unreviewed buildfix after r197177. Just for fun. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-28 Sam Weinig <sam@webkit.org> |
| |
| Reimplement WKPageGroup in terms of WKUserContentController |
| https://bugs.webkit.org/show_bug.cgi?id=154804 |
| |
| Reviewed by Dan Bernstein. |
| |
| Instead of having both WebPageGroup and WebUserContentControllerProxy both keep track |
| of user scripts and user stylesheets, give WebPageGroup a WebUserContentControllerProxy |
| and let it take care of things. This allows us to remove a ton of duplicate code, and |
| provides a convenient way for clients currently using PageGroup based user content insertion |
| to start using UserContentController, since they can now be used at the same time. |
| |
| When using WKPageConfigurationRef, the rule is: |
| - If you don't set a WKUserContentControllerRef, the one from the WKPageGroupRef will be used. |
| - If you do set a WKUserContentControllerRef, it will be used, and the one from the WKPageGroupRef |
| will do nothing for that web view. |
| |
| * DerivedSources.make: |
| Remove WebPageGroupProxy. It no longer is a MessageReceiver. |
| |
| * Shared/WebPageGroupData.cpp: |
| (WebKit::WebPageGroupData::encode): |
| (WebKit::WebPageGroupData::decode): |
| * Shared/WebPageGroupData.h: |
| Stop encoding/decoding user content, instead just encode the identifier to the UserContentController. |
| |
| * UIProcess/API/C/WKPageGroup.cpp: |
| (WKPageGroupGetUserContentController): |
| * UIProcess/API/C/WKPageGroup.h: |
| Add getter for the underlying WKUserContentControllerRef. |
| |
| * UIProcess/API/cpp/WKRetainPtr.h: |
| (WebKit::retainWK): |
| Add retainWK() helper to match RetainPtr's retainPtr() helper. |
| |
| * UIProcess/WebPageGroup.cpp: |
| (WebKit::WebPageGroup::WebPageGroup): |
| (WebKit::WebPageGroup::userContentController): |
| (WebKit::WebPageGroup::addUserStyleSheet): |
| (WebKit::WebPageGroup::addUserScript): |
| (WebKit::WebPageGroup::removeAllUserStyleSheets): |
| (WebKit::WebPageGroup::removeAllUserScripts): |
| (WebKit::WebPageGroup::removeAllUserContent): |
| (WebKit::WebPageGroup::addUserContentExtension): |
| (WebKit::WebPageGroup::removeUserContentExtension): |
| (WebKit::WebPageGroup::removeAllUserContentExtensions): |
| * UIProcess/WebPageGroup.h: |
| Pass through to the WebUserContentControllerProxy. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::finishInitializingWebPageAfterProcessLaunch): |
| (WebKit::WebPageProxy::creationParameters): |
| * UIProcess/WebPageProxy.h: |
| WebPageProxies always have a WebUserContentControllerProxy now, so it can go in a Ref and |
| a few branches can be removed. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::createWebPage): |
| If a UserContentController is not passed in, use the one from the PageGroup. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Remove files. |
| |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| Add some #includes that are now needed. |
| |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::getOrCreate): |
| * WebProcess/UserContent/WebUserContentController.h: |
| Modernize WebUserContentController::getOrCreate to return a Ref. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| (WebKit::m_shouldDispatchFakeMouseMoveEvents): |
| (WebKit::WebPage::addUserScript): |
| (WebKit::WebPage::addUserStyleSheet): |
| (WebKit::WebPage::removeAllUserContent): |
| * WebProcess/WebPage/WebPage.h: |
| Store the WebUserContentController in Ref, remove unnecessary branches/asserts. |
| |
| * WebProcess/WebPage/WebPageGroupProxy.cpp: |
| (WebKit::WebPageGroupProxy::WebPageGroupProxy): |
| (WebKit::WebPageGroupProxy::~WebPageGroupProxy): |
| (WebKit::WebPageGroupProxy::userContentController): |
| (WebKit::WebPageGroupProxy::addUserStyleSheet): Deleted. |
| (WebKit::WebPageGroupProxy::addUserScript): Deleted. |
| (WebKit::WebPageGroupProxy::removeAllUserStyleSheets): Deleted. |
| (WebKit::WebPageGroupProxy::removeAllUserScripts): Deleted. |
| (WebKit::WebPageGroupProxy::removeAllUserContent): Deleted. |
| (WebKit::WebPageGroupProxy::addUserContentExtension): Deleted. |
| (WebKit::WebPageGroupProxy::removeUserContentExtension): Deleted. |
| (WebKit::WebPageGroupProxy::removeAllUserContentExtensions): Deleted. |
| * WebProcess/WebPage/WebPageGroupProxy.h: |
| Store a WebUserContentController in a Ref, remove now unnecessary message handling functions. |
| |
| * WebProcess/WebPage/WebPageGroupProxy.messages.in: |
| Removed. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didReceiveMessage): |
| Remove routing to WebPageGroupProxy, which is no longer a MessageReceiver. |
| |
| 2016-02-28 Sam Weinig <sam@webkit.org> |
| |
| Bind _WKUserStyleSheets to _WKUserContentWorlds to allow for grouping of user content by associating to a world |
| https://bugs.webkit.org/show_bug.cgi?id=154798 |
| |
| Reviewed by Dan Bernstein. |
| |
| Treat _WKUserStyleSheets like WKUserScripts and allow them to be bound to a _WKUserContentWorld. |
| The immediate benefit of this is allowing a client to bind a set of user content (scripts and stylesheets |
| for now) to a world and have them easily remove all user content associated with that world easily. |
| |
| * Shared/API/APIArray.h: |
| Add helpers removeAllMatching and removeAllOfTypeMatching. |
| |
| * UIProcess/API/APIUserStyleSheet.h: |
| Add API::UserContentWorld member. |
| |
| * UIProcess/API/Cocoa/WKUserContentController.mm: |
| (-[WKUserContentController _removeAllUserScriptsAssociatedWithUserContentWorld:]): |
| (-[WKUserContentController _removeAllUserStyleSheetsAssociatedWithUserContentWorld:]): |
| * UIProcess/API/Cocoa/WKUserContentControllerPrivate.h: |
| Add _removeAllUserScriptsAssociatedWithUserContentWorld and _removeAllUserStyleSheetsAssociatedWithUserContentWorld. |
| |
| * UIProcess/API/Cocoa/WKUserScript.mm: |
| (-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:userContentWorld:]): |
| (toStringVector): Deleted. |
| * UIProcess/API/Cocoa/_WKUserContentWorldInternal.h: |
| (API::toStringVector): |
| Move toStringVector to a location where it can be shared. |
| |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.h: |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.mm: |
| (-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:userContentWorld:]): |
| Add new initializer which has a world to be bound to. While here, match WKUserScript and add support for the |
| legacy whitelist and blacklists. |
| |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::addProcess): |
| (WebKit::WebUserContentControllerProxy::removeProcess): |
| (WebKit::WebUserContentControllerProxy::addUserContentWorldUse): |
| (WebKit::WebUserContentControllerProxy::shouldSendRemoveUserContentWorldsMessage): |
| (WebKit::WebUserContentControllerProxy::removeUserContentWorldUses): |
| (WebKit::WebUserContentControllerProxy::addUserScript): |
| (WebKit::WebUserContentControllerProxy::removeUserScript): |
| (WebKit::WebUserContentControllerProxy::removeAllUserScripts): |
| (WebKit::WebUserContentControllerProxy::addUserStyleSheet): |
| (WebKit::WebUserContentControllerProxy::removeUserStyleSheet): |
| (WebKit::WebUserContentControllerProxy::removeAllUserStyleSheets): |
| * UIProcess/UserContent/WebUserContentControllerProxy.h: |
| Refactor to share the code which decides whether to send AddUserContentWorlds/RemoveUserContentWorlds |
| messages. |
| |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::addUserContentWorlds): |
| (WebKit::WebUserContentController::removeUserContentWorlds): |
| (WebKit::WebUserContentController::addUserScripts): |
| (WebKit::WebUserContentController::removeUserScript): |
| (WebKit::WebUserContentController::removeAllUserScripts): |
| (WebKit::WebUserContentController::addUserStyleSheets): |
| (WebKit::WebUserContentController::removeUserStyleSheet): |
| (WebKit::WebUserContentController::removeAllUserStyleSheets): |
| * WebProcess/UserContent/WebUserContentController.h: |
| * WebProcess/UserContent/WebUserContentController.messages.in: |
| Add support for binding stylesheets to worlds and allow removing all the scripts/stylesheets from a |
| set of worlds at once by passing Vectors of world identifiers in the remove messages. |
| |
| 2016-02-27 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r197204, r197207, r197211, r197217, |
| r197218, and r197219. |
| https://bugs.webkit.org/show_bug.cgi?id=154780 |
| |
| Caused crashes in WebVideoFullscreenManagerProxy (Requested by |
| ap on #webkit). |
| |
| Reverted changesets: |
| |
| "Add support for playbackControlsManager" |
| https://bugs.webkit.org/show_bug.cgi?id=154742 |
| http://trac.webkit.org/changeset/197204 |
| |
| "Attempted build fix." |
| http://trac.webkit.org/changeset/197207 |
| |
| "Attempted build fix." |
| http://trac.webkit.org/changeset/197211 |
| |
| "Attempted 32-bit build fix." |
| http://trac.webkit.org/changeset/197217 |
| |
| "Another 32-bit build fix." |
| http://trac.webkit.org/changeset/197218 |
| |
| "32-bit!!!" |
| http://trac.webkit.org/changeset/197219 |
| |
| 2016-02-26 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix GTK+ clean build. |
| |
| Add missing header include. |
| |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp: |
| |
| 2016-02-26 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Network cache: old pages returned by disk cache on history navigation after session is restored |
| https://bugs.webkit.org/show_bug.cgi?id=153230 |
| |
| Reviewed by Chris Dumez. |
| |
| Since r181734, the network cache never revalidates resources for |
| history navigation. This is good for the memory cache, but in the |
| case of disk cache, we might end up with outdated pages when |
| restoring the session. When restoring the session happens because |
| of an API request (we also restore the session when recovering |
| from a web process crash), we should revalidate back forward list |
| requests in the disk cache if needed. This will only happen the |
| first time they are loaded after a session restore. After a web process |
| crash, resources will be used uncondionally from the disk cache. |
| |
| * WebProcess/WebPage/WebBackForwardListProxy.cpp: |
| (WebKit::WebBackForwardListProxy::addItemFromUIProcess): Use Ref&& |
| instead of PassRefPtr. |
| * WebProcess/WebPage/WebBackForwardListProxy.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WePage::WebPage): Call restoreSessionInternal passing |
| No as restoredByAPIRequest parameter. |
| (WebKit::WebPage::restoreSessionInternal): Set restoredFromSession |
| flag to the created HistoryItem if the item was restored from |
| session by an API request. |
| (WebKit::WebPage::restoreSession): Call restoreSessionInternal |
| passing Yes as restoredByAPIRequest parameter. |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2016-02-26 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| Fix a typo. |
| |
| Unreviewed. Shame I didn't notice in the previous commit. |
| |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::removeUserContentWorld): |
| |
| 2016-02-26 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| Fix GTK and maybe EFL build after r197172. |
| |
| Unreviewed. |
| |
| * CMakeLists.txt: |
| * UIProcess/API/gtk/WebKitUserContent.cpp: |
| (_WebKitUserScript::_WebKitUserScript): |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::removeUserContentWorld): |
| (WebKit::WebUserContentController::addUserScripts): |
| (WebKit::WebUserContentController::removeUserScript): |
| (WebKit::WebUserContentController::removeAllUserScripts): |
| |
| 2016-02-26 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] Fix order of parameters in gtkdoc for webkit_web_view_get_snapshot |
| |
| Unreviewed. |
| |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| |
| 2016-02-26 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: New database versions are never committed to SQLite. |
| <rdar://problem/24860952> and https://bugs.webkit.org/show_bug.cgi?id=154741 |
| |
| Modern IDB: If a database handle is not open, files are not actually deleted from disk |
| https://bugs.webkit.org/show_bug.cgi?id=154756 |
| |
| Reviewed by Alex Christensen. |
| |
| Add WK2 SPI to force termination of the database process. |
| |
| * UIProcess/API/Cocoa/WKProcessPool.mm: |
| (-[WKProcessPool _terminateDatabaseProcess]): |
| * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::terminateDatabaseProcess): |
| * UIProcess/WebProcessPool.h: |
| |
| 2016-02-26 Alex Christensen <achristensen@webkit.org> |
| |
| Clear credentials and prevent unauthorized credential storage when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154755 |
| |
| Reviewed by Brady Eidson. |
| |
| Credentials from previous tests were being used sometimes, notably in |
| http/tests/misc/401-alternative-content.php when running multiple credential-based |
| tests with the same WebKitTestRunner. |
| |
| * NetworkProcess/NetworkDataTask.h: |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::clearCachedCredentials): |
| (WebKit::NetworkProcess::ensurePrivateBrowsingSession): |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::~NetworkSession): |
| (WebKit::NetworkSession::clearCredentials): |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| |
| 2016-02-26 Gavin Barraclough <barraclough@apple.com> |
| |
| Page TimerAlignmentIntervalIncrease mechanism should have upper limit |
| https://bugs.webkit.org/show_bug.cgi?id=154744 |
| |
| Reviewed by Geoff Garen. |
| |
| There would be diminishing returns from throttling timers in background pages infinitely. |
| Add a heuristic to limit appropriately. |
| |
| The flow of data here is WebPageProxy informs WebProcessPool of the number of pages |
| participating in this mechanism, WebProcessPool computes an apropriate limit and pushes |
| this out to the WebProcesses, which in turn update each of their pages. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| - Call updateHidenPageThrottingAutoIncreases on creation. |
| (WebKit::WebPageProxy::updateHidenPageThrottingAutoIncreases): |
| - If increasing timer throttling is enabled increment the counter on WebProcessPool. |
| (WebKit::WebPageProxy::preferencesDidChange): |
| - Call updateHidenPageThrottingAutoIncreases on preferences change. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::WebProcessPool): |
| - initialize new RefCounter. |
| (WebKit::WebProcessPool::updateHidenPageThrottingAutoIncreaseLimit): |
| - When count of participating pages changes, update the limit. |
| * UIProcess/WebProcessPool.h: |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::setHiddenPageTimerThrottlingIncreaseLimit): |
| - Propagate limit to WebCore::Page. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::setHiddenPageTimerThrottlingIncreaseLimit): |
| - Propagate limit to WebPages. |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: |
| - Added new message. |
| |
| 2016-02-26 Beth Dakin <bdakin@apple.com> |
| |
| Attempted build fix. |
| |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::setUpVideoControlsManagerWithID): |
| (WebKit::WebVideoFullscreenManagerProxy::resetMediaState): |
| |
| 2016-02-26 Anders Carlsson <andersca@apple.com> |
| |
| Fix Yosemite build. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataSize.mm: |
| (-[_WKWebsiteDataSize sizeOfDataTypes:]): |
| |
| 2016-02-26 Beth Dakin <bdakin@apple.com> |
| |
| Add support for playbackControlsManager |
| https://bugs.webkit.org/show_bug.cgi?id=154742 |
| -and corresponding- |
| rdar://problem/23833753 |
| |
| Reviewed by Jer Noble. |
| |
| WebVideoFullscreenManagerProxy ensures the model and interface for the |
| UIProcess side of the playbackControlsManager. It also caches the |
| m_controlsManagerContextId so that it can return the |
| controlsManagerInterface. |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::setUpVideoControlsManagerWithID): |
| (WebKit::WebVideoFullscreenManagerProxy::controlsManagerInterface): |
| |
| Pipe isPlayingMediaDidChange() to WebViewImpl, and use that information to |
| update WebViewImplAdditions. |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::isPlayingMediaDidChange): |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::isPlayingMediaDidChange): |
| (WebKit::WebPageProxy::isPlayingVideoWithAudio): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::isPlayingAudio): |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::isPlayingMediaDidChange): |
| |
| Pipe setUpVideoControlsManager to the WebVideoFullscreenManager. |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::setUpVideoControlsManager): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| Ensure the model an interface for the playbackControlsManager on the |
| WebProcess side and pass the message to the UIProcess to do the same. |
| * WebProcess/cocoa/WebVideoFullscreenManager.h: |
| * WebProcess/cocoa/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::setUpVideoControlsManager): |
| |
| 2016-02-26 Anders Carlsson <andersca@apple.com> |
| |
| WKWebsiteDataStore/WKWebsiteDataRecord needs to provide size information about each type of data |
| https://bugs.webkit.org/show_bug.cgi?id=154750 |
| |
| Reviewed by Tim Horton. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::fetchWebsiteData): |
| WebsiteData::Entry now takes a size. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::fetchDiskCacheEntries): |
| If necessary, compute sizes. |
| |
| (WebKit::NetworkProcess::fetchWebsiteData): |
| Just pass 0 for the CF cache for now. |
| |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| FetchWebsiteData now takes a OptionSet<WebsiteDataFetchOption>. |
| |
| * Shared/WebsiteData/WebsiteData.cpp: |
| (WebKit::WebsiteData::Entry::encode): |
| (WebKit::WebsiteData::Entry::decode): |
| Encode and decode the size. |
| |
| * Shared/WebsiteData/WebsiteData.h: |
| Add size. |
| |
| * Shared/WebsiteData/WebsiteDataFetchOption.h: |
| Add new enum. |
| |
| * UIProcess/API/C/WKApplicationCacheManager.cpp: |
| (WKApplicationCacheManagerGetApplicationCacheOrigins): |
| Pass an empty OptionSet<WebsiteDataFetchOption>. |
| |
| * UIProcess/API/C/WKResourceCacheManager.cpp: |
| (WKResourceCacheManagerGetCacheOrigins): |
| Pass an empty OptionSet<WebsiteDataFetchOption>. |
| |
| * UIProcess/API/Cocoa/WKWebsiteDataRecord.mm: |
| (-[WKWebsiteDataRecord description]): |
| If we have a size, print it out as well. |
| |
| (-[WKWebsiteDataRecord _dataSize]): |
| Return a size if we have one. |
| |
| * UIProcess/API/Cocoa/WKWebsiteDataRecordPrivate.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.mm: |
| (-[WKWebsiteDataStore fetchDataRecordsOfTypes:completionHandler:]): |
| Call through to the SPI. |
| |
| (-[WKWebsiteDataStore _fetchDataRecordsOfTypes:withOptions:completionHandler:]): |
| Compute the right options. |
| |
| * UIProcess/API/Cocoa/WKWebsiteDataStoreInternal.h: |
| Import WKWebsiteDataStorePrivate.h. |
| |
| * UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h: |
| Add SPI. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataSize.h: |
| * UIProcess/API/Cocoa/_WKWebsiteDataSize.mm: |
| (-[_WKWebsiteDataSize initWithSize:]): |
| (-[_WKWebsiteDataSize totalSize]): |
| (-[_WKWebsiteDataSize sizeOfDataTypes:]): |
| Add _WKWebsiteDataSize header. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataSizeInternal.h: Add IPI header. |
| |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::NetworkProcessProxy::fetchWebsiteData): |
| This now takes a OptionSet<WebsiteDataFetchOption>. |
| |
| * UIProcess/Network/NetworkProcessProxy.h: |
| Update members. |
| |
| * UIProcess/WebsiteData/WebsiteDataRecord.h: |
| Add a hash map from types to sizes. |
| |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::WebsiteDataStore::fetchData): |
| This now takes a OptionSet<WebsiteDataFetchOption>. |
| |
| * UIProcess/WebsiteData/WebsiteDataStore.h: |
| Update member functions. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new files. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::fetchWebsiteData): |
| This now takes a OptionSet<WebsiteDataFetchOption>. |
| |
| 2016-02-26 Anders Carlsson <andersca@apple.com> |
| |
| Add a toWebsiteDataType and reimplement toWebsiteDataTypes using it |
| https://bugs.webkit.org/show_bug.cgi?id=154746 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/API/Cocoa/WKWebsiteDataRecordInternal.h: |
| (WebKit::toWebsiteDataType): |
| (WebKit::toWebsiteDataTypes): |
| (WebKit::toWKWebsiteDataTypes): |
| |
| 2016-02-26 Anders Carlsson <andersca@apple.com> |
| |
| Add WTF::OptionSet and use it for the website data types enum |
| https://bugs.webkit.org/show_bug.cgi?id=154733 |
| |
| Reviewed by Geoffrey Garen. |
| |
| This is a pretty mechanical change: |
| |
| Convert all uses of the WebsiteDataTypes enum to WTF::OptionSet. Rename the WebsiteDataTypes enum to |
| WebsiteDataType (since it only represents a single data type), and rename headers. Encode and decode WTF::OptionSet properly. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::fetchWebsiteData): |
| (WebKit::DatabaseProcess::deleteWebsiteData): |
| (WebKit::DatabaseProcess::deleteWebsiteDataForOrigins): |
| * DatabaseProcess/DatabaseProcess.h: |
| * DatabaseProcess/DatabaseProcess.messages.in: |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::fetchDiskCacheEntries): |
| (WebKit::NetworkProcess::fetchWebsiteData): |
| (WebKit::NetworkProcess::deleteWebsiteData): |
| (WebKit::NetworkProcess::deleteWebsiteDataForOrigins): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * Platform/IPC/ArgumentCoders.h: |
| (IPC::ArgumentCoder<OptionSet<T>>::encode): |
| (IPC::ArgumentCoder<OptionSet<T>>::decode): |
| * Scripts/webkit/messages.py: |
| (class_template_headers): |
| * Shared/WebsiteData/WebsiteData.h: |
| * Shared/WebsiteData/WebsiteDataType.h: Renamed from Source/WebKit2/Shared/WebsiteData/WebsiteDataTypes.h. |
| * UIProcess/API/C/WKApplicationCacheManager.cpp: |
| (WKApplicationCacheManagerGetApplicationCacheOrigins): |
| (WKApplicationCacheManagerDeleteEntriesForOrigin): |
| (WKApplicationCacheManagerDeleteAllEntries): |
| * UIProcess/API/C/WKResourceCacheManager.cpp: |
| (toWebsiteDataTypes): |
| (WKResourceCacheManagerClearCacheForOrigin): |
| * UIProcess/API/Cocoa/WKWebsiteDataRecordInternal.h: |
| (WebKit::toWebsiteDataTypes): |
| (WebKit::toWKWebsiteDataTypes): |
| * UIProcess/Databases/DatabaseProcessProxy.cpp: |
| (WebKit::DatabaseProcessProxy::fetchWebsiteData): |
| (WebKit::DatabaseProcessProxy::deleteWebsiteData): |
| (WebKit::DatabaseProcessProxy::deleteWebsiteDataForOrigins): |
| * UIProcess/Databases/DatabaseProcessProxy.h: |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::NetworkProcessProxy::fetchWebsiteData): |
| (WebKit::NetworkProcessProxy::deleteWebsiteData): |
| (WebKit::NetworkProcessProxy::deleteWebsiteDataForOrigins): |
| * UIProcess/Network/NetworkProcessProxy.h: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::fetchWebsiteData): |
| (WebKit::WebProcessProxy::deleteWebsiteData): |
| (WebKit::WebProcessProxy::deleteWebsiteDataForOrigins): |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/WebsiteData/WebsiteDataRecord.cpp: |
| (WebKit::WebsiteDataRecord::add): |
| (WebKit::WebsiteDataRecord::addCookieHostName): |
| (WebKit::WebsiteDataRecord::addPluginDataHostName): |
| * UIProcess/WebsiteData/WebsiteDataRecord.h: |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::computeNetworkProcessAccessTypeForDataFetch): |
| (WebKit::computeWebProcessAccessTypeForDataFetch): |
| (WebKit::WebsiteDataStore::fetchData): |
| (WebKit::computeNetworkProcessAccessTypeForDataRemoval): |
| (WebKit::computeWebProcessAccessTypeForDataRemoval): |
| (WebKit::WebsiteDataStore::removeData): |
| * UIProcess/WebsiteData/WebsiteDataStore.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::fetchWebsiteData): |
| (WebKit::WebProcess::deleteWebsiteData): |
| (WebKit::WebProcess::deleteWebsiteDataForOrigins): |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: |
| |
| 2016-02-26 Sam Weinig <sam@webkit.org> |
| |
| Try to fix the Yosemite build again. |
| |
| * UIProcess/API/Cocoa/WKUserScript.mm: |
| (toStringVector): |
| (-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:userContentWorld:]): |
| |
| 2016-02-26 Sam Weinig <sam@webkit.org> |
| |
| Try to fix the Yosemite build. |
| |
| * UIProcess/API/Cocoa/WKUserScriptPrivate.h: |
| |
| 2016-02-25 Anders Carlsson <andersca@apple.com> |
| |
| Cache::traverse should pass the record info to its traversal handler |
| https://bugs.webkit.org/show_bug.cgi?id=154695 |
| |
| Reviewed by Antti Koivisto. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::fetchDiskCacheEntries): |
| (WebKit::clearDiskCacheEntries): |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::NetworkCache::Cache::traverse): |
| * NetworkProcess/cache/NetworkCache.h: |
| |
| 2016-02-25 Gavin Barraclough <barraclough@apple.com> |
| |
| RefCounter value changed callback should be called on all changes (not just zero edge). |
| https://bugs.webkit.org/show_bug.cgi?id=154699 |
| |
| Reviewed by Anders Carlsson. |
| |
| RefCounter currently only triggers a callback when the count goes from zero |
| to non-zero and vice-versa. Change that, to be useful to more clients. |
| |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::PluginProcessManager): |
| - Updated for change in RefCounter callback siganture. |
| * UIProcess/Plugins/PluginProcessManager.h: |
| - Updated for change in RefCounter callback siganture. |
| * UIProcess/Plugins/mac/PluginProcessManagerMac.mm: |
| (WebKit::PluginProcessManager::updateProcessSuppressionDisabled): |
| - updated logic for enabling process supression. |
| * UIProcess/ProcessThrottler.cpp: |
| (WebKit::ProcessThrottler::ProcessThrottler): |
| - Updated for change in RefCounter callback siganture. |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::WebProcessPool): |
| - Updated for change in RefCounter callback siganture. |
| |
| 2016-02-26 Andreas Kling <akling@apple.com> |
| |
| Remove unused CFNetwork disk cache mmap optimization in WebKit2. |
| <https://webkit.org/b/154727> |
| |
| Reviewed by Darin Adler. |
| |
| Nuke all the code related to the mmap optimization we had for CFNetwork's disk cache. |
| This code has not been used since we moved to the WebKit2 network cache. |
| |
| * NetworkProcess/Downloads/PendingDownload.h: |
| * NetworkProcess/NetworkLoadClient.h: |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::sendBufferMaybeAborting): Deleted. |
| * NetworkProcess/NetworkResourceLoader.h: |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: |
| (WebKit::NetworkProcess::platformLowMemoryHandler): Deleted. |
| (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa): Deleted. |
| * NetworkProcess/mac/NetworkDiskCacheMonitor.h: Removed. |
| * NetworkProcess/mac/NetworkDiskCacheMonitor.mm: Removed. |
| * NetworkProcess/mac/NetworkLoadMac.mm: |
| (WebKit::NetworkLoad::willCacheResponseAsync): Deleted. |
| * NetworkProcess/mac/NetworkResourceLoaderMac.mm: Removed. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-26 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r197168. |
| https://bugs.webkit.org/show_bug.cgi?id=154728 |
| |
| crashing on some devices (Requested by kling on #webkit). |
| |
| Reverted changeset: |
| |
| "[Darwin] Use vm_kernel_page_size for WTF::pageSize()." |
| https://bugs.webkit.org/show_bug.cgi?id=154726 |
| http://trac.webkit.org/changeset/197168 |
| |
| 2016-02-25 Sam Weinig <sam@webkit.org> |
| |
| Allow WKUserScripts to be run in isolated worlds |
| https://bugs.webkit.org/show_bug.cgi?id=154701 |
| |
| Reviewed by Anders Carlsson. |
| |
| Adds support for using isolated worlds, called _WKUserContentWorlds in the SPI, |
| from the UIProcess. |
| |
| * Shared/API/APIObject.h: |
| * Shared/Cocoa/APIObject.mm: |
| * UIProcess/API/APIUserContentWorld.cpp: Added. |
| (API::generateIdentifier): |
| (API::UserContentWorld::worldWithName): |
| (API::UserContentWorld::normalWorld): |
| (API::UserContentWorld::UserContentWorld): |
| (API::UserContentWorld::~UserContentWorld): |
| * UIProcess/API/APIUserContentWorld.h: Added. |
| Add new UserContentWorld type. |
| |
| * UIProcess/API/APIUserScript.h: |
| Bind each user script to a particular _WKUserContentWorld. |
| |
| * UIProcess/API/C/WKUserScriptRef.cpp: |
| (WKUserScriptCreateWithSource): |
| (WKUserScriptCopySource): |
| Existing APIs create user scripts for the normal world, preserving existing behavior. |
| |
| * UIProcess/API/Cocoa/WKUserScript.mm: |
| (-[WKUserScript initWithSource:injectionTime:forMainFrameOnly:]): |
| Existing APIs create user scripts for the normal world, preserving existing behavior. |
| |
| (-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:userContentWorld:]): |
| Add a new initializer which takes a world to bind to. Also add support for the legacy whitelist/blacklist mechanism |
| while we are here, as the expected client needs these as well. |
| |
| (-[WKUserScript _userContentWorld]): |
| Add accessor for the bound world. |
| |
| * UIProcess/API/Cocoa/WKUserScriptInternal.h: |
| * UIProcess/API/Cocoa/WKUserScriptPrivate.h: Added. |
| Add new private header. |
| |
| * UIProcess/API/Cocoa/_WKUserContentWorld.h: Added. |
| * UIProcess/API/Cocoa/_WKUserContentWorld.mm: Added. |
| (+[_WKUserContentWorld worldWithName:]): |
| (+[_WKUserContentWorld normalWorld]): |
| (-[_WKUserContentWorld dealloc]): |
| (-[_WKUserContentWorld name]): |
| (-[_WKUserContentWorld _apiObject]): |
| * UIProcess/API/Cocoa/_WKUserContentWorldInternal.h: Added. |
| Add SPI wrapper. |
| |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::addProcess): |
| (WebKit::WebUserContentControllerProxy::addUserScript): |
| (WebKit::WebUserContentControllerProxy::removeUserScript): |
| (WebKit::WebUserContentControllerProxy::removeAllUserScripts): |
| (WebKit::WebUserContentControllerProxy::addUserStyleSheet): |
| * UIProcess/UserContent/WebUserContentControllerProxy.h: |
| (WebKit::WebUserContentControllerProxy::userScripts): |
| (WebKit::WebUserContentControllerProxy::userStyleSheets): |
| Add support for registering the worlds with the associated WebContentProcesses and then using |
| their identifiers to map user scripts to the correct world. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new files. |
| |
| * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.h: |
| * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.mm: |
| (-[WKWebProcessPlugInScriptWorld name]): |
| Expose the name property. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp: |
| (WKBundleScriptWorldCopyName): |
| * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.h: |
| Expose the name property. |
| |
| * WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp: |
| (WebKit::allWorlds): |
| (WebKit::InjectedBundleScriptWorld::create): |
| (WebKit::InjectedBundleScriptWorld::getOrCreate): |
| (WebKit::InjectedBundleScriptWorld::normalWorld): |
| (WebKit::InjectedBundleScriptWorld::InjectedBundleScriptWorld): |
| (WebKit::InjectedBundleScriptWorld::~InjectedBundleScriptWorld): |
| (WebKit::InjectedBundleScriptWorld::coreWorld): |
| (WebKit::InjectedBundleScriptWorld::clearWrappers): |
| * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h: |
| (WebKit::InjectedBundleScriptWorld::name): |
| Add the name property and do some drive-by RefPtr -> Ref conversions. |
| |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::userContentControllers): |
| (WebKit::worldMap): |
| (WebKit::WebUserContentController::getOrCreate): |
| (WebKit::WebUserContentController::~WebUserContentController): |
| (WebKit::WebUserContentController::addUserContentWorlds): |
| (WebKit::WebUserContentController::removeUserContentWorld): |
| (WebKit::WebUserContentController::addUserScripts): |
| (WebKit::WebUserContentController::removeUserScript): |
| (WebKit::WebUserContentController::removeAllUserScripts): |
| (WebKit::WebUserContentController::addUserStyleSheets): |
| * WebProcess/UserContent/WebUserContentController.h: |
| * WebProcess/UserContent/WebUserContentController.messages.in: |
| Track and use worlds passed from the UIProcess. |
| |
| 2016-02-26 Andreas Kling <akling@apple.com> |
| |
| [Darwin] Use vm_kernel_page_size for WTF::pageSize(). |
| <https://webkit.org/b/154726> |
| |
| Reviewed by Antti Koivisto. |
| |
| Use WTF::pageSize() for the SharedMemory page size. |
| |
| * Platform/mac/SharedMemoryMac.cpp: |
| (WebKit::SharedMemory::systemPageSize): |
| |
| 2016-02-25 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] Remove WebUIPopupMenuClient |
| https://bugs.webkit.org/show_bug.cgi?id=154717 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| WebUIPopupMenuClient is only for EFL to expose WebPopupMenuProxy and WebPopupItem to WK C APIs. |
| This patch removes it and related code. |
| |
| * PlatformEfl.cmake: Removed WKPopupItem related files from source list. |
| * UIProcess/API/C/efl/WKAPICastEfl.h: Removed WKPopupMenu related code. |
| * UIProcess/API/C/efl/WKPageEfl.cpp: Removed. |
| * UIProcess/API/C/efl/WKPageEfl.h: Removed. |
| * UIProcess/API/C/efl/WKPopupItem.cpp: Removed. |
| * UIProcess/API/C/efl/WKPopupItem.h: Removed. |
| * UIProcess/API/C/efl/WKPopupMenuListener.cpp: Removed. |
| * UIProcess/API/C/efl/WKPopupMenuListener.h: Removed. |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::requestPopupMenu): |
| * UIProcess/API/efl/EwkView.h: |
| * UIProcess/API/efl/ewk_popup_menu.cpp: |
| (EwkPopupMenu::EwkPopupMenu): |
| (EwkPopupMenu::close): |
| (EwkPopupMenu::setSelectedIndex): |
| * UIProcess/API/efl/ewk_popup_menu_item.cpp: Used WebPopupItem and others instead of WK C APIs. |
| * UIProcess/API/efl/ewk_popup_menu_item_private.h: Ditto. |
| * UIProcess/API/efl/ewk_popup_menu_private.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::close): Removed unnecessary EFL guards. |
| (WebKit::WebPageProxy::showPopupMenu): Ditto. |
| (WebKit::WebPageProxy::hidePopupMenu): Ditto. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPopupMenuProxy.h: |
| * UIProcess/efl/PageUIClientEfl.cpp: Removed WKPopupMenuListener related code. |
| (WebKit::PageUIClientEfl::PageUIClientEfl): Deleted. |
| (WebKit::PageUIClientEfl::showPopupMenu): Deleted. |
| (WebKit::PageUIClientEfl::hidePopupMenu): Deleted. |
| * UIProcess/efl/PageUIClientEfl.h: |
| * UIProcess/efl/WebPageProxyEfl.cpp: |
| (WebKit::WebPageProxy::initializeUIPopupMenuClient): Deleted. |
| * UIProcess/efl/WebPopupMenuListenerEfl.cpp: |
| (WebKit::WebPopupMenuListenerEfl::WebPopupMenuListenerEfl): Deleted. |
| (WebKit::WebPopupMenuListenerEfl::valueChanged): Deleted. |
| * UIProcess/efl/WebPopupMenuListenerEfl.h: |
| (WebKit::WebPopupMenuListenerEfl::create): Deleted. |
| * UIProcess/efl/WebPopupMenuProxyEfl.cpp: Used WebPopupItem and others instead of WK C APIs. |
| * UIProcess/efl/WebPopupMenuProxyEfl.h: Ditto. |
| (WebKit::WebPopupMenuProxyEfl::create): |
| * UIProcess/efl/WebUIPopupMenuClient.cpp: Removed. |
| * UIProcess/efl/WebUIPopupMenuClient.h: Removed. |
| * UIProcess/efl/WebView.cpp: |
| (WebKit::WebView::createPopupMenuProxy): Used WebPopupItem and others instead of WK C APIs. |
| |
| 2016-02-25 Andreas Kling <akling@apple.com> |
| |
| [iOS] Enable PageCache backing store clearing optimization for WebKit2. |
| <https://webkit.org/b/154712> |
| |
| Reviewed by Anders Carlsson. |
| |
| We had an optimization for iOS where we'd tear down the compositing tree for |
| pages in the page cache, to save memory, but we were only enabling it when |
| instantiating a WebKit1 web view. |
| |
| This patch enables the optimization for WebKit2 as well. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| |
| 2016-02-25 Ada Chan <adachan@apple.com> |
| |
| Update the definition of ENABLE_VIDEO_PRESENTATION_MODE for Mac platform |
| https://bugs.webkit.org/show_bug.cgi?id=154702 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-02-25 Jiewen Tan <jiewen_tan@apple.com> |
| |
| Restrict information passed with navigation action which is triggered by untrusted event |
| https://bugs.webkit.org/show_bug.cgi?id=154571 |
| <rdar://problem/15967937> |
| |
| Reviewed by Andy Estes. |
| |
| When navigation action is triggered by an untrusted event, we should be more restricted of |
| what information should be passed to the clients to lower the risk that clients could |
| be fooled by the untrusted event. |
| |
| In this patch, we drop the modifiers for key state events and set the mouse button to NoButton |
| for mouse events. |
| |
| * WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp: |
| (WebKit::InjectedBundleNavigationAction::modifiersForNavigationAction): |
| |
| 2016-02-25 Ada Chan <adachan@apple.com> |
| |
| Hook up fullscreenMayReturnToInline() in WKPageUIClient |
| https://bugs.webkit.org/show_bug.cgi?id=154661 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetPageUIClient): |
| * UIProcess/API/C/WKPageUIClient.h: |
| |
| 2016-02-25 Gavin Barraclough <barraclough@apple.com> |
| |
| Should template RefCounter instead of RefCounter::Token |
| https://bugs.webkit.org/show_bug.cgi?id=154691 |
| |
| Reviewed by Anders Carlsson. |
| |
| Mechanical update per RefCounter interface change. |
| |
| * UIProcess/Plugins/PluginProcessManager.h: |
| (WebKit::PluginProcessManager::processSuppressionDisabledToken): |
| (WebKit::PluginProcessManager::processSuppressionDisabled): |
| * UIProcess/ProcessThrottler.h: |
| (WebKit::ProcessThrottler::foregroundActivityToken): |
| (WebKit::ProcessThrottler::backgroundActivityToken): |
| * UIProcess/WebProcessPool.h: |
| |
| 2016-02-25 Brady Eidson <beidson@apple.com> |
| |
| Remove LegacyIDB. |
| https://bugs.webkit.org/show_bug.cgi?id=150854 |
| |
| Reviewed by Alex Christensen. |
| |
| * CMakeLists.txt: |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::getOrCreateLegacyUniqueIDBDatabase): Deleted. |
| (WebKit::DatabaseProcess::removeLegacyUniqueIDBDatabase): Deleted. |
| * DatabaseProcess/DatabaseProcess.h: |
| * DatabaseProcess/DatabaseToWebProcessConnection.cpp: |
| (WebKit::DatabaseToWebProcessConnection::didClose): |
| (WebKit::DatabaseToWebProcessConnection::didReceiveMessage): Deleted. |
| (WebKit::DatabaseToWebProcessConnection::didReceiveSyncMessage): Deleted. |
| (WebKit::DatabaseToWebProcessConnection::establishIDBConnection): Deleted. |
| (WebKit::DatabaseToWebProcessConnection::removeDatabaseProcessIDBConnection): Deleted. |
| * DatabaseProcess/DatabaseToWebProcessConnection.h: |
| * DatabaseProcess/DatabaseToWebProcessConnection.messages.in: |
| * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp: Removed. |
| * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h: Removed. |
| * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in: Removed. |
| * DatabaseProcess/IndexedDB/IDBIdentifier.h: Removed. |
| * DatabaseProcess/IndexedDB/IDBSerialization.cpp: Removed. |
| * DatabaseProcess/IndexedDB/IDBSerialization.h: Removed. |
| * DatabaseProcess/IndexedDB/LegacyUniqueIDBDatabase.cpp: Removed. |
| * DatabaseProcess/IndexedDB/LegacyUniqueIDBDatabase.h: Removed. |
| * DatabaseProcess/IndexedDB/LegacyUniqueIDBDatabaseIdentifier.cpp: Removed. |
| * DatabaseProcess/IndexedDB/LegacyUniqueIDBDatabaseIdentifier.h: Removed. |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h: Removed. |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.h: |
| * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp: Removed. |
| * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.h: Removed. |
| * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp: Removed. |
| * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h: Removed. |
| * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp: Removed. |
| * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h: Removed. |
| * DerivedSources.make: |
| * Shared/WebCrossThreadCopier.cpp: |
| (WebCore::LegacyUniqueIDBDatabaseIdentifier>::copy): Deleted. |
| (WebCore::IDBIdentifier>::copy): Deleted. |
| * Shared/WebCrossThreadCopier.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp: Removed. |
| * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h: Removed. |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp: Removed. |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h: Removed. |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in: Removed. |
| * WebProcess/Databases/WebDatabaseProvider.cpp: |
| (WebKit::WebDatabaseProvider::createIDBFactoryBackend): Deleted. |
| * WebProcess/Databases/WebDatabaseProvider.h: |
| * WebProcess/Databases/WebToDatabaseProcessConnection.cpp: |
| (WebKit::WebToDatabaseProcessConnection::didReceiveMessage): Deleted. |
| (WebKit::WebToDatabaseProcessConnection::registerWebIDBServerConnection): Deleted. |
| (WebKit::WebToDatabaseProcessConnection::removeWebIDBServerConnection): Deleted. |
| * WebProcess/Databases/WebToDatabaseProcessConnection.h: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| |
| 2016-02-25 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: WebKit 2 IPC layer. |
| https://bugs.webkit.org/show_bug.cgi?id=153808 |
| |
| Reviewed by Alex Christensen. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): This ASSERT fires on most WK2 tests. Alex said remove it. |
| |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp: |
| (WebKit::WebIDBConnectionToServer::putOrAdd): Properly encode the overwrite flag. |
| |
| * WebProcess/Databases/WebDatabaseProvider.h: Enable Modern IDB. |
| |
| 2016-02-25 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] MediaDeviceInfo deviceId and groupId must be unique to the page's origin |
| https://bugs.webkit.org/show_bug.cgi?id=153163 |
| <rdar://problem/24334526> |
| |
| Reviewed by Tim Horton. |
| |
| * CMakeLists.txt: Add WKFrameHandleRef.cpp. |
| |
| * Shared/API/c/WKBase.h: Add WKFrameHandleRef. |
| * UIProcess/API/APIUIClient.h: |
| (API::UIClient::decidePolicyForUserMediaPermissionRequest): Add parameter top level document |
| security context. |
| (API::UIClient::checkUserMediaPermissionForOrigin): Ditto. |
| |
| * UIProcess/API/C/WKAPICast.h: Add FrameHandle. |
| |
| * UIProcess/API/C/WKFrameHandleRef.cpp: Added. |
| * UIProcess/API/C/WKFrameHandleRef.h: Added. |
| |
| * UIProcess/API/C/WKFrameInfoRef.cpp: |
| (WKFrameInfoGetFrameHandleRef): Added. |
| * UIProcess/API/C/WKFrameInfoRef.h: |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetPageUIClient): Add parameters to decidePolicyForUserMediaPermissionRequest and |
| checkUserMediaPermissionForOrigin for top level document security context. |
| |
| * UIProcess/API/C/WKPageUIClient.h: Ditto. |
| |
| * UIProcess/API/C/WKUserMediaPermissionCheck.cpp: |
| (WKUserMediaPermissionCheckSetUserMediaAccessInfo): Renamed from WKUserMediaPermissionCheckSetHasPersistentPermission, |
| add parameter for top level document security context. |
| (WKUserMediaPermissionCheckSetHasPersistentPermission): Deleted. |
| * UIProcess/API/C/WKUserMediaPermissionCheck.h: |
| |
| * UIProcess/API/gtk/WebKitUserMediaPermissionRequest.cpp: |
| (webkitUserMediaPermissionRequestCreate): Add top level document origin. |
| |
| * UIProcess/UserMediaPermissionCheckProxy.cpp: |
| (WebKit::UserMediaPermissionCheckProxy::setUserMediaAccessInfo): Renamed from setHasPersistentPermission. |
| (WebKit::UserMediaPermissionCheckProxy::setHasPersistentPermission): Deleted. |
| * UIProcess/UserMediaPermissionCheckProxy.h: |
| |
| * UIProcess/UserMediaPermissionRequestManagerProxy.cpp: |
| (WebKit::UserMediaPermissionRequestManagerProxy::didCompleteUserMediaPermissionCheck): Add parameter |
| for device id hash salt. |
| * UIProcess/UserMediaPermissionRequestManagerProxy.h: |
| |
| * UIProcess/UserMediaPermissionRequestProxy.h: |
| (WebKit::UserMediaPermissionRequestProxy::requiresAudio): Deleted, unused. |
| (WebKit::UserMediaPermissionRequestProxy::requiresVideo): Ditto. |
| (WebKit::UserMediaPermissionRequestProxy::firstVideoDeviceUID): Ditto. |
| (WebKit::UserMediaPermissionRequestProxy::firstAudioDeviceUID): Ditto. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::requestUserMediaPermissionForFrame): Pass through parameter for top |
| level document security context. |
| (WebKit::WebPageProxy::checkUserMediaPermissionForFrame): Ditto. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| |
| * WebKit2.xcodeproj/project.pbxproj: Add WKFrameHandleRef.cpp|.h. |
| |
| * WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp: |
| (WebKit::UserMediaPermissionRequestManager::startUserMediaRequest): Pass through parameter for top |
| level document security context. |
| (WebKit::UserMediaPermissionRequestManager::startUserMediaPermissionCheck): Ditto. |
| (WebKit::UserMediaPermissionRequestManager::didCompleteUserMediaPermissionCheck): Pass through |
| device id hash salt. |
| * WebProcess/MediaStream/UserMediaPermissionRequestManager.h: |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didCompleteUserMediaPermissionCheck): Ditto. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2016-02-24 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Tearing when entering AC mode |
| https://bugs.webkit.org/show_bug.cgi?id=150955 |
| |
| Reviewed by Michael Catanzaro. |
| |
| When entering accelerated compositing mode, we keep rendering the |
| non accelerated contents until we have the first frame of |
| accelerated compositing contents. When the view is created hidden, |
| for example when the browser opens a link in a new tab, the view |
| is not realized until it is mapped. The native surface handle for |
| compositing, needed by the web process to render accelerated |
| compositing contents, is not available until the view is realized, |
| because it depends on the properties of the parent. When a web |
| view is mapped for the first time, and then realized, we send the |
| native surface handle for compositing to the web process, and keep |
| rendering the non composited contents until we get the first |
| frame, but in this case we never had non composited contents and |
| we end up rendering an untinitalized surface. This sometimes just |
| produces flickering and sometimes rendering artifacts. |
| We can prevent this from happening by realizing the web view as |
| soon as possible. A GtkWidget can't be realized until it has been |
| added to a toplevel, so we can realize our view right after it is |
| added to a toplevel window, and wait until the view is actually |
| mapped to notify the web process that it has been added to a |
| window. This way can we enter accelerated compositing mode before |
| the web view is mapped, so that when mapped we don't try to paint |
| the previous contents and don't need to wait for the first frame. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (toplevelWindowFocusInEvent): Handle the case of the window being |
| hidden when receiving focus in. According to |
| gtk_window_focus_in_event, this can happen. |
| (webkitWebViewBaseSetToplevelOnScreenWindow): When the web view is |
| removed from its toplevel parent, update the IsInWindow and |
| WindowIsActive flags accordingly. When the view is added to a |
| toplevel, realize it and don't update the window flags, they will be |
| updated when the view is mapped the first time. |
| (webkitWebViewBaseMap): Also update IsInWindow and WindowIsActive |
| flags if needed. This way, if for example you open a youtube video |
| in a new tab, the video won't start playing until you visit the |
| tab, like we did when the view was realized on map. |
| (webkitWebViewBaseHierarchyChanged): Use hierarchy-changed signal |
| instead of parent-set to be notified when the view is added to or |
| removed from a toplevel. |
| (webkit_web_view_base_class_init): Implement hierarchy-changed |
| instead of parent-set. |
| (webkitWebViewBaseRealize): Do not call |
| webkitWebViewBaseSetToplevelOnScreenWindow on realize, it's now |
| webkitWebViewBaseSetToplevelOnScreenWindow the one realizing the view. |
| * UIProcess/cairo/BackingStoreCairo.cpp: |
| (WebKit::BackingStore::createBackend): Do not realize the view |
| here, it should be realized already at this point. If it's not |
| realized at this point is because it hasn't been added to a |
| toplevel and gtk_widget_realize will not work anyway. |
| (WebKit::BackingStore::paint): This is changing the cairo source |
| operator, so save/restore the cairo context to ensure it doesn't |
| affect other drawing done after this. |
| |
| 2016-02-24 Nikos Andronikos <nikos.andronikos-webkit@cisra.canon.com.au> |
| |
| [web-animations] Add AnimationTimeline, DocumentTimeline and add extensions to Document interface |
| https://bugs.webkit.org/show_bug.cgi?id=151688 |
| |
| Reviewed by Dean Jackson. |
| |
| Enables the WEB_ANIMATIONS compiler switch. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-02-24 Gavin Barraclough <barraclough@apple.com> |
| |
| Add WKPreference for HiddenPageDOMTimerThrottlingAutoIncreases |
| https://bugs.webkit.org/show_bug.cgi?id=154655 |
| |
| Reviewed by Geoff Garen. |
| |
| Just plumbing WebCore.settings.setHiddenPageDOMTimerThrottlingAutoIncreases through as |
| WKPreferencesSetHiddenPageDOMTimerThrottlingAutoIncreases. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetHiddenPageDOMTimerThrottlingAutoIncreases): |
| (WKPreferencesGetHiddenPageDOMTimerThrottlingAutoIncreases): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _hiddenPageDOMTimerThrottlingAutoIncreases]): |
| (-[WKPreferences _setHiddenPageDOMTimerThrottlingAutoIncreases:]): |
| * UIProcess/API/Cocoa/WKPreferencesPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-02-24 Alex Christensen <achristensen@webkit.org> |
| |
| Fix downloads when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154620 |
| |
| Reviewed by Brady Eidson. |
| |
| This fixes all the _WKDownload API tests when using NetworkSession. |
| |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::willDecidePendingDownloadDestination): |
| When we store the NetworkDataTask in m_downloadsWaitingForDestination, we want to remove its owner |
| from m_pendingDownloads to prevent memory leaks. |
| (WebKit::DownloadManager::continueDecidePendingDownloadDestination): |
| If a file exists and the UIProcess has told us to overwrite the file, delete the file |
| before starting a new download in its place. This used to be done by CFNetwork in |
| NSURLDownload's setDestination:allowOverwrite:, but the NSURLSession equivalent (setting |
| NSURLSessionDataTask's _pathToDownloadTaskFile attribute) does not overwrite the file for us. |
| (WebKit::DownloadManager::cancelDownload): |
| If a download is canceled while it is waiting for its destination from the UIProcess, the Download |
| object does not exist yet. Instead, we have a completion handler stored in m_downloadsWaitingForDestination. |
| In this case, we want to send the UIProcess a DownloadProxy::DidCancel message, which I did through |
| NetworkProcess::pendingDownloadCanceled because the DownloadManager is not a MessageSender, and then |
| call the completion handler with PolicyIgnore to cancel the download. |
| (WebKit::DownloadManager::downloadFinished): |
| * NetworkProcess/Downloads/DownloadManager.h: |
| * NetworkProcess/Downloads/PendingDownload.cpp: |
| (WebKit::PendingDownload::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::PendingDownload::didBecomeDownload): |
| (WebKit::PendingDownload::didFailLoading): |
| (WebKit::PendingDownload::messageSenderConnection): |
| (WebKit::PendingDownload::didConvertToDownload): Deleted. |
| * NetworkProcess/Downloads/PendingDownload.h: |
| * NetworkProcess/Downloads/cocoa/DownloadCocoa.mm: |
| (WebKit::Download::cancel): |
| Send a didCancel message to the UIProcess when a download was cancelled. |
| Use cancelByProducingResumeData so we can resume canceled downloads. |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): |
| didConvertToDownload is needed when using NetworkSession to tell the NetworkResourceLoader |
| not to call cancel on the NetworkLoad after converting it to a download. |
| * NetworkProcess/NetworkDataTask.h: |
| (WebKit::NetworkDataTask::setPendingDownload): |
| (WebKit::NetworkDataTask::pendingDownloadLocation): |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::convertTaskToDownload): |
| (WebKit::NetworkLoad::setPendingDownloadID): |
| (WebKit::NetworkLoad::didReceiveResponseNetworkSession): |
| Don't call findPendingDownloadLocation as a method on the NetworkDataTask to avoid memory leaks |
| in DownloadManager.m_pendingDownloads. |
| (WebKit::NetworkLoad::didBecomeDownload): |
| Call m_client.didBecomeDownload which is being separated from didConvertToDownload. The former is |
| called after the NetworkDataTask becomes a Download, the latter is called as soon as |
| convertMainResourceLoadToDownload is called. |
| * NetworkProcess/NetworkLoadClient.h: |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::continueWillSendRequest): |
| (WebKit::NetworkProcess::pendingDownloadCanceled): |
| Send a DownloadProxy::DidCancel message when a pending download is canceled. |
| (WebKit::NetworkProcess::findPendingDownloadLocation): |
| (WebKit::NetworkProcess::continueDecidePendingDownloadDestination): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::didConvertToDownload): |
| (WebKit::NetworkResourceLoader::didBecomeDownload): |
| Separate setting m_didConvertToDownload, which needs to happen before the didReceiveResponse completion |
| handler is called to tell the NetworkResourceLoader not to call cancel in NetworkResourceLoader::abort, |
| from deleting the NetworkLoad, which can be done after the NSURLSessionDataTask has been converted to a |
| NSURLSessionDownloadTask. |
| * NetworkProcess/NetworkResourceLoader.h: |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::failureTimerFired): |
| (WebKit::NetworkDataTask::setPendingDownloadLocation): |
| (WebKit::NetworkDataTask::transferSandboxExtensionToDownload): |
| (WebKit::NetworkDataTask::suggestedFilename): |
| (WebKit::NetworkDataTask::currentRequest): |
| (WebKit::NetworkDataTask::findPendingDownloadLocation): Deleted. |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): |
| Take the downloadID if it failed because we will report that download as failed and not use it again. |
| (WebKit::NetworkSession::takeDownloadID): |
| * UIProcess/Downloads/DownloadProxy.cpp: |
| (WebKit::DownloadProxy::decideDestinationWithSuggestedFilenameAsync): |
| (WebKit::DownloadProxy::decideDestinationWithSuggestedFilename): |
| |
| 2016-02-24 Anders Carlsson <andersca@apple.com> |
| |
| Add more WebKitAdditions extension points |
| https://bugs.webkit.org/show_bug.cgi?id=154648 |
| rdar://problem/24820040 |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _initializeWithConfiguration:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration copyWithZone:]): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-02-24 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Move FocusNavigationScope into FocusController.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=154630 |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::nextAssistableElement): |
| |
| 2016-02-23 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: don't run the protocol generator once per output file |
| https://bugs.webkit.org/show_bug.cgi?id=154635 |
| |
| Reviewed by Myles C. Maxfield. |
| |
| * DerivedSources.make: Use $(firstword, ...) to take just one file as |
| the target to be built so that the generator runs only once. Make isn't |
| really designed to coalesce multiple file outputs to one production rule. |
| |
| 2016-02-23 Dan Bernstein <mitz@apple.com> |
| |
| [Xcode] Linker errors display mangled names, but no longer should |
| https://bugs.webkit.org/show_bug.cgi?id=154632 |
| |
| Reviewed by Sam Weinig. |
| |
| * Configurations/Base.xcconfig: Stop setting LINKER_DISPLAYS_MANGLED_NAMES to YES. |
| |
| 2016-02-23 Gavin Barraclough <barraclough@apple.com> |
| |
| Remove HIDDEN_PAGE_DOM_TIMER_THROTTLING feature define |
| https://bugs.webkit.org/show_bug.cgi?id=112323 |
| |
| Reviewed by Chris Dumez. |
| |
| This feature is controlled by a runtime switch, and defaults off. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| WKWebView should implement NSCoding |
| https://bugs.webkit.org/show_bug.cgi?id=137160 |
| rdar://problem/17380562 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/WKUserContentController.mm: |
| (-[WKUserContentController initWithCoder:]): |
| We need to call [self init] here, so that the wrapper will be initialized. |
| |
| * UIProcess/API/Cocoa/WKWebView.h: |
| -initWithCoder: shouldn't be unavailable, it should be a designated initializer. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _initializeWithConfiguration:]): |
| Move initialization out into a common method. |
| |
| (-[WKWebView initWithFrame:configuration:]): |
| Call -initializeWithConfiguration: here. |
| |
| (-[WKWebView initWithCoder:]): |
| Decode everything. |
| |
| (-[WKWebView encodeWithCoder:]): |
| Encode everything. |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| Fix an API test. |
| |
| * UIProcess/API/APIWebsiteDataStore.cpp: |
| (API::WebsiteDataStore::defaultDataStore): |
| Make sure to initialize WebKit2. |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| WKWebViewConfiguration should encode more of its properties |
| https://bugs.webkit.org/show_bug.cgi?id=154611 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration encodeWithCoder:]): |
| (-[WKWebViewConfiguration initWithCoder:]): |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| WKUserContentController should conform to NSCoding |
| https://bugs.webkit.org/show_bug.cgi?id=154609 |
| |
| Reviewed by Sam Weinig. |
| |
| Since we just want to be able to encode WKUserContentController from WKWebViewConfiguration, |
| we don't encode anything inside WKUserContentController. |
| |
| * UIProcess/API/Cocoa/WKUserContentController.h: |
| * UIProcess/API/Cocoa/WKUserContentController.mm: |
| (-[WKUserContentController encodeWithCoder:]): |
| (-[WKUserContentController initWithCoder:]): |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| WKProcessPool should conform to NSCoding |
| https://bugs.webkit.org/show_bug.cgi?id=154608 |
| |
| Reviewed by Sam Weinig. |
| |
| Add +[WKProcessPool _sharedProcessPool] and encode/decode whether the process pool is shared. |
| |
| * UIProcess/API/Cocoa/WKProcessPool.h: |
| * UIProcess/API/Cocoa/WKProcessPool.mm: |
| (-[WKProcessPool encodeWithCoder:]): |
| (-[WKProcessPool initWithCoder:]): |
| (+[WKProcessPool _sharedProcessPool]): |
| * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| WKWebsiteDataStore should conform to NSCoding |
| https://bugs.webkit.org/show_bug.cgi?id=154605 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.mm: |
| (-[WKWebsiteDataStore initWithCoder:]): |
| (-[WKWebsiteDataStore encodeWithCoder:]): |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| Fix iOS build. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration initWithCoder:]): |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| WKWebViewConfiguration should conform to NSCoding |
| https://bugs.webkit.org/show_bug.cgi?id=154602 |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration encodeWithCoder:]): |
| (-[WKWebViewConfiguration initWithCoder:]): |
| |
| 2016-02-23 Anders Carlsson <andersca@apple.com> |
| |
| WKPreferences should conform to NSCoding |
| https://bugs.webkit.org/show_bug.cgi?id=154597 |
| |
| Reviewed by Sam Weinig. |
| |
| Add NSCoding implementation. |
| |
| * UIProcess/API/Cocoa/WKPreferences.h: |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences encodeWithCoder:]): |
| (-[WKPreferences initWithCoder:]): |
| |
| 2016-02-23 Alex Christensen <achristensen@webkit.org> |
| |
| Implement downloads with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154473 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/Downloads/Download.cpp: |
| (WebKit::Download::~Download): |
| (WebKit::Download::didStart): |
| (WebKit::Download::shouldDecodeSourceDataOfMIMEType): |
| (WebKit::Download::decideDestinationWithSuggestedFilename): |
| (WebKit::Download::didCreateDestination): |
| * NetworkProcess/Downloads/Download.h: |
| (WebKit::Download::downloadID): |
| (WebKit::Download::setSandboxExtension): |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::startDownload): |
| (WebKit::DownloadManager::dataTaskBecameDownloadTask): |
| (WebKit::DownloadManager::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::DownloadManager::continueWillSendRequest): |
| (WebKit::DownloadManager::willDecidePendingDownloadDestination): |
| (WebKit::DownloadManager::continueDecidePendingDownloadDestination): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| * NetworkProcess/Downloads/DownloadManager.h: |
| * NetworkProcess/NetworkDataTask.h: |
| (WebKit::NetworkDataTask::clearClient): |
| |
| NetworkDataTasks can now outlive their client, so we need to make client a pointer |
| with the ability to be nulled from the client's destructor. |
| |
| (WebKit::NetworkDataTask::pendingDownloadID): |
| (WebKit::NetworkDataTask::pendingDownload): |
| (WebKit::NetworkDataTask::setPendingDownload): |
| (WebKit::NetworkDataTask::pendingDownloadLocation): |
| (WebKit::NetworkDataTask::client): Deleted. |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::~NetworkLoad): |
| (WebKit::NetworkLoad::convertTaskToDownload): |
| (WebKit::NetworkLoad::setPendingDownloadID): |
| (WebKit::NetworkLoad::didReceiveResponseNetworkSession): |
| |
| Don't call the didReceiveResponse completion handler immediately when we know we are |
| going to turn the load into a download. Instead, save the completion handler until |
| after we have determined the download destination and set it in the NetworkDataTask. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::continueWillSendRequest): |
| (WebKit::NetworkProcess::findPendingDownloadLocation): |
| (WebKit::NetworkProcess::continueDecidePendingDownloadDestination): |
| (WebKit::NetworkProcess::setCacheModel): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| (WebKit::NetworkDataTask::~NetworkDataTask): |
| (WebKit::NetworkDataTask::didSendData): |
| (WebKit::NetworkDataTask::didReceiveChallenge): |
| (WebKit::NetworkDataTask::didCompleteWithError): |
| (WebKit::NetworkDataTask::didReceiveResponse): |
| (WebKit::NetworkDataTask::didReceiveData): |
| (WebKit::NetworkDataTask::didBecomeDownload): |
| (WebKit::NetworkDataTask::willPerformHTTPRedirection): |
| (WebKit::NetworkDataTask::scheduleFailure): |
| (WebKit::NetworkDataTask::failureTimerFired): |
| (WebKit::NetworkDataTask::findPendingDownloadLocation): |
| (WebKit::NetworkDataTask::setPendingDownloadLocation): |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| (WebKit::NetworkDataTask::transferSandboxExtensionToDownload): |
| (WebKit::NetworkDataTask::currentRequest): |
| (WebKit::NetworkDataTask::cancel): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:didSendBodyData:totalBytesSent:totalBytesExpectedToSend:]): |
| (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): |
| |
| This delegate callback is used for downloads, too. |
| |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveData:]): |
| (-[WKNetworkSessionDelegate URLSession:downloadTask:didFinishDownloadingToURL:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| |
| Call didCreateDestination now, which is after the file has been opened on the disk. |
| A DownloadProxy::DidStart message is now sent from NetworkProcess::findPendingDownloadLocation before |
| we ask the UIProcess where the download should end up on disk. |
| Null check the NetworkDataTask's client before using it because it is now a pointer that could be null. |
| |
| * UIProcess/Downloads/DownloadProxy.cpp: |
| (WebKit::DownloadProxy::shouldDecodeSourceDataOfMIMEType): |
| (WebKit::DownloadProxy::decideDestinationWithSuggestedFilenameAsync): |
| (WebKit::DownloadProxy::decideDestinationWithSuggestedFilename): |
| (WebKit::DownloadProxy::didCreateDestination): |
| * UIProcess/Downloads/DownloadProxy.h: |
| * UIProcess/Downloads/DownloadProxy.messages.in: |
| |
| 2016-02-23 Brian Burg <bburg@apple.com> |
| |
| Connect WebAutomationSession to its backend dispatcher as if it were an agent and add stub implementations |
| https://bugs.webkit.org/show_bug.cgi?id=154518 |
| <rdar://problem/24761096> |
| |
| Reviewed by Timothy Hatcher. |
| |
| Add a domain dispatcher for the 'Automation' domain, and register the |
| WebAutomationSession itself as the handler for Automation commands. |
| Stub out these command implementations so the code will compile. |
| |
| * UIProcess/Automation/Automation.json: |
| Fix the createWindow command's parameters and description. |
| Add an ErrorMessage string enumeration and document how it can be used |
| to signal well-known errors to the frontend. |
| |
| * UIProcess/Automation/WebAutomationSession.cpp: |
| (WebKit::WebAutomationSession::WebAutomationSession): |
| Add the domain backend dispatcher. It further parses commands that were deemed |
| valid by the generic dispatcher and match the 'Automation' domain prefix. |
| |
| (WebKit::WebAutomationSession::getWindows): |
| (WebKit::WebAutomationSession::openWindow): |
| (WebKit::WebAutomationSession::closeWindow): |
| Stub these out with our new ErrorMessage enumeration and a macro to |
| make this code pattern more readable. |
| |
| * UIProcess/Automation/WebAutomationSession.h: |
| Add new declarations and members. |
| |
| 2016-02-23 Antti Koivisto <antti@apple.com> |
| |
| Remove tab suspension code |
| https://bugs.webkit.org/show_bug.cgi?id=154585 |
| |
| Reviewed by Andreas Kling. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| (WebKit::registerUserDefaultsIfNeeded): |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2016-02-22 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] Merge WebView and WebViewEfl |
| https://bugs.webkit.org/show_bug.cgi?id=154445 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| * PlatformEfl.cmake: Removed WebViewEfl.cpp from source list. |
| * UIProcess/API/C/efl/WKViewEfl.cpp: Removed type cast for WebViewEfl. |
| * UIProcess/API/efl/EwkView.cpp: Ditto. |
| * UIProcess/API/efl/EwkView.h: |
| * UIProcess/API/efl/GestureRecognizer.cpp: Removed type cast for WebViewEfl. |
| * UIProcess/API/efl/WebAccessibility.cpp: Removed unnecessary includes. |
| * UIProcess/API/efl/ewk_view.cpp: Ditto. |
| * UIProcess/efl/ViewClientEfl.cpp: Ditto. |
| * UIProcess/efl/WebColorPickerClient.cpp: Ditto. |
| * UIProcess/efl/WebColorPickerClient.h: |
| * UIProcess/efl/WebColorPickerEfl.cpp: |
| (WebKit::WebColorPickerEfl::WebColorPickerEfl): |
| * UIProcess/efl/WebColorPickerEfl.h: |
| (WebKit::WebColorPickerEfl::create): |
| * UIProcess/efl/WebView.cpp: |
| * UIProcess/efl/WebView.h: |
| * UIProcess/efl/WebViewEfl.cpp: Removed. |
| * UIProcess/efl/WebViewEfl.h: Ditto. |
| |
| 2016-02-22 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: add 'Automation' protocol domain and generate its backend classes separately in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=154509 |
| <rdar://problem/24759098> |
| |
| Reviewed by Timothy Hatcher. |
| |
| Add a new 'Automation' domain which presents an RPC interface |
| for sending automation commands to an active WebAutomationSession |
| in the UIProcess via RemoteInspector. This is similar to how the |
| Inspector backend communicates bidirectionally with a remote |
| Inspector frontend. |
| |
| Add build system logic to generate JSON-RPC protocol bindings |
| for the 'Automation' domain using the inspector code generators. |
| |
| Move automation-related files that are not API or SPI into their |
| own directory. |
| |
| * Configurations/BaseTarget.xcconfig: Tell where JavaScriptCore's |
| private headers are, since that's where the code generators live. |
| |
| * CMakeLists.txt: Look in UIProcess/Automation directory. |
| * PlatformMac.cmake: |
| * DerivedSources.make: Generate protocol bindings for a single domain. |
| The names of the generated files will be improved in a follow-up patch |
| so that they do not clash with generated files in JavaScriptCore. |
| |
| * UIProcess/Automation/Automation.json: Added. |
| * UIProcess/Automation/WebAutomationSession.cpp: Renamed from Source/WebKit2/UIProcess/WebAutomationSession.cpp. |
| (WebKit::WebAutomationSession::WebAutomationSession): |
| (WebKit::WebAutomationSession::~WebAutomationSession): |
| Set up a backend dispatcher and frontend router. They will be used later. |
| |
| (WebKit::WebAutomationSession::dispatchMessageFromRemote): |
| Forward messages from the remote to the backend dispatcher. When |
| an agent / command handler is registered, it will receive the message. |
| |
| (WebKit::WebAutomationSession::connect): |
| (WebKit::WebAutomationSession::disconnect): |
| Connenct and disconnect the frontend router to the remote channel. |
| |
| * UIProcess/Automation/WebAutomationSession.h: Renamed from Source/WebKit2/UIProcess/WebAutomationSession.h. |
| * WebKit2.xcodeproj/project.pbxproj: Add and move files. |
| |
| 2016-02-16 Ada Chan <adachan@apple.com> |
| |
| Implement basic functionality in WebVideoFullscreenInterfaceMac. |
| https://bugs.webkit.org/show_bug.cgi?id=153241 |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): |
| (WebKit::WebVideoFullscreenManagerProxy::exitFullscreen): |
| (WebKit::WebVideoFullscreenManagerProxy::preparedToReturnToInline): |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::rootViewToWindow): |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::rootViewToWindow): |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::supportsVideoFullscreen): |
| * WebProcess/cocoa/WebVideoFullscreenManager.h: |
| * WebProcess/cocoa/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::supportsVideoFullscreen): |
| |
| 2016-02-22 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r196935. |
| https://bugs.webkit.org/show_bug.cgi?id=154557 |
| |
| This change causes timeouts and crashes in LayoutTests |
| (Requested by ryanhaddad on #webkit). |
| |
| Reverted changeset: |
| |
| "Enable AVFoundationNSURLSessionEnabled by default" |
| https://bugs.webkit.org/show_bug.cgi?id=154469 |
| http://trac.webkit.org/changeset/196935 |
| |
| 2016-02-22 Anders Carlsson <andersca@apple.com> |
| |
| Remove _mockCaptureDevicesEnabled getter and setter |
| https://bugs.webkit.org/show_bug.cgi?id=154550 |
| |
| Reviewed by Beth Dakin. |
| |
| The _mockCaptureDevicesEnabled property isn't declared anywhere, and this |
| should be a WKWebViewConfiguration parameter if we ever want to expose it in the modern API. |
| |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _mockCaptureDevicesEnabled]): Deleted. |
| (-[WKPreferences _setMockCaptureDevicesEnabled:]): Deleted. |
| |
| 2016-02-22 Konstantin Tokarev <annulen@yandex.ru> |
| |
| [cmake] Moved library setup code to WEBKIT_FRAMEWORK macro. |
| https://bugs.webkit.org/show_bug.cgi?id=154450 |
| |
| Reviewed by Alex Christensen. |
| |
| * CMakeLists.txt: Used WebKit2_SOURCES variable instead of separate |
| WebKit2_DERIVED_SOURCES for compatibility with WEBKIT_FRAMEWORK macro. |
| There is no real need to separate derived sources from others. |
| * PlatformGTK.cmake: Ditto. |
| |
| 2016-02-22 Carlos Alberto Lopez Perez <clopez@igalia.com> |
| |
| [CMake] Unreviewed build fix after r196942. |
| |
| * CMakeLists.txt: WKPluginSiteDataManager.cpp is gone. |
| |
| 2016-02-22 Keith Rollin <krollin@apple.com> |
| |
| Add mechanism to disable memory pressure handling |
| https://bugs.webkit.org/show_bug.cgi?id=154254 |
| <rdar://problem/24662616> |
| |
| Reviewed by Chris Dumez. |
| |
| Add a mechanism to disable WebKit's response to memory pressure |
| triggers. This was asked for by another group for testing purposes. |
| |
| In order to disable WebKit's memory pressure handling, execute the |
| following from the command line: |
| |
| defaults write com.apple.Safari WebKitSuppressMemoryPressureHandler -bool true |
| |
| To revert to standard behavior, delete the key or set it to False. |
| |
| This flag is used when a new sub-process is being spawned. The value |
| is read and stored in an initialization parameter block, which is then |
| sent to the new sub-process. |
| |
| In actuality, only the UI, WebContent, and Network processes heed the |
| flag. The Plugin process isn't instrumented to heed this flag for |
| three reasons. First, the Plugin process installs its memory pressure |
| handler in initializeProcess, not initializePluginProcess. This is |
| contrary to when the other processes install their handlers, which is |
| in initialize<PluginType>Process, not initializeProcess. So in order |
| to accomodate the Plugin process, we'd need to modify |
| ChildProcessInitializationParameters. Doing this is awkward at best, |
| but also seems to be opposed to what's supposed to be done in |
| initializeProcess and conveyed in |
| ChildProcessInitializationParameters. And even if we did add a boolean |
| to this structure and added support for conveying it through the XPC |
| port, it would end up being a Plugin process-only boolean in a general |
| parameter block, which seems asymmetric with the other processes. |
| Second, there's no convenient Cocoa function called in the flow that |
| spawns the Plugin process, meaning that there's no convenient place to |
| call NSUserDefaults to get the flag's value. And third, the Plugin |
| process doesn't elegantly respond to the memory pressure trigger |
| anyway. It might terminate itself, but that's it. As for the Database |
| process, it doesn't seem to support responding to memory pressure at |
| all, so we don't send it a flag telling it to ignore it. |
| |
| Internally, the memory pressure handler is suppressed by not calling |
| MemoryPressureHandler::install() if the flag is set. In the case of |
| the Network process, the flag is saved so that it can be checked later |
| in other places that manually kick off the memory pressure handling |
| procedure. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::lowMemoryHandler): |
| (WebKit::NetworkProcess::initializeNetworkProcess): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcessCreationParameters.cpp: |
| (WebKit::NetworkProcessCreationParameters::encode): |
| (WebKit::NetworkProcessCreationParameters::decode): |
| * NetworkProcess/NetworkProcessCreationParameters.h: |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| (WebKit::WebProcessPool::platformInitializeNetworkProcess): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| |
| 2016-02-22 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of WKPluginSiteDataManager |
| https://bugs.webkit.org/show_bug.cgi?id=154470 |
| |
| Reviewed by Tim Horton. |
| |
| * Shared/API/c/WKBase.h: |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetPluginSiteDataManager): Deleted. |
| * UIProcess/API/C/WKContext.h: |
| * UIProcess/API/C/WKPluginSiteDataManager.cpp: Removed. |
| (WKPluginSiteDataManagerGetTypeID): Deleted. |
| (WKPluginSiteDataManagerGetSitesWithData): Deleted. |
| (WKPluginSiteDataManagerClearSiteData): Deleted. |
| (WKPluginSiteDataManagerClearAllSiteData): Deleted. |
| * UIProcess/API/C/WKPluginSiteDataManager.h: Removed. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-21 Brent Fulgham <bfulgham@apple.com> |
| |
| [WK2][Mac] Allow processes to set "fast-dev-casheable" bit |
| https://bugs.webkit.org/show_bug.cgi?id=154503 |
| <rdar://problem/22920815> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Update the various sandbox profiles with a declaration that using the |
| system-fctl to touch the "hot file" flag (to support caching operations) |
| is allowed. |
| |
| * DatabaseProcess/mac/com.apple.WebKit.Databases.sb.in: Add sandbox permission. |
| * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb: Ditto. |
| * WebProcess/com.apple.WebProcess.sb.in: Ditto. |
| |
| 2016-02-22 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r196891. |
| https://bugs.webkit.org/show_bug.cgi?id=154539 |
| |
| it broke Production builds (Requested by brrian on #webkit). |
| |
| Reverted changeset: |
| |
| "Web Inspector: add 'Automation' protocol domain and generate |
| its backend classes separately in WebKit2" |
| https://bugs.webkit.org/show_bug.cgi?id=154509 |
| http://trac.webkit.org/changeset/196891 |
| |
| 2016-02-22 Jer Noble <jer.noble@apple.com> |
| |
| Enable AVFoundationNSURLSessionEnabled by default |
| https://bugs.webkit.org/show_bug.cgi?id=154469 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| |
| 2016-02-21 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: add 'Automation' protocol domain and generate its backend classes separately in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=154509 |
| <rdar://problem/24759098> |
| |
| Reviewed by Timothy Hatcher. |
| |
| Add a new 'Automation' domain which presents an RPC interface |
| for sending automation commands to an active WebAutomationSession |
| in the UIProcess via RemoteInspector. This is similar to how the |
| Inspector backend communicates bidirectionally with a remote |
| Inspector frontend. |
| |
| Add build system logic to generate JSON-RPC protocol bindings |
| for the 'Automation' domain using the inspector code generators. |
| |
| Move automation-related files that are not API or SPI into their |
| own directory. |
| |
| * Configurations/BaseTarget.xcconfig: Tell where JavaScriptCore's |
| private headers are, since that's where the code generators live. |
| |
| * CMakeLists.txt: Look in UIProcess/Automation directory. |
| * PlatformMac.cmake: |
| * DerivedSources.make: Generate protocol bindings for a single domain. |
| The names of the generated files will be improved in a follow-up patch |
| so that they do not clash with generated files in JavaScriptCore. |
| |
| * UIProcess/Automation/Automation.json: Added. |
| * UIProcess/Automation/WebAutomationSession.cpp: Renamed from Source/WebKit2/UIProcess/WebAutomationSession.cpp. |
| (WebKit::WebAutomationSession::WebAutomationSession): |
| (WebKit::WebAutomationSession::~WebAutomationSession): |
| Set up a backend dispatcher and frontend router. They will be used later. |
| |
| (WebKit::WebAutomationSession::dispatchMessageFromRemote): |
| Forward messages from the remote to the backend dispatcher. When |
| an agent / command handler is registered, it will receive the message. |
| |
| (WebKit::WebAutomationSession::connect): |
| (WebKit::WebAutomationSession::disconnect): |
| Connenct and disconnect the frontend router to the remote channel. |
| |
| * UIProcess/Automation/WebAutomationSession.h: Renamed from Source/WebKit2/UIProcess/WebAutomationSession.h. |
| * WebKit2.xcodeproj/project.pbxproj: Add and move files. |
| |
| 2016-02-20 Olivier Blin <olivier.blin@softathome.com> |
| |
| [cmake] Use ICU include dirs in WebKit2 and WebKitTestRunner |
| https://bugs.webkit.org/show_bug.cgi?id=154479 |
| |
| Reviewed by Michael Catanzaro. |
| |
| * CMakeLists.txt: |
| |
| 2016-02-19 Brian Burg <bburg@apple.com> |
| |
| WebAutomationSession should tell its delegate when its remote end disconnects |
| https://bugs.webkit.org/show_bug.cgi?id=154426 |
| <rdar://problem/24732382> |
| |
| Reviewed by Timothy Hatcher. |
| |
| The client might want to free up resources or close spawned windows |
| if the remote end has disconnected from the automation session. |
| |
| * UIProcess/API/APIAutomationSessionClient.h: |
| (API::AutomationSessionClient::didDisconnectFromRemote): Added. |
| (API::AutomationSessionClient::didRequestNewWindow): |
| Remove WebProcessPool* argument as it is never used. |
| |
| * UIProcess/API/Cocoa/_WKAutomationSession.h: |
| * UIProcess/API/Cocoa/_WKAutomationSession.mm: |
| (-[_WKAutomationSession isPaired]): |
| Expose whether the session is paired with a remote end. |
| |
| * UIProcess/API/Cocoa/_WKAutomationSessionDelegate.h: Add method. |
| * UIProcess/Cocoa/AutomationSessionClient.h: Add method. |
| Remove WebProcessPool* argument as it is never used. |
| |
| * UIProcess/Cocoa/AutomationSessionClient.mm: |
| (WebKit::AutomationSessionClient::AutomationSessionClient): |
| (WebKit::AutomationSessionClient::didRequestNewWindow): |
| (WebKit::AutomationSessionClient::didDisconnectFromRemote): |
| Add necessary forwarding boilerplate. |
| |
| * UIProcess/WebAutomationSession.cpp: |
| (WebKit::WebAutomationSession::disconnect): Inform the client. |
| |
| 2016-02-19 Beth Dakin <bdakin@apple.com> |
| |
| Enhance EditorState to include TypingAttributes, alignment, and color |
| https://bugs.webkit.org/show_bug.cgi?id=154424 |
| |
| Reviewed by Dean Jackson and Sam Weinig. |
| |
| TypingAttributes is already available for iOS and GTK. This patch hooks |
| that up on Mac as well, and it moves the calculation of that to the shared |
| file since there is no reason for this to be written in an iOS-only way. This |
| patch also adds textColor and textAlignment to EditorState, and since those |
| are not technically platform-specific either, they are also calculated in the |
| shared editorState() function. |
| |
| * Shared/EditorState.cpp: |
| (WebKit::EditorState::PostLayoutData::encode): |
| (WebKit::EditorState::PostLayoutData::decode): |
| * Shared/EditorState.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::editorState): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::platformEditorState): |
| |
| 2016-02-19 Anders Carlsson <andersca@apple.com> |
| |
| Purge as much as we can from WKDeprecatedFunctions.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=154459 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/API/c/WKDeprecatedFunctions.cpp: |
| (WKArrayIsMutable): Deleted. |
| (WKPageSetVisibilityState): Deleted. |
| (WKDictionaryIsMutable): Deleted. |
| (WKDictionaryAddItem): Deleted. |
| (WKDictionaryRemoveItem): Deleted. |
| (WKPreferencesSetRegionBasedColumnsEnabled): Deleted. |
| (WKPreferencesGetRegionBasedColumnsEnabled): Deleted. |
| (WKPreferencesSetMultithreadedWebGLEnabled): Deleted. |
| (WKPreferencesGetMultithreadedWebGLEnabled): Deleted. |
| (WKPreferencesSetScreenFontSubstitutionEnabled): Deleted. |
| (WKPreferencesGetScreenFontSubstitutionEnabled): Deleted. |
| (WKInspectorIsDebuggingJavaScript): Deleted. |
| (WKInspectorToggleJavaScriptDebugging): Deleted. |
| (WKInspectorIsProfilingJavaScript): Deleted. |
| (WKInspectorToggleJavaScriptProfiling): Deleted. |
| (WKContextGetProcessModel): Deleted. |
| (WKGraphicsContextGetCGContext): Deleted. |
| (WKContextGetProcessSuppressionEnabled): Deleted. |
| (WKContextSetProcessSuppressionEnabled): Deleted. |
| |
| 2016-02-19 Brady Eidson <beidson@apple.com> |
| |
| Add "databaseProcessDidCrash" to the WKContextClient; Adopt it in WKTR. |
| https://bugs.webkit.org/show_bug.cgi?id=154428 |
| |
| Reviewed by Jer Noble. |
| |
| * UIProcess/API/C/WKContext.h: |
| * UIProcess/API/C/mac/WKContextPrivateMac.h: |
| * UIProcess/API/C/mac/WKContextPrivateMac.mm: |
| (WKContextGetDatabaseProcessIdentifier): |
| |
| * UIProcess/WebContextClient.cpp: |
| (WebKit::WebContextClient::databaseProcessDidCrash): |
| * UIProcess/WebContextClient.h: |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::databaseProcessCrashed): |
| (WebKit::WebProcessPool::databaseProcessIdentifier): |
| * UIProcess/WebProcessPool.h: |
| |
| 2016-02-18 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [GTK] Limit the number of tiles according to the visible area |
| https://bugs.webkit.org/show_bug.cgi?id=126122 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: |
| (WebKit::LayerTreeHostGtk::initialize): Because we creates |
| nonCompositingLayer with a size of current view, we should not apply |
| the currently visible rect when creating / deleting tiles. |
| (WebKit::LayerTreeHostGtk::flushPendingLayerChanges): Passes the current |
| visible rect to the GraphicsLayers. |
| |
| 2016-02-18 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: Fix IDBGetResult encoder/decoder. |
| https://bugs.webkit.org/show_bug.cgi?id=154421 |
| |
| Reviewed by Alex Christensen. |
| |
| No new tests, as Modern IDB is still disabled for WK2. |
| |
| But if you manually enable it, "Basic IndexedDB Seems To Work" |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<IDBGetResult>::encode): Deleted. |
| (IPC::ArgumentCoder<IDBGetResult>::decode): Deleted. |
| * Shared/WebCoreArgumentCoders.h: |
| |
| 2016-02-18 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: Implement server->client operations in WK2. |
| https://bugs.webkit.org/show_bug.cgi?id=154411 |
| |
| Reviewed by Alex Christensen. |
| |
| No change in behavior yet; Just laying the groundwork. |
| |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.cpp: |
| (WebKit::WebIDBConnectionToClient::WebIDBConnectionToClient): |
| (WebKit::WebIDBConnectionToClient::~WebIDBConnectionToClient): |
| |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp: |
| (WebKit::WebIDBConnectionToServer::didDeleteDatabase): |
| (WebKit::WebIDBConnectionToServer::didOpenDatabase): |
| (WebKit::WebIDBConnectionToServer::didAbortTransaction): |
| (WebKit::WebIDBConnectionToServer::didCommitTransaction): |
| (WebKit::WebIDBConnectionToServer::didCreateObjectStore): |
| (WebKit::WebIDBConnectionToServer::didDeleteObjectStore): |
| (WebKit::WebIDBConnectionToServer::didClearObjectStore): |
| (WebKit::WebIDBConnectionToServer::didCreateIndex): |
| (WebKit::WebIDBConnectionToServer::didDeleteIndex): |
| (WebKit::WebIDBConnectionToServer::didPutOrAdd): |
| (WebKit::WebIDBConnectionToServer::didGetRecord): |
| (WebKit::WebIDBConnectionToServer::didGetCount): |
| (WebKit::WebIDBConnectionToServer::didDeleteRecord): |
| (WebKit::WebIDBConnectionToServer::didOpenCursor): |
| (WebKit::WebIDBConnectionToServer::didIterateCursor): |
| (WebKit::WebIDBConnectionToServer::fireVersionChangeEvent): |
| (WebKit::WebIDBConnectionToServer::didStartTransaction): |
| (WebKit::WebIDBConnectionToServer::notifyOpenDBRequestBlocked): |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h: |
| |
| * WebProcess/Databases/WebToDatabaseProcessConnection.cpp: |
| (WebKit::WebToDatabaseProcessConnection::didReceiveMessage): |
| |
| 2016-02-18 Brian Burg <bburg@apple.com> |
| |
| RemoteInspector deadlocks if _WKAutomationDelegate creates/registers a target synchronously |
| https://bugs.webkit.org/show_bug.cgi?id=154359 |
| <rdar://problem/24708897> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UIProcess/Cocoa/AutomationClient.mm: |
| (WebKit::AutomationClient::requestAutomationSession): |
| Make an NSString out of the String reference so it gets captured correctly. |
| |
| 2016-02-18 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: Implement client->server operations in WK2. |
| https://bugs.webkit.org/show_bug.cgi?id=154400 |
| |
| Reviewed by Alex Christensen. |
| |
| No change in behavior yet; Just laying the groundwork. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::idbServer): |
| * DatabaseProcess/DatabaseProcess.h: |
| |
| * DatabaseProcess/DatabaseToWebProcessConnection.cpp: |
| (WebKit::DatabaseToWebProcessConnection::didReceiveMessage): |
| * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h: |
| |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.cpp: |
| (WebKit::WebIDBConnectionToClient::deleteDatabase): |
| (WebKit::WebIDBConnectionToClient::openDatabase): |
| (WebKit::WebIDBConnectionToClient::abortTransaction): |
| (WebKit::WebIDBConnectionToClient::commitTransaction): |
| (WebKit::WebIDBConnectionToClient::didFinishHandlingVersionChangeTransaction): |
| (WebKit::WebIDBConnectionToClient::createObjectStore): |
| (WebKit::WebIDBConnectionToClient::deleteObjectStore): |
| (WebKit::WebIDBConnectionToClient::clearObjectStore): |
| (WebKit::WebIDBConnectionToClient::createIndex): |
| (WebKit::WebIDBConnectionToClient::deleteIndex): |
| (WebKit::WebIDBConnectionToClient::putOrAdd): |
| (WebKit::WebIDBConnectionToClient::getRecord): |
| (WebKit::WebIDBConnectionToClient::getCount): |
| (WebKit::WebIDBConnectionToClient::deleteRecord): |
| (WebKit::WebIDBConnectionToClient::openCursor): |
| (WebKit::WebIDBConnectionToClient::iterateCursor): |
| (WebKit::WebIDBConnectionToClient::establishTransaction): |
| (WebKit::WebIDBConnectionToClient::databaseConnectionClosed): |
| (WebKit::WebIDBConnectionToClient::abortOpenAndUpgradeNeeded): |
| (WebKit::WebIDBConnectionToClient::didFireVersionChangeEvent): |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.h: |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.messages.in: |
| |
| 2016-02-18 ChangSeok Oh <changseok.oh@collabora.com> |
| |
| [GTK][Threaded Compositor] The web inspector doesn't work when using the threaded compositor |
| https://bugs.webkit.org/show_bug.cgi?id=154067 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| The forceCompositingMode should be true for threaded compositor. We set it true for a normal webView |
| in _WebKitSettingsPrivate() but we do not for inspector anywhere. So DrawingArea is not |
| properly created for the inspector. Let's move the setting to WebPreferences::platformInitializeStore |
| which is a common place for the webView and the inspector. |
| |
| * UIProcess/API/gtk/WebKitSettings.cpp: |
| (_WebKitSettingsPrivate::_WebKitSettingsPrivate): Deleted. |
| * UIProcess/gtk/WebPreferencesGtk.cpp: |
| (WebKit::WebPreferences::platformInitializeStore): |
| |
| 2016-02-18 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r196765. |
| https://bugs.webkit.org/show_bug.cgi?id=154402 |
| |
| Broke Safari (Requested by andersca on #webkit). |
| |
| Reverted changeset: |
| |
| "Remove two unused functions" |
| https://bugs.webkit.org/show_bug.cgi?id=154397 |
| http://trac.webkit.org/changeset/196765 |
| |
| 2016-02-18 Anders Carlsson <andersca@apple.com> |
| |
| Remove two unused functions |
| https://bugs.webkit.org/show_bug.cgi?id=154397 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetPluginSiteDataManager): Deleted. |
| (WKContextGetResourceCacheManager): Deleted. |
| * UIProcess/API/C/WKContext.h: |
| |
| 2016-02-18 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Use G_TYPE_ERROR instead of G_TYPE_POINTER for GError parameters of signals |
| https://bugs.webkit.org/show_bug.cgi?id=153786 |
| |
| Reviewed by Michael Catanzaro. |
| |
| It's binary compatible and it's needed by binding generator to |
| properly identify those parameters as GError. |
| |
| * UIProcess/API/gtk/WebKitDownload.cpp: |
| (webkit_download_class_init): |
| * UIProcess/API/gtk/WebKitPrintOperation.cpp: |
| (webkit_print_operation_class_init): |
| * UIProcess/API/gtk/WebKitWebResource.cpp: |
| (webkit_web_resource_class_init): |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkit_web_view_class_init): |
| * UIProcess/API/gtk/webkit2marshal.list: |
| |
| 2016-02-18 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] Move WebView from CoordinatedGraphics to efl |
| https://bugs.webkit.org/show_bug.cgi?id=154332 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| * PlatformEfl.cmake: |
| * UIProcess/efl/WebView.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/WebView.cpp. |
| * UIProcess/efl/WebView.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/WebView.h. |
| * UIProcess/efl/WebViewClient.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/WebViewClient.cpp. |
| * UIProcess/efl/WebViewClient.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/WebViewClient.h. |
| |
| 2016-02-17 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: Rename some "UniqueIDBDatabase" classes that conflict with new classes in WebCore. |
| https://bugs.webkit.org/show_bug.cgi?id=154363. |
| |
| Reviewed by Alex Christensen. |
| |
| Adding "Legacy" to the front of the name fixes problems for now. |
| |
| And all of this gunk will go away after Modern IDB is done, anyways. |
| |
| * CMakeLists.txt: |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::getOrCreateLegacyUniqueIDBDatabase): |
| (WebKit::DatabaseProcess::removeLegacyUniqueIDBDatabase): |
| (WebKit::DatabaseProcess::getOrCreateUniqueIDBDatabase): Deleted. |
| (WebKit::DatabaseProcess::removeUniqueIDBDatabase): Deleted. |
| * DatabaseProcess/DatabaseProcess.h: |
| * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp: |
| (WebKit::DatabaseProcessIDBConnection::establishConnection): |
| * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h: |
| * DatabaseProcess/IndexedDB/LegacyUniqueIDBDatabase.cpp: Renamed from Source/WebKit2/DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp. |
| (WebKit::LegacyUniqueIDBDatabase::calculateAbsoluteDatabaseFilename): |
| (WebKit::LegacyUniqueIDBDatabase::LegacyUniqueIDBDatabase): |
| (WebKit::LegacyUniqueIDBDatabase::~LegacyUniqueIDBDatabase): |
| (WebKit::LegacyUniqueIDBDatabase::filenameForDatabaseName): |
| (WebKit::LegacyUniqueIDBDatabase::databaseFilenameIdentifier): |
| (WebKit::LegacyUniqueIDBDatabase::canShareDatabases): |
| (WebKit::LegacyUniqueIDBDatabase::registerConnection): |
| (WebKit::LegacyUniqueIDBDatabase::unregisterConnection): |
| (WebKit::LegacyUniqueIDBDatabase::shutdown): |
| (WebKit::LegacyUniqueIDBDatabase::shutdownBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didShutdownBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::deleteDatabase): |
| (WebKit::LegacyUniqueIDBDatabase::getOrEstablishIDBDatabaseMetadata): |
| (WebKit::LegacyUniqueIDBDatabase::openBackingStoreAndReadMetadata): |
| (WebKit::LegacyUniqueIDBDatabase::didOpenBackingStoreAndReadMetadata): |
| (WebKit::LegacyUniqueIDBDatabase::openTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::beginTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::commitTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::resetTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::rollbackTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::postTransactionOperation): |
| (WebKit::LegacyUniqueIDBDatabase::didCompleteTransactionOperation): |
| (WebKit::LegacyUniqueIDBDatabase::changeDatabaseVersion): |
| (WebKit::LegacyUniqueIDBDatabase::didChangeDatabaseVersion): |
| (WebKit::LegacyUniqueIDBDatabase::didCreateObjectStore): |
| (WebKit::LegacyUniqueIDBDatabase::didDeleteObjectStore): |
| (WebKit::LegacyUniqueIDBDatabase::didClearObjectStore): |
| (WebKit::LegacyUniqueIDBDatabase::didCreateIndex): |
| (WebKit::LegacyUniqueIDBDatabase::didDeleteIndex): |
| (WebKit::LegacyUniqueIDBDatabase::didCompleteBoolRequest): |
| (WebKit::LegacyUniqueIDBDatabase::createObjectStore): |
| (WebKit::LegacyUniqueIDBDatabase::deleteObjectStore): |
| (WebKit::LegacyUniqueIDBDatabase::clearObjectStore): |
| (WebKit::LegacyUniqueIDBDatabase::createIndex): |
| (WebKit::LegacyUniqueIDBDatabase::deleteIndex): |
| (WebKit::LegacyUniqueIDBDatabase::putRecord): |
| (WebKit::LegacyUniqueIDBDatabase::getRecord): |
| (WebKit::LegacyUniqueIDBDatabase::openCursor): |
| (WebKit::LegacyUniqueIDBDatabase::cursorAdvance): |
| (WebKit::LegacyUniqueIDBDatabase::cursorIterate): |
| (WebKit::LegacyUniqueIDBDatabase::count): |
| (WebKit::LegacyUniqueIDBDatabase::deleteRange): |
| (WebKit::LegacyUniqueIDBDatabase::openBackingStoreTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::beginBackingStoreTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::commitBackingStoreTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::resetBackingStoreTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::rollbackBackingStoreTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::changeDatabaseVersionInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::createObjectStoreInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::deleteObjectStoreInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::clearObjectStoreInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::createIndexInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::deleteIndexInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::putRecordInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didPutRecordInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::getRecordFromBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didGetRecordFromBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::openCursorInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didOpenCursorInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::advanceCursorInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didAdvanceCursorInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::iterateCursorInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didIterateCursorInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::countInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didCountInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::deleteRangeInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didDeleteRangeInBackingStore): |
| (WebKit::LegacyUniqueIDBDatabase::didEstablishTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::didResetTransaction): |
| (WebKit::LegacyUniqueIDBDatabase::resetAllTransactions): |
| (WebKit::LegacyUniqueIDBDatabase::finalizeRollback): |
| (WebKit::LegacyUniqueIDBDatabase::absoluteDatabaseDirectory): |
| (WebKit::LegacyUniqueIDBDatabase::postMainThreadTask): |
| (WebKit::LegacyUniqueIDBDatabase::performNextMainThreadTask): |
| (WebKit::LegacyUniqueIDBDatabase::postDatabaseTask): |
| (WebKit::LegacyUniqueIDBDatabase::performNextDatabaseTask): |
| * DatabaseProcess/IndexedDB/LegacyUniqueIDBDatabase.h: Renamed from Source/WebKit2/DatabaseProcess/IndexedDB/UniqueIDBDatabase.h. |
| (WebKit::LegacyUniqueIDBDatabase::create): |
| (WebKit::LegacyUniqueIDBDatabase::identifier): |
| * DatabaseProcess/IndexedDB/LegacyUniqueIDBDatabaseIdentifier.cpp: Renamed from Source/WebKit2/DatabaseProcess/IndexedDB/UniqueIDBDatabaseIdentifier.cpp. |
| (WebKit::LegacyUniqueIDBDatabaseIdentifier::LegacyUniqueIDBDatabaseIdentifier): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifier::isHashTableDeletedValue): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifier::hash): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifier::isNull): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifier::isolatedCopy): |
| (WebKit::operator==): |
| * DatabaseProcess/IndexedDB/LegacyUniqueIDBDatabaseIdentifier.h: Renamed from Source/WebKit2/DatabaseProcess/IndexedDB/UniqueIDBDatabaseIdentifier.h. |
| (WebKit::LegacyUniqueIDBDatabaseIdentifier::databaseName): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifier::openingOrigin): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifier::mainFrameOrigin): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifierHash::hash): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifierHash::equal): |
| (WebKit::LegacyUniqueIDBDatabaseIdentifierHashTraits::isEmptyValue): |
| * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp: |
| (WebKit::UniqueIDBDatabaseBackingStoreSQLite::UniqueIDBDatabaseBackingStoreSQLite): |
| (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata): |
| * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h: |
| * Shared/WebCrossThreadCopier.cpp: |
| (WebCore::LegacyUniqueIDBDatabaseIdentifier>::copy): |
| (WebCore::UniqueIDBDatabaseIdentifier>::copy): Deleted. |
| * Shared/WebCrossThreadCopier.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-17 Anders Carlsson <andersca@apple.com> |
| |
| Remove WebContextSupplement::shouldTerminate, it's no longer used |
| https://bugs.webkit.org/show_bug.cgi?id=154367 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/WebContextSupplement.h: |
| (WebKit::WebContextSupplement::shouldTerminate): Deleted. |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::shouldTerminate): Deleted. |
| * UIProcess/WebCookieManagerProxy.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::shouldTerminate): Deleted. |
| |
| 2016-02-17 Brian Burg <bburg@apple.com> |
| |
| RemoteInspector deadlocks if _WKAutomationDelegate creates/registers a target synchronously |
| https://bugs.webkit.org/show_bug.cgi?id=154359 |
| <rdar://problem/24708897> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| RemoteInspector always grabs a lock whenever receiving or sending XPC messages. If it |
| forwards a new session request via _WKAutomationDelegate, and the client synchronously |
| creates and registers a session, then RemoteInspector will try to grab the lock again |
| while adding the session to its registry, causing a deadlock. |
| |
| * UIProcess/Cocoa/AutomationClient.mm: |
| (WebKit::AutomationClient::requestAutomationSession): Add a dispatch_async() to |
| protect clients from accidentally deadlocking. They shouldn't have to care about |
| RemoteInspector's locking mechanisms. |
| |
| 2016-02-17 Anders Carlsson <andersca@apple.com> |
| |
| Remove an unused function |
| https://bugs.webkit.org/show_bug.cgi?id=154358 |
| |
| Reviewed by Sam Weinig. |
| |
| * Platform/cg/CGUtilities.cpp: |
| (WebKit::paintBitmapContext): Deleted. |
| * Platform/cg/CGUtilities.h: |
| |
| 2016-02-17 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: More Encoder/Decoder/Messaging scaffolding for WK2 IPC. |
| https://bugs.webkit.org/show_bug.cgi?id=154356 |
| |
| Reviewed by Alex Christensen. |
| |
| No change in behavior yet; Just laying the groundwork. |
| |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.cpp: |
| (WebKit::WebIDBConnectionToClient::didDeleteDatabase): |
| (WebKit::WebIDBConnectionToClient::didOpenDatabase): |
| (WebKit::WebIDBConnectionToClient::didAbortTransaction): |
| (WebKit::WebIDBConnectionToClient::didCommitTransaction): |
| (WebKit::WebIDBConnectionToClient::didCreateObjectStore): |
| (WebKit::WebIDBConnectionToClient::didDeleteObjectStore): |
| (WebKit::WebIDBConnectionToClient::didClearObjectStore): |
| (WebKit::WebIDBConnectionToClient::didCreateIndex): |
| (WebKit::WebIDBConnectionToClient::didDeleteIndex): |
| (WebKit::WebIDBConnectionToClient::didPutOrAdd): |
| (WebKit::WebIDBConnectionToClient::didGetRecord): |
| (WebKit::WebIDBConnectionToClient::didGetCount): |
| (WebKit::WebIDBConnectionToClient::didDeleteRecord): |
| (WebKit::WebIDBConnectionToClient::didOpenCursor): |
| (WebKit::WebIDBConnectionToClient::didIterateCursor): |
| (WebKit::WebIDBConnectionToClient::fireVersionChangeEvent): |
| (WebKit::WebIDBConnectionToClient::didStartTransaction): |
| (WebKit::WebIDBConnectionToClient::notifyOpenDBRequestBlocked): |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h: |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.messages.in: |
| |
| 2016-02-17 Alex Christensen <achristensen@webkit.org> |
| |
| Fix GTK build after r196720. |
| |
| * UIProcess/API/gtk/WebKitUIClient.cpp: |
| |
| 2016-02-17 Anders Carlsson <andersca@apple.com> |
| |
| Need listener-based version of runBeforeUnloadConfirmPanel |
| https://bugs.webkit.org/show_bug.cgi?id=154354 |
| rdar://problem/23736691 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/API/APIObject.h: |
| * Shared/API/c/WKBase.h: |
| * UIProcess/API/APIUIClient.h: |
| (API::UIClient::runBeforeUnloadConfirmPanel): |
| * UIProcess/API/C/WKPage.cpp: |
| (fixUpBotchedPageUIClient): |
| (WebKit::RunBeforeUnloadConfirmPanelResultListener::create): |
| (WebKit::RunBeforeUnloadConfirmPanelResultListener::~RunBeforeUnloadConfirmPanelResultListener): |
| (WebKit::RunBeforeUnloadConfirmPanelResultListener::call): |
| (WKPageRunBeforeUnloadConfirmPanelResultListenerGetTypeID): |
| (WKPageRunBeforeUnloadConfirmPanelResultListenerCall): |
| (WKPageSetPageUIClient): |
| * UIProcess/API/C/WKPageUIClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::runBeforeUnloadConfirmPanel): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| |
| 2016-02-17 Simon Fraser <simon.fraser@apple.com> |
| |
| PDFPlugin's scrollableArea container is not properly unregistered when page is going into the PageCache |
| https://bugs.webkit.org/show_bug.cgi?id=148182 |
| |
| Reviewed by Brent Fulgham. |
| |
| When handling Command-arrow key while showing a scrollable PDF, the timing of PDFPlugin |
| teardown and navigation could result in PDFPlugin::destroy() getting the wrong FrameView, |
| so the old FrameView was left with a stale pointer in its scrollableAreaSet. |
| |
| Fix this by adding an explicit willDetatchRenderer() which is called on the plugin |
| before the Frame gets a new FrameView. |
| |
| Also narrow the scope of the RefPtr<Widget> in HTMLPlugInElement::defaultEventHandler() |
| so that the Widget is not kept alive over a possible navigation. |
| |
| I was unable to make an automated test, because reproducing the bug requires handling |
| a Command-arrow key event in a way that the last ref to a Widget is held over the event |
| handling, and this wasn't possible in an iframe. |
| |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h: |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::willDetatchRenderer): |
| * WebProcess/Plugins/Plugin.h: |
| (WebKit::Plugin::willDetatchRenderer): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::willDetatchRenderer): |
| * WebProcess/Plugins/PluginView.h: |
| |
| 2016-02-17 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: Encoder/Decoder/Messaging scaffolding for WK2 IPC. |
| https://bugs.webkit.org/show_bug.cgi?id=154351 |
| |
| Reviewed by Alex Christensen. |
| |
| No change in behavior yet; Just laying the groundwork. |
| |
| Implement in all of the client->server message sends, requiring many Encoder/Decoders for |
| IDB objects to also be implemented: |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp: |
| (WebKit::WebIDBConnectionToServer::deleteDatabase): |
| (WebKit::WebIDBConnectionToServer::openDatabase): |
| (WebKit::WebIDBConnectionToServer::abortTransaction): |
| (WebKit::WebIDBConnectionToServer::commitTransaction): |
| (WebKit::WebIDBConnectionToServer::didFinishHandlingVersionChangeTransaction): |
| (WebKit::WebIDBConnectionToServer::createObjectStore): |
| (WebKit::WebIDBConnectionToServer::deleteObjectStore): |
| (WebKit::WebIDBConnectionToServer::clearObjectStore): |
| (WebKit::WebIDBConnectionToServer::createIndex): |
| (WebKit::WebIDBConnectionToServer::deleteIndex): |
| (WebKit::WebIDBConnectionToServer::putOrAdd): |
| (WebKit::WebIDBConnectionToServer::getRecord): |
| (WebKit::WebIDBConnectionToServer::getCount): |
| (WebKit::WebIDBConnectionToServer::deleteRecord): |
| (WebKit::WebIDBConnectionToServer::openCursor): |
| (WebKit::WebIDBConnectionToServer::iterateCursor): |
| (WebKit::WebIDBConnectionToServer::establishTransaction): |
| (WebKit::WebIDBConnectionToServer::databaseConnectionClosed): |
| (WebKit::WebIDBConnectionToServer::abortOpenAndUpgradeNeeded): |
| (WebKit::WebIDBConnectionToServer::didFireVersionChangeEvent): |
| |
| 2016-02-17 Alex Christensen <achristensen@webkit.org> |
| |
| Copy http body when being redirected with 308 with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154348 |
| |
| Reviewed by Brady Eidson. |
| |
| This fixes http/tests/security/cors-post-redirect-308.html |
| which used to assert in ResourceRequest::doUpdateResourceHTTPBody |
| |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::willPerformHTTPRedirection): |
| |
| 2016-02-17 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: More WK2 IPC Scaffolding. |
| https://bugs.webkit.org/show_bug.cgi?id=154317 |
| |
| Reviewed by Alex Christensen. |
| |
| No change in behavior yet; Just laying the groundwork. |
| |
| * CMakeLists.txt: |
| * DerivedSources.make: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.cpp: |
| (WebKit::WebIDBConnectionToClient::deleteDatabase): |
| (WebKit::WebIDBConnectionToClient::openDatabase): |
| (WebKit::WebIDBConnectionToClient::abortTransaction): |
| (WebKit::WebIDBConnectionToClient::commitTransaction): |
| (WebKit::WebIDBConnectionToClient::didFinishHandlingVersionChangeTransaction): |
| (WebKit::WebIDBConnectionToClient::createObjectStore): |
| (WebKit::WebIDBConnectionToClient::deleteObjectStore): |
| (WebKit::WebIDBConnectionToClient::clearObjectStore): |
| (WebKit::WebIDBConnectionToClient::createIndex): |
| (WebKit::WebIDBConnectionToClient::deleteIndex): |
| (WebKit::WebIDBConnectionToClient::putOrAdd): |
| (WebKit::WebIDBConnectionToClient::getRecord): |
| (WebKit::WebIDBConnectionToClient::getCount): |
| (WebKit::WebIDBConnectionToClient::deleteRecord): |
| (WebKit::WebIDBConnectionToClient::openCursor): |
| (WebKit::WebIDBConnectionToClient::iterateCursor): |
| (WebKit::WebIDBConnectionToClient::establishTransaction): |
| (WebKit::WebIDBConnectionToClient::databaseConnectionClosed): |
| (WebKit::WebIDBConnectionToClient::abortOpenAndUpgradeNeeded): |
| (WebKit::WebIDBConnectionToClient::didFireVersionChangeEvent): |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.h: |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.messages.in: Added. |
| |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp: |
| (WebKit::WebIDBConnectionToServer::didDeleteDatabase): |
| (WebKit::WebIDBConnectionToServer::didOpenDatabase): |
| (WebKit::WebIDBConnectionToServer::didAbortTransaction): |
| (WebKit::WebIDBConnectionToServer::didCommitTransaction): |
| (WebKit::WebIDBConnectionToServer::didCreateObjectStore): |
| (WebKit::WebIDBConnectionToServer::didDeleteObjectStore): |
| (WebKit::WebIDBConnectionToServer::didClearObjectStore): |
| (WebKit::WebIDBConnectionToServer::didCreateIndex): |
| (WebKit::WebIDBConnectionToServer::didDeleteIndex): |
| (WebKit::WebIDBConnectionToServer::didPutOrAdd): |
| (WebKit::WebIDBConnectionToServer::didGetRecord): |
| (WebKit::WebIDBConnectionToServer::didGetCount): |
| (WebKit::WebIDBConnectionToServer::didDeleteRecord): |
| (WebKit::WebIDBConnectionToServer::didOpenCursor): |
| (WebKit::WebIDBConnectionToServer::didIterateCursor): |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h: |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.messages.in: Added. |
| |
| 2016-02-17 Alex Christensen <achristensen@webkit.org> |
| |
| CMake build fix after r196698. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-17 Alex Christensen <achristensen@webkit.org> |
| |
| CMake build fix after r196698. |
| |
| * CMakeLists.txt: |
| |
| 2016-02-17 Anders Carlsson <andersca@apple.com> |
| |
| Remove unused media cache manager code |
| https://bugs.webkit.org/show_bug.cgi?id=154339 |
| |
| Reviewed by Tim Horton. |
| |
| * DerivedSources.make: |
| * Shared/API/c/WKBase.h: |
| * UIProcess/API/C/WKAPICast.h: |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetMediaCacheManager): Deleted. |
| * UIProcess/API/C/WKContext.h: |
| * UIProcess/API/C/WKMediaCacheManager.cpp: Removed. |
| (WKMediaCacheManagerGetTypeID): Deleted. |
| (WKMediaCacheManagerGetHostnamesWithMediaCache): Deleted. |
| (WKMediaCacheManagerClearCacheForHostname): Deleted. |
| (WKMediaCacheManagerClearCacheForAllHostnames): Deleted. |
| * UIProcess/API/C/WKMediaCacheManager.h: Removed. |
| * UIProcess/WebMediaCacheManagerProxy.cpp: Removed. |
| (WebKit::WebMediaCacheManagerProxy::supplementName): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::create): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::~WebMediaCacheManagerProxy): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::processPoolDestroyed): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::processDidClose): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::shouldTerminate): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::refWebContextSupplement): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::derefWebContextSupplement): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::didGetHostnamesWithMediaCache): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::clearCacheForHostname): Deleted. |
| (WebKit::WebMediaCacheManagerProxy::clearCacheForAllHostnames): Deleted. |
| * UIProcess/WebMediaCacheManagerProxy.h: Removed. |
| * UIProcess/WebMediaCacheManagerProxy.messages.in: Removed. |
| * UIProcess/WebProcessPool.cpp: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/MediaCache/WebMediaCacheManager.cpp: Removed. |
| (WebKit::WebMediaCacheManager::supplementName): Deleted. |
| (WebKit::WebMediaCacheManager::WebMediaCacheManager): Deleted. |
| (WebKit::WebMediaCacheManager::getHostnamesWithMediaCache): Deleted. |
| (WebKit::WebMediaCacheManager::clearCacheForHostname): Deleted. |
| (WebKit::WebMediaCacheManager::clearCacheForAllHostnames): Deleted. |
| * WebProcess/MediaCache/WebMediaCacheManager.h: Removed. |
| * WebProcess/MediaCache/WebMediaCacheManager.messages.in: Removed. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::m_webSQLiteDatabaseTracker): Deleted. |
| |
| 2016-02-16 Dean Jackson <dino@apple.com> |
| |
| Allow double tap to zoom in fast-click pages |
| https://bugs.webkit.org/show_bug.cgi?id=154318 |
| <rdar://problem/24223767> |
| |
| Reviewed by Simon Fraser and Benjamin Poulain. |
| |
| Most of the patch comes from Jon Lee. |
| |
| Our fast-click algorithm exposed a number of cases where |
| people missed the double-tap-to-zoom behaviour. In particular, |
| when you double tap on a large body of text, typical in |
| blogs and articles. |
| |
| This patch enhances the algorithm to have a parallel |
| double-tap gesture recognizer in the situations where |
| fast-click is enabled. This new gesture recongizer does |
| not cause the single tap to block for 350ms, so clicks |
| are still dispatched fast. If it fires, we already have |
| some information about whether we have a pending double |
| tap, based on the first tap. |
| |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::disableDoubleTapGesturesDuringTapIfNecessary): Remove the optimization |
| that only told the content view to disable on pages that allowed double taps. We now allow |
| them even on fast click pages. |
| |
| * UIProcess/ios/WKContentViewInteraction.h: Add the new UITapGestureRecognizer for double taps |
| in fast click pages. This is called nonBlockingDoubleTapGestureRecognizer because, unlike |
| the existing DoubleTapGestureRecognizer, this one does not force the singleTapRecognizer |
| to wait. |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView setupInteraction]): Set up the new UITapGestureRecognizer. |
| (-[WKContentView cleanupInteraction]): And remove it when we're done. |
| (-[WKContentView _removeDefaultGestureRecognizers]): Ditto. |
| (-[WKContentView _addDefaultGestureRecognizers]): |
| (-[WKContentView _inspectorNodeSearchRecognized:]): Something happened, we are no longer in |
| a potential double tap situation. |
| (-[WKContentView _disableDoubleTapGesturesDuringTapIfNecessary:]): Remove the check |
| for potential tap in progress. |
| (-[WKContentView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]): |
| (-[WKContentView gestureRecognizerShouldBegin:]): |
| (-[WKContentView _highlightLongPressRecognized:]): Again, something happened, so we are |
| no longer in a double tap situation. |
| (-[WKContentView _longPressRecognized:]): Ditto. |
| (-[WKContentView _singleTapRecognized:]): Ditto. |
| (-[WKContentView _doubleTapRecognized:]): Ditto. |
| (-[WKContentView _resetIsDoubleTapPending]): |
| (-[WKContentView _fastDoubleTapRecognized:]): We're now pending a double tap. |
| (-[WKContentView _twoFingerDoubleTapRecognized:]): |
| (-[WKContentView _didNotHandleTapAsClick:]): If we get here and we have a pending |
| double tap, then trigger a zoom operation. |
| (-[WKContentView _setDoubleTapGesturesEnabled:]): |
| |
| 2016-02-16 Alex Christensen <achristensen@webkit.org> |
| |
| CMake build fix. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-16 Alex Christensen <achristensen@webkit.org> |
| |
| Use NSURLCredential from serverTrust when evaluating server trust AuthenticationChallenges with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154316 |
| |
| Reviewed by Brady Eidson. |
| |
| This fixes http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame.html |
| and many other layout tests that use https because it allows https connections with servers |
| with self-signed certificates when TestController::canAuthenticateAgainstProtectionSpace in |
| WebKitTestRunner says it's OK, or when any other WKPageNavigationClient says it's ok. |
| |
| * NetworkProcess/NetworkDataTask.h: |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::serverTrustCredential): |
| |
| 2016-02-16 Anders Carlsson <andersca@apple.com> |
| |
| Use pid_t everywhere, instead of PlatformProcessIdentifier |
| https://bugs.webkit.org/show_bug.cgi?id=154306 |
| |
| Reviewed by Sam Weinig. |
| |
| * Platform/IPC/Connection.h: |
| * Platform/PlatformProcessIdentifier.h: Removed. |
| * UIProcess/API/efl/tests/test_ewk2_context.cpp: |
| (TEST_F): |
| * UIProcess/ChildProcessProxy.h: |
| (WebKit::ChildProcessProxy::processIdentifier): |
| * UIProcess/Launcher/ProcessLauncher.cpp: |
| (WebKit::ProcessLauncher::didFinishLaunchingProcess): |
| * UIProcess/Launcher/ProcessLauncher.h: |
| (WebKit::ProcessLauncher::processIdentifier): |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::processIdentifier): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::networkProcessIdentifier): |
| * UIProcess/WebProcessPool.h: |
| * UIProcess/WebProcessProxy.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-16 Anders Carlsson <andersca@apple.com> |
| |
| Remove WebKit2 header cruft |
| https://bugs.webkit.org/show_bug.cgi?id=154309 |
| |
| Reviewed by Sam Weinig. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * mac/WKError.h: Removed. |
| * mac/WKPreferences.h: Removed. |
| |
| 2016-02-16 Anders Carlsson <andersca@apple.com> |
| |
| Remove unused environment variable classes |
| https://bugs.webkit.org/show_bug.cgi?id=154308 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h: Removed. |
| * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm: Removed. |
| (WebKit::DynamicLinkerEnvironmentExtractor::DynamicLinkerEnvironmentExtractor): Deleted. |
| (WebKit::DynamicLinkerEnvironmentExtractor::processEnvironmentVariable): Deleted. |
| (WebKit::DynamicLinkerEnvironmentExtractor::processLoadCommand): Deleted. |
| (WebKit::DynamicLinkerEnvironmentExtractor::processLoadCommands): Deleted. |
| (WebKit::DynamicLinkerEnvironmentExtractor::processSingleArchitecture): Deleted. |
| (WebKit::DynamicLinkerEnvironmentExtractor::processFatFile): Deleted. |
| (WebKit::DynamicLinkerEnvironmentExtractor::getExtractedEnvironmentVariables): Deleted. |
| * UIProcess/Launcher/mac/EnvironmentVariables.cpp: Removed. |
| (WebKit::EnvironmentVariables::EnvironmentVariables): Deleted. |
| (WebKit::EnvironmentVariables::~EnvironmentVariables): Deleted. |
| (WebKit::EnvironmentVariables::set): Deleted. |
| (WebKit::EnvironmentVariables::get): Deleted. |
| (WebKit::EnvironmentVariables::appendValue): Deleted. |
| (WebKit::EnvironmentVariables::valueIfVariableHasName): Deleted. |
| (WebKit::EnvironmentVariables::createStringForVariable): Deleted. |
| (WebKit::EnvironmentVariables::copyEnvironmentVariables): Deleted. |
| (WebKit::EnvironmentVariables::dump): Deleted. |
| * UIProcess/Launcher/mac/EnvironmentVariables.h: Removed. |
| (WebKit::EnvironmentVariables::environmentPointer): Deleted. |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-16 Alex Christensen <achristensen@webkit.org> |
| |
| Add checks before redirecting with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154298 |
| |
| Reviewed by Andy Estes. |
| |
| * NetworkProcess/NetworkDataTask.h: |
| (WebKit::NetworkDataTask::create): |
| (WebKit::NetworkDataTask::setPendingDownload): |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| (WebKit::NetworkDataTask::~NetworkDataTask): |
| (WebKit::NetworkDataTask::willPerformHTTPRedirection): |
| Implemented based on ResourceHandle::willSendRequest but with two notable exceptions: |
| 1. When using NSURLConnection, the last http method and the current http method are not always equal, and this |
| check needs to change the current http method to match the last http method when being redirected with an http |
| status code 307. When using NSURLSession, the current http method is already updated properly. |
| 2. I did not copy the part of ResourceHandle::willSendRequest that uses a CredentialStorage. I'm trying to avoid |
| using CredentialStorages with NSURLSession. |
| (WebKit::NetworkDataTask::scheduleFailure): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): |
| |
| 2016-02-16 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: WK2 IPC Scaffolding. |
| https://bugs.webkit.org/show_bug.cgi?id=154296 |
| |
| Reviewed by Alex Christensen. |
| |
| No change in behavior yet; Just laying the groundwork. |
| |
| * CMakeLists.txt: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| * DatabaseProcess/DatabaseToWebProcessConnection.cpp: |
| (WebKit::DatabaseToWebProcessConnection::establishIDBConnectionToServer): |
| (WebKit::DatabaseToWebProcessConnection::removeIDBConnectionToServer): |
| * DatabaseProcess/DatabaseToWebProcessConnection.h: |
| * DatabaseProcess/DatabaseToWebProcessConnection.messages.in: |
| |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.cpp: Added. |
| (WebKit::WebIDBConnectionToClient::create): |
| (WebKit::WebIDBConnectionToClient::WebIDBConnectionToClient): |
| (WebKit::WebIDBConnectionToClient::~WebIDBConnectionToClient): |
| (WebKit::WebIDBConnectionToClient::disconnectedFromWebProcess): |
| (WebKit::WebIDBConnectionToClient::messageSenderConnection): |
| (WebKit::WebIDBConnectionToClient::connectionToClient): |
| (WebKit::WebIDBConnectionToClient::didDeleteDatabase): |
| (WebKit::WebIDBConnectionToClient::didOpenDatabase): |
| (WebKit::WebIDBConnectionToClient::didAbortTransaction): |
| (WebKit::WebIDBConnectionToClient::didCommitTransaction): |
| (WebKit::WebIDBConnectionToClient::didCreateObjectStore): |
| (WebKit::WebIDBConnectionToClient::didDeleteObjectStore): |
| (WebKit::WebIDBConnectionToClient::didClearObjectStore): |
| (WebKit::WebIDBConnectionToClient::didCreateIndex): |
| (WebKit::WebIDBConnectionToClient::didDeleteIndex): |
| (WebKit::WebIDBConnectionToClient::didPutOrAdd): |
| (WebKit::WebIDBConnectionToClient::didGetRecord): |
| (WebKit::WebIDBConnectionToClient::didGetCount): |
| (WebKit::WebIDBConnectionToClient::didDeleteRecord): |
| (WebKit::WebIDBConnectionToClient::didOpenCursor): |
| (WebKit::WebIDBConnectionToClient::didIterateCursor): |
| (WebKit::WebIDBConnectionToClient::fireVersionChangeEvent): |
| (WebKit::WebIDBConnectionToClient::didStartTransaction): |
| (WebKit::WebIDBConnectionToClient::notifyOpenDBRequestBlocked): |
| * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.h: Added. |
| |
| * Platform/Logging.h: |
| |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp: Added. |
| (WebKit::generateConnectionToServerIdentifier): |
| (WebKit::WebIDBConnectionToServer::create): |
| (WebKit::WebIDBConnectionToServer::WebIDBConnectionToServer): |
| (WebKit::WebIDBConnectionToServer::~WebIDBConnectionToServer): |
| (WebKit::WebIDBConnectionToServer::messageSenderConnection): |
| (WebKit::WebIDBConnectionToServer::coreConnectionToServer): |
| (WebKit::WebIDBConnectionToServer::deleteDatabase): |
| (WebKit::WebIDBConnectionToServer::openDatabase): |
| (WebKit::WebIDBConnectionToServer::abortTransaction): |
| (WebKit::WebIDBConnectionToServer::commitTransaction): |
| (WebKit::WebIDBConnectionToServer::didFinishHandlingVersionChangeTransaction): |
| (WebKit::WebIDBConnectionToServer::createObjectStore): |
| (WebKit::WebIDBConnectionToServer::deleteObjectStore): |
| (WebKit::WebIDBConnectionToServer::clearObjectStore): |
| (WebKit::WebIDBConnectionToServer::createIndex): |
| (WebKit::WebIDBConnectionToServer::deleteIndex): |
| (WebKit::WebIDBConnectionToServer::putOrAdd): |
| (WebKit::WebIDBConnectionToServer::getRecord): |
| (WebKit::WebIDBConnectionToServer::getCount): |
| (WebKit::WebIDBConnectionToServer::deleteRecord): |
| (WebKit::WebIDBConnectionToServer::openCursor): |
| (WebKit::WebIDBConnectionToServer::iterateCursor): |
| (WebKit::WebIDBConnectionToServer::establishTransaction): |
| (WebKit::WebIDBConnectionToServer::databaseConnectionClosed): |
| (WebKit::WebIDBConnectionToServer::abortOpenAndUpgradeNeeded): |
| (WebKit::WebIDBConnectionToServer::didFireVersionChangeEvent): |
| * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h: Added. |
| |
| * WebProcess/Databases/WebDatabaseProvider.cpp: |
| (WebKit::WebDatabaseProvider::idbConnectionToServerForSession): |
| * WebProcess/Databases/WebDatabaseProvider.h: |
| |
| * WebProcess/Databases/WebToDatabaseProcessConnection.cpp: |
| (WebKit::WebToDatabaseProcessConnection::idbConnectionToServerForSession): |
| * WebProcess/Databases/WebToDatabaseProcessConnection.h: |
| |
| 2016-02-16 Sam Weinig <sam@webkit.org> |
| |
| Revert r195826. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _createAndConfigureDoubleTapGestureRecognizer]): |
| (-[WKContentView _singleTapCommited:]): |
| |
| 2016-02-16 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [Mac][cmake] Unreviewed buildfix after r196488. Just for fun. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-15 Dan Bernstein <mitz@apple.com> |
| |
| Removed unused files after r196478. |
| |
| * Configurations/DatabaseProcess.xcconfig: Removed. |
| * Configurations/NetworkProcess.xcconfig: Removed. |
| * Configurations/PluginProcess.xcconfig: Removed. |
| * Configurations/WebContentProcess.xcconfig: Removed. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-15 ChangSeok Oh <changseok.oh@collabora.com> |
| |
| [ThreadedCompositor] position:fixed elements do not have their own layers when threaded compositor is enabled. |
| https://bugs.webkit.org/show_bug.cgi?id=154100 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Currently, fixed elements are redrawn to a backing store every time layout or scroll happens. |
| It results in the bad effect on performance-wise. Letting fixed element have separate layers is |
| necessary when threaded compositor is enabled at least. Because async scrolling requires it. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::updatePreferences): |
| |
| 2016-02-15 Alex Christensen <achristensen@webkit.org> |
| |
| Implement content sniffing check with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154261 |
| |
| Reviewed by Andy Estes. |
| |
| This fixes http/tests/xmlhttprequest/small-chunks-response-text.html when using NetworkSession. |
| |
| * NetworkProcess/NetworkDataTask.h: |
| (WebKit::NetworkDataTask::create): |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| Content sniffing is enabled by default. Disable it if the NetworkLoadParameters say not to. |
| This is analogous to behavior in ResourceHandle::createNSURLConnection. |
| |
| 2016-02-15 Alex Christensen <achristensen@webkit.org> |
| |
| Move Download authentication code to AuthenticationManager |
| https://bugs.webkit.org/show_bug.cgi?id=154132 |
| |
| Reviewed by Sam Weinig. |
| |
| When a video element makes a request that receives an authentication challenge, the |
| AuthenticationManager receives an AuthenticationChallenge without an AuthenticationClient. |
| As a result, Download::receivedCredential and other functions were being called, which |
| sent a message to the challenge's sender. This functionality is not specific to downloads, |
| so I moved it from Download to AuthenticationManager. |
| |
| This fixes http/tests/media/video-auth.html when using NetworkSession |
| because I use AuthenticationManager::receivedCredential if there is no AuthenticationClient |
| instead of improperly asserting that there is always an AuthenticationClient if there is no |
| completionHandler. |
| |
| * NetworkProcess/Downloads/Download.h: |
| * NetworkProcess/Downloads/ios/DownloadIOS.mm: |
| (WebKit::Download::platformDidFinish): |
| (WebKit::Download::receivedCredential): Deleted. |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): Deleted. |
| (WebKit::Download::receivedCancellation): Deleted. |
| (WebKit::Download::receivedRequestToPerformDefaultHandling): Deleted. |
| (WebKit::Download::receivedChallengeRejection): Deleted. |
| * NetworkProcess/Downloads/mac/DownloadMac.mm: |
| (WebKit::Download::platformDidFinish): |
| (WebKit::Download::receivedCredential): Deleted. |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): Deleted. |
| (WebKit::Download::receivedCancellation): Deleted. |
| (WebKit::Download::receivedRequestToPerformDefaultHandling): Deleted. |
| (WebKit::Download::receivedChallengeRejection): Deleted. |
| * NetworkProcess/Downloads/soup/DownloadSoup.cpp: |
| (WebKit::Download::platformDidFinish): |
| (WebKit::Download::receivedCredential): Deleted. |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): Deleted. |
| (WebKit::Download::receivedCancellation): Deleted. |
| (WebKit::Download::continueWithoutCredential): Deleted. |
| (WebKit::Download::useCredential): Deleted. |
| (WebKit::Download::cancelAuthenticationChallenge): Deleted. |
| (WebKit::Download::receivedRequestToPerformDefaultHandling): Deleted. |
| (WebKit::Download::receivedChallengeRejection): Deleted. |
| * PlatformEfl.cmake: |
| * PlatformGTK.cmake: |
| * PlatformMac.cmake: |
| * Shared/Authentication/AuthenticationManager.cpp: |
| (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge): |
| (WebKit::AuthenticationManager::useCredentialForSingleChallenge): |
| (WebKit::AuthenticationManager::continueWithoutCredentialForChallenge): |
| (WebKit::AuthenticationManager::continueWithoutCredentialForSingleChallenge): |
| (WebKit::AuthenticationManager::cancelChallenge): |
| (WebKit::AuthenticationManager::cancelSingleChallenge): |
| (WebKit::AuthenticationManager::performDefaultHandling): |
| (WebKit::AuthenticationManager::performDefaultHandlingForSingleChallenge): |
| (WebKit::AuthenticationManager::rejectProtectionSpaceAndContinue): |
| (WebKit::AuthenticationManager::rejectProtectionSpaceAndContinueForSingleChallenge): |
| * Shared/Authentication/AuthenticationManager.h: |
| (WebKit::AuthenticationManager::outstandingAuthenticationChallengeCount): |
| * Shared/Authentication/cocoa: Added. |
| * Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm: Added. |
| (WebKit::AuthenticationManager::receivedCredential): |
| (WebKit::AuthenticationManager::receivedRequestToContinueWithoutCredential): |
| (WebKit::AuthenticationManager::receivedCancellation): |
| (WebKit::AuthenticationManager::receivedRequestToPerformDefaultHandling): |
| (WebKit::AuthenticationManager::receivedChallengeRejection): |
| * Shared/Authentication/soup: Added. |
| * Shared/Authentication/soup/AuthenticationManagerSoup.cpp: Added. |
| (WebKit::AuthenticationManager::receivedCredential): |
| (WebKit::AuthenticationManager::receivedRequestToContinueWithoutCredential): |
| (WebKit::AuthenticationManager::receivedCancellation): |
| (WebKit::AuthenticationManager::receivedRequestToPerformDefaultHandling): |
| (WebKit::AuthenticationManager::receivedChallengeRejection): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-15 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| [CMake][Mac] Remove WKNPAPIPlugInContainer.mm in WebKit2/PlatformMac.cmake |
| https://bugs.webkit.org/show_bug.cgi?id=154234 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| * PlatformMac.cmake: Remove WKNPAPIPlugInContainer.mm. |
| |
| 2016-02-14 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, land an additional Mac CMake build fix. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-14 Brian Burg <bburg@apple.com> |
| |
| WKAutomationDelegate's requestAutomationSession should take a suggested session identifier |
| https://bugs.webkit.org/show_bug.cgi?id=154012 |
| <rdar://problem/24557697> |
| |
| Reviewed by Darin Adler. |
| |
| Add a string parameter to the delegate method for requesting a new session. |
| |
| * UIProcess/API/APIAutomationClient.h: |
| (API::AutomationClient::didRequestAutomationSession): |
| (API::AutomationClient::requestAutomationSession): Deleted. |
| Rename the client method to better match the delegate method's name. |
| |
| * UIProcess/API/Cocoa/_WKAutomationDelegate.h: |
| * UIProcess/Cocoa/AutomationClient.h: |
| * UIProcess/Cocoa/AutomationClient.mm: |
| (WebKit::AutomationClient::AutomationClient): |
| (WebKit::AutomationClient::requestAutomationSession): |
| |
| 2016-02-13 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix GTK+ and hopefully EFL build after r196499. |
| |
| * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp: |
| (WebKit::ProcessLauncher::launchProcess): |
| * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp: |
| (WebKit::ProcessLauncher::launchProcess): |
| * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp: |
| (WebKit::PluginProcessProxy::platformGetLaunchOptions): |
| |
| 2016-02-12 Beth Dakin <bdakin@apple.com> |
| |
| REGRESSION: Link preview is slow and unreliable |
| https://bugs.webkit.org/show_bug.cgi?id=154197 |
| -and corresponding- |
| rdar://problem/24428064 |
| |
| Reviewed by Tim Horton. |
| |
| This patch rolls http://trac.webkit.org/changeset/187471 back in. That was |
| how we fixed this problem ages ago. We rolled it out because it very |
| mysteriously seemed to cause a memory regression, but we want to track that |
| separately and not leave this performance regression in its place in the |
| meantime. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::updateViewState): |
| (WebKit::WebPageProxy::dispatchViewStateChange): |
| (WebKit::WebPageProxy::updateActivityToken): |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of a 6 year old compiler workaround |
| https://bugs.webkit.org/show_bug.cgi?id=154198 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::connectToService): |
| (WebKit::createService): |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Fix ASan build. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::copyASanDynamicLibraryPath): Deleted. |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Remove NPAPI for showing preference panes |
| https://bugs.webkit.org/show_bug.cgi?id=154193 |
| |
| Reviewed by Dan Bernstein. |
| |
| No plug-ins ended up adopting this API, so there's no point in keeping it around. |
| |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/mac/PluginControllerProxyMac.mm: |
| (WebKit::PluginControllerProxy::openPluginPreferencePane): Deleted. |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::NetscapePluginModule::getPluginInfo): Deleted. |
| * Shared/Plugins/PluginModuleInfo.h: |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/Plugins/PluginProcessProxy.messages.in: |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::openPluginPreferencePane): Deleted. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): Deleted. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::openPluginPreferencePane): Deleted. |
| (WebKit::NetscapePlugin::plugInContainer): Deleted. |
| (WebKit::NetscapePlugin::platformDestroy): Deleted. |
| * WebProcess/Plugins/Netscape/mac/WKNPAPIPlugInContainer.h: Removed. |
| * WebProcess/Plugins/Netscape/mac/WKNPAPIPlugInContainer.mm: Removed. |
| (-[WKNPAPIPlugInContainer dealloc]): Deleted. |
| (-[WKNPAPIPlugInContainer _invalidate]): Deleted. |
| (-[WKNPAPIPlugInContainer openPlugInPreferencePane]): Deleted. |
| * WebProcess/Plugins/Netscape/mac/WKNPAPIPlugInContainerInternal.h: Removed. |
| * WebProcess/Plugins/PluginController.h: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::openPluginPreferencePane): Deleted. |
| * WebProcess/Plugins/PluginView.h: |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Remove PowerPC cruft |
| https://bugs.webkit.org/show_bug.cgi?id=154191 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::getPluginArchitecture): Deleted. |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Remove more unneeded process launching code |
| https://bugs.webkit.org/show_bug.cgi?id=154190 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/Databases/DatabaseProcessProxy.cpp: |
| (WebKit::DatabaseProcessProxy::getLaunchOptions): Deleted. |
| * UIProcess/Databases/mac/DatabaseProcessProxyMac.mm: Removed. |
| (WebKit::DatabaseProcessProxy::platformGetLaunchOptions): Deleted. |
| * UIProcess/Launcher/ProcessLauncher.h: |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::NetworkProcessProxy::getLaunchOptions): Deleted. |
| * UIProcess/Network/mac/NetworkProcessProxyMac.mm: |
| (WebKit::NetworkProcessProxy::platformGetLaunchOptions): Deleted. |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::pluginNeedsExecutableHeap): Deleted. |
| (WebKit::PluginProcessProxy::platformGetLaunchOptions): Deleted. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::getLaunchOptions): Deleted. |
| * UIProcess/mac/WebProcessProxyMac.mm: |
| (WebKit::WebProcessProxy::platformGetLaunchOptions): Deleted. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Use different process types for 32-bit and 64-bit plug-ins |
| https://bugs.webkit.org/show_bug.cgi?id=154186 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/Databases/DatabaseProcessProxy.cpp: |
| (WebKit::DatabaseProcessProxy::getLaunchOptions): |
| * UIProcess/Launcher/ProcessLauncher.h: |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::serviceName): |
| (WebKit::shouldLeakBoost): |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::NetworkProcessProxy::getLaunchOptions): |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::getLaunchOptions): Deleted. |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::platformGetLaunchOptions): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::getLaunchOptions): |
| |
| 2016-02-12 Beth Dakin <bdakin@apple.com> |
| |
| Re-name isClickableElement in InteractionInformationAtPosition to isElement |
| https://bugs.webkit.org/show_bug.cgi?id=154179 |
| |
| Reviewed by Enrica Casucci. |
| |
| The bool is set for all elements, so it’s just confusing to call it a |
| clickableElement instead of just element. |
| * Shared/ios/InteractionInformationAtPosition.h: |
| * Shared/ios/InteractionInformationAtPosition.mm: |
| (WebKit::InteractionInformationAtPosition::encode): |
| (WebKit::InteractionInformationAtPosition::decode): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView gestureRecognizerShouldBegin:]): |
| (-[WKContentView _highlightLongPressRecognized:]): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::getPositionInformation): |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Remove more unused process launcher code |
| https://bugs.webkit.org/show_bug.cgi?id=154181 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/Launcher/ProcessLauncher.cpp: |
| (WebKit::ProcessLauncher::processTypeAsString): Deleted. |
| (WebKit::ProcessLauncher::getProcessTypeFromString): Deleted. |
| * UIProcess/Launcher/ProcessLauncher.h: |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Remove more unused process launching code |
| https://bugs.webkit.org/show_bug.cgi?id=154178 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/Databases/mac/DatabaseProcessProxyMac.mm: |
| (WebKit::shouldUseXPC): Deleted. |
| (WebKit::DatabaseProcessProxy::platformGetLaunchOptions): Deleted. |
| * UIProcess/Launcher/ProcessLauncher.h: |
| * UIProcess/Launcher/mac/EnvironmentVariables.cpp: |
| (WebKit::EnvironmentVariables::preexistingProcessServiceNameKey): Deleted. |
| (WebKit::EnvironmentVariables::preexistingProcessTypeKey): Deleted. |
| * UIProcess/Launcher/mac/EnvironmentVariables.h: |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): |
| (WebKit::setUpTerminationNotificationHandler): Deleted. |
| (WebKit::addDYLDEnvironmentAdditions): Deleted. |
| (WebKit::tryPreexistingProcess): Deleted. |
| (WebKit::createProcess): Deleted. |
| * UIProcess/Network/mac/NetworkProcessProxyMac.mm: |
| (WebKit::shouldUseXPC): Deleted. |
| (WebKit::NetworkProcessProxy::platformGetLaunchOptions): Deleted. |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::platformGetLaunchOptions): Deleted. |
| * UIProcess/ios/WebProcessProxyIOS.mm: |
| (WebKit::WebProcessProxy::platformGetLaunchOptions): Deleted. |
| * UIProcess/mac/WebProcessProxyMac.mm: |
| (WebKit::shouldUseXPC): Deleted. |
| (WebKit::WebProcessProxy::platformGetLaunchOptions): Deleted. |
| |
| 2016-02-12 Brian Burg <bburg@apple.com> |
| |
| Add a WebKit SPI for creating an automation session and advertise the active session via RemoteInspector |
| https://bugs.webkit.org/show_bug.cgi?id=153934 |
| |
| Reviewed by Dan Bernstein and Joseph Pecoraro. |
| |
| An automation session is the main place where WebKit support for user agent automation is implemented. |
| A session encapsulates the state (default timeouts, page identifier mappings), objects (active automation |
| WebPages) and logic (how to open a window, run JS, send user input, etc.) used to implement automation |
| commands. |
| |
| A process pool can only have one session at a time. The session is created by the WebKit client in |
| response to a request that comes through _WKAutomationDelegate. When a session is set on the process pool, |
| it is advertised to remote drivers and debuggers as a RemoteControllableTarget. A remote driver can use |
| the existing RemoteInspector API to connect to the session and send it automation commands. |
| |
| The session has a delegate so that WebKit clients can perform actions that are outside the scope of WebKit, |
| such as creating new tabs, enumerating windows, or sending native user inputs. |
| |
| This patch adds AutomationSession classes at the API and implementation level in WebKit2. The |
| implementation class contains RemoteInspector support, which cannot be used directly by WebKit clients. |
| AutomationSessionDelegate classes exist at both the API and implementation level to bridge between |
| Objective-C delegates and C++ clients. All code related to RemoteInspector and RemoteAutomationTarget |
| must be guarded by ENABLE(REMOTE_INSPECTOR). |
| |
| * Shared/API/APIObject.h: Add new API type 'AutomationSession'. |
| * Shared/Cocoa/APIObject.mm: |
| (API::Object::newObject): Allocate in the wrapper. |
| * UIProcess/API/APIAutomationSessionClient.h: Added. |
| (API::AutomationSessionClient::~AutomationSessionClient): |
| (API::AutomationSessionClient::didRequestNewWindow): Delegate window creation to the client. |
| * UIProcess/API/Cocoa/WKProcessPool.mm: |
| (-[WKProcessPool _setAutomationSession:]): Keep at most one WebAutomationSession at a time. |
| * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: |
| * UIProcess/API/Cocoa/_WKAutomationSession.h: Added. |
| * UIProcess/API/Cocoa/_WKAutomationSession.mm: Added. |
| (-[_WKAutomationSession init]): Construct the API object in the implementation wrapper. |
| (-[_WKAutomationSession dealloc]): Clear the client before calling the implementation destructor. |
| |
| (-[_WKAutomationSession sessionIdentifier]): |
| (-[_WKAutomationSession setSessionIdentifier:]): |
| Store the session identifier string in the implementation. |
| |
| (-[_WKAutomationSession delegate]): |
| (-[_WKAutomationSession setDelegate:]): |
| Create an Objective-C adapter for the delegate if not nil and set it as the implementation's client. |
| |
| (-[_WKAutomationSession _apiObject]): |
| * UIProcess/API/Cocoa/_WKAutomationSessionDelegate.h: Added. |
| * UIProcess/API/Cocoa/_WKAutomationSessionInternal.h: Added. |
| (wrapper): |
| * UIProcess/Cocoa/AutomationSessionClient.h: Added. |
| Set up the boilerplate for caching delegate method availability. It will include more methods later. |
| |
| * UIProcess/Cocoa/AutomationSessionClient.mm: Added. Forward requests to the SPI delegate. |
| (WebKit::AutomationSessionClient::AutomationSessionClient): |
| (WebKit::AutomationSessionClient::didRequestNewWindow): Delegate window creation to the client. |
| |
| * UIProcess/WebAutomationSession.cpp: Added. |
| (WebKit::WebAutomationSession::WebAutomationSession): |
| By default, a session should be available and not paired to any particular remote driver. |
| |
| (WebKit::WebAutomationSession::~WebAutomationSession): Require callers to clear the client first. |
| (WebKit::WebAutomationSession::setClient): |
| (WebKit::WebAutomationSession::dispatchMessageFromRemote): Stub this out for now. |
| |
| (WebKit::WebAutomationSession::connect): |
| (WebKit::WebAutomationSession::disconnect): |
| To prevent multiple connection attempts, mark the target as paired when a remote client has connected. |
| |
| * UIProcess/WebAutomationSession.h: Added. |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::setAutomationSession): |
| Store the session object and tell it to register itself. Unregistering happens automatically |
| in RemoteControllableTarget::~RemoteControllableTarget. |
| |
| * UIProcess/WebProcessPool.h: |
| * WebKit2.xcodeproj/project.pbxproj: Add files and headers. |
| |
| 2016-02-12 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of NetscapePluginModule::createPluginMIMETypesPreferences |
| https://bugs.webkit.org/show_bug.cgi?id=154173 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.h: |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::NetscapePluginModule::createPluginMIMETypesPreferences): Deleted. |
| |
| 2016-02-11 Anders Carlsson <andersca@apple.com> |
| |
| Remove legacy processes from WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=154119 |
| |
| Reviewed by Darin Adler. |
| |
| * Configurations/BaseLegacyProcess.xcconfig: Removed. |
| * DatabaseProcess/EntryPoint/mac/LegacyProcess/DatabaseProcessMain.mm: Removed. |
| (DatabaseProcessMain): Deleted. |
| * DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist: Removed. |
| * NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist: Removed. |
| * NetworkProcess/EntryPoint/mac/LegacyProcess/NetworkProcessMain.mm: Removed. |
| (NetworkProcessMain): Deleted. |
| * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist: Removed. |
| * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm: Removed. |
| (WebKit::PluginProcessMainDelegate::PluginProcessMainDelegate): Deleted. |
| (PluginProcessMain): Deleted. |
| * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h: Removed. |
| (WebKit::ChildProcessMainDelegate::ChildProcessMainDelegate): Deleted. |
| (WebKit::ChildProcessMain): Deleted. |
| * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm: Removed. |
| (WebKit::ChildProcessMainDelegate::~ChildProcessMainDelegate): Deleted. |
| (WebKit::ChildProcessMainDelegate::installSignalHandlers): Deleted. |
| (WebKit::ChildProcessMainDelegate::doPreInitializationWork): Deleted. |
| (WebKit::ChildProcessMainDelegate::getConnectionIdentifier): Deleted. |
| (WebKit::ChildProcessMainDelegate::getClientIdentifier): Deleted. |
| (WebKit::ChildProcessMainDelegate::getClientProcessName): Deleted. |
| (WebKit::ChildProcessMainDelegate::getExtraInitializationData): Deleted. |
| (WebKit::ChildProcessMainDelegate::startRunLoop): Deleted. |
| (WebKit::ChildProcessMainDelegate::doPostRunWork): Deleted. |
| * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm: Removed. |
| (WebKit::closeUnusedFileDescriptors): Deleted. |
| (WebKit::BootstrapMain): Deleted. |
| (main): Deleted. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist: Removed. |
| * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm: Removed. |
| (WebKit::WebContentProcessMainDelegate::WebContentProcessMainDelegate): Deleted. |
| (WebContentProcessMain): Deleted. |
| |
| 2016-02-12 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] HTTP auth dialog incorrectly rendered with Accelerated Compositing enabled |
| https://bugs.webkit.org/show_bug.cgi?id=154159 |
| |
| Reviewed by Michael Catanzaro. |
| |
| There are two problems here, first we are changing the cairo |
| operator when rendering the xcomposite window pixmap without a |
| proper save/restore, so it affects the drawing that happens after |
| that, and second problem is that we are not rendering the gray |
| background in AC mode because we are returning earlier. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewRenderAcceleratedCompositingResults): |
| (webkitWebViewBaseDraw): |
| |
| 2016-02-12 Carlos Alberto Lopez Perez <clopez@igalia.com> |
| |
| [GTK] Allow applications to disable Accelerated Compositing mode. |
| https://bugs.webkit.org/show_bug.cgi?id=154147 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UIProcess/gtk/WebPreferencesGtk.cpp: |
| (WebKit::WebPreferences::platformInitializeStore): if the environment |
| variable WEBKIT_DISABLE_COMPOSITING_MODE is defined, then disable AC. |
| |
| 2016-02-11 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r196453. |
| https://bugs.webkit.org/show_bug.cgi?id=154142 |
| |
| This change broke internal iOS builds (Requested by ryanhaddad |
| on #webkit). |
| |
| Reverted changeset: |
| |
| "Move Download authentication code to AuthenticationManager" |
| https://bugs.webkit.org/show_bug.cgi?id=154132 |
| http://trac.webkit.org/changeset/196453 |
| |
| 2016-02-11 Anders Carlsson <andersca@apple.com> |
| |
| Use the system PluginProcess.app for generating plug-in MIME type preferences |
| https://bugs.webkit.org/show_bug.cgi?id=154139 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::createPropertyListFile): |
| |
| 2016-02-11 Beth Dakin <bdakin@apple.com> |
| |
| EditingRangeIsRelativeTo::Document and NSRangeIsRelativeTo::Document should |
| be called EditableRoot instead |
| https://bugs.webkit.org/show_bug.cgi?id=154138 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| EditableRoot is much more accurate than Document. |
| * Shared/EditingRange.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::insertText): |
| (WebKit::WebViewImpl::selectedRangeWithCompletionHandler): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::rangeFromEditingRange): |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2016-02-11 Alex Christensen <achristensen@webkit.org> |
| |
| Move Download authentication code to AuthenticationManager |
| https://bugs.webkit.org/show_bug.cgi?id=154132 |
| |
| Reviewed by Sam Weinig. |
| |
| When a video element makes a request that receives an authentication challenge, the |
| AuthenticationManager receives an AuthenticationChallenge without an AuthenticationClient. |
| As a result, Download::receivedCredential and other functions were being called, which |
| sent a message to the challenge's sender. This functionality is not specific to downloads, |
| so I moved it from Download to AuthenticationManager. |
| |
| This fixes http/tests/media/video-auth.html when using NetworkSession |
| because I use AuthenticationManager::receivedCredential if there is no AuthenticationClient |
| instead of improperly asserting that there is always an AuthenticationClient if there is no |
| completionHandler. |
| |
| * NetworkProcess/Downloads/Download.h: |
| * NetworkProcess/Downloads/ios/DownloadIOS.mm: |
| (WebKit::Download::platformDidFinish): |
| (WebKit::Download::receivedCredential): Deleted. |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): Deleted. |
| (WebKit::Download::receivedCancellation): Deleted. |
| (WebKit::Download::receivedRequestToPerformDefaultHandling): Deleted. |
| (WebKit::Download::receivedChallengeRejection): Deleted. |
| * NetworkProcess/Downloads/mac/DownloadMac.mm: |
| (WebKit::Download::platformDidFinish): |
| (WebKit::Download::receivedCredential): Deleted. |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): Deleted. |
| (WebKit::Download::receivedCancellation): Deleted. |
| (WebKit::Download::receivedRequestToPerformDefaultHandling): Deleted. |
| (WebKit::Download::receivedChallengeRejection): Deleted. |
| * NetworkProcess/Downloads/soup/DownloadSoup.cpp: |
| (WebKit::Download::platformDidFinish): |
| (WebKit::Download::receivedCredential): Deleted. |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): Deleted. |
| (WebKit::Download::receivedCancellation): Deleted. |
| (WebKit::Download::continueWithoutCredential): Deleted. |
| (WebKit::Download::useCredential): Deleted. |
| (WebKit::Download::cancelAuthenticationChallenge): Deleted. |
| (WebKit::Download::receivedRequestToPerformDefaultHandling): Deleted. |
| (WebKit::Download::receivedChallengeRejection): Deleted. |
| * PlatformEfl.cmake: |
| * PlatformGTK.cmake: |
| * PlatformMac.cmake: |
| * Shared/Authentication/AuthenticationManager.cpp: |
| (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge): |
| (WebKit::AuthenticationManager::useCredentialForSingleChallenge): |
| (WebKit::AuthenticationManager::continueWithoutCredentialForChallenge): |
| (WebKit::AuthenticationManager::continueWithoutCredentialForSingleChallenge): |
| (WebKit::AuthenticationManager::cancelChallenge): |
| (WebKit::AuthenticationManager::cancelSingleChallenge): |
| (WebKit::AuthenticationManager::performDefaultHandling): |
| (WebKit::AuthenticationManager::performDefaultHandlingForSingleChallenge): |
| (WebKit::AuthenticationManager::rejectProtectionSpaceAndContinue): |
| (WebKit::AuthenticationManager::rejectProtectionSpaceAndContinueForSingleChallenge): |
| * Shared/Authentication/AuthenticationManager.h: |
| (WebKit::AuthenticationManager::outstandingAuthenticationChallengeCount): |
| * Shared/Authentication/cocoa: Added. |
| * Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm: Added. |
| (WebKit::AuthenticationManager::receivedCredential): |
| (WebKit::AuthenticationManager::receivedRequestToContinueWithoutCredential): |
| (WebKit::AuthenticationManager::receivedCancellation): |
| (WebKit::AuthenticationManager::receivedRequestToPerformDefaultHandling): |
| (WebKit::AuthenticationManager::receivedChallengeRejection): |
| * Shared/Authentication/soup: Added. |
| * Shared/Authentication/soup/AuthenticationManagerSoup.cpp: Added. |
| (WebKit::AuthenticationManager::receivedCredential): |
| (WebKit::AuthenticationManager::receivedRequestToContinueWithoutCredential): |
| (WebKit::AuthenticationManager::receivedCancellation): |
| (WebKit::AuthenticationManager::receivedRequestToPerformDefaultHandling): |
| (WebKit::AuthenticationManager::receivedChallengeRejection): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-11 Beth Dakin <bdakin@apple.com> |
| |
| Soft spaces are often tracked in the wrong spot |
| https://bugs.webkit.org/show_bug.cgi?id=154127 |
| -and corresponding- |
| rdar://problem/24493140 |
| |
| Reviewed by Sam Weinig. |
| |
| Soft spaces are in the wrong space now for two reasons. First of all, the |
| NSRange we get from the accepted candidate is relative to the paragraph |
| start, so without this patch, soft spaces are only ever right for the first |
| paragraph. Secondly, if focus changes for any reason other than text |
| insertion, soft spaces are also wrong because they need to be re-set. |
| |
| New enum can be used to indicate what an EditingRange is relative to. |
| * Shared/EditingRange.h: |
| (WebKit::EditingRange::EditingRange): |
| |
| didHandleAcceptedCandidate is a new message that gets sent from the |
| WebProcess. This lets us track a bool m_isHandlingAcceptedCandidate. |
| * UIProcess/Cocoa/WebViewImpl.h: |
| (WebKit::WebViewImpl::didHandleAcceptedCandidate): |
| |
| Re-set the m_softSpaceRange on selection changes so long as |
| m_isHandlingAcceptedCandidate is false. |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::selectionDidChange): |
| |
| Set m_isHandlingAcceptedCandidate to true. |
| (WebKit::WebViewImpl::handleAcceptedCandidate): |
| |
| Set m_isHandlingAcceptedCandidate to false. |
| (WebKit::WebViewImpl::didHandleAcceptedCandidate): |
| |
| insertTextAsync takes a new parameter indicating what the replacementRange is |
| relative to. If needToRemoveSoftSpace is true, then the replacementRange is |
| relative to the paragraph. |
| (WebKit::WebViewImpl::insertText): |
| |
| Pipe didHandleAcceptedCandidate through to WebViewImpl. |
| * UIProcess/PageClient.h: |
| |
| insertTextAsync takes an EditingRangeIsRelativeTo. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::insertTextAsync): |
| |
| Pipe didHandleAcceptedCandidate through to WebViewImpl. |
| (WebKit::WebPageProxy::didHandleAcceptedCandidate): |
| * UIProcess/WebPageProxy.h: |
| |
| New message lets the WebProcess tell the UIProcess when the candidate has |
| been accepted. |
| * UIProcess/WebPageProxy.messages.in: |
| |
| Pipe didHandleAcceptedCandidate through to WebViewImpl. |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didHandleAcceptedCandidate): |
| |
| insertTextAsync takes an EditingRangeIsRelativeTo. Pass that through to |
| rangeFromEditingRange to get the correct range. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::insertTextAsync): |
| |
| Use the EditingRangeIsRelativeTo to find the right WebCore::Range. |
| (WebKit::WebPage::rangeFromEditingRange): |
| |
| Take EditingRangeIsRelativeTo in a few places. |
| * WebProcess/WebPage/WebPage.h: |
| |
| InsertTextAsync takes a EditingRangeIsRelativeTo. |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| Send didHandleAccpetedCandidate to the UIProcess |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::handleAcceptedCandidate): |
| |
| 2016-02-11 Alex Christensen <achristensen@webkit.org> |
| |
| Use BlobResourceHandle when loading blob urls, even when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=154096 |
| |
| Reviewed by Brady Eidson. |
| |
| This fixes at least http/tests/xmlhttprequest/blob-request-byte-range.html. |
| |
| * NetworkProcess/NetworkDataTask.h: |
| Renamed NetworkDataTaskClient::didReceiveResponse to didReceiveResponseNetworkSession |
| to avoid conflicting with ResourceHandleClient::didReceiveResponse. |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| Make a BlobResourceHandle instead of a NetworkDataTask if we have a request for a blob url. |
| (WebKit::NetworkLoad::~NetworkLoad): |
| (WebKit::NetworkLoad::setDefersLoading): |
| (WebKit::NetworkLoad::cancel): |
| (WebKit::NetworkLoad::continueWillSendRequest): |
| (WebKit::NetworkLoad::continueDidReceiveResponse): |
| (WebKit::NetworkLoad::sharedDidReceiveResponse): |
| (WebKit::NetworkLoad::convertTaskToDownload): |
| (WebKit::NetworkLoad::setPendingDownloadID): |
| (WebKit::NetworkLoad::didReceiveChallenge): |
| (WebKit::NetworkLoad::didReceiveResponseNetworkSession): |
| (WebKit::NetworkLoad::cannotShowURL): |
| (WebKit::NetworkLoad::didReceiveResponseAsync): |
| (WebKit::NetworkLoad::willSendRequestAsync): |
| (WebKit::NetworkLoad::canAuthenticateAgainstProtectionSpaceAsync): |
| (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::NetworkLoad::supportsDataArray): |
| (WebKit::NetworkLoad::didReceiveDataArray): |
| (WebKit::NetworkLoad::didSendData): |
| (WebKit::NetworkLoad::receivedCancellation): |
| (WebKit::NetworkLoad::didReceiveResponse): Deleted. |
| Compile ResourceHandleClient when using NetworkSession because it is used for blobs now. |
| Also, add null checks because we now have NetworkLoads where either m_task or m_handle is always null. |
| * NetworkProcess/NetworkLoad.h: |
| (WebKit::NetworkLoad::pendingDownloadID): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| * NetworkProcess/mac/NetworkLoadMac.mm: |
| (WebKit::NetworkLoad::willCacheResponseAsync): |
| |
| 2016-02-11 Frederic Wang <fred.wang@free.fr> |
| |
| Bug 154103 - [GTK] Build error after bug 154046 |
| https://bugs.webkit.org/show_bug.cgi?id=154103 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UIProcess/API/gtk/WebKitUserContent.cpp: |
| (_WebKitUserStyleSheet::_WebKitUserStyleSheet): |
| (webkitUserStyleSheetGetUserStyleSheet): |
| * UIProcess/API/gtk/WebKitUserContentPrivate.h: |
| |
| 2016-02-10 Jiewen Tan <jiewen_tan@apple.com> |
| |
| Rename *Event::create* which creates events for bindings to *Event::createForBindings* and cleanup corresponding paths |
| https://bugs.webkit.org/show_bug.cgi?id=153903 |
| <rdar://problem/24518146> |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::nextAssistableElement): |
| |
| 2016-02-10 Anders Carlsson <andersca@apple.com> |
| |
| Add SPI to remove individual user scripts or user style sheets |
| https://bugs.webkit.org/show_bug.cgi?id=154046 |
| rdar://problem/23596352 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/API/Cocoa/WKUserContentController.mm: |
| (-[WKUserContentController _removeUserScript:]): |
| (-[WKUserContentController _userStyleSheets]): |
| (-[WKUserContentController _addUserStyleSheet:]): |
| (-[WKUserContentController _removeUserStyleSheet:]): |
| * UIProcess/API/Cocoa/WKUserContentControllerPrivate.h: |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::WebUserContentControllerProxy): |
| (WebKit::WebUserContentControllerProxy::addProcess): |
| (WebKit::WebUserContentControllerProxy::removeUserScript): |
| (WebKit::WebUserContentControllerProxy::addUserStyleSheet): |
| (WebKit::WebUserContentControllerProxy::removeUserStyleSheet): |
| (WebKit::WebUserContentControllerProxy::removeAllUserStyleSheets): |
| * UIProcess/UserContent/WebUserContentControllerProxy.h: |
| (WebKit::WebUserContentControllerProxy::userStyleSheets): |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::removeUserScript): |
| (WebKit::WebUserContentController::removeUserStyleSheet): |
| * WebProcess/UserContent/WebUserContentController.h: |
| * WebProcess/UserContent/WebUserContentController.messages.in: |
| |
| 2016-02-10 Alex Christensen <achristensen@webkit.org> |
| |
| Fix assertions when loading from WebProcess |
| https://bugs.webkit.org/show_bug.cgi?id=154079 |
| |
| Reviewed by Anders Carlsson. |
| |
| Assertions were failing, mostly when using NetworkProcess, and mostly involving Top Sites. |
| When we do loading from the WebProcess (which we should eventually not allow), we were sometimes |
| using a private browsing session that did not exist because the UIProcess had told the NetworkProcess |
| to create a private browsing session with the given SessionID, but the WebProcess was not told about |
| the private browsing session. |
| Also, sometimes we were calling NetworkProcess::singleton() from the WebProcess, which caused problems |
| with the PlatformStrategies object being reset. This prevents that, too. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| Added an assertion that we have a network session when we have just made a NetworkingContext with the given SessionID. |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::defaultSession): |
| (WebKit::NetworkSession::NetworkSession): |
| * NetworkProcess/mac/RemoteNetworkingContext.mm: |
| (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession): |
| Call NetworkProcess::singleton only when we know we are in the network process. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: |
| (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession): |
| Tell the WebProcesses about the new private session, too. Sometimes they use the new private session. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::ensurePrivateBrowsingSession): |
| (WebKit::WebProcess::destroyPrivateBrowsingSession): |
| Removed useless macros that were always true for all WK2 clients. |
| |
| 2016-02-10 Dan Bernstein <mitz@apple.com> |
| |
| [Mac] Stop installing the legacy processes |
| https://bugs.webkit.org/show_bug.cgi?id=154062 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Configurations/All.xcconfig: Removed the legacy processes from EXCLUDED_SOURCE_FILE_NAMES |
| for iOS, now that they are no longer included in a Copy Files build phase. |
| * Configurations/BaseLegacyProcess.xcconfig: Set SKIP_INSTALL to YES for OS X as well. |
| * WebKit2.xcodeproj/project.pbxproj: Removed the Copy Files build phase that copied the |
| processes into the framework in engineering builds. Renamed the “Add current version |
| symlinks” script build phase to “Add XPCServices symlink”, and changed it to do just that. |
| |
| 2016-02-09 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| REGRESSION(r196183): [GTK] Broke TestInspector |
| https://bugs.webkit.org/show_bug.cgi?id=153945 |
| |
| Reviewed by Michael Catanzaro. |
| |
| When the inspector view is detached and not added to a window, |
| which happens when it's closed, the inspector view is destroyed |
| because it doesn't have a parent anymore. When the inspector view |
| is destroyed we notify the web process that the inspector was |
| closed. Before r196183 this was not a problem, because the call to |
| WebInspectorProxy::didClose() from platformDetach() returned early |
| because WebInspectorProxy::didClose() had already set |
| m_inspectorPage to nullptr. In r196183 m_inspectorPage is set to |
| nullptr after platformDetach(), so we end up trying to detach the |
| inpector view again. To prevent this cycle, we should disconnect |
| the destroyed signal handler from the inspector view when |
| platformDetach() is called from WebInspectorProxy::didClose(). |
| |
| * UIProcess/gtk/WebInspectorProxyGtk.cpp: |
| (WebKit::WebInspectorProxy::platformDetach): |
| |
| 2016-02-09 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r196341. |
| https://bugs.webkit.org/show_bug.cgi?id=154056 |
| |
| This change broke existing API tests on Mac and iOS (Requested |
| by ryanhaddad on #webkit). |
| |
| Reverted changeset: |
| |
| "Add SPI to remove individual user scripts or user style |
| sheets" |
| https://bugs.webkit.org/show_bug.cgi?id=154046 |
| http://trac.webkit.org/changeset/196341 |
| |
| 2016-02-09 Anders Carlsson <andersca@apple.com> |
| |
| Add SPI to remove individual user scripts or user style sheets |
| https://bugs.webkit.org/show_bug.cgi?id=154046 |
| rdar://problem/23596352 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/API/Cocoa/WKUserContentController.mm: |
| (-[WKUserContentController _removeUserScript:]): |
| (-[WKUserContentController _userStyleSheets]): |
| (-[WKUserContentController _addUserStyleSheet:]): |
| (-[WKUserContentController _removeUserStyleSheet:]): |
| * UIProcess/API/Cocoa/WKUserContentControllerPrivate.h: |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::WebUserContentControllerProxy): |
| (WebKit::WebUserContentControllerProxy::addProcess): |
| (WebKit::WebUserContentControllerProxy::removeUserScript): |
| (WebKit::WebUserContentControllerProxy::addUserStyleSheet): |
| (WebKit::WebUserContentControllerProxy::removeUserStyleSheet): |
| (WebKit::WebUserContentControllerProxy::removeAllUserStyleSheets): |
| * UIProcess/UserContent/WebUserContentControllerProxy.h: |
| (WebKit::WebUserContentControllerProxy::userStyleSheets): |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::removeUserScript): |
| (WebKit::WebUserContentController::removeUserStyleSheet): |
| * WebProcess/UserContent/WebUserContentController.h: |
| * WebProcess/UserContent/WebUserContentController.messages.in: |
| |
| 2016-02-07 Gavin Barraclough <barraclough@apple.com> |
| |
| GetValueFunc/PutValueFunc should not take both slotBase and thisValue |
| https://bugs.webkit.org/show_bug.cgi?id=154009 |
| |
| Reviewed by Geoff Garen. |
| |
| In JavaScript there are two types of properties - regular value properties, and accessor properties. |
| One difference between these is how they are reflected by getOwnPropertyDescriptor, and another is |
| what object they operate on in the case of a prototype access. If you access a value property of a |
| prototype object it return a value pertinent to the prototype, but in the case of a prototype object |
| returning an accessor, then the accessor function is applied to the base object of the access. |
| |
| JSC supports special 'custom' properties implemented as a c++ callback, and these custom properties |
| can be used to implement either value- or accessor-like behavior. getOwnPropertyDescriptor behavior |
| is selected via the CustomAccessor attribute. Value- or accessor-like object selection is current |
| supported by passing both the slotBase and the thisValue to the callback,and hoping it uses the |
| right one. This is probably inefficient, bug-prone, and leads to crazy like JSBoundSlotBaseFunction. |
| |
| Instead, just pass one thisValue to the callback functions, consistent with CustomAccessor. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::getOwnPropertyNames): |
| (WebKit::JSNPObject::propertyGetter): |
| (WebKit::JSNPObject::methodGetter): |
| * WebProcess/Plugins/Netscape/JSNPObject.h: |
| - Merged slotBase & thisValue to custom property callbacks. |
| |
| 2016-02-09 Jer Noble <jer.noble@apple.com> |
| |
| [Mac] Exiting fullscreen through the placeholder action leaves window in empty state |
| https://bugs.webkit.org/show_bug.cgi?id=152979 |
| <rdar://problem/24132309> |
| |
| Reviewed by Brent Fulgham. |
| |
| In r194593, we relaxed the _fullScreenState requirement in -finishedExitFullScreenAnimation: to handle |
| the case where the request to exit fullscreen came from outside the process. However, in so doing, we |
| allowed -finishedExitFullScreenAnimation: to be called twice, and in so doing, leave the original window |
| empty of its WebView. Tighten up the restriction of _fullScreenState to allow only the "InFullScreen" |
| state (to take care of the external exit command) and the "ExitingFullScreen" state, to handle the |
| normal teardown path. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): |
| |
| 2016-02-04 Jer Noble <jer.noble@apple.com> |
| |
| [Mac] Adopt NSURLSession properties in AVAssetResourceLoader |
| https://bugs.webkit.org/show_bug.cgi?id=153873 |
| |
| Reviewed by Eric Carlson. |
| |
| Add a WebKit2 preference to control the WebCore isAVFoundationNSURLSessionEnabled() |
| setting. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetAVFoundationNSURLSessionEnabled): |
| (WKPreferencesGetAVFoundationNSURLSessionEnabled): |
| * UIProcess/API/C/WKPreferencesRef.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-02-09 Anders Carlsson <andersca@apple.com> |
| |
| All 32-bit plug-ins should use the XPC service |
| https://bugs.webkit.org/show_bug.cgi?id=154036 |
| rdar://problem/16059483 |
| |
| Reviewed by Dan Bernstein. |
| |
| Silverlight expects malloced memory from the tiny zone to be executable. It also expects |
| the data segment from its coreclr image to be executable. |
| |
| Make this possible by: |
| |
| 1. Shimming mach_vm_map, making sure to add the VM_PROT_EXECUTABLE bit to any memory in the tiny zone. |
| 2. Go through the address space, looking for any existing ranges from the tiny zone and mach_vm_protect them |
| to be executable. |
| 3. Register with dyld so we'll get callbacks whenever a library is bound, look for the coreclr image, and |
| mach_vm_protect its __DATA segment to be executable. |
| |
| * Platform/spi/Cocoa/DyldSPI.h: Copied from Source/WebKit2/PluginProcess/mac/PluginProcessShim.h. |
| * PluginProcess/mac/PluginProcessMac.mm: |
| (WebKit::isMallocMemoryTag): |
| (WebKit::shouldMapMemoryExecutable): |
| (WebKit::initializeShim): |
| (WebKit::PluginProcess::platformInitializeProcess): |
| * PluginProcess/mac/PluginProcessShim.h: |
| * PluginProcess/mac/PluginProcessShim.mm: |
| (WebKit::shimMachVMMap): |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::platformGetLaunchOptions): |
| (WebKit::shouldUseXPC): Deleted. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-09 Fujii Hironori <Hironori.Fujii@jp.sony.com> |
| |
| possible buffer overrun in Connection::processMessage of Source/WebKit2/Platform/IPC/unix/ConnectionUnix.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=153637 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * Platform/IPC/unix/ConnectionUnix.cpp: |
| (IPC::Connection::processMessage): Fix invalid arguments of memmove. |
| |
| 2016-02-09 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.5 release. |
| |
| * gtk/NEWS: Add release notes for 2.11.5. |
| |
| 2016-02-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] WebKitWebView should send crossing events to the WebProcess |
| https://bugs.webkit.org/show_bug.cgi?id=153740 |
| |
| Reviewed by Michael Catanzaro. |
| |
| We don't currently handle crossing events in the web view |
| (enter/leave). That's why if you hover a scrollbar and leave the |
| window, the scrollbar is still rendered as hovered. |
| |
| * Shared/gtk/WebEventFactory.cpp: |
| (WebKit::buttonForEvent): Handle the case of GDK_ENTER_NOTIFY and |
| GDK_LEAVE_NOTIFY events. |
| (WebKit::WebEventFactory::createWebMouseEvent): Ditto. |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseRealize): Add GDK_ENTER_NOTIFY_MASK and |
| GDK_LEAVE_NOTIFY_MASK flags to the web view event mask. |
| (webkitWebViewBaseCrossingNotifyEvent): Handle enter/leave notify |
| events by generating a mouse move event, ensuring the double to |
| int conversion will not cause any problem. |
| (webkit_web_view_base_class_init): Add an implementation for |
| enter_notify_event and leave_notify_event. |
| |
| 2016-02-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Infinite loop when processing mouse events synchronously |
| https://bugs.webkit.org/show_bug.cgi?id=153995 |
| |
| Reviewed by Darin Adler. |
| |
| This happened with WTR in the GTK+ port after landing patch in bug |
| #153740. The thing is that WTR forces events handling IPC messages |
| to be synchronous. When a drag and drop operation is in progress, |
| the web process ignores mouse move events and replies with |
| DidReceiveEvent signal. The DidReceiveEvent message handler in |
| WebPageProxy checks if we have a m_nextMouseMoveEvent and handles |
| it, but when all this happens synchronously the |
| m_nextMouseMoveEvent is the current one because we haven't |
| returned yet from handleMouseEvent(). We need to invalidate the |
| m_nextMouseMoveEvent before calling handleMouseEvent(). |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveEvent): |
| |
| 2016-02-08 Jeremy Jones <jeremyj@apple.com> |
| |
| Remove __weak from WKAirPlayRoutePicker.mm to fix build warning. |
| https://bugs.webkit.org/show_bug.cgi?id=153985 |
| rdar://problem/24485348 |
| |
| Reviewed by Darin Adler. |
| |
| Remove __weak since it is only available when using ARC. |
| |
| * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: |
| |
| 2016-02-08 Danilo Cesar Lemes de Paula <danilo.cesar@collabora.co.uk> |
| |
| [GTK] Fix crash when creating webview with g_object_new |
| https://bugs.webkit.org/show_bug.cgi?id=153989 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| g_object_new(WEBKIT_TYPE_WEB_VIEW, NULL) crashes webkit |
| as _WebKitWebViewBasePrivate constructor requires a mainloop, but |
| webkit is only initialized when a context is created (which |
| doesn't happen with a direct call to g_object_new). |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkit_web_view_base_class_init): |
| |
| 2016-02-08 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r196253. |
| https://bugs.webkit.org/show_bug.cgi?id=153990 |
| |
| Caused several crashes in GTK+ bots (Requested by KaL on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "[GTK] WebKitWebView should send crossing events to the |
| WebProcess" |
| https://bugs.webkit.org/show_bug.cgi?id=153740 |
| http://trac.webkit.org/changeset/196253 |
| |
| 2016-02-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] WebKitWebView should send crossing events to the WebProcess |
| https://bugs.webkit.org/show_bug.cgi?id=153740 |
| |
| Reviewed by Michael Catanzaro. |
| |
| We don't currently handle crossing events in the web view |
| (enter/leave). That's why if you hover a scrollbar and leave the |
| window, the scrollbar is still rendered as hovered. |
| |
| * Shared/gtk/WebEventFactory.cpp: |
| (WebKit::buttonForEvent): Handle the case of GDK_ENTER_NOTIFY and |
| GDK_LEAVE_NOTIFY events. |
| (WebKit::WebEventFactory::createWebMouseEvent): Ditto. |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseRealize): Add GDK_ENTER_NOTIFY_MASK and |
| GDK_LEAVE_NOTIFY_MASK flags to the web view event mask. |
| (webkitWebViewBaseCrossingNotifyEvent): Handle enter/leave notify |
| events by generating a mouse move event, ensuring the double to |
| int conversion will not cause any problem. |
| (webkit_web_view_base_class_init): Add an implementation for |
| enter_notify_event and leave_notify_event. |
| |
| 2016-02-06 Daniel Bates <dabates@apple.com> |
| |
| Call CFRelease() on SecRequirementRef when no longer needed |
| https://bugs.webkit.org/show_bug.cgi?id=153954 |
| <rdar://problem/24540259> |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/mac/ChildProcessMac.mm: |
| (WebKit::ChildProcess::initializeSandbox): |
| |
| 2016-02-06 Darin Adler <darin@apple.com> |
| |
| Finish auditing call sites of upper() and lower(), eliminate many, and rename the functions |
| https://bugs.webkit.org/show_bug.cgi?id=153905 |
| |
| Reviewed by Sam Weinig. |
| |
| * NetworkProcess/CustomProtocols/CustomProtocolManager.h: Use ASCII case-insensitive hash |
| for set of registered schemes. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::getPluginInfoFromPropertyLists): Use convertToASCIILowercase for MIME type and |
| for file extensions. |
| |
| * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp: |
| (WebKit::NetscapePluginModule::parseMIMEDescription): Use convertToASCIILowercase for |
| MIME description. |
| |
| * UIProcess/API/efl/ewk_context.cpp: |
| (ewk_context_preferred_languages_set): Use convertToASCIILowercase for language. |
| |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkit_web_context_set_preferred_languages): Use convertToASCIILowercase for language. |
| |
| * UIProcess/Plugins/PluginInfoStore.cpp: |
| (WebKit::PluginInfoStore::findPluginForExtension): Use Vector::contains instead of |
| writing it out using std::find. |
| (WebKit::pathExtension): Lowercase the result with convertToASCIILowercase instead of |
| leaving that to the caller. |
| (WebKit::PluginInfoStore::findPlugin): Removed call to lower since pathExtension |
| handles that now. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::findPlugin): Use convertToASCIILowercase for MIME type. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::globalURLSchemesWithCustomProtocolHandlers): Use |
| an ASCII case-insensitive hash. |
| (WebKit::WebProcessPool::registerGlobalURLSchemeAsHavingCustomProtocolHandlers): |
| Remove lowercasing, since the hash is now ASCII case-insensitive. |
| (WebKit::WebProcessPool::unregisterGlobalURLSchemeAsHavingCustomProtocolHandlers): |
| Ditto. |
| |
| * UIProcess/WebProcessPool.h: Use an ASCII case-insensitive hash. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::initialize): Use convertToASCIILowercase on parameter names |
| and values. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::pluginSupportsExtension): Use convertToASCIILowercase for extension assertion. |
| Also use a modern for loop. |
| (WebKit::WebFrameLoaderClient::objectContentType): Make the checks for empty MIME types |
| a little less redundant. Reordered logic to avoid checking the list of supported MIME |
| types extra times, and to eliminate the need for a boolean. Use convertToASCIILowercase |
| on the extension. |
| |
| 2016-02-06 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix more incorrect ASSERT introduced in r196053. |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::NetscapePluginX11::handleMouseEvent): |
| (WebKit::NetscapePluginX11::handleWheelEvent): |
| (WebKit::NetscapePluginX11::setFocus): |
| (WebKit::NetscapePluginX11::handleMouseEnterEvent): |
| (WebKit::NetscapePluginX11::handleMouseLeaveEvent): |
| (WebKit::NetscapePluginX11::handleKeyboardEvent): |
| |
| 2016-02-05 Timothy Hatcher <timothy@apple.com> |
| |
| Web Inspector: Error when closing page with WebInspector open |
| https://bugs.webkit.org/show_bug.cgi?id=152867 |
| rdar://problem/24099423 |
| |
| Reviewed by Brian Burg. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::didClose): Null out m_inspectorPage after platformDetach(), |
| so the views can be cleaned up correctly. |
| |
| 2016-02-05 Alex Christensen <achristensen@webkit.org> |
| |
| Move NetworkDataTask to its own header and source files |
| https://bugs.webkit.org/show_bug.cgi?id=153922 |
| |
| Reviewed by Tim Horton. |
| |
| Also renamed NetworkSessionTaskClient to NetworkDataTaskClient. |
| |
| * NetworkProcess/NetworkDataTask.h: Added. |
| (WebKit::NetworkDataTaskClient::~NetworkDataTaskClient): |
| (WebKit::NetworkDataTask::create): |
| (WebKit::NetworkDataTask::client): |
| (WebKit::NetworkDataTask::pendingDownloadID): |
| (WebKit::NetworkDataTask::pendingDownload): |
| (WebKit::NetworkDataTask::setPendingDownloadID): |
| (WebKit::NetworkDataTask::setPendingDownload): |
| * NetworkProcess/NetworkLoad.h: |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient): Deleted. |
| (WebKit::NetworkDataTask::create): Deleted. |
| (WebKit::NetworkDataTask::client): Deleted. |
| (WebKit::NetworkDataTask::pendingDownloadID): Deleted. |
| (WebKit::NetworkDataTask::pendingDownload): Deleted. |
| (WebKit::NetworkDataTask::setPendingDownloadID): Deleted. |
| (WebKit::NetworkDataTask::setPendingDownload): Deleted. |
| * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: Added. |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| (WebKit::NetworkDataTask::~NetworkDataTask): |
| (WebKit::NetworkDataTask::scheduleFailure): |
| (WebKit::NetworkDataTask::failureTimerFired): |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| (WebKit::NetworkDataTask::cancel): |
| (WebKit::NetworkDataTask::resume): |
| (WebKit::NetworkDataTask::suspend): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::takeDownloadID): |
| (WebKit::NetworkDataTask::NetworkDataTask): Deleted. |
| (WebKit::NetworkDataTask::~NetworkDataTask): Deleted. |
| (WebKit::NetworkDataTask::scheduleFailure): Deleted. |
| (WebKit::NetworkDataTask::failureTimerFired): Deleted. |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): Deleted. |
| (WebKit::NetworkDataTask::cancel): Deleted. |
| (WebKit::NetworkDataTask::resume): Deleted. |
| (WebKit::NetworkDataTask::suspend): Deleted. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-02-05 Alex Christensen <achristensen@webkit.org> |
| |
| Clean up Blob code |
| https://bugs.webkit.org/show_bug.cgi?id=153910 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp: |
| (WebKit::NetworkBlobRegistry::NetworkBlobRegistry): |
| (WebKit::NetworkBlobRegistry::registerFileBlobURL): |
| * NetworkProcess/FileAPI/NetworkBlobRegistry.h: |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::registerFileBlobURL): |
| (WebKit::NetworkConnectionToWebProcess::registerBlobURL): |
| * WebProcess/FileAPI/BlobRegistryProxy.cpp: |
| (WebKit::BlobRegistryProxy::registerFileBlobURL): |
| * WebProcess/FileAPI/BlobRegistryProxy.h: |
| |
| 2016-02-05 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Get rid of unused SPI declarations |
| https://bugs.webkit.org/show_bug.cgi?id=153915 |
| |
| Reviewed by Tim Horton. |
| |
| * Platform/spi/Cocoa/NSInvocationSPI.h: Removed NSInvocation SPI method declaration. |
| |
| * Platform/spi/ios/SafariServicesSPI.h: Removed. |
| |
| * UIProcess/API/Cocoa/WKSecurityOrigin.mm: |
| (-[WKSecurityOrigin methodSignatureForSelector:]): Deleted. |
| (-[WKSecurityOrigin forwardInvocation:]): Deleted. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: Removed unused #import. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Removed reference to deleted header. |
| |
| 2016-02-04 Daniel Bates <dabates@apple.com> |
| |
| WebKit for iOS Simulator fails to build with public iOS SDK |
| https://bugs.webkit.org/show_bug.cgi?id=153881 |
| |
| Reviewed by Alex Christensen. |
| |
| Add version guards around SPI that is now API as of iOS SDK 9.2. Until we upgrade the iOS EWS |
| and iOS buildbots to use the 9.2 SDK we need to keep these SPI declarations to avoid breaking |
| the build. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| |
| 2016-02-04 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Give nested inspectors their own process pool |
| https://bugs.webkit.org/show_bug.cgi?id=153880 |
| <rdar://problem/24508310> |
| |
| Reviewed by Timothy Hatcher. |
| |
| When inspecting the inspector both inspectors were using the same |
| Inspector process and sharing the same VM. This meant that profiling |
| information was confusing (memory and JavaScript sampling) because |
| it was showing data about both inspectors sharing the same process. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::inspectorProcessPool): |
| (WebKit::WebInspectorProxy::isInspectorProcessPool): |
| Have two process pools. The main inspector process pool (1st level inspectors) |
| and a nested inspector process pool (inspecting the inspector, only expected |
| by WebKit developers). |
| |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/efl/WebInspectorProxyEfl.cpp: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| * UIProcess/gtk/WebInspectorProxyGtk.cpp: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| Pass the inspectionLevel to determine the appropriate pool to use. |
| |
| 2016-02-04 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Fix the !ENABLE(NETSCAPE_PLUGIN_API) build after r196053 |
| https://bugs.webkit.org/show_bug.cgi?id=153878 |
| |
| Unreviewed buildfix. |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.h: |
| |
| 2016-02-04 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, rolling out r196067. |
| |
| Re-enable speculative revalidation now that we have measured |
| the impact on the perf bots |
| |
| Reverted changeset: |
| |
| "Unreviewed, rolling out r195555." |
| https://bugs.webkit.org/show_bug.cgi?id=153443 |
| http://trac.webkit.org/changeset/196067 |
| |
| 2016-02-03 Alex Christensen <achristensen@webkit.org> |
| |
| Report wasBlocked and cannotShowURL errors when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=153846 |
| |
| Reviewed by Antti Koivisto. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| (WebKit::NetworkLoad::didSendData): |
| (WebKit::NetworkLoad::wasBlocked): |
| (WebKit::NetworkLoad::cannotShowURL): |
| (WebKit::NetworkLoad::didReceiveResponseAsync): |
| * NetworkProcess/NetworkLoad.h: |
| NetworkDataTask is now RefCounted so we can protect it when reporting errors which delete the NetworkLoad. |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient): |
| (WebKit::NetworkDataTask::create): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::takeDownloadID): |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| Check the validity of the requested url and check if the port is allowed like we do in the ResourceHandle constructor. |
| (WebKit::NetworkDataTask::~NetworkDataTask): |
| Don't remove the task from the NetworkSession's map if we didn't make it because there was an error. |
| (WebKit::NetworkDataTask::scheduleFailure): |
| (WebKit::NetworkDataTask::failureTimerFired): |
| Implemented like ResourceHandle's. |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| (WebKit::NetworkDataTask::resume): |
| (WebKit::NetworkDataTask::suspend): |
| Handle the failure timer like we do in ResourceHandle::setDefersLoading. |
| |
| 2016-02-02 Alex Christensen <achristensen@webkit.org> |
| |
| Use proposed credentials in authentication challenges with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=153811 |
| |
| Reviewed by Darin Adler. |
| |
| This fixes http/tests/xmlhttprequest/basic-auth-default.html |
| |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| Use the proposed credential if there is one. This matches behavior in |
| ResourceHandle::tryHandlePasswordBasedAuthentication. |
| |
| 2016-02-03 Jessie Berlin <jberlin@webkit.org> |
| |
| Build fix. |
| |
| [NSEvent context] has always returned nil. Replace uses with nullptr. |
| |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent): |
| * UIProcess/mac/WebPopupMenuProxyMac.mm: |
| (WebKit::WebPopupMenuProxyMac::showPopupMenu): |
| |
| 2016-02-03 Dan Bernstein <mitz@apple.com> |
| |
| [iOS] Engineering builds use manual sandboxing, but don’t need to |
| https://bugs.webkit.org/show_bug.cgi?id=153834 |
| |
| Reviewed by Anders Carlsson. |
| |
| Now that engineering builds use the non-re-execing variant of XPC services, they can be |
| statically sandboxed and no longer need to be manually sandboxed. |
| |
| * Configurations/DebugRelease.xcconfig: Don’t set WK_MANUAL_SANDBOXING_ENABLED to YES. |
| * WebKit2.xcodeproj/project.pbxproj: Let Xcode make changes to the built product references. |
| |
| 2016-02-03 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, rolling out r195555. |
| |
| Temporarily disable speculative revalidation to measure the |
| impact on the bots |
| |
| Reverted changeset: |
| |
| "[WK2][NetworkCache] Enable speculative revalidation" |
| https://bugs.webkit.org/show_bug.cgi?id=153443 |
| http://trac.webkit.org/changeset/195555 |
| |
| 2016-02-03 Daniel Bates <dabates@apple.com> |
| |
| REGRESSION (r194660): Legacy WebProcess crashes in ChildProcess::initializeSandbox() |
| https://bugs.webkit.org/show_bug.cgi?id=153734 |
| <rdar://problem/24433179> |
| |
| Reviewed by Dan Bernstein. |
| |
| Fixes an issue where clients that used the legacy WebProcess bootstrapping process would crash. |
| |
| Additionally, only consider the extra initialization parameter user-directory-suffix for |
| unsigned apps (e.g. WebKitTestRunner). |
| |
| * Shared/mac/ChildProcessMac.mm: |
| (WebKit::ChildProcess::initializeSandbox): |
| |
| 2016-02-03 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Unreviewed speculative buildfix after r195979. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-03 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Reduce IPC traffic due to view state changes |
| https://bugs.webkit.org/show_bug.cgi?id=153745 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| Very often view state changes happen one after another in a very |
| short period of time, even in the same run loop iteration. For |
| example, when you switch to the web view window, the view is |
| focused and the active window flag changes as well. In that case |
| we are sending two messages to the web process and the page |
| updates its status according to the new flags in two steps. So, we |
| could group all state changes happening in the same run loop |
| iteration and notify about them all in the next iteration. This |
| also prevents unnecessary changes of state when we quickly go back |
| to a previous state, for example in focus follows mouse |
| configurations if you move the mouse outside the window and then |
| inside the window again quickly. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (_WebKitWebViewBasePrivate::_WebKitWebViewBasePrivate): Use |
| VirewState::Flags to keep the web view state instead of |
| boolean, and also to keep the flags that need to be updated. Use a |
| timer to update web view state flags. |
| (_WebKitWebViewBasePrivate::updateViewStateTimerFired): Call |
| WebPageProxy::viewStateDidChange() and reset the flags that need |
| to be updated. |
| (webkitWebViewBaseScheduleUpdateViewState): Update the flags that |
| need to be updated and schedule the timer if it's not active. |
| (toplevelWindowFocusInEvent): Use the flags and schedule an update. |
| (toplevelWindowFocusOutEvent): Ditto. |
| (toplevelWindowStateEvent): Also mark the view as hidden when minimized. |
| (webkitWebViewBaseSetToplevelOnScreenWindow): Connect to |
| window-state-event instead of deprecated visibility-notify-event. |
| (webkitWebViewBaseMap): Use the flags and schedule an update. |
| (webkitWebViewBaseUnmap): Ditto. |
| (webkitWebViewBaseSetFocus): Ditto. |
| (webkitWebViewBaseIsInWindowActive): Use the flags. |
| (webkitWebViewBaseIsFocused): Ditto |
| (webkitWebViewBaseIsVisible): Ditto. |
| (webkitWebViewBaseIsInWindow): Removed this since it was unused. |
| * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: |
| |
| 2016-02-03 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix incorrect ASSERT introduced in r196053. |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::NetscapePluginX11::paint): Ensure the plugin is not |
| windowed if paint() is called. |
| |
| 2016-02-02 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [UNIX] Add support for windowless NPAPI plugins with no UI in non X11 platforms |
| https://bugs.webkit.org/show_bug.cgi?id=151992 |
| |
| Reviewed by Darin Adler. |
| |
| We are currently disabling all plugins when running under wayland, |
| for example. There are some plugins, like the one used by |
| extensions.gnome.org, that don't do any rendering, so there's not |
| reason not to support those plugins under wayland or any other |
| unix non-x11 platform. |
| X11 specific code has been moved to a new class NetscapePluginX11, |
| only used under X11. The common code is in NetscapePluginUnix.cpp |
| that will use the X11 implementatin only when needed and |
| available. For windowed plugins we will fail the initialization |
| under non-X11 plaforms, while for windowless plugins we will just |
| return early from paint method. |
| |
| * PlatformEfl.cmake: Add new files to compilation. |
| * PlatformGTK.cmake: Ditto. |
| * UIProcess/API/gtk/WebKitSettings.cpp: |
| (webkit_settings_set_enable_plugins): Do not disable plugins in wayland. |
| * UIProcess/gtk/WebPreferencesGtk.cpp: |
| (WebKit::WebPreferences::platformInitializeStore): Ditto. |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): Use PlatformDisplay instead of |
| NetscapePlugin::x11HostDisplay() and don't claim to support X11 |
| specific features under non-x11 platforms. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::NetscapePlugin): Remove X11 and GTK |
| specific memebers that are now moved to a dedicated class NetscapePluginX11. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| (WebKit::NetscapePlugin::frameRectInWindowCoordinates): Make this public. |
| (WebKit::NetscapePlugin::clipRect): Add getter. |
| (WebKit::NetscapePlugin::size): Ditto. |
| (WebKit::NetscapePlugin::isWindowed): Ditto. |
| (WebKit::NetscapePlugin::isVisible): Ditto. |
| * WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.cpp: Added. |
| (WebKit::NetscapePlugin::platformPreInitialize): |
| (WebKit::NetscapePlugin::platformPostInitialize): |
| (WebKit::NetscapePlugin::platformDestroy): |
| (WebKit::NetscapePlugin::platformInvalidate): |
| (WebKit::NetscapePlugin::platformGeometryDidChange): |
| (WebKit::NetscapePlugin::platformVisibilityDidChange): |
| (WebKit::NetscapePlugin::platformPaint): |
| (WebKit::NetscapePlugin::platformHandleMouseEvent): |
| (WebKit::NetscapePlugin::platformHandleWheelEvent): |
| (WebKit::NetscapePlugin::platformSetFocus): |
| (WebKit::NetscapePlugin::wantsPluginRelativeNPWindowCoordinates): |
| (WebKit::NetscapePlugin::platformHandleMouseEnterEvent): |
| (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent): |
| (WebKit::NetscapePlugin::platformHandleKeyboardEvent): |
| * WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.h: Added. |
| (WebKit::NetscapePluginUnix::~NetscapePluginUnix): |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::getPluginDisplay): |
| (WebKit::displayDepth): |
| (WebKit::x11HostDisplay): |
| (WebKit::NetscapePluginX11::create): |
| (WebKit::NetscapePluginX11::NetscapePluginX11): |
| (WebKit::NetscapePluginX11::~NetscapePluginX11): |
| (WebKit::NetscapePluginX11::windowType): |
| (WebKit::NetscapePluginX11::window): |
| (WebKit::NetscapePluginX11::geometryDidChange): |
| (WebKit::NetscapePluginX11::visibilityDidChange): |
| (WebKit::NetscapePluginX11::paint): |
| (WebKit::initializeXEvent): |
| (WebKit::NetscapePluginX11::handleMouseEvent): |
| (WebKit::NetscapePluginX11::handleWheelEvent): |
| (WebKit::NetscapePluginX11::setFocus): |
| (WebKit::NetscapePluginX11::handleMouseEnterEvent): |
| (WebKit::NetscapePluginX11::handleMouseLeaveEvent): |
| (WebKit::NetscapePluginX11::handleKeyboardEvent): |
| (WebKit::setCommonMouseEventFields): Deleted. |
| (WebKit::setXKeyEventFields): Deleted. |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.h: Added. |
| |
| 2016-02-02 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| Remove ENABLE(GLOBAL_FASTMALLOC_NEW) guard in WebMemorySamplerLinux.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=153812 |
| |
| Reviewed by Darin Adler. |
| |
| r164261 already removed ENABLE_GLOBAL_FASTMALLOC_NEW guard though, WebMemorySamplerLinux |
| is still using it. That's why EFL and GTK memory sampler don't show fast malloc memory use. |
| |
| * Shared/linux/WebMemorySamplerLinux.cpp: |
| (WebKit::WebMemorySampler::sampleWebKit): Deleted. |
| |
| 2016-02-02 Enrica Casucci <enrica@apple.com> |
| |
| Provide handleKeyWebEvent with completion handler. |
| https://bugs.webkit.org/show_bug.cgi?id=153806 |
| rdar://problem/24399218 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView handleKeyWebEvent:withCompletionHandler:]): |
| (-[WKContentView _didHandleKeyEvent:eventWasHandled:]): |
| |
| 2016-02-02 Alex Christensen <achristensen@webkit.org> |
| |
| Fix authentication with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=153779 |
| |
| Reviewed by Brady Eidson. |
| |
| This fixes many tests, including http/tests/xmlhttprequest/cross-origin-authorization.html. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| NetworkingContexts are not used with NetworkSession. NetworkSession is used instead. |
| Pass allowStoredCredentials to the NetworkLoad so it knows whether to use a session with credential storage or not. |
| (WebKit::NetworkLoad::didReceiveChallenge): |
| Always call continueCanAuthenticateAgainstProtectionSpace because we might need credentials for synchronous requests. |
| (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): |
| Reject the protection space if we cannot authenticate against this protection space. |
| If the protection space is not password-based (such as ServerTrustEvaluationRequested) and we can authenticate against this protection space, |
| then perform default handling instead of asking the UI process for a password, which wouldn't mean anything. |
| * NetworkProcess/NetworkLoad.h: |
| * NetworkProcess/NetworkSession.h: |
| Use a NSURLSession with configuration.URLCredentialStorage = nil but with the same cookie storage for requests without credentials. |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::NetworkSession): |
| (WebKit::NetworkSession::~NetworkSession): |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| (WebKit::NetworkSession::takeDownloadID): |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| * WebProcess/Network/WebResourceLoader.cpp: |
| (WebKit::WebResourceLoader::canAuthenticateAgainstProtectionSpace): |
| Always send a reply message so we can always do the callbacks of NSURLSession delegates. |
| |
| 2016-02-01 Dave Hyatt <hyatt@apple.com> |
| |
| Add a line grid pagination SPI to WebKit. |
| https://bugs.webkit.org/show_bug.cgi?id=153757 |
| <rdar://problem/23041598> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetPaginationLineGridEnabled): |
| (WKPageGetPaginationLineGridEnabled): |
| * UIProcess/API/C/WKPagePrivate.h: |
| * UIProcess/API/Cocoa/WKBrowsingContextController.mm: |
| (-[WKBrowsingContextController setPaginationLineGridEnabled:]): |
| (-[WKBrowsingContextController paginationLineGridEnabled]): |
| * UIProcess/API/Cocoa/WKBrowsingContextControllerPrivate.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _paginationLineGridEnabled]): |
| (-[WKWebView _setPaginationLineGridEnabled:]): |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::setPaginationLineGridEnabled): |
| (WebKit::WebPageProxy::creationParameters): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::paginationLineGridEnabled): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setPaginationLineGridEnabled): |
| WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2016-02-02 Adrien Plazas <aplazas@igalia.com> |
| |
| [GTK] Several tests fail due to assert not reached in DrawingArea::dispatchAfterEnsuringDrawing() |
| https://bugs.webkit.org/show_bug.cgi?id=153785 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::dispatchAfterEnsuringDrawing): |
| * UIProcess/DrawingAreaProxyImpl.h: |
| |
| 2016-02-01 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: High Level Memory Overview Instrument |
| https://bugs.webkit.org/show_bug.cgi?id=153516 |
| <rdar://problem/24356378> |
| |
| Reviewed by Brian Burg. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-02-01 Alex Christensen <achristensen@webkit.org> |
| |
| Fix CMake build. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-01 Dan Bernstein <mitz@apple.com> |
| |
| More iOS build fix. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| |
| 2016-02-01 Dan Bernstein <mitz@apple.com> |
| |
| iOS build fix. |
| |
| * Platform/IPC/mac/ConnectionMac.mm: |
| |
| 2016-02-01 Dan Bernstein <mitz@apple.com> |
| |
| Copy sandbox profiles during installhdrs. |
| |
| Reviewed by Anders Carlsson. |
| |
| * Configurations/SandboxProfiles.xcconfig: |
| |
| 2016-02-01 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Remove some more __has_include guards |
| https://bugs.webkit.org/show_bug.cgi?id=153774 |
| |
| Reviewed by Tim Horton. |
| |
| Guard private header includes with #if USE(APPLE_INTERNAL_SDK) rather than with __has_include. |
| |
| * Platform/IPC/mac/ConnectionMac.mm: |
| * Platform/IPC/mac/ImportanceAssertion.h: |
| * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: |
| * Shared/cf/ArgumentCodersCF.cpp: |
| * Shared/mac/ChildProcessMac.mm: |
| * Shared/mac/SecItemShim.cpp: |
| |
| 2016-02-01 Dan Bernstein <mitz@apple.com> |
| |
| [Xcode] Let Xcode know that the WebKit XPC service products are XPC services |
| https://bugs.webkit.org/show_bug.cgi?id=153773 |
| |
| Reviewed by Tim Horton. |
| |
| * Configurations/BaseXPCService.xcconfig: Removed now-redundant definitions of |
| MACH_O_TYPE and WRAPPER_EXTENSION. |
| * WebKit2.xcodeproj/project.pbxproj: Updated product types. |
| |
| 2016-02-01 Tim Horton <timothy_horton@apple.com> |
| |
| Crash using WKPDFView, in -[UIPDFPageView showContent] |
| https://bugs.webkit.org/show_bug.cgi?id=153770 |
| <rdar://problem/20157864> |
| |
| Reviewed by Anders Carlsson. |
| |
| When scrolling, we throw away UIPDFPageViews, but forget to unhook their delegates. |
| In some cases (also because their delegate is a raw pointer, not weak), they can call |
| back into a deleted WKPDFView, causing a crash. |
| |
| * UIProcess/ios/WKPDFView.mm: |
| (detachViewForPage): |
| Add a helper to detach a page view, and unhook its delegates. |
| |
| (-[WKPDFView _clearPages]): |
| (-[WKPDFView _revalidateViews]): |
| Make use of the new helper. |
| |
| 2016-02-01 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/20150072> [iOS] Remove some file upload code only needed before iOS 9 |
| https://bugs.webkit.org/show_bug.cgi?id=153754 |
| |
| Reviewed by Darin Adler. |
| |
| * Platform/spi/ios/UIKitSPI.h: Removed conditional forward declaration of SPI. |
| |
| * UIProcess/ios/forms/WKFileUploadPanel.mm: |
| (photoLibraryIcon): Removed check for HAVE_WEBKIT_DOC_PICKER_ICONS, which is always true in |
| iOS 9 and later. |
| (cameraIcon): Ditto. |
| (-[WKFileUploadPanel presentWithParameters:resultListener:]): Removed branch for when |
| UIDocumentMenuViewController doesn’t respond to |
| -_initIgnoringApplicationEntitlementForImportOfTypes:. |
| (-[WKFileUploadPanel _showMediaSourceSelectionSheet]): Deleted now-unused method. |
| |
| 2016-02-01 Anders Carlsson <andersca@apple.com> |
| |
| Stop linking to PassKit |
| https://bugs.webkit.org/show_bug.cgi?id=153746 |
| |
| Reviewed by Tim Horton. |
| |
| * Configurations/WebKit.xcconfig: |
| |
| 2016-02-01 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Get rid of WK_ macros for initializers |
| https://bugs.webkit.org/show_bug.cgi?id=153744 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/API/Cocoa/WKFoundation.h: Removed definitions of WK_DESIGNATED_INITIALIZER and |
| WK_UNAVAILABLE. |
| |
| * mac/postprocess-framework-headers.sh: Removed rules for rewriting the above macros. Also |
| removed Foundation import that became unnecessary, and definitions that were only needed |
| before iOS 8. |
| |
| Replaced instances of the above macros with their expansions. |
| |
| * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: |
| * UIProcess/API/Cocoa/WKSecurityOrigin.h: |
| * UIProcess/API/Cocoa/WKWebView.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.h: |
| |
| 2016-02-01 Csaba Osztrogonác <ossy@webkit.org> |
| |
| One more unreviewed speculative buildfix after r195755. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-01 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Unreviewed speculative buildfix after r195755. |
| |
| * PlatformMac.cmake: |
| |
| 2016-02-01 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Unreviewed speculative buildfix after r195795. |
| |
| * PlatformMac.cmake: Remove Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm. |
| |
| 2016-01-31 Darin Adler <darin@apple.com> |
| |
| Get rid of most calls to String::upper; mostly replace them with convertToASCIIUppercase |
| https://bugs.webkit.org/show_bug.cgi?id=153715 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp: |
| Use convertToASCIIUppercase on language names. |
| |
| 2016-01-31 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Remove __has_include guards around use of WebKitAdditions |
| https://bugs.webkit.org/show_bug.cgi?id=153728 |
| |
| Reviewed by Andy Estes. |
| |
| Guard WebKitAdditions includes with #if USE(APPLE_INTERNAL_SDK) rather than with __has_include. |
| |
| * Shared/Cocoa/WebKitAdditions.mm: |
| * Shared/WebCoreArgumentCoders.h: |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| (WebKit::WebPageProxy::resetState): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::m_shouldDispatchFakeMouseMoveEvents): |
| |
| 2016-01-31 Timothy Horton <timothy_horton@apple.com> |
| |
| Include the right WebKitAdditions files |
| <rdar://problem/24429804> |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::resetState): |
| |
| 2016-01-31 Darin Adler <darin@apple.com> |
| |
| Replace CaseFoldingHash with ASCIICaseInsensitiveHash |
| https://bugs.webkit.org/show_bug.cgi?id=153639 |
| |
| Reviewed by Filip Pizlo. |
| |
| * UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm: Use ASCIICaseInsensitiveHash |
| for MIME types. MIME types are all ASCII. |
| |
| * UIProcess/Plugins/PlugInAutoStartProvider.h: Use ASCIICaseInsensitiveHash for |
| origins. Origin strings should use ASCII case insensitive matching and should not |
| fold non-ASCII case. |
| |
| * WebProcess/WebPage/WebPage.h: Use ASCIICaseInsensitiveHash for MIME types. |
| MIME types are all ASCII. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::addCaseFoldedCharacters): Use ASCIICaseInsensitiveHash to hash plug-in |
| origin strings. (See rationale above.) |
| (WebKit::hashForPlugInOrigin): Updated comment. |
| |
| 2016-01-31 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| Use std::make_unique<> when creating an unique_ptr object. |
| https://bugs.webkit.org/show_bug.cgi?id=153705 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): Use std::make_unique<> instead of RunLoopObserver::create(). |
| |
| 2016-01-30 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Get rid of many WK_ macros for nullability |
| https://bugs.webkit.org/show_bug.cgi?id=153718 |
| |
| Sam Weinig reviewed an earlier version of this change, and Simon Fraser rubber-stamped this version. |
| |
| * Shared/API/Cocoa/WKFoundation.h: Removed definitions of WK_ASSUME_NONNULL_{BEGIN, END}, |
| WK_NULLABLE, WK_NULL_UNSPECIFIED, and WK_NULLABLE_PROPERTY. Removed the |
| !__has_feature(assume_nonnull) case. |
| |
| * mac/postprocess-framework-headers.sh: Removed rules for rewriting the above macros. Also |
| chanegd to rewrite WK_NULLABLE_SPECIFIER to the modern _Nullable instead of __nullable. |
| |
| Replaced instances of the above macros with their expansions. |
| |
| * UIProcess/API/Cocoa/WKBackForwardList.h: |
| * UIProcess/API/Cocoa/WKBackForwardListItem.h: |
| * UIProcess/API/Cocoa/WKError.h: |
| * UIProcess/API/Cocoa/WKFrameInfo.h: |
| * UIProcess/API/Cocoa/WKNavigationAction.h: |
| * UIProcess/API/Cocoa/WKNavigationDelegate.h: |
| * UIProcess/API/Cocoa/WKNavigationResponse.h: |
| * UIProcess/API/Cocoa/WKScriptMessage.h: |
| * UIProcess/API/Cocoa/WKScriptMessageHandler.h: |
| * UIProcess/API/Cocoa/WKSecurityOrigin.h: |
| * UIProcess/API/Cocoa/WKUIDelegate.h: |
| * UIProcess/API/Cocoa/WKUserContentController.h: |
| * UIProcess/API/Cocoa/WKUserScript.h: |
| * UIProcess/API/Cocoa/WKWebView.h: |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataRecord.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.h: |
| * UIProcess/API/Cocoa/WKWindowFeatures.h: |
| * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h: |
| * UIProcess/API/Cocoa/_WKElementInfo.h: |
| * UIProcess/API/Cocoa/_WKPreviewElementInfo.h: |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.h: |
| |
| 2016-01-30 Dan Bernstein <mitz@apple.com> |
| |
| Reverted r195914, because at least one of the build.webkit.org builders still uses a compiler that doesn’t understand _Nullable. |
| |
| * Shared/API/Cocoa/WKFoundation.h: |
| * UIProcess/API/Cocoa/WKBackForwardList.h: |
| * UIProcess/API/Cocoa/WKBackForwardListItem.h: |
| * UIProcess/API/Cocoa/WKError.h: |
| * UIProcess/API/Cocoa/WKFrameInfo.h: |
| * UIProcess/API/Cocoa/WKNavigationAction.h: |
| * UIProcess/API/Cocoa/WKNavigationDelegate.h: |
| * UIProcess/API/Cocoa/WKNavigationResponse.h: |
| * UIProcess/API/Cocoa/WKScriptMessage.h: |
| * UIProcess/API/Cocoa/WKScriptMessageHandler.h: |
| * UIProcess/API/Cocoa/WKSecurityOrigin.h: |
| * UIProcess/API/Cocoa/WKUIDelegate.h: |
| * UIProcess/API/Cocoa/WKUserContentController.h: |
| * UIProcess/API/Cocoa/WKUserScript.h: |
| * UIProcess/API/Cocoa/WKWebView.h: |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataRecord.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.h: |
| * UIProcess/API/Cocoa/WKWindowFeatures.h: |
| * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h: |
| * UIProcess/API/Cocoa/_WKElementInfo.h: |
| * UIProcess/API/Cocoa/_WKPreviewElementInfo.h: |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.h: |
| * mac/postprocess-framework-headers.sh: |
| |
| 2016-01-30 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r195911. |
| https://bugs.webkit.org/show_bug.cgi?id=153723 |
| |
| Caused frequent assertion failures on bots (Requested by ap on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "Replace CaseFoldingHash with ASCIICaseInsensitiveHash" |
| https://bugs.webkit.org/show_bug.cgi?id=153639 |
| http://trac.webkit.org/changeset/195911 |
| |
| 2016-01-30 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Get rid of WK_ macros for nullability |
| https://bugs.webkit.org/show_bug.cgi?id=153718 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/API/Cocoa/WKFoundation.h: Removed definitions of WK_ASSUME_NONNULL_{BEGIN, END}, |
| WK_NULLABLE, WK_NULL_UNSPECIFIED, WK_NULLABLE_SPECIFIER, and WK_NULLABLE_PROPERTY. |
| |
| * mac/postprocess-framework-headers.sh: Removed rules for rewriting those macros. |
| |
| Replaced instances of those macros with their expansions, but using the modern _Nullable |
| instead of __nullable: |
| |
| * UIProcess/API/Cocoa/WKBackForwardList.h: |
| * UIProcess/API/Cocoa/WKBackForwardListItem.h: |
| * UIProcess/API/Cocoa/WKError.h: |
| * UIProcess/API/Cocoa/WKFrameInfo.h: |
| * UIProcess/API/Cocoa/WKNavigationAction.h: |
| * UIProcess/API/Cocoa/WKNavigationDelegate.h: |
| * UIProcess/API/Cocoa/WKNavigationResponse.h: |
| * UIProcess/API/Cocoa/WKScriptMessage.h: |
| * UIProcess/API/Cocoa/WKScriptMessageHandler.h: |
| * UIProcess/API/Cocoa/WKSecurityOrigin.h: |
| * UIProcess/API/Cocoa/WKUIDelegate.h: |
| * UIProcess/API/Cocoa/WKUserContentController.h: |
| * UIProcess/API/Cocoa/WKUserScript.h: |
| * UIProcess/API/Cocoa/WKWebView.h: |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataRecord.h: |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.h: |
| * UIProcess/API/Cocoa/WKWindowFeatures.h: |
| * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h: |
| * UIProcess/API/Cocoa/_WKElementInfo.h: |
| * UIProcess/API/Cocoa/_WKPreviewElementInfo.h: |
| * UIProcess/API/Cocoa/_WKUserStyleSheet.h: |
| |
| 2016-01-30 Darin Adler <darin@apple.com> |
| |
| Replace CaseFoldingHash with ASCIICaseInsensitiveHash |
| https://bugs.webkit.org/show_bug.cgi?id=153639 |
| |
| Reviewed by Filip Pizlo. |
| |
| * UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm: Use ASCIICaseInsensitiveHash |
| for MIME types. MIME types are all ASCII. |
| |
| * UIProcess/Plugins/PlugInAutoStartProvider.h: Use ASCIICaseInsensitiveHash for |
| origins. Origin strings should use ASCII case insensitive matching and should not |
| fold non-ASCII case. |
| |
| * WebProcess/WebPage/WebPage.h: Use ASCIICaseInsensitiveHash for MIME types. |
| MIME types are all ASCII. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::addCaseFoldedCharacters): Use ASCIICaseInsensitiveHash to hash plug-in |
| origin strings. (See rationale above.) |
| (WebKit::hashForPlugInOrigin): Updated comment. |
| |
| 2016-01-30 Jeremy Huddleston Sequoia <jeremyhu@apple.com> |
| |
| [GTK] Use configured python executable when executing generate-inspector-gresource-manifest.py |
| https://bugs.webkit.org/show_bug.cgi?id=153712 |
| |
| Reviewed by Michael Catanzaro. |
| |
| * PlatformGTK.cmake: |
| |
| 2016-01-29 Ada Chan <adachan@apple.com> |
| |
| Enable VIDEO_PRESENTATION_MODE only in Debug and Release builds on Mac |
| https://bugs.webkit.org/show_bug.cgi?id=153665 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-01-29 Dan Bernstein <mitz@apple.com> |
| |
| Don’t use the “.Development” suffix for engineering builds targeting iOS devices, because the XPC cache is only aware of the unsuffixed service identifiers. |
| |
| Reviewed by Chris Dumez. |
| |
| * Configurations/DebugRelease.xcconfig: |
| |
| 2016-01-29 Enrica Casucci <enrica@apple.com> |
| |
| One more iOS build fix. |
| |
| Unreviewed. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| |
| 2016-01-29 Enrica Casucci <enrica@apple.com> |
| |
| iOS build fix after r195826. |
| |
| Unreviewed. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| |
| 2016-01-29 Enrica Casucci <enrica@apple.com> |
| |
| Disable text interaction with pencil. |
| https://bugs.webkit.org/show_bug.cgi?id=153655 |
| rdar://problem/24337778 |
| |
| Reviewed by Tim Horton. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _createAndConfigureDoubleTapGestureRecognizer]): |
| (-[WKContentView _singleTapCommited:]): |
| |
| 2016-01-29 Mario Sanchez Prada <mario@endlessm.com> |
| |
| [GTK] WebProcess crashes when quickly attempting many DnD operations |
| https://bugs.webkit.org/show_bug.cgi?id=138468 |
| |
| Reviewed by Michael Catanzaro. |
| |
| Guard all the new DnD-related code under GTK_CHECK_VERSION #if's to |
| make sure we don't bump the required version of GTK+ up to 3.16, and |
| it's buildable again with GTK+ >= 3.6. |
| |
| * UIProcess/gtk/DragAndDropHandler.cpp: |
| (WebKit::DragAndDropHandler::DragAndDropHandler): |
| (WebKit::DragAndDropHandler::startDrag): |
| (WebKit::DragAndDropHandler::fillDragData): |
| (WebKit::DragAndDropHandler::finishDrag): |
| * UIProcess/gtk/DragAndDropHandler.h: |
| |
| 2016-01-28 Antti Koivisto <antti@apple.com> |
| |
| Enable background tab suspension by default on OSX |
| https://bugs.webkit.org/show_bug.cgi?id=153629 |
| <rdar://problem/24402895> |
| |
| Reviewed by Andreas Kling. |
| |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| (WebKit::registerUserDefaultsIfNeeded): |
| |
| 2016-01-28 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Use the non-Development variants of XPC services for development |
| https://bugs.webkit.org/show_bug.cgi?id=152545 |
| |
| Reviewed by Darin Adler. |
| |
| The purpose of the Development variants of the WebKit XPC services is to allow the service |
| to link against the development WebKit dylibs rather than the system ones. Instead, we |
| accomplish this here by including dyld environment load commands in the normal services |
| when the WebKit dylibs are expected to be relocated. A new build setting, |
| WK_RELOCATABLE_FRAMEWORKS, controls this. |
| |
| To make it easy to identify engineering builds of the services at runtime, they can be |
| given a distinctive suffix. A new build setting, WK_XPC_SERVICE_SUFFIX, controls this. |
| |
| * Configurations/DebugRelease.xcconfig: Set WK_RELOCATABLE_FRAMEWORKS to YES and |
| WK_XPC_SERVICE_SUFFIX to ".Development". |
| |
| * Configurations/BaseTarget.xcconfig: Make the quoted value of the WK_XPC_SERVICE_SUFFIX |
| build setting available as a preprocessor macro. |
| |
| * Configurations/BaseXPCService.xcconfig: |
| - Simplify the definition of INSTALL_PATH now that there are no Development variants. |
| - Define WK_RELOCATABLE_FRAMEWORKS_LDFLAGS when building relocatable frameworks to include |
| -dyld_env options setting DYLD_FRAMEWORK_PATH to point to the directory containing |
| WebKit.framework and DYLD_LIBRARY_PATH to the framework’s Frameworks subdirectory. When |
| not building relocatable frameworks, define WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to include |
| a -headerpad option allowing dyld environment load commands to be added after the fact. |
| - Add WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to OTHER_LDFLAGS. |
| - Define WK_XPC_SERVICE_INSERT_LIBRARIES_DIR when building relocatable frameworks to be |
| the path to the Frameworks subdirectory of the WebKit framework containing the service. |
| When not building relocatable frameworks, define it to the absolute path of the |
| Frameworks subdirectory of the installed WebKit framework. |
| |
| * Configurations/DatabaseService.xcconfig: Append WK_XPC_SERVICE_SUFFIX to PRODUCT_NAME, |
| and remove no-longer-used definition of WK_XPC_SERVICE_VARIANT. |
| * Configurations/NetworkService.xcconfig: Append WK_XPC_SERVICE_SUFFIX to PRODUCT_NAME, add |
| WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to OTHER_LDFLAGS, and remove no-longer-used definition |
| of WK_XPC_SERVICE_VARIANT. |
| * Configurations/PluginService.32.xcconfig: Ditto. |
| * Configurations/PluginService.64.xcconfig: Ditto. |
| * Configurations/WebContentService.xcconfig: Ditto. |
| |
| * Configurations/DatabaseService.Development.xcconfig: Removed. |
| * Configurations/NetworkService.Development.xcconfig: Removed. |
| * Configurations/PluginService.32.Development.xcconfig: Removed. |
| * Configurations/PluginService.64.Development.xcconfig: Removed. |
| * Configurations/WebContentService.Development.xcconfig: Removed. |
| |
| * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development: Removed. |
| * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist: Removed. |
| * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist: Set |
| CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. |
| |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development: Removed. |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist: Removed. |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist: Removed. |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist: Set |
| CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. Use |
| WK_XPC_SERVICE_INSERT_LIBRARIES_DIR in the value of DYLD_INSERT_LIBRARIES. |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist: Set |
| CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist: Ditto. |
| |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist: Ditto. |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development: Removed. |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist: Removed. |
| |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development: Removed. |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist: Removed. |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: Removed. |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist: Set |
| CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. Use |
| WK_XPC_SERVICE_INSERT_LIBRARIES_DIR in the value of DYLD_INSERT_LIBRARIES. |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist: Set |
| CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist: Ditto. |
| |
| * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm: Removed. |
| |
| * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm: |
| (WebKit::XPCServiceEventHandler): If stdout and stderr file descriptors are included in the |
| bootstrap message, hook them up to the serviceâs stdout and stderr, like the Development |
| services do. |
| (main): Moved code from XPCServiceMain.Development.mm to handle the optional |
| OverrideLanguages array. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::addDYLDEnvironmentAdditions): Addressed a FIXME. |
| (WebKit::serviceName): Removed forDevelopment argument and .Development service names. |
| Added WK_XPC_SERVICE_SUFFIX to the names. |
| (WebKit::connectToService): Updated for removal of forDevelopment argument. Removed |
| "framework-executable-path" key from the bootstrap message, because it was only used in |
| the Development variants. |
| (WebKit::connectToReExecService): Deleted. |
| (WebKit::createService): Removed call to connectToReExecService. Instead pass forDevelopment |
| to connectToService. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Removed references to removed files. Removed targets |
| for Development services. Removed Development services from script build phase that copies |
| services into the framework in engineering builds, and made it respect |
| WK_XPC_SERVICE_SUFFIX. |
| |
| 2016-01-28 Enrica Casucci <enrica@apple.com> |
| |
| Should avoid navigation for some data detector urls. |
| https://bugs.webkit.org/show_bug.cgi?id=153600 |
| |
| Reviewed by Tim Horton. |
| |
| When a tap is commited, we normally generate a synthetic click if |
| the node responds to click events. |
| This patch adds the logic to prevent that from happening if the node |
| is a data detector link with certain characteristics (calendar event, telephone, etc.). |
| If this is the case, we compute the interaction information as position, send it |
| over to the UI process and notify that we did not handle the tap. |
| The page client is now also notified of this event and can show the data detector sheet if |
| appropriate. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::toolTipChanged): |
| (WebKit::PageClientImpl::didNotHandleTapAsClick): |
| (WebKit::PageClientImpl::decidePolicyForGeolocationPermissionRequest): |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView clearSelection]): |
| (-[WKContentView _didNotHandleTapAsClick:]): |
| (-[WKContentView _positionInformationDidChange:]): |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::didNotHandleTapAsClick): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::commitPotentialTap): |
| |
| 2016-01-28 Brent Fulgham <bfulgham@apple.com> |
| |
| [iOS] Update Web Process sandbox profile for audiodeviceclock access |
| https://bugs.webkit.org/show_bug.cgi?id=153571 |
| <rdar://problem/24134612> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb: |
| |
| 2016-01-26 Ada Chan <adachan@apple.com> |
| |
| Get WebVideoFullscreenManager and related classes to also compile for Mac platform |
| with video presentation mode support. |
| https://bugs.webkit.org/show_bug.cgi?id=153221 |
| |
| Reviewed by Eric Carlson. |
| |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in: |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: |
| Enabled also for Mac with video presentation mode support. |
| (-[WKLayerHostView makeBackingLayer]): |
| Make sure this view uses CALayerHost for its layer. |
| (WebKit::WebVideoFullscreenManagerProxy::invalidate): |
| (WebKit::WebVideoFullscreenManagerProxy::createModelAndInterface): |
| (WebKit::WebVideoFullscreenManagerProxy::ensureInterface): |
| (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): |
| Replace WebCore::WebVideoFullscreenInterfaceAVKit with PlatformWebVideoFullscreenInterface. |
| (WebKit::WebVideoFullscreenManagerProxy::setVideoLayerFrame): |
| +[UIWindow _synchronizeDrawingAcrossProcesses] is not available on Mac. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| (WebKit::WebPageProxy::viewDidLeaveWindow): |
| (WebKit::WebPageProxy::resetState): |
| * UIProcess/WebPageProxy.h: |
| The code that creates m_videoFullscreenManager is now enabled also on Mac with video |
| presentation mode support. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| Enable the API related to the video fullscreen layer also on Mac with video presentation |
| mode support. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| * WebProcess/WebPage/WebPage.h: |
| The code that creates m_videoFullscreenManager is now enabled also on Mac with video |
| presentation mode support. |
| |
| * WebProcess/cocoa/WebVideoFullscreenManager.h: |
| * WebProcess/cocoa/WebVideoFullscreenManager.messages.in: |
| * WebProcess/cocoa/WebVideoFullscreenManager.mm: |
| Enabled also for Mac with video presentation mode support. |
| (WebKit::WebVideoFullscreenManager::supportsVideoFullscreen): |
| Return false for now on Mac. |
| |
| 2016-01-28 Darin Adler <darin@apple.com> |
| |
| Remove equalIgnoringCase since all callers really wanted equalIgnoringASCIICase |
| https://bugs.webkit.org/show_bug.cgi?id=153411 |
| |
| Reviewed by Ryosuke Niwa. |
| |
| * Shared/API/c/WKString.cpp: |
| (WKStringIsEqualToUTF8CStringIgnoringCase): Use equalIgnoringASCIICase. |
| This is a change in behavior for callers who passed non-ASCII letters to |
| this function and expected case insensitive comparison. |
| |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::streamDidReceiveResponse): Use equalIgnoringASCIICase. |
| No change in behavior because this is just checking a fixed ASCII MIME type. |
| (WebKit::PDFPlugin::manualStreamDidReceiveResponse): Ditto. |
| * WebProcess/Plugins/PDF/PDFPlugin.mm: |
| (WebKit::PDFPlugin::streamDidReceiveResponse): Ditto. |
| (WebKit::PDFPlugin::manualStreamDidReceiveResponse): Ditto. |
| |
| 2016-01-27 Alex Christensen <achristensen@webkit.org> |
| |
| Fix CMake build after r195722. |
| |
| * PlatformMac.cmake: |
| Include new file. |
| |
| 2016-01-27 Dan Bernstein <mitz@apple.com> |
| |
| Fix other builds. |
| |
| * Configurations/WebKit.xcconfig: |
| |
| 2016-01-27 Anders Carlsson <andersca@apple.com> |
| |
| Fix build. |
| |
| * Configurations/WebKit.xcconfig: |
| |
| 2016-01-27 Krzysztof Czech <k.czech@samsung.com> |
| |
| [EFL] Remove unused accessibility related code |
| https://bugs.webkit.org/show_bug.cgi?id=153543 |
| |
| Reviewed by Darin Adler. |
| |
| Do not need to load external library to expose WebKit's |
| accessibility tree. There have been changes in EFL/Elementary |
| in terms of support of accessibility and we should follow those. |
| |
| * WebProcess/efl/WebProcessMainEfl.cpp: |
| (eailLibraryPath): Deleted. |
| (eail): Deleted. |
| |
| 2016-01-27 Enrica Casucci <enrica@apple.com> |
| |
| Cache results of data detection in the UI process when load completes. |
| https://bugs.webkit.org/show_bug.cgi?id=153560 |
| |
| Reviewed by Tim Horton. |
| |
| This patch changes when the results of data detections are sent to the |
| UIProcess. Before this change, they were only provided as part of |
| InteractionInformationAtPosition, which is populated when long press |
| gesture is triggered. |
| We need to have the results available if the client wants to allow navigation |
| to a data detector link, in order to allow them to retrieve the full url. |
| With this change, we now send the results as soon as they are computed |
| and keep them in the WebPageProxy object so that they can be fetched when |
| necessary from a WKWebView private interface. |
| |
| * Shared/Cocoa/DataDetectionResult.h: Added. |
| * Shared/Cocoa/DataDetectionResult.mm: Added. |
| (WebKit::DataDetectionResult::encode): |
| (WebKit::DataDetectionResult::decode): |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _snapshotLayerContentsForBackForwardListItem:]): |
| (-[WKWebView _dataDetectionResults]): |
| (-[WKWebView _didRelaunchProcess]): |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: |
| * UIProcess/Cocoa/WebPageProxyCocoa.mm: |
| (WebKit::WebPageProxy::setDataDetectionResult): |
| (WebKit::WebPageProxy::saveRecentSearches): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::websiteDataStore): |
| (WebKit::WebPageProxy::dataDetectionResults): |
| (WebKit::WebPageProxy::scrollingCoordinatorProxy): |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView ensurePositionInformationIsUpToDate:]): |
| (-[WKContentView _dataDetectionResults]): |
| (-[WKContentView gestureRecognizerShouldBegin:]): |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDidReceiveContentLength): |
| (WebKit::WebFrameLoaderClient::dispatchDidFinishDataDetection): |
| (WebKit::WebFrameLoaderClient::dispatchDidFinishLoading): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| (WebKit::WebPage::setDataDetectionResults): |
| (WebKit::WebPage::willCommitLayerTree): |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::shouldExtendIncrementalRenderingSuppression): |
| |
| 2016-01-27 Anders Carlsson <andersca@apple.com> |
| |
| Include the right WebKitAdditions files |
| https://bugs.webkit.org/show_bug.cgi?id=153572 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| |
| 2016-01-27 Daniel Bates <dabates@apple.com> |
| |
| Move ContentSecurityPolicy.{cpp, h} to its own directory |
| https://bugs.webkit.org/show_bug.cgi?id=153527 |
| <rdar://problem/24359892> |
| |
| Reviewed by Sam Weinig. |
| |
| Add ${WEBCORE_DIR}/page/csp to the list of WebKit2 include directories. |
| |
| * CMakeLists.txt: |
| |
| 2016-01-27 Anders Carlsson <andersca@apple.com> |
| |
| Add WebKitAdditions extension points to WebCore, WebKit and WebKitLegacy |
| https://bugs.webkit.org/show_bug.cgi?id=153550 |
| |
| Reviewed by Sam Weinig. |
| |
| * DerivedSources.make: |
| Add the ability for WebKitAdditions to add new message receivers. |
| |
| * Shared/Cocoa/WebKitAdditions.mm: Added. |
| Add addition files. |
| |
| * Shared/WebCoreArgumentCoders.h: |
| Add extension points. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| (WebKit::WebPageProxy::resetState): |
| Add extension points. |
| |
| * UIProcess/WebPageProxy.h: |
| Add extension points. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new files. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| Add extension points. |
| |
| 2016-01-27 Chris Dumez <cdumez@apple.com> |
| |
| window.atob() should ignore spaces in input |
| https://bugs.webkit.org/show_bug.cgi?id=153522 |
| <rdar://problem/24357822> |
| |
| Reviewed by Benjamin Poulain. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformSave): |
| |
| 2016-01-27 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Add API to access closed shadowRoot in InjectedBundle |
| https://bugs.webkit.org/show_bug.cgi?id=153533 |
| |
| Reviewed by Antti Koivisto. |
| |
| Added WKBundleScriptWorldMakeAllShadowRootsOpen to make all shadow roots open. |
| This is needed to keep supporting certain browser-level features such as autofill. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp: |
| (WKBundleScriptWorldMakeAllShadowRootsOpen): Added. |
| * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.h: |
| * WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp: |
| (WebKit::InjectedBundleScriptWorld::makeAllShadowRootsOpen): Added. |
| * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h: |
| |
| 2016-01-27 Zhuo Li <zachli@apple.com> |
| |
| Need ability to specify alternate image for AutoFill button in input fields. |
| https://bugs.webkit.org/show_bug.cgi?id=153116. |
| rdar://problem/23384854. |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp: |
| (toAutoFillButtonType): Convert the WebKit AutoFill button type enum to WebCore AutoFill button |
| type enum. |
| (WKBundleNodeHandleSetHTMLInputElementAutoFillButtonEnabledWithButtonType): Added to be able to specify |
| what the AutoFill button type is. None means the AutoFill button is not shown. |
| (WKBundleNodeHandleSetHTMLInputElementAutoFillButtonEnabled): Deprecate this method. |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: Declare an AutoFill button type enum. |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: |
| (WebKit::InjectedBundleNodeHandle::isHTMLInputElementAutoFillButtonEnabled): None means the AutoFill button is not enabled. |
| (WebKit::InjectedBundleNodeHandle::setHTMLInputElementAutoFillButtonEnabledWithButtonType): Use the new parameter to specify |
| what the AutoFill button type is. |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: Ditto. |
| |
| 2016-01-27 Dan Bernstein <mitz@apple.com> |
| |
| More trying to fix the build. |
| |
| * Configurations/WebKit.xcconfig: |
| |
| 2016-01-27 Alexey Proskuryakov <ap@apple.com> |
| |
| Remove ENABLE_CURRENTSRC |
| https://bugs.webkit.org/show_bug.cgi?id=153545 |
| |
| Reviewed by Simon Fraser. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-01-27 Sam Weinig <sam@webkit.org> |
| |
| Try to fix the build. |
| |
| * Configurations/WebKit.xcconfig: |
| |
| 2016-01-26 Sam Weinig <sam@webkit.org> |
| |
| Attempt to force a rebuild. |
| |
| * DerivedSources.make: |
| |
| 2016-01-26 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r194557): Keyboard shortcuts stop working after the WKWebView is unparented and reparented |
| https://bugs.webkit.org/show_bug.cgi?id=153492 |
| <rdar://problem/24138989> |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView canBecomeFirstResponder]): |
| (-[WKContentView becomeFirstResponder]): |
| (-[WKContentView resignFirstResponder]): |
| When WKWebView is unparented, WKContentView will attempt to resignFirstResponder upwards, |
| first asking WKWebView. After r194557, WKWebView will accept first responder and forward |
| it on to the WKContentView, which will happily accept it again, despite being the view |
| that's trying to resign. This will cause us to completely lose first responder, |
| where it was actually supposed to propagate up above WKWebView to the client. |
| |
| Keep track of when WKContentView is resigning first responder, and don't |
| let it become first responder while it is doing so, breaking the cycle. |
| |
| * UIProcess/ios/WKContentView.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView canBecomeFirstResponder]): |
| If the WKContentView is currently in the process of resigning first responder status, |
| we shouldn't accept it, because clients expect to receive it. |
| |
| 2016-01-26 I-Ting Liu <iting_liu@apple.com> |
| |
| Implement wildcard matching for plug-in policy host. |
| https://bugs.webkit.org/show_bug.cgi?id=153090 |
| |
| Reviewed by Darin Adler. |
| |
| WebPlatformStrategies decides the plug-in load policy for a host by looking |
| for a matched hostname in the list of plug-in policies sent by Safari. This |
| patch adds support for wildcard matching -- if there's a policy with hostname |
| "*.example.com," the policy for "foo.example.com" would be replaced with that |
| of "*.example.com" if there's no policy for this hostname. If there is more |
| than one wildcard hostname, the host with the longest wildcard hostname will |
| be used. |
| |
| This patch adds a helper function in StringUtilites that matches a string to |
| another string, which may contain wildcard ('*') characters. |
| |
| * Platform/mac/StringUtilities.h: |
| - Add WebKit::stringMatchesWildcardString. |
| - Remove #if ENABLE(TELEPHONE_NUMBER_DETECTION) && PLATFORM(MAC) flag so that |
| the compiler allows exposing StringUtilities.h. |
| - Add #if __OBJC__ to allow the file to be included in WebPltformStrategies.cpp |
| |
| * Platform/mac/StringUtilities.mm: |
| (WebKit::stringMatchesWildcardString): |
| Return true if the entire first given String matches the second. The second string |
| may contain wildcard characters. |
| (WebKit::wildcardRegexPatternString): |
| Return the regex expression from a wildcard string by replacing the wildcard |
| character ('*') with (".*") and escaping regular expression metacharacters. |
| (WebKit::formattedPhoneNumberString): |
| To expose StringUtilities.h for tests, we removed #if ENABLE(TELEPHONE_NUMBER_DETECTION) |
| && PLATFORM(MAC) flag in the header. Add a function that returns nil for |
| #if !(ENABLE(TELEPHONE_NUMBER_DETECTION) && PLATFORM(MAC)) to fix the removal |
| of the flag in the header file. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Change the file attribute of StringUtilities.h from Project to Private for |
| testing in TestWebKitAPI. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::longestMatchedWildcardHostForHost): |
| Return the wildcard hostname whose matched substring with the host is the longest. |
| (WebKit::WebPlatformStrategies::replaceHostWithMatchedWildcardHost): |
| Replace the look-up host with a matched wildcard host if there is a match and that |
| the matched wildcard host's plug-in identifier is the same as that of the host. |
| (WebKit::WebPlatformStrategies::pluginLoadClientPolicyForHost): |
| Try to replace the look-up host with the wildcard host if there's no policy for |
| the host. Restructure the function to reduce hashmap lookup. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| Declare the methods. |
| |
| 2016-01-26 Anders Carlsson <andersca@apple.com> |
| |
| Remove -d flag from make invocation. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-01-26 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Generalize ResourceUsageData gathering to be used outside of ResourceUsageOverlay |
| https://bugs.webkit.org/show_bug.cgi?id=153509 |
| <rdar://problem/24354291> |
| |
| Reviewed by Andreas Kling. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| Rename the ENABLE flag. |
| |
| 2016-01-26 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r195602. |
| https://bugs.webkit.org/show_bug.cgi?id=153526 |
| |
| broke more than it fixed (Requested by thorton on #webkit). |
| |
| Reverted changeset: |
| |
| "REGRESSION (r194557): Keyboard shortcuts stop working after |
| the WKWebView is unparented and reparented" |
| https://bugs.webkit.org/show_bug.cgi?id=153492 |
| http://trac.webkit.org/changeset/195602 |
| |
| 2016-01-26 Anders Carlsson <andersca@apple.com> |
| |
| WebKitAdditions should be able to modify derived source rules |
| https://bugs.webkit.org/show_bug.cgi?id=153514 |
| |
| Reviewed by Tim Horton. |
| |
| * Configurations/BaseTarget.xcconfig: |
| * Configurations/WebKit.xcconfig: |
| Set WEBKITADDITIONS_HEADER_SEARCH_PATHS. |
| |
| * DerivedSources.make: |
| Move the path computation earlier and include WebKitDerivedSourcesAdditions.make. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Pass our WebKitAdditions paths as include paths to make. |
| |
| 2016-01-26 Anders Carlsson <andersca@apple.com> |
| |
| Add a private WKUIDelegate method for getting a presenting view controller for a WKWebView on iOS |
| https://bugs.webkit.org/show_bug.cgi?id=153510 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/APIUIClient.h: |
| (API::UIClient::presentingViewController): |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| * UIProcess/Cocoa/UIDelegate.h: |
| * UIProcess/Cocoa/UIDelegate.mm: |
| (WebKit::UIDelegate::setDelegate): |
| (WebKit::UIDelegate::UIClient::presentingViewController): |
| |
| 2016-01-26 Dean Jackson <dino@apple.com> |
| |
| [iOS] Documents without an explicit width should not get fast tapping |
| https://bugs.webkit.org/show_bug.cgi?id=153465 |
| <rdar://problem/23962529> |
| |
| Reviewed by Simon Fraser (and Wenson Hseih). |
| |
| As the title says, documents that do not set a viewport should |
| not get the fast click behaviour. There were complaints that we broke |
| double-tap to scroll in ImageDocuments where the image was narrow and long. |
| |
| The fix is to just keep a flag that tells the UI process if the |
| width was explicit. However, it turns out that those ImageDocuments |
| are given an explicit device-width, which is fine for scaling but |
| really should behave as auto for fast tapping. So we also need |
| to tell the UIProcess if the viewport arguments came from an |
| ImageDocument. |
| |
| * Shared/mac/RemoteLayerTreeTransaction.h: Add two new flags into |
| the transaction. |
| (WebKit::RemoteLayerTreeTransaction::viewportMetaTagWidthWasExplicit): |
| (WebKit::RemoteLayerTreeTransaction::setViewportMetaTagWidthWasExplicit): |
| (WebKit::RemoteLayerTreeTransaction::viewportMetaTagCameFromImageDocument): |
| (WebKit::RemoteLayerTreeTransaction::setViewportMetaTagCameFromImageDocument): |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::encode): |
| (WebKit::RemoteLayerTreeTransaction::decode): |
| (WebKit::RemoteLayerTreeTransaction::description): |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _didCommitLayerTree:]): Notice whether or not the viewport |
| width was explicit. |
| (-[WKWebView _allowsDoubleTapGestures]): Return yes if the width |
| was not explicit, or if the viewport came from an ImageDocument. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::willCommitLayerTree): |
| |
| 2016-01-26 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r194557): Keyboard shortcuts stop working after the WKWebView is unparented and reparented |
| https://bugs.webkit.org/show_bug.cgi?id=153492 |
| <rdar://problem/24138989> |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView canBecomeFirstResponder]): |
| (-[WKContentView becomeFirstResponder]): |
| (-[WKContentView resignFirstResponder]): |
| When WKWebView is unparented, WKContentView will attempt to resignFirstResponder upwards, |
| first asking WKWebView. After r194557, WKWebView will accept first responder and forward |
| it on to the WKContentView, which will happily accept it again, despite being the view |
| that's trying to resign. This will cause us to completely lose first responder, |
| where it was actually supposed to propagate up above WKWebView to the client. |
| |
| Keep track of when WKContentView is resigning first responder, and don't |
| let it become first responder while it is doing so, breaking the cycle. |
| |
| 2016-01-25 Ada Chan <adachan@apple.com> |
| |
| Move WebVideoFullscreenManager and related classes from iOS specific folders to cocoa folders |
| https://bugs.webkit.org/show_bug.cgi?id=153473 |
| |
| Reviewed by Eric Carlson. |
| |
| * DerivedSources.make: |
| Add new paths. |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h: Renamed from Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.h. |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in: Renamed from Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in. |
| * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: Renamed from Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm. |
| (WebKit::WebVideoFullscreenManagerProxy::setSeekableRangesVector): |
| Fix a style error by moving the opening curly brace to the same line as the for statement. |
| * WebKit2.xcodeproj/project.pbxproj: |
| Update due to changes to the file locations. |
| * WebProcess/cocoa/WebVideoFullscreenManager.h: Renamed from Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.h. |
| * WebProcess/cocoa/WebVideoFullscreenManager.messages.in: Renamed from Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.messages.in. |
| * WebProcess/cocoa/WebVideoFullscreenManager.mm: Renamed from Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm. |
| (WebKit::WebVideoFullscreenInterfaceContext::setSeekableRanges): |
| Fix a style error by adding a missing space after a comma. |
| |
| 2016-01-26 Daniel Bates <dabates@apple.com> |
| |
| WebKitTestRunner: Credential cache is not cleared between tests |
| https://bugs.webkit.org/show_bug.cgi?id=153407 |
| <rdar://problem/24280834> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Expose SPI to call CredentialStorage::clearCredentials() on the default network storage |
| session to clear cached credentials. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::clearCachedCredentials): Added. |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: Added message ClearCachedCredentials(). |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextClearCachedCredentials): Added. |
| * UIProcess/API/C/WKContextPrivate.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::clearCachedCredentials): Notify all web processes and the |
| network process to clear cached credentials. |
| * UIProcess/WebProcessPool.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::clearCachedCredentials): Clear cached credentials in the default |
| network storage session. |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: Added message ClearCachedCredentials(). |
| |
| 2016-01-26 Mario Sanchez Prada <mario@endlessm.com> |
| |
| [GTK] WebProcess crashes when quickly attempting many DnD operations |
| https://bugs.webkit.org/show_bug.cgi?id=138468 |
| |
| Reviewed by Michael Catanzaro. |
| |
| Do not allow different DnD operations over the same element at the |
| same time, so that any new attempt to DnD an element happening before |
| a previous attempt has ended will take precedence, cancelling the older |
| operation before going ahead with the new one. |
| |
| This is consistent with how WebCore::EventHandler handles DnD operations, |
| preventing the web process from crashing in scenarios where the user might |
| try to perform many DnD operations over the same element very quickly. |
| |
| * UIProcess/gtk/DragAndDropHandler.cpp: |
| (WebKit::DragAndDropHandler::DragAndDropHandler): Initialized new member. |
| (WebKit::DragAndDropHandler::startDrag): Ensure a previous DnD operation |
| is cancelled before handling the new one that has just started. |
| (WebKit::DragAndDropHandler::fillDragData): Protect against calling this |
| function from webkitWebViewBaseDragDataGet for already cancelled operations. |
| (WebKit::DragAndDropHandler::finishDrag): Protect against calling this |
| function from webkitWebViewBaseDragEnd for already cancelled operations. |
| * UIProcess/gtk/DragAndDropHandler.h: |
| |
| 2016-01-25 Enrica Casucci <enrica@apple.com> |
| |
| Add support for DataDetectors in WK (iOS). |
| https://bugs.webkit.org/show_bug.cgi?id=152989 |
| rdar://problem/22855960 |
| |
| Reviewed by Tim Horton. |
| |
| Moving InteractionInformationAtPosition files to platform folder, |
| since this is only used on iOS and changing from .cpp to .mm. |
| The structure is extended to include data detection specific fields |
| and the relevant encode/decode functions have been updated to |
| handle the new fields. |
| The patch also adds a new WKUIDelegatePrivate method to allow |
| the client to provide additional context for data detection actions. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| * Shared/InteractionInformationAtPosition.cpp: Removed. |
| * Shared/InteractionInformationAtPosition.h: Removed. |
| * Shared/ios/InteractionInformationAtPosition.h: Copied from Shared/InteractionInformationAtPosition.h. |
| * Shared/ios/InteractionInformationAtPosition.mm: Copied from Shared/InteractionInformationAtPosition.cpp. |
| (WebKit::InteractionInformationAtPosition::encode): |
| (WebKit::InteractionInformationAtPosition::decode): |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/ios/WKActionSheetAssistant.h: |
| * UIProcess/ios/WKActionSheetAssistant.mm: |
| (-[WKActionSheetAssistant showDataDetectorsSheet]): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView actionSheetAssistantDidStopInteraction:]): |
| (-[WKContentView dataDetectionContextForActionSheetAssistant:]): |
| (-[WKContentView selectedTextForActionSheetAssistant:]): |
| (-[WKContentView _dataForPreviewItemController:atPosition:type:]): |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::getPositionInformation): |
| |
| 2016-01-25 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r195543. |
| https://bugs.webkit.org/show_bug.cgi?id=153451 |
| |
| regressed performance of test bots by ~6% (Requested by dydz |
| on #webkit). |
| |
| Reverted changeset: |
| |
| "WebKitTestRunner: Credential cache is not cleared between |
| tests" |
| https://bugs.webkit.org/show_bug.cgi?id=153407 |
| http://trac.webkit.org/changeset/195543 |
| |
| 2016-01-25 Chris Dumez <cdumez@apple.com> |
| |
| [WK2][NetworkCache] Enable speculative revalidation |
| https://bugs.webkit.org/show_bug.cgi?id=153443 |
| <rdar://problem/23092196> |
| |
| Reviewed by Antti Koivisto. |
| |
| Enable speculative revalidation to better evaluate performance and |
| robustness. |
| |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| (WebKit::registerUserDefaultsIfNeeded): |
| |
| 2016-01-25 Beth Dakin <bdakin@apple.com> |
| |
| Handle soft spaces after accepted candidates |
| https://bugs.webkit.org/show_bug.cgi?id=153331 |
| -and corresponding- |
| rdar://problem/23958418 |
| |
| Reviewed by Darin Adler. |
| |
| New member variable m_softSpaceRange keeps track to the NSRange of a soft |
| space if the last text that was inserted has a soft space at the end. |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::WebViewImpl): |
| |
| The space at the end of candidates is a soft space. If that space exists, |
| cache the range of the space in m_softSpaceRange. |
| (WebKit::WebViewImpl::handleAcceptedCandidate): |
| |
| When new text is inserted, find out if it is being inserted right after a |
| soft space. If it is, then [NSSpellChecker deletesAutospaceBeforeString] will |
| tell us if the space needs to be removed. If that is the case, then set the |
| replacementString to the soft space. |
| (WebKit::WebViewImpl::insertText): |
| |
| 2016-01-25 Daniel Bates <dabates@apple.com> |
| |
| WebKitTestRunner: Credential cache is not cleared between tests |
| https://bugs.webkit.org/show_bug.cgi?id=153407 |
| <rdar://problem/24280834> |
| |
| Reviewed by Brady Eidson. |
| |
| Add SPI to call NetworkStorageSession::switchToNewTestingSession() to create a new testing session. |
| The new testing session will have an empty credential cache. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::switchToNewTestingSession): Added. |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: Added message SwitchToNewTestingSession(). |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextResetTestingNetworkSession): Added. |
| * UIProcess/API/C/WKContextPrivate.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::resetTestingNetworkSession): Added. |
| * UIProcess/WebProcessPool.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::switchToNewTestingSession): Added. |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: Added message SwitchToNewTestingSession(). |
| |
| 2016-01-22 Ryosuke Niwa <rniwa@webkit.org> |
| |
| document.createElement should be able to create a custom element |
| https://bugs.webkit.org/show_bug.cgi?id=153173 |
| |
| Reviewed by Darin Adler. |
| |
| Use createElementForBindings here since this is for SPI. |
| |
| * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm: |
| (-[WKDOMDocument createElement:]): |
| (-[WKDOMDocument createTextNode:]): |
| |
| 2016-01-24 Alex Christensen <achristensen@webkit.org> |
| |
| Report upload progress to NetworkLoadClient when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=153388 |
| |
| Reviewed by Darin Adler. |
| |
| This fixes http/tests/xmlhttprequest/upload-onload-event.html and a few other tests. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::didBecomeDownload): |
| (WebKit::NetworkLoad::didSendData): |
| (WebKit::NetworkLoad::didReceiveResponseAsync): |
| * NetworkProcess/NetworkLoad.h: |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate initWithNetworkSession:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didSendBodyData:totalBytesSent:totalBytesExpectedToSend:]): |
| (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): |
| |
| 2016-01-24 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| Reduce PassRefPtr uses in dom - 4 |
| https://bugs.webkit.org/show_bug.cgi?id=153270 |
| |
| Reviewed by Darin Adler. |
| |
| As a step to remove PassRefPtr uses, this patch reduces the uses in WebCore/dom. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::focusPluginElement): |
| |
| 2016-01-23 Alex Christensen <achristensen@webkit.org> |
| |
| CMake build fix after r195494. |
| |
| * PlatformMac.cmake: |
| WebKit2 needs to be able to find DataDetectors.h. |
| |
| 2016-01-23 Alex Christensen <achristensen@webkit.org> |
| |
| Use credentials from a URL with NetworkSession like we did with ResourceHandle |
| https://bugs.webkit.org/show_bug.cgi?id=153328 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| createDataTaskWithRequest is being removed, so use std::make_unique<NetworkDataTask> directly instead. |
| Also, create the task even if we are deferring loading. Don't call resume if we are deferring loading. |
| * NetworkProcess/NetworkSession.h: |
| Callbacks are not just used in NetworkSessionTaskClient, so declare them outside. |
| The NetworkDataTask now takes a ResourceRequest so we can strip its credentials. |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): |
| Try credentials stored with the NetworkDataTask before asking the client for credentials. |
| (WebKit::NetworkSession::~NetworkSession): |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| (WebKit::NetworkSession::takeDownloadID): |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| Strip the credentials from the url before creating the task because we do not know the authentication type. |
| We will use these credentials when a challenge is received. |
| (WebKit::NetworkDataTask::~NetworkDataTask): |
| (WebKit::NetworkDataTask::tryPasswordBasedAuthentication): |
| If we have credentials from the initial URL, try using them if it is appropriate. |
| (WebKit::NetworkDataTask::cancel): |
| (WebKit::NetworkSession::createDataTaskWithRequest): Deleted. |
| * Shared/Authentication/AuthenticationManager.h: |
| |
| 2016-01-22 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/24304228> REGRESSION (r184215): Staged XPC services load non-staged shims |
| https://bugs.webkit.org/show_bug.cgi?id=153389 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * Configurations/Shim.xcconfig: Don’t override the install name when using a staged install path. |
| |
| 2016-01-22 Enrica Casucci <enrica@apple.com> |
| |
| Add support for DataDetectors in WK (iOS). |
| https://bugs.webkit.org/show_bug.cgi?id=152989 |
| rdar://problem/22855960 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (fromWKDataDetectorTypes): Changed parameter to uint64_t to |
| successfully compare against WKDataDetectorTypeAll. |
| |
| 2016-01-17 Ada Chan <adachan@apple.com> |
| |
| Add a mode parameter to MediaControllerInterface::supportsFullscreen() and ChromeClient::supportsVideoFullscreen(). |
| https://bugs.webkit.org/show_bug.cgi?id=153220 |
| |
| Reviewed by Eric Carlson. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::supportsVideoFullscreen): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| 2016-01-22 Tim Horton <timothy_horton@apple.com> |
| |
| Reproducible "Unhanded web process message 'WebUserContentController:AddUserScripts'" and friends |
| https://bugs.webkit.org/show_bug.cgi?id=153193 |
| <rdar://problem/24222034> |
| |
| Reviewed by Darin Adler. |
| |
| The WebPageProxy constructor assumes that if its WebProcess is already running, |
| it can add itself to the existing WebUserContentController(Proxy) and all will be well. |
| |
| However, if the API client constructs a different WKUserContentController for two views, |
| and forces them both into the same process, WebPageProxy's constructor sends a message |
| with a WebUserContentController ID that doesn't exist yet on the WebProcess side |
| (because createWebPage, which usually brings it up, hasn't happened yet), and we |
| drop the message on the floor (and get the aforementioned logging). |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::initializeWebPageAfterProcessLaunch): |
| Instead of connecting our WebUserContentControllerProxy and WebVisitedLinkStoreProxy |
| to our WebProcessProxy in the constructor, when doing so might send messages |
| to the WebProcess that arrive before their corresponding WebProcess objects have |
| been created, do this in initializeWebPageAfterProcessLaunch, which always runs |
| during-or-after inititalizeWebPage (and always after the CreateWebPage message goes out). |
| |
| (WebKit::WebPageProxy::initializeWebPage): |
| Mark us as needing initializeWebPageAfterProcessLaunch run, and run it right now |
| if the WebProcess is already up. |
| (WebKit::WebPageProxy::processDidFinishLaunching): |
| If the WebProcess wasn't up at the end of initializeWebPage, we'll eventually end up here |
| after it is launched, and will initializeWebPageAfterProcessLaunch. |
| |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): |
| If the WebProcess dies, we don't want to initializeWebPageAfterProcessLaunch |
| until after initializeWebPage runs again, so make sure the flag isn't set. |
| |
| * UIProcess/WebPageProxy.h: |
| |
| 2016-01-22 Darin Adler <darin@apple.com> |
| |
| Reduce use of equalIgnoringCase to just ignore ASCII case |
| https://bugs.webkit.org/show_bug.cgi?id=153266 |
| |
| Reviewed by Ryosuke Niwa. |
| |
| * UIProcess/PageLoadState.cpp: |
| (WebKit::PageLoadState::hasOnlySecureContent): Use the protocolIs |
| function from WebCore instead of calling startsWith. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::initialize): Use equalLettersIgnoringASCIICase. |
| |
| 2016-01-21 Brent Fulgham <bfulgham@apple.com> |
| |
| [Mac] Tooltips do not honor some types of obscuring windows |
| https://bugs.webkit.org/show_bug.cgi?id=153263 |
| <rdar://problem/21423972> |
| |
| Reviewed by Simon Fraser. |
| |
| Recognize that the current WebView is obscured by comparing the current event's Window Number against |
| the Window Number of the current WebView. If they don't match, something is in the way. |
| |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::windowIsFrontWindowUnderMouse): Added. |
| * UIProcess/PageClient.h: |
| (WebKit::PageClient::windowIsFrontWindowUnderMouse): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::handleMouseEvent): Check if the current WebView is obscured. If it |
| is, clear the tooltip and return. |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::windowIsFrontWindowUnderMouse): Added. |
| |
| 2016-01-22 Youenn Fablet <youenn.fablet@crf.canon.fr> |
| |
| Remove PassRefPtr from ResourceRequest and FormData |
| https://bugs.webkit.org/show_bug.cgi?id=153229 |
| |
| Reviewed by Chris Dumez. |
| |
| * NetworkProcess/NetworkResourceLoadParameters.cpp: |
| (WebKit::NetworkResourceLoadParameters::decode): |
| * NetworkProcess/cache/NetworkCacheEntry.cpp: |
| (WebKit::NetworkCache::Entry::Entry): |
| |
| 2016-01-21 Simon Fraser <simon.fraser@apple.com> |
| |
| REGRESSION (r168244): Content in horizontal-bt page is offset such that only the end is viewable and there is a white gap at the top |
| https://bugs.webkit.org/show_bug.cgi?id=136019 |
| |
| Reviewed by Dan Bernstein. |
| |
| Now call frameView.positionForRootContentLayer(), and add a FIXME questioning the |
| behavior in horizontal b-t documents. However, this code isn't hit now that we always |
| do extended backgrounds, so never have shadow layers. |
| |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: |
| (WebKit::shadowLayerPositionForFrame): |
| |
| 2016-01-21 Dean Jackson <dino@apple.com> |
| |
| Move _allowsDoubleTapGestures implementation out of category |
| https://bugs.webkit.org/show_bug.cgi?id=153329 |
| <rdar://problem/24289768> |
| |
| Reviewed by Simon Fraser. |
| |
| We were generating a linker warning because the implementation |
| was located inside the WKPrivate category. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _allowsDoubleTapGestures]): Move this out of |
| the category. |
| |
| 2016-01-21 Dean Jackson <dino@apple.com> |
| |
| [iOS] Crash in _endPotentialTapAndEnableDoubleTapGesturesIfNecessary |
| https://bugs.webkit.org/show_bug.cgi?id=153326 |
| <rdar://problem/24264339> |
| |
| Reviewed by Anders Carlsson. |
| |
| UIKit's UIGestureRecognizer could call back into the WKContentView |
| after the associated WKWebView has disappeared. The fix is to |
| explicitly null the WKWebView reference as we deallocate. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView dealloc]): Tell the WKContentView we are going away. |
| * UIProcess/ios/WKContentView.h: |
| * UIProcess/ios/WKContentView.mm: |
| (-[WKContentView _webViewDestroyed]): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _endPotentialTapAndEnableDoubleTapGesturesIfNecessary]): |
| Only do something if the WKWebView is still around. |
| |
| 2016-01-21 Beth Dakin <bdakin@apple.com> |
| |
| Add the ability to update WebKitAdditions to WK2 |
| https://bugs.webkit.org/show_bug.cgi?id=153320 |
| -and corresponding- |
| rdar://problem/23639629 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/Cocoa/WebViewImpl.h: |
| (WebKit::WebViewImpl::createWeakPtr): |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::updateWebViewImplAdditions): |
| (WebKit::WebViewImpl::showCandidates): |
| (WebKit::WebViewImpl::webViewImplAdditionsWillDestroyView): |
| (WebKit::trackingAreaOptions): |
| (WebKit::WebViewImpl::~WebViewImpl): |
| (WebKit::WebViewImpl::becomeFirstResponder): |
| (WebKit::WebViewImpl::selectionDidChange): |
| (WebKit::WebViewImpl::handleRequestedCandidates): |
| (WebKit::textCheckingResultFromNSTextCheckingResult): |
| |
| 2016-01-19 Ada Chan <adachan@apple.com> |
| |
| Make it possible to enable VIDEO_PRESENTATION_MODE on other Cocoa platforms. |
| https://bugs.webkit.org/show_bug.cgi?id=153218 |
| |
| Reviewed by Eric Carlson. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-01-20 Alex Christensen <achristensen@webkit.org> |
| |
| Fix CMake build after r195300. |
| |
| * PlatformMac.cmake: |
| Include editing/mac to find DataDetection.h. |
| |
| 2016-01-20 Alex Christensen <achristensen@webkit.org> |
| |
| Ask UI Process before sending redirect requests when downloading |
| https://bugs.webkit.org/show_bug.cgi?id=153041 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::DownloadManager::continueWillSendRequest): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| * NetworkProcess/Downloads/DownloadManager.h: |
| * NetworkProcess/Downloads/PendingDownload.cpp: |
| (WebKit::PendingDownload::willSendRedirectedRequest): |
| (WebKit::PendingDownload::continueWillSendRequest): |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::NetworkProcess::continueWillSendRequest): |
| (WebKit::NetworkProcess::setCacheModel): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * UIProcess/API/APIDownloadClient.h: |
| (API::DownloadClient::didCancel): |
| (API::DownloadClient::processDidCrash): |
| (API::DownloadClient::canAuthenticateAgainstProtectionSpace): |
| (API::DownloadClient::willSendRequest): |
| * UIProcess/Downloads/DownloadProxy.cpp: |
| (WebKit::DownloadProxy::didReceiveAuthenticationChallenge): |
| (WebKit::DownloadProxy::canAuthenticateAgainstProtectionSpace): |
| (WebKit::DownloadProxy::willSendRequest): |
| (WebKit::DownloadProxy::didReceiveResponse): |
| * UIProcess/Downloads/DownloadProxy.h: |
| * UIProcess/Downloads/DownloadProxy.messages.in: |
| |
| 2016-01-20 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.4 release. |
| |
| * gtk/NEWS: Add release notes for 2.11.4. |
| |
| 2016-01-19 Enrica Casucci <enrica@apple.com> |
| |
| Add support for DataDetectors in WK (iOS). |
| https://bugs.webkit.org/show_bug.cgi?id=152989 |
| rdar://problem/22855960 |
| |
| Reviewed by Tim Horton. |
| |
| This is the first step toward implementing Data Detectors support |
| in WK2. The patch adds a new property to the configuration |
| object to indicate the type of detection desired and propagates |
| to the WebProcess. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (fromWKDataDetectorTypes): |
| (-[WKWebView initWithFrame:configuration:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration copyWithZone:]): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-01-19 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r195300. |
| https://bugs.webkit.org/show_bug.cgi?id=153244 |
| |
| enrica wants more time to fix Windows (Requested by thorton on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "Add support for DataDetectors in WK (iOS)." |
| https://bugs.webkit.org/show_bug.cgi?id=152989 |
| http://trac.webkit.org/changeset/195300 |
| |
| 2016-01-19 Enrica Casucci <enrica@apple.com> |
| |
| Add support for DataDetectors in WK (iOS). |
| https://bugs.webkit.org/show_bug.cgi?id=152989 |
| rdar://problem/22855960 |
| |
| Reviewed by Tim Horton. |
| |
| This is the first step toward implementing Data Detectors support |
| in WK2. The patch adds a new property to the configuration |
| object to indicate the type of detection desired and propagates |
| to the WebProcess. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration copyWithZone:]): |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/Cocoa/WebPageCocoa.mm: Added. |
| (WebKit::WebPage::fromWKDataDetectorTypes): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2016-01-19 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r187471. |
| https://bugs.webkit.org/show_bug.cgi?id=153236 |
| |
| purportedly caused a significant memory regression and want to |
| see if that is true (Requested by thorton on #webkit). |
| |
| Reverted changeset: |
| |
| "First in-window viewStateChange synchronously blocks despite |
| not previously being in-window" |
| https://bugs.webkit.org/show_bug.cgi?id=147344 |
| http://trac.webkit.org/changeset/187471 |
| |
| 2016-01-19 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Runtime critical warnings when loading a URL after a session restore |
| https://bugs.webkit.org/show_bug.cgi?id=153233 |
| |
| Reviewed by Michael Catanzaro. |
| |
| This happens when doing a normal load after restoring the back |
| forward list from session state and the list contained forward |
| items. In that case the forward items are removed from the list |
| and we try to reference a WebBackForwardListItem wrapper that |
| hasn't been created. We create the wrappers on demand, and when |
| the back forward list is populated from session state, items are |
| added to the list without creating their wrappers. That was not |
| possible before, and that's why we assumed that any item that is |
| removed from the list should have a wrapper already created. |
| |
| * UIProcess/API/gtk/WebKitBackForwardList.cpp: |
| (webkitBackForwardListChanged): If we don't have a wrapper for the |
| removed item, create a new one to be passed to the signal, but |
| without adding it to the map. |
| |
| 2016-01-19 Ryosuke Niwa <rniwa@webkit.org> |
| |
| CharacterData::setData doesn't need ExceptionCode as an out argument |
| https://bugs.webkit.org/show_bug.cgi?id=153225 |
| |
| Reviewed by Antti Koivisto. |
| |
| * WebProcess/InjectedBundle/API/mac/WKDOMText.mm: |
| (-[WKDOMText setData:]): |
| |
| 2016-01-18 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] Remove wkView() from EwkView |
| https://bugs.webkit.org/show_bug.cgi?id=152604 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkViewEventHandler<EVAS_CALLBACK_SHOW>::handleEvent): |
| (EwkViewEventHandler<EVAS_CALLBACK_HIDE>::handleEvent): |
| (EwkView::EwkView): |
| (EwkView::create): |
| (EwkView::wkPage): |
| (EwkView::isVisible): |
| (EwkView::setVisible): |
| (EwkView::setDeviceScaleFactor): |
| (EwkView::deviceSize): |
| (EwkView::displayTimerFired): |
| (EwkView::setViewportPosition): |
| (EwkView::requestExitFullScreen): |
| (EwkView::contentsSize): |
| (EwkView::setThemePath): |
| (EwkView::feedTouchEvent): |
| (EwkView::createGLSurface): |
| (EwkView::showContextMenu): |
| (EwkView::requestPopupMenu): |
| (EwkView::webView): |
| (EwkView::handleEvasObjectCalculate): |
| (EwkView::handleEvasObjectColorSet): |
| (EwkView::handleEwkViewFocusIn): |
| (EwkView::handleEwkViewFocusOut): |
| (EwkView::feedTouchEvents): |
| (EwkView::takeSnapshot): |
| (EwkView::scrollBy): |
| (EwkView::setBackgroundColor): |
| (EwkView::backgroundColor): |
| * UIProcess/API/efl/EwkView.h: |
| (EwkView::wkView): Deleted. |
| * UIProcess/API/efl/GestureRecognizer.cpp: |
| (WebKit::GestureHandler::handleSingleTap): |
| * UIProcess/API/efl/ewk_view.cpp: |
| (EWKViewCreate): |
| (EWKViewGetWKView): |
| (ewk_view_fullscreen_exit): |
| (ewk_view_layout_fixed_set): |
| (ewk_view_layout_fixed_get): |
| (ewk_view_layout_fixed_size_set): |
| (ewk_view_layout_fixed_size_get): |
| (ewk_view_bg_color_get): |
| (ewk_view_contents_size_get): |
| * UIProcess/efl/PageViewportControllerClientEfl.cpp: |
| (WebKit::PageViewportControllerClientEfl::setPageScaleFactor): |
| * UIProcess/efl/ViewClientEfl.cpp: |
| (WebKit::ViewClientEfl::webProcessDidRelaunch): |
| (WebKit::ViewClientEfl::ViewClientEfl): |
| (WebKit::ViewClientEfl::~ViewClientEfl): |
| |
| 2016-01-18 Zan Dobersek <zdobersek@igalia.com> |
| |
| Sink the Vector<uint8_t> buffer into the SerializedScriptValue constructor |
| https://bugs.webkit.org/show_bug.cgi?id=142634 |
| |
| Reviewed by Darin Adler. |
| |
| Update API::SerializedScriptValue::adopt() to take in a Vector<uint8_t> |
| rvalue, moving it into the WebCore::SerializedScriptValue::adopt() call. |
| |
| Update other places that are affected by the SerializedScriptValue changes. |
| |
| * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp: |
| (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createIndex): |
| * Shared/API/APISerializedScriptValue.h: |
| (API::SerializedScriptValue::adopt): |
| * Shared/UserData.cpp: |
| (WebKit::UserData::decode): |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::didPostMessage): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::scriptValueCallback): |
| * WebProcess/WebCoreSupport/SessionStateConversion.cpp: |
| (WebKit::applyFrameState): |
| |
| 2016-01-18 Olivier Blin <olivier.blin@softathome.com> |
| |
| [EFL][GTK][WK2] Fix UIProcess build with GStreamer and without VIDEO |
| https://bugs.webkit.org/show_bug.cgi?id=153135 |
| |
| Reviewed by Michael Catanzaro. |
| |
| GStreamer builds fail when WebAudio is enabled but VIDEO disabled. |
| |
| This change makes the flag more consistent around the |
| decicePolicyForInstallMissingMediaPluginsPermissionRequest() method: |
| ENABLE(VIDEO) && USE(GSTREAMER) everywhere, while the code used to |
| test either one or the other. |
| |
| This does not enable InstallMissingMediaPlugins for WebAudio, since no |
| code makes use of this in WebKitWebAudioSourceGStreamer. |
| |
| It also fixes a naming typo for the following method: |
| decidePolicyForInstallMissingMediaPluginsPermissionRequest() |
| |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::decidePolicyForInstallMissingMediaPluginsPermissionRequest): |
| * UIProcess/API/gtk/PageClientImpl.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/efl/WebViewEfl.h: |
| * UIProcess/gstreamer/WebPageProxyGStreamer.cpp: |
| (WebKit::WebPageProxy::requestInstallMissingMediaPlugins): |
| |
| 2016-01-17 Jeremy Huddleston Sequoia <jeremyhu@apple.com> |
| |
| Add quotes around ${CMAKE_SHARED_LINKER_FLAGS} in case it is unset |
| https://bugs.webkit.org/show_bug.cgi?id=153175 |
| |
| Reviewed by Michael Catanzaro. |
| |
| * PlatformGTK.cmake: |
| |
| 2016-01-16 Jeremy Huddleston Sequoia <jeremyhu@apple.com> |
| |
| Remove a now-irrelevant darwin build hack |
| https://bugs.webkit.org/show_bug.cgi?id=153117 |
| |
| Reviewed by Michael Catanzaro. |
| |
| * PlatformGTK.cmake: |
| |
| 2016-01-16 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| [iOS] Replace deprecated -[UIDocumentMenuViewController |
| _setIgnoreApplicationEntitlementForImport:] |
| |
| <https://bugs.webkit.org/show_bug.cgi?id=145690> |
| <rdar://problem/20636577> |
| |
| Reviewed by Brent Fulgham. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| Replace deprecated SPI with newer SPI. |
| |
| * UIProcess/ios/forms/WKFileUploadPanel.mm: |
| (-[WKFileUploadPanel presentWithParameters:resultListener:]): |
| (-[WKFileUploadPanel _showDocumentPickerMenu]): |
| Ditto. |
| |
| 2016-01-16 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] Unreviewed. Fix a typo in an API comment. |
| |
| * UIProcess/API/gtk/WebKitWebViewSessionState.cpp: |
| |
| 2016-01-16 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] GVariant runtime critical errors when encoding session data |
| https://bugs.webkit.org/show_bug.cgi?id=153130 |
| |
| Reviewed by Michael Catanzaro. |
| |
| It happens when the FrameState has children, because the recursive |
| serialization is wrong. Also fix serialization of |
| documentSequenceNumber and itemSequenceNumber that are gint64, not |
| guint64. |
| |
| * UIProcess/API/gtk/WebKitWebViewSessionState.cpp: |
| (encodeFrameState): Let the caller open/init the given |
| builder. Use a new builder to encode child states recursively. |
| (encodePageState): Do the builder open/close for the FrameState encoding. |
| (decodeFrameState): Get the variant of every child. |
| |
| 2016-01-15 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| Fix internal Windows build |
| https://bugs.webkit.org/show_bug.cgi?id=153142 |
| |
| Unreviewed addition to Alex's JSC patch, which was reviewed by Brent Fulgham. Pass |
| -I${JAVASCRIPTCORE_DIR} to g-ir-scanner. |
| |
| * PlatformGTK.cmake: |
| |
| 2016-01-14 Simon Fraser <simon.fraser@apple.com> |
| |
| Remove workaround for rdar://problem/23623670 |
| https://bugs.webkit.org/show_bug.cgi?id=153107 |
| rdar://problem/23633319 |
| |
| Reviewed by Tim Horton. |
| |
| Remove the code that uses IOSurfaceAcceleratorTransformSurface() when copying from |
| back-to-front buffer, now that CGIOSurfaceContextCreate()-code path works correctly. |
| |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| (WebKit::RemoteLayerBackingStore::display): |
| |
| 2016-01-14 Beth Dakin <bdakin@apple.com> |
| |
| WK1 and WK2 should share more candidate request code |
| https://bugs.webkit.org/show_bug.cgi?id=153108 |
| |
| Reviewed by Simon Fraser. |
| |
| requestCandidatesForSelection() does not need to be exposed as an |
| EditorClient function. WK1 can just call invoke this code from the existing |
| respondToChangedSelection EditorClient function, which is what WK2 does. |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| |
| 2016-01-14 Beth Dakin <bdakin@apple.com> |
| |
| WK2: Request completion candidates when needed |
| https://bugs.webkit.org/show_bug.cgi?id=153040 |
| -and corresponding- |
| rdar://problem/24155631 |
| |
| Reviewed by Enrica Casucci and Tim Horton. |
| |
| Mac needs to support postLayoutData in order to have some layout-related |
| editing information to request candidates. This patch re-shuffles some items |
| in the struct so that they can be shared by Mac and iOS, and it adds 3 new |
| items for Mac only. |
| * Shared/EditorState.cpp: |
| (WebKit::EditorState::encode): |
| (WebKit::EditorState::decode): |
| (WebKit::EditorState::PostLayoutData::encode): |
| (WebKit::EditorState::PostLayoutData::decode): |
| * Shared/EditorState.h: |
| |
| Request and handle candidates here in WebViewImpl, and cache the |
| m_lastStringForCandidateRequest so that we can ensure the results we receive |
| were received in a timely enough manner that they are still for the same |
| String. |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::selectionDidChange): |
| |
| When selection changes, request new candidates. |
| (WebKit::WebViewImpl::requestCandidatesForSelectionIfNeeded): |
| |
| Once candidates have been received, we ask the sharedSpellChecker to show |
| them. |
| (WebKit::WebViewImpl::handleRequestedCandidates): |
| |
| If a candidate is accepted, we ask the WebProcess to accept it, so we start |
| by converting the NSTextCheckingResult to a WebCore::TextCheckingResult. |
| (WebKit::textCheckingResultFromNSTextCheckingResult): |
| (WebKit::WebViewImpl::handleAcceptedCandidate): |
| |
| Ask the WebProcess to handle accepting the candidate. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::handleAcceptedCandidate): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage:: handleAcceptedCandidate): |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| Now that Mac has some postLayoutData in the EditorState, fill that in in |
| platformEditorState(). |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::platformEditorState): |
| |
| Ask WebCore::Editor to handle the accepted candidate. |
| (WebKit::WebPage::handleAcceptedCandidate): |
| |
| 2016-01-14 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r195002. |
| https://bugs.webkit.org/show_bug.cgi?id=153098 |
| |
| Crashes many/most editing tests (Requested by ap on #webkit). |
| |
| Reverted changeset: |
| |
| "WK2: Request completion candidates when needed" |
| https://bugs.webkit.org/show_bug.cgi?id=153040 |
| http://trac.webkit.org/changeset/195002 |
| |
| 2016-01-14 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| [EFL][GTK][SeccompFilter] Fix build break when enabling --seccomp-filters |
| https://bugs.webkit.org/show_bug.cgi?id=153094 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| diskCacheDirectory and cookiePersistentStoragePath were removed by r192796. |
| But SyscallPolicy::addDefaultWebProcessPolicy has added directory permission |
| to the removed paths. |
| |
| It looks two paths needs to be handled by network process. |
| |
| * Shared/linux/SeccompFilters/SyscallPolicy.cpp: |
| (WebKit::SyscallPolicy::addDefaultWebProcessPolicy): Deleted. |
| |
| 2016-01-13 Alex Christensen <achristensen@webkit.org> |
| |
| Implement custom protocols when using NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=153078 |
| |
| Reviewed by Andy Estes. |
| |
| * NetworkProcess/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm: |
| (WebKit::generateCustomProtocolID): |
| (+[WKCustomProtocol canInitWithRequest:]): |
| (+[WKCustomProtocol canonicalRequestForRequest:]): |
| (-[WKCustomProtocol initWithRequest:cachedResponse:client:]): |
| (-[WKCustomProtocol startLoading]): |
| (-[WKCustomProtocol stopLoading]): |
| There's no need to have a static pointer when we can use NetworkProcess::singleton to access |
| the process-global CustomProtocolManager, and add null checks because that's a good thing to do. |
| (WebKit::CustomProtocolManager::CustomProtocolManager): |
| Call UTF8Encoding when creating the CustomProtocolManager on the main thread to make sure it exists |
| for when we decode URLS in ResourceResponses from IPC later, which is done on a different WorkQueue. |
| (WebKit::CustomProtocolManager::initializeConnection): |
| (WebKit::CustomProtocolManager::initialize): |
| (WebKit::CustomProtocolManager::removeCustomProtocol): |
| (WebKit::CustomProtocolManager::registerProtocolClass): |
| (WebKit::CustomProtocolManager::registerScheme): |
| * NetworkProcess/CustomProtocols/CustomProtocolManager.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::NetworkSession): |
| Call registerProtocolClass to set configuration.protocolClasses if there is a CustomProtocolManager. |
| |
| 2016-01-13 Beth Dakin <bdakin@apple.com> |
| |
| WK2: Request completion candidates when needed |
| https://bugs.webkit.org/show_bug.cgi?id=153040 |
| -and corresponding- |
| rdar://problem/24155631 |
| |
| Reviewed by Enrica Casucci. |
| |
| Mac needs to support postLayoutData in order to have some layout-related |
| editing information to request candidates. This patch re-shuffles some items |
| in the struct so that they can be shared by Mac and iOS, and it adds 3 new |
| items for Mac only. |
| * Shared/EditorState.cpp: |
| (WebKit::EditorState::encode): |
| (WebKit::EditorState::decode): |
| (WebKit::EditorState::PostLayoutData::encode): |
| (WebKit::EditorState::PostLayoutData::decode): |
| * Shared/EditorState.h: |
| |
| Request and handle candidates here in WebViewImpl, and cache the |
| m_lastStringForCandidateRequest so that we can ensure the results we receive |
| were received in a timely enough manner that they are still for the same |
| String. |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::selectionDidChange): |
| |
| When selection changes, request new candidates. |
| (WebKit::WebViewImpl::requestCandidatesForSelectionIfNeeded): |
| |
| Once candidates have been received, we ask the sharedSpellChecker to show |
| them. |
| (WebKit::WebViewImpl::handleRequestedCandidates): |
| |
| If a candidate is accepted, we ask the WebProcess to accept it, so we start |
| by converting the NSTextCheckingResult to a WebCore::TextCheckingResult. |
| (WebKit::textCheckingResultFromNSTextCheckingResult): |
| (WebKit::WebViewImpl::handleAcceptedCandidate): |
| |
| Ask the WebProcess to handle accepting the candidate. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::handleAcceptedCandidate): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage:: handleAcceptedCandidate): |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| Now that Mac has some postLayoutData in the EditorState, fill that in in |
| platformEditorState(). |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::platformEditorState): |
| |
| Ask WebCore::Editor to handle the accepted candidate. |
| (WebKit::WebPage::handleAcceptedCandidate): |
| |
| 2016-01-12 Geoffrey Garen <ggaren@apple.com> |
| |
| WebKit2 should have an API for eagerly querying whether the web process is responsive |
| https://bugs.webkit.org/show_bug.cgi?id=153037 |
| |
| Reviewed by Tim Horton. |
| |
| WebKit2 provides a delegate notification when the web process doesn't |
| respond to a message after a while. But there's no way to send a message |
| eagerly and check for reply. |
| |
| We want this new mechanism so that navigation can terminate the web |
| process eagerly if it is hung. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageGetWebProcessIsResponsive): |
| * UIProcess/API/C/WKPagePrivate.h: This is the new API. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::sendWheelEvent): Updated for interface change. |
| |
| (WebKit::WebPageProxy::getWebProcessIsResponsive): Calls through to the |
| web process proxy. We claim that we are responsive when there is no |
| web process because we assume that a fresh web process will not hang. |
| |
| * UIProcess/WebPageProxy.h: |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::WebProcessProxy): |
| (WebKit::WebProcessProxy::didBecomeUnresponsive): Keep a flag indicating |
| whether the process is unresponsive so that we can fire unresponsiveness |
| callbacks immediately for a hung process instead of waiting another 3s. |
| |
| (WebKit::WebProcessProxy::didBecomeResponsive): We don't fire responsiveness |
| callbacks inside didBecomeResponsive because we assume that a responsive |
| web process will invoke didReceiveMainThreadPing -- and we fire the |
| callbacks there. |
| |
| (WebKit::WebProcessProxy::getIsResponsive): If the web process is already |
| known to be unresponsive, fire the callback right away. Otherwise, queue |
| it up to fire once we have an answer from a main thread ping. |
| |
| (WebKit::WebProcessProxy::didReceiveMainThreadPing): Fire any pending |
| callbacks when we learn that the web process is responsive. |
| |
| * UIProcess/WebProcessProxy.h: |
| |
| 2016-01-12 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.3 release. |
| |
| * gtk/NEWS: Add release notes for 2.11.3. |
| |
| 2016-01-12 Geoffrey Garen <ggaren@apple.com> |
| |
| WebPageProxy should reattach to the web process before navigating |
| https://bugs.webkit.org/show_bug.cgi?id=153026 |
| |
| Reviewed by Anders Carlsson. |
| |
| This fixes a crash (and lots of other corruption) when force-quitting |
| the web process during navigation. |
| |
| Some objects (like ViewGestureController) use one-time initialization |
| to point to a ChildProcessProxy -- and, by design, we destroy them when |
| the ChildProcessProxy becomes invalid (i.e., crashes or quits). |
| |
| If we navigate *before* creating a new, valid ChildProcessProxy, then |
| we accidentally re-create these objects pointing to the old, invalid |
| ChildProcessProxy. |
| |
| We need to wait until we have a valid ChildProcessProxy before we |
| initialize these objects. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::reattachToWebProcessWithItem): Navigate after |
| reattaching to the web process so that lazily allocated helper objects |
| point to the right ChildProcessProxy. |
| |
| 2016-01-12 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Add a build flag for custom element |
| https://bugs.webkit.org/show_bug.cgi?id=153005 |
| |
| Reviewed by Alex Christensen. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-01-12 Alex Christensen <achristensen@webkit.org> |
| |
| Ask for UI Process approval of ProtectionSpace when authenticating downloads with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=152999 |
| |
| Reviewed by Brady Eidson. |
| |
| * DerivedSources.make: |
| I mistakenly added PendingDownload.messages.in in r194810, but this will not be needed because |
| the PendingDownload is not a MessageReceiver. Rather, the NetworkProcess receives the messages |
| and forwards their contents to the PendingDownload through its DownloadManager. |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::dataTaskBecameDownloadTask): |
| (WebKit::DownloadManager::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| * NetworkProcess/Downloads/DownloadManager.h: |
| * NetworkProcess/Downloads/PendingDownload.cpp: |
| (WebKit::PendingDownload::continueWillSendRequest): |
| (WebKit::PendingDownload::canAuthenticateAgainstProtectionSpaceAsync): |
| Instead of taking a shortcut I added in r194810, send a message to the UI process and wait for its |
| asynchronous reply to determine if we can authenticate against this protection space. |
| (WebKit::PendingDownload::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::PendingDownload::didConvertToDownload): |
| * NetworkProcess/Downloads/PendingDownload.h: |
| * NetworkProcess/Downloads/PendingDownload.messages.in: Removed. |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::cancelDownload): |
| (WebKit::NetworkProcess::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::NetworkProcess::setCacheModel): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * Shared/Authentication/AuthenticationManager.h: |
| * UIProcess/API/APIDownloadClient.h: |
| (API::DownloadClient::didFail): |
| (API::DownloadClient::didCancel): |
| (API::DownloadClient::processDidCrash): |
| (API::DownloadClient::canAuthenticateAgainstProtectionSpace): |
| * UIProcess/Downloads/DownloadProxy.cpp: |
| (WebKit::DownloadProxy::didReceiveAuthenticationChallenge): |
| (WebKit::DownloadProxy::canAuthenticateAgainstProtectionSpace): |
| (WebKit::DownloadProxy::didReceiveResponse): |
| * UIProcess/Downloads/DownloadProxy.h: |
| * UIProcess/Downloads/DownloadProxy.messages.in: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-01-12 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Move ChildProcessProxy from Shared to UIProcess |
| https://bugs.webkit.org/show_bug.cgi?id=125570 |
| |
| Reviewed by Darin Adler. |
| |
| ChildProcessProxy is only used by the UI process. |
| |
| * CMakeLists.txt: |
| * PlatformGTK.cmake: |
| * UIProcess/ChildProcessProxy.cpp: Renamed from Source/WebKit2/Shared/ChildProcessProxy.cpp. |
| (WebKit::ChildProcessProxy::ChildProcessProxy): |
| (WebKit::ChildProcessProxy::~ChildProcessProxy): |
| (WebKit::ChildProcessProxy::fromConnection): |
| (WebKit::ChildProcessProxy::getLaunchOptions): |
| (WebKit::ChildProcessProxy::connect): |
| (WebKit::ChildProcessProxy::terminate): |
| (WebKit::ChildProcessProxy::state): |
| (WebKit::ChildProcessProxy::sendMessage): |
| (WebKit::ChildProcessProxy::addMessageReceiver): |
| (WebKit::ChildProcessProxy::removeMessageReceiver): |
| (WebKit::ChildProcessProxy::dispatchMessage): |
| (WebKit::ChildProcessProxy::dispatchSyncMessage): |
| (WebKit::ChildProcessProxy::didFinishLaunching): |
| (WebKit::ChildProcessProxy::shutDownProcess): |
| (WebKit::ChildProcessProxy::connectionWillOpen): |
| * UIProcess/ChildProcessProxy.h: Renamed from Source/WebKit2/Shared/ChildProcessProxy.h. |
| (WebKit::ChildProcessProxy::connection): |
| (WebKit::ChildProcessProxy::processIdentifier): |
| (WebKit::ChildProcessProxy::canSendMessage): |
| (WebKit::ChildProcessProxy::send): |
| (WebKit::ChildProcessProxy::sendSync): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-01-12 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] UI process crashes if webkit_web_view_get_tls_info is called before internal load-committed event |
| https://bugs.webkit.org/show_bug.cgi?id=142375 |
| |
| Reviewed by Michael Catanzaro. |
| |
| Remove all the hacks to emit delayed load events now that the |
| page cache resource load delegates are consistent with all other |
| resource loads. |
| |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkitWebViewLoadChanged): |
| (webkitWebViewResourceLoadStarted): |
| (webkit_web_view_get_tls_info): Add a g_return_val_if_fail to |
| prevent this function from being misused. |
| (webkitWebViewDisconnectMainResourceResponseChangedSignalHandler): Deleted. |
| (webkitWebViewDispose): Deleted. |
| (webkitWebViewEmitLoadChanged): Deleted. |
| (webkitWebViewEmitDelayedLoadEvents): Deleted. |
| (mainResourceResponseChangedCallback): Deleted. |
| (waitForMainResourceResponseIfWaitingForResource): Deleted. |
| |
| 2016-01-11 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| REGRESSION(r190717): [GTK] Popup menus stop working after being dismissed without selecting an item |
| https://bugs.webkit.org/show_bug.cgi?id=152977 |
| |
| Reviewed by Michael Catanzaro. |
| |
| This happens since r190717 when you open a popup menu and without |
| selecting any option it's dismissed (press ESC or click somewhere |
| else). This is because I removed the code to track when the menu |
| is unmapped, thinking that it was no longer necessary. But we need |
| to send the DidChangeSelectedIndexForActivePopupMenu to the |
| WebProcess with -1 as index to keep the web process in sync. |
| |
| * UIProcess/gtk/WebPopupMenuProxyGtk.cpp: |
| (WebKit::WebPopupMenuProxyGtk::WebPopupMenuProxyGtk): |
| (WebKit::WebPopupMenuProxyGtk::showPopupMenu): |
| (WebKit::WebPopupMenuProxyGtk::cancelTracking): |
| (WebKit::WebPopupMenuProxyGtk::menuItemActivated): |
| (WebKit::WebPopupMenuProxyGtk::dismissMenuTimerFired): |
| (WebKit::WebPopupMenuProxyGtk::menuUnmappedCallback): |
| * UIProcess/gtk/WebPopupMenuProxyGtk.h: |
| |
| 2016-01-09 Andy Estes <aestes@apple.com> |
| |
| [Cocoa] Add SPI to opt out a URL scheme from the memory cache |
| https://bugs.webkit.org/show_bug.cgi?id=152950 |
| rdar://problem/24066652 |
| |
| Reviewed by Tim Horton. |
| |
| Added a alwaysRevalidatedURLSchemes property to _WKProcessPoolConfiguration. Taught WebProcess to add these |
| schemes to SchemeRegistry when initializing a new web process. |
| |
| * Shared/API/Cocoa/WKFoundation.h: Added a newline to force re-postprocessing. |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/API/APIProcessPoolConfiguration.cpp: |
| (API::ProcessPoolConfiguration::copy): |
| * UIProcess/API/APIProcessPoolConfiguration.h: |
| * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h: |
| * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm: |
| (-[_WKProcessPoolConfiguration alwaysRevalidatedURLSchemes]): |
| (-[_WKProcessPoolConfiguration setAlwaysRevalidatedURLSchemes:]): |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::createNewWebProcess): |
| * UIProcess/WebProcessPool.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::registerURLSchemeAsAlwaysRevalidated): |
| * WebProcess/WebProcess.h: |
| |
| 2016-01-11 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of CFMakeCollectable, it is a no-op |
| https://bugs.webkit.org/show_bug.cgi?id=152988 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/Cocoa/WKNSString.mm: |
| * Shared/Cocoa/WKNSURL.mm: |
| (-[WKNSURL _web_createTarget]): |
| |
| 2016-01-11 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r194866. |
| https://bugs.webkit.org/show_bug.cgi?id=152986 |
| |
| This change broke the mac build (Requested by ryanhaddad on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "[Cocoa] Add SPI to opt out a URL scheme from the memory |
| cache" |
| https://bugs.webkit.org/show_bug.cgi?id=152950 |
| http://trac.webkit.org/changeset/194866 |
| |
| 2016-01-11 Andy Estes <aestes@apple.com> |
| |
| [Cocoa] Add SPI to opt out a URL scheme from the memory cache |
| https://bugs.webkit.org/show_bug.cgi?id=152950 |
| rdar://problem/24066652 |
| |
| Reviewed by Tim Horton. |
| |
| Added a alwaysRevalidatedURLSchemes property to _WKProcessPoolConfiguration. Taught WebProcess to add these |
| schemes to SchemeRegistry when initializing a new web process. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/API/APIProcessPoolConfiguration.cpp: |
| (API::ProcessPoolConfiguration::copy): |
| * UIProcess/API/APIProcessPoolConfiguration.h: |
| * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h: |
| * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm: |
| (-[_WKProcessPoolConfiguration alwaysRevalidatedURLSchemes]): |
| (-[_WKProcessPoolConfiguration setAlwaysRevalidatedURLSchemes:]): |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::createNewWebProcess): |
| * UIProcess/WebProcessPool.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::registerURLSchemeAsAlwaysRevalidated): |
| * WebProcess/WebProcess.h: |
| |
| 2016-01-11 Alex Christensen <achristensen@webkit.org> |
| |
| Fix Mac CMake build after r194810. |
| |
| * PlatformMac.cmake: |
| PendingDownload isn't needed until NETWORK_SESSION is used by default. |
| I'll figure this out when I make the switch. |
| |
| 2016-01-11 Mario Sanchez Prada <mario@endlessm.com> |
| |
| [WK2][GTK] Propagate motion-notify-event signals from the WebView |
| https://bugs.webkit.org/show_bug.cgi?id=152974 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Always propagate motion-notify-event signals, regardless of what the |
| web process does, so that we can listen for those events (which does |
| not act on specific targets inside the webview) from the container |
| widget too, and not just from the WebView itself. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseMotionNotifyEvent): Ensure the signal gets propagated. |
| |
| 2016-01-10 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Disable header postprocessing when building for El Capitan |
| https://bugs.webkit.org/show_bug.cgi?id=152962 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Configurations/WebKit.xcconfig: |
| |
| 2016-01-09 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Allow overriding the frameworks directory independently of using a staging install path |
| https://bugs.webkit.org/show_bug.cgi?id=152926 |
| |
| Reviewed by Tim Horton. |
| |
| Introduce a new build setting, WK_OVERRIDE_FRAMEWORKS_DIR. When not empty, it determines |
| where the frameworks are installed. Setting USE_STAGING_INSTALL_PATH to YES sets |
| WK_OVERRIDE_FRAMEWORKS_DIR to $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari. |
| |
| Account for the possibility of WK_OVERRIDE_FRAMEWORKS_DIR containing spaces. |
| |
| * Configurations/BaseTarget.xcconfig: |
| - Add quotes to account for spaces. |
| - Define WEBKIT_FRAMEWORKS_DIR and UMBRELLA_FRAMEWORKS_DIR based on |
| WK_OVERRIDE_FRAMEWORKS_DIR. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| - In the Migrate WebKitLegacy Headers build phase, work around make’s inability to handle |
| spaces in paths by creating a symlink to WEBKIT_LEGACY_PRIVATE_HEADERS_DIR under |
| BUILT_PRODUCTS_DIR and using the symlink as the value of |
| WEBKIT_LEGACY_PRIVATE_HEADERS_DIR. |
| - In the Postprocess WKBase.h and Postprocess WKFoundation.h build phases, add quotes to |
| account for spaces. |
| |
| * mac/MigrateHeadersFromWebKitLegacy.make: |
| Use a BUILT_PRODUCTS_DIR-based path to the framework instead of a TARGET_BUILD_DIR-based |
| one in order to avoid spaces. |
| |
| * mac/postprocess-framework-headers.sh: |
| Add quotes to account for spaces. |
| |
| 2016-01-08 Alex Christensen <achristensen@webkit.org> |
| |
| Implement download authentication with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=152878 |
| |
| Reviewed by Brady Eidson. |
| |
| * DerivedSources.make: |
| * NetworkProcess/Downloads/Download.h: |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::startDownload): |
| * NetworkProcess/Downloads/PendingDownload.cpp: Added. |
| (WebKit::PendingDownload::PendingDownload): |
| (WebKit::PendingDownload::willSendRedirectedRequest): |
| (WebKit::PendingDownload::continueWillSendRequest): |
| (WebKit::PendingDownload::canAuthenticateAgainstProtectionSpaceAsync): |
| (WebKit::PendingDownload::continueCanAuthenticateAgainstProtectionSpace): |
| (WebKit::PendingDownload::didConvertToDownload): |
| (WebKit::PendingDownload::messageSenderConnection): |
| (WebKit::PendingDownload::messageSenderDestinationID): |
| * NetworkProcess/Downloads/PendingDownload.h: |
| (WebKit::PendingDownload::PendingDownload): Deleted. |
| * NetworkProcess/Downloads/PendingDownload.messages.in: Added. |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::continueWillSendRequest): |
| The completion handler should always be called. If m_currentRequest is null, then the request will not proceed, which is the same as canceling it. |
| (WebKit::NetworkLoad::setPendingDownloadID): |
| (WebKit::NetworkLoad::setPendingDownload): |
| (WebKit::NetworkLoad::willPerformHTTPRedirection): |
| (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): |
| If this load is going to become a download, then call the PendingDownload version of didReceiveAuthenticationChallenge to communicate with the |
| UI process directly because there wasn't necessarily a web process associated with this request that will become a download. |
| * NetworkProcess/NetworkLoad.h: |
| (WebKit::NetworkLoad::pendingDownloadID): |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkDataTask::client): |
| (WebKit::NetworkDataTask::pendingDownloadID): |
| (WebKit::NetworkDataTask::pendingDownload): |
| (WebKit::NetworkDataTask::setPendingDownloadID): |
| (WebKit::NetworkDataTask::setPendingDownload): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| * PlatformMac.cmake: |
| * Shared/Authentication/AuthenticationManager.cpp: |
| (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge): |
| * Shared/Authentication/AuthenticationManager.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Network/WebResourceLoader.cpp: |
| (WebKit::WebResourceLoader::canAuthenticateAgainstProtectionSpace): |
| Removed unnecessary protection and move null check to before using the pointer it checks. |
| |
| 2016-01-07 Simon Fraser <simon.fraser@apple.com> |
| |
| Use an appropriate buffer format for swipe snapshots |
| https://bugs.webkit.org/show_bug.cgi?id=152880 |
| rdar://problem/23728299 |
| |
| Reviewed by Tim Horton. |
| |
| Choose an appropriate buffer format for swipe snapshots, and avoid converting |
| them to YUV422. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (WebKit::bufferFormat): |
| (-[WKWebView _takeViewSnapshot]): |
| |
| 2016-01-07 Alex Christensen <achristensen@webkit.org> |
| |
| Progress towards implementing downloads with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=152760 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/Downloads/Download.cpp: |
| (WebKit::Download::Download): |
| There's no need to store the unused NetworkSession&. |
| (WebKit::Download::didStart): |
| (WebKit::Download::didReceiveAuthenticationChallenge): |
| Downloads with NetworkSession are NetworkLoads until the response is received, which is after authentication |
| challenges are handled by NetworkLoad's code. |
| (WebKit::Download::didReceiveResponse): |
| * NetworkProcess/Downloads/Download.h: |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::startDownload): |
| Create a PendingDownload, which is basically a NetworkLoad that knows that it will become a Download |
| when the response is received, regardless of whether or not there is a Content-Disposition header. |
| (WebKit::DownloadManager::dataTaskBecameDownloadTask): |
| * NetworkProcess/Downloads/DownloadManager.h: |
| * NetworkProcess/Downloads/PendingDownload.h: Added. |
| (WebKit::PendingDownload::PendingDownload): |
| Added a new NetworkLoadClient for requests that will become downloads. |
| A PendingDownload contains a NetworkLoad so we can always keep them together |
| and so it can handle setting its pending download id. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| Avoid dereferencing a pointer if the NetworkSession hadn't been created when a NetworkLoad starts. |
| This shouldn't be possible, but it's good to not assume that all pointers are non-null. |
| (WebKit::NetworkLoad::cancel): |
| Add a null check in case the constructor doesn't make m_task. |
| (WebKit::NetworkLoad::convertTaskToDownload): |
| (WebKit::NetworkLoad::setPendingDownloadID): |
| Added for downloads that start with startDownload. The pending DownloadID is used to indicate that |
| this request should always become a download, regardless of whether or not the response has a |
| Content-Disposition header. |
| (WebKit::NetworkLoad::willPerformHTTPRedirection): |
| (WebKit::NetworkLoad::didReceiveResponse): |
| * NetworkProcess/NetworkLoad.h: |
| There's no need to store a DownloadID here. It's stored in the NetworkDataTask (m_task). |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkDataTask::client): |
| (WebKit::NetworkDataTask::pendingDownloadID): |
| (WebKit::NetworkDataTask::setPendingDownloadID): |
| (WebKit::NetworkDataTask::downloadID): Deleted. |
| (WebKit::NetworkDataTask::setDownloadID): Deleted. |
| Renamed downloadID and setDownloadID to pendingDownloadID and setPendingDownloadID, respectively, |
| to indicate their use. They are not the current downloadID, but they are the downloadID of the download |
| that will happen once the response is received and PolicyDownload will be returned in the completion handler. |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| Call dataTaskBecameDownloadTask after didBecomeDownload because the networkDataTask is deleted by removing it |
| from m_pendingDownloads in dataTaskBecameDownloadTask. |
| |
| 2016-01-06 Simon Fraser <simon.fraser@apple.com> |
| |
| Add a setting and preferences to enable display-list drawing. Does nothing yet. |
| https://bugs.webkit.org/show_bug.cgi?id=152807 |
| |
| Reviewed by Zalan Bujtas. |
| |
| WK2 debug pref for display-list drawing, defaults to off. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _displayListDrawingEnabled]): |
| (-[WKPreferences _setDisplayListDrawingEnabled:]): |
| * UIProcess/API/Cocoa/WKPreferencesPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2016-01-06 Daniel Bates <dabates@apple.com> |
| |
| Use code signed identifier as part of user directory suffix |
| https://bugs.webkit.org/show_bug.cgi?id=152310 |
| <rdar://problem/13352225> |
| |
| As pointed out by Sam Weinig, the year is 2016! I inadvertently added the copyright year 2015 instead of 2016. |
| |
| * Shared/mac/ChildProcessMac.mm: |
| |
| 2016-01-06 Simon Fraser <simon.fraser@apple.com> |
| |
| [iOS] Revert overflow:hidden on the body affecting viewport scale (r186786) |
| https://bugs.webkit.org/show_bug.cgi?id=152803 |
| rdar://problem/22242515 |
| |
| Reviewed by Tim Horton. |
| |
| You can't assume that if an author uses overflow:hidden on the body, they have no |
| content outside the body that is important. Sites like Google Translate put |
| abspos elements outside the body. |
| |
| So revert the change. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::mainFrameDidLayout): Go back to using contents size. |
| |
| 2016-01-06 Anders Carlsson <andersca@apple.com> |
| |
| Add a smart block pointer |
| https://bugs.webkit.org/show_bug.cgi?id=152799 |
| |
| Reviewed by Tim Horton. |
| |
| Use WTF::BlockPtr. |
| |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.mm: |
| (-[WKWebsiteDataStore fetchDataRecordsOfTypes:completionHandler:]): |
| (-[WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]): |
| (-[WKWebsiteDataStore removeDataOfTypes:forDataRecords:completionHandler:]): |
| |
| 2016-01-06 Daniel Bates <dabates@apple.com> |
| |
| Use code signed identifier as part of user directory suffix |
| https://bugs.webkit.org/show_bug.cgi?id=152310 |
| <rdar://problem/13352225> |
| |
| Reviewed by Brent Fulgham. |
| |
| * Shared/mac/ChildProcessMac.mm: |
| (WebKit::findSecCodeForProcess): Added. |
| (WebKit::ChildProcess::initializeSandbox): Modified to use an identifier |
| from the code signature of the app/tool as part of the user directory suffix. |
| |
| 2016-01-06 Brian Burg <bburg@apple.com> |
| |
| Add a WebKit SPI for registering an automation controller with RemoteInspector |
| https://bugs.webkit.org/show_bug.cgi?id=151576 |
| |
| Reviewed by Dan Bernstein and Joseph Pecoraro. |
| |
| _WKAutomationDelegate is a new SPI that allows WKProcessPool clients to decide |
| policy and implement actions for remote automation. |
| |
| The SPI's implementation connects the client's delegate to RemoteInspector::Client. |
| This allows the delegate to handle some commands, such as requestAutomationSession, |
| that come over XPC from an external test runner but are not associated with a specific |
| automation target. |
| |
| * PlatformMac.cmake: |
| * UIProcess/API/APIAutomationClient.h: Added. Boilerplate for WebKit::AutomationClient. |
| (API::AutomationClient::~AutomationClient): |
| (API::AutomationClient::allowsRemoteAutomation): |
| (API::AutomationClient::requestAutomationSession): |
| * UIProcess/API/Cocoa/WKProcessPool.mm: |
| (-[WKProcessPool _automationDelegate]): Added. |
| (-[WKProcessPool _setAutomationDelegate:]): Added. |
| (-[WKProcessPool _automationCapabilitiesDidChange]): Added. |
| * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: Add delegate. |
| * UIProcess/API/Cocoa/_WKAutomationDelegate.h: Added. |
| |
| This is a new delegate SPI of WKProcessPool; it corresponds to AutomationClient. |
| |
| * UIProcess/Cocoa/AutomationClient.h: Added. |
| * UIProcess/Cocoa/AutomationClient.mm: Added. |
| |
| This implements a bridge between RemoteInspector::Client and _WKAutomationDelegate. |
| Since the delegate can be called from JavaScriptCore, save the delegating |
| WKProcessPool and pass it as the self parameter to delegate methods. |
| |
| (WebKit::AutomationClient::AutomationClient): |
| (WebKit::AutomationClient::~AutomationClient): |
| |
| This client automatically registers and unregisters as a RemoteInspector::Client. |
| |
| (WebKit::AutomationClient::remoteAutomationAllowed): |
| (WebKit::AutomationClient::requestAutomationSession): |
| |
| Forward requests from RemoteInspector to the automation delegate. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::WebProcessPool): |
| (WebKit::WebProcessPool::setAutomationClient): Added. |
| (WebKit::WebProcessPool::updateAutomationCapabilities): Added, it notifies RemoteInspector. |
| * UIProcess/WebProcessPool.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2016-01-06 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| [EFL] Set WebKit2 process output name |
| https://bugs.webkit.org/show_bug.cgi?id=152773 |
| |
| Reviewed by Benjamin Poulain. |
| |
| If we add *WebKit* prefix to each WK2 process, it is more clear when checking what process is running. |
| So this patch sets wk2 process output name. |
| |
| * PlatformEfl.cmake: |
| |
| 2016-01-05 Alex Christensen <achristensen@webkit.org> |
| |
| Implement defersLoading with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=151818 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::NetworkLoad): |
| (WebKit::NetworkLoad::setDefersLoading): |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkDataTask::resume): |
| (WebKit::NetworkDataTask::suspend): |
| |
| 2016-01-05 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r192432): Keyboard repeat doesn't work anymore for arrow keys/spacebar |
| https://bugs.webkit.org/show_bug.cgi?id=152767 |
| <rdar://problem/24017380> |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _didHandleKeyEvent:eventWasHandled:]): |
| Instead of always bailing, call [super _handleKeyUIEvent:] if we aren't |
| in an editable area, because we won't have done so in _handleKeyUIEvent. |
| |
| It's important that the event makes it to the root UIResponder (even if |
| we handled it!) for key repeat to function. |
| |
| The double-scrolling case is still fixed because we notice the resent |
| event coming back in to us and bail if we've already seen it. |
| |
| 2016-01-05 Jer Noble <jer.noble@apple.com> |
| |
| [Mac] Exiting fullscreen via Mission Control leaves fullcreen window frontmost on desktop |
| https://bugs.webkit.org/show_bug.cgi?id=152733 |
| |
| Reviewed by Eric Carlson. |
| |
| Rather than ignore -windowDidExitFullScreen: notifications when fullscreen exit was |
| not initiated by WebKit (and the -window:startCustomAnimationToEnterFullScreenWithDuration: |
| method was not called), continue to exit fullscreen normally. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): |
| |
| 2016-01-05 Alex Christensen <achristensen@webkit.org> |
| |
| Clean up download code |
| https://bugs.webkit.org/show_bug.cgi?id=152739 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::DownloadManager): |
| (WebKit::DownloadManager::didCreateDownload): |
| (WebKit::DownloadManager::didDestroyDownload): |
| (WebKit::DownloadManager::downloadProxyConnection): |
| (WebKit::DownloadManager::downloadsAuthenticationManager): |
| * NetworkProcess/Downloads/DownloadManager.h: |
| Keep a Client& instead of a Client*. |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::downloadManager): |
| * NetworkProcess/NetworkSession.h: |
| m_sessionID is not used. There is no need to store the sessionID if it is only used in the NetworkSession constructor. |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::defaultSession): |
| (WebKit::NetworkSession::NetworkSession): |
| |
| 2016-01-04 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Allow to save and restore session |
| https://bugs.webkit.org/show_bug.cgi?id=115600 |
| |
| Reviewed by Michael Catanzaro. |
| |
| Add new API to get and resore the web view session state. |
| |
| * PlatformGTK.cmake: Add new files to compilation. |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkit_web_view_get_session_state): Create a new |
| WebKitWebViewSessionState representing the current session state. |
| (webkit_web_view_restore_session_state): Restore the web view |
| session state from the given WebKitWebViewSessionState. |
| * UIProcess/API/gtk/WebKitWebView.h: |
| * UIProcess/API/gtk/WebKitWebViewSessionState.cpp: Added. |
| (_WebKitWebViewSessionState::_WebKitWebViewSessionState): |
| (toExternalURLsPolicy): |
| (toWebCoreExternalURLsPolicy): |
| (toHTMLBodyElementType): |
| (toHTTPBodyElementType): |
| (encodeHTTPBody): |
| (encodeFrameState): |
| (encodePageState): |
| (encodeBackForwardListItemState): |
| (encodeBackForwardListState): |
| (encodeSessionState): |
| (decodeHTTPBody): |
| (decodeFrameState): |
| (decodeBackForwardListItemState): |
| (decodeSessionState): |
| (webkitWebViewSessionStateCreate): |
| (webkitWebViewSessionStateGetSessionState): |
| (webkit_web_view_session_state_new): Create a |
| WebKitWebViewSessionState from serialized data. |
| (webkit_web_view_session_state_ref): |
| (webkit_web_view_session_state_unref): |
| (webkit_web_view_session_state_serialize): Serialize the WebKitWebViewSessionState. |
| * UIProcess/API/gtk/WebKitWebViewSessionState.h: Added. |
| * UIProcess/API/gtk/WebKitWebViewSessionStatePrivate.h: Added. |
| * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols. |
| * UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Add webkit_web_view_session_state_get_type. |
| * UIProcess/API/gtk/webkit2.h: Include WebKitWebViewSessionState.h. |
| |
| 2016-01-04 Alex Christensen <achristensen@webkit.org> |
| |
| Use unique_ptr for NetworkDataTasks and references for NetworkSessionTaskClients |
| https://bugs.webkit.org/show_bug.cgi?id=152724 |
| |
| Reviewed by Andy Estes. |
| |
| There is no reason to have a NetworkSessionTaskClient* instead of a |
| NetworkSessionTaskClient& just so we can clear it in the NetworkLoad destructor, |
| which immediately calls ~NetworkDataTask. |
| Also, NetworkDataTasks are owned only by the NetworkLoad, so there's no reason to refcount them. |
| |
| * NetworkProcess/Downloads/Download.h: |
| * NetworkProcess/Downloads/DownloadManager.h: |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::~NetworkLoad): |
| * NetworkProcess/NetworkLoad.h: |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient): |
| (WebKit::NetworkDataTask::client): |
| (WebKit::NetworkDataTask::downloadID): |
| (WebKit::NetworkDataTask::setDownloadID): |
| (WebKit::NetworkDataTask::clearClient): Deleted. |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveData:]): |
| (-[WKNetworkSessionDelegate URLSession:downloadTask:didFinishDownloadingToURL:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| (WebKit::NetworkSession::~NetworkSession): |
| (WebKit::NetworkSession::createDataTaskWithRequest): |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| |
| 2016-01-04 Alex Christensen <achristensen@webkit.org> |
| |
| Progress towards implementing downloads with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=152716 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/Downloads/Download.h: |
| * NetworkProcess/Downloads/DownloadID.h: |
| (WebKit::DownloadID::DownloadID): |
| (WebKit::DownloadID::operator==): |
| (WebKit::DownloadID::operator!=): |
| (WebKit::DownloadID::downloadID): |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::startDownload): |
| * NetworkProcess/Downloads/DownloadManager.h: |
| (WebKit::DownloadManager::download): |
| (WebKit::DownloadManager::isDownloading): |
| * NetworkProcess/Downloads/cocoa/DownloadCocoa.mm: |
| (WebKit::Download::resume): |
| (WebKit::Download::platformInvalidate): |
| (WebKit::Download::platformDidFinish): |
| (WebKit::Download::start): Deleted. |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveData:]): |
| (-[WKNetworkSessionDelegate URLSession:downloadTask:didFinishDownloadingToURL:]): |
| (-[WKNetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]): |
| (-[WKNetworkSessionDelegate URLSession:downloadTask:didResumeAtOffset:expectedTotalBytes:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| |
| When using NSURLSession, a data task is converted to a download task after the connection has already |
| been established, the headers have been received, and WebCore looks at the response and decides that |
| this connection should become a download. We call the didReceiveResponse to match the behavior of |
| NSURLDownload, but this could be cleaned up later to match what is actually happening. We also do not |
| need to tell the download to start because it has already started. |
| |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| (WebKit::NetworkSession::addDownloadID): |
| (WebKit::NetworkSession::downloadID): |
| (WebKit::NetworkSession::takeDownloadID): |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| |
| NSURLSessionDownloadTask taskIdentifiers are unique to that NSURLSession, but we have one global DownloadManager |
| in the NetworkProcess. We need to have each NetworkSession keep a map of taskIdentifiers to global DownloadID. |
| |
| 2016-01-04 Tim Horton <timothy_horton@apple.com> |
| |
| Turn on gesture events when building for Yosemite |
| https://bugs.webkit.org/show_bug.cgi?id=152704 |
| rdar://problem/24042472 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2016-01-04 Tim Horton <timothy_horton@apple.com> |
| |
| Hardware keyboard key-commands stop responding when viewing PDFs |
| https://bugs.webkit.org/show_bug.cgi?id=152712 |
| <rdar://problem/23014457> |
| |
| Reviewed by Dan Bernstein. |
| |
| Maintain first responder status through any content view swapping, by |
| making WKWebView become first responder if needed, and pushing first |
| responder status down to the swapped-in content view if possible. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView becomeFirstResponder]): |
| Make the current content view first responder instead of the WKContentView, |
| in case we have a custom content view installed. |
| |
| (-[WKWebView canBecomeFirstResponder]): |
| WKWebView can always become first responder, even if none of its children can. |
| This makes it so that if a custom content view can't become first responder, |
| WKWebView will take the responsibility. |
| |
| (-[WKWebView _setHasCustomContentView:loadedMIMEType:]): |
| Return the responsibility of being first responder to the newly-installed |
| content view if WKWebView is currently the first responder (either because |
| of tab switching or because the previous content view did not support |
| being first responder), if it supports being first responder. |
| |
| 2016-01-04 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r194544. |
| https://bugs.webkit.org/show_bug.cgi?id=152711 |
| |
| This change caused assertions in existing inspector tests |
| (Requested by ryanhaddad on #webkit). |
| |
| Reverted changeset: |
| |
| "Web Inspector: reproducible debug ASSERT when inspecting the |
| inspector (WK2)" |
| https://bugs.webkit.org/show_bug.cgi?id=152080 |
| http://trac.webkit.org/changeset/194544 |
| |
| 2016-01-04 Alex Christensen <achristensen@webkit.org> |
| |
| Fix Mac CMake build after r194378. |
| |
| * CMakeLists.txt: |
| |
| 2016-01-04 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: reproducible debug ASSERT when inspecting the inspector (WK2) |
| https://bugs.webkit.org/show_bug.cgi?id=152080 |
| |
| Reviewed by Timothy Hatcher. |
| |
| We hit an assert underneath ChildProcessProxy::addMessageReceiver when opening Inspector[2] |
| because we try to add WebInpectorProxy as a message receiver twice for the same process. |
| |
| On investigating, I found several interrelated issues that caused this state of affairs: |
| |
| - WebInspectorProxy adds message receivers for inspector page's WebProcess and the |
| inspected page's WebProcess. When inspecting the inspector, we mistakenly add a receiver |
| again because the inspector is now the inspected page. |
| - We mixed up process ids when adding message receivers. |
| - invalidate() is re-entrant, causing us to try and double-remove the message receiver. |
| |
| Fix this by removing add/remove of message recievers for the inspector page when then |
| inspected page is itself an inspector page. In that case, the receivers are managed by |
| the inspector page's WebInspectorProxy instance. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::invalidate): Re-arrange to guard against useless reentrancy. |
| (WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess): |
| (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage): |
| (WebKit::WebInspectorProxy::didClose): |
| |
| 2016-01-04 Alex Christensen <achristensen@webkit.org> |
| |
| Build fix after r194536 when using NetworkSession. |
| |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::dataTaskBecameDownloadTask): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| WTFMove changed underneath me. |
| |
| 2016-01-04 Alex Christensen <achristensen@webkit.org> |
| |
| Progress towards implementing downloads with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=152576 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/Downloads/Download.cpp: |
| (WebKit::Download::Download): |
| (WebKit::Download::~Download): |
| (WebKit::Download::didStart): |
| (WebKit::Download::didReceiveAuthenticationChallenge): |
| * NetworkProcess/Downloads/Download.h: |
| (WebKit::Download::downloadID): |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::startDownload): |
| (WebKit::DownloadManager::dataTaskBecameDownloadTask): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| * NetworkProcess/Downloads/DownloadManager.h: |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::convertTaskToDownload): |
| * NetworkProcess/NetworkLoad.h: |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkDataTask::client): |
| (WebKit::NetworkDataTask::clearClient): |
| (WebKit::NetworkDataTask::downloadID): |
| (WebKit::NetworkDataTask::setDownloadID): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[WKNetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]): |
| (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| |
| 2016-01-04 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] Rename _WebKitWebContextPrivate.context to _WebKitWebContextPrivate.processPool |
| https://bugs.webkit.org/show_bug.cgi?id=152672 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UIProcess/API/gtk/WebKitDownloadClient.cpp: |
| (attachDownloadClientToContext): |
| * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp: |
| (attachInjectedBundleClientToContext): |
| * UIProcess/API/gtk/WebKitSecurityManager.cpp: |
| (registerSecurityPolicyForURIScheme): |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkitWebContextConstructed): |
| (webkitWebContextDispose): |
| (webkit_web_context_set_cache_model): |
| (webkit_web_context_get_cache_model): |
| (webkit_web_context_clear_cache): |
| (webkit_web_context_get_cookie_manager): |
| (ensureFaviconDatabase): |
| (webkit_web_context_set_favicon_database_directory): |
| (webkit_web_context_set_additional_plugins_directory): |
| (webkitWebContextGetPluginThread): |
| (webkit_web_context_set_tls_errors_policy): |
| (webkit_web_context_set_disk_cache_directory): |
| (webkit_web_context_prefetch_dns): |
| (webkit_web_context_allow_tls_certificate_for_host): |
| (webkit_web_context_set_process_model): |
| (webkit_web_context_set_web_process_count_limit): |
| (webkitWebContextStartDownload): |
| (webkitWebContextGetProcessPool): |
| (webkitWebContextCreatePageForWebView): |
| (webkitWebContextGetContext): Deleted. |
| * UIProcess/API/gtk/WebKitWebContextPrivate.h: |
| |
| 2016-01-03 Simon Fraser <simon.fraser@apple.com> |
| |
| Rename scrollPosition(Scrollbar*) to scrollOffset(ScrollbarOrientation) |
| https://bugs.webkit.org/show_bug.cgi?id=152666 |
| |
| Reviewed by Dan Bernstein. |
| |
| Scrollbar values take offsets (zero-based), so rename the accessor used |
| by scrollbars to set their value, and pass in an orientation, rather than |
| a pointer to the scrollbar. |
| |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h: |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::scrollOffset): |
| (WebKit::PDFPlugin::scrollPosition): Renamed. |
| |
| 2015-12-31 Andy Estes <aestes@apple.com> |
| |
| Replace WTF::move with WTFMove |
| https://bugs.webkit.org/show_bug.cgi?id=152601 |
| |
| Reviewed by Brady Eidson. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::postDatabaseTask): |
| (WebKit::DatabaseProcess::fetchWebsiteData): |
| (WebKit::DatabaseProcess::deleteWebsiteData): |
| (WebKit::DatabaseProcess::deleteWebsiteDataForOrigins): |
| (WebKit::DatabaseProcess::indexedDatabaseOrigins): |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp: |
| (WebKit::UniqueIDBDatabase::postTransactionOperation): |
| (WebKit::UniqueIDBDatabase::postMainThreadTask): |
| (WebKit::UniqueIDBDatabase::postDatabaseTask): |
| * NetworkProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::startDownload): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| (WebKit::DownloadManager::resumeDownload): |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm: |
| (WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate): |
| * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp: |
| (WebKit::NetworkBlobRegistry::registerBlobURL): |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::performSynchronousLoad): |
| (WebKit::NetworkConnectionToWebProcess::registerBlobURL): |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::didReceiveData): |
| (WebKit::NetworkLoad::didReceiveBuffer): |
| (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::fetchDiskCacheEntries): |
| (WebKit::NetworkProcess::fetchWebsiteData): |
| (WebKit::NetworkProcess::deleteWebsiteData): |
| (WebKit::clearDiskCacheEntries): |
| (WebKit::NetworkProcess::deleteWebsiteDataForOrigins): |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData): |
| (WebKit::NetworkResourceLoader::NetworkResourceLoader): |
| (WebKit::NetworkResourceLoader::retrieveCacheEntry): |
| (WebKit::NetworkResourceLoader::didFinishLoading): |
| (WebKit::NetworkResourceLoader::tryStoreAsCacheEntry): |
| (WebKit::NetworkResourceLoader::validateCacheEntry): |
| * NetworkProcess/NetworkResourceLoader.h: |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::NetworkCache::Cache::retrieve): |
| (WebKit::NetworkCache::Cache::store): |
| (WebKit::NetworkCache::Cache::clear): |
| * NetworkProcess/cache/NetworkCacheCoders.h: |
| * NetworkProcess/cache/NetworkCacheDataSoup.cpp: |
| (WebKit::NetworkCache::Data::empty): |
| (WebKit::NetworkCache::Data::subrange): |
| (WebKit::NetworkCache::concatenate): |
| (WebKit::NetworkCache::Data::adoptMap): |
| * NetworkProcess/cache/NetworkCacheEntry.cpp: |
| (WebKit::NetworkCache::Entry::Entry): |
| * NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp: |
| (WebKit::NetworkCache::runTaskInQueue): |
| (WebKit::NetworkCache::fillDataFromReadBuffer): |
| (WebKit::NetworkCache::IOChannel::readSyncInThread): |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: |
| (WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad): |
| (WebKit::NetworkCache::SpeculativeLoad::didFinishLoading): |
| (WebKit::NetworkCache::SpeculativeLoad::didComplete): |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: |
| (WebKit::NetworkCache::SpeculativeLoadManager::ExpiringEntry::ExpiringEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::PreloadedEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::takeCacheEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::create): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::setExistingSubresourcesEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::PendingFrameLoad): |
| (WebKit::NetworkCache::SpeculativeLoadManager::registerLoad): |
| (WebKit::NetworkCache::SpeculativeLoadManager::addPreloadedEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage): |
| (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::retrieveSubresourcesEntry): |
| * NetworkProcess/cache/NetworkCacheStatistics.cpp: |
| (WebKit::NetworkCache::Statistics::queryWasEverRequested): |
| * NetworkProcess/cache/NetworkCacheStorage.cpp: |
| (WebKit::NetworkCache::Storage::ReadOperation::finish): |
| (WebKit::NetworkCache::Storage::synchronize): |
| (WebKit::NetworkCache::Storage::dispatchReadOperation): |
| (WebKit::NetworkCache::Storage::dispatchWriteOperation): |
| (WebKit::NetworkCache::Storage::retrieve): |
| (WebKit::NetworkCache::Storage::store): |
| (WebKit::NetworkCache::Storage::traverse): |
| (WebKit::NetworkCache::Storage::clear): |
| * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp: |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry): |
| (WebKit::NetworkCache::SubresourcesEntry::updateSubresourceKeys): |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkDataTask::NetworkDataTask): |
| * NetworkProcess/soup/NetworkProcessSoup.cpp: |
| (WebKit::NetworkProcess::clearDiskCache): |
| * Platform/IPC/ArgumentCoders.h: |
| (IPC::ArgumentCoder<WTF::Optional<T>>::decode): |
| * Platform/IPC/ArgumentDecoder.cpp: |
| (IPC::ArgumentDecoder::ArgumentDecoder): |
| * Platform/IPC/ArgumentEncoder.cpp: |
| (IPC::ArgumentEncoder::addAttachment): |
| (IPC::ArgumentEncoder::releaseAttachments): |
| * Platform/IPC/Attachment.cpp: |
| (IPC::Attachment::encode): |
| * Platform/IPC/Connection.cpp: |
| (IPC::Connection::SyncMessageState::processIncomingMessage): |
| (IPC::Connection::SyncMessageState::dispatchMessages): |
| (IPC::Connection::dispatchWorkQueueMessageReceiverMessage): |
| (IPC::Connection::sendMessage): |
| (IPC::Connection::sendSyncReply): |
| (IPC::Connection::waitForMessage): |
| (IPC::Connection::sendSyncMessage): |
| (IPC::Connection::sendSyncMessageFromSecondaryThread): |
| (IPC::Connection::waitForSyncReply): |
| (IPC::Connection::processIncomingSyncReply): |
| (IPC::Connection::processIncomingMessage): |
| (IPC::Connection::sendOutgoingMessages): |
| (IPC::Connection::dispatchSyncMessage): |
| (IPC::Connection::enqueueIncomingMessage): |
| (IPC::Connection::dispatchOneMessage): |
| * Platform/IPC/Connection.h: |
| (IPC::Connection::Identifier::Identifier): |
| (IPC::Connection::send): |
| (IPC::Connection::sendSync): |
| * Platform/IPC/HandleMessage.h: |
| (IPC::handleMessage): |
| (IPC::handleMessageDelayed): |
| * Platform/IPC/MessageDecoder.cpp: |
| (IPC::MessageDecoder::MessageDecoder): |
| (IPC::MessageDecoder::setImportanceAssertion): |
| (IPC::MessageDecoder::unwrapForTesting): |
| * Platform/IPC/MessageDecoder.h: |
| (IPC::MessageDecoder::setMessageProcessingToken): |
| * Platform/IPC/MessageEncoder.cpp: |
| (IPC::MessageEncoder::wrapForTesting): |
| * Platform/IPC/MessageRecorder.cpp: |
| (IPC::MessageRecorder::recordOutgoingMessage): |
| (IPC::MessageRecorder::recordIncomingMessage): |
| (IPC::MessageRecorder::MessageProcessingToken::MessageProcessingToken): |
| * Platform/IPC/MessageSender.cpp: |
| (IPC::MessageSender::sendMessage): |
| * Platform/IPC/MessageSender.h: |
| (IPC::MessageSender::send): |
| (IPC::MessageSender::sendSync): |
| * Platform/IPC/glib/GSocketMonitor.cpp: |
| (IPC::GSocketMonitor::start): |
| * Platform/IPC/mac/ConnectionMac.mm: |
| (IPC::Connection::open): |
| (IPC::createMessageDecoder): |
| (IPC::Connection::receiveSourceEventHandler): |
| * Platform/IPC/unix/ConnectionUnix.cpp: |
| (IPC::Connection::processMessage): |
| * Platform/unix/SharedMemoryUnix.cpp: |
| (WebKit::SharedMemory::Handle::decode): |
| (WebKit::SharedMemory::Handle::releaseAttachment): |
| (WebKit::SharedMemory::Handle::adoptAttachment): |
| * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm: |
| (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate): |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::initializePluginProcess): |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::addPluginControllerProxy): |
| (WebKit::WebProcessConnection::createPluginInternal): |
| * PluginProcess/mac/PluginProcessMac.mm: |
| (WebKit::PluginProcess::platformInitializePluginProcess): |
| * Scripts/webkit/LegacyMessageReceiver-expected.cpp: |
| (Messages::WebPage::GetPluginProcessConnection::DelayedReply::DelayedReply): |
| (Messages::WebPage::GetPluginProcessConnection::DelayedReply::send): |
| (Messages::WebPage::TestMultipleAttributes::DelayedReply::DelayedReply): |
| (Messages::WebPage::TestMultipleAttributes::DelayedReply::send): |
| * Scripts/webkit/MessageReceiver-expected.cpp: |
| (Messages::WebPage::GetPluginProcessConnection::DelayedReply::DelayedReply): |
| (Messages::WebPage::GetPluginProcessConnection::DelayedReply::send): |
| (Messages::WebPage::TestMultipleAttributes::DelayedReply::DelayedReply): |
| (Messages::WebPage::TestMultipleAttributes::DelayedReply::send): |
| * Scripts/webkit/messages.py: |
| (generate_message_handler): |
| * Shared/API/APIArray.cpp: |
| (API::Array::create): |
| (API::Array::createStringArray): |
| (API::Array::copy): |
| * Shared/API/APIArray.h: |
| * Shared/API/APIDictionary.cpp: |
| (API::Dictionary::create): |
| (API::Dictionary::Dictionary): |
| (API::Dictionary::keys): |
| * Shared/API/APIPageGroupHandle.cpp: |
| (API::PageGroupHandle::create): |
| (API::PageGroupHandle::PageGroupHandle): |
| (API::PageGroupHandle::decode): |
| * Shared/API/APIString.h: |
| * Shared/API/APIURL.h: |
| (API::URL::create): |
| (API::URL::URL): |
| * Shared/API/Cocoa/RemoteObjectInvocation.h: |
| (WebKit::RemoteObjectInvocation::ReplyInfo::ReplyInfo): |
| * Shared/API/Cocoa/RemoteObjectInvocation.mm: |
| (WebKit::RemoteObjectInvocation::RemoteObjectInvocation): |
| (WebKit::RemoteObjectInvocation::decode): |
| * Shared/API/Cocoa/WKRemoteObjectCoder.mm: |
| (ensureObjectStream): |
| (createEncodedObject): |
| * Shared/API/Cocoa/_WKRemoteObjectInterface.mm: |
| (initializeMethod): |
| (-[_WKRemoteObjectInterface setClasses:forSelector:argumentIndex:ofReply:]): |
| * Shared/API/Cocoa/_WKRemoteObjectRegistry.mm: |
| (-[_WKRemoteObjectRegistry _sendInvocation:interface:]): |
| * Shared/API/c/WKArray.cpp: |
| (WKArrayCreate): |
| (WKArrayCreateAdoptingValues): |
| * Shared/API/c/WKDictionary.cpp: |
| (WKDictionaryCreate): |
| * Shared/API/c/WKSharedAPICast.h: |
| (WebKit::ProxyingRefPtr::ProxyingRefPtr): |
| * Shared/APIWebArchive.mm: |
| (API::WebArchive::WebArchive): |
| (API::WebArchive::subresources): |
| (API::WebArchive::subframeArchives): |
| * Shared/AsyncRequest.cpp: |
| (WebKit::AsyncRequest::AsyncRequest): |
| (WebKit::AsyncRequest::setAbortHandler): |
| * Shared/AsyncRequest.h: |
| * Shared/BlockingResponseMap.h: |
| (BlockingResponseMap::didReceiveResponse): |
| * Shared/ChildProcessProxy.cpp: |
| (WebKit::ChildProcessProxy::sendMessage): |
| (WebKit::ChildProcessProxy::didFinishLaunching): |
| * Shared/ChildProcessProxy.h: |
| (WebKit::ChildProcessProxy::send): |
| (WebKit::ChildProcessProxy::sendSync): |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: |
| (WebKit::CoordinatedGraphicsScene::dispatchOnMainThread): |
| (WebKit::CoordinatedGraphicsScene::dispatchOnClientRunLoop): |
| (WebKit::CoordinatedGraphicsScene::createLayer): |
| (WebKit::CoordinatedGraphicsScene::syncRemoteContent): |
| (WebKit::CoordinatedGraphicsScene::appendUpdate): |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp: |
| (WebKit::ThreadSafeCoordinatedSurface::create): |
| (WebKit::ThreadSafeCoordinatedSurface::ThreadSafeCoordinatedSurface): |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: |
| (WebKit::CompositingRunLoop::CompositingRunLoop): |
| (WebKit::CompositingRunLoop::callOnCompositingRunLoop): |
| (WebKit::ThreadedCompositor::callOnCompositingThread): |
| * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: |
| (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate): |
| (WebKit::XPCServiceInitializer): |
| * Shared/Plugins/Netscape/PluginInformation.cpp: |
| (WebKit::createPluginInformationDictionary): |
| * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h: |
| (WebKit::RemoteScrollingCoordinatorTransaction::setStateTreeToEncode): |
| * Shared/SessionTracker.cpp: |
| (WebKit::SessionTracker::setSession): |
| * Shared/UserData.cpp: |
| (WebKit::UserData::UserData): |
| (WebKit::transformGraph): |
| (WebKit::UserData::decode): |
| * Shared/WebBackForwardListItem.cpp: |
| (WebKit::WebBackForwardListItem::create): |
| (WebKit::WebBackForwardListItem::WebBackForwardListItem): |
| * Shared/WebBackForwardListItem.h: |
| (WebKit::WebBackForwardListItem::setPageState): |
| * Shared/WebCompiledContentExtension.cpp: |
| (WebKit::WebCompiledContentExtension::create): |
| (WebKit::WebCompiledContentExtension::WebCompiledContentExtension): |
| * Shared/WebCompiledContentExtensionData.h: |
| (WebKit::WebCompiledContentExtensionData::WebCompiledContentExtensionData): |
| * Shared/WebContextMenuItem.cpp: |
| (WebKit::WebContextMenuItem::submenuItemsAsAPIArray): |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<UserStyleSheet>::decode): |
| (IPC::ArgumentCoder<UserScript>::decode): |
| (IPC::ArgumentCoder<FilterOperations>::decode): |
| (IPC::ArgumentCoder<BlobPart>::decode): |
| * Shared/WebKeyboardEvent.cpp: |
| (WebKit::WebKeyboardEvent::WebKeyboardEvent): |
| * Shared/WebPreferencesStore.h: |
| (WebKit::WebPreferencesStore::Value::Value): |
| * Shared/WebRenderLayer.cpp: |
| (WebKit::WebRenderLayer::createArrayFromLayerList): |
| * Shared/WebRenderObject.cpp: |
| (WebKit::WebRenderObject::WebRenderObject): |
| * Shared/WebTouchEvent.cpp: |
| (WebKit::WebTouchEvent::WebTouchEvent): |
| * Shared/efl/WebEventFactory.cpp: |
| (WebKit::WebEventFactory::createWebTouchEvent): |
| * Shared/gtk/NativeWebKeyboardEventGtk.cpp: |
| (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent): |
| * Shared/gtk/NativeWebTouchEventGtk.cpp: |
| (WebKit::NativeWebTouchEvent::NativeWebTouchEvent): |
| * Shared/gtk/WebContextMenuItemGtk.cpp: |
| (WebKit::WebContextMenuItemGtk::WebContextMenuItemGtk): |
| * Shared/gtk/WebEventFactory.cpp: |
| (WebKit::WebEventFactory::createWebKeyboardEvent): |
| (WebKit::WebEventFactory::createWebTouchEvent): |
| * Shared/linux/SeccompFilters/OpenSyscall.cpp: |
| (WebKit::OpenSyscall::createFromOpenatContext): |
| (WebKit::OpenSyscall::createFromCreatContext): |
| (WebKit::OpenSyscallResult::encode): |
| * Shared/mac/ObjCObjectGraph.mm: |
| (WebKit::ObjCObjectGraph::decode): |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| (WebKit::RemoteLayerBackingStore::takeFrontContextPendingFlush): |
| (WebKit::RemoteLayerBackingStore::Buffer::discard): |
| * Shared/mac/RemoteLayerTreeTransaction.h: |
| (WebKit::RemoteLayerTreeTransaction::setCallbackIDs): |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode): |
| (WebKit::RemoteLayerTreeTransaction::decode): |
| (WebKit::RemoteLayerTreeTransaction::setCreatedLayers): |
| (WebKit::RemoteLayerTreeTransaction::setDestroyedLayerIDs): |
| (WebKit::RemoteLayerTreeTransaction::setLayerIDsWithNewlyUnreachableBackingStore): |
| * Shared/soup/WebCoreArgumentCodersSoup.cpp: |
| (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData): |
| * UIProcess/API/APIProcessPoolConfiguration.h: |
| * UIProcess/API/APISessionState.cpp: |
| (API::SessionState::create): |
| (API::SessionState::SessionState): |
| * UIProcess/API/APIUserContentExtension.cpp: |
| (API::UserContentExtension::UserContentExtension): |
| * UIProcess/API/APIUserContentExtension.h: |
| * UIProcess/API/APIUserContentExtensionStore.cpp: |
| (API::compiledToFile): |
| (API::createExtension): |
| (API::UserContentExtensionStore::compileContentExtension): |
| * UIProcess/API/APIUserScript.h: |
| * UIProcess/API/APIWebsiteDataRecord.cpp: |
| (API::WebsiteDataRecord::create): |
| (API::WebsiteDataRecord::WebsiteDataRecord): |
| * UIProcess/API/APIWebsiteDataStore.cpp: |
| (API::WebsiteDataStore::create): |
| (API::WebsiteDataStore::WebsiteDataStore): |
| * UIProcess/API/C/WKApplicationCacheManager.cpp: |
| (WKApplicationCacheManagerGetApplicationCacheOrigins): |
| * UIProcess/API/C/WKKeyValueStorageManager.cpp: |
| (WKKeyValueStorageManagerGetKeyValueStorageOrigins): |
| (WKKeyValueStorageManagerGetStorageDetailsByOrigin): |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageCopySessionState): |
| (WKPageRestoreFromSessionState): |
| (WKPageSetPageContextMenuClient): |
| (WKPageSetPageFindMatchesClient): |
| (WKPageSetPageLoaderClient): |
| (WebKit::RunJavaScriptAlertResultListener::create): |
| (WebKit::RunJavaScriptAlertResultListener::RunJavaScriptAlertResultListener): |
| (WebKit::RunJavaScriptConfirmResultListener::create): |
| (WebKit::RunJavaScriptConfirmResultListener::RunJavaScriptConfirmResultListener): |
| (WebKit::RunJavaScriptPromptResultListener::create): |
| (WebKit::RunJavaScriptPromptResultListener::RunJavaScriptPromptResultListener): |
| (WKPageSetPageUIClient): |
| (WKPageSetPageNavigationClient): |
| (WKPageCopyRelatedPages): |
| * UIProcess/API/C/WKResourceCacheManager.cpp: |
| (WKResourceCacheManagerGetCacheOrigins): |
| * UIProcess/API/C/WKSessionStateRef.cpp: |
| (WKSessionStateCreateFromData): |
| * UIProcess/API/C/mac/WKContextPrivateMac.mm: |
| (WKContextGetInfoForInstalledPlugIns): |
| * UIProcess/API/C/mac/WKPagePrivateMac.mm: |
| (-[WKObservablePageState initWithPage:]): |
| * UIProcess/API/Cocoa/WKBrowsingContextGroup.mm: |
| (createWKArray): |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| (-[WKWebView _takeViewSnapshot]): |
| (-[WKWebView _restoreFromSessionStateData:]): |
| (-[WKWebView _setInputDelegate:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (LazyInitialized::set): |
| * UIProcess/API/Cocoa/WKWebsiteDataStore.mm: |
| (-[WKWebsiteDataStore fetchDataRecordsOfTypes:completionHandler:]): |
| * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm: |
| (-[_WKProcessPoolConfiguration setCachePartitionedURLSchemes:]): |
| * UIProcess/API/Cocoa/_WKSessionState.mm: |
| (-[_WKSessionState _initWithSessionState:]): |
| * UIProcess/API/Cocoa/_WKUserContentExtensionStore.mm: |
| (-[_WKUserContentExtensionStore compileContentExtensionForIdentifier:encodedContentExtension:completionHandler:]): |
| * UIProcess/API/efl/ewk_database_manager.cpp: |
| (EwkDatabaseManager::getDatabaseOrigins): |
| * UIProcess/API/gtk/WebKitContextMenuItem.cpp: |
| (webkitContextMenuItemToWebContextMenuItemGtk): |
| * UIProcess/API/gtk/WebKitFileChooserRequest.cpp: |
| (webkit_file_chooser_request_select_files): |
| * UIProcess/API/gtk/WebKitNotificationProvider.cpp: |
| (WebKitNotificationProvider::notificationCloseCallback): |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkit_web_context_prefetch_dns): |
| (webkitWebContextCreatePageForWebView): |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkit_web_view_get_snapshot): |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseTouchEvent): |
| (webkitWebViewBaseCreateWebPage): |
| * UIProcess/API/gtk/WebKitWebsiteDataManager.cpp: |
| (webkitWebsiteDataManagerCreate): |
| (webkitWebsiteDataManagerGetDataStore): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:processPool:configuration:webView:]): |
| (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): |
| (-[WKView initWithFrame:configurationRef:]): |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::tryAppLink): |
| (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction): |
| (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationResponse): |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::WebViewImpl): |
| (WebKit::WebViewImpl::takeViewSnapshot): |
| * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp: |
| (WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate): |
| * UIProcess/Databases/DatabaseProcessProxy.cpp: |
| (WebKit::DatabaseProcessProxy::fetchWebsiteData): |
| (WebKit::DatabaseProcessProxy::deleteWebsiteData): |
| (WebKit::DatabaseProcessProxy::deleteWebsiteDataForOrigins): |
| * UIProcess/GenericCallback.h: |
| (WebKit::CallbackMap::put): |
| * UIProcess/InspectorServer/WebSocketServer.cpp: |
| (WebKit::WebSocketServer::didAcceptConnection): |
| * UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp: |
| (WebKit::connectionCallback): |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::NetworkProcessProxy::fetchWebsiteData): |
| * UIProcess/Notifications/WebNotificationManagerProxy.cpp: |
| (WebKit::WebNotificationManagerProxy::providerDidCloseNotifications): |
| * UIProcess/Notifications/WebNotificationProvider.cpp: |
| (WebKit::WebNotificationProvider::clearNotifications): |
| * UIProcess/PageLoadState.cpp: |
| (WebKit::PageLoadState::Transaction::Transaction): |
| * UIProcess/Plugins/PlugInAutoStartProvider.cpp: |
| (WebKit::PlugInAutoStartProvider::autoStartOriginsTableCopy): |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::pluginProcessToken): |
| (WebKit::PluginProcessManager::fetchWebsiteData): |
| (WebKit::PluginProcessManager::deleteWebsiteData): |
| (WebKit::PluginProcessManager::deleteWebsiteDataForHostNames): |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::fetchWebsiteData): |
| (WebKit::PluginProcessProxy::deleteWebsiteData): |
| (WebKit::PluginProcessProxy::deleteWebsiteDataForHostNames): |
| * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp: |
| (WebKit::RemoteScrollingCoordinatorProxy::updateScrollingTree): |
| * UIProcess/StatisticsRequest.cpp: |
| (WebKit::StatisticsRequest::completedRequest): |
| * UIProcess/Storage/LocalStorageDatabase.cpp: |
| (WebKit::LocalStorageDatabase::create): |
| (WebKit::LocalStorageDatabase::LocalStorageDatabase): |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::TransientLocalStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::StorageArea::create): |
| (WebKit::StorageManager::StorageArea::StorageArea): |
| (WebKit::StorageManager::LocalStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::getSessionStorageOrigins): |
| (WebKit::StorageManager::getLocalStorageOrigins): |
| (WebKit::StorageManager::getLocalStorageOriginDetails): |
| (WebKit::StorageManager::createTransientLocalStorageMap): |
| (WebKit::StorageManager::createSessionStorageMap): |
| * UIProcess/UserContent/WebScriptMessageHandler.cpp: |
| (WebKit::WebScriptMessageHandler::create): |
| (WebKit::WebScriptMessageHandler::WebScriptMessageHandler): |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::addUserStyleSheet): |
| * UIProcess/ViewGestureController.cpp: |
| (WebKit::ViewGestureController::SnapshotRemovalTracker::start): |
| (WebKit::ViewGestureController::SnapshotRemovalTracker::fireRemovalCallbackImmediately): |
| * UIProcess/WebBackForwardList.cpp: |
| (WebKit::WebBackForwardList::addItem): |
| (WebKit::WebBackForwardList::backListAsAPIArrayWithLimit): |
| (WebKit::WebBackForwardList::forwardListAsAPIArrayWithLimit): |
| (WebKit::WebBackForwardList::removeAllItems): |
| (WebKit::WebBackForwardList::clear): |
| (WebKit::WebBackForwardList::restoreFromState): |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::getHostnamesWithCookies): |
| (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy): |
| * UIProcess/WebFormClient.cpp: |
| (WebKit::WebFormClient::willSubmitForm): |
| * UIProcess/WebFrameListenerProxy.h: |
| (WebKit::WebFrameListenerProxy::setNavigation): |
| * UIProcess/WebFrameProxy.h: |
| (WebKit::WebFrameProxy::contentFilterDidBlockLoad): |
| * UIProcess/WebGrammarDetail.cpp: |
| (WebKit::WebGrammarDetail::guesses): |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::createInspectorPage): |
| * UIProcess/WebMediaCacheManagerProxy.cpp: |
| (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::ExceededDatabaseQuotaRecords::add): |
| (WebKit::WebPageProxy::create): |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::setHistoryClient): |
| (WebKit::WebPageProxy::setNavigationClient): |
| (WebKit::WebPageProxy::setLoaderClient): |
| (WebKit::WebPageProxy::setPolicyClient): |
| (WebKit::WebPageProxy::setFormClient): |
| (WebKit::WebPageProxy::setUIClient): |
| (WebKit::WebPageProxy::setFindClient): |
| (WebKit::WebPageProxy::setFindMatchesClient): |
| (WebKit::WebPageProxy::setDiagnosticLoggingClient): |
| (WebKit::WebPageProxy::setContextMenuClient): |
| (WebKit::WebPageProxy::reattachToWebProcessForReload): |
| (WebKit::WebPageProxy::reattachToWebProcessWithItem): |
| (WebKit::WebPageProxy::loadRequest): |
| (WebKit::WebPageProxy::loadFile): |
| (WebKit::WebPageProxy::loadData): |
| (WebKit::WebPageProxy::loadHTMLString): |
| (WebKit::WebPageProxy::reload): |
| (WebKit::WebPageProxy::didChangeBackForwardList): |
| (WebKit::WebPageProxy::setInitialFocus): |
| (WebKit::WebPageProxy::validateCommand): |
| (WebKit::WebPageProxy::handleWheelEvent): |
| (WebKit::WebPageProxy::processNextQueuedWheelEvent): |
| (WebKit::WebPageProxy::restoreFromSessionState): |
| (WebKit::WebPageProxy::runJavaScriptInMainFrame): |
| (WebKit::WebPageProxy::getRenderTreeExternalRepresentation): |
| (WebKit::WebPageProxy::getSourceForFrame): |
| (WebKit::WebPageProxy::getContentsAsString): |
| (WebKit::WebPageProxy::getBytecodeProfile): |
| (WebKit::WebPageProxy::getContentsAsMHTMLData): |
| (WebKit::WebPageProxy::getSelectionOrContentsAsString): |
| (WebKit::WebPageProxy::getSelectionAsWebArchiveData): |
| (WebKit::WebPageProxy::getMainResourceDataOfFrame): |
| (WebKit::WebPageProxy::getResourceDataFromFrame): |
| (WebKit::WebPageProxy::getWebArchiveOfFrame): |
| (WebKit::WebPageProxy::decidePolicyForNavigationAction): |
| (WebKit::WebPageProxy::decidePolicyForNewWindowAction): |
| (WebKit::WebPageProxy::decidePolicyForResponse): |
| (WebKit::WebPageProxy::sendMessage): |
| (WebKit::WebPageProxy::exceededDatabaseQuota): |
| (WebKit::WebPageProxy::getMarkedRangeAsync): |
| (WebKit::WebPageProxy::getSelectedRangeAsync): |
| (WebKit::WebPageProxy::characterIndexForPointAsync): |
| (WebKit::WebPageProxy::firstRectForCharacterRangeAsync): |
| (WebKit::WebPageProxy::takeSnapshot): |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::setHistoryClient): |
| (WebKit::WebProcessPool::setDownloadClient): |
| (WebKit::WebProcessPool::createWebPage): |
| (WebKit::WebProcessPool::getStatistics): |
| (WebKit::WebProcessPool::pluginInfoStoreDidLoadPlugins): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::createWebPage): |
| (WebKit::WebProcessProxy::addBackForwardItem): |
| (WebKit::WebProcessProxy::fetchWebsiteData): |
| * UIProcess/WebsiteData/WebsiteDataRecord.cpp: |
| (WebKit::WebsiteDataRecord::add): |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::WebsiteDataStore::create): |
| (WebKit::WebsiteDataStore::WebsiteDataStore): |
| (WebKit::WebsiteDataStore::fetchData): |
| (WebKit::WebsiteDataStore::removeData): |
| (WebKit::WebsiteDataStore::mediaKeyOrigins): |
| * UIProcess/efl/InputMethodContextEfl.cpp: |
| (WebKit::InputMethodContextEfl::InputMethodContextEfl): |
| * UIProcess/efl/InputMethodContextEfl.h: |
| (WebKit::InputMethodContextEfl::create): |
| * UIProcess/efl/WebContextMenuProxyEfl.cpp: |
| (WebKit::WebContextMenuProxyEfl::showContextMenu): |
| * UIProcess/efl/WebUIPopupMenuClient.cpp: |
| (WebUIPopupMenuClient::showPopupMenu): |
| * UIProcess/gtk/InputMethodFilter.cpp: |
| (WebKit::InputMethodFilter::filterKeyEvent): |
| * UIProcess/gtk/KeyBindingTranslator.cpp: |
| (WebKit::KeyBindingTranslator::commandsForKeyEvent): |
| * UIProcess/gtk/RedirectedXCompositeWindow.cpp: |
| (WebKit::XDamageNotifier::add): |
| (WebKit::RedirectedXCompositeWindow::RedirectedXCompositeWindow): |
| (WebKit::RedirectedXCompositeWindow::surface): |
| * UIProcess/ios/WKActionSheetAssistant.mm: |
| (-[WKActionSheetAssistant showImageSheet]): |
| (-[WKActionSheetAssistant showLinkSheet]): |
| * UIProcess/ios/WKContentView.mm: |
| (-[WKContentView _commonInitializationWithProcessPool:configuration:]): |
| (-[WKContentView initWithFrame:processPool:configuration:webView:]): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView actionSheetAssistant:decideActionsForElement:defaultActions:]): |
| * UIProcess/ios/WKGeolocationProviderIOS.mm: |
| (-[WKGeolocationProviderIOS geolocationAuthorizationGranted]): |
| (-[WKGeolocationProviderIOS geolocationAuthorizationDenied]): |
| * UIProcess/ios/WKPDFView.mm: |
| (-[WKPDFView actionSheetAssistant:decideActionsForElement:defaultActions:]): |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::selectWithGesture): |
| (WebKit::WebPageProxy::updateSelectionWithTouches): |
| (WebKit::WebPageProxy::requestAutocorrectionData): |
| (WebKit::WebPageProxy::applyAutocorrection): |
| (WebKit::WebPageProxy::executeEditCommand): |
| (WebKit::WebPageProxy::selectTextWithGranularityAtPoint): |
| (WebKit::WebPageProxy::selectPositionAtBoundaryWithDirection): |
| (WebKit::WebPageProxy::moveSelectionAtBoundaryWithDirection): |
| (WebKit::WebPageProxy::selectPositionAtPoint): |
| (WebKit::WebPageProxy::beginSelectionInDirection): |
| (WebKit::WebPageProxy::updateSelectionWithExtentPoint): |
| (WebKit::WebPageProxy::updateSelectionWithExtentPointAndBoundary): |
| (WebKit::WebPageProxy::requestDictationContext): |
| (WebKit::WebPageProxy::requestAutocorrectionContext): |
| (WebKit::WebPageProxy::getLookupContextAtPoint): |
| (WebKit::WebPageProxy::selectWithTwoTouches): |
| (WebKit::WebPageProxy::moveSelectionByOffset): |
| (WebKit::WebPageProxy::focusNextAssistedNode): |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::createModelAndInterface): |
| * UIProcess/ios/forms/WKFileUploadPanel.mm: |
| (-[WKFileUploadPanel _chooseFiles:displayString:iconImage:]): |
| * UIProcess/mac/LegacySessionStateCoding.cpp: |
| (WebKit::HistoryEntryDataEncoder::finishEncoding): |
| (WebKit::decodeFormData): |
| (WebKit::decodeBackForwardTreeNode): |
| (WebKit::decodeSessionHistoryEntries): |
| * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm: |
| (WebKit::RemoteLayerTreeDrawingAreaProxy::dispatchAfterEnsuringDrawing): |
| * UIProcess/mac/ViewGestureController.h: |
| (WebKit::ViewGestureController::setCustomSwipeViews): |
| * UIProcess/mac/ViewGestureControllerMac.mm: |
| (WebKit::ViewGestureController::PendingSwipeTracker::PendingSwipeTracker): |
| * UIProcess/mac/ViewSnapshotStore.mm: |
| (WebKit::ViewSnapshot::create): |
| (WebKit::ViewSnapshot::ViewSnapshot): |
| (WebKit::ViewSnapshot::setSurface): |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::attributedSubstringForCharacterRangeAsync): |
| (WebKit::WebPageProxy::fontAtSelection): |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (contextMenuItems): |
| (WKBundlePageCopyOriginsWithApplicationCache): |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp: |
| (WKBundlePageOverlayCreate): |
| * WebProcess/InjectedBundle/API/efl/ewk_extension.cpp: |
| (EwkExtension::didCreatePage): |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp: |
| (webkitFrameGetOrCreate): |
| (didInitiateLoadForResource): |
| (willSendRequestForFrame): |
| (didReceiveResponseForResource): |
| (didReceiveContentLengthForResource): |
| (didFinishLoadForResource): |
| (didFailLoadForResource): |
| (webkitWebPageDidReceiveMessage): |
| * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm: |
| (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::addUserScript): |
| (WebKit::InjectedBundle::addUserStyleSheet): |
| * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp: |
| (WebKit::InjectedBundleBackForwardListItem::children): |
| * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp: |
| (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems): |
| * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp: |
| (WebKit::InjectedBundlePageFormClient::willSendSubmitEvent): |
| (WebKit::InjectedBundlePageFormClient::willSubmitForm): |
| (WebKit::InjectedBundlePageFormClient::didAssociateFormControls): |
| * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp: |
| (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame): |
| * WebProcess/Network/WebResourceLoader.cpp: |
| (WebKit::WebResourceLoader::willSendRequest): |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_PostURL): |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::scheduleTimer): |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::convertStringToKeyCodes): |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::PDFPlugin): |
| * WebProcess/Plugins/PDF/PDFPlugin.mm: |
| (-[WKPDFHUDAnimationDelegate initWithAnimationCompletionHandler:]): |
| * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm: |
| (WebKit::PDFPluginChoiceAnnotation::createAnnotationElement): |
| * WebProcess/Storage/StorageAreaMap.cpp: |
| (WebKit::StorageAreaMap::create): |
| (WebKit::StorageAreaMap::StorageAreaMap): |
| * WebProcess/Storage/StorageNamespaceImpl.cpp: |
| (WebKit::StorageNamespaceImpl::storageArea): |
| * WebProcess/UserContent/WebUserContentController.cpp: |
| (WebKit::WebUserContentController::addUserContentExtensions): |
| * WebProcess/WebCoreSupport/SessionStateConversion.cpp: |
| (WebKit::toHTTPBody): |
| (WebKit::toFrameState): |
| (WebKit::applyFrameState): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm): |
| (WebKit::WebFrameLoaderClient::contentFilterDidBlockLoad): |
| * WebProcess/WebCoreSupport/WebPasteboardOverrides.cpp: |
| (WebKit::WebPasteboardOverrides::addOverride): |
| * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp: |
| (WebKit::WebEditorClient::executePendingEditorCommands): |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::findStringMatches): |
| * WebProcess/WebPage/ViewUpdateDispatcher.cpp: |
| (WebKit::ViewUpdateDispatcher::dispatchVisibleContentRectUpdate): |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::createSubframe): |
| (WebKit::WebFrame::create): |
| (WebKit::WebFrame::WebFrame): |
| (WebKit::WebFrame::didReceivePolicyDecision): |
| (WebKit::WebFrame::childFrames): |
| (WebKit::WebFrame::createSelectionSnapshot): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setInjectedBundleContextMenuClient): |
| (WebKit::WebPage::setInjectedBundleFormClient): |
| (WebKit::WebPage::setInjectedBundleUIClient): |
| (WebKit::WebPage::trackedRepaintRects): |
| (WebKit::WebPage::createDocumentLoader): |
| * WebProcess/WebPage/WebPageGroupProxy.cpp: |
| (WebKit::WebPageGroupProxy::addUserContentExtension): |
| * WebProcess/WebPage/WebPageOverlay.cpp: |
| (WebKit::WebPageOverlay::create): |
| (WebKit::WebPageOverlay::WebPageOverlay): |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: |
| (WebKit::LayerTreeHostGtk::RenderFrameScheduler::RenderFrameScheduler): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::computePagesForPrintingAndStartDrawingToPDF): |
| * WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm: |
| (WebKit::PlatformCAAnimationRemote::setTimingFunction): |
| (WebKit::PlatformCAAnimationRemote::setValues): |
| (WebKit::PlatformCAAnimationRemote::setTimingFunctions): |
| * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm: |
| (WebKit::RemoteLayerTreeContext::layerWasCreated): |
| (WebKit::RemoteLayerTreeContext::buildTransaction): |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: |
| (WebKit::RemoteLayerTreeDrawingArea::flushLayers): |
| (WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::create): |
| (WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::BackingStoreFlusher): |
| (WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::flush): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::transformObjectsToHandles): |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| * WebProcess/ios/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenInterfaceContext::setLayerHostingContext): |
| (WebKit::WebVideoFullscreenManager::createModelAndInterface): |
| (WebKit::WebVideoFullscreenManager::setSeekableRanges): |
| * WebProcess/soup/WebKitSoupRequestInputStream.cpp: |
| (webkitSoupRequestInputStreamDidFailWithError): |
| |
| 2016-01-01 Simon Fraser <simon.fraser@apple.com> |
| |
| Fix the iOS and EFL builds, after an over-eager commit-queue commit. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::restoreViewState): |
| * WebProcess/WebPage/efl/WebPageEfl.cpp: |
| (WebKit::WebPage::restorePageState): |
| |
| 2016-01-01 Simon Fraser <simon.fraser@apple.com> |
| |
| Fix naming in HistoryItem to refer to scrollPositions |
| https://bugs.webkit.org/show_bug.cgi?id=152646 |
| |
| Reviewed by Zalan Bujtas. |
| |
| HistoryItem stores a scrollPosition, so call it that. |
| |
| No behavior change. |
| |
| * Shared/SessionState.cpp: |
| (WebKit::FrameState::encode): |
| (WebKit::FrameState::decode): |
| * Shared/SessionState.h: |
| * UIProcess/mac/LegacySessionStateCoding.cpp: |
| (WebKit::encodeFrameStateNode): |
| (WebKit::decodeBackForwardTreeNode): |
| * WebProcess/WebCoreSupport/SessionStateConversion.cpp: |
| (WebKit::toFrameState): |
| (WebKit::applyFrameState): |
| |
| 2016-01-01 Simon Fraser <simon.fraser@apple.com> |
| |
| Fix reload and programmatic scrolling in RTL documents |
| https://bugs.webkit.org/show_bug.cgi?id=152639 |
| |
| Reviewed by Zalan Bujtas. |
| |
| Reloading a left-scrolled RTL document would cause the content to appear |
| at an odd offset, and programmatic sideways scrolls in RTL documents also |
| jumped to the wrong location. |
| |
| Fix by resolving offset/position confusion in ScrollableArea::scrollPositionChanged() |
| and the scrolling tree. |
| |
| ScrollableArea::scrollPositionChanged() was erroneously passing a scrollPosition |
| to setScrollOffset(). |
| |
| ScrollingTreeFrameScrollingNode* were confused about offsets and positions. It |
| turns out that the layer position is just -scrollPosition, but minimumScrollPosition() |
| and maximumScrollPosition() need fixing to return positions, not offsets. |
| |
| ScrollingTreeFrameScrollingNode::viewToContentsOffset() was also doing incorrect |
| math with scrollOrigin, which was detected by a failing test. |
| |
| Add more logging to the Scrolling channel. |
| |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h: |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::setScrollOffset): |
| |
| 2016-01-01 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [SOUP] REGRESSION(r192761): Broke resource URIs for applications that use g_resource_load in a web extension |
| https://bugs.webkit.org/show_bug.cgi?id=152634 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Load GResource URIs locally, not in the network process. Applications expect calling |
| g_resource_load in a web extension to make it possible to load resource URIs, but that |
| doesn't work now that the network process is in use. Loading them locally solves this. |
| |
| * WebProcess/Network/WebLoaderStrategy.cpp: |
| (WebKit::WebLoaderStrategy::scheduleLoad): |
| |
| 2016-01-01 Jeff Miller <jeffm@apple.com> |
| |
| Update user-visible copyright strings to include 2016 |
| https://bugs.webkit.org/show_bug.cgi?id=152531 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist: |
| * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist: |
| * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist: |
| * Info.plist: |
| * NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist: |
| * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist: |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist: |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist: |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist: |
| * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist: |
| |
| 2015-12-31 Simon Fraser <simon.fraser@apple.com> |
| |
| Rename documentScrollOffsetRelativeTo* functions |
| https://bugs.webkit.org/show_bug.cgi?id=152632 |
| |
| Reviewed by Zalan Bujtas. |
| |
| ScrollView::documentScrollOffsetRelativeTo* functions return scroll positions, |
| not offsets, so rename them and fix their return types, and fix callers. Make |
| their code more similar. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::determinePrimarySnapshottedPlugIn): |
| (WebKit::WebPage::plugInIntersectsSearchRect): |
| |
| 2015-12-31 Simon Fraser <simon.fraser@apple.com> |
| |
| [iOS WK2] Fix incorrect scrollPosition handling |
| https://bugs.webkit.org/show_bug.cgi?id=152630 |
| |
| Reviewed by Zalan Bujtas. |
| |
| WebPage::updateVisibleContentRects() was setting the ScrollView's scroll position |
| to a scrollOffset, which was counteracted by ScrollView::unobscuredContentRect() |
| adding the scrollOrigin to the scrollPosition, which resulted in the correct |
| rects, but an incorrect scrollPosition. Fix. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::updateVisibleContentRects): |
| |
| 2015-12-31 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| Unreviewed, fix a log message |
| |
| * WebProcess/Network/WebResourceLoader.cpp: |
| (WebKit::WebResourceLoader::didReceiveResponse): |
| |
| 2015-12-31 David Kilzer <ddkilzer@apple.com> |
| |
| Stop using USE(CFNETWORK) path on iOS |
| https://bugs.webkit.org/show_bug.cgi?id=142540 |
| |
| Step 1/2: Do everything but turn off USE(CFNETWORK) internally. |
| |
| Original patch by Antti Koivisto <antti@apple.com> on 2015-03-10 |
| Reviewed by Daniel Bates. |
| |
| * NetworkProcess/Downloads/ios/DownloadIOS.mm: This is now the |
| USE(CFNETWORK) && !USE(NETWORK_SESSION) code path. |
| * NetworkProcess/Downloads/mac/DownloadMac.mm: This is now the |
| !USE(CFNETWORK) && !USE(NETWORK_SESSION) code path. Make use of |
| NSURLDownloadSPI.h. Ignore a deprecated delcaration warning now |
| that we're using actual header declarations internally. |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::initializeNetworkProcess): Update for |
| iOS to use NSURLConnection loader. |
| |
| 2015-12-31 Andy Estes <aestes@apple.com> |
| |
| Fix warnings uncovered by migrating to WTF_MOVE |
| https://bugs.webkit.org/show_bug.cgi?id=152601 |
| |
| Reviewed by Daniel Bates. |
| |
| * UIProcess/API/APIUIClient.h: |
| (API::UIClient::actionsForElement): Moving a return value passed to the function by value is redundant, since it |
| will be implicitly moved in this case. |
| * UIProcess/Cocoa/UIDelegate.mm: |
| (WebKit::UIDelegate::UIClient::actionsForElement): Ditto. |
| |
| 2015-12-30 Simon Fraser <simon.fraser@apple.com> |
| |
| Add explicit conversions between scrollOffset and scrollPostion, and use them in a few places |
| https://bugs.webkit.org/show_bug.cgi?id=152594 |
| |
| Reviewed by Sam Weinig. |
| |
| Add functions to ScrollableArea to convert between scrollPosition and scrollOffset, |
| and use them in places where code did the math with scrollOrigin. |
| |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: |
| (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect): |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: |
| (WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect): |
| |
| 2015-12-30 Zan Dobersek <zdobersek@igalia.com> |
| |
| [TexMap] Clean up TextureMapperAnimation, TextureMapperAnimations |
| https://bugs.webkit.org/show_bug.cgi?id=152112 |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: |
| (IPC::ArgumentCoder<TextureMapperAnimation>::decode): |
| |
| 2015-12-29 Simon Fraser <simon.fraser@apple.com> |
| |
| Remove ScrollView::scrollOffset() in preparation for scrollOffset vs. scrollPosition clarification |
| https://bugs.webkit.org/show_bug.cgi?id=152589 |
| |
| Reviewed by Sam Weinig. |
| |
| Current code uses scrollOffset vs. scrollPosition interchangeably, and confusingly. |
| Longer term, I plan to make "scrollPosition" be the value that is relative to the |
| contents, i.e. affected by scrollOrigin, and "scrollOffset" be the zero-based value |
| that's used to set scrollbar values. |
| |
| To prepare for this, remove ScrollView::scrollOffset(), which is just the |
| scrollPosition as an IntSize. |
| |
| Add some typedefs in ScrollableArea, which will slowly propagate through the |
| code as position vs. offset is clarified. |
| |
| * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp: |
| (WebKit::InjectedBundleRangeHandle::renderedImage): |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h: |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::scrollPosition): |
| (WebKit::PDFPlugin::minimumScrollPosition): |
| (WebKit::PDFPlugin::maximumScrollPosition): |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::scrollOffset): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::scrollMainFrameIfNotAtMaxScrollPosition): |
| (WebKit::WebPage::updateMainFrameScrollOffsetPinning): |
| |
| 2015-12-25 Andy Estes <aestes@apple.com> |
| |
| Stop moving local objects in return statements |
| https://bugs.webkit.org/show_bug.cgi?id=152557 |
| |
| Reviewed by Brady Eidson. |
| |
| Calling std::move() on a local object in a return statement prevents the compiler from applying the return value optimization. |
| |
| Clang can warn about these mistakes with -Wpessimizing-move, although only when std::move() is called directly. |
| I found these issues by temporarily replacing WTF::move with std::move and recompiling. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::ExceededDatabaseQuotaRecords::createRecord): |
| |
| 2015-12-26 Joonghun Park <jh718.park@samsung.com> |
| |
| [WK2][EFL] Use eina_file_path_join at platformDefaultIconDatabasePath in WebProcessPoolEfl |
| https://bugs.webkit.org/show_bug.cgi?id=152565 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Use eina_file_path_join and EINA_PATH_SEP_S at platformDefaultIconDatabasePath |
| instead of operator+ and separator "/" respectively |
| to concatenate paths. |
| |
| * UIProcess/API/efl/APIWebsiteDataStoreEfl.cpp: |
| * UIProcess/efl/WebProcessPoolEfl.cpp: |
| (WebKit::WebProcessPool::platformDefaultIconDatabasePath): |
| |
| 2015-12-25 David Kilzer <ddkilzer@apple.com> |
| |
| ResourceError should store failingURL as URL instead of String to avoid reparsing and to address FIXME comments in ResourceErrorCF.cpp and ResourceErrorMac.mm |
| <http://webkit.org/b/146391> |
| |
| Reviewed by Antti Koivisto. |
| |
| * NetworkProcess/Downloads/efl/DownloadSoupErrorsEfl.cpp: |
| (WebKit::platformDownloadNetworkError): |
| * NetworkProcess/Downloads/gtk/DownloadSoupErrorsGtk.cpp: |
| (WebKit::platformDownloadNetworkError): |
| * NetworkProcess/Downloads/soup/DownloadSoup.cpp: |
| (WebKit::DownloadClient::didReceiveResponse): |
| * NetworkProcess/Downloads/soup/DownloadSoupErrors.h: |
| * Shared/soup/WebCoreArgumentCodersSoup.cpp: |
| (IPC::ArgumentCoder<ResourceError>::encodePlatformData): |
| (IPC::ArgumentCoder<ResourceError>::decodePlatformData): |
| * UIProcess/API/gtk/WebKitLoaderClient.cpp: |
| (LoaderClient::didFailProvisionalLoadWithErrorForFrame): |
| (LoaderClient::didFailLoadWithErrorForFrame): |
| * UIProcess/API/gtk/WebKitURISchemeRequest.cpp: |
| (webkit_uri_scheme_request_finish_error): |
| * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp: |
| (WebKit::internalError): |
| * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp: |
| (WebKit::internalError): |
| - Update for type change of 'failingURL' argument to |
| ResourceError(). |
| |
| 2015-12-23 Simon Fraser <simon.fraser@apple.com> |
| |
| Use "constrainedBetween" in more places |
| https://bugs.webkit.org/show_bug.cgi?id=152543 |
| |
| Reviewed by Zalan Bujtas. |
| |
| Replace code that contrains points via shrunkTo/expandedTo() with calls |
| to constrainedBetween(), and implement constrainedBetween() on IntPoint, |
| FloatPoint and LayoutPoint. |
| |
| Convert some functions that return points to more modern syntax. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (constrainContentOffset): |
| |
| 2015-12-22 Hunseop Jeong <hs85.jeong@samsung.com> |
| |
| [EFL] ewk_application_cache_manager test failed after r193812 |
| https://bugs.webkit.org/show_bug.cgi?id=152498 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Need to enable the offline_web_application_cache for the ewk_application_cache_manager test. |
| |
| * UIProcess/API/efl/tests/test_ewk2_application_cache_manager.cpp: |
| (TEST_F): |
| |
| 2015-12-22 Andy Estes <aestes@apple.com> |
| |
| [CF] Replace CFNetwork-related WebKitSystemInterface calls with SPI |
| https://bugs.webkit.org/show_bug.cgi?id=152463 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Replaced WebkitSystemInterface calls that wrapped CFNetwork SPI with direct calls to SPI that is now forward |
| declared in CFNetworkSPI.h. |
| |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: |
| (WebKit::initializeNetworkSettings): |
| * NetworkProcess/mac/NetworkProcessMac.mm: |
| (WebKit::overrideSystemProxies): |
| * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: |
| (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts): |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| |
| 2015-12-22 Brent Fulgham <bfulgham@apple.com> |
| |
| Allow JavaScript to iterate over plugins for local SecurityOrigins |
| https://bugs.webkit.org/show_bug.cgi?id=152489 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| The 'getWebVisiblePluginInfo' is filtering plugins, even when we want to list |
| all plugins. To avoid this, we check the Document's SecurityOrigin. If no such |
| origin exists, we construct a SecurityOrigin from the URL. |
| |
| If the relevant SecurityOrigin satsifies 'isLocal', we show all plugins. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::getWebVisiblePluginInfo): |
| |
| 2015-12-21 Hunseop Jeong <hs85.jeong@samsung.com> |
| |
| [EFL] test_ewk2_context failed after r192808 |
| https://bugs.webkit.org/show_bug.cgi?id=151846 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| As we can make the single WebProcess behavior by setting the miximum number |
| of WebProcess to 1 after r192808, I remove the ewk_context_process_model_{set|get} |
| apis and add the ewk_context_web_process_count_limit_{set|get} apis and tests. |
| |
| * UIProcess/API/efl/ewk_context.cpp: |
| (EwkContext::EwkContext): |
| (EwkContext::setProcessCountLimit): |
| (EwkContext::processCountLimit): |
| (ewk_context_web_process_count_limit_set): |
| (ewk_context_web_process_count_limit_get): |
| (EwkContext::setProcessModel): Deleted. |
| (EwkContext::processModel): Deleted. |
| (ewk_context_process_model_set): Deleted. |
| (ewk_context_process_model_get): Deleted. |
| * UIProcess/API/efl/ewk_context.h: |
| * UIProcess/API/efl/ewk_context_private.h: |
| * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp: |
| (EWK2UnitTest::EWK2UnitTestBase::SetUp): |
| * UIProcess/API/efl/tests/test_ewk2_context.cpp: |
| (TEST_F): Changed the ewk_context_{web|network}_process_model tests to |
| ewk_context_{web|network}_process_count_limit tests. |
| |
| 2015-12-21 Joonghun Park <jh718.park@samsung.com> |
| |
| [WK2][EFL] Use cacheDirectoryFileSystemRepresentation and websiteDataDirectoryFileSystemRepresentation |
| to refactor APIWebsiteDataStoreEfl |
| https://bugs.webkit.org/show_bug.cgi?id=152475 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Use cacheDirectoryFileSystemRepresentation and websiteDataDirectoryFileSystemRepresentation |
| instead of to use efreet_cache_home_get |
| and efreet_data_home_get directly. |
| And also use EINA_PATH_SEP_S instead of "/" as directory separator, |
| and WebCore::pathByAppendingComponent instead of operator+. |
| |
| * UIProcess/API/efl/APIWebsiteDataStoreEfl.cpp: |
| (API::WebsiteDataStore::defaultApplicationCacheDirectory): |
| (API::WebsiteDataStore::defaultNetworkCacheDirectory): |
| (API::WebsiteDataStore::defaultIndexedDBDatabaseDirectory): |
| (API::WebsiteDataStore::defaultLocalStorageDirectory): |
| (API::WebsiteDataStore::defaultMediaKeysStorageDirectory): |
| (API::WebsiteDataStore::defaultWebSQLDatabaseDirectory): |
| (API::WebsiteDataStore::cacheDirectoryFileSystemRepresentation): |
| (API::WebsiteDataStore::websiteDataDirectoryFileSystemRepresentation): |
| |
| 2015-12-21 Antti Koivisto <antti@apple.com> |
| |
| Factor NetworkResourceLoader code for storing a cache entry into a function |
| https://bugs.webkit.org/show_bug.cgi?id=152467 |
| |
| Reviewed by Andreas Kling. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::didFinishLoading): |
| |
| Having m_cacheEntryForValidation already implies canUseCache() so remove the test from this path. |
| Move storing to the end of the function so we don't delay DidFinishResourceLoad message on it. |
| |
| (WebKit::NetworkResourceLoader::sendBufferMaybeAborting): |
| (WebKit::NetworkResourceLoader::tryStoreAsCacheEntry): |
| |
| Factor to a function. |
| Remove m_response.isHTTP() test as it is covered by NetworkCache::store(). |
| Remove !isPrivateSession test as it is covered by NetworkResourceLoader::canUseCache(). |
| |
| (WebKit::NetworkResourceLoader::didRetrieveCacheEntry): |
| * NetworkProcess/NetworkResourceLoader.h: |
| |
| 2015-12-21 Antti Koivisto <antti@apple.com> |
| |
| Limit cached redirect chain length |
| https://bugs.webkit.org/show_bug.cgi?id=152477 |
| |
| Reviewed by Andreas Kling. |
| |
| Networking layer prevents cycles and limits the redirect chain length so creating cache cycles is difficult. |
| For robustness the network cache should still limit the maximum redirect chain length. |
| |
| This patch adds a limit of five redirects both when storing and retrieving cache entries. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::canUseCache): |
| (WebKit::NetworkResourceLoader::canUseCachedRedirect): |
| (WebKit::NetworkResourceLoader::willSendRedirectedRequest): |
| (WebKit::NetworkResourceLoader::continueWillSendRequest): |
| (WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry): |
| * NetworkProcess/NetworkResourceLoader.h: |
| |
| 2015-12-21 Dan Bernstein <mitz@apple.com> |
| |
| Different and incorrect flags are passed to sendSync when accessibility is enabled, SpinRunLoopWhileWaitingForReply |
| https://bugs.webkit.org/show_bug.cgi?id=126021 |
| |
| Reviewed by Darin Adler. |
| |
| Get rid of SpinRunLoopWhileWaitingForReply because it’s not used anymore. |
| |
| * Platform/IPC/Connection.cpp: |
| (IPC::Connection::waitForSyncReply): Removed the SpinRunLoopWhileWaitingForReply branch. |
| |
| * Platform/IPC/Connection.h: Removed SpinRunLoopWhileWaitingForReply. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel): Don’t check |
| WebPage::synchronousMessagesShouldSpinRunLoop() and don’t specify |
| SpinRunLoopWhileWaitingForReply. |
| (WebKit::WebChromeClient::runJavaScriptAlert): Ditto. |
| (WebKit::WebChromeClient::runJavaScriptConfirm): Ditto. |
| (WebKit::WebChromeClient::runJavaScriptPrompt): Ditto. |
| (WebKit::WebChromeClient::print): Ditto. |
| (WebKit::WebChromeClient::exceededDatabaseQuota): Ditto. |
| (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota): Ditto. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): Ditto. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::synchronousMessagesShouldSpinRunLoop): Deleted. |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2015-12-20 Joonghun Park <jh718.park@samsung.com> |
| |
| [WK2][EFL] Use WebsiteDataStore instead of WebDatabaseManager which has been deleted in r194295 |
| https://bugs.webkit.org/show_bug.cgi?id=152460 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Use WebsiteDataStore to support EFL WebDatabase API and to fix build break. |
| |
| * PlatformEfl.cmake: |
| * UIProcess/API/APIWebsiteDataStore.cpp: |
| * UIProcess/API/efl/APIWebsiteDataStoreEfl.cpp: Copied from Source/WebKit2/UIProcess/API/APIWebsiteDataStore.cpp. |
| (API::WebsiteDataStore::defaultApplicationCacheDirectory): |
| (API::WebsiteDataStore::defaultNetworkCacheDirectory): |
| (API::WebsiteDataStore::defaultIndexedDBDatabaseDirectory): |
| (API::WebsiteDataStore::defaultLocalStorageDirectory): |
| (API::WebsiteDataStore::defaultMediaKeysStorageDirectory): |
| (API::WebsiteDataStore::defaultWebSQLDatabaseDirectory): |
| (API::WebsiteDataStore::cacheDirectoryFileSystemRepresentation): |
| (API::WebsiteDataStore::websiteDataDirectoryFileSystemRepresentation): |
| (API::WebsiteDataStore::defaultDataStoreConfiguration): |
| * UIProcess/API/efl/ewk_context.cpp: |
| (EwkContext::EwkContext): |
| * UIProcess/API/efl/ewk_database_manager.cpp: |
| (EwkDatabaseManager::EwkDatabaseManager): |
| (EwkDatabaseManager::getDatabaseOrigins): |
| * UIProcess/API/efl/ewk_database_manager_private.h: |
| * UIProcess/efl/WebProcessPoolEfl.cpp: |
| (WebKit::WebProcessPool::legacyPlatformDefaultApplicationCacheDirectory): |
| (WebKit::WebProcessPool::legacyPlatformDefaultWebSQLDatabaseDirectory): |
| (WebKit::WebProcessPool::legacyPlatformDefaultIndexedDBDatabaseDirectory): |
| (WebKit::WebProcessPool::legacyPlatformDefaultLocalStorageDirectory): |
| (WebKit::WebProcessPool::legacyPlatformDefaultMediaKeysStorageDirectory): |
| (WebKit::WebProcessPool::legacyPlatformDefaultNetworkCacheDirectory): |
| |
| 2015-12-20 Dan Bernstein <mitz@apple.com> |
| |
| Remove unused setToolbarHeight |
| https://bugs.webkit.org/show_bug.cgi?id=152466 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::platformSetToolbarHeight): Deleted. |
| * UIProcess/WebInspectorProxy.h: |
| (WebKit::WebInspectorProxy::setToolbarHeight): Deleted. |
| * UIProcess/WebInspectorProxy.messages.in: |
| * UIProcess/efl/WebInspectorProxyEfl.cpp: |
| (WebKit::WebInspectorProxy::platformSetToolbarHeight): Deleted. |
| * UIProcess/gtk/WebInspectorProxyGtk.cpp: |
| (WebKit::WebInspectorProxy::platformSetToolbarHeight): Deleted. |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformSetToolbarHeight): Deleted. |
| * WebProcess/WebPage/WebInspectorUI.cpp: |
| (WebKit::WebInspectorUI::setToolbarHeight): Deleted. |
| * WebProcess/WebPage/WebInspectorUI.h: |
| |
| 2015-12-19 Dan Bernstein <mitz@apple.com> |
| |
| [Mac] WebKit contains dead source code for OS X Mavericks and earlier |
| https://bugs.webkit.org/show_bug.cgi?id=152462 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| - Removed build setting definitions for OS X 10.9 and earlier, and simplified defintions |
| that became uniform across all OS X versions as a result: |
| |
| * Configurations/BaseTarget.xcconfig: |
| * Configurations/BaseXPCService.xcconfig: |
| * Configurations/DebugRelease.xcconfig: |
| * Configurations/FeatureDefines.xcconfig: |
| * Configurations/Version.xcconfig: |
| * Configurations/WebKit.xcconfig: |
| |
| - Removed the definition of BUNDLE_LOCALIZATION_KEY: |
| |
| * Configurations/WebContentService.Development.xcconfig: |
| * Configurations/WebContentService.xcconfig: |
| |
| - Added CFBundleFollowParentLocalization set to true: |
| |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist: |
| |
| * WebKit2.xcodeproj/project.pbxproj: Removed the “Add CFBundle Localization Info.plist Key” |
| script build phases from the Web Content Service targets. |
| |
| - Simplified expressions involving __MAC_OS_X_VERSION_MIN_REQUIRED and removed code that was |
| never getting compiled: |
| |
| * DatabaseProcess/mac/com.apple.WebKit.Databases.sb.in: |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: |
| * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: |
| * Platform/IPC/mac/ConnectionMac.mm: |
| * Platform/IPC/mac/ImportanceAssertion.h: |
| * Platform/mac/MenuUtilities.h: |
| * Platform/mac/MenuUtilities.mm: |
| * Platform/mac/StringUtilities.h: |
| * Platform/mac/StringUtilities.mm: |
| * Shared/API/Cocoa/WKFoundation.h: |
| * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm: |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| * UIProcess/mac/PageClientImpl.mm: |
| * UIProcess/mac/WKImmediateActionController.h: |
| * UIProcess/mac/WKImmediateActionController.mm: |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| * WebProcess/WebPage/FindController.cpp: |
| * WebProcess/WebPage/WebPage.cpp: |
| * WebProcess/com.apple.WebProcess.sb.in: |
| * config.h: |
| |
| 2015-12-18 Antti Koivisto <antti@apple.com> |
| |
| Cache redirects as separate entries |
| https://bugs.webkit.org/show_bug.cgi?id=152424 |
| |
| Reviewed by Alex Christensen. |
| |
| We are currently caching redirect chains. This has correctness issues and can be inefficient in cases |
| where multiple URLs redirect to the same destination. |
| |
| After this patch we write a cache entry for each redirect individually. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::sharedWillSendRedirectedRequest): |
| * NetworkProcess/NetworkLoad.h: |
| (WebKit::NetworkLoad::currentRequest): |
| (WebKit::NetworkLoad::clearCurrentRequest): |
| * NetworkProcess/NetworkLoadClient.h: |
| |
| Add original request as a parameter for willSendRedirectedRequest. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::~NetworkResourceLoader): |
| (WebKit::NetworkResourceLoader::canUseCache): |
| |
| Factor to a function. |
| |
| (WebKit::NetworkResourceLoader::isSynchronous): |
| (WebKit::NetworkResourceLoader::start): |
| (WebKit::NetworkResourceLoader::retrieveCacheEntry): |
| |
| Factor to a function. |
| Call dispatchWillSendRequestForCacheEntry for cached redirects. |
| |
| (WebKit::NetworkResourceLoader::startNetworkLoad): |
| |
| Make this take request as argument instead of always loading originalRequest(). |
| |
| (WebKit::NetworkResourceLoader::abort): |
| (WebKit::NetworkResourceLoader::didFinishLoading): |
| |
| Remove redirect chain code. |
| Store cache entry for current request instead of the original request. |
| |
| (WebKit::NetworkResourceLoader::didFailLoading): |
| (WebKit::NetworkResourceLoader::willSendRedirectedRequest): |
| |
| Write cache entry for redirect. |
| |
| (WebKit::NetworkResourceLoader::continueWillSendRequest): |
| |
| If we are playing back cached redirect continue with another cache lookup. |
| |
| (WebKit::NetworkResourceLoader::didRetrieveCacheEntry): |
| |
| No need to synthesize fake willSendRequest anymore. |
| |
| (WebKit::NetworkResourceLoader::validateCacheEntry): |
| (WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry): |
| |
| Route via web process willSendRequest so cached redirects looks exactly like network ones. |
| |
| (WebKit::NetworkResourceLoader::messageSenderConnection): |
| * NetworkProcess/NetworkResourceLoader.h: |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::NetworkCache::makeUseDecision): |
| |
| Ignore validation headers for cached redirects. |
| |
| (WebKit::NetworkCache::makeRetrieveDecision): |
| (WebKit::NetworkCache::makeStoreDecision): |
| (WebKit::NetworkCache::Cache::retrieve): |
| (WebKit::NetworkCache::Cache::store): |
| |
| Rename originalRequest -> request since it is not really the original request anymore in all cases. |
| |
| (WebKit::NetworkCache::Cache::storeRedirect): |
| |
| Stored redirects include the network layer generated ResourceRequest instead of body data. |
| |
| (WebKit::NetworkCache::Cache::update): |
| * NetworkProcess/cache/NetworkCache.h: |
| * NetworkProcess/cache/NetworkCacheEntry.cpp: |
| (WebKit::NetworkCache::Entry::Entry): |
| |
| New constructor for making redirect entries. |
| |
| (WebKit::NetworkCache::Entry::encodeAsStorageRecord): |
| (WebKit::NetworkCache::Entry::decodeStorageRecord): |
| |
| Encoding support. |
| |
| * NetworkProcess/cache/NetworkCacheEntry.h: |
| (WebKit::NetworkCache::Entry::varyingRequestHeaders): |
| (WebKit::NetworkCache::Entry::redirectRequest): |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: |
| (WebKit::NetworkCache::SpeculativeLoad::~SpeculativeLoad): |
| (WebKit::NetworkCache::SpeculativeLoad::willSendRedirectedRequest): |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: |
| * NetworkProcess/cache/NetworkCacheStatistics.cpp: |
| (WebKit::NetworkCache::cachedEntryReuseFailureToDiagnosticKey): |
| |
| 2015-12-18 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| Avoid triggering clang's -Wundefined-bool-conversion |
| https://bugs.webkit.org/show_bug.cgi?id=152408 |
| |
| Reviewed by Mark Lam. |
| |
| Use ASSERT_THIS_GC_OBJECT_INHERITS where needed. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::callMethod): |
| (WebKit::JSNPObject::callObject): |
| (WebKit::JSNPObject::callConstructor): |
| (WebKit::JSNPObject::deleteProperty): |
| |
| 2015-12-15 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of WebDatabaseManager, it's been replaced by WebsiteDataStore |
| https://bugs.webkit.org/show_bug.cgi?id=152318 |
| |
| Reviewed by Tim Horton. |
| |
| Build fixes by Ossy. |
| |
| * DerivedSources.make: |
| * Shared/API/APIObject.h: |
| * Shared/API/c/WKBase.h: |
| * UIProcess/API/C/WKAPICast.h: |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetDatabaseManager): Deleted. |
| * UIProcess/API/C/WKContext.h: |
| * UIProcess/API/C/WKDatabaseManager.cpp: Removed. |
| (WKDatabaseManagerGetTypeID): Deleted. |
| (WKDatabaseManagerGetOriginKey): Deleted. |
| (WKDatabaseManagerGetOriginQuotaKey): Deleted. |
| (WKDatabaseManagerGetOriginUsageKey): Deleted. |
| (WKDatabaseManagerGetDatabaseDetailsKey): Deleted. |
| (WKDatabaseManagerGetDatabaseDetailsNameKey): Deleted. |
| (WKDatabaseManagerGetDatabaseDetailsDisplayNameKey): Deleted. |
| (WKDatabaseManagerGetDatabaseDetailsExpectedUsageKey): Deleted. |
| (WKDatabaseManagerGetDatabaseDetailsCurrentUsageKey): Deleted. |
| (WKDatabaseManagerGetDatabaseDetailsCreationTimeKey): Deleted. |
| (WKDatabaseManagerGetDatabaseDetailsModificationTimeKey): Deleted. |
| (WKDatabaseManagerSetClient): Deleted. |
| (WKDatabaseManagerGetDatabasesByOrigin): Deleted. |
| (WKDatabaseManagerGetDatabaseOrigins): Deleted. |
| (WKDatabaseManagerDeleteDatabasesWithNameForOrigin): Deleted. |
| (WKDatabaseManagerDeleteDatabasesForOrigin): Deleted. |
| (WKDatabaseManagerDeleteAllDatabases): Deleted. |
| (WKDatabaseManagerSetQuotaForOrigin): Deleted. |
| * UIProcess/API/C/WKDatabaseManager.h: Removed. |
| * UIProcess/WebDatabaseManagerProxy.cpp: Removed. |
| (WebKit::WebDatabaseManagerProxy::supplementName): Deleted. |
| (WebKit::WebDatabaseManagerProxy::originKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::originQuotaKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::originUsageKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::databaseDetailsKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::databaseDetailsNameKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::databaseDetailsDisplayNameKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::databaseDetailsExpectedUsageKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::databaseDetailsCurrentUsageKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::databaseDetailsCreationTimeKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::databaseDetailsModificationTimeKey): Deleted. |
| (WebKit::WebDatabaseManagerProxy::create): Deleted. |
| (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy): Deleted. |
| (WebKit::WebDatabaseManagerProxy::~WebDatabaseManagerProxy): Deleted. |
| (WebKit::WebDatabaseManagerProxy::initializeClient): Deleted. |
| (WebKit::WebDatabaseManagerProxy::processPoolDestroyed): Deleted. |
| (WebKit::WebDatabaseManagerProxy::processDidClose): Deleted. |
| (WebKit::WebDatabaseManagerProxy::shouldTerminate): Deleted. |
| (WebKit::WebDatabaseManagerProxy::refWebContextSupplement): Deleted. |
| (WebKit::WebDatabaseManagerProxy::derefWebContextSupplement): Deleted. |
| (WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin): Deleted. |
| (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin): Deleted. |
| (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins): Deleted. |
| (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins): Deleted. |
| (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin): Deleted. |
| (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin): Deleted. |
| (WebKit::WebDatabaseManagerProxy::deleteAllDatabases): Deleted. |
| (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin): Deleted. |
| (WebKit::WebDatabaseManagerProxy::didModifyOrigin): Deleted. |
| (WebKit::WebDatabaseManagerProxy::didModifyDatabase): Deleted. |
| * UIProcess/WebDatabaseManagerProxy.h: Removed. |
| * UIProcess/WebDatabaseManagerProxy.messages.in: Removed. |
| * UIProcess/WebDatabaseManagerProxyClient.cpp: Removed. |
| (WebKit::WebDatabaseManagerProxyClient::didModifyOrigin): Deleted. |
| (WebKit::WebDatabaseManagerProxyClient::didModifyDatabase): Deleted. |
| * UIProcess/WebDatabaseManagerProxyClient.h: Removed. |
| * UIProcess/WebProcessPool.cpp: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| * WebProcess/WebCoreSupport/WebDatabaseManager.cpp: Removed. |
| (WebKit::WebDatabaseManager::supplementName): Deleted. |
| (WebKit::WebDatabaseManager::WebDatabaseManager): Deleted. |
| (WebKit::WebDatabaseManager::initialize): Deleted. |
| (WebKit::WebDatabaseManager::getDatabasesByOrigin): Deleted. |
| (WebKit::WebDatabaseManager::getDatabaseOrigins): Deleted. |
| (WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin): Deleted. |
| (WebKit::WebDatabaseManager::deleteDatabasesForOrigin): Deleted. |
| (WebKit::WebDatabaseManager::deleteAllDatabases): Deleted. |
| (WebKit::WebDatabaseManager::closeAllDatabases): Deleted. |
| (WebKit::WebDatabaseManager::setQuotaForOrigin): Deleted. |
| (WebKit::WebDatabaseManager::dispatchDidModifyOrigin): Deleted. |
| (WebKit::WebDatabaseManager::dispatchDidModifyDatabase): Deleted. |
| * WebProcess/WebCoreSupport/WebDatabaseManager.h: Removed. |
| * WebProcess/WebCoreSupport/WebDatabaseManager.messages.in: Removed. |
| * WebProcess/WebCoreSupport/ios/WebDatabaseManagerIOS.mm: Removed. |
| (WebKit::WebDatabaseManager::dispatchDidAddNewOrigin): Deleted. |
| (WebKit::WebDatabaseManager::dispatchDidDeleteDatabase): Deleted. |
| (WebKit::WebDatabaseManager::dispatchDidDeleteDatabaseOrigin): Deleted. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::processWillSuspendImminently): |
| (WebKit::m_webSQLiteDatabaseTracker): Deleted. |
| |
| 2015-12-18 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] Unreviewed, fix GtkDoc after r193620 |
| |
| * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: |
| |
| 2015-12-18 Dan Bernstein <mitz@apple.com> |
| |
| WebPage::didCompleteUserMediaPermissionCheck and WebPage::didReceiveUserMediaPermissionDecision are exported |
| https://bugs.webkit.org/show_bug.cgi?id=152429 |
| |
| Reviewed by Tim Horton. |
| |
| * WebProcess/WebPage/WebPage.h: Removed WK_EXPORT specifiers from these two declarations. |
| |
| 2015-12-18 Alex Christensen <achristensen@webkit.org> |
| |
| Move networking code from Shared to NetworkProcess |
| https://bugs.webkit.org/show_bug.cgi?id=152421 |
| |
| Reviewed by Antti Koivisto. |
| |
| Since recently removing the non-NetworkProcess configurations, this code is no longer shared with the WebProcess. |
| |
| * CMakeLists.txt: |
| * DerivedSources.make: |
| * NetworkProcess/CustomProtocols: Copied from Source/WebKit2/Shared/Network/CustomProtocols. |
| * NetworkProcess/Downloads: Copied from Source/WebKit2/Shared/Downloads. |
| * NetworkProcess/Downloads/Download.cpp: Copied from Source/WebKit2/Shared/Downloads/Download.cpp. |
| * NetworkProcess/Downloads/Download.h: Copied from Source/WebKit2/Shared/Downloads/Download.h. |
| * NetworkProcess/Downloads/DownloadID.h: Copied from Source/WebKit2/Shared/Downloads/DownloadID.h. |
| * NetworkProcess/Downloads/DownloadManager.cpp: Copied from Source/WebKit2/Shared/Downloads/DownloadManager.cpp. |
| * NetworkProcess/Downloads/DownloadManager.h: Copied from Source/WebKit2/Shared/Downloads/DownloadManager.h. |
| * NetworkProcess/NetworkProcessCreationParameters.cpp: Copied from Source/WebKit2/Shared/Network/NetworkProcessCreationParameters.cpp. |
| * NetworkProcess/NetworkProcessCreationParameters.h: Copied from Source/WebKit2/Shared/Network/NetworkProcessCreationParameters.h. |
| * NetworkProcess/NetworkProcessSupplement.h: Copied from Source/WebKit2/Shared/Network/NetworkProcessSupplement.h. |
| * NetworkProcess/NetworkResourceLoadParameters.cpp: Copied from Source/WebKit2/Shared/Network/NetworkResourceLoadParameters.cpp. |
| * NetworkProcess/NetworkResourceLoadParameters.h: Copied from Source/WebKit2/Shared/Network/NetworkResourceLoadParameters.h. |
| * PlatformEfl.cmake: |
| * PlatformGTK.cmake: |
| * PlatformMac.cmake: |
| * Shared/Downloads: Removed. |
| * Shared/Downloads/Download.cpp: Removed. |
| * Shared/Downloads/Download.h: Removed. |
| * Shared/Downloads/DownloadAuthenticationClient.cpp: Removed. |
| * Shared/Downloads/DownloadAuthenticationClient.h: Removed. |
| * Shared/Downloads/DownloadID.h: Removed. |
| * Shared/Downloads/DownloadManager.cpp: Removed. |
| * Shared/Downloads/DownloadManager.h: Removed. |
| * Shared/Downloads/cocoa: Removed. |
| * Shared/Downloads/cocoa/DownloadCocoa.mm: Removed. |
| * Shared/Downloads/efl: Removed. |
| * Shared/Downloads/efl/DownloadSoupErrorsEfl.cpp: Removed. |
| * Shared/Downloads/gtk: Removed. |
| * Shared/Downloads/gtk/DownloadSoupErrorsGtk.cpp: Removed. |
| * Shared/Downloads/ios: Removed. |
| * Shared/Downloads/ios/DownloadIOS.mm: Removed. |
| * Shared/Downloads/mac: Removed. |
| * Shared/Downloads/mac/DownloadMac.mm: Removed. |
| * Shared/Downloads/soup: Removed. |
| * Shared/Downloads/soup/DownloadSoup.cpp: Removed. |
| * Shared/Downloads/soup/DownloadSoupErrors.h: Removed. |
| * Shared/Network: Removed. |
| * Shared/Network/CustomProtocols: Removed. |
| * Shared/Network/CustomProtocols/Cocoa: Removed. |
| * Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm: Removed. |
| * Shared/Network/CustomProtocols/CustomProtocolManager.h: Removed. |
| * Shared/Network/CustomProtocols/CustomProtocolManager.messages.in: Removed. |
| * Shared/Network/CustomProtocols/soup: Removed. |
| * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp: Removed. |
| * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h: Removed. |
| * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp: Removed. |
| * Shared/Network/NetworkProcessCreationParameters.cpp: Removed. |
| * Shared/Network/NetworkProcessCreationParameters.h: Removed. |
| * Shared/Network/NetworkProcessSupplement.h: Removed. |
| * Shared/Network/NetworkResourceLoadParameters.cpp: Removed. |
| * Shared/Network/NetworkResourceLoadParameters.h: Removed. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2015-12-18 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| LayerTreeHostGtk triggers -Wunused-private-field |
| https://bugs.webkit.org/show_bug.cgi?id=152410 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Remove the unused member variable. |
| |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.h: |
| |
| 2015-12-18 Alex Christensen <achristensen@webkit.org> |
| |
| Add types for DownloadID and TaskIdentifier |
| https://bugs.webkit.org/show_bug.cgi?id=152401 |
| |
| Reviewed by Brady Eidson. |
| |
| DownloadID and TaskIdentifier used to both be just uint64_t's. |
| It is confusing to distinguish between them, so now they both have names. |
| We need a HashMap<TaskIdentifier, DownloadID> instead of a HashMap<uint64_t, uint64_t>. |
| |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::storageSession): |
| (WebKit::NetworkConnectionToWebProcess::startDownload): |
| (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): |
| * NetworkProcess/NetworkConnectionToWebProcess.h: |
| * NetworkProcess/NetworkConnectionToWebProcess.messages.in: |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::deleteWebsiteDataForOrigins): |
| (WebKit::NetworkProcess::downloadRequest): |
| (WebKit::NetworkProcess::resumeDownload): |
| (WebKit::NetworkProcess::cancelDownload): |
| (WebKit::NetworkProcess::getNetworkProcessStatistics): |
| (WebKit::NetworkProcess::logDiagnosticMessage): |
| (WebKit::NetworkProcess::logDiagnosticMessageWithResult): |
| (WebKit::NetworkProcess::logDiagnosticMessageWithValue): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::createDataTaskWithRequest): |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| (WebKit::NetworkDataTask::resume): |
| (WebKit::NetworkDataTask::taskIdentifier): Deleted. |
| * Shared/Downloads/Download.cpp: |
| (WebKit::Download::Download): |
| (WebKit::Download::messageSenderDestinationID): |
| * Shared/Downloads/Download.h: |
| (WebKit::Download::downloadID): |
| * Shared/Downloads/DownloadID.h: Added. |
| (WebKit::DownloadID::DownloadID): |
| (WebKit::DownloadID::operator==): |
| (WebKit::DownloadID::downloadID): |
| (IPC::ArgumentCoder<WebKit::DownloadID>::encode): |
| (IPC::ArgumentCoder<WebKit::DownloadID>::decode): |
| (WTF::DownloadIDHash::hash): |
| (WTF::DownloadIDHash::equal): |
| (WTF::HashTraits<WebKit::DownloadID>::emptyValue): |
| (WTF::HashTraits<WebKit::DownloadID>::constructDeletedValue): |
| (WTF::HashTraits<WebKit::DownloadID>::isDeletedValue): |
| * Shared/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::DownloadManager): |
| (WebKit::DownloadManager::startDownload): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| (WebKit::DownloadManager::resumeDownload): |
| (WebKit::DownloadManager::cancelDownload): |
| * Shared/Downloads/DownloadManager.h: |
| (WebKit::DownloadManager::isDownloading): |
| * UIProcess/API/C/WKDownload.cpp: |
| (WKDownloadGetID): |
| (WKDownloadCopyRequest): |
| * UIProcess/Downloads/DownloadProxy.h: |
| (WebKit::DownloadProxy::downloadID): |
| (WebKit::DownloadProxy::request): |
| (WebKit::DownloadProxy::resumeData): |
| * UIProcess/Downloads/DownloadProxyMap.cpp: |
| (WebKit::DownloadProxyMap::createDownloadProxy): |
| (WebKit::DownloadProxyMap::downloadFinished): |
| (WebKit::DownloadProxyMap::processDidClose): |
| * UIProcess/Downloads/DownloadProxyMap.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::receivedPolicyDecision): |
| (WebKit::WebPageProxy::frameDidBecomeFrameSet): |
| (WebKit::WebPageProxy::decidePolicyForNavigationAction): |
| (WebKit::WebPageProxy::decidePolicyForResponse): |
| (WebKit::WebPageProxy::decidePolicyForResponseSync): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::invalidatePolicyListener): |
| (WebKit::WebFrame::didReceivePolicyDecision): |
| (WebKit::WebFrame::startDownload): |
| (WebKit::WebFrame::convertMainResourceLoadToDownload): |
| * WebProcess/WebPage/WebFrame.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setSessionID): |
| (WebKit::WebPage::didReceivePolicyDecision): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2015-12-17 Dan Bernstein <mitz@apple.com> |
| |
| Fixed a typo from r194022. |
| |
| * Configurations/WebKit.xcconfig: Changed PlugInProcessShim.dylib to PluginProcessShim.dylib. |
| |
| 2015-12-17 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r194250 and r194254. |
| https://bugs.webkit.org/show_bug.cgi?id=152414 |
| |
| broke api tests (Requested by alexchristensen on #webkit). |
| |
| Reverted changesets: |
| |
| "Add types for DownloadID and TaskIdentifier" |
| https://bugs.webkit.org/show_bug.cgi?id=152401 |
| http://trac.webkit.org/changeset/194250 |
| |
| "Build fix after r194250" |
| http://trac.webkit.org/changeset/194254 |
| |
| 2015-12-17 Alex Christensen <achristensen@webkit.org> |
| |
| Build fix after r194250 |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Change target membership from all to WebKit. |
| |
| 2015-12-17 Alex Christensen <achristensen@webkit.org> |
| |
| Add types for DownloadID and TaskIdentifier |
| https://bugs.webkit.org/show_bug.cgi?id=152401 |
| |
| Reviewed by Brady Eidson. |
| |
| DownloadID and TaskIdentifier used to both be just uint64_t's. |
| It is confusing to distinguish between them, so now they both have names. |
| We need a HashMap<TaskIdentifier, DownloadID> instead of a HashMap<uint64_t, uint64_t>. |
| |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::storageSession): |
| (WebKit::NetworkConnectionToWebProcess::startDownload): |
| (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): |
| * NetworkProcess/NetworkConnectionToWebProcess.h: |
| * NetworkProcess/NetworkConnectionToWebProcess.messages.in: |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::deleteWebsiteDataForOrigins): |
| (WebKit::NetworkProcess::downloadRequest): |
| (WebKit::NetworkProcess::resumeDownload): |
| (WebKit::NetworkProcess::cancelDownload): |
| (WebKit::NetworkProcess::getNetworkProcessStatistics): |
| (WebKit::NetworkProcess::logDiagnosticMessage): |
| (WebKit::NetworkProcess::logDiagnosticMessageWithResult): |
| (WebKit::NetworkProcess::logDiagnosticMessageWithValue): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (WebKit::NetworkSession::createDataTaskWithRequest): |
| (WebKit::NetworkSession::dataTaskForIdentifier): |
| (WebKit::NetworkDataTask::resume): |
| (WebKit::NetworkDataTask::taskIdentifier): Deleted. |
| * Shared/Downloads/Download.cpp: |
| (WebKit::Download::Download): |
| (WebKit::Download::messageSenderDestinationID): |
| * Shared/Downloads/Download.h: |
| (WebKit::Download::downloadID): |
| * Shared/Downloads/DownloadID.h: Added. |
| (WebKit::DownloadID::DownloadID): |
| (WebKit::DownloadID::operator==): |
| (WebKit::DownloadID::downloadID): |
| (IPC::ArgumentCoder<WebKit::DownloadID>::encode): |
| (IPC::ArgumentCoder<WebKit::DownloadID>::decode): |
| (WTF::DownloadIDHash::hash): |
| (WTF::DownloadIDHash::equal): |
| (WTF::HashTraits<WebKit::DownloadID>::emptyValue): |
| (WTF::HashTraits<WebKit::DownloadID>::constructDeletedValue): |
| (WTF::HashTraits<WebKit::DownloadID>::isDeletedValue): |
| * Shared/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::DownloadManager): |
| (WebKit::DownloadManager::startDownload): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| (WebKit::DownloadManager::resumeDownload): |
| (WebKit::DownloadManager::cancelDownload): |
| * Shared/Downloads/DownloadManager.h: |
| (WebKit::DownloadManager::isDownloading): |
| * UIProcess/API/C/WKDownload.cpp: |
| (WKDownloadGetID): |
| (WKDownloadCopyRequest): |
| * UIProcess/Downloads/DownloadProxy.h: |
| (WebKit::DownloadProxy::downloadID): |
| (WebKit::DownloadProxy::request): |
| (WebKit::DownloadProxy::resumeData): |
| * UIProcess/Downloads/DownloadProxyMap.cpp: |
| (WebKit::DownloadProxyMap::createDownloadProxy): |
| (WebKit::DownloadProxyMap::downloadFinished): |
| (WebKit::DownloadProxyMap::processDidClose): |
| * UIProcess/Downloads/DownloadProxyMap.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::receivedPolicyDecision): |
| (WebKit::WebPageProxy::frameDidBecomeFrameSet): |
| (WebKit::WebPageProxy::decidePolicyForNavigationAction): |
| (WebKit::WebPageProxy::decidePolicyForResponse): |
| (WebKit::WebPageProxy::decidePolicyForResponseSync): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::invalidatePolicyListener): |
| (WebKit::WebFrame::didReceivePolicyDecision): |
| (WebKit::WebFrame::startDownload): |
| (WebKit::WebFrame::convertMainResourceLoadToDownload): |
| * WebProcess/WebPage/WebFrame.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setSessionID): |
| (WebKit::WebPage::didReceivePolicyDecision): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2015-12-17 Simon Fraser <simon.fraser@apple.com> |
| |
| Disable viewport "shrink to fit" outside of multitasking mode |
| https://bugs.webkit.org/show_bug.cgi?id=152403 |
| rdar://problem/23818102 |
| |
| Reviewed by Tim Horton. |
| |
| Plumb through a value that indicates whether the WKWebView is in split screen, |
| and use it to conditionally enable shrink-to-fit mode only in split screen. |
| |
| * Shared/VisibleContentRectUpdateInfo.cpp: Added m_allowShrinkToFit, and sort |
| the member variables, and encoding order, to optimize packing, with some initializers. |
| (WebKit::VisibleContentRectUpdateInfo::encode): |
| (WebKit::VisibleContentRectUpdateInfo::decode): |
| * Shared/VisibleContentRectUpdateInfo.h: |
| (WebKit::VisibleContentRectUpdateInfo::VisibleContentRectUpdateInfo): |
| (WebKit::VisibleContentRectUpdateInfo::allowShrinkToFit): |
| (WebKit::operator==): |
| * UIProcess/API/Cocoa/WKWebView.mm: Add _allowsViewportShrinkToFit member variable, |
| with getter and setter. |
| (-[WKWebView _updateVisibleContentRects]): Unwrap the line. |
| (-[WKWebView _setAllowsViewportShrinkToFit:]): |
| (-[WKWebView _allowsViewportShrinkToFit]): |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: _allowsViewportShrinkToFit SPI. |
| * UIProcess/WebPageProxy.h: Pass allowShrinkToFit through. |
| * UIProcess/ios/WKContentView.mm: Ditto. |
| (-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]): |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::updateVisibleContentRects): Padd allowShrinkToFit to the web process via the VisibleContentRectUpdateInfo. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): Store m_ignoreViewportScalingConstraints in a member variable since we can't |
| get back to the prefs later. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::updateVisibleContentRects): This is the behavior change: call setCanIgnoreScalingConstraints() |
| on the viewport configuration, consulting the pref (via m_ignoreViewportScalingConstraints) and the new |
| visibleContentRectUpdateInfo.allowShrinkToFit(). |
| |
| 2015-12-16 Simon Fraser <simon.fraser@apple.com> |
| |
| ViewportConfiguration functions should return a bool to say if anything changed |
| https://bugs.webkit.org/show_bug.cgi?id=152353 |
| |
| Reviewed by Tim Horton. |
| |
| Rather than callers all checking whether setting ViewportConfiguration values |
| changes state, have its functions return a bool if the values change. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::mainFrameDidLayout): |
| (WebKit::WebPage::didCommitLoad): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::viewportPropertiesDidChange): |
| (WebKit::WebPage::setViewportConfigurationMinimumLayoutSize): |
| |
| 2015-12-16 Alex Christensen <achristensen@webkit.org> |
| |
| Progress towards implementing downloads with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=152371 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::downloadRequest): |
| (WebKit::NetworkProcess::resumeDownload): |
| (WebKit::NetworkProcess::cancelDownload): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * Shared/Authentication/AuthenticationManager.cpp: |
| (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge): |
| * Shared/Authentication/AuthenticationManager.h: |
| * Shared/Downloads/Download.cpp: |
| (WebKit::Download::Download): |
| (WebKit::Download::didReceiveAuthenticationChallenge): |
| * Shared/Downloads/Download.h: |
| * Shared/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::startDownload): |
| (WebKit::DownloadManager::convertHandleToDownload): |
| (WebKit::DownloadManager::resumeDownload): |
| (WebKit::DownloadManager::cancelDownload): |
| (WebKit::DownloadManager::downloadFinished): |
| (WebKit::DownloadManager::didCreateDownload): |
| * Shared/Downloads/DownloadManager.h: |
| * Shared/Downloads/cocoa: Added. |
| * Shared/Downloads/cocoa/DownloadCocoa.mm: Added. |
| (WebKit::Download::start): |
| (WebKit::Download::resume): |
| (WebKit::Download::cancel): |
| (WebKit::Download::platformInvalidate): |
| * Shared/Downloads/ios/DownloadIOS.mm: |
| * Shared/Downloads/mac/DownloadMac.mm: |
| (WebKit::Download::start): |
| (WebKit::Download::startWithHandle): |
| (WebKit::Download::resume): |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::resumeDownload): |
| * UIProcess/WebProcessPool.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2015-12-16 Simon Fraser <simon.fraser@apple.com> |
| |
| ViewportConfiguration functions should return a bool to say if anything changed |
| https://bugs.webkit.org/show_bug.cgi?id=152353 |
| |
| Reviewed by Tim Horton. |
| |
| Rather than callers all checking whether setting ViewportConfiguration values |
| changes state, have its functions return a bool if the values change. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::mainFrameDidLayout): |
| (WebKit::WebPage::didCommitLoad): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::viewportPropertiesDidChange): |
| (WebKit::WebPage::setViewportConfigurationMinimumLayoutSize): |
| |
| 2015-12-16 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r191299): Zoom gestures are enabled even if allowsMagnification=NO |
| https://bugs.webkit.org/show_bug.cgi?id=152373 |
| <rdar://problem/23931998> |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::gestureEventWasNotHandledByWebCoreFromViewOnly): |
| Don't pass the event on to ViewGestureController if we shouldn't handle it, |
| just like we would have done in magnifyWithEvent before. |
| |
| 2015-12-16 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r194125): Crashes in touchesEndedWithEvent on occasion when interacting with the page |
| https://bugs.webkit.org/show_bug.cgi?id=152366 |
| <rdar://problem/23929672> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::touchesEndedWithEvent): |
| (WebKit::WebViewImpl::touchesCancelledWithEvent): |
| NSTouch identifiers aren't pointer-comparable. We need to use isEqual to |
| compare them and find the ones to remove. |
| |
| 2015-12-16 Simon Fraser <simon.fraser@apple.com> |
| |
| Simplify isOverlayScrollbar() logic |
| https://bugs.webkit.org/show_bug.cgi?id=152357 |
| |
| Reviewed by Beth Dakin. |
| |
| Replace code that checks for isOverlayScrollbar() explicitly with calls to new |
| occupiedWidth()/occupiedHeight() functions on Scrollbar, which do the overlay |
| scrollbar check internally. |
| |
| Add ScrollableArea::scrollbarIntrusion() which returns an IntSize with the occupiedWidth |
| and occupiedHeight of any scrollbars, and use it in a few places. |
| |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::updateScrollbars): |
| (WebKit::PDFPlugin::maximumScrollPosition): |
| |
| 2015-12-16 Alex Christensen <achristensen@webkit.org> |
| |
| Build fix when using NETWORK_SESSION after r193972. |
| |
| Rubber-stamped by Joseph Pecoraro. |
| |
| Renamed NetworkSessionDelegate to WKNetworkSessionDelegate to conform to the |
| newly-enforced style rule in check-for-inappropriate-objc-class-names. |
| |
| * NetworkProcess/NetworkSession.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (toNSURLSessionAuthChallengeDisposition): |
| (-[WKNetworkSessionDelegate initWithNetworkSession:]): |
| (WebKit::NetworkSession::NetworkSession): |
| (-[NetworkSessionDelegate initWithNetworkSession:]): Deleted. |
| |
| 2015-12-16 Alex Christensen <achristensen@webkit.org> |
| |
| Implement Web Timing when using NETWORK_SESSION |
| https://bugs.webkit.org/show_bug.cgi?id=152285 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[NetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): |
| (WebKit::NetworkSession::NetworkSession): |
| Use functions moved to ResourceLoadTiming.h. setCollectsTimingData is for Mavericks, _timingDataOptions is post-Mavericks. |
| |
| 2015-12-16 Youenn Fablet <youenn.fablet@crf.canon.fr> |
| |
| [Fetch API] Add fetch API compile time flag |
| https://bugs.webkit.org/show_bug.cgi?id=152254 |
| |
| Reviewed by Darin Adler. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2015-12-15 Tim Horton <timothy_horton@apple.com> |
| |
| [Mac] Gesture Events should not have negative scale |
| https://bugs.webkit.org/show_bug.cgi?id=151065 |
| <rdar://problem/23474123> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/NativeWebGestureEvent.h: |
| * Shared/mac/NativeWebGestureEventMac.mm: |
| (WebKit::distanceForTouches): |
| (WebKit::NativeWebGestureEvent::NativeWebGestureEvent): |
| Compute the distance between the two oldest touches, and use that as |
| the scale (really the gesture diameter) on the event, instead of |
| passing through AppKit's magnification (which is computed differently). |
| This matches the documented behavior of the existing gesture events on iOS. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView touchesBeganWithEvent:]): |
| (-[WKWebView touchesMovedWithEvent:]): |
| (-[WKWebView touchesEndedWithEvent:]): |
| (-[WKWebView touchesCancelledWithEvent:]): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView touchesBeganWithEvent:]): |
| (-[WKView touchesMovedWithEvent:]): |
| (-[WKView touchesEndedWithEvent:]): |
| (-[WKView touchesCancelledWithEvent:]): |
| Plumb touch events through to WebViewImpl. |
| |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::WebViewImpl): |
| (WebKit::WebViewImpl::magnifyWithEvent): |
| (WebKit::WebViewImpl::touchesOrderedByAge): |
| (WebKit::WebViewImpl::touchesBeganWithEvent): |
| (WebKit::WebViewImpl::touchesMovedWithEvent): |
| (WebKit::WebViewImpl::touchesEndedWithEvent): |
| (WebKit::WebViewImpl::touchesCancelledWithEvent): |
| (WebKit::WebViewImpl::rotateWithEvent): |
| Keep track of the most recent incoming touches, by identifier, in age order. |
| Pass them through to NativeWebGestureEvent so it can determine the gesture diameter. |
| |
| 2015-12-15 Anders Carlsson <andersca@apple.com> |
| |
| Call DatabaseManager directly from WKBundle.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=152317 |
| |
| Reviewed by Tim Horton. |
| |
| This is in preparation for getting rid of some old database manager code. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleClearAllDatabases): |
| (WKBundleSetDatabaseQuota): |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::clearAllDatabases): Deleted. |
| (WebKit::InjectedBundle::setDatabaseQuota): Deleted. |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2015-12-15 Daniel Bates <dabates@apple.com> |
| |
| Guard code that uses class LayerTreeHost with USE(COORDINATED_GRAPHICS) or USE(TEXTURE_MAPPER) |
| https://bugs.webkit.org/show_bug.cgi?id=152265 |
| |
| Reviewed by Tim Horton. |
| |
| We neither make use of LayerTreeHost on Mac nor on iOS. We should guard code that makes |
| use of this class as applicable. This also fixes the iOS Simulator build when using |
| Apple Internal software. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: Guard code that used LayerTreeHost. |
| * WebProcess/WebPage/LayerTreeHost.cpp: Guard contents of file with USE(COORDINATED_GRAPHICS) || USE(TEXTURE_MAPPER). |
| * WebProcess/WebPage/LayerTreeHost.h: Ditto. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::scalePage): Ditto. |
| (WebKit::WebPage::setDeviceScaleFactor): Ditto. |
| * WebProcess/WebPage/WebPage.h: Substitute header LayerTreeContext.h for LayerTreeHost.h since we make use |
| of the enum class LayerHostingMode. |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::updateVisibleContentRects): Remove unnecessary code; DrawingArea::layerTreeHost() always |
| returns nullptr on iOS. |
| |
| 2015-12-15 Zan Dobersek <zdobersek@igalia.com> |
| |
| [TexMap] Operate with a reference to the TextureMapper wherever possible |
| https://bugs.webkit.org/show_bug.cgi?id=152118 |
| |
| Reviewed by Martin Robinson. |
| |
| Replace pointers to the TextureMapper object with references. |
| |
| * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp: |
| (WebKit::CoordinatedBackingStoreTile::swapBuffers): |
| (WebKit::CoordinatedBackingStore::paintTilesToTextureMapper): |
| (WebKit::CoordinatedBackingStore::paintToTextureMapper): |
| (WebKit::CoordinatedBackingStore::drawBorder): |
| (WebKit::CoordinatedBackingStore::drawRepaintCounter): |
| (WebKit::CoordinatedBackingStore::commitTileOperations): |
| * Shared/CoordinatedGraphics/CoordinatedBackingStore.h: |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: |
| (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext): |
| (WebKit::CoordinatedGraphicsScene::paintToGraphicsContext): |
| (WebKit::CoordinatedGraphicsScene::commitPendingBackingStoreOperations): |
| |
| 2015-12-14 YongGeol Jung <yg48.jung@samsung.com> |
| |
| [Coordinated Graphics] CSS transition effect is not shown when transformed with "%" unit. |
| https://bugs.webkit.org/show_bug.cgi?id=152278 |
| |
| Reviewed by Darin Adler. |
| |
| boxSize is encoded as FloatSize type but decoded as IntSize type. |
| So boxSize gets invalid value after decoding. |
| Due to this layer goes to out of screen during animation. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: |
| (IPC::ArgumentCoder<TextureMapperAnimation>::decode): |
| |
| 2015-12-14 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/23886216> REGRESSION (r194022): Production builds of PluginProcess crash on launch when not installed in /System |
| https://bugs.webkit.org/show_bug.cgi?id=152291 |
| |
| Reviewed by Darin Adler. |
| |
| * Configurations/PluginProcess.xcconfig: Added a FIXME. |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::addDYLDEnvironmentAdditions): Set DYLD_LIBRARY_PATH to point to where the shims |
| are. This is needed because starting in El Capitan, the processes’ main executables link |
| directly against the shims, so the dynamic linker needs to be able to find them in the |
| non-/System location. Also added a FIXME about not having to set DYLD_INSERT_LIBRARIES when |
| the main executables link the them directly. |
| |
| 2015-12-14 Simon Fraser <simon.fraser@apple.com> |
| |
| Dump some more data in the RemoteLayerTreeTransaction |
| https://bugs.webkit.org/show_bug.cgi?id=152283 |
| |
| Reviewed by Dean Jackson. |
| |
| Dump some scale factors, viewport meta tag width and render tree size. |
| |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::description): |
| |
| 2015-12-14 Tim Horton <timothy_horton@apple.com> |
| |
| Frequent crash under -[WKPDFView web_setMinimumSize:]_block_invoke |
| https://bugs.webkit.org/show_bug.cgi?id=152266 |
| <rdar://problem/22092676> |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/ios/WKPDFView.mm: |
| (-[WKPDFView web_setMinimumSize:]): |
| We weren't retaining the UIScrollView, but depending on it surviving |
| into this block's invocation. |
| |
| We don't need to do this asynchronously anymore because the referenced |
| bug is fixed, so make it happen synchronously. This also fixes the crash |
| because there's no opportunity for the scroll view to be released. |
| |
| 2015-12-14 Tim Horton <timothy_horton@apple.com> |
| |
| TiledCoreAnimationDrawingAreaProxy::createFenceForGeometryUpdate() sets fence port on context twice |
| https://bugs.webkit.org/show_bug.cgi?id=152239 |
| <rdar://problem/22893289> |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm: |
| (WebKit::TiledCoreAnimationDrawingAreaProxy::createFenceForGeometryUpdate): |
| No need to setFencePort; createFencePort also installs it on the creating context. |
| |
| 2015-12-12 Alex Christensen <achristensen@webkit.org> |
| |
| Use existing code for redirects when using NETWORK_SESSION |
| https://bugs.webkit.org/show_bug.cgi?id=152207 |
| rdar://problem/23860624 |
| |
| Reviewed by Darin Adler. |
| |
| This fixes http/tests/cookies/set-cookie-on-redirect.html when using NETWORK_SESSION. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::continueWillSendRequest): |
| (WebKit::NetworkLoad::convertTaskToDownload): |
| (WebKit::NetworkLoad::willPerformHTTPRedirection): |
| (WebKit::NetworkLoad::didReceiveChallenge): |
| * NetworkProcess/NetworkLoad.h: |
| * NetworkProcess/NetworkSession.h: |
| |
| 2015-12-13 Tim Horton <timothy_horton@apple.com> |
| |
| Adopt CGIOSurfaceContextCreateImageReference to avoid unnecessary readback |
| https://bugs.webkit.org/show_bug.cgi?id=150988 |
| <rdar://problem/18993594> |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::createSelectionSnapshot): |
| Adopt sinkIntoImage and drawConsumingImageBuffer in a few places. |
| |
| 2015-12-13 Dan Bernstein <mitz@apple.com> |
| |
| Another fix after r194018. |
| |
| * Configurations/BaseTarget.xcconfig: |
| * Configurations/BaseXPCService.xcconfig: |
| |
| 2015-12-13 Dan Bernstein <mitz@apple.com> |
| |
| [Mac] Shims used by XPC services are installed inside legacy process bundles |
| https://bugs.webkit.org/show_bug.cgi?id=152233 |
| |
| Reviewed by Sam Weinig. |
| |
| Have the shim dylibs installed in the framework’s Frameworks directory instead. |
| |
| * Configurations/BaseLegacyProcess.xcconfig: Simplified now that EXCLUDED_SHIM_FILE_NAME is |
| no longer defined, because shims aren’t copied into legacy processes. |
| |
| * Configurations/NetworkProcess.xcconfig: Removed definition of EXCLUDED_SHIM_FILE_NAME. |
| * Configurations/PluginProcess.xcconfig: Ditto. |
| * Configurations/WebContentProcess.xcconfig: Ditto. |
| |
| * Configurations/Shim.xcconfig: Install the shims when building for OS X. Added definitions |
| of INSTALL_PATH and DYLIB_INSTALL_NAME_BASE which are now common to all shims. |
| |
| * Configurations/PluginProcessShim.xcconfig: Removed definitions of INSTALL_PATH and |
| DYLIB_INSTALL_NAME_BASE from here, now that they are defined for all shims in |
| Shim.xcconfig. |
| * Configurations/SecItemShim.xcconfig: Ditto. |
| * Configurations/WebProcessShim.xcconfig: |
| |
| * Configurations/WebKit.xcconfig: Added the shims to EXCLUDED_SOURCE_FILE_NAMES for iOS. |
| |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist: Changed |
| the value of DYLD_INSERT_LIBRARIES to point to the shim’s new location. |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist: Ditto. |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist: Ditto. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::computeProcessShimPath): Changed to return the new paths, which are all inside the |
| framework’s Frameworks directory. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| - Removed references to WRAPPER_NAME from the “Copy XPC services for engineering builds” |
| build phase in the All target, becase WRAPPER_NAME is empty in an aggregate target. |
| - Removed the PlugInProcess target’s dependency on the PluginProcessShim target and its |
| Copy Plug-in Process Shim build phase. |
| - Removed the NetworkProcess target’s dependency on the SecItemShim target and its Copy |
| Sec Item Shim build phase. |
| - Removed the WebProcess target’s dependency on the WebProcessShim target and its Copy |
| WebProcessShim build phase. |
| - Made the WebKit target depend on the shim targets, and added to it a Copy Shims build |
| phase that copies the shims into the framework’s Frameworks directory. |
| |
| 2015-12-13 Dan Bernstein <mitz@apple.com> |
| |
| Build fix. |
| |
| * Configurations/PluginProcess.xcconfig: |
| |
| 2015-12-13 Dan Bernstein <mitz@apple.com> |
| |
| [Mac] Shims aren’t inserted properly on Yosemite when building with the El Capitan SDK |
| https://bugs.webkit.org/show_bug.cgi?id=152229 |
| |
| Reviewed by Darin Adler. |
| |
| * Configurations/BaseTarget.xcconfig: Defined WK_LINK_SHIM on OS X to YES or NO based on the |
| target version. |
| * Configurations/BaseXPCService.xcconfig: Define WK_XPC_SERVICE_INFOPLIST_SUFFIX to |
| "-10.9-10.10" when targeting those OS X versions. |
| * Configurations/NetworkService.xcconfig: Use WK_XPC_SERVICE_INFOPLIST_SUFFIX in the |
| definition of INFOPLIST_FILE. Use WK_LINK_SHIM in the definition of OTHER_LDFLAGS. |
| * Configurations/PluginProcess.xcconfig: Use WK_LINK_SHIM in the definition of |
| LDFLAGS_SHIM_Production for OS X. |
| * Configurations/PluginService.32.xcconfig: Use WK_XPC_SERVICE_INFOPLIST_SUFFIX in the |
| definition of INFOPLIST_FILE. Use WK_LINK_SHIM in the definition of OTHER_LDFLAGS. |
| * Configurations/PluginService.64.xcconfig: Ditto. |
| * Configurations/WebContentService.xcconfig: Ditto. |
| |
| 2015-12-12 Katlyn Graff <kgraff@apple.com> |
| |
| Safari background tabs should be fully suspended where possible. |
| https://bugs.webkit.org/show_bug.cgi?id=150515 |
| |
| Reviewed by Ryosuke Niwa. |
| |
| Added a runtime flag enabling tab suspension, default off. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| (WebKit::registerUserDefaultsIfNeeded): |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2015-12-11 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] Add a setting to allow the mock media capture devices to be enabled and disabled |
| https://bugs.webkit.org/show_bug.cgi?id=152197 |
| |
| Reviewed by Dean Jackson. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetMockCaptureDevicesEnabled): |
| (WKPreferencesGetMockCaptureDevicesEnabled): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _mockCaptureDevicesEnabled]): |
| (-[WKPreferences _setMockCaptureDevicesEnabled:]): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2015-12-11 Joseph Pecoraro <pecoraro@apple.com> |
| |
| check-for-inappropriate-objc-class-names should check all class names, not just externally visible ones |
| https://bugs.webkit.org/show_bug.cgi?id=152156 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): |
| * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h: |
| * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm: |
| (WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy): |
| Rename internal classes with "_WK" prefix. |
| |
| 2015-12-10 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] Expose media capture devices persistent permissions to WebCore |
| https://bugs.webkit.org/show_bug.cgi?id=152087 |
| |
| Reviewed by Chris Dumez. |
| |
| * CMakeLists.txt: Add UserMediaPermissionCheckProxy.cpp and WKUserMediaPermissionCheck.cpp. |
| |
| * Shared/API/APIObject.h: Define UserMediaPermissionCheck. |
| |
| * Shared/API/c/WKBase.h: Add WKUserMediaPermissionCheckRef typedef. |
| |
| * UIProcess/API/APIUIClient.h: |
| (API::UIClient::checkUserMediaPermissionForOrigin): New. |
| |
| * UIProcess/API/C/WKAPICast.h: Add WKUserMediaPermissionCheckRef/UserMediaPermissionCheckProxy mapping. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetPageUIClient): Implement checkUserMediaPermissionForOrigin. |
| |
| * UIProcess/API/C/WKPageUIClient.h: Add WKCheckUserMediaPermissionCallback typedef and add |
| checkUserMediaPermissionForOrigin to WKPageUIClientV6. |
| |
| * UIProcess/API/C/WKUserMediaPermissionCheck.cpp: Added. |
| (WKUserMediaPermissionCheckGetTypeID): |
| (WKUserMediaPermissionCheckSetHasPermission): |
| |
| * UIProcess/API/C/WKUserMediaPermissionCheck.h: Added. |
| |
| * UIProcess/UserMediaPermissionCheckProxy.cpp: Added. |
| (WebKit::UserMediaPermissionCheckProxy::UserMediaPermissionCheckProxy): |
| (WebKit::UserMediaPermissionCheckProxy::setHasPermission): |
| (WebKit::UserMediaPermissionCheckProxy::invalidate): |
| * UIProcess/UserMediaPermissionCheckProxy.h: Added. |
| (WebKit::UserMediaPermissionCheckProxy::create): |
| * UIProcess/UserMediaPermissionRequestManagerProxy.cpp: |
| (WebKit::UserMediaPermissionRequestManagerProxy::invalidateRequests): |
| (WebKit::UserMediaPermissionRequestManagerProxy::createRequest): |
| (WebKit::UserMediaPermissionRequestManagerProxy::didReceiveUserMediaPermissionDecision): |
| (WebKit::UserMediaPermissionRequestManagerProxy::createUserMediaPermissionCheck): |
| (WebKit::UserMediaPermissionRequestManagerProxy::didCompleteUserMediaPermissionCheck): |
| * UIProcess/UserMediaPermissionRequestManagerProxy.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::requestUserMediaPermissionForFrame): |
| (WebKit::WebPageProxy::checkUserMediaPermissionForFrame): |
| (WebKit::WebPageProxy::requestNotificationPermission): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| |
| * WebKit2.xcodeproj/project.pbxproj: Add UserMediaPermissionCheckProxy.*, and WKUserMediaPermissionCheck.*. |
| |
| * WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp: |
| (WebKit::UserMediaPermissionRequestManager::startUserMediaRequest): Renamed from startRequest. |
| (WebKit::UserMediaPermissionRequestManager::cancelUserMediaRequest): Renamed from cancelRequest. |
| (WebKit::UserMediaPermissionRequestManager::didReceiveUserMediaPermissionDecision): m_requestToIDMap -> |
| m_userMediaRequestToIDMap.remove. |
| (WebKit::UserMediaPermissionRequestManager::startUserMediaPermissionCheck): New, start the request. |
| (WebKit::UserMediaPermissionRequestManager::cancelUserMediaPermissionCheck): New, cancel |
| the request. |
| (WebKit::UserMediaPermissionRequestManager::didCompleteUserMediaPermissionCheck): New, |
| all the request completion method. |
| (WebKit::UserMediaPermissionRequestManager::startRequest): Deleted. |
| (WebKit::UserMediaPermissionRequestManager::cancelRequest): Deleted. |
| * WebProcess/MediaStream/UserMediaPermissionRequestManager.h: |
| |
| * WebProcess/WebCoreSupport/WebUserMediaClient.cpp: |
| (WebKit::WebUserMediaClient::requestUserMediaAccess): startRequest -> startUserMediaRequest. |
| (WebKit::WebUserMediaClient::cancelUserMediaAccessRequest): cancelRequest -> cancelUserMediaRequest. |
| (WebKit::WebUserMediaClient::checkUserMediaPermission): New. |
| (WebKit::WebUserMediaClient::cancelUserMediaPermissionCheck): New. |
| * WebProcess/WebCoreSupport/WebUserMediaClient.h: |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didCompleteUserMediaPermissionCheck): New. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: Add DidCompleteUserMediaPermissionCheck. |
| |
| 2015-12-10 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Remote Inspector: Verify the identity of the other side of XPC connections |
| https://bugs.webkit.org/show_bug.cgi?id=152153 |
| |
| Reviewed by Brian Burg. |
| |
| * Shared/mac/SandboxUtilities.mm: |
| * UIProcess/ApplicationStateTracker.mm: |
| Use new header. |
| |
| 2015-12-10 Alex Christensen <achristensen@webkit.org> |
| |
| REGRESSION (r192796) WKBundlePageResourceLoadClient should be able to setHTTPBody in willSendRequestForFrame |
| https://bugs.webkit.org/show_bug.cgi?id=152022 |
| rdar://problem/23763584 |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/API/c/WKURLRequest.cpp: |
| (WKURLRequestCopyHTTPMethod): |
| (WKURLRequestCopyWithHTTPBody): |
| (WKURLRequestSetDefaultTimeoutInterval): |
| * Shared/API/c/WKURLRequest.h: |
| Make WKURLRequestCopyWithHTTPBody SPI for testing. |
| * Shared/API/c/mac/WKURLRequestNS.mm: |
| (WKURLRequestCreateWithNSURLRequest): |
| Crash if someone tries to use an NSURLRequest with HTTPBodyStream, which will not work with the network process. |
| * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp: |
| (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame): |
| Use an HTTP body if the client's willSendRequestForFrame returned one. |
| This is the functional change of this patch. |
| |
| 2015-12-10 Zan Dobersek <zdobersek@igalia.com> |
| |
| [CoordinatedGraphics] Reserve capacity for the children vector in CoordinatedGraphicsScene::setLayerChildrenIfNeeded() |
| https://bugs.webkit.org/show_bug.cgi?id=152117 |
| |
| Reviewed by Martin Robinson. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: |
| (WebKit::CoordinatedGraphicsScene::setLayerChildrenIfNeeded): Reserve the capacity |
| for the new Vector that will contain the same number of items as the Vector |
| on the CoordinatedGraphicsLayerState object. |
| |
| 2015-12-09 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Bail out if the page proxy is invalid when WebPageProxy::processWillBecome{Foreground, Suspended}() are called |
| https://bugs.webkit.org/show_bug.cgi?id=151877 |
| |
| Reviewed by Darin Adler. |
| |
| We cannot assume that a WebPageProxy is in a valid state when WebPageProxy::processWillBecome{Foreground, Suspended}() |
| are called because these callbacks may occur after the web process crashed and before a |
| WebPageProxy attaches to a new web process (and hence is considered in a valid state). |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::processWillBecomeSuspended): Early return if the page proxy is invalid. |
| (WebKit::WebPageProxy::processWillBecomeForeground): Ditto. |
| |
| 2015-12-09 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r193864. |
| https://bugs.webkit.org/show_bug.cgi?id=152100 |
| |
| caused all inspector tests to assert in WK2 Debug (Requested |
| by brrian on #webkit). |
| |
| Reverted changeset: |
| |
| "Web Inspector: reproducible debug ASSERT when inspecting the |
| inspector (WK2)" |
| https://bugs.webkit.org/show_bug.cgi?id=152080 |
| http://trac.webkit.org/changeset/193864 |
| |
| 2015-12-09 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: reproducible debug ASSERT when inspecting the inspector (WK2) |
| https://bugs.webkit.org/show_bug.cgi?id=152080 |
| |
| Reviewed by Timothy Hatcher. |
| |
| We hit an assert underneath ChildProcessProxy::addMessageReceiver because |
| we tried to connect the inspector page and inspected page more than once. |
| This relationship is already set up in the constructor of WebProcessProxy. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage): |
| |
| 2015-12-09 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| [EFL] Need to change expectation result in ewk_settings_offline_web_application_cache_enabled API test |
| https://bugs.webkit.org/show_bug.cgi?id=152063 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| Expect false initial value of ewk_settings_offline_web_application_cache_enabled_get() |
| because r193812 didn't enable it by default. |
| |
| * UIProcess/API/efl/tests/test_ewk2_settings.cpp: |
| (TEST_F): |
| |
| 2015-12-09 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [ThreadedCompositor] Add support for HiDPI |
| https://bugs.webkit.org/show_bug.cgi?id=152071 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: |
| (WebKit::ThreadedCompositor::setDeviceScaleFactor): Added to receive the |
| device scale factor from the layer tree host. |
| (WebKit::ThreadedCompositor::renderLayerTree): |
| Apply device scale factor before rendering the page. |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: |
| * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp: |
| (WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged): |
| Send a updated device scale factor to the compositing thread. |
| |
| 2015-12-09 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [CoordinatedGraphics] Remove unnecessary guards in CoordinatedDrawingArea |
| https://bugs.webkit.org/show_bug.cgi?id=152068 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| CoordinatedDrawingArea is only for UI side compositor of CoordinatedGraphics. |
| So, COORDINATED_GRAPHICS_MULTIPROCESS guards are not necessary. |
| This patch also removes COORDINATED_GRAPHICS_MULTIPROCESS guards from DrawingAreaImpl |
| because of same reason. |
| |
| * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp: |
| (WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy): Deleted. |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp: |
| (WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea): Deleted. |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h: |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| |
| 2015-12-09 Mario Sanchez Prada <mario@endlessm.com> |
| |
| [GTK] Crash in WebProcess when loading large content with custom URI schemes |
| https://bugs.webkit.org/show_bug.cgi?id=144262 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Properly handle scenarios where errors happen after reading the first |
| chunk of data coming from the GInputStream provided by the application. |
| |
| * UIProcess/API/gtk/WebKitWebContextPrivate.h: |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkitWebContextIsLoadingCustomProtocol): New, checks whether a load |
| is still in progress, after the startLoading method has been called. |
| * UIProcess/API/gtk/WebKitURISchemeRequest.cpp: |
| (webkitURISchemeRequestReadCallback): Early return if the stream has been |
| cancelled on finish_error, so that we make sure we don't keep on reading |
| the GInputStream after that point. |
| (webkit_uri_scheme_request_finish_error): Don't send a didFailWithError |
| message to the Network process if the load is not longer in progress. |
| * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp: |
| (WebKit::CustomProtocolManagerImpl::didFailWithError): Handle the case where |
| an error is notified from the UI process after the first chunk has been read. |
| (WebKit::CustomProtocolManagerImpl::didReceiveResponse): Handle the case where |
| data might no longer be available if an error happened even before this point. |
| * WebProcess/soup/WebKitSoupRequestInputStream.h: |
| * WebProcess/soup/WebKitSoupRequestInputStream.cpp: |
| (webkitSoupRequestInputStreamDidFailWithError): Notify the custom GInputStream |
| that we no longer want to keep reading data in chunks due to a specific error. |
| (webkitSoupRequestInputStreamReadAsync): Early finish the GTask with a specific |
| error whenever webkitSoupRequestInputStreamDidFailWithError() has been called. |
| |
| 2015-12-09 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [CoordinatedGraphics][EFL] Fix unhandled web process message when launching MiniBrowser |
| https://bugs.webkit.org/show_bug.cgi?id=152048 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| WebPage should be initialized before updating preferences. |
| |
| * UIProcess/API/C/CoordinatedGraphics/WKView.cpp: |
| (WKViewInitialize): Deleted. |
| * UIProcess/API/C/CoordinatedGraphics/WKView.h: |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::EwkView): |
| Calls WKViewSetIsActive instead of WKViewInitialize not to change the behavior |
| of EFL port. |
| * UIProcess/CoordinatedGraphics/WebView.cpp: |
| (WebKit::WebView::WebView): |
| Initialize just before creating WebPage because there is not use case to separate |
| initializing WebPage from creating in CoordinatedGraphics. |
| (WebKit::WebView::initialize): Deleted. |
| * UIProcess/CoordinatedGraphics/WebView.h: |
| |
| 2015-12-09 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Add API to handle beforeunload events |
| https://bugs.webkit.org/show_bug.cgi?id=139090 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| beforeunload is fired when a page is about to be closed, to ask |
| the user for confirmation. This happens when reloading a page, |
| when navigating to another page or when the page is closed by a |
| user action (a tab or window closed). In the first two cases, the |
| event is automatically fired by WebCore, but in the case of a user |
| action we need additional API to ensure the event is fired before |
| the page is closed. A new script dialog type has been added to |
| handle beforeunload events and webkit_web_view_try_close() to |
| allow applications to try to close the page. |
| |
| * UIProcess/API/gtk/WebKitScriptDialog.cpp: |
| (webkit_script_dialog_confirm_set_confirmed): BeforeUnloadConfirm |
| dialogs can also be confirmed. |
| * UIProcess/API/gtk/WebKitScriptDialog.h: Add |
| WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM script dialog type. |
| * UIProcess/API/gtk/WebKitUIClient.cpp: Implement |
| canRunBeforeUnloadConfirmPanel() and runBeforeUnloadConfirmPanel(). |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkitWebViewCreateJavaScriptDialog): Add secondaryText optional |
| parameter for BeforeUnloadConfirm dialogs. Do not set the default |
| response if the dialog was created without buttons. |
| (webkitWebViewScriptDialog): Handle |
| WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM script dialog type to |
| create a message dialog for beforeunlos events. |
| (webkit_web_view_class_init): Update documentation of |
| WebKitWebView::close and WebKitWebView::script-dialog. |
| (webkitWebViewRunJavaScriptBeforeUnloadConfirm): Emit WebKitWebView::script-dialog. |
| (webkit_web_view_try_close): Try to close the page. |
| * UIProcess/API/gtk/WebKitWebView.h: |
| * UIProcess/API/gtk/WebKitWebViewPrivate.h: |
| * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol. |
| |
| 2015-12-09 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| [EFL] Missing to set ignoreTLSError to NetworkProcess |
| https://bugs.webkit.org/show_bug.cgi?id=152047 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| NetworkProcess has been enabled for all ports since r192796 though, EFL port |
| didn't send the ignoreTLSError value to NetworkProcess. This has caused failure of EFL API tests |
| related with ssl feature. |
| |
| * UIProcess/efl/WebProcessPoolEfl.cpp: |
| (WebKit::WebProcessPool::setIgnoreTLSErrors): |
| |
| 2015-12-09 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| [EFL] REGRESSION(r193616): WKPreferences test has been failed since r193616 |
| https://bugs.webkit.org/show_bug.cgi?id=151942 |
| |
| Reviewed by Darin Adler. |
| |
| As wkpreference settings were moved from EwkView to WKPreferenceEfl, the offline-web-application-cache feature |
| is enabled by default when running API test. It seems this option should be enabled by MiniBrowser. |
| |
| * UIProcess/efl/WebPreferencesEfl.cpp: |
| (WebKit::WebPreferences::platformInitializeStore): Remove to enable web application cache feature here. |
| |
| 2015-12-09 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [CoordinatedGraphics] layerTreeHost always exist in CoordinatedDrawingArea |
| https://bugs.webkit.org/show_bug.cgi?id=151987 |
| |
| Reviewed by Darin Adler. |
| |
| CoordinatedGraphics using UI side compositor always forces accelerated compositing. |
| This patch cleans up dead code for layerTreeHost which always exists. |
| |
| * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp: |
| (WebKit::CoordinatedDrawingAreaProxy::paint): Deleted. |
| (WebKit::CoordinatedDrawingAreaProxy::setBackingStoreIsDiscardable): Deleted. |
| (WebKit::CoordinatedDrawingAreaProxy::update): Deleted. |
| (WebKit::CoordinatedDrawingAreaProxy::didUpdateBackingStoreState): Deleted. |
| (WebKit::CoordinatedDrawingAreaProxy::exitAcceleratedCompositingMode): Deleted. |
| (WebKit::CoordinatedDrawingAreaProxy::incorporateUpdate): Deleted. |
| (WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode): Deleted. |
| (WebKit::CoordinatedDrawingAreaProxy::discardBackingStoreSoon): Deleted. |
| (WebKit::CoordinatedDrawingAreaProxy::discardBackingStore): Deleted. |
| * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h: |
| (WebKit::CoordinatedDrawingAreaProxy::setBackingStoreIsDiscardable): |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp: |
| (WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea): Deleted. |
| (WebKit::CoordinatedDrawingArea::layerHostDidFlushLayers): Deleted. |
| (WebKit::CoordinatedDrawingArea::scheduleCompositingLayerFlush): Deleted. |
| (WebKit::CoordinatedDrawingArea::didUpdate): Deleted. |
| (WebKit::CoordinatedDrawingArea::enterAcceleratedCompositingMode): Deleted. |
| (WebKit::CoordinatedDrawingArea::scheduleDisplay): Deleted. |
| (WebKit::CoordinatedDrawingArea::displayTimerFired): Deleted. |
| (WebKit::CoordinatedDrawingArea::display): Deleted. |
| (WebKit::shouldPaintBoundsRect): Deleted. |
| (WebKit::CoordinatedDrawingArea::attachViewOverlayGraphicsLayer): Deleted. |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h: |
| |
| 2015-12-08 Alex Christensen <achristensen@webkit.org> |
| |
| Progress towards implementing downloads with NetworkSession |
| https://bugs.webkit.org/show_bug.cgi?id=151883 |
| |
| Reviewed by Brady Eidson. |
| |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::~NetworkLoad): |
| (WebKit::NetworkLoad::continueDidReceiveResponse): |
| (WebKit::NetworkLoad::convertTaskToDownload): |
| (WebKit::NetworkLoad::willPerformHTTPRedirection): |
| (WebKit::NetworkLoad::didReceiveChallenge): |
| (WebKit::NetworkLoad::didReceiveResponse): |
| (WebKit::NetworkLoad::didReceiveData): |
| (WebKit::NetworkLoad::didCompleteWithError): |
| (WebKit::NetworkLoad::didBecomeDownload): |
| (WebKit::NetworkLoad::didReceiveResponseAsync): |
| (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): |
| * NetworkProcess/NetworkLoad.h: |
| * NetworkProcess/NetworkLoadClient.h: |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::cleanup): |
| (WebKit::NetworkResourceLoader::didConvertToDownload): |
| (WebKit::NetworkResourceLoader::abort): |
| (WebKit::NetworkResourceLoader::didConvertHandleToDownload): Deleted. |
| * NetworkProcess/NetworkResourceLoader.h: |
| * NetworkProcess/NetworkSession.h: |
| (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient): |
| (WebKit::NetworkSession::~NetworkSession): Deleted. |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: |
| * NetworkProcess/cocoa/NetworkSessionCocoa.mm: |
| (-[NetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]): |
| (-[NetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): |
| (WebKit::NetworkSession::NetworkSession): |
| (WebKit::NetworkSession::~NetworkSession): |
| (WebKit::NetworkSession::createDataTaskWithRequest): |
| * Shared/Downloads/Download.h: |
| * Shared/Downloads/DownloadManager.h: |
| (WebKit::DownloadManager::isDownloading): |
| (WebKit::DownloadManager::activeDownloadCount): |
| |
| 2015-12-08 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Create a Sandbox SPI header |
| https://bugs.webkit.org/show_bug.cgi?id=151981 |
| |
| Reviewed by Andy Estes. |
| |
| * PluginProcess/mac/PluginProcessShim.mm: |
| * Shared/ios/ChildProcessIOS.mm: |
| * Shared/mac/ChildProcessMac.mm: |
| * Shared/mac/SandboxUtilities.mm: |
| |
| 2015-12-08 Eric Carlson <eric.carlson@apple.com> |
| |
| [MediaStream] Rename UserMediaClient and UserMediaController methods |
| https://bugs.webkit.org/show_bug.cgi?id=152001 |
| |
| Reviewed by Brady Eidson. |
| |
| * WebProcess/WebCoreSupport/WebUserMediaClient.cpp: |
| (WebKit::WebUserMediaClient::pageDestroyed): |
| (WebKit::WebUserMediaClient::requestUserMediaAccess): |
| (WebKit::WebUserMediaClient::cancelUserMediaAccessRequest): |
| (WebKit::WebUserMediaClient::requestPermission): Deleted. |
| (WebKit::WebUserMediaClient::cancelRequest): Deleted. |
| * WebProcess/WebCoreSupport/WebUserMediaClient.h: |
| |
| 2015-12-08 Tomas Popela <tpopela@redhat.com> |
| |
| [GTK] Remove an unused variable from WebKitWebContext |
| https://bugs.webkit.org/show_bug.cgi?id=151999 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| |
| 2015-12-08 Chris Dumez <cdumez@apple.com> |
| |
| Add diagnostic logging to measure speculative revalidation accuracy |
| https://bugs.webkit.org/show_bug.cgi?id=151953 |
| <rdar://problem/23092196> |
| |
| Reviewed by Darin Adler. |
| |
| We track the following: |
| 1. Resources we knew about AND did not get requested |
| A. We did not speculate (Good) |
| B. We speculated but did not go to network (Bad) |
| C. We speculated and went to network (Very bad) |
| 2. Resources we did not know about (Neutral) |
| 3. Resources we knew about AND got requested |
| A. We did not speculate (Bad) |
| B. We speculated but did not go to network (Good) |
| C. We speculated and went to network (Very good) |
| |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::NetworkCache::Cache::retrieve): |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: |
| (WebKit::NetworkCache::allSpeculativeLoadingDiagnosticMessages): |
| (WebKit::NetworkCache::printSpeculativeLoadingDiagnosticMessageCounts): |
| (WebKit::NetworkCache::logSpeculativeLoadingDiagnosticMessage): |
| (WebKit::NetworkCache::SpeculativeLoadManager::ExpiringEntry::ExpiringEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::PreloadedEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::wasRevalidated): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::markLoadAsCompleted): |
| (WebKit::NetworkCache::SpeculativeLoadManager::retrieve): |
| (WebKit::NetworkCache::SpeculativeLoadManager::addPreloadedEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::startSpeculativeRevalidation): |
| (WebKit::NetworkCache::makeSubresourcesKey): Deleted. |
| (WebKit::NetworkCache::constructRevalidationRequest): Deleted. |
| (WebKit::NetworkCache::responseNeedsRevalidation): Deleted. |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::saveToDiskIfReady): Deleted. |
| (WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage): Deleted. |
| (WebKit::NetworkCache::SpeculativeLoadManager::satisfyPendingRequests): Deleted. |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h: |
| |
| 2015-12-08 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [EFL] REGRESSION(r173394): MiniBrowser stucked in an infinite loop if NETWORK_CACHE is disabled |
| https://bugs.webkit.org/show_bug.cgi?id=137692 |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/Network/WebLoaderStrategy.cpp: |
| (WebKit::maximumBufferingTime): Disable caching if NETWORK_CACHE is disabled. |
| |
| 2015-12-08 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] Add API to provide preferences before creating ewk_view |
| https://bugs.webkit.org/show_bug.cgi?id=151587 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| This patch adds ewk_view_configuration_settings_get to provide preferences |
| before createing ewk_view. |
| |
| * PlatformEfl.cmake: |
| * UIProcess/API/efl/ewk_view_configuration.cpp: |
| (EwkViewConfiguration::EwkViewConfiguration): |
| (ewk_view_configuration_settings_get): |
| * UIProcess/API/efl/ewk_view_configuration.h: |
| * UIProcess/API/efl/ewk_view_configuration_private.h: |
| (EwkViewConfiguration::pageGroup): |
| * UIProcess/API/efl/tests/test_ewk2_view_configuration.cpp: |
| (TEST_F): Added test case for ewk_view_configuration_settings_get(). |
| |
| 2015-12-07 Gustavo Noronha Silva <gns@gnome.org> |
| |
| [GTK] Notify WebCore when notification is clicked |
| https://bugs.webkit.org/show_bug.cgi?id=151951 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UIProcess/API/gtk/WebKitNotification.cpp: |
| (webkit_notification_class_init): new clicked signal. |
| (webkit_notification_clicked): method to emit the clicked signal. |
| * UIProcess/API/gtk/WebKitNotification.h: |
| * UIProcess/API/gtk/WebKitNotificationProvider.cpp: |
| (WebKitNotificationProvider::notificationClickedCallback): handle the clicked signal and tell WebProcess about the click. |
| (WebKitNotificationProvider::show): connect to the clicked signal in addition to closed. |
| * UIProcess/API/gtk/WebKitNotificationProvider.h: |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (notifyNotificationClicked): handle the click on our libnotify notification. |
| (webkitWebViewShowNotification): add the "default" action to our libnotify notification to be notified of the click. |
| * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: |
| |
| 2015-12-07 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r193655. |
| https://bugs.webkit.org/show_bug.cgi?id=151970 |
| |
| This change broke existing LayoutTests on mac-wk2 (Requested |
| by ryanhaddad on #webkit). |
| |
| Reverted changeset: |
| |
| "UIProcess should determine AppNap state for WebPage" |
| https://bugs.webkit.org/show_bug.cgi?id=151964 |
| http://trac.webkit.org/changeset/193655 |
| |
| 2015-12-05 Gavin Barraclough <barraclough@apple.com> |
| |
| UIProcess should determine AppNap state for WebPage |
| https://bugs.webkit.org/show_bug.cgi?id=151964 |
| |
| Reviewed by Anders Carlson. |
| |
| Step 1 in unifying this with the iOS process suppression mechanism is to move the decision out of the WebContent process. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::dispatchViewStateChange): |
| (WebKit::WebPageProxy::setPageActivityState): |
| (WebKit::WebPageProxy::updateActivityToken): |
| (WebKit::WebPageProxy::preferencesDidChange): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::isInWindow): |
| (WebKit::WebPageProxy::didUpdateViewState): |
| * UIProcess/WebPageProxy.messages.in: |
| - WebPage now propagates PageActivityState to the WebPageProxy, for use |
| determining the supression state of the WebProcess. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::m_shouldDispatchFakeMouseMoveEvents): |
| (WebKit::WebPage::setPageActivityState): |
| (WebKit::WebPage::setUserActivityStarted): |
| (WebKit::WebPage::setViewState): |
| (WebKit::WebPage::updatePreferences): |
| (WebKit::WebPage::updateUserActivity): Deleted. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| - WebPage no longer determines when to update it's own UserActivity - instead, |
| let the UI process do so. As such, no longer need to track whether process |
| supression is enabled. Instead, add message to |
| |
| 2015-12-07 Chris Dumez <cdumez@apple.com> |
| |
| [WK2] Regression(r187691): If a page is showing an auth pane in one tab, any new tabs with same page hang until credentials are entered in first tab |
| https://bugs.webkit.org/show_bug.cgi?id=151960 |
| <rdar://problem/23618112> |
| |
| Reviewed by Alex Christensen. |
| |
| After r187691, if a page is showing an auth pane in one tab, any new |
| tabs with same page hang until credentials are entered in first tab. |
| This is because we coalescing all authentication challenges from the |
| same domain, no matter what tab they are for. This can be confusing |
| so we now only coalesce authentication challenges within each tab, |
| by leveraging the pageID (in addition to the domain). |
| |
| * Shared/Authentication/AuthenticationManager.cpp: |
| (WebKit::AuthenticationManager::shouldCoalesceChallenge): |
| (WebKit::AuthenticationManager::coalesceChallengesMatching): |
| (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge): |
| * Shared/Authentication/AuthenticationManager.h: |
| |
| 2015-12-07 Beth Dakin <bdakin@apple.com> |
| |
| Hook up request and show for typing candidates in WK1 |
| https://bugs.webkit.org/show_bug.cgi?id=151831 |
| -and corresponding- |
| <rdar://problem/23751214> |
| |
| Reviewed by Enrica Casucci. |
| |
| Empty client for now. |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| |
| 2015-12-07 Philippe Normand <pnormand@igalia.com> |
| |
| [GTK][Mac] socketpair assertion failure |
| https://bugs.webkit.org/show_bug.cgi?id=151293 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * Platform/IPC/unix/ConnectionUnix.cpp: Don't use SEQPACKET sockets on Darwin. |
| |
| 2015-12-07 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [ThreadedCompositor] Add support for PlatformLayer. |
| https://bugs.webkit.org/show_bug.cgi?id=143299 |
| |
| Reviewed by Žan Doberšek. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: |
| (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext): |
| Swap pending buffers of TextureMapperPlatformLayerProxies before painting contents. |
| (WebKit::CoordinatedGraphicsScene::syncPlatformLayerIfNeeded): |
| In threaded compositor, CoordinatedGraphicsScence only cares about creation and deletion |
| of platform layers. |
| |
| (WebKit::CoordinatedGraphicsScene::onNewBufferAvailable): |
| Whenever new buffer comes via TextureMapperPlatformLayerProxy, CoordinatedGraphicsScene will |
| update the scene if it is needed. |
| |
| 2015-12-07 Mario Sanchez Prada <mario@endlessm.com> |
| |
| [GTK] Allow applications to force Accelerated Compositing mode |
| https://bugs.webkit.org/show_bug.cgi?id=150558 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Enable forcing Accelerated Compositing mode to be always on if |
| a WEBKIT_FORCE_COMPOSITING_MODE environment variable is set. |
| |
| This can be useful for controlled environments where we know that |
| AC always on works well enough, to get smoother animations. |
| |
| * UIProcess/gtk/WebPreferencesGtk.cpp: |
| (WebKit::WebPreferences::platformInitializeStore): Set forceCompositingMode |
| setting to true if the environment variable is found. |
| |
| 2015-12-07 Jon Forsberg <jon.orebro@gmail.com> |
| |
| [GTK] Add webkit_uri_request_get_http_method |
| https://bugs.webkit.org/show_bug.cgi?id=151601 |
| |
| Reviewed by Martin Robinson. |
| |
| Add a method to get the HTTP method of a WebKitURIRequest. |
| |
| * UIProcess/API/gtk/WebKitURIRequest.cpp: |
| (webkit_uri_request_get_http_method): |
| * UIProcess/API/gtk/WebKitURIRequest.h: |
| * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: |
| |
| 2015-12-07 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Add WebKitWebPage::console-message-sent signal to Web Extensions API |
| https://bugs.webkit.org/show_bug.cgi?id=79918 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| Add WebKitConsoleMessage boxed type that is passed to the |
| WebKitWebPage::console-message-sent signal with all the details |
| about the message. |
| |
| * PlatformGTK.cmake: Add new files to compilation. |
| * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols. |
| * UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Add webkit_console_message_get_type. |
| * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section to the docs. |
| * WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h: |
| (API::InjectedBundle::PageUIClient::willAddMessageToConsole): Add |
| paramaters for all console message details. |
| * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.cpp: Added. |
| (webkit_console_message_copy): |
| (webkit_console_message_free): |
| (webkit_console_message_get_source): |
| (webkit_console_message_get_level): |
| (webkit_console_message_get_text): |
| (webkit_console_message_get_line): |
| (webkit_console_message_get_source_id): |
| * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.h: Added. |
| * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessagePrivate.h: Added. |
| (_WebKitConsoleMessage::_WebKitConsoleMessage): |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp: |
| (webkitWebPageDidSendConsoleMessage): Emit the |
| WebKitWebPage::console-message-sent signal. |
| (didReceiveResponseForResource): Generate a console message in |
| case of HTTP failure >= 400 for consistency with the inspector. |
| (didFailLoadForResource): Generate a console message in case of |
| resource load failure for consistency with the inspector. |
| (webkit_web_page_class_init): Add WebKitWebPage::console-message-sent signal. |
| (webkitWebPageCreate): Set custom UI client. |
| * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h: |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: |
| (WebKit::InjectedBundlePageUIClient::willAddMessageToConsole): |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::addMessageToConsole): Pass all the |
| console message details to the ui client. |
| |
| 2015-12-07 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] MiniBrowser doesn't exit when called ewk_view_try_close() |
| https://bugs.webkit.org/show_bug.cgi?id=151934 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| * UIProcess/API/efl/ewk_view.cpp: |
| (ewk_view_try_close): |
| Called window_close callback immediately when WKPageTryClose returns true. |
| * UIProcess/API/efl/tests/test_ewk2_view.cpp: |
| (TEST_F): Improved test cases for try_close to test when content does not contain |
| onbeforeunload callback. |
| |
| 2015-12-07 Jaehun Lim <ljaehun.lim@samsung.com> |
| |
| [EFL] Moving preference settings from EwkView to WebPreferencesEfl |
| https://bugs.webkit.org/show_bug.cgi?id=151928 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| It implements WebPreferences::platformInitializeStore() in WebPreferencesEfl.cpp. |
| |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::EwkView): |
| * UIProcess/efl/WebPreferencesEfl.cpp: |
| (WebKit::WebPreferences::platformInitializeStore): |
| |
| 2015-12-04 Anders Carlsson <andersca@apple.com> |
| |
| Crash when secondary clicking on a link on yahoo.com |
| https://bugs.webkit.org/show_bug.cgi?id=151900 |
| rdar://problem/23765149 |
| |
| Reviewed by Beth Dakin. |
| |
| Don't use +[NSURL URLWithString:] since it doesn't handle invalid URLs as well as WebCore::URL. |
| |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (WebKit::WebContextMenuProxyMac::createShareMenuItem): |
| |
| 2015-12-04 Beth Dakin <bdakin@apple.com> |
| |
| Crash in clients using userData in |
| _immediateActionAnimationControllerForHitTestResult |
| https://bugs.webkit.org/show_bug.cgi?id=151887 |
| |
| Rubber-stamped by Anders Carlsson. |
| |
| Follow-up fix to handle null userData. |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]): |
| |
| 2015-12-04 Beth Dakin <bdakin@apple.com> |
| |
| Crash in clients using userData in |
| _immediateActionAnimationControllerForHitTestResult |
| https://bugs.webkit.org/show_bug.cgi?id=151887 |
| |
| Reviewed by Sam Weinig. |
| |
| Cast this correctly. |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]): |
| |
| 2015-12-04 Gavin Barraclough <barraclough@apple.com> |
| |
| Background state not being tracked correctly for PDFs on iOS |
| https://bugs.webkit.org/show_bug.cgi?id=151886 |
| |
| Reviewed by Anders Carlson. |
| |
| The problem here is that when viewing a PDF we don't have an ApplicationStateTracker. |
| (While we do have a content view - which normally holds the ApplicationStateTracker - |
| the content view is not in a window, and only has an ApplicationStateTracker while in a |
| window). For now, let's give the WKPDFView an ApplicationStateTracker of its very own. |
| In the future we may want to refactor ownership of the ApplicationStateTracker up to |
| the WKWebView. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _isBackground]): |
| - Added, checks background state of content/PDF view. |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| - expose _isBackground to PageClientImplIOS. |
| * UIProcess/ApplicationStateTracker.h: |
| (WebKit::ApplicationStateTracker::isInBackground): |
| * UIProcess/ApplicationStateTracker.mm: |
| (WebKit::isBackgroundState): |
| (WebKit::ApplicationStateTracker::ApplicationStateTracker): |
| - generalize WKContentView -> UIView, so this may now also be a WKPDFView. |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::isViewVisible): |
| - check background state via the WKWebView. |
| * UIProcess/ios/WKPDFView.h: |
| * UIProcess/ios/WKPDFView.mm: |
| (-[WKPDFView willMoveToWindow:]): |
| (-[WKPDFView didMoveToWindow]): |
| (-[WKPDFView isBackground]): |
| (-[WKPDFView _applicationDidEnterBackground]): |
| (-[WKPDFView _applicationWillEnterForeground]): |
| - added methods to initialize ApplicationStateTracker, access background state, & callbacks to the page proxy. |
| |
| 2015-12-04 Antti Koivisto <antti@apple.com> |
| |
| Rename WebResourceLoadScheduler to WebLoaderStrategy |
| https://bugs.webkit.org/show_bug.cgi?id=151854 |
| |
| Reviewed by Anders Carlsson. |
| |
| It implements WebCore::LoaderStrategy and doesn't do any scheduling. |
| |
| * CMakeLists.txt: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Network/NetworkProcessConnection.cpp: |
| (WebKit::NetworkProcessConnection::didReceiveMessage): |
| * WebProcess/Network/WebLoaderStrategy.cpp: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp. |
| (WebKit::WebLoaderStrategy::WebLoaderStrategy): |
| (WebKit::WebLoaderStrategy::~WebLoaderStrategy): |
| (WebKit::WebLoaderStrategy::loadResource): |
| (WebKit::WebLoaderStrategy::schedulePluginStreamLoad): |
| (WebKit::maximumBufferingTime): |
| (WebKit::WebLoaderStrategy::scheduleLoad): |
| (WebKit::WebLoaderStrategy::scheduleInternallyFailedLoad): |
| (WebKit::WebLoaderStrategy::internallyFailedLoadTimerFired): |
| (WebKit::WebLoaderStrategy::startLocalLoad): |
| (WebKit::WebLoaderStrategy::remove): |
| (WebKit::WebLoaderStrategy::setDefersLoading): |
| (WebKit::WebLoaderStrategy::crossOriginRedirectReceived): |
| (WebKit::WebLoaderStrategy::servePendingRequests): |
| (WebKit::WebLoaderStrategy::suspendPendingRequests): |
| (WebKit::WebLoaderStrategy::resumePendingRequests): |
| (WebKit::WebLoaderStrategy::networkProcessCrashed): |
| (WebKit::WebLoaderStrategy::loadResourceSynchronously): |
| (WebKit::WebLoaderStrategy::createPingHandle): |
| (WebKit::WebResourceLoadScheduler::WebResourceLoadScheduler): Deleted. |
| (WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler): Deleted. |
| (WebKit::WebResourceLoadScheduler::loadResource): Deleted. |
| (WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad): Deleted. |
| (WebKit::WebResourceLoadScheduler::scheduleLoad): Deleted. |
| (WebKit::WebResourceLoadScheduler::scheduleInternallyFailedLoad): Deleted. |
| (WebKit::WebResourceLoadScheduler::internallyFailedLoadTimerFired): Deleted. |
| (WebKit::WebResourceLoadScheduler::startLocalLoad): Deleted. |
| (WebKit::WebResourceLoadScheduler::remove): Deleted. |
| (WebKit::WebResourceLoadScheduler::setDefersLoading): Deleted. |
| (WebKit::WebResourceLoadScheduler::crossOriginRedirectReceived): Deleted. |
| (WebKit::WebResourceLoadScheduler::servePendingRequests): Deleted. |
| (WebKit::WebResourceLoadScheduler::suspendPendingRequests): Deleted. |
| (WebKit::WebResourceLoadScheduler::resumePendingRequests): Deleted. |
| (WebKit::WebResourceLoadScheduler::networkProcessCrashed): Deleted. |
| (WebKit::WebResourceLoadScheduler::loadResourceSynchronously): Deleted. |
| (WebKit::WebResourceLoadScheduler::createPingHandle): Deleted. |
| * WebProcess/Network/WebLoaderStrategy.h: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.h. |
| (WebKit::WebLoaderStrategy::webResourceLoaderForIdentifier): |
| (WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier): Deleted. |
| * WebProcess/Network/WebResourceLoadScheduler.cpp: Removed. |
| * WebProcess/Network/WebResourceLoadScheduler.h: Removed. |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::Stream::start): |
| (WebKit::PluginView::Stream::cancel): |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::createLoaderStrategy): |
| (WebKit::WebPlatformStrategies::createPasteboardStrategy): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::networkProcessConnectionClosed): |
| (WebKit::WebProcess::webLoaderStrategy): |
| (WebKit::WebProcess::webResourceLoadScheduler): Deleted. |
| * WebProcess/WebProcess.h: |
| |
| 2015-12-03 Simon Fraser <simon.fraser@apple.com> |
| |
| Have layer memory use consult the backing store format |
| https://bugs.webkit.org/show_bug.cgi?id=151827 |
| rdar://problem/23746497 |
| |
| Reviewed by Dean Jackson. |
| |
| When computing the backing store memory size, take the pixel format into account, |
| rather than assuming 4 bytes per pixel. |
| |
| * Shared/mac/RemoteLayerBackingStore.h: |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| (WebKit::RemoteLayerBackingStore::bytesPerPixel): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp: |
| (WebKit::PlatformCALayerRemote::backingStoreBytesPerPixel): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.h: |
| |
| 2015-12-03 Jer Noble <jer.noble@apple.com> |
| |
| Expose WebCore's InvisibleAutoplayNotPermitted setting to WebKit & WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=151830 |
| |
| Reviewed by Anders Carlsson. |
| |
| Add a new, private WKWebViewConfiguration property _invisibleAutoplayNotPermitted. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration init]): |
| (-[WKWebViewConfiguration copyWithZone:]): |
| (-[WKWebViewConfiguration _invisibleAutoplayNotPermitted]): |
| (-[WKWebViewConfiguration _setInvisibleAutoplayNotPermitted:]): |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2015-12-03 Sam Weinig <sam@webkit.org> |
| |
| It should be possible to use version 6 of the WKPageUIClient without adopting the new createNewPage |
| https://bugs.webkit.org/show_bug.cgi?id=151826 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetPageUIClient): |
| Pick which variant of createNewPage to use based on which function pointer is available, |
| not the version number. |
| |
| 2015-12-03 Anders Carlsson <andersca@apple.com> |
| |
| Remove Objective-C GC support |
| https://bugs.webkit.org/show_bug.cgi?id=151819 |
| rdar://problem/23746991 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Configurations/Base.xcconfig: |
| * Configurations/BaseLegacyProcess.xcconfig: |
| * Configurations/BaseXPCService.xcconfig: |
| * Shared/Cocoa/APIObject.mm: |
| (API::Object::newObject): Deleted. |
| |
| 2015-12-03 Jer Noble <jer.noble@apple.com> |
| |
| Unreviewed build-fix; fix !HAVE(AVKIT) build after r193340. |
| |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::applicationDidBecomeActive): |
| |
| 2015-12-03 Sam Weinig <sam@webkit.org> |
| |
| Need completionHandler-based WebKit C SPI for alert, confirm, and prompt |
| <rdar://problem/23320863> |
| https://bugs.webkit.org/show_bug.cgi?id=151708 |
| |
| (Add missing function definitions) |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageRunJavaScriptAlertResultListenerGetTypeID): |
| (WKPageRunJavaScriptAlertResultListenerCall): |
| (WKPageRunJavaScriptConfirmResultListenerGetTypeID): |
| (WKPageRunJavaScriptConfirmResultListenerCall): |
| (WKPageRunJavaScriptPromptResultListenerGetTypeID): |
| (WKPageRunJavaScriptPromptResultListenerCall): |
| |
| 2015-12-03 Jer Noble <jer.noble@apple.com> |
| |
| [iOS] Fullscreen -> PiP should resume to Fullscreen, not inline |
| https://bugs.webkit.org/show_bug.cgi?id=150906 |
| |
| Reviewed by Simon Fraser. |
| |
| Add methods to pass isVisible(), applicationDidBecomeActive(), and requestFullscreenMode() |
| to and from models and interfaces. |
| |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::applicationDidBecomeActive): Notify the fullscreen manager, if preset. |
| |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenModelContext::requestFullscreenMode): Renamed from requestExitFullscreen(); takes a mode enum. |
| (WebKit::WebVideoFullscreenModelContext::isVisible): Added. |
| (WebKit::WebVideoFullscreenManagerProxy::applicationDidBecomeActive): Pass to all existing interfaces. |
| (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Do not re-create the view if it already exists. |
| (WebKit::WebVideoFullscreenManagerProxy::requestFullscreenMode): Renamed from requestExitFullscreen(); takes a mode enum. |
| (WebKit::WebVideoFullscreenManagerProxy::isVisible): Added. Query Page::isVisible() and Page::isInWindow(), the latter because |
| PiP will cause Page::isVisible() to be TRUE even when the containing tab is backgrounded. |
| (WebKit::WebVideoFullscreenModelContext::requestExitFullscreen): Deleted. |
| (WebKit::WebVideoFullscreenManagerProxy::requestExitFullscreen): Deleted. |
| * WebProcess/ios/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): Only resize the view if we are not already in one of |
| the fullscreen modes. |
| (WebKit::WebVideoFullscreenManager::requestFullscreenMode): Renamed from requestExitFullscreen(). |
| (WebKit::WebVideoFullscreenManager::requestExitFullscreen): Deleted. |
| |
| 2015-12-02 Antti Koivisto <antti@apple.com> |
| |
| Move ResourceLoadScheduler to WebKit1 |
| https://bugs.webkit.org/show_bug.cgi?id=151743 |
| |
| Reviewed by Alex Christensen. |
| |
| * NetworkProcess/NetworkProcessPlatformStrategies.cpp: |
| (WebKit::NetworkProcessPlatformStrategies::createCookiesStrategy): |
| (WebKit::NetworkProcessPlatformStrategies::createLoaderStrategy): |
| (WebKit::NetworkProcessPlatformStrategies::createPasteboardStrategy): |
| (WebKit::NetworkProcessPlatformStrategies::createPluginStrategy): |
| (WebKit::NetworkProcessPlatformStrategies::createBlobRegistry): |
| (WebKit::NetworkProcessPlatformStrategies::resourceLoadScheduler): Deleted. |
| (WebKit::NetworkProcessPlatformStrategies::loadResourceSynchronously): Deleted. |
| * NetworkProcess/NetworkProcessPlatformStrategies.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| * WebProcess/Network/WebResourceLoadScheduler.cpp: |
| (WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler): |
| (WebKit::WebResourceLoadScheduler::loadResource): |
| (WebKit::WebResourceLoadScheduler::resumePendingRequests): |
| (WebKit::WebResourceLoadScheduler::networkProcessCrashed): |
| (WebKit::WebResourceLoadScheduler::loadResourceSynchronously): |
| (WebKit::WebResourceLoadScheduler::createPingHandle): |
| (WebKit::WebResourceLoadScheduler::scheduleSubresourceLoad): Deleted. |
| (WebKit::WebResourceLoadScheduler::setSerialLoadingEnabled): Deleted. |
| * WebProcess/Network/WebResourceLoadScheduler.h: |
| (WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::Stream::start): |
| (WebKit::PluginView::Stream::cancel): |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::createLoaderStrategy): |
| (WebKit::WebPlatformStrategies::createPasteboardStrategy): |
| (WebKit::WebPlatformStrategies::createPluginStrategy): |
| (WebKit::WebPlatformStrategies::createBlobRegistry): |
| (WebKit::WebPlatformStrategies::cookiesForDOM): |
| (WebKit::WebPlatformStrategies::deleteCookie): |
| (WebKit::WebPlatformStrategies::refreshPlugins): |
| (WebKit::WebPlatformStrategies::resourceLoadScheduler): Deleted. |
| (WebKit::WebPlatformStrategies::loadResourceSynchronously): Deleted. |
| (WebKit::WebPlatformStrategies::createPingHandle): Deleted. |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| |
| 2015-12-02 Alex Christensen <achristensen@webkit.org> |
| |
| Fix authentication requests with NetworkSession and canHandleHTTPSServerTrustEvaluation true |
| https://bugs.webkit.org/show_bug.cgi?id=151775 |
| rdar://problem/23586265 |
| |
| Reviewed by Chris Dumez. |
| |
| In https://bugs.webkit.org/show_bug.cgi?id=150968 I copied functionality from |
| NetworkLoad::canAuthenticateAgainstProtectionSpaceAsync into NetworkLoad::didReceiveChallenge |
| but I overlooked the call to m_client.canAuthenticateAgainstProtectionSpaceAsync which is needed |
| if canHandleHTTPSServerTrustEvaluation is true. This adds that call and moves what should happen |
| after that to NetworkLoad::continueCanAuthenticateAgainstProtectionSpace. |
| |
| * NetworkProcess/NetworkLoad.cpp: |
| (WebKit::NetworkLoad::didReceiveChallenge): |
| (WebKit::NetworkLoad::didReceiveResponse): |
| (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): |
| * NetworkProcess/NetworkLoad.h: |
| * NetworkProcess/NetworkSession.h: |
| * Shared/Authentication/AuthenticationManager.h: |
| |
| 2015-12-01 Hunseop Jeong <hs85.jeong@samsung.com> |
| |
| Unreviewed, fix build after r192931. |
| |
| * CMakeLists.txt: Remove the WKOriginDataManager in CMakeLists.txt. |
| |
| 2015-12-01 Yusuke Suzuki <utatane.tea@gmail.com> |
| |
| [ES6] Implement LLInt/Baseline Support for ES6 Generators and enable this feature |
| https://bugs.webkit.org/show_bug.cgi?id=150792 |
| |
| Reviewed by Saam Barati. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2015-12-01 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r192914. |
| https://bugs.webkit.org/show_bug.cgi?id=151734 |
| |
| JSC tests for this change are failing on 32 and 64-bit bots |
| (Requested by ryanhaddad on #webkit). |
| |
| Reverted changeset: |
| |
| "[ES6] Implement LLInt/Baseline Support for ES6 Generators and |
| enable this feature" |
| https://bugs.webkit.org/show_bug.cgi?id=150792 |
| http://trac.webkit.org/changeset/192914 |
| |
| 2015-12-01 Anders Carlsson <andersca@apple.com> |
| |
| Remove WKOriginDataManager |
| https://bugs.webkit.org/show_bug.cgi?id=151723 |
| |
| Reviewed by Andy Estes. |
| |
| * UIProcess/API/C/WKOriginDataManager.cpp: Removed. |
| (WKOriginDataManagerGetTypeID): Deleted. |
| (WKOriginDataManagerGetOrigins): Deleted. |
| (WKOriginDataManagerDeleteEntriesForOrigin): Deleted. |
| (WKOriginDataManagerDeleteEntriesModifiedBetweenDates): Deleted. |
| (WKOriginDataManagerDeleteAllEntries): Deleted. |
| * UIProcess/API/C/WKOriginDataManager.h: Removed. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2015-12-01 Yusuke Suzuki <utatane.tea@gmail.com> |
| |
| [ES6] Implement LLInt/Baseline Support for ES6 Generators and enable this feature |
| https://bugs.webkit.org/show_bug.cgi?id=150792 |
| |
| Reviewed by Saam Barati. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2015-12-01 Sam Weinig <sam@webkit.org> |
| |
| Need completionHandler-based WebKit C SPI for alert, confirm, and prompt |
| <rdar://problem/23320863> |
| https://bugs.webkit.org/show_bug.cgi?id=151708 |
| |
| Reviewed by Anders Carlsson. |
| |
| Add listener based versions of alert, confirm and prompt. |
| |
| * Shared/API/APIObject.h: |
| * Shared/API/c/WKBase.h: |
| * UIProcess/API/C/WKPage.cpp: |
| (WebKit::RunJavaScriptAlertResultListener::create): |
| (WebKit::RunJavaScriptAlertResultListener::~RunJavaScriptAlertResultListener): |
| (WebKit::RunJavaScriptAlertResultListener::call): |
| (WebKit::RunJavaScriptAlertResultListener::RunJavaScriptAlertResultListener): |
| (WebKit::RunJavaScriptConfirmResultListener::create): |
| (WebKit::RunJavaScriptConfirmResultListener::~RunJavaScriptConfirmResultListener): |
| (WebKit::RunJavaScriptConfirmResultListener::call): |
| (WebKit::RunJavaScriptConfirmResultListener::RunJavaScriptConfirmResultListener): |
| (WebKit::RunJavaScriptPromptResultListener::create): |
| (WebKit::RunJavaScriptPromptResultListener::~RunJavaScriptPromptResultListener): |
| (WebKit::RunJavaScriptPromptResultListener::call): |
| (WebKit::RunJavaScriptPromptResultListener::RunJavaScriptPromptResultListener): |
| (WKPageSetPageUIClient): |
| * UIProcess/API/C/WKPageUIClient.h: |
| |
| 2015-12-01 Anders Carlsson <andersca@apple.com> |
| |
| Remove WebKit2.framework |
| https://bugs.webkit.org/show_bug.cgi?id=151715 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Configurations/WebKit2.xcconfig: Removed. |
| * UIProcess/API/Cocoa/WebKit2.h: Removed. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * mac/Info-WebKit2.plist: Removed. |
| * mac/MigrateHeadersToWebKit2.make: Removed. |
| * mac/WebKit2.m: Removed. |
| |
| 2015-12-01 Alex Christensen <achristensen@webkit.org> |
| |
| Use Optional for matrix inverses |
| https://bugs.webkit.org/show_bug.cgi?id=151575 |
| |
| Reviewed by Myles C. Maxfield. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::convertFromRootView): |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::convertPoint): |
| * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm: |
| (WebKit::PDFPlugin::convertFromPDFViewToRootView): |
| (WebKit::PDFPlugin::convertFromPDFViewToScreen): |
| (WebKit::PDFPlugin::boundsOnScreen): |
| (WebKit::PDFPlugin::geometryDidChange): |
| * WebProcess/Plugins/PDF/PDFPlugin.mm: |
| (WebKit::PDFPlugin::geometryDidChange): |
| |
| 2015-12-01 Tim Horton <timothy_horton@apple.com> |
| |
| Remove swipe snapshot before main document load if scroll position is already restored |
| https://bugs.webkit.org/show_bug.cgi?id=151224 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::didRestoreScrollPosition): |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didRestoreScrollPosition): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didRestoreScrollPosition): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::didRestoreScrollPosition): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didRestoreScrollPosition): |
| * WebProcess/WebPage/WebPage.h: |
| Plumb didRestoreScrollPosition through to ViewGestureController (yikes!). |
| |
| * UIProcess/ViewGestureController.cpp: |
| (WebKit::ViewGestureController::didFirstVisuallyNonEmptyLayoutForMainFrame): |
| Cancel waiting for any more loads if we get to firstVisuallyNonEmptyLayout. |
| |
| (WebKit::ViewGestureController::didReachMainFrameLoadTerminalState): |
| Cancel waiting for scroll position restoration if we make it to main frame load, |
| because there is a chance we won't be able to restore the old scroll position, and |
| by main frame load time we've tried as hard as we're going to to restore it. |
| |
| * UIProcess/mac/ViewGestureControllerMac.mm: |
| (WebKit::ViewGestureController::endSwipeGesture): |
| Make some legacy-style-only code clearer that it's legacy-style-only. |
| Wait for scroll position restoration. |
| |
| 2015-12-01 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| REGRESSION(r192834): [GTK] Test /webkit2/WebKitWebView/editor-state/typing-attributes times out after r192834 |
| https://bugs.webkit.org/show_bug.cgi?id=151699 |
| |
| Reviewed by Tim Horton. |
| |
| In r192834 the code to send EditorStateChanged message to the UI |
| process from WebPage::didChangeSelection was removed for non-mac |
| ports. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didChangeSelection): Send EditorStateChanged |
| message to the UI process also for non-mac ports, as before r192834. |
| |
| 2015-12-01 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix timeouts in several HTTP layout tests in GTK+ after r192796. |
| |
| In r192796, the initialization of m_ignoreTLSErrors in |
| WebProcessPool was removed by mistake, making all HTTP tests that use |
| HTTPS fail due to invalid certificate errors. |
| |
| * UIProcess/WebProcessPool.h: Bring back m_ignoreTLSErrors initialization. |
| |
| 2015-12-01 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| REGRESSION(r192247): [GTK] ASSERTION FAILED: type == WebCore::ActionType || type == WebCore::CheckableActionType || type == WebCore::SeparatorType |
| https://bugs.webkit.org/show_bug.cgi?id=151513 |
| |
| Reviewed by Martin Robinson. |
| |
| This happens because we are using our own WebContextMenuItemGtk |
| derived from WebContextMenuItemData, but using our own submenu |
| items handling. We are using the non-submenu |
| WebContextMenuItemData constructor to create our submenu items |
| too, because WebContextMenuItemData always expect the submenu |
| items to be passed to the constructor, but we have a set_submenu |
| method in the public API. So we consider that a |
| WebContextMenuItemGtk is SubmenuType if it has submenu items, but |
| we use the action type internally. When converting a |
| WebContextMenuItemGtk to a generic WebContextMenuItemData, we |
| correctly set the type and pass the submenu items to the |
| approriate constructor. |
| |
| * Shared/gtk/WebContextMenuItemGtk.cpp: |
| (WebKit::WebContextMenuItemGtk::WebContextMenuItemGtk): When |
| constructing from a WebContextMenuItemData, set the type as |
| ActionType when it's a submenu type. |
| * Shared/gtk/WebContextMenuItemGtk.h: |
| (WebKit::WebContextMenuItemGtk::type): Return SubmenuType if |
| submenu items vector is not empty, otherwise use the parent method. |
| * UIProcess/API/gtk/WebKitContextMenuItem.cpp: |
| (webkit_context_menu_item_new_with_submenu): Create the |
| WebContextMenuItemGtk as ActionType. |
| |
| 2015-12-01 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Add missing inspector files to the GTK+ build. |
| |
| * PlatformGTK.cmake: Add also Debug css files. |
| |
| 2015-11-30 Alexey Proskuryakov <ap@apple.com> |
| |
| Build fix for some compiler versions. |
| |
| * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: Disable deprecation warnings while |
| processing SOFT_LINK_CLASS too. |
| |
| 2015-11-30 Jiewen Tan <jiewen_tan@apple.com> |
| |
| Null dereference loading Blink layout test http/tests/misc/detach-during-notifyDone.html |
| https://bugs.webkit.org/show_bug.cgi?id=149309 |
| <rdar://problem/22748363> |
| |
| Reviewed by Brent Fulgham. |
| |
| Callback of bundle clients could kill the documentloader. Therefore, make a copy |
| of the navigationID before invoking the callback. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): |
| (WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage): |
| (WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage): |
| (WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage): |
| (WebKit::WebFrameLoaderClient::dispatchDidFailLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad): |
| |
| 2015-11-30 Tim Horton <timothy_horton@apple.com> |
| |
| Get rid of the !USE(ASYNC_NSTEXTINPUTCLIENT) codepath |
| https://bugs.webkit.org/show_bug.cgi?id=151673 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::resignFirstResponder): Deleted. |
| (WebKit::WebViewImpl::interpretKeyEvent): Deleted. |
| (WebKit::WebViewImpl::executeSavedKeypressCommands): Deleted. |
| (WebKit::WebViewImpl::doCommandBySelector): Deleted. |
| (WebKit::WebViewImpl::insertText): Deleted. |
| (WebKit::WebViewImpl::inputContext): Deleted. |
| (WebKit::WebViewImpl::selectedRange): Deleted. |
| (WebKit::WebViewImpl::hasMarkedText): Deleted. |
| (WebKit::WebViewImpl::unmarkText): Deleted. |
| (WebKit::WebViewImpl::setMarkedText): Deleted. |
| (WebKit::WebViewImpl::markedRange): Deleted. |
| (WebKit::WebViewImpl::attributedSubstringForProposedRange): Deleted. |
| (WebKit::WebViewImpl::characterIndexForPoint): Deleted. |
| (WebKit::WebViewImpl::firstRectForCharacterRange): Deleted. |
| (WebKit::WebViewImpl::performKeyEquivalent): Deleted. |
| (WebKit::WebViewImpl::keyUp): Deleted. |
| (WebKit::WebViewImpl::keyDown): Deleted. |
| (WebKit::WebViewImpl::flagsChanged): Deleted. |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): Deleted. |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): Deleted. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::notifyApplicationAboutInputContextChange): Deleted. |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::setComposition): Deleted. |
| (WebKit::WebPageProxy::confirmComposition): Deleted. |
| (WebKit::WebPageProxy::insertText): Deleted. |
| (WebKit::WebPageProxy::insertDictatedText): Deleted. |
| (WebKit::WebPageProxy::getMarkedRange): Deleted. |
| (WebKit::WebPageProxy::getSelectedRange): Deleted. |
| (WebKit::WebPageProxy::getAttributedSubstringFromRange): Deleted. |
| (WebKit::WebPageProxy::characterIndexForPoint): Deleted. |
| (WebKit::WebPageProxy::firstRectForCharacterRange): Deleted. |
| (WebKit::WebPageProxy::executeKeypressCommands): Deleted. |
| (WebKit::WebPageProxy::cancelComposition): Deleted. |
| (WebKit::WebPageProxy::editorStateChanged): Deleted. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didChangeSelection): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::setComposition): Deleted. |
| (WebKit::WebPage::confirmComposition): Deleted. |
| (WebKit::WebPage::insertText): Deleted. |
| (WebKit::WebPage::insertDictatedText): Deleted. |
| (WebKit::WebPage::getMarkedRange): Deleted. |
| (WebKit::WebPage::getSelectedRange): Deleted. |
| (WebKit::WebPage::getAttributedSubstringFromRange): Deleted. |
| (WebKit::WebPage::characterIndexForPoint): Deleted. |
| (WebKit::WebPage::firstRectForCharacterRange): Deleted. |
| (WebKit::WebPage::executeKeypressCommands): Deleted. |
| (WebKit::WebPage::cancelComposition): Deleted. |
| |
| 2015-11-30 Tim Horton <timothy_horton@apple.com> |
| |
| Remove some unused synchronous drawing SPI |
| https://bugs.webkit.org/show_bug.cgi?id=151672 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView forceAsyncDrawingAreaSizeUpdate:]): Deleted. |
| (-[WKView waitForAsyncDrawingAreaSizeUpdate]): Deleted. |
| * UIProcess/Cocoa/WebViewImpl.h: |
| * UIProcess/Cocoa/WebViewImpl.mm: |
| (WebKit::WebViewImpl::forceAsyncDrawingAreaSizeUpdate): Deleted. |
| (WebKit::WebViewImpl::waitForAsyncDrawingAreaSizeUpdate): Deleted. |
| |
| 2015-11-30 Tim Horton <timothy_horton@apple.com> |
| |
| Get rid of the legacy swipe shadow style |
| https://bugs.webkit.org/show_bug.cgi?id=151671 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/ViewGestureControllerMac.mm: |
| (WebKit::ViewGestureController::beginSwipeGesture): Deleted. |
| (WebKit::ViewGestureController::handleSwipeGesture): Deleted. |
| (WebKit::ViewGestureController::removeSwipeSnapshot): Deleted. |
| It is no longer needed. |
| |
| 2015-11-30 Tim Horton <timothy_horton@apple.com> |
| |
| [iOS] Option-up and Option-down should scroll a little less than a full page |
| https://bugs.webkit.org/show_bug.cgi?id=151538 |
| <rdar://problem/23642675> |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _scrollOffsetForEvent:]): |
| (-[WKContentView _interpretKeyEvent:isCharEvent:]): |
| Clean up the code a little, and adjust so that we *always* use pageStep |
| instead of just scrolling by the unobscured rect when scrolling by a page. |
| Previously, we did for the spacebar, but not for option-up and option-down. |
| |
| 2015-11-30 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: using "Reload Web Inspector" when docked breaks dock-specific styles |
| https://bugs.webkit.org/show_bug.cgi?id=151642 |
| |
| Reviewed by Timothy Hatcher. |
| |
| After a frontend loads, explicitly tell it about the current dock |
| state. This is necessary for force-reloading the inspector, since |
| the dock state isn't sent from UIProcess in this case. |
| |
| * WebProcess/WebPage/WebInspectorUI.cpp: |
| (WebKit::WebInspectorUI::frontendLoaded): |
| (WebKit::WebInspectorUI::setDockingUnavailable): |
| * WebProcess/WebPage/WebInspectorUI.h: |
| |
| 2015-11-30 Alex Christensen <achristensen@webkit.org> |
| |
| Make ProcessModel always MultipleSecondaryProcesses |
| https://bugs.webkit.org/show_bug.cgi?id=151662 |
| |
| Reviewed by Antti Koivisto. |
| |
| Single WebProcess behavior can still be achieved by setting the maximum number of WebProcesses to 1. |
| |
| * Shared/API/c/WKDeprecatedFunctions.cpp: |
| (WKContextSetUsesNetworkProcess): |
| (WKContextSetProcessModel): |
| (WKContextGetProcessModel): |
| (WKGraphicsContextGetCGContext): |
| * UIProcess/API/APIProcessPoolConfiguration.cpp: |
| (API::ProcessPoolConfiguration::createWithLegacyOptions): |
| (API::ProcessPoolConfiguration::copy): |
| * UIProcess/API/APIProcessPoolConfiguration.h: |
| * UIProcess/API/C/WKAPICast.h: |
| (WebKit::toAPI): |
| (WebKit::toFontSmoothingLevel): |
| (WebKit::toProcessModel): Deleted. |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetCacheModel): |
| (WKContextSetMaximumNumberOfProcesses): |
| (WKContextSetProcessModel): Deleted. |
| (WKContextGetProcessModel): Deleted. |
| * UIProcess/API/C/WKContext.h: |
| * UIProcess/API/Cocoa/WKProcessGroup.mm: |
| (-[WKProcessGroup initWithInjectedBundleURL:]): |
| * UIProcess/API/Cocoa/WKProcessPool.mm: |
| * UIProcess/API/efl/ewk_context.cpp: |
| (EwkContext::cacheModel): |
| (EwkContext::setProcessModel): |
| (EwkContext::processModel): |
| (EwkContext::clearResourceCache): |
| (EwkContext::jsGlobalContext): |
| (ewk_context_message_from_extensions_callback_set): |
| (ewk_context_process_model_set): |
| (ewk_context_process_model_get): |
| (ewk_context_tls_error_policy_get): |
| (toWKProcessModel): Deleted. |
| (toEwkProcessModel): Deleted. |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| * UIProcess/ProcessModel.h: Removed. |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::shouldTerminate): |
| (WebKit::WebCookieManagerProxy::refWebContextSupplement): |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::inspectorProcessPool): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::create): |
| (WebKit::WebProcessPool::setDownloadClient): |
| (WebKit::WebProcessPool::setMaximumNumberOfProcesses): |
| (WebKit::WebProcessPool::processDidCachePage): |
| (WebKit::WebProcessPool::createNewWebProcess): |
| (WebKit::WebProcessPool::disconnectProcess): |
| (WebKit::WebProcessPool::createWebPage): |
| (WebKit::WebProcessPool::postMessageToInjectedBundle): |
| (WebKit::WebProcessPool::requestWebContentStatistics): |
| (WebKit::WebProcessPool::requestNetworkingStatistics): |
| (WebKit::WebProcessPool::setProcessModel): Deleted. |
| (WebKit::WebProcessPool::ensureSharedWebProcess): Deleted. |
| * UIProcess/WebProcessPool.h: |
| (WebKit::WebProcessPool::sendToAllProcessesRelaunchingThemIfNecessary): |
| (WebKit::WebProcessPool::sendToOneProcess): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2015-11-30 Chris Dumez <cdumez@apple.com> |
| |
| [WK2][Cache] We should not speculatively revalidate transient resources |
| https://bugs.webkit.org/show_bug.cgi?id=151402 |
| <rdar://problem/23092196> |
| |
| Reviewed by Antti Koivisto. |
| |
| We should not speculatively revalidate transient resources. This patch |
| adds a simple and conservative algorithm to detect that a subresource is |
| transient and then ignores those when doing the speculative revalidation. |
| |
| The algorithm is question marks as transient all subresources that are |
| not common to the 2 last loads of a main resource. |
| |
| This is not perfect as I see the number of non-speculative revalidations |
| going up to 11-12 from 9 in the context of the warm PLT. However, it is |
| best to be conservative at first and we can improve this later. |
| |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::NetworkCache::Cache::retrieve): |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::create): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::~PendingFrameLoad): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::registerSubresource): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::markLoadAsCompleted): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::setExistingSubresourcesEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::PendingFrameLoad): |
| (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::saveToDiskIfReady): |
| (WebKit::NetworkCache::SpeculativeLoadManager::registerLoad): |
| (WebKit::NetworkCache::SpeculativeLoadManager::startSpeculativeRevalidation): |
| (WebKit::NetworkCache::SpeculativeLoadManager::retrieveSubresourcesEntry): |
| (WebKit::NetworkCache::SpeculativeLoadManager::retrieve): Deleted. |
| (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry): Deleted. |
| * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h: |
| * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp: |
| (WebKit::NetworkCache::SubresourcesEntry::encodeAsStorageRecord): |
| (WebKit::NetworkCache::SubresourcesEntry::decodeStorageRecord): |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry): |
| (WebKit::NetworkCache::SubresourcesEntry::updateSubresourceKeys): |
| * NetworkProcess/cache/NetworkCacheSubresourcesEntry.h: |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::encode): |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::decode): |
| (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::SubresourceInfo): |
| (WebKit::NetworkCache::SubresourcesEntry::subresources): |
| |
| 2015-11-30 Brent Fulgham <bfulgham@apple.com> |
| |
| [Mac] Add font service permission to the sandbox profile |
| https://bugs.webkit.org/show_bug.cgi?id=151509 |
| <rdar://problem/23508753> |
| |
| Reviewed by Anders Carlsson. |
| |
| Update the sandbox profile for Mac WebKit to allow access to the |
| "com.apple.fonts" service. |
| |
| * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb: |
| * WebProcess/com.apple.WebProcess.sb.in: |
| |
| 2015-11-30 Alex Christensen <achristensen@webkit.org> |
| |
| Make usesNetworkProcess always true |
| https://bugs.webkit.org/show_bug.cgi?id=151580 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/mac/RemoteNetworkingContext.mm: |
| (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession): |
| * Shared/API/c/WKDeprecatedFunctions.cpp: |
| (WKInspectorToggleJavaScriptProfiling): |
| (WKContextSetUsesNetworkProcess): |
| (WKGraphicsContextGetCGContext): |
| * Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm: |
| (WebKit::CustomProtocolManager::initializeConnection): |
| (WebKit::CustomProtocolManager::initialize): |
| * Shared/Network/CustomProtocols/CustomProtocolManager.h: |
| * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp: |
| (WebKit::CustomProtocolManager::initialize): |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/API/APIProcessPoolConfiguration.cpp: |
| (API::ProcessPoolConfiguration::createWithLegacyOptions): |
| (API::ProcessPoolConfiguration::copy): |
| * UIProcess/API/APIProcessPoolConfiguration.h: |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextSetJavaScriptGarbageCollectorTimerEnabled): |
| (WKContextUseTestingNetworkSession): |
| (WKContextSetUsesNetworkProcess): Deleted. |
| * UIProcess/API/C/WKContextPrivate.h: |
| * UIProcess/API/Cocoa/WKProcessGroup.mm: |
| (-[WKProcessGroup initWithInjectedBundleURL:]): |
| * UIProcess/API/efl/ewk_context.cpp: |
| (EwkContext::setProcessModel): |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| (WebKit::WebProcessPool::updateProcessSuppressionState): |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| * UIProcess/Downloads/DownloadProxy.cpp: |
| (WebKit::DownloadProxy::cancel): |
| (WebKit::DownloadProxy::invalidate): |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): |
| (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy): |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::WebProcessPool): |
| (WebKit::m_processSuppressionDisabledForPageCounter): |
| (WebKit::WebProcessPool::networkingProcessConnection): |
| (WebKit::WebProcessPool::languageChanged): |
| (WebKit::WebProcessPool::textCheckerStateChanged): |
| (WebKit::WebProcessPool::ensureNetworkProcess): |
| (WebKit::WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled): |
| (WebKit::WebProcessPool::createNewWebProcess): |
| (WebKit::WebProcessPool::download): |
| (WebKit::WebProcessPool::resumeDownload): |
| (WebKit::WebProcessPool::setCanHandleHTTPSServerTrustEvaluation): |
| (WebKit::WebProcessPool::setCacheModel): |
| (WebKit::WebProcessPool::createDownloadProxy): |
| (WebKit::WebProcessPool::addMessageReceiver): |
| (WebKit::WebProcessPool::allowSpecificHTTPSCertificateForHost): |
| (WebKit::WebProcessPool::setHTTPPipeliningEnabled): |
| (WebKit::WebProcessPool::requestNetworkingStatistics): |
| (WebKit::WebProcessPool::setUsesNetworkProcess): Deleted. |
| (WebKit::WebProcessPool::usesNetworkProcess): Deleted. |
| * UIProcess/WebProcessPool.h: |
| (WebKit::WebProcessPool::sendToNetworkingProcess): |
| (WebKit::WebProcessPool::sendToNetworkingProcessRelaunchingIfNecessary): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::shutDown): |
| (WebKit::WebProcessProxy::removeWebPage): |
| (WebKit::WebProcessProxy::canTerminateChildProcess): |
| (WebKit::WebProcessProxy::updateTextCheckerState): |
| (WebKit::WebProcessProxy::didSaveToPageCache): |
| (WebKit::WebProcessProxy::didSetAssertionState): |
| (WebKit::WebProcessProxy::createDownloadProxy): Deleted. |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/efl/WebProcessPoolEfl.cpp: |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| (WebKit::WebProcessPool::setIgnoreTLSErrors): |
| * WebProcess/FileAPI/BlobRegistryProxy.cpp: |
| (WebKit::BlobRegistryProxy::registerFileBlobURL): |
| (WebKit::BlobRegistryProxy::registerBlobURL): |
| (WebKit::BlobRegistryProxy::unregisterBlobURL): |
| (WebKit::BlobRegistryProxy::registerBlobURLForSlice): |
| (WebKit::BlobRegistryProxy::blobSize): |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::cookiesForDOM): |
| (WebKit::WebPlatformStrategies::setCookiesFromDOM): |
| (WebKit::WebPlatformStrategies::cookiesEnabled): |
| (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue): |
| (WebKit::WebPlatformStrategies::getRawCookies): |
| (WebKit::WebPlatformStrategies::deleteCookie): |
| (WebKit::WebPlatformStrategies::resourceLoadScheduler): |
| (WebKit::WebPlatformStrategies::loadResourceSynchronously): |
| (WebKit::WebPlatformStrategies::createPingHandle): |
| (WebKit::WebPlatformStrategies::createBlobRegistry): |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::startDownload): |
| (WebKit::WebFrame::convertMainResourceLoadToDownload): |
| (WebKit::WebFrame::source): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| (WebKit::m_webSQLiteDatabaseTracker): |
| (WebKit::WebProcess::initializeConnection): |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::ensureNetworkProcessConnection): |
| (WebKit::WebProcess::destroyPrivateBrowsingSession): |
| (WebKit::WebProcess::pluginProcessConnectionManager): |
| (WebKit::WebProcess::shouldTerminate): |
| (WebKit::WebProcess::setInjectedBundleParameters): |
| (WebKit::WebProcess::networkConnection): |
| (WebKit::WebProcess::setEnhancedAccessibility): |
| (WebKit::WebProcess::prefetchDNS): |
| (WebKit::WebProcess::didCreateDownload): Deleted. |
| (WebKit::WebProcess::didDestroyDownload): Deleted. |
| (WebKit::WebProcess::downloadProxyConnection): Deleted. |
| (WebKit::WebProcess::downloadsAuthenticationManager): Deleted. |
| (WebKit::WebProcess::downloadManager): Deleted. |
| (WebKit::WebProcess::usesNetworkProcess): Deleted. |
| (WebKit::WebProcess::downloadRequest): Deleted. |
| (WebKit::WebProcess::resumeDownload): Deleted. |
| (WebKit::WebProcess::cancelDownload): Deleted. |
| * WebProcess/WebProcess.h: |
| (WebKit::WebProcess::textCheckerState): |
| (WebKit::WebProcess::eventDispatcher): |
| * WebProcess/WebProcess.messages.in: |
| * WebProcess/soup/WebProcessSoup.cpp: |
| (WebKit::WebProcess::platformSetCacheModel): |
| (WebKit::WebProcess::platformClearResourceCaches): |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| (WebKit::WebProcess::platformTerminate): |
| (WebKit::getCacheDiskFreeSize): Deleted. |
| (WebKit::setSoupSessionAcceptLanguage): Deleted. |
| (WebKit::languageChanged): Deleted. |
| (WebKit::WebProcess::setIgnoreTLSErrors): Deleted. |
| (WebKit::WebProcess::allowSpecificHTTPSCertificateForHost): Deleted. |
| |
| 2015-11-30 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] UI process crash when the screensaver DBus proxy is being created while the web view is destroyed |
| https://bugs.webkit.org/show_bug.cgi?id=151653 |
| |
| Reviewed by Martin Robinson. |
| |
| We correctly cancel the proxy creation, but when the async ready |
| callback is called, the view could be destroyed already. In that |
| case g_dbus_proxy_new_for_bus_finish() will return nullptr and |
| fail with cancelled error, but we are using the passed web view |
| without checking first if the creation failed or not. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (screenSaverProxyCreatedCallback): |
| |
| 2015-11-28 Tim Horton <timothy_horton@apple.com> |
| |
| Stop unnecessarily copying WKWebViewConfiguration in a few places |
| https://bugs.webkit.org/show_bug.cgi?id=151639 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| (-[WKWebView dealloc]): |
| (-[WKWebView _contentProviderRegistry]): |
| (-[WKWebView _selectionGranularity]): |
| (-[WKWebView _setHasCustomContentView:loadedMIMEType:]): |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::mimeTypesWithCustomContentProviders): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView setupInteraction]): |
| (-[WKContentView _stopAssistingKeyboard]): |
| Looking at allocation traces I noticed that we were making way more |
| WKWebViewConfigurations than made sense; looking at backtraces I found |
| a few internal callers of -[WKWebView configuration], which copies the |
| configuration. There's no reason for these internal callers to make |
| such a copy, though. |
| |
| I'm not exactly sure what the usual approach is here, but I added |
| getters so WKContentViewInteraction and PageClientImplIOS can get to |
| the values they're looking for without using the configuration property. |
| |
| 2015-11-27 Brady Eidson <beidson@apple.com> |
| |
| Modern IDB: Class-ify IDBGetResult making it impossible to get the data members wrong. |
| https://bugs.webkit.org/show_bug.cgi?id=151627 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp: |
| (WebKit::UniqueIDBDatabase::getRecordFromBackingStore): |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h: |
| |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h: |
| |
| * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp: |
| (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord): |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<IDBGetResult>::encode): |
| (IPC::ArgumentCoder<IDBGetResult>::decode): |
| * Shared/WebCoreArgumentCoders.h: |
| |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in: |
| |
| 2015-11-27 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Remove the remaining uses of GMainLoopSource |
| https://bugs.webkit.org/show_bug.cgi?id=151632 |
| |
| Reviewed by Žan Doberšek. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (_WebKitWebViewBasePrivate::_WebKitWebViewBasePrivate): |
| (_WebKitWebViewBasePrivate::clearRedirectedWindowSoonTimerFired): |
| (webkitWebViewBaseClearRedirectedWindowSoon): |
| (webkitWebViewBaseEnterAcceleratedCompositingMode): |
| |
| 2015-11-23 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Use the network process unconditionally |
| https://bugs.webkit.org/show_bug.cgi?id=151541 |
| |
| Reviewed by Alex Christensen. |
| |
| Make the shared secondary process model become multiple secondary |
| process model with a limit of 1 web process. Use the same options |
| when creating a context with legacy configuration (unit tests and |
| inspector proxy). |
| |
| * NetworkProcess/gtk/NetworkProcessMainGtk.cpp: |
| * UIProcess/API/APIProcessPoolConfiguration.cpp: |
| (API::ProcessPoolConfiguration::createWithLegacyOptions): |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkitWebContextConstructed): |
| (webkit_web_context_set_process_model): |
| (webkit_web_context_get_process_model): |
| (webkit_web_context_set_web_process_count_limit): |
| (webkit_web_context_get_web_process_count_limit): |
| (toWebKitProcessModel): Deleted. |
| * UIProcess/gtk/WebInspectorProxyGtk.cpp: |
| * UIProcess/gtk/WebProcessPoolGtk.cpp: |
| (WebKit::WebProcessPool::setIgnoreTLSErrors): |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| |
| 2015-11-23 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: inspector settings should not be shared between different inspection levels |
| https://bugs.webkit.org/show_bug.cgi?id=151151 |
| |
| Reviewed by Timothy Hatcher. |
| |
| In WebKit2, we already track the inspection level of WebPages in order to give inspectors |
| different page groups. Send the inspection level to WebInspectorUI WebProcess when |
| establishing a connection from the UIProcess. Use this number in the FrontendClient. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::inspectionLevel): Renamed from inspectorLevel to be consistent. |
| (WebKit::WebInspectorProxy::inspectorPageGroupIdentifier): |
| (WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess): |
| (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage): |
| (WebKit::WebInspectorProxy::createInspectorPage): |
| (WebKit::WebInspectorProxy::inspectorLevel): Deleted. |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::updateInspectorWindowTitle): |
| * WebProcess/WebPage/WebInspectorUI.cpp: |
| (WebKit::WebInspectorUI::establishConnection): |
| * WebProcess/WebPage/WebInspectorUI.h: |
| * WebProcess/WebPage/WebInspectorUI.messages.in: |
| |
| 2015-11-23 Gyuyoung Kim <gyuyoung.kim@webkit.org> |
| |
| REGRESSION(r188206): [EFL] Missing to adjust scrollbar size to ewk_view_contents_size_get API test |
| https://bugs.webkit.org/show_bug.cgi?id=148735 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| r189256 missed to adjust scrollbar size to other tests in ewk_view_contents_size_get() API test. |
| In this case we need to apply scrollbar size to both width and height unlike previous fix. Because |
| horizontal scrollbar is also shown since device pixel ratio(= 2.0) is adjusted. |
| |
| * UIProcess/API/efl/tests/test_ewk2_view.cpp: |
| (TEST_F): |
| |
| 2015-11-23 Alex Christensen <achristensen@webkit.org> |
| |
| Fix crash in ~WebProcessPool when using Geolocation with useNetworkProcess=true |
| https://bugs.webkit.org/show_bug.cgi?id=151532 |
| |
| Reviewed by Benjamin Poulain. |
| |
| * UIProcess/WebGeolocationManagerProxy.cpp: |
| (WebKit::WebGeolocationManagerProxy::processPoolDestroyed): |
| (WebKit::WebGeolocationManagerProxy::processDidClose): |
| When a WebProcessPool is destroyed, only call stopUpdating if m_updateRequesters.clear() |
| stopped the updating, like we do in WebGeolocationManagerProxy::removeRequester. |
| Otherwise, call setEnableHighAccuracy if needed, also like we do in WebGeolocationManagerProxy::removeRequester. |
| |
| 2015-11-23 Brian Burg <bburg@apple.com> |
| |
| Web Inspector: when inspecting the inspector, add the inspection level to the title bar |
| https://bugs.webkit.org/show_bug.cgi?id=151555 |
| |
| Reviewed by Timothy Hatcher. |
| |
| If the inspection level says we are inspecting an inspector, include the level |
| in the title bar to easily disambiguate it from the base level inspector. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::updateInspectorWindowTitle): |
| |
| 2015-11-23 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Unreviewed speculative buildfix after r192701. |
| |
| * PlatformMac.cmake: |
| |
| 2015-11-23 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.2 release. |
| |
| * gtk/NEWS: Add release notes for 2.11.2. |
| |
| 2015-11-22 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Add missing inspector file to GTK+ compilation. |
| |
| * PlatformGTK.cmake: |
| |
| == Rolled over to ChangeLog-2015-11-21 == |