⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Feb 14, 2015:

11:52 PM Changeset in webkit [180125] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

More internal build fixing.

DDDFACache.h is not an actual private header, so we were using open source
redeclaration of DDDFACacheRef with an internal function prototype from DDDFAScanner.h.

  • platform/cocoa/TelephoneNumberDetectorCocoa.cpp:

(WebCore::TelephoneNumberDetector::phoneNumbersScanner):

11:16 PM Changeset in webkit [180124] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix after <http://trac.webkit.org/changeset/180122>

  • Platform/mac/StringUtilities.mm:
10:11 PM Changeset in webkit [180123] by benjamin@webkit.org
  • 4 edits
    22 adds in trunk

Add the initial matching implementation for attribute selectors with case-insensitive value
https://bugs.webkit.org/show_bug.cgi?id=141615

Reviewed by Andreas Kling.

Source/WebCore:

Tests: fast/css/case-insensitive-attribute-selector-specificity.html

fast/css/case-insensitive-attribute-selector-styling-html-1.html
fast/css/case-insensitive-attribute-selector-styling-html-2.html
fast/css/case-insensitive-attribute-selector-styling-html-3.html
fast/css/case-insensitive-attribute-selector-styling-xhtml-1.xhtml
fast/css/case-insensitive-attribute-selector-styling-xhtml-2.xhtml
fast/css/case-insensitive-attribute-selector-styling-xhtml-3.xhtml
fast/selectors/case-insensitive-attribute-bascis.html
fast/selectors/case-insensitive-attribute-matching-style-attribute.html
fast/selectors/case-insensitive-attribute-style-update.html
fast/selectors/case-insensitive-attribute-with-case-sensitive-name.html

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):
We already had case-insensitive value matching due to some legacy HTML
behaviors where some attribute values would be matched case-insensitively
depending on the attribute name.

For this patch, I just re-use the same mechanism. I used branches to try
to convey the idea that matching is case sensitive by default unless
the selector has a flag or we are in the weird HTML exception.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::constructFragmentsInternal):
Disable that case in the CSS JIT for now, I'll implement it later.

LayoutTests:

This covers the basics. I will add some more cases as I do the follow up patches.

I avoided the problem of non-ASCII characters, this will need its own follow up
patch that fixes all attribute matching.

  • fast/css/case-insensitive-attribute-selector-specificity-expected.html: Added.
  • fast/css/case-insensitive-attribute-selector-specificity.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-html-1-expected.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-html-1.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-html-2-expected.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-html-2.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-html-3-expected.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-html-3.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-xhtml-1-expected.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-xhtml-1.xhtml: Added.
  • fast/css/case-insensitive-attribute-selector-styling-xhtml-2-expected.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-xhtml-2.xhtml: Added.
  • fast/css/case-insensitive-attribute-selector-styling-xhtml-3-expected.html: Added.
  • fast/css/case-insensitive-attribute-selector-styling-xhtml-3.xhtml: Added.
  • fast/selectors/case-insensitive-attribute-bascis-expected.txt: Added.
  • fast/selectors/case-insensitive-attribute-bascis.html: Added.
  • fast/selectors/case-insensitive-attribute-matching-style-attribute-expected.txt: Added.
  • fast/selectors/case-insensitive-attribute-matching-style-attribute.html: Added.
  • fast/selectors/case-insensitive-attribute-style-update-expected.txt: Added.
  • fast/selectors/case-insensitive-attribute-style-update.html: Added.
  • fast/selectors/case-insensitive-attribute-with-case-sensitive-name-expected.txt: Added.
  • fast/selectors/case-insensitive-attribute-with-case-sensitive-name.html: Added.
9:31 PM Changeset in webkit [180122] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Declare soft-linked functions with extern "C" linkage

More work towards the Maverick Debug build fix:

REGRESSION (r180082): WebCore Debug builds fail on Mavericks due to weak export symbols
<http://webkit.org/b/141607>

  • platform/mac/SoftLinking.h: Try declaring soft-linked

functions with extern "C" linkage to see if they stop appearing
as weak externals. This has the added benefit that if the
function signature changes, we'll get a build failure.

9:14 PM Changeset in webkit [180121] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Mac] RetainPtr member cleanup, possible leaks
https://bugs.webkit.org/show_bug.cgi?id=141616

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-02-14
Reviewed by Andreas Kling.

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(-[WebSpeechSynthesisWrapper speakUtterance:]):
Adopt the allocated object to avoid a possible leak.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
Adopt to avoid unnecessary retain/autorelease.

9:08 PM Changeset in webkit [180120] by rniwa@webkit.org
  • 3 edits in trunk/Websites/perf.webkit.org

Build URL on new perf dashboard doesn't resolve $builderName
https://bugs.webkit.org/show_bug.cgi?id=141583

Reviewed by Darin Adler.

Support $builderName in the build URL template.

  • public/js/helper-classes.js:

(TestBuild.buildUrl): Replaced $builderName with the builder name.

  • public/v2/manifest.js:

(App.Metric.fullName): Fixed the typo. We need &ni, not &in.
(App.BuilderurlFromBuildNumber): Replaced $builderName with the builder name.

8:54 PM Changeset in webkit [180119] by commit-queue@webkit.org
  • 5 edits in trunk/Source

[Mac] Possible DDActionContext leaks, RetainPtr cleanup
https://bugs.webkit.org/show_bug.cgi?id=141613

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-02-14
Reviewed by Tim Horton.

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::WebEditorClient):
Avoid unnecessary retain/autorelease by adopting.

  • WebView/WebActionMenuController.mm:

(-[WebActionMenuController _defaultMenuItemsForDataDetectableLink]):
Adopt the allocated object.

Source/WebKit2:

  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController _defaultMenuItemsForDataDetectableLink]):
Adopt the allocated object.

8:44 PM Changeset in webkit [180118] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

IncompleteMetaDataCue leak seen on leaks bot
https://bugs.webkit.org/show_bug.cgi?id=141611

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-02-14
Reviewed by Eric Carlson.

  • platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.h:

(WebCore::IncompleteMetaDataCue::IncompleteMetaDataCue): Deleted.
(WebCore::IncompleteMetaDataCue::~IncompleteMetaDataCue): Deleted.
(WebCore::IncompleteMetaDataCue::cueData): Deleted.
(WebCore::IncompleteMetaDataCue::startTime): Deleted.
Convert to a struct and hold a list of structs instead of pointers.

  • platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp:

(WebCore::InbandMetadataTextTrackPrivateAVF::addDataCue):
(WebCore::InbandMetadataTextTrackPrivateAVF::updatePendingCueEndTimes):
(WebCore::InbandMetadataTextTrackPrivateAVF::flushPartialCues):
Update use of IncompleteMetaDataCue and modernize related code.

6:42 PM Changeset in webkit [180117] by Joseph Pecoraro
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Remove specificity approximation
https://bugs.webkit.org/show_bug.cgi?id=141600

Reviewed by Timothy Hatcher.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Views/CSSStyleDeclarationSection.js:

(WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector):

3:25 PM Changeset in webkit [180116] by Brian Burg
  • 100 edits in trunk/Source

Web Inspector: remove some unnecessary Inspector prefixes from class names in Inspector namespace
https://bugs.webkit.org/show_bug.cgi?id=141372

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

  • inspector/ConsoleMessage.cpp:

(Inspector::ConsoleMessage::addToFrontend):
(Inspector::ConsoleMessage::updateRepeatCountInConsole):

  • inspector/ConsoleMessage.h:
  • inspector/InspectorAgentBase.h:
  • inspector/InspectorAgentRegistry.cpp:

(Inspector::AgentRegistry::AgentRegistry):
(Inspector::AgentRegistry::append):
(Inspector::AgentRegistry::appendExtraAgent):
(Inspector::AgentRegistry::didCreateFrontendAndBackend):
(Inspector::AgentRegistry::willDestroyFrontendAndBackend):
(Inspector::AgentRegistry::discardAgents):
(Inspector::InspectorAgentRegistry::InspectorAgentRegistry): Deleted.
(Inspector::InspectorAgentRegistry::append): Deleted.
(Inspector::InspectorAgentRegistry::appendExtraAgent): Deleted.
(Inspector::InspectorAgentRegistry::didCreateFrontendAndBackend): Deleted.
(Inspector::InspectorAgentRegistry::willDestroyFrontendAndBackend): Deleted.
(Inspector::InspectorAgentRegistry::discardAgents): Deleted.

  • inspector/InspectorAgentRegistry.h:
  • inspector/InspectorBackendDispatcher.cpp:

