Timeline



Aug 15, 2013:

11:33 PM Changeset in webkit [154165] by Antti Koivisto
  • 41 edits in trunk/Source

<https://webkit.org/b/119865> Parent pointer and shadow root host pointer should not be shared

Reviewed by Andreas Kling.

Node::m_parentOrShadowHostNode is currently used both as the parent pointer for regular nodes and as the host
pointer for ShadowRoots. This is confusing. It is also slow as it introduces a branch to all code paths that
want to traverse ancestors normally, without leaving the shadow trees. This is much more popular than
traversing through.

This patch makes the Node have a pure parent pointer only and adds the host element pointer as a separate
member in ShadowRoot. This eliminates the ShadowRoot test branch from Node::parentNode() as the pointer is
now always null in the root node.

ShadowRoot grows by a pointer. This is not significant as there are few ShadowRoots compared to Nodes.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::pushParentShadowRoot):
(WebCore::StyleResolver::popParentShadowRoot):

  • dom/Attr.cpp:

(WebCore::Attr::createTextChild):

  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::ComposedShadowTreeWalker::traverseParentBackToShadowRootOrHost):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::insertBeforeCommon):
(WebCore::ContainerNode::removeBetween):

  • dom/ContainerNodeAlgorithms.cpp:

(WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument):
(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument):

  • dom/ContainerNodeAlgorithms.h:

(WebCore::appendChildToContainer):
(WebCore::Private::addChildNodesToDeletionQueue):

  • dom/Document.h:

(WebCore::Node::Node):

  • dom/Element.cpp:

(WebCore::Element::addShadowRoot):
(WebCore::Element::removeShadowRoot):

  • dom/ElementRareData.h:

(WebCore::ElementRareData::releasePseudoElement):

  • dom/EventPathWalker.cpp:

(WebCore::EventPathWalker::moveToParent):

  • dom/EventRetargeter.cpp:

(WebCore::determineDispatchBehavior):

  • dom/EventRetargeter.h:

(WebCore::EventRetargeter::eventTargetRespectingTargetRules):

  • dom/Node.cpp:

(WebCore::Node::shadowHost):
(WebCore::Node::deprecatedShadowAncestorNode):
(WebCore::Node::parentOrShadowHostElement):

  • dom/Node.h:

(WebCore::Node::hasTreeSharedParent):

Shadow host elements refs the ShadowRoot. There is no reason to use TreeShared to keep it alive.

(WebCore::Node::setParentNode):
(WebCore::Node::parentNode):
(WebCore::Node::parentNodeGuaranteedHostFree):

  • dom/PseudoElement.cpp:

(WebCore::PseudoElement::PseudoElement):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::ShadowRoot):
(WebCore::ShadowRoot::setInnerHTML):
(WebCore::ShadowRoot::setApplyAuthorStyles):
(WebCore::ShadowRoot::setResetStyleInheritance):

  • dom/ShadowRoot.h:


Rename host() -> hostElement() for clarity.

(WebCore::Node::parentOrShadowHostNode):

  • dom/Text.cpp:

(WebCore::isSVGShadowText):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::focusedElement):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistributor::ensureDistribution):

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::insertedInto):
(WebCore::InsertionPoint::removedFrom):
(WebCore::InsertionPoint::parseAttribute):

  • page/DragController.cpp:

(WebCore::asFileInput):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):
(WebCore::instanceAssociatedWithShadowTreeElement):

  • page/FocusController.cpp:

(WebCore::FocusNavigationScope::owner):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::hasLineIfEmpty):

  • rendering/RenderLayer.cpp:

(WebCore::rendererForScrollbar):

  • svg/SVGElementInstance.h:

(WebCore::SVGElementInstance::setParentNode):

Renamed so it works with appendChildToContainer template.

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::title):

11:32 PM Changeset in webkit [154164] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit/gtk

Unreviewed GTK build fix for debug configurations.

  • webkit/webkitwebframe.cpp:

(WebKit::kit): Remove the bogus assertion for Frame::loader() that now returns a reference.

8:59 PM Changeset in webkit [154163] by Brent Fulgham
  • 3 edits in trunk/LayoutTests

[Windows] Unreviewed gardening. Correct some test expectations that now pass.

  • platform/win/editing/selection/caret-ltr-right-expected.txt:
  • platform/win/editing/selection/caret-rtl-2-left-expected.txt:
8:28 PM Changeset in webkit [154162] by mhahnenberg@apple.com
  • 18 edits
    6 adds in trunk/Source/JavaScriptCore

<https://webkit.org/b/119833> Concurrent compilation thread should not trigger WriteBarriers

Reviewed by Oliver Hunt.

The concurrent compilation thread should interact minimally with the Heap, including not
triggering WriteBarriers. This is a prerequisite for generational GC.

(JSC::CodeBlock::addOrFindConstant):
(JSC::CodeBlock::findConstant):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::addConstantLazily):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getJSConstantForValue):
(JSC::DFG::ByteCodeParser::constantUndefined):
(JSC::DFG::ByteCodeParser::constantNull):
(JSC::DFG::ByteCodeParser::one):
(JSC::DFG::ByteCodeParser::constantNaN):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGCommonData.cpp:

(JSC::DFG::CommonData::notifyCompilingStructureTransition):

  • dfg/DFGCommonData.h:
  • dfg/DFGDesiredTransitions.cpp: Added.

(JSC::DFG::DesiredTransition::DesiredTransition):
(JSC::DFG::DesiredTransition::reallyAdd):
(JSC::DFG::DesiredTransitions::DesiredTransitions):
(JSC::DFG::DesiredTransitions::~DesiredTransitions):
(JSC::DFG::DesiredTransitions::addLazily):
(JSC::DFG::DesiredTransitions::reallyAdd):

  • dfg/DFGDesiredTransitions.h: Added.
  • dfg/DFGDesiredWeakReferences.cpp: Added.

(JSC::DFG::DesiredWeakReferences::DesiredWeakReferences):
(JSC::DFG::DesiredWeakReferences::~DesiredWeakReferences):
(JSC::DFG::DesiredWeakReferences::addLazily):
(JSC::DFG::DesiredWeakReferences::reallyAdd):

  • dfg/DFGDesiredWeakReferences.h: Added.
  • dfg/DFGDesiredWriteBarriers.cpp: Added.

(JSC::DFG::DesiredWriteBarrier::DesiredWriteBarrier):
(JSC::DFG::DesiredWriteBarrier::trigger):
(JSC::DFG::DesiredWriteBarriers::DesiredWriteBarriers):
(JSC::DFG::DesiredWriteBarriers::~DesiredWriteBarriers):
(JSC::DFG::DesiredWriteBarriers::addImpl):
(JSC::DFG::DesiredWriteBarriers::trigger):

  • dfg/DFGDesiredWriteBarriers.h: Added.

(JSC::DFG::DesiredWriteBarriers::add):
(JSC::DFG::initializeLazyWriteBarrier):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::truncateConstantToInt32):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::convertToConstant):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::addWeakReference):

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::Plan):
(JSC::DFG::Plan::reallyAdd):

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

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • runtime/WriteBarrier.h:

(JSC::WriteBarrierBase::set):
(JSC::WriteBarrier::WriteBarrier):

8:00 PM Changeset in webkit [154161] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix x86 32bits build after r154158

  • assembler/X86Assembler.h: Add missing #ifdef for the x86_64 instructions.
7:50 PM Changeset in webkit [154160] by Darin Adler
  • 9 edits in trunk/Source/WebCore

[iOS] Get iOS port off legacy clipboard
https://bugs.webkit.org/show_bug.cgi?id=116412

Reviewed by Daniel Bates.

  • dom/Clipboard.h: Turn off legacy style clipboard for iOS.

Next patch will be able to remove legacy style entirely!

  • editing/Editor.cpp:

(WebCore::Editor::dispatchCPPEvent): Attach the frame to the
pasteboard directly explicitly. This is a layering violation, but
is needed until we change how iOS pasteboard communicates with the
host to use platform strategies instead of the editor client.

  • editing/ios/EditorIOS.mm: Removed Editor::newGeneralClipboard and

the include of ClipboardIOS.h.

  • platform/Pasteboard.h: Added the setFrame function (iOS-only) and

frame and change count data members.

  • platform/ios/ClipboardIOS.h: Emptied out. Later we can remove this.
  • platform/ios/ClipboardIOS.mm: Ditto.
  • platform/ios/PasteboardIOS.mm:

(WebCore::Pasteboard::Pasteboard): Initialize m_frame to zero.
(WebCore::Pasteboard::createForCopyAndPaste): Added.
(WebCore::Pasteboard::createPrivate): Added.
(WebCore::Pasteboard::writePasteboard): Added. Empty function, like
writeClipboard. Eventually need to remove or implement this.
(WebCore::Pasteboard::setFrame): Added. Sets frame and change count.
(WebCore::Pasteboard::hasData): Moved here from ClipboardIOS.
(WebCore::utiTypeFromCocoaType): Ditto.
(WebCore::cocoaTypeFromHTMLClipboardType): Ditto.
(WebCore::Pasteboard::clear): Ditto.
(WebCore::Pasteboard::readString): Ditto.
(WebCore::addHTMLClipboardTypesForCocoaType): Ditto.
(WebCore::Pasteboard::writeString): Ditto.
(WebCore::Pasteboard::types): Ditto.
(WebCore::Pasteboard::readFilenames): Ditto.

  • WebCore.exp.in: Move Clipboard destructor from Mac-only section to

common section shared by Mac and iOS.

7:42 PM Changeset in webkit [154159] by rniwa@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Build fix attempt after r154156.

  • jit/JITStubs.cpp:

(JSC::cti_vm_handle_exception): encode!

7:35 PM Changeset in webkit [154158] by benjamin@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

[JSC] x86: Use inc and dec when possible
https://bugs.webkit.org/show_bug.cgi?id=119831

Reviewed by Geoffrey Garen.

When incrementing or decrementing by an immediate of 1, use the insctructions
inc and dec instead of add and sub.
The instructions have good timing and their encoding is smaller.

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86_64::add32):
(JSC::MacroAssemblerX86_64::sub32):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::add64):
(JSC::MacroAssemblerX86_64::sub64):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::dec_r):
(JSC::X86Assembler::decq_r):
(JSC::X86Assembler::inc_r):
(JSC::X86Assembler::incq_r):

7:30 PM Changeset in webkit [154157] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Sometimes, the DFG uses a GetById for typed array length accesses despite profiling data that indicates that it's a typed array length access
https://bugs.webkit.org/show_bug.cgi?id=119874

Reviewed by Oliver Hunt and Mark Hahnenberg.

It was a confusion between heuristics in DFG::ArrayMode that are assuming that
you'll use ForceExit if array profiles are empty, the JIT creating empty profiles
sometimes for typed array length accesses, and the FixupPhase assuming that a
ForceExit ArrayMode means that it should continue using a generic GetById.

This fixes the confusion.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

6:47 PM Changeset in webkit [154156] by mark.lam@apple.com
  • 21 edits in trunk/Source/JavaScriptCore

Fix crash when performing activation tearoff.
https://bugs.webkit.org/show_bug.cgi?id=119848

Reviewed by Oliver Hunt.

The activation tearoff crash was due to a bug in the baseline JIT.
If we have a scenario where the a baseline JIT frame calls a LLINT
frame, an exception may be thrown while in the LLINT.

Interpreter::throwException() which handles the exception will unwind
all frames until it finds a catcher or sees a host frame. When we
return from the LLINT to the baseline JIT code, the baseline JIT code
errorneously sets topCallFrame to the value in its call frame register,
and starts unwinding the stack frames that have already been unwound.

The fix is:

  1. Rename ctiVMThrowTrampolineSlowpath to ctiVMHandleException. This is a more accurate description of what this runtime function is supposed to do i.e. it handles the exception which include doing nothing (if there are no more frames to unwind).
  2. Fix up topCallFrame values so that the HostCallFrameFlag is never set on it.
  3. Reloading the call frame register from topCallFrame when we're returning from a callee and detect exception handling in progress.
  • interpreter/Interpreter.cpp:

(JSC::Interpreter::unwindCallFrame):

  • Ensure that topCallFrame is not set with the HostCallFrameFlag.

(JSC::Interpreter::getStackTrace):

  • interpreter/Interpreter.h:

(JSC::TopCallFrameSetter::TopCallFrameSetter):
(JSC::TopCallFrameSetter::~TopCallFrameSetter):
(JSC::NativeCallFrameTracer::NativeCallFrameTracer):

  • Ensure that topCallFrame is not set with the HostCallFrameFlag.
  • jit/JIT.h:
  • jit/JITExceptions.cpp:

(JSC::uncaughtExceptionHandler):

  • Convenience function to get the handler for uncaught exceptions.
  • jit/JITExceptions.h:
  • jit/JITInlines.h:

(JSC::JIT::reloadCallFrameFromTopCallFrame):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTINativeCall):

  • Rename ctiVMThrowTrampolineSlowpath to ctiVMHandleException.
  • jit/JITStubs.cpp:

(JSC::throwExceptionFromOpCall):

  • Ensure that topCallFrame is not set with the HostCallFrameFlag.

(JSC::cti_vm_handle_exception):

  • Check for the case when there are no more frames to unwind.
  • jit/JITStubs.h:
  • jit/JITStubsARM.h:
  • jit/JITStubsARMv7.h:
  • jit/JITStubsMIPS.h:
  • jit/JITStubsSH4.h:
  • jit/JITStubsX86.h:
  • jit/JITStubsX86_64.h:
  • Rename ctiVMThrowTrampolineSlowpath to ctiVMHandleException.
  • jit/SlowPathCall.h:

(JSC::JITSlowPathCall::call):

  • reload cfr from topcallFrame when handling an exception.
  • Rename ctiVMThrowTrampolineSlowpath to ctiVMHandleException.
  • jit/ThunkGenerators.cpp:

(JSC::nativeForGenerator):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • reload cfr from topcallFrame when handling an exception.
  • runtime/VM.cpp:

(JSC::VM::VM):

  • Ensure that topCallFrame is not set with the HostCallFrameFlag.
6:43 PM Changeset in webkit [154155] by ryuan.choi@samsung.com
  • 6 edits in trunk/Source

[EFL] Unreviewed build fix after r154142 and r154144.

Source/WebCore:

  • platform/efl/ErrorsEfl.cpp: Follow the changes of r154142.

(WebCore::printError):
(WebCore::printerNotFoundError):
(WebCore::invalidPageRangeToPrint):

Source/WebKit/efl:

  • ewk/ewk_frame.cpp: Follow the changes of r154142.

(ewk_frame_uri_set):
(ewk_frame_certificate_status_get):

Source/WebKit2:

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::useTestingNetworkSession):
Fixed build break when NETWORK_PROCESS is disabled after r154144.

6:18 PM Changeset in webkit [154154] by Lucas Forschler
  • 5 edits in branches/safari-537-branch/Source

Versioning.

6:16 PM Changeset in webkit [154153] by Lucas Forschler
  • 1 copy in tags/Safari-537.58

New Tag.

4:47 PM Changeset in webkit [154152] by hmuller@adobe.com
  • 5 edits
    4 adds in trunk

[CSS Shapes] Add support for shape-outside image values
https://bugs.webkit.org/show_bug.cgi?id=119809

Source/WebCore:

Added minimal support for shape-outside image values. A new method that computes
the excluded intervals for a horizontal line segment was added to the RasterIntervals
class. The stub RasterShape getExcludedIntervals() method has been replaced by
one that uses the new method.

Image shapes are represented by a RasterIntervals object, which just encapsulates a
Region object. The new getExcludedIntervals() method computes the excluded intervals
for a horizontal line segment between y1 and y2. To find the excluded intervals we
vertically expand each of the image shape Region's rectangles that fall within the line
segment, so that they begin at y1 and have height = y2 - y1. The union of the expanded
rectangles produces a new Region whose horizontal projection defines the excluded intervals.

Reviewed by Alexandru Chiculita.

Tests: fast/shapes/shape-outside-floats/shape-outside-floats-image-001.html

fast/shapes/shape-outside-floats/shape-outside-floats-image-002.html

  • rendering/shapes/RasterShape.cpp:

(WebCore::RasterShapeIntervals::getExcludedIntervals): See above.
(WebCore::RasterShape::getExcludedIntervals): Stub method has been replaced by one that uses RasterShapeIntervals::getExcludedIntervals().

  • rendering/shapes/RasterShape.h:
  • rendering/shapes/ShapeOutsideInfo.cpp:

(WebCore::ShapeOutsideInfo::isEnabledFor): Enable Image valued shapes.

LayoutTests:

Two tests to verify that the initial implementation of shape valued images is working
for shape-outside.

Reviewed by Alexandru Chiculita.

  • fast/shapes/shape-outside-floats/shape-outside-floats-image-001-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-image-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-image-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-image-002.html: Added.
4:40 PM Changeset in webkit [154151] by Chris Fleizach
  • 2 edits in trunk/Source/WebKit2

<https://webkit.org/b/119858> AX: Crash: com.apple.WebKit.WebContent at com.apple.WebKit2: WebKit::WebPage::accessibilityObjectForMainFramePlugin + 8

Reviewed by Tim Horton.

Ensure that the page is available before accessing it.

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::accessibilityObjectForMainFramePlugin):

4:30 PM Changeset in webkit [154150] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Revert that. The test had been fixed in r154148.

4:28 PM Changeset in webkit [154149] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

<https://webkit.org/b/119873> REGRESSION(r154057): platform/mac/accessibility/role-subrole-roledescription.html fails

Add a test expectation.

4:19 PM Changeset in webkit [154148] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

AX: platform/mac/accessibility/role-subrole-roledescription.html is failing
<https://webkit.org/b/119821>

Updating our layout test now that accessibleElementById is able
to fetch the math element correctly.

Patch by Sam White <Samuel White> on 2013-08-15
Reviewed by Chris Fleizach.

  • platform/mac/accessibility/role-subrole-roledescription-expected.txt:
  • platform/mac/accessibility/role-subrole-roledescription.html:
4:15 PM Changeset in webkit [154147] by Simon Fraser
  • 4 edits
    2 adds in trunk

<https://webkit.org/b/119871> Flash of garbage pixels when playing a show on Hulu

Source/WebCore:

Reviewed by Tim Horton.

When starting a show on Hulu, there's a layer that gets marked as
opaque because it has a child RenderLayer whose background fills the
compositing layer. That child RenderLayer was recently position:fixed
but outside the viewport, so its viewportConstrainedNotCompositedReason
was set to a non-zero value.

However, we failed to clear the viewportConstrainedNotCompositedReason
when the layer became non-fixed. This caused painting the opaque
layer to bail in RenderLayer::paintLayer(), leaving garbage.

Test: compositing/contents-opaque/fixed-to-nonfixed.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayer): Add an assertion to catch this error in future.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateBacking): Make sure we clear the
ViewportConstrainedNotCompositedReason if the layer is no longer fixed.

LayoutTests:

Reviewed by Tim Horton.

Test that would hit the newly added assertion in case of failure.
Was unable to create a ref test that worked reliably.

  • compositing/contents-opaque/fixed-to-nonfixed.html: Added.
3:45 PM Changeset in webkit [154146] by Brent Fulgham
  • 7 edits
    2 adds in trunk/Source

../WebCore: [Windows] Consolidate WebKit Bundle Handling
https://bugs.webkit.org/show_bug.cgi?id=119869

Reviewed by Tim Horton.

  • WebCore.vcxproj/WebCore.vcxproj: Add new WebCoreBundleWin files.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::certificatePath): Use correct bundle handling logic.

  • platform/win/LocalizedStringsWin.cpp: Move bundle implementation to

new WebCoreBundleWin.cpp file.

  • platform/win/WebCoreBundleWin.cpp: Added.

(WebCore::createWebKitBundle):
(WebCore::webKitBundle):

  • platform/win/WebCoreBundleWin.h: Added.

../WebKit/win: [Windows] Consolidate WebKit Bundle handling
https://bugs.webkit.org/show_bug.cgi?id=119869

Reviewed by Tim Horton.

  • WebCoreSupport/WebInspectorClient.cpp:

(WebInspectorClient::openInspectorFrontend): Switch to new
WebCore::webkitBundle() method.
(WebInspectorFrontendClient::localizedStringsURL): Ditto.

3:27 PM Changeset in webkit [154145] by fpizlo@apple.com
  • 2 edits in trunk/Source/WTF

refCount() of a StringImpl could be zero if it's static; in that case we shouldn't report extra memory cost
https://bugs.webkit.org/show_bug.cgi?id=119870

Reviewed by Mark Hahnenberg.

  • wtf/text/StringImpl.h:

(WTF::StringImpl::costDuringGC):
(WTF::StringImpl::isStatic):
(WTF::StringImpl::bufferOwnership):

3:25 PM Changeset in webkit [154144] by ap@apple.com
  • 18 edits in trunk

[WK2] NetworkProcess should use a temporary storage session for test
https://bugs.webkit.org/show_bug.cgi?id=119855

Reviewed by Darin Adler.

We used to have a bundle API for WebKitTestRunner to do this in injected bundle, but
NetworkProcess has no injected bundle.

Added a WKContext API, sending the information to NetworkProcess with initialization
parameters. Reworked WebProcess path to do the same for consistency - bundle API
is better per se, but not when we also need to have another one.

  • NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess):
  • Shared/Network/NetworkProcessCreationParameters.cpp: (WebKit::NetworkProcessCreationParameters::encode): (WebKit::NetworkProcessCreationParameters::decode):
  • Shared/Network/NetworkProcessCreationParameters.h:
  • Shared/WebProcessCreationParameters.cpp: (WebKit::WebProcessCreationParameters::encode): (WebKit::WebProcessCreationParameters::decode):
  • Shared/WebProcessCreationParameters.h:
  • UIProcess/API/C/WKContext.cpp: (WKContextUseTestingNetworkSession):
  • UIProcess/API/C/WKContextPrivate.h:
  • UIProcess/WebContext.cpp: (WebKit::WebContext::WebContext): (WebKit::WebContext::ensureNetworkProcess): (WebKit::WebContext::createNewWebProcess): (WebKit::WebContext::useTestingNetworkSession):
  • UIProcess/WebContext.h:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.h:
  • WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeWebProcess):
3:23 PM Changeset in webkit [154143] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove some code duplication.

Rubber stamped by Mark Hahnenberg.

  • runtime/JSDataViewPrototype.cpp:

(JSC::getData):
(JSC::setData):

3:17 PM Changeset in webkit [154142] by andersca@apple.com
  • 165 edits in trunk/Source

<https://webkit.org/b/119859> Frame::loader() should return a reference

Reviewed by Andreas Kling.

Source/WebCore:

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::willOpenSocketStream):

  • WebCore.xcodeproj/project.pbxproj:
  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::press):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper remoteAccessibilityParentObject]):

  • bindings/ScriptControllerBase.cpp:

(WebCore::ScriptController::canExecuteScripts):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::initScript):

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::beginLoadTimerFired):

  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createDocument):

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::setVisualUpdatesAllowed):
(WebCore::Document::updateTitle):
(WebCore::Document::open):
(WebCore::Document::explicitClose):
(WebCore::Document::implicitClose):
(WebCore::Document::userAgent):
(WebCore::Document::canNavigate):
(WebCore::Document::processHttpEquiv):
(WebCore::Document::referrer):
(WebCore::Document::documentDidResumeFromPageCache):
(WebCore::Document::openSearchDescriptionURL):
(WebCore::Document::finishedParsing):
(WebCore::Document::addIconURL):
(WebCore::Document::initSecurityContext):
(WebCore::Document::updateURLForPushOrReplaceState):
(WebCore::Document::loadEventDelayTimerFired):
(WebCore::Document::loader):
(WebCore::Document::decrementActiveParserCount):

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::CachedFrameBase):
(WebCore::CachedFrameBase::restore):
(WebCore::CachedFrame::CachedFrame):
(WebCore::CachedFrame::open):
(WebCore::CachedFrame::destroy):

  • history/PageCache.cpp:

(WebCore::logCanCacheFrameDecision):
(WebCore::logCanCachePageDecision):
(WebCore::PageCache::canCachePageContainingThisFrame):
(WebCore::PageCache::canCache):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::handleClick):

  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::updateWidget):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::rendererIsNeeded):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::updateWidget):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::prepareForSubmission):
(WebCore::HTMLFormElement::submit):

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::openURL):

  • html/HTMLFrameOwnerElement.cpp:

(WebCore::HTMLFrameOwnerElement::disconnectContentFrame):

  • html/HTMLFrameSetElement.cpp:

(WebCore::HTMLFrameSetElement::insertedInto):
(WebCore::HTMLFrameSetElement::removedFrom):

  • html/HTMLHtmlElement.cpp:

(WebCore::HTMLHtmlElement::insertedByParser):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::createRenderer):
(WebCore::HTMLMediaElement::attach):
(WebCore::HTMLMediaElement::loadResource):
(WebCore::HTMLMediaElement::getPluginProxyParams):
(WebCore::HTMLMediaElement::createMediaPlayerProxy):
(WebCore::HTMLMediaElement::updateWidget):
(WebCore::HTMLMediaElement::mediaPlayerReferrer):
(WebCore::HTMLMediaElement::mediaPlayerUserAgent):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parametersForPlugin):
(WebCore::HTMLObjectElement::updateWidget):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::isImageType):
(WebCore::HTMLPlugInImageElement::wouldLoadAsNetscapePlugin):
(WebCore::HTMLPlugInImageElement::restartSimilarPlugIns):

  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::setDisplayMode):

  • html/ImageDocument.cpp:

(WebCore::ImageDocumentParser::appendBytes):
(WebCore::ImageDocumentParser::finish):
(WebCore::ImageDocument::createDocumentStructure):

  • html/MediaDocument.cpp:

(WebCore::MediaDocumentParser::createDocumentStructure):

  • html/PluginDocument.cpp:

(WebCore::PluginDocumentParser::createDocumentStructure):
(WebCore::PluginDocumentParser::appendBytes):
(WebCore::PluginDocument::detach):
(WebCore::PluginDocument::cancelManualPluginLoad):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::create):
(WebCore::WebGLRenderingContext::loseContextImpl):
(WebCore::WebGLRenderingContext::maybeRestoreContext):

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded):
(WebCore::HTMLConstructionSite::insertHTMLBodyElement):

  • html/parser/HTMLParserOptions.cpp:

(WebCore::HTMLParserOptions::HTMLParserOptions):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::init):

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::XSSAuditorDelegate::generateViolationReport):
(WebCore::XSSAuditorDelegate::didBlockScript):

  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus):
(WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):

  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorFrontendClientLocal::openInNewTab):

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::loadResourceSynchronously):

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::overlayPage):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::mainResourceContent):
(WebCore::InspectorPageAgent::reload):
(WebCore::InspectorPageAgent::navigate):
(WebCore::allResourcesURLsForFrame):
(WebCore::InspectorPageAgent::searchInResource):
(WebCore::InspectorPageAgent::assertDocumentLoader):
(WebCore::InspectorPageAgent::buildObjectForFrame):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didFailLoading):

  • loader/CookieJar.cpp:

(WebCore::networkingContext):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::frameLoader):
(WebCore::DocumentLoader::document):
(WebCore::DocumentLoader::stopLoading):
(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::subresourceLoaderFinishedLoadingOnePart):
(WebCore::DocumentLoader::iconLoadDecisionAvailable):
(WebCore::DocumentLoader::continueIconLoadWithDecision):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::didReceiveResponse):
(WebCore::DocumentThreadableLoader::didFinishLoading):
(WebCore::DocumentThreadableLoader::didFail):
(WebCore::DocumentThreadableLoader::preflightFailure):
(WebCore::DocumentThreadableLoader::loadRequest):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::replaceDocument):
(WebCore::DocumentWriter::createDocument):
(WebCore::DocumentWriter::begin):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::~FrameLoader):
(WebCore::FrameLoader::allChildrenAreComplete):
(WebCore::FrameLoader::allAncestorsAreComplete):
(WebCore::FrameLoader::loadURLIntoChildFrame):
(WebCore::FrameLoader::outgoingReferrer):
(WebCore::FrameLoader::setOpener):
(WebCore::FrameLoader::completed):
(WebCore::FrameLoader::started):
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::stopAllLoaders):
(WebCore::FrameLoader::closeOldDataSources):
(WebCore::FrameLoader::subframeIsLoading):
(WebCore::FrameLoader::subresourceCachePolicy):
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
(WebCore::FrameLoader::detachChildren):
(WebCore::FrameLoader::checkLoadComplete):
(WebCore::FrameLoader::detachFromParent):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::loadResourceSynchronously):
(WebCore::FrameLoader::shouldClose):
(WebCore::FrameLoader::handleBeforeUnloadEvent):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
(WebCore::createWindow):

  • loader/HistoryController.cpp:

(WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
(WebCore::HistoryController::restoreScrollPositionAndViewState):
(WebCore::HistoryController::saveDocumentState):
(WebCore::HistoryController::saveDocumentAndScrollState):
(WebCore::isAssociatedToRequestedHistoryItem):
(WebCore::HistoryController::restoreDocumentState):
(WebCore::HistoryController::shouldStopLoadingForHistoryItem):
(WebCore::HistoryController::goToItem):
(WebCore::HistoryController::updateForBackForwardNavigation):
(WebCore::HistoryController::updateForReload):
(WebCore::HistoryController::updateForStandardLoad):
(WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
(WebCore::HistoryController::updateForClientRedirect):
(WebCore::HistoryController::updateForCommit):
(WebCore::HistoryController::recursiveUpdateForCommit):
(WebCore::HistoryController::updateForSameDocumentNavigation):
(WebCore::HistoryController::recursiveUpdateForSameDocumentNavigation):
(WebCore::HistoryController::initializeItem):
(WebCore::HistoryController::createItemTree):
(WebCore::HistoryController::recursiveSetProvisionalItem):
(WebCore::HistoryController::recursiveGoToItem):
(WebCore::HistoryController::updateBackForwardListClippedAtTarget):
(WebCore::HistoryController::updateCurrentItem):
(WebCore::HistoryController::pushState):
(WebCore::HistoryController::replaceState):

  • loader/ImageLoader.cpp:

(WebCore::pageIsBeingDismissed):

  • loader/MixedContentChecker.cpp:

(WebCore::MixedContentChecker::client):

  • loader/NavigationScheduler.cpp:

(WebCore::ScheduledURLNavigation::fire):
(WebCore::ScheduledURLNavigation::didStartTimer):
(WebCore::ScheduledURLNavigation::didStopTimer):
(WebCore::ScheduledRedirect::shouldStartTimer):
(WebCore::ScheduledRedirect::fire):
(WebCore::ScheduledRefresh::fire):
(WebCore::ScheduledHistoryNavigation::fire):
(WebCore::ScheduledFormSubmission::fire):
(WebCore::ScheduledFormSubmission::didStartTimer):
(WebCore::ScheduledFormSubmission::didStopTimer):
(WebCore::NavigationScheduler::mustLockBackForwardList):
(WebCore::NavigationScheduler::scheduleLocationChange):
(WebCore::NavigationScheduler::scheduleFormSubmission):
(WebCore::NavigationScheduler::scheduleRefresh):
(WebCore::NavigationScheduler::schedule):

  • loader/PingLoader.cpp:

(WebCore::PingLoader::loadImage):
(WebCore::PingLoader::sendPing):
(WebCore::PingLoader::sendViolationReport):
(WebCore::PingLoader::PingLoader):

  • loader/PolicyChecker.cpp:

(WebCore::PolicyChecker::checkNavigationPolicy):
(WebCore::PolicyChecker::checkNewWindowPolicy):
(WebCore::PolicyChecker::checkContentPolicy):
(WebCore::PolicyChecker::cancelCheck):
(WebCore::PolicyChecker::stopCheck):
(WebCore::PolicyChecker::cannotShowMIMEType):
(WebCore::PolicyChecker::continueLoadAfterWillSubmitForm):
(WebCore::PolicyChecker::continueAfterNavigationPolicy):
(WebCore::PolicyChecker::continueAfterNewWindowPolicy):
(WebCore::PolicyChecker::handleUnimplementablePolicy):

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::progressStarted):
(WebCore::ProgressTracker::progressCompleted):
(WebCore::ProgressTracker::finalProgressComplete):
(WebCore::ProgressTracker::incrementProgress):
(WebCore::ProgressTracker::progressHeartbeatTimerFired):

  • loader/ResourceLoadNotifier.cpp:

(WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
(WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
(WebCore::ResourceLoadNotifier::willSendRequest):
(WebCore::ResourceLoadNotifier::didFailToLoad):
(WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
(WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
(WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
(WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
(WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
(WebCore::ResourceLoadNotifier::dispatchDidFailLoading):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::ResourceLoader):
(WebCore::ResourceLoader::start):
(WebCore::ResourceLoader::frameLoader):
(WebCore::ResourceLoader::willSendRequest):

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::pluginIsLoadable):
(WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
(WebCore::SubframeLoader::createJavaAppletWidget):
(WebCore::SubframeLoader::loadOrRedirectSubframe):
(WebCore::SubframeLoader::loadSubframe):
(WebCore::SubframeLoader::allowPlugins):
(WebCore::SubframeLoader::shouldUsePlugin):
(WebCore::SubframeLoader::loadPlugin):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::selectCache):
(WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
(WebCore::ApplicationCacheGroup::update):
(WebCore::ApplicationCacheGroup::createResourceHandle):
(WebCore::ApplicationCacheGroup::didReceiveResponse):
(WebCore::ApplicationCacheGroup::didFinishLoading):
(WebCore::ApplicationCacheGroup::didFail):
(WebCore::ApplicationCacheGroup::addEntry):
(WebCore::CallCacheListenerTask::performTask):
(WebCore::ApplicationCacheGroup::postListenerTask):

  • loader/appcache/DOMApplicationCache.cpp:

(WebCore::DOMApplicationCache::applicationCacheHost):

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::create):
(WebCore::LegacyWebArchive::createFromSelection):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::addAdditionalRequestHeaders):
(WebCore::CachedResource::load):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestImage):
(WebCore::CachedResourceLoader::checkInsecureContent):
(WebCore::CachedResourceLoader::canRequest):
(WebCore::CachedResourceLoader::shouldContinueAfterNotifyingLoadedFromMemoryCache):
(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::clientDefersImage):
(WebCore::CachedResourceLoader::cachePolicy):
(WebCore::CachedResourceLoader::loadDone):

  • loader/icon/IconController.cpp:

(WebCore::IconController::commitToDatabase):
(WebCore::IconController::startLoader):
(WebCore::IconController::continueLoadWithDecision):

  • loader/icon/IconLoader.cpp:

(WebCore::IconLoader::startLoading):
(WebCore::IconLoader::notifyFinished):

  • page/Chrome.cpp:

(WebCore::canRunModalIfDuringPageDismissal):

  • page/ContextMenuController.cpp:

(WebCore::openNewWindow):
(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::populate):
(WebCore::ContextMenuController::checkOrEnableIfNeeded):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents):
(WebCore::DOMWindow::postMessageTimerFired):
(WebCore::DOMWindow::close):
(WebCore::DOMWindow::print):
(WebCore::DOMWindow::stop):
(WebCore::DOMWindow::setName):
(WebCore::DOMWindow::opener):
(WebCore::DOMWindow::dispatchLoadEvent):
(WebCore::DOMWindow::setLocation):
(WebCore::DOMWindow::createWindow):
(WebCore::DOMWindow::open):

  • page/DOMWindowExtension.cpp:

(WebCore::DOMWindowExtension::disconnectFrameForPageCache):
(WebCore::DOMWindowExtension::reconnectFrameFromPageCache):
(WebCore::DOMWindowExtension::willDestroyGlobalObjectInCachedFrame):
(WebCore::DOMWindowExtension::willDestroyGlobalObjectInFrame):
(WebCore::DOMWindowExtension::willDetachGlobalObjectFromFrame):

  • page/DragController.cpp:

(WebCore::DragController::performDrag):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::keyEvent):

  • page/Frame.cpp:

(WebCore::Frame::~Frame):
(WebCore::Frame::setView):
(WebCore::Frame::injectUserScripts):
(WebCore::Frame::willDetachPage):

  • page/Frame.h:

(WebCore::Frame::loader):

  • page/FrameView.cpp:

(WebCore::FrameView::mediaType):
(WebCore::FrameView::setFixedVisibleContentRect):
(WebCore::FrameView::shouldUseLoadTimeDeferredRepaintDelay):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::autoSizeIfEnabled):
(WebCore::FrameView::scrollTo):
(WebCore::FrameView::shouldSuspendScrollAnimations):
(WebCore::FrameView::qualifiesAsVisuallyNonEmpty):
(WebCore::FrameView::wheelEvent):
(WebCore::FrameView::firePaintRelatedMilestones):

  • page/History.cpp:

(WebCore::History::stateInternal):
(WebCore::History::stateObjectAdded):

  • page/Location.cpp:

(WebCore::Location::setLocation):

  • page/Navigator.cpp:

(WebCore::Navigator::userAgent):

  • page/Page.cpp:

(WebCore::Page::goToItem):
(WebCore::Page::refreshPlugins):
(WebCore::Page::setDefersLoading):
(WebCore::Page::setMemoryCacheClientCallsEnabled):
(WebCore::Page::addRelevantRepaintedObject):

  • page/Performance.cpp:

(WebCore::Performance::now):

  • page/PerformanceNavigation.cpp:

(WebCore::PerformanceNavigation::type):
(WebCore::PerformanceNavigation::redirectCount):

  • page/PerformanceResourceTiming.cpp:

(WebCore::monotonicTimeToDocumentMilliseconds):

  • page/mac/PageMac.cpp:

(WebCore::Page::addSchedulePair):
(WebCore::Page::removeSchedulePair):

  • platform/ios/PasteboardIOS.mm:

(WebCore::documentFragmentWithImageResource):
(WebCore::documentFragmentWithRTF):
(WebCore::Pasteboard::documentFragmentForPasteboardItemAtIndex):

  • platform/mac/HTMLConverter.mm:

(-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
(-[WebHTMLConverter _loadFromDOMRange]):

  • platform/mac/PasteboardMac.mm:

(WebCore::documentFragmentWithImageResource):
(WebCore::documentFragmentWithRTF):
(WebCore::fragmentFromWebArchive):

  • plugins/DOMMimeType.cpp:

(WebCore::DOMMimeType::enabledPlugin):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollTo):

  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::defaultEventHandler):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::~SVGImage):
(WebCore::SVGImage::dataChanged):

  • testing/Internals.cpp:

(WebCore::Internals::formControlStateOfPreviousHistoryItem):
(WebCore::Internals::setFormControlStateOfPreviousHistoryItem):
(WebCore::Internals::getReferencedFilePaths):
(WebCore::Internals::forceReload):

  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::docLoaderFunc):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::openFunc):
(WebCore::XMLDocumentParser::startElementNs):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPagePrivate::loadString):
(BlackBerry::WebKit::WebPagePrivate::stopCurrentLoad):
(BlackBerry::WebKit::closeURLRecursively):
(BlackBerry::WebKit::WebPage::dispatchBeforeUnloadEvent):
(BlackBerry::WebKit::WebPagePrivate::shouldSendResizeEvent):
(BlackBerry::WebKit::WebPagePrivate::zoomToInitialScaleOnLoad):
(BlackBerry::WebKit::WebPage::reload):
(BlackBerry::WebKit::WebPage::reloadFromCache):
(BlackBerry::WebKit::WebPage::textEncoding):
(BlackBerry::WebKit::WebPage::forcedTextEncoding):
(BlackBerry::WebKit::WebPage::setForcedTextEncoding):
(BlackBerry::WebKit::WebPage::title):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::createWindow):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidChangeLocationWithinPage):
(WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForResponse):
(WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNavigationAction):
(WebCore::FrameLoaderClientBlackBerry::delayPolicyCheckUntilFragmentExists):
(WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNewWindowAction):
(WebCore::FrameLoaderClientBlackBerry::createPlugin):
(WebCore::FrameLoaderClientBlackBerry::receivedData):
(WebCore::FrameLoaderClientBlackBerry::createDocumentLoader):
(WebCore::FrameLoaderClientBlackBerry::dispatchDidCommitLoad):
(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):
(WebCore::FrameLoaderClientBlackBerry::createFrame):
(WebCore::FrameLoaderClientBlackBerry::dispatchDidLayout):
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendRequest):
(WebCore::FrameLoaderClientBlackBerry::restoreViewState):
(WebCore::FrameLoaderClientBlackBerry::startDownload):
(WebCore::FrameLoaderClientBlackBerry::canCachePage):
(WebCore::FrameLoaderClientBlackBerry::didRestoreFromPageCache):

  • WebKitSupport/PagePopup.cpp:

(BlackBerry::WebKit::PagePopup::initialize):

Source/WebKit/efl:

  • WebCoreSupport/ChromeClientEfl.cpp:

(kit):

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::callShouldCloseOnWebView):
(DumpRenderTreeSupportEfl::clearOpener):
(DumpRenderTreeSupportEfl::frameChildren):
(DumpRenderTreeSupportEfl::responseMimeType):
(DumpRenderTreeSupportEfl::provisionalURL):

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::callPolicyFunction):
(WebCore::FrameLoaderClientEfl::dispatchDecidePolicyForNewWindowAction):
(WebCore::FrameLoaderClientEfl::dispatchDecidePolicyForNavigationAction):
(WebCore::FrameLoaderClientEfl::updateGlobalHistoryRedirectLinks):
(WebCore::FrameLoaderClientEfl::updateGlobalHistory):

  • ewk/ewk_frame.cpp:

(_ewk_frame_loader_efl_get):
(_ewk_frame_smart_del):
(_ewk_frame_contents_set_internal):
(ewk_frame_stop):
(ewk_frame_reload):
(ewk_frame_reload_full):
(ewk_frame_child_add):

  • ewk/ewk_view.cpp:

(ewk_view_frame_focused_get):
(ewk_view_setting_user_agent_set):
(ewk_view_setting_encoding_custom_get):
(ewk_view_setting_encoding_custom_set):

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::clearOpener):
(DumpRenderTreeSupportGtk::shouldClose):

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::dispatchWillSubmitForm):
(WebKit::FrameLoaderClient::committedLoad):
(WebKit::FrameLoaderClient::dispatchDecidePolicyForResponse):
(WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
(WebKit::FrameLoaderClient::createFrame):
(WebKit::FrameLoaderClient::dispatchDidCommitLoad):

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_finalize):
(webkit_web_frame_load_uri):
(webkit_web_frame_load_data):
(webkit_web_frame_load_request):
(webkit_web_frame_stop_loading):
(webkit_web_frame_reload):
(webkit_web_frame_get_data_source):
(webkit_web_frame_get_provisional_data_source):
(webkit_web_frame_get_response_mime_type):
(webkit_web_frame_get_network_response):
(WebKit::kit):

  • webkit/webkitwebpolicydecision.cpp:

(webkit_web_policy_decision_use):
(webkit_web_policy_decision_ignore):
(webkit_web_policy_decision_download):

  • webkit/webkitwebview.cpp:

(webkit_web_view_dispose):
(webkit_web_view_reload):
(webkit_web_view_reload_bypass_cache):
(webkit_web_view_stop_loading):
(webkit_web_view_can_show_mime_type):
(webkit_web_view_set_custom_encoding):
(webkit_web_view_get_custom_encoding):
(webkit_web_view_get_subresources):

Source/WebKit/mac:

  • Plugins/Hosted/HostedNetscapePluginStream.mm:

(WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::performRequest):
(WebKit::NetscapePluginInstanceProxy::loadRequest):

  • Plugins/Hosted/WebHostedNetscapePluginView.mm:

(-[WebHostedNetscapePluginView pluginView:receivedResponse:]):

  • Plugins/WebBaseNetscapePluginView.mm:

(-[WebBaseNetscapePluginView requestWithURLCString:]):

  • Plugins/WebNetscapePluginStream.mm:

(WebNetscapePluginStream::WebNetscapePluginStream):

  • Plugins/WebNetscapePluginView.mm:

(-[WebNetscapePluginView loadStream]):
(-[WebNetscapePluginView pluginView:receivedResponse:]):
(-[WebNetscapePluginView loadPluginRequest:]):
(-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):

  • Plugins/WebPluginController.mm:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
(WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
(WebFrameLoaderClient::dispatchWillSubmitForm):
(WebFrameLoaderClient::updateGlobalHistory):
(WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
(WebFrameLoaderClient::restoreViewState):
(WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebFrameLoaderClient::createFrame):

  • WebCoreSupport/WebFrameNetworkingContext.mm:

(WebFrameNetworkingContext::blockedError):

  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::getPluginInfo):

  • WebView/WebFrame.mm:

(kit):
(-[WebFrame _dataSource]):
(-[WebFrame _canProvideDocumentSource]):
(-[WebFrame _commitData:]):
(-[WebFrame _firstLayoutDone]):
(-[WebFrame _loadType]):
(-[WebFrame _cacheabilityDictionary]):
(-[WebFrame _clearOpener]):
(-[WebFrame provisionalDataSource]):
(-[WebFrame dataSource]):
(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
(-[WebFrame loadArchive:]):
(-[WebFrame stopLoading]):
(-[WebFrame reload]):
(-[WebFrame reloadFromOrigin]):

  • WebView/WebHTMLRepresentation.mm:

(-[WebHTMLRepresentation receivedData:withDataSource:]):

  • WebView/WebHTMLView.mm:

(-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):

  • WebView/WebPDFView.mm:

(-[WebPDFView PDFViewWillClickOnLink:withURL:]):

  • WebView/WebRenderLayer.mm:

(-[WebRenderLayer initWithWebFrame:]):

  • WebView/WebRenderNode.mm:

(-[WebRenderNode _initWithCoreFrame:]):

  • WebView/WebView.mm:

(-[WebView _close]):
(-[WebView _loadBackForwardListFromOtherView:]):
(-[WebView _cachedResponseForURL:]):
(-[WebView setCustomTextEncodingName:]):
(-[WebView shouldClose]):

Source/WebKit/qt:

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::ChromeClientQt::closeWindowSoon):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::shouldClose):
(DumpRenderTreeSupportQt::responseMimeType):
(DumpRenderTreeSupportQt::clearOpener):
(DumpRenderTreeSupportQt::thirdPartyCookiePolicyAllows):
(DumpRenderTreeSupportQt::setAlternateHtml):

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::callPolicyFunction):
(WebCore::FrameLoaderClientQt::dispatchDidStartProvisionalLoad):
(WebCore::FrameLoaderClientQt::updateGlobalHistory):
(WebCore::FrameLoaderClientQt::updateGlobalHistoryRedirectLinks):
(WebCore::FrameLoaderClientQt::callErrorPageExtension):
(WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNewWindowAction):
(WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):
(WebCore::FrameLoaderClientQt::startDownload):
(WebCore::FrameLoaderClientQt::createFrame):
(WebCore::FrameLoaderClientQt::objectContentType):

  • WebCoreSupport/QWebFrameAdapter.cpp:

(QWebFrameAdapter::load):
(QWebFrameAdapter::setContent):
(QWebFrameAdapter::setHtml):
(QWebFrameAdapter::kit):
(QWebFrameAdapter::title):
(QWebFrameAdapter::clearCoreFrame):

  • WebCoreSupport/QWebPageAdapter.cpp:

(frameLoadRequest):
(openNewWindow):
(QWebPageAdapter::triggerAction):
(QWebPageAdapter::currentFrame):

Source/WebKit/win:

  • WebCoreSupport/WebContextMenuClient.cpp:

(WebContextMenuClient::searchWithGoogle):

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::updateGlobalHistory):
(WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
(WebFrameLoaderClient::savePlatformDataToCachedFrame):
(WebFrameLoaderClient::createFrame):
(WebFrameLoaderClient::dispatchDidFailToStartPlugin):

  • WebCoreSupport/WebFrameNetworkingContext.cpp:

(WebFrameNetworkingContext::blockedError):
(WebFrameNetworkingContext::referrer):

  • WebElementPropertyBag.cpp:

(WebElementPropertyBag::Read):

  • WebFrame.cpp:

(kit):
(WebFrame::reloadFromOrigin):
(WebFrame::loadRequest):
(WebFrame::loadData):
(WebFrame::dataSource):
(WebFrame::provisionalDataSource):
(WebFrame::stopLoading):
(WebFrame::reload):
(WebFrame::firstLayoutDone):
(WebFrame::loadType):
(WebFrame::clearOpener):
(WebFrame::dispatchWillSubmitForm):
(WebFrame::receivedPolicyDecision):
(WebFrame::dispatchDecidePolicyForResponse):
(WebFrame::dispatchDecidePolicyForNewWindowAction):
(WebFrame::dispatchDecidePolicyForNavigationAction):
(WebFrame::createJavaAppletWidget):

  • WebFramePolicyListener.cpp:

(WebFramePolicyListener::receivedPolicyDecision):

  • WebView.cpp:

(WebView::close):
(WebView::canShowMIMEType):
(WebView::setCustomTextEncodingName):
(WebView::loadBackForwardListFromOtherView):
(WebView::shouldClose):

Source/WebKit/wince:

  • WebCoreSupport/FrameLoaderClientWinCE.cpp:

(WebKit::FrameLoaderClientWinCE::dispatchDecidePolicyForResponse):
(WebKit::FrameLoaderClientWinCE::dispatchDecidePolicyForNewWindowAction):
(WebKit::FrameLoaderClientWinCE::dispatchDecidePolicyForNavigationAction):
(WebKit::FrameLoaderClientWinCE::dispatchWillSubmitForm):

  • WebCoreSupport/FrameNetworkingContextWinCE.cpp:

(WebKit::FrameNetworkingContextWinCE::referrer):

  • WebView.cpp:

(WebView::createFrame):
(WebView::load):
(WebView::reload):
(WebView::stop):

Source/WebKit2:

  • Shared/WebRenderLayer.cpp:

(WebKit::WebRenderLayer::create):

  • Shared/WebRenderObject.cpp:

(WebKit::WebRenderObject::create):

  • WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:

(WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):

  • WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:

(WKBundleFrameGetFrameLoadState):
(WKBundleFrameClearOpener):
(WKBundleFrameCallShouldCloseOnWebView):

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::InjectedBundleNodeHandle::documentFrame):
(WebKit::InjectedBundleNodeHandle::htmlFrameElementContentFrame):
(WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

  • WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:

(WebKit::InjectedBundleDOMWindowExtension::frame):

  • WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:

(WebKit::InjectedBundleHitTestResult::frame):
(WebKit::InjectedBundleHitTestResult::targetFrame):

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::clickedLink):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::webPage):
(WebKit::PluginView::didFailToInitializePlugin):
(WebKit::PluginView::performFrameLoadURLRequest):
(WebKit::PluginView::userAgent):
(WebKit::PluginView::loadURL):
(WebKit::PluginView::cancelManualStreamLoad):
(WebKit::PluginView::proxiesForURL):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::focusedElementChanged):
(WebKit::WebChromeClient::focusedFrameChanged):
(WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
(WebKit::WebChromeClient::closeWindowSoon):
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
(WebKit::WebChromeClient::unavailablePluginButtonClicked):
(WebKit::WebChromeClient::print):
(WebKit::WebChromeClient::exceededDatabaseQuota):
(WebKit::WebChromeClient::runOpenPanel):

  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:

(WebKit::WebContextMenuClient::searchWithGoogle):

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::textFieldDidBeginEditing):
(WebKit::WebEditorClient::textFieldDidEndEditing):
(WebKit::WebEditorClient::textDidChangeInTextField):
(WebKit::WebEditorClient::textDidChangeInTextArea):
(WebKit::WebEditorClient::doTextFieldCommandFromEvent):
(WebKit::WebEditorClient::textWillBeDeletedInTextField):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
(WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
(WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
(WebKit::WebFrameLoaderClient::updateGlobalHistory):
(WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
(WebKit::WebFrameLoaderClient::restoreViewState):
(WebKit::WebFrameLoaderClient::createFrame):
(WebKit::WebFrameLoaderClient::createJavaAppletWidget):
(WebKit::WebFrameLoaderClient::objectContentType):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::getPluginInfo):

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:

(WebKit::WebFrameNetworkingContext::blockedError):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::didReceivePolicyDecision):
(WebKit::WebFrame::startDownload):
(WebKit::WebFrame::source):
(WebKit::WebFrame::contentsAsString):
(WebKit::WebFrame::url):
(WebKit::WebFrame::parentFrame):
(WebKit::WebFrame::childFrames):
(WebKit::WebFrame::stopLoading):
(WebKit::WebFrame::frameForContext):
(WebKit::WebFrame::provisionalURL):
(WebKit::WebFrame::suggestedFilenameForResourceWithURL):
(WebKit::WebFrame::mimeTypeForResourceWithURL):
(WebKit::WebFrameFilter::shouldIncludeSubframe):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):
(WebKit::WebPage::close):
(WebKit::WebPage::tryClose):
(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadDataImpl):
(WebKit::WebPage::linkClicked):
(WebKit::WebPage::stopLoadingFrame):
(WebKit::WebPage::stopLoading):
(WebKit::WebPage::reload):
(WebKit::WebPage::tryRestoreScrollPosition):
(WebKit::WebPage::getMainResourceDataOfFrame):
(WebKit::resourceDataForFrame):
(WebKit::shouldReuseCommittedSandboxExtension):
(WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
(WebKit::WebPage::hasLocalDataForURL):
(WebKit::WebPage::setCustomTextEncodingName):
(WebKit::WebPage::canPluginHandleResponse):
(WebKit::WebPage::canShowMIMEType):
(WebKit::WebPage::didCommitLoad):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::platformHasLocalDataForURL):
(WebKit::cachedResponseForURL):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadRequest):

3:12 PM Changeset in webkit [154141] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[DFG] isDouble() and isNumerical() should return true with KnownNumberUse UseKind.
https://bugs.webkit.org/show_bug.cgi?id=119794

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-15
Reviewed by Filip Pizlo.

This patch fixes ASSERTs failures in debug builds for sh4 and mips architecture.

  • dfg/DFGUseKind.h:

(JSC::DFG::isNumerical):
(JSC::DFG::isDouble):

3:08 PM Changeset in webkit [154140] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

<https://webkit.org/b/119863> [iOS] Upstream WebCore/editing/ios

Reviewed by David Kilzer.

Use the same UUIDs for EditorIOS.mm and the group ios as in the iOS tree
so as to make it straightforward to merge changes to the WebCore Xcode
project file on WebKit.org with changes to the same file in the iOS tree.

  • WebCore.xcodeproj/project.pbxproj:
2:54 PM Changeset in webkit [154139] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

http://trac.webkit.org/changeset/154120 accidentally changed DFGCapabilities to read the resolve type from operand 4, not 3; it should be 3.

Rubber stamped by Oliver Hunt.

This was causing some test crashes for me.

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

2:46 PM Changeset in webkit [154138] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Windows] Unreviewed build fix after r154127.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Remove two symbols that are

now part of JavaScriptCore.

2:43 PM Changeset in webkit [154137] by Brent Fulgham
  • 5 edits in trunk/Source/WebCore

[Windows] Unreviewed build fix after r15417.

  • DerivedSources.cpp: Remove classes that now live in JSC.
  • WebCore.vcxproj/WebCore.vcxproj: Remove classes no longer included in WebCore.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • bindings/js/WebCoreTypedArrayController.cpp: Add explicit namespace to avoid conflict

with Windows 'Unknown' type.
(WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots):
(WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize):

2:38 PM Changeset in webkit [154136] by Brent Fulgham
  • 2 edits in trunk/Source/JavaScriptCore

[Windows] Clear up improper export declaration.

  • runtime/ArrayBufferView.h:
2:33 PM Changeset in webkit [154135] by fpizlo@apple.com
  • 1 edit
    3 deletes in trunk/LayoutTests

Remove a test that times out.

Rubber stamped by Mark Hahnenberg.

This test times out for me, every time. It tests code that has since been rewritten
and has had new tests added to cover it. It's not clear that this test would be
useful anymore even if we made it not timeout.

  • fast/js/array-sort-modifying-tostring-expected.txt: Removed.
  • fast/js/array-sort-modifying-tostring.html: Removed.
  • fast/js/script-tests/array-sort-modifying-tostring.js: Removed.
2:33 PM Changeset in webkit [154134] by dbates@webkit.org
  • 2 edits
    2 adds in trunk/Source/WebCore

<https://webkit.org/b/119863> [iOS] Upstream WebCore/editing/ios

Reviewed by David Kilzer.

  • WebCore.xcodeproj/project.pbxproj:
  • editing/ios/EditorIOS.mm: Added.

(WebCore::Editor::newGeneralClipboard):
(WebCore::Editor::showFontPanel):
(WebCore::Editor::showStylesPanel):
(WebCore::Editor::showColorPanel):
(WebCore::Editor::setTextAlignmentForChangedBaseWritingDirection):
(WebCore::Editor::insertParagraphSeparatorInQuotedContent):
(WebCore::styleForSelectionStart):
(WebCore::Editor::fontForSelection):
(WebCore::Editor::fontAttributesForSelectionStart):
(WebCore::Editor::removeUnchangeableStyles):

2:29 PM Changeset in webkit [154133] by krit@webkit.org
  • 19 edits
    9 adds in trunk

Implement CSS Image filter() function
https://bugs.webkit.org/show_bug.cgi?id=119845

Reviewed by Dean Jackson.

Source/WebCore:

The Filter Effects specification defines a new CSS Image function called
filter(). This function takes another CSS Image as well as a filter function
list as input and can be used by various CSS properties.

Example:

background-image: -webkit-filter(url(image.png), brightness(0.5))

This patch implements the current definition of filter() based on other
image generation classes like CSSCrossfadeValue.
A new class called CSSFilterImageValue was added together with an
image observer.

The function is implemented prefixed and behind the compiler flag CSS_FILTERS.

Tests: fast/filter-image/filter-image.html

fast/filter-image/parse-filter-image.html

  • CMakeLists.txt: Added new files to build systems.
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSAllInOne.cpp:
  • css/CSSCrossfadeValue.cpp: Share code together with CSSFilterImageValue

in CSSImageGeneratorValue.cpp.

(WebCore::CSSCrossfadeValue::isPending):
(WebCore::CSSCrossfadeValue::loadSubimages):

  • css/CSSFilterImageValue.cpp: Added.

(WebCore::CSSFilterImageValue::~CSSFilterImageValue):
(WebCore::CSSFilterImageValue::customCssText):
(WebCore::CSSFilterImageValue::fixedSize):
(WebCore::CSSFilterImageValue::isPending):
(WebCore::CSSFilterImageValue::knownToBeOpaque):
(WebCore::CSSFilterImageValue::loadSubimages):
(WebCore::CSSFilterImageValue::image):
(WebCore::CSSFilterImageValue::filterImageChanged):
(WebCore::CSSFilterImageValue::createFilterOperations):
(WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::imageChanged):
(WebCore::CSSFilterImageValue::hasFailedOrCanceledSubresources):
(WebCore::CSSFilterImageValue::equals):

  • css/CSSFilterImageValue.h: Added.

(WebCore::CSSFilterImageValue::create):
(WebCore::CSSFilterImageValue::isFixedSize):
(WebCore::CSSFilterImageValue::CSSFilterImageValue):
(WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::FilterSubimageObserverProxy):
(WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::~FilterSubimageObserverProxy):
(WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::setReady):

  • css/CSSImageGeneratorValue.cpp: Shared code between CSSCrossfadeValue and

CSSFilterImageValue.

(WebCore::CSSImageGeneratorValue::image):
(WebCore::CSSImageGeneratorValue::isFixedSize):
(WebCore::CSSImageGeneratorValue::fixedSize):
(WebCore::CSSImageGeneratorValue::isPending):
(WebCore::CSSImageGeneratorValue::knownToBeOpaque):
(WebCore::CSSImageGeneratorValue::loadSubimages):
(WebCore::CSSImageGeneratorValue::subimageIsPending):
(WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):

  • css/CSSImageGeneratorValue.h:
  • css/CSSParser.cpp: Added parsing information for new image function.

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::isGeneratedImageValue):
(WebCore::CSSParser::parseGeneratedImage):
(WebCore::CSSParser::parseFilterImage):
(WebCore::CSSParser::parseFilter):

  • css/CSSParser.h:
  • css/CSSValue.cpp:

(WebCore::CSSValue::hasFailedOrCanceledSubresources):
(WebCore::CSSValue::equals):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):

  • css/CSSValue.h:

(WebCore::CSSValue::isFilterImageValue):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::generatedOrPendingFromValue):
(WebCore::StyleResolver::createFilterOperations):

  • css/StyleResolver.h: StyleResolver needs to be passed to

CSSFilterImageValue in order to resolve blur() and
drop-shadow() function. Both needs to be resolved together
with all other properties and can't be done earlier or later.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build): Pass an argument whether the

intermediate filter results should be clipped or not. The filter
property for instance doesn't clip but scales the intermediate
image sizes.

  • rendering/FilterEffectRenderer.h:

LayoutTests:

Test parsing, style resolving, computed style and behavior of new
CSS image function filter().

  • fast/filter-image/filter-image-expected.html: Added.
  • fast/filter-image/filter-image.html: Added.
  • fast/filter-image/parse-filter-image-expected.txt: Added.
  • fast/filter-image/parse-filter-image.html: Added.
  • fast/filter-image/resources/image.svg: Added.
2:27 PM Changeset in webkit [154132] by fpizlo@apple.com
  • 4 edits in trunk

Source/JavaScriptCore: Unreviewed, remove some unnecessary periods from exceptions.

  • runtime/JSDataViewPrototype.cpp:

(JSC::getData):
(JSC::setData):

LayoutTests: Unreviewed, rebase the test now that we throw different exceptions.

  • fast/canvas/webgl/data-view-test-expected.txt:
2:12 PM Changeset in webkit [154131] by fpizlo@apple.com
  • 8 edits
    1 delete in trunk/Source/WebCore

Unreviewed, fix bindings tests after http://trac.webkit.org/changeset/154127

  • bindings/scripts/test/JS/JSTestCallback.cpp:

(WebCore::JSTestCallback::callbackWithArrayParam):

  • bindings/scripts/test/JS/JSTestCallback.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::setJSTestObjTypedArrayAttr):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:

(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors2):

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::jsTestTypedefsPrototypeFunctionFunc):

  • bindings/scripts/test/ObjC/DOMFloat64Array.mm:
  • bindings/scripts/test/ObjC/DOMTestCallback.mm:
  • bindings/scripts/test/TestTypedArray.idl: Removed.
2:11 PM Changeset in webkit [154130] by zandobersek@gmail.com
  • 2 edits in trunk

Unreviewed GTK build fix after r154106.

  • Source/autotools/symbols.filter: Export the proper Element::shadowRoot() symbol.
2:00 PM Changeset in webkit [154129] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix 32-bit build.

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

1:54 PM Changeset in webkit [154128] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Qt minimum build fix after r154116.

  • page/FrameView.cpp:

(WebCore::FrameView::sendResizeEventIfNeeded):

1:43 PM Changeset in webkit [154127] by fpizlo@apple.com
  • 125 edits
    99 adds
    19 deletes in trunk

Typed arrays should be rewritten
https://bugs.webkit.org/show_bug.cgi?id=119064

.:

Reviewed by Oliver Hunt.

Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>.

  • Source/autotools/symbols.filter:

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

Typed arrays were previously deficient in several major ways:

  • They were defined separately in WebCore and in the jsc shell. The two implementations were different, and the jsc shell one was basically wrong. The WebCore one was quite awful, also.


  • Typed arrays were not visible to the JIT except through some weird hooks. For example, the JIT could not ask "what is the Structure that this typed array would have if I just allocated it from this global object". Also, it was difficult to wire any of the typed array intrinsics, because most of the functionality wasn't visible anywhere in JSC.


  • Typed array allocation was brain-dead. Allocating a typed array involved two JS objects, two GC weak handles, and three malloc allocations.


  • Neutering. It involved keeping tabs on all native views but not the view wrappers, even though the native views can autoneuter just by asking the buffer if it was neutered anytime you touch them; while the JS view wrappers are the ones that you really want to reach out to.


  • Common case-ing. Most typed arrays have one buffer and one view, and usually nobody touches the buffer. Yet we created all of that stuff anyway, using data structures optimized for the case where you had a lot of views.


  • Semantic goofs. Typed arrays should, in the future, behave like ES features rather than DOM features, for example when it comes to exceptions. Firefox already does this and I agree with them.


This patch cleanses our codebase of these sins:

  • Typed arrays are almost entirely defined in JSC. Only the lifecycle management of native references to buffers is left to WebCore.


  • Allocating a typed array requires either two GC allocations (a cell and a copied storage vector) or one GC allocation, a malloc allocation, and a weak handle (a cell and a malloc'd storage vector, plus a finalizer for the latter). The latter is only used for oversize arrays. Remember that before it was 7 allocations no matter what.


  • Typed arrays require just 4 words of overhead: Structure*, Butterfly*, mode/length, void* vector. Before it was a lot more than that - remember, there were five additional objects that did absolutely nothing for anybody.


  • Native views aren't tracked by the buffer, or by the wrappers. They are transient. In the future we'll probably switch to not even having them be malloc'd.


  • Native array buffers have an efficient way of tracking all of their JS view wrappers, both for neutering, and for lifecycle management. The GC special-cases native array buffers. This saves a bunch of grief; for example it means that a JS view wrapper can refer to its buffer via the butterfly, which would be dead by the time we went to finalize.


  • Typed array semantics now match Firefox, which also happens to be where the standards are going. The discussion on webkit-dev seemed to confirm that Chrome is also heading in this direction. This includes making Uint8ClampedArray not a subtype of Uint8Array, and getting rid of ArrayBufferView as a JS-visible construct.


This is up to a 10x speed-up on programs that allocate a lot of typed arrays.
It's a 1% speed-up on Octane. It also opens up a bunch of possibilities for
further typed array optimizations in the JSC JITs, including inlining typed
array allocation, inlining more of the accessors, reducing the cost of type
checks, etc.

An additional property of this patch is that typed arrays are mostly
implemented using templates. This deduplicates a bunch of code, but does mean
that we need some hacks for exporting s_info's of template classes. See
JSGenericTypedArrayView.h and JSTypedArrays.cpp. Those hacks are fairly
low-impact compared to code duplication.

Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>.

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.list.am:
  • JSCTypedArrayStubs.h: Removed.
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/ByValInfo.h:

(JSC::hasOptimizableIndexingForClassInfo):
(JSC::jitArrayModeForClassInfo):
(JSC::typedArrayTypeForJITArrayMode):

  • bytecode/SpeculatedType.cpp:

(JSC::speculationFromClassInfo):

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::toTypedArrayType):

  • dfg/DFGArrayMode.h:

(JSC::DFG::ArrayMode::typedArrayType):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):

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

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • heap/CopyToken.h:
  • heap/DeferGC.h:

(JSC::DeferGCForAWhile::DeferGCForAWhile):
(JSC::DeferGCForAWhile::~DeferGCForAWhile):

  • heap/GCIncomingRefCounted.h: Added.

(JSC::GCIncomingRefCounted::GCIncomingRefCounted):
(JSC::GCIncomingRefCounted::~GCIncomingRefCounted):
(JSC::GCIncomingRefCounted::numberOfIncomingReferences):
(JSC::GCIncomingRefCounted::incomingReferenceAt):
(JSC::GCIncomingRefCounted::singletonFlag):
(JSC::GCIncomingRefCounted::hasVectorOfCells):
(JSC::GCIncomingRefCounted::hasAnyIncoming):
(JSC::GCIncomingRefCounted::hasSingleton):
(JSC::GCIncomingRefCounted::singleton):
(JSC::GCIncomingRefCounted::vectorOfCells):

  • heap/GCIncomingRefCountedInlines.h: Added.

(JSC::::addIncomingReference):
(JSC::::filterIncomingReferences):

  • heap/GCIncomingRefCountedSet.h: Added.

(JSC::GCIncomingRefCountedSet::size):

  • heap/GCIncomingRefCountedSetInlines.h: Added.

(JSC::::GCIncomingRefCountedSet):
(JSC::::~GCIncomingRefCountedSet):
(JSC::::addReference):
(JSC::::sweep):
(JSC::::removeAll):
(JSC::::removeDead):

  • heap/Heap.cpp:

(JSC::Heap::addReference):
(JSC::Heap::extraSize):
(JSC::Heap::size):
(JSC::Heap::capacity):
(JSC::Heap::collect):
(JSC::Heap::decrementDeferralDepth):
(JSC::Heap::decrementDeferralDepthAndGCIfNeeded):

  • heap/Heap.h:
  • interpreter/CallFrame.h:

(JSC::ExecState::dataViewTable):

  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::privateCompileGetByVal):
(JSC::JIT::privateCompilePutByVal):
(JSC::JIT::emitIntTypedArrayGetByVal):
(JSC::JIT::emitFloatTypedArrayGetByVal):
(JSC::JIT::emitIntTypedArrayPutByVal):
(JSC::JIT::emitFloatTypedArrayPutByVal):

  • jsc.cpp:

(GlobalObject::finishCreation):

  • runtime/ArrayBuffer.cpp:

(JSC::ArrayBuffer::transfer):

  • runtime/ArrayBuffer.h:

(JSC::ArrayBuffer::createAdopted):
(JSC::ArrayBuffer::ArrayBuffer):
(JSC::ArrayBuffer::gcSizeEstimateInBytes):
(JSC::ArrayBuffer::pin):
(JSC::ArrayBuffer::unpin):
(JSC::ArrayBufferContents::tryAllocate):

  • runtime/ArrayBufferView.cpp:

(JSC::ArrayBufferView::ArrayBufferView):
(JSC::ArrayBufferView::~ArrayBufferView):
(JSC::ArrayBufferView::setNeuterable):

  • runtime/ArrayBufferView.h:

(JSC::ArrayBufferView::isNeutered):
(JSC::ArrayBufferView::buffer):
(JSC::ArrayBufferView::baseAddress):
(JSC::ArrayBufferView::byteOffset):
(JSC::ArrayBufferView::verifySubRange):
(JSC::ArrayBufferView::clampOffsetAndNumElements):
(JSC::ArrayBufferView::calculateOffsetAndLength):

  • runtime/ClassInfo.h:
  • runtime/CommonIdentifiers.h:
  • runtime/DataView.cpp: Added.

(JSC::DataView::DataView):
(JSC::DataView::create):
(JSC::DataView::wrap):

  • runtime/DataView.h: Added.

(JSC::DataView::byteLength):
(JSC::DataView::getType):
(JSC::DataView::get):
(JSC::DataView::set):

  • runtime/Float32Array.h:
  • runtime/Float64Array.h:
  • runtime/GenericTypedArrayView.h: Added.

(JSC::GenericTypedArrayView::data):
(JSC::GenericTypedArrayView::set):
(JSC::GenericTypedArrayView::setRange):
(JSC::GenericTypedArrayView::zeroRange):
(JSC::GenericTypedArrayView::zeroFill):
(JSC::GenericTypedArrayView::length):
(JSC::GenericTypedArrayView::byteLength):
(JSC::GenericTypedArrayView::item):
(JSC::GenericTypedArrayView::checkInboundData):
(JSC::GenericTypedArrayView::getType):

  • runtime/GenericTypedArrayViewInlines.h: Added.

(JSC::::GenericTypedArrayView):
(JSC::::create):
(JSC::::createUninitialized):
(JSC::::subarray):
(JSC::::wrap):

  • runtime/IndexingHeader.h:

(JSC::IndexingHeader::arrayBuffer):
(JSC::IndexingHeader::setArrayBuffer):

  • runtime/Int16Array.h:
  • runtime/Int32Array.h:
  • runtime/Int8Array.h:
  • runtime/JSArrayBuffer.cpp: Added.

(JSC::JSArrayBuffer::JSArrayBuffer):
(JSC::JSArrayBuffer::finishCreation):
(JSC::JSArrayBuffer::create):
(JSC::JSArrayBuffer::createStructure):
(JSC::JSArrayBuffer::getOwnPropertySlot):
(JSC::JSArrayBuffer::getOwnPropertyDescriptor):
(JSC::JSArrayBuffer::put):
(JSC::JSArrayBuffer::defineOwnProperty):
(JSC::JSArrayBuffer::deleteProperty):
(JSC::JSArrayBuffer::getOwnNonIndexPropertyNames):

  • runtime/JSArrayBuffer.h: Added.

(JSC::JSArrayBuffer::impl):
(JSC::toArrayBuffer):

  • runtime/JSArrayBufferConstructor.cpp: Added.

(JSC::JSArrayBufferConstructor::JSArrayBufferConstructor):
(JSC::JSArrayBufferConstructor::finishCreation):
(JSC::JSArrayBufferConstructor::create):
(JSC::JSArrayBufferConstructor::createStructure):
(JSC::constructArrayBuffer):
(JSC::JSArrayBufferConstructor::getConstructData):
(JSC::JSArrayBufferConstructor::getCallData):

  • runtime/JSArrayBufferConstructor.h: Added.
  • runtime/JSArrayBufferPrototype.cpp: Added.

(JSC::arrayBufferProtoFuncSlice):
(JSC::JSArrayBufferPrototype::JSArrayBufferPrototype):
(JSC::JSArrayBufferPrototype::finishCreation):
(JSC::JSArrayBufferPrototype::create):
(JSC::JSArrayBufferPrototype::createStructure):

  • runtime/JSArrayBufferPrototype.h: Added.
  • runtime/JSArrayBufferView.cpp: Added.

(JSC::JSArrayBufferView::ConstructionContext::ConstructionContext):
(JSC::JSArrayBufferView::JSArrayBufferView):
(JSC::JSArrayBufferView::finishCreation):
(JSC::JSArrayBufferView::getOwnPropertySlot):
(JSC::JSArrayBufferView::getOwnPropertyDescriptor):
(JSC::JSArrayBufferView::put):
(JSC::JSArrayBufferView::defineOwnProperty):
(JSC::JSArrayBufferView::deleteProperty):
(JSC::JSArrayBufferView::getOwnNonIndexPropertyNames):
(JSC::JSArrayBufferView::finalize):

  • runtime/JSArrayBufferView.h: Added.

(JSC::JSArrayBufferView::sizeOf):
(JSC::JSArrayBufferView::ConstructionContext::operator!):
(JSC::JSArrayBufferView::ConstructionContext::structure):
(JSC::JSArrayBufferView::ConstructionContext::vector):
(JSC::JSArrayBufferView::ConstructionContext::length):
(JSC::JSArrayBufferView::ConstructionContext::mode):
(JSC::JSArrayBufferView::ConstructionContext::butterfly):
(JSC::JSArrayBufferView::mode):
(JSC::JSArrayBufferView::vector):
(JSC::JSArrayBufferView::length):
(JSC::JSArrayBufferView::offsetOfVector):
(JSC::JSArrayBufferView::offsetOfLength):
(JSC::JSArrayBufferView::offsetOfMode):

  • runtime/JSArrayBufferViewInlines.h: Added.

(JSC::JSArrayBufferView::slowDownAndWasteMemoryIfNecessary):
(JSC::JSArrayBufferView::buffer):
(JSC::JSArrayBufferView::impl):
(JSC::JSArrayBufferView::neuter):
(JSC::JSArrayBufferView::byteOffset):

  • runtime/JSCell.cpp:

(JSC::JSCell::slowDownAndWasteMemory):
(JSC::JSCell::getTypedArrayImpl):

  • runtime/JSCell.h:
  • runtime/JSDataView.cpp: Added.

(JSC::JSDataView::JSDataView):
(JSC::JSDataView::create):
(JSC::JSDataView::createUninitialized):
(JSC::JSDataView::set):
(JSC::JSDataView::typedImpl):
(JSC::JSDataView::getOwnPropertySlot):
(JSC::JSDataView::getOwnPropertyDescriptor):
(JSC::JSDataView::slowDownAndWasteMemory):
(JSC::JSDataView::getTypedArrayImpl):
(JSC::JSDataView::createStructure):

  • runtime/JSDataView.h: Added.
  • runtime/JSDataViewPrototype.cpp: Added.

(JSC::JSDataViewPrototype::JSDataViewPrototype):
(JSC::JSDataViewPrototype::create):
(JSC::JSDataViewPrototype::createStructure):
(JSC::JSDataViewPrototype::getOwnPropertySlot):
(JSC::JSDataViewPrototype::getOwnPropertyDescriptor):
(JSC::getData):
(JSC::setData):
(JSC::dataViewProtoFuncGetInt8):
(JSC::dataViewProtoFuncGetInt16):
(JSC::dataViewProtoFuncGetInt32):
(JSC::dataViewProtoFuncGetUint8):
(JSC::dataViewProtoFuncGetUint16):
(JSC::dataViewProtoFuncGetUint32):
(JSC::dataViewProtoFuncGetFloat32):
(JSC::dataViewProtoFuncGetFloat64):
(JSC::dataViewProtoFuncSetInt8):
(JSC::dataViewProtoFuncSetInt16):
(JSC::dataViewProtoFuncSetInt32):
(JSC::dataViewProtoFuncSetUint8):
(JSC::dataViewProtoFuncSetUint16):
(JSC::dataViewProtoFuncSetUint32):
(JSC::dataViewProtoFuncSetFloat32):
(JSC::dataViewProtoFuncSetFloat64):

  • runtime/JSDataViewPrototype.h: Added.
  • runtime/JSFloat32Array.h: Added.
  • runtime/JSFloat64Array.h: Added.
  • runtime/JSGenericTypedArrayView.h: Added.

(JSC::JSGenericTypedArrayView::byteLength):
(JSC::JSGenericTypedArrayView::byteSize):
(JSC::JSGenericTypedArrayView::typedVector):
(JSC::JSGenericTypedArrayView::canGetIndexQuickly):
(JSC::JSGenericTypedArrayView::canSetIndexQuickly):
(JSC::JSGenericTypedArrayView::getIndexQuicklyAsNativeValue):
(JSC::JSGenericTypedArrayView::getIndexQuicklyAsDouble):
(JSC::JSGenericTypedArrayView::getIndexQuickly):
(JSC::JSGenericTypedArrayView::setIndexQuicklyToNativeValue):
(JSC::JSGenericTypedArrayView::setIndexQuicklyToDouble):
(JSC::JSGenericTypedArrayView::setIndexQuickly):
(JSC::JSGenericTypedArrayView::canAccessRangeQuickly):
(JSC::JSGenericTypedArrayView::typedImpl):
(JSC::JSGenericTypedArrayView::createStructure):
(JSC::JSGenericTypedArrayView::info):
(JSC::toNativeTypedView):

  • runtime/JSGenericTypedArrayViewConstructor.h: Added.
  • runtime/JSGenericTypedArrayViewConstructorInlines.h: Added.

(JSC::::JSGenericTypedArrayViewConstructor):
(JSC::::finishCreation):
(JSC::::create):
(JSC::::createStructure):
(JSC::constructGenericTypedArrayView):
(JSC::::getConstructData):
(JSC::::getCallData):

  • runtime/JSGenericTypedArrayViewInlines.h: Added.

(JSC::::JSGenericTypedArrayView):
(JSC::::create):
(JSC::::createUninitialized):
(JSC::::validateRange):
(JSC::::setWithSpecificType):
(JSC::::set):
(JSC::::getOwnPropertySlot):
(JSC::::getOwnPropertyDescriptor):
(JSC::::put):
(JSC::::defineOwnProperty):
(JSC::::deleteProperty):
(JSC::::getOwnPropertySlotByIndex):
(JSC::::putByIndex):
(JSC::::deletePropertyByIndex):
(JSC::::getOwnNonIndexPropertyNames):
(JSC::::getOwnPropertyNames):
(JSC::::visitChildren):
(JSC::::copyBackingStore):
(JSC::::slowDownAndWasteMemory):
(JSC::::getTypedArrayImpl):

  • runtime/JSGenericTypedArrayViewPrototype.h: Added.
  • runtime/JSGenericTypedArrayViewPrototypeInlines.h: Added.

(JSC::genericTypedArrayViewProtoFuncSet):
(JSC::genericTypedArrayViewProtoFuncSubarray):
(JSC::::JSGenericTypedArrayViewPrototype):
(JSC::::finishCreation):
(JSC::::create):
(JSC::::createStructure):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):
(JSC::JSGlobalObject::visitChildren):

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::arrayBufferPrototype):
(JSC::JSGlobalObject::arrayBufferStructure):
(JSC::JSGlobalObject::typedArrayStructure):

  • runtime/JSInt16Array.h: Added.
  • runtime/JSInt32Array.h: Added.
  • runtime/JSInt8Array.h: Added.
  • runtime/JSTypedArrayConstructors.cpp: Added.
  • runtime/JSTypedArrayConstructors.h: Added.
  • runtime/JSTypedArrayPrototypes.cpp: Added.
  • runtime/JSTypedArrayPrototypes.h: Added.
  • runtime/JSTypedArrays.cpp: Added.
  • runtime/JSTypedArrays.h: Added.
  • runtime/JSUint16Array.h: Added.
  • runtime/JSUint32Array.h: Added.
  • runtime/JSUint8Array.h: Added.
  • runtime/JSUint8ClampedArray.h: Added.
  • runtime/Operations.h:
  • runtime/Options.h:
  • runtime/SimpleTypedArrayController.cpp: Added.

(JSC::SimpleTypedArrayController::SimpleTypedArrayController):
(JSC::SimpleTypedArrayController::~SimpleTypedArrayController):
(JSC::SimpleTypedArrayController::toJS):

  • runtime/SimpleTypedArrayController.h: Added.
  • runtime/Structure.h:

(JSC::Structure::couldHaveIndexingHeader):

  • runtime/StructureInlines.h:

(JSC::Structure::hasIndexingHeader):

  • runtime/TypedArrayAdaptors.h: Added.

(JSC::IntegralTypedArrayAdaptor::toNative):
(JSC::IntegralTypedArrayAdaptor::toJSValue):
(JSC::IntegralTypedArrayAdaptor::toDouble):
(JSC::FloatTypedArrayAdaptor::toNative):
(JSC::FloatTypedArrayAdaptor::toJSValue):
(JSC::FloatTypedArrayAdaptor::toDouble):
(JSC::Uint8ClampedAdaptor::toNative):
(JSC::Uint8ClampedAdaptor::toJSValue):
(JSC::Uint8ClampedAdaptor::toDouble):
(JSC::Uint8ClampedAdaptor::clamp):

  • runtime/TypedArrayController.cpp: Added.

(JSC::TypedArrayController::TypedArrayController):
(JSC::TypedArrayController::~TypedArrayController):

  • runtime/TypedArrayController.h: Added.
  • runtime/TypedArrayDescriptor.h: Removed.
  • runtime/TypedArrayInlines.h: Added.
  • runtime/TypedArrayType.cpp: Added.

(JSC::classInfoForType):
(WTF::printInternal):

  • runtime/TypedArrayType.h: Added.

(JSC::toIndex):
(JSC::isTypedView):
(JSC::elementSize):
(JSC::isInt):
(JSC::isFloat):
(JSC::isSigned):
(JSC::isClamped):

  • runtime/TypedArrays.h: Added.
  • runtime/Uint16Array.h:
  • runtime/Uint32Array.h:
  • runtime/Uint8Array.h:
  • runtime/Uint8ClampedArray.h:
  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::~VM):

  • runtime/VM.h:

Source/WebCore:

Reviewed by Oliver Hunt.

Typed arrays are now implemented in JavaScriptCore, and WebCore is merely a
client of them. There is only one layering violation: WebCore installs a
WebCoreTypedArrayController on VM, which makes the
ArrayBuffer<->JSArrayBuffer relationship resemble DOM wrappers. By default,
JSC makes the ownership go one way; the JSArrayBuffer keeps the ArrayBuffer
alive but if ArrayBuffer is kept alive from native code then the
JSArrayByffer may die. WebCoreTypedArrayController will keep the
JSArrayBuffer alive if the ArrayBuffer is in the opaque root set.

To make non-JSDOMWrappers behave like DOM wrappers, a bunch of code is
changed to make most references to wrappers refer to JSObject* rather than
JSDOMWrapper*.

Array buffer views are now transient; the JS array buffer view wrappers
don't own them or keep them alive. This required a bunch of changes to make
bindings code use RefPtr<ArrayBufferView> to hold onto their views.

Also there is a bunch of new code to make JSC-provided array buffers and
views obey the toJS/to<ClassName> idiom for wrapping and unwrapping.

Finally, the DataView API is now completely different: the JSDataView
provides the same user-visible JS API but using its own internal magic; the
C++ code that uses DataView now uses a rather different API that is not
aware of usual DOM semantics, since it's in JSC and not WebCore. It's
equally useful for all of WebCore's purposes, but some code had to change
to adapt the new conventions.

Some tests have been changed or rebased due to changes in behavior, that
bring us into conformance with where the standards are going and allow us to
match Firefox behavior.

Automake work and some additional GTK changes courtesy of
Zan Dobersek <zdobersek@igalia.com>.

Additional Qt changes courtesy of Arunprasad Rajkumar <arurajku@cisco.com>.

  • CMakeLists.txt:
  • DerivedSources.make:
  • ForwardingHeaders/runtime/DataView.h: Added.
  • ForwardingHeaders/runtime/JSArrayBuffer.h: Added.
  • ForwardingHeaders/runtime/JSArrayBufferView.h: Added.
  • ForwardingHeaders/runtime/JSDataView.h: Added.
  • ForwardingHeaders/runtime/JSTypedArrays.h: Added.
  • ForwardingHeaders/runtime/TypedArrayController.h: Added.
  • ForwardingHeaders/runtime/TypedArrayInlines.h: Added.
  • ForwardingHeaders/runtime/TypedArrays.h: Added.
  • GNUmakefile.list.am:
  • Modules/webaudio/RealtimeAnalyser.h:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/DOMWrapperWorld.h:
  • bindings/js/JSArrayBufferCustom.cpp: Removed.
  • bindings/js/JSArrayBufferViewHelper.h: Removed.
  • bindings/js/JSAudioContextCustom.cpp:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSBlobCustom.cpp:
  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSCSSValueCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSCryptoCustom.cpp:

(WebCore::JSCrypto::getRandomValues):

  • bindings/js/JSDOMBinding.h:

(WebCore::wrapperOwner):
(WebCore::wrapperContext):
(WebCore::getInlineCachedWrapper):
(WebCore::setInlineCachedWrapper):
(WebCore::clearInlineCachedWrapper):
(WebCore::getCachedWrapper):
(WebCore::cacheWrapper):
(WebCore::uncacheWrapper):
(WebCore::wrap):
(WebCore::toJS):
(WebCore::toArrayBufferView):
(WebCore::toInt8Array):
(WebCore::toInt16Array):
(WebCore::toInt32Array):
(WebCore::toUint8Array):
(WebCore::toUint8ClampedArray):
(WebCore::toUint16Array):
(WebCore::toUint32Array):
(WebCore::toFloat32Array):
(WebCore::toFloat64Array):
(WebCore::toDataView):

  • bindings/js/JSDataViewCustom.cpp: Removed.
  • bindings/js/JSDictionary.cpp:
  • bindings/js/JSDictionary.h:
  • bindings/js/JSDocumentCustom.cpp:

(WebCore::JSDocument::location):
(WebCore::toJS):

  • bindings/js/JSEventCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSFileReaderCustom.cpp:
  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSHTMLTemplateElementCustom.cpp:

(WebCore::JSHTMLTemplateElement::content):

  • bindings/js/JSImageDataCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSInjectedScriptHostCustom.cpp:
  • bindings/js/JSMessageEventCustom.cpp:
  • bindings/js/JSMessagePortCustom.cpp:
  • bindings/js/JSSVGPathSegCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSStyleSheetCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSTrackCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSWebGLRenderingContextCustom.cpp:
  • bindings/js/JSXMLHttpRequestCustom.cpp:

(WebCore::JSXMLHttpRequest::send):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::transferArrayBuffers):

  • bindings/js/WebCoreJSClientData.h:

(WebCore::initNormalWorldClientData):

  • bindings/js/WebCoreTypedArrayController.cpp: Added.

(WebCore::WebCoreTypedArrayController::WebCoreTypedArrayController):
(WebCore::WebCoreTypedArrayController::~WebCoreTypedArrayController):
(WebCore::WebCoreTypedArrayController::toJS):
(WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots):
(WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize):

  • bindings/js/WebCoreTypedArrayController.h: Added.

(WebCore::WebCoreTypedArrayController::wrapperOwner):

  • bindings/scripts/CodeGenerator.pm:

(ForAllParents):
(ParseInterface):
(SkipIncludeHeader):
(IsTypedArrayType):
(IsWrapperType):

  • bindings/scripts/CodeGeneratorJS.pm:

(AddIncludesForType):
(GenerateHeader):
(GenerateImplementation):
(GenerateParametersCheck):
(GetNativeType):
(JSValueToNative):
(NativeToJSValue):
(GenerateConstructorDefinition):
(GenerateConstructorHelperMethods):

  • fileapi/WebKitBlobBuilder.cpp:

(WebCore::BlobBuilder::append):

  • fileapi/WebKitBlobBuilder.h:
  • html/canvas/ArrayBuffer.idl: Removed.
  • html/canvas/ArrayBufferView.idl: Removed.
  • html/canvas/DataView.cpp: Removed.
  • html/canvas/DataView.h: Removed.
  • html/canvas/DataView.idl: Removed.
  • html/canvas/Float32Array.idl: Removed.
  • html/canvas/Float64Array.idl: Removed.
  • html/canvas/Int16Array.idl: Removed.
  • html/canvas/Int32Array.idl: Removed.
  • html/canvas/Int8Array.idl: Removed.
  • html/canvas/Uint16Array.idl: Removed.
  • html/canvas/Uint32Array.idl: Removed.
  • html/canvas/Uint8Array.idl: Removed.
  • html/canvas/Uint8ClampedArray.idl: Removed.
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::readPixels):
(WebCore::WebGLRenderingContext::validateTexFuncData):

  • page/Crypto.cpp:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForLoadingOfResource):
(WebCore::MediaPlayerPrivateAVFoundationObjC::extractKeyURIKeyIDAndCertificateFromInitData):

  • platform/graphics/filters/FECustomFilter.h:
  • platform/graphics/filters/FEGaussianBlur.cpp:
  • platform/graphics/filters/FilterEffect.cpp:
  • testing/MockCDM.cpp:

Source/WebKit2:

Reviewed by Oliver Hunt.

You don't need to include JSUint8Array anymore if you just want to
unwrap one; JSDOMBinding gives you all of the things you need.

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

Source/WTF:

Reviewed by Oliver Hunt.

  • Added the notion of a reference counted object that can be marked Deferred, which is like a special-purpose upref.


  • Added a common byte flipper.

Automake work courtesy of Zan Dobersek <zdobersek@igalia.com>.

  • GNUmakefile.list.am:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/DeferrableRefCounted.h: Added.

(WTF::DeferrableRefCountedBase::ref):
(WTF::DeferrableRefCountedBase::hasOneRef):
(WTF::DeferrableRefCountedBase::refCount):
(WTF::DeferrableRefCountedBase::isDeferred):
(WTF::DeferrableRefCountedBase::DeferrableRefCountedBase):
(WTF::DeferrableRefCountedBase::~DeferrableRefCountedBase):
(WTF::DeferrableRefCountedBase::derefBase):
(WTF::DeferrableRefCountedBase::setIsDeferredBase):
(WTF::DeferrableRefCounted::deref):
(WTF::DeferrableRefCounted::setIsDeferred):
(WTF::DeferrableRefCounted::DeferrableRefCounted):
(WTF::DeferrableRefCounted::~DeferrableRefCounted):

  • wtf/FlipBytes.h: Added.

(WTF::needToFlipBytesIfLittleEndian):
(WTF::flipBytes):
(WTF::flipBytesIfLittleEndian):

LayoutTests:

Reviewed by Oliver Hunt.

  • fast/canvas/webgl/array-set-invalid-arguments-expected.txt:
  • fast/canvas/webgl/array-set-out-of-bounds-expected.txt:
  • fast/canvas/webgl/array-unit-tests-expected.txt:
  • fast/canvas/webgl/array-unit-tests.html:
  • fast/canvas/webgl/data-view-crash-expected.txt:
  • fast/canvas/webgl/script-tests/arraybuffer-transfer-of-control.js:

(checkView):

  • fast/dom/call-a-constructor-as-a-function-expected.txt:
  • fast/dom/call-a-constructor-as-a-function.html:
  • fast/js/constructor-length.html:
  • fast/js/global-constructors-attributes-dedicated-worker-expected.txt:
  • fast/js/global-constructors-attributes-expected.txt:
  • fast/js/global-constructors-attributes-shared-worker-expected.txt:
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-expected.txt: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-expected.txt: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived.html: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-buffer-expected.txt: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-buffer.html: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived-expected.txt: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc-long-lived.html: Added.
  • fast/js/regress/ArrayBuffer-Int8Array-alloc.html: Added.
  • fast/js/regress/Int32Array-Int8Array-view-alloc-expected.txt: Added.
  • fast/js/regress/Int32Array-Int8Array-view-alloc.html: Added.
  • fast/js/regress/Int32Array-alloc-expected.txt: Added.
  • fast/js/regress/Int32Array-alloc-huge-expected.txt: Added.
  • fast/js/regress/Int32Array-alloc-huge-long-lived-expected.txt: Added.
  • fast/js/regress/Int32Array-alloc-huge-long-lived.html: Added.
  • fast/js/regress/Int32Array-alloc-huge.html: Added.
  • fast/js/regress/Int32Array-alloc-large-expected.txt: Added.
  • fast/js/regress/Int32Array-alloc-large-long-lived-expected.txt: Added.
  • fast/js/regress/Int32Array-alloc-large-long-lived.html: Added.
  • fast/js/regress/Int32Array-alloc-large.html: Added.
  • fast/js/regress/Int32Array-alloc-long-lived-expected.txt: Added.
  • fast/js/regress/Int32Array-alloc-long-lived.html: Added.
  • fast/js/regress/Int32Array-alloc.html: Added.
  • fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js: Added.
  • fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived.js: Added.
  • fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-long-lived-buffer.js: Added.
  • fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-long-lived.js: Added.
  • fast/js/regress/script-tests/ArrayBuffer-Int8Array-alloc.js: Added.
  • fast/js/regress/script-tests/Int32Array-Int8Array-view-alloc.js: Added.
  • fast/js/regress/script-tests/Int32Array-alloc-huge-long-lived.js: Added.
  • fast/js/regress/script-tests/Int32Array-alloc-huge.js: Added.
  • fast/js/regress/script-tests/Int32Array-alloc-large-long-lived.js: Added.
  • fast/js/regress/script-tests/Int32Array-alloc-large.js: Added.
  • fast/js/regress/script-tests/Int32Array-alloc-long-lived.js: Added.
  • fast/js/regress/script-tests/Int32Array-alloc.js: Added.
  • platform/mac/fast/js/constructor-length-expected.txt:
  • webgl/resources/webgl_test_files/conformance/typedarrays/array-unit-tests.html:
  • webgl/resources/webgl_test_files/conformance/typedarrays/data-view-test.html:
1:26 PM Changeset in webkit [154126] by Bem Jones-Bey
  • 2 edits in trunk/Tools

<https://webkit.org/b/119850> Speed up test importing by doing all the regex matching in a single pass

Reviewed by Dirk Pranke.

This is a port from Blink of
https://src.chromium.org/viewvc/blink?revision=155647&view=revision
originally by Dirk Pranke.

From the original commit:

This gives something like a 15x speedup over compiling and matching
one property at a time and doing multiple passes over the file.

  • Scripts/webkitpy/w3c/test_converter.py:

(W3CTestConverter.init):
(W3CTestConverter.convert_prefixed_properties):
(W3CTestConverter.add_webkit_prefix_to_unprefixed_properties):

1:24 PM Changeset in webkit [154125] by Lucas Forschler
  • 4 edits
    1 copy in branches/safari-537-branch

Merged r154115. <rdar://problem/14719561>

1:21 PM Changeset in webkit [154124] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WebCore

Merged r154123. <rdar://problem/14719187>

1:00 PM Changeset in webkit [154123] by Chris Fleizach
  • 3 edits in trunk/Source/WebCore

<https://webkit.org/b/119824> AX: WKView does not become first responder when the voiceover cursor lands on it

Reviewed by Darin Adler.

Incorporate review feedback from Darin.

  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::canSetFocusAttribute):
(WebCore::AccessibilityScrollView::isFocused):

  • accessibility/AccessibilityScrollView.h:
12:59 PM Changeset in webkit [154122] by akling@apple.com
  • 64 edits in trunk/Source

<https://webkit.org/b/119826> Page::focusController() should return a reference.

Reviewed by Anders Carlsson.

Page::focusController() is never null so make it return a reference.
Some unnecessary checks were removed as a result.

12:52 PM Changeset in webkit [154121] by rwlbuis@webkit.org
  • 3 edits in trunk/Source/WebCore

ASSERTION FAILED: !m_adoptionIsRequired in void WebCore::TreeShared<NodeType>::ref()
https://bugs.webkit.org/show_bug.cgi?id=116979

Reviewed by Alexey Proskuryakov.

Make constructors private since only ::create should use them.

  • html/shadow/MeterShadowElement.h:
  • html/shadow/ProgressShadowElement.h:
12:44 PM Changeset in webkit [154120] by oliver@apple.com
  • 4 edits
    3 adds in trunk

<https://webkit.org/b/119830> Assigning to a readonly global results in DFG byte code parse failure

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Make sure dfgCapabilities doesn't report a Dynamic put as
being compilable when we don't actually support it.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

LayoutTests:

Add a test

  • fast/js/dfg-put-to-readonly-property-expected.txt: Added.
  • fast/js/dfg-put-to-readonly-property.html: Added.
  • fast/js/script-tests/dfg-put-to-readonly-property.js: Added.

(foo):
(bar):

12:29 PM Changeset in webkit [154119] by Brent Fulgham
  • 3 edits in trunk/Source/JavaScriptCore

[Windows] Incorrect DLL Linkage for JSC ArrayBuffer and ArrayBufferView
https://bugs.webkit.org/show_bug.cgi?id=119847

Reviewed by Oliver Hunt.

  • runtime/ArrayBuffer.h: Switch from WTF_EXPORT_PRIVATE to JS_EXPORT_PRIVATE
  • runtime/ArrayBufferView.h: Ditto.
12:25 PM Changeset in webkit [154118] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Windows] Build correctsion after r154106

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add missing symbol export.
12:19 PM Changeset in webkit [154117] by mitz@apple.com
  • 2 edits in trunk/Tools

<https://webkit.org/b/119856> Improve extract-localizable-strings messages

Reviewed by Darin Adler.

  • Scripts/extract-localizable-strings: When the strings file disagrees with the source code,

added a message that points to the source code. Removed some unnecessary repetition of what
is already in the file.

12:08 PM Changeset in webkit [154116] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebCore

FrameView should have an isMainFrameView()
https://bugs.webkit.org/show_bug.cgi?id=119435

Reviewed by Simon Fraser.

No new tests, just refactoring.

  • page/FrameView.cpp:

(WebCore::FrameView::FrameView):
(WebCore::FrameView::isMainFrameView):
(WebCore::FrameView::setFrameRect):
(WebCore::FrameView::createScrollbar):
(WebCore::FrameView::applyOverflowToViewport):
(WebCore::FrameView::setHeaderHeight):
(WebCore::FrameView::setFooterHeight):
(WebCore::FrameView::minimumScrollPosition):
(WebCore::FrameView::maximumScrollPosition):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::sendResizeEventIfNeeded):
(WebCore::FrameView::pagination):
(WebCore::FrameView::visibleContentScaleFactor):
(WebCore::FrameView::setVisibleScrollerThumbRect):
(WebCore::FrameView::scrollbarStyleChanged):
(WebCore::FrameView::paintScrollCorner):
(WebCore::FrameView::paintScrollbar):
(WebCore::FrameView::paintOverhangAreas):

  • page/FrameView.h:

Add isMainFrameView and adopt it wherever we were previously checking if
the FrameView's frame was the same as its page's main frame.

12:05 PM Changeset in webkit [154115] by aestes@apple.com
  • 4 edits
    1 add in trunk

<https://webkit.org/b/119853> REGRESSION (r139343): WebKit crashes when canceling a load inside webView:resource:didFinishLoadingFromDataSource:

Reviewed by Brady Eidson.

Source/WebCore:

A client implementing webView:resource:didFinishLoadingFromDataSource:
might decide to call stopLoading: for the identifier that just finished
loading. If this happens we re-enter the loader and attempt to cancel a
load that has already finished and been removed from the set of active
loaders. Prevent this by clearing DocumentLoader's
m_identifierForLoadWithoutResourceLoader before calling
dispatchDidFinishLoading().

New API test: WebKit1.StopLoadingFromDidFinishLoading.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::finishedLoading): Set
m_identifierForLoadWithoutResourceLoader to 0 before calling
dispatchDidFinishLoading().

Tools:

Wrote an API test that verifies -[WebView stopLoading:] can be called
inside webView:resource:didFinishLoadingFromDataSource: without crashing.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/StopLoadingFromDidFinishLoading.mm: Added.

(-[StopLoadingFromDidFinishLoadingDelegate webView:resource:didFinishLoadingFromDataSource:]):
(TestWebKitAPI::TEST):

11:50 AM Changeset in webkit [154114] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

<https://webkit.org/b/119854> REGRESSION (r153379): Serious drawing issues with WebViews
<rdar://problem/14698870>

Reviewed by Simon Fraser.

Don't set aside subviews if they have already been set aside.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]):

11:49 AM Changeset in webkit [154113] by barraclough@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

https://bugs.webkit.org/show_bug.cgi?id=119843
PropertySlot::setValue is ambiguous

Reviewed by Geoff Garen.

There are three different versions of PropertySlot::setValue, one for cacheable properties, and two that are used interchangeably and inconsistently.
The problematic variants are the ones that just take a value, and one that takes a value and also the object containing the property.
Unify on always providing the object, and remove the version that just takes a value.
This always works except for JSString, where we optimize out the object (logically we should be instantiating a temporary StringObject on every property access).
Provide a version of setValue that takes a JSString as the owner of the property.
We won't store this, but it makes it clear that this interface should only be used from JSString.

  • API/JSCallbackObjectFunctions.h:

(JSC::::getOwnPropertySlot):

  • JSCTypedArrayStubs.h:
  • runtime/Arguments.cpp:

(JSC::Arguments::getOwnPropertySlotByIndex):
(JSC::Arguments::getOwnPropertySlot):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::symbolTableGet):
(JSC::JSActivation::getOwnPropertySlot):

  • runtime/JSArray.cpp:

(JSC::JSArray::getOwnPropertySlot):

  • runtime/JSObject.cpp:

(JSC::JSObject::getOwnPropertySlotByIndex):

  • runtime/JSString.h:

(JSC::JSString::getStringPropertySlot):

  • runtime/JSSymbolTableObject.h:

(JSC::symbolTableGet):

  • runtime/SparseArrayValueMap.cpp:

(JSC::SparseArrayEntry::get):

  • Pass object containing property to PropertySlot::setValue
  • runtime/PropertySlot.h:

(JSC::PropertySlot::setValue):

  • Logically, the base of a string property access is a temporary StringObject, but we optimize that away.

(JSC::PropertySlot::setUndefined):

  • removed setValue(JSValue), added setValue(JSString*, JSValue)
11:48 AM Changeset in webkit [154112] by eric.carlson@apple.com
  • 14 edits in trunk

[Mac] Remove "legacy" media UI
https://bugs.webkit.org/show_bug.cgi?id=119752

Reviewed by Jer Noble.

Source/WebCore:

  • WebCore.exp.in: Remove _wkMediaControllerThemeAvailable.
  • platform/mac/WebCoreSystemInterface.h: Update for API change.
  • platform/mac/WebCoreSystemInterface.mm: Ditto.
  • rendering/RenderThemeMac.h: Don't override hasOwnDisabledStateHandlingFor.
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::adjustMediaSliderThumbSize): Remove code to deal with legacy theme.
(WebCore::getUnzoomedRectAndAdjustCurrentContext): Ditto.
(WebCore::RenderThemeMac::paintMediaFullscreenButton): wkDrawMediaUIPart doesn't need to know

the current theme.

(WebCore::RenderThemeMac::paintMediaMuteButton): Ditto.
(WebCore::RenderThemeMac::paintMediaPlayButton): Ditto.
(WebCore::RenderThemeMac::paintMediaSeekBackButton): Ditto.
(WebCore::RenderThemeMac::paintMediaSeekForwardButton): Ditto.
(WebCore::RenderThemeMac::paintMediaSliderTrack): Ditto.
(WebCore::RenderThemeMac::paintMediaSliderThumb): Ditto.
(WebCore::RenderThemeMac::paintMediaRewindButton): Ditto.
(WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton): Ditto.
(WebCore::RenderThemeMac::paintMediaControlsBackground): Ditto.
(WebCore::RenderThemeMac::paintMediaCurrentTime): Ditto.
(WebCore::RenderThemeMac::paintMediaTimeRemaining): Ditto.
(WebCore::RenderThemeMac::paintMediaVolumeSliderContainer): Ditto.
(WebCore::RenderThemeMac::paintMediaVolumeSliderTrack): Ditto.
(WebCore::RenderThemeMac::paintMediaVolumeSliderThumb): Ditto.
(WebCore::RenderThemeMac::paintMediaFullScreenVolumeSliderTrack): Ditto.
(WebCore::RenderThemeMac::paintMediaFullScreenVolumeSliderThumb): Ditto.
(WebCore::RenderThemeMac::extraMediaControlsStyleSheet): We only have one theme.
(WebCore::RenderThemeMac::extraFullScreenStyleSheet): Ditto.
(WebCore::RenderThemeMac::usesMediaControlStatusDisplay): Ditto.

Source/WebKit/mac:

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface): Remove MediaControllerThemeAvailable.

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface): Remove MediaControllerThemeAvailable.

WebKitLibraries:

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:
11:09 AM Changeset in webkit [154111] by ap@apple.com
  • 2 edits in trunk/Tools

Adding Myles Maxfield to contributors.json.

Oops, wrong section, fixing.

  • Scripts/webkitpy/common/config/contributors.json:
11:07 AM Changeset in webkit [154110] by ap@apple.com
  • 2 edits in trunk/Tools

Adding Myles Maxfield to contributors.json.

  • Scripts/webkitpy/common/config/contributors.json:
10:59 AM Changeset in webkit [154109] by allan.jensen@digia.com
  • 2 edits in trunk/Source/ThirdParty/ANGLE

ANGLE doesn't build with bison 3.0
https://bugs.webkit.org/show_bug.cgi?id=119798

Reviewed by Antti Koivisto.

Make glslang.y compatible with bison 3.0, by using %lex-param
to set YYLEX_PARAM and getting rid of useless YYID macro.

  • src/compiler/glslang.y:
10:23 AM Changeset in webkit [154108] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove bogus assertion.

9:53 AM Changeset in webkit [154107] by allan.jensen@digia.com
  • 2 edits in trunk/Tools

[Qt] Do not check specifically for version 5.0
https://bugs.webkit.org/show_bug.cgi?id=119846

Reviewed by Jocelyn Turcotte.

For Qt 5.x we should always use both wk1 and wk2 basepath results.

  • Scripts/webkitpy/port/qt.py:

(QtPort._search_paths):

9:52 AM Changeset in webkit [154106] by Antti Koivisto
  • 52 edits
    2 deletes in trunk/Source

<https://webkit.org/b/119834> Remove ElementShadow

Reviewed by Anders Carlsson.

It is 1:1 with ShadowRoot and has virtually no functionality. What little there is can be moved to ShadowRoot or Element.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::locateCousinList):

  • css/StyleScopeResolver.cpp:

(WebCore::StyleScopeResolver::styleSharingCandidateMatchesHostRules):
(WebCore::StyleScopeResolver::matchHostRules):

  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::nodeCanBeDistributed):
(WebCore::ComposedShadowTreeWalker::traverseChild):

  • dom/ContainerNode.cpp:

(WebCore::childAttachedAllowedWhenAttachingChildren):

  • dom/ContainerNodeAlgorithms.cpp:

(WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument):
(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument):
(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromTree):
(WebCore::assertConnectedSubrameCountIsConsistent):

  • dom/ContainerNodeAlgorithms.h:

(WebCore::ChildFrameDisconnector::collectFrameOwners):

  • dom/DOMAllInOne.cpp:
  • dom/Document.cpp:
  • dom/Element.cpp:

(WebCore::Element::~Element):
(WebCore::Element::attach):
(WebCore::Element::detach):
(WebCore::Element::shadowRoot):
(WebCore::Element::didAffectSelector):
(WebCore::Element::addShadowRoot):
(WebCore::Element::removeShadowRoot):

Move addShadowRoot and removeShadowRoot here from ElementShadow.

(WebCore::Element::createShadowRoot):
(WebCore::Element::authorShadowRoot):
(WebCore::Element::userAgentShadowRoot):
(WebCore::Element::ensureUserAgentShadowRoot):
(WebCore::Element::childrenChanged):
(WebCore::Element::removeAllEventListeners):

  • dom/Element.h:

(WebCore::isShadowHost):

  • dom/ElementRareData.h:

(WebCore::ElementRareData::clearShadowRoot):
(WebCore::ElementRareData::shadowRoot):
(WebCore::ElementRareData::setShadowRoot):
(WebCore::ElementRareData::~ElementRareData):

  • dom/ElementShadow.cpp: Removed.
  • dom/ElementShadow.h: Removed.
  • dom/EventDispatcher.cpp:
  • dom/EventPathWalker.cpp:

(WebCore::EventPathWalker::moveToParent):

  • dom/Node.cpp:

(WebCore::Node::needsShadowTreeWalkerSlow):

  • dom/NodeRenderingContext.cpp:
  • dom/NodeRenderingContext.h:
  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::attach):
(WebCore::ShadowRoot::detach):

Move attached() tests from ElementShadow.

(WebCore::ShadowRoot::childrenChanged):
(WebCore::ShadowRoot::removeAllEventListeners):

Move here from ElementShadow.

  • dom/ShadowRoot.h:

(WebCore::Node::shadowRoot):

  • dom/TreeScopeAdopter.cpp:
  • html/ColorInputType.cpp:

(WebCore::ColorInputType::createShadowSubtree):

  • html/FileInputType.cpp:

(WebCore::FileInputType::createShadowSubtree):
(WebCore::FileInputType::disabledAttributeChanged):
(WebCore::FileInputType::multipleAttributeChanged):

  • html/HTMLFormControlElement.cpp:
  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::canStartSelection):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::updateType):

  • html/HTMLKeygenElement.cpp:
  • html/HTMLMediaElement.cpp:
  • html/HTMLTextAreaElement.cpp:
  • html/InputType.cpp:
  • html/RangeInputType.cpp:

(WebCore::RangeInputType::handleMouseDownEvent):
(WebCore::RangeInputType::createShadowSubtree):

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::createShadowSubtree):

  • html/ValidationMessage.cpp:
  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistributor::distribute):
(WebCore::ContentDistributor::ensureDistribution):

  • html/shadow/ContentDistributor.h:

(WebCore::ContentDistributor::isValid):

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::childrenChanged):
(WebCore::InsertionPoint::insertedInto):
(WebCore::InsertionPoint::removedFrom):
(WebCore::resolveReprojection):

  • html/shadow/InsertionPoint.h:

(WebCore::shadowRootOfParentForDistribution):

  • html/shadow/SliderThumbElement.cpp:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::unbind):
(WebCore::InspectorDOMAgent::buildObjectForNode):

  • page/FocusController.cpp:

(WebCore::FocusNavigationScope::focusNavigationScopeOwnedByShadowHost):

  • rendering/RenderFileUploadControl.cpp:

(WebCore::RenderFileUploadControl::uploadButton):

  • rendering/RenderTheme.cpp:
  • style/StyleResolveTree.cpp:

(WebCore::Style::resolveTree):

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefElement::updateReferencedText):
(WebCore::SVGTRefElement::detachTarget):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::clearResourceReferences):
(WebCore::SVGUseElement::buildShadowAndInstanceTree):
(WebCore::SVGUseElement::buildShadowTree):

  • testing/Internals.cpp:

(WebCore::Internals::ensureShadowRoot):
(WebCore::Internals::shadowRoot):

9:49 AM Changeset in webkit [154105] by mario@webkit.org
  • 1 edit
    1 move in trunk/LayoutTests

[GTK] Unreviewed gardening. Move Mac specific expectation for
accessibility test to the cross platform directory, as the result
it's shared with GTK and EFL ports.

  • accessibility/heading-title-includes-links-expected.txt: Renamed

from LayoutTests/platform/mac/accessibility/heading-title-includes-links-expected.txt.

9:44 AM Changeset in webkit [154104] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WebCore

Merged r154083. <rdar://problem/14719187>

9:24 AM Changeset in webkit [154103] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] memory leak in WebCore::FontCache::getLastResortFallbackFont
https://bugs.webkit.org/show_bug.cgi?id=118532

Reviewed by Jocelyn Turcotte.

We don't need to allocate FontPlatformData on the heap
since getCachedFontData makes a deep copy anyway.

  • platform/graphics/qt/FontCacheQt.cpp:

(WebCore::FontCache::getLastResortFallbackFont):

9:14 AM Changeset in webkit [154102] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Windows] Correct build after r154088

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

(and now renamed) export symbols.

9:07 AM Changeset in webkit [154101] by allan.jensen@digia.com
  • 30 edits
    13 copies
    1 add
    4 deletes in trunk/LayoutTests

Empty qt-5.0 expectations into qt expectations