(Inspector::BackendDispatcher::CallbackBase::CallbackBase):
(Inspector::BackendDispatcher::CallbackBase::isActive):
(Inspector::BackendDispatcher::CallbackBase::sendFailure):
(Inspector::BackendDispatcher::CallbackBase::sendIfActive):
(Inspector::BackendDispatcher::create):
(Inspector::BackendDispatcher::registerDispatcherForDomain):
(Inspector::BackendDispatcher::dispatch):
(Inspector::BackendDispatcher::sendResponse):
(Inspector::BackendDispatcher::reportProtocolError):
(Inspector::BackendDispatcher::getInteger):
(Inspector::BackendDispatcher::getDouble):
(Inspector::BackendDispatcher::getString):
(Inspector::BackendDispatcher::getBoolean):
(Inspector::BackendDispatcher::getObject):
(Inspector::BackendDispatcher::getArray):
(Inspector::BackendDispatcher::getValue):
(Inspector::InspectorBackendDispatcher::CallbackBase::CallbackBase): Deleted.
(Inspector::InspectorBackendDispatcher::CallbackBase::isActive): Deleted.
(Inspector::InspectorBackendDispatcher::CallbackBase::sendFailure): Deleted.
(Inspector::InspectorBackendDispatcher::CallbackBase::sendIfActive): Deleted.
(Inspector::InspectorBackendDispatcher::create): Deleted.
(Inspector::InspectorBackendDispatcher::registerDispatcherForDomain): Deleted.
(Inspector::InspectorBackendDispatcher::dispatch): Deleted.
(Inspector::InspectorBackendDispatcher::sendResponse): Deleted.
(Inspector::InspectorBackendDispatcher::reportProtocolError): Deleted.
(Inspector::InspectorBackendDispatcher::getInteger): Deleted.
(Inspector::InspectorBackendDispatcher::getDouble): Deleted.
(Inspector::InspectorBackendDispatcher::getString): Deleted.
(Inspector::InspectorBackendDispatcher::getBoolean): Deleted.
(Inspector::InspectorBackendDispatcher::getObject): Deleted.
(Inspector::InspectorBackendDispatcher::getArray): Deleted.
(Inspector::InspectorBackendDispatcher::getValue): Deleted.

  • inspector/InspectorBackendDispatcher.h:

(Inspector::SupplementalBackendDispatcher::SupplementalBackendDispatcher):
(Inspector::SupplementalBackendDispatcher::~SupplementalBackendDispatcher):
(Inspector::InspectorSupplementalBackendDispatcher::InspectorSupplementalBackendDispatcher): Deleted.
(Inspector::InspectorSupplementalBackendDispatcher::~InspectorSupplementalBackendDispatcher): Deleted.

  • inspector/InspectorFrontendChannel.h:

(Inspector::FrontendChannel::~FrontendChannel):
(Inspector::InspectorFrontendChannel::~InspectorFrontendChannel): Deleted.

  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::globalObjectDestroyed):
(Inspector::JSGlobalObjectInspectorController::connectFrontend):
(Inspector::JSGlobalObjectInspectorController::disconnectFrontend):
(Inspector::JSGlobalObjectInspectorController::dispatchMessageFromFrontend):
(Inspector::JSGlobalObjectInspectorController::appendExtraAgent):

  • inspector/JSGlobalObjectInspectorController.h:
  • inspector/agents/InspectorAgent.cpp:

(Inspector::InspectorAgent::didCreateFrontendAndBackend):
(Inspector::InspectorAgent::willDestroyFrontendAndBackend):

  • inspector/agents/InspectorAgent.h:
  • inspector/agents/InspectorConsoleAgent.cpp:

(Inspector::InspectorConsoleAgent::didCreateFrontendAndBackend):
(Inspector::InspectorConsoleAgent::willDestroyFrontendAndBackend):

  • inspector/agents/InspectorConsoleAgent.h:
  • inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::InspectorDebuggerAgent::didCreateFrontendAndBackend):
(Inspector::InspectorDebuggerAgent::willDestroyFrontendAndBackend):
(Inspector::InspectorDebuggerAgent::handleConsoleAssert):
(Inspector::InspectorDebuggerAgent::schedulePauseOnNextStatement):
(Inspector::InspectorDebuggerAgent::pause):
(Inspector::InspectorDebuggerAgent::scriptExecutionBlockedByCSP):
(Inspector::InspectorDebuggerAgent::didPause):
(Inspector::InspectorDebuggerAgent::breakProgram):
(Inspector::InspectorDebuggerAgent::clearBreakDetails):

  • inspector/agents/InspectorDebuggerAgent.h:
  • inspector/agents/InspectorRuntimeAgent.cpp:

(Inspector::InspectorRuntimeAgent::willDestroyFrontendAndBackend):

  • inspector/agents/InspectorRuntimeAgent.h:
  • inspector/agents/JSGlobalObjectRuntimeAgent.cpp:

(Inspector::JSGlobalObjectRuntimeAgent::didCreateFrontendAndBackend):
(Inspector::JSGlobalObjectRuntimeAgent::willDestroyFrontendAndBackend):

  • inspector/agents/JSGlobalObjectRuntimeAgent.h:
  • inspector/augmentable/AlternateDispatchableAgent.h:
  • inspector/augmentable/AugmentableInspectorController.h:
  • inspector/remote/RemoteInspectorDebuggable.h:
  • inspector/remote/RemoteInspectorDebuggableConnection.h:
  • inspector/scripts/codegen/cpp_generator.py:

(CppGenerator.cpp_type_for_formal_out_parameter):
(CppGenerator.cpp_type_for_stack_out_parameter):

  • inspector/scripts/codegen/cpp_generator_templates.py:

(AlternateBackendDispatcher):
(Alternate):
(void):
(AlternateInspectorBackendDispatcher): Deleted.
(AlternateInspector): Deleted.

  • inspector/scripts/codegen/generate_cpp_backend_dispatcher_header.py:

(CppBackendDispatcherHeaderGenerator._generate_alternate_handler_forward_declarations_for_domains.Alternate):
(CppBackendDispatcherHeaderGenerator._generate_dispatcher_declaration_for_command):
(CppBackendDispatcherHeaderGenerator._generate_alternate_handler_forward_declarations_for_domains.AlternateInspector): Deleted.

  • inspector/scripts/codegen/generate_cpp_backend_dispatcher_implementation.py:

(CppBackendDispatcherImplementationGenerator._generate_handler_class_destructor_for_domain):
(CppBackendDispatcherImplementationGenerator._generate_large_dispatcher_switch_implementation_for_domain):
(CppBackendDispatcherImplementationGenerator._generate_dispatcher_implementation_for_command):

  • inspector/scripts/codegen/generate_cpp_frontend_dispatcher_implementation.py:

(CppFrontendDispatcherImplementationGenerator._generate_dispatcher_implementation_for_event):

  • inspector/scripts/codegen/generate_objc_frontend_dispatcher_implementation.py:

(ObjCFrontendDispatcherImplementationGenerator._generate_event):

  • inspector/scripts/tests/expected/commands-with-async-attribute.json-result:
  • inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
  • inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result:
  • inspector/scripts/tests/expected/enum-values.json-result:
  • inspector/scripts/tests/expected/events-with-optional-parameters.json-result:
  • inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result:
  • inspector/scripts/tests/expected/same-type-id-different-domain.json-result:
  • inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result:
  • inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-array-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-enum-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-object-type.json-result:
  • inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result:
  • runtime/JSGlobalObjectDebuggable.cpp:

(JSC::JSGlobalObjectDebuggable::connect):
(JSC::JSGlobalObjectDebuggable::disconnect):

  • runtime/JSGlobalObjectDebuggable.h:

Source/WebCore:

  • WebCore.exp.in:
  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::didCreateFrontendAndBackend):
(WebCore::InspectorApplicationCacheAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorApplicationCacheAgent.h:
  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::didCreateFrontendAndBackend):
(WebCore::InspectorCSSAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorCSSAgent.h:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::inspectedPageDestroyed):
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
(WebCore::InspectorController::show):
(WebCore::InspectorController::close):
(WebCore::InspectorController::dispatchMessageFromFrontend):

  • inspector/InspectorController.h:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorDOMAgent.h:
  • inspector/InspectorDOMDebuggerAgent.cpp:

(WebCore::InspectorDOMDebuggerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMDebuggerAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
(WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
(WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
(WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
(WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
(WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):

  • inspector/InspectorDOMDebuggerAgent.h:
  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMStorageAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorDOMStorageAgent.h:
  • inspector/InspectorDatabaseAgent.cpp:

(WebCore::InspectorDatabaseAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDatabaseAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorDatabaseAgent.h:
  • inspector/InspectorDatabaseResource.cpp:

(WebCore::InspectorDatabaseResource::bind):

  • inspector/InspectorDatabaseResource.h:
  • inspector/InspectorForwarding.h:
  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore::InspectorIndexedDBAgent::didCreateFrontendAndBackend):
(WebCore::InspectorIndexedDBAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorIndexedDBAgent.h:
  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::didCreateFrontendAndBackend):
(WebCore::InspectorLayerTreeAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorLayerTreeAgent.h:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::didCreateFrontendAndBackend):
(WebCore::InspectorPageAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorPageAgent::getScriptExecutionStatus):

  • inspector/InspectorPageAgent.h:
  • inspector/InspectorReplayAgent.cpp:

(WebCore::InspectorReplayAgent::didCreateFrontendAndBackend):
(WebCore::InspectorReplayAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorReplayAgent.h:
  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didCreateFrontendAndBackend):
(WebCore::InspectorResourceAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorResourceAgent.h:
  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::styleWithProperties):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::didCreateFrontendAndBackend):
(WebCore::InspectorTimelineAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorTimelineAgent.h:
  • inspector/InspectorWorkerAgent.cpp:

(WebCore::InspectorWorkerAgent::WorkerFrontendChannel::WorkerFrontendChannel):
(WebCore::InspectorWorkerAgent::didCreateFrontendAndBackend):
(WebCore::InspectorWorkerAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorWorkerAgent.h:
  • inspector/PageRuntimeAgent.cpp:

(WebCore::PageRuntimeAgent::didCreateFrontendAndBackend):
(WebCore::PageRuntimeAgent::willDestroyFrontendAndBackend):

  • inspector/PageRuntimeAgent.h:
  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::~WorkerInspectorController):
(WebCore::WorkerInspectorController::connectFrontend):
(WebCore::WorkerInspectorController::disconnectFrontend):

  • inspector/WorkerInspectorController.h:
  • inspector/WorkerRuntimeAgent.cpp:

(WebCore::WorkerRuntimeAgent::didCreateFrontendAndBackend):
(WebCore::WorkerRuntimeAgent::willDestroyFrontendAndBackend):

  • inspector/WorkerRuntimeAgent.h:
  • loader/EmptyClients.h:
  • page/PageDebuggable.cpp:

(WebCore::PageDebuggable::connect):
(WebCore::PageDebuggable::disconnect):

  • page/PageDebuggable.h:
  • testing/Internals.cpp:

(WebCore::Internals::closeDummyInspectorFrontend):

  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::disconnectFromInspector):

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Source/WebKit/mac:

  • WebCoreSupport/WebInspectorClient.mm:

(-[WebInspectorWindowController destroyInspectorView:]):

Source/WebKit/win:

  • WebCoreSupport/WebInspectorClient.cpp:

(WebInspectorFrontendClient::destroyInspectorView):

Source/WebKit2:

  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::remoteFrontendDisconnected):

2:56 PM Changeset in webkit [180115] by Beth Dakin
  • 5 edits in trunk/Source/WebKit2

REGRESSION: Page opens with enlarged font after visiting PDF, navigating back,
then doing a process swap
https://bugs.webkit.org/show_bug.cgi?id=141584
-and corresponding-
rdar://problem/18167729

Reviewed by Tim Horton.

This patch keeps the plugin zoom/scale factors separate from page zoom/scale
factors in the UI process since they are used for slightly different purposes for
plugins (i.e., PDFs) than they are for normal pages. Keeping track of the right
factor for the right type of document will ensure that we don’t use the wrong one.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::pageZoomFactor):
(WebKit::WebPageProxy::pageScaleFactor):
(WebKit::WebPageProxy::pluginScaleFactorDidChange):
(WebKit::WebPageProxy::pluginZoomFactorDidChange):
(WebKit::WebPageProxy::didCommitLoadForFrame):
(WebKit::WebPageProxy::pageZoomFactorDidChange): Deleted.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::pageZoomFactor): Deleted.
(WebKit::WebPageProxy::pageScaleFactor): Deleted.

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::setPageScaleFactor):

1:52 PM Changeset in webkit [180114] by ddkilzer@apple.com
  • 11 edits in trunk/Source

REGRESSION (r180082): WebCore Debug builds fail on Mavericks due to weak export symbols
<http://webkit.org/b/141607>

Work towards fixing the Mavericks Debug build.

Source/JavaScriptCore:

  • inspector/ScriptDebugServer.h:

(Inspector::ScriptDebugServer::Task): Export class.

  • inspector/agents/InspectorDebuggerAgent.h:

(Inspector::InspectorDebuggerAgent::Listener): Export class.

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::setConsoleClient): Do not mark inline
method for export.

Source/WebCore:

  • dom/Document.h:

(WebCore::Document::setAnnotatedRegionsDirty):

  • dom/Event.h:

(WebCore::Event::create):

  • dom/Node.h:

(WebCore::Node::hasEditableStyle):

  • dom/Position.h:

(WebCore::Position::Position):

  • editing/FrameSelection.h:

(WebCore::DragCaretController::clear):

  • loader/ResourceLoader.h:

(WebCore::ResourceLoader::originalRequest):

  • Do not mark inline methods for export.
12:41 PM Changeset in webkit [180113] by commit-queue@webkit.org
  • 4 edits in trunk

Web Inspector: Symbol RemoteObject should not send sub-type
https://bugs.webkit.org/show_bug.cgi?id=141604

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-02-14
Reviewed by Brian Burg.

Source/JavaScriptCore:

  • inspector/InjectedScriptSource.js:

LayoutTests:

  • inspector/model/remote-object-expected.txt:
11:34 AM Changeset in webkit [180112] by Brian Burg
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r179573): Web Inspector toolbar is completely messed up on Mavericks
https://bugs.webkit.org/show_bug.cgi?id=141555

Reviewed by Joseph Pecoraro.

The old WKView-based code called _setDrawsBackground:NO on the WKView for Mavericks.
Simulate this old behavior by calling WebPageProxy::setDrawsBackground(false).

WKWebView's setOpaque:BOOL gives a flat background color instead of the intended
gradient, so we can't use that method.

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

10:59 AM Changeset in webkit [180111] by ap@apple.com
  • 2 edits in trunk/LayoutTests

After updating tests to use kerning, ligatures, and printer fonts, some tests fail
https://bugs.webkit.org/show_bug.cgi?id=139968

Re-adding the test to expectations, it fails flakily (perhaps it's order dependent).

  • platform/mac/TestExpectations:
10:16 AM Changeset in webkit [180110] by ap@apple.com
  • 12 edits
    6 adds in trunk

rel="noreferrer" should make window.opener null
https://bugs.webkit.org/show_bug.cgi?id=141579

Reviewed by Darin Adler.

Source/WebCore:

Tests: http/tests/navigation/target-blank-opener-post.html

http/tests/navigation/target-blank-opener.html

We used to avoid passing window.opener policy by temporarily storing it in a FrameLoader
member variable. This works for some clients - ones that invoke delegate callbacks
synchronously - but not in the general case.

So, changed to passing the policy explicitly.

  • WebCore.exp.in:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::FrameLoader):
(WebCore::FrameLoader::urlSelected):
(WebCore::FrameLoader::loadURLIntoChildFrame):
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):

  • loader/FrameLoader.h:

(WebCore::FrameLoader::suppressOpenerInNewFrame): Deleted.

  • loader/FrameLoaderTypes.h:
  • loader/NavigationScheduler.cpp:
  • page/ContextMenuController.cpp:

(WebCore::openNewWindow):
(WebCore::ContextMenuController::contextMenuItemSelected):

Source/WebKit/ios:

  • WebView/WebPDFViewPlaceholder.mm:

(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]): Updated for a new WebCore
function signature. There is no rel="noreferrer" in PDF, so we can just always allow.

Source/WebKit/mac:

  • WebView/WebPDFView.mm:

(-[WebPDFView PDFViewWillClickOnLink:withURL:]): Updated for a new WebCore
function signature. There is no rel="noreferrer" in PDF, so we can just always allow.

LayoutTests:

Unfortunately, these tests are not quite real, because they pass even without the
fix. There reason is that delegates respond synchronously in WKTR and DRT.

But if there is any large refactoring, there is a non-zero chance that the tests
will catch future mistakes.

  • http/tests/navigation/resources/target-blank-opener-post-window.php: Added.
  • http/tests/navigation/resources/target-blank-opener-window.php: Added.
  • http/tests/navigation/target-blank-opener-expected.txt: Added.
  • http/tests/navigation/target-blank-opener-post-expected.txt: Added.
  • http/tests/navigation/target-blank-opener-post.html: Added.
  • http/tests/navigation/target-blank-opener.html: Added.
9:16 AM Changeset in webkit [180109] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION (r180082): WebCore build on Mountain Lion fails due to weak export for i386
<rdar://problem/19838127>

  • Configurations/WebCore.unexp: Add missing symbol.
8:05 AM Changeset in webkit [180108] by mmaxfield@apple.com
  • 2 edits in trunk/LayoutTests

Re-ordering expectations.

Unreviewed.

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2015-02-14

  • platform/mac/TestExpectations:
8:01 AM Changeset in webkit [180107] by mmaxfield@apple.com
  • 58 edits in trunk/LayoutTests

[Mac] Cleanup after r177774
https://bugs.webkit.org/show_bug.cgi?id=141590

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2015-02-14
Reviewed by Zalan Bujtas.

Test expected results simply need to be updated.

  • platform/mac/TestExpectations:
  • platform/mac/accessibility/content-editable-as-textarea-expected.txt:
  • platform/mac/accessibility/press-targets-center-point-expected.txt: Added.
  • platform/mac/accessibility/table-attributes-expected.txt:
  • platform/mac/accessibility/table-cell-spans-expected.txt:
  • platform/mac/accessibility/table-detection-expected.txt:
  • platform/mac/accessibility/table-one-cell-expected.txt:
  • platform/mac/accessibility/table-sections-expected.txt:
  • platform/mac/accessibility/table-with-rules-expected.txt:
  • platform/mac/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt: Added.
  • platform/mac/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
  • platform/mac/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
  • platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants-expected.txt:
  • platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2-expected.txt:
  • platform/mac/css1/box_properties/acid_test-expected.txt:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.txt:
  • platform/mac/editing/selection/5057506-2-expected.txt:
  • platform/mac/editing/selection/5057506-expected.txt:
  • platform/mac/editing/selection/5825350-2-expected.txt:
  • platform/mac/editing/selection/mixed-editability-10-expected.txt:
  • platform/mac/fast/block/basic/011-expected.txt:
  • platform/mac/fast/block/basic/minheight-expected.txt:
  • platform/mac/fast/css-grid-layout/grid-item-order-in-content-sized-columns-resolution-expected.txt: Added.
  • platform/mac/fast/css/002-expected.txt:
  • platform/mac/fast/forms/basic-textareas-expected.txt:
  • platform/mac/fast/frames/frame-scrolling-attribute-expected.txt:
  • platform/mac/fast/invalid/008-expected.txt:
  • platform/mac/fast/overflow/003-expected.txt:
  • platform/mac/fast/repaint/fixed-move-after-keyboard-scroll-expected.txt:
  • platform/mac/fast/repaint/line-flow-with-floats-9-expected.txt:
  • platform/mac/fast/repaint/selection-rl-expected.txt:
  • platform/mac/fast/repaint/selection-ruby-rl-expected.txt: Added.
  • platform/mac/fast/sub-pixel/inline-block-with-padding-expected.txt: Added.
  • platform/mac/fast/table/col-and-colgroup-offsets-expected.txt: Added.
  • platform/mac/fast/text/atsui-pointtooffset-calls-cg-expected.txt:
  • platform/mac/fast/text/basic/generic-family-reset-expected.txt:
  • platform/mac/fast/text/international/vertical-text-metrics-test-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/mac/js/dom/dom-static-property-for-in-iteration-expected.txt: Added.
  • platform/mac/media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt: Added.
  • platform/mac/platform/mac/accessibility/aria-columnrowheaders-expected.txt: Copied from LayoutTests/platform/mac/accessibility/table-cell-spans-expected.txt.
  • platform/mac/platform/mac/accessibility/bounds-for-range-expected.txt: Added.
  • platform/mac/platform/mac/accessibility/document-links-expected.txt: Added.
  • platform/mac/platform/mac/accessibility/internal-link-anchors-expected.txt: Added.
  • platform/mac/scrollbars/overflow-scrollbar-combinations-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt:
  • platform/mac/svg/batik/text/textEffect2-expected.txt:
  • platform/mac/svg/batik/text/textEffect3-expected.txt:
  • platform/mac/svg/batik/text/textProperties-expected.txt:
  • platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
  • platform/mac/svg/custom/text-filter-expected.txt:
  • platform/mac/svg/filters/feColorMatrix-values-expected.txt: Added.
  • platform/mac/svg/filters/filter-on-filter-for-text-expected.txt:
  • platform/mac/svg/filters/filter-on-tspan-expected.txt:
  • platform/mac/svg/filters/sourceAlpha-expected.txt:
  • platform/mac/svg/repaint/text-mask-update-expected.txt: Added.
  • platform/mac/tables/mozilla/bugs/bug131020-expected.txt:
12:56 AM Changeset in webkit [180106] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[buildbot] Enable run-api-tests on release Mac bots
https://bugs.webkit.org/show_bug.cgi?id=141518

Reviewed by Darin Adler.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunUnitTests):
(BuildFactory.init):
(TestFactory.init):
(BuildAndTestFactory.init):
(RunUnitTests.start): Deleted.
(unitTestsSupported): Deleted.

Feb 13, 2015:

10:37 PM Changeset in webkit [180105] by ap@apple.com
  • 2 edits in trunk/LayoutTests

http/tests/xmlhttprequest/event-listener-gc.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=33342

Reviewed by Darin Adler.

Instead of using a zero delay timer, which can be legitimately delayed for dozens
of milliseconds, perform the collection in a second load event handler. GC code
has changed so much that I cannot confirm that the test still verifies the fix,
however we collect after returning for the function and unwinding the stack, so it should.

Also, clear the JS variable for a good measure.

  • http/tests/xmlhttprequest/event-listener-gc.html:
10:20 PM Changeset in webkit [180104] by mmaxfield@apple.com
  • 3 edits in trunk/LayoutTests

Update fast/canvas/canvas-measureText-ideographicSpace.html after r177774
https://bugs.webkit.org/show_bug.cgi?id=141595

Reviewed by Zalan Bujtas.

  • fast/canvas/canvas-measureText-ideographicSpace.html:
  • platform/mac/TestExpectations:
9:16 PM Changeset in webkit [180103] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed, EFL gardening. Mark font & text tests to failure.

  • platform/efl/TestExpectations:
9:16 PM Changeset in webkit [180102] by benjamin@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Attempt to fix 32bits build after r180098

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:

I copied the attribute from the MathObject version of that function when I moved
it over. DFG has no version of a function call taking those attributes.

8:59 PM Changeset in webkit [180101] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

JSContext Inspector: Do not stash console messages for non-debuggable JSContext
https://bugs.webkit.org/show_bug.cgi?id=141589

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-02-13
Reviewed by Timothy Hatcher.

Consider developer extras disabled for JSContext inspection if the
RemoteInspector server is not enabled (typically a non-debuggable
process rejected by webinspectord) or if remote debugging on the
JSContext was explicitly disabled via SPI.

When developer extras are disabled, console message will not be stashed.

  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::developerExtrasEnabled):

  • inspector/JSGlobalObjectInspectorController.h:
8:53 PM Changeset in webkit [180100] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed, EFL gardening. 3 inspector tests are marked to failure.

  • platform/efl/TestExpectations:
8:23 PM Changeset in webkit [180099] by Lucas Forschler
  • 3 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merge r179768. rdar://problem/19733844.

8:20 PM Changeset in webkit [180098] by benjamin@webkit.org
  • 25 edits
    4 adds in trunk/Source/JavaScriptCore

Add a DFG node for the Pow Intrinsics
https://bugs.webkit.org/show_bug.cgi?id=141540

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Filip Pizlo.

Add a DFG Node for PowIntrinsic. This patch covers the basic cases
need to avoid massive regression. I will iterate over the node to cover
the missing types.

With this patch I get the following progressions on benchmarks:
-LongSpider's math-partial-sums: +5%.
-Kraken's imaging-darkroom: +17%
-AsmBench's cray.c: +6.6%
-CompressionBench: +2.2% globally.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
Cover a couple of trivial cases:
-If the exponent is zero, the result is always one, regardless of the base.
-If both arguments are constants, compute the result at compile time.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleIntrinsic):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
We only support 2 basic cases at this time:
-Math.pow(double, int)
-Math.pow(double, double).

I'll cover Math.pow(int, int) in a follow up.

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToArithSqrt):
(JSC::DFG::Node::arithNodeFlags):

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):
(JSC::DFG::PredictionPropagationPhase::doDoubleVoting):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::compileArithPowIntegerFastPath):
(JSC::DFG::SpeculativeJIT::compileArithPow):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGStrengthReductionPhase.cpp:

(JSC::DFG::StrengthReductionPhase::handleNode):

  • dfg/DFGValidate.cpp:

(JSC::DFG::Validate::validate):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLIntrinsicRepository.h:
  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileArithPow):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::doublePow):
(JSC::FTL::Output::doublePowi):

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:
  • runtime/MathObject.cpp:

(JSC::mathProtoFuncPow):
(JSC::isDenormal): Deleted.
(JSC::isEdgeCase): Deleted.
(JSC::mathPow): Deleted.

  • tests/stress/math-pow-basics.js: Added.
  • tests/stress/math-pow-integer-exponent-fastpath.js: Added.
  • tests/stress/math-pow-nan-behaviors.js: Added.
  • tests/stress/math-pow-with-constants.js: Added.

Start some basic testing of Math.pow().
Due to the various transform, the value change when the code tiers up,
I covered this by checking for approximate values.

8:16 PM Changeset in webkit [180097] by Lucas Forschler
  • 12 edits
    8 copies in branches/safari-600.1.4.15-branch

Merged r174823. rdar://problem/19733844

8:00 PM Changeset in webkit [180096] by Lucas Forschler
  • 20 edits
    5 copies in branches/safari-600.1.4.15-branch

Merged r174402. rdar://problem/19733844

7:55 PM Changeset in webkit [180095] by Brent Fulgham
  • 7 edits
    2 adds in branches/safari-600.5-branch

Source/WebCore: Merge r173806. <rdar://problem/19830405>

2014-09-22 Mihnea Ovidenie <mihnea@adobe.com>

[CSS Regions] Assertion failure and null dereference crash when using animations and regions
https://bugs.webkit.org/show_bug.cgi?id=136918

Reviewed by Andrei Bucur.

In some situations, for instance when an image has an attached animation, the style change caused by the animation
triggers a geometry update for the backing store associated with the image's layer. This may occur before
the layout for the image has finished.

Moreover, if the image in such situation - having a composited layer - is displayed in a region,
sicne the layout did not finish yet, the mappings between the layers of the elements collected in the named flow
and the regions associated with the named flow are not updated and cannot be used.

Therefore in those situations, we have to bail out early and use these mappings only after the layout has finished.

This patch also changes RenderLayerBacking method updateAfterDescendents -> updateAfterDescendants.

Test: fast/regions/animated-image-in-region.html

  • rendering/RenderFlowThread.cpp: (WebCore::RenderFlowThread::cachedRegionForCompositedLayer):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::calculateClipRects):
  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateAfterDescendants):
  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): (WebCore::RenderLayerCompositor::updateLayerTreeGeometry): (WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):

LayoutTests: Merge r173806. <rdar://problem/19830405>

2014-09-22 Mihnea Ovidenie <mihnea@adobe.com>

[CSS Regions] Assertion failure and null dereference crash when using animations and regions
https://bugs.webkit.org/show_bug.cgi?id=136918

Reviewed by Andrei Bucur.

  • fast/regions/animated-image-in-region-expected.txt: Added.
  • fast/regions/animated-image-in-region.html: Added.
5:25 PM Changeset in webkit [180094] by Simon Fraser
  • 8 edits in trunk/Source/WebKit2

Crash closing a tab when a context or popup menu is open
https://bugs.webkit.org/show_bug.cgi?id=141582
rdar://problem/17700475

Reviewed by Anders Carlsson.

If a context menu or a popup menu is open when a tab is programmatically closed,
then we'd crash because both the WebContextMenuProxyMac/WebPopupMenuProxyMac
and the WebPageProxy would be deleted while still in use, via messages
handled via the nested event tracking runloop.

Fix by protecting those things while showing the popup. Also programmatically
dismiss the popup when closing the WebPageProxy.

  • UIProcess/WebContextMenuProxy.h:

(WebKit::WebContextMenuProxy::cancelTracking):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::showPopupMenu): Clean up some EFL-related confusion that we don't need.
Retaining |this| will also retain m_activePopupMenu.
(WebKit::WebPageProxy::hidePopupMenu):
(WebKit::WebPageProxy::showContextMenu):
(WebKit::WebPageProxy::resetState):

  • UIProcess/WebPopupMenuProxy.h:

(WebKit::WebPopupMenuProxy::cancelTracking):

  • UIProcess/mac/WebContextMenuProxyMac.h:
  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::showContextMenu):
(WebKit::WebContextMenuProxyMac::cancelTracking):

  • UIProcess/mac/WebPopupMenuProxyMac.h: For popups, we need to remember if we were

canceled to avoid trying to send events after closing.

  • UIProcess/mac/WebPopupMenuProxyMac.mm:

(WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
(WebKit::WebPopupMenuProxyMac::showPopupMenu):
(WebKit::WebPopupMenuProxyMac::cancelTracking):

5:20 PM Changeset in webkit [180093] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WTF

[EFL] Enable bmalloc for EFL port
https://bugs.webkit.org/show_bug.cgi?id=141459

Reviewed by Csaba Osztrogonác.

  • wtf/CMakeLists.txt: Remove TCSystemAlloc.cpp/h.
  • wtf/FastMalloc.cpp: Enable BMALLOC for EFL port.
5:09 PM Changeset in webkit [180092] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

Unreviewed build fix after r179591.

  • public/api/commits.php:
4:59 PM Changeset in webkit [180091] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

The status of a A/B testing request always eventually becomes "Failed"
https://bugs.webkit.org/show_bug.cgi?id=141523

Reviewed by Andreas Kling.

The bug was caused by /api/build-requests always setting the status of a build request to 'failed' when
'failedIfNotCompleted' was sent by the buildbot sync'er.

Fixed the bug by only setting the status to 'failed' if it wasn't set to 'completed'.

  • public/api/build-requests.php:

(main):

4:37 PM Changeset in webkit [180090] by Chris Dumez
  • 3 edits
    2 adds in trunk

RenderListItem resets its marker's style on style change even if the diff is StyleDifferenceEqual
https://bugs.webkit.org/show_bug.cgi?id=141572
<rdar://problem/19759818>

Reviewed by Simon Fraser.

Source/WebCore:

Do not unnecessarily update the marker's style in RenderListItem::styleDidChange()
if the RenderStyle diff is StyleDifferenceEqual. Doing so can cause unnecessary
layouts.

This was causing high cpu usage on
http://www.nokogiri.org/tutorials/searching_a_xml_html_document.html because there
is an animation that changes the style every second (but the diff is equal) and the
RenderListItem keeps resetting its marker's margin, which triggers a layout and the
RenderListMarker re-computes its margin during layout and updates its style again.

With this change, CPU usage on the page goes from 150% to 20%. There is only a style
recalc happening every second, no more relayouts and repaints.

Test: fast/repaint/list-item-equal-style-change-no-repaint.html

  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::styleDidChange):

LayoutTests:

Add a layout test to make sure that an animation causing a style change
with StyleDifferenceEqual diff does not cause a repaint.

  • fast/repaint/list-item-equal-style-change-no-repaint-expected.txt: Added.
  • fast/repaint/list-item-equal-style-change-no-repaint.html: Added.
4:15 PM Changeset in webkit [180089] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Fix the iOS build.

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewGestureController.h:

This code is never used on iOS.

4:06 PM Changeset in webkit [180088] by timothy_horton@apple.com
  • 14 edits in trunk/Source

Make WebCore::IOSurface have single ownership instead of refcounting
https://bugs.webkit.org/show_bug.cgi?id=141578

Reviewed by Anders Carlsson.

In the interests of making it harder to misuse and to make it more like
ImageBuffer, our IOSurface wrapper should have single ownership.

This will also allow future changes which depend on temporarily
consuming an IOSurface to more easily enforce correct usage.

  • WebCore.exp.in:
  • platform/graphics/cg/IOSurfacePool.cpp:

(WebCore::IOSurfacePool::takeSurface):
(WebCore::IOSurfacePool::addSurface):
(WebCore::IOSurfacePool::insertSurfaceIntoPool):
(WebCore::IOSurfacePool::tryEvictInUseSurface):
(WebCore::IOSurfacePool::tryEvictOldestCachedSurface):
(WebCore::IOSurfacePool::collectInUseSurfaces):

  • platform/graphics/cg/IOSurfacePool.h:
  • platform/graphics/cocoa/IOSurface.h:
  • platform/graphics/cocoa/IOSurface.mm:

(IOSurface::create):
(IOSurface::createFromSendRight):
(IOSurface::createFromSurface):
(IOSurface::createFromImage):
Make IOSurface::create()s return a unique_ptr, and adjust everywhere.

  • Shared/mac/RemoteLayerBackingStore.h:
  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::Buffer::discard):

  • UIProcess/API/mac/WKView.mm:

(-[WKView _takeViewSnapshot]):

  • UIProcess/mac/ViewGestureController.h:
  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewSnapshotStore.h:
  • UIProcess/mac/ViewSnapshotStore.mm:

(WebKit::ViewSnapshot::create):
(WebKit::ViewSnapshot::ViewSnapshot):
(WebKit::ViewSnapshot::hasImage):
Adjust to the single-ownership model.

3:44 PM Changeset in webkit [180087] by enrica@apple.com
  • 6 edits in trunk

Additional emoji group support.
https://bugs.webkit.org/show_bug.cgi?id=141539
rdar://problem/19727527

Reviewed by Sam Weinig.

Source/WebCore:

Adding some new emoji ligatures.
Updated existing test to include the new sequences.

  • platform/text/TextBreakIterator.cpp:

(WebCore::cursorMovementIterator):

  • rendering/RenderText.cpp:

(WebCore::isEmojiGroupCandidate):

LayoutTests:

Updating test to reflect the new emoji ligatures supported.

  • editing/deleting/delete-emoji-expected.txt:
  • editing/deleting/delete-emoji.html:
3:27 PM Changeset in webkit [180086] by Brent Fulgham
  • 3 edits in trunk/Source/WebKit2

[iOS] Unreviewed build fix after r180076.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters): We do not
want to do this on iOS.

  • UIProcess/WebPageProxy.h: No need to expose function

on iOS (only Mac).

3:08 PM Changeset in webkit [180085] by benjamin@webkit.org
  • 6 edits
    2 adds in trunk/Source/JavaScriptCore

ArithSqrt should not be conditional on supportsFloatingPointSqrt
https://bugs.webkit.org/show_bug.cgi?id=141546

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Geoffrey Garen and Filip Pizlo.

Just fallback to the function call in the DFG codegen.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleIntrinsic):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithSqrt):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • tests/stress/math-sqrt-basics.js: Added.

Basic coverage.

  • tests/stress/math-sqrt-basics-disable-architecture-specific-optimizations.js: Added.

Same tests but forcing the function call.

2:57 PM Changeset in webkit [180084] by Lucas Forschler
  • 7 edits
    4 copies
    2 deletes in branches/safari-600.1.4.15-branch

Merged r179933. rdar://problem/19812665

2:46 PM Changeset in webkit [180083] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r180060) New js/regress-141098 test crashes when LLInt is disabled.
https://bugs.webkit.org/show_bug.cgi?id=141577

Reviewed by Benjamin Poulain.

Changed the prologue of the baseline JIT to check for stack space for all
types of code blocks. Previously, it was only checking Function. Now
it checks Program and Eval as well.

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

2:40 PM Changeset in webkit [180082] by achristensen@apple.com
  • 2 edits
    1 add in trunk/Source/WebCore

Really stop using export files.
https://bugs.webkit.org/show_bug.cgi?id=141521

Reviewed by Mark Rowe.

  • Configurations/WebCore.xcconfig:

Don't use exported symbols files.

  • Configurations/WebCore.unexp:

Added list of symbols not to export (needed by Xcode 5.0.2).

2:18 PM Changeset in webkit [180081] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Simplify ASSERT in lastRubyRun().
https://bugs.webkit.org/show_bug.cgi?id=141574

Reviewed by Daniel Bates.

r180064 made some of the conditions in the ASSERT redundant.

Covered by existing tests.

  • rendering/RenderRuby.cpp:

(WebCore::lastRubyRun):

2:17 PM Changeset in webkit [180080] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.4.15-branch/Source

Versioning.

2:15 PM Changeset in webkit [180079] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.4.15.5

New tag.

2:11 PM Changeset in webkit [180078] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Document some debug asserts in Accessibility (Windows) tests.

  • platform/win/TestExpectations:
2:00 PM Changeset in webkit [180077] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-600.1.4.15-branch

Merged r179772. rdar://problem/19719078

1:56 PM Changeset in webkit [180076] by Brent Fulgham
  • 10 edits in trunk/Source

[Mac, iOS] Adjust pagination behavior for Mail.app printing use
https://bugs.webkit.org/show_bug.cgi?id=141569
<rdar://problem/14912763>

Reviewed by Anders Carlsson.

Source/WebCore:

  • page/Settings.in: Add new pagination setting flag.
  • rendering/RenderBlockFlow.cpp:

(WebCore::messageContainerName): Added.
(WebCore::needsPaginationQuirk): Added.
(WebCore::RenderBlockFlow::adjustLinePositionForPagination): Don't move the message content
div to a new page when using this special printing mode.