Unreviewed gardening.

  • platform/qt-5.0/TestExpectations:
  • platform/qt-5.0/editing/selection/editable-html-element-expected.txt: Removed.
  • platform/qt-5.0/editing/selection/extend-by-word-001-expected.txt: Removed.
  • platform/qt-5.0/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.txt: Removed.
  • platform/qt-5.0/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.txt: Removed.
  • platform/qt-5.0/fast/dom/Orientation/create-event-orientationchange-expected.txt: Removed.
  • platform/qt-5.0/fast/dom/Window/window-properties-device-orientation-expected.txt: Removed.
  • platform/qt-5.0/fast/events/onload-re-entry-expected.txt: Removed.
  • platform/qt-5.0/fast/forms/input-disabled-color-expected.png: Removed.
  • platform/qt-5.0/fast/forms/input-disabled-color-expected.txt: Removed.
  • platform/qt-5.0/fast/forms/menulist-separator-painting-expected.png: Removed.
  • platform/qt-5.0/fast/forms/menulist-separator-painting-expected.txt: Removed.
  • platform/qt-5.0/fast/forms/select-background-none-expected.png: Removed.
  • platform/qt-5.0/fast/forms/select-background-none-expected.txt: Removed.
  • platform/qt-5.0/fast/images/embed-image-expected.txt: Removed.
  • platform/qt-5.0/fast/images/object-image-expected.txt: Removed.
  • platform/qt-5.0/fast/text/backslash-to-yen-sign-expected.txt: Removed.
  • platform/qt-5.0/fast/text/basic/003-expected.png: Removed.
  • platform/qt-5.0/fast/text/basic/003-expected.txt: Removed.
  • platform/qt-5.0/fast/text/fallback-traits-fixup-expected.txt: Removed.
  • platform/qt-5.0/fast/text/international/hindi-whitespace-expected.txt: Removed.
  • platform/qt-5.0/fast/text/international/text-spliced-font-expected.txt: Removed.
  • platform/qt-5.0/fast/text/letter-spacing-negative-opacity-expected.png: Removed.
  • platform/qt-5.0/fast/text/letter-spacing-negative-opacity-expected.txt: Removed.
  • platform/qt-5.0/fast/text/soft-hyphen-3-expected.txt: Removed.
  • platform/qt-5.0/http/tests/misc/location-replace-crossdomain-expected.png: Removed.
  • platform/qt-5.0/http/tests/misc/location-replace-crossdomain-expected.txt: Removed.
  • platform/qt-5.0/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png: Removed.
  • platform/qt-5.0/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png: Removed.
  • platform/qt-5.0/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png: Removed.
  • platform/qt-5.0/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Removed.
  • platform/qt-5.0/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: Removed.
  • platform/qt-5.0/svg/as-image/img-preserveAspectRatio-support-1-expected.png: Removed.
  • platform/qt-5.0/svg/as-image/img-preserveAspectRatio-support-1-expected.txt: Removed.
  • platform/qt-5.0/svg/as-object/object-box-sizing-no-width-height-expected.png: Removed.
  • platform/qt-5.0/svg/as-object/object-box-sizing-no-width-height-expected.txt: Removed.
  • platform/qt-5.0/svg/batik/text/longTextOnPath-expected.png: Removed.
  • platform/qt-5.0/svg/batik/text/longTextOnPath-expected.txt: Removed.
  • platform/qt-5.0/svg/carto.net/tabgroup-expected.txt: Removed.
  • platform/qt-5.0/svg/foreignObject/text-tref-02-b-expected.png: Removed.
  • platform/qt-5.0/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Removed.
  • platform/qt-5.0/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: Removed.
  • platform/qt/TestExpectations:
  • platform/qt/editing/execCommand/findString-diacriticals-expected.txt: Renamed from LayoutTests/platform/qt-5.0/editing/execCommand/findString-diacriticals-expected.txt.
  • platform/qt/editing/selection/click-left-of-rtl-wrapping-text-expected.txt: Renamed from LayoutTests/platform/qt-5.0/editing/selection/click-left-of-rtl-wrapping-text-expected.txt.
  • platform/qt/fast/events/onload-re-entry-expected.png: Renamed from LayoutTests/platform/qt-5.0/fast/events/onload-re-entry-expected.png.
  • platform/qt/fast/events/onload-re-entry-expected.txt:
  • platform/qt/fast/events/touch/touch-slider-expected.txt: Renamed from LayoutTests/platform/qt-5.0/fast/events/touch/touch-slider-expected.txt.
  • platform/qt/fast/events/touch/touch-slider-no-js-touch-listener-expected.txt: Renamed from LayoutTests/platform/qt-5.0/fast/events/touch/touch-slider-no-js-touch-listener-expected.txt.
  • platform/qt/fast/forms/input-disabled-color-expected.png:
  • platform/qt/fast/forms/input-disabled-color-expected.txt:
  • platform/qt/fast/forms/menulist-separator-painting-expected.png:
  • platform/qt/fast/forms/menulist-separator-painting-expected.txt:
  • platform/qt/fast/forms/select-background-none-expected.png:
  • platform/qt/fast/forms/select-background-none-expected.txt:
  • platform/qt/fast/images/embed-image-expected.txt:
  • platform/qt/fast/images/object-image-expected.txt:
  • platform/qt/fast/text/basic/003-expected.png:
  • platform/qt/fast/text/international/text-spliced-font-expected.png: Renamed from LayoutTests/platform/qt-5.0/fast/text/international/text-spliced-font-expected.png.
  • platform/qt/fast/text/soft-hyphen-3-expected.txt:
  • platform/qt/http/tests/cookies/double-quoted-value-with-semi-colon-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/cookies/double-quoted-value-with-semi-colon-expected.txt.
  • platform/qt/http/tests/misc/location-replace-crossdomain-expected.png:
  • platform/qt/http/tests/misc/location-replace-crossdomain-expected.txt:
  • platform/qt/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt.
  • platform/qt/http/tests/xmlhttprequest/methods-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/xmlhttprequest/methods-expected.txt.
  • platform/qt/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/xmlhttprequest/workers/methods-async-expected.txt.
  • platform/qt/http/tests/xmlhttprequest/workers/methods-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/xmlhttprequest/workers/methods-expected.txt.
  • platform/qt/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt: Renamed from LayoutTests/platform/qt-5.0/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt.
  • platform/qt/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png:
  • platform/qt/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png:
  • platform/qt/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/qt/svg/as-object/object-box-sizing-no-width-height-expected.png:
  • platform/qt/svg/as-object/object-box-sizing-no-width-height-expected.txt:
  • platform/qt/svg/batik/text/longTextOnPath-expected.png:
  • platform/qt/svg/batik/text/longTextOnPath-expected.txt:
  • platform/qt/svg/carto.net/tabgroup-expected.png: Renamed from LayoutTests/platform/qt-5.0/svg/carto.net/tabgroup-expected.png.
  • platform/qt/svg/carto.net/tabgroup-expected.txt:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/qt/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
  • platform/qt/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:
8:31 AM Changeset in webkit [154100] by simon.pena@samsung.com
  • 7 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Update test expectations.

  • platform/gtk-wk1/TestExpectations: Unskip tests no longer failing.
  • platform/gtk-wk1/loader/go-back-cached-main-resource-expected.txt:

Rebaseline after r153852.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/regions/region-dynamic-after-before-expected.txt:

Rebaseline after r154072.

  • platform/gtk/fast/regions/region-generated-content-before-after-expected.txt:

Rebaseline after r154072.

  • platform/gtk/security/block-test-no-port-expected.txt:

Rebaseline after r153852.

8:02 AM Changeset in webkit [154099] by rwlbuis@webkit.org
  • 4 edits
    2 adds in trunk

ASSERTION FAILED: !m_adoptionIsRequired in void WebCore::TreeShared<NodeType>::ref()
https://bugs.webkit.org/show_bug.cgi?id=116979

Reviewed by Antti Koivisto.

Source/WebCore:

Make sure adoptRef is called before calling setPseudo, for all progress shadow elements.

  • html/shadow/ProgressShadowElement.cpp:

(WebCore::ProgressInnerElement::ProgressInnerElement):
(WebCore::ProgressBarElement::ProgressBarElement):
(WebCore::ProgressValueElement::ProgressValueElement):

  • html/shadow/ProgressShadowElement.h:

(WebCore::ProgressInnerElement::create):
(WebCore::ProgressBarElement::create):
(WebCore::ProgressValueElement::create):

LayoutTests:

Add testcase from bug with small adjustments.

  • svg/custom/tref-with-progress-tag-setpseudo-assert-expected.txt: Added.
  • svg/custom/tref-with-progress-tag-setpseudo-assert.html: Added.
6:15 AM Changeset in webkit [154098] by simon.pena@samsung.com
  • 7 edits in trunk

<https://webkit.org/b/119584> [Gtk] URL printing code in DumpRenderTree doesn't match WTR or Mac DRT

Reviewed by Gustavo Noronha Silva.

Following a similar approach as in r153977, return a path string
that is relative to main frame URL or just file name if the
resource is not in the same directory subtree, and replace empty
strings with "(null)".

Source/WebKit/gtk:

Update the AuthenticationCallback used in DumpRenderTree so that
it receives a WebKitWebResource, and update
dispatchDidReceiveAuthenticationChallenge so that it retrieves the
WebKitWebResource and passes it to the callback.

  • WebCoreSupport/DumpRenderTreeSupportGtk.h: Update the

AuthenticationCallback adding a WebKitWebResource parameter.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::toString): Define this function earlier so we can use it
to get the WebKitWebResource from the identifier in the
AuthenticationChallenge.
(WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
Use toString to retrieve a WebKitWebResource from the identifier
in the authentication challenge, and pass that WebKitWebResource
to the AuthenticationCallback.

Tools:

Update pathFromSoupURI so it behaves more closely to the other
ports, and remove the unused code after we no longer print
<unknown> in certain cases. Also move
soupURIToStringPreservingPassword to DumpRenderTreeGtk so it can
be used both in TestRunnerGtk and in DumpRenderTree.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(soupURIToStringPreservingPassword): Moved from TestRunnerGtk so
we can print Soup URIs with the password, since soup_uri_to_string
doesn't preserve them.
(pathFromSoupURI): Updated following EFL implementation in
r153977, and return a WTFString instead of a CString.
(convertSoupMessageToURLPath): Return "(null)" instead of empty
strings, and handle the new return type of pathFromSoupURI.
(convertWebResourceToURLPath): Use a GOwnPtr to hold the Soup URI
reference, and handle the new return type of pathFromSoupURI.
(descriptionSuitableForTestResult): Remove unused code.
(didFinishLoading): Use convertResourceToURLPath.
(didFailLoadingWithError): Use convertResourceToURLPath.
(authenticationCallback): Display the URL of the authentication
challenge.

  • DumpRenderTree/gtk/DumpRenderTreeGtk.h: Declare

soupURIToStringPreservingPassword.

  • DumpRenderTree/gtk/TestRunnerGtk.cpp: Remove

soupURIToStringPreservingPassword.

6:06 AM Changeset in webkit [154097] by simon.pena@samsung.com
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Skip failing test.

  • platform/gtk-wk1/TestExpectations:

http/tests/loading/unfinished-main-resource-back-to-cached-page-callbacks.html
is failing.

4:37 AM Changeset in webkit [154096] by allan.jensen@digia.com
  • 2 edits in trunk/LayoutTests

[Qt] fast/canvas/canvas-blending-transforms.html test fails on x32 after r153941.
https://bugs.webkit.org/show_bug.cgi?id=119792

Unreviewed gardening.

Speculative unskip after r154095.

  • platform/qt/TestExpectations:
4:28 AM Changeset in webkit [154095] by allan.jensen@digia.com
  • 7 edits in trunk

REGRESSION(r148790) Made 7 tests fail on x86 32bit
https://bugs.webkit.org/show_bug.cgi?id=114913

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

The X87 register was not freed before some calls. Instead
of inserting resetX87Registers to the last call sites,
the two X87 registers are now freed in every call.

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • offlineasm/instructions.rb:
  • offlineasm/x86.rb:

LayoutTests:

Unskip the five tests now passsing again.

  • platform/qt/TestExpectations:
3:35 AM Changeset in webkit [154094] by simon.pena@samsung.com
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Rebaseline after r154057.

  • platform/gtk/fast/js/dom-static-property-for-in-iteration-expected.txt:
3:31 AM Changeset in webkit [154093] by ryuan.choi@samsung.com
  • 3 edits
    1 delete in trunk/LayoutTests

[EFL] Unreviwed gardening.

Skipped some failures.

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/efl/fast/forms/datalist/input-list-expected.txt: Removed.
3:29 AM Changeset in webkit [154092] by simon.pena@samsung.com
  • 12 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Rebaseline after r154072.

  • platform/gtk/fast/regions/autoheight-regions-mark-expected.txt:
  • platform/gtk/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt:
  • platform/gtk/fast/regions/overflow-in-variable-width-regions-expected.txt:
  • platform/gtk/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt:
  • platform/gtk/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt:
  • platform/gtk/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt:
  • platform/gtk/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt:
  • platform/gtk/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:
  • platform/gtk/fast/repaint/line-flow-with-floats-in-regions-expected.txt:
  • platform/gtk/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt:
  • platform/gtk/fast/repaint/region-painting-via-layout-expected.txt:
2:02 AM Changeset in webkit [154091] by kadam@inf.u-szeged.hu
  • 18 edits
    1 delete in trunk/LayoutTests

[Qt] Unreviwed gardening. Rebase fast tests after r154072.

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2013-08-15

  • platform/qt-5.0-wk2/fast/repaint/region-painting-via-layout-expected.txt: Removed.
  • platform/qt/fast/regions/autoheight-regions-mark-expected.txt:
  • platform/qt/fast/regions/overflow-in-uniform-regions-dynamic-expected.png:
  • platform/qt/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt:
  • platform/qt/fast/regions/overflow-in-variable-width-regions-expected.png:
  • platform/qt/fast/regions/overflow-in-variable-width-regions-expected.txt:
  • platform/qt/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.png:
  • platform/qt/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt:
  • platform/qt/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.png:
  • platform/qt/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt:
  • platform/qt/fast/regions/overflow-rtl-in-variable-width-regions-expected.png:
  • platform/qt/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt:
  • platform/qt/fast/regions/overflow-size-change-in-variable-width-regions-expected.png:
  • platform/qt/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt:
  • platform/qt/fast/repaint/line-flow-with-floats-in-regions-expected.png:
  • platform/qt/fast/repaint/line-flow-with-floats-in-regions-expected.txt:
  • platform/qt/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt:
  • platform/qt/fast/repaint/region-painting-via-layout-expected.txt:

Aug 14, 2013:

11:12 PM Changeset in webkit [154090] by ap@apple.com
  • 3 edits in trunk/LayoutTests

Don't copy js-test-pre in cookies-test-pre
https://bugs.webkit.org/show_bug.cgi?id=119802

Reviewed by Sam Weinig.

  • http/tests/cookies/resources/cookies-test-post.js:
  • http/tests/cookies/resources/cookies-test-pre.js:
10:14 PM Changeset in webkit [154089] by ryuan.choi@samsung.com
  • 35 edits in trunk

<https://webkit.org/b/119786> [EFL] decoration of search type is different from other platforms

Reviewed by Gyuyoung Kim.

Source/WebCore:

Other platforms except EFL port draw a magnifying icon for
-webkit-search-results-button and -webkit-search-results-decoration in search field,
but Efl port draws it for -webkit-search-decoration.

This patch makes Efl port draw icon in first two cases like other ports.

Tests: fast/css/input-search-padding.html

fast/css/text-input-with-webkit-border-radius.html
fast/css/text-overflow-input.html
fast/forms/box-shadow-override.html
fast/forms/control-restrict-line-height.html
fast/forms/input-appearance-height.html
fast/forms/placeholder-position.html
fast/forms/placeholder-pseudo-style.html
fast/forms/search-cancel-button-style-sharing.html
fast/forms/search-display-none-cancel-button.html
fast/forms/search-rtl.html
fast/forms/search-vertical-alignment.html
fast/forms/searchfield-heights.html
fast/repaint/search-field-cancel.html

  • platform/efl/DefaultTheme/widget/search/cancel/search_cancel.edc:

Moved results_button alias to search_decoration.edc

  • platform/efl/DefaultTheme/widget/search/decoration/search_decoration.edc:
  • platform/efl/RenderThemeEfl.cpp:

Updated size of ResultsButtonStyle and ResultsDecorationStyle to show icon.
In addition, removed adjustSearchFieldResultsButtonStyle and paintSearchFieldDecoration.
(WebCore::toEdjeGroup): Removed decoration group.
(WebCore::RenderThemeEfl::adjustSearchFieldResultsButtonStyle):
(WebCore::RenderThemeEfl::adjustSearchFieldResultsDecorationStyle):

  • platform/efl/RenderThemeEfl.h:

LayoutTests:

Rebaseline related to input search field.

  • platform/efl/fast/css/input-search-padding-expected.png:
  • platform/efl/fast/css/input-search-padding-expected.txt:
  • platform/efl/fast/css/text-input-with-webkit-border-radius-expected.png:
  • platform/efl/fast/css/text-input-with-webkit-border-radius-expected.txt:
  • platform/efl/fast/css/text-overflow-input-expected.png:
  • platform/efl/fast/css/text-overflow-input-expected.txt:
  • platform/efl/fast/forms/box-shadow-override-expected.png:
  • platform/efl/fast/forms/box-shadow-override-expected.txt:
  • platform/efl/fast/forms/control-restrict-line-height-expected.png:
  • platform/efl/fast/forms/control-restrict-line-height-expected.txt:
  • platform/efl/fast/forms/input-appearance-height-expected.png:
  • platform/efl/fast/forms/input-appearance-height-expected.txt:
  • platform/efl/fast/forms/placeholder-position-expected.png:
  • platform/efl/fast/forms/placeholder-position-expected.txt:
  • platform/efl/fast/forms/placeholder-pseudo-style-expected.png:
  • platform/efl/fast/forms/placeholder-pseudo-style-expected.txt:
  • platform/efl/fast/forms/search-cancel-button-style-sharing-expected.png:
  • platform/efl/fast/forms/search-cancel-button-style-sharing-expected.txt:
  • platform/efl/fast/forms/search-display-none-cancel-button-expected.png:
  • platform/efl/fast/forms/search-display-none-cancel-button-expected.txt:
  • platform/efl/fast/forms/search-rtl-expected.png:
  • platform/efl/fast/forms/search-rtl-expected.txt:
  • platform/efl/fast/forms/search-vertical-alignment-expected.png:
  • platform/efl/fast/forms/search-vertical-alignment-expected.txt:
  • platform/efl/fast/forms/searchfield-heights-expected.png:
  • platform/efl/fast/forms/searchfield-heights-expected.txt:
  • platform/efl/fast/repaint/search-field-cancel-expected.png:
  • platform/efl/fast/repaint/search-field-cancel-expected.txt:
9:46 PM Changeset in webkit [154088] by gyuyoung.kim@samsung.com
  • 36 edits in trunk/Source/WebCore

[CSS] Introduce new structure to pass image orientation values.
https://bugs.webkit.org/show_bug.cgi?id=119418

Reviewed by Beth Dakin.

Add a ImageOrientationDescription struct in order to reduce count of argument for
image orientation.

No new tests, no behavior change.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::paint):

  • page/DragController.cpp:

(WebCore::DragController::doImageDrag):

  • page/Frame.cpp:

(WebCore::Frame::nodeImage):
(WebCore::Frame::dragImageForSelection):

  • platform/DragImage.h:
  • platform/blackberry/DragImageBlackBerry.cpp:

(WebCore::createDragImageFromImage):

  • platform/efl/DragImageEfl.cpp:

(WebCore::createDragImageFromImage):

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::updateSize):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::drawImage):

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/Image.cpp:

(WebCore::Image::draw):

  • platform/graphics/Image.h:
  • platform/graphics/ImageOrientation.h:

(WebCore::ImageOrientationDescription::ImageOrientationDescription):
(WebCore::ImageOrientationDescription::respectImageOrientation):
(WebCore::ImageOrientationDescription::imageOrientation):

  • platform/graphics/ImageSource.cpp:

(WebCore::ImageSource::size):
(WebCore::ImageSource::frameSizeAtIndex):

  • platform/graphics/ImageSource.h:
  • platform/graphics/blackberry/ImageBlackBerry.cpp:

(WebCore::BitmapImage::draw):

  • platform/graphics/cairo/BitmapImageCairo.cpp:

(WebCore::BitmapImage::draw):

  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::ImageBuffer::draw):

  • platform/graphics/cg/BitmapImageCG.cpp:

(WebCore::BitmapImage::draw):

  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::ImageSource::frameSizeAtIndex):
(WebCore::ImageSource::size):
(WebCore::ImageSource::frameBytesAtIndex):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::paint):

  • platform/graphics/qt/ImageBufferQt.cpp:

(WebCore::ImageBuffer::draw):

  • platform/graphics/wince/ImageBufferWinCE.cpp:

(WebCore::ImageBuffer::draw):

  • platform/gtk/ClipboardGtk.cpp:

(WebCore::Clipboard::createDragImage):

  • platform/gtk/DragImageGtk.cpp:

(WebCore::createDragImageFromImage):

  • platform/mac/DragImageMac.mm:

(WebCore::createDragImageFromImage):

  • platform/qt/ClipboardQt.cpp:

(WebCore::Clipboard::createDragImage):

  • platform/qt/DragImageQt.cpp:

(WebCore::createDragImageFromImage):

  • platform/win/ClipboardWin.cpp:

(WebCore::Clipboard::createDragImage):

  • platform/win/DragImageCGWin.cpp:

(WebCore::createDragImageFromImage):

  • platform/win/DragImageCairoWin.cpp:

(WebCore::createDragImageFromImage):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::paintSnapshotImage):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::paintReplaced):
(WebCore::RenderImage::paintIntoRect):

  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::paintSnapshot):

5:53 PM Changeset in webkit [154087] by weinig@apple.com
  • 3 edits in trunk/Source/WebCore

Update binding test results. Follow up fix for <https://webkit.org/b/119664>

  • bindings/scripts/test/JS/JSTestCallback.cpp:

(WebCore::JSTestCallback::JSTestCallback):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):

5:45 PM Changeset in webkit [154086] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebCore

<https://webkit.org/b/119810> [Mac] No AutoreleasePool leaks when dragging image out of WebView

Reviewed by Dan Bernstein.

This code was just running a block of code asynchronously using a
pthread. Convert this to use a dispatch block, which does provide
an autorelease pool so there are no leaks and ends up much simpler.

  • platform/mac/FileSystemMac.mm:

(WebCore::setMetadataURL):

5:43 PM Changeset in webkit [154085] by dino@apple.com
  • 3 edits in trunk/Source/WebKit2

<https://webkit.org/b/119827> Allow primary plug-in detection to run more than once if necessary

Reviewed by Tim Horton.

We occasionally see cases where the primary plug-in detection runs before the plugins have been added
to the page, especially if they do so in response to a load event. Tweak the algorithm so that it can
run an arbitrary number of times if it fails.

While here, also have the detection run if there has ever been a plugin in the page as opposed to any
current views. We may have snapshotted a plugin by now and deleted its view.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): initialise new members.
(WebKit::WebPage::addPluginView): Mark that we've seen a plugin.
(WebKit::WebPage::resetPrimarySnapshottedPlugIn): Reset new members.
(WebKit::WebPage::determinePrimarySnapshottedPlugIn): Exit early if we've never
seen a plugin, rather than if we don't have any active views. Also, if we didn't find anything set
a timer to run again (maximum of two attempts at the moment).

  • WebProcess/WebPage/WebPage.h: New members - m_numberOfPrimarySnapshotDetectionAttempts

and m_hasSeenPlugin.

5:25 PM Changeset in webkit [154084] by timothy_horton@apple.com
  • 13 edits
    2 adds in trunk

Un-inline dataLog dumpers for IntSize and IntPoint
https://bugs.webkit.org/show_bug.cgi?id=119697

Reviewed by Sam Weinig.

.:

Avoid regressing build performance by moving IntSize::dump and IntPoint::dump elsewhere.

  • Source/autotools/symbols.filter:

Source/WebCore:

Avoid regressing build performance by moving IntSize::dump and IntPoint::dump elsewhere.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/IntPoint.cpp: Added.

(WebCore::IntPoint::dump):

  • platform/graphics/IntPoint.h:
  • platform/graphics/IntSize.cpp: Added.

(WebCore::IntSize::dump):

  • platform/graphics/IntSize.h:

Tools:

  • TestWebKitAPI/GNUmakefile.am:
5:00 PM Changeset in webkit [154083] by Chris Fleizach
  • 3 edits in trunk/Source/WebCore

<https://webkit.org/b/119824> AX: WKView does not become first responder when the voiceover cursor lands on it

Reviewed by Tim Horton.

VoiceOver lands on Scroll views by default. It expects that the scroll view will be able to handle the focus calls.
We should forward scroll view focus requests to the web area to handle, which will trigger a becomeFirstResponder on WKView.

There's not a great way to test this unfortunately, since it requires having focus comes from outside the webview into the webview.

  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::canSetFocusAttribute):
(WebCore::AccessibilityScrollView::isFocused):
(WebCore::AccessibilityScrollView::setFocused):

  • accessibility/AccessibilityScrollView.h:
4:59 PM Changeset in webkit [154082] by Chris Fleizach
  • 1 edit
    2 adds in trunk/LayoutTests

<https://webkit.org/b/119817> AX: Integrate layout tests from overflow bounding boxes are way too big; prevents VoiceOver taps from activating the right elements

Reviewed by Simon Fraser.

Add a layout test to ensure that transformed elements do not get offset twice when calculating their accessibility bounds.

  • accessibility/transformed-bounds-expected.txt: Added.
  • accessibility/transformed-bounds.html: Added.
4:24 PM Changeset in webkit [154081] by hmuller@adobe.com
  • 17 edits
    1 copy
    5 adds in trunk

[CSS Exclusions] Minimal support for using an image to define a shape
https://bugs.webkit.org/show_bug.cgi?id=116643

Source/WebCore:

Reviewed by Alexandru Chiculita.

This is a first small step towards supporting CSS shapes defined by an
image URL and a alpha channel threshold. To keep the patch as small as
possible, there are many limitations and remaining work items. For
example images are currently restricted to same-origin, although CORS
should be supported. See https://bugs.webkit.org/show_bug.cgi?id=116348
for the current list.

Test: fast/exclusions/shape-inside/shape-inside-image-001.html
Test: fast/exclusions/shape-inside/shape-inside-image-002.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::imageChanged): When the image has finished loading, request a layout.

  • rendering/RenderBlock.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::setStyle): Add notify clients for shape images.
(WebCore::RenderObject::updateShapeImage):
(WebCore::removeShapeImageClient):
(WebCore::RenderObject::arenaDelete): Remove notify clients for shape images.

  • rendering/RenderObject.h:
  • rendering/shapes/RasterShape.cpp: Added. A Shape defined by thresholding an image's alpha channel.

(WebCore::RasterShapeIntervals::bounds):
(WebCore::RasterShapeIntervals::addInterval): Add a single run to the shape.
(WebCore::alignedRect):
(WebCore::RasterShapeIntervals::getIntervals): Return the shape's runs that fall within a horizonal box.
(WebCore::RasterShape::marginIntervals): Internal representation of the shape with shape-margin factored in. Currently only a stub.
(WebCore::RasterShape::paddingIntervals): Internal representation of the shape with shape-padding factored in. Currently only a stub.
(WebCore::RasterShape::getExcludedIntervals):
(WebCore::RasterShape::getIncludedIntervals):
(WebCore::RasterShape::firstIncludedIntervalLogicalTop):

  • rendering/shapes/RasterShape.h:

(WebCore::RasterShapeIntervals::RasterShapeIntervals): Internal run length encoded representation of a RasterShape.
(WebCore::RasterShapeIntervals::isEmpty):
(WebCore::RasterShape::RasterShape):

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape): Support for creating a Shape based on a RasterShapeIntervals object.

  • rendering/shapes/Shape.h:
  • rendering/shapes/ShapeInfo.cpp:

(WebCore::::computedShape): Added support for the Image ShapeValue type.

  • rendering/shapes/ShapeInsideInfo.cpp:

(WebCore::ShapeInsideInfo::isEnabledFor): Added support for the Image ShapeValue type.

  • rendering/shapes/ShapeOutsideInfo.cpp:

(WebCore::ShapeOutsideInfo::isEnabledFor): Added support for the Image ShapeValue type.

  • rendering/style/ShapeValue.h:

(WebCore::ShapeValue::isImageValid): True if the shape's image is ready to be be processed.

LayoutTests:

Two tests to verify that the initial implementation of shape valued images is working
for shape-inside.

Reviewed by Alexandru Chiculita.

  • fast/exclusions/shape-inside/shape-inside-image-001-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-image-001.html: Added.
  • fast/exclusions/shape-inside/shape-inside-image-002-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-image-002.html: Added.
4:07 PM Changeset in webkit [154080] by Lucas Forschler
  • 5 edits in branches/safari-537-branch/Source

Versioning.

4:05 PM Changeset in webkit [154079] by Lucas Forschler
  • 1 copy in tags/Safari-537.57

New Tag.

4:03 PM Changeset in webkit [154078] by timothy_horton@apple.com
  • 10 edits in trunk/Source/WebKit/mac

Remotely hosted plugins don’t work in window-server-hosted WebKit1 views
https://bugs.webkit.org/show_bug.cgi?id=119709
<rdar://problem/14717572>

Reviewed by Anders Carlsson.

  • Plugins/Hosted/NetscapePluginHostManager.h:

Add hostLayersInWindowServer argument to instantiatePlugin.

  • Plugins/Hosted/NetscapePluginHostManager.mm:

(WebKit::NetscapePluginHostManager::instantiatePlugin):
Add hostLayersInWindowServer argument to instantiatePlugin, and pass it through to WebKitPluginHost.

  • Plugins/Hosted/NetscapePluginHostProxy.mm:

(WKPCLayerHostingModeChanged):
Forward the notification that the plugin host changed its layer hosting mode
to the instance proxy.

  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::setShouldHostLayersInWindowServer):
Ask the plugin host to re-host its layers when the layer hosting mode changes.

(WebKit::NetscapePluginInstanceProxy::layerHostingModeChanged):
Inform the WebHostedNetscapePluginView of the new layer hosting mode
when it changes. Also, store the new CAContext ID.

  • Plugins/Hosted/WebHostedNetscapePluginView.h:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm:

(-[WebHostedNetscapePluginView windowHostsLayersInWindowServer]):
Determine whether the WebView's current window uses window-server hosting for its layers.

(-[WebHostedNetscapePluginView createPlugin]):
Drive-by spelling fix.
Factor _pluginLayer initialization out into createPluginLayer.
Instantiate the plugin with the appropriate layer hosting mode.

(-[WebHostedNetscapePluginView createPluginLayer]):

(-[WebHostedNetscapePluginView setHostsLayersInWindowServer:]):
Create a new _pluginLayer if the layer hosting mode changes.
Attach the new _pluginLayer to our parent layer.

(-[WebHostedNetscapePluginView updateAndSetWindow]):
Inform the NetscapePluginInstanceProxy if the layer hosting mode changes,
so it can inform the plugin host. We will asynchronously receive a reply
with the new hosting mode and renderContextID and switch to the new CAContext,
in setHostsLayersInWindowServer:.

  • Plugins/Hosted/WebKitPluginClient.defs:
  • Plugins/Hosted/WebKitPluginHost.defs:
3:49 PM Changeset in webkit [154077] by dino@apple.com
  • 2 edits in trunk/Source/WebKit2

<https://webkit.org/b/119820> Add pluginView-related logging to WebPage

Reviewed by Tim Horton.

Add some more diagnostic output to help track down bugs.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::addPluginView): More logging.
(WebKit::WebPage::removePluginView): Ditto.

3:10 PM Changeset in webkit [154076] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Windows] Unreviewed build gardening.

  • platform/win/TestExpectations: Clean up a lint warning, and reactivate four tiling tests

that pass and had been turned off previously.

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

Fixed jit on Win64.
https://bugs.webkit.org/show_bug.cgi?id=119601

Reviewed by Oliver Hunt.

  • jit/JITStubsMSVC64.asm: Added ctiVMThrowTrampolineSlowpath implementation.
  • jit/JSInterfaceJIT.h: Added thirdArgumentRegister.
  • jit/SlowPathCall.h:

(JSC::JITSlowPathCall::call): Added correct calling convention for Win64.

2:44 PM Changeset in webkit [154074] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Flakiness dashboard build fix.

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(processTestRunsForBuilder):

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

[WK2] Sync messages with with non-default timeout sent from secondary threads always time out
https://bugs.webkit.org/show_bug.cgi?id=119767

Fix by Justin Bur.
Reviewed by Darin Adler.

  • Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):

The argument to wait() is absolute time, not a delta. This calculation matches one
in Connection::waitForMessage().

2:36 PM Changeset in webkit [154072] by Alexandru Chiculita
  • 31 edits
    21 adds in trunk

[CSS Regions] RenderRegions should have a RenderLayer+Backing when they contain a Composited RenderLayer
https://bugs.webkit.org/show_bug.cgi?id=117365

Reviewed by David Hyatt.

Source/WebCore:

After the RenderFlowThread has a new layout we need to check if any of the children layers
had been moved to a new render region. We are only checking for the first level of layers,
as they are the only ones supported right now. Also, added code to make Regions require a layer
based on the layers that fit in their clipping area.

Tests: fast/regions/layers/dynamic-layer-added-with-no-layout.html

fast/regions/layers/dynamic-layer-removed-with-no-layout.html
fast/regions/layers/float-region-promoted-to-layer.html
fast/regions/layers/regions-promoted-to-layers-horizontal-bt.html
fast/regions/layers/regions-promoted-to-layers-vertical-lr.html
fast/regions/layers/regions-promoted-to-layers-vertical-rl.html
fast/regions/layers/regions-promoted-to-layers.html

  • rendering/FlowThreadController.cpp:

(WebCore::FlowThreadController::updateRenderFlowThreadLayersIfNeeded): Iterate on all the flow threads and updateLayerToRegionMappings if needed.

  • rendering/FlowThreadController.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateLocalFloatingObjectsForPaintingContainer): Checks if the FloatingObject
needs to be painted by the current block or not.
(WebCore::RenderBlock::updateFloatingObjectsPaintingContainer): Helper function to lookup what is the right
container that would need to paint a FloatingObject.
(WebCore::RenderBlock::updateAllDescendantsFloatingObjectsPaintingContainer):

  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::outermostBlockContainingFloatingObject): Looks up the ancestor RenderBlock that contains all
the FloatingObjects of a float.
(WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists): Extracted the code for outermostBlockContainingFloatingObject
into its own method.
(WebCore::RenderBox::updatePaintingContainerForFloatingObject): Helper method to update the "m_shouldPaint" flag
of all the FloatingObjects created for a floating RenderObject. Normally, that flag is maintained during layout,
but we need to patch it for the floating RenderRegions after the layout is already finished.
(WebCore::RenderBox::updateLayerIfNeeded): Overwrite of the RenderLayerModelObject::updateLayerIfNeeded that is also
calling updatePaintingContainerForFloatingObject if a new layer was created or destroyed.

  • rendering/RenderBox.h:
  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::layout): Added code to call updateLayerToRegionMappings when needed.
(WebCore::RenderFlowThread::regionForCompositedLayer): Looks up the first RenderRegion to display a specific layer.
It only cares about the top most point of the element and ignores transforms.
(WebCore::RenderFlowThread::updateRegionForRenderLayer): Helper method to update the mapped region of a layer.
(WebCore::RenderFlowThread::updateLayerToRegionMappings): Iterates all the first level layers of the flow thread
and updates the region. Will return true if there was any change.

  • rendering/RenderFlowThread.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::dirtyZOrderLists): When new layers are added or removed we need to update the layer map in the flow thread.
(WebCore::RenderLayer::dirtyNormalFlowList):
(WebCore::RenderLayer::shouldBeNormalFlowOnly): CSS Regions might become layers because they contain RenderLayers,
but they should not become stacking contexts for that reason. This will prevent the RenderRegions from rendering
in front of other layers.
(WebCore::RenderLayer::shouldBeSelfPaintingLayer):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateCompositingLayers): Call updateRenderFlowThreadLayersIfNeeded when there's a layer hierarchy update.
(WebCore::RenderLayerCompositor::updateRenderFlowThreadLayersIfNeeded): Update the render flow thread layer maps when they are dirty.

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderLayer.h:

(WebCore::RenderLayer::isDirtyRenderFlowThread): Used to check if the RenderLayers had changed their order,
so that we can update the list of layers associated with a region. In a following patch we will need to
rebuild the composited layers.

  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::updateLayerIfNeeded): Adds or removes a layer when the "requiresLayer" changes
after the styleDidChange already happened. This is needed for Regions as we only know if they still require a layer,
only after the content of the flow thread is computed.

  • rendering/RenderLayerModelObject.h:
  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::RenderRegion):
(WebCore::RenderRegion::setRequiresLayerForCompositing):

  • rendering/RenderRegion.h:

(WebCore::RenderRegion::requiresLayer):

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeRenderRegionList): Updated the output to print the fact that the layer has a layer.

LayoutTests:

Added new tests for cases when CSS Regions are promoted to RenderLayers because
they contain elements that might need to become composited.

  • fast/regions/layers/dynamic-layer-added-with-no-layout-expected.png: Added.
  • fast/regions/layers/dynamic-layer-added-with-no-layout-expected.txt: Added.
  • fast/regions/layers/dynamic-layer-added-with-no-layout.html: Added.
  • fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.png: Added.
  • fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.txt: Added.
  • fast/regions/layers/dynamic-layer-removed-with-no-layout.html: Added.
  • fast/regions/layers/float-region-promoted-to-layer-expected.html: Added.
  • fast/regions/layers/float-region-promoted-to-layer.html: Added.
  • fast/regions/layers/regions-promoted-to-layers-expected.txt: Added.
  • fast/regions/layers/regions-promoted-to-layers-horizontal-bt-expected.txt: Added.
  • fast/regions/layers/regions-promoted-to-layers-horizontal-bt.html: Added.
  • fast/regions/layers/regions-promoted-to-layers-vertical-lr-expected.txt: Added.
  • fast/regions/layers/regions-promoted-to-layers-vertical-lr.html: Added.
  • fast/regions/layers/regions-promoted-to-layers-vertical-rl-expected.txt: Added.
  • fast/regions/layers/regions-promoted-to-layers-vertical-rl.html: Added.
  • fast/regions/layers/regions-promoted-to-layers.html: Added.

Updated existing tests that now have CSS Regions that require a RenderLayer.

  • fast/regions/autoheight-regions-mark-expected.txt:
  • fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt:
  • fast/repaint/region-painting-via-layout-expected.txt:
  • platform/mac/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt:
  • platform/mac/fast/regions/overflow-in-variable-width-regions-expected.txt:
  • platform/mac/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt:
  • platform/mac/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt:
  • platform/mac/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt:
  • platform/mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt:
  • platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:
  • platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.txt:
2:00 PM Changeset in webkit [154071] by Martin Robinson
  • 4 edits
    1 add in trunk

[GTK] [CMake] Add support for building TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=116987

Reviewed by Philippe Normand.

.:

  • Source/cmake/OptionsGTK.cmake: Turn on the API tests in the settings.

Tools:

  • TestWebKitAPI/CMakeLists.txt: Move the library listings to before the inclusion of the

platform-specific file, so that GTK+ can override them.

  • TestWebKitAPI/PlatformGTK.cmake: Added.
1:43 PM Changeset in webkit [154070] by Brent Fulgham
  • 5 edits in trunk/Tools

[Windows] Simplify Setting WebKit Debugging Options in WinLauncher
https://bugs.webkit.org/show_bug.cgi?id=119775

This bug updates the WinLauncher program with a few useful menu
options to toggle certain debugging and development features of
WebKit.

Reviewed by Tim Horton.

  • WinLauncher/WinLauncher.cpp:

(dllLauncherEntryPoint): Clean up preference objects on exit.
(ToggleMenuItem): New function.
(LaunchInspector): New function.
(WndProc): Add handler for new menu items. Also properly terminate
CFRunLoop operation on program exit.

  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.rc: Add new

menu items.

  • WinLauncher/WinLauncher.vcxproj/WinLauncherLibCommon.props: Add