Source/WebKit2:

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode): Add new flag.
(WebKit::WebPageCreationParameters::decode): Ditto.

  • Shared/WebPageCreationParameters.h: Ditto.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters): Set new page construction flag.

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::paginationQuirkEnabled): Ask for new pagination flag
when running as a Mail client.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Set up pagination based on desired settings.

1:54 PM Changeset in webkit [180075] by benjamin@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Generate incq instead of addq when the immediate value is one
https://bugs.webkit.org/show_bug.cgi?id=141548

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Gavin Barraclough.

JSC emits "addq #1 (rXX)" *a lot*.
This patch replace that by incq, which is one byte shorter
and is the adviced form.

Sunspider: +0.47%
Octane: +0.28%
Kraken: +0.44%
AsmBench, CompressionBench: neutral.

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::add64):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::incq_m):

1:48 PM Changeset in webkit [180074] by benjamin@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

Little clean up of Bytecode Generator's Label
https://bugs.webkit.org/show_bug.cgi?id=141557

Reviewed by Michael Saboff.

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/BytecodeGenerator.cpp:

Label was a friend of BytecodeGenerator in order to access
m_instructions. There is no need for that, BytecodeGenerator
has a public getter.

  • bytecompiler/Label.h:

(JSC::Label::Label):
(JSC::Label::setLocation):
(JSC::BytecodeGenerator::newLabel):
Make it explicit that the generator must exist.

1:35 PM Changeset in webkit [180073] by bshafiei@apple.com
  • 5 edits in branches/safari-600.4-branch/Source

Versioning.

1:33 PM Changeset in webkit [180072] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.4.9

New tag.

1:25 PM Changeset in webkit [180071] by dbates@webkit.org
  • 3 edits in trunk/Source/WebCore

[iOS] DumpRenderTree.app fails to link due to undefined classes
<rdar://problem/19831228>

Following r179945, DumpRenderTree.app fails to link due to undefined symbols:

Undefined symbols for architecture x86_64:

"_OBJC_CLASS_$_WebEvent", referenced from:

objc-class-ref in libDumpRenderTree.a(EventSendingController.o)

"_OBJC_CLASS_$_WebUndefined", referenced from:

objc-class-ref in libDumpRenderTree.a(ObjCController.o)

We need to export the classes WebScriptObject and WebEvent.

  • bindings/objc/WebScriptObject.h:
  • platform/ios/WebEvent.h:
12:40 PM Changeset in webkit [180070] by Lucas Forschler
  • 2 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r180053. rdar://problem/19812624

12:37 PM Changeset in webkit [180069] by Lucas Forschler
  • 2 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r179737. rdar://problem/19812624

12:30 PM Changeset in webkit [180068] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

CachedResource::clearLoader() should self-destruct if nothing else retains the CachedResource.
<https://webkit.org/b/141568>
<rdar://problem/19800310>

Reviewed by Antti Koivisto.

Anything that may cause CachedResource::canDelete() to return true must also make sure
to call CachedResource::deleteIfPossible(), or we risk leaking the CachedResource.
This is because CachedResource employs an extremely convoluted lifetime mechanism that
depends on its presence in a number of collections, as well as internal counters and
state.

This is a speculative fix for a potential CachedResource leak that I'm not sure exists
in practice, but let's be good citizens here.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::clearLoader):

11:57 AM Changeset in webkit [180067] by timothy@apple.com
  • 1 edit
    1 add in trunk/Source/WebInspectorUI

Web Inspector: support better git diff of localizedStrings.js
https://bugs.webkit.org/show_bug.cgi?id=137237

Reviewed by Joseph Pecoraro.

  • .gitattributes: Added.
11:52 AM Changeset in webkit [180066] by andersca@apple.com
  • 4 edits in trunk

Add a move constructor and move assignment operator to Deque
https://bugs.webkit.org/show_bug.cgi?id=141571

Reviewed by Andreas Kling.

Source/WTF:

  • wtf/Deque.h:

(WTF::inlineCapacity>::Deque):
(WTF::=): Deleted.

Tools:

  • TestWebKitAPI/Tests/WTF/Deque.cpp:

(TestWebKitAPI::TEST):

11:50 AM Changeset in webkit [180065] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE][Mac] Crash at WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset + 2357
https://bugs.webkit.org/show_bug.cgi?id=141566
rdar://problem/19826075

Reviewed by Andreas Kling.

Null check m_mediaSource before dereferencing.

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset):

11:28 AM Changeset in webkit [180064] by Alan Bujtas
  • 3 edits
    2 adds in trunk

REGRESSION (r174761): Invalid cast in WebCore::lastRubyRun / WebCore::RenderRubyAsBlock::addChild
https://bugs.webkit.org/show_bug.cgi?id=137929
rdar://problem/18723492

Reviewed by Chris Dumez.

Ensure that the child renderer is a RenderRubyRun.

Source/WebCore:

Test: fast/ruby/crash-with-before-after-on-ruby.html

  • rendering/RenderRuby.cpp:

(WebCore::lastRubyRun):

LayoutTests:

  • fast/ruby/crash-with-before-after-on-ruby-expected.txt: Added.
  • fast/ruby/crash-with-before-after-on-ruby.html: Added.
11:04 AM Changeset in webkit [180063] by Simon Fraser
  • 4 edits in trunk/Source/WebCore

Crashes under RenderLayer::hitTestLayer under determinePrimarySnapshottedPlugIn()
https://bugs.webkit.org/show_bug.cgi?id=141551

Reviewed by Zalan Bujtas.

It's possible for a layout to dirty the parent frame's state, via the calls to
ownerElement()->scheduleSetNeedsStyleRecalc() that RenderLayerCompositor does when
iframes toggle their compositing mode.

That could cause FrameView::updateLayoutAndStyleIfNeededRecursive() to fail to
leave all the frames in a clean state. Later on, we could enter hit testing,
which calls document().updateLayout() on each frame's document. Document::updateLayout()
does layout on all ancestor documents, so in the middle of hit testing, we could
layout a subframe (dirtying an ancestor frame), then layout another frame, which
would forcing that ancestor to be laid out while we're hit testing it, thus
corrupting the RenderLayer tree while it's being iterated over.

Fix by having FrameView::updateLayoutAndStyleIfNeededRecursive() do a second
layout after laying out subframes, which most of the time will be a no-op.

Also add a stronger assertion, that this frame and all subframes are clean
at the end of FrameView::updateLayoutAndStyleIfNeededRecursive() for the
main frame.

Various existing frames tests hit the new assertion if the code change is removed,
so this is covered by existing tests.

  • page/FrameView.cpp:

(WebCore::FrameView::needsStyleRecalcOrLayout):
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):

  • page/FrameView.h:
  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::willBeDestroyed):

11:04 AM Changeset in webkit [180062] by Simon Fraser
  • 7 edits in trunk/Source

determinePrimarySnapshottedPlugIn() should only traverse visible Frames
https://bugs.webkit.org/show_bug.cgi?id=141547
Part of rdar://problem/18445733.

Reviewed by Anders Carlsson.
Source/WebCore:

There's an expectation from clients that FrameView::updateLayoutAndStyleIfNeededRecursive()
updates layout in all frames, but it uses the widget tree, so only hits frames
that are parented via renderers (i.e. not display:none frames or their descendants).

Moving towards a future where we remove Widgets, fix by adding a FrameTree
traversal function that only finds rendered frames (those with an ownerRenderer).

Not testable.

  • page/FrameTree.cpp:

(WebCore::FrameTree::firstRenderedChild):
(WebCore::FrameTree::nextRenderedSibling):
(WebCore::FrameTree::traverseNextRendered):
(printFrames):

  • page/FrameTree.h:
  • page/FrameView.cpp:

(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):

Source/WebKit2:

Use FrameTree::traverseNextRendered() to avoid doing things in unrendered frames
which are not guaranteed to have been laid out.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::determinePrimarySnapshottedPlugIn):

11:01 AM Changeset in webkit [180061] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

run-jsc-stress-tests --remote should skip profiler tests
https://bugs.webkit.org/show_bug.cgi?id=141470

Reviewed by Filip Pizlo.

  • Scripts/run-jsc-stress-tests:
10:57 AM Changeset in webkit [180060] by msaboff@apple.com
  • 6 edits
    3 adds in trunk

Google doc spreadsheet reproducibly crashes when sorting
https://bugs.webkit.org/show_bug.cgi?id=141098

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Moved the stack check to before the callee registers are allocated in the
prologue() by movving it from the functionInitialization() macro. This
way we can check the stack before moving the stack pointer, avoiding a
crash during a "call" instruction. Before this change, we weren't even
checking the stack for program and eval execution.

Made a couple of supporting changes.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::llint_stack_check): We can't just go up one frame as we
may be processing an exception to an entry frame.

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:

(llint_throw_from_slow_path_trampoline): Changed method to get the vm
from the code block to not use the codeBlock, since we may need to
continue from an exception in a native function.

LayoutTests:

New test.

  • js/regress-141098-expected.txt: Added.
  • js/regress-141098.html: Added.
  • js/script-tests/regress-141098.js: Added.

(probeAndRecurse):

10:46 AM Changeset in webkit [180059] by andersca@apple.com
  • 4 edits in trunk

Add an initializer list constructor to Deque
https://bugs.webkit.org/show_bug.cgi?id=141565

Reviewed by Andreas Kling.

Source/WTF:

  • wtf/Deque.h:

(WTF::inlineCapacity>::Deque):

Tools:

  • TestWebKitAPI/Tests/WTF/Deque.cpp:

(TestWebKitAPI::TEST):

10:28 AM Changeset in webkit [180058] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

TimerBase::m_heapInsertionOrder calculation is racy
https://bugs.webkit.org/show_bug.cgi?id=141554

Reviewed by Anders Carlsson.

Use an atomic increment.

  • platform/Timer.cpp: (WebCore::TimerBase::setNextFireTime):
10:08 AM Changeset in webkit [180057] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.1.4.15-branch

Merge r179771. rdar://problem/19395131

10:08 AM Changeset in webkit [180056] by matthew_hanson@apple.com
  • 7 edits
    2 adds in branches/safari-600.1.4.15-branch

Merge r179994. rdar://problem/19711488

10:05 AM Changeset in webkit [180055] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Re-indent Deque.h

Rubber-stamped by Antti Koivisto.

  • wtf/Deque.h:
9:50 AM Changeset in webkit [180054] by Antti Koivisto
  • 20 edits in trunk/Source/WebKit2

WorkQueue should support concurrent queues
https://bugs.webkit.org/show_bug.cgi?id=141559

Reviewed by Anders Carlsson.

  • DatabaseProcess/DatabaseProcess.cpp:

(WebKit::DatabaseProcess::DatabaseProcess):

  • Platform/IPC/Connection.h:
  • Platform/IPC/mac/ConnectionMac.mm:

(IPC::Connection::open):

  • Platform/WorkQueue.cpp:

(WorkQueue::create):

Also make create return a Ref.

(WorkQueue::WorkQueue):

  • Platform/WorkQueue.h:

Add queue type enum.

  • Platform/efl/WorkQueueEfl.cpp:

(WorkQueue::platformInitialize):

  • Platform/gtk/WorkQueueGtk.cpp:

(WorkQueue::platformInitialize):

  • Platform/mac/WorkQueueMac.cpp:

(WorkQueue::platformInitialize):

  • Shared/mac/SecItemShim.cpp:

(WebKit::SecItemShim::initializeConnection):

  • Shared/mac/SecItemShim.h:
  • UIProcess/Launcher/ProcessLauncher.cpp:

(WebKit::processLauncherWorkQueue):

  • UIProcess/mac/SecItemShimProxy.cpp:

(WebKit::SecItemShimProxy::initializeConnection):

  • UIProcess/mac/SecItemShimProxy.h:
  • WebProcess/Plugins/PluginProcessConnectionManager.cpp:

(WebKit::PluginProcessConnectionManager::initializeConnection):

  • WebProcess/Plugins/PluginProcessConnectionManager.h:
  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::EventDispatcher):
(WebKit::EventDispatcher::initializeConnection):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/ViewUpdateDispatcher.h:
9:38 AM Changeset in webkit [180053] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Refine GC behavior in response to process suspension and memory pressure.
<https://webkit.org/b/141543>
<rdar://problem/19738024>

Reviewed by Geoffrey Garen.

Do an immediate full garbage collection when the web process is about to
be suspended (when another tab is moving to the foreground on iOS.)
This ensures that we make a best effort to reduce the process footprint
before we lose the ability to execute code.

When receiving a memory pressure warning, tell the garbage collector to
accelerate its next collection (by calling garbageCollectSoon().)
This gives us some confidence that a collection will happen within a
reasonable timeframe, but doesn't risk dooming us to a loop of endless
garbage collections.

  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::platformReleaseMemory):

9:35 AM Changeset in webkit [180052] by andersca@apple.com
  • 4 edits
    1 move in trunk/Source/WebKit2

Clean up the framework postprocessing phase
https://bugs.webkit.org/show_bug.cgi?id=141544

Reviewed by Dan Bernstein.

Rename WK_API_AVAILABILITY_ENABLED to WK_FRAMEWORK_HEADER_POSTPROCESSING_ENABLED to better match what
it is we're doing. Also, rename the associated script. Remove a couple of now unnecessary #defines, and
change everything we can to be feature-based instead of OS based.

  • Configurations/WebKit.xcconfig:
  • Shared/API/Cocoa/WKFoundation.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • mac/postprocess-framework-headers.sh: Renamed from Source/WebKit2/mac/rewrite-availability-macros.sh.
9:32 AM Changeset in webkit [180051] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

Add some RELEASE_ASSERTs to try to catch crashes in StyleResolver::loadPendingImages
https://bugs.webkit.org/show_bug.cgi?id=141561

Reviewed by Simon Fraser.

One possibility is that loads triggered by loadPendingImages end up synchronously destroying or re-entering
style resolver. Try to catch these in release builds.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::~StyleResolver):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::loadPendingImages):

  • css/StyleResolver.h:
9:15 AM Changeset in webkit [180050] by ChangSeok Oh
  • 4 edits
    2 adds in trunk

Div having contentEditable and display:grid cannot be edited if it is empty.
https://bugs.webkit.org/show_bug.cgi?id=141465

Reviewed by Ryosuke Niwa.

Source/WebCore:

This bug is quite similar to webkit.org/b/141218. RenderGrid should be also treated as a candidate
for visible position as like RenderFlexibleBox. The only different situation between them is
that RenderGrid has a bug setting "0px" for logicalHeight when it is empty. RenderGrid should also have
a minimum height of a single line if it is editable as well as RenderFlexibleBox does.

Test: fast/events/key-events-in-editable-gridbox.html

  • dom/Position.cpp:

(WebCore::Position::isCandidate):
(WebCore::Position::isRenderedCharacter):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutGridItems):

LayoutTests:

This tests if an editable grid box can be reedited after erasing all texts in it.

  • fast/events/key-events-in-editable-gridbox-expected.txt: Added.
  • fast/events/key-events-in-editable-gridbox.html: Added.
9:10 AM Changeset in webkit [180049] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Skip accessibility tests failing due to debug assertions.

  • platform/win/TestExpectations:
9:02 AM Changeset in webkit [180048] by matthew_hanson@apple.com
  • 4 edits
    2 adds in branches/safari-600.1.4.15-branch

Merge r179771. rdar://problem/19395131

9:02 AM Changeset in webkit [180047] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merge r179750. rdar://problem/19719085

9:02 AM Changeset in webkit [180046] by matthew_hanson@apple.com
  • 3 edits
    2 adds in branches/safari-600.1.4.15-branch

Merge r179706. rdar://problem/19719085

8:43 AM Changeset in webkit [180045] by matthew_hanson@apple.com
  • 7 edits in branches/safari-600.1.4.15-branch/Source

Merge r179580. rdar://problem/19709200

8:15 AM Changeset in webkit [180044] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.1.4.15-branch/Source/WebKit2

Merge r180031. rdar://problem/19432928

8:15 AM Changeset in webkit [180043] by matthew_hanson@apple.com
  • 4 edits in branches/safari-600.1.4.15-branch/Source/WebKit2

Merge r179885. rdar://problem/19812617

8:15 AM Changeset in webkit [180042] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.1.4.15-branch/Source/WebKit2

Merge r179847. rdar://problem/19711485

8:15 AM Changeset in webkit [180041] by matthew_hanson@apple.com
  • 6 edits
    2 adds in branches/safari-600.1.4.15-branch

Merge r179691. rdar://problem/19719089

8:15 AM Changeset in webkit [180040] by matthew_hanson@apple.com
  • 3 edits in branches/safari-600.1.4.15-branch/Source/WebKit/ios

Merge r174284. rdar://problem/19812620

6:37 AM Changeset in webkit [180039] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[buildbot] Remove buildJSCTool cruft from master.cfg
https://bugs.webkit.org/show_bug.cgi?id=141513

Reviewed by Alexey Proskuryakov.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunJavaScriptCoreTests):
(RunJavaScriptCoreTests.start):
(RunWebKitTests):
(RunWebKitTests.start):
(TestFactory.init):
(TestLeaksFactory.init):
(RunJavaScriptCoreTests.init): Deleted.
(RunWebKitTests.init): Deleted.

4:48 AM Changeset in webkit [180038] by Alan Bujtas
  • 7 edits
    2 adds in trunk