resource folder to search path.

  • WinLauncher/WinLauncher.vcxproj/WinLauncherLibResource.h: Update

for new menu items.

1:30 PM Changeset in webkit [154069] by Bem Jones-Bey
  • 4 edits in trunk/Source/WebCore

Finish making FloatingObject a real class with private members
https://bugs.webkit.org/show_bug.cgi?id=119807

This is a port from Blink of
http://src.chromium.org/viewvc/blink?view=revision&revision=155964
Original patch by Eric Seidel.

From his comments on the Blink change:

Previously FloatingObject was in a half-done state where it had
accessors for many members, but also many members were public.

This CL makes all members private and adds the necessary remaining
accessors.

Reviewed by David Hyatt.

No new tests, no behavior change.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::deleteLineBoxTree):
(WebCore::RenderBlock::addOverflowFromFloats):
(WebCore::RenderBlock::repaintOverhangingFloats):
(WebCore::RenderBlock::paintFloats):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::removeFloatingObject):
(WebCore::RenderBlock::removeFloatingObjectsBelow):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::clearFloats):
(WebCore::RenderBlock::addOverhangingFloats):
(WebCore::RenderBlock::addIntrudingFloats):
(WebCore::RenderBlock::hitTestFloats):
(WebCore::RenderBlock::adjustForBorderFit):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::FloatingObject::paginationStrut):
(WebCore::RenderBlock::FloatingObject::setPaginationStrut):
(WebCore::RenderBlock::FloatingObject::setRenderer):
(WebCore::RenderBlock::FloatingObject::originatingLine):
(WebCore::RenderBlock::FloatingObject::setOriginatingLine):
(WebCore::RenderBlock::FloatingObjectHashFunctions::hash):
(WebCore::RenderBlock::FloatingObjectHashFunctions::equal):
(WebCore::RenderBlock::FloatingObjectHashTranslator::equal):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::appendFloatingObjectToLastLine):
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::linkToEndLineIfNeeded):
(WebCore::RenderBlock::determineStartPosition):
(WebCore::RenderBlock::positionNewFloatOnLine):

1:23 PM Changeset in webkit [154068] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit

Unreviewed build fix for Win64 after r153943.

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

Added 64-bit linker symbol for frameOrientationAtIndex.

1:21 PM Changeset in webkit [154067] by timothy_horton@apple.com
  • 6 edits in trunk/Source

REGRESSION (r153877): Plugin scanning slows creation of WebViews
https://bugs.webkit.org/show_bug.cgi?id=119665
<rdar://problem/14716549>

Reviewed by Darin Adler.

Source/WebKit/mac:

  • Plugins/WebPluginDatabase.h:
  • Plugins/WebPluginDatabase.mm:

(+[WebPluginDatabase sharedDatabaseIfExists]): Added.

  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::refreshPlugins):
Only refresh the plugin database if it's already been loaded.

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::refreshPlugins):
Don't repopulate the plugin cache in refreshPlugins, just invalidate it.
It will be repopulated the next time something tries to use it.

1:16 PM Changeset in webkit [154066] by achristensen@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Compile fix for Win64 with jit disabled.
https://bugs.webkit.org/show_bug.cgi?id=119804

Reviewed by Michael Saboff.

  • offlineasm/cloop.rb: Added std:: before isnan.
12:51 PM Changeset in webkit [154065] by akling@apple.com
  • 1 edit
    2 deletes in trunk/LayoutTests

<http://webkit.org/b/119520> REGRESSION(154062): fast/repaint/caret-jump-between-nodes.html flakes on bots.

Unreviewed. This isn't working out. I can't get it to blink the caret a consistent number of times.
Removing the test for now to stop making bots red.

  • fast/repaint/caret-jump-between-nodes-expected.txt: Removed.
  • fast/repaint/caret-jump-between-nodes.html: Removed.
12:14 PM Changeset in webkit [154064] by rwlbuis@webkit.org
  • 3 edits
    2 adds in trunk

Assertion failure in RenderObject::drawLineForBoxSide
https://bugs.webkit.org/show_bug.cgi?id=108187

Reviewed by David Hyatt.

Source/WebCore:

Don't draw the outline if the rectangle to draw is empty.

Test: fast/css/outline-negative.html

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::paintOutlineForLine):

LayoutTests:

Add testcase from bug with small adjustments.

  • fast/css/outline-negative-expected.txt: Added.
  • fast/css/outline-negative.html: Added.
11:52 AM Changeset in webkit [154063] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WebCore

Merged r154030. <rdar://problem/14687879>

11:51 AM Changeset in webkit [154062] by akling@apple.com
  • 3 edits
    3 deletes in trunk/LayoutTests

REGRESSION(r153815): fast/repaint/caret-jump-between-nodes.html sucks.
<http://webkit.org/b/119520>

Unreviewed, remove the description text from this repaint test in an attempt
to get consistent cross-platform results.

  • fast/repaint/caret-jump-between-nodes-expected.txt:
  • fast/repaint/caret-jump-between-nodes.html:
  • platform/gtk/fast/repaint/caret-jump-between-nodes-expected.txt: Removed.
  • platform/qt-5.0-wk2/fast/repaint/caret-jump-between-nodes-expected.txt: Removed.
  • platform/qt/fast/repaint/caret-jump-between-nodes-expected.txt: Removed.
11:42 AM Changeset in webkit [154061] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Add a hyperlink from build.webkit.org to the flakiness dashboard.

Rubbers-tamped by Simon Fraser.

  • BuildSlaveSupport/build.webkit.org-config/templates/root.html:
11:36 AM Changeset in webkit [154060] by kov@webkit.org
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Unreviewed build fix.

Patch by Gustavo Noronha Silva <Gustavo Noronha Silva> on 2013-08-14

  • GNUmakefile.am: link gamepad libs onto the plugin process,

our dearest friend when it comes to linking and unresolved
symbols issues.

11:36 AM Changeset in webkit [154059] by kov@webkit.org
  • 2 edits in releases/WebKitGTK/webkit-2.0/Tools

Merge 152629 - [GTK] Increase the JHBuild version of GStreamer to 1.0.7
https://bugs.webkit.org/show_bug.cgi?id=115166

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-07-15
Reviewed by Philippe Normand.

  • gtk/jhbuild.modules: Bumping GStreamer version up to 1.0.8.
10:44 AM Changeset in webkit [154058] by Chris Fleizach
  • 10 edits
    2 adds in trunk

AX: Headings not longer have an AXTitle if they have a link as the only child
https://bugs.webkit.org/show_bug.cgi?id=119699

Reviewed by Anders Carlsson.

Source/WebCore:

Normally, focusable content is not incuded when looking at the visible text of an element.
One case where we need an exception is with headings, where there is usually link content inside the heading
that we want to be used as the visible text.

Test: accessibility/heading-title-includes-links.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::visibleText):
(WebCore::shouldUseAccessiblityObjectInnerText):
(WebCore::AccessibilityNodeObject::title):

  • accessibility/AccessibilityNodeObject.h:
  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityTextUnderElementMode::AccessibilityTextUnderElementMode):
(WebCore::AccessibilityObject::textUnderElement):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::textUnderElement):

  • accessibility/AccessibilityRenderObject.h:

LayoutTests:

  • accessibility/heading-title-includes-links.html: Added.
  • platform/mac/accessibility/heading-title-includes-links-expected.txt: Added.
  • platform/mac/accessibility/internal-link-anchors2-expected.txt:
10:41 AM Changeset in webkit [154057] by Christophe Dumez
  • 6 edits in trunk

Move id attribute to parent Element interface
https://bugs.webkit.org/show_bug.cgi?id=119706

Reviewed by Ryosuke Niwa.

Source/WebCore:

Move id attribute from SVGElement / HTMLElement to their Element parent
interface to match the latest DOM specification and avoid duplication:
http://dom.spec.whatwg.org/#dom-element-id

There is no web-exposed behavior change because we haven't moved
properties from instances to their prototype, as per the Web IDL
specification (http://dev.w3.org/2006/webapi/WebIDL/#es-attributes).

Firefox already exposes the id property of Element's prototype.

This patch also drops the comment about returning the empty string when
no id is present (introduced in http://trac.webkit.org/changeset/4417).
This comment is redundant since the id property is already marked to
"reflect" the id attribute. Returning the empty string when the
attribute is not present is the normal behavior when reflecting:
http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#reflect

No new test, no web-exposed behavior change.

  • dom/Element.idl:
  • html/HTMLElement.idl:
  • svg/SVGElement.idl:

LayoutTests:

Rebaseline fast/js/dom-static-property-for-in-iteration.html as
the order has changed.

  • fast/js/dom-static-property-for-in-iteration-expected.txt:
10:25 AM Changeset in webkit [154056] by kov@webkit.org
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WTF

Merge 144174 - Bug in atomicIncrement implementation for MIPS GCC
https://bugs.webkit.org/show_bug.cgi?id=110969

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-27
Reviewed by Csaba Osztrogonác.

Fix of sync_[add|sub]_and_fetch_8 for GCC patch.

  • wtf/Atomics.cpp:
10:24 AM Changeset in webkit [154055] by kov@webkit.org
  • 4 edits
    1 add in releases/WebKitGTK/webkit-2.0/Source/WTF

Merge 144077 - Fix the atomicIncrement implementation for MIPS GCC
https://bugs.webkit.org/show_bug.cgi?id=106739

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-26
Reviewed by Oliver Hunt.

Implementation of missing sync_[add|sub]_and_fetch_8 functions.

Some architectures, like MIPS32, don't have GCC implementation for
builtin sync_* functions with 64 bits variable size. GCC answer
for the problem: If a target doesn't support atomic operations on
certain variable sizes, you are out of luck with atomicity in that
case (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56296). GCC >= 4.8
will support
atomic_* builtin functions for this purpose for all
the GCC targets, but for current compilers we have to include our
own implementation.

  • GNUmakefile.list.am:
  • WTF.pro:
  • wtf/Atomics.cpp: Added.

(WTF):
(WTF::getSwapLock):
(WTF::atomicStep):

  • wtf/CMakeLists.txt:
10:24 AM WebKitGTK/2.0.x edited by kov@webkit.org
MIPS/powerpc/sparc build fix (diff)
10:08 AM Changeset in webkit [154054] by a.bah@samsung.com
  • 5 edits
    4 adds in trunk

createAttribute/setAttributeNode does not properly normalize case
https://bugs.webkit.org/show_bug.cgi?id=90341

Reviewed by Darin Adler.

Source/WebCore:

setAttributeNode() verifies for existing attributes in a case sensitive
manner. Thus, it would add another attribute if specified in a case
different from the existing one. Instead, like setAttribute(), it too
should modify the existing attribute's value.

Tests: fast/dom/Element/setAttributeNode-case-insensitivity-xhtml.xhtml

fast/dom/Element/setAttributeNode-case-insensitivity.html

  • dom/Element.cpp:

(WebCore::Element::setAttributeNode):
Passing the second param (shouldIgnoreAttributeCase) to
findAttributeIndexByNameForAttributeNode() method. We are now letting
findAttributeIndexByNameForAttributeNode() handle the case-sensitive/insensitive
checking.

(WebCore::ElementData::findAttributeIndexByNameForAttributeNode):

  • dom/Element.h:

Added shouldIgnoreAttributeCase boolean param to the method. It passes
this on to QualifiedName::matchesIgnoringCaseForLocalName() method.

  • dom/QualifiedName.h:

(WebCore::QualifiedName::matchesIgnoringCaseForLocalName):
New method added for doing a case-insensitive comparison based on the
shouldIgnoreCase param passed to this method.

LayoutTests:

  • fast/dom/Element/setAttributeNode-case-insensitivity.html: Added.
  • fast/dom/Element/setAttributeNode-case-insensitivity-expected.txt: Added.

Testcase for verifying that setAttributeNode() checks against existing
attributes in a case insensitive manner. It updates the value of an
existing attribute (in lower case) with that of the one set using
setAttributeNode() (in upper case).
The test also verifies the behavior of attributes when specified with
namespace and prefix.

  • fast/dom/Element/setAttributeNode-case-insensitivity-xhtml-expected.txt: Added.
  • fast/dom/Element/setAttributeNode-case-insensitivity-xhtml.xhtml: Added.

Testcase added for verifying that the default behavior for xhtml documents
does not change with this fix.
For xhtml documents, attributes can be added case sensitively. This testcase
verifies that two attributes with the same name but different case are
allowed for an xhtml document.

9:52 AM Changeset in webkit [154053] by allan.jensen@digia.com
  • 4 edits in trunk

[Qt] Activate visibility API layout tests
https://bugs.webkit.org/show_bug.cgi?id=119790

Patch by Benjamin Dupont <bdupont@nds.com> on 2013-08-14
Reviewed by Allan Sandfeld Jensen.

Tools:

  • DumpRenderTree/qt/TestRunnerQt.cpp:

(TestRunner::resetPageVisibility):
(TestRunner::setPageVisibility):

LayoutTests:

  • platform/qt/TestExpectations:
9:51 AM Changeset in webkit [154052] by allan.jensen@digia.com
  • 13 edits in trunk/Source

DFG_JIT implementation for sh4 architecture.
https://bugs.webkit.org/show_bug.cgi?id=119737

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-14
Reviewed by Oliver Hunt.

Source/JavaScriptCore:

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::invert):
(JSC::MacroAssemblerSH4::add32):
(JSC::MacroAssemblerSH4::and32):
(JSC::MacroAssemblerSH4::lshift32):
(JSC::MacroAssemblerSH4::mul32):
(JSC::MacroAssemblerSH4::or32):
(JSC::MacroAssemblerSH4::rshift32):
(JSC::MacroAssemblerSH4::sub32):
(JSC::MacroAssemblerSH4::xor32):
(JSC::MacroAssemblerSH4::store32):
(JSC::MacroAssemblerSH4::swapDouble):
(JSC::MacroAssemblerSH4::storeDouble):
(JSC::MacroAssemblerSH4::subDouble):
(JSC::MacroAssemblerSH4::mulDouble):
(JSC::MacroAssemblerSH4::divDouble):
(JSC::MacroAssemblerSH4::negateDouble):
(JSC::MacroAssemblerSH4::zeroExtend32ToPtr):
(JSC::MacroAssemblerSH4::branchTruncateDoubleToUint32):
(JSC::MacroAssemblerSH4::truncateDoubleToUint32):
(JSC::MacroAssemblerSH4::swap):
(JSC::MacroAssemblerSH4::jump):
(JSC::MacroAssemblerSH4::branchNeg32):
(JSC::MacroAssemblerSH4::branchAdd32):
(JSC::MacroAssemblerSH4::branchMul32):
(JSC::MacroAssemblerSH4::urshift32):

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::SH4Assembler):
(JSC::SH4Assembler::labelForWatchpoint):
(JSC::SH4Assembler::label):
(JSC::SH4Assembler::debugOffset):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::preserveReturnAddressAfterCall):
(JSC::DFG::AssemblyHelpers::restoreReturnAddressBeforeReturn):
(JSC::DFG::AssemblyHelpers::debugCall):

  • dfg/DFGCCallHelpers.h:

(JSC::DFG::CCallHelpers::setupArguments):
(JSC::DFG::CCallHelpers::setupArgumentsWithExecState):

  • dfg/DFGFPRInfo.h:

(JSC::DFG::FPRInfo::toRegister):
(JSC::DFG::FPRInfo::toIndex):
(JSC::DFG::FPRInfo::debugName):

  • dfg/DFGGPRInfo.h:

(JSC::DFG::GPRInfo::toRegister):
(JSC::DFG::GPRInfo::toIndex):
(JSC::DFG::GPRInfo::debugName):

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

(JSC::DFG::SpeculativeJIT::callOperation):

  • jit/JITStubs.h:
  • jit/JITStubsSH4.h:

Source/WTF:

  • wtf/Platform.h:
9:42 AM Changeset in webkit [154051] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[CMake] Fix building with bison-3.0.
https://bugs.webkit.org/show_bug.cgi?id=119788

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-08-14
Reviewed by Zoltan Herczeg.

No new tests, just build fix.

  • CMakeLists.txt:
9:19 AM Changeset in webkit [154050] by jer.noble@apple.com
  • 10 edits in trunk/Source/WebKit/mac

Revert r154019; causes >50 tests to fail on WebKit1 bots.

  • Plugins/Hosted/NetscapePluginHostManager.h:
  • Plugins/Hosted/NetscapePluginHostManager.mm:

(WebKit::NetscapePluginHostManager::instantiatePlugin):

  • Plugins/Hosted/NetscapePluginHostProxy.mm:
  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:
  • Plugins/Hosted/WebHostedNetscapePluginView.h:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm:

(-[WebHostedNetscapePluginView setAttributeKeys:andValues:]):
(-[WebHostedNetscapePluginView createPlugin]):
(-[WebHostedNetscapePluginView updateAndSetWindow]):

  • Plugins/Hosted/WebKitPluginClient.defs:
  • Plugins/Hosted/WebKitPluginHost.defs:
8:43 AM Changeset in webkit [154049] by rwlbuis@webkit.org
  • 3 edits
    6 adds in trunk

ASSERTION FAILED: resultAnimationElement->m_animatedType in WebCore::SVGAnimateElement::calculateAnimatedValue
https://bugs.webkit.org/show_bug.cgi?id=119748

Reviewed by Dirk Schulze.

Source/WebCore:

Avoid animation when attributeType="CSS" is used on an animateTransform.

Tests: svg/animations/animateTransform-translate-attributetype-auto.html

svg/animations/animateTransform-translate-invalid-attributetype.html

  • svg/SVGAnimateTransformElement.cpp:

(WebCore::SVGAnimateTransformElement::hasValidAttributeType):

LayoutTests:

Test that using animateTransform with attributeType="CSS" will cause no animateTransform animation, and
attributeType="auto" will act as "XML".

  • svg/animations/animateTransform-translate-attributetype-auto-expected.txt: Added.
  • svg/animations/animateTransform-translate-attributetype-auto.html: Added.
  • svg/animations/animateTransform-translate-invalid-attributetype-expected.txt: Added.
  • svg/animations/animateTransform-translate-invalid-attributetype.html: Added.
  • svg/animations/script-tests/animateTransform-translate-attributetype-auto.js: Added.

(sample1):
(sample2):
(sample3):
(executeTest):

  • svg/animations/script-tests/animateTransform-translate-invalid-attributetype.js: Added.

(sample):
(executeTest):

7:49 AM Changeset in webkit [154048] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Try to fix Qt build.

Not reviewed.

  • xml/parser/XMLDocumentParserQt.cpp:

(WebCore::XMLDocumentParser::parseProcessingInstruction):
(WebCore::XMLDocumentParser::parseCdata):
(WebCore::XMLDocumentParser::parseComment):

7:02 AM Changeset in webkit [154047] by Antti Koivisto
  • 28 edits in trunk/Source/WebCore

Remove Node::attach() and ContainerNode::attach()
https://bugs.webkit.org/show_bug.cgi?id=119698

Reviewed by Andreas Kling.

Currently attach() is a virtual function on Node. However only Elements have style and so a corresponding
independent render object. Attaching should be made Element level concept.

This patch merges Node::attach() and ContainerNode::attach() to Element::attach(). Other related functions
(detach(), reattach(), etc) move similarly.

Next step here is to make attach non-virtual in common case and move it out from the DOM tree.

  • dom/ContainerNode.cpp:

(WebCore::attachChild):
(WebCore::detachChild):

Temporary helpers. Further refactoring should get rid of these.

(WebCore::ContainerNode::takeAllChildrenFrom):
(WebCore::ContainerNode::removeBetween):
(WebCore::updateTreeAfterInsertion):

  • dom/ContainerNode.h:
  • dom/Document.cpp:

(WebCore::Document::attach):
(WebCore::Document::detach):

Copy the relevant parts of the code from base class attach/detach here. It is not much.

  • dom/Document.h:
  • dom/Element.cpp:

(WebCore::Element::~Element):

Node destructor no longer detaches.

(WebCore::Element::attachChildren):
(WebCore::Element::attach):

Combine Node::attach(), ContainerNode::attach() and Element::attach().

(WebCore::Element::detachChildren):
(WebCore::Element::detach):

Combine Node::detach(), ContainerNode::detach() and Element::detach().

(WebCore::Element::reattach):
(WebCore::Element::reattachIfAttached):
(WebCore::Element::lazyReattach):
(WebCore::Element::lazyAttach):

This stuff moves from ContainerNode/Node.

  • dom/Element.h:

(WebCore::Element::AttachContext::AttachContext):

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::removeShadowRoot):
(WebCore::ElementShadow::attach):
(WebCore::ElementShadow::detach):

  • dom/ElementShadow.h:
  • dom/Node.cpp:

(WebCore::Node::~Node):

Assert that we are not attached at this point.

(WebCore::Node::markAncestorsWithChildNeedsStyleRecalc):

  • dom/Node.h:

(WebCore::Node::setAttached):
(WebCore::Node::setStyleChange):

Make available.

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::NodeRenderingContext):

  • dom/NodeRenderingContext.h:
  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::attach):
(WebCore::ShadowRoot::detach):

  • dom/ShadowRoot.h:
  • dom/Text.cpp:

(WebCore::Text::~Text):

Node destructor no longer detaches. Add destructor.

(WebCore::Text::createTextRenderersForSiblingsAfterAttachIfNeeded):

Factor the code that updates sibling text renderers after attach into a function.

(WebCore::Text::attachText):
(WebCore::Text::detachText):

Text::attachText/detachText replace virtual Node::attach/detach. They do the part of the work text nodes actually ended up doing.

(WebCore::Text::updateTextRenderer):

  • dom/Text.h:
  • html/HTMLViewSourceDocument.cpp:

(WebCore::HTMLViewSourceDocument::addText):

  • html/PluginDocument.cpp:

(WebCore::PluginDocument::detach):

  • html/PluginDocument.h:
  • html/parser/HTMLConstructionSite.cpp:

(WebCore::executeTask):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistributor::invalidateDistribution):

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::attach):
(WebCore::InsertionPoint::detach):

  • loader/PlaceholderDocument.cpp:

(WebCore::PlaceholderDocument::attach):

  • loader/PlaceholderDocument.h:
  • style/StyleResolveTree.cpp:

(WebCore::Style::resolveLocal):
(WebCore::Style::updateTextStyle):

  • xml/parser/XMLDocumentParser.cpp:

(WebCore::XMLDocumentParser::exitText):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::processingInstruction):
(WebCore::XMLDocumentParser::cdataBlock):
(WebCore::XMLDocumentParser::comment):

No need to attach non-rendered nodes.

6:39 AM Changeset in webkit [154046] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewd gardening. Skipping failing tests on x86.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-08-14

  • platform/qt/TestExpectations:
4:29 AM Changeset in webkit [154045] by allan.jensen@digia.com
  • 5 edits in trunk/Source/WebCore

ASSERT(m_frame->view() == this) fails
https://bugs.webkit.org/show_bug.cgi?id=119015

Reviewed by Simon Fraser.

Introduced the method fixedLayoutSizeChanged and made it chack if the view
is attached to the frame before issuing contentsResized.

  • page/FrameView.cpp:

(WebCore::FrameView::fixedLayoutSizeChanged):

  • page/FrameView.h:
  • platform/ScrollView.cpp:

(WebCore::ScrollView::setFixedLayoutSize):
(WebCore::ScrollView::setUseFixedLayout):
(WebCore::ScrollView::fixedLayoutSizeChanged):

  • platform/ScrollView.h:
3:40 AM Changeset in webkit [154044] by sergio@webkit.org
  • 10 edits
    2 adds in trunk

[CSS Grid Layout] Align our grid-line handling with the updated specification
https://bugs.webkit.org/show_bug.cgi?id=113546

Reviewed by Andreas Kling.

From Blink r148091 by <jchaffraix@chromium.org>

Source/WebCore:

This change makes us match the updated specification by making
grid line numbers to always resolve against the
grid-{column|row}-start edge (the previous code would resolve
grid-{column|row}-end grid lines against the grid-{column|row}-end
edge).

To keep feature parity, negative numbers resolve against the
grid-{column|row}-end edge of the 'explicit grid'.

Test: fast/css-grid-layout/grid-item-negative-integer-explicit-grid-resolution.html

  • rendering/RenderGrid.cpp:

(WebCore::estimatedGridSizeForPosition):
(WebCore::RenderGrid::explicitGridColumnCount): New utility function.
(WebCore::RenderGrid::explicitGridRowCount): Ditto.
(WebCore::RenderGrid::maximumIndexInDirection): Use explicitGridXXXCount().
(WebCore::RenderGrid::resolveGridPositionsFromStyle): Check that row-end > row-start.
(WebCore::RenderGrid::resolveGridPositionFromStyle): Clamp negative values to the first line.

  • rendering/RenderGrid.h:
  • rendering/style/GridPosition.h:

LayoutTests:

Added a couple of new tests to cover the cases of grid resolutions
using negative integers. Negative integers must resolve against
the grid-{column|row}-end of the explicit grid.

  • fast/css-grid-layout/grid-auto-flow-resolution-expected.txt:
  • fast/css-grid-layout/grid-auto-flow-resolution.html:
  • fast/css-grid-layout/grid-item-negative-integer-explicit-grid-resolution-expected.txt: Added.
  • fast/css-grid-layout/grid-item-negative-integer-explicit-grid-resolution.html: Added.
  • fast/css-grid-layout/grid-item-spanning-resolution-expected.txt:
  • fast/css-grid-layout/grid-item-spanning-resolution.html:
  • fast/css-grid-layout/resources/grid.css:

(.autoLastRowAutoLastColumn):
(.autoSecondRowAutoFirstColumn):
(.firstRowBothColumn):
(.secondRowBothColumn):
(.bothRowFirstColumn):
(.bothRowSecondColumn):
(.bothRowBothColumn):

3:12 AM Changeset in webkit [154043] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebCore

Add toSVGTextPathElement(), and use it
https://bugs.webkit.org/show_bug.cgi?id=119783

Reviewed by Ryosuke Niwa.

As a step to clean-up static_cast<SVGXXX>, static_cast<SVGTextPathElement*> can
be changed with toSVGTextPathElement().

  • rendering/svg/RenderSVGTextPath.cpp:

(WebCore::RenderSVGTextPath::layoutPath):
(WebCore::RenderSVGTextPath::startOffset):
(WebCore::RenderSVGTextPath::exactAlignment):
(WebCore::RenderSVGTextPath::stretchMethod):

  • svg/SVGTextPathElement.h:

(WebCore::toSVGTextPathElement):

12:49 AM Changeset in webkit [154042] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

FEComponentTransfer could be faster.
https://bugs.webkit.org/show_bug.cgi?id=119671

Patch by Jinwoo Jeong <jw00.jeong@samsung.com> on 2013-08-14
Reviewed by Christophe Dumez.

Use direct writing to target data instead of calling Uint8ClampedArray::set() function.
This change reduces at least 80% time in the loop of that function.

The Uint8ClampedArray::set() function has index checking code, value checking code and value casting code.
But the index is managed by for loop condition, the value is generated by transferFunction.
And the value is already defined as unsigned char.
Thus all works in Uint8ClampedArray::set() function is redundant.
Removing the call to Uint8ClampedArray::set() function does not reduce stability but improves performance.

  • platform/graphics/filters/FEComponentTransfer.cpp:

(WebCore::FEComponentTransfer::platformApplySoftware):

Aug 13, 2013:

11:36 PM Changeset in webkit [154041] by calvaris@igalia.com
  • 5 edits in trunk

[GTK] WK does not link properly against libxslt
https://bugs.webkit.org/show_bug.cgi?id=119688

Reviewed by Gustavo Noronha Silva.

Source/WebKit/gtk:

  • GNUmakefile.am: Added LIBXSLT_LIBS to the unit tests.

Tools:

  • MiniBrowser/gtk/GNUmakefile.am: Added LIBXSLT_LIBS to

MiniBrowser.

  • WebKitTestRunner/GNUmakefile.am: Added LIBXSLT_LIBS to WTR.
10:21 PM Changeset in webkit [154040] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Unreviewed, fix build.

  • API/JSValue.mm:

(isDate):
(isArray):

  • API/JSWrapperMap.mm:

(tryUnwrapObjcObject):

  • API/ObjCCallbackFunction.mm:

(tryUnwrapBlock):

8:08 PM Changeset in webkit [154039] by gyuyoung.kim@samsung.com
  • 9 edits in trunk

The length of scheme is at least five characters even when the scheme has 'web+' prefix
https://bugs.webkit.org/show_bug.cgi?id=119779

Reviewed by Ryosuke Niwa.

Source/WebCore:

The content-scheme handler specification requires that it is SecurityError if the length of
scheme isn't five characters at least, including 'web+' prefix. Thus, we need to check the length
of scheme on the 'web+' scheme.

Spec: http://www.whatwg.org/specs/web-apps/current-work/#custom-handlers

No new tests, just modify existing tests.

  • Modules/navigatorcontentutils/NavigatorContentUtils.cpp:

(WebCore::verifyProtocolHandlerScheme):

LayoutTests:

Add a test case to check if the length of 'web+' is five characters at least.

  • fast/dom/register-protocol-handler-expected.txt:
  • fast/dom/register-protocol-handler.html:
  • fast/dom/unregister-protocol-handler-expected.txt:
  • fast/dom/unregister-protocol-handler.html:
  • platform/efl/fast/dom/register-protocol-handler-expected.txt:
  • platform/efl/fast/dom/unregister-protocol-handler-expected.txt:
7:41 PM Changeset in webkit [154038] by fpizlo@apple.com
  • 265 edits in trunk/Source

Foo::s_info should be Foo::info(), so that you can change how the s_info is actually linked
https://bugs.webkit.org/show_bug.cgi?id=119770

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

  • API/JSCallbackConstructor.cpp:

(JSC::JSCallbackConstructor::finishCreation):

  • API/JSCallbackConstructor.h:

(JSC::JSCallbackConstructor::createStructure):

  • API/JSCallbackFunction.cpp:

(JSC::JSCallbackFunction::finishCreation):

  • API/JSCallbackFunction.h:

(JSC::JSCallbackFunction::createStructure):

  • API/JSCallbackObject.cpp:

(JSC::::createStructure):

  • API/JSCallbackObject.h:

(JSC::JSCallbackObject::visitChildren):

  • API/JSCallbackObjectFunctions.h:

(JSC::::asCallbackObject):
(JSC::::finishCreation):

  • API/JSObjectRef.cpp:

(JSObjectGetPrivate):
(JSObjectSetPrivate):
(JSObjectGetPrivateProperty):
(JSObjectSetPrivateProperty):
(JSObjectDeletePrivateProperty):

  • API/JSValueRef.cpp:

(JSValueIsObjectOfClass):

  • API/JSWeakObjectMapRefPrivate.cpp:
  • API/ObjCCallbackFunction.h:

(JSC::ObjCCallbackFunction::createStructure):

  • JSCTypedArrayStubs.h:
  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::CallLinkStatus):
(JSC::CallLinkStatus::function):
(JSC::CallLinkStatus::internalFunction):

  • bytecode/CodeBlock.h:

(JSC::baselineCodeBlockForInlineCallFrame):

  • bytecode/SpeculatedType.cpp:

(JSC::speculationFromClassInfo):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedFunctionExecutable::visitChildren):
(JSC::UnlinkedCodeBlock::visitChildren):
(JSC::UnlinkedProgramCodeBlock::visitChildren):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedFunctionExecutable::createStructure):
(JSC::UnlinkedProgramCodeBlock::createStructure):
(JSC::UnlinkedEvalCodeBlock::createStructure):
(JSC::UnlinkedFunctionCodeBlock::createStructure):

  • debugger/Debugger.cpp:
  • debugger/DebuggerActivation.cpp:

(JSC::DebuggerActivation::visitChildren):

  • debugger/DebuggerActivation.h:

(JSC::DebuggerActivation::createStructure):

  • debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::functionName):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::isStringPrototypeMethodSane):
(JSC::DFG::FixupPhase::canOptimizeStringObjectAccess):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::isInternalFunctionConstant):

  • dfg/DFGOperations.cpp:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::compileNewStringObject):

  • dfg/DFGThunks.cpp:

(JSC::DFG::virtualForThunkGenerator):

  • interpreter/Interpreter.cpp:

(JSC::loadVarargs):

  • jsc.cpp:

(GlobalObject::createStructure):

  • profiler/LegacyProfiler.cpp:

(JSC::LegacyProfiler::createCallIdentifier):

  • runtime/Arguments.cpp:

(JSC::Arguments::visitChildren):

  • runtime/Arguments.h:

(JSC::Arguments::createStructure):
(JSC::asArguments):
(JSC::Arguments::finishCreation):

  • runtime/ArrayConstructor.cpp:

(JSC::arrayConstructorIsArray):

  • runtime/ArrayConstructor.h:

(JSC::ArrayConstructor::createStructure):

  • runtime/ArrayPrototype.cpp:

(JSC::ArrayPrototype::finishCreation):
(JSC::arrayProtoFuncConcat):
(JSC::attemptFastSort):

  • runtime/ArrayPrototype.h:

(JSC::ArrayPrototype::createStructure):

  • runtime/BooleanConstructor.h:

(JSC::BooleanConstructor::createStructure):

  • runtime/BooleanObject.cpp:

(JSC::BooleanObject::finishCreation):

  • runtime/BooleanObject.h:

(JSC::BooleanObject::createStructure):
(JSC::asBooleanObject):

  • runtime/BooleanPrototype.cpp:

(JSC::BooleanPrototype::finishCreation):
(JSC::booleanProtoFuncToString):
(JSC::booleanProtoFuncValueOf):

  • runtime/BooleanPrototype.h:

(JSC::BooleanPrototype::createStructure):

  • runtime/DateConstructor.cpp:

(JSC::constructDate):

  • runtime/DateConstructor.h:

(JSC::DateConstructor::createStructure):

  • runtime/DateInstance.cpp:

(JSC::DateInstance::finishCreation):

  • runtime/DateInstance.h:

(JSC::DateInstance::createStructure):
(JSC::asDateInstance):

  • runtime/DatePrototype.cpp:

(JSC::formateDateInstance):
(JSC::DatePrototype::finishCreation):
(JSC::dateProtoFuncToISOString):
(JSC::dateProtoFuncToLocaleString):
(JSC::dateProtoFuncToLocaleDateString):
(JSC::dateProtoFuncToLocaleTimeString):
(JSC::dateProtoFuncGetTime):
(JSC::dateProtoFuncGetFullYear):
(JSC::dateProtoFuncGetUTCFullYear):
(JSC::dateProtoFuncGetMonth):
(JSC::dateProtoFuncGetUTCMonth):
(JSC::dateProtoFuncGetDate):
(JSC::dateProtoFuncGetUTCDate):
(JSC::dateProtoFuncGetDay):
(JSC::dateProtoFuncGetUTCDay):
(JSC::dateProtoFuncGetHours):
(JSC::dateProtoFuncGetUTCHours):
(JSC::dateProtoFuncGetMinutes):
(JSC::dateProtoFuncGetUTCMinutes):
(JSC::dateProtoFuncGetSeconds):
(JSC::dateProtoFuncGetUTCSeconds):
(JSC::dateProtoFuncGetMilliSeconds):
(JSC::dateProtoFuncGetUTCMilliseconds):
(JSC::dateProtoFuncGetTimezoneOffset):
(JSC::dateProtoFuncSetTime):
(JSC::setNewValueFromTimeArgs):
(JSC::setNewValueFromDateArgs):
(JSC::dateProtoFuncSetYear):
(JSC::dateProtoFuncGetYear):

  • runtime/DatePrototype.h:

(JSC::DatePrototype::createStructure):

  • runtime/Error.h:

(JSC::StrictModeTypeErrorFunction::createStructure):

  • runtime/ErrorConstructor.h:

(JSC::ErrorConstructor::createStructure):

  • runtime/ErrorInstance.cpp:

(JSC::ErrorInstance::finishCreation):

  • runtime/ErrorInstance.h:

(JSC::ErrorInstance::createStructure):

  • runtime/ErrorPrototype.cpp:

(JSC::ErrorPrototype::finishCreation):

  • runtime/ErrorPrototype.h:

(JSC::ErrorPrototype::createStructure):

  • runtime/ExceptionHelpers.cpp:

(JSC::isTerminatedExecutionException):

  • runtime/ExceptionHelpers.h:

(JSC::TerminatedExecutionError::createStructure):

  • runtime/Executable.cpp:

(JSC::EvalExecutable::visitChildren):
(JSC::ProgramExecutable::visitChildren):
(JSC::FunctionExecutable::visitChildren):
(JSC::ExecutableBase::hashFor):

  • runtime/Executable.h:

(JSC::ExecutableBase::createStructure):
(JSC::NativeExecutable::createStructure):
(JSC::EvalExecutable::createStructure):
(JSC::ProgramExecutable::createStructure):
(JSC::FunctionExecutable::compileFor):
(JSC::FunctionExecutable::compileOptimizedFor):
(JSC::FunctionExecutable::createStructure):

  • runtime/FunctionConstructor.h:

(JSC::FunctionConstructor::createStructure):

  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncToString):
(JSC::functionProtoFuncApply):
(JSC::functionProtoFuncBind):

  • runtime/FunctionPrototype.h:

(JSC::FunctionPrototype::createStructure):

  • runtime/GetterSetter.cpp:

(JSC::GetterSetter::visitChildren):

  • runtime/GetterSetter.h:

(JSC::GetterSetter::createStructure):

  • runtime/InternalFunction.cpp:

(JSC::InternalFunction::finishCreation):

  • runtime/InternalFunction.h:

(JSC::InternalFunction::createStructure):
(JSC::asInternalFunction):

  • runtime/JSAPIValueWrapper.h:

(JSC::JSAPIValueWrapper::createStructure):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::visitChildren):
(JSC::JSActivation::argumentsGetter):

  • runtime/JSActivation.h:

(JSC::JSActivation::createStructure):
(JSC::asActivation):

  • runtime/JSArray.h:

(JSC::JSArray::createStructure):
(JSC::asArray):
(JSC::isJSArray):

  • runtime/JSBoundFunction.cpp:

(JSC::JSBoundFunction::finishCreation):
(JSC::JSBoundFunction::visitChildren):

  • runtime/JSBoundFunction.h:

(JSC::JSBoundFunction::createStructure):

  • runtime/JSCJSValue.cpp:

(JSC::JSValue::dumpInContext):

  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::isFunction):

  • runtime/JSCell.h:

(JSC::jsCast):
(JSC::jsDynamicCast):

  • runtime/JSCellInlines.h:

(JSC::allocateCell):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::finishCreation):
(JSC::JSFunction::visitChildren):
(JSC::skipOverBoundFunctions):
(JSC::JSFunction::callerGetter):

  • runtime/JSFunction.h:

(JSC::JSFunction::createStructure):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::visitChildren):
(JSC::slowValidateCell):

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::createStructure):

  • runtime/JSNameScope.cpp:

(JSC::JSNameScope::visitChildren):

  • runtime/JSNameScope.h:

(JSC::JSNameScope::createStructure):

  • runtime/JSNotAnObject.h:

(JSC::JSNotAnObject::createStructure):

  • runtime/JSONObject.cpp:

(JSC::JSONObject::finishCreation):
(JSC::unwrapBoxedPrimitive):
(JSC::Stringifier::Stringifier):
(JSC::Stringifier::appendStringifiedValue):
(JSC::Stringifier::Holder::Holder):
(JSC::Walker::walk):
(JSC::JSONProtoFuncStringify):

  • runtime/JSONObject.h:

(JSC::JSONObject::createStructure):

  • runtime/JSObject.cpp:

(JSC::getCallableObjectSlow):
(JSC::JSObject::visitChildren):
(JSC::JSObject::copyBackingStore):
(JSC::JSFinalObject::visitChildren):
(JSC::JSObject::ensureInt32Slow):
(JSC::JSObject::ensureDoubleSlow):
(JSC::JSObject::ensureContiguousSlow):
(JSC::JSObject::ensureArrayStorageSlow):

  • runtime/JSObject.h:

(JSC::JSObject::finishCreation):
(JSC::JSObject::createStructure):
(JSC::JSNonFinalObject::createStructure):
(JSC::JSFinalObject::createStructure):
(JSC::isJSFinalObject):

  • runtime/JSPropertyNameIterator.cpp:

(JSC::JSPropertyNameIterator::visitChildren):

  • runtime/JSPropertyNameIterator.h:

(JSC::JSPropertyNameIterator::createStructure):

  • runtime/JSProxy.cpp:

(JSC::JSProxy::visitChildren):

  • runtime/JSProxy.h:

(JSC::JSProxy::createStructure):

  • runtime/JSScope.cpp:

(JSC::JSScope::visitChildren):

  • runtime/JSSegmentedVariableObject.cpp:

(JSC::JSSegmentedVariableObject::visitChildren):

  • runtime/JSString.h:

(JSC::JSString::createStructure):
(JSC::isJSString):

  • runtime/JSSymbolTableObject.cpp:

(JSC::JSSymbolTableObject::visitChildren):

  • runtime/JSVariableObject.h:
  • runtime/JSWithScope.cpp:

(JSC::JSWithScope::visitChildren):

  • runtime/JSWithScope.h:

(JSC::JSWithScope::createStructure):

  • runtime/JSWrapperObject.cpp:

(JSC::JSWrapperObject::visitChildren):

  • runtime/JSWrapperObject.h:

(JSC::JSWrapperObject::createStructure):

  • runtime/MathObject.cpp:

(JSC::MathObject::finishCreation):

  • runtime/MathObject.h:

(JSC::MathObject::createStructure):

  • runtime/NameConstructor.h:

(JSC::NameConstructor::createStructure):

  • runtime/NameInstance.h:

(JSC::NameInstance::createStructure):
(JSC::NameInstance::finishCreation):

  • runtime/NamePrototype.cpp:

(JSC::NamePrototype::finishCreation):
(JSC::privateNameProtoFuncToString):

  • runtime/NamePrototype.h:

(JSC::NamePrototype::createStructure):

  • runtime/NativeErrorConstructor.cpp:

(JSC::NativeErrorConstructor::visitChildren):

  • runtime/NativeErrorConstructor.h:

(JSC::NativeErrorConstructor::createStructure):
(JSC::NativeErrorConstructor::finishCreation):

  • runtime/NumberConstructor.cpp:

(JSC::NumberConstructor::finishCreation):

  • runtime/NumberConstructor.h:

(JSC::NumberConstructor::createStructure):

  • runtime/NumberObject.cpp:

(JSC::NumberObject::finishCreation):

  • runtime/NumberObject.h:

(JSC::NumberObject::createStructure):

  • runtime/NumberPrototype.cpp:

(JSC::NumberPrototype::finishCreation):

  • runtime/NumberPrototype.h:

(JSC::NumberPrototype::createStructure):

  • runtime/ObjectConstructor.h:

(JSC::ObjectConstructor::createStructure):

  • runtime/ObjectPrototype.cpp:

(JSC::ObjectPrototype::finishCreation):

  • runtime/ObjectPrototype.h:

(JSC::ObjectPrototype::createStructure):

  • runtime/PropertyMapHashTable.h:

(JSC::PropertyTable::createStructure):

  • runtime/PropertyTable.cpp:

(JSC::PropertyTable::visitChildren):

  • runtime/RegExp.h:

(JSC::RegExp::createStructure):

  • runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::finishCreation):
(JSC::RegExpConstructor::visitChildren):
(JSC::constructRegExp):

  • runtime/RegExpConstructor.h:

(JSC::RegExpConstructor::createStructure):
(JSC::asRegExpConstructor):

  • runtime/RegExpMatchesArray.cpp:

(JSC::RegExpMatchesArray::visitChildren):

  • runtime/RegExpMatchesArray.h:

(JSC::RegExpMatchesArray::createStructure):

  • runtime/RegExpObject.cpp:

(JSC::RegExpObject::finishCreation):
(JSC::RegExpObject::visitChildren):

  • runtime/RegExpObject.h:

(JSC::RegExpObject::createStructure):
(JSC::asRegExpObject):

  • runtime/RegExpPrototype.cpp:

(JSC::regExpProtoFuncTest):
(JSC::regExpProtoFuncExec):
(JSC::regExpProtoFuncCompile):
(JSC::regExpProtoFuncToString):

  • runtime/RegExpPrototype.h:

(JSC::RegExpPrototype::createStructure):

  • runtime/SparseArrayValueMap.cpp:

(JSC::SparseArrayValueMap::createStructure):

  • runtime/SparseArrayValueMap.h:
  • runtime/StrictEvalActivation.h:

(JSC::StrictEvalActivation::createStructure):

  • runtime/StringConstructor.h:

(JSC::StringConstructor::createStructure):

  • runtime/StringObject.cpp:

(JSC::StringObject::finishCreation):

  • runtime/StringObject.h:

(JSC::StringObject::createStructure):
(JSC::asStringObject):

  • runtime/StringPrototype.cpp:

(JSC::StringPrototype::finishCreation):
(JSC::stringProtoFuncReplace):
(JSC::stringProtoFuncToString):
(JSC::stringProtoFuncMatch):
(JSC::stringProtoFuncSearch):
(JSC::stringProtoFuncSplit):

  • runtime/StringPrototype.h:

(JSC::StringPrototype::createStructure):

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::get):
(JSC::Structure::visitChildren):

  • runtime/Structure.h:

(JSC::Structure::typeInfo):
(JSC::Structure::previousID):
(JSC::Structure::outOfLineSize):
(JSC::Structure::totalStorageCapacity):
(JSC::Structure::materializePropertyMapIfNecessary):
(JSC::Structure::materializePropertyMapIfNecessaryForPinning):

  • runtime/StructureChain.cpp:

(JSC::StructureChain::visitChildren):

  • runtime/StructureChain.h:

(JSC::StructureChain::createStructure):

  • runtime/StructureInlines.h:

(JSC::Structure::get):

  • runtime/StructureRareData.cpp:

(JSC::StructureRareData::createStructure):
(JSC::StructureRareData::visitChildren):

  • runtime/StructureRareData.h:
  • runtime/SymbolTable.h:

(JSC::SharedSymbolTable::createStructure):

  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::StackPreservingRecompiler::operator()):
(JSC::VM::releaseExecutableMemory):

  • runtime/WriteBarrier.h:

(JSC::validateCell):

  • testRegExp.cpp:

(GlobalObject::createStructure):

Source/WebCore:

No new tests because no new behavior.

  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::createIDBKeyFromValue):

  • bindings/js/JSAttrCustom.cpp:

(WebCore::JSAttr::visitChildren):

  • bindings/js/JSAudioTrackCustom.cpp:

(WebCore::JSAudioTrack::visitChildren):

  • bindings/js/JSAudioTrackListCustom.cpp:

(WebCore::JSAudioTrackList::visitChildren):

  • bindings/js/JSBlobCustom.cpp:

(WebCore::JSBlobConstructor::constructJSBlob):

  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::JSCSSRule::visitChildren):

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::JSCSSStyleDeclaration::visitChildren):
(WebCore::JSCSSStyleDeclaration::getOwnPropertyNames):

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp:

(WebCore::toHTMLCanvasStyle):

  • bindings/js/JSCanvasRenderingContextCustom.cpp:

(WebCore::JSCanvasRenderingContext::visitChildren):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::valueToDate):

  • bindings/js/JSDOMBinding.h:

(WebCore::DOMConstructorObject::createStructure):
(WebCore::getDOMStructure):
(WebCore::toRefPtrNativeArray):
(WebCore::getStaticValueSlotEntryWithoutCaching):

  • bindings/js/JSDOMFormDataCustom.cpp:

(WebCore::toHTMLFormElement):
(WebCore::JSDOMFormData::append):

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSDOMGlobalObject::finishCreation):
(WebCore::JSDOMGlobalObject::scriptExecutionContext):
(WebCore::JSDOMGlobalObject::visitChildren):

  • bindings/js/JSDOMGlobalObject.h:

(WebCore::JSDOMGlobalObject::info):
(WebCore::JSDOMGlobalObject::createStructure):
(WebCore::getDOMConstructor):

  • bindings/js/JSDOMStringListCustom.cpp:

(WebCore::toDOMStringList):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::finishCreation):
(WebCore::toJSDOMWindow):

  • bindings/js/JSDOMWindowBase.h:

(WebCore::JSDOMWindowBase::createStructure):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::visitChildren):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertyDescriptor):
(WebCore::toDOMWindow):

  • bindings/js/JSDOMWindowShell.cpp:

(WebCore::JSDOMWindowShell::finishCreation):

  • bindings/js/JSDOMWindowShell.h:

(WebCore::JSDOMWindowShell::createStructure):

  • bindings/js/JSEventTargetCustom.cpp:

(WebCore::toEventTarget):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::JSHistory::getOwnPropertySlotDelegate):
(WebCore::JSHistory::getOwnPropertyDescriptorDelegate):

  • bindings/js/JSImageConstructor.cpp:

(WebCore::JSImageConstructor::finishCreation):

  • bindings/js/JSImageConstructor.h:

(WebCore::JSImageConstructor::createStructure):

  • bindings/js/JSInjectedScriptHostCustom.cpp:

(WebCore::JSInjectedScriptHost::isHTMLAllCollection):
(WebCore::JSInjectedScriptHost::type):
(WebCore::JSInjectedScriptHost::functionDetails):

  • bindings/js/JSInspectorFrontendHostCustom.cpp:

(WebCore::populateContextMenuItems):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::JSLocation::getOwnPropertySlotDelegate):
(WebCore::JSLocation::getOwnPropertyDescriptorDelegate):
(WebCore::JSLocation::putDelegate):

  • bindings/js/JSMessageChannelCustom.cpp:

(WebCore::JSMessageChannel::visitChildren):

  • bindings/js/JSMessagePortCustom.cpp:

(WebCore::JSMessagePort::visitChildren):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::JSNode::pushEventHandlerScope):
(WebCore::JSNode::visitChildren):

  • bindings/js/JSNodeFilterCustom.cpp:

(WebCore::JSNodeFilter::visitChildren):
(WebCore::toNodeFilter):

  • bindings/js/JSNodeIteratorCustom.cpp:

(WebCore::JSNodeIterator::visitChildren):

  • bindings/js/JSPluginElementFunctions.h:

(WebCore::pluginElementCustomGetOwnPropertySlot):
(WebCore::pluginElementCustomGetOwnPropertyDescriptor):

  • bindings/js/JSSVGElementInstanceCustom.cpp:

(WebCore::JSSVGElementInstance::visitChildren):

  • bindings/js/JSSharedWorkerCustom.cpp:

(WebCore::JSSharedWorker::visitChildren):

  • bindings/js/JSStyleSheetCustom.cpp:

(WebCore::JSStyleSheet::visitChildren):

  • bindings/js/JSTextTrackCueCustom.cpp:

(WebCore::JSTextTrackCue::visitChildren):

  • bindings/js/JSTextTrackCustom.cpp:

(WebCore::JSTextTrack::visitChildren):

  • bindings/js/JSTextTrackListCustom.cpp:

(WebCore::JSTextTrackList::visitChildren):

  • bindings/js/JSTrackCustom.cpp:

(WebCore::toTrack):

  • bindings/js/JSTreeWalkerCustom.cpp:

(WebCore::JSTreeWalker::visitChildren):

  • bindings/js/JSVideoTrackCustom.cpp:

(WebCore::JSVideoTrack::visitChildren):

  • bindings/js/JSVideoTrackListCustom.cpp:

(WebCore::JSVideoTrackList::visitChildren):

  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::JSWebGLRenderingContext::visitChildren):
(WebCore::JSWebGLRenderingContext::getAttachedShaders):
(WebCore::JSWebGLRenderingContext::getProgramParameter):
(WebCore::JSWebGLRenderingContext::getShaderParameter):
(WebCore::JSWebGLRenderingContext::getUniform):
(WebCore::dataFunctionf):
(WebCore::dataFunctioni):
(WebCore::dataFunctionMatrix):

  • bindings/js/JSWorkerGlobalScopeBase.cpp:

(WebCore::JSWorkerGlobalScopeBase::finishCreation):
(WebCore::toJSDedicatedWorkerGlobalScope):
(WebCore::toJSSharedWorkerGlobalScope):

  • bindings/js/JSWorkerGlobalScopeBase.h:

(WebCore::JSWorkerGlobalScopeBase::createStructure):

  • bindings/js/JSWorkerGlobalScopeCustom.cpp:

(WebCore::JSWorkerGlobalScope::visitChildren):

  • bindings/js/JSXMLHttpRequestCustom.cpp:

(WebCore::JSXMLHttpRequest::visitChildren):
(WebCore::JSXMLHttpRequest::send):

  • bindings/js/JSXPathResultCustom.cpp:

(WebCore::JSXPathResult::visitChildren):

  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::dispatchDidPause):

  • bindings/js/ScriptState.cpp:

(WebCore::domWindowFromScriptState):
(WebCore::scriptExecutionContextFromScriptState):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneSerializer::isArray):
(WebCore::CloneSerializer::dumpArrayBufferView):
(WebCore::CloneSerializer::dumpIfTerminal):
(WebCore::CloneSerializer::serialize):
(WebCore::CloneDeserializer::CloneDeserializer):
(WebCore::CloneDeserializer::readArrayBufferView):

  • bindings/objc/DOM.mm:

(+[DOMNode _nodeFromJSWrapper:]):

  • bindings/objc/DOMUtility.mm:

(JSC::createDOMWrapper):

  • bindings/objc/WebScriptObject.mm:

(+[WebScriptObject _convertValueToObjcValue:JSC::originRootObject:rootObject:]):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(GenerateGetOwnPropertyDescriptorBody):
(GenerateHeader):
(GenerateParametersCheckExpression):
(GenerateImplementation):
(GenerateParametersCheck):
(GenerateConstructorDeclaration):
(GenerateConstructorHelperMethods):

  • bindings/scripts/test/JS/JSFloat64Array.cpp:

(WebCore::JSFloat64ArrayConstructor::finishCreation):
(WebCore::JSFloat64Array::finishCreation):
(WebCore::JSFloat64Array::getOwnPropertySlot):
(WebCore::JSFloat64Array::getOwnPropertyDescriptor):
(WebCore::JSFloat64Array::getOwnPropertySlotByIndex):
(WebCore::JSFloat64Array::put):
(WebCore::JSFloat64Array::putByIndex):
(WebCore::JSFloat64Array::getOwnPropertyNames):
(WebCore::jsFloat64ArrayPrototypeFunctionFoo):
(WebCore::jsFloat64ArrayPrototypeFunctionSet):
(WebCore::JSFloat64Array::getByIndex):
(WebCore::toFloat64Array):

  • bindings/scripts/test/JS/JSFloat64Array.h:

(WebCore::JSFloat64Array::createStructure):
(WebCore::JSFloat64ArrayPrototype::createStructure):
(WebCore::JSFloat64ArrayConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::JSTestActiveDOMObjectConstructor::finishCreation):
(WebCore::JSTestActiveDOMObject::finishCreation):
(WebCore::JSTestActiveDOMObject::getOwnPropertySlot):
(WebCore::JSTestActiveDOMObject::getOwnPropertyDescriptor):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
(WebCore::toTestActiveDOMObject):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:

(WebCore::JSTestActiveDOMObject::createStructure):
(WebCore::JSTestActiveDOMObjectPrototype::createStructure):
(WebCore::JSTestActiveDOMObjectConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:

(WebCore::JSTestCustomNamedGetterConstructor::finishCreation):
(WebCore::JSTestCustomNamedGetter::finishCreation):
(WebCore::JSTestCustomNamedGetter::getOwnPropertySlot):
(WebCore::JSTestCustomNamedGetter::getOwnPropertyDescriptor):
(WebCore::JSTestCustomNamedGetter::getOwnPropertySlotByIndex):
(WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):
(WebCore::toTestCustomNamedGetter):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.h:

(WebCore::JSTestCustomNamedGetter::createStructure):
(WebCore::JSTestCustomNamedGetterPrototype::createStructure):
(WebCore::JSTestCustomNamedGetterConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::JSTestEventConstructorConstructor::finishCreation):
(WebCore::JSTestEventConstructor::finishCreation):
(WebCore::JSTestEventConstructor::getOwnPropertySlot):
(WebCore::JSTestEventConstructor::getOwnPropertyDescriptor):
(WebCore::toTestEventConstructor):

  • bindings/scripts/test/JS/JSTestEventConstructor.h:

(WebCore::JSTestEventConstructor::createStructure):
(WebCore::JSTestEventConstructorPrototype::createStructure):
(WebCore::JSTestEventConstructorConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTargetConstructor::finishCreation):
(WebCore::JSTestEventTarget::finishCreation):
(WebCore::JSTestEventTarget::getOwnPropertySlot):
(WebCore::JSTestEventTarget::getOwnPropertyDescriptor):
(WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
(WebCore::JSTestEventTarget::getOwnPropertyNames):
(WebCore::jsTestEventTargetPrototypeFunctionItem):
(WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
(WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
(WebCore::jsTestEventTargetPrototypeFunctionDispatchEvent):
(WebCore::JSTestEventTarget::visitChildren):
(WebCore::JSTestEventTarget::indexGetter):
(WebCore::toTestEventTarget):

  • bindings/scripts/test/JS/JSTestEventTarget.h:

(WebCore::JSTestEventTarget::createStructure):
(WebCore::JSTestEventTargetPrototype::createStructure):
(WebCore::JSTestEventTargetConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::JSTestExceptionConstructor::finishCreation):
(WebCore::JSTestException::finishCreation):
(WebCore::JSTestException::getOwnPropertySlot):
(WebCore::JSTestException::getOwnPropertyDescriptor):
(WebCore::toTestException):

  • bindings/scripts/test/JS/JSTestException.h:

(WebCore::JSTestException::createStructure):
(WebCore::JSTestExceptionPrototype::createStructure):
(WebCore::JSTestExceptionConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceConstructor::finishCreation):
(WebCore::JSTestInterface::finishCreation):
(WebCore::JSTestInterface::getOwnPropertySlot):
(WebCore::JSTestInterface::getOwnPropertyDescriptor):
(WebCore::JSTestInterface::put):
(WebCore::JSTestInterface::putByIndex):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod1):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod3):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod1):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3):
(WebCore::toTestInterface):

  • bindings/scripts/test/JS/JSTestInterface.h:

(WebCore::JSTestInterface::createStructure):
(WebCore::JSTestInterfacePrototype::createStructure):
(WebCore::JSTestInterfaceConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
(WebCore::JSTestMediaQueryListListener::finishCreation):
(WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
(WebCore::JSTestMediaQueryListListener::getOwnPropertyDescriptor):
(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
(WebCore::toTestMediaQueryListListener):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:

(WebCore::JSTestMediaQueryListListener::createStructure):
(WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
(WebCore::JSTestMediaQueryListListenerConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructorConstructor::finishCreation):
(WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
(WebCore::JSTestNamedConstructor::finishCreation):
(WebCore::JSTestNamedConstructor::getOwnPropertySlot):
(WebCore::JSTestNamedConstructor::getOwnPropertyDescriptor):
(WebCore::toTestNamedConstructor):

  • bindings/scripts/test/JS/JSTestNamedConstructor.h:

(WebCore::JSTestNamedConstructor::createStructure):
(WebCore::JSTestNamedConstructorPrototype::createStructure):
(WebCore::JSTestNamedConstructorConstructor::createStructure):
(WebCore::JSTestNamedConstructorNamedConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestNode.cpp:

(WebCore::JSTestNodeConstructor::finishCreation):
(WebCore::JSTestNode::finishCreation):
(WebCore::JSTestNode::getOwnPropertySlot):
(WebCore::JSTestNode::getOwnPropertyDescriptor):
(WebCore::JSTestNode::visitChildren):

  • bindings/scripts/test/JS/JSTestNode.h:

(WebCore::JSTestNode::createStructure):
(WebCore::JSTestNodePrototype::createStructure):
(WebCore::JSTestNodeConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjConstructor::finishCreation):
(WebCore::JSTestObj::finishCreation):
(WebCore::JSTestObj::getOwnPropertySlot):
(WebCore::JSTestObj::getOwnPropertyDescriptor):
(WebCore::JSTestObj::put):
(WebCore::jsTestObjPrototypeFunctionVoidMethod):
(WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionByteMethod):
(WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionOctetMethod):
(WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionLongMethod):
(WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionObjMethod):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
(WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
(WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
(WebCore::jsTestObjPrototypeFunctionSerializedValue):
(WebCore::jsTestObjPrototypeFunctionOptionsObject):
(WebCore::jsTestObjPrototypeFunctionMethodWithException):
(WebCore::jsTestObjPrototypeFunctionCustomMethod):
(WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionAddEventListener):
(WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateVoid):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateObj):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptState):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateWithSpaces):
(WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsUndefined):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsNullString):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod1):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod2):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod9):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod11):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
(WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
(WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
(WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
(WebCore::jsTestObjPrototypeFunctionConvert1):
(WebCore::jsTestObjPrototypeFunctionConvert2):
(WebCore::jsTestObjPrototypeFunctionConvert4):
(WebCore::jsTestObjPrototypeFunctionConvert5):
(WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionOrange):
(WebCore::jsTestObjPrototypeFunctionStrictFunction):
(WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
(WebCore::JSTestObj::visitChildren):
(WebCore::toTestObj):

  • bindings/scripts/test/JS/JSTestObj.h:

(WebCore::JSTestObj::createStructure):
(WebCore::JSTestObjPrototype::createStructure):
(WebCore::JSTestObjConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:

(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors):
(WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
(WebCore::JSTestOverloadedConstructors::finishCreation):
(WebCore::JSTestOverloadedConstructors::getOwnPropertySlot):
(WebCore::JSTestOverloadedConstructors::getOwnPropertyDescriptor):
(WebCore::toTestOverloadedConstructors):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:

(WebCore::JSTestOverloadedConstructors::createStructure):
(WebCore::JSTestOverloadedConstructorsPrototype::createStructure):
(WebCore::JSTestOverloadedConstructorsConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
(WebCore::JSTestSerializedScriptValueInterface::finishCreation):
(WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
(WebCore::JSTestSerializedScriptValueInterface::getOwnPropertyDescriptor):
(WebCore::JSTestSerializedScriptValueInterface::put):
(WebCore::JSTestSerializedScriptValueInterface::visitChildren):
(WebCore::toTestSerializedScriptValueInterface):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:

(WebCore::JSTestSerializedScriptValueInterface::createStructure):
(WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::JSTestTypedefsConstructor::finishCreation):
(WebCore::JSTestTypedefs::finishCreation):
(WebCore::JSTestTypedefs::getOwnPropertySlot):
(WebCore::JSTestTypedefs::getOwnPropertyDescriptor):
(WebCore::JSTestTypedefs::put):
(WebCore::jsTestTypedefsPrototypeFunctionFunc):
(WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestTypedefsPrototypeFunctionNullableArrayArg):
(WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
(WebCore::jsTestTypedefsPrototypeFunctionImmutablePointFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction2):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithException):
(WebCore::toTestTypedefs):

  • bindings/scripts/test/JS/JSTestTypedefs.h:

(WebCore::JSTestTypedefs::createStructure):
(WebCore::JSTestTypedefsPrototype::createStructure):
(WebCore::JSTestTypedefsConstructor::createStructure):

  • bridge/c/CRuntimeObject.cpp:

(JSC::Bindings::CRuntimeObject::finishCreation):

  • bridge/c/CRuntimeObject.h:

(JSC::Bindings::CRuntimeObject::createStructure):

  • bridge/c/c_instance.cpp:

(JSC::Bindings::CRuntimeMethod::createStructure):
(JSC::Bindings::CRuntimeMethod::finishCreation):
(JSC::Bindings::CInstance::invokeMethod):

  • bridge/c/c_utility.cpp:

(JSC::Bindings::convertValueToNPVariant):

  • bridge/objc/ObjCRuntimeObject.h:

(JSC::Bindings::ObjCRuntimeObject::createStructure):

  • bridge/objc/objc_instance.mm:

(ObjCRuntimeMethod::finishCreation):
(ObjcInstance::invokeMethod):

  • bridge/objc/objc_runtime.h:

(JSC::Bindings::ObjcFallbackObjectImp::createStructure):

  • bridge/objc/objc_runtime.mm:

(JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
(JSC::Bindings::callObjCFallbackObject):

  • bridge/qt/qt_instance.cpp:

(JSC::Bindings::QtRuntimeObject::createStructure):
(JSC::Bindings::QtInstance::getInstance):

  • bridge/qt/qt_pixmapruntime.cpp:

(JSC::Bindings::assignToHTMLImageElement):
(JSC::Bindings::QtPixmapRuntime::toQt):

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::isJSUint8Array):
(JSC::Bindings::isJSArray):
(JSC::Bindings::isJSDate):
(JSC::Bindings::isQtObject):
(JSC::Bindings::unwrapBoxedPrimitive):
(JSC::Bindings::convertQVariantToValue):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::finishCreation):

  • bridge/runtime_array.h:

(JSC::RuntimeArray::createStructure):

  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::finishCreation):
(JSC::callRuntimeMethod):

  • bridge/runtime_method.h:

(JSC::RuntimeMethod::createStructure):

  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::finishCreation):
(JSC::Bindings::callRuntimeObject):
(JSC::Bindings::callRuntimeConstructor):

  • bridge/runtime_object.h:

(JSC::Bindings::RuntimeObject::createStructure):

Source/WebKit/mac:

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::getObjectID):
(WebKit::NetscapePluginInstanceProxy::retainLocalObject):
(WebKit::NetscapePluginInstanceProxy::releaseLocalObject):

  • Plugins/Hosted/ProxyInstance.mm:

(WebKit::ProxyRuntimeMethod::finishCreation):
(WebKit::ProxyInstance::invokeMethod):

  • Plugins/Hosted/ProxyRuntimeObject.h:

(WebKit::ProxyRuntimeObject::createStructure):

  • WebView/WebView.mm:

(aeDescFromJSValue):

Source/WebKit/qt:

  • Api/qwebelement.cpp:

(convertJSValueToWebElementVariant):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(convertJSValueToNodeVariant):

7:16 PM Changeset in webkit [154037] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION(r150187): Safari fails to render allrecipe.com comment popups
https://bugs.webkit.org/show_bug.cgi?id=119780

Reviewed by Benjamin Poulain.

Source/WebCore:

The bug was caused by SelectorDataList::executeFastPathForIdSelector not verifying that
elements found by getAllElementsById are descendents of rootNode when there are multiple
elements of the same id. This resulted in querySelector and querySelectorAll of an element
returning nodes outside of the element.

Fixed the bug by checking this condition when we have multiple elements of the same id.

Test: fast/selectors/querySelector-id-with-multiple-elements-with-same-id.html

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::executeFastPathForIdSelector):

LayoutTests:

  • fast/selectors/querySelector-id-with-multiple-elements-with-same-id-expected.txt: Added.
  • fast/selectors/querySelector-id-with-multiple-elements-with-same-id.html: Added.
6:44 PM Changeset in webkit [154036] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix orphan needsLayout state in RenderTextControlSingleLine
https://bugs.webkit.org/show_bug.cgi?id=119726

Reviewed by Kent Tamura.

Merge https://chromium.googlesource.com/chromium/blink/+/c0aec52ef348b2be0c882f8646fe3cf537831f59

We should mark the renderer for containerElement, which wraps innerTextElement and innerBlockElement
in cases of input[type=search] and input[type=number], dirty.

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::setNeedsLayoutOnAncestors):
(WebCore::RenderTextControlSingleLine::layout):

6:21 PM Changeset in webkit [154035] by weinig@apple.com
  • 21 edits
    1 delete in trunk

[Re-land] Cleanup MediaQueryListListener
https://bugs.webkit.org/show_bug.cgi?id=119664

Reviewed by Andreas Kling.

Source/WebCore:

Make MediaQueryListListener a proper WebIDL callback.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:

Update project files.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(JSValueToNative):

  • bindings/scripts/IDLAttributes.txt:

Add support for CallbackNeedsOperatorEqual, which adds an operator==.

  • css/MediaAllInOne.cpp:

Remove MediaQueryListListener.cpp.

  • css/MediaQueryListListener.cpp:

Removed.

  • css/MediaQueryListListener.h:

(WebCore::MediaQueryListListener::~MediaQueryListListener):
(WebCore::MediaQueryListListener::MediaQueryListListener):

  • css/MediaQueryListListener.idl:

Convert to a proper WebIDL callback.

  • css/MediaQueryMatcher.cpp:

(WebCore::MediaQueryMatcher::Listener::evaluate):
(WebCore::MediaQueryMatcher::styleResolverChanged):

  • css/MediaQueryMatcher.h:

Remove all traces of the ScriptState.

LayoutTests:

  • fast/media/media-query-list-07-expected.txt:
  • fast/media/media-query-list-07.html:
  • platform/mac/TestExpectations:

Update test to reflect that we are supposed to throw exceptions when when not passing a callback
object to addListener/removeListener. Also update the test to use the internals interface that is
supported by more ports.

6:01 PM Changeset in webkit [154034] by dino@apple.com
  • 3 edits
    1 add in trunk/Source/WebInspectorUI

<https://webkit.org/b/119778> Add Canvas protocol observer

Reviewed by Joseph Pecoraro.

  • UserInterface/CanvasObserver.js: New empty CanvasObserver object.

(WebInspector.CanvasObserver):
(WebInspector.CanvasObserver.prototype.contextCreated):
(WebInspector.CanvasObserver.prototype.traceLogsRemoved):

  • UserInterface/Main.html:
  • UserInterface/Main.js:

(WebInspector.loaded):

5:58 PM Changeset in webkit [154033] by dino@apple.com
  • 4 edits in trunk/Source/WebCore

<https://webkit.org/b/119776> Don't use ScriptProfiler to find canvases for instrumentation

Reviewed by Joseph Pecoraro.

InspectorCanvasAgent::findFramesWithUninstrumentedCanvases uses a ScriptProfiler to walk the tree
looking for canvas elements. This is currently not implemented in JSC, but we can do this directly
with DOM methods. We're only looking for Canvas elements that have a context, so there isn't a need
for this abstract walking object.

  • html/HTMLCanvasElement.h: Add new helpers to cast to <canvas>.

(WebCore::isHTMLCanvasElement):
(WebCore::toHTMLCanvasElement):

  • inspector/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::findFramesWithUninstrumentedCanvases): Simply walk
the frame tree and use getElementsByTagName to find canvas elements.

  • bindings/js/bindings/js/ScriptProfiler.h: Removed unused method.
5:51 PM Changeset in webkit [154032] by commit-queue@webkit.org
  • 6 edits in trunk/Source

[WTF] [JSC] Replace currentTime() with monotonicallyIncreasingTime() in all possible places
https://bugs.webkit.org/show_bug.cgi?id=119762

Patch by Arunprasad Rajkumar <arurajku@cisco.com> on 2013-08-13
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::markRoots):
(JSC::Heap::collect):

  • jsc.cpp:

(StopWatch::start):
(StopWatch::stop):

  • testRegExp.cpp:

(StopWatch::start):
(StopWatch::stop):

Source/WTF:

  • wtf/MainThread.cpp:

(WTF::dispatchFunctionsFromMainThread):

5:12 PM Changeset in webkit [154031] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

<https://webkit.org/b/119777> Get rid of two gotos

Reviewed by Tim Horton.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView mouseDown:]):
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):

4:37 PM Changeset in webkit [154030] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

[Windows] Windows is incorrectly using a LayerTypeTiledBackingLayer
https://bugs.webkit.org/show_bug.cgi?id=119772

Reviewed by Simon Fraser.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Ensure that we use
the correct (supported) tiled layer type for Windows.

  • platform/graphics/ca/win/PlatformCALayerWin.cpp:

(PlatformCALayer::PlatformCALayer): Add an assertion to notify us if
we introduce this mistake again in the future.

3:51 PM Changeset in webkit [154029] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] WebPage doesn't zoom to fit viewport after being rotated from landscape to portrait mode
https://bugs.webkit.org/show_bug.cgi?id=119754

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-08-13
Reviewed by Rob Buis.
Internally reviewed by Konrad Piascik.

JIRA 470951
In this case, zoomToFitWidthScale(currentScale) = viewportWidth / contentsWidth
which was 2.6666666666666665, initialScale = ((viewportWidth / devicePixelRatio)
/ contentsWidth) * devicePixelRatio which was 2.6666665077209473. When
rotating the device from landscape to portrait, m_webPage->isAtInitialZoom()
was false in setViewportSize() because of the floating-point rounding error
above so that we had to use the scale of the previous rotation WebPage
which was too large for the current rotation WebPage.
Ignore the floating-point rounding error in isAtInitialZoom() so that we
can use initialScale of the current rotation WebPage as the scale and also
we should do it for isMaxZoomed() and isMinZoomed() as well. Please note
that we can not use FLT_EPSILON here as it's 1E-7 on our platform.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::initialScale):
(BlackBerry::WebKit::WebPage::isMaxZoomed):
(BlackBerry::WebKit::WebPage::isMinZoomed):
(BlackBerry::WebKit::WebPage::isAtInitialZoom):

3:50 PM Changeset in webkit [154028] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

<https://webkit.org/b/119771> Use NeverDestroyed for smart pointer slot static locals

Reviewed by Andreas Kling.

This is preparation for making it a hard error to use DEFINE_STATIC_LOCAL with smart pointer types.

  • dom/UserTypingGestureIndicator.cpp:

(WebCore::focusedNode):

  • page/mac/EventHandlerMac.mm:

(WebCore::currentNSEventSlot):

  • platform/network/cf/NetworkStorageSessionCFNet.cpp:

(WebCore::defaultNetworkStorageSession):
(WebCore::cookieStorageOverride):

3:48 PM Changeset in webkit [154027] by ap@apple.com
  • 2 edits in trunk/Tools

[Mac] fast/dom/attr-style-too-lazy.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=119763

Reviewed by Darin Adler.

  • DumpRenderTree/mac/UIDelegate.mm:

(-[UIDelegate webView:setStatusText:]): Don't dump anything when not running
a test, it would just semi-randomly leak to the next one.
(-[UIDelegate webView:didPressMissingPluginButton:]): Added same check here, just
for good measure.

3:47 PM Changeset in webkit [154026] by timothy_horton@apple.com
  • 3 edits in trunk/Tools

[mac] Give MiniBrowser a reasonable bundle identifier
https://bugs.webkit.org/show_bug.cgi?id=119773

Rubber-stamped by Simon Fraser.

Give MiniBrowser the bundle identifier org.webkit.MiniBrowser.

  • MiniBrowser/mac/Info.plist:
  • MiniBrowser/mac/WebBundle/Info.plist:
3:15 PM Changeset in webkit [154025] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

[sh4] Prepare LLINT for DFG_JIT implementation.
https://bugs.webkit.org/show_bug.cgi?id=119755

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-13
Reviewed by Oliver Hunt.

  • LLIntOffsetsExtractor.pro: Add sh4.rb dependency.
  • offlineasm/sh4.rb:
    • Handle storeb opcode.
    • Make relative jumps when possible using braf opcode.
    • Update bmulio implementation to be consistent with baseline JIT.
    • Remove useless code from leap opcode.
    • Fix incorrect comment.
3:08 PM Changeset in webkit [154024] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Removed a bogus comment that didn't have any bugs after it.

  • platform/mac/TestExpectations:
2:47 PM ExportingSymbols edited by roger_fong@apple.com
(diff)
2:42 PM Changeset in webkit [154023] by andersca@apple.com
  • 12 edits in trunk/Source/WebCore

Stop using DEFINE_STATIC_LOCAL with RefPtr
https://bugs.webkit.org/show_bug.cgi?id=119769

Reviewed by Andreas Kling.

No need to waste heap memory allocating RefPtr, just store the raw pointers directly.

  • dom/ContextFeatures.cpp:

(WebCore::ContextFeatures::defaultSwitch):

  • dom/DocumentMarker.cpp:

(WebCore::DocumentMarkerTextMatch::instanceFor):

  • editing/EditingStyle.cpp:

(WebCore::StyleChange::extractTextStyles):

  • html/FTPDirectoryDocument.cpp:

(WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):

  • html/track/TextTrack.cpp:

(WebCore::TextTrack::captionMenuOffItem):
(WebCore::TextTrack::captionMenuAutomaticItem):

  • loader/icon/IconDatabase.cpp:

(WebCore::loadDefaultIconRecord):

  • platform/graphics/Image.cpp:

(WebCore::Image::nullImage):

  • platform/graphics/PlatformTextTrack.h:

(WebCore::PlatformTextTrack::captionMenuOffItem):
(WebCore::PlatformTextTrack::captionMenuAutomaticItem):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::initialShapeInside):

  • testing/MockCDM.cpp:

(WebCore::initDataPrefix):
(WebCore::keyPrefix):
(WebCore::keyRequest):

2:12 PM Changeset in webkit [154022] by dino@apple.com
  • 2 edits in trunk/Tools

<https://webkit.org/b/119766> Make bug url more human friendly in ChangeLog

Reviewed by Mark Rowe.

Have prepare-ChangeLog produce webkit.org/b/id style
URLs rather than exposing the inner workings of our
cgi. I was going to use the term "Future Proofing"
but that seems excessive :)

  • Scripts/prepare-ChangeLog:

(main): Generate a more human readable form.
(generateNewChangeLogs): Use it when printing out the ChangeLog entry.

1:58 PM Changeset in webkit [154021] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Stop using DEFINE_STATIC_LOCAL with RetainPtr
https://bugs.webkit.org/show_bug.cgi?id=119765

Reviewed by Jessie Berlin.

No need to waste heap memory allocating RetainPtrs, just store the raw pointers directly.

  • platform/graphics/mac/ColorMac.mm:

(WebCore::nsColor):

  • platform/graphics/mac/GraphicsContextMac.mm:

(WebCore::makePatternColor):
(WebCore::GraphicsContext::drawLineForDocumentMarker):

  • platform/graphics/mac/SimpleFontDataMac.mm:

(WebCore::webFallbackFontFamily):

1:54 PM Changeset in webkit [154020] by commit-queue@webkit.org
  • 19 edits
    1 copy in trunk/Source/WebCore

Unreviewed, rolling out r153925.
http://trac.webkit.org/changeset/153925
https://bugs.webkit.org/show_bug.cgi?id=119768

broke fast/media/media-query-list-07.html (Requested by kling
on #webkit).

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(JSValueToNative):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/test/JS/JSTestCallback.cpp:

(WebCore::JSTestCallback::JSTestCallback):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):

  • css/MediaAllInOne.cpp:
  • css/MediaQueryListListener.cpp: Copied from Source/WebCore/css/MediaQueryListListener.idl.

(WebCore::MediaQueryListListener::queryChanged):

  • css/MediaQueryListListener.h:

(WebCore::MediaQueryListListener::create):
(WebCore::MediaQueryListListener::operator==):
(WebCore::MediaQueryListListener::MediaQueryListListener):

  • css/MediaQueryListListener.idl:
  • css/MediaQueryMatcher.cpp:

(WebCore::MediaQueryMatcher::Listener::evaluate):
(WebCore::MediaQueryMatcher::styleResolverChanged):

  • css/MediaQueryMatcher.h:
1:33 PM Changeset in webkit [154019] by timothy_horton@apple.com
  • 10 edits in trunk/Source/WebKit/mac

Remotely hosted plugins don’t work in window-server-hosted WebKit1 views
https://bugs.webkit.org/show_bug.cgi?id=119709
<rdar://problem/14717572>

Reviewed by Anders Carlsson.

  • Plugins/Hosted/NetscapePluginHostManager.h:

Add hostLayersInWindowServer argument to instantiatePlugin.

  • Plugins/Hosted/NetscapePluginHostManager.mm:

(WebKit::NetscapePluginHostManager::instantiatePlugin):
Add hostLayersInWindowServer argument to instantiatePlugin, and pass it through to WebKitPluginHost.

  • Plugins/Hosted/NetscapePluginHostProxy.mm:

(WKPCLayerHostingModeChanged):
Forward the notification that the plugin host changed its layer hosting mode
to the instance proxy.

  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::setShouldHostLayersInWindowServer):
Ask the plugin host to re-host its layers when the layer hosting mode changes.

(WebKit::NetscapePluginInstanceProxy::layerHostingModeChanged):
Inform the WebHostedNetscapePluginView of the new layer hosting mode
when it changes. Also, store the new CAContext ID.

  • Plugins/Hosted/WebHostedNetscapePluginView.h:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm:

(-[WebHostedNetscapePluginView windowHostsLayersInWindowServer]):
Determine whether the WebView's current window uses window-server hosting for its layers.

(-[WebHostedNetscapePluginView createPlugin]):
Drive-by spelling fix.
Factor _pluginLayer initialization out into createPluginLayer.
Instantiate the plugin with the appropriate layer hosting mode.

(-[WebHostedNetscapePluginView createPluginLayer]):

(-[WebHostedNetscapePluginView setHostsLayersInWindowServer:]):
Create a new _pluginLayer if the layer hosting mode changes.
Attach the new _pluginLayer to our parent layer.

(-[WebHostedNetscapePluginView updateAndSetWindow]):
Inform the NetscapePluginInstanceProxy if the layer hosting mode changes,
so it can inform the plugin host. We will asynchronously receive a reply
with the new hosting mode and renderContextID and switch to the new CAContext,
in setHostsLayersInWindowServer:.

  • Plugins/Hosted/WebKitPluginClient.defs:
  • Plugins/Hosted/WebKitPluginHost.defs:
1:31 PM BuildingCairoOnWindows edited by bfulgham@webkit.org
(diff)
1:18 PM Changeset in webkit [154018] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Every scroll causes additional layer tree work because of flatteningLayer->removeFromParent();
https://bugs.webkit.org/show_bug.cgi?id=119551

Reviewed by Dean Jackson.

Only re-parent the flattening layer if we had to update our
layer configuration (reparenting is necessary then to get
the correct sibling ordering), or if it was parented in some
other layer.

This avoid unnecessary flushing of state to CA.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):

1:07 PM Changeset in webkit [154017] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION(r139282): Old caret sometimes gets "stuck" (not repainted) in contenteditable elements.
https://bugs.webkit.org/show_bug.cgi?id=119520

  • fast/repaint/caret-jump-between-nodes-expected.txt: Test was failing everywhere. Landing current Mac results to make bots greener, but Andreas should take a look at fixing the test.
11:59 AM Changeset in webkit [154016] by commit-queue@webkit.org
  • 7 edits in trunk/Source/JavaScriptCore

[sh4] Prepare baseline JIT for DFG_JIT implementation.
https://bugs.webkit.org/show_bug.cgi?id=119758

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-13
Reviewed by Oliver Hunt.

  • assembler/MacroAssemblerSH4.h:
    • Introduce a loadEffectiveAddress function to avoid code duplication.
    • Add ASSERTs and clean code.
  • assembler/SH4Assembler.h:
    • Prepare DFG_JIT implementation.
    • Add ASSERTs.
  • jit/JITStubs.cpp:
    • Add SH4 specific call for assertions.
  • jit/JITStubs.h:
    • Cosmetic change.
  • jit/JITStubsSH4.h:
    • Use constants to be more flexible with sh4 JIT stack frame.
  • jit/JSInterfaceJIT.h:
    • Cosmetic change.
11:54 AM Changeset in webkit [154015] by Simon Fraser
  • 4 edits in trunk/WebKitLibraries

Various media tests spew "CGContextScaleCTM: invalid context 0x0" errors
https://bugs.webkit.org/show_bug.cgi?id=119490

New versions of WKSI that fix a bug that caused spew about null CGContexts,
and update WebKitSystemInterface.h.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:
11:51 AM WebKitGTK/2.0.x edited by berto@igalia.com
(diff)
11:50 AM Changeset in webkit [154014] by berto@igalia.com
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] Closing inspector window crashes wk
https://bugs.webkit.org/show_bug.cgi?id=110865

Reviewed by Carlos Garcia Campos.

The previous fix for the inspector window crash breaks some unit
tests. This one goes back to the original code and only moves the
actual deletion of priv->corePage to the end of the function.

  • webkit/webkitwebview.cpp:

(webkit_web_view_dispose):

11:07 AM Changeset in webkit [154013] by robert@webkit.org
  • 3 edits
    2 adds in trunk

Section's collapsed borders painted in wrong place in rtl tables
https://bugs.webkit.org/show_bug.cgi?id=119691

Reviewed by Darin Adler.

Source/WebCore:

Table row-groups can be RTL too, so look to the section rather than the
table when deciding the direction of a row. The section will inherit the
table's direction if it doesn't override it.

Test: fast/table/paint-collapsed-borders-rtl-section.html

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::hasStartBorderAdjoiningTable):
(WebCore::RenderTableCell::hasEndBorderAdjoiningTable):

LayoutTests:

  • fast/table/paint-collapsed-borders-rtl-section-expected.html: Added.
  • fast/table/paint-collapsed-borders-rtl-section.html: Added.
10:58 AM Changeset in webkit [154012] by Christophe Dumez
  • 5 edits
    2 adds in trunk

NodeList.item() does not behave according to specification
https://bugs.webkit.org/show_bug.cgi?id=119722

Reviewed by Darin Adler.

Source/WebCore:

Make NodeList.item() indexed getter behave according to specification:
http://dom.spec.whatwg.org/#nodelist

Namely, we no longer throw if the index is negative (meaning the
[IsIndex] extended attribute is dropped) and the argument is now
mandatory.

This behavior is consistent with both IE10 and Firefox and since
recently Blink.

Test: fast/dom/nodelist-item-parameter.html

  • dom/NodeList.idl:

LayoutTests:

Add a layout test to check that the NodeList.item() indexed getter's
argument is properly validated. Also, update the following test case now
that the argument is mandatory:
fast/dom/non-numeric-values-numeric-parameters.html

  • fast/dom/nodelist-item-parameter-expected.txt: Added.
  • fast/dom/nodelist-item-parameter.html: Added.
  • fast/dom/non-numeric-values-numeric-parameters-expected.txt:
  • fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
10:49 AM Changeset in webkit [154011] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Harden executeConstruct against incorrect return types from host functions
https://bugs.webkit.org/show_bug.cgi?id=119757

Reviewed by Mark Hahnenberg.

Add logic to guard against bogus return types. There doesn't seem to be any
class in webkit that does this wrong, but the typed array stubs in debug JSC
do exhibit this bad behaviour.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::executeConstruct):

10:49 AM Changeset in webkit [154010] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix build.

  • WebCore.exp.in:
10:08 AM Changeset in webkit [154009] by allan.jensen@digia.com
  • 13 edits
    2 adds in trunk

REGRESSION(SUBPIXEL_LAYOUT) Composited layers can cause one pixel shifts
https://bugs.webkit.org/show_bug.cgi?id=115304

Reviewed by David Hyatt.

Source/WebCore:

Accelerated layers can cause blocks at subpixel offsets to shift because
accumulated subpixel offsets are lost between each layers.

To solve this layer bounds are now calculated in LayoutUnits, and their
subpixel offset saved so it can be used to ensure correct pixel-snapping
during painting.

Test: fast/sub-pixel/sub-pixel-composited-layers.html

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

(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):

  • platform/graphics/LayoutPoint.h:

(WebCore::LayoutPoint::fraction):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::setupFilters):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::calculateLayerBounds):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateAfterWidgetResize):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::resetContentsRect):
(WebCore::RenderLayerBacking::contentOffsetInCompostingLayer):
(WebCore::RenderLayerBacking::contentsBox):
(WebCore::RenderLayerBacking::backgroundBox):
(WebCore::RenderLayerBacking::paintIntoLayer):
(WebCore::RenderLayerBacking::paintContents):
(WebCore::RenderLayerBacking::compositedBounds):
(WebCore::RenderLayerBacking::setCompositedBounds):

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::logLayerInfo):
(WebCore::RenderLayerCompositor::calculateCompositedBounds):

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderTreeAsText.cpp:

(WebCore::operator<<):

  • rendering/RenderTreeAsText.h:

LayoutTests:

  • fast/sub-pixel/sub-pixel-composited-layers-expected.html: Added.
  • fast/sub-pixel/sub-pixel-composited-layers.html: Added.
9:58 AM Changeset in webkit [154008] by zandobersek@gmail.com
  • 3 edits in trunk

[Autotools] Unicode's CFLAGS enforce -D_FORTIFY_SOURCE=2, -D_REENTRANT=1, causing faulty Clang builds
https://bugs.webkit.org/show_bug.cgi?id=119685

Reviewed by Gustavo Noronha Silva.

icu-config includes '-D_FORTIFY_SOURCE=2 -D_REENTRANT=1' when printing out C preprocessor flags that are used
as the C compiler flags to avoid other unwanted compiler options. This causes problems when building optimized
builds with Clang because of a bug in that compiler:
http://llvm.org/bugs/show_bug.cgi?id=16821

To avoid that, the C preprocessor search flags, as printed by icu-config --cppflags-searchpath are now used
the Unicode dependency's C compiler flags, avoiding unconditionally specifying the two macros.

To adjust for that, the -pthread flag is added to the global CFLAGS and CXXFLAGS variables, ensuring
the _REENTRANT define is set to 1 and declaring the flag globally instead of relying on Glib dependency's
C compiler flags to do so for us. -D_FORTIFY_SOURCE=2 is only added to the CFLAGS and CXXFLAGS variables if
the compiler in use is gcc or g++, preventing the Clang builds to malfunction.

  • Source/autotools/FindDependencies.m4:
  • Source/autotools/SetupCompilerFlags.m4:
9:56 AM Changeset in webkit [154007] by zandobersek@gmail.com
  • 3 edits in trunk

[Autotools] Don't compare $CC, $CXX to exact compiler names
https://bugs.webkit.org/show_bug.cgi?id=119683

Reviewed by Gustavo Noronha Silva.

Instead of comparing $CC and $CXX to exact compiler names (like 'gcc', 'clang++' etc.),
use the compiler version checks to also specify the broader compiler collection of which
the used compiler is a member of. This avoids failures in some border-line cases where
the user would still use either a GCC or a Clang compiler but provide it through a symbolic
link that was specified via the CC/CXX environment variables.

  • Source/autotools/CheckSystemAndBasicDependencies.m4: Store the detected C/C++ compiler collection

in c_compiler/cxx_compiler. Throw an error if no supported compiler was found.

  • Source/autotools/SetupCompilerFlags.m4: Test for a specific compiler by checking against

c_compiler/cxx_compiler rather than CC/CXX values.

9:19 AM Changeset in webkit [154006] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Curl] Possible infinite loop while downloading.
https://bugs.webkit.org/show_bug.cgi?id=119744

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-08-13
Reviewed by Darin Adler.

If adding/removing curl handles fails, the download thread
can end up in an endless loop trying to update the curl handle list.

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownloadManager::updateHandleList): Avoid infinite loop by ignoring return value.

9:18 AM Changeset in webkit [154005] by Christophe Dumez
  • 5 edits
    2 adds in trunk

HTMLSelectElement.item() does not behave according to specification
https://bugs.webkit.org/show_bug.cgi?id=119738

Reviewed by Darin Adler.

Source/WebCore:

Make HTMLSelectElement.item() behave according to specification:
http://www.w3.org/TR/html51/forms.html#dom-select-item
http://dom.spec.whatwg.org/#dom-htmlcollection-item

Namely, we no longer throw if the offset argument is negative. Also,
the argument is now mandatory.

IE10, Firefox and Blink do not throw when HTMLSelectElement.item() is
called with a negative value (as per the specification).

The argument is mandatory in Firefox and Blink, but optional in IE10
(it returns null when called without argument). This looks like a bug
in IE because other item() getters' argument is usually mandatory in IE
(e.g. NodeList.item()).

Test: fast/dom/HTMLSelectElement/select-element-item-argument.html

  • html/HTMLSelectElement.idl:

LayoutTests:

Add a new layout test to check that the HTMLSelectElement.item() indexed getter's
parameter is correctly validated.
Also update fast/dom/non-numeric-values-numeric-parameters.html now that the
argument is mandatory.

  • fast/dom/HTMLSelectElement/select-element-item-argument-expected.txt: Added.
  • fast/dom/HTMLSelectElement/select-element-item-argument.html: Added.
  • fast/dom/non-numeric-values-numeric-parameters-expected.txt:
  • fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
9:16 AM Changeset in webkit [154004] by Christophe Dumez
  • 5 edits
    2 adds in trunk

On request error, always fire events on the XMLHttpRequestUpload before the XMLHttpRequest
https://bugs.webkit.org/show_bug.cgi?id=119714

Reviewed by Alexey Proskuryakov.

Source/WebCore:

On request error, fire events on the XMLHttpRequestUpload object before the XMLHttpRequest
object as per the latest specification:
http://xhr.spec.whatwg.org/#request-error

This specification change was made in Sept 2010:
http://dev.w3.org/cvsweb/2006/webapi/XMLHttpRequest-2/Overview.src.html.diff?r1=1.138;r2=1.139;f=h

It addresses the following comment:
http://lists.w3.org/Archives/Public/public-webapps/2010JulSep/0777.html

IE10 and since recently Blink behave according to specification but WebKit was firing the
events on the XMLHttpRequest object BEFORE the XMLHttpRequestUpload object in case of
'network error' or 'abort error'. WebKit was however behaving according to specification
in case of 'timeout error', which was inconsistent.

Test: http/tests/xmlhttprequest/upload-request-error-event-order.html

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::networkError):
(WebCore::XMLHttpRequest::abortError):

LayoutTests:

Add a layout test to validate the order in which the events are fired in case
of a xhr request error. Also update an existing test which was relying on the
outdated firing order.

  • http/tests/xmlhttprequest/simple-cross-origin-progress-events-expected.txt:
  • http/tests/xmlhttprequest/simple-cross-origin-progress-events.html:
  • http/tests/xmlhttprequest/upload-request-error-event-order-expected.txt: Added.
  • http/tests/xmlhttprequest/upload-request-error-event-order.html: Added.
9:14 AM Changeset in webkit [154003] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

Simplify RadioNodeList's anonymous indexed getter
https://bugs.webkit.org/show_bug.cgi?id=119725

Reviewed by Darin Adler.

Simplify RadioNodeList's anonymous indexed getter by dropping [IsIndex]
IDL extended attribute from its parameter and making it mandatory.

This change has strictly no impact on the generated bindings code
but it simplifies the IDL.

No new test, no behavior change.

  • html/RadioNodeList.idl:
8:28 AM Changeset in webkit [154002] by allan.jensen@digia.com
  • 2 edits in trunk/Source/JavaScriptCore

[Qt] Fix C++11 build with gcc 4.4 and 4.5
https://bugs.webkit.org/show_bug.cgi?id=119736

Reviewed by Anders Carlsson.

Don't force C++11 mode off anymore.

  • Target.pri:
7:44 AM Changeset in webkit [154001] by rakuco@webkit.org
  • 2 edits in trunk/Tools

[EFL][DRT] Simplify call to reverseFind()
https://bugs.webkit.org/show_bug.cgi?id=119746

Reviewed by Christophe Dumez.

Follow-up to r153977.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(pathSuitableForTestResult): Instead of defining a static variable
that's only used in a single place, pass '/' to reverseFind() directly.

6:14 AM Changeset in webkit [154000] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GTK] close the volume slider when the media control panel is hidden
https://bugs.webkit.org/show_bug.cgi?id=119062

Patch by Danilo Cesar Lemes de Paula <danilo.cesar@collabora.co.uk> on 2013-08-13
Reviewed by Gustavo Noronha Silva.

It's not obvious how to close the volume slider on webkitGtk.
The volume slider should close if the control panel is hidden.

  • html/shadow/MediaControlsGtk.cpp:

(WebCore::MediaControlsGtk::makeTransparent):

  • html/shadow/MediaControlsGtk.h:
5:18 AM Changeset in webkit [153999] by zarvai@inf.u-szeged.hu
  • 4 edits
    2 adds
    2 deletes in trunk/LayoutTests

[Qt] Unreviewed gardening. Rebase tests after r153901 and r153915. Skip failing tests.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-08-13

  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt-5.0-wk2/svg/W3C-SVG-1.1/struct-dom-03-b-expected.png: Removed.
  • platform/qt-5.0/http/tests/security/xss-DENIED-xsl-document-redirect-expected.txt: Removed.
  • platform/qt/TestExpectations:
  • platform/qt/http/tests/security/xss-DENIED-xsl-document-redirect-expected.txt: Added.
  • platform/qt/svg/W3C-SVG-1.1/struct-dom-03-b-expected.png:
  • platform/qt/svg/W3C-SVG-1.1/struct-dom-03-b-expected.txt: Added.
5:14 AM Changeset in webkit [153998] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r152563.
http://trac.webkit.org/changeset/152563
https://bugs.webkit.org/show_bug.cgi?id=119740

causes random crashes (Requested by carewolf on #webkit).

  • platform/graphics/qt/FontCacheQt.cpp:

(WebCore::FontCache::getLastResortFallbackFont):

2:16 AM Changeset in webkit [153997] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Simplify test failure expectations to remove various lint failures,

also removing a couple of expectations for tests that are passing in the process.

2:05 AM Changeset in webkit [153996] by zandobersek@gmail.com
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/fast/repaint/caret-jump-between-nodes-expected.txt: Added. Rebaselining after r153815.
  • platform/gtk/svg/W3C-SVG-1.1/struct-dom-03-b-expected.png: Rebaselining after r153901.
  • platform/gtk/svg/W3C-SVG-1.1/struct-dom-03-b-expected.txt: Ditto.
2:00 AM Changeset in webkit [153995] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Add failure expectations for various failing tests.
1:38 AM Changeset in webkit [153994] by zarvai@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skipping new fails.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-08-13

  • platform/qt-5.0-wk1/TestExpectations:
  • platform/qt/TestExpectations:
1:32 AM Changeset in webkit [153993] by abucur@adobe.com
  • 2 edits in trunk/Source/WebCore

Unreviewed.

Fix the build after http://trac.webkit.org/changeset/153990.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateShapesBeforeBlockLayout): Add the default return value if CSS Shapes are disabled.

1:15 AM Changeset in webkit [153992] by a.bah@samsung.com
  • 1 edit
    2 adds in trunk/LayoutTests

Adding testcase for verifying editing behavior for up/down caret movement between lines.
https://bugs.webkit.org/show_bug.cgi?id=119511

Reviewed by Ryosuke Niwa.

  • editing/selection/verify-editing-behavior-for-line-granularity-expected.txt: Added.
  • editing/selection/verify-editing-behavior-for-line-granularity.html: Added.

Layout testcase added for verifying that the up/down caret movement between
lines is similar to the default text editor behavior on various platforms.

12:57 AM WebKitGTK/2.0.x edited by berto@igalia.com
(diff)
12:53 AM Changeset in webkit [153991] by berto@igalia.com
  • 4 edits in trunk

[GTK] Closing inspector window crashes wk
https://bugs.webkit.org/show_bug.cgi?id=110865

Reviewed by Carlos Garcia Campos.

Source/WebKit/gtk:

Deleting priv->corePage during the destruction of a webView will
trigger the deletion of InspectorFrontendClient. However that
object is supposed to handle the webView's destroy signal first in
order to do the necessary cleanup.

The solution is to wait until webkit_web_view_dispose finishes
before deleting priv->corePage.

  • webkit/webkitwebview.cpp:

(webkit_web_view_dispose):

Tools:

Disconnect all signal handlers if the inspector window is
destroyed.

  • GtkLauncher/LauncherInspectorWindow.c:

(inspectorWindowDestroyed):
(launcherInspectorWindowNew):

12:44 AM Changeset in webkit [153990] by abucur@adobe.com
  • 16 edits
    2 copies
    4 adds in trunk

[CSS Regions] Compute correct region ranges for boxes
https://bugs.webkit.org/show_bug.cgi?id=116296

Reviewed by David Hyatt.

Source/WebCore:

The patch extends the region ranges implementation with the following behavior:

  • the range of a box is always included in the range of its containing block (even for floats); this will simplify how overflow

is propagated to the regions and it should later change on a case by case basis.

  • if the range of a box is not correctly estimated before the layout it will be marked for relayout; this is necessary to correctly

position boxes that overflow naturally, like floats.

  • all the boxes have a range now, not only the blocks.
  • regionAtBlockOffset can clamp to a box.
  • an unsplittable box has a region range of a single region, the one where the box top falls into.

When the layout of a child box starts it tries to give an estimate based on the maximal height of the box. After the layout,
if the estimation was wrong, the box is relaid out. For example, if a block with a float is laid out in a region but the float
overflows in the next region a relayout is needed for the float so it can be positioned relative to the containing block
region (this step can be optimized by making a layout pass only for the children that don't have the region range enclosed in the
containing block range).

Tests: fast/regions/bottom-overflow-out-of-first-region-absolute.html

fast/regions/float-pushed-width-change-2.html
fast/regions/scrollable-paragraph-unsplittable.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateShapesBeforeBlockLayout): Doesn't do anything for regions now.
(WebCore::RenderBlock::updateShapesAfterBlockLayout): Doesn't do anything for regions now.
(WebCore::RenderBlock::relayoutToAvoidWidows): The layout to avoid widows. Widows use the line index to determine the break point,
not the RootLineBox pointer as before. This is necessary to prevent stale pointers in further layouts.
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::markForPaginationRelayoutIfNeeded): Relayout for widows during layoutBlock(). Don't wait to exit the block layout.
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::hasNextPage):
(WebCore::RenderBlock::applyBeforeBreak):
(WebCore::RenderBlock::applyAfterBreak):
(WebCore::RenderBlock::setPageBreak):
(WebCore::RenderBlock::updateMinimumPageHeight):
(WebCore::RenderBlock::regionAtBlockOffset): This function can now clamp at a box.
(WebCore::RenderBlock::computeRegionRangeForBoxChild): Calculate the box region range using the box height.
(WebCore::RenderBlock::estimateRegionRangeForBoxChild): Estimate the box region range using a huge height for the box.
(WebCore::RenderBlock::updateRegionRangeForBoxChild): Determine the final region range of a box.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::logicalWidthForChild):
(WebCore::RenderBlock::logicalHeightForChild):
(WebCore::RenderBlock::logicalTopForChild):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutInlineChildren):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::clampToStartAndEndRegions):
(WebCore::RenderBox::borderBoxRectInRegion):

  • rendering/RenderBox.h:
  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::validateRegions):
(WebCore::RenderFlowThread::regionAtBlockOffset):
(WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent):
(WebCore::RenderFlowThread::pageLogicalTopForOffset):
(WebCore::RenderFlowThread::pageLogicalWidthForOffset):
(WebCore::RenderFlowThread::pageLogicalHeightForOffset):
(WebCore::RenderFlowThread::pageRemainingLogicalHeightForOffset):
(WebCore::RenderFlowThread::mapFromFlowToRegion):
(WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):
(WebCore::RenderFlowThread::clearRenderObjectCustomStyle):
(WebCore::RenderFlowThread::clearRenderBoxRegionInfoAndCustomStyle):
(WebCore::RenderFlowThread::setRegionRangeForBox):
(WebCore::RenderFlowThread::applyBreakAfterContent):
(WebCore::RenderFlowThread::addForcedRegionBreak):

  • rendering/RenderFlowThread.h:
  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutBlock):

  • rendering/RenderMultiColumnFlowThread.cpp:

(WebCore::RenderMultiColumnFlowThread::setPageBreak):
(WebCore::RenderMultiColumnFlowThread::updateMinimumPageHeight):

  • rendering/RenderMultiColumnFlowThread.h:

LayoutTests:

Tests for the changes in how region ranges are computed and applied.

  • fast/regions/bottom-overflow-out-of-first-region-absolute-expected.html: Added.
  • fast/regions/bottom-overflow-out-of-first-region-absolute.html: Added.
  • fast/regions/float-pushed-width-change-2-expected.html: Copied from LayoutTests/fast/regions/float-pushed-width-change-expected.html.
  • fast/regions/float-pushed-width-change-2.html: Copied from LayoutTests/fast/regions/float-pushed-width-change.html.
  • fast/regions/float-pushed-width-change-expected.html:
  • fast/regions/float-pushed-width-change.html:
  • fast/regions/scrollable-paragraph-unsplittable-expected.html: Added.
  • fast/regions/scrollable-paragraph-unsplittable.html: Added.
12:19 AM Changeset in webkit [153989] by zandobersek@gmail.com
  • 4 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/editing/caret/caret-color-expected.txt: Rebaselining after r152612.
  • platform/gtk/fast/js/dom-static-property-for-in-iteration-expected.txt: Rebaselining after r153772.
  • platform/gtk/fast/js/global-constructors-attributes-expected.txt: Ditto.
12:15 AM Changeset in webkit [153988] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

One more speculative Windows build fix after r153978.

  • page/win/DragControllerWin.cpp:
12:15 AM Changeset in webkit [153987] by zandobersek@gmail.com
  • 15 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening.
Rebaselining after r153647.

  • platform/gtk/fast/css/input-search-padding-expected.txt:
  • platform/gtk/fast/css/text-overflow-input-expected.txt:
  • platform/gtk/fast/forms/box-shadow-override-expected.txt:
  • platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
  • platform/gtk/fast/forms/input-appearance-height-expected.txt:
  • platform/gtk/fast/forms/placeholder-position-expected.txt:
  • platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
  • platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
  • platform/gtk/fast/forms/search-display-none-cancel-button-expected.txt:
  • platform/gtk/fast/forms/search-rtl-expected.txt:
  • platform/gtk/fast/forms/search-size-with-decorations-expected.txt: Added.
  • platform/gtk/fast/forms/search-styled-expected.txt:
  • platform/gtk/fast/forms/search-vertical-alignment-expected.txt:
  • platform/gtk/fast/forms/searchfield-heights-expected.txt:
  • platform/gtk/fast/repaint/search-field-cancel-expected.txt:
12:11 AM Changeset in webkit [153986] by gyuyoung.kim@samsung.com
  • 9 edits in trunk

Update scheme list according to latest specification
https://bugs.webkit.org/show_bug.cgi?id=119510

Reviewed by Christophe Dumez.

New schemes are added to it additionally. Those are bitcoin, im, ircs and wtai.
As additional work, scheme order is listed to be sync with spec.

Spec: http://www.w3.org/html/wg/drafts/html/master/webappapis.html#custom-handlers

Source/WebCore:

Test: fast/dom/register-protocol-handler.html

fast/dom/unregister-protocol-handler.html

  • Modules/navigatorcontentutils/NavigatorContentUtils.cpp:

(WebCore::initProtocolHandlerWhitelist):

LayoutTests:

  • fast/dom/register-protocol-handler-expected.txt:
  • fast/dom/register-protocol-handler.html:
  • fast/dom/unregister-protocol-handler-expected.txt:
  • fast/dom/unregister-protocol-handler.html:
  • platform/efl/fast/dom/register-protocol-handler-expected.txt:
  • platform/efl/fast/dom/unregister-protocol-handler-expected.txt:
12:08 AM Changeset in webkit [153985] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Yet another Windows build fix attempt after r153978.

  • page/win/DragControllerWin.cpp:

(WebCore::DragController::declareAndWriteDragImage):

12:04 AM Changeset in webkit [153984] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Another Windows build fix attempt after r153978.

  • page/win/DragControllerWin.cpp:
12:00 AM Changeset in webkit [153983] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Windows build fix attempt after r153978.

  • page/win/DragControllerWin.cpp:

Aug 12, 2013:

11:38 PM Changeset in webkit [153982] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Fix null dereference in HTMLAnchorElement::sendPings when frame is not attached to a page
https://bugs.webkit.org/show_bug.cgi?id=119716

Reviewed by Darin Adler.

Add a regression test for r153975.

  • fast/html/detach-frame-while-clicking-on-anchor-with-ping-expected.txt: Added.
  • fast/html/detach-frame-while-clicking-on-anchor-with-ping.html: Added.
11:26 PM Changeset in webkit [153981] by zandobersek@gmail.com
  • 3 edits
    2 adds in trunk

ASSERTION FAILED: type() == Percent in WebCore::Length::percent
https://bugs.webkit.org/show_bug.cgi?id=116715

Reviewed by Darin Adler.

Source/WebCore:

Allow the Calculated type in the Length::percent method that returns the Length's
float value. This reflects the changes in r110148 that adjusted the Length::isPercent
method to return true for Length objects of either Percent or Calculated type.

Test: fast/css/calculated-length-as-percent-crash.html

  • platform/Length.h:

(WebCore::Length::percent): Assert that Length::isPercent is true when Length::percent
is called, ensuring the Length's type is either Percent or Calculated.

LayoutTests:

Add the test case, as produced by the Fuzzinator, that was causing assertions
in Length::percent due to Length objects of the Calculated type not being treated
as holding a proper percent value in that method, despite Length::isPercent
returning true for Length objects of either Percent or the Calculated type.

  • fast/css/calculated-length-as-percent-crash-expected.txt: Added.
  • fast/css/calculated-length-as-percent-crash.html: Added.
11:26 PM Changeset in webkit [153980] by mitz@apple.com
  • 2 edits in trunk/Tools

extract-localizable-strings output is not suited for parsing by Xcode
https://bugs.webkit.org/show_bug.cgi?id=119728

Reviewed by Darin Adler.

Added spaces where needed after “path:line:” to allow Xcode to recognize the file reference,
removed “ERROR” since messages that refer to a line in a file are shown as error by default,
added “warning: ” in messages that aren’t errors (i.e. don’t prevent the script from exiting
with 0).

  • Scripts/extract-localizable-strings:
11:16 PM Changeset in webkit [153979] by zandobersek@gmail.com
  • 2 edits in trunk

[Autotools] Adjust the help string for the configure's --enable-optimizations flag
https://bugs.webkit.org/show_bug.cgi?id=119682

Reviewed by Martin Robinson.

  • Source/autotools/ReadCommandLineArguments.m4: Remove the 'GCC only' part of the help

string for the --enable-optimizations flag. This is not true and can lead to confusion
since the optimizations can be applied when compiling with Clang as well.

10:58 PM Changeset in webkit [153978] by Darin Adler
  • 18 edits in trunk/Source/WebCore

Move Clipboard::declareAndWriteDragImage to DragController
https://bugs.webkit.org/show_bug.cgi?id=117683

Reviewed by Brent Fulgham.

  • dom/Clipboard.h: Removed declareAndWriteDragImage.
  • page/DragController.cpp:

(WebCore::selectImageBeforeDragging): Half of the old prepareClipboardForImageDrag
is now refactored into this function.
(WebCore::DragController::startDrag): Where we called prepareClipboardForImageDrag,
instead call selectImageBeforeDragging and declareAndWriteDragImage. This is needed
because declareAndWriteDragImage needs to be a member function, for Mac at least.

  • page/DragController.h: Added declareAndWriteDragImage.
  • page/efl/DragControllerEfl.cpp:

(WebCore::DragController::declareAndWriteDragImage): Added empty placeholder.
It would be better to delete this file rather than having these placeholders.
I don't think EFL actually has drag support, and it makes work to have to keep
source files up to date that are really unused.

  • page/gtk/DragControllerGtk.cpp:

(WebCore::DragController::declareAndWriteDragImage): Added. Calls Pasteboard::writeImage.

  • page/mac/DragControllerMac.mm:

(WebCore::DragController::declareAndWriteDragImage): Added. Calls to DragClient, which
does the work.

  • page/qt/DragControllerQt.cpp:

(WebCore::DragController::declareAndWriteDragImage): Added. Calls Pasteboard::writeImage.

  • page/win/DragControllerWin.cpp:

(WebCore::DragController::declareAndWriteDragImage): Added. Uses Pasteboard functions to
do the work.

  • platform/Clipboard.h: Changed the pasteboard function to return a non-const reference.

For now, it's not clear what const will mean for pasteboards, and it's currently not
possible to write to a const pasteboard, which we need to do in the new
DragController::declareAndWriteDragImage functions.

  • platform/Pasteboard.h: Added a new writeMarkup function, implemented only for Windows

at this time.

  • platform/efl/ClipboardEfl.cpp: Deleted declareAndWriteDragImage.
  • platform/gtk/ClipboardGtk.cpp: Ditto.
  • platform/ios/ClipboardIOS.h: Ditto.
  • platform/ios/ClipboardIOS.mm: Ditto.
  • platform/mac/ClipboardMac.mm: Ditto.
  • platform/qt/ClipboardQt.cpp: Ditto.
  • platform/win/ClipboardWin.cpp: Ditto.
  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::writePlainTextToDataObject): Took out a pointless line of code.
(WebCore::Pasteboard::writeMarkup): Added. Currently implemented only for Windows.
This factors out a significant piece of DragController::declareAndWriteDragImage,
and will probably be handy for other platforms later.

10:55 PM Changeset in webkit [153977] by ryuan.choi@samsung.com
  • 5 edits in trunk

[EFL][WK1] URL printing code in DumpRenderTree doesn't match WTR or Mac DRT
https://bugs.webkit.org/show_bug.cgi?id=119585

Reviewed by Gyuyoung Kim.

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::provisionalURL):
Implemented to pass provisionalURL of main frame to DumpRenderTreeChrome.

  • WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(pathSuitableForTestResult):
Return path string that's relative to main frame URL, or just file name if
the resource is not in the same directory subtree.
Referenced WebKitTestRunner code in r153852.
(descriptionSuitableForTestResult):
(DumpRenderTreeChrome::onFrameRedirectRequested):
(DumpRenderTreeChrome::onNewResourceRequest): Followed changes of r153903.

10:53 PM Changeset in webkit [153976] by mitz@apple.com
  • 3 edits in trunk/Tools

extract-localizable-strings doesn't know how to verify an existing strings file
https://bugs.webkit.org/show_bug.cgi?id=119704

Reviewed by Darin Adler.

  • Scripts/extract-localizable-strings: Added an --exceptions option for specifying the

exceptions file, changing the way “no exceptions file” is expressed from passing “-” as the
exceptions file name to omitting the --exceptions option. Added a --skip option, changing
the way directories to skip are specified from prefixing the directory with a “-” to
specifying it with --skip.
Finally, added a --verify option. When specified, the strings file is not written to, but
instead read in and checked for consistency with the comments, keys and values derived from
the source files and the exceptions file. Missing keys, unused keys, mismatching values and
mismatching comments are reported as errors.

  • Scripts/update-webkit-localizable-strings: Updated for the new way of specifying

directories to skip and no exceptions file.

10:48 PM Changeset in webkit [153975] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix NULL de-refernce in HTMLAnchorElement::sendPings when settings doesn't exist
https://bugs.webkit.org/show_bug.cgi?id=119716

Reviewed by Darin Adler.

Merge https://chromium.googlesource.com/chromium/blink/+/d5783da353ab783e9994b8fbecd91880be5192a1

No new tests since the test in the Blink change doesn't reproduce crash on WebKit.

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::sendPings):

10:47 PM Changeset in webkit [153974] by Seokju Kwon
  • 2 edits in trunk/Source/WebCore

Use the correct preprocessor in shouldRepaintFixedBackgroundsOnScroll()
https://bugs.webkit.org/show_bug.cgi?id=119710

Reviewed by Darin Adler.

No behavior change, no new tests needed.

  • rendering/RenderObject.cpp: Remove unused parameter warning.

(WebCore::shouldRepaintFixedBackgroundsOnScroll):

8:44 PM Changeset in webkit [153973] by ap@apple.com
  • 8 edits in trunk

http/tests/security/sandboxed-iframe-invalid.html is flaky on Mac
https://bugs.webkit.org/show_bug.cgi?id=85522