REGRESSION (r176262): Invalid cast in WebCore`WebCore::RootInlineBox::selectionTop
https://bugs.webkit.org/show_bug.cgi?id=138992

Reviewed by Dave Hyatt.

RenderRubyText requires the ancestor chain to be (RenderRubyAsInline | RenderRubyAsBlock) -> RenderRubyRun -> RenderRubyText.
This patch ensures that we create RenderRubyText for an <rt> element only when
the expected ancestor chain is guaranteed.

Source/WebCore:

Test: fast/ruby/crash-when-ruby-is-set-to-inline-block.html

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::createFor): treat inline-block <ruby> as block.

  • rendering/RenderObject.h:

(WebCore::RenderObject::isRubyInline):
(WebCore::RenderObject::isRubyBlock):
(WebCore::RenderObject::isRuby): Deleted.

  • rendering/RenderRuby.cpp:

(WebCore::isAnonymousRubyInlineBlock):

  • rendering/RenderRuby.h: add support for is<RenderRubyAsBlock>(renderer) and for is<RenderRubyAsInline>(renderer)

The isRuby() method does not follow the is*() -> maps to one class pattern.
(WebCore::isRuby):

  • rendering/RenderRubyRun.cpp:

(WebCore::RenderRubyRun::addChild):
(WebCore::RenderRubyRun::staticCreateRubyRun):

LayoutTests:

  • fast/ruby/crash-when-ruby-is-set-to-inline-block-expected.txt: Added.
  • fast/ruby/crash-when-ruby-is-set-to-inline-block.html: Added.
1:43 AM Changeset in webkit [180037] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/bmalloc

[BMalloc] Add a FIXME comment for memory alignas
https://bugs.webkit.org/show_bug.cgi?id=141556

Reviewed by Csaba Osztrogonác.

  • bmalloc/Chunk.h: Add a FIXME comment.
  • bmalloc/LargeChunk.h: ditto.
1:19 AM Changeset in webkit [180036] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Fix the gperf related build issue on the WinCairo bot
https://bugs.webkit.org/show_bug.cgi?id=141507

Reviewed by Alex Christensen.

  • platform/ColorData.gperf: Modified property svn:eol-style.
1:15 AM Changeset in webkit [180035] by Csaba Osztrogonác
  • 6 edits
    92 deletes in trunk

Unreviewed, remove empty directories.

.:

  • ManualTests/qt: Removed.

Source/WebCore:

  • loader/icon/wince: Removed.
  • platform/graphics/wince: Removed.
  • storage/wince: Removed.

Tools:

  • DumpRenderTree/gtk: Removed.
  • DumpRenderTree/gtk/fonts: Removed.
  • DumpRenderTree/unix: Removed.
  • DumpRenderTree/unix/TestNetscapePlugin: Removed.
  • GtkLauncher: Removed.
  • TestWebKitAPI/Tests/WebKitGtk: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources: Removed.
  • WebKitTestRunner/WebKitTestRunnerAppTests: Removed.
  • WebKitTestRunner/WebKitTestRunnerAppTests/en.lproj: Removed.

Websites/perf.webkit.org:

  • public/data: Removed.

Websites/webkit.org:

  • blog/wp-includes/js/codepress: Removed.

LayoutTests:

  • fast/forms/date-multiple-fields: Removed.
  • fast/forms/datetimelocal-multiple-fields: Removed.
  • fast/forms/month-multiple-fields: Removed.
  • fast/forms/time-multiple-fields: Removed.
  • fast/forms/week-multiple-fields: Removed.
  • fast/js: Removed.
  • http/tests/inspector-enabled: Removed.
  • http/tests/inspector-enabled/resources: Removed.
  • http/tests/inspector/appcache: Removed.
  • http/tests/inspector/appcache/resources: Removed.
  • http/tests/inspector/audits: Removed.
  • http/tests/inspector/audits/resources: Removed.
  • http/tests/inspector/indexeddb: Removed.
  • http/tests/inspector/indexeddb/resources: Removed.
  • http/tests/inspector/network: Removed.
  • http/tests/inspector/network/resources: Removed.
  • http/tests/inspector/resource-tree: Removed.
  • http/tests/inspector/resource-tree/resources: Removed.
  • http/tests/inspector/resources: Removed.
  • http/tests/inspector/search: Removed.
  • http/tests/inspector/search/resources: Removed.
  • http/tests/inspector/stacktraces: Removed.
  • http/tests/inspector/stacktraces/resources: Removed.
  • http/tests/inspector/styles: Removed.
  • http/tests/inspector/styles/resources: Removed.
  • http/tests/inspector/websocket: Removed.
  • http/tests/webgl/1.0.1: Removed.
  • inspector-protocol/heap-profiler: Removed.
  • inspector-protocol/heap-profiler/resources: Removed.
  • inspector/console: Removed.
  • inspector/console/resources: Removed.
  • inspector/elements: Removed.
  • inspector/elements/resources: Removed.
  • inspector/profiler: Removed.
  • inspector/runtime: Removed.
  • inspector/styles: Removed.
  • inspector/styles/resources: Removed.
  • js/regress/resources: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/media: Removed.
  • networkinformation: Removed.
  • networkinformation/resources: Removed.
  • networkinformation/script-tests: Removed.
  • platform/efl-wk2/dom: Removed.
  • platform/efl-wk2/dom/xhtml: Removed.
  • platform/efl-wk2/inspector: Removed.
  • platform/efl-wk2/tables: Removed.
  • platform/efl-wk2/tables/mozilla: Removed.
  • platform/gtk-wk1: Removed.
  • platform/gtk-wk1/fast: Removed.
  • platform/gtk-wk1/fast/css: Removed.
  • platform/gtk-wk1/fast/loader: Removed.
  • platform/gtk-wk1/fast/media: Removed.
  • platform/gtk-wk1/fast/writing-mode: Removed.
  • platform/gtk-wk1/http: Removed.
  • platform/gtk-wk1/http/tests: Removed.
  • platform/gtk-wk1/http/tests/cache: Removed.
  • platform/gtk-wk1/http/tests/security: Removed.
  • platform/gtk-wk1/http/tests/security/contentSecurityPolicy: Removed.
  • platform/gtk-wk1/js: Removed.
  • platform/gtk-wk1/js/dom: Removed.
  • platform/gtk-wk1/loader: Removed.
  • platform/gtk-wk1/scrollingcoordinator: Removed.
  • platform/gtk-wk2/accessibility: Removed.
  • platform/gtk-wk2/fast: Removed.
  • platform/gtk-wk2/fast/events: Removed.
  • platform/gtk-wk2/http: Removed.
  • platform/gtk-wk2/http/tests: Removed.
  • platform/gtk-wk2/http/tests/loading: Removed.
  • platform/gtk-wk2/http/tests/misc: Removed.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-1: Removed.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-2: Removed.
  • platform/gtk-wk2/http/tests/misc/authentication-redirect-4: Removed.
  • platform/gtk-wk2/http/tests/security: Removed.
  • platform/gtk-wk2/http/tests/security/401-logout: Removed.
  • platform/gtk-wk2/http/tests/xmlhttprequest: Removed.
  • platform/gtk-wk2/js: Removed.
  • platform/gtk-wk2/js/dom: Removed.
  • platform/gtk-wk2/plugins: Removed.
  • platform/gtk-wk2/plugins/npruntime: Removed.
  • platform/gtk/platform: Removed.
  • platform/ios-simulator/editing/editability: Removed.
  • platform/ios-simulator/editing/input: Removed.
  • platform/ios-simulator/editing/secure-input: Removed.
  • platform/ios-simulator/editing/shadow: Removed.
  • platform/ios-simulator/editing/spelling: Removed.
  • platform/ios-simulator/editing/text-iterator: Removed.
  • platform/ios-simulator/editing/undo: Removed.
  • platform/ios-simulator/editing/unsupported-content: Removed.
  • platform/ios-simulator/fast/canvas/webgl: Removed.
  • platform/ios-simulator/fast/css-grid-layout: Removed.
  • platform/ios-simulator/fast/css/content: Removed.
  • platform/ios-simulator/fast/css/image-orientation: Removed.
  • platform/ios-simulator/fast/css/image-resolution: Removed.
  • platform/ios-simulator/fast/css/style-scoped: Removed.
  • platform/ios-simulator/fast/css3-text/css3-text-indent: Removed.
  • platform/ios-simulator/fast/css3-text/css3-text-indent/getComputedStyle: Removed.
  • platform/ios-simulator/fast/dom/Document: Removed.
  • platform/ios-simulator/fast/dom/Document/CaretRangeFromPoint: Removed.
  • platform/ios-simulator/fast/dom/Geolocation: Removed.
  • platform/ios-simulator/fast/dom/HTMLAnchorElement: Removed.
  • platform/ios-simulator/fast/dom/HTMLImageElement/sizes: Removed.
  • platform/ios-simulator/fast/dom/MutationObserver: Removed.
  • platform/ios-simulator/fast/dom/NavigatorContentUtils: Removed.
  • platform/ios-simulator/fast/dom/Orientation: Removed.
  • platform/ios-simulator/fast/dom/custom: Removed.
  • platform/ios-simulator/fast/events/constructors: Removed.
  • platform/ios-simulator/fast/events/scoped: Removed.
  • platform/iphone-simulator: Removed.
  • platform/iphone-simulator/fast: Removed.
  • platform/iphone-simulator/fast/events: Removed.
  • platform/mac-mavericks/fast/borders: Removed.
  • platform/mac-wk2/fast/writing-mode: Removed.
  • platform/mac-wk2/http/tests/plugins: Removed.
  • platform/mac-wk2/js: Removed.
  • platform/mac-wk2/js/dom: Removed.
  • platform/mac-wk2/tiled-drawing/fixed: Removed.
  • platform/mac-wk2/tiled-drawing/fixed-background: Removed.
  • platform/mac-wk2/tiled-drawing/sticky: Removed.
  • platform/mac/dom: Removed.
  • platform/mac/dom/xhtml: Removed.
  • platform/mac/fast/backgrounds/resources: Removed.
  • platform/mac/media/W3C/audio: Removed.
  • platform/mac/media/W3C/audio/canPlayType: Removed.
  • platform/mac/platform/mac-wk2: Removed.
  • platform/mac/platform/mac/editing/spelling: Removed.
  • platform/mac/platform/mac/fast/forms: Removed.
  • platform/win-wk2: Removed.
  • platform/win-wk2/fast: Removed.
  • platform/win-wk2/http: Removed.
  • platform/win-wk2/platform: Removed.
  • platform/win-wk2/svg: Removed.
  • platform/win/canvas: Removed.
  • platform/win/fast/xmlhttprequest: Removed.
  • platform/win/loader: Removed.
  • platform/wk2/tables: Removed.
12:48 AM Changeset in webkit [180034] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Remove Windows cruft from Tools/Scripts/build-webkittestrunner
https://bugs.webkit.org/show_bug.cgi?id=141519

Reviewed by Alexey Proskuryakov.

  • Scripts/build-webkittestrunner:
Note: See TracTimeline for information about the timeline view.