Reviewed by Andy Estes.

Source/WebCore:

Drive-by FIXMEs and trivial fixes for WebCore issues I noticed while working
on this bug. No behavior change expected.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::submitForm):
(WebCore::FrameLoader::findFrameForNavigation):

  • loader/NavigationScheduler.cpp:

(WebCore::ScheduledFormSubmission::fire):

Tools:

  • DumpRenderTree/mac/UIDelegate.mm:

(-[UIDelegate webView:addMessageToConsole:withSource:]): Don't print console messages
when already done with a test. We already had this check in all UI delegate functions,
except for -webView:addMessageToConsole:withSource: somehow.

LayoutTests:

  • http/tests/security/sandboxed-iframe-form-top-expected.txt: Console logging got

improved while this test was marked as skipped or flaky, updating the results.

  • platform/mac/TestExpectations: Removed sandboxed-iframe-form-top.html, this test

no longer leaks output into later ones. The test was erroneously marked as flaky
instead of skipped, but now it's good.

8:34 PM Changeset in webkit [153972] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

Fix variable name |end| -> |size| in EventTarget::fireEventListeners
https://bugs.webkit.org/show_bug.cgi?id=119715

Reviewed by Benjamin Poulain.

Merge https://chromium.googlesource.com/chromium/blink/+/f58b017539c48059bb2b88d18ee0ee3d14decb01
and also fix variable names in FiringEventIterator.

  • dom/EventTarget.cpp:

(WebCore::EventTarget::removeEventListener):
(WebCore::EventTarget::fireEventListeners):
(WebCore::EventTarget::removeAllEventListeners):

  • dom/EventTarget.h:

(WebCore::FiringEventIterator::FiringEventIterator):

6:35 PM Changeset in webkit [153971] by ryuan.choi@samsung.com
  • 1 edit
    33 adds in trunk/LayoutTests

[EFL] Unreviewed gardening.

Add a missing result after r152911.

  • platform/efl/fast/multicol/pagination/BottomToTop-bt-expected.png: Added.
  • platform/efl/fast/multicol/pagination/BottomToTop-bt-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/BottomToTop-lr-expected.png: Added.
  • platform/efl/fast/multicol/pagination/BottomToTop-lr-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/BottomToTop-rl-expected.png: Added.
  • platform/efl/fast/multicol/pagination/BottomToTop-rl-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/BottomToTop-tb-expected.png: Added.
  • platform/efl/fast/multicol/pagination/BottomToTop-tb-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/LeftToRight-bt-expected.png: Added.
  • platform/efl/fast/multicol/pagination/LeftToRight-bt-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/LeftToRight-lr-expected.png: Added.
  • platform/efl/fast/multicol/pagination/LeftToRight-lr-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/LeftToRight-rl-expected.png: Added.
  • platform/efl/fast/multicol/pagination/LeftToRight-rl-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/LeftToRight-tb-expected.png: Added.
  • platform/efl/fast/multicol/pagination/LeftToRight-tb-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/RightToLeft-bt-expected.png: Added.
  • platform/efl/fast/multicol/pagination/RightToLeft-bt-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/RightToLeft-lr-expected.png: Added.
  • platform/efl/fast/multicol/pagination/RightToLeft-lr-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/RightToLeft-rl-expected.png: Added.
  • platform/efl/fast/multicol/pagination/RightToLeft-rl-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/RightToLeft-tb-expected.png: Added.
  • platform/efl/fast/multicol/pagination/RightToLeft-tb-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/TopToBottom-bt-expected.png: Added.
  • platform/efl/fast/multicol/pagination/TopToBottom-bt-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/TopToBottom-lr-expected.png: Added.
  • platform/efl/fast/multicol/pagination/TopToBottom-lr-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/TopToBottom-rl-expected.png: Added.
  • platform/efl/fast/multicol/pagination/TopToBottom-rl-expected.txt: Added.
  • platform/efl/fast/multicol/pagination/TopToBottom-tb-expected.png: Added.
  • platform/efl/fast/multicol/pagination/TopToBottom-tb-expected.txt: Added.
6:12 PM Changeset in webkit [153970] by rniwa@webkit.org
  • 8 edits in trunk/Source/WebCore

Encapsulate access to documentNamedItemMap and windowNamedItemMap
https://bugs.webkit.org/show_bug.cgi?id=119701

Reviewed by Darin Adler.

Encapsulate m_documentNamedItem and m_windowNamedItem by adding various methods on HTMLDocument.
This will help us doing more refactorings in the future.

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::namedItemGetter):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore::JSDOMWindow::getOwnPropertyDescriptor):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::canGetItemsForName):
(WebCore::JSHTMLDocument::nameGetter):

  • dom/Element.cpp:

(WebCore::Element::updateNameForDocument):
(WebCore::Element::updateIdForDocument):

  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::addDocumentNamedItem): Added.
(WebCore::HTMLDocument::removeDocumentNamedItem): Added.
(WebCore::HTMLDocument::addWindowNamedItem): Added.
(WebCore::HTMLDocument::removeWindowNamedItem): Added.

  • html/HTMLDocument.h:

(WebCore::HTMLDocument::documentNamedItem): Added.
(WebCore::HTMLDocument::hasDocumentNamedItem): Added.
(WebCore::HTMLDocument::documentNamedItemContainsMultipleElements): Added.
(WebCore::HTMLDocument::windowNamedItem): Added.
(WebCore::HTMLDocument::hasWindowNamedItem): Added.
(WebCore::HTMLDocument::windowNamedItemContainsMultipleElements): Added.

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::parseAttribute):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::updateDocNamedItem):

6:10 PM Changeset in webkit [153969] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Fixed an off-by-(sizeof(char*) - 1) bug.

Reviewed by Sam Weinig.

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:

(WebKit::XPCServiceEventHandler): Allocate a sufficiently large buffer.

5:35 PM Changeset in webkit [153968] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

[CMake] Use the correct list of files when compiling ANGLESupport on Windows
https://bugs.webkit.org/show_bug.cgi?id=119439

Reviewed by Gyuyoung Kim.

  • CMakeLists.txt: Use ossource_win.cpp instead of ossource_posix.cpp on Windows platforms.
5:28 PM Changeset in webkit [153967] by oliver@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Remove CodeBlock's notion of adding identifiers entirely
https://bugs.webkit.org/show_bug.cgi?id=119708

Reviewed by Geoffrey Garen.

Remove addAdditionalIdentifier entirely, including the bogus assertion.
Move the addition of identifiers to DFGPlan::reallyAdd

  • bytecode/CodeBlock.h:
  • dfg/DFGDesiredIdentifiers.cpp:

(JSC::DFG::DesiredIdentifiers::reallyAdd):

  • dfg/DFGDesiredIdentifiers.h:
  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::reallyAdd):
(JSC::DFG::Plan::finalize):

  • dfg/DFGPlan.h:
5:20 PM Changeset in webkit [153966] by ryuan.choi@samsung.com
  • 3 edits
    4 deletes in trunk/LayoutTests

[EFL] Unreviewed gardening.

  • platform/efl/TestExpectations: Added pasteboard after r152185.
  • platform/efl/editing/deleting/delete-br-002-expected.txt: Updated after r152478.
  • platform/efl/editing/execCommand/outdent-blockquote-test1-expected.txt:

Removed platform specific expectations after r152494.

  • platform/efl/editing/execCommand/outdent-blockquote-test2-expected.txt: Ditto.
  • platform/efl/editing/execCommand/outdent-blockquote-test3-expected.txt: Ditto.
  • platform/efl/editing/execCommand/outdent-blockquote-test4-expected.txt: Ditto.
4:56 PM Changeset in webkit [153965] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Build fix

4:42 PM Changeset in webkit [153964] by ap@apple.com
  • 2 edits in trunk/Tools

https://bugs.webkit.org/show_bug.cgi?id=119693
[Mac] security/contentSecurityPolicy/connect-src-websocket-blocked.html is flaky
because of connect-src-websocket-allowed.html

Reviewed by Darin Adler.

Starting a load of about:blank and immediately stopping it cancels outstanding
resource loads, but the page has to transition to committed state to have timers
or WebSockets stopped too.

  • DumpRenderTree/mac/DumpRenderTree.mm: (runTest): Use a synchronous load to

ensure that transition to committed state happens before we start the next test.

4:41 PM Changeset in webkit [153963] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Move additionalIdentifiers into DFGCommonData as only the optimising JITs use them
https://bugs.webkit.org/show_bug.cgi?id=119705

Reviewed by Geoffrey Garen.

Relatively trivial refactoring

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::numberOfAdditionalIdentifiers):
(JSC::CodeBlock::addAdditionalIdentifier):
(JSC::CodeBlock::identifier):
(JSC::CodeBlock::numberOfIdentifiers):

  • dfg/DFGCommonData.h:
3:39 PM Changeset in webkit [153962] by oliver@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Stop making unnecessary copy of CodeBlock Identifier Vector
https://bugs.webkit.org/show_bug.cgi?id=119702

Reviewed by Michael Saboff.

Make CodeBlock simply use a separate Vector for additional Identifiers
and use the UnlinkedCodeBlock for the initial set of identifiers.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdOp):
(JSC::dumpStructure):
(JSC::dumpChain):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::printPutByIdOp):
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::shrinkToFit):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::numberOfIdentifiers):
(JSC::CodeBlock::numberOfAdditionalIdentifiers):
(JSC::CodeBlock::addAdditionalIdentifier):
(JSC::CodeBlock::identifier):

  • dfg/DFGDesiredIdentifiers.cpp:

(JSC::DFG::DesiredIdentifiers::reallyAdd):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emitSlow_op_get_arguments_length):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::compileGetByIdSlowCase):
(JSC::JIT::emitSlow_op_put_by_id):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::compileGetByIdSlowCase):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

3:05 PM Changeset in webkit [153961] by a.renevier@samsung.com
  • 4 edits in trunk/Source/WebCore

[cairo] memory corruption with putImageData and accelerated canvas.
https://bugs.webkit.org/show_bug.cgi?id=118621

Reviewed by Martin Robinson.

When we have an accelerated imageBuffer, and we putByteArray with a
non zero destPoint, we create temporary surface of sourceSize. Then,
we write to image data with an offset. This results in an out of bound
write.

In order to avoid that, we use a 0 offset when writing data.

In addition, we also create image with the minimal needed size in
getImageData, and also use a 0 offset. This decrease data transfer
between cpu and gpu

Instead of the map/unmap mechanism, perform an explicit surface copy
when needed. This change also removes an unneeded glReadPixels at the
start of putByteArray

Add two parameters to copyRectFromOneSurfaceToAnother: destination
offset, and cairo drawing operator.

No new tests. Accelerated canvas is not enabled for testing yet.

  • platform/graphics/cairo/CairoUtilities.cpp:

(WebCore::copyRectFromOneSurfaceToAnother):

  • platform/graphics/cairo/CairoUtilities.h:
  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::copySurfaceToImageAndAdjustRect):
(WebCore::getImageData):
(WebCore::ImageBuffer::putByteArray):

2:55 PM Changeset in webkit [153960] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Layout Test fast/overflow/scrollbar-click-retains-focus.html is failing on Apple Mac WK1 and GTK.
https://bugs.webkit.org/show_bug.cgi?id=104104

Add back test expectation for Mac since it's still failing on ML WK1 bots.

  • platform/mac/TestExpectations:
  • platform/mac-wk2/TestExpectations:
2:50 PM Changeset in webkit [153959] by rniwa@webkit.org
  • 6 edits in trunk/Source

Use const AtomicStringImpl* in DocumentOrderedMap
https://bugs.webkit.org/show_bug.cgi?id=119700

Reviewed by Benjamin Poulain.

Use const AtomicStringImpl* in DocumentOrderedMap. It caught at least one bug that HTMLNameCollection'
subclasses' nodeMatches were taking const AtomicString& instead of AtomicStringImpl*. This was forcing
DocumentOrderedMap::getElementByWindowNamedItem and DocumentOrderedMap::getElementByDocumentNamedItem
to create temporary AtomicStrings.

  • dom/DocumentOrderedMap.cpp:

(WebCore::keyMatchesId):
(WebCore::keyMatchesName):
(WebCore::keyMatchesMapName):
(WebCore::keyMatchesLowercasedMapName):
(WebCore::keyMatchesLabelForAttribute):
(WebCore::keyMatchesWindowNamedItem):
(WebCore::keyMatchesDocumentNamedItem):
(WebCore::DocumentOrderedMap::add):
(WebCore::DocumentOrderedMap::remove):
(WebCore::DocumentOrderedMap::get):
(WebCore::DocumentOrderedMap::getElementById):
(WebCore::DocumentOrderedMap::getElementByName):
(WebCore::DocumentOrderedMap::getElementByMapName):
(WebCore::DocumentOrderedMap::getElementByLowercasedMapName):
(WebCore::DocumentOrderedMap::getElementByLabelForAttribute):
(WebCore::DocumentOrderedMap::getElementByWindowNamedItem):
(WebCore::DocumentOrderedMap::getElementByDocumentNamedItem):
(WebCore::DocumentOrderedMap::getAllElementsById):

  • dom/DocumentOrderedMap.h:

(WebCore::DocumentOrderedMap::containsSingle):
(WebCore::DocumentOrderedMap::contains):
(WebCore::DocumentOrderedMap::containsMultiple):

  • html/HTMLNameCollection.cpp:

(WebCore::WindowNameCollection::nodeMatches):
(WebCore::DocumentNameCollection::nodeMatches):

  • html/HTMLNameCollection.h:

(WebCore::WindowNameCollection::nodeMatches):
(WebCore::DocumentNameCollection::nodeMatches):

2:37 PM Changeset in webkit [153958] by Beth Dakin
  • 6 edits
    2 adds in trunk

The LayoutMilestones didLayout callback should only fire for the main frame
https://bugs.webkit.org/show_bug.cgi?id=119457

Reviewed by Sam Weinig.

Source/WebCore:

This patch makes it so that FrameLoader::didLayout(LayoutMilestones) is only ever
called for the main frame. Technically this will change existing API for
didFirstVisuallyNonEmptyLayoutInFrame and didFirstLayoutInFrame. Clients used to
be able to register for those callbacks for any frame they wanted, however, now
they will only ever get the callback when it applies to the main frame. We think
that this is acceptable since we don’t know of any clients that ever used those
APIs for a non-main frame. This change also makes nothing but sense for the
didLayout(LayoutMilestones) callback, since that is a Page-level concept, so it
should only fire for the main frame.

Only call didLayout for the main frame.

  • dom/Document.cpp:

(WebCore::Document::setVisualUpdatesAllowed):

Assert that this is the main frame.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::didLayout):

Only call didLayout for the main frame.

  • page/FrameView.cpp:

(WebCore::FrameView::performPostLayoutTasks):

Tools:

Now that the didLayout callback only fires for the main frame, we want to make
sure it will fire even when all of the content is in a subframe.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/LayoutMilestonesWithAllContentInFrame.cpp: Added.

(TestWebKitAPI::didLayout):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/all-content-in-one-iframe.html: Added.
2:02 PM Changeset in webkit [153957] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r153917. <rdar://problem/14002715>

1:54 PM Changeset in webkit [153956] by Beth Dakin
  • 16 edits in trunk

Remove didNewFirstVisuallyNonEmptyLayout from WebKit2
https://bugs.webkit.org/show_bug.cgi?id=119658

Reviewed by Darin Adler.

Source/WebKit2:

Removing this function entirely will change some functionality in the Nightlies,
but we think that is an acceptable difference for the Nightlies. If is does cause
a problem though, we can roll out this patch and deprecate the function instead.

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebLoaderClient.cpp:
  • UIProcess/WebLoaderClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeLoaderClient):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidLayout):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::initializeInjectedBundleLoaderClient):

Tools:

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::InjectedBundlePage):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions):

12:47 PM Changeset in webkit [153955] by Christophe Dumez
  • 15 edits
    2 adds in trunk

Define DOM_KEY_LOCATION_* constants on KeyboardEvent
https://bugs.webkit.org/show_bug.cgi?id=119341

Reviewed by Ryosuke Niwa.

Source/WebCore:

Add support for the DOM_KEY_LOCATION_* constants on KeyboardEvent as per
the specification:
http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardEvent

Those constants are already supported by IE10, Firefox 22 and since
recently Blink.

Note that the following constants are not supported / exposed yet:
DOM_KEY_LOCATION_MOBILE and DOM_KEY_LOCATION_JOYSTICK.

Test: fast/events/keyboardevent-location-constants.html

  • dom/KeyboardEvent.cpp:

(WebCore::keyLocationCode):
(WebCore::KeyboardEvent::KeyboardEvent):

  • dom/KeyboardEvent.h:
  • dom/KeyboardEvent.idl:

LayoutTests:

Make use of the new DOM_KEY_LOCATION_* constants in the KeyboardEvent
test cases instead of hardcoding their values.

  • fast/events/constructors/keyboard-event-constructor-expected.txt:
  • fast/events/constructors/keyboard-event-constructor.html:
  • fast/events/js-keyboard-event-creation-expected.txt:
  • fast/events/js-keyboard-event-creation.html:
  • fast/events/keyboardevent-location-constants-expected.txt: Added.
  • fast/events/keyboardevent-location-constants.html: Added.
  • fast/events/keydown-leftright-keys-expected.txt:
  • fast/events/keydown-leftright-keys.html:
  • fast/events/keydown-numpad-keys-expected.txt:
  • fast/events/script-tests/keydown-numpad-keys.js:

(testKeyEventWithLocation):

  • platform/efl/fast/events/js-keyboard-event-creation-expected.txt:
  • platform/gtk/fast/events/js-keyboard-event-creation-expected.txt:
12:41 PM Changeset in webkit [153954] by Seokju Kwon
  • 2 edits in trunk/Tools

Remove glu's libtest rule from checker.py
https://bugs.webkit.org/show_bug.cgi?id=119674

Reviewed by Darin Adler.

  • Scripts/webkitpy/style/checker.py: It is no longer used after r148032.
12:24 PM Changeset in webkit [153953] by ap@apple.com
  • 3 edits in trunk/LayoutTests

Multiple CSP tests complain about undefined strings in echo-object-data.pl and echo-script-src.pl
https://bugs.webkit.org/show_bug.cgi?id=119692

Reviewed by Darin Adler.

  • http/tests/security/contentSecurityPolicy/resources/echo-object-data.pl:
  • http/tests/security/contentSecurityPolicy/resources/echo-script-src.pl:

Check whether optional CGI parameters are provided.

12:13 PM Changeset in webkit [153952] by timothy_horton@apple.com
  • 11 edits in trunk/Source/WebCore

dataLog dumpers for WebCore's basic geometry types
https://bugs.webkit.org/show_bug.cgi?id=119636

Reviewed by Filip Pizlo.

  • platform/graphics/FloatPoint.cpp:

(WebCore::FloatPoint::dump):

  • platform/graphics/FloatPoint.h:
  • platform/graphics/FloatRect.cpp:

(WebCore::FloatRect::dump):

  • platform/graphics/FloatRect.h:
  • platform/graphics/FloatSize.cpp:

(WebCore::FloatSize::dump):

  • platform/graphics/FloatSize.h:
  • platform/graphics/IntPoint.h:

(WebCore::IntPoint::dump):

  • platform/graphics/IntRect.cpp:

(WebCore::IntRect::dump):

  • platform/graphics/IntRect.h:
  • platform/graphics/IntSize.h:

(WebCore::IntSize::dump):

11:41 AM Changeset in webkit [153951] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Broken build with build-webkit --no-webgl
https://bugs.webkit.org/show_bug.cgi?id=119272

Patch by Ragner Magalhaes <ranger.n@samsung.com> on 2013-08-12
Reviewed by Alexandru Chiculita.

CSS_SHADERS requires WEBGL enabled.
Add error message to dependency failure.

  • wtf/FeatureDefines.h:
10:47 AM Changeset in webkit [153950] by Joseph Pecoraro
  • 2 edits
    3 adds in trunk/Source/WTF

[iOS] isMainThread implementation with USE(WEB_THREAD)
https://bugs.webkit.org/show_bug.cgi?id=119644

Reviewed by Benjamin Poulain.

On iOS isMainThread() means that the current thread is either the
MainThread or WebThread and the current thread has the WebThreadLock.

  • wtf/ios/WebCoreThread.cpp: Added.
  • wtf/ios/WebCoreThread.h: Added.
  • wtf/mac/MainThreadMac.mm:

(WTF::isMainThread):

10:32 AM Changeset in webkit [153949] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] [WebKit2] Remove duplicate RAM Size calculation and reuse WTF::ramSize()
https://bugs.webkit.org/show_bug.cgi?id=119663

Patch by Arunprasad Rajkumar <arurajku@cisco.com> on 2013-08-12
Reviewed by Sam Weinig.

  • WebProcess/qt/WebProcessQt.cpp:

(WebKit::WebProcess::platformSetCacheModel):

10:23 AM Changeset in webkit [153948] by dino@apple.com
  • 3 edits
    2 adds in trunk

Shadows don't support viewport units
https://bugs.webkit.org/show_bug.cgi?id=119649

Reviewed by Darin Adler.

Source/WebCore:

We don't yet support viewport units in shadows, so
fail parsing if we see one. The bug to fix this
completely is: https://webkit.org/b/119650

Test: fast/css/shadow-viewport-units.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseShadow): Fail if we get one of
vh, vw, vmin, vmax.

LayoutTests:

Test that exercises a viewport unit in text-shadow to make sure we don't parse it.

  • fast/css/shadow-viewport-units-expected.txt: Added.
  • fast/css/shadow-viewport-units.html: Added.
10:16 AM Changeset in webkit [153947] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[GTK] Don't load GAIL when using GTK 3.2 or greater
https://bugs.webkit.org/show_bug.cgi?id=72735

Patch by Anton Obzhirov <Anton Obzhirov> on 2013-08-12
Reviewed by Carlos Garcia Campos.

Source/WebKit/gtk:

  • tests/testatk.c:

(initializeTestingFramework):
(main):

Source/WebKit2:

  • UIProcess/API/gtk/tests/AccessibilityTestServer.cpp:

(main):

9:52 AM Changeset in webkit [153946] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Curl] Cookie is not set when url string is unicode.
https://bugs.webkit.org/show_bug.cgi?id=119545

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-08-12
Reviewed by Brent Fulgham.

When the method setCookiesFromDOM is called with an unicode url parameter, the cookie is not correctly set.
We need to convert the cookie string to 8 bit, before passing it to the Curl api function.

  • platform/network/curl/CookieJarCurl.cpp:

(WebCore::setCookiesFromDOM): Convert cookie string to 8 bit, if needed.

9:49 AM Changeset in webkit [153945] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Revert r153912 because it broke some track tests.

Rubber-stamped by Antti Koivisto.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
(WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack):

9:36 AM Changeset in webkit [153944] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Curl] Crash when starting second download.
https://bugs.webkit.org/show_bug.cgi?id=119620

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-08-12
Reviewed by Brent Fulgham.

When a second download is started, a crash sometimes occurs in Curl.
This happens because the Curl easy handle is deleted and removed from the Curl multi handle twice.
This is solved by adding an array to keep track of active downloads to avoid double deletion.

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownloadManager::CurlDownloadManager): Removed active download count member.
(WebCore::CurlDownloadManager::getActiveDownloadCount): Use active download array to return active download count.
(WebCore::CurlDownloadManager::updateHandleList): Remove Curl handles before adding, in case Curl reuses handles.
(WebCore::CurlDownloadManager::addToCurl): Add Curl handle to active download array.
(WebCore::CurlDownloadManager::removeFromCurl): Check if Curl handle is in active download array to avoid double deletion.
(WebCore::CurlDownloadManager::downloadThread): Removed active download count member.

  • platform/network/curl/CurlDownload.h: Added array of active downloads member, and removed download count member.
9:32 AM Changeset in webkit [153943] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

[Win] TestWebKitAPI fails to link.
https://bugs.webkit.org/show_bug.cgi?id=119619

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-08-12
Reviewed by Brent Fulgham.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export needed symbol.
8:52 AM Changeset in webkit [153942] by Antti Koivisto
  • 17 edits in trunk/Source/WebCore

Add ElementTraversal::next/previousSibling
https://bugs.webkit.org/show_bug.cgi?id=119681

Reviewed by Andreas Kling.

Add nextSibling/previousSibling/lastWithin to ElementTraversal namespace.

  • Use them to replace internal use of Element::next/previousElementSibling DOM API for traversal.
  • Replace some Node::nextSibling() usage with ElementTraversal::nextSibling() for tighter code.
  • Replace ElementTraversal::nextSkippingChildren where it is used to traverse over immediate children only.
  • css/SelectorChecker.cpp:

(WebCore::isFirstChildElement):
(WebCore::isLastChildElement):
(WebCore::isFirstOfType):
(WebCore::isLastOfType):
(WebCore::countElementsBefore):
(WebCore::countElementsOfTypeBefore):
(WebCore::countElementsAfter):
(WebCore::countElementsOfTypeAfter):

  • dom/Element.cpp:

(WebCore::Element::lastElementChild):
(WebCore::Element::previousElementSibling):
(WebCore::Element::nextElementSibling):

  • dom/Element.h:
  • dom/ElementTraversal.h:

(WebCore::ElementTraversal::lastElementWithinTemplate):
(WebCore::ElementTraversal::lastWithin):
(WebCore::ElementTraversal::traverseNextSiblingElementTemplate):
(WebCore::ElementTraversal::nextSibling):
(WebCore::ElementTraversal::traversePreviousSiblingElementTemplate):
(WebCore::ElementTraversal::previousSibling):

  • editing/ApplyStyleCommand.cpp:

(WebCore::isSpanWithoutAttributesOrUnstyledStyleSpan):
(WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::breakOutOfEmptyListItem):

  • editing/IndentOutdentCommand.cpp:

(WebCore::IndentOutdentCommand::tryIndentingAsListItem):

  • editing/InsertListCommand.cpp:

(WebCore::InsertListCommand::mergeWithNeighboringLists):

  • editing/markup.cpp:

(WebCore::createContextualFragment):

  • html/HTMLCollection.cpp:

(WebCore::firstMatchingChildElement):
(WebCore::nextMatchingSiblingElement):
(WebCore::HTMLCollection::traverseNextElement):
(WebCore::HTMLCollection::traverseForwardToOffset):

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::childrenChanged):
(WebCore::HTMLFieldSetElement::legend):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::finishParsingChildren):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::containsJavaApplet):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::buildReferenceFilter):

  • style/StyleResolveTree.cpp:

(WebCore::Style::resolveTree):

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::title):

5:18 AM Changeset in webkit [153941] by allan.jensen@digia.com
  • 7 edits in trunk

[Qt] Add Support for canvas blend modes
https://bugs.webkit.org/show_bug.cgi?id=100072

Reviewed by Jocelyn Turcotte.

Source/WebCore:

Implement basic support for the blend-modes supported by QPainter.

Covered by existing tests.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::toQtCompositionMode):
(WebCore::GraphicsContext::setPlatformCompositeOperation):

  • platform/graphics/qt/ImageBufferQt.cpp:

(WebCore::ImageBuffer::draw):

  • platform/graphics/qt/ImageQt.cpp:

(WebCore::BitmapImage::draw):

  • platform/graphics/qt/StillImageQt.cpp:

(WebCore::StillImage::draw):

LayoutTests:

Unskip tests that now passes.

  • platform/qt/TestExpectations:
4:40 AM Changeset in webkit [153940] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/Source/WebCore

Buildfix for !ENABLE(SVG). Fix warning by adding guard after r153901:
void WebCore::addString(WebCore::FeatureSet&, const char*)'
defined but not used [-Werror=unused-function]

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-08-12
Reviewed by Csaba Osztrogonác.

  • dom/DOMImplementation.cpp:
4:21 AM Changeset in webkit [153939] by Antti Koivisto
  • 34 edits
    1 add in trunk/Source/WebCore

Move ElementTraversal to ElementTraversal.h
https://bugs.webkit.org/show_bug.cgi?id=119678

Rubber-stamped by Andreas Kling.

Move ElementTraversal namespace from NodeTraversal.h to a correctly named file.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • accessibility/AccessibilityRenderObject.cpp:
  • css/StyleInvalidationAnalysis.cpp:
  • dom/Document.cpp:
  • dom/DocumentOrderedMap.cpp:
  • dom/Element.cpp:
  • dom/ElementTraversal.h: Added.

(WebCore::ElementTraversal::firstElementWithinTemplate):
(WebCore::ElementTraversal::firstWithin):
(WebCore::ElementTraversal::traverseNextElementTemplate):
(WebCore::ElementTraversal::next):
(WebCore::ElementTraversal::traverseNextElementSkippingChildrenTemplate):
(WebCore::ElementTraversal::nextSkippingChildren):
(WebCore::ElementTraversal::previousIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
(WebCore::ElementTraversal::pseudoAwarePreviousSibling):

  • dom/Node.cpp:
  • dom/NodeTraversal.h:
  • dom/SelectorQuery.cpp:
  • dom/TreeScope.cpp:
  • dom/VisitedLinkState.cpp:
  • editing/FrameSelection.cpp:
  • editing/markup.cpp:
  • html/HTMLCollection.cpp:
  • html/HTMLFieldSetElement.cpp:
  • html/HTMLFormElement.cpp:
  • html/HTMLLabelElement.cpp:
  • html/HTMLLegendElement.cpp:
  • html/HTMLMapElement.cpp:
  • html/HTMLObjectElement.cpp:
  • html/HTMLSelectElement.cpp:
  • html/shadow/ContentDistributor.cpp:
  • page/FocusController.cpp:
  • rendering/RenderCounter.cpp:
  • rendering/RenderListItem.cpp:
  • svg/SVGSVGElement.cpp:
  • svg/SVGStyledElement.cpp:
  • svg/SVGUseElement.cpp:
  • svg/animation/SMILTimeContainer.cpp:
  • svg/graphics/SVGImage.cpp:
3:25 AM Changeset in webkit [153938] by Antti Koivisto
  • 4 edits in trunk/Source/WebCore

Move some Document recalcStyle code to StyleResolveTree
https://bugs.webkit.org/show_bug.cgi?id=119676

Reviewed by Andreas Kling.

Move the code that resolves the document and child styles to Style::resolveTree(Document*).

  • dom/Document.cpp:

(WebCore::Document::recalcStyle):

  • style/StyleResolveTree.cpp:

(WebCore::Style::resolveTree):

  • style/StyleResolveTree.h:
3:22 AM Changeset in webkit [153937] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

Resource leak related to gstreamer and videos
https://bugs.webkit.org/show_bug.cgi?id=109350

Reviewed by Eric Carlson.

Since active DOM object are only stopped once and can not be restarted, we can
unreference the media player there, instead of waiting for garbage collection.

If the r152778 is rolled back, this also breaks a circular reference between
GStreamer and WebKit which prevented garbage collecting from triggering.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::stop):

2:38 AM Changeset in webkit [153936] by rgabor@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Unreviewed buildfix for webaudio.

  • Target.pri: Add missing files
2:17 AM Changeset in webkit [153935] by akling@apple.com
  • 2 edits in trunk/Source/WebKit/win

More Windows build juice.

  • WebView.cpp:

(WebView::notifyPreferencesChanged):

1:55 AM Changeset in webkit [153934] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Some build juice for the Windows bots after r153926 + r153927.

  • html/shadow/MediaControlElements.cpp:
  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:

(WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsFullscreen):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):

1:20 AM Changeset in webkit [153933] by zarvai@inf.u-szeged.hu
  • 12 edits
    13 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Rebaselining after r153903.

  • platform/qt-5.0-wk1/fast/loader/main-document-url-for-non-http-loads-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/cache/iframe-304-crash-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/loading/307-after-303-after-post-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/loading/redirect-methods-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-allow-expected.txt: Added.
  • platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/geometry/preserve-3d-switching-expected.txt:
  • platform/qt-5.0-wk2/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
  • platform/qt-5.0-wk2/http/tests/misc/window-dot-stop-expected.txt:
  • platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
  • platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt:
  • platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt:
  • platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt:
  • platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-conflict-expected.txt:
  • platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt:
  • platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
  • platform/qt-5.0-wk2/loader/go-back-cached-main-resource-expected.txt:
12:57 AM Changeset in webkit [153932] by g.czajkowski@samsung.com
  • 3 edits in trunk/LayoutTests

Update spellcheck-attribute.html description.
https://bugs.webkit.org/show_bug.cgi?id=119486

Reviewed by Ryosuke Niwa.

r70512 r72782 added new fields to spellcheck-attribute.html to verify
spellcheck attribute.
Update the test to be more descriptive by dumping additional information
whether the misspelled word should be marked or not.

  • editing/spelling/spellcheck-attribute-expected.txt:
  • editing/spelling/spellcheck-attribute.html:
12:12 AM Changeset in webkit [153931] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.1.4

Tagging the WebKitGTK+ 2.1.4 release

Aug 11, 2013:

4:15 PM Changeset in webkit [153930] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Move RenderMathMLSpace.h/cpp to the right group in the Xcode project.

Reviewed by Dean Jackson.

  • WebCore.xcodeproj/project.pbxproj:
4:13 PM Changeset in webkit [153929] by dino@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Update localizedStrings - I think I checked in an unmerged version
in the previous commit.

  • Localizations/en.lproj/localizedStrings.js:
4:10 PM Changeset in webkit [153928] by dino@apple.com
  • 6 edits
    4 adds in trunk/Source/WebInspectorUI

Bootstrap canvas profiler
https://bugs.webkit.org/show_bug.cgi?id=119652
<rdar://problem/14703665>

Reviewed by Joseph Pecoraro.

Add enough to get an empty Canvas profile recording
and displayed.

  • Localizations/en.lproj/localizedStrings.js: Add canvas strings.
  • UserInterface/CanvasProfileObject.js: Added. Mostly copied from CSS Selector Profiles.
  • UserInterface/CanvasProfileType.js: Added. Ditto.
  • UserInterface/CanvasDataGridNode.js: Added. Ditto.
  • UserInterface/CanvasProfileView.js: Added. Ditto.
  • UserInterface/ContentView.js:

(WebInspector.ContentView): Add support for the new View type.
(WebInspector.ContentView.isViewable):

  • UserInterface/InstrumentSidebarPanel.js:

(WebInspector.InstrumentSidebarPanel): Add support for canvas profiles.
(WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphMousedOver):
(WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphMousedDown):
(WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphClicked):
(WebInspector.InstrumentSidebarPanel.prototype._profileTypeWasSelected):
(WebInspector.InstrumentSidebarPanel.prototype._profilesCleared):

  • UserInterface/Main.html: Load the new files.
  • UserInterface/ProfileManager.js: New methods and support for canvas profiles.

(WebInspector.ProfileManager):
(WebInspector.ProfileManager.prototype.initialize):
(WebInspector.ProfileManager.prototype.isProfilingCanvas):
(WebInspector.ProfileManager.prototype.startProfilingCanvas):
(WebInspector.ProfileManager.prototype.stopProfilingCanvas):
(WebInspector.ProfileManager.prototype._checkForInterruptions):
(WebInspector.ProfileManager.prototype._attemptToResumeProfiling):

1:30 PM Changeset in webkit [153927] by akling@apple.com
  • 78 edits in trunk/Source

Make Page::settings() return a reference.
<http://webkit.org/b/119662>

Reviewed by Anders Carlsson.

...and remove some pointless null checks that were exposed by doing this.

1:26 PM Changeset in webkit [153926] by akling@apple.com
  • 119 edits in trunk/Source

Make some things that return never-null pointers return references instead.
<http://webkit.org/b/119660>

Reviewed by Antti Koivisto.

Source/WebCore:

These functions never return null anyway, so remove any ambiguity by letting
them return references instead of pointers.

  • Node::ensureRareData()
  • Element::ensureUniqueElementData()
  • Element::ensureShadow()
  • Element::ensureUserAgentShadowRoot()
  • StyledElement::ensureMutableInlineStyle()
  • NodeRareData::ensureNodeLists()
  • NodeRareData::ensureMutationObserverData()
  • EventTarget::ensureEventTargetData()
  • Document::ensureStyleResolver()
  • Document::selectorQueryCache()
  • Document::mediaQueryMatcher()
  • FlowThreadController::ensureRenderFlowThreadWithName()
  • HTMLTrackElement::ensureTrack()
  • SVGElement::ensureSVGRareData()
  • AnimationControllerPrivate::ensureCompositeAnimation()

Source/WebKit/qt:

  • Api/qwebelement.cpp:

(QWebElement::styleProperty):

1:11 PM Changeset in webkit [153925] by weinig@apple.com
  • 19 edits
    1 delete in trunk/Source/WebCore

Cleanup MediaQueryListListener
https://bugs.webkit.org/show_bug.cgi?id=119664

Reviewed by Andreas Kling.

Make MediaQueryListListener a proper WebIDL callback.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:

Update project files.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(JSValueToNative):

  • bindings/scripts/IDLAttributes.txt:

Add support for CallbackNeedsOperatorEqual, which adds an operator==.

  • css/MediaAllInOne.cpp:

Remove MediaQueryListListener.cpp.

  • css/MediaQueryListListener.cpp:

Removed.

  • css/MediaQueryListListener.h:

(WebCore::MediaQueryListListener::~MediaQueryListListener):
(WebCore::MediaQueryListListener::MediaQueryListListener):

  • css/MediaQueryListListener.idl:

Convert to a proper WebIDL callback.

  • css/MediaQueryMatcher.cpp:

(WebCore::MediaQueryMatcher::Listener::evaluate):
(WebCore::MediaQueryMatcher::styleResolverChanged):

  • css/MediaQueryMatcher.h:

Remove all traces of the ScriptState.

10:41 AM Changeset in webkit [153924] by Carlos Garcia Campos
  • 4 edits in trunk

Unreviewed. Update NEWS and Versions.m4 for 2.1.4 release.

.:

  • Source/autotools/Versions.m4: Update version numbers.

Source/WebKit/gtk:

  • NEWS: Update release notes.
10:40 AM Changeset in webkit [153923] by ChangSeok Oh
  • 2 edits in trunk/Tools

Unreviewed. Change my primary mail address.

  • Scripts/webkitpy/common/config/contributors.json:
8:16 AM Changeset in webkit [153922] by Carlos Garcia Campos
  • 4 edits in trunk/Source

Unreviewed. Fix make distcheck.

Source/WebCore:

  • GNUmakefile.list.am: Remove unexistent header file.

Source/WTF:

  • GNUmakefile.list.am: Add missing header file.
Note: See TracTimeline for information about the timeline view.