Timeline



Sep 12, 2012:

11:59 PM Changeset in webkit [128410] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96308

  • platform/chromium-mac/fast/table/height-percent-test-vertical-expected.png:

Rebaseline for http://trac.webkit.org/changeset/128375.

11:59 PM Changeset in webkit [128409] by leandrogracia@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Fix cases where find-in-page doesn't send a final update
https://bugs.webkit.org/show_bug.cgi?id=96402

Fix some issues in the WebKit implementation that prevented to send a final
reportFindInPageMatchCount message.

Reviewed by Adam Barth.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::shouldScopeMatches):

11:55 PM Changeset in webkit [128408] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Removing crash expectations for accessibility tests that were added in
r128342. The offending commit was reverted in r128353.

Adding text mismatch expectations for two tests that probably require
rebaselining, failing since r128375.

Adding failure expectations for other regressions:

  • fast/canvas/canvas-css-crazy.html after r128374
  • fast/table/bad-replaced-sizing-preferred-logical-widths.html after r128389
  • fast/js/primitive-property-access-edge-cases.html after r128400
  • platform/gtk/TestExpectations:
11:46 PM Changeset in webkit [128407] by apavlov@chromium.org
  • 5 edits in trunk

Web Inspector: [Styles] Styles not updated when there is a heavy stream of DOM updates
https://bugs.webkit.org/show_bug.cgi?id=96482

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Update the Styles pane even if there is a pending rebuild update for the same current node.

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylesSidebarPane.prototype._rebuildUpdate):

LayoutTests:

  • inspector/styles/force-pseudo-state.html:
  • inspector/styles/force-pseudo-state-expected.txt:
11:44 PM Changeset in webkit [128406] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

css3/filters/custom/filter-fallback-to-software.html fails.
https://bugs.webkit.org/show_bug.cgi?id=94372.

Unreviewed.

Update TestExpectations.

  • platform/mac-wk2/TestExpectations:
10:54 PM Changeset in webkit [128405] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

AX: svg:image not accessible
https://bugs.webkit.org/show_bug.cgi?id=96341

Unreviewed.

Build fix for non-SVG ports.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

10:50 PM Changeset in webkit [128404] by yosin@chromium.org
  • 9 edits
    4 adds in trunk

New time input needs accessibility
https://bugs.webkit.org/show_bug.cgi?id=96032

Reviewed by Chris Fleizach.

Source/WebCore:

This patch adds accessibility support into multiple fields time input
UI by setting "role" HTML attribute of DateTimeFieldElement to "spinbutton"
and changing ARIA attributes to post value change notification.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

Tests: fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes.html

fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification.html

  • html/shadow/DateTimeFieldElement.cpp:

(WebCore::DateTimeFieldElement::DateTimeFieldElement): Changed to set
"role" HTML attribute to "spinbutton".
(WebCore::DateTimeFieldElement::initialize): Changed to set new
parameter axHelpText to aria-help attribute and set aria-valuemax and
aria-valuemin attributes.
(WebCore::DateTimeFieldElement::updateVisibleValue): Changed to set
aria-valuetext and aria-valuenow attributes.

  • html/shadow/DateTimeFieldElement.h:

(DateTimeFieldElement): Changed to add new parameter axHelpText to initialize().

  • html/shadow/DateTimeFieldElements.cpp:

(WebCore::DateTimeAMPMFieldElement::create): Changed to add new argument.
(WebCore::DateTimeHourFieldElement::create): ditto.
(WebCore::DateTimeMillisecondFieldElement::create): ditto.
(WebCore::DateTimeMinuteFieldElement::create): ditto.
(WebCore::DateTimeSecondFieldElement::create): ditto.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::maximum): Added for DateTimeFieldElement::initialize().
(WebCore::DateTimeNumericFieldElement::minimum): ditto.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement): Added maximum() and minimum() declarations.

  • html/shadow/DateTimeSymbolicFieldElement.cpp:

(WebCore::DateTimeSymbolicFieldElement::maximum): Added for DateTimeFieldElement::initialize().
(WebCore::DateTimeSymbolicFieldElement::minimum): ditto.

  • html/shadow/DateTimeSymbolicFieldElement.h:

(DateTimeSymbolicFieldElement): Added maximum() and minimum() declarations.

LayoutTests:

This patch adds two tests for checking accessibility functionalities
in multiple fields time input UI.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

  • fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes-expected.txt: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes.html: Added to check ARIA attributes used in multiple fields time input UI.
  • fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification-expected.txt: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification.html: Added to check accessibility notification supports in multiple fields time input UI.
10:09 PM Changeset in webkit [128403] by commit-queue@webkit.org
  • 46 edits in trunk

Unreviewed, rolling out r127876.
http://trac.webkit.org/changeset/127876
https://bugs.webkit.org/show_bug.cgi?id=96600

mouse click doesn't work for spin button if spin button in
iframe (Requested by yosin on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • WebCore.exp.in:
  • WebCore.order:
  • dom/Document.cpp:

(WebCore::Document::nodesFromRect):

  • dom/Document.h:

(Document):

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::createContextMenu):

  • page/DragController.cpp:

(WebCore::DragController::canProcessDrag):
(WebCore::DragController::startDrag):

  • page/EventHandler.cpp:

(WebCore::EventHandler::updateAutoscrollRenderer):
(WebCore::EventHandler::hitTestResultAtPoint):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::bestClickableNodeForTouchPoint):
(WebCore::EventHandler::bestContextMenuNodeForTouchPoint):
(WebCore::EventHandler::bestZoomableAreaForTouchPoint):
(WebCore::EventHandler::handleTouchEvent):

  • page/EventHandler.h:

(EventHandler):

  • page/FocusController.cpp:

(WebCore::updateFocusCandidateIfNeeded):

  • page/Frame.cpp:

(WebCore::Frame::visiblePositionForPoint):
(WebCore::Frame::documentAtPoint):

  • page/TouchDisambiguation.cpp:

(WebCore::findGoodTouchTargets):

  • rendering/HitTestRequest.h:
  • testing/Internals.cpp:

(WebCore::Internals::nodesFromRect):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::contextNode):
(BlackBerry::WebKit::WebPagePrivate::nodeForZoomUnderPoint):
(BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
(BlackBerry::WebKit::WebPage::nodeAtPoint):

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::getNodesFromRect):
(BlackBerry::WebKit::FatFingers::getRelevantInfoFromPoint):

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::visiblePositionForPointIgnoringClipping):

Source/WebKit/chromium:

  • src/ContextMenuClientImpl.cpp:

(WebKit::selectMisspelledWord):

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchDecidePolicyForNavigationAction):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::characterIndexForPoint):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::isRectTopmost):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleMouseUp):
(WebKit::WebViewImpl::computeBlockBounds):

Source/WebKit/efl:

  • ewk/ewk_frame.cpp:

(ewk_frame_hit_test_new):

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::actionDictionary):

  • WebView/WebHTMLView.mm:

(-[WebHTMLView elementAtPoint:allowShadowContent:]):

Source/WebKit/qt:

  • Api/qwebframe.cpp:

(QWebFrame::hitTestContent):

  • Api/qwebpage.cpp:

(QWebPagePrivate::handleSoftwareInputPanel):
(QWebPagePrivate::TouchAdjuster::findCandidatePointForTouch):
(QWebPage::updatePositionDependentActions):

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):

Source/WebKit/win:

  • WebActionPropertyBag.cpp:

(WebActionPropertyBag::Read):

  • WebView.cpp:

(WebView::handleContextMenuEvent):
(WebView::elementAtPoint):

Source/WebKit/wx:

  • WebFrame.cpp:

(WebKit::WebFrame::HitTest):

Source/WebKit2:

  • WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:

(WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::handleContextMenuEvent):
(WebKit::WebPage::highlightPotentialActivation):
(WebKit::WebPage::findZoomableAreaForPoint):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::characterIndexForPoint):
(WebKit::WebPage::performDictionaryLookupAtLocation):
(WebKit::WebPage::shouldDelayWindowOrderingEvent):
(WebKit::WebPage::acceptsFirstMouse):

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
9:50 PM FeatureFlags edited by tkent@chromium.org
OVERFLOW_SCROLLING -> ACCELERATED_OVERFLOW_SCROLLING (diff)
9:33 PM Changeset in webkit [128402] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96308

  • platform/chromium-win/fast/table/height-percent-test-vertical-expected.png:

Rebaseline for http://trac.webkit.org/changeset/128375.

9:21 PM Changeset in webkit [128401] by mitz@apple.com
  • 2 edits in trunk/Source/WTF

Removed a reference to a file that doesn’t participate in any target.

  • WTF.xcodeproj/project.pbxproj: Removed the reference to

CONTRIBUTORS.pthreads-win32.

9:18 PM Changeset in webkit [128400] by fpizlo@apple.com
  • 104 edits
    14 adds
    1 delete in trunk

JSC should have property butterflies
https://bugs.webkit.org/show_bug.cgi?id=91933

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This changes the JSC object model. Previously, all objects had fast lookup for
named properties. Integer indexed properties were only fast if you used a
JSArray. With this change, all objects have fast indexed properties. This is
accomplished without any space overhead by using a bidirectional object layout,
aka butterflies. Each JSObject has a m_butterfly pointer where previously it
had a m_outOfLineStorage pointer. To the left of the location pointed to by
m_butterfly, we place all named out-of-line properties. To the right, we place
all indexed properties along with indexing meta-data. Though, some indexing
meta-data is placed in the 8-byte word immediately left of the pointed-to
location; this is in anticipation of the indexing meta-data being small enough
in the common case that m_butterfly always points to the first indexed
property.

This is performance neutral, except on tests that use indexed properties on
plain objects, where the speed-up is in excess of an order of magnitude.

One notable aspect of what this change brings is that it allows indexing
storage to morph over time. Currently this is only used to allow all non-array
objects to start out without any indexed storage. But it could be used for
some kinds of array type inference in the future.

  • API/JSCallbackObject.h:

(JSCallbackObject):

  • API/JSCallbackObjectFunctions.h:

(JSC::::getOwnPropertySlotByIndex):
(JSC):
(JSC::::getOwnNonIndexPropertyNames):

  • API/JSObjectRef.cpp:
  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/ArrayProfile.h:

(JSC):
(JSC::arrayModeFromStructure):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitDirectPutById):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGAdjacencyList.h:

(JSC::DFG::AdjacencyList::AdjacencyList):
(AdjacencyList):

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::fromObserved):
(JSC::DFG::modeAlreadyChecked):
(JSC::DFG::modeToString):

  • dfg/DFGArrayMode.h:

(DFG):
(JSC::DFG::modeUsesButterfly):
(JSC::DFG::modeIsJSArray):
(JSC::DFG::isInBoundsAccess):
(JSC::DFG::modeSupportsLength):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::getPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::addNode):
(FixupPhase):
(JSC::DFG::FixupPhase::checkArray):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::byValIsPure):

  • dfg/DFGNode.h:

(JSC::DFG::Node::Node):
(Node):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGOperations.cpp:

(JSC::DFG::putByVal):

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

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

  • dfg/DFGRepatch.cpp:

(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::emitPutReplaceStub):
(JSC::DFG::emitPutTransitionStub):
(JSC::DFG::tryBuildPutByIdList):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):

  • dfg/DFGSpeculativeJIT.h:

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

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGStructureCheckHoistingPhase.cpp:

(JSC::DFG::StructureCheckHoistingPhase::run):

  • heap/CopiedSpace.h:

(CopiedSpace):

  • jit/JIT.h:
  • jit/JITInlineMethods.h:

(JSC::JIT::emitAllocateBasicJSObject):
(JSC::JIT::emitAllocateBasicStorage):
(JSC::JIT::emitAllocateJSArray):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_new_array):
(JSC::JIT::emitSlow_op_new_array):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::compilePutDirectOffset):
(JSC::JIT::privateCompilePatchGetArrayLength):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::compilePutDirectOffset):
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::privateCompilePatchGetArrayLength):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • jsc.cpp:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/Arguments.cpp:

(JSC::Arguments::deletePropertyByIndex):
(JSC::Arguments::defineOwnProperty):

  • runtime/ArrayConstructor.cpp:
  • runtime/ArrayConventions.h: Added.

(JSC):
(JSC::isDenseEnoughForVector):
(JSC::indexingHeaderForArray):
(JSC::baseIndexingHeaderForArray):

  • runtime/ArrayPrototype.cpp:

(JSC::ArrayPrototype::create):
(JSC):
(JSC::ArrayPrototype::ArrayPrototype):
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncMap):
(JSC::arrayProtoFuncEvery):
(JSC::arrayProtoFuncForEach):
(JSC::arrayProtoFuncSome):
(JSC::arrayProtoFuncReduce):
(JSC::arrayProtoFuncReduceRight):

  • runtime/ArrayPrototype.h:

(ArrayPrototype):
(JSC::ArrayPrototype::createStructure):

  • runtime/ArrayStorage.h: Added.

(JSC):
(ArrayStorage):
(JSC::ArrayStorage::ArrayStorage):
(JSC::ArrayStorage::from):
(JSC::ArrayStorage::butterfly):
(JSC::ArrayStorage::indexingHeader):
(JSC::ArrayStorage::length):
(JSC::ArrayStorage::setLength):
(JSC::ArrayStorage::vectorLength):
(JSC::ArrayStorage::setVectorLength):
(JSC::ArrayStorage::copyHeaderFromDuringGC):
(JSC::ArrayStorage::inSparseMode):
(JSC::ArrayStorage::lengthOffset):
(JSC::ArrayStorage::vectorLengthOffset):
(JSC::ArrayStorage::numValuesInVectorOffset):
(JSC::ArrayStorage::vectorOffset):
(JSC::ArrayStorage::indexBiasOffset):
(JSC::ArrayStorage::sparseMapOffset):
(JSC::ArrayStorage::sizeFor):

  • runtime/Butterfly.h: Added.

(JSC):
(Butterfly):
(JSC::Butterfly::Butterfly):
(JSC::Butterfly::totalSize):
(JSC::Butterfly::fromBase):
(JSC::Butterfly::offsetOfIndexingHeader):
(JSC::Butterfly::offsetOfPublicLength):
(JSC::Butterfly::offsetOfVectorLength):
(JSC::Butterfly::indexingHeader):
(JSC::Butterfly::propertyStorage):
(JSC::Butterfly::indexingPayload):
(JSC::Butterfly::arrayStorage):
(JSC::Butterfly::offsetOfPropertyStorage):
(JSC::Butterfly::indexOfPropertyStorage):
(JSC::Butterfly::base):

  • runtime/ButterflyInlineMethods.h: Added.

(JSC):
(JSC::Butterfly::createUninitialized):
(JSC::Butterfly::create):
(JSC::Butterfly::createUninitializedDuringCollection):
(JSC::Butterfly::base):
(JSC::Butterfly::growPropertyStorage):
(JSC::Butterfly::growArrayRight):
(JSC::Butterfly::resizeArray):
(JSC::Butterfly::unshift):
(JSC::Butterfly::shift):

  • runtime/ClassInfo.h:

(MethodTable):
(JSC):

  • runtime/IndexingHeader.h: Added.

(JSC):
(IndexingHeader):
(JSC::IndexingHeader::offsetOfIndexingHeader):
(JSC::IndexingHeader::offsetOfPublicLength):
(JSC::IndexingHeader::offsetOfVectorLength):
(JSC::IndexingHeader::IndexingHeader):
(JSC::IndexingHeader::vectorLength):
(JSC::IndexingHeader::setVectorLength):
(JSC::IndexingHeader::publicLength):
(JSC::IndexingHeader::setPublicLength):
(JSC::IndexingHeader::from):
(JSC::IndexingHeader::fromEndOf):
(JSC::IndexingHeader::propertyStorage):
(JSC::IndexingHeader::arrayStorage):
(JSC::IndexingHeader::butterfly):

  • runtime/IndexingHeaderInlineMethods.h: Added.

(JSC):
(JSC::IndexingHeader::preCapacity):
(JSC::IndexingHeader::indexingPayloadSizeInBytes):

  • runtime/IndexingType.h: Added.

(JSC):
(JSC::hasIndexingHeader):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::JSActivation):
(JSC::JSActivation::visitChildren):
(JSC::JSActivation::getOwnNonIndexPropertyNames):

  • runtime/JSActivation.h:

(JSActivation):
(JSC::JSActivation::tearOff):

  • runtime/JSArray.cpp:

(JSC):
(JSC::createArrayButterflyInDictionaryIndexingMode):
(JSC::JSArray::setLengthWritable):
(JSC::JSArray::defineOwnProperty):
(JSC::JSArray::getOwnPropertySlot):
(JSC::JSArray::getOwnPropertyDescriptor):
(JSC::JSArray::put):
(JSC::JSArray::deleteProperty):
(JSC::JSArray::getOwnNonIndexPropertyNames):
(JSC::JSArray::unshiftCountSlowCase):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::push):
(JSC::JSArray::shiftCount):
(JSC::JSArray::unshiftCount):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):
(JSC::JSArray::compactForSorting):

  • runtime/JSArray.h:

(JSC):
(JSArray):
(JSC::JSArray::JSArray):
(JSC::JSArray::length):
(JSC::JSArray::createStructure):
(JSC::JSArray::isLengthWritable):
(JSC::createArrayButterfly):
(JSC::JSArray::create):
(JSC::JSArray::tryCreateUninitialized):

  • runtime/JSBoundFunction.cpp:

(JSC::boundFunctionCall):
(JSC::boundFunctionConstruct):
(JSC::JSBoundFunction::finishCreation):

  • runtime/JSCell.cpp:

(JSC::JSCell::getOwnNonIndexPropertyNames):
(JSC):

  • runtime/JSCell.h:

(JSCell):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getOwnPropertyDescriptor):
(JSC::JSFunction::getOwnNonIndexPropertyNames):
(JSC::JSFunction::defineOwnProperty):

  • runtime/JSFunction.h:

(JSFunction):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):

  • runtime/JSONObject.cpp:

(JSC::Stringifier::Holder::appendNextProperty):
(JSC::Walker::walk):

  • runtime/JSObject.cpp:

(JSC):
(JSC::JSObject::visitButterfly):
(JSC::JSObject::visitChildren):
(JSC::JSFinalObject::visitChildren):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::JSObject::put):
(JSC::JSObject::putByIndex):
(JSC::JSObject::enterDictionaryIndexingModeWhenArrayStorageAlreadyExists):
(JSC::JSObject::enterDictionaryIndexingMode):
(JSC::JSObject::createArrayStorage):
(JSC::JSObject::createInitialArrayStorage):
(JSC::JSObject::ensureArrayStorageExistsAndEnterDictionaryIndexingMode):
(JSC::JSObject::putDirectAccessor):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::getOwnNonIndexPropertyNames):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::fillGetterPropertySlot):
(JSC::JSObject::putIndexedDescriptor):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::allocateSparseIndexMap):
(JSC::JSObject::deallocateSparseIndexMap):
(JSC::JSObject::putByIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putDirectIndexBeyondVectorLength):
(JSC::JSObject::getNewVectorLength):
(JSC::JSObject::increaseVectorLength):
(JSC::JSObject::checkIndexingConsistency):
(JSC::JSObject::growOutOfLineStorage):
(JSC::JSObject::getOwnPropertyDescriptor):
(JSC::putDescriptor):
(JSC::JSObject::putDirectMayBeIndex):
(JSC::JSObject::defineOwnNonIndexProperty):
(JSC::JSObject::defineOwnProperty):
(JSC::JSObject::getOwnPropertySlotSlow):

  • runtime/JSObject.h:

(JSC::JSObject::getArrayLength):
(JSObject):
(JSC::JSObject::getVectorLength):
(JSC::JSObject::putDirectIndex):
(JSC::JSObject::canGetIndexQuickly):
(JSC::JSObject::getIndexQuickly):
(JSC::JSObject::canSetIndexQuickly):
(JSC::JSObject::setIndexQuickly):
(JSC::JSObject::initializeIndex):
(JSC::JSObject::completeInitialization):
(JSC::JSObject::inSparseIndexingMode):
(JSC::JSObject::butterfly):
(JSC::JSObject::outOfLineStorage):
(JSC::JSObject::offsetForLocation):
(JSC::JSObject::indexingShouldBeSparse):
(JSC::JSObject::butterflyOffset):
(JSC::JSObject::butterflyAddress):
(JSC::JSObject::arrayStorage):
(JSC::JSObject::arrayStorageOrZero):
(JSC::JSObject::ensureArrayStorage):
(JSC::JSObject::checkIndexingConsistency):
(JSC::JSNonFinalObject::JSNonFinalObject):
(JSC):
(JSC::JSObject::setButterfly):
(JSC::JSObject::setButterflyWithoutChangingStructure):
(JSC::JSObject::JSObject):
(JSC::JSObject::inlineGetOwnPropertySlot):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
(JSC::JSObject::putDirectWithoutTransition):
(JSC::offsetInButterfly):
(JSC::offsetRelativeToPatchedStorage):
(JSC::indexRelativeToBase):
(JSC::offsetRelativeToBase):

  • runtime/JSPropertyNameIterator.cpp:

(JSC::JSPropertyNameIterator::create):

  • runtime/JSSymbolTableObject.cpp:

(JSC::JSSymbolTableObject::getOwnNonIndexPropertyNames):

  • runtime/JSSymbolTableObject.h:

(JSSymbolTableObject):

  • runtime/JSTypeInfo.h:

(JSC):
(JSC::TypeInfo::interceptsGetOwnPropertySlotByIndexEvenWhenLengthIsNotZero):
(JSC::TypeInfo::overridesGetPropertyNames):

  • runtime/LiteralParser.cpp:

(JSC::::parse):

  • runtime/ObjectConstructor.cpp:
  • runtime/ObjectPrototype.cpp:

(JSC::ObjectPrototype::ObjectPrototype):
(JSC):

  • runtime/ObjectPrototype.h:

(ObjectPrototype):

  • runtime/PropertyOffset.h:

(JSC::offsetInOutOfLineStorage):

  • runtime/PropertyStorage.h: Added.

(JSC):

  • runtime/PutDirectIndexMode.h: Added.

(JSC):

  • runtime/RegExpMatchesArray.cpp:

(JSC::RegExpMatchesArray::RegExpMatchesArray):
(JSC):
(JSC::RegExpMatchesArray::create):
(JSC::RegExpMatchesArray::finishCreation):

  • runtime/RegExpMatchesArray.h:

(RegExpMatchesArray):
(JSC::RegExpMatchesArray::createStructure):

  • runtime/RegExpObject.cpp:

(JSC::RegExpObject::getOwnNonIndexPropertyNames):

  • runtime/RegExpObject.h:

(RegExpObject):

  • runtime/Reject.h: Added.

(JSC):
(JSC::reject):

  • runtime/SparseArrayValueMap.cpp: Added.

(JSC):

  • runtime/SparseArrayValueMap.h: Added.

(JSC):
(SparseArrayEntry):
(JSC::SparseArrayEntry::SparseArrayEntry):
(SparseArrayValueMap):
(JSC::SparseArrayValueMap::sparseMode):
(JSC::SparseArrayValueMap::setSparseMode):
(JSC::SparseArrayValueMap::lengthIsReadOnly):
(JSC::SparseArrayValueMap::setLengthIsReadOnly):
(JSC::SparseArrayValueMap::find):
(JSC::SparseArrayValueMap::remove):
(JSC::SparseArrayValueMap::notFound):
(JSC::SparseArrayValueMap::isEmpty):
(JSC::SparseArrayValueMap::contains):
(JSC::SparseArrayValueMap::size):
(JSC::SparseArrayValueMap::begin):
(JSC::SparseArrayValueMap::end):

  • runtime/SparseArrayValueMapInlineMethods.h: Added.

(JSC):
(JSC::SparseArrayValueMap::SparseArrayValueMap):
(JSC::SparseArrayValueMap::~SparseArrayValueMap):
(JSC::SparseArrayValueMap::finishCreation):
(JSC::SparseArrayValueMap::create):
(JSC::SparseArrayValueMap::destroy):
(JSC::SparseArrayValueMap::createStructure):
(JSC::SparseArrayValueMap::add):
(JSC::SparseArrayValueMap::putEntry):
(JSC::SparseArrayValueMap::putDirect):
(JSC::SparseArrayEntry::get):
(JSC::SparseArrayEntry::getNonSparseMode):
(JSC::SparseArrayValueMap::visitChildren):

  • runtime/StorageBarrier.h: Removed.
  • runtime/StringObject.cpp:

(JSC::StringObject::putByIndex):
(JSC):
(JSC::StringObject::deletePropertyByIndex):

  • runtime/StringObject.h:

(StringObject):

  • runtime/StringPrototype.cpp:
  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::nonPropertyTransition):
(JSC):

  • runtime/Structure.h:

(Structure):
(JSC::Structure::indexingType):
(JSC::Structure::indexingTypeIncludingHistory):
(JSC::Structure::indexingTypeOffset):
(JSC::Structure::create):

  • runtime/StructureTransitionTable.h:

(JSC):
(JSC::toAttributes):
(JSC::newIndexingType):
(JSC::StructureTransitionTable::Hash::hash):

  • tests/mozilla/js1_6/Array/regress-304828.js:

Source/WebCore:

Teach the DOM that to intercept get/put on indexed properties, you now have
to override getOwnPropertySlotByIndex and putByIndex.

No new tests because no new behavior. One test was rebased because indexed
property iteration order now matches other engines (indexed properties always
come first).

  • bindings/js/ArrayValue.cpp:

(WebCore::ArrayValue::get):

  • bindings/js/JSBlobCustom.cpp:

(WebCore::JSBlobConstructor::constructJSBlob):

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp:

(WebCore::JSCanvasRenderingContext2D::setWebkitLineDash):

  • bindings/js/JSDOMStringListCustom.cpp:

(WebCore::toDOMStringList):

  • bindings/js/JSDOMStringMapCustom.cpp:

(WebCore::JSDOMStringMap::deletePropertyByIndex):
(WebCore):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore):
(WebCore::JSDOMWindow::putByIndex):
(WebCore::JSDOMWindow::deletePropertyByIndex):

  • bindings/js/JSDOMWindowShell.cpp:

(WebCore::JSDOMWindowShell::getOwnPropertySlotByIndex):
(WebCore):
(WebCore::JSDOMWindowShell::putByIndex):
(WebCore::JSDOMWindowShell::deletePropertyByIndex):

  • bindings/js/JSDOMWindowShell.h:

(JSDOMWindowShell):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::JSHistory::deletePropertyByIndex):
(WebCore):

  • bindings/js/JSInspectorFrontendHostCustom.cpp:

(WebCore::populateContextMenuItems):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::JSLocation::deletePropertyByIndex):
(WebCore):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::deletePropertyByIndex):
(WebCore):

  • bindings/js/JSWebSocketCustom.cpp:

(WebCore::JSWebSocketConstructor::constructJSWebSocket):

  • bindings/js/ScriptValue.cpp:

(WebCore::jsToInspectorValue):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneSerializer::serialize):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::RuntimeArray):

  • bridge/runtime_array.h:

(JSC::RuntimeArray::createStructure):
(RuntimeArray):

LayoutTests:

Modify the JSON test to indicate that iterating over properties now returns
indexed properties first. This is a behavior change that makes us more
compliant with other implementations.

Also check in new expected file for the edge cases of indexed property access
with prototype accessors. This changeset introduces a known regression in that
department, which is tracked here: https://bugs.webkit.org/show_bug.cgi?id=96596

  • fast/js/resources/JSON-stringify.js:
  • platform/mac/fast/js/primitive-property-access-edge-cases-expected.txt: Added.
9:18 PM Changeset in webkit [128399] by Csaba Osztrogonác
  • 4 edits
    1 add in trunk/Tools

Add SVN mirror handling feature to build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=85887

Reviewed by Dirk Pranke.

  • BuildSlaveSupport/build.webkit.org-config/config.json: Add SVN mirrors for Qt buildslaves hosted in Szeged.
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(ConfigureBuild.init): Add SVNMirror property to be able to watch which slaves use which mirror on build.webkit.org.
(ConfigureBuild.start):
(CheckOutSource.init): Set baseURL to the SVNMirror or the default http://svn.webkit.org/repository/webkit/
(WaitForSVNServer): Add new buildstep for waiting the SVNMirror to be in sync with http://svn.webkit.org/repository/webkit/
(Factory.init):
(BuildFactory.init):
(TestFactory.init):
(BuildAndTestFactory.init):
(BuildAndPerfTestFactory.init):
(BuildAndPerfTestWebKit2Factory.init):
(DownloadAndPerfTestFactory.init):
(DownloadAndPerfTestWebKit2Factory.init):
(loadBuilderConfig): Use kwargs instead of args to be able to add the optional SVNMirror factory argument.

  • BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:

(SVNMirrorTest):
(SVNMirrorTest.setUp): Load config.json once at startup.
(SVNMirrorTest.get_SVNMirrorFromConfig): Get the SVNMirror from config.json for a given buildslave.
(SVNMirrorTest.test_CheckOutSource): Compare CheckOutSource.baseURL with SVNMirror in config.json for all builders

  • BuildSlaveSupport/build.webkit.org-config/wait-for-SVN-server.py: Added.

(getLatestSVNRevision): Get the latest SVN revison from the given server.
(waitForSVNRevision): Wait until the given SVN revision is committed to the given server. It doesn't wait if the

SVN revision is empty (force build triggered without revision) or the server is unavailable.

8:22 PM Changeset in webkit [128398] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96594

  • platform/chromium/TestExpectations:

fast/table/bad-replaced-sizing-preferred-logical-widths.html fails on Mac.

8:00 PM Changeset in webkit [128397] by dgrogan@chromium.org
  • 2 edits in trunk/LayoutTests

Fix indexeddb/basics-shared-workers-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=96591

Reviewed by Kent Tamura.

Needed to pass IndexedDBLayoutTest.BasicTests in content_browsertests
after 128370.

  • storage/indexeddb/basics-shared-workers-expected.txt:
7:20 PM Changeset in webkit [128396] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html fails on Mac.
https://bugs.webkit.org/show_bug.cgi?id=96583

Unreviewed.

Update TestExpectations

  • platform/mac/TestExpectations:
7:13 PM Changeset in webkit [128395] by commit-queue@webkit.org
  • 4 edits in trunk

[WK2][WTR] Set waitUntilDone watchdog timer value equal to WK1.
https://bugs.webkit.org/show_bug.cgi?id=81606

Patch by Kangil Han <kangil.han@samsung.com> on 2012-09-12
Reviewed by Tim Horton.

Tools:

6 seconds is harsh for some jquery test cases.
Therefore, adjust the value to match DumpRenderTree.

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR):

LayoutTests:

Unskip jQuery tests which will now consistently pass due to the increased waitUntilDone timeout.

  • platform/wk2/Skipped:
6:02 PM Changeset in webkit [128394] by tkent@chromium.org
  • 10 edits
    1 add in trunk/Source/WebCore

Introduce ValidationMessageClient
https://bugs.webkit.org/show_bug.cgi?id=96238

Reviewed by Hajime Morita.

ValidationMessageClient interface is responsible to operate validation
message UI for interactive form validation. If a Page object has a
ValidtionMessageClient, ValidationMessae class uses
ValidtionMessageClient instead of Shadow DOM.

No new tests because of no behavior changes.

  • GNUmakefile.list.am: Add ValidtionMessageClient.h.
  • Target.pri: ditto.
  • WebCore.gypi: ditto.
  • WebCore.xcodeproj/project.pbxproj: ditto.
  • html/ValidationMessage.cpp:

(WebCore::ValidationMessage::~ValidationMessage):
Hide a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::validationMessageClient):
A helper function to get Page::validationMessageClient.
(WebCore::ValidationMessage::updateValidationMessage):
Adding title attribute is not neeeded if ValidationMessageClient is
used. It shoudl be handled in a ValidtionMessageClient implementation.
(WebCore::ValidationMessage::setMessage):
Show a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::setMessageDOMAndStartTimer):
Add an assertion that ValidationMessageClient should not be available.
(WebCore::ValidationMessage::buildBubbleTree): ditto.
(WebCore::ValidationMessage::requestToHideMessage):
Hide a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::shadowTreeContains):
Always returns false if ValidationMessageClient is available, it means no Shadow DOM.
(WebCore::ValidationMessage::deleteBubbleTree):
Add an assertion that ValidationMessageClient should not be available.
(WebCore::ValidationMessage::isVisible):
Ask ValidationMessageClient for visibility if it is available.

  • html/ValidationMessage.h:

(WebCore): Add a comment.
(ValidationMessage): Add validtionMessageClient member function.

  • page/Page.cpp:

(WebCore::Page::Page): Initialize m_validationMessageClient.
(WebCore::Page::PageClients::PageClients):
Initialize validationMessageClient member with 0.
So, existing code makes Page::m_validationMessageClient 0.

  • page/Page.h:

(PageClients): Add validationMessageClient member.
(WebCore::Page::validationMessageClient):
Added. Accessor for m_validationMessageClient.
(Page): Add m_validationMessageClient.

  • page/Settings.h:

(Settings): Updated the comment for setInteractiveFormValidationEnabled.

  • page/ValidationMessageClient.h: Added.
5:56 PM Changeset in webkit [128393] by commit-queue@webkit.org
  • 12 edits in trunk

[EFL] Support download attribute feature
https://bugs.webkit.org/show_bug.cgi?id=96462

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-09-12
Reviewed by Gyuyoung Kim.

.:

  • Source/cmake/OptionsEfl.cmake: Enable DOWNLOAD_ATTRIBUTE feature.

Source/WebKit/efl:

Add suggested_name field on _Ewk_Download and set it on startDownload
to get suggested name passed as a download attribute.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::download):
(WebCore::FrameLoaderClientEfl::startDownload):

  • ewk/ewk_view.h:

Tools:

Enable DOWNLOAD_ATTRIBUTE feature for EFL port,
and add "download,request" callback to the DumpRenderTree for EFL.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::createView):
(DumpRenderTreeChrome::onDownloadRequest):

  • DumpRenderTree/efl/DumpRenderTreeChrome.h:

(DumpRenderTreeChrome):

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

  • platform/efl/Skipped: Unskip test cases related to download attributes.
  • platform/efl-wk2/TestExpectations: Add test cases related to download attributes because they are still failed for WK2
5:52 PM Changeset in webkit [128392] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

css3/filters/custom/filter-fallback-to-software.html fails on Debug WK2.
https://bugs.webkit.org/show_bug.cgi?id=94372.

Unreviewed.

  • platform/mac-wk2/TestExpectations:
5:49 PM Changeset in webkit [128391] by Stephanie Lewis
  • 2 edits in trunk/Tools

Reduce parallism on the wk2 testers.
https://bugs.webkit.org/show_bug.cgi?id=95906

Reviewed by Dirk Pranke.

The wk2 testers on Mountain Lion are getting stuck and timing out. The problem appears to be due to
resource contention. Reducing the number of processes alleviates the issue.

Starting by reducing 25%.

  • Scripts/webkitpy/layout_tests/port/mac.py:

(MacPort.default_child_processes):

5:43 PM Changeset in webkit [128390] by dimich@chromium.org
  • 6 edits in trunk/Source/WebCore

[V8] OOM in Workers due to external memory retention.
https://bugs.webkit.org/show_bug.cgi?id=96459

Reviewed by David Levin.

Added memory checks to the locations in Workers code that are about to invoke the next JS block.

  • bindings/v8/ScheduledAction.cpp:

(WebCore::ScheduledAction::execute):

  • bindings/v8/V8GCController.cpp:

(WebCore):
(WebCore::workingSetEstimateMBMutex): Added a Mutex-protected accessors to a static caching WS estimate.
(WebCore::V8GCController::gcEpilogue):
(WebCore::V8GCController::checkMemoryUsage):

  • bindings/v8/V8GCController.h:

(V8GCController):

  • bindings/v8/V8WorkerContextEventListener.cpp:

(WebCore::V8WorkerContextEventListener::callListenerFunction):

  • bindings/v8/WorkerContextExecutionProxy.cpp:

(WebCore::WorkerContextExecutionProxy::evaluate):

5:30 PM Changeset in webkit [128389] by jchaffraix@webkit.org
  • 4 edits
    4 adds in trunk

REGRESSION(r122501): replaced elements with percent width are wrongly size when inserted inside an auto-table layout
https://bugs.webkit.org/show_bug.cgi?id=95892

Reviewed by Ojan Vafai.

Source/WebCore:

r122501 exposed an issue in how preferred logical widths are computed on replaced objects. The code relies on the
logical width computation methods. Unfortunately the previous code relies on the layout information, which may not
be up-to-date during preferred logical width computation.

Test: fast/table/bad-replaced-sizing-preferred-logical-widths.html

fast/replaced/vertical-writing-mode-max-logical-width.html

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeMaxPreferredLogicalWidth):
Added this helper method. The main difference with the old code is that it handles the percent logical width
properly before calling the old code path. This is not totally right but before forking the whole code, it's
better to have more evidence that forking preferred logical widths and logical width computation is the way to go.

(WebCore::RenderReplaced::computePreferredLogicalWidths):
Changed to call computeMaxPreferredLogicalWidth. Also fixed an existing bug in vertical-writing modes where we would
add the wrong paddings and borders.

  • rendering/RenderReplaced.h:

(RenderReplaced): Added computeMaxPreferredLogicalWidth.

LayoutTests:

  • fast/replaced/vertical-writing-mode-max-logical-width-replaced-expected.txt: Added.
  • fast/replaced/vertical-writing-mode-max-logical-width-replaced.html: Added.
  • fast/table/bad-replaced-sizing-preferred-logical-widths-expected.txt: Added.
  • fast/table/bad-replaced-sizing-preferred-logical-widths.html: Added.
  • fast/table/resources/iframe.html: Added.
5:18 PM Changeset in webkit [128388] by beidson@apple.com
  • 7 edits
    3 adds in trunk

Assert in NetscapePlugin::destroy() with async plugin init
<rdar://problem/12277595> and https://bugs.webkit.org/show_bug.cgi?id=96576

Reviewed by Anders Carlsson.

Source/WebKit2:

Most of the NPN_* API calls have a plug-in protector during the calls.
NPN_Invoke and NPN_InvokeDefault do not.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_Invoke): Protect the plug-in during this call.
(WebKit::NPN_InvokeDefault): Ditto.

Tools:

Expose NPN_Invoke to plug-in tests:

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:

(PluginTest::NPN_Invoke):

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.h:

(PluginTest):

Add a test that uses NPN_Invoke on the window object from inside NPP_New to remove the plug-in element:

  • DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp: Added.

(InvokeDestroysPluginWithinNPP_New):
(InvokeDestroysPluginWithinNPP_New::InvokeDestroysPluginWithinNPP_New):
(InvokeDestroysPluginWithinNPP_New::NPP_New):

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

LayoutTests:

  • platform/mac-wk2/plugins/destroy-during-async-npp-new-expected.txt: Added.
  • platform/mac-wk2/plugins/destroy-during-async-npp-new.html: Added.
5:17 PM Changeset in webkit [128387] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shaders] Cached validated programs are destroyed and recreated when there is only one custom filter animating
https://bugs.webkit.org/show_bug.cgi?id=96563

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-09-12
Reviewed by Dean Jackson.

Before this patch, in FilterEffectRenderer::build, we would first clear the old effects and
then create the new effects.

Suppose we have one FECustomFilter animating on the page. This FECustomFilter holds the last
reference to the cached validated program. Before this patch, we would first destroy the old
FECustomFilter, which would destroy its cached validated program. Then, we would create the
new FECustomFilter and have to recreate the validated program.

This patch makes FilterEffectRenderer::build keep the old effects around until we're
done creating the new effects. This way, we won't recreate validated programs.

No new tests. We can't test this because the validated program cache is not exposed to web
pages.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build):

5:13 PM Changeset in webkit [128386] by dpranke@chromium.org
  • 2 edits in trunk/Tools

refactor TestExpectations tokenization slightly in preparation for the new syntax
https://bugs.webkit.org/show_bug.cgi?id=96564

Reviewed by Ojan Vafai.

This change changes how we will tokenize/lex the
TestExpectations files, in preparation for supporting both the
old syntax and the new one. This change by itself should be a
no-op.

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectationParser._tokenize_line):
(TestExpectationParser):
(TestExpectationParser._tokenize_line_using_old_format):
(TestExpectationParser._tokenize_line_using_new_format):

5:09 PM Changeset in webkit [128385] by dpranke@chromium.org
  • 5 edits
    2 deletes in trunk/Tools

remove unused testexpectations editing code from webkitpy, garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=96562

Reviewed by Adam Barth.

This code was prototyped but never fully realized. Removing
until it reanimates :).

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout_unittests.js:
  • Scripts/webkitpy/layout_tests/controllers/test_expectations_editor.py: Removed.
  • Scripts/webkitpy/layout_tests/controllers/test_expectations_editor_unittest.py: Removed.
  • Scripts/webkitpy/tool/servers/gardeningserver.py:

(BuildCoverageExtrapolator.extrapolate_test_configurations):
(GardeningHTTPRequestHandler._run_webkit_patch):
(GardeningHTTPRequestHandler.ping):

  • Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:

(BuildCoverageExtrapolatorTest.test_extrapolate):
(GardeningServerTest.test_rebaseline_new_port):

5:04 PM Changeset in webkit [128384] by jamesr@google.com
  • 2 edits
    1 add in trunk/LayoutTests

Rebaseline chromium-mac pixel results for 128375

  • platform/chromium-mac-snowleopard/fast/table/height-percent-test-vertical-expected.png:
  • platform/chromium-mac/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added.
4:48 PM Changeset in webkit [128383] by tony@chromium.org
  • 3 edits
    2 adds in trunk

flex item sized incorrectly in a column flexbox with height set via top/bottom
https://bugs.webkit.org/show_bug.cgi?id=94855

Reviewed by Ojan Vafai.

Source/WebCore:

Stop using computeContentLogicalHeight() to get the height of the flexbox and
use computeLogicalHeight directly. This properly takes into account out of flow
positioning.

We can actually refactor some of this into common code, but I want to do that as
a separate pass.

Test: css3/flexbox/columns-height-set-via-top-bottom.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): Fix out of date comment.
(WebCore::RenderFlexibleBox::mainAxisContentExtent): Use computeLogicalHeight instead of computeContentLogicalHeight.
This code actually never gets used-- I'll try to remove in a follow up.
(WebCore::RenderFlexibleBox::computeAvailableFreeSpace): Use computeLogicalHeight instead of computeContentLogicalHeight.
(WebCore::RenderFlexibleBox::lineBreakLength): Use computeLogicalHeight instead of computeContentLogicalHeight.

LayoutTests:

Test where the height of a column flexbox is set via top and bottom.

  • css3/flexbox/columns-height-set-via-top-bottom-expected.txt: Added.
  • css3/flexbox/columns-height-set-via-top-bottom.html: Added.
4:44 PM Changeset in webkit [128382] by abarth@webkit.org
  • 4 edits in trunk/Source/WebCore

[V8] V8DOMWrapper::perContextData has no callers and can be removed
https://bugs.webkit.org/show_bug.cgi?id=96574

Reviewed by Kentaro Hara.

  • bindings/v8/V8DOMWrapper.cpp:
  • bindings/v8/V8DOMWrapper.h:

(WebCore::V8DOMWrapper::getCachedWrapper):

4:36 PM Changeset in webkit [128381] by Lucas Forschler
  • 2 edits in trunk/Tools

Remove unused bot, apple-xserve-1.
https://bugs.webkit.org/show_bug.cgi?id=96570

Reviewed by Stephanie Lewis.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
4:33 PM Changeset in webkit [128380] by Alexandru Chiculita
  • 13 edits
    2 adds in trunk

[CSS Shaders] Implement transform parameter animations for CSS Custom Filters
https://bugs.webkit.org/show_bug.cgi?id=94980

Reviewed by Dean Jackson.

Based on patch from Joshua Netterfield <jnetterfield@rim.com>.

Source/WebCore:

According to Section 39.2 of Filter Effects 1.0 Editor's draft
(https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html), animations
of transforms should be handled following the CSS3 transform interpolation
rules. This patch implements this functionality.

Test: css3/filters/custom/custom-filter-transforms-animation.html

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):
(WebCore):

  • platform/graphics/filters/CustomFilterNumberParameter.h:

(WebCore::CustomFilterNumberParameter::blend):

  • platform/graphics/filters/CustomFilterOperation.cpp:

(WebCore::blendCustomFilterParameters):
(WebCore::CustomFilterOperation::blend):

  • platform/graphics/filters/CustomFilterOperation.h:

(WebCore):
(WebCore::CustomFilterOperation::blendingNeedsRendererSize): Some filters need the box size, so that they could compute
Transforms. Right now only the CustomFilterOperation needs that, but I've implemented using this generic function.
(CustomFilterOperation):

  • platform/graphics/filters/CustomFilterParameter.h:

(CustomFilterParameter):

  • platform/graphics/filters/CustomFilterTransformParameter.h:

(CustomFilterTransformParameter):
(WebCore::CustomFilterTransformParameter::blend):

  • platform/graphics/filters/FilterOperation.h:

(WebCore::FilterOperation::FilterOperation::blend):
(FilterOperation):
(WebCore::FilterOperation::FilterOperation::blendingNeedsRendererSize):

  • platform/graphics/transforms/TransformOperations.cpp: Extracted the blending functions from CSSPropertyAnimation.cpp

so that they could be reused from other classes.
(WebCore::TransformOperations::blendByMatchingOperations):
(WebCore):
(WebCore::TransformOperations::blendByUsingMatrixInterpolation): Used when the TransformOperations do not match.
(WebCore::TransformOperations::blend): Uses when the caller doesn't know whether the TransformOperations match or not.

  • platform/graphics/transforms/TransformOperations.h:

(TransformOperations):

LayoutTests:

Added test transform animations in css3/filters/custom/custom-filter-transform-animation.html.

  • animations/resources/animation-test-helpers.js:

(customFilterParameterMatch): Extracted the parameter matching from filterParametersMatch and added function parameters matching.
This should work for all functions that have number parameters, ie. arrays, mat4 functions.

(filterParametersMatch):

  • css3/filters/custom/custom-filter-transforms-animation-expected.txt: Added.
  • css3/filters/custom/custom-filter-transforms-animation.html: Added.
  • css3/filters/resources/custom-filter-parser.js: Fixed function parsing.

(TokenStream.prototype.skip):

4:20 PM Changeset in webkit [128379] by commit-queue@webkit.org
  • 9 edits in trunk/Source/WebCore

IndexedDB: Use ScriptValue instead of SerializedScriptValue when possible
https://bugs.webkit.org/show_bug.cgi?id=94023

Patch by Alec Flett <alecflett@chromium.org> on 2012-09-12
Reviewed by Kentaro Hara.

Transition the put/add/update methods to accept direct ScriptValue
objects rather than SerializedScriptValues, to eliminate lots of
redundant deserialization/serialization steps while storing
values.

Also see https://bugs.webkit.org/show_bug.cgi?id=95409 for
followup get/openCursor work, following this.

No new tests, this is a performance refactor of core IDB
functionality. Most existing tests cover correctness. Tests that
might fail include:

storage/indexeddb/objectstore-basics.html
storage/indexeddb/keypath-basics.html
storage/indexeddb/index-basics.html

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::update):

  • Modules/indexeddb/IDBCursor.h:

(IDBCursor):

  • Modules/indexeddb/IDBCursor.idl:
  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::generateIndexKeysForValue):
(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(WebCore):

  • Modules/indexeddb/IDBObjectStore.h:

(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(IDBObjectStore):

  • Modules/indexeddb/IDBObjectStore.idl:
  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore):
(WebCore::createIDBKeyFromScriptValueAndKeyPath):
(WebCore::deserializeIDBValue):
(WebCore::canInjectIDBKeyIntoScriptValue):

  • bindings/v8/IDBBindingUtilities.h:

(WebCore):

4:17 PM Changeset in webkit [128378] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/chromium

[chromium] Remove unused WebGestureEvent fields
https://bugs.webkit.org/show_bug.cgi?id=95496

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-12
Reviewed by Adam Barth.

Remove the no-longer used fields from WebGestureEvent, now that
chromium has been updated to use the per-event-type fields instead.
This depends on crrev.com/156346 in chromium.

  • public/WebInputEvent.h:

(WebKit::WebGestureEvent::WebGestureEvent):

  • public/android/WebInputEventFactory.h:
  • src/WebInputEvent.cpp:

(SameSizeAsWebGestureEvent):

  • src/android/WebInputEventFactory.cpp:

(WebKit):
(WebKit::WebInputEventFactory::gestureEvent):

4:11 PM TestExpectations edited by dpranke@chromium.org
more editing, cleanup for the new syntax. (diff)
4:10 PM Changeset in webkit [128377] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r128351.
http://trac.webkit.org/changeset/128351
https://bugs.webkit.org/show_bug.cgi?id=96573

Broke FindInPage browser_tests (Requested by jamesr_ on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::cancelPendingScopingEffort):
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):
(WebKit::WebFrameImpl::shouldScopeMatches):

3:56 PM Changeset in webkit [128376] by Chris Fleizach
  • 3 edits
    2 adds in trunk

AX: svg:image not accessible
https://bugs.webkit.org/show_bug.cgi?id=96341

Reviewed by Adele Peterson.

Source/WebCore:

Test: accessibility/svg-image.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

LayoutTests:

  • accessibility/svg-image.html: Added.
  • platform/mac/accessibility/svg-image-expected.txt: Added.
3:54 PM Changeset in webkit [128375] by ojan@chromium.org
  • 5 edits
    4 adds in trunk

percentage widths rendered wrong in vertical writing mode with orthogonal parent
https://bugs.webkit.org/show_bug.cgi?id=96308

Reviewed by Tony Chang.

Source/WebCore:

When the containingBlock is in a perpendicular writing-mode, we need to use
it's logicalWidth as the availableHeight for computing percentage values.

Tests: fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html

fast/writing-mode/percentage-height-orthogonal-writing-modes.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::availableLogicalHeightUsing):
Added some FIXMEs for perpendicular writing mode cases.

LayoutTests:

  • fast/writing-mode/percentage-height-orthogonal-writing-modes-expected.txt: Added.
  • fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added.
  • fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html: Added.
  • fast/writing-mode/percentage-height-orthogonal-writing-modes.html: Added.
3:50 PM TestExpectations edited by dpranke@chromium.org
add docs for the new syntax (diff)
3:43 PM Changeset in webkit [128374] by abarth@webkit.org
  • 7 edits
    3 adds in trunk

[v8] document.getCSSCanvasContext doesn't need to be custom
https://bugs.webkit.org/show_bug.cgi?id=96560

Reviewed by Eric Seidel.

Source/WebCore:

Instead of having a special case for toV8(CanvasRenderingContext*)
inlined into this custom function, we should just make the toV8
function itself custom.

Test: fast/canvas/canvas-css-crazy.html

  • UseV8.cmake:
  • WebCore.gypi:
  • bindings/v8/custom/V8DocumentCustom.cpp:
  • dom/Document.idl:
  • html/canvas/CanvasRenderingContext.idl:

LayoutTests:

Test that document.getCSSCanvasContext returns null for a bogus canvas type.

  • fast/canvas/canvas-css-crazy-expected.txt: Added.
  • fast/canvas/canvas-css-crazy.html: Added.
3:40 PM Changeset in webkit [128373] by eric@webkit.org
  • 3 edits in trunk

HTML parser fails to propertly close 4 identical nested formatting elements
https://bugs.webkit.org/show_bug.cgi?id=96385

Reviewed by Adam Barth.

Add missing Adoption agency step 4.a to fix one of our two outlying Adoption Agency bugs.
This is the same step that Opera was missing (must have been recently added to the spec).

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

3:36 PM Changeset in webkit [128372] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Source/WebCore: [GTK] Protect RedirectedXCompositeWindow with USE(GLX) when building the clutter AC backend
https://bugs.webkit.org/show_bug.cgi?id=96165

Patch by Siraj Razick <siraj.razick@collabora.co.uk> on 2012-09-12
Reviewed by Martin Robinson.

RedirectedXCompositeWindow.cpp and RedirectedXCompositeWindow.h files requies openGL specific
headers to compile so when we build webkit clutter AC backend these files failed to compile,
This patch protects these two files with USE(GLX) when building webkit with Clutter AC backend.

No new tests since this is a build fix

  • platform/gtk/RedirectedXCompositeWindow.cpp:
  • platform/gtk/RedirectedXCompositeWindow.h:

protects both the files with USE(GLX)

Source/WebKit/gtk: [GTK] Update AcceleratedCompositingContextClutter to match AcceleratedCompositingContext.h API update
https://bugs.webkit.org/show_bug.cgi?id=96165

Patch by Siraj Razick <siraj.razick@collabora.co.uk> on 2012-09-12
Reviewed by Martin Robinson.

Due to the refactoring done in bug #90085 AcceleratedCompositingContext API changed, as a result
AcceleratedCompositingContextClutter doesn't compile anymore. This patch is to update the
AcceleratedCompositingContextClutter implementations to match the API update, and Make webkit
AC backend compile again.

  • WebCoreSupport/AcceleratedCompositingContextClutter.cpp:

(WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
(WebKit::AcceleratedCompositingContext::~AcceleratedCompositingContext):
(WebKit::AcceleratedCompositingContext::setRootCompositingLayer):
(WebKit::AcceleratedCompositingContext::setNonCompositedContentsNeedDisplay):
(WebKit::flushAndRenderLayersCallback):
(WebKit::AcceleratedCompositingContext::scheduleLayerFlush):
(WebKit::AcceleratedCompositingContext::flushPendingLayerChanges):
(WebKit::AcceleratedCompositingContext::flushAndRenderLayers):

3:29 PM Changeset in webkit [128371] by ojan@chromium.org
  • 4 edits in trunk/Source/WebCore

RenderBox::computeLogicalClientHeight is incorrectly named
https://bugs.webkit.org/show_bug.cgi?id=94288

Reviewed by Tony Chang.

Just renamed a couple methods to make it more clear what they return.
No behavior changes.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeLogicalHeightUsing):
(WebCore::RenderBox::computeContentLogicalHeight):
(WebCore::RenderBox::computeContentAndScrollbarLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::mainAxisContentExtent):
(WebCore::RenderFlexibleBox::computeMainAxisExtentForChild):
(WebCore::RenderFlexibleBox::computeAvailableFreeSpace):
(WebCore::RenderFlexibleBox::lineBreakLength):

3:22 PM Changeset in webkit [128370] by jsbell@chromium.org
  • 9 edits in trunk

IndexedDB: The |source| property of IDBFactory.open() request should be null
https://bugs.webkit.org/show_bug.cgi?id=96551

Reviewed by Tony Chang.

Source/WebCore:

Per the IDB spec, the source property of the IDBOpenDBRequest returned by IDBFactory.open()
should be set to null. We were setting it to the IDBFactory object instead.

Tests: storage/indexeddb/basics.html

storage/indexeddb/basics-workers.html
storage/indexeddb/mozilla/event-source.html
storage/indexeddb/readonly.html

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::open):

LayoutTests:

Already tested for in several places, so just update expectations/assertions.

  • storage/indexeddb/basics-expected.txt:
  • storage/indexeddb/basics-workers-expected.txt:
  • storage/indexeddb/mozilla/event-source-expected.txt:
  • storage/indexeddb/mozilla/resources/event-source.js: Updated assertion.

(openSuccess):

  • storage/indexeddb/readonly-expected.txt:
  • storage/indexeddb/resources/basics.js: Updated assertion.

(test):
(openCallback):

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

Refactor Opcodes to distinguish between core and extension opcodes.
https://bugs.webkit.org/show_bug.cgi?id=96466.

Patch by Mark Lam <mark.lam@apple.com> on 2012-09-12
Reviewed by Filip Pizlo.

  • bytecode/Opcode.h:

(JSC): Added FOR_EACH_CORE_OPCODE_ID() macro.

  • llint/LowLevelInterpreter.h:

(JSC): Auto-generate llint opcode aliases using the

FOR_EACH_CORE_OPCODE_ID() macro.

3:19 PM Changeset in webkit [128368] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

Unreviewed, rolling out r128353.
http://trac.webkit.org/changeset/128353
https://bugs.webkit.org/show_bug.cgi?id=96565

Re-land change that broke tests on Chromium. Tests are now
disabled, will rebaseline after this rolls. (Requested by
dmazzoni on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

Source/WebCore:

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::canHaveChildren):
(WebCore):
(WebCore::AccessibilityNodeObject::accessibilityIsIgnored):
(WebCore::AccessibilityNodeObject::isWebArea):
(WebCore::AccessibilityNodeObject::isImageButton):
(WebCore::AccessibilityNodeObject::isAnchor):
(WebCore::AccessibilityNodeObject::isNativeTextControl):
(WebCore::AccessibilityNodeObject::isSearchField):
(WebCore::AccessibilityNodeObject::isNativeImage):
(WebCore::AccessibilityNodeObject::isImage):
(WebCore::AccessibilityNodeObject::isPasswordField):
(WebCore::AccessibilityNodeObject::isInputImage):
(WebCore::AccessibilityNodeObject::isProgressIndicator):
(WebCore::AccessibilityNodeObject::isSlider):
(WebCore::AccessibilityNodeObject::isMenuRelated):
(WebCore::AccessibilityNodeObject::isMenu):
(WebCore::AccessibilityNodeObject::isMenuBar):
(WebCore::AccessibilityNodeObject::isMenuButton):
(WebCore::AccessibilityNodeObject::isMenuItem):
(WebCore::AccessibilityNodeObject::isNativeCheckboxOrRadio):
(WebCore::AccessibilityNodeObject::isEnabled):
(WebCore::AccessibilityNodeObject::isIndeterminate):
(WebCore::AccessibilityNodeObject::isPressed):
(WebCore::AccessibilityNodeObject::isChecked):
(WebCore::AccessibilityNodeObject::isHovered):
(WebCore::AccessibilityNodeObject::isMultiSelectable):
(WebCore::AccessibilityNodeObject::isReadOnly):
(WebCore::AccessibilityNodeObject::isRequired):
(WebCore::AccessibilityNodeObject::headingLevel):
(WebCore::AccessibilityNodeObject::valueDescription):
(WebCore::AccessibilityNodeObject::isARIARange):
(WebCore::AccessibilityNodeObject::valueForRange):
(WebCore::AccessibilityNodeObject::maxValueForRange):
(WebCore::AccessibilityNodeObject::minValueForRange):
(WebCore::AccessibilityNodeObject::stepValueForRange):
(WebCore::AccessibilityNodeObject::isHeading):
(WebCore::AccessibilityNodeObject::isLink):
(WebCore::AccessibilityNodeObject::isControl):
(WebCore::AccessibilityNodeObject::isFieldset):
(WebCore::AccessibilityNodeObject::isGroup):
(WebCore::AccessibilityNodeObject::selectedRadioButton):
(WebCore::AccessibilityNodeObject::selectedTabItem):
(WebCore::AccessibilityNodeObject::checkboxOrRadioValue):
(WebCore::AccessibilityNodeObject::anchorElement):
(WebCore::AccessibilityNodeObject::actionElement):
(WebCore::AccessibilityNodeObject::mouseButtonListener):
(WebCore::AccessibilityNodeObject::isDescendantOfBarrenParent):
(WebCore::AccessibilityNodeObject::alterSliderValue):
(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):
(WebCore::AccessibilityNodeObject::changeValueByStep):
(WebCore::AccessibilityNodeObject::changeValueByPercent):
(WebCore::AccessibilityNodeObject::isGenericFocusableElement):
(WebCore::AccessibilityNodeObject::labelForElement):
(WebCore::AccessibilityNodeObject::ariaAccessibilityDescription):
(WebCore::siblingWithAriaRole):
(WebCore::AccessibilityNodeObject::menuElementForMenuButton):
(WebCore::AccessibilityNodeObject::menuForMenuButton):
(WebCore::AccessibilityNodeObject::menuItemElementForMenu):
(WebCore::AccessibilityNodeObject::menuButtonForMenu):
(WebCore::AccessibilityNodeObject::accessibilityDescription):
(WebCore::AccessibilityNodeObject::helpText):
(WebCore::AccessibilityNodeObject::hierarchicalLevel):
(WebCore::AccessibilityNodeObject::textUnderElement):
(WebCore::AccessibilityNodeObject::title):
(WebCore::AccessibilityNodeObject::text):
(WebCore::AccessibilityNodeObject::stringValue):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
(WebCore::AccessibilityNodeObject::elementsFromAttribute):
(WebCore::AccessibilityNodeObject::ariaLabeledByElements):
(WebCore::AccessibilityNodeObject::ariaLabeledByAttribute):
(WebCore::AccessibilityNodeObject::canSetFocusAttribute):

  • accessibility/AccessibilityNodeObject.h:

(AccessibilityNodeObject):
(WebCore::AccessibilityNodeObject::node):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::parentObject):
(WebCore::AccessibilityRenderObject::isReadOnly):
(WebCore::AccessibilityRenderObject::helpText):
(WebCore::AccessibilityRenderObject::accessibilityDescription):
(WebCore::AccessibilityRenderObject::text):
(WebCore::AccessibilityRenderObject::contentChanged):
(WebCore):
(WebCore::AccessibilityRenderObject::canHaveChildren):

  • accessibility/AccessibilityRenderObject.h:

(AccessibilityRenderObject):

LayoutTests:

  • accessibility/canvas-fallback-content-2-expected.txt: Added.
  • accessibility/canvas-fallback-content-2.html: Added.
3:13 PM Changeset in webkit [128367] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] We attempt to rebase documentation even if it's not present
https://bugs.webkit.org/show_bug.cgi?id=96553

Patch by Xan Lopez <xlopez@igalia.com> on 2012-09-12
Reviewed by Martin Robinson.

Do not make the documentation rebase step fatal. This allows make
install to succeed when there's no documentation generated.

  • gtk/generate-gtkdoc:
3:12 PM Changeset in webkit [128366] by ojan@chromium.org
  • 3 edits in trunk/LayoutTests

Update some stale expectations.

  • platform/chromium/TestExpectations:

Update to match what the bots are actually seeing.

  • platform/gtk/TestExpectations:

Remove tests that no longer exist.

2:58 PM Changeset in webkit [128365] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

fast/events/dispatch-message-string-data.html fails on mac wk2
https://bugs.webkit.org/show_bug.cgi?id=96552

Unreviewed.

Add to TestExpectations.

  • platform/mac-wk2/TestExpectations:
2:49 PM Changeset in webkit [128364] by kenneth@webkit.org
  • 2 edits in trunk/Tools

Respect WEBKITOUTPUTDIR when running EFL tests
https://bugs.webkit.org/show_bug.cgi?id=96528

Reviewed by Dirk Pranke.

Expose user set WEBKITOUTPUTDIR to the web process.

  • Scripts/webkitpy/layout_tests/port/driver.py:

(Driver._start): Add WEBKITOUTPUTDIR to the environment
of the web process and its potential jhbuild wrapper.

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

Element::classAttributeChanged should use characters8/16 to find first non-whitespace
https://bugs.webkit.org/show_bug.cgi?id=96446

Reviewed by Benjamin Poulain.

Source/WebCore:

Made two new static templated methods to handle 8 or 16 bit class names.

No functional change, so no new tests.

  • dom/Element.cpp:

(WebCore::classStringHasClassName):
(WebCore::Element::classAttributeChanged):

Source/WTF:

Added bit size related string accessors to AtomicString to support change.

  • wtf/text/AtomicString.h:

(AtomicString):
(WTF::AtomicString::is8Bit):
(WTF::AtomicString::characters8):
(WTF::AtomicString::characters16):

2:37 PM Changeset in webkit [128362] by dpranke@chromium.org
  • 2 edits in trunk/Tools

webkitdirs: fix uname version handling for cygwin
https://bugs.webkit.org/show_bug.cgi?id=96436

Reviewed by Jon Honeycutt.

Newer versions of cygwin embed an additional version string
inside parentheses, so you get "1.7.16(0.249/5/3)" instead of "1.7.16".
Update the code to handle that.

  • Scripts/webkitdirs.pm:

(setupAppleWinEnv):

2:36 PM Changeset in webkit [128361] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebCore

[V8] V8DOMWrapper::constructorForType is unnecessary now that we can get V8PerContextData from the v8::Context
https://bugs.webkit.org/show_bug.cgi?id=96556

Patch by Adam Barth <abarth@chromium.org> on 2012-09-12
Reviewed by Eric Seidel.

These functions no longer serve a purpose now that we can get the
V8PerContextData directly from the context. Previously we had to find
the Frame in order to find the per-context data.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateConstructorGetter):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::installDOMWindow):

  • bindings/v8/V8DOMWrapper.cpp:

(WebCore::V8DOMWrapper::instantiateV8Object):

  • bindings/v8/V8DOMWrapper.h:

(V8DOMWrapper):

  • bindings/v8/V8PerContextData.cpp:

(WebCore::V8PerContextData::from):

  • bindings/v8/V8PerContextData.h:

(V8PerContextData):

  • Changed this function to accept an arbitrary context rather than requiring the caller to use the current context.
2:33 PM Changeset in webkit [128360] by leviw@chromium.org
  • 3 edits in trunk/LayoutTests

More unreviewed gardening after r128346.

  • platform/chromium-win-xp/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
  • platform/chromium-win/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
2:21 PM Changeset in webkit [128359] by eric@webkit.org
  • 4 edits
    2 adds in trunk/LayoutTests

Sync html5lib tests with latest sources (and sort the tests alphabetically in runner.html)
https://bugs.webkit.org/show_bug.cgi?id=96544

Reviewed by Adam Barth.

  • html5lib/resources/adoption01.dat:
  • html5lib/resources/domjs-unsafe.dat: Added.
  • html5lib/resources/scripted/ark.dat: Added.
  • html5lib/runner.html:
2:04 PM Changeset in webkit [128358] by enne@google.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Fix search tickmarks not disappearing when compositing is enabled
https://bugs.webkit.org/show_bug.cgi?id=96536

Reviewed by James Robinson.

view->invalidateRect() on the root frame just invalidates the
contents, since WebViewImpl doesn't know anything about scrollbar
layers. This causes an "InvalidateAll" to not actually invalidate the
scrollbars.

To fix this, make WebFrameImpl explicitly invalidate the
scrollbars when required.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::invalidateArea):

1:57 PM Changeset in webkit [128357] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Widen CRASH expectations for fast/replaced/border-radius-clip.html

Unreviewed gardening.

  • platform/chromium/TestExpectations:
1:40 PM Changeset in webkit [128356] by leviw@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed gardening. Updated test expectations following r128346.

  • platform/chromium-linux/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
  • platform/chromium-mac/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
1:35 PM Changeset in webkit [128355] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Mark seek-to-end-after-duration-change.html as flaky.

  • platform/chromium/TestExpectations:
1:33 PM Changeset in webkit [128354] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Mark some new hidpi tests as failing after r128348.

  • platform/chromium/TestExpectations:
1:13 PM Changeset in webkit [128353] by commit-queue@webkit.org
  • 6 edits
    2 deletes in trunk

Unreviewed, rolling out r128318 and r128332.
http://trac.webkit.org/changeset/128318
http://trac.webkit.org/changeset/128332
https://bugs.webkit.org/show_bug.cgi?id=96547

Caused accessibility test failures on snow leopard (Requested
by jamesr_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

Source/WebCore:

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::accessibilityIsIgnored):
(WebCore::AccessibilityNodeObject::canSetFocusAttribute):

  • accessibility/AccessibilityNodeObject.h:

(AccessibilityNodeObject):
(WebCore::AccessibilityNodeObject::node):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore):
(WebCore::AccessibilityRenderObject::isWebArea):
(WebCore::AccessibilityRenderObject::isImageButton):
(WebCore::AccessibilityRenderObject::isAnchor):
(WebCore::AccessibilityRenderObject::isNativeTextControl):
(WebCore::AccessibilityRenderObject::isSearchField):
(WebCore::AccessibilityRenderObject::isNativeImage):
(WebCore::AccessibilityRenderObject::isImage):
(WebCore::AccessibilityRenderObject::isPasswordField):
(WebCore::AccessibilityRenderObject::isInputImage):
(WebCore::AccessibilityRenderObject::isProgressIndicator):
(WebCore::AccessibilityRenderObject::isSlider):
(WebCore::AccessibilityRenderObject::isMenuRelated):
(WebCore::AccessibilityRenderObject::isMenu):
(WebCore::AccessibilityRenderObject::isMenuBar):
(WebCore::AccessibilityRenderObject::isMenuButton):
(WebCore::AccessibilityRenderObject::isMenuItem):
(WebCore::AccessibilityRenderObject::isPressed):
(WebCore::AccessibilityRenderObject::isIndeterminate):
(WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
(WebCore::AccessibilityRenderObject::isChecked):
(WebCore::AccessibilityRenderObject::isHovered):
(WebCore::AccessibilityRenderObject::isMultiSelectable):
(WebCore::AccessibilityRenderObject::isReadOnly):
(WebCore::AccessibilityRenderObject::headingLevel):
(WebCore::AccessibilityRenderObject::isHeading):
(WebCore::AccessibilityRenderObject::isLink):
(WebCore::AccessibilityRenderObject::isControl):
(WebCore::AccessibilityRenderObject::isFieldset):
(WebCore::AccessibilityRenderObject::isGroup):
(WebCore::AccessibilityRenderObject::selectedRadioButton):
(WebCore::AccessibilityRenderObject::selectedTabItem):
(WebCore::AccessibilityRenderObject::actionElement):
(WebCore::AccessibilityRenderObject::mouseButtonListener):
(WebCore::AccessibilityRenderObject::alterSliderValue):
(WebCore::AccessibilityRenderObject::increment):
(WebCore::AccessibilityRenderObject::decrement):
(WebCore::siblingWithAriaRole):
(WebCore::AccessibilityRenderObject::menuElementForMenuButton):
(WebCore::AccessibilityRenderObject::menuForMenuButton):
(WebCore::AccessibilityRenderObject::menuItemElementForMenu):
(WebCore::AccessibilityRenderObject::menuButtonForMenu):
(WebCore::AccessibilityRenderObject::hierarchicalLevel):
(WebCore::AccessibilityRenderObject::checkboxOrRadioValue):
(WebCore::AccessibilityRenderObject::valueDescription):
(WebCore::AccessibilityRenderObject::stepValueForRange):
(WebCore::AccessibilityRenderObject::isARIARange):
(WebCore::AccessibilityRenderObject::valueForRange):
(WebCore::AccessibilityRenderObject::maxValueForRange):
(WebCore::AccessibilityRenderObject::minValueForRange):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityRenderObject::accessibilityDescriptionForElements):
(WebCore::AccessibilityRenderObject::elementsFromAttribute):
(WebCore::AccessibilityRenderObject::ariaLabeledByElements):
(WebCore::AccessibilityRenderObject::ariaLabeledByAttribute):
(WebCore::labelForElement):
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::ariaAccessibilityDescription):
(WebCore::AccessibilityRenderObject::accessibilityDescription):
(WebCore::AccessibilityRenderObject::isDescendantOfBarrenParent):
(WebCore::AccessibilityRenderObject::text):
(WebCore::AccessibilityRenderObject::isRequired):
(WebCore::AccessibilityRenderObject::changeValueByStep):
(WebCore::AccessibilityRenderObject::changeValueByPercent):
(WebCore::AccessibilityRenderObject::isEnabled):
(WebCore::AccessibilityRenderObject::isGenericFocusableElement):
(WebCore::AccessibilityRenderObject::canHaveChildren):

  • accessibility/AccessibilityRenderObject.h:

(AccessibilityRenderObject):

LayoutTests:

  • accessibility/canvas-fallback-content-2-expected.txt: Removed.
  • accessibility/canvas-fallback-content-2.html: Removed.
1:05 PM Changeset in webkit [128352] by ap@apple.com
  • 5 edits in trunk/Source/WebKit2

<rdar://problem/12275537> REGRESSION(r127384): Non-existent directories are no longer created for sandbox paths
https://bugs.webkit.org/show_bug.cgi?id=96442

Reviewed by Darin Adler.

  • Shared/SandboxExtension.h: (WebKit::SandboxExtension::createHandleForReadWriteDirectory):
  • Shared/mac/SandboxExtensionMac.mm: (WebKit::SandboxExtension::createHandleForReadWriteDirectory): Added a function for read-write configuration directories. It matches appendReadwriteSandboxDirectory() function behavior from WebProcessMac.mm.
  • UIProcess/WebContext.cpp: (WebKit::WebContext::createNewWebProcess):
  • UIProcess/mac/WebContextMac.mm: (WebKit::WebContext::platformInitializeWebProcess): Use the new function for directories that need to be created if they don't exist.
1:02 PM Changeset in webkit [128351] by leandrogracia@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Fix cases where find-in-page doesn't send a final update
https://bugs.webkit.org/show_bug.cgi?id=96402

Fix some issues in the WebKit implementation that prevented to send a final
reportFindInPageMatchCount message. Also, fix a buggy reset of the active match
when calling the stopFinding method.

Reviewed by Adam Barth.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::cancelPendingScopingEffort):
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):
(WebKit::WebFrameImpl::shouldScopeMatches):

12:41 PM Changeset in webkit [128350] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Compilation error in RenderThemeEfl.cpp
https://bugs.webkit.org/show_bug.cgi?id=96540

Unreviewed build fix.

Fix compilation error in RenderThemeEfl.cpp when building
in debug mode.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-12

  • platform/efl/RenderThemeEfl.h:

(WebCore::RenderThemeEfl::canvas):
(WebCore::RenderThemeEfl::edje):

12:41 PM WebKit Team edited by dinu.s.jacob@intel.com
Adding myself to committers list (diff)
12:25 PM Changeset in webkit [128349] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Regression(r128338): Broke Windows build
https://bugs.webkit.org/show_bug.cgi?id=96537

Unreviewed build fix.

Fix Apple-Win build by allocating array dynamically
since its size is not constant.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-12

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::stringArrayToJS):

12:23 PM Changeset in webkit [128348] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

[chromium] Add a virtual test suite for fast/hidpi
https://bugs.webkit.org/show_bug.cgi?id=90192

Patch by Alex Sakhartchouk <alexst@chromium.org> on 2012-09-12
Reviewed by Dirk Pranke.

Tools:

Add a virtual test suite to make sure the pixel tests in fast/hidpi give the same result
on the hardware accelerated path as the software path.

  • DumpRenderTree/chromium/WebPreferences.cpp:

(WebPreferences::applyTo):

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort.virtual_test_suites):

LayoutTests:

Making sure the new virtual tests have matching expectations to non-gpu ones

  • platform/chromium/TestExpectations:
  • platform/chromium/virtual/gpu/fast/hidpi/README.txt: Added.
12:21 PM Changeset in webkit [128347] by commit-queue@webkit.org
  • 19 edits in trunk

Rename OVERFLOW_SCROLLING as ACCELERATED_OVERFLOW_SCROLLING
https://bugs.webkit.org/show_bug.cgi?id=96251

Patch by Sami Kyostila <skyostil@google.com> on 2012-09-12
Reviewed by Simon Fraser.

Rename OVERFLOW_SCROLLING as ACCELERATED_OVERFLOW_SCROLLING to better describe
the feature it controls.

.:

  • Source/cmakeconfig.h.cmake:

Source/WebCore:

No tests because of no change in runtime behavior.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyNames.in:
  • css/CSSValueKeywords.in:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::usesCompositedScrolling):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):

  • rendering/style/StyleRareInheritedData.h:

(StyleRareInheritedData):

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataEnableFeatures.in:

Source/WebKit/chromium:

  • features.gypi:

LayoutTests:

  • platform/chromium/TestExpectations:
12:17 PM Changeset in webkit [128346] by leviw@chromium.org
  • 19 edits
    3 adds in trunk

Inline repainting can be off-by-one with sub-pixel enabled
https://bugs.webkit.org/show_bug.cgi?id=95882

Reviewed by Eric Seidel.

Source/WebCore:

With sub-pixel layout enabled, context accumulated from containing renderers is used to properly
pixel snap. Selection repaint rects are stored outside the affected renderers, and are handed to
the embedder without the context to correctly determine the snapped values. This can result in
repaint areas smaller than what's needed.

This could be fixed three ways:

  • by changing selection repaint rects to an IntRect and pixel snapping the values before storing them outside the render tree. This is the narrowest solution.
  • by adapting layout to store pixel snapping hints along with the size/location of the renderer. This is the best possible solution, as it would help solve a lot of pixel snapping issues and reduce complexity of handling. I eventually intend on implementing this.
  • by reverting repaintUsingContainer to IntRects and using pixel snapping when possible, and enclosingIntRect where we lack context.

This implements the last solution, as it's the least invasive, but can potentially fix numerous
sub-pixel repaint issues.

Test: fast/sub-pixel/selection/selection-rect-in-sub-pixel-table.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloats):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::repaintIncludingNonCompositingDescendants):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintUsingContainer):
(WebCore::RenderObject::repaint):
(WebCore::RenderObject::repaintRectangle):
(WebCore::RenderObject::repaintAfterLayoutIfNeeded):

  • rendering/RenderObject.h:

(RenderObject):

  • rendering/RenderSelectionInfo.h:

(WebCore::RenderSelectionInfo::repaint):
(WebCore::RenderBlockSelectionInfo::repaint):

LayoutTests:

Test that we properly repaint selection gaps inside tables with sub-pixel offsets.

  • fast/sub-pixel/selection/selection-rect-in-sub-pixel-table-expected.txt: Added.
  • fast/sub-pixel/selection/selection-rect-in-sub-pixel-table.html: Added.
  • platform/chromium-mac/fast/sub-pixel/selection/selection-rect-in-sub-pixel-table-expected.png: Added.
  • platform/chromium/TestExpectations:
  • platform/mac-lion/Skipped:
  • platform/mac-snowleopard/Skipped:
  • platform/mac-wk2/Skipped:
  • platform/mac/Skipped:
  • platform/qt-4.8/Skipped:
  • platform/qt/Skipped:
  • platform/win-wk2/Skipped:
  • platform/win-xp/Skipped:
  • platform/win/Skipped:
  • platform/wincairo/Skipped:
  • platform/wk2/Skipped:
12:02 PM Changeset in webkit [128345] by msaboff@apple.com
  • 2 edits in trunk/Source/WebCore

Build fixed for http://trac.webkit.org/changeset/128243

Unreviewed build fix.

Change UnicodeString::extract for gcc based on ICU fix described in
http://bugs.icu-project.org/trac/ticket/8197.

  • icu/unicode/unistr.h:

(UnicodeString::extract):

11:49 AM Changeset in webkit [128344] by commit-queue@webkit.org
  • 13 edits in trunk/Source

[chromium] Evict textures through the texture manager instead of the resource provider
https://bugs.webkit.org/show_bug.cgi?id=96463

Patch by Christopher Cameron <ccameron@chromium.org> on 2012-09-12
Reviewed by James Robinson.

Source/WebCore:

When deleting contents textures' resources on the impl thread, do the
deletion through the CCPrioritizedTextureManager instead of the
CCResourceProvider.

This requires traversing the backings list on the impl thread while
the main thread is running, so remove the one remaining traversal of
the backings list by the main thread. This traversal happens when
unlinking textures that were evicted by the impl thread, so explicitly
send the list of evicted backings from the impl thread to the main thread.

Unify all resource deletion paths in the CCPrioritizedTextureManager.
Always perform the sequence of eviction (deleting the GL resource) and
then destruction of evicted backings (deleting the objects). Also,
use the same function (evictBackingsToReduceMemory) to reduce memory
consumption both during commit and when done by the impl thread in response
to a request by the GPU memory manager.

Note that destroying only some of the resources at a time during texture
eviction (as opposed all resources) is still not supported because the
texture upload queues cannot be only-partially invalidated yet.

Updated tests to take this behavior into account.

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::reduceContentsTexturesMemoryOnImplThread):
(WebCore):
(WebCore::CCLayerTreeHost::getEvictedContentTexturesBackings):
(WebCore::CCLayerTreeHost::unlinkEvictedContentTexturesBackings):
(WebCore::CCLayerTreeHost::deleteEvictedContentTexturesBackings):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHost):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::releaseContentsTextures):
(WebCore::CCLayerTreeHostImpl::setContentsTexturesPurged):
(WebCore):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(CCLayerTreeHostImplClient):
(CCLayerTreeHostImpl):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp:

(WebCore::CCPrioritizedTextureManager::~CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::acquireBackingTextureIfNeeded):
(WebCore::CCPrioritizedTextureManager::evictBackingsToReduceMemory):
(WebCore::CCPrioritizedTextureManager::reduceMemory):
(WebCore::CCPrioritizedTextureManager::clearAllMemory):
(WebCore::CCPrioritizedTextureManager::reduceMemoryOnImplThread):
(WebCore::CCPrioritizedTextureManager::getEvictedBackings):
(WebCore::CCPrioritizedTextureManager::unlinkEvictedBackings):
(WebCore):
(WebCore::CCPrioritizedTextureManager::deleteEvictedBackings):
(WebCore::CCPrioritizedTextureManager::evictBackingResource):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.h:

(CCPrioritizedTextureManager):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::releaseContentsTexturesOnImplThread):
(WebCore):
(WebCore::CCSingleThreadProxy::commitAndComposite):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:
  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::releaseContentsTexturesOnImplThread):
(WebCore):
(WebCore::CCThreadProxy::scheduledActionBeginFrame):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::beginFrameCompleteOnImplThread):
(WebCore::CCThreadProxy::layerTreeHostClosedOnImplThread):
(WebCore::CCThreadProxy::recreateContextOnImplThread):

  • platform/graphics/chromium/cc/CCThreadProxy.h:

(BeginFrameAndCommitState):
(CCThreadProxy):

Source/WebKit/chromium:

Update layer tree host impl test to include the extra interface functions
added to CCLayerTreeHostImplClient.

  • tests/CCLayerTreeHostImplTest.cpp:
11:24 AM Changeset in webkit [128343] by adamk@chromium.org
  • 2 edits in trunk/Tools

[chromium] Add content_browsertests to the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=96535

Reviewed by Ojan Vafai.

  • TestResultServer/static-dashboards/dashboard_base.js:
11:23 AM Changeset in webkit [128342] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding crash or other failure expectations for plenty of accessibility
tests as required after r128318.

  • platform/gtk/TestExpectations:
11:23 AM Changeset in webkit [128341] by mifenton@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Add custom messages for input type validation.
https://bugs.webkit.org/show_bug.cgi?id=96533

Reviewed by Antonio Gomes.

PR 179148.

Add validation messages for Email, MultipleEmail and Url.

Reviewed Internally by Nima Ghanavatian.

  • platform/blackberry/LocalizedStringsBlackBerry.cpp:

(WebCore::validationMessageTypeMismatchForEmailText):
(WebCore::validationMessageTypeMismatchForMultipleEmailText):
(WebCore::validationMessageTypeMismatchForURLText):

11:11 AM Changeset in webkit [128340] by msaboff@apple.com
  • 2 edits in trunk/Source/WTF

Build fixed for http://trac.webkit.org/changeset/128243

Unreviewed build fix.

Removed temporarily added function signature.

  • icu/unicode/unistr.h:

(UnicodeString::extract):

10:46 AM Changeset in webkit [128339] by msaboff@apple.com
  • 2 edits in trunk/Source/WTF

Build fixed for http://trac.webkit.org/changeset/128243

Unreviewed build fix.

Change UnicodeString::extract for gcc based on ICU fix described in
http://bugs.icu-project.org/trac/ticket/8197.

  • icu/unicode/unistr.h:

(UnicodeString::extract):

10:42 AM Changeset in webkit [128338] by commit-queue@webkit.org
  • 11 edits in trunk

[WK2][WKTR] TestRunner needs to implement originsWithApplicationCache
https://bugs.webkit.org/show_bug.cgi?id=96496

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle C API to retrieve security origins with
an application cache. This is needed by WebKitTestRunner
to support originsWithApplicationCache.

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

(WKBundleCopyOriginsWithApplicationCache):

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::originsWithApplicationCache):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

Tools:

Add implementation for originsWithApplicationCache to
WebKitTestRunner.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::stringArrayToJS):
(WTR):
(WTR::TestRunner::originsWithApplicationCache):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

LayoutTests:

Unskip http/tests/appcache/origins-with-appcache.html now that
WebKitTestRunner implements originsWithApplicationCache.

  • platform/wk2/Skipped:
10:39 AM Changeset in webkit [128337] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Remove unused notifyFormStateChanged function in PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=96527

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

10:32 AM Changeset in webkit [128336] by commit-queue@webkit.org
  • 1 edit
    4 adds in trunk/LayoutTests

[CSS Exclusions] Test incremental layout
https://bugs.webkit.org/show_bug.cgi?id=91879

Patch by Bear Travis <betravis@adobe.com> on 2012-09-12
Reviewed by Julien Chaffraix.

Adding tests to make sure that text and shape can be set dynamically, and that
content will still layout while respecting shape-inside.

  • fast/exclusions/shape-inside/shape-inside-dynamic-shape-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-dynamic-shape.html: Added.
  • fast/exclusions/shape-inside/shape-inside-dynamic-text-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-dynamic-text.html: Added.
10:25 AM Changeset in webkit [128335] by mihnea@adobe.com
  • 2 edits in trunk/Source/WebCore

[CSSRegions]Shrink RenderFlowThread size by using bit flags
https://bugs.webkit.org/show_bug.cgi?id=96503

Reviewed by Andreas Kling.

Use bit fields instead of full bool.

No new functionality, just refactoring. Functionality covered by existing tests in fast/regions.

  • rendering/RenderFlowThread.h:
10:23 AM Changeset in webkit [128334] by commit-queue@webkit.org
  • 9 edits
    8 adds in trunk

[CSS Shaders] Remove direct texture access via u_texture
https://bugs.webkit.org/show_bug.cgi?id=93871

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-09-12
Reviewed by Dean Jackson.

Source/WebCore:

Remove the author-accessible "u_texture" sampler, which referenced the DOM element texture.

Additionally, reject shaders with author-defined sampler uniforms. When we implement texture
parameters, we will allow shaders whose samplers are bound to valid textures. We must not
allow OpenGL to give unbound samplers a default value of 0 because that references the DOM
element texture, which should be inaccessible to the author's shader code.

Test: css3/filters/custom/custom-filter-no-element-texture-access.html

  • platform/graphics/ANGLEWebKitBridge.cpp:

(WebCore::getValidationResultValue):

Add a file-static function to easily query the integer values that ANGLE exposes about
the last validation result. The new getUniforms method and the existing
validateShaderSource method now both use getValidationResultValue.

(WebCore):
(WebCore::ANGLEWebKitBridge::validateShaderSource):

Use the new getValidationResultValue function instead of ANGLE's ShGetInfo function.

(WebCore::ANGLEWebKitBridge::getUniforms):

Add a new public method to ANGLEWebKitBridge which gets the info about all of the
uniforms in the last validated vertex shader or fragment shader. Uniform info includes
name, type, and size.

  • platform/graphics/ANGLEWebKitBridge.h:

(ANGLEShaderSymbol):
(WebCore::ANGLEShaderSymbol::isSampler):

Returns true if the symbol's data type is a GLSL sampler (e.g. sampler2D, samplerCube).

(WebCore):
(ANGLEWebKitBridge):

  • platform/graphics/filters/CustomFilterCompiledProgram.cpp:

(WebCore::CustomFilterCompiledProgram::CustomFilterCompiledProgram):

Take in an additional programType constructor parameter.

(WebCore::CustomFilterCompiledProgram::initializeParameterLocations):

Remove the author-accessible DOM element texture sampler "u_texture". Only find the
location of the internal DOM element texture sampler "css_u_texture" if the author is
using the CSS mix function.

  • platform/graphics/filters/CustomFilterCompiledProgram.h:
  • platform/graphics/filters/CustomFilterProgramInfo.h:

(CustomFilterProgramInfo):
(WebCore::CustomFilterProgramInfo::programType):

Add the new CustomFilterProgramType enum. In CustomFilterProgramInfo, we plan to replace
mixSettings.enabled with a programType. See:
https://bugs.webkit.org/show_bug.cgi?id=96448

  • platform/graphics/filters/CustomFilterValidatedProgram.cpp:

Reject all shaders that have sampler uniforms defined.

(WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram):
(WebCore::CustomFilterValidatedProgram::compiledProgram):

  • platform/graphics/filters/FECustomFilter.cpp:

(WebCore::FECustomFilter::bindProgramAndBuffers):

Add an assert to verify that the DOM element texture is bound only if the author is
using the CSS mix function.

LayoutTests:

Add tests to verify that the "u_texture" sampler is no longer accessible to author shader
code because it was removed. These tests also verify that shaders with unbound samplers do
not execute.

Add tests to verify that the internal "css_u_texture" sampler is not accessible to author
shader code. These tests check that this is true whether or not the author is using the CSS
mix function and whether or not the author attempts to define css_u_texture is his or her
shader.

  • css3/filters/custom/custom-filter-no-element-texture-access-expected.html: Added.
  • css3/filters/custom/custom-filter-no-element-texture-access.html: Added.
  • css3/filters/resources/sample-defined-css-u-texture-mix.fs: Added.
  • css3/filters/resources/sample-defined-css-u-texture.fs: Added.
  • css3/filters/resources/sample-u-texture-mix.fs: Added.
  • css3/filters/resources/sample-u-texture.fs: Added.
  • css3/filters/resources/sample-undefined-css-u-texture-mix.fs: Added.
  • css3/filters/resources/sample-undefined-css-u-texture.fs: Added.
10:20 AM Changeset in webkit [128333] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix Qt/Windows build with Python3
https://bugs.webkit.org/show_bug.cgi?id=96473

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Csaba Osztrogonác.

In Python 3 print is a real function, so we must use parentheses around
the function parameters. This is backwards compatible with Python 2.

  • Scripts/generate-win32-export-forwards:
9:57 AM Changeset in webkit [128332] by dmazzoni@google.com
  • 2 edits in trunk/Source/WebCore

Assert hit in is multiSelectable()
https://bugs.webkit.org/show_bug.cgi?id=96530

Reviewed by Chris Fleizach.

Fix crash if element isn't a select element.

This bug slipped through in a refactoring change (bug 96323).
Covered by existing tests.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::isMultiSelectable):

9:54 AM Changeset in webkit [128331] by morrita@google.com
  • 6 edits in trunk/Source/WebCore

[Scoped Style] NodeRareData::m_numberOfScopedHTMLStyleChildren could be replaced with a node flag.
https://bugs.webkit.org/show_bug.cgi?id=96450

Reviewed by Dimitri Glazkov.

This change gets rid of NodeRareData::m_numberOfScopedHTMLStyleChildren
by replacing it with a Node flag called HasScopedHTMLStyleChildFlag.
Instead of tracking the number of certain node, this chagne compute the number
when necessary.

Now we no longer need to hit rareData() for each hasScopedHTMLStyleChild() call.
Note that because such a re-counting occurs only when the scoped <style> elements
leave the tree, the performance impact is negligible.

No new tests. Covered by existing tests.

  • dom/Node.cpp:

(WebCore):

  • dom/Node.h:

(WebCore::Node::hasScopedHTMLStyleChild):
(WebCore::Node::setHasScopedHTMLStyleChild):
(Node):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(NodeRareData):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::isRegisteredAsScoped):
(WebCore):
(WebCore::Node::registerScopedHTMLStyleChild):
(WebCore::Node::unregisterScopedHTMLStyleChild):
(WebCore::Node::numberOfScopedHTMLStyleChildren):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):

  • html/HTMLStyleElement.h:

(HTMLStyleElement):

9:51 AM Changeset in webkit [128330] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-1.10

Merge r128195 - [GTK] WebKitGtk+ crashes with non-UTF8 HTTP header names
https://bugs.webkit.org/show_bug.cgi?id=96284

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Non UTF-8 characters sent as part of a HTTP header name were
causing crashes as String::fromUTF8() was returning NULL for
them. Use String::fromUTF8WithLatin1Fallback() instead.

Test: http/tests/misc/non-utf8-header-name.php

  • platform/network/soup/ResourceResponseSoup.cpp:

(WebCore::ResourceResponse::updateFromSoupMessage):

LayoutTests:

Added a new test to make sure that WebKitGtk+ does not crash when
a non-UTF8 character is sent as part of a HTTP header name.

  • http/tests/misc/non-utf8-header-name-expected.txt: Added.
  • http/tests/misc/non-utf8-header-name.php: Added.
9:50 AM Changeset in webkit [128329] by Dimitri Glazkov
  • 5 edits in trunk/Source/WebCore

Remove transient state regarding uknown pseudoelements from SelectorChecker.
https://bugs.webkit.org/show_bug.cgi?id=96425

Reviewed by Eric Seidel.

The fact that an unknown pseudoelement was found when checking selector was stored as extra state on SelectorChecker. That's bad,
because this state is at odds with the lifecycle of the instance and had to be explicitly reset prior to each checking. To address
this, I made checkSelector report the value as its result (by-ref parameter, actually).

No new tests, refactoring only. Covered by existing tests.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::SelectorChecker): Removed the now-unneded state initialization.
(WebCore::SelectorChecker::checkSelector): Changed to take extra parameter.
(WebCore):
(WebCore::SelectorChecker::checkOneSelector): Ditto.

  • css/SelectorChecker.h:

(SelectorChecker): Changed decls accordingly.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::StyleResolver): Added state to StyleResolver.
(WebCore::StyleResolver::collectMatchingRulesForList): Changed to use own state, rather than StyleChecker's state.

  • css/StyleResolver.h:

(StyleResolver): Moved state here from StyleChecker.

9:50 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
9:43 AM Changeset in webkit [128328] by Simon Hausmann
  • 2 edits in trunk/Tools

Unreviewed trivial build fix for Qt/Windows

As pointed out by Kevin, we should inject the "set PATH=..." statement
to add the GnuWin32 directory only if that directory actually exists.

  • qmake/mkspecs/features/default_post.prf:
9:41 AM Changeset in webkit [128327] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] [WK2] Memory leaks in TestControllerEfl
https://bugs.webkit.org/show_bug.cgi?id=96525

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Fix memory leaks in EFL's TestRunner code by adopting an allocation
of WKString created with WKStringCreateWithUTF8CString().

  • WebKitTestRunner/efl/TestControllerEfl.cpp:

(WTR::TestController::initializeInjectedBundlePath):
(WTR::TestController::initializeTestPluginDirectory):

9:38 AM Changeset in webkit [128326] by commit-queue@webkit.org
  • 23 edits in trunk

[WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
https://bugs.webkit.org/show_bug.cgi?id=96374

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle C API to reset the application cache quota
for a given origin.

Add new reachedApplicationCacheOriginQuota callback
to WKBundlePageUIClient which is called from
WebChromeClient::reachedApplicationCacheOriginQuota().

Those are needed by WebKitTestRunner to dump
information about the application cache callbacks
if instructed to.

  • Shared/APIClientTraits.cpp:

(WebKit):

  • Shared/APIClientTraits.h:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleSetApplicationCacheOriginQuota):
(WKBundleResetApplicationCacheOriginQuota):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::resetApplicationCacheOriginQuota):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:

(WebKit):
(InjectedBundlePageUIClient):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

Tools:

Implement support for dumpApplicationCacheDelegateCallbacks
and disallowIncreaseForApplicationCacheQuota in
WebKitTestRunner and properly dump the information
expected by the tests.

If the application cache quota is reached for a given
security origin, WebKitTestRunner will reset the quota
to its default value, unless intructed not to via
disallowIncreaseForApplicationCacheQuota().

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::InjectedBundlePage):
(WTR::InjectedBundlePage::didReachApplicationCacheOriginQuota):
(WTR):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:

(InjectedBundlePage):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::TestRunner):
(WTR::TestRunner::disallowIncreaseForApplicationCacheQuota):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(WTR::TestRunner::dumpApplicationCacheDelegateCallbacks):
(TestRunner):
(WTR::TestRunner::shouldDisallowIncreaseForApplicationCacheQuota):
(WTR::TestRunner::shouldDumpApplicationCacheDelegateCallbacks):

LayoutTests:

Unskip test cases that are passing now that WebKitTestRunner
implements dumpApplicationCacheDelegateCallbacks and
disallowIncreaseForApplicationCacheQuota.

  • platform/efl-wk1/TestExpectations:
  • platform/efl/Skipped:
  • platform/wk2/Skipped:
9:30 AM Changeset in webkit [128325] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

[CSSRegions]Use RefPtr's instead of weak references on DOMNamedFlowCollection
https://bugs.webkit.org/show_bug.cgi?id=95311

Patch by Andrei Onea <onea@adobe.com> on 2012-09-12
Reviewed by Andreas Kling.

Source/WebCore:

Currently, DOMNamedFlowCollection holds a collection of raw pointers to WebKitNamedFlow.
This causes a crash when there is a JS instance of a NamedFlowCollection snapshot taken
before the NamedFlow is deleted, since the memory previously occupied by the NamedFlow
can be accessed. Because of this, we need to use RefPtr's for the snapshot, so that such
dangling references extend the lifetime of the NamedFlow objects.

Test: fast/regions/webkit-named-flow-collection-crash.html

  • dom/DOMNamedFlowCollection.cpp:

(WebCore::DOMNamedFlowCollection::DOMNamedFlowCollection):
(WebCore::DOMNamedFlowCollection::item):
(WebCore::DOMNamedFlowCollection::namedItem):
(WebCore):
(WebCore::DOMNamedFlowCollection::DOMNamedFlowHashFunctions::hash):
(WebCore::DOMNamedFlowCollection::DOMNamedFlowHashFunctions::equal):
(DOMNamedFlowCollection::DOMNamedFlowHashFunctions):
(WebCore::DOMNamedFlowCollection::DOMNamedFlowHashTranslator::hash):
(WebCore::DOMNamedFlowCollection::DOMNamedFlowHashTranslator::equal):
Create new internal ListHashSet for RefPtr<WebKitNamedFlow>.

  • dom/DOMNamedFlowCollection.h:

(WebCore::DOMNamedFlowCollection::create):
(DOMNamedFlowCollection):

  • dom/NamedFlowCollection.cpp:

(WebCore::NamedFlowCollection::createCSSOMSnapshot):
(WebCore):
(WebCore::NamedFlowCollection::NamedFlowHashFunctions::hash):
(WebCore::NamedFlowCollection::NamedFlowHashFunctions::equal):
(NamedFlowCollection::NamedFlowHashFunctions):
(WebCore::NamedFlowCollection::NamedFlowHashTranslator::hash):
(WebCore::NamedFlowCollection::NamedFlowHashTranslator::equal):
Move back the definitions for NamedFlowHashFunctions and NamedFlowHashTranslator
to the .cpp file.

  • dom/NamedFlowCollection.h:

(NamedFlowCollection):

LayoutTests:

Added test for crash which occurs when there is a raw pointer to a NamedFlow
(in a NamedFlowCollection) which has been freed.

  • fast/regions/webkit-named-flow-collection-crash-expected.txt: Added.
  • fast/regions/webkit-named-flow-collection-crash.html: Added.
9:25 AM Changeset in webkit [128324] by jochen@chromium.org
  • 2 edits in trunk/Tools

[chromium] remove deprecated and unused sets import from chromium_android driver
https://bugs.webkit.org/show_bug.cgi?id=96485

Reviewed by Dirk Pranke.

  • Scripts/webkitpy/layout_tests/port/chromium_android.py:
9:16 AM Changeset in webkit [128323] by morrita@google.com
  • 13 edits in trunk

[Shadow DOM] Unpolished elements should reject author shadows
https://bugs.webkit.org/show_bug.cgi?id=96404

Reviewed by Dimitri Glazkov.

Source/WebCore:

Gave areAuthorShadowsAllowed() overrides for these replaced elements
which aren't author shadow ready.

No new tests. Covered by existing tests.

  • html/HTMLCanvasElement.h: Did areAuthorShadowsAllowed() overrride.
  • html/HTMLFieldSetElement.h: Did areAuthorShadowsAllowed() overrride.
  • html/HTMLFrameElementBase.h: Did areAuthorShadowsAllowed() overrride.
  • html/HTMLMediaElement.h: Did areAuthorShadowsAllowed() overrride.
  • html/HTMLPlugInElement.h: Did areAuthorShadowsAllowed() overrride.
  • html/HTMLSelectElement.h: Did areAuthorShadowsAllowed() overrride.

LayoutTests:

  • Added setAuthorShadowDOMForAnyElementEnabled() calls to make tests works.
  • UPdated shadow-disable.html to capture the disabled elements.
  • fast/dom/shadow/shadow-disable-expected.txt:
  • fast/dom/shadow/shadow-disable.html:
  • fast/dom/shadow/shadowdom-for-fieldset-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-form-associated-element-useragent.html:
  • fast/dom/shadow/shadowdom-for-media.html:
  • platform/chromium/TestExpectations:
9:11 AM Changeset in webkit [128322] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Remove unused allowScriptDespiteSettings function from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=96526

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

9:06 AM Changeset in webkit [128321] by zandobersek@gmail.com
  • 3 edits in trunk/Tools

Flakiness dashboard doesn't recognize new Chromium Android test builder
https://bugs.webkit.org/show_bug.cgi?id=96523

Reviewed by Ojan Vafai.

Properly return 'ANDROID' as the Chromium platform for Android builders.

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(chromiumPlatform):

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

(test):

9:03 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
9:03 AM Changeset in webkit [128320] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-1.10/Source/WebCore

Merge r128298 - [GStreamer] Audio device not closed after playing sound
https://bugs.webkit.org/show_bug.cgi?id=89122

Reviewed by Martin Robinson.

Set the GStreamer pipeline to NULL instead of PAUSED on EOS. This
allows the audio-sink to release its connection to the audio
device. This is done only if the Media element is not
looping. To make the MediaPlayerPrivate layer aware of that
information the MediaPlayerClient interface was updated with a new
method mediaPlayerIsLooping, implemented by the HTMLMediaElement.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerIsLooping): Implementation of
MediaPlayerClient::mediaPlayerLoop, proxies to ::loop();

  • html/HTMLMediaElement.h:

(HTMLMediaElement):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerIsLooping): New method allowing
the MediaPlayer and its backend to know if a playback loop is
requested by the client.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::playbackPosition): Report
seek time or media duration if EOS was reached. These early
returns are needed because the position query doesn't work on a
NULL pipeline.
(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
Refactored to use an early return.
(WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Reset the
seeking flag.
(WebCore::MediaPlayerPrivateGStreamer::play): reset m_isEndReached.
(WebCore::MediaPlayerPrivateGStreamer::pause): Don't pause on EOS.
(WebCore::MediaPlayerPrivateGStreamer::seek): Refactor, call
currentTime() after we're sure playbin is valid and no error occured.
(WebCore::MediaPlayerPrivateGStreamer::paused): Fake paused state
on EOS.

9:02 AM Changeset in webkit [128319] by Carlos Garcia Campos
  • 6 edits in releases/WebKitGTK/webkit-1.10/Source/WebCore

Merge r126441 - Replace access ot HTMLMediaElement from MediaPlayerPrivateBlackBerry with methods in MediaPlayerClient - updated with notes from initial reviews. https://bugs.webkit.org/show_bug.cgi?id=84291

Reviewed by Eric Carlson.

Code standard compliance - no functional change, so no new tests required.

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::mediaPlayerExitFullscreen): (WebCore): (WebCore::HTMLMediaElement::mediaPlayerIsVideo): (WebCore::HTMLMediaElement::mediaPlayerContentBoxRect): (WebCore::HTMLMediaElement::mediaPlayerSetSize): (WebCore::HTMLMediaElement::mediaPlayerPause): (WebCore::HTMLMediaElement::mediaPlayerPlay): (WebCore::HTMLMediaElement::mediaPlayerIsPaused): (WebCore::HTMLMediaElement::mediaPlayerHostWindow): (WebCore::HTMLMediaElement::mediaPlayerWindowClipRect):
  • html/HTMLMediaElement.h: (HTMLMediaElement):
  • platform/graphics/MediaPlayer.h: (WebCore): (WebCore::MediaPlayerClient::mediaPlayerExitFullscreen): (WebCore::MediaPlayerClient::mediaPlayerIsVideo): (WebCore::MediaPlayerClient::mediaPlayerContentBoxRect): (WebCore::MediaPlayerClient::mediaPlayerSetSize): (WebCore::MediaPlayerClient::mediaPlayerPause): (WebCore::MediaPlayerClient::mediaPlayerPlay): (WebCore::MediaPlayerClient::mediaPlayerIsPaused): (WebCore::MediaPlayerClient::mediaPlayerHostWindow): (WebCore::MediaPlayerClient::mediaPlayerWindowClipRect):
  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp: (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::load): (WebCore::MediaPlayerPrivate::paint): (WebCore::MediaPlayerPrivate::resizeSourceDimensions): (WebCore::MediaPlayerPrivate::updateStates): (WebCore::MediaPlayerPrivate::onPauseStateChanged): (WebCore::MediaPlayerPrivate::onPlayNotified): (WebCore::MediaPlayerPrivate::onPauseNotified): (WebCore::MediaPlayerPrivate::onAuthenticationNeeded): (WebCore::MediaPlayerPrivate::showErrorDialog): (WebCore::MediaPlayerPrivate::platformWindow): (WebCore::MediaPlayerPrivate::isElementPaused): (WebCore::MediaPlayerPrivate::isTabVisible):
  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h: (MediaPlayerPrivate):

Patch by John Griggs <jgriggs@rim.com> on 2012-08-23

8:49 AM Changeset in webkit [128318] by dmazzoni@google.com
  • 6 edits
    2 adds in trunk

AX: Refactor most AccessibilityRenderObject code into AccessibilityNodeObject
https://bugs.webkit.org/show_bug.cgi?id=96323

Reviewed by Chris Fleizach.

Source/WebCore:

This patch is large, but it's at least 75% cut-and-paste.

All it does is move the implementation of a large chunk of
AccessibilityRenderObject methods to AccessibilityNodeObject
instead. This allows them to operate on elements without
renderers, such as those in canvas fallback content. It also
moves us towards the goal where AccessibilityRenderObject
only has code that's specific to renderers and not just nodes.

Half of the methods cut and paste with essentially no changes.
Some required just tiny changes to access an attribute via the
element (e.g. HTMLSelectElement) rather than its associated
renderer (e.g. RenderMenuList). A few were a little trickier,
as the behavior needs to be slightly different when there's a
renderer. In those last cases, as much of the code as possible is
in AccessibilityNodeObject and AccessibilityRenderObject overrides
it as necessary.

Test: accessibility/canvas-fallback-content-2.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::canHaveChildren):
(WebCore):
(WebCore::AccessibilityNodeObject::accessibilityIsIgnored):
(WebCore::AccessibilityNodeObject::isWebArea):
(WebCore::AccessibilityNodeObject::isImageButton):
(WebCore::AccessibilityNodeObject::isAnchor):
(WebCore::AccessibilityNodeObject::isNativeTextControl):
(WebCore::AccessibilityNodeObject::isSearchField):
(WebCore::AccessibilityNodeObject::isNativeImage):
(WebCore::AccessibilityNodeObject::isImage):
(WebCore::AccessibilityNodeObject::isPasswordField):
(WebCore::AccessibilityNodeObject::isInputImage):
(WebCore::AccessibilityNodeObject::isProgressIndicator):
(WebCore::AccessibilityNodeObject::isSlider):
(WebCore::AccessibilityNodeObject::isMenuRelated):
(WebCore::AccessibilityNodeObject::isMenu):
(WebCore::AccessibilityNodeObject::isMenuBar):
(WebCore::AccessibilityNodeObject::isMenuButton):
(WebCore::AccessibilityNodeObject::isMenuItem):
(WebCore::AccessibilityNodeObject::isNativeCheckboxOrRadio):
(WebCore::AccessibilityNodeObject::isEnabled):
(WebCore::AccessibilityNodeObject::isIndeterminate):
(WebCore::AccessibilityNodeObject::isPressed):
(WebCore::AccessibilityNodeObject::isChecked):
(WebCore::AccessibilityNodeObject::isHovered):
(WebCore::AccessibilityNodeObject::isMultiSelectable):
(WebCore::AccessibilityNodeObject::isReadOnly):
(WebCore::AccessibilityNodeObject::isRequired):
(WebCore::AccessibilityNodeObject::headingLevel):
(WebCore::AccessibilityNodeObject::valueDescription):
(WebCore::AccessibilityNodeObject::isARIARange):
(WebCore::AccessibilityNodeObject::valueForRange):
(WebCore::AccessibilityNodeObject::maxValueForRange):
(WebCore::AccessibilityNodeObject::minValueForRange):
(WebCore::AccessibilityNodeObject::stepValueForRange):
(WebCore::AccessibilityNodeObject::isHeading):
(WebCore::AccessibilityNodeObject::isLink):
(WebCore::AccessibilityNodeObject::isControl):
(WebCore::AccessibilityNodeObject::isFieldset):
(WebCore::AccessibilityNodeObject::isGroup):
(WebCore::AccessibilityNodeObject::selectedRadioButton):
(WebCore::AccessibilityNodeObject::selectedTabItem):
(WebCore::AccessibilityNodeObject::checkboxOrRadioValue):
(WebCore::AccessibilityNodeObject::anchorElement):
(WebCore::AccessibilityNodeObject::actionElement):
(WebCore::AccessibilityNodeObject::mouseButtonListener):
(WebCore::AccessibilityNodeObject::isDescendantOfBarrenParent):
(WebCore::AccessibilityNodeObject::alterSliderValue):
(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):
(WebCore::AccessibilityNodeObject::changeValueByStep):
(WebCore::AccessibilityNodeObject::changeValueByPercent):
(WebCore::AccessibilityNodeObject::isGenericFocusableElement):
(WebCore::AccessibilityNodeObject::labelForElement):
(WebCore::AccessibilityNodeObject::ariaAccessibilityDescription):
(WebCore::siblingWithAriaRole):
(WebCore::AccessibilityNodeObject::menuElementForMenuButton):
(WebCore::AccessibilityNodeObject::menuForMenuButton):
(WebCore::AccessibilityNodeObject::menuItemElementForMenu):
(WebCore::AccessibilityNodeObject::menuButtonForMenu):
(WebCore::AccessibilityNodeObject::accessibilityDescription):
(WebCore::AccessibilityNodeObject::helpText):
(WebCore::AccessibilityNodeObject::hierarchicalLevel):
(WebCore::AccessibilityNodeObject::textUnderElement):
(WebCore::AccessibilityNodeObject::title):
(WebCore::AccessibilityNodeObject::text):
(WebCore::AccessibilityNodeObject::stringValue):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
(WebCore::AccessibilityNodeObject::elementsFromAttribute):
(WebCore::AccessibilityNodeObject::ariaLabeledByElements):
(WebCore::AccessibilityNodeObject::ariaLabeledByAttribute):
(WebCore::AccessibilityNodeObject::canSetFocusAttribute):

  • accessibility/AccessibilityNodeObject.h:

(AccessibilityNodeObject):
(WebCore::AccessibilityNodeObject::node):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::parentObject):
(WebCore):
(WebCore::AccessibilityRenderObject::isReadOnly):
(WebCore::AccessibilityRenderObject::helpText):
(WebCore::AccessibilityRenderObject::accessibilityDescription):
(WebCore::AccessibilityRenderObject::text):
(WebCore::AccessibilityRenderObject::contentChanged):
(WebCore::AccessibilityRenderObject::canHaveChildren):

  • accessibility/AccessibilityRenderObject.h:

(AccessibilityRenderObject):
(WebCore::AccessibilityRenderObject::setRenderObject):

LayoutTests:

New test that compares accessibility attributes of lots of elements
inside and outside of canvas fallback content, to make sure they're
the same. Designed to be cross-platform because it just asserts the
attributes are the same in both contexts, rather than expecting specific
values.

  • accessibility/canvas-fallback-content-2-expected.txt: Added.
  • accessibility/canvas-fallback-content-2.html: Added.
8:47 AM Changeset in webkit [128317] by commit-queue@webkit.org
  • 3 edits
    28 adds in trunk

Text Autosizing: Don't autosize text in constrained height elements.
https://bugs.webkit.org/show_bug.cgi?id=96143

Patch by John Mellor <johnme@chromium.org> on 2012-09-12
Reviewed by Julien Chaffraix.

Source/WebCore:

Autosizing text within constained height elements usually goes badly,
as the autosized text will wrap onto more lines, hence it will become
taller and often overflow its container, breaking the page's layout.

This patch disables autosizing for blocks with a fixed height ancestor
(or which are fixed height themselves), unless the lowest such ancestor
(or one of the ancestors in between it and the text block) has
overflow-y:auto/scroll, in which case the height isn't really fixed.

Tests: fast/text-autosizing/constrained-and-overflow-auto-ancestor.html

fast/text-autosizing/constrained-and-overflow-hidden-ancestor.html
fast/text-autosizing/constrained-and-overflow-paged-x-ancestor.html
fast/text-autosizing/constrained-and-overflow-scroll-ancestor.html
fast/text-autosizing/constrained-height-ancestor.html
fast/text-autosizing/constrained-maxheight-ancestor.html
fast/text-autosizing/constrained-maxheight.html
fast/text-autosizing/constrained-percent-maxheight.html
fast/text-autosizing/constrained-percent-of-viewport-maxheight.html
fast/text-autosizing/constrained-then-overflow-ancestors.html
fast/text-autosizing/constrained-then-overflow-then-positioned-ancestors.html
fast/text-autosizing/constrained-then-position-absolute-ancestors.html
fast/text-autosizing/constrained-then-position-fixed-ancestors.html
fast/text-autosizing/constrained-within-overflow-ancestor.html

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processBox):

Skips boxes for which contentHeightIsConstrained returns true.

(WebCore::TextAutosizer::contentHeightIsConstrained):

Walks up the render tree until it finds either a constrained height
or overflow-y:auto/scroll ancestor.

LayoutTests:

Added tests with various kinds, orders and nestings of constrained
height, overflow-y and positioned elements.

  • fast/text-autosizing/constrained-and-overflow-auto-ancestor-expected.html: Added.
  • fast/text-autosizing/constrained-and-overflow-auto-ancestor.html: Added.
  • fast/text-autosizing/constrained-and-overflow-hidden-ancestor-expected.html: Added.
  • fast/text-autosizing/constrained-and-overflow-hidden-ancestor.html: Added.
  • fast/text-autosizing/constrained-and-overflow-paged-x-ancestor-expected.html: Added.
  • fast/text-autosizing/constrained-and-overflow-paged-x-ancestor.html: Added.
  • fast/text-autosizing/constrained-and-overflow-scroll-ancestor-expected.html: Added.
  • fast/text-autosizing/constrained-and-overflow-scroll-ancestor.html: Added.
  • fast/text-autosizing/constrained-height-ancestor-expected.html: Added.
  • fast/text-autosizing/constrained-height-ancestor.html: Added.
  • fast/text-autosizing/constrained-maxheight-ancestor-expected.html: Added.
  • fast/text-autosizing/constrained-maxheight-ancestor.html: Added.
  • fast/text-autosizing/constrained-maxheight-expected.html: Added.
  • fast/text-autosizing/constrained-maxheight.html: Added.
  • fast/text-autosizing/constrained-percent-maxheight-expected.html: Added.
  • fast/text-autosizing/constrained-percent-maxheight.html: Added.
  • fast/text-autosizing/constrained-percent-of-viewport-maxheight-expected.html: Added.
  • fast/text-autosizing/constrained-percent-of-viewport-maxheight.html: Added.
  • fast/text-autosizing/constrained-then-overflow-ancestors-expected.html: Added.
  • fast/text-autosizing/constrained-then-overflow-ancestors.html: Added.
  • fast/text-autosizing/constrained-then-overflow-then-positioned-ancestors-expected.html: Added.
  • fast/text-autosizing/constrained-then-overflow-then-positioned-ancestors.html: Added.
  • fast/text-autosizing/constrained-then-position-absolute-ancestors-expected.html: Added.
  • fast/text-autosizing/constrained-then-position-absolute-ancestors.html: Added.
  • fast/text-autosizing/constrained-then-position-fixed-ancestors-expected.html: Added.
  • fast/text-autosizing/constrained-then-position-fixed-ancestors.html: Added.
  • fast/text-autosizing/constrained-within-overflow-ancestor-expected.html: Added.
  • fast/text-autosizing/constrained-within-overflow-ancestor.html: Added.
8:44 AM Changeset in webkit [128316] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Remove unused getProcessMemorySize from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=96520

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

8:36 AM Changeset in webkit [128315] by commit-queue@webkit.org
  • 6 edits in trunk/Source

[Qt] Segmentation fault when closing QtTestBrowser
https://bugs.webkit.org/show_bug.cgi?id=95003

Patch by Roland Takacs <rtakacs@inf.u-szeged.hu> on 2012-09-12
Reviewed by Simon Hausmann.

Source/WebCore:

Defined a new QObject* variable.
If WebKit1 is used, it points to the QGLWidget that was
created in 'createPlatformGraphicsContext3DFromWidget'.
If WebKit2 is used, it points to the QWindow that was
created in GraphicsContext3DPrivate's constructor.
It is neccessary for deallocating them.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):

  • platform/qt/QWebPageClient.h:

(QWebPageClient):

Source/WebKit/qt:

Defined a new QObject* variable that points to the QGLWidget that was created
in 'createPlatformGraphicsContext3DFromWidget'.
It is neccessary for deallocating it.

  • WebCoreSupport/PageClientQt.cpp:

(createPlatformGraphicsContext3DFromWidget):
(WebCore::PageClientQWidget::createPlatformGraphicsContext3D):
(WebCore::PageClientQGraphicsWidget::createPlatformGraphicsContext3D):

  • WebCoreSupport/PageClientQt.h:

(PageClientQWidget):
(PageClientQGraphicsWidget):

8:34 AM Changeset in webkit [128314] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark new test fast/filesystem/workers/detached-frame-crash.html
as flakily crashing in cr-win & cr-linux debug builds.

Unreviewed gardening.

  • platform/chromium/TestExpectations:
8:32 AM Changeset in webkit [128313] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

[EFL] Fix build break when netscape-plugin-api is enebled after r126971
https://bugs.webkit.org/show_bug.cgi?id=96513

Unreviewed build fix.

  • plugins/efl/PluginViewEfl.cpp:

(WebCore::PluginView::platformGetValue):

8:21 AM Changeset in webkit [128312] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Use own instance of CertMgrWrapper in BlackBerry CredentialBackingStore.
https://bugs.webkit.org/show_bug.cgi?id=96457
Internal PR: 205769

Internally reviewed by George Staikos, Jonathan Dong.
Patch by Lianghui Chen <liachen@rim.com> on 2012-09-12
Reviewed by George Staikos.

CertMgrWrapper in BlackBerry platform layer has been changed from
singleton to normal class, every user of it need to create its own
instance now.

No new tests for platform specific interface change.

  • platform/network/blackberry/CredentialBackingStore.cpp:

(WebCore::CredentialBackingStore::CredentialBackingStore):
(WebCore::CredentialBackingStore::~CredentialBackingStore):
(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):
(WebCore::CredentialBackingStore::getLogin):
(WebCore::CredentialBackingStore::certMgrWrapper):
(WebCore):

  • platform/network/blackberry/CredentialBackingStore.h:

(Platform):
(CredentialBackingStore):

8:08 AM Changeset in webkit [128311] by kenneth@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Avoid manual memory management in RenderThemeEfl
https://bugs.webkit.org/show_bug.cgi?id=96501

Reviewed by Simon Hausmann.

Use OwnPtr as it works for Evas_Object and Evas_Ecore objects.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::ThemePartCacheEntry::ThemePartCacheEntry):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::~ThemePartCacheEntry):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::create):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::reuse):
(WebCore::RenderThemeEfl::paintThemePart):
(WebCore::RenderThemeEfl::setColorFromThemeClass):
(WebCore::RenderThemeEfl::themePath):
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::applyPartDescriptionsFrom):
(WebCore::RenderThemeEfl::RenderThemeEfl):
(WebCore::RenderThemeEfl::~RenderThemeEfl):
(WebCore::RenderThemeEfl::emitMediaButtonSignal):

  • platform/efl/RenderThemeEfl.h:

(WebCore::RenderThemeEfl::canvas):
(WebCore::RenderThemeEfl::edje):
(RenderThemeEfl):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::canvas):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::edje):
(ThemePartCacheEntry):

8:04 AM Changeset in webkit [128310] by zandobersek@gmail.com
  • 2 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening.

Adding baseline for an accessibility test introduced in r128227.

Adding a text mismatch failure expectation for fast/events/popup-blocking-timers.html
that started failing after the test was refactored in r128270.

  • platform/gtk/TestExpectations:
  • platform/gtk/accessibility/img-fallsback-to-title-expected.txt: Added.
7:50 AM WebKitGTK/WebKit2Roadmap edited by Carlos Garcia Campos
(diff)
7:36 AM Changeset in webkit [128309] by fmalita@chromium.org
  • 3 edits
    2 adds in trunk

getScreenCTM returns different values depending on zoom
https://bugs.webkit.org/show_bug.cgi?id=96361

Reviewed by Dirk Schulze.

Source/WebCore:

SVGSVGElement::localCoordinateSpaceTransform() needs to adjust for the
zoom level (which is already factored into CSS coordinates) at the
SVG/HTML boundary.

Test: svg/zoom/page/zoom-get-screen-ctm.html

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::localCoordinateSpaceTransform):

LayoutTests:

  • svg/zoom/page/zoom-get-screen-ctm-expected.txt: Added.
  • svg/zoom/page/zoom-get-screen-ctm.html: Added.
7:35 AM Changeset in webkit [128308] by commit-queue@webkit.org
  • 5 edits in trunk

[Qt] Build on Windows requires bison/flex in PATH
https://bugs.webkit.org/show_bug.cgi?id=96358

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

Source/ThirdParty/ANGLE:

Use MAKEFILE_NOOP_COMMAND instead of the \n\t trick to generate a dummy command. Otherwise
the PATH prepend trick will break because it generates a command line along the lines of
(set PATH="...") && with just that trailing ampersand pair.

  • DerivedSources.pri:

Tools:

The build requires flex, bison, etc. and they need to be in the PATH when building. On Mac OS X
and Linux that is rarely a problem given how easily available the tools are. On Windows however
a separate installation of various GNU tools is required as the operating system doesn't come with
them. To make the development more convenient, Qt 5 provides a copy of the most essential tools in
the gnuwin32 directory of the qt5.git top-level repository.

This patch tries to detect the presence of those tools and prepends them to the PATH if found.

This is required in preparation for the elimination of qt5/qtwebkit.pri, which currently expands
PATH before calling build-webkit. It it also required for the upcoming introduction of win_flex
as dependency over flex, which can be done with less hassle when qt5's gnuwin32 directory has been
updated with the new tool.

  • Scripts/webkitdirs.pm:

(checkRequiredSystemConfig):

  • qmake/mkspecs/features/default_post.prf:
7:26 AM Changeset in webkit [128307] by commit-queue@webkit.org
  • 3 edits in trunk

[Qt] Drastically shorten length of commandline needed for JS bindings generator
https://bugs.webkit.org/show_bug.cgi?id=96266

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

The generate-bindings script supports the SOURCE_ROOT environment variable for IDL include file
lookups, which allows specifying relative include search directories.

  • DerivedSources.pri:
7:14 AM Changeset in webkit [128306] by allan.jensen@nokia.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. These tests should have been unskipped when fixed.
https://bugs.webkit.org/show_bug.cgi?id=93246

  • platform/qt/Skipped:
7:11 AM Changeset in webkit [128305] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Update build-jsc after r128174

Reviewed by Ossy.

  • Scripts/build-jsc:
7:10 AM Changeset in webkit [128304] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Teach addStrictSubdirOrderBetween to handle more than two targets

By hard-coding the names of the targets we defined we ended up just
redefining the previous target when using addStrictSubdirOrderBetween
more than once in a single project file.

We now embed the two base targets into the target names.

Reviewed by Simon Hausmann.

6:51 AM Changeset in webkit [128303] by Patrick Gansterer
  • 5 edits in trunk/Source/WebCore

Remove last call to numberToString() from WebCore code
https://bugs.webkit.org/show_bug.cgi?id=96484

Reviewed by Kentaro Hara.

Replace WTF::numberToString() with String::numberToStringECMAScript() to remove duplicated
code. Using the new function allows us to improve and/or remove numberToString() without
changing all caller sides later. Also remove an unneeded strlen() in the touched code.

  • bindings/v8/V8DOMWrapper.cpp:

(WebCore::V8DOMWrapper::setNamedHiddenReference):

  • bindings/v8/V8DependentRetained.h:

(WebCore::V8DependentRetained::createPropertyName):

  • bindings/v8/V8HiddenPropertyName.cpp:

(WebCore::V8HiddenPropertyName::hiddenReferenceName):

  • bindings/v8/V8HiddenPropertyName.h:

(V8HiddenPropertyName):

6:17 AM Changeset in webkit [128302] by zandobersek@gmail.com
  • 3 edits
    2 adds in trunk

Unreviewed, rolling out r128221.
http://trac.webkit.org/changeset/128221
https://bugs.webkit.org/show_bug.cgi?id=96504

The rollout was incorrect. (Requested by zdobersek on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

Source/WebCore:

  • platform/network/soup/ResourceResponseSoup.cpp:

(WebCore::ResourceResponse::updateFromSoupMessage):

LayoutTests:

  • http/tests/misc/non-utf8-header-name-expected.txt: Added.
  • http/tests/misc/non-utf8-header-name.php: Added.
6:16 AM Changeset in webkit [128301] by loislo@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed. Touch two files for fixing broken compile dependency on Apple Windows Debug bot.

  • css/StyleResolver.cpp:
  • loader/FrameLoader.cpp:
5:56 AM WebKitGTK/1.10.x edited by Philippe Normand
(diff)
5:50 AM Changeset in webkit [128300] by loislo@chromium.org
  • 12 edits in trunk/Source

Web Inspector: NMI move String* instrumentation to wtf.
https://bugs.webkit.org/show_bug.cgi?id=96405

Reviewed by Yury Semikhatsky.

This instrumentation is solving the problem with substrings and removes traits based code which is hard to upstream.

Source/WebCore:

  • dom/WebCoreMemoryInstrumentation.cpp:

(WebCore):

  • dom/WebCoreMemoryInstrumentation.h:

(WebCore):

Source/WebKit/chromium:

Tested by webkit_unit_tests.

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::TEST):

Source/WTF:

Tested by webkit_unit_tests.

  • wtf/text/AtomicString.h:

(AtomicString):
(WTF::AtomicString::reportMemoryUsage):

  • wtf/text/StringImpl.h:

(StringImpl):
(WTF::StringImpl::reportMemoryUsage):

  • wtf/text/WTFString.h:

(String):
(WTF::String::reportMemoryUsage):

5:43 AM Changeset in webkit [128299] by commit-queue@webkit.org
  • 5 edits in trunk

Depend on {base,net} GYP targets rather than {base,net}_java.
https://bugs.webkit.org/show_bug.cgi?id=95690

Patch by Philippe Liard <pliard@google.com> on 2012-09-12
Reviewed by Adam Barth.

Source/WebKit/chromium:

{base,net}_java became 'private' targets on the Chromium side that
clients should not depend on (see
https://chromiumcodereview.appspot.com/10913083/).
This also adds the missing 'chromium_net.jar' to |input_jars_paths|
that was magically included in Chrome for Android downstream but not
upstream. It's needed to register JNI for 'net' in webkit_unit_tests.

  • WebKitUnitTests.gyp:

Tools:

{base,net}_java became 'private' targets on the Chromium side that
clients should not depend on (see
https://chromiumcodereview.appspot.com/10913083/).
This removes a bunch of trailing white spaces additionally in
TestWebkitAPI.gyp (which includes non-trailing white space changes).

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
  • TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
5:33 AM WebKitGTK/WebKit2Roadmap edited by mario@webkit.org
(diff)
5:33 AM Changeset in webkit [128298] by Philippe Normand
  • 5 edits in trunk/Source/WebCore

[GStreamer] Audio device not closed after playing sound
https://bugs.webkit.org/show_bug.cgi?id=89122

Reviewed by Martin Robinson.

Set the GStreamer pipeline to NULL instead of PAUSED on EOS. This
allows the audio-sink to release its connection to the audio
device. This is done only if the Media element is not
looping. To make the MediaPlayerPrivate layer aware of that
information the MediaPlayerClient interface was updated with a new
method mediaPlayerIsLooping, implemented by the HTMLMediaElement.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerIsLooping): Implementation of
MediaPlayerClient::mediaPlayerLoop, proxies to ::loop();

  • html/HTMLMediaElement.h:

(HTMLMediaElement):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerIsLooping): New method allowing
the MediaPlayer and its backend to know if a playback loop is
requested by the client.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::playbackPosition): Report
seek time or media duration if EOS was reached. These early
returns are needed because the position query doesn't work on a
NULL pipeline.
(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
Refactored to use an early return.
(WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Reset the
seeking flag.
(WebCore::MediaPlayerPrivateGStreamer::play): reset m_isEndReached.
(WebCore::MediaPlayerPrivateGStreamer::pause): Don't pause on EOS.
(WebCore::MediaPlayerPrivateGStreamer::seek): Refactor, call
currentTime() after we're sure playbin is valid and no error occured.
(WebCore::MediaPlayerPrivateGStreamer::paused): Fake paused state
on EOS.

5:32 AM Changeset in webkit [128297] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Qt] Fix the build with ENABLE_NETSCAPE_PLUGIN_API=0
https://bugs.webkit.org/show_bug.cgi?id=96494

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

WK2's ENABLE_PLUGIN_PROCESS uses the NPAPI functions unconditionally, so disable the
plugin process feature if we don't have NPAPI.

  • qmake/mkspecs/features/features.prf:
5:15 AM Changeset in webkit [128296] by loislo@chromium.org
  • 21 edits in trunk

Unreviewed, rolling out r128280.
http://trac.webkit.org/changeset/128280
https://bugs.webkit.org/show_bug.cgi?id=96498

it broke compilation on windows debug bot (Requested by loislo
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

Source/WebKit2:

  • Shared/APIClientTraits.cpp:

(WebKit):

  • Shared/APIClientTraits.h:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleSetApplicationCacheOriginQuota):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:

(WebKit):
(InjectedBundlePageUIClient):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):

Tools:

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::InjectedBundlePage):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:

(InjectedBundlePage):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::TestRunner):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

LayoutTests:

  • platform/efl-wk1/TestExpectations:
  • platform/efl/Skipped:
  • platform/wk2/Skipped:
5:13 AM Changeset in webkit [128295] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Qt] Make it possible to build with "make release" and "make debug" on Windows
https://bugs.webkit.org/show_bug.cgi?id=96488

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

A "make debug" is passed through recursively and currently it aborts at Makefile.DerivedSources
because there are no such targets. We want the generated sources to be independent from release
or debug build configurations, so it is sufficient to provide fake debug and release targets that
redirect to the same general-purpose target (first) of creating the derived sources.

  • qmake/mkspecs/features/default_post.prf:
5:10 AM Changeset in webkit [128294] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Build on X11 with GraphicsSurface but without NPAPI is broken
https://bugs.webkit.org/show_bug.cgi?id=96495

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

When enabling NPAPI we link against XRender on X11. The other component that needs Xrender
is GraphicsSurface. So when building without NPAPI we need to make sure that we link in Xrender.

This patch cleans up the GraphicsSurface related linkage required on Mac OS X and X11 by wrapping
it in use?(graphics_surface) instead of 3D_GRAPHICS. It is not neccesary to perform the have?(XCOMPOSITE)
check anymore because it's already done in features.prf before enabling use_graphics_surface in the
first place.

  • WebCore.pri:
5:07 AM Changeset in webkit [128293] by commit-queue@webkit.org
  • 12 edits in trunk

Web Inspector: Protocol Extension: Add "regionLayoutUpdate" event
https://bugs.webkit.org/show_bug.cgi?id=93443

Patch by Andrei Poenaru <poenaru@adobe.com> on 2012-09-12
Reviewed by Alexander Pavlov.

Source/WebCore:

Added "regionLayoutUpdate" event to the protocol.

Removed "getFlowByName" from protocol.

The front-end keeps in sync the requested Named Flow Collections.

Modified existing test: inspector/styles/protocol-css-regions-commands.html

  • dom/NamedFlowCollection.cpp:

(WebCore::NamedFlowCollection::ensureFlowWithName):
(WebCore::NamedFlowCollection::discardNamedFlow):

  • inspector/Inspector.json:
  • inspector/InspectorCSSAgent.cpp:

(UpdateRegionLayoutTask):
(WebCore):
(WebCore::UpdateRegionLayoutTask::UpdateRegionLayoutTask):
(WebCore::UpdateRegionLayoutTask::scheduleFor):
(WebCore::UpdateRegionLayoutTask::unschedule):
(WebCore::UpdateRegionLayoutTask::reset):
(WebCore::UpdateRegionLayoutTask::onTimer):
(WebCore::InspectorCSSAgent::reset):
(WebCore::InspectorCSSAgent::didCreateNamedFlow):
(WebCore::InspectorCSSAgent::willRemoveNamedFlow):
(WebCore::InspectorCSSAgent::didUpdateRegionLayout):
(WebCore::InspectorCSSAgent::regionLayoutUpdated):
(WebCore::InspectorCSSAgent::getNamedFlowCollection):
(WebCore::InspectorCSSAgent::documentNodeWithRequestedFlowsId):

  • inspector/InspectorCSSAgent.h:

(WebCore):
(InspectorCSSAgent):

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::didCreateNamedFlowImpl):
(WebCore::InspectorInstrumentation::willRemoveNamedFlowImpl):
(WebCore::InspectorInstrumentation::didUpdateRegionLayoutImpl):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didCreateNamedFlow):
(WebCore::InspectorInstrumentation::willRemoveNamedFlow):
(WebCore):
(WebCore::InspectorInstrumentation::didUpdateRegionLayout):

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleModel):
(WebInspector.CSSStyleModel.prototype.getNamedFlowCollectionAsync.callback):
(WebInspector.CSSStyleModel.prototype.getNamedFlowCollectionAsync):
(WebInspector.CSSStyleModel.prototype.getFlowByNameAsync.callback):
(WebInspector.CSSStyleModel.prototype.getFlowByNameAsync):
(WebInspector.CSSStyleModel.prototype._namedFlowCreated):
(WebInspector.CSSStyleModel.prototype._namedFlowRemoved):
(WebInspector.CSSStyleModel.prototype._regionLayoutUpdated):
(WebInspector.CSSStyleModel.prototype._resetNamedFlowCollections):
(WebInspector.CSSDispatcher.prototype.namedFlowCreated):
(WebInspector.CSSDispatcher.prototype.namedFlowRemoved):
(WebInspector.CSSDispatcher.prototype.regionLayoutUpdated):
(WebInspector.NamedFlow):
(WebInspector.NamedFlowCollection):
(WebInspector.NamedFlowCollection.prototype._appendNamedFlow):
(WebInspector.NamedFlowCollection.prototype._removeNamedFlow):
(WebInspector.NamedFlowCollection.prototype.flowByName):

  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::dispatchRegionLayoutUpdateEvent):

LayoutTests:

Validate "regionLayoutUpdate" event.

  • inspector/styles/protocol-css-regions-commands-expected.txt:
  • inspector/styles/protocol-css-regions-commands.html:
5:06 AM WebKitGTK/WebKit2Roadmap edited by Carlos Garcia Campos
(diff)
5:05 AM WebKitGTK/WebKit2Roadmap edited by Carlos Garcia Campos
(diff)
4:52 AM Changeset in webkit [128292] by kenneth@webkit.org
  • 2 edits in trunk/Tools

[EFL] Make DumpRenderTree smarter at finding the fonts
http://webkit.org/b/96281

Reviewed by Gyuyoung Kim.

Respect WEBKITOUTPUTDIR and expand the font dir from it.
Use CString consistently.

  • DumpRenderTree/efl/FontManagement.cpp:

(buildPath):
(getCoreFontFiles):
(addFontDirectory):
(addFontFiles):
(getCustomBuildDir):
(getPlatformFontsPath):
(addFontsToEnvironment):

4:36 AM Changeset in webkit [128291] by apavlov@chromium.org
  • 10 edits in trunk

Web Inspector: [Elements] Sidebar panes not updated on style changes due to "class" attribute modifications
https://bugs.webkit.org/show_bug.cgi?id=95722

Reviewed by Vsevolod Vlasov.

Source/WebCore:

The DOMAgent StyleInvalidated event has been removed in favor of the StylesSidebarPane explicitly listening on the
AttrModified/AttrRemoved events that result in those same updates.

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMAgent.prototype._attributeModified):
(WebInspector.DOMAgent.prototype._loadNodeAttributes):
(WebInspector.DOMAgent.prototype._childNodeRemoved):

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeElement.prototype.updateSelection): Drive-by: avoid a costly synchronous layout during DOM tree updates.

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylesSidebarPane):
(WebInspector.StylesSidebarPane.prototype._attributeChanged):
(WebInspector.StylesSidebarPane.prototype._canAffectCurrentStyles):

LayoutTests:

  • inspector/elements/edit-style-attribute.html: Renamed events on which to listen.
  • inspector/styles/override-screen-size.html: Drive-by: fixed race condition that was resulting in this test's failures.
  • inspector/styles/styles-update-from-js-expected.txt:
  • inspector/styles/styles-update-from-js.html: Added test cases for style updates on ancestor and sibling attributes' changes.
4:34 AM Changeset in webkit [128290] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Build with ENABLE_REQUEST_ANIMATION_FRAME=0 is broken
https://bugs.webkit.org/show_bug.cgi?id=96491

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Csaba Osztrogonác.

In the IDL file, don't just check for the define, also check if it's set to 1 before enabling the
RAF APIs. It's done like this with all the other feature defines in IDL files.

  • page/DOMWindow.idl:
3:20 AM Changeset in webkit [128289] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL][WK2] WorkQueue::dispatchAfterDelay() doesn't work properly.
https://bugs.webkit.org/show_bug.cgi?id=91179

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-09-12
Reviewed by Gyuyoung Kim.

When UI Process is crashed and WebProcess's ecore main loop is very
busy or lockup also, watchdocCallback() function in the
ChildProcess.cpp doesn't triggered. And this is because of that
WorkQueue::dispatchAfterDelay() function uses ecore timer for getting
timer event.

For removing the dependency between the dispatchAfterDelay() and ecore
main loop, new timer event mechanism is added to WorkQueue main loop.

  • Platform/WorkQueue.h:

(TimerWorkItem):
(WorkQueue::TimerWorkItem::dispatch):
(WorkQueue::TimerWorkItem::expireTime):
(WorkQueue::TimerWorkItem::expired):
(WorkQueue):

  • Platform/efl/WorkQueueEfl.cpp:

(WorkQueue::TimerWorkItem::create):
(WorkQueue::TimerWorkItem::TimerWorkItem):
(WorkQueue::performFileDescriptorWork):
(WorkQueue::getCurrentTime):
(WorkQueue::getNextTimeOut):
(WorkQueue::performTimerWork):
(WorkQueue::workQueueThread):
(WorkQueue::dispatchAfterDelay):

3:17 AM Changeset in webkit [128288] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unreviewed gardening, skip a new failing test to paint the bot green.

  • platform/qt-5.0-wk2/Skipped:
3:15 AM Changeset in webkit [128287] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: InspectorBackend.loadFromJSONIfNeeded should take the JSON url as argument
https://bugs.webkit.org/show_bug.cgi?id=96472

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-09-12
Reviewed by Yury Semikhatsky.

The method loadFromJSONIfNeeded need to take the jsonUrl as argument
as this will be called from the Inspector Protocol Test Harness
residing in a different location.

No new tests as code refactoring done.

  • inspector/front-end/InspectorBackend.js:

(InspectorBackendClass.prototype.loadFromJSONIfNeeded):

  • inspector/front-end/inspector.js:
2:58 AM Changeset in webkit [128286] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-1.10/Source/WebCore

Merge r128074 - [GTK][a11y] editing/pasteboard/paste-blockquote-into-blockquote-4.html crashes
https://bugs.webkit.org/show_bug.cgi?id=96199

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-10
Reviewed by Martin Robinson.

Added sanity check to correct erroneous assumption that there will
always be a child object.

No new tests as the bug crashes two existing Layout Tests which should
no longer crash as a result of this fix.

  • accessibility/gtk/AccessibilityObjectAtk.cpp:

(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):

2:58 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
2:57 AM Changeset in webkit [128285] by vsevik@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: XMLHttpRequest instrumentation methods used by timeline should have better names.
https://bugs.webkit.org/show_bug.cgi?id=96486

Reviewed by Alexander Pavlov.

Renamed instrumentation methods.

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willDispatchXHRReadyStateChangeEventImpl):
(WebCore::InspectorInstrumentation::didDispatchXHRReadyStateChangeEventImpl):
(WebCore::InspectorInstrumentation::willDispatchXHRLoadEventImpl):
(WebCore::InspectorInstrumentation::didDispatchXHRLoadEventImpl):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willDispatchXHRReadyStateChangeEvent):
(WebCore::InspectorInstrumentation::didDispatchXHRReadyStateChangeEvent):
(WebCore::InspectorInstrumentation::willDispatchXHRLoadEvent):
(WebCore::InspectorInstrumentation::didDispatchXHRLoadEvent):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::willDispatchXHRReadyStateChangeEvent):
(WebCore::InspectorTimelineAgent::didDispatchXHRReadyStateChangeEvent):
(WebCore::InspectorTimelineAgent::willDispatchXHRLoadEvent):
(WebCore::InspectorTimelineAgent::didDispatchXHRLoadEvent):

  • inspector/InspectorTimelineAgent.h:

(InspectorTimelineAgent):

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::callReadyStateChangeListener):

2:46 AM Changeset in webkit [128284] by commit-queue@webkit.org
  • 12 edits in trunk/Source

Unreviewed, rolling out r128279.
http://trac.webkit.org/changeset/128279
https://bugs.webkit.org/show_bug.cgi?id=96487

"Snow Leopard compilation broken" (Requested by yurys on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

Source/WebCore:

  • dom/WebCoreMemoryInstrumentation.cpp:

(WebCore):
(WebCore::String):
(WebCore::StringImpl):
(WebCore::AtomicString):

  • dom/WebCoreMemoryInstrumentation.h:

(WebCore):

  • inspector/MemoryInstrumentationImpl.cpp:

(WebCore::MemoryInstrumentationImpl::countObjectSize):

  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::reportMemoryUsage):

Source/WebKit/chromium:

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::InstrumentedUndefined::reportMemoryUsage):
(WebCore::TEST):

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(GenericMemoryTypes):
(WebCore):
(WebCore::MemoryInstrumentation::addRootObject):
(WebCore::MemoryObjectInfo::reportObjectInfo):
(WebCore::MemoryClassInfo::MemoryClassInfo):

  • wtf/text/AtomicString.h:

(AtomicString):

  • wtf/text/StringImpl.h:
  • wtf/text/WTFString.h:
2:45 AM Changeset in webkit [128283] by yurys@chromium.org
  • 4 edits in trunk/Source

Web Inspector: Persistent handle referenced from ScriptWrappable is double counted
https://bugs.webkit.org/show_bug.cgi?id=96483

Reviewed by Alexander Pavlov.

Source/WebCore:

  • bindings/v8/ScriptWrappable.h:

(WebCore::ScriptWrappable::reportMemoryUsage): the handle is a part of an
array where all such handles are allocated and should not be counted here
second time. In order to make the clang plugin that validate memory instrumentation
happy we report it here as weak pointer (no-op).

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(WebCore::MemoryClassInfo::addWeakPointer): this method is expected to be
used on fields that are pointers to objects which are parts of bigger memory
blocks (field of another object, element in an array, object allocated in a
memory arena etc.). We don't want to count such objects' memory separately
from their owners but in order to be able to validates the memory instrumentation
with clang plugin we need to make sure all fields in instrumented objects
are reported.
(MemoryClassInfo):

2:38 AM Changeset in webkit [128282] by abecsi@webkit.org
  • 3 edits in trunk/Source/WebKit/qt

[Qt] Add module identifier directive to the qmldir files
https://bugs.webkit.org/show_bug.cgi?id=96406

Reviewed by Simon Hausmann.

Qt5 QML modules need to be identified. Type registrations are only permitted
into the namespace identified in the qmldir file's module identifier directive.
Additionally this also facilitates the protection against external registrations.
This patch suppresses a warning when importing the QtWebKit module.

  • declarative/experimental/qmldir:
  • declarative/qmldir:
2:32 AM Changeset in webkit [128281] by caseq@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Implement search and filtering on Timeline panel
https://bugs.webkit.org/show_bug.cgi?id=95445

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-09-12
Reviewed by Yury Semikhatsky.

Implemented textual search/filtering on Timeline panel.
Fixed "revealRecordAt" - now it scans all records in window,
now only visible ones.

  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineWindowFilter):
Extracted from TimelineOverviewPane class.

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel):
(WebInspector.TimelinePanel.prototype.revealRecordAt):
Used DFS to scan records.
(WebInspector.TimelinePanel.prototype._revealRecord):
Extracted common code.
(WebInspector.TimelineSearchFilter):
Implemented search and filtration.

2:17 AM Changeset in webkit [128280] by commit-queue@webkit.org
  • 21 edits in trunk

[WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
https://bugs.webkit.org/show_bug.cgi?id=96374

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle C API to reset the application cache quota
for a given origin.

Add new reachedApplicationCacheOriginQuota callback
to WKBundlePageUIClient which is called from
WebChromeClient::reachedApplicationCacheOriginQuota().

Those are needed by WebKitTestRunner to dump
information about the application cache callbacks
if instructed to.

  • Shared/APIClientTraits.cpp:

(WebKit):

  • Shared/APIClientTraits.h:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleSetApplicationCacheOriginQuota):
(WKBundleResetApplicationCacheOriginQuota):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::resetApplicationCacheOriginQuota):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:

(WebKit):
(InjectedBundlePageUIClient):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):

Tools:

Implement support for dumpApplicationCacheDelegateCallbacks
and disallowIncreaseForApplicationCacheQuota in
WebKitTestRunner and properly dump the information
expected by the tests.

If the application cache quota is reached for a given
security origin, WebKitTestRunner will reset the quota
to its default value, unless intructed not to via
disallowIncreaseForApplicationCacheQuota().

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::InjectedBundlePage):
(WTR::InjectedBundlePage::didReachApplicationCacheOriginQuota):
(WTR):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:

(InjectedBundlePage):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::TestRunner):
(WTR::TestRunner::disallowIncreaseForApplicationCacheQuota):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(WTR::TestRunner::dumpApplicationCacheDelegateCallbacks):
(TestRunner):
(WTR::TestRunner::shouldDisallowIncreaseForApplicationCacheQuota):
(WTR::TestRunner::shouldDumpApplicationCacheDelegateCallbacks):

LayoutTests:

Unskip test cases that are passing now that WebKitTestRunner
implements dumpApplicationCacheDelegateCallbacks and
disallowIncreaseForApplicationCacheQuota.

  • platform/efl-wk1/TestExpectations:
  • platform/efl/Skipped:
  • platform/wk2/Skipped:
2:13 AM Changeset in webkit [128279] by loislo@chromium.org
  • 12 edits in trunk/Source

Web Inspector: NMI move String* instrumentation to wtf.
https://bugs.webkit.org/show_bug.cgi?id=96405

Reviewed by Yury Semikhatsky.

This instrumentation is solving the problem with substrings and removes traits based code which is hard to upstream.

Source/WebCore:

  • dom/WebCoreMemoryInstrumentation.cpp:

(WebCore):

  • dom/WebCoreMemoryInstrumentation.h:

(WebCore):

  • dom/WebCoreMemoryInstrumentation.cpp:

(WebCore):

  • dom/WebCoreMemoryInstrumentation.h:

(WebCore):

  • inspector/MemoryInstrumentationImpl.cpp:

(WebCore::MemoryInstrumentationImpl::countObjectSize):

  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::reportMemoryUsage):

Source/WebKit/chromium:

Tested by webkit_unit_tests.

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::InstrumentedUndefined::reportMemoryUsage):
(WebCore::TEST):

Source/WTF:

Tested by webkit_unit_tests.

  • wtf/MemoryInstrumentation.h:

(WebCore):
(WebCore::MemoryInstrumentation::addRootObject):
(WebCore::MemoryObjectInfo::reportObjectInfo):
(WebCore::MemoryClassInfo::MemoryClassInfo):

  • wtf/text/AtomicString.h:

(AtomicString):
(WTF::AtomicString::reportMemoryUsage):

  • wtf/text/StringImpl.h:

(StringImpl):
(WTF::StringImpl::reportMemoryUsage):

  • wtf/text/WTFString.h:

(String):
(WTF::String::reportMemoryUsage):

2:10 AM Changeset in webkit [128278] by commit-queue@webkit.org
  • 11 edits in trunk

[WK2] [WTR] WebKitTestRunner needs TestRunner.workerThreadCount
https://bugs.webkit.org/show_bug.cgi?id=96388

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Added WKBundleGetWorkerThreadCount() function to Injected Bundle private API.

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

(WKBundleGetWorkerThreadCount):

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::workerThreadCount): Returns count of worker threads.
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

Tools:

Exported TestRunner.workerThreadCount as readonly attribute.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp: Added workerThreadCount() method implementation.

(WTR::TestRunner::workerThreadCount): Returns count of worker threads.
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h: Added workerThreadCount() method.

(TestRunner):

LayoutTests:

Unskipped corresponding tests.

  • platform/wk2/Skipped:
1:56 AM QtWebKitBuildBots edited by kadam@inf.u-szeged.hu
(diff)
1:54 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
1:54 AM QtWebKitBuildBots edited by kadam@inf.u-szeged.hu
(diff)
1:54 AM Changeset in webkit [128277] by Carlos Garcia Campos
  • 25 edits in releases/WebKitGTK/webkit-1.10/Source/JavaScriptCore

Merge r126715 - Array type checks and storage accesses should be uniformly represented and available to CSE
https://bugs.webkit.org/show_bug.cgi?id=95013

Reviewed by Oliver Hunt.

This uniformly breaks up all array accesses into up to three parts:

1) The type check, using a newly introduced CheckArray node, in addition to possibly

a CheckStructure node. We were already inserting the CheckStructure prior to this
patch. The CheckArray node will be automatically eliminated if the thing it was
checking for had already been checked for, either intentionally (a CheckStructure
inserted based on the array profile of this access) or accidentally (some checks,
typically a CheckStructure, inserted for some unrelated operations). The
CheckArray node may not be inserted if the array type is non-specific (Generic or
ForceExit).

2) The storage load using GetIndexedPropertyStorage. Previously, this only worked for

GetByVal. Now it works for all array accesses. The storage load may not be
inserted if the mode of array access does not permit CSE of storage loads (like
non-specific modes or Arguments).

3) The access itself: one of GetByVal, PutByVal, PutByValAlias, ArrayPush, ArrayPop,

GetArrayLength, StringCharAt, or StringCharCodeAt.

This means that the type check can be subjected to CSE even if the CFA isn't smart
enough to reason about it (yet!). It also means that the storage load can always be
subjected to CSE; previously CSE on storage load only worked for array loads and not
other forms of access. Finally, it removes the bizarre behavior that
GetIndexedPropertyStorage previously had: previously, it was responsible for the type
check in some cases, but not others; this made reasoning about the CFA really
confusing.

This change also disables late refinement of array mode, since I decided that
supporting that feature is both confusing and likely unprofitable. The array modes are
now locked in in the first fixup run after prediction propagation. Of course,
refinements from Generic to something else would not have been a problem; we could
reenable those if we thought we really needed to.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::fromStructure):
(DFG):
(JSC::DFG::refineArrayMode):

  • dfg/DFGArrayMode.h:

(DFG):
(JSC::DFG::modeIsJSArray):
(JSC::DFG::lengthNeedsStorage):
(JSC::DFG::modeIsSpecific):
(JSC::DFG::modeSupportsLength):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::getArrayMode):
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCFGSimplificationPhase.cpp:

(JSC::DFG::CFGSimplificationPhase::mergeBlocks):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::CSEPhase):
(JSC::DFG::CSEPhase::checkStructureElimination):
(CSEPhase):
(JSC::DFG::CSEPhase::checkArrayElimination):
(JSC::DFG::CSEPhase::getIndexedPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
(JSC::DFG::performCSE):

  • dfg/DFGCSEPhase.h:

(DFG):

  • dfg/DFGCommon.h:
  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::checkArray):
(FixupPhase):
(JSC::DFG::FixupPhase::blessArrayOperation):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::Graph):
(DFG):
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::collectGarbage):

  • dfg/DFGGraph.h:

(Graph):
(JSC::DFG::Graph::vote):
(JSC::DFG::Graph::substitute):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasArrayMode):
(JSC::DFG::Node::setArrayMode):

  • dfg/DFGNodeType.h:

(DFG):

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

(DFG):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):
(JSC::DFG::PredictionPropagationPhase::mergeDefaultFlags):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::useChildren):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • dfg/DFGStructureCheckHoistingPhase.cpp:

(JSC::DFG::StructureCheckHoistingPhase::run):

1:52 AM Changeset in webkit [128276] by Carlos Garcia Campos
  • 7 edits in releases/WebKitGTK/webkit-1.10/Source/JavaScriptCore

Merge r126692 - op_call should have ArrayProfiling for the benefit of array intrinsics
https://bugs.webkit.org/show_bug.cgi?id=95014

Reviewed by Sam Weinig.

This is a performance-neutral change that just adds the profiling but does not
use it, yet. If in the future we wanted to make this kind of profiling cheaper
we could move it into specialized thunks for the relevant array intrinsics, but
I figure that if this much simpler change gives us what we need without any
discernable performance penalty then that's for the best.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCall):

  • jit/JITCall.cpp:

(JSC::JIT::compileOpCall):

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileOpCall):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
1:50 AM QtWebKitGardening edited by kadam@inf.u-szeged.hu
(diff)
1:44 AM Shadowproblem_example.jpg attached to QtWebKitGardening by kadam@inf.u-szeged.hu
1:44 AM draganddrop_example.jpg attached to QtWebKitGardening by kadam@inf.u-szeged.hu
1:44 AM Mutation_example.jpg attached to QtWebKitGardening by kadam@inf.u-szeged.hu
1:44 AM rebaseline_example2.jpg attached to QtWebKitGardening by kadam@inf.u-szeged.hu
1:44 AM rebaseline_example.jpg attached to QtWebKitGardening by kadam@inf.u-szeged.hu
1:43 AM QtWebKitGardening edited by kadam@inf.u-szeged.hu
(diff)
1:18 AM Changeset in webkit [128275] by kenneth@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed EFL build fix.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::themePath):

12:55 AM Changeset in webkit [128274] by kenneth@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Clean up the RenderTheme Edje caching
https://bugs.webkit.org/show_bug.cgi?id=96016

Reviewed by Gyuyoung Kim.

Refactor the Edje parts caching to be easier to understand and use
proper C++ constructs.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore):
(WebCore::toEdjeGroup):

Converts the enum to the given edje group name.

(WebCore::setSourceGroupForEdjeObject):

Basically a wrapper around evas_object_file_set, but handles
errors, which was done slightly differently all over.

(WebCore::RenderThemeEfl::ThemePartCacheEntry::ThemePartCacheEntry):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::~ThemePartCacheEntry):

(WebCore::createCairoSurfaceFor):
(WebCore::isFormElementTooLargeToDisplay):

Methods used when creating ThemePartCacheEntry'es.

(WebCore::RenderThemeEfl::ThemePartCacheEntry::create):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::reuse):

New methods for creating and reusing an cache entry. If you do
not supply a new size, the original size will be used, and it is
thus more effective.

(WebCore::RenderThemeEfl::getThemePartFromCache):

New method for requesting a theme part. If it doesn't exist
it will additinally be loaded and added to the cache.

(WebCore::RenderThemeEfl::flushThemePartCache):

Remove the entire cache and free the assets.

(WebCore::RenderThemeEfl::paintThemePart):
(WebCore::RenderThemeEfl::themePath):
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::applyPartDescriptionsFrom):
(WebCore::RenderThemeEfl::~RenderThemeEfl):
(WebCore::RenderThemeEfl::emitMediaButtonSignal):

  • platform/efl/RenderThemeEfl.h:

(RenderThemeEfl):
(ThemePartCacheEntry):

12:53 AM Changeset in webkit [128273] by jochen@chromium.org
  • 6 edits
    2 adds in trunk

Source/WebKit/chromium: [chromium] consumable user gesture count off for input events
https://bugs.webkit.org/show_bug.cgi?id=96373

Reviewed by Adam Barth.

Don't create a UserGestureIndicator in the chromium layer, as it will
already be created by webcore's event handler. Creating multiple
UserGestureIndicator objects for the same object would allow to execute
multiple user-gesture-gated actions per user gesture such as opening a
new window.

  • public/WebInputEvent.h:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleInputEvent):

Tools: [chromium] Consume a user gesture when creating a new view.
https://bugs.webkit.org/show_bug.cgi?id=96373

Reviewed by Adam Barth.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::createView):

LayoutTests: [chromium] Only allow one user-gesture gated action per user action.
https://bugs.webkit.org/show_bug.cgi?id=96373

Reviewed by Adam Barth.

  • platform/chromium/fast/events/popup-allowed-from-gesture-only-once-expected.txt: Added.
  • platform/chromium/fast/events/popup-allowed-from-gesture-only-once.html: Added.
12:39 AM Changeset in webkit [128272] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[WK2][WTR] Some of TestRunner special options are not reset before testing
https://bugs.webkit.org/show_bug.cgi?id=96384

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Now values of the following special options are reset:
void setAcceptsEditing(in boolean value);
void setCloseRemainingWindowsWhenComplete(in boolean value);
void setXSSAuditorEnabled(in boolean value);
void setAllowFileAccessFromFileURLs(in boolean value);
void setPluginsEnabled(in boolean value);
void setPopupBlockingEnabled(in boolean value);

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::beginTesting):

12:35 AM Changeset in webkit [128271] by Darin Adler
  • 3 edits in trunk/Source/WebKit2

Make NetscapePlugin::m_timers use HashMap<OwnPtr> instead of deleteAllValues
https://bugs.webkit.org/show_bug.cgi?id=96469

Reviewed by Dan Bernstein.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::scheduleTimer): Call release rather than leakPtr when
entering a timer into the map.
(WebKit::NetscapePlugin::unscheduleTimer): Take an existing timer from the map
with the take function rather than the roundabout code needed before.
(WebKit::NetscapePlugin::destroy): Remove now-unneeded call to deleteAllValues.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h: Change the value type for

TimerMap to OwnPtr<Timer> rather than Timer*.

12:29 AM Changeset in webkit [128270] by jochen@chromium.org
  • 3 edits in trunk/LayoutTests

Change fast/events/popup-blocking-timers.html to generate a user action for each popup
https://bugs.webkit.org/show_bug.cgi?id=96475

Reviewed by Adam Barth.

The chromium port only allows one user gesture gated action per user
gesture.

  • fast/events/popup-blocking-timers-expected.txt:
  • fast/events/popup-blocking-timers.html:
12:02 AM Changeset in webkit [128269] by aelias@chromium.org
  • 4 edits in trunk/Source

[chromium] Flip Y and swizzle inside compositeAndReadback implementation
https://bugs.webkit.org/show_bug.cgi?id=96458

Reviewed by James Robinson.

Currently, compositeAndReadback API assumes a GL-style texture
and is converted to the normal software format in WebViewImpl.
For the software implementation, this API would result in two
redundant conversions. This patch makes the conversion inside
CCRendererGL instead. I rolled my own for loop as I didn't find the
appropriate function within raw Skia.

No new tests (covered by existing layout tests).

Source/WebCore:

  • platform/graphics/chromium/cc/CCRendererGL.cpp:

(WebCore::CCRendererGL::getFramebufferPixels):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::doPixelReadbackToCanvas):

Sep 11, 2012:

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

2012-09-11 Geoffrey Garen <ggaren@apple.com>

Second step to fixing the Windows build: Add new symbols.

11:40 PM Changeset in webkit [128267] by ggaren@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Mac build fix: Commit a file I forgot.

  • WebView/WebScriptDebugDelegate.mm:

(-[WebScriptCallFrame functionName]):

11:27 PM Changeset in webkit [128266] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

2012-09-11 Geoffrey Garen <ggaren@apple.com>

First step to fixing the Windows build: Remove old symbols.

11:14 PM Changeset in webkit [128265] by ggaren@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Don't allocate a backing store just for a function's name
https://bugs.webkit.org/show_bug.cgi?id=96468

Reviewed by Oliver Hunt.

Treat function.name like function.length etc., and use a custom getter.
This saves space in closures.

  • debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::functionName):

  • debugger/DebuggerCallFrame.h:

(DebuggerCallFrame): Updated for interface change.

  • runtime/Executable.h:

(JSC::JSFunction::JSFunction): Do a little inlining.

  • runtime/JSFunction.cpp:

(JSC::JSFunction::finishCreation): Gone now. That's the point of the patch.

(JSC::JSFunction::name):
(JSC::JSFunction::displayName):
(JSC::JSFunction::nameGetter):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getOwnPropertyDescriptor):
(JSC::JSFunction::getOwnPropertyNames):
(JSC::JSFunction::put):
(JSC::JSFunction::deleteProperty):
(JSC::JSFunction::defineOwnProperty): Added custom accessors for .name
just like .length and others.

  • runtime/JSFunction.h:

(JSC::JSFunction::create):
(JSFunction): Updated for interface changes.

10:52 PM Changeset in webkit [128264] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Test expectation update

Assign new bug for fast/text/international/vertical-text-*.html

  • platform/chromium/TestExpectations:
10:02 PM Changeset in webkit [128263] by commit-queue@webkit.org
  • 3 edits
    5 adds in trunk

WebFrameImpl::client() needs NULL check in WebWorkerClientImpl::openFileSystem
https://bugs.webkit.org/show_bug.cgi?id=96354

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-09-11
Reviewed by Kent Tamura.

Ensure non-NULL before using WebFrameImpl::client().

Source/WebKit/chromium:

Test: fast/filesystem/workers/detached-frame-crash.html

  • src/WebWorkerClientImpl.cpp:

(WebKit::WebWorkerClientImpl::openFileSystem):

LayoutTests:

  • fast/filesystem/workers/detached-frame-crash-expected.txt: Added.
  • fast/filesystem/workers/detached-frame-crash.html: Added.
  • fast/filesystem/workers/resources/detached-frame-crash-frame.html: Added.
  • fast/filesystem/workers/resources/detached-frame-crash-worker.js: Added.
9:26 PM Changeset in webkit [128262] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

IncrementalSweeper should not sweep/free Zapped blocks
https://bugs.webkit.org/show_bug.cgi?id=96464

Reviewed by Filip Pizlo.

This is not beneficial in terms of performance because there isn't any way a block can emerge
in the Zapped state from a call to Heap::collect() unless we run an eager sweep on it, in which
case we've already run all the destructors we possibly can. This also causes bugs since we don't
take zapped-ness into account when determining whether or not a block is empty to free it. The
incremental sweeper can then accidentally free blocks that it thinks are empty but are in fact
zapped with still-live objects in them.

  • heap/MarkedBlock.h:

(JSC::MarkedBlock::needsSweeping): It is only valid to sweep a block if it is in the Marked state.

9:24 PM Changeset in webkit [128261] by ryuan.choi@samsung.com
  • 9 edits in trunk

[CMAKE] Supply feature defines to CodeGeneratorTestRunner.
https://bugs.webkit.org/show_bug.cgi?id=96273

Reviewed by Gyuyoung Kim.

.:

  • Source/cmake/WebKitFeatures.cmake: Generated FEATURE_DEFINES_WITH_SPACE_SEPARATOR.

Source/WebCore:

  • CMakeLists.txt: Extracted FEATURE_DEFINES with space separator to share.
  • PlatformBlackBerry.cmake: Ditto.
  • UseJSC.cmake: Ditto.
  • UseV8.cmake: Ditto.

Tools:

Passed FEATURE_DEFINES_WITH_SPACE_SEPARATOR to CodeGeneratorTestRunner
in order to distinguish compile time options such as ENABLE(TOUCH_EVENTS).

  • WebKitTestRunner/CMakeLists.txt:
9:08 PM Changeset in webkit [128260] by ggaren@apple.com
  • 15 edits in trunk/Source/JavaScriptCore

JSActivation should inline allocate its registers, and eliminate
'arguments' registers in the common case
https://bugs.webkit.org/show_bug.cgi?id=96427

Reviewed by Filip Pizlo.

This cuts the size class for simple closures down to 64 bytes.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator): Set the usesNonStrictEval
flag, which is new. Use a more specific test for whether a function
uses 'arguments', so we can avoid allocating, initializing, and tearing
off those registers in the common case. Distinguish between capturing
arguments and not, so we can avoid allocating space for arguments in
the torn-off object.

We can make this even more general in the future, with some bytecode
generator refactoring.

(JSC::BytecodeGenerator::resolve): Updated for new interface.

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):
(JSC::BytecodeGenerator::symbolTable): Updated some types.

  • heap/Heap.cpp:

(JSC::Heap::isValidAllocation): Allow large allocations, now that they
are both supported and used.

  • heap/Heap.h:

(Heap): Added a new form of allocateCell that specifies the full size
of the allocation, to allow for extra space on the end.

  • interpreter/CallFrame.h:

(JSC::ExecState::argumentOffset):
(JSC::ExecState::argumentOffsetIncludingThis):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::unwindCallFrame): Refactored this code to be more
specific about tearing off 'arguments' vs activations. This is something
I forgot in my last patch, and it is required now that we can have
acitvations without 'arguments' registers.

  • runtime/Arguments.h:

(JSC::Arguments::setRegisters): No need for setRegisters anymore because
the activation object's storage doesn't change.

  • runtime/JSActivation.cpp:

(JSC::JSActivation::JSActivation): Initialize our storage manually because
it's not declared to the C++ compiler.

(JSC::JSActivation::visitChildren): No copyAndAppend because our storage
is not out-of-line anymore.

(JSC::JSActivation::symbolTableGet):
(JSC::JSActivation::symbolTablePut):
(JSC::JSActivation::getOwnPropertyNames):
(JSC::JSActivation::symbolTablePutWithAttributes):
(JSC::JSActivation::getOwnPropertySlot):
(JSC::JSActivation::getOwnPropertyDescriptor):
(JSC::JSActivation::argumentsGetter): Refactored isTornOff() testing to
avoid using a data member and to avoid hard-coding any offset assumptions.

  • runtime/JSActivation.h:

(JSC):
(JSActivation):
(JSC::JSActivation::create):
(JSC::JSActivation::isDynamicScope):
(JSC::JSActivation::captureStart):
(JSC::JSActivation::storageSize):
(JSC::JSActivation::storageSizeInBytes):
(JSC::JSActivation::registerOffset):
(JSC::JSActivation::tearOff):
(JSC::JSActivation::isTornOff):
(JSC::JSActivation::storage):
(JSC::JSActivation::allocationSize):
(JSC::JSActivation::isValid): New helper functions for doing the math
on our inline storage. Note that in the "AllOfTheThings" tear-off case,
the number of things is not known at compile time, so we store the
number in the argument count register. We can't just copy the raw contents
of the register beacuse we need a value that is safe for precise marking,
and the value in the register file has an invalid tag.

  • runtime/JSCell.h:

(JSC::allocateCell): New function for allocating with extra storage
on the end.

  • runtime/JSSymbolTableObject.h:

(JSC::JSSymbolTableObject::JSSymbolTableObject):
(JSC::JSSymbolTableObject::finishCreation):

  • runtime/JSVariableObject.h:

(JSC::JSVariableObject::JSVariableObject):
(JSVariableObject): Make it easier for subclasses to use their symbol
tables during construction, by passing the table as a constructor argument.

  • runtime/SymbolTable.h:

(JSC::SharedSymbolTable::usesNonStrictEval):
(JSC::SharedSymbolTable::setUsesNonStrictEval):
(SharedSymbolTable):
(JSC::SharedSymbolTable::captureMode):
(JSC::SharedSymbolTable::setCaptureMode):
(JSC::SharedSymbolTable::captureStart):
(JSC::SharedSymbolTable::setCaptureStart):
(JSC::SharedSymbolTable::captureEnd):
(JSC::SharedSymbolTable::setCaptureEnd):
(JSC::SharedSymbolTable::parameterCountIncludingThis):
(JSC::SharedSymbolTable::setParameterCountIncludingThis):
(JSC::SharedSymbolTable::SharedSymbolTable): Added data members to more
precisely describe what kind of capture is in play, and to avoid having
data members in the activation. We expect N activations per symbol table,
so this can be a big savings in heavy closure usage.

8:36 PM Changeset in webkit [128259] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix build break with LLINT on 32bit machine after r128219
https://bugs.webkit.org/show_bug.cgi?id=96461

Unreviewed build fix.

  • llint/LowLevelInterpreter32_64.asm: Fixed typo.
8:35 PM Changeset in webkit [128258] by thakis@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium/mac] Fix "Class WebCoreTextFieldCell is implemented in both Chromium Framework and /System/Library/Frameworks/WebKit.framework" warning
https://bugs.webkit.org/show_bug.cgi?id=96460

Reviewed by Kent Tamura.

This was added incorrectly in http://trac.webkit.org/changeset/116721

  • WebCore.gyp/WebCore.gyp:
7:24 PM Changeset in webkit [128257] by keishi@webkit.org
  • 4 edits in trunk/Source

Create Localizer factory method for LocaleICU
https://bugs.webkit.org/show_bug.cgi?id=96363

Reviewed by Kent Tamura.

Source/WebCore:

Preparing to use Localizer instead of LocaleMac/Win/ICU

No new tests. Covered in unit test tests/LocalizedNumberICUTest.cpp

  • platform/text/LocaleICU.cpp:

(WebCore::Localizer::create):
(WebCore):

Source/WebKit/chromium:

  • tests/LocalizedNumberICUTest.cpp:

(testNumberIsReversible):
(testDecimalSeparator):

6:57 PM Changeset in webkit [128256] by msaboff@apple.com
  • 1 edit
    1 add in trunk/Source/WebCore

Build fixed for http://trac.webkit.org/changeset/128243

Unreviewed build fix.

Added missing include file needed by 96422 for C++ ICU APIs.

  • icu/unicode/chariter.h: Added.
6:46 PM Changeset in webkit [128255] by msaboff@apple.com
  • 1 edit
    7 adds in trunk/Source/WebCore

Build fixed for http://trac.webkit.org/changeset/128243

Unreviewed build fix.

Added missing include file needed by 96422 for C++ ICU APIs.

  • icu/unicode/bytestream.h: Added.
  • icu/unicode/rep.h: Added.
  • icu/unicode/std_string.h: Added.
  • icu/unicode/strenum.h: Added.
  • icu/unicode/stringpiece.h: Added.
  • icu/unicode/unistr.h: Added.
  • icu/unicode/uobject.h: Added.
6:42 PM Changeset in webkit [128254] by tkent@chromium.org
  • 5 edits in trunk/Source/WebCore

Refactor ValidationMessage class
https://bugs.webkit.org/show_bug.cgi?id=96365

Reviewed by Hajime Morita.

  • Move some code from HTMLFormControlElement to ValidationMessage
  • ValidationMessage class holds an element pointer as

HTMLFormControlElement, not FormAssociatedElement.

No new tests because of no behavior changes.

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::updateVisibleValidationMessage):
Moved some code to ValidationMessage::updateValidationMessage().
(WebCore::HTMLFormControlElement::setNeedsValidityCheck):
Ask ValidationMessage whether it is visible or not.

  • html/HTMLFormControlElement.h:

(HTMLFormControlElement): Removed visibleValidationMessage().

  • html/ValidationMessage.cpp:

(WebCore::ValidationMessage::ValidationMessage):
Change the argument type: FormAssociatedElement -> HTMLFormControlElement
(WebCore::ValidationMessage::create): ditto.
(WebCore::ValidationMessage::updateValidationMessage):
Added. Moved some code from
HTMLFormControlElement::updateVisibleValidationMessage().
(WebCore::ValidationMessage::buildBubbleTree): toHTMLElement() is not needed.
(WebCore::ValidationMessage::deleteBubbleTree): ditto.
(WebCore::ValidationMessage::isVisible): Added.

  • html/ValidationMessage.h:

(ValidationMessage):

  • Change some instance of FormAssociatedElement to HTMLFormControlElement
  • Remove message().
  • Added updateValidationMessage() and isVisible()
  • Made setMessage() private.
6:35 PM Changeset in webkit [128253] by commit-queue@webkit.org
  • 7 edits in trunk/Source

[chromium] Make prioritized texture manager not touch backings array on the main thread
https://bugs.webkit.org/show_bug.cgi?id=96114

Patch by Christopher Cameron <ccameron@chromium.org> on 2012-09-11
Reviewed by James Robinson.

Take a snapshot of the textures' priorities from the main thread,
and save it in their backings for access by the impl thread.
Update functions that access the sorted backings array to use the
snapshotted values instead of the values that the main thread may
have computed for the next frame.

Make the main thread not touch the m_backings array. Split
prioritizeTextures into a updateBackingsPriorities function.
In places where the main thread would have touched m_backings,
set a flag specifying that m_backings needs to be re-sorted
before any function that requires it be sorted by priority be
executed.

Update the two functions that require sorted order (acquireBacking
and reduceMemory) to sort the backings array (if needed) before
traversing it.

Updated tests to set correct thread during asserts. Add a test to
verify that requestLate is correctly incorporated into the backing
sorting.

Source/WebCore:

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp:

(WebCore::CCPrioritizedTextureManager::CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::prioritizeTextures):
(WebCore):
(WebCore::CCPrioritizedTextureManager::prioritizeBackings):
(WebCore::CCPrioritizedTextureManager::requestLate):
(WebCore::CCPrioritizedTextureManager::acquireBackingTextureIfNeeded):
(WebCore::CCPrioritizedTextureManager::reduceMemory):
(WebCore::CCPrioritizedTextureManager::returnBackingTexture):
(WebCore::CCPrioritizedTextureManager::destroyBacking):
(WebCore::CCPrioritizedTextureManager::assertInvariants):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.h:

(CCPrioritizedTextureManager):

Source/WebKit/chromium:

  • tests/CCPrioritizedTextureTest.cpp:

(WTF::CCPrioritizedTextureTest::validateTexture):

6:25 PM Changeset in webkit [128252] by msaboff@apple.com
  • 1 edit
    7 adds in trunk/Source/WTF

Build fixed for http://trac.webkit.org/changeset/128243

Unreviewed build fix.

Added missing include file needed by 96422 for C++ ICU APIs.

  • icu/unicode/bytestream.h: Added.
  • icu/unicode/rep.h: Added.
  • icu/unicode/std_string.h: Added.
  • icu/unicode/strenum.h: Added.
  • icu/unicode/stringpiece.h: Added.
  • icu/unicode/unistr.h: Added.
  • icu/unicode/uobject.h: Added.
6:01 PM Changeset in webkit [128251] by abarth@webkit.org
  • 13 edits in trunk/Source/WebCore

Update bindings test results after http://trac.webkit.org/changeset/128242

  • bindings/scripts/test/V8/V8Float64Array.cpp:

(WebCore::V8Float64Array::wrapSlow):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore::V8TestActiveDOMObject::wrapSlow):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:

(WebCore::V8TestCustomNamedGetter::wrapSlow):

  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:

(WebCore::V8TestEventConstructor::wrapSlow):

  • bindings/scripts/test/V8/V8TestEventTarget.cpp:

(WebCore::V8TestEventTarget::wrapSlow):

  • bindings/scripts/test/V8/V8TestException.cpp:

(WebCore::V8TestException::wrapSlow):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::V8TestInterface::wrapSlow):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:

(WebCore::V8TestMediaQueryListListener::wrapSlow):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructor::wrapSlow):

  • bindings/scripts/test/V8/V8TestNode.cpp:

(WebCore::V8TestNode::wrapSlow):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::V8TestObj::wrapSlow):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):

5:53 PM Changeset in webkit [128250] by msaboff@apple.com
  • 4 edits
    4 adds in trunk/Source

Build fixed for http://trac.webkit.org/changeset/128243

Rubber stamped by Stephanie Lewis.

Added missing include file needed by 96422.

  • icu/unicode/unorm2.h: Added.
5:41 PM Changeset in webkit [128249] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk/Source/WebCore

Add new JSDependentRetained that allows keeping a JSObject alive as long as another is alive
https://bugs.webkit.org/show_bug.cgi?id=96034

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-09-11
Reviewed by Geoffrey Garen.

Add new JSDependentRetained (with the same API as V8DependentRetained) that allows keeping
a JSObject alive as long as another is alive. This is useful for keeping callbacks on
wrappers without keeping strong references into the JS heap in C++ which can result in
cycles that create memory leaks.

No new tests needed, this will be used to fix MutationObservers and UndoManager which will have tests.

  • GNUmakefile.list.am:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDependentRetained.h: Added.

(WebCore):
(JSDependentRetained):
(WebCore::JSDependentRetained::JSDependentRetained):
(WebCore::JSDependentRetained::~JSDependentRetained):
(WebCore::JSDependentRetained::get): Get the JSObject value.
(WebCore::JSDependentRetained::isEmpty): Check if the value is still alive.
(WebCore::JSDependentRetained::retain): Sets the owner of the object, should only be used once.
(WebCore::JSDependentRetained::release):

  • bindings/v8/V8DependentRetained.h:

(WebCore::V8DependentRetained::V8DependentRetained):
(WebCore::V8DependentRetained::retain): Added this method so the API for JSC and V8 are identical.

5:35 PM Changeset in webkit [128248] by commit-queue@webkit.org
  • 13 edits in trunk/Source/WebCore

Add 'any' type to V8 bindings as a synonym for DOMObject
https://bugs.webkit.org/show_bug.cgi?id=96429

Patch by Alec Flett <alecflett@chromium.org> on 2012-09-11
Reviewed by Kentaro Hara.

Adds support for 'any' as a synonym to DOMObject.

Test: TestObj.idl has an attribute 'anyAttribute'.

  • bindings/scripts/CodeGeneratorJS.pm:

(AddIncludesForType):
(JSValueToNative):
(NativeToJSValue):

  • bindings/scripts/CodeGeneratorV8.pm:

(GetNativeType):
(JSValueToNative):
(GetV8HeaderName):

  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:

(WebDOMTestObj::anyAttribute):
(WebDOMTestObj::setAnyAttribute):

  • bindings/scripts/test/CPP/WebDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:

(webkit_dom_test_obj_get_property):
(webkit_dom_test_obj_class_init):
(webkit_dom_test_obj_get_any_attribute):
(webkit_dom_test_obj_set_any_attribute):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore):
(WebCore::jsTestObjCachedAttribute1):
(WebCore::jsTestObjCachedAttribute2):
(WebCore::jsTestObjAnyAttribute):
(WebCore::setJSTestObjAnyAttribute):

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

(WebCore):

  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:

(-[DOMTestObj anyAttribute]):
(-[DOMTestObj setAnyAttribute:]):

  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::cachedAttribute1AttrGetter):
(WebCore::TestObjV8Internal::cachedAttribute2AttrGetter):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::anyAttributeAttrGetter):
(WebCore::TestObjV8Internal::anyAttributeAttrSetter):
(WebCore):

5:25 PM Changeset in webkit [128247] by msaboff@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for http://trac.webkit.org/changeset/128244

Some compilers don't like 0 for operator[](unsigned). Changed to 0u.

  • bindings/js/JSDOMBinding.h:

(WebCore::jsStringWithCache):

5:09 PM Changeset in webkit [128246] by msaboff@apple.com
  • 4 edits
    4 adds in trunk/Source

Build fixed for http://trac.webkit.org/changeset/128243

Rubber stamped by Stephanie Lewis.

Added missing include file needed by 96422.

  • icu/unicode/ptypes.h: Added.
5:00 PM Changeset in webkit [128245] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Accelerated compositing should always be forced when using the tiled drawing area
https://bugs.webkit.org/show_bug.cgi?id=96449

Reviewed by Andy Estes.

There's code in WebPage::updatePreferences that will turn off accelerated compositing unless accelerated drawing is enabled.
This should only be done in the non-tiled model, so move the code to DrawingAreaImpl::updatePreferences.

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::updatePreferences):
This now takes a WebPreferencesStore.

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::updatePreferences):
Move code here from WebPage::updatePreferences.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):
Pass the WebPreferencesStore to DrawingArea::updatePreferences.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
Remove call to updatePreferences, it's going to be called by the WebPage object later.

(WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
This now takes a WebPreferencesStore.

4:53 PM Changeset in webkit [128244] by msaboff@apple.com
  • 2 edits in trunk/Source/WebCore

jsStringWithCache shouldn't call StringImpl::characters() for single character strings
https://bugs.webkit.org/show_bug.cgi?id=96439

Reviewed by Geoffrey Garen.

Replaced StringImpl->characters()[0] with operator[] access which is character size aware.
Also fixed the other FIXME so we now use SmallStrings to retunr the single character string.

No functional change, so no new tests.

  • bindings/js/JSDOMBinding.h:

(WebCore::jsStringWithCache):

4:50 PM Changeset in webkit [128243] by msaboff@apple.com
  • 93 edits
    9 adds in trunk/Source

Update ICU header files to more recent version
https://bugs.webkit.org/show_bug.cgi?id=96422

Reviewed by Geoff Garen.

Updated ICU header files to 4.6.1. Modifications made as part of the merge are:
platform.h - Changed ifndef / define / endif for U_HAVE_UINT8_T, U_HAVE_UINT16_T, U_HAVE_UINT32_T,

U_HAVE_UINT64_T, U_IS_BIG_ENDIAN and U_ENABLE_TRACING to match the existing platform.h

putil.h (line 132) - Changes defined(U_WINDOWS) to defined(WIN32)
defined(OS2) to match existing putil.h

ustring.h (line 945) - Wrapped macro argument cs with { (const UChar *)cs } to match existing ustring.h
utypes.h (line 545) - Changed defined(U_WINDOWS) to defined(WIN32) to match existing utypes.h

Source/JavaScriptCore:

  • icu/unicode/localpointer.h: Added.
  • icu/unicode/parseerr.h:
  • icu/unicode/platform.h:
  • icu/unicode/putil.h:
  • icu/unicode/uchar.h:
  • icu/unicode/ucnv.h:
  • icu/unicode/ucnv_err.h:
  • icu/unicode/ucol.h:
  • icu/unicode/uconfig.h:
  • icu/unicode/uenum.h:
  • icu/unicode/uiter.h:
  • icu/unicode/uloc.h:
  • icu/unicode/umachine.h:
  • icu/unicode/unorm.h:
  • icu/unicode/urename.h:
  • icu/unicode/uscript.h:
  • icu/unicode/uset.h:
  • icu/unicode/ustring.h:
  • icu/unicode/utf.h:
  • icu/unicode/utf16.h:
  • icu/unicode/utf8.h:
  • icu/unicode/utypes.h:
  • icu/unicode/uvernum.h: Added.
  • icu/unicode/uversion.h:

Source/WebCore:

Updated include files without any function change so no new tests.

  • icu/unicode/localpointer.h: Added.
  • icu/unicode/parseerr.h:
  • icu/unicode/platform.h:
  • icu/unicode/putil.h:
  • icu/unicode/ubrk.h:
  • icu/unicode/uchar.h:
  • icu/unicode/ucnv.h:
  • icu/unicode/ucnv_err.h:
  • icu/unicode/ucol.h:
  • icu/unicode/ucoleitr.h:
  • icu/unicode/uconfig.h:
  • icu/unicode/ucsdet.h:
  • icu/unicode/uenum.h:
  • icu/unicode/uidna.h:
  • icu/unicode/uiter.h:
  • icu/unicode/uloc.h:
  • icu/unicode/umachine.h:
  • icu/unicode/unorm.h:
  • icu/unicode/urename.h:
  • icu/unicode/uscript.h:
  • icu/unicode/usearch.h:
  • icu/unicode/uset.h:
  • icu/unicode/ushape.h:
  • icu/unicode/ustring.h:
  • icu/unicode/utext.h: Added.
  • icu/unicode/utf.h:
  • icu/unicode/utf16.h:
  • icu/unicode/utf8.h:
  • icu/unicode/utypes.h:
  • icu/unicode/uvernum.h: Added.
  • icu/unicode/uversion.h:

Source/WebKit/mac:

  • icu/unicode/localpointer.h: Added.
  • icu/unicode/parseerr.h:
  • icu/unicode/platform.h:
  • icu/unicode/putil.h:
  • icu/unicode/uchar.h:
  • icu/unicode/uconfig.h:
  • icu/unicode/uidna.h:
  • icu/unicode/uiter.h:
  • icu/unicode/umachine.h:
  • icu/unicode/unorm.h:
  • icu/unicode/urename.h:
  • icu/unicode/uscript.h:
  • icu/unicode/ustring.h:
  • icu/unicode/utf.h:
  • icu/unicode/utf16.h:
  • icu/unicode/utf8.h:
  • icu/unicode/utypes.h:
  • icu/unicode/uvernum.h: Added.
  • icu/unicode/uversion.h:

Source/WTF:

  • icu/unicode/localpointer.h: Added.
  • icu/unicode/parseerr.h:
  • icu/unicode/platform.h:
  • icu/unicode/putil.h:
  • icu/unicode/uchar.h:
  • icu/unicode/ucnv.h:
  • icu/unicode/ucnv_err.h:
  • icu/unicode/ucol.h:
  • icu/unicode/uconfig.h:
  • icu/unicode/uenum.h:
  • icu/unicode/uiter.h:
  • icu/unicode/uloc.h:
  • icu/unicode/umachine.h:
  • icu/unicode/unorm.h:
  • icu/unicode/urename.h:
  • icu/unicode/uscript.h:
  • icu/unicode/uset.h:
  • icu/unicode/ustring.h:
  • icu/unicode/utf.h:
  • icu/unicode/utf16.h:
  • icu/unicode/utf8.h:
  • icu/unicode/utypes.h:
  • icu/unicode/uvernum.h: Added.
  • icu/unicode/uversion.h:
4:49 PM Changeset in webkit [128242] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[V8] 8% regression in dom_perf
https://bugs.webkit.org/show_bug.cgi?id=96433

Patch by Adam Barth <abarth@chromium.org> on 2012-09-11
Reviewed by Kentaro Hara.

This code used to have a fast path to find the V8PerContextData for DOM
nodes. I tried a bunch of variations, but nothing I can come up with is
as fast as the old fast path, so I've added back the fast path.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateToV8Converters):

  • bindings/v8/V8DOMWrapper.cpp:

(WebCore::V8DOMWrapper::instantiateV8Object):

  • bindings/v8/V8DOMWrapper.h:

(V8DOMWrapper):

4:42 PM Changeset in webkit [128241] by psolanki@apple.com
  • 2 edits in trunk/Source/WTF

Add ObjcRuntimeExtras.h to the Xcode project file
https://bugs.webkit.org/show_bug.cgi?id=96419

Reviewed by Alexey Proskuryakov.

  • WTF.xcodeproj/project.pbxproj:
4:31 PM Changeset in webkit [128240] by Stephanie Lewis
  • 2 edits in trunk/LayoutTests

Skip spatial-navigation tests on mac-wk2 because they are all failing.
https://bugs.webkit.org/show_bug.cgi?id=96438.

Unreviewed.

  • platform/mac-wk2/TestExpectations:
4:26 PM Changeset in webkit [128239] by kling@webkit.org
  • 5 edits in trunk/Source/WebCore

ElementAttributeData: Use subclasses to manage varying object layouts.
<http://webkit.org/b/94465>

Reviewed by Antti Koivisto.

Add two ElementAttributeData subclasses:

  • MutableElementAttributeData
  • ImmutableElementAttributeData

The ElementAttributeData::m_isMutable bit determines which subclass to cast to when accessing
the attribute storage. Added mutableAttributeVector() and immutableAttributeArray() helpers
to ElementAttributeData (with appropriate assertions.)

This patch removes one step of indirection in the mutable case, since the Vector<Attribute> is no
longer heap-allocated, but part of MutableElementAttributeData.

Added a WTF::deleteOwnedPtr(ElementAttributeData*) specialization so that the appropriate subclass
destructor is called for these objects.

  • WebCore.exp.in:
  • dom/Element.cpp:

(WebCore::Element::createMutableAttributeData):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::createImmutable):
(WebCore::ElementAttributeData::create):
(WebCore::ElementAttributeData::ElementAttributeData):
(WebCore::MutableElementAttributeData::MutableElementAttributeData):
(WebCore::ImmutableElementAttributeData::ImmutableElementAttributeData):
(WebCore::ImmutableElementAttributeData::~ImmutableElementAttributeData):
(WebCore::ElementAttributeData::makeMutableCopy):
(WebCore::ElementAttributeData::addAttribute):
(WebCore::ElementAttributeData::removeAttribute):
(WebCore::ElementAttributeData::reportMemoryUsage):
(WebCore::ElementAttributeData::cloneDataFrom):
(WebCore::ElementAttributeData::clearAttributes):

  • dom/ElementAttributeData.h:

(ElementAttributeData):
(WebCore::ElementAttributeData::isMutable):
(ImmutableElementAttributeData):
(MutableElementAttributeData):
(WebCore::MutableElementAttributeData::MutableElementAttributeData):
(WebCore::ElementAttributeData::immutableAttributeArray):
(WebCore::ElementAttributeData::mutableAttributeVector):
(WebCore::ElementAttributeData::length):
(WebCore::ElementAttributeData::attributeItem):

4:20 PM Changeset in webkit [128238] by tony@chromium.org
  • 3 edits in trunk/Source/WebCore

Pass the logical height and logical top into RenderBox::computeLogicalHeight
https://bugs.webkit.org/show_bug.cgi?id=96432

Reviewed by Ojan Vafai.

This allows us to call RenderBox::computeLogicalHeight without first having to call
setLogicalHeight() and setLogicalTop(). Previously, computeLogicalHeight would depend
on these values.

No new tests, this is just a refactor.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::updateLogicalHeight): Pass logicalHeight and logicalTop as params.
(WebCore::RenderBox::computeLogicalHeight): Use passed in values instead of calling logicalHeight/logicalTop.
(WebCore::RenderBox::computePositionedLogicalHeight): Pass the logicalHeight into computePositionedLogicalHeightUsing.
(WebCore::RenderBox::computePositionedLogicalHeightUsing): Pass in the logicalHeight as a parameter.

  • rendering/RenderBox.h:

(RenderBox): Update computePositionedLogicalHeightUsing and computeLogicalHeight.

4:18 PM Changeset in webkit [128237] by jsbell@chromium.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Optimize key decode and comparison operations
https://bugs.webkit.org/show_bug.cgi?id=96037

Reviewed by Tony Chang.

Eliminate memory allocations in code identified as CPU bottlenecks in IDB profiling.

No new tests - just performance work.

  • Modules/indexeddb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::extractEncodedIDBKey): Avoid incremental allocations.
(WebCore::IDBLevelDBCoding::compareEncodedIDBKeys): Rename confusing variables p and q.
(IDBLevelDBCoding):
(WebCore::IDBLevelDBCoding::compare): Rename from decodeAndCompare, and add specializations
for frequently encountered types (e.g. object/index data) that can be compared without a
full decode.

4:17 PM Changeset in webkit [128236] by beidson@apple.com
  • 6 edits in trunk/Source/WebKit2

Get rid of the PluginProcessShim for 64-bit plug-ins
<rdar://problem/12068560> and https://bugs.webkit.org/show_bug.cgi?id=96415

Reviewed by Anders Carlsson.

  • PluginProcess/PluginProcess.h:

(PluginProcess):

  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::getCurrentEventButtonState):
(WebKit):
(WebKit::beginModal): Moved from the shim, to be shared with shimmed processes.
(WebKit::endModal): Ditto.
(WebKit::replacedRunModalForWindow): Only used by Cocoa overrides.
(WebKit::PluginProcess::initializeShim):
(WebKit::PluginProcess::initializeCocoaOverrides):

  • PluginProcess/mac/PluginProcessMainMac.mm:

(WebKit::PluginProcessMain): Only call initializeShim for 32-bit processes, always call initializeCocoaOverrides

  • PluginProcess/mac/PluginProcessShim.h:

(PluginProcessShimCallbacks):

  • PluginProcess/mac/PluginProcessShim.mm:

(WebKit):
(WebKit::shimModalDialog): Call beginModal/endModal from the shim callbacks.
(WebKit::shimAlert): Ditto.
(WebKit::WebKitPluginProcessShimInitialize): Don't do the Cocoa overrides as they are now handled outside the shim.

4:08 PM Changeset in webkit [128235] by adamk@chromium.org
  • 5 edits
    7 deletes in trunk

Unreviewed, rolling out r128075
https://bugs.webkit.org/show_bug.cgi?id=96435

Source/WebCore:

Broke chromium content_browsertests and included flaky layout tests

  • html/shadow/MediaControlRootElementChromium.cpp:

(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
(WebCore::MediaControlRootElementChromium::reset):
(WebCore::MediaControlRootElementChromium::playbackStarted):
(WebCore::MediaControlRootElementChromium::playbackProgressed):
(WebCore::MediaControlRootElementChromium::playbackStopped):
(WebCore::MediaControlRootElementChromium::updateTimeDisplay):

  • html/shadow/MediaControlRootElementChromium.h:

(MediaControlPanelEnclosureElement):
(MediaControlRootElementChromium):

LayoutTests:

  • platform/chromium-mac/platform/chromium/media/controls-video-sizes-expected.png: Removed.
  • platform/chromium/TestExpectations:
  • platform/chromium/media/controls-audio-sizes-expected.txt: Removed.
  • platform/chromium/media/controls-audio-sizes.html: Removed.
  • platform/chromium/media/controls-video-sizes-expected.txt: Removed.
  • platform/chromium/media/controls-video-sizes-padding-expected.txt: Removed.
  • platform/chromium/media/controls-video-sizes-padding.html: Removed.
  • platform/chromium/media/controls-video-sizes.html: Removed.
4:06 PM Changeset in webkit [128234] by mlilek@apple.com
  • 10 edits in trunk/Source

OS X port should compile with newer versions of clang
https://bugs.webkit.org/show_bug.cgi?id=96434

Source/JavaScriptCore:

m_identIsVarDecl is unused - remove it.

Reviewed by Anders Carlsson.

  • parser/NodeConstructors.h:

(JSC::ForInNode::ForInNode):

  • parser/Nodes.h:

(ForInNode):

Source/WebCore:

Reviewed by Anders Carlsson.

Guard m_hasTouchEventHandler behind ENABLE(TOUCH_EVENTS).

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::HTMLInputElement):

  • html/HTMLInputElement.h:

(HTMLInputElement):

Fix uninitialized variable.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::createLinearSRGBColorSpace):

Source/WebKit/mac:

m_isTerminated is unused in the Hosted flavor of NetscapePluginStream.

Reviewed by Anders Carlsson.

  • Plugins/Hosted/HostedNetscapePluginStream.h:

(HostedNetscapePluginStream):

  • Plugins/Hosted/HostedNetscapePluginStream.mm:

(WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):

4:04 PM Changeset in webkit [128233] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Suppress image failures for gradient-with-scaled-ancestor.html due to
scrollbar diffs.

  • platform/chromium/TestExpectations:
3:47 PM Changeset in webkit [128232] by dpranke@chromium.org
  • 2 edits in trunk/Tools

[chromium] rename webkit_resources
https://bugs.webkit.org/show_bug.cgi?id=95874

Reviewed by James Robinson.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
3:32 PM Changeset in webkit [128231] by commit-queue@webkit.org
  • 9 edits in trunk

[Gtk] allow building with css-shaders
https://bugs.webkit.org/show_bug.cgi?id=95603

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-09-11
Reviewed by Martin Robinson.

.:

if unstable features and accelerated compositing are turned on, and
acceleration backend is opengl, then build CSS Shaders and CSS
Filters.

  • configure.ac:

Source/WebCore:

Add support for css filters and shaders in GNUmakefile.am and include
Texture.cpp, Texture.h, TilingData.cpp and TilingData.h in
webcore_sources

No functional change, so no new tests.

  • GNUmakefile.am:
  • GNUmakefile.list.am:

Source/WebKit/gtk:

Add enable-css-shaders property to WebKit WebSettings, and connects it
to WebCore settings setCSSCustomFilterEnabled.

  • webkit/webkitwebsettings.cpp:

(webkit_web_settings_class_init):
(webkit_web_settings_set_property):
(webkit_web_settings_get_property):

  • webkit/webkitwebsettingsprivate.h:
  • webkit/webkitwebview.cpp:

(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

3:25 PM Changeset in webkit [128230] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] add a way to overscroll non-overflown content
https://bugs.webkit.org/show_bug.cgi?id=96331
PR #195305

Patch by Antonio Gomes <agomes@rim.com> on 2012-09-11
Reviewed by Yong Li.

Check -webkit-overflow-scrolling value for '-blackberry-touch' instead
of checking a custom HTML5 attribute.

No behavioural change. Mostly a rework of r128142.

  • Api/InRegionScroller.cpp:

(BlackBerry::WebKit::canScrollRenderBox):

3:25 PM Changeset in webkit [128229] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Update some expectations to reference specific bugs.

  • platform/chromium/TestExpectations:
3:02 PM Changeset in webkit [128228] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

Remove StyleResolver::setStyle, because it's no longer used.
https://bugs.webkit.org/show_bug.cgi?id=96423

Reviewed by Eric Seidel.

No new tests, simple refactoring.

  • css/StyleResolver.h: Removed unused function.
3:00 PM Changeset in webkit [128227] by Chris Fleizach
  • 3 edits
    2 adds in trunk

AX: title attribute is not exposed as the AXDescription on AXImage when there is no other fallback content
https://bugs.webkit.org/show_bug.cgi?id=96412

Reviewed by Jon Honeycutt.

Source/WebCore:

Ensure that if an image has a title attribute, but no alt attribute, it will fallback to use the title attribute
for the descriptive text.

Test: accessibility/img-fallsback-to-title.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::accessibilityDescription):

LayoutTests:

  • accessibility/img-fallsback-to-title.html: Added.
  • platform/mac/accessibility/img-fallsback-to-title-expected.txt: Added.
2:29 PM Changeset in webkit [128226] by rwlbuis@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] make pickers/dialogs use appendLiteral
https://bugs.webkit.org/show_bug.cgi?id=96424

Reviewed by Antonio Gomes.

PR 204032

Other pickers were updated in r128204.

  • WebCoreSupport/ColorPickerClient.cpp:

(WebCore::ColorPickerClient::generateHTML):

  • WebCoreSupport/PagePopupBlackBerry.cpp:

(WebCore::PagePopupBlackBerry::generateHTML):

2:10 PM Changeset in webkit [128225] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Clean up functions in RenderLayerBacking.h/.cpp
https://bugs.webkit.org/show_bug.cgi?id=96370

Patch by Rik Cabanier <cabanier@adobe.com> on 2012-09-11
Reviewed by Simon Fraser.

Remove 'layer' from function names in RenderLayerBacking

No new test. No change in functionality.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::updateOpacity):
(WebCore::RenderLayerBacking::updateTransform):
(WebCore::RenderLayerBacking::updateFilters):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::startTransition):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):

2:03 PM Changeset in webkit [128224] by jochen@chromium.org
  • 2 edits in trunk/Tools

[chromium] don't include content shell builders in the garden-o-matic view
https://bugs.webkit.org/show_bug.cgi?id=96418

Reviewed by James Robinson.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
1:54 PM Changeset in webkit [128223] by senorblanco@chromium.org
  • 6 edits
    1 add in trunk

Source/WebCore: [skia] Switch FEComponentTransfer filter to use skia's SkColorFilter
https://bugs.webkit.org/show_bug.cgi?id=95238

Reviewed by Dirk Schulze.

Covered by existing tests in svg/, such as svg/custom/feComponentTransfer-Discrete.svg.

  • WebCore.gypi:
  • platform/graphics/filters/FEComponentTransfer.cpp:

(WebCore::FEComponentTransfer::platformApplySoftware):
Add a check for the skia implementation.
(WebCore::FEComponentTransfer::getValues):

  • platform/graphics/filters/FEComponentTransfer.h:

Factor out the retrieval of LUT values into its own function, so we
can call it from the Skia implementation.

  • platform/graphics/filters/skia/FEComponentTransferSkia.cpp: Added.

(WebCore::FEComponentTransfer::platformApplySkia):

LayoutTests: [chromium] Mark some tests as needing a rebaseline due to SVG filters change.
https://bugs.webkit.org/show_bug.cgi?id=95238

Reviewed by Dirk Schulze.

  • platform/chromium/TestExpectations:
1:36 PM Changeset in webkit [128222] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Crash on a long press gesture when touch adjustment is enabled.
https://bugs.webkit.org/show_bug.cgi?id=96313

Patch by Kevin Ellis <kevers@chromium.org> on 2012-09-11
Reviewed by Antonio Gomes.

Source/WebCore:

Fix to ensure that a long-press on a shadow-DOM element does not
trigger a crash in TouchAdjustment::providesContextMenuItems.
Prior to the patch, a null-pointer exception was trigger because
of a null renderer in the check.

Test: touchadjustment/context-menu-shadow-node.html

  • page/TouchAdjustment.cpp:

(WebCore::TouchAdjustment::providesContextMenuItems):

LayoutTests:

Add test to ensure that a long-press on a shadow DOM element does
not trigger a crash when determining if an element provides a context
menu.

  • touchadjustment/context-menu-shadow-node-expected.txt: Added.
  • touchadjustment/context-menu-shadow-node.html: Added.
1:34 PM Changeset in webkit [128221] by zandobersek@gmail.com
  • 3 edits
    2 deletes in trunk

Unreviewed, manually rolling out r128175.
The patch is causing crashes in debug builds.
http://trac.webkit.org/changeset/128175
https://bugs.webkit.org/show_bug.cgi?id=96284

Source/WebCore:

  • platform/network/soup/ResourceResponseSoup.cpp:

(WebCore::ResourceResponse::updateFromSoupMessage):

LayoutTests:

  • http/tests/misc/non-utf8-header-name-expected.txt: Removed.
  • http/tests/misc/non-utf8-header-name.php: Removed.
1:14 PM Changeset in webkit [128220] by jamesr@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r128212.
http://trac.webkit.org/changeset/128212
https://bugs.webkit.org/show_bug.cgi?id=96037

Assertion fails on linux 64

  • Modules/indexeddb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::extractEncodedIDBKey):
(WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
(IDBLevelDBCoding):
(WebCore::IDBLevelDBCoding::compare):

1:00 PM Changeset in webkit [128219] by fpizlo@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

LLInt should optimize and profile array length accesses
https://bugs.webkit.org/show_bug.cgi?id=96417

Reviewed by Oliver Hunt.

This fixes the following hole in our array profiling strategy, where the array
is large (more than 1000 elements):

for (var i = 0; i < array.length; ++i) ...

The peeled use of array.length (in the array prologue) will execute only once
before DFG optimization kicks in from the loop's OSR point. Since it executed
only once, it executed in the LLInt. And prior to this patch, the LLInt did
not profile array.length accesses - so the DFG will assume, based on the lack
of profiling, that the access is in fact not an access to the JSArray length
property. That could then impede our ability to hoist the array structure
check, and may make us pessimistic in other ways as well, since the generic
GetById used for the array length access will be viewed as a side-effecting
operation.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::finalizeUnconditionally):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGFixupPhase.cpp:

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

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
12:17 PM Changeset in webkit [128218] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-11

  • DEPS:
12:17 PM Changeset in webkit [128217] by jsbell@chromium.org
  • 6 edits in trunk/Source

IndexedDB: IDBObjectStore.count() is slow
https://bugs.webkit.org/show_bug.cgi?id=96033

Reviewed by Tony Chang.

Avoid decoding record values when performing count() iteration, and factor out common code
used for initializing object store and index cursors. Also, remove unused indexDataId()
methods (which date back to the SQLite backing store), and rename some p's and q's.

No new tests - no functional changes. Covered by existing test:

LayoutTests/storage/indexeddb/objectstore-count.html

  • Modules/indexeddb/IDBBackingStore.h: Expose new (internal) ObjectStoreKeyCursor

(IDBBackingStore):

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp:

(WebCore): Factor out common CursorOptions initialization code. The objectStoreCursorOptions()
function is needed for this patch. The indexCursorOptions() function is not, but eliminates
duplicated code and is a nearly identical refactor.
(WebCore::IDBLevelDBBackingStore::openObjectStoreCursor): Refactor.
(WebCore::IDBLevelDBBackingStore::openObjectStoreKeyCursor): Implement.
(WebCore::IDBLevelDBBackingStore::openIndexKeyCursor): Refactor.
(WebCore::IDBLevelDBBackingStore::openIndexCursor): Ditto.

  • Modules/indexeddb/IDBLevelDBBackingStore.h:

(IDBLevelDBBackingStore):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::countInternal): Use ObjectStoreKeyCursor for iteration.

12:14 PM Changeset in webkit [128216] by adamk@chromium.org
  • 2 edits
    1 delete in trunk/LayoutTests

Unreviewed chromium gardening.

Remove bogus rebaseline added in r128105, and remove "flaky"
expectation (since tests seems non-flaky).

  • platform/chromium-win-xp/fast/hidpi/gradient-with-scaled-ancestor-expected.png: Removed.
  • platform/chromium/TestExpectations:
12:05 PM Changeset in webkit [128215] by ojan@chromium.org
  • 2 edits in trunk/Source/WebCore

Refactor computePercentageLogicalHeight to simplify the logic a bit
https://bugs.webkit.org/show_bug.cgi?id=96329

Reviewed by Tony Chang.

This makes it clear that the value we're computing as we go is the availableHeight.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePercentageLogicalHeight):

12:04 PM Changeset in webkit [128214] by adamk@chromium.org
  • 2 edits
    2 deletes in trunk/LayoutTests

Unreviewed chromium gardening.

Mark compositing/overflow/overflow-scaled-descendant-overflapping as
failing on cr-mac after r127789 and remove bad rebaselines.

  • platform/chromium-mac-snowleopard/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Removed.
  • platform/chromium-mac/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Removed.
  • platform/chromium/TestExpectations:
11:50 AM Changeset in webkit [128213] by adamk@chromium.org
  • 3 edits in trunk/Tools

Garden-o-matic should ignore a wider variety of warnings in buildbot json
https://bugs.webkit.org/show_bug.cgi?id=96411

Reviewed by Adam Barth.

Previously only the exact string "warning" was treated as a warning
result. This patch treats any string with "warning" as a substring
as a warning (e.g., "warnings", as seen on the cr-win buildbots).

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js:

(.):

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:
11:42 AM Changeset in webkit [128212] by jsbell@chromium.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Optimize key decode and comparison operations
https://bugs.webkit.org/show_bug.cgi?id=96037

Reviewed by Tony Chang.

Eliminate memory allocations in code identified as CPU bottlenecks in IDB profiling.

No new tests - just performance work.

  • Modules/indexeddb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::extractEncodedIDBKey): Avoid incremental allocations.
(WebCore::IDBLevelDBCoding::compareEncodedIDBKeys): Rename confusing variables p and q.
(IDBLevelDBCoding):
(WebCore::IDBLevelDBCoding::compare): Rename from decodeAndCompare, and add specializations
for frequently encountered types (e.g. object/index data) that can be compared without a
full decode.

11:32 AM Changeset in webkit [128211] by kpiascik@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix history navigation for error pages.
https://bugs.webkit.org/show_bug.cgi?id=96410

Reviewed by Rob Buis.

Fix how history navigation handles restoring view state when navigating between error pages.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::FrameLoaderClientBlackBerry):
(WebCore::FrameLoaderClientBlackBerry::saveViewStateToItem):
(WebCore::FrameLoaderClientBlackBerry::restoreViewState):

  • WebCoreSupport/FrameLoaderClientBlackBerry.h:

(FrameLoaderClientBlackBerry):

11:31 AM Changeset in webkit [128210] by commit-queue@webkit.org
  • 14 edits in trunk

Restore original value of mock scrollbars enabled in InternalSettings
https://bugs.webkit.org/show_bug.cgi?id=87680

Patch by Marcelo Lira <marcelo.lira@openbossa.org> on 2012-09-11
Reviewed by Adam Barth.

Added backup support for mock scrollbars state in
InternalSettings::Backup, and removed support for these
from Qt's DumpRenderTree.

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):

  • testing/InternalSettings.h:

(Backup):

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Source/WebKit2:

  • win/WebKit2.def:

Tools:

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::WebPage::resetSettings):

  • DumpRenderTree/qt/TestRunnerQt.cpp:

(TestRunner::setFrameFlatteningEnabled):

  • DumpRenderTree/qt/TestRunnerQt.h:

(TestRunner):

11:13 AM Changeset in webkit [128209] by dino@apple.com
  • 2 edits
    2 adds in trunk/Source/ThirdParty/ANGLE

[Apple] Install plist for Apple Open Source build system
https://bugs.webkit.org/show_bug.cgi?id=96345

Reviewed by Mark Rowe.

Apple's build system requires a couple of files that describe where
the 3rd party Open Source library came from, and what license it
uses. These files are copied into /usr/local when the project is
being installed.

  • ANGLE.plist: Added.
  • ANGLE.txt: Added.
  • ANGLE.xcodeproj/project.pbxproj:
11:12 AM Changeset in webkit [128208] by commit-queue@webkit.org
  • 35 edits in trunk

Improve console error messages when 'document.domain' blocks cross-origin script access.
https://bugs.webkit.org/show_bug.cgi?id=96247

Patch by Mike West <mkwst@chromium.org> on 2012-09-11
Reviewed by Adam Barth.

Source/WebCore:

Setting 'document.domain' can produce counterintuitive "cross-origin"
error messages for script access in cases where the property isn't set
to the same value in both the accessor and accessee. This patch adds a
bit more context to the error message to make it clear that both sides
must set the property, and that the values must match.

This shouldn't change any externally visible behavior other than the
error warnings. It's covered by changes to existing tests.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::crossDomainAccessErrorMessage):

Adding checks for 'document.domain'-related errors, and adding an
ASSERT that crossDomainAccessErrorMessage is called in cases where
the accessing frame is actually denied access to the frame being
accessed.

LayoutTests:

  • http/tests/security/cross-frame-access-callback-explicit-domain-DENY-expected.txt:
  • http/tests/security/cross-frame-access-child-explicit-domain-expected.txt:
  • http/tests/security/cross-frame-access-parent-explicit-domain-expected.txt:
  • http/tests/security/cross-frame-access-protocol-expected.txt:
  • http/tests/security/cross-frame-access-protocol-explicit-domain-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt:
  • http/tests/security/view-source-no-javascript-url-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt:
  • platform/chromium/http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt:
  • platform/chromium/http/tests/security/inactive-document-with-empty-security-origin-expected.txt:
  • platform/chromium/http/tests/security/window-named-proto-expected.txt:

Updating error message.

11:00 AM Changeset in webkit [128207] by kerz@chromium.org
  • 2 edits in branches/chromium/1229/Source/WebCore/bindings/v8

fix for chromium 143937

10:50 AM Changeset in webkit [128206] by mitz@apple.com
  • 2 edits in trunk/Tools

Fixed a bug where kill-old-processes failed to kill clang++.

Rubber-stamped by Alexey Proskuryakov.

  • BuildSlaveSupport/kill-old-processes: Escape the + signs in "clang++"

where it is passed as a regular expression to killall.

10:42 AM Changeset in webkit [128205] by beidson@apple.com
  • 6 edits in trunk/Source/WebKit2

We should wait longer before killing the PluginProcess.
<rdar://problem/12067728> and https://bugs.webkit.org/show_bug.cgi?id=96407

Reviewed by Anders Carlsson.

Currently we kill the PluginProcess 15 seconds after the last plug-in is destroyed.
This is short enough that most users will have the process killed many times during browsing sessions,
which is painful because relaunching the process is I/O and kernel intensive.

In an ideal world we could keep it around forever until the system tells us resources are running low.

In reality we do want to kill it occasionally to get a clean slate from any plug-in leaks.

A reasonable balance for now is to set a minimum lifetime of 30 minutes on the plug-in process and to
extend the termination timer from 15 seconds to 10 minutes.

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::PluginProcess):
(WebKit::PluginProcess::initializePluginProcess):
(WebKit::PluginProcess::setMinimumLifetime):
(WebKit):
(WebKit::PluginProcess::minimumLifetimeTimerFired):

  • PluginProcess/PluginProcess.h:

(PluginProcess):

  • Shared/Plugins/PluginProcessCreationParameters.cpp:

(WebKit::PluginProcessCreationParameters::encode):
(WebKit::PluginProcessCreationParameters::decode):

  • Shared/Plugins/PluginProcessCreationParameters.h:

(PluginProcessCreationParameters):

  • UIProcess/Plugins/PluginProcessProxy.cpp:

(WebKit):
(WebKit::PluginProcessProxy::didFinishLaunching):

10:40 AM Changeset in webkit [128204] by commit-queue@webkit.org
  • 11 edits in trunk/Source

Deploy StringBuilder::appendNumber() and StringBuilder::appendLiteral() in more places
https://bugs.webkit.org/show_bug.cgi?id=96344

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-09-11
Reviewed by Benjamin Poulain.

Use StringBuilder::appendNumber() instead of String::number(). Also deploy
StringBuilder::appendLiteral() instead of String::append() in the surrounding code.

Source/WebCore:

  • css/CSSAspectRatioValue.cpp:

(WebCore::CSSAspectRatioValue::customCssText):

  • platform/graphics/gpu/LoopBlinnPathProcessor.cpp:

(WebCore):

  • svg/SVGPointList.cpp:

(WebCore::SVGPointList::valueAsString):

Source/WebKit/blackberry:

  • WebCoreSupport/DatePickerClient.cpp:

(WebCore::DatePickerClient::generateHTML):

  • WebCoreSupport/SelectPopupClient.cpp:

(WebCore::SelectPopupClient::generateHTML):

Source/WebKit2:

  • Shared/WebMemorySampler.cpp:

(WebKit::WebMemorySampler::appendCurrentMemoryUsageToFile):

  • UIProcess/InspectorServer/WebSocketServerConnection.cpp:

(WebKit::WebSocketServerConnection::sendHTTPResponseHeader):

  • UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:

(WebKit::WebInspectorServer::inspectorUrlForPageID):
(WebKit::WebInspectorServer::buildPageList):

10:39 AM Changeset in webkit [128203] by enne@google.com
  • 2 edits in trunk/Source/WTF

Clang doesn't optimize away undefined OwnPtr copy constructor
https://bugs.webkit.org/show_bug.cgi?id=74625

Reviewed by Anders Carlsson.

Original patch by Anders Carlsson, with a minor edit.

The publicly declared-but-not-defined copy constructor is a compiler
optimization-dependent landmine. Clang often fails to optimize the use
of this function out, leading to internal linkage errors for the missing
definition. gcc doesn't have this problem and optimizes that function
out, leading to code that inconsistently fails to link across platforms.

As a partial fix for this problem, on any compiler that supports C++11
move semantics, replace the bogus copy constructor with the move
constructors. In the future, if all compilers support this, then the
copy constructor can be removed.

This still leaves other compilers that don't support move semantics
like Visual Studio vulnerable to linking inconsistencies.

  • wtf/OwnPtr.h:

(OwnPtr):
(WTF):
(WTF::::OwnPtr):
(WTF::=):

10:29 AM Changeset in webkit [128202] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix speling error in comment.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::isTransparentSilverlightBackgroundValue):

10:21 AM Changeset in webkit [128201] by tony@chromium.org
  • 32 edits in trunk/Source/WebCore

Rename computeLogicalHeight to updateLogicalHeight
https://bugs.webkit.org/show_bug.cgi?id=96305

Reviewed by Ojan Vafai.

computeLogicalHeight changes the value of 4 member variables of the
render box, so give it a name that makes it more clear that it is
updating member variables.

No new tests, this is just a refactor.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeInitialRegionRangeForBlock):
(WebCore::RenderBlock::checkForPaginationLogicalHeightChange):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::updateLogicalHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):

  • rendering/RenderBox.h:

(RenderBox):
(WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::layout):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::updateLogicalHeight):

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

(WebCore::RenderGrid::layoutBlock):

  • rendering/RenderHTMLCanvas.cpp:

(WebCore::RenderHTMLCanvas::canvasSizeChanged):

  • rendering/RenderIFrame.cpp:

(WebCore::RenderIFrame::updateLogicalHeight):
(WebCore::RenderIFrame::layoutSeamlessly):
(WebCore::RenderIFrame::layout):

  • rendering/RenderIFrame.h:

(RenderIFrame):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageDimensionsChanged):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::updateLogicalHeight):

  • rendering/RenderListBox.h:

(RenderListBox):

  • rendering/RenderMeter.cpp:

(WebCore::RenderMeter::updateLogicalHeight):

  • rendering/RenderMeter.h:

(RenderMeter):

  • rendering/RenderMultiColumnBlock.cpp:

(WebCore::RenderMultiColumnBlock::checkForPaginationLogicalHeightChange):

  • rendering/RenderMultiColumnFlowThread.h:
  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::updateLogicalHeight):

  • rendering/RenderMultiColumnSet.h:

(RenderMultiColumnSet):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::layout):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::computeControlHeight):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::layout):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::updateLogicalHeight):

  • rendering/RenderTextControl.h:

(RenderTextControl):

  • rendering/RenderView.cpp:

(WebCore::RenderView::updateLogicalHeight):

  • rendering/RenderView.h:
  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::updateLogicalHeight):

  • rendering/svg/RenderSVGForeignObject.h:

(RenderSVGForeignObject):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::layout):

10:21 AM Changeset in webkit [128200] by zhajiang@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] InRegion scrollable area dangling pointers were accessed in UI thread
https://bugs.webkit.org/show_bug.cgi?id=96318

Reviewed by Antonio Gomes.
Patch by Jacky Jiang <zhajiang@rim.com>

PR: 204066
Dangling pointers were accessed in UI thread, as the actual InRegion
scrollable areas of WebKit side had been destroyed before that in
WebKit thread after UI thread set scrolling to false.
Notify the client side to clear InRegion scrollable areas before we
destroy them in WebKit side.

Internally reviewed by Gen Mak and George Staikos.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::notifyInRegionScrollStopped):
(BlackBerry::WebKit::WebPagePrivate::setScrollOriginPoint):

  • Api/WebPageClient.h:
9:59 AM Changeset in webkit [128199] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Fix double call to scrollBegin() when handling scroll gesture
https://bugs.webkit.org/show_bug.cgi?id=95322

Patch by Iain Merrick <husky@chromium.org> on 2012-09-11
Reviewed by James Robinson.

WebCompositorInputHandlerImpl::handleGestureFling() calls scrollBegin() on its
client, then if the result is ScrollStarted, it creates a PlatformGestureCurve
object to handle the fling animation. This patch adds a matching scrollEnd()
before the animation starts.

Now using strict mocks in WebCompositorInputHandlerImplTest, which turns all
unexpected calls into test failures. This ensures that scrollBegin / scrollEnd
happen exactly when we want and at no other times.

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):

  • tests/WebCompositorInputHandlerImplTest.cpp:

(WebCompositorInputHandlerImplTest):
(WebKit::TEST_F):

9:52 AM Changeset in webkit [128198] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Suppress keyboard requests while processing spell checking suggestions.
https://bugs.webkit.org/show_bug.cgi?id=96394

Reviewed by Rob Buis.

Suppress the VKB notification when the touch event
is a spell checking request.

PR 192925.

Reviewed Internally by Gen Mak.

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

9:48 AM Changeset in webkit [128197] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Colour Dialog popup request should return proper state.
https://bugs.webkit.org/show_bug.cgi?id=96392

Reviewed by Rob Buis.

Return proper state from openColorPopup dependent on
whether the popup actually opened.

Reviewed Internally by Chris Hutten-Czapski

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::openColorPopup):

9:44 AM WebKitGTK/1.10.x edited by sergio@webkit.org
(diff)
9:44 AM Changeset in webkit [128196] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Fix FilterTypeZoom to properly call canvas->restore()
https://bugs.webkit.org/show_bug.cgi?id=96082

Patch by Zach Kuznia <zork@chromium.org> on 2012-09-11
Reviewed by Adrienne Walker.

Source/Platform:

Fix zoom filter to properly indicate that it affects pixels.

  • chromium/src/WebFilterOperations.cpp:

(WebKit::WebFilterOperations::hasFilterThatMovesPixels):
(WebKit::WebFilterOperations::hasFilterThatAffectsOpacity):

Source/WebCore:

Fix zoom filter to properly call canvas->restore()

  • platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:

(WebCore::CCRenderSurfaceFilters::apply):

9:42 AM Changeset in webkit [128195] by sergio@webkit.org
  • 3 edits
    2 adds in trunk

[GTK] WebKitGtk+ crashes with non-UTF8 HTTP header names
https://bugs.webkit.org/show_bug.cgi?id=96284

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Non UTF-8 characters sent as part of a HTTP header name were
causing crashes as String::fromUTF8() was returning NULL for
them. Use String::fromUTF8WithLatin1Fallback() instead.

Test: http/tests/misc/non-utf8-header-name.php

  • platform/network/soup/ResourceResponseSoup.cpp:

(WebCore::ResourceResponse::updateFromSoupMessage):

LayoutTests:

Added a new test to make sure that WebKitGtk+ does not crash when
a non-UTF8 character is sent as part of a HTTP header name.

  • http/tests/misc/non-utf8-header-name-expected.txt: Added.
  • http/tests/misc/non-utf8-header-name.php: Added.
9:40 AM Changeset in webkit [128194] by peter@chromium.org
  • 3 edits in trunk/Tools

Make sure that md5sum is not setup on non-Chromium Android platforms.
https://bugs.webkit.org/show_bug.cgi?id=96393

Patch by Philippe Liard <pliard@google.com> on 2012-09-11
Reviewed by Adam Barth.

Previously md5sum was setup in ChromiumAndroidDriver's constructor
which is also invoked on non-Chromium Android platforms. The following patch
moves this logic to _startup_test() which is guaranteed to be invoked
only on Android.

This also updates the prompt unit test in chromium_android_unittest.py.

  • Scripts/webkitpy/layout_tests/port/chromium_android.py:

(ChromiumAndroidDriver.init):
(ChromiumAndroidDriver._setup_md5sum_and_push_data_if_needed):
(ChromiumAndroidDriver._setup_test):

9:08 AM Changeset in webkit [128193] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unreviewed gardening, skip new failing tests to paint the bot green.

  • platform/qt-5.0-wk2/Skipped:
9:03 AM WebInspector edited by nvineeth@gmail.com
remove spam links. (diff)
8:42 AM Changeset in webkit [128192] by commit-queue@webkit.org
  • 3 edits
    2 deletes in trunk

Unreviewed, rolling out r128175.
http://trac.webkit.org/changeset/128175
https://bugs.webkit.org/show_bug.cgi?id=96395

broke hunders of tests for EFL and GTK (Requested by rakuco on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-11

Source/WebCore:

  • platform/network/soup/ResourceResponseSoup.cpp:

(WebCore::ResourceResponse::updateFromSoupMessage):

LayoutTests:

  • http/tests/misc/non-utf8-header-name-expected.txt: Removed.
  • http/tests/misc/non-utf8-header-name.php: Removed.
8:33 AM Changeset in webkit [128191] by rakuco@webkit.org
  • 24 edits
    8 adds
    1 delete in trunk

[EFL] Rewrite the EFL-related Find modules
https://bugs.webkit.org/show_bug.cgi?id=95237

Reviewed by Kenneth Rohde Christiansen.

.:

FindEFL.cmake had several problems which caused unnecessary trouble
when building the EFL port under some setups:

o It looked for some modules (such as ecore) more than once for no
reason, which led to people adding libraries and include paths in
different ways across the build system.

o It depended on pkg-config being present for the searches to
succeed.

o It obtained the library definitions from pkg-config, so
${FOO_LIBRARIES} would be set to something like "foo;bar" which
expanded to "-lfoo -lbar" to the linker. If a wrong -L<path> was
passed before that, the wrong library installation would end up
being picked up.

o Due to the problem above, we also needed to set the LINK_FLAGS
property for each target with the value of ${FOO_LDFLAGS}, which was
also obtained from pkg-config and sort of compensated the fact that
the libraries did not use absolute paths and added the required -L
paths. This also included dependencies for these libraries, so we
ended up including libraries indirectly, which is bad.

We have now replaced that file with a set of Find-modules which are
much more granular, each of them responsible for looking for a
single library and its components and setting library and include
locations the right way (with FIND_PATH() and FIND_LIBRARY()), so
that all the problems above are fixed.

  • Source/cmake/EFLHelpers.cmake: Added.
  • Source/cmake/FindEDBus.cmake: Added.
  • Source/cmake/FindEFL.cmake: Removed.
  • Source/cmake/FindEcore.cmake: Added.
  • Source/cmake/FindEdje.cmake: Added.
  • Source/cmake/FindEeze.cmake: Added.
  • Source/cmake/FindEfreet.cmake: Added.
  • Source/cmake/FindEina.cmake: Added.
  • Source/cmake/FindEvas.cmake: Added.
  • Source/cmake/OptionsEfl.cmake:

Source/JavaScriptCore:

  • CMakeLists.txt: Stop setting the LINK_FLAGS property.
  • PlatformEfl.cmake: Ditto.
  • shell/PlatformEfl.cmake: Ditto.

Source/WebCore:

  • CMakeLists.txt: Stop setting the LINK_FLAGS property now that no

port sets WebCore_LINK_FLAGS.

  • PlatformEfl.cmake: Add libraries and include directories for

each Enlightenment Foundation Library used by the port.

Source/WebKit:

  • PlatformEfl.cmake: Stop setting the LINK_FLAGS property and add

libraries and include directories for each Enlightenment
Foundation Library used by the port.

Source/WebKit2:

  • CMakeLists.txt: Stop setting the LINK_FLAGS property.
  • PlatformEfl.cmake: Add libraries and include directories for

each Enlightenment Foundation Library used by the port.

Source/WTF:

  • CMakeLists.txt: Stop setting the LINK_FLAGS property.
  • PlatformEfl.cmake: Add libraries and include directories for

each Enlightenment Foundation Library used by the port.

Tools:

  • DumpRenderTree/efl/CMakeLists.txt: Stop setting the LINK_FLAGS

property and include all the Enlightenment Foundation Libraries
required by the target.

  • EWebLauncher/CMakeLists.txt: Ditto.
  • MiniBrowser/efl/CMakeLists.txt: Ditto.
  • TestWebKitAPI/PlatformEfl.cmake: Add missing include directories

now that they are not added implicitly.

  • WebKitTestRunner/CMakeLists.txt: Stop setting the LINK_FLAGS

property.

  • WebKitTestRunner/PlatformEfl.cmake: Stop setting the LINK_FLAGS

property and include all the Enlightenment Foundation Libraries
required by the target.

8:23 AM Changeset in webkit [128190] by commit-queue@webkit.org
  • 9 edits in trunk

[WK2][WKTR] TestRunner needs to implement setApplicationCacheOriginQuota
https://bugs.webkit.org/show_bug.cgi?id=96379

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-11
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle C API to set the application cache quota for a
given security origin. This is needed by WebKitTestRunner
to implement setApplicationCacheOriginQuota().

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

(WKBundleSetApplicationCacheOriginQuota):

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setApplicationCacheOriginQuota):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

Tools:

Add implementation for setApplicationCacheOriginQuota
to WebKitTestRunner.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setApplicationCacheOriginQuota):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

8:12 AM Changeset in webkit [128189] by commit-queue@webkit.org
  • 4 edits in trunk

[Qt] [WK2] editing/inserting/typing-tab-designmode tests are failing
https://bugs.webkit.org/show_bug.cgi?id=91988

Patch by Luciano Wolf <Luciano Miguel Wolf> on 2012-09-11
Reviewed by Kenneth Rohde Christiansen.

Tools:

Regular key events generated by Qt for the tab key fill both
keyCode and keyText, so we should do the same for our fake events.

  • WebKitTestRunner/qt/EventSenderProxyQt.cpp:

(WTR::EventSenderProxy::keyDown):

LayoutTests:

Unskip related tests.

  • platform/qt-5.0-wk2/Skipped:
8:08 AM Changeset in webkit [128188] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Take account for single words that exceed our client character limit
https://bugs.webkit.org/show_bug.cgi?id=96389

Fix to the processing of long single-line text using getRangeForSpellCheckWithFineGranularity.
This was failing if a single word was longer than our maximum allowed limit.

Internally reviewed by Mike Fenton.

Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-09-11
Reviewed by Rob Buis.

  • WebKitSupport/InputHandler.cpp:

(WebKit):
(BlackBerry::WebKit::InputHandler::getRangeForSpellCheckWithFineGranularity):

8:04 AM Changeset in webkit [128187] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

[Qt] Unreviewed, rolling out 128054, because it broke the Windows build.

  • DerivedSources.pri:
7:49 AM Changeset in webkit [128186] by commit-queue@webkit.org
  • 12 edits in trunk

[WK2][WTR] WebKitTestRunner needs testRunner.setSpatialNavigationEnabled
https://bugs.webkit.org/show_bug.cgi?id=96269

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-11
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Added a new setter for spacial navigation enabling to Injected Bundle private API.

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

(WKBundleSetSpatialNavigationEnabled):

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setSpatialNavigationEnabled):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

Tools:

Exported missing testRunner.setSpatialNavigationEnabled() method.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::beginTesting):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setSpatialNavigationEnabled):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

LayoutTests:

Unskipped fast/spatial-navigation tests. Put those which still fail to an appropriate group.

  • platform/wk2/Skipped:
7:47 AM Changeset in webkit [128185] by abecsi@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Fix the build with libwebp

Rubber-stamped by Tor Arne Vestbø

The use-flag is called WEBP not LIBWEBP, so use that when appending -lwebp.

  • WebCore.pri:
7:34 AM Changeset in webkit [128184] by caseq@chromium.org
  • 12 edits in trunk

Web Inspector: visualize layout root in Timeline
https://bugs.webkit.org/show_bug.cgi?id=96279

Reviewed by Pavel Feldman.

  • pass layout root to InspectorTimelineAgent::didLayout
  • show rectangles of the layout root upon hover over the Layout record;
  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::didLayoutImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didLayout):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::didLayout):

  • inspector/InspectorTimelineAgent.h:

(WebCore):
(InspectorTimelineAgent):

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createPaintData):
(WebCore::TimelineRecordFactory::addRectData):
(WebCore):

  • inspector/TimelineRecordFactory.h:

(TimelineRecordFactory):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._mouseMove):

  • page/FrameView.cpp:

(WebCore::FrameView::layout):

7:30 AM Changeset in webkit [128183] by anilsson@rim.com
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] SelectionHandler drops caret change notifications
https://bugs.webkit.org/show_bug.cgi?id=96378

Reviewed by Antonio Gomes.

The selection handler deliberately drops caret change notifications
while the input handler is processing changes, to avoid displaying
intermediate state during a complex change.

However, this meant that the client was never informed of the final
caret position.

Fixed by notifying client about caret change after processing ends, if
one or more caret change notifications were dropped during processing.

PR #205073

Reviewed internally by Mike Fenton.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::setProcessingChange):
(WebKit):

  • WebKitSupport/InputHandler.h:

(InputHandler):

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::SelectionHandler):
(BlackBerry::WebKit::SelectionHandler::inputHandlerDidFinishProcessingChange):
(WebKit):
(BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):
(BlackBerry::WebKit::SelectionHandler::notifyCaretPositionChangedIfNeeded):

  • WebKitSupport/SelectionHandler.h:

(SelectionHandler):

7:18 AM Changeset in webkit [128182] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Blackberry] use ReadOnlyLatin1String to save a deep copy
https://bugs.webkit.org/show_bug.cgi?id=96364

Patch by Chris Guan <chris.guan@torchmobile.com.cn> on 2012-09-11
Reviewed by Yong Li.
Internally reviewed by Yong li.

  • platform/network/blackberry/NetworkManager.cpp:

(WebCore::NetworkManager::startJob):

7:10 AM Changeset in webkit [128181] by commit-queue@webkit.org
  • 6 edits
    1 add in trunk

Tools: Support LayoutTests on non-rooted devices for Chromium Android.
https://bugs.webkit.org/show_bug.cgi?id=95346

Patch by Philippe Liard <pliard@chromium.org> on 2012-09-11
Reviewed by Dirk Pranke.

We were requiring root permissions to sync resource files with the
device by comparing host and device files' timestamp after we
synchronized the device and host clocks.
We now rely on md5sum provided by Chromium to handle data files
synchronization.

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort._check_driver_build_up_to_date):

  • Scripts/webkitpy/layout_tests/port/chromium_android.py:

(ChromiumAndroidDriver.init):
(ChromiumAndroidDriver._setup_test):
(ChromiumAndroidDriver._push_executable):
(ChromiumAndroidDriver._push_test_resources):
(ChromiumAndroidDriver._read_prompt):

LayoutTests: Support LayoutTests on non-rooted Android devices.
https://bugs.webkit.org/show_bug.cgi?id=95346

Patch by Philippe Liard <pliard@chromium.org> on 2012-09-11
Reviewed by Dirk Pranke.

http/tests/cache/resources/subresource-test.js was assuming that the
client and server clocks are the same which is no longer true since we
are getting rid of host/device clock synchronization.

  • http/tests/cache/resources/cache-simulator.cgi:
  • http/tests/cache/resources/current-time.cgi: Added.
  • http/tests/cache/resources/subresource-test.js:

(getServerDate):
(nextTest):
(testComplete):
(runTests):

7:04 AM Changeset in webkit [128180] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Fix output paths on Windows

Reviewed by Tor Arne Vestbø.

BUILD_ROOT_RELATIVE_TO_OUT_PWD was calculated incorrectly Windows, resulting in an incorrect
DESTDIR transformation at the end of default_post.prf. The calculation should be baased no qmake
paths, which can use drive letters but always use forward slashes. So the use of QMAKE_DIR_SEP is
incorrect here and instead for the calculation we should use forward slashes.

  • qmake/mkspecs/features/default_pre.prf:
6:55 AM Changeset in webkit [128179] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Fix passing of defines from the build system

We explicitly have to pass -DENABLE_FOO=0 for every single feature
that's not explicitly enabled in WEBKIT_CONFIG, since Platform.h
will add it's own defaults if the features are not defined.

At some point we might want to run a configure-test to inspect what
Platform.h will do, so we can sync up the build system's view of
the feature-defines with the compile-time situation.

Reviewed by Simon Hausmann.

6:51 AM Changeset in webkit [128178] by Simon Hausmann
  • 2 edits in trunk

[Qt] In-source builds are broken

Reviewed by Tor Arne Vestbø.

The Tools sub-directory contains a Makefile checked into SVN. For in-source builds let's not try to
overwrite it but instead generate a dedicated Makefile.Tools.

  • Makefile:
  • WebKit.pro:
6:49 AM Changeset in webkit [128177] by commit-queue@webkit.org
  • 9 edits in trunk/Source/WebKit2

[Qt][WK2] Page loading status API lacks a status for intentionally stopped loading
https://bugs.webkit.org/show_bug.cgi?id=83062

Patch by Marcelo Lira <marcelo.lira@openbossa.org> on 2012-09-11
Reviewed by Tor Arne Vestbø.

When the loading of a page is intentionally interrupted, the loading
status is set to the new state LoadStoppedStatus. This reflects
reality more accurately because the page was not fully loaded
(a LoadSucceededStatus), and it wasn't an unexpected error
(a LoadFailedStatus).

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::loadDidStop):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate):

  • UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
  • UIProcess/API/qt/tests/qmltests/WebView/tst_loadUrl.qml:
  • UIProcess/API/qt/tests/qmltests/common/TestWebView.qml:
  • UIProcess/qt/QtWebPageLoadClient.cpp:

(WebKit::QtWebPageLoadClient::dispatchLoadStopped):
(WebKit):
(WebKit::QtWebPageLoadClient::dispatchLoadFailed):

  • UIProcess/qt/QtWebPageLoadClient.h:

(QtWebPageLoadClient):

6:21 AM Changeset in webkit [128176] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Fix --qt option to build-webkit

Reviewed by Ossy.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

6:12 AM WebKitGTK/1.10.x edited by sergio@webkit.org
(diff)
6:11 AM Changeset in webkit [128175] by sergio@webkit.org
  • 3 edits
    2 adds in trunk

[GTK] WebKitGtk+ crashes with non-UTF8 HTTP header names
https://bugs.webkit.org/show_bug.cgi?id=96284

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Non UTF-8 characters sent as part of a HTTP header name were
causing crashes as String::fromUTF8() was returning NULL for
them. Use String::fromUTF8WithLatin1Fallback() instead.

Test: http/tests/misc/non-utf8-header-name.php

  • platform/network/soup/ResourceResponseSoup.cpp:

(WebCore::ResourceResponse::updateFromSoupMessage):

LayoutTests:

Added a new test to make sure that WebKitGtk+ does not crash when
a non-UTF8 character is sent as part of a HTTP header name.

  • http/tests/misc/non-utf8-header-name-expected.txt: Added.
  • http/tests/misc/non-utf8-header-name.php: Added.
6:08 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
6:08 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
6:06 AM Changeset in webkit [128174] by vestbo@webkit.org
  • 42 edits
    3 adds
    2 deletes in trunk

[Qt] Add a configure step to the Qt build system

This allows building the Qt port using just 'qmake WebKit.pro'. Using
the build-webkit script is still supported, and will add slightly more
logic to the build, such as detecting the need for clean or incremental
builds.

Internally, the build system now uses a new variable, WEBKIT_CONFIG, for
all things related to configuring the build, such as use/have/enable flags,
and these are translated to defines in default_post. Project files should
no longer check contains(DEFINES,...) to detect features, but use the new
enable?(), use?(), and have?() functions. The no_webkit1 and no_webkit2
options have been translated into WEBKIT_CONFIG options as well, and can
be checked using build?().

Reviewed by Simon Hausmann.

5:32 AM Changeset in webkit [128173] by commit-queue@webkit.org
  • 11 edits in trunk

[WK2][WKTR] TestRunner needs to implement clearApplicationCacheForOrigin
https://bugs.webkit.org/show_bug.cgi?id=96372

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-11
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle C API to clear the application cache for a
given origin. This is needed by WebKitTestRunner to
implement clearApplicationCacheForOrigin().

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

(WKBundleClearApplicationCacheForOrigin):

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::clearApplicationCacheForOrigin):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

Tools:

Implement clearApplicationCacheForOrigin() in WebKitTestRunner.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::clearApplicationCacheForOrigin):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

LayoutTests:

Refresh Skipped list now that clearApplicationCacheForOrigin
is implemented in TestRunner. Some tests were also marked as
failing due to clearAllApplicationCaches() being missing
despite the fact that it is already implemented.

  • platform/wk2/Skipped:
4:59 AM Changeset in webkit [128172] by rakuco@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[EFL] Unreviewed build fix after r128065.

  • CMakeLists.txt: Link against WTF for FastMalloc symbols, which

are needed when building with SYSTEM_MALLOC off.

4:54 AM Changeset in webkit [128171] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Remove no-op TreeElement.prototype.didChange method
https://bugs.webkit.org/show_bug.cgi?id=96376

Reviewed by Yury Semikhatsky.

  • inspector/front-end/treeoutline.js:

(TreeElement.prototype.set title):
(TreeElement.prototype.set tooltip):
(TreeElement.prototype.set hasChildren):

4:37 AM WebKitGTK/1.10.x edited by sergio@webkit.org
(diff)
4:26 AM Changeset in webkit [128170] by peter@chromium.org
  • 2 edits in trunk/Tools

Don't ignore .pak files when making an archive for Android
https://bugs.webkit.org/show_bug.cgi?id=96375

Reviewed by Jochen Eisinger.

The .pak files do need to be pushed to the device, which is currently
preventing the layout test runner from correctly pushing all files.

  • BuildSlaveSupport/built-product-archive:

(archiveBuiltProduct):

4:21 AM Changeset in webkit [128169] by commit-queue@webkit.org
  • 12 edits in trunk

[WK2][WTR] WebKitTestRunner needs layoutTestController.setMinimumTimerInterval
https://bugs.webkit.org/show_bug.cgi?id=96256

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-11
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Added new setter for minimum DOM timer interval to InjectedBundle private API.

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

(WKBundleSetMinimumTimerInterval):

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setMinimumTimerInterval):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

Tools:

Exported TestRunner::setMinimumTimerInterval() method.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::beginTesting):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setMinimumTimerInterval):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

LayoutTests:

Unskipped corresponding fast/dom/ tests.

  • platform/wk2/Skipped:
3:50 AM Changeset in webkit [128168] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
3:34 AM Changeset in webkit [128167] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] New fast/canvas/canvas-lineDash.html introduced in r128116 fails.
https://bugs.webkit.org/show_bug.cgi?id=96360

Patch by Szilard Ledan <Szilárd LEDÁN> on 2012-09-11
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
3:29 AM Changeset in webkit [128166] by tommyw@google.com
  • 13 edits
    2 adds in trunk

MediaStream API: add RTCPeerConnection::onnegotiationneeded
https://bugs.webkit.org/show_bug.cgi?id=96097

Reviewed by Adam Barth.

Source/Platform:

  • chromium/public/WebRTCPeerConnectionHandlerClient.h:

(WebRTCPeerConnectionHandlerClient):

Source/WebCore:

This patch adds the last callback to RTCPeerConnection: onnegotiationneeded.
This is called whenever the state in the RTCPeerConnection changes and that
change needs to be sent to the other side.

Test: fast/mediastream/RTCPeerConnection-onnegotiationneeded.html

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::negotiationNeeded):
(WebCore):

  • Modules/mediastream/RTCPeerConnection.h:

(RTCPeerConnection):

  • Modules/mediastream/RTCPeerConnection.idl:
  • dom/EventNames.h:

(WebCore):

  • platform/mediastream/RTCPeerConnectionHandlerClient.h:

(RTCPeerConnectionHandlerClient):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:

(WebCore::RTCPeerConnectionHandlerChromium::negotiationNeeded):
(WebCore):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:

(RTCPeerConnectionHandlerChromium):

Tools:

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:

(MockWebRTCPeerConnectionHandler::addStream):
(MockWebRTCPeerConnectionHandler::removeStream):

LayoutTests:

  • fast/mediastream/RTCPeerConnection-onnegotiationneeded-expected.txt: Added.
  • fast/mediastream/RTCPeerConnection-onnegotiationneeded.html: Added.
3:11 AM Changeset in webkit [128165] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

Sort an Xcode project file.

  • WebCore.xcodeproj/project.pbxproj:
3:10 AM Changeset in webkit [128164] by peter@chromium.org
  • 4 edits in trunk/Tools

Recognize the "--chromium-android" argument in run-webkit-tests
https://bugs.webkit.org/show_bug.cgi?id=96369

Reviewed by Jochen Eisinger.

Chromium for the Android platform cannot determine the platform based on
the host itself, so we'll use the --chromium-android argument as the build
master passes to run-webkit-tests. Make sure the layout test runner
can pick the right port when doing so.

  • Scripts/run-webkit-tests:
  • Scripts/webkitpy/layout_tests/port/factory.py:

(port_options):

3:06 AM Changeset in webkit [128163] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[WK2][EFL] Fix compile warnings when enable tiled backing store
https://bugs.webkit.org/show_bug.cgi?id=95342

Patch by Kangil Han <kangil.han@samsung.com> on 2012-09-11
Reviewed by Gyuyoung Kim.

Fixed compile time warning messages when enable tiled backing store.

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_accelerated_compositing_mode_enter): Fixed invalid use of 'EINA_SAFETY_ON_NULL_RETURN_VAL' since it used '!' ahead of evasGl value so it is always null.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setChildren): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::renderNextFrame): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.
(WebKit::LayerTreeCoordinator::beginContentUpdate): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.

2:57 AM Changeset in webkit [128162] by Simon Hausmann
  • 2 edits in trunk/Tools

[QT] Fix build with newer qmake from Qt 5

Rubber-stamped by Tor Arne Vestbø.

Support for "qmake -query QMAKE_MKSPECS" was removed from qmake. Replace
it with the use of QT_HOST_DATA/mkspecs.
Based on patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com>.

  • Scripts/webkitdirs.pm:

(builtDylibPathForName):
(qtMakeCommand):

2:54 AM Changeset in webkit [128161] by vestbo@webkit.org
  • 1 edit
    1 delete in trunk/Tools

[Qt] Remove Qt 4 syncqt, no longer needed

Reviewed by Simon Hausmann.

  • qmake/syncqt-4.8: Removed.
2:49 AM EFLWebKit edited by kenneth@webkit.org
(diff)
2:36 AM Changeset in webkit [128160] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] WKEinaSharedString needs a function to adopt eina stringshare.
https://bugs.webkit.org/show_bug.cgi?id=96201

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-09-11
Reviewed by Kenneth Rohde Christiansen.

WKEinaSharedString needs a to adopt eina stringshare directly.

With this adopt function, an instance that is directly created with
eina_stringshare_add() can be easily handled by WKEinaSharedString
without calling eina_stringshare_del() for preventing memory leak.

  • UIProcess/API/cpp/efl/WKEinaSharedString.cpp:

(WKEinaSharedString::adopt):

  • UIProcess/API/cpp/efl/WKEinaSharedString.h:
  • UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:

(TEST_F):

2:35 AM Changeset in webkit [128159] by commit-queue@webkit.org
  • 32 edits
    2 deletes in trunk/Source/WebCore

Removed V8IsolatedContext
https://bugs.webkit.org/show_bug.cgi?id=95735

Patch by Dan Carney <dcarney@google.com> on 2012-09-11
Reviewed by Adam Barth.

Remove V8IsolatedContext and merge functionality into V8DOMWindowShell.
This brings the V8 isolated world model into closer alignment with
that of JSC.

No new tests. No change in functionality.

  • UseV8.cmake:
  • WebCore.gypi:
  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):

  • bindings/scripts/test/V8/V8Float64Array.cpp:
  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:
  • bindings/scripts/test/V8/V8TestEventTarget.cpp:
  • bindings/scripts/test/V8/V8TestException.cpp:
  • bindings/scripts/test/V8/V8TestInterface.cpp:
  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
  • bindings/scripts/test/V8/V8TestNode.cpp:
  • bindings/scripts/test/V8/V8TestObj.cpp:
  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
  • bindings/v8/DOMData.cpp:

(WebCore::DOMData::getCurrentStore):

  • bindings/v8/DOMWrapperWorld.cpp:

(WebCore::DOMWrapperWorld::ensureIsolatedWorld):

  • bindings/v8/DOMWrapperWorld.h:

(DOMWrapperWorld):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::ScriptController):
(WebCore::ScriptController::resetIsolatedWorlds):
(WebCore::ScriptController::ensureIsolatedWorldContext):
(WebCore::ScriptController::existingWindowShellInternal):
(WebCore):
(WebCore::ScriptController::windowShell):
(WebCore::ScriptController::evaluateInIsolatedWorld):
(WebCore::ScriptController::setIsolatedWorldSecurityOrigin):
(WebCore::ScriptController::currentWorldContext):
(WebCore::ScriptController::evaluateInWorld):
(WebCore::ScriptController::collectIsolatedContexts):

  • bindings/v8/ScriptController.h:

(WebCore):
(ScriptController):
(WebCore::ScriptController::existingWindowShell):

  • bindings/v8/SharedPersistent.h:

(WebCore):
(WebCore::SharedPersistent::create):
(WebCore::SharedPersistent::get):
(WebCore::SharedPersistent::SharedPersistent):
(SharedPersistent):

  • bindings/v8/V8Binding.cpp:

(WebCore::perContextDataForCurrentWorld):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::setIsolatedWorldField):
(WebCore::V8DOMWindowShell::enteredIsolatedWorldContext):
(WebCore):
(WebCore::setInjectedScriptContextDebugId):
(WebCore::V8DOMWindowShell::create):
(WebCore::V8DOMWindowShell::V8DOMWindowShell):
(WebCore::V8DOMWindowShell::destroyIsolatedShell):
(WebCore::isolatedContextWeakCallback):
(WebCore::V8DOMWindowShell::disposeContext):
(WebCore::V8DOMWindowShell::initializeIfNeeded):
(WebCore::V8DOMWindowShell::createContext):
(WebCore::V8DOMWindowShell::installDOMWindow):
(WebCore::V8DOMWindowShell::updateDocumentWrapper):
(WebCore::V8DOMWindowShell::updateDocumentProperty):
(WebCore::V8DOMWindowShell::clearDocumentProperty):
(WebCore::V8DOMWindowShell::setSecurityToken):
(WebCore::V8DOMWindowShell::updateDocument):
(WebCore::V8DOMWindowShell::namedItemAdded):
(WebCore::V8DOMWindowShell::namedItemRemoved):
(WebCore::V8DOMWindowShell::updateSecurityOrigin):
(WebCore::V8DOMWindowShell::setIsolatedWorldSecurityOrigin):

  • bindings/v8/V8DOMWindowShell.h:

(V8DOMWindowShell):
(WebCore::V8DOMWindowShell::world):
(WebCore::V8DOMWindowShell::isolatedWorldSecurityOrigin):
(WebCore::V8DOMWindowShell::getEntered):

  • bindings/v8/V8DOMWrapper.h:

(WebCore::V8DOMWrapper::getCachedWrapper):

  • bindings/v8/V8IsolatedContext.cpp: Removed.
  • bindings/v8/V8IsolatedContext.h: Removed.
  • bindings/v8/V8LazyEventListener.cpp:
  • bindings/v8/WorldContextHandle.cpp:

(WebCore::WorldContextHandle::WorldContextHandle):
(WebCore::WorldContextHandle::adjustedContext):

  • bindings/v8/custom/V8DocumentCustom.cpp:

(WebCore::toV8):

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::toV8):

  • bindings/v8/custom/V8SVGDocumentCustom.cpp:

(WebCore::toV8):

  • bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:

(WebCore::V8XMLHttpRequest::constructorCallback):

2:31 AM WebInspector edited by mtjohnwoods@gmail.com
(diff)
2:18 AM Changeset in webkit [128158] by abecsi@webkit.org
  • 15 edits in trunk

[Qt][WK2] Fix the build with recent Qt5
https://bugs.webkit.org/show_bug.cgi?id=96283

Reviewed by Simon Hausmann.

We should not use deprecated Qt API because doing that results
in build failure since all the deprecated API was disabled
in qtbase (https://codereview.qt-project.org/#change,24890).

Source/WebKit/qt:

  • tests/qgraphicswebview/tst_qgraphicswebview.cpp:

(tst_QGraphicsWebView::widgetsRenderingThroughCache):
(tst_QGraphicsWebView::setPalette):
(tst_QGraphicsWebView::compareCanvasToImage):

  • tests/qobjectbridge/tst_qobjectbridge.cpp:

(tst_QObjectBridge::ownership):

  • tests/qwebframe/tst_qwebframe.cpp:

(tst_QWebFrame::popupFocus):
(tst_QWebFrame::inputFieldFocus):
(tst_QWebFrame::evaluateWillCauseRepaint):

  • tests/qwebpage/tst_qwebpage.cpp:

(Navigation):
(PluginCounterPage):

  • tests/qwebview/tst_qwebview.cpp:

(tst_QWebView::reusePage):
(tst_QWebView::focusInputTypes):
(tst_QWebView::setPalette):
(tst_QWebView::renderingAfterMaxAndBack):

Source/WebKit2:

  • UIProcess/API/qt/qwebnavigationhistory.cpp:

(QWebNavigationListModel::roleNames):
(QWebNavigationListModel::reset):

  • UIProcess/API/qt/qwebnavigationhistory_p.h:
  • UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:

(WebView::load):

  • UIProcess/qt/WebPopupMenuProxyQt.cpp:

(PopupMenuItemModel):
(WebKit::PopupMenuItemModel::PopupMenuItemModel):
(WebKit::PopupMenuItemModel::roleNames):
(WebKit):

Tools:

  • DumpRenderTree/qt/main.cpp:

(main):

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::notify):

  • MiniBrowser/qt/raw/View.cpp:

(View::exposeEvent):
(main):

2:16 AM Changeset in webkit [128157] by commit-queue@webkit.org
  • 12 edits in trunk

WTR needs an implementation of applicationCacheDiskUsageForOrigin
https://bugs.webkit.org/show_bug.cgi?id=87188

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-11
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle private C API to retrieve the application cache
usage for a specific security origin. This is needed by
WebKitTestRunner.

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

(WKBundleGetAppCacheUsageForOrigin):

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::appCacheUsageForOrigin):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(InjectedBundle):

Tools:

Add implementation for applicationCacheDiskUsageForOrigin()
in WebKitTestRunner.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::applicationCacheDiskUsageForOrigin):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

LayoutTests:

Unskip test cases that require an implementation of
applicationCacheDiskUsageForOrigin in WebKitTestRunner.

  • platform/efl/Skipped:
  • platform/wk2/Skipped:
1:33 AM WebKitGTK/1.10.x edited by plaes@plaes.org
Added branching date, so it's easier to look up fixes. (diff)
1:15 AM Changeset in webkit [128156] by keishi@webkit.org
  • 5 edits in trunk/Source

Create Localizer factory method for LocaleMac
https://bugs.webkit.org/show_bug.cgi?id=96355

Reviewed by Kent Tamura.

Source/WebCore:

Preparing to use Localizer instead of LocaleMac/Win/ICU

No new tests. Covered in unit test tests/LocaleMacTest.cpp

  • platform/text/Localizer.h:

(Localizer):

  • platform/text/mac/LocaleMac.mm:

(WebCore::Localizer::create):
(WebCore):

Source/WebKit/chromium:

  • tests/LocaleMacTest.cpp:

(testNumberIsReversible): Use Localizer::create.
(testNumbers):

1:07 AM Changeset in webkit [128155] by mihnea@adobe.com
  • 10 edits
    24 adds in trunk

[CSS Regions] Auto width is not working for Regions
https://bugs.webkit.org/show_bug.cgi?id=74135

Reviewed by Julien Chaffraix.

Source/WebCore:

It was not possible to flow content into a region having { width: auto; } since in such case, the region width was computed to 0.
Now, a region having auto width, will have its width computed following the rules for calculation of widths and margins
(http://www.w3.org/TR/CSS2/visudet.html#Computing_widths_and_margins).
For those cases in which resolving the width requires measuring of content's min/max-content values, we use the associated named flow min/max-content
values (the same for all regions with width auto in a region chain).
When a region has width:auto, the computation of width should be done using normal block/box sizing code, instead of replaced element code.
Contains code contributed by Alexandru Chiculita(Alexandru Chiculita).

Tests: fast/regions/autowidth-abspos-regionchain.html

fast/regions/autowidth-abspos.html
fast/regions/autowidth-attachedinvalidregion.html
fast/regions/autowidth-float.html
fast/regions/autowidth-inlineblock.html
fast/regions/autowidth-nonreplaced-abspos.html
fast/regions/autowidth-nonreplacedblock-normalflow.html
fast/regions/autowidth-normalflow-maxwidth.html
fast/regions/autowidth-normalflow-minmaxwidth.html
fast/regions/autowidth-normalflow-minwidth.html
fast/regions/autowidth-normalflow-vertrl.html
fast/regions/autowidth-normalflow.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePositionedLogicalWidth): For positioned auto-width regions, skip the code path for replaced elements.

  • rendering/RenderRegion.cpp:

(WebCore): Override min/maxPreferredLogicalWidth as they are used in the process of computing width for regions with auto width.
As this moment, a region is still a RenderReplaced element, so this code needs to be revisited when the region will become a RenderBlock.
Also, for min/max-width, we support only <length> values. We will extend support for other values in a following patch.
We only attempt to use the flowThread min/maxPreferredLogicalWidth if the region is valid (there are no circular dependencies).
(WebCore::RenderRegion::minPreferredLogicalWidth):
(WebCore::RenderRegion::maxPreferredLogicalWidth):

  • rendering/RenderRegion.h:

(RenderRegion): Override isInlineBlockOrInlineTable() and shouldComputeSizeAsReplaced() to ensure that computation for width auto follows the normal
block/box sizing code.
(WebCore::RenderRegion::expandToEncompassFlowThreadContentsIfNeeded):

LayoutTests:

Add tests for width: auto and modify the existing region tests that were having width: auto so that they do not fail after the changes.

  • fast/regions/autowidth-abspos-expected.html: Added.
  • fast/regions/autowidth-abspos-regionchain-expected.html: Added.
  • fast/regions/autowidth-abspos-regionchain.html: Added.
  • fast/regions/autowidth-abspos.html: Added.
  • fast/regions/autowidth-attachedinvalidregion-expected.txt: Added.
  • fast/regions/autowidth-attachedinvalidregion.html: Added.
  • fast/regions/autowidth-float-expected.html: Added.
  • fast/regions/autowidth-float.html: Added.
  • fast/regions/autowidth-inlineblock-expected.html: Added.
  • fast/regions/autowidth-inlineblock.html: Added.
  • fast/regions/autowidth-nonreplaced-abspos-expected.html: Added.
  • fast/regions/autowidth-nonreplaced-abspos.html: Added.
  • fast/regions/autowidth-nonreplacedblock-normalflow-expected.html: Added.
  • fast/regions/autowidth-nonreplacedblock-normalflow.html: Added.
  • fast/regions/autowidth-normalflow-expected.html: Added.
  • fast/regions/autowidth-normalflow-maxwidth-expected.html: Added.
  • fast/regions/autowidth-normalflow-maxwidth.html: Added.
  • fast/regions/autowidth-normalflow-minmaxwidth-expected.html: Added.
  • fast/regions/autowidth-normalflow-minmaxwidth.html: Added.
  • fast/regions/autowidth-normalflow-minwidth-expected.html: Added.
  • fast/regions/autowidth-normalflow-minwidth.html: Added.
  • fast/regions/autowidth-normalflow-vertrl-expected.html: Added.
  • fast/regions/autowidth-normalflow-vertrl.html: Added.
  • fast/regions/autowidth-normalflow.html: Added.
  • fast/regions/bottom-overflow-out-of-first-region.html:
  • fast/regions/flows-dependency-dynamic-remove.html:
  • fast/regions/flows-dependency-same-flow.html:
  • fast/regions/render-region-renderer-expected.html:
  • fast/regions/top-overflow-out-of-second-region.html:
12:48 AM Changeset in webkit [128154] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Add necessary include directory in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=95173

Unreviewed build fix.

revision r126694: Move TextureMapperGL to use
GraphicsContext3D. modify the TextureMapperGL.h to include
GraphicsContext3D.h. And when enable TEXTURE_MAPPER,
file WebKit2/Shared/ShareableSurface.cpp will include
TextureMapperGL.h then depends on GraphicsContext3D.h
thus it need to add ANGLE director. As currently, this
problem only affect EFL platform, according to Gyuyoung Kim's
suggestion, we add this include dir into EFL private file
PlatformEfl.cmake. Otherwise, the build will fail.

To trigger this problem by using the following command:
./Tools/Scripts/build-webkit --efl --3d-rendering --tiled-backing-store

Patch by Zhigang Gong <zhigang.gong@linux.intel.com> on 2012-09-11

  • CMakeLists.txt:
12:33 AM Changeset in webkit [128153] by loislo@chromium.org
  • 14 edits
    1 move in trunk/Source

Web Inspector: NMI: move MemoryInstrumentation.h to wtf
https://bugs.webkit.org/show_bug.cgi?id=96356

Reviewed by Yury Semikhatsky.

It is necessary step because it helps us to remove dependency between platform and WebCore.

Source/WebCore:

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/WebCoreMemoryInstrumentation.h:
  • inspector/MemoryInstrumentationImpl.h:

Source/WTF:

  • GNUmakefile.list.am:
  • WTF.gypi:
  • WTF.pro:
  • WTF.vcproj/WTF.vcproj:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/MemoryInstrumentation.h: Renamed from Source/WebCore/dom/MemoryInstrumentation.h.

(WebCore):
(GenericMemoryTypes):
(MemoryInstrumentationTraits):
(MemoryInstrumentation):
(WebCore::MemoryInstrumentation::~MemoryInstrumentation):
(WebCore::MemoryInstrumentation::addRootObject):
(InstrumentedPointerBase):
(WebCore::MemoryInstrumentation::InstrumentedPointerBase::~InstrumentedPointerBase):
(InstrumentedPointer):
(WebCore::MemoryInstrumentation::InstrumentedPointer::InstrumentedPointer):
(WebCore::MemoryInstrumentation::addObject):
(WebCore::MemoryInstrumentation::addInstrumentedObject):
(WebCore::MemoryInstrumentation::addRawBuffer):
(WebCore::MemoryInstrumentation::OwningTraits::addInstrumentedObject):
(WebCore::MemoryInstrumentation::OwningTraits::addObject):
(WebCore::MemoryInstrumentationTraits::addInstrumentedObject):
(WebCore::MemoryInstrumentationTraits::addObject):
(MemoryObjectInfo):
(WebCore::MemoryObjectInfo::MemoryObjectInfo):
(WebCore::MemoryObjectInfo::objectType):
(WebCore::MemoryObjectInfo::objectSize):
(WebCore::MemoryObjectInfo::memoryInstrumentation):
(WebCore::MemoryObjectInfo::reportObjectInfo):
(MemoryClassInfo):
(WebCore::MemoryClassInfo::MemoryClassInfo):
(WebCore::MemoryClassInfo::addInstrumentedMember):
(WebCore::MemoryClassInfo::addMember):
(WebCore::MemoryClassInfo::addHashMap):
(WebCore::MemoryClassInfo::addHashSet):
(WebCore::MemoryClassInfo::addHashCountedSet):
(WebCore::MemoryClassInfo::addInstrumentedHashSet):
(WebCore::MemoryClassInfo::addInstrumentedVector):
(WebCore::MemoryClassInfo::addInstrumentedVectorPtr):
(WebCore::MemoryClassInfo::addInstrumentedMapEntries):
(WebCore::MemoryClassInfo::addInstrumentedMapValues):
(WebCore::MemoryClassInfo::addListHashSet):
(WebCore::MemoryClassInfo::addVector):
(WebCore::MemoryClassInfo::addVectorPtr):
(WebCore::MemoryClassInfo::addRawBuffer):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):
(WebCore::MemoryInstrumentation::addObjectImpl):
(WebCore::MemoryInstrumentation::addHashMap):
(WebCore::MemoryInstrumentation::addHashSet):
(WebCore::MemoryInstrumentation::addInstrumentedCollection):
(WebCore::MemoryInstrumentation::addInstrumentedMapEntries):
(WebCore::MemoryInstrumentation::addInstrumentedMapValues):
(WebCore::MemoryInstrumentation::addListHashSet):
(WebCore::MemoryInstrumentation::addVector):
(WebCore::MemoryInstrumentation::calculateContainerSize):
(WebCore::::process):

12:33 AM Changeset in webkit [128152] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Removing crashing expectations for two editing tests after they were fixed
in r128074.

Rebaselining accessibility/legend.html after r128140.

  • platform/gtk/TestExpectations:
  • platform/gtk/accessibility/legend-expected.txt:
12:17 AM Changeset in webkit [128151] by loislo@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r128150.
http://trac.webkit.org/changeset/128150
https://bugs.webkit.org/show_bug.cgi?id=96357

it broke chromium compilation (Requested by loislo on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-11

  • DEPS:

Sep 10, 2012:

10:46 PM Changeset in webkit [128150] by yosin@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-10

  • DEPS:
10:44 PM Changeset in webkit [128149] by keishi@webkit.org
  • 35 edits
    2 adds in trunk/Source/WebCore

Move InputTypeNames to a separate file
https://bugs.webkit.org/show_bug.cgi?id=96255

Reviewed by Kent Tamura.

We want to move InputTypeNames to a separate file so we can use it without including InputType.h.

No new tests. No behavior change.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • html/ButtonInputType.cpp:
  • html/CheckboxInputType.cpp:
  • html/ColorInputType.cpp:
  • html/DateInputType.cpp:
  • html/DateTimeInputType.cpp:
  • html/DateTimeLocalInputType.cpp:
  • html/EmailInputType.cpp:
  • html/FileInputType.cpp:
  • html/HiddenInputType.cpp:
  • html/ImageInputType.cpp:
  • html/InputType.cpp:
  • html/InputType.h:
  • html/InputTypeNames.cpp: Added.

(WebCore):
(InputTypeNames):
(WebCore::InputTypeNames::button):
(WebCore::InputTypeNames::checkbox):
(WebCore::InputTypeNames::color):
(WebCore::InputTypeNames::date):
(WebCore::InputTypeNames::datetime):
(WebCore::InputTypeNames::datetimelocal):
(WebCore::InputTypeNames::email):
(WebCore::InputTypeNames::file):
(WebCore::InputTypeNames::hidden):
(WebCore::InputTypeNames::image):
(WebCore::InputTypeNames::month):
(WebCore::InputTypeNames::number):
(WebCore::InputTypeNames::password):
(WebCore::InputTypeNames::radio):
(WebCore::InputTypeNames::range):
(WebCore::InputTypeNames::reset):
(WebCore::InputTypeNames::search):
(WebCore::InputTypeNames::submit):
(WebCore::InputTypeNames::telephone):
(WebCore::InputTypeNames::text):
(WebCore::InputTypeNames::time):
(WebCore::InputTypeNames::url):
(WebCore::InputTypeNames::week):

  • html/InputTypeNames.h: Added.

(WebCore):
(InputTypeNames):

  • html/MonthInputType.cpp:
  • html/NumberInputType.cpp:
  • html/PasswordInputType.cpp:
  • html/RadioInputType.cpp:
  • html/RangeInputType.cpp:
  • html/ResetInputType.cpp:
  • html/SearchInputType.cpp:
  • html/SubmitInputType.cpp:
  • html/TelephoneInputType.cpp:
  • html/TextInputType.cpp:
  • html/TimeInputType.cpp:
  • html/URLInputType.cpp:
  • html/WeekInputType.cpp:
  • html/parser/HTMLPreloadScanner.cpp:
  • platform/efl/RenderThemeEfl.cpp:
  • rendering/RenderThemeChromiumCommon.cpp:
10:29 PM Changeset in webkit [128148] by yosin@chromium.org
  • 4 edits
    2 adds in trunk

REGRESSION (r127226): Calling DateTimeEditElement::layout() in focus handler should not dispatch blur event
https://bugs.webkit.org/show_bug.cgi?id=96232

Reviewed by Kent Tamura.

Source/WebCore:

This patch makes DateTimeEditElement::layout() not to dispatch blur
event by removing existing fields, one of them can be focused, after
moving focus to newly created field.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

Test: fast/forms/time-multiple-fields/time-multiple-fields-state-change-on-focus-or-blur.html

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::build): Changed to call resetFields().
(WebCore::DateTimeEditElement::focusedFieldIndex): Changed to use
Document::focusedNode(). When this function is called during handling
focus event, Element::focused() isn't true.
(WebCore::DateTimeEditElement::layout): Changed to remove existing
child nodes after moving focus to newly created field.
(WebCore::DateTimeEditElement::resetFields): Renamed from resetLayout().
This function makes m_fields vector empty.
(WebCore::DateTimeEditElement::resetLayout): Renamed to resetFields().
We moved removing field elements and spin button to layout().

  • html/shadow/DateTimeEditElement.h:

(DateTimeEditElement): Renamed resetLayout() to resetFields().

LayoutTests:

This patch adds a new test for checking layout changing of multiple
fields time input UI in focus handler doesn't dispatch blur event.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

  • fast/forms/time-multiple-fields/time-multiple-fields-state-change-on-focus-or-blur-expected.txt: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-state-change-on-focus-or-blur.html: Added.
10:17 PM Changeset in webkit [128147] by keishi@webkit.org
  • 9 edits
    2 moves in trunk/Source/WebCore

Rename NumberLocalizer to Localizer
https://bugs.webkit.org/show_bug.cgi?id=96350

Reviewed by Kent Tamura.

Renaming NumberLocalizer to Localizer so we can unify our localization methods into this class in the future.

No new tests. No behavior change.

  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/text/LocaleICU.cpp:

(WebCore::LocaleICU::initializeLocalizerData):

  • platform/text/LocaleICU.h:

(LocaleICU):

  • platform/text/LocaleWin.cpp:

(WebCore::LocaleWin::initializeLocalizerData):

  • platform/text/LocaleWin.h:

(LocaleWin):

  • platform/text/Localizer.cpp: Renamed from Source/WebCore/platform/text/NumberLocalizer.cpp.

(WebCore):
(WebCore::Localizer::~Localizer):
(WebCore::Localizer::setLocalizerData):
(WebCore::Localizer::convertToLocalizedNumber):
(WebCore::matches):
(WebCore::Localizer::detectSignAndGetDigitRange):
(WebCore::Localizer::matchedDecimalSymbolIndex):
(WebCore::Localizer::convertFromLocalizedNumber):
(WebCore::Localizer::localizedDecimalSeparator):

  • platform/text/Localizer.h: Renamed from Source/WebCore/platform/text/NumberLocalizer.h.

(WebCore):
(Localizer):
(WebCore::Localizer::Localizer):

  • platform/text/mac/LocaleMac.h:

(LocaleMac):

  • platform/text/mac/LocaleMac.mm:

(WebCore::LocaleMac::initializeLocalizerData):

10:05 PM Changeset in webkit [128146] by mhahnenberg@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

Remove m_classInfo from JSCell
https://bugs.webkit.org/show_bug.cgi?id=96311

Reviewed by Oliver Hunt.

Now that no one is using the ClassInfo in JSCell, we can remove it for the greater good. This is a 1.5% win on v8v7 and
a 1.7% win on kraken, and is an overall performance progression.

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject): Had to rearrange the order of when we take things off the free list
and when we store the Structure in the object because we would clobber the free list otherwise. This made it not okay for
the structure argument and the scratch register to alias one another. Also removed the store of the ClassInfo pointer in the
object. Yay!
(SpeculativeJIT):

  • dfg/DFGSpeculativeJIT32_64.cpp: Since it's no longer okay for for the scratch register and structure register to alias

one another as stated above, had to add an extra temporary for passing the Structure.
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp: Ditto.

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

  • jit/JITInlineMethods.h:

(JSC::JIT::emitAllocateBasicJSObject): Similar changes to DFG's inline allocation except that it removed the object from
the free list first, so no changes were necessary there.

  • llint/LowLevelInterpreter.asm: Change the constants for amount of inline storage to match PropertyOffset.h and remove

the store of the ClassInfo pointer during inline allocation.

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/JSCell.h: Remove the m_classInfo field and associated methods.

(JSCell):

  • runtime/JSObject.h:

(JSObject):

  • runtime/PropertyOffset.h: Expand the number of inline storage properties to take up the extra space that we're freeing

with the removal of the ClassInfo pointer.
(JSC):

  • runtime/Structure.h:

(JSC):
(JSC::JSCell::JSCell):
(JSC::JSCell::finishCreation):

10:03 PM Changeset in webkit [128145] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Build warning : fix warning about extended initializer lists on EWK2UnitTestBase.cpp.
https://bugs.webkit.org/show_bug.cgi?id=95990

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-09-10
Reviewed by Gyuyoung Kim.

Fix build warning about extended initializer lists only available with
-std=c++0x or -std=gnu++0x.

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:

(EWK2UnitTest::ewk2UnitTestBrowserViewSmartClass):
(EWK2UnitTest):
(EWK2UnitTest::EWK2UnitTestBase::EWK2UnitTestBase):

9:05 PM Changeset in webkit [128144] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Use an API symbol instead of a hardcoded string for the TIFF uniform type identifier.

Reviewed by Mark Rowe.

  • platform/graphics/mac/ImageMac.mm:

(WebCore::BitmapImage::getTIFFRepresentation): Replaced CFSTR("public.tiff") with kUTTypeTIFF.

8:50 PM Changeset in webkit [128143] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

[CMake] Remove duplicated file in CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=96346

Reviewed by Benjamin Poulain.

  • CMakeLists.txt: Remove duplicated files.
8:19 PM Changeset in webkit [128142] by tonikitoo@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] add a way to overscroll non-overflown content
https://bugs.webkit.org/show_bug.cgi?id=96331
[UxD] Vertical lists should always be scrollable
PR #195305

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>
Internally reviewed by Gen Mak.

Check if the RenderLayer is composited / hardware acceleratable prior to
check if its contents overflows. If that is the case, check if
our custom data-blackberry-force-overscroll is present.

That makes it possible for us to align to UX requirements: settings
and CCM panels should be always scrollable.

  • Api/InRegionScroller.cpp:

(BlackBerry::WebKit::canScrollRenderBox):

  • WebKitSupport/InRegionScrollableArea.cpp:

(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):

8:02 PM Changeset in webkit [128141] by ggaren@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

Added large allocation support to MarkedSpace
https://bugs.webkit.org/show_bug.cgi?id=96214

Originally reviewed by Oliver Hunt, then I added a design revision by
suggested by Phil Pizlo.

I expanded the imprecise size classes to cover up to 32KB, then added
an mmap-based allocator for everything bigger. There's a lot of tuning
we could do in these size classes, but currently they're almost
completely unused, so I haven't done any tuning.

Subtle point: the large allocator is a degenerate case of our free list
logic. Its list only ever contains zero or one items.

  • heap/Heap.h:

(JSC::Heap::allocateStructure): Pipe in size information.

  • heap/MarkedAllocator.cpp:

(JSC::MarkedAllocator::tryAllocateHelper): Handle the case where we
find a free item in the sweep list but the item isn't big enough. This
can happen in the large allocator because it mixes sizes.

(JSC::MarkedAllocator::tryAllocate):
(JSC::MarkedAllocator::allocateSlowCase): More piping.

(JSC::MarkedAllocator::allocateBlock): Handle the oversize case.

(JSC::MarkedAllocator::addBlock): I moved the call to didAddBlock here
because it made more sense.

  • heap/MarkedAllocator.h:

(MarkedAllocator):
(JSC::MarkedAllocator::allocate):

  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::MarkedSpace):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::canonicalizeCellLivenessData):
(JSC::MarkedSpace::isPagedOut):
(JSC::MarkedSpace::freeBlock):

  • heap/MarkedSpace.h:

(MarkedSpace):
(JSC::MarkedSpace::allocatorFor):
(JSC::MarkedSpace::destructorAllocatorFor):
(JSC::MarkedSpace::allocateWithoutDestructor):
(JSC::MarkedSpace::allocateWithDestructor):
(JSC::MarkedSpace::allocateStructure):
(JSC::MarkedSpace::forEachBlock):

  • runtime/Structure.h:

(JSC::Structure): More piping.

6:41 PM Changeset in webkit [128140] by commit-queue@webkit.org
  • 14 edits
    1 add in trunk

Properly expose <legend> elements to ATs
https://bugs.webkit.org/show_bug.cgi?id=84137

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-10
Reviewed by Chris Fleizach.

Created a new WebCore Accessibility Role, LegendRole. Used it to map to
the expected platform role, ATK_ROLE_LABEL. Also established the needed
AtkRelation pair, label-for/labelled-by between the legend and fieldset.

Source/WebCore:

No new test needed - Existing legend.html test is now unskipped for Gtk.

  • accessibility/AccessibilityObject.h: Added LegendRole
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole): Map legendTag to LegendRole

  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetName): Fieldset accessible should take its name from the associated LegendRole/label
(setAtkRelationSetFromCoreObject): Set label-for/labelled-by AtkRelation pair between fieldset and legend
(atkRole): Map LegendRole to ATK_ROLE_LABEL

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(createAccessibilityRoleMap): Map LegendRole to NSAccessibilityGroupRole

Source/WebKit/chromium:

  • public/WebAccessibilityRole.h: added WebAccessibilityRoleLegend
  • src/AssertMatchingEnums.cpp: added the assert matching rule for

WebAccessibilityRoleLegend and LegendRole

Tools:

  • DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:

(roleToString): added "Legend" string for WebAccessibilityRoleLegend

LayoutTests:

  • accessibility/legend.html: Modified the test to be more platform-agnostic.
  • platform/gtk/TestExpectations: Removed legend.html from the skipped list.
  • platform/gtk/accessibility/legend-expected.txt: Added.
  • platform/mac/accessibility/legend-expected.txt: Updated.
6:25 PM Changeset in webkit [128139] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebCore

[V8] Code assumes that getScriptExecutionContext can return 0
https://bugs.webkit.org/show_bug.cgi?id=96340

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Eric Seidel.

This function can never return 0 (as long as V8 is on the stack).
There's no reason to try to handle a 0 return as an error.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateCallWith):
(GenerateConstructorCallback):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::constructorCallback):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesCallback):

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallback):

  • bindings/v8/custom/V8CustomXPathNSResolver.cpp:

(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

  • bindings/v8/custom/V8MessageChannelConstructor.cpp:

(WebCore::V8MessageChannel::constructorCallback):

  • bindings/v8/custom/V8MutationObserverCustom.cpp:

(WebCore::V8MutationObserver::constructorCallback):

  • bindings/v8/custom/V8SQLTransactionCustom.cpp:

(WebCore::V8SQLTransaction::executeSqlCallback):

  • bindings/v8/custom/V8WebSocketCustom.cpp:

(WebCore::V8WebSocket::constructorCallback):

  • bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:

(WebCore::V8XMLHttpRequest::constructorCallback):

  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::V8XMLHttpRequest::openCallback):

6:22 PM Changeset in webkit [128138] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[V8] We don't us the global handle map for anything useful---let's remove it
https://bugs.webkit.org/show_bug.cgi?id=96343

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Kentaro Hara.

The global handle map was a dream of tracking all the persistent V8
handles in WebCore. Unfortunately, it has never been complete, and I'm
not aware of us using it for anything. This patch removes what little
is left of it.

  • bindings/v8/NPV8Object.cpp:

(WebCore::freeV8NPObject):
(WebCore::npCreateV8ScriptObject):

  • bindings/v8/V8GCController.cpp:

(WebCore):
(WebCore::V8GCController::gcEpilogue):
(WebCore::V8GCController::collectGarbage):

  • bindings/v8/V8GCController.h:

(V8GCController):

  • bindings/v8/V8PerIsolateData.h:

(WebCore):
(V8PerIsolateData):

6:19 PM Changeset in webkit [128137] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[chromium] Fix trace event macro naming issue
https://bugs.webkit.org/show_bug.cgi?id=96337

Patch by John Bates <jbates@google.com> on 2012-09-10
Reviewed by James Robinson.

  • platform/chromium/TraceEvent.h:
5:50 PM Changeset in webkit [128136] by jsbell@chromium.org
  • 4 edits in trunk/Source/WebCore

IndexedDB: IDBFactory.deleteDatabase() is slow
https://bugs.webkit.org/show_bug.cgi?id=96036

Reviewed by Tony Chang.

The deleteDatabase() operation is implemented by creating a LevelDBTansaction to accumulate
the records to delete, then committing it. The transaction is a tree of key/operation pairs.
As each (key, delete) entry is added to the tree compares need to be made, potentially
requiring full key decodes. Since this temporary transaction is never read from, this is
overkill.

Add a new "write only" transaction type that simply wraps a write batch, which provides
transaction integrity but avoids the insertion overhead and has a minimal interface.

No new tests - no functional changes, only perf improvement.

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp:

(WebCore::IDBLevelDBBackingStore::deleteDatabase): Use new write-only transaction type.

  • platform/leveldb/LevelDBTransaction.cpp:

(WebCore::LevelDBWriteOnlyTransaction::create):
(WebCore):
(WebCore::LevelDBWriteOnlyTransaction::LevelDBWriteOnlyTransaction):
(WebCore::LevelDBWriteOnlyTransaction::~LevelDBWriteOnlyTransaction):
(WebCore::LevelDBWriteOnlyTransaction::remove):
(WebCore::LevelDBWriteOnlyTransaction::commit):

  • platform/leveldb/LevelDBTransaction.h:

(WebCore):
(LevelDBWriteOnlyTransaction):

5:41 PM Changeset in webkit [128135] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[V8] createFunctionOnlyCallback should be in V8Callback.h with the other callback functions
https://bugs.webkit.org/show_bug.cgi?id=96336

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Kentaro Hara.

Moving this function to V8Callback.h also lets us delete
setTypeMismatchException because we no longer have a header inclusion
cycle.

  • bindings/v8/V8Callback.h:

(WebCore::createFunctionOnlyCallback):
(WebCore):

  • bindings/v8/V8Utilities.cpp:
  • bindings/v8/V8Utilities.h:

(WebCore):

  • bindings/v8/custom/V8GeolocationCustom.cpp:
  • bindings/v8/custom/V8NotificationCustom.cpp:
5:37 PM Changeset in webkit [128134] by Beth Dakin
  • 40 edits in trunk/Source

https://bugs.webkit.org/show_bug.cgi?id=96158
Need API to suppress scrollbar animations
-and corresponding-
<rdar://problem/12210972>

Reviewed by Sam Weinig.

Source/WebCore:

This patch re-names ScrollableAre::isOnActivePage() to
ScrollableArea::scrollbarsCanBeActive(). The new name better reflects
how the function is actually used, and it allows us to use the same
function for the new API that has been added to WebKit2. Now when a
client has used that API to indicate that scrollbars should be
suppressed, ScrollableArea::scrollbarsCanBeActive() will return
false.

Page has a new member variable which indicated whether scrollbar
animations for all scrollbars associated with that page should be
suppressed. Whenever it is set to true (meaning the animations
should be suppressed), Page iterates through all of the
ScrollableAreas to tell each one to finishCurrentScrollAnimations().

  • WebCore.exp.in:
  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::setShouldSuppressScrollbarAnimations):
(WebCore):

  • page/Page.h:

(WebCore::Page::shouldSuppressScrollbarAnimations):
(Page):

FrameView::isOnActivePage() is renamed to scrollbarsCanBeActive ()
and it will now return false if the Page says that scrollbar
animations should be suppressed.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollbarsCanBeActive):

scrollbarsCanBeActive() must now be a public member of FrameView so
that it can be called from RenderLayer and RenderListBox.

  • page/FrameView.h:

(FrameView):

New ScrollAnimator function calls hideOverlayScrollers.

  • platform/ScrollAnimator.h:

(WebCore::ScrollAnimator::finishCurrentScrollAnimations):
(ScrollAnimator):

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::finishCurrentScrollAnimations):
(WebCore):

  • platform/ScrollableArea.h:

(ScrollableArea):

  • platform/mac/ScrollAnimatorMac.h:

(ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::finishCurrentScrollAnimations):

Re-name. isOnActivePage() -> scrollbarsCanBeActive()
(WebCore::FrameView::setAnimatorsAreActive):
(WebCore::FrameView::notifyPageThatContentAreaWillPaint):

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
(WebCore::ScrollAnimatorMac::contentAreaWillPaint):
(WebCore::ScrollAnimatorMac::mouseEnteredContentArea):
(WebCore::ScrollAnimatorMac::mouseExitedContentArea):
(WebCore::ScrollAnimatorMac::mouseMovedInContentArea):
(WebCore::ScrollAnimatorMac::mouseEnteredScrollbar):
(WebCore::ScrollAnimatorMac::mouseExitedScrollbar):
(WebCore::ScrollAnimatorMac::willStartLiveResize):
(WebCore::ScrollAnimatorMac::contentsResized):
(WebCore::ScrollAnimatorMac::willEndLiveResize):
(WebCore::ScrollAnimatorMac::contentAreaDidShow):
(WebCore::ScrollAnimatorMac::contentAreaDidHide):
(WebCore::ScrollAnimatorMac::didBeginScrollGesture):
(WebCore::ScrollAnimatorMac::didEndScrollGesture):
(WebCore::ScrollAnimatorMac::mayBeginScrollGesture):
(WebCore):
(WebCore::ScrollAnimatorMac::notifyContentAreaScrolled):
(WebCore::ScrollAnimatorMac::updateScrollerStyle):

  • rendering/RenderLayer.cpp:

RenderLayer and RenderListBox should call into FrameView's
scrollbarsCanBeActive() so that they also return false when Page::
shouldSuppressScrollbarAnimations() is true.
(WebCore::RenderLayer::scrollbarsCanBeActive):

  • rendering/RenderLayer.h:

(RenderLayer):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scrollbarsCanBeActive):

  • rendering/RenderListBox.h:

This is the one caller of ScrollableArea:: scrollbarsCanBeActive()
that needs to distinguish between the scrollbar-suppressing scenario
and the in-the-page-cache scenario.

  • page/FocusController.cpp:

(WebCore::FocusController::setContainingWindowIsVisible):

Source/WebKit/chromium:

ScrollableArea::isOnActivePage() has been re-named to
ScrollableArea:: scrollbarsCanBeActive().

  • src/ScrollbarGroup.cpp:

(WebKit::ScrollbarGroup::scrollbarsCanBeActive):

  • src/ScrollbarGroup.h:
  • tests/GraphicsLayerChromiumTest.cpp:
  • tests/ScrollAnimatorNoneTest.cpp:

(MockScrollableArea):

Source/WebKit/win:

ScrollableArea::isOnActivePage() has been re-named to
ScrollableArea:: scrollbarsCanBeActive().

  • WebScrollBar.cpp:

(WebScrollBar::scrollbarsCanBeActive):

  • WebScrollBar.h:

(WebScrollBar):

Source/WebKit2:

Add suppressScrollbarAnimations as a WebCreationParameter.

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters):

New API. Calls into the web process for the setter but not the
getter.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetSuppressScrollbarAnimations):
(WKPageAreScrollbarAnimationsSuppressed):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setSuppressScrollbarAnimations):
(WebKit):
(WebKit::WebPageProxy::creationParameters):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):
(WebKit::WebPageProxy::areScrollbarAnimationsSuppressed):

  • WebProcess/WebPage/WebPage.messages.in:

Call into WebCore.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::setSuppressScrollbarAnimations):
(WebKit):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

This ScrollableArea area function is re-named by this patch in
WebCore.

  • WebProcess/Plugins/PDF/BuiltInPDFView.h:
  • WebProcess/Plugins/PDF/BuiltInPDFView.mm:

(WebKit::BuiltInPDFView::scrollbarsCanBeActive):

5:22 PM Changeset in webkit [128133] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/chromium

[chromium, android] Reloading a page with a different user agent can cause the page to be zoomed in
https://bugs.webkit.org/show_bug.cgi?id=90222

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2012-09-10
Reviewed by Adam Barth.

When reloading a page with an overridden URL, the page's scroll and zoom
state will be restored once the reload is complete. This is problematic
in situations when switching between mobile and desktop versions of the
same site because it will zoom back in on a random part of alternate page.
This CL just avoids that situation by resetting the zoom and scale whenever
this type of reload occurs.

Chromium half: https://chromiumcodereview.appspot.com/10889019

  • public/WebView.h:

(WebView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::resetScrollAndScaleState):
(WebKit):

  • src/WebViewImpl.h:

(WebViewImpl):

5:12 PM Changeset in webkit [128132] by jamesr@google.com
  • 16 edits in trunk/Source

Unreviewed, rolling out r127837.
http://trac.webkit.org/changeset/127837
https://bugs.webkit.org/show_bug.cgi?id=93898

Broke ScrollingCoordinator on chromium

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::frameViewHasSlowRepaintObjectsDidChange):
(WebCore::ScrollingCoordinator::frameViewFixedObjectsDidChange):
(WebCore::ScrollingCoordinator::frameViewRootLayerDidChange):
(WebCore::ScrollingCoordinator::hasNonLayerFixedObjects):
(WebCore::ScrollingCoordinator::updateShouldUpdateScrollLayerPositionOnMainThread):
(WebCore::ScrollingCoordinator::setForceMainThreadScrollLayerPositionUpdates):
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):

  • page/scrolling/ScrollingCoordinator.h:

(ScrollingCoordinator):

  • page/scrolling/ScrollingCoordinatorNone.cpp:

(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::scrollingPeformanceLoggingEnabled):

  • page/scrolling/ScrollingTree.h:
  • page/scrolling/ScrollingTreeNode.cpp:

(WebCore::ScrollingTreeNode::ScrollingTreeNode):
(WebCore::ScrollingTreeNode::update):

  • page/scrolling/ScrollingTreeNode.h:

(WebCore::ScrollingTreeNode::shouldUpdateScrollLayerPositionOnMainThread):
(ScrollingTreeNode):

  • page/scrolling/ScrollingTreeState.cpp:

(WebCore::ScrollingTreeState::ScrollingTreeState):
(WebCore::ScrollingTreeState::setShouldUpdateScrollLayerPositionOnMainThread):

  • page/scrolling/ScrollingTreeState.h:

(WebCore::ScrollingTreeState::shouldUpdateScrollLayerPositionOnMainThread):
(ScrollingTreeState):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):

  • page/scrolling/mac/ScrollingTreeMac.mm:

(WebCore::ScrollingTree::updateDebugRootLayer):

  • page/scrolling/mac/ScrollingTreeNodeMac.mm:

(WebCore::ScrollingTreeNodeMac::update):
(WebCore::ScrollingTreeNodeMac::scrollPosition):
(WebCore::ScrollingTreeNodeMac::setScrollPosition):
(WebCore::ScrollingTreeNodeMac::setScrollPositionWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeNodeMac::setScrollLayerPosition):

Source/WebKit2:

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updatePreferences):

5:07 PM Changeset in webkit [128131] by pdr@google.com
  • 3 edits
    3 adds in trunk

Source/WebCore: Remove unnecessary codepaths in SMILTimeContainer::updateAnimations
https://bugs.webkit.org/show_bug.cgi?id=96224

Reviewed by Nikolas Zimmermann.

This change removes two sources of unnecessary code in
SMILTimeContainer::updateAnimations:

1) After r117711 we now accumulate the result of multiple

animations into the first _contributing_ animation
element. As a result it is no longer necessary to
track both which elements are contributing AND which elements
we are storing results into. Both cases are now handled
together with resultsElements.

2) r32044 added a second sort of the animation elements

in order to process animateTransform last. This change
was added 4 years ago, before we correctly handled <use>
and the instance tree, and I think the extra sort is no
longer necessary. A test has been added to ensure this
is the case.

This change also does a minor cleanup of resultsElements. Previously,
we added animation elements to resultsElements and then removed them
if the animation element did not contribute. After this change, we
only add to resultsElements (no more add-then-remove).

Test: svg/animations/use-animate-transform-and-position.html

  • svg/animation/SMILTimeContainer.cpp:

(WebCore::SMILTimeContainer::sortByPriority):
(WebCore::SMILTimeContainer::updateAnimations):

LayoutTests: Remove unnecessary work in SMILTimeContainer::updateAnimations
https://bugs.webkit.org/show_bug.cgi?id=96224

Reviewed by Nikolas Zimmermann.

This change should have no functional differences but a test
is being added to show that. SMILTimeContainer::updateAnimations
contained a comment explaining why a animateTransform needed to be
processed last but that is no longer the case (as the test shows).

  • svg/animations/script-tests/use-animate-transform-and-position.js: Added.

(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(executeTest):

  • svg/animations/use-animate-transform-and-position-expected.txt: Added.
  • svg/animations/use-animate-transform-and-position.html: Added.
4:55 PM Changeset in webkit [128130] by ojan@chromium.org
  • 13 edits in trunk/Source/WebCore

Rename box-sizing applying methods to be more clear about just applying box-sizing.
https://bugs.webkit.org/show_bug.cgi?id=96319

Reviewed by Tony Chang.

This is strictly a rename. No logic or web-exposed changes.

  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::recalcColumn):

  • rendering/FixedTableLayout.cpp:

(WebCore::FixedTableLayout::calcWidthArray):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computePreferredLogicalWidths):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::adjustBorderBoxLogicalWidthForBoxSizing):
(WebCore::RenderBox::adjustBorderBoxLogicalHeightForBoxSizing):
(WebCore::RenderBox::adjustContentBoxLogicalWidthForBoxSizing):
(WebCore::RenderBox::adjustContentBoxLogicalHeightForBoxSizing):
(WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):
(WebCore::RenderBox::computeLogicalHeightUsing):
(WebCore::RenderBox::computeLogicalClientHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):
(WebCore::RenderBox::computePositionedLogicalWidthUsing):
(WebCore::RenderBox::computePositionedLogicalHeightUsing):

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::computePreferredLogicalWidths):

  • rendering/RenderFileUploadControl.cpp:

(WebCore::RenderFileUploadControl::computePreferredLogicalWidths):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
(WebCore::RenderFlexibleBox::computeMainAxisExtentForChild):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::computePreferredLogicalWidths):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::computePreferredLogicalWidths):

  • rendering/RenderSlider.cpp:

(WebCore::RenderSlider::computePreferredLogicalWidths):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::computePreferredLogicalWidths):

4:39 PM Changeset in webkit [128129] by jer.noble@apple.com
  • 35 edits
    3 deletes in trunk

Unreviewed; rolling out r128081.
http://trac.webkit.org/changeset/128081
https://bugs.webkit.org/show_bug.cgi?id=96134

New test http/tests/media/video-donottrack.html fails to run on Apple test bots.

Source/WebCore:

  • html/HTMLMediaElement.cpp:
  • html/HTMLMediaElement.h:

(HTMLMediaElement):

  • loader/FrameLoaderClient.h:
  • platform/graphics/MediaPlayer.h:

(MediaPlayer):

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL):

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:
  • WebView/WebDelegateImplementationCaching.h:

(WebFrameLoadDelegateImplementationCache):

  • WebView/WebDelegateImplementationCaching.mm:
  • WebView/WebView.mm:

(-[WebView _cacheFrameLoadDelegateImplementations]):

Source/WebKit2:

  • Shared/APIClientTraits.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:

(InjectedBundlePageLoaderClient):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

(WebFrameLoaderClient):

  • WebProcess/qt/QtBuiltinBundlePage.cpp:

(WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):

Tools:

  • DumpRenderTree/TestRunner.cpp:

(TestRunner::TestRunner):
(TestRunner::staticFunctions):

  • DumpRenderTree/TestRunner.h:

(TestRunner):

  • DumpRenderTree/mac/FrameLoadDelegate.mm:
  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::InjectedBundlePage):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:

(InjectedBundlePage):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::TestRunner):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

LayoutTests:

  • http/tests/media/resources/video-donottrack-check-donottrack.php: Removed.
  • http/tests/media/video-donottrack-expected.txt: Removed.
  • http/tests/media/video-donottrack.html: Removed.
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/Skipped:
4:26 PM Changeset in webkit [128128] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

Reduce the number of treeScope queries when matching rules.
https://bugs.webkit.org/show_bug.cgi?id=96315

Reviewed by Eric Seidel.

In the worst case, treeScope() requires a HashMap lookup, which could be slow. Since the value is always the same for the element,
we can just ask for it once.

No new tests, no change in behavior.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList): Moved the call to treeScope out of the loop.

4:23 PM Changeset in webkit [128127] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

[V8] V8PerIsolateData::m_toStringTemplate leaks memory
https://bugs.webkit.org/show_bug.cgi?id=96322

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Kentaro Hara.

We never call Dispose to balance the call to v8::Persistent::New. This
patch uses ScopedPersistent to call Dispose automatically.

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::toStringTemplate):

  • I've changed this function to return a new local handle in case anyone is trying to hold on to these handles during shutdown.
  • bindings/v8/V8PerIsolateData.h:

(V8PerIsolateData):

4:23 PM Changeset in webkit [128126] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

[V8] V8LazyEventListener::prepareListenerObject uses inefficient string operations
https://bugs.webkit.org/show_bug.cgi?id=96324

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Kentaro Hara.

Previously, this code called String::append several times, which
mallocs a new string buffer each time. This patch switches this code to
use operator+, which uses StringAppend to optimize these operations
down to a single malloc.

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

4:22 PM Changeset in webkit [128125] by abarth@webkit.org
  • 8 edits in trunk/Source

[V8] V8AuxiliaryContext used by IDB leaks memory
https://bugs.webkit.org/show_bug.cgi?id=96317

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Tony Chang.

Source/WebCore:

Before this patch, we leaked m_auxiliaryContext on V8PerIsolateData
because no one ever called Dispose to balance the call to
V8::Context::New. This patch uses ScopedPersistent to call Dispose
automatically.

Also, I've deleted the V8AuxiliaryContext because it just reinvents
V8::Context::Scope.

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::createIDBKeyFromSerializedValueAndKeyPath):
(WebCore::injectIDBKeyIntoSerializedValue):

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::ensureAuxiliaryContext):
(WebCore):

  • bindings/v8/V8PerIsolateData.h:

(V8PerIsolateData):

  • bindings/v8/V8Utilities.cpp:
  • bindings/v8/V8Utilities.h:

Source/WebKit/chromium:

Call the V8 APIs directly instead of using a helper class.

  • tests/IDBBindingUtilitiesTest.cpp:

(WebCore::TEST):

4:21 PM Changeset in webkit [128124] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

[V8] currentDocument doesn't need to handle the case where there is no v8::Context
https://bugs.webkit.org/show_bug.cgi?id=96312

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Eric Seidel.

This function is always called while V8 is on the stack. It doesn't
need to handle this impossible error condition.

  • bindings/v8/BindingState.cpp:

(WebCore::currentDocument):

4:21 PM Changeset in webkit [128123] by abarth@webkit.org
  • 8 edits in trunk/Source

[V8] Inline firstFrame and currentFrame into their unique callers
https://bugs.webkit.org/show_bug.cgi?id=96309

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Eric Seidel.

Source/WebCore:

These functions have only one caller. We'd prefer not to have more
callers (because there's usually no reason to indirect through the
Frame), so we should inline them into their one caller (which is the
Chromium WebKit API).

  • bindings/js/BindingState.h:

(WebCore):

  • bindings/v8/BindingState.cpp:
  • bindings/v8/BindingState.h:

(WebCore):

  • bindings/v8/ScriptController.cpp:
  • bindings/v8/ScriptController.h:

(ScriptController):

Source/WebKit/chromium:

This patch just lines these WebCore functions because we only call them
from here.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrame::frameForEnteredContext):
(WebKit::WebFrame::frameForCurrentContext):

4:13 PM Changeset in webkit [128122] by ggaren@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Try to fix the Windows (32-bit) build.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_tear_off_arguments):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_tear_off_arguments): Get operands 1 and 2, not 1 and 1. :(

Also took this opportunity to rename to indicate that these values are
not destinations anymore.

4:01 PM Changeset in webkit [128121] by fsamuel@chromium.org
  • 2 edits in trunk/LayoutTests

Mark gradient-with-scaled-ancestor.html as flaky

  • platform/chromium/TestExpectations:
3:39 PM Changeset in webkit [128120] by fsamuel@chromium.org
  • 2 edits in trunk/LayoutTests

Remove stray Changelog message.

Patch by Jon Lee <jonlee@apple.com> on 2012-09-10

3:37 PM WebKit Team edited by ahf@0x90.dk
Remove Nokia reference. (diff)
3:29 PM Changeset in webkit [128119] by jonlee@apple.com
  • 1 edit in trunk/LayoutTests/ChangeLog

Remove stray Changelog message.

3:24 PM Changeset in webkit [128118] by fsamuel@chromium.org
  • 2 edits in trunk/LayoutTests

Skip video-donottrack.html on Chromium

  • platform/chromium/TestExpectations:
3:22 PM Changeset in webkit [128117] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

TestExpectationsChecker._determine_port_from_expectations_path() does not support cascaded TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=96205

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10
Reviewed by Tony Chang.

_determine_port_from_expectations_path() was calling port.path_to_test_expectations_file()
internally, which means that it would support only 1 TestExpectations file per port. This
is an issue for ports such as EFL that support cascased TestExpectations (efl-wk2 -> efl
and efl-wk1 -> efl).

This patch makes _determine_port_from_expectations_path() call port.expectations_files()
instead so that all the ports TestExpectations are recognized. The ports are also
constructed twice, with "webkit_test_runner" option set to True and False so that we
retrieve the TestExpectations paths for both WebKit1 and WebKit2.

  • Scripts/webkitpy/style/checkers/test_expectations.py:

(TestExpectationsChecker._determine_port_from_expectations_path):

  • Scripts/webkitpy/style/checkers/test_expectations_unittest.py: Add corresponding unit test.

(TestExpectationsTestCase.test_determine_port_from_expectations_path):

3:21 PM Changeset in webkit [128116] by commit-queue@webkit.org
  • 8 edits
    6 adds in trunk

Implement canvas v5 line dash feature
https://bugs.webkit.org/show_bug.cgi?id=82560

Patch by Justin Novosad <junov@chromium.org> on 2012-09-10
Reviewed by Darin Adler.

Source/WebCore:

Adding new canvas 2d context API methods getLineDash and setLineDash,
and new attribute lineDashOffset. Implementation mostly based on
the existing webkitLineDash feature, with changes that reflect the
canvas v5 specification. This change is visible to all JS ports,
unlike webkitLineDash which is not exposed to V8. The new lineDash
and the legacy webkitLineDash features access the same rendering
context state. The JavasScriptCore binding layer was augmented to
support the sequence<float> IDL type.

Tests: fast/canvas/canvas-lineDash-invalid.html

fast/canvas/canvas-lineDash.html

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp:

(WebCore::JSCanvasRenderingContext2D::webkitLineDash):
(WebCore::JSCanvasRenderingContext2D::setWebkitLineDash):

  • bindings/js/JSDOMBinding.h:

Added template specialization on float to NativeValueTraits in order to
add support for the sequence<double> IDL type to JavaScriptCore.

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::getLineDash):
New 2D canvas API method, returns the current line dash array
(WebCore::lineDashSequenceIsValid):
Returns true if the line dash array contains only non-negative finite
numbers.
(WebCore::CanvasRenderingContext2D::setLineDash):
New 2D canvas API method, set the line dash array.
(WebCore::CanvasRenderingContext2D::setWebkitLineDash):
Legacy implementation, does not double the new line dash array if
it contains an odd number of elements. Just accepts it as is.
(WebCore::CanvasRenderingContext2D::lineDashOffset):
Attribute getter
(WebCore::CanvasRenderingContext2D::setLineDashOffset):
Attribute setter
(WebCore::CanvasRenderingContext2D::webkitLineDashOffset):
Alias for lineDashOffset
(WebCore::CanvasRenderingContext2D::setWebkitLineDashOffset):
Alias for setLineDashOffset
(WebCore::CanvasRenderingContext2D::applyLineDash):
Sends the line dash state to the GraphicsContext

  • html/canvas/CanvasRenderingContext2D.h:

(CanvasRenderingContext2D):
(State):

  • html/canvas/CanvasRenderingContext2D.idl:
  • platform/graphics/DashArray.h:

LayoutTests:

New layout tests for the canvas lineDash feature.
-Validate normal behavior of lineDash state change operations.
-Validate behavior when attempting invalid state changes.
-Validate rendering behavior.

  • fast/canvas/canvas-lineDash-expected.txt: Added.
  • fast/canvas/canvas-lineDash-invalid-expected.txt: Added.
  • fast/canvas/canvas-lineDash-invalid.html: Added.
  • fast/canvas/canvas-lineDash.html: Added.
  • fast/canvas/script-tests/canvas-lineDash-invalid.js: Added.

(resetLineDash):
(trySettingLineDash):
(trySettingLineDashWithNoArgs):
(trySettingLineDashOffset):

  • fast/canvas/script-tests/canvas-lineDash.js: Added.

(dataToArray):
(getPixel):
(pixelShouldBe):

3:18 PM Changeset in webkit [128115] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Unreviewed, rolling out r128109.
http://trac.webkit.org/changeset/128109
https://bugs.webkit.org/show_bug.cgi?id=96326

broke win and lion builds (Requested by kling on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-10

  • WebCore.exp.in:
  • dom/Element.cpp:

(WebCore::Element::createMutableAttributeData):

  • dom/ElementAttributeData.cpp:

(WebCore::immutableElementAttributeDataSize):
(WebCore::ElementAttributeData::createImmutable):
(WebCore::ElementAttributeData::ElementAttributeData):
(WebCore::ElementAttributeData::~ElementAttributeData):
(WebCore::ElementAttributeData::addAttribute):
(WebCore::ElementAttributeData::removeAttribute):
(WebCore::ElementAttributeData::reportMemoryUsage):
(WebCore::ElementAttributeData::cloneDataFrom):
(WebCore::ElementAttributeData::clearAttributes):

  • dom/ElementAttributeData.h:

(WebCore):
(WebCore::ElementAttributeData::create):
(ElementAttributeData):
(WebCore::ElementAttributeData::isMutable):
(WebCore::ElementAttributeData::makeMutable):
(WebCore::ElementAttributeData::length):
(WebCore::ElementAttributeData::attributeItem):

3:17 PM Changeset in webkit [128114] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

AccessibilityNodeObject* is not in Mac xcode file
https://bugs.webkit.org/show_bug.cgi?id=96327

Reviewed by Sam Weinig.

  • WebCore.xcodeproj/project.pbxproj:
3:12 PM Changeset in webkit [128113] by jonlee@apple.com
  • 19 edits in trunk

Source/WebCore: Update notifications to latest spec
https://bugs.webkit.org/show_bug.cgi?id=91726
<rdar://problem/11910451>

Reviewed by Alexey Proskuryakov.

Among the changes:

Addition of lang attribute
http://lists.w3.org/Archives/Public/public-web-notification/2012Jul/0025.html

Specification of icon URL is icon instead of iconURL
http://lists.w3.org/Archives/Public/public-web-notification/2012Jul/0012.html

Tests are not possible since at best they only verify exposure of the attributes, which isn't
terribly useful, and use of the attributes depend on the platform.

  • Modules/notifications/Notification.cpp:

(WebCore::Notification::create): Add support for reading lang, dir, and icon from option dictionary.

  • Modules/notifications/Notification.h:

(Notification): Make url() and setURL(), which are used for HTML notifications, only available with
ENABLE(LEGACY_NOTIFICATIONS).
(WebCore::Notification::setIconURL): Added so that it can be set from the option dictionary.
(WebCore::Notification::lang):
(WebCore::Notification::setLang):

  • Modules/notifications/Notification.idl: According to specification, dir is not exposed.

Source/WebKit/mac: Update notifications to latest spec
https://bugs.webkit.org/show_bug.cgi?id=91726
<rdar://problem/11910451>

Reviewed by Alexey Proskuryakov.

Expose lang and dir.

  • WebView/WebNotification.h:
  • WebView/WebNotification.mm:

(-[WebNotification lang]):
(-[WebNotification dir]):

Source/WebKit2: Update notifications to latest spec
https://bugs.webkit.org/show_bug.cgi?id=91726
<rdar://problem/11910451>

Reviewed by Alexey Proskuryakov.

Expose lang and dir.

  • UIProcess/API/C/WKNotification.cpp:

(WKNotificationCopyLang):
(WKNotificationCopyDir):

  • UIProcess/API/C/WKNotification.h:
  • UIProcess/Notifications/WebNotification.cpp:

(WebKit::WebNotification::WebNotification):

  • UIProcess/Notifications/WebNotification.h:

(WebKit::WebNotification::create):
(WebKit::WebNotification::lang):
(WebKit::WebNotification::dir):
(WebNotification):

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::show):

  • UIProcess/Notifications/WebNotificationManagerProxy.h:

(WebNotificationManagerProxy):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::showNotification):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::show):

LayoutTests: The options dictionary in Notification constructor should not accept event listeners
https://bugs.webkit.org/show_bug.cgi?id=95538
<rdar://problem/12213901>

Reviewed by Alexey Proskuryakov.

Make sure the onshow handler added in the options dictionary does not get called.

  • http/tests/notifications/events-in-dictionary-expected.txt: Added.
  • http/tests/notifications/events-in-dictionary.html: Added.
2:52 PM Changeset in webkit [128112] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebKit/mac

NSInvalidArgumentException in WebFrameLoaderClient::shouldSendDoNotTrackHTTPHeader()
https://bugs.webkit.org/show_bug.cgi?id=96320

Reviewed by Geoffrey Garen.

Client was being cached as the FrameLoaderClient, but requests were sent to the ResourceLoadClient.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::shouldSendDoNotTrackHTTPHeader): Send the request to the FrameLoadDelegate.

  • WebView/WebDelegateImplementationCaching.h:
  • WebView/WebDelegateImplementationCaching.mm:

(CallFrameLoadDelegateReturningBoolean): Added.

2:49 PM Changeset in webkit [128111] by ggaren@apple.com
  • 7 edits
    5 adds in trunk

DFG misses arguments tear-off for function.arguments if 'arguments' is used
https://bugs.webkit.org/show_bug.cgi?id=96227

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

We've decided not to allow function.arguments to alias the local
'arguments' object, or a local var or function named 'arguments'.
Aliasing complicates the implementation (cf, this bug) and can produce
surprising behavior for web programmers.

Eliminating the aliasing has the side-effect of fixing this bug.

The compatibilty story: function.arguments is deprecated, was never
specified, and throws an exception in strict mode, so we expect it to
disappear over time. Firefox does not alias to 'arguments'; Chrome
does, but not if you use eval or with; IE does; Safari did.

  • dfg/DFGByteCodeParser.cpp: Noticed a little cleanup while verifying

this code. Use the CodeBlock method for better encapsulation.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::retrieveArgumentsFromVMCode): Behavior change: don't
alias.

  • tests/mozilla/js1_4/Functions/function-001.js:

(TestFunction_4): Updated test expectations for changed behavior.

LayoutTests:

New test, and updated expectations.

  • fast/js/script-tests/function-dot-arguments.js:
  • fast/js/function-dot-arguments-expected.txt: Updated for new behavior.
  • fast/js/dfg-tear-off-function-dot-arguments.html:
  • fast/js/script-tests/dfg-tear-off-function-dot-arguments.js: Added. New test for bug cited here.
  • fast/js/function-dot-arguments-identity-expected.txt:
  • fast/js/function-dot-arguments-identity.html: Added. New test for new behavior.
2:47 PM Changeset in webkit [128110] by tony@chromium.org
  • 32 edits in trunk/Source/WebCore

Rename computeLogicalWidth to updateLogicalWidth
https://bugs.webkit.org/show_bug.cgi?id=96288

Reviewed by Ojan Vafai.

Also rename recomputeLogicalWidth to updateLogicalWidthAndColumnWidth.
Also rename RenderTableCell::updateLogicalWidth to RenderTableCell::setCellLogicalWidth.

No new tests, this is just a refactor.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateLogicalWidthAndColumnWidth):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::getClearDelta):

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

(WebCore::RenderBox::updateLogicalWidth):

  • rendering/RenderBox.h:

(RenderBox):
(WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::layout):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::updateLogicalWidth):

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

(WebCore::RenderGrid::layoutBlock):

  • rendering/RenderHTMLCanvas.cpp:

(WebCore::RenderHTMLCanvas::canvasSizeChanged):

  • rendering/RenderIFrame.cpp:

(WebCore::RenderIFrame::updateLogicalWidth):
(WebCore::RenderIFrame::layoutSeamlessly):
(WebCore::RenderIFrame::layout):

  • rendering/RenderIFrame.h:

(RenderIFrame):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageDimensionsChanged):

  • rendering/RenderMeter.cpp:

(WebCore::RenderMeter::updateLogicalWidth):

  • rendering/RenderMeter.h:

(RenderMeter):

  • rendering/RenderMultiColumnBlock.cpp:

(WebCore::RenderMultiColumnBlock::updateLogicalWidthAndColumnWidth):

  • rendering/RenderMultiColumnBlock.h:

(RenderMultiColumnBlock):

  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::updateLogicalWidth):

  • rendering/RenderMultiColumnSet.h:

(RenderMultiColumnSet):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::layout):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::updateLogicalWidth):
(WebCore::RenderTable::layout):

  • rendering/RenderTable.h:

(RenderTable):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::updateLogicalWidth):
(WebCore::RenderTableCell::setCellLogicalWidth):

  • rendering/RenderTableCell.h:

(RenderTableCell):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::setCellLogicalWidths):

  • rendering/RenderView.cpp:

(WebCore::RenderView::updateLogicalWidth):

  • rendering/RenderView.h:
  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::updateLogicalWidth):

  • rendering/svg/RenderSVGForeignObject.h:

(RenderSVGForeignObject):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::layout):

2:43 PM Changeset in webkit [128109] by kling@webkit.org
  • 5 edits in trunk/Source/WebCore

ElementAttributeData: Use subclasses to manage varying object layouts.
<http://webkit.org/b/94465>

Reviewed by Antti Koivisto.

Add two ElementAttributeData subclasses:

  • MutableElementAttributeData
  • ImmutableElementAttributeData

The ElementAttributeData::m_isMutable bit determines which subclass to cast to when accessing
the attribute storage. Added mutableAttributeVector() and immutableAttributeArray() helpers
to ElementAttributeData (with appropriate assertions.)

This patch removes one step of indirection in the mutable case, since the Vector<Attribute> is no
longer heap-allocated, but part of MutableElementAttributeData.

Added a WTF::deleteOwnedPtr(ElementAttributeData*) specialization so that the appropriate subclass
destructor is called for these objects.

  • WebCore.exp.in:
  • dom/Element.cpp:

(WebCore::Element::createMutableAttributeData):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::createImmutable):
(WebCore::ElementAttributeData::create):
(WebCore::ElementAttributeData::ElementAttributeData):
(WebCore::MutableElementAttributeData::MutableElementAttributeData):
(WebCore::ImmutableElementAttributeData::ImmutableElementAttributeData):
(WebCore::ImmutableElementAttributeData::~ImmutableElementAttributeData):
(WebCore::ElementAttributeData::makeMutableCopy):
(WebCore::ElementAttributeData::addAttribute):
(WebCore::ElementAttributeData::removeAttribute):
(WebCore::ElementAttributeData::reportMemoryUsage):
(WebCore::ElementAttributeData::cloneDataFrom):
(WebCore::ElementAttributeData::clearAttributes):

  • dom/ElementAttributeData.h:

(ElementAttributeData):
(WebCore::ElementAttributeData::isMutable):
(ImmutableElementAttributeData):
(MutableElementAttributeData):
(WebCore::MutableElementAttributeData::MutableElementAttributeData):
(WebCore::ElementAttributeData::immutableAttributeArray):
(WebCore::ElementAttributeData::mutableAttributeVector):
(WebCore::ElementAttributeData::length):
(WebCore::ElementAttributeData::attributeItem):

2:43 PM Changeset in webkit [128108] by ryuan.choi@samsung.com
  • 2 edits in trunk/Tools

[WTR] Generated source files should include config.h
https://bugs.webkit.org/show_bug.cgi?id=96254

Reviewed by Benjamin Poulain.

Current coding style has encouraged to include config.h at the first position,
But derived sources, generated by CodeGeneratorTestRunner.pm, don't follow
this rule.
Therefore, this patch added it.

  • WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:

(_generateImplementationFile):

2:41 PM Changeset in webkit [128107] by tony@chromium.org
  • 3 edits in trunk/Source/WebCore

Remove stray spaces found after :: in case statements
https://bugs.webkit.org/show_bug.cgi?id=96314

Reviewed by Ojan Vafai.

New contributors keep copy/pasting this style error and it makes me sad.
Also remove the extra spaces in MediaQueryEvaluator.cpp.

No new tests, this is just a style refactor.

  • css/CSSPrimitiveValue.cpp:

(WebCore::isValidCSSUnitTypeForDoubleConversion):
(WebCore::unitCategory):

  • css/MediaQueryEvaluator.cpp:

(WebCore::MediaQueryEvaluator::MediaQueryEvaluator):

2:18 PM Changeset in webkit [128106] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

Change -data-blackberry-webworks-context to -data-webworks-context
because not all webworks apps are blackberry apps.
https://bugs.webkit.org/show_bug.cgi?id=96297

Patch by Genevieve Mak <gmak@rim.com> on 2012-09-10
Reviewed by Antonio Gomes.

PR #193726
Rubber Stamped interally by Mike Fenton.

  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::webWorksContext):

2:07 PM Changeset in webkit [128105] by fsamuel@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed Rebaseline for Chromium Win XP.

  • platform/chromium-win-xp/fast/hidpi/gradient-with-scaled-ancestor-expected.png: Added.
1:59 PM Changeset in webkit [128104] by fsamuel@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Rebaselined for Chromium.

  • platform/chromium/http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt: Added.
1:55 PM Changeset in webkit [128103] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix.

  • UIProcess/WebContext.h: Added a default value for relatedPage argment - if you don't have one, null is fine.
1:54 PM Changeset in webkit [128102] by abarth@webkit.org
  • 6 edits in trunk/Source/WebCore

[V8] setNamedHiddenWindowReference doesn't need to be a special case
https://bugs.webkit.org/show_bug.cgi?id=96198

Reviewed by Nate Chapin.

Prior to this patch, the DOMWindow cached its properties on the outter
global object rather than on the Holder of the properties. (We cache
properties to prevent their DOM wrappers from being garbage collected
too early.) There doesn't seem to be any reason why DOMWindow need to
be special-cased in this regard. We can just cache the properities on
their Holders, as usual.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):

  • bindings/v8/V8DOMWrapper.cpp:
  • bindings/v8/V8DOMWrapper.h:

(V8DOMWrapper):

  • bindings/v8/custom/V8LocationCustom.cpp:
  • page/Location.idl:
    • Previously, Location had a custom toV8 function so that document.location would cache its wrapper in the same place as window.location. However, that's no longer necessary as the DOMWindow now holds its Document in a hidden property, which means the DOMWindow keeps the cached location property on Document alive anyway.
1:52 PM Changeset in webkit [128101] by ap@apple.com
  • 6 edits in trunk/Source/WebKit2

[WK2] Add an API to open a page in same process
https://bugs.webkit.org/show_bug.cgi?id=96306

Reviewed by Anders Carlsson.

The name "related" inspired by <http://wiki.whatwg.org/wiki/Links_to_Unrelated_Browsing_Contexts>.

  • UIProcess/API/mac/WKView.h: Added an API. It's unwieldy, but I blame WKBrowsingContextGroup, not the related view.
  • UIProcess/API/mac/WKViewPrivate.h: Matching SPI for clients that mostly use C APIs.
  • UIProcess/API/mac/WKView.mm: (-[WKView initWithFrame:processGroup:browsingContextGroup:]): Use new back-end signature. (-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]): Get page from WKView, and call back-end. (-[WKView initWithFrame:contextRef:pageGroupRef:]): Reimplement existing method by calling new, more powerful one. (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Just one change, pass relatedPage to the context.
  • UIProcess/WebContext.cpp: (WebKit::WebContext::createWebPage): If related page is not null, use its process.
  • UIProcess/WebContext.h: (WebContext): Updated createWebPage signature.
1:51 PM Changeset in webkit [128100] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

offlineasm has some impossible to implement, and unused, instructions
https://bugs.webkit.org/show_bug.cgi?id=96310

Reviewed by Mark Hahnenberg.

  • offlineasm/armv7.rb:
  • offlineasm/instructions.rb:
  • offlineasm/x86.rb:
1:33 PM Changeset in webkit [128099] by ojan@chromium.org
  • 2 edits in trunk/LayoutTests

Update the css3/filters test expectations to match the bots.
90+ of these tests never failed, so adding the whole css3/filters
directory was incorrect.

  • platform/chromium/TestExpectations:
1:31 PM Changeset in webkit [128098] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Silence a warning when running update-webkit-localizable-strings
https://bugs.webkit.org/show_bug.cgi?id=96307

Reviewed by John Sullivan.

Since both the blockedPluginByContentSecurityPolicyText and insecurePluginVersionText strings use exact the same wording,
use WEB_UI_STRING_KEY to indicate that they are different.

  • English.lproj/Localizable.strings:

Update the localizable strings file.

  • platform/LocalizedStrings.cpp:

(WebCore::blockedPluginByContentSecurityPolicyText):
(WebCore::insecurePluginVersionText):

1:27 PM Changeset in webkit [128097] by fsamuel@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed fix of webkit-lint for Chromium gardening

  • platform/chromium/TestExpectations:
1:23 PM Changeset in webkit [128096] by ggaren@apple.com
  • 20 edits in trunk/Source/JavaScriptCore

Refactored op_tear_off* to support activations that don't allocate space for 'arguments'
https://bugs.webkit.org/show_bug.cgi?id=96231

Reviewed by Gavin Barraclough.

This is a step toward smaller activations.

As a side-effect, this patch eliminates a load and branch from the hot path
of activation tear-off by moving it to the cold path of arguments tear-off. Our
optimizing assumptions are that activations are common and that reifying the
arguments object is less common.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/Opcode.h:

(JSC::padOpcodeName): Updated for new opcode lengths.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::addConstantValue): Added support for JSValue()
in the bytecode, which we use when we have 'arguments' but no activation.

(JSC::BytecodeGenerator::emitReturn): Always emit tear_off_arguments
if we've allocated the arguments registers. This allows tear_off_activation
not to worry about the arguments object anymore.

Also, pass the activation and arguments values directly to these opcodes
instead of requiring the opcodes to infer the values through special
registers. This gives us more flexibility to move or eliminate registers.

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGNode.h:

(Node): Updated for new opcode lengths.

  • dfg/DFGOperations.cpp: Activation tear-off doesn't worry about the

arguments object anymore. If 'arguments' is in use and reified, it's
responsible for aliasing back to the activation object in tear_off_arguments.

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

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

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile): Don't pass the arguments object to
activation tear-off; do pass the activation object to arguments tear-off.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute): Ditto.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_tear_off_activation):
(JSC::JIT::emit_op_tear_off_arguments):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_tear_off_activation):
(JSC::JIT::emit_op_tear_off_arguments):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm: Same change in a few more execution engines.
1:21 PM Changeset in webkit [128095] by abarth@webkit.org
  • 4 edits in trunk/Source/WebCore

[V8] V8HTMLDocument::write and friends should not indirect through Frame
https://bugs.webkit.org/show_bug.cgi?id=96289

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Eric Seidel.

There is no reason why document.write and friends need to indirect
through the Frame to find the active document. This patch makes these
functions work the same as the JSC versions.

  • bindings/v8/BindingState.cpp:
  • bindings/v8/BindingState.h:
    • This patch removes the last callers of activeFrame, so we can remove the function entirely.
  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::V8HTMLDocument::writeCallback):
(WebCore::V8HTMLDocument::writelnCallback):
(WebCore::V8HTMLDocument::openCallback):

1:20 PM Changeset in webkit [128094] by abarth@webkit.org
  • 5 edits in trunk/Source/WebCore

[V8] Constructors try to handle errors that cannot occur
https://bugs.webkit.org/show_bug.cgi?id=96304

Patch by Adam Barth <abarth@chromium.org> on 2012-09-10
Reviewed by Kentaro Hara.

There's no reason for constructors to indirect through the Frame. Now
that we can reliably get the Document from the v8::Context, we can just
grab it without worrying about handling error conditions related to not
being able to find the Document.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNamedConstructorCallback):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructorCallback):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallback):

  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp:

(WebCore::v8HTMLImageElementConstructorCallback):

1:09 PM Changeset in webkit [128093] by commit-queue@webkit.org
  • 7 edits in trunk

Source/WebKit/chromium: [chromium] Add unused GestureTapCancel
https://bugs.webkit.org/show_bug.cgi?id=96183

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-10
Reviewed by Adam Barth.

This adds a new 'tap cancel' gesture type. This is temporarily unused,
so that we can change chromium to start sending the gesture type
without breaking anything.

  • public/WebInputEvent.h:
  • src/PageWidgetDelegate.cpp:

(WebKit::PageWidgetDelegate::handleInputEvent):

  • src/WebInputEventConversion.cpp:

(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):

  • src/WebPopupMenuImpl.cpp:

(WebKit::WebPopupMenuImpl::handleInputEvent):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):

Tools: Add handling of new GestureTapCancel in DRT

https://bugs.webkit.org/show_bug.cgi?id=96183

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-10
Reviewed by Adam Barth.

  • DumpRenderTree/chromium/TestWebPlugin.cpp:

(TestWebPlugin::handleInputEvent):

12:55 PM Changeset in webkit [128092] by fsamuel@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] gradient-with-scaled-ancestor.html rebaseline
https://bugs.webkit.org/show_bug.cgi?id=96110

Patch by Alex Sakhartchouk <alexst@chromium.org> on 2012-09-10
Reviewed by Adrienne Walker.

Fixed a bug in the test, rebaselining the results at proper resolution.

  • platform/chromium-linux-x86/fast/hidpi/gradient-with-scaled-ancestor-expected.png: Removed.
  • platform/chromium-linux/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium-mac-snowleopard/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium-mac/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium-win-xp/fast/hidpi/gradient-with-scaled-ancestor-expected.png: Removed.
  • platform/chromium-win/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium/TestExpectations:
12:48 PM Changeset in webkit [128091] by Patrick Gansterer
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Use StringBuilder::appendNumber() instead of String::number()
https://bugs.webkit.org/show_bug.cgi?id=96236

Reviewed by Benjamin Poulain.

  • API/JSContextRef.cpp:

(JSContextCreateBacktrace):

12:13 PM Changeset in webkit [128090] by commit-queue@webkit.org
  • 6 edits
    2 deletes in trunk/LayoutTests

[chromium] gradient-with-scaled-ancestor.html rebaseline
https://bugs.webkit.org/show_bug.cgi?id=96110

Patch by Alex Sakhartchouk <alexst@chromium.org> on 2012-09-10
Reviewed by Adrienne Walker.

Fixed a bug in the test, rebaselining the results at proper resolution.

  • platform/chromium-linux-x86/fast/hidpi/gradient-with-scaled-ancestor-expected.png: Removed.
  • platform/chromium-linux/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium-mac-snowleopard/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium-mac/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium-win-xp/fast/hidpi/gradient-with-scaled-ancestor-expected.png: Removed.
  • platform/chromium-win/fast/hidpi/gradient-with-scaled-ancestor-expected.png:
  • platform/chromium/TestExpectations:
12:12 PM Changeset in webkit [128089] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: highlight of paint rectangles is broken
https://bugs.webkit.org/show_bug.cgi?id=96276

Reviewed by Vsevolod Vlasov.

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::drawRectHighlight): Fix JS method name to match the one in InspectorOverlayPage.html

12:08 PM Changeset in webkit [128088] by beidson@apple.com
  • 10 edits
    2 adds in trunk

Javascript in foreground tabs should not wait synchronously for plug-ins to load
<rdar://problem/12067415> and https://bugs.webkit.org/show_bug.cgi?id=96167

Reviewed by Geoff Garen.

Source/WebKit2:

Synchronously waiting for initialization to complete when javascript accesses the plug-in script object severely
reduces the effectiveness of having an asynchronous NPP_New.

Such as with background tabs that have never been viewed, we already have cases where JS calls into the plug-in
element fail because we haven't bothered to initialize the plug-in.

We get a huge win by expanding that to foreground tabs that simply haven't finished initializing their plug-ins.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::scriptObject): If initialization is not complete just return 0 - They can get at the script object later.

Remove the notion of "wait for asynchronous initialization" altogether:

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:

(NetscapePlugin):

  • WebProcess/Plugins/PDF/BuiltInPDFView.h:

(BuiltInPDFView):

  • WebProcess/Plugins/Plugin.h:

(Plugin):

  • WebProcess/Plugins/PluginProxy.cpp:
  • WebProcess/Plugins/PluginProxy.h:

(PluginProxy):

Tools:

Enhance the "Slow NPP_New" plug-in to also be able to return properties to javascript.

  • DumpRenderTree/TestNetscapePlugIn/Tests/SlowNPPNew.cpp:

(PluginObject):
(SlowNPPNew::PluginObject::PluginObject):
(SlowNPPNew::PluginObject::~PluginObject):
(SlowNPPNew::PluginObject::hasProperty):
(SlowNPPNew::PluginObject::getProperty):
(SlowNPPNew::NPP_GetValue):
(SlowNPPNew):

LayoutTests:

  • platform/mac-wk2/plugins/script-object-access-fails-during-slow-initialization-expected.txt: Added.
  • platform/mac-wk2/plugins/script-object-access-fails-during-slow-initialization.html: Added.
12:07 PM Changeset in webkit [128087] by pilgrim@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Define new setSharedWorkerRepository function in preparation for removing WebKitPlatformSupport::sharedWorkerRepository()
https://bugs.webkit.org/show_bug.cgi?id=95861

Reviewed by Adam Barth.

Followup patch to Chromium will call this new function, then we can remove all references to the legacy function on WebKitPlatformSupport.

  • public/WebSharedWorkerRepository.h:

(WebKit):

  • src/SharedWorkerRepository.cpp:

(WebKit):
(WebKit::setSharedWorkerRepository):
(WebKit::sharedWorkerRepository):
(WebCore::SharedWorkerRepository::isAvailable):
(WebCore::SharedWorkerRepository::connect):
(WebCore::SharedWorkerRepository::documentDetached):
(WebCore::SharedWorkerRepository::hasSharedWorkers):

11:50 AM Changeset in webkit [128086] by timothy_horton@apple.com
  • 3 edits in trunk/Tools

WKTR often reports an unresponsive WebProcess on Mac bots
https://bugs.webkit.org/show_bug.cgi?id=95906

Reviewed by Dan Bernstein.

Attempt to work around resource contention issues by increasing the NRWT
timeout when running against WKTR, as well as WKTR's own WebProcess timeout.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.default_timeout_ms): Default timeout when using WKTR -> 80 seconds.

  • WebKitTestRunner/TestController.cpp:

(WTR): LongTimeout (used when waiting for WebProcess to finish) -> 60 seconds.

11:49 AM Changeset in webkit [128085] by commit-queue@webkit.org
  • 9 edits in trunk/Source

webkit build for 64-bit Mac chromium
https://bugs.webkit.org/show_bug.cgi?id=95977

Patch by Catalin Badea <badea@adobe.com> on 2012-09-10
Reviewed by Eric Seidel.

Source/WebCore:

Use the correct definitions for NS types in order to fix build issues for 64-bit chromium on mac.

  • platform/chromium/PlatformSupport.h:

Remove a deprecated Carbon typedef.

  • platform/graphics/FloatPoint.h:

(FloatPoint):

  • platform/graphics/FloatRect.h:

(FloatRect):

  • platform/graphics/FloatSize.h:

(FloatSize):

  • platform/graphics/IntRect.h:

(IntRect):

Source/WebKit/chromium:

Ensure header completeness and use the correct include order. This fixes a compilation issues noticeable when building chromium for 64-bit Mac.

  • public/mac/WebSubstringUtil.h:
  • src/mac/WebSubstringUtil.mm:
11:41 AM Changeset in webkit [128084] by mhahnenberg@apple.com
  • 23 edits
    1 add in trunk/Source/JavaScriptCore

Combine MarkStack and SlotVisitor into single class
https://bugs.webkit.org/show_bug.cgi?id=96043

Reviewed by Geoff Garen.

Move all of MarkStack into SlotVisitor. The remaining stuff in MarkStack.cpp actually has to do
with MarkStack management/allocation. Cleaned up a few of the header files while I was at it.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CodeBlock.cpp:
  • dfg/DFGCommon.h:
  • heap/GCThreadSharedData.cpp:
  • heap/GCThreadSharedData.h:

(GCThreadSharedData):

  • heap/HeapRootVisitor.h:
  • heap/MarkStack.cpp:

(JSC):

  • heap/MarkStack.h:

(JSC):
(MarkStackSegment):
(JSC::MarkStackSegment::data):
(JSC::MarkStackSegment::capacityFromSize):
(JSC::MarkStackSegment::sizeFromCapacity):
(MarkStackSegmentAllocator):
(MarkStackArray):

  • heap/MarkStackInlineMethods.h:

(JSC::MarkStackArray::postIncTop):
(JSC):
(JSC::MarkStackArray::preDecTop):
(JSC::MarkStackArray::setTopForFullSegment):
(JSC::MarkStackArray::setTopForEmptySegment):
(JSC::MarkStackArray::top):
(JSC::MarkStackArray::validatePrevious):
(JSC::MarkStackArray::append):
(JSC::MarkStackArray::canRemoveLast):
(JSC::MarkStackArray::removeLast):
(JSC::MarkStackArray::isEmpty):
(JSC::MarkStackArray::size):

  • heap/SlotVisitor.cpp: Added.

(JSC):
(JSC::SlotVisitor::SlotVisitor):
(JSC::SlotVisitor::~SlotVisitor):
(JSC::SlotVisitor::setup):
(JSC::SlotVisitor::reset):
(JSC::SlotVisitor::append):
(JSC::visitChildren):
(JSC::SlotVisitor::donateKnownParallel):
(JSC::SlotVisitor::drain):
(JSC::SlotVisitor::drainFromShared):
(JSC::SlotVisitor::mergeOpaqueRoots):
(JSC::SlotVisitor::startCopying):
(JSC::SlotVisitor::allocateNewSpaceSlow):
(JSC::SlotVisitor::allocateNewSpaceOrPin):
(JSC::JSString::tryHashConstLock):
(JSC::JSString::releaseHashConstLock):
(JSC::JSString::shouldTryHashConst):
(JSC::SlotVisitor::internalAppend):
(JSC::SlotVisitor::copyAndAppend):
(JSC::SlotVisitor::doneCopying):
(JSC::SlotVisitor::harvestWeakReferences):
(JSC::SlotVisitor::finalizeUnconditionalFinalizers):
(JSC::SlotVisitor::validate):

  • heap/SlotVisitor.h:

(JSC):
(SlotVisitor):
(JSC::SlotVisitor::sharedData):
(JSC::SlotVisitor::isEmpty):
(JSC::SlotVisitor::visitCount):
(JSC::SlotVisitor::resetChildCount):
(JSC::SlotVisitor::childCount):
(JSC::SlotVisitor::incrementChildCount):
(ParallelModeEnabler):
(JSC::ParallelModeEnabler::ParallelModeEnabler):
(JSC::ParallelModeEnabler::~ParallelModeEnabler):

  • heap/SlotVisitorInlineMethods.h:

(JSC::SlotVisitor::append):
(JSC):
(JSC::SlotVisitor::appendUnbarrieredPointer):
(JSC::SlotVisitor::appendUnbarrieredValue):
(JSC::SlotVisitor::internalAppend):
(JSC::SlotVisitor::addWeakReferenceHarvester):
(JSC::SlotVisitor::addUnconditionalFinalizer):
(JSC::SlotVisitor::addOpaqueRoot):
(JSC::SlotVisitor::containsOpaqueRoot):
(JSC::SlotVisitor::opaqueRootCount):
(JSC::SlotVisitor::mergeOpaqueRootsIfNecessary):
(JSC::SlotVisitor::mergeOpaqueRootsIfProfitable):
(JSC::SlotVisitor::donate):
(JSC::SlotVisitor::donateAndDrain):

  • jit/JITWriteBarrier.h:

(JSC::SlotVisitor::append):

  • jit/JumpReplacementWatchpoint.cpp:
  • runtime/JSCell.h:
  • runtime/Structure.h:

(JSC::SlotVisitor::internalAppend):

  • runtime/WriteBarrier.h:

(JSC):
(JSC::SlotVisitor::append):
(JSC::SlotVisitor::appendValues):

  • yarr/YarrJIT.cpp:
11:24 AM Changeset in webkit [128083] by commit-queue@webkit.org
  • 10 edits
    6 adds in trunk/Source/WebCore

[CSS Exlusions] add support for the basic shapes
https://bugs.webkit.org/show_bug.cgi?id=95490

Patch by Hans Muller <hmuller@adobe.com> on 2012-09-10
Reviewed by David Hyatt.

Initial commit of a subset of the ExclusionShape classes.

This set of classes enables the exclusions layout code to determine how to break up a line into segments
that will fit within or around a shape, given the Y coordinates of the line's top edge and bottom edges.
The ExclusionShape class represents BasicShapes whose coordinates have been resolved to actual values. It
provides a pair of methods, getInsideIntervals() and getOutsideIntervals(), that return the line segments'
start and end X coordinates, and a method that computes the shape's bounding box. The line segments'
coordinates are represented by a Vector of ExclusionIntervals. ExclusionInterval is just a pair
of X coordinates.

The other classes, ExclusionRectangle (and TBD ExclusionPolygon et al), are internal to the
ExclusionShape implementation.

This is the initial version of the ExclusionShapes code and it's only being used to the limited extent WebKit
currently supports shape-inside exclusions. It will be extended to support computing a minimal
line segment's "first layout location" and other improvements, in tandem with the exclusions layout code.

No new tests have been added since this code just replaces a provisional implementation stub.

More information about the algorithms used by the ExclusionShapes classes can be found here: http://hansmuller-webkit.blogspot.com.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/ExclusionInterval.cpp: Added.

(WebCore):
(WebCore::IntervalX1Comparator::operator()):
Compare x1 ExclusionInterval fields.
(WebCore::ExclusionInterval::intersect):
Compute the intersection of this interval with another interval. Unlike merge/subtract,
the result is always a single interval.
(WebCore::sortExclusionIntervals):
Sort a vector of intervals by their x1 (start) field.
(WebCore::mergeExclusionIntervals):
Union of two vectors of intervals.
(WebCore::intersectExclusionIntervals):
Intersecion of two vectors of intervals.
(WebCore::subtractExclusionIntervals):
Difference of two vectors of intervals.

  • rendering/ExclusionInterval.h: Added.

Represents the actual start and end coordinates of a horizontal line segment.
(WebCore):
(ExclusionInterval):
(WebCore::ExclusionInterval::ExclusionInterval):

  • rendering/ExclusionRectangle.cpp: Added.

(WebCore):
(WebCore::ellipseXIntercept):
(WebCore::ExclusionRectangle::getOutsideIntervals):
(WebCore::ExclusionRectangle::getInsideIntervals):

  • rendering/ExclusionRectangle.h: Added.

A subclass of ExclusionShape used to represent rounded rectangles, circles, and ellipses.
(WebCore):
(ExclusionRectangle)
(WebCore::ExclusionRectangle::ExclusionRectangle):
(WebCore::ExclusionRectangle::shapeBoundingBox):

  • rendering/ExclusionShape.cpp: Added.

(WebCore):
(WebCore::createExclusionRectangle):
(WebCore::createExclusionCircle):
(WebCore::createExclusionEllipse):
(WebCore::Exclusionhape::createExclusionShape):
Creates an ExclusionShape given a BasicShape and the width/height of a border box. Currently rounded
rectangles, circles, and ellipses are supported. Support for polygons will be included in the
next patch.

  • rendering/ExclusionShape.h: Added.

The rest of the exclusions implementation will only depend on the definitions included by this file: ExclusionShape,
and ExclusionInterval. ExclusionShape subclasses define shape-specific implementations of the methods that compute the
horizontal intervals that fit within or around a specific shape, a shape's bounding box, and - in future
revisions - other operations required by the exclusions implementation, like computing the first possible
layout location within a shape. ExclusionShapes are created for BasicShape objects as needed, using the
createExclusionShape() method.
(WebCore):
(ExclusionShape):
(WebCore::ExclusionShape::~ExclusionShape):

  • rendering/WrapShapeInfo.cpp:

(WebCore::WrapShapeInfo::computeShapeSize):
Create an ExclusionShape for the RenderBlock's BasicShape.
(WebCore::WrapShapeInfo::computeSegmentsForLine):
Use ExclusionShape::getInsideIntervals() to compute the shape-inside intervals within which a line will fit.

  • rendering/WrapShapeInfo.h:

(WebCore::WrapShapeInfo::shapeTop):
Removed - no longer used.
(WrapShapeInfo):
(WebCore::WrapShapeInfo::lineState):
Use the ExclusionShape's bounding box to compute lineState.

11:22 AM Changeset in webkit [128082] by enne@google.com
  • 5 edits in trunk/Source

[chromium] Fix deadlock between WebMediaPlayerClientImpl dtor and PutCurrentFrame
https://bugs.webkit.org/show_bug.cgi?id=96010

Reviewed by James Robinson.

Source/Platform:

Add some additional clarifying comments.

  • chromium/public/WebVideoFrameProvider.h:

(Client):
(WebVideoFrameProvider):

Source/WebKit/chromium:

The key fix here is that the destructor no longer has a mutex.
The m_compositingMutex was supposedly protecting races between
~WebMediaPlayerClientImpl and setVideoFrameProviderClient. The
former is only called from the main thread and the latter is called
from the compositor thread only when the main thread is blocked (and
it already asserts that this is the case).

In addition, the m_providerMutex in CCVideoLayerImpl prevents the
destruction of WebMediaPlayerClientImpl, thus keeping the frame
acquired via getCurrentFrame alive until putCurrentFrame is called.
These functions are only called by the client, and comments are added
to the interface to better document this.

To prevent a race between load() and getCurrentFrame/putCurrentFrame
(which are called from different threads) a new m_webMediaPlayerMutex
to replace part of what the old m_compositingMutex was doing.

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::~WebMediaPlayerClientImpl):
(WebKit::WebMediaPlayerClientImpl::load):
(WebKit::WebMediaPlayerClientImpl::loadInternal):
(WebKit::WebMediaPlayerClientImpl::setVideoFrameProviderClient):
(WebKit::WebMediaPlayerClientImpl::getCurrentFrame):
(WebKit::WebMediaPlayerClientImpl::putCurrentFrame):

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

11:11 AM Changeset in webkit [128081] by jer.noble@apple.com
  • 35 edits
    3 adds in trunk

<audio> and <video> should send Do Not Track when appropriate
https://bugs.webkit.org/show_bug.cgi?id=96134

Reviewed by Eric Carlson.

Source/WebCore:

Add a FrameLoaderClient function to determine whether the DNT header should be sent,
and plumb that new function down into the MediaPlayerPrivateAVFoundationObjC class.

Test: http/tests/media/video-donottrack.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerShouldSendDoNotTrackHTTPHeader):

Pass the question on through to the FrameLoaderClient.

  • html/HTMLMediaElement.h:
  • loader/FrameLoaderClient.h:

(WebCore::FrameLoaderClient::shouldSendDoNotTrackHTTPHeader):

Call through to the implementation in WebKit or WebKit2.

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerShouldSendDoNotTrackHTTPHeader):

Pass the question on to the HTMLMediaElement.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL):

If we should send the DNT header, add it to the header options array
when creating the AVAsset.

Source/WebKit/mac:

Add support for the shouldSendDoNotTrackHTTPHeader by passing the request
on to the WebFrameLoadDelegate.

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::shouldSendDoNotTrackHeader):

Pass the question on to the WebFrameLoadDelegate.

  • WebView/WebDelegateImplementationCaching.h:

(WebFrameLoadDelegateImplementationCache):

Add an entry for the delegate's webViewShouldSendDoNotTrackHeader method.

  • WebView/WebDelegateImplementationCaching.mm:

(CallResourceLoadDelegateReturningBoolean): Added a 0-parameter overloaded function.

  • WebView/WebView.mm:

(-[WebView _cacheFrameLoadDelegateImplementations]): initialize the

cached value for shouldSendDoNotTrackHeaderFunc.

Source/WebKit2:

Add support for the shouldSendDoNotTrackHTTPHeader by passing the request
on to the WebFrameLoadDelegate.

  • Shared/APIClientTraits.cpp: Increment the interfaceSizes for

WKBundlePageLoaderClient by the value of the new functions.

  • Shared/APIClientTraits.h: Ditto.
  • WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add a new API to

WKBundlePageLoaderClient and bump the version number.

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:

(WebKit::InjectedBundlePageLoaderClient::shouldSendDoNotTrackHTTPHeader):

Pass the question on to the client.

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::shouldSendDoNotTrackHTTPHeader):

Pass the question on to the bundle.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
  • WebProcess/qt/QtBuiltinBundlePage.cpp:

(WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):

Add an entry for the new function in the Qt loader client.

Tools:

Add a testRunner JS API for calling setShouldSendDoNotTrackHTTPHeader to DRT and
WTR. Add FrameLoaderClient client methods for retrieving that value.

  • DumpRenderTree/TestRunner.cpp:

(setShouldSendDoNotTrackHTTPHeaderCallback): Pass through to the TestRunner.
(TestRunner::staticFunctions): Add the setShouldSendDoNotTrackHTTPHeader function.

  • DumpRenderTree/TestRunner.h:

(TestRunner::setShouldSendDoNotTrackHTTPHeader): Simple setter.
(TestRunner::shouldSendDoNotTrackHTTPHeader): Simple getter.

  • DumpRenderTree/mac/FrameLoadDelegate.mm:

(-[FrameLoadDelegate webViewShouldSendDoNotTrackHTTPHeader:]):

Pass the question on to the TestRunner.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::InjectedBundlePage):

Add the setShouldSendDoNotTrackHTTPHeader client function.

(WTR::InjectedBundlePage::shouldSendDoNotTrackHTTPHeader):

Pass the question on to the TestRunner.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:
  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(WTR::TestRunner::shouldSendDoNotTrackHTTPHeader): Simple getter.
(WTR::TestRunner::setShouldSendDoNotTrackHTTPHeader): Simple Setter.

LayoutTests:

Add a new HTTP test ensuring the DNT header is passed correctly during video tests.

  • http/tests/media/resources/video-donottrack-check-donottrack.php: Added.
  • http/tests/media/video-donottrack-expected.txt: Added.
  • http/tests/media/video-donottrack.html: Added.

Skip the new tests on platforms which do not support it:

  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/Skipped:
11:08 AM Changeset in webkit [128080] by jonlee@apple.com
  • 3 edits
    2 adds in trunk

The options dictionary in Notification constructor should not accept event listeners
https://bugs.webkit.org/show_bug.cgi?id=95538
<rdar://problem/12213901>

Reviewed by Alexey Proskuryakov.

Source/WebCore:

The latest spec only allows setting the event listeners after the notification has been created.

Test: http/tests/notifications/events-in-dictionary.html

  • Modules/notifications/Notification.cpp:

(WebCore::Notification::create): Do not look for the event handlers in the options dictionary.

LayoutTests:

Make sure the onshow handler added in the options dictionary does not get called.

  • http/tests/notifications/events-in-dictionary-expected.txt: Added.
  • http/tests/notifications/events-in-dictionary.html: Added.
11:06 AM Changeset in webkit [128079] by jonlee@apple.com
  • 1 edit
    2 adds
    2 deletes in trunk/LayoutTests

[Tests] Move fast/notifications/notifications-double-show.html to http/tests/notifications
https://bugs.webkit.org/show_bug.cgi?id=95537
<rdar://problem/12213860>

Reviewed by Alexey Proskuryakov.

Calling show() multiple times should only call the ondisplay event handler once.

  • fast/notifications/notifications-double-show-expected.txt: Removed.
  • fast/notifications/notifications-double-show.html: Removed.
  • http/tests/notifications/legacy/double-show-expected.txt: Added.
  • http/tests/notifications/legacy/double-show.html: Added.
10:42 AM Changeset in webkit [128078] by robert@webkit.org
  • 7 edits
    2 adds in trunk

CSS 2.1 failure: content-counter-010.htm fails
https://bugs.webkit.org/show_bug.cgi?id=81447

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Test: fast/css/content-counter-010.htm

Per http://lists.w3.org/Archives/Public/public-css-testsuite/2010Nov/0064.html, the correct rendering of
7000 to 7999 in Armenian changed in Nov 2010. Update implementation to match the revised spec.

  • rendering/RenderListMarker.cpp:

(WebCore::toArmenianUnder10000):

LayoutTests:

  • fast/css/content-counter-010-expected.html: Added.
  • fast/css/content-counter-010.htm: Added. Note that <meta http-equiv="Content-Type" content="text/html; charset=utf-8" was added to the suite test to allow it to render correctly from a file:/ url.
  • fast/lists/w3-css3-lower-armenian-expected.txt:
  • fast/lists/w3-css3-lower-armenian.html:
  • fast/lists/w3-css3-upper-armenian-expected.txt:
  • fast/lists/w3-css3-upper-armenian.html: Amended tests to conform to revised specification for numbers between 7000 and 7999.
10:26 AM Changeset in webkit [128077] by ojan@chromium.org
  • 4 edits in trunk/Tools

Make EFL bots work on the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=96164

Reviewed by Tony Chang.

Also, update outdated unittests that had started failing.

  • TestResultServer/static-dashboards/builders.js:

(isWebkitTestRunner):

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(nonChromiumPlatform):

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

(test):

10:21 AM WebKitGTK/1.10.x edited by jdiggs@igalia.com
(diff)
10:20 AM Changeset in webkit [128076] by commit-queue@webkit.org
  • 4 edits in trunk

Font value should be parsed as a individual property
https://bugs.webkit.org/show_bug.cgi?id=96271

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-09-10
Reviewed by Eric Seidel.

Source/WebCore:

Parsing the font value as an individual CSS property instead of a style
body should make it significantly more effective and will not
validate something like ctx.font = "25px serif; background: green".

Updated canvas/philip/tests/2d.text.font.parse.invalid.html to cover
this use case.

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::setFont):

LayoutTests:

Updated test to the latest W3C approved version. It adds a test
that verifies this fix.

  • canvas/philip/tests/2d.text.font.parse.invalid.html:
10:15 AM Changeset in webkit [128075] by commit-queue@webkit.org
  • 5 edits
    7 adds in trunk

[Chromium] Handle smaller sizes of media elements in media controls.
https://bugs.webkit.org/show_bug.cgi?id=89344

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-09-10
Reviewed by Eric Carlson.

The redesign of the Chrome video controls calls for successive removal of individual
elements in the Chrome video and audio controls as the element becomes smaller in width.
It also requires decreasing padding on the enclosure element of videos.

Source/WebCore:

This patch introduces a layout() function into the MediaControlRootElementChromium to
react to any changes of the media controls width and appropriately hide/show the
interactive elements and apply the correct padding on video elements.

Tests: platform/chromium/media/controls-audio-sizes.html

platform/chromium/media/controls-video-sizes-padding.html
platform/chromium/media/controls-video-sizes.html

  • html/shadow/MediaControlRootElementChromium.cpp:

(WebCore):
(RenderMediaControlPanelEnclosureElement):
Introduce a renderer for the MediaControlPanelEnclosureElement in which to deal with the layout changes.
Following the pattern in MediaControlElements.cpp .
(WebCore::RenderMediaControlPanelEnclosureElement::RenderMediaControlPanelEnclosureElement):
Definition of the new RenderMediaControlPanelEnclosureElement class.
(WebCore::RenderMediaControlPanelEnclosureElement::layout):
Definition of the layout() function for the renderer. This does most of the actual work.
(WebCore::MediaControlPanelEnclosureElement::createRenderer):
Create the renderer for the MediaControlPanelEnclosureElement.
(WebCore::MediaControlPanelEnclosureElement::updatePadding):
Update padding as part of the MediaControlPanelEnclosureElement functions.
(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
Add a class property to store whether the duration and current time display are hidden.
(WebCore::MediaControlRootElementChromium::reset):
Include the hiding/showing of the timeline into the updateTimeDisplay() function to reduce code duplication.
(WebCore::MediaControlRootElementChromium::playbackStarted):
Include the hiding/showing of the timeline and time display into the updateTimeDisplay() function
to reduce code duplication.
(WebCore::MediaControlRootElementChromium::playbackProgressed):
Include the hiding/showing of the timeline into the updateTimeDisplay() function to reduce code duplication.
(WebCore::MediaControlRootElementChromium::playbackStopped):
Include the hiding/showing of the timeline into the updateTimeDisplay() function to reduce code duplication.
(WebCore::MediaControlRootElementChromium::updateTimeDisplay):
Only show time display if not hidden. Add timeline update here to reduce code duplication/
(WebCore::MediaControlRootElementChromium::hideVolumeSlider):
New function to allow layout() function to hide the volume slider.
(WebCore::MediaControlRootElementChromium::showTimeDisplay):
New function to allow layout() function to show the time display.
(WebCore::MediaControlRootElementChromium::hideTimeDisplay):
New function to allow layout() function to hide the time display.
(WebCore::MediaControlRootElementChromium::showMuteButton):
New function to allow layout() function to show the mute button.
(WebCore::MediaControlRootElementChromium::hideMuteButton):
New function to allow layout() function to hide the mute button.
(WebCore::MediaControlRootElementChromium::showFullscreenButton):
New function to allow layout() function to show the fullscreen button.
(WebCore::MediaControlRootElementChromium::hideFullscreenButton):
New function to allow layout() function to hide the fullscreen button.
(WebCore::MediaControlRootElementChromium::showTimeline):
New function to allow layout() function to show the timeline.
(WebCore::MediaControlRootElementChromium::hideTimeline):
New function to allow layout() function to hide the timeline.

  • html/shadow/MediaControlRootElementChromium.h:

(MediaControlPanelEnclosureElement):
Add a createRender() and a updatePadding() function to the MediaControlPanelEnclosureElement class.
(MediaControlRootElementChromium):
Add hide/show functions for volume slider, time display, mute button, fullscreen button and timeline.
Add a class property to store whether the duration and current time display are hidden.

LayoutTests:

These platform-specific tests check if the correct interactive elements are shown for
different video and audio element widths and the correct padding is applied for videos.

  • platform/chromium/TestExpectations: Mark failing tests for later rebaseline.
  • platform/chromium/media/controls-audio-sizes-expected.txt: Added.
  • platform/chromium/media/controls-audio-sizes.html: Added. Tests if the correct elements are shown for audio elements.
  • platform/chromium/media/controls-video-sizes-expected.txt: Added.
  • platform/chromium/media/controls-video-sizes.html: Added.
  • platform/chromium-mac/platform/chromium/media/controls-video-sizes-expected.png: Added. Tests if the correct elements are shown for video elements.
  • platform/chromium/media/controls-video-sizes-padding-expected.txt: Added.
  • platform/chromium/media/controls-video-sizes-padding.html: Added. Tests if the correct padding is applied to the enclosure of the video controls.
10:12 AM Changeset in webkit [128074] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK][a11y] editing/pasteboard/paste-blockquote-into-blockquote-4.html crashes
https://bugs.webkit.org/show_bug.cgi?id=96199

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-10
Reviewed by Martin Robinson.

Added sanity check to correct erroneous assumption that there will
always be a child object.

No new tests as the bug crashes two existing Layout Tests which should
no longer crash as a result of this fix.

  • accessibility/gtk/AccessibilityObjectAtk.cpp:

(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):

10:05 AM Changeset in webkit [128073] by tony@chromium.org
  • 4 edits in trunk/LayoutTests

fast/canvas/webgl/shader-precision-format.html is flaky in debug
https://bugs.webkit.org/show_bug.cgi?id=84065

Reviewed by James Robinson.

It looks like we need to use waitUntilDone since we're adding a script
tag. Some tests have "PASS successfullyParsed is true" and some don't.

  • fast/canvas/webgl/shader-precision-format-expected.txt: Add end output.
  • fast/canvas/webgl/shader-precision-format.html: Use initNonKhronosFramework(true).
10:01 AM Changeset in webkit [128072] by dmazzoni@google.com
  • 3 edits in trunk/LayoutTests

REGRESSION (r127936): Multiple accessibility tests failing on Lion
https://bugs.webkit.org/show_bug.cgi?id=96173

Reviewed by Chris Fleizach.

This test (update-children-when-aria-role-changes.html) assumes that
an element with an aria-label is ignored, which worked before, but it's
not ignored anymore after r127936. One of the comments in
AccessibilityRenderObject.cpp says: "if this element has aria attributes on it,
it should not be ignored," so I think the test should be updated to not use
aria-label on an element we want to be ignored.

  • platform/mac/Skipped:
  • platform/mac/accessibility/update-children-when-aria-role-changes.html:
9:59 AM Changeset in webkit [128071] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[EFL] JIT memory usage is not retrieved
https://bugs.webkit.org/show_bug.cgi?id=96095

Patch by Hojong Han <hojong.han@samsung.com> on 2012-09-10
Reviewed by Geoffrey Garen.

Fill JITBytes for EFL port.

  • runtime/MemoryStatistics.cpp:

(JSC::globalMemoryStatistics):

9:45 AM Changeset in webkit [128070] by commit-queue@webkit.org
  • 12 edits
    3 adds in trunk

Source/WebCore: Clarify the cause of console warnings generated by "cross-origin" access to sandboxed iframes.
https://bugs.webkit.org/show_bug.cgi?id=64079

Patch by Mike West <mkwst@chromium.org> on 2012-09-10
Reviewed by Adam Barth.

The error message generated when accessing cross-origin content is a bit
too generic at the moment, which is misleading when the "cross-origin"
nature of an access attempt isn't visible in the URLs that the error
displays. Sandboxed iframes, for example, are put into unique origins by
default, meaning that all access in or out are subject to cross-origin
restrictions, even if the resources would otherwise be same-origin.

This patch improces the error message to explicitly point to sandboxing
as the core of cross-origin requests when relevant. It adds a single new
test to check access from parents to children, and relies on existing
tests for access in the other direction.

Test: http/tests/security/sandboxed-iframe-blocks-access-from-parent.html

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::crossDomainAccessErrorMessage):

Check 'isSandboxed(SandboxOrigin)' against the document and
activeWindow when generating the error message. If one or the other
is sandboxed, make that clear in the console warning.

LayoutTests: Console warnings generated by script access to sandboxed iframes should make the violation clear.
https://bugs.webkit.org/show_bug.cgi?id=64079

Patch by Mike West <mkwst@chromium.org> on 2012-09-10
Reviewed by Adam Barth.

  • http/tests/security/resources/blank.html: Added.

Adding a blank resource for a same-origin access test.

  • http/tests/security/sandboxed-iframe-blocks-access-from-parent-expected.txt: Added.
  • http/tests/security/sandboxed-iframe-blocks-access-from-parent.html: Added.

Parents shouldn't be able to access properties (like location) of
their sandboxed child frames.

  • http/tests/security/sandboxed-iframe-modify-self-expected.txt:
  • http/tests/security/sandboxed-iframe-origin-add-expected.txt:
  • http/tests/security/sandboxed-iframe-origin-remove-expected.txt:
  • http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt:
  • http/tests/security/xss-DENIED-sandboxed-iframe-expected.txt:
  • platform/chromium/http/tests/security/sandboxed-iframe-modify-self-expected.txt:
  • platform/chromium/http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt:

Updating existing error messages.

9:40 AM Changeset in webkit [128069] by fsamuel@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Rebaselined test for Chromium gardening

Minor discrepancy in color does not affect semantics of test output.
I rebaselined this test for Mac, but snowleopard produces slightly different
colors.

  • platform/chromium-mac-snowleopard/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Added.
9:27 AM Changeset in webkit [128068] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-1.10/Source/WebKit2

Merge r128063 - [SOUP] Don't convert to UTF-8 the suggestedFilename passed to Download::decideDestinationWithSuggestedFilename()
https://bugs.webkit.org/show_bug.cgi?id=96261

Reviewed by Martin Robinson.

  • WebProcess/Downloads/soup/DownloadSoup.cpp:

(WebKit::DownloadClient::didReceiveResponse):

9:26 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
9:21 AM Changeset in webkit [128067] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-1.10/Source/WebKit2

Merge r128050 - [GTK] Sanitize the suggested filename when building the download destination URI
https://bugs.webkit.org/show_bug.cgi?id=96260

Reviewed by Gustavo Noronha Silva.

The suggested filename returned by the server can contain
directory separators so that the filename would be interpreted as
a full path.

  • UIProcess/API/gtk/WebKitDownload.cpp:

(webkitDownloadDecideDestination): Convert any directory separator
contained in the suggested filename to an underscore.

9:21 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
9:17 AM Changeset in webkit [128066] by dmazzoni@google.com
  • 2 edits in trunk/Source/WebKit/win

AX: Update Windows port accessible role mappings to fix some tests
https://bugs.webkit.org/show_bug.cgi?id=96219

Reviewed by Chris Fleizach.

Update a bunch of accessible role mappings to fix tests and improve win
accessibility.

  • AccessibleBase.cpp:

(MSAARole):

9:06 AM Changeset in webkit [128065] by commit-queue@webkit.org
  • 7 edits in trunk

[CMake][EFL] Enable the LLInt
https://bugs.webkit.org/show_bug.cgi?id=92682

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-09-10
Reviewed by Csaba Osztrogonác.

.:

Added LLInt to CMake buildsystem and enabled it by default on EFL.
Note that Ruby is not enforced: a secondary check is done when LLInt
is enabled on the JSC's CMakeLists.txt.

  • CMakeLists.txt:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

Generate the headers needed by LLint when LLint is enabled.

  • CMakeLists.txt:
8:50 AM Changeset in webkit [128064] by tommyw@google.com
  • 13 edits
    4 moves in trunk

[chromium] MediaStream API: Remove the Descriptor postfix
https://bugs.webkit.org/show_bug.cgi?id=96268

Reviewed by Adam Barth.

After consideration I realized that there is no need whatsoever in using the Descriptor prefix
in the WekKit embedder API. Removed from WebRTCSessionDescription and WebRTCICECandidate to start with.

Source/Platform:

(WebCore):
(WebKit):
(WebRTCICECandidate):
(WebKit::WebRTCICECandidate::WebRTCICECandidate):
(WebKit::WebRTCICECandidate::~WebRTCICECandidate):
(WebKit::WebRTCICECandidate::operator=):
(WebKit::WebRTCICECandidate::isNull):

  • chromium/public/WebRTCPeerConnectionHandler.h:

(WebKit):
(WebRTCPeerConnectionHandler):

  • chromium/public/WebRTCPeerConnectionHandlerClient.h:

(WebKit):
(WebRTCPeerConnectionHandlerClient):

  • chromium/public/WebRTCSessionDescription.h: Renamed from Source/Platform/chromium/public/WebRTCSessionDescriptionDescriptor.h.

(WebCore):
(WebKit):
(WebRTCSessionDescription):
(WebKit::WebRTCSessionDescription::WebRTCSessionDescription):
(WebKit::WebRTCSessionDescription::~WebRTCSessionDescription):
(WebKit::WebRTCSessionDescription::operator=):
(WebKit::WebRTCSessionDescription::isNull):

  • chromium/public/WebRTCSessionDescriptionRequest.h:

(WebKit):
(WebRTCSessionDescriptionRequest):

Source/WebCore:

No code changes that affects functionality.

  • WebCore.gypi:
  • platform/chromium/support/WebRTCICECandidate.cpp: Renamed from Source/WebCore/platform/chromium/support/WebRTCICECandidateDescriptor.cpp.

(WebKit):
(WebKit::WebRTCICECandidate::WebRTCICECandidate):
(WebKit::WebRTCICECandidate::assign):
(WebKit::WebRTCICECandidate::reset):
(WebKit::WebRTCICECandidate::initialize):
(WebKit::WebRTCICECandidate::operator PassRefPtr<WebCore::RTCIceCandidateDescriptor>):
(WebKit::WebRTCICECandidate::candidate):
(WebKit::WebRTCICECandidate::sdpMid):
(WebKit::WebRTCICECandidate::sdpMLineIndex):

  • platform/chromium/support/WebRTCSessionDescription.cpp: Renamed from Source/WebCore/platform/chromium/support/WebRTCSessionDescriptionDescriptor.cpp.

(WebKit):
(WebKit::WebRTCSessionDescription::WebRTCSessionDescription):
(WebKit::WebRTCSessionDescription::assign):
(WebKit::WebRTCSessionDescription::reset):
(WebKit::WebRTCSessionDescription::operator WTF::PassRefPtr<WebCore::RTCSessionDescriptionDescriptor>):
(WebKit::WebRTCSessionDescription::initialize):
(WebKit::WebRTCSessionDescription::type):
(WebKit::WebRTCSessionDescription::setType):
(WebKit::WebRTCSessionDescription::sdp):
(WebKit::WebRTCSessionDescription::setSDP):

  • platform/chromium/support/WebRTCSessionDescriptionRequest.cpp:

(WebKit::WebRTCSessionDescriptionRequest::requestSucceeded):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:

(WebCore::RTCPeerConnectionHandlerChromium::didGenerateICECandidate):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:

(WebKit):
(RTCPeerConnectionHandlerChromium):

Tools:

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:

(RTCSessionDescriptionRequestSuccededTask::RTCSessionDescriptionRequestSuccededTask):
(MockWebRTCPeerConnectionHandler::createOffer):
(MockWebRTCPeerConnectionHandler::createAnswer):
(MockWebRTCPeerConnectionHandler::setLocalDescription):
(MockWebRTCPeerConnectionHandler::setRemoteDescription):
(MockWebRTCPeerConnectionHandler::localDescription):
(MockWebRTCPeerConnectionHandler::remoteDescription):
(MockWebRTCPeerConnectionHandler::addICECandidate):

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:

(MockWebRTCPeerConnectionHandler):

7:57 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
7:53 AM Changeset in webkit [128063] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[SOUP] Don't convert to UTF-8 the suggestedFilename passed to Download::decideDestinationWithSuggestedFilename()
https://bugs.webkit.org/show_bug.cgi?id=96261

Reviewed by Martin Robinson.

  • WebProcess/Downloads/soup/DownloadSoup.cpp:

(WebKit::DownloadClient::didReceiveResponse):

7:52 AM Changeset in webkit [128062] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Gtk] failure to build jhbuild dependencies with cups 1.6
https://bugs.webkit.org/show_bug.cgi?id=95991

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-09-10
Reviewed by Gustavo Noronha Silva.

Bump gtk+ and gnome-themes-standard dependencies to 3.4.2 to allow
building with cups >= 1.6 [GNOME #670373].

  • gtk/jhbuild.modules:
7:50 AM Changeset in webkit [128061] by podivilov@chromium.org
  • 5 edits in trunk

Web Inspector: support empty entries in source maps.
https://bugs.webkit.org/show_bug.cgi?id=96088

Reviewed by Vsevolod Vlasov.

Empty entries should be mapped to the compiled script.

Source/WebCore:

  • inspector/front-end/CompilerScriptMapping.js:

(WebInspector.CompilerScriptMapping):
(WebInspector.CompilerScriptMapping.prototype.rawLocationToUILocation):
(WebInspector.CompilerScriptMapping.prototype._reset):
(WebInspector.SourceMapParser.prototype._parseMap):

LayoutTests:

  • http/tests/inspector/compiler-script-mapping.html:
  • http/tests/inspector/resources/source-map.json:
7:38 AM Changeset in webkit [128060] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r128006): Three spatial navigation tests are failing
https://bugs.webkit.org/show_bug.cgi?id=96226

Added fast/spatial-navigation/snav-container-white-space.html,
fast/spatial-navigation/snav-div-overflow-scrol-hidden.html, and
fast/spatial-navigation/snav-imagemap-overlapped-areas.html to the mac skip list.

  • platform/mac/Skipped:
7:34 AM Changeset in webkit [128059] by mitz@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Added platform-specific results for this test from r128042.

  • platform/mac/http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt: Added.
7:03 AM Changeset in webkit [128058] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Don't use WebGestureEvent.boundingBox for touch adjustment
https://bugs.webkit.org/show_bug.cgi?id=95996

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-10
Reviewed by Adam Barth.

Switch from WebGestureEvent.boundingBox to new gesture-type specific
data fields.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):

7:01 AM Changeset in webkit [128057] by caseq@chromium.org
  • 24 edits
    6 deletes in trunk

Web Inspector: only display heap size statistics for timeline records when it makes sense
https://bugs.webkit.org/show_bug.cgi?id=96119

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • drop totalHeapSize from timeline records;
  • add usedHeapSizeDelta (not set if 0), for heap delta between start and end of the event;
  • only display memory details for events of scriping category or when delta is not 0;
  • English.lproj/localizedStrings.js:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::getUsedHeapSize):
(WebCore):
(WebCore::InspectorTimelineAgent::setHeapSizeStatistics):
(WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):

  • inspector/InspectorTimelineAgent.h:

(WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
(TimelineRecordEntry):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.Record.prototype.get usedHeapSizeDelta):
(WebInspector.TimelinePresentationModel.Record.prototype._generatePopupContentWithImagePreview):

LayoutTests:

  • rebase timeline tests to drop totalHeapSize
  • add support for "skip" formatter, to handle cases where value is optionally present in the dumped object;
  • drop custom expectations that are identical to base;
  • http/tests/inspector/inspector-test.js:

(initialize_InspectorTest.InspectorTest.addObject):

  • inspector/timeline/timeline-animation-frame-expected.txt:
  • inspector/timeline/timeline-decode-resize-expected.txt:
  • inspector/timeline/timeline-dom-content-loaded-event-expected.txt:
  • inspector/timeline/timeline-event-dispatch-expected.txt:
  • inspector/timeline/timeline-injected-script-eval-expected.txt:
  • inspector/timeline/timeline-layout-expected.txt:
  • inspector/timeline/timeline-load-event-expected.txt:
  • inspector/timeline/timeline-mark-timeline-expected.txt:
  • inspector/timeline/timeline-network-resource-expected.txt:
  • inspector/timeline/timeline-paint-expected.txt:
  • inspector/timeline/timeline-parse-html-expected.txt:
  • inspector/timeline/timeline-recalculate-styles-expected.txt:
  • inspector/timeline/timeline-script-tag-1-expected.txt:
  • inspector/timeline/timeline-script-tag-2-expected.txt:
  • inspector/timeline/timeline-test.js:
  • inspector/timeline/timeline-time-stamp-expected.txt:
  • inspector/timeline/timeline-timer-expected.txt:
  • platform/chromium/inspector/timeline/timeline-animation-frame-expected.txt: Removed.
  • platform/chromium/inspector/timeline/timeline-event-dispatch-expected.txt: Removed.
  • platform/chromium/inspector/timeline/timeline-layout-expected.txt: Removed.
  • platform/chromium/inspector/timeline/timeline-network-resource-expected.txt: Removed.
  • platform/chromium/inspector/timeline/timeline-parse-html-expected.txt: Removed.
  • platform/chromium/inspector/timeline/timeline-timer-expected.txt: Removed.
6:54 AM Changeset in webkit [128056] by commit-queue@webkit.org
  • 9 edits in trunk/Source/WebKit2

[EFL][WK2] Add fullscreen enter / exit signals to the ewk_view API
https://bugs.webkit.org/show_bug.cgi?id=92362

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-09-10
Reviewed by Gyuyoung Kim.

Handle WebFullScreenManagerProxy::enterFullScreen and exitFullScreen
methods, so that ewk_view could enter and exit fullscreen mode when requested.
Also, two callbacks were added to ewk_view API, so that UI could customise
behavior when fullscreen mode is requested, e.g. show security dialog.

  • UIProcess/API/efl/ewk_settings.cpp:

(ewk_settings_fullscreen_enabled_set):
(ewk_settings_fullscreen_enabled_get):

  • UIProcess/API/efl/ewk_settings.h:
  • UIProcess/API/efl/ewk_view.cpp:

(_ewk_view_initialize):
(ewk_view_full_screen_enter):
(ewk_view_full_screen_exit):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_private.h:
  • UIProcess/API/efl/tests/test_ewk2_settings.cpp:

(TEST_F):

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(fullScreenCallback):
(checkFullScreenProperty):
(TEST_F):

  • UIProcess/efl/WebFullScreenManagerProxyEfl.cpp:

(WebKit::WebFullScreenManagerProxy::enterFullScreen):
(WebKit::WebFullScreenManagerProxy::exitFullScreen):

6:34 AM Changeset in webkit [128055] by kkristof@inf.u-szeged.hu
  • 1 edit
    1 add in trunk/LayoutTests

[Qt] Gardening after r128042. Added baseline to newly added
http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii.html
https://bugs.webkit.org/show_bug.cgi?id=96061

Patch by János Badics <János Badics> on 2012-09-10
Reviewed by Csaba Osztrogonác.

  • platform/qt/http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt: Added.
6:30 AM Changeset in webkit [128054] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Drastically shorten length of commandline needed for JS bindings generator
https://bugs.webkit.org/show_bug.cgi?id=96266

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

The generate-bindings script supports the SOURCE_ROOT environment variable for IDL include file
lookups, which allows specifying relative include search directories.

  • DerivedSources.pri:
6:29 AM Changeset in webkit [128053] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Unskip fast/forms/validation-message-in-relative-body.html
https://bugs.webkit.org/show_bug.cgi?id=96265

Unreviewed EFL gardening.

Unskip fast/forms/validation-message-in-relative-body.html as
it is passing after r128030. The test required interactive
form validation setting to be enabled in WebKitTestRunner.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10

  • platform/efl-wk2/TestExpectations:
6:18 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
6:09 AM Changeset in webkit [128052] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][DRT] Encoding issue in printed console messages
https://bugs.webkit.org/show_bug.cgi?id=96263

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

Correctly handle CONSOLE messages that contain non-ascii
characters in EFL's DRT. We need to use String::fromUTF8()
to construct a WTF::String from a raw string.

  • DumpRenderTree/efl/DumpRenderTreeView.cpp:

(onConsoleMessage):

6:08 AM Changeset in webkit [128051] by commit-queue@webkit.org
  • 8 edits in trunk/Source

[Qt] Fix deprecation failures if QT_NO_DEPRECATED enabled
https://bugs.webkit.org/show_bug.cgi?id=96258

Patch by Kevin Funk <kevin.funk@kdab.com> on 2012-09-10
Reviewed by Simon Hausmann.

Sync with latest changes in Qt5.

Source/WebCore:

  • platform/qt/RenderThemeQt.cpp:
  • platform/qt/SharedTimerQt.cpp:

Source/WebKit2:

  • WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp:
  • WebProcess/qt/WebProcessQt.cpp:
6:07 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
6:06 AM Changeset in webkit [128050] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] Sanitize the suggested filename when building the download destination URI
https://bugs.webkit.org/show_bug.cgi?id=96260

Reviewed by Gustavo Noronha Silva.

The suggested filename returned by the server can contain
directory separators so that the filename would be interpreted as
a full path.

  • UIProcess/API/gtk/WebKitDownload.cpp:

(webkitDownloadDecideDestination): Convert any directory separator
contained in the suggested filename to an underscore.

5:57 AM Changeset in webkit [128049] by commit-queue@webkit.org
  • 11 edits
    4 adds in trunk

[EFL] Create a toggle button for closed captions
https://bugs.webkit.org/show_bug.cgi?id=96259

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Add toggle button for closed captions to EFL's
RenderTheme.

Test: media/video-controls-captions.html

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::edjeGroupFromFormType):
(WebCore::RenderThemeEfl::emitMediaButtonSignal):
(WebCore):
(WebCore::RenderThemeEfl::supportsClosedCaptioning):
(WebCore::RenderThemeEfl::paintMediaToggleClosedCaptionsButton):

  • platform/efl/RenderThemeEfl.h:

(RenderThemeEfl):

Source/WebKit/efl:

Add closed caption toggling button to default WebKitEFL
theme.

  • DefaultTheme/default.edc:
  • DefaultTheme/widget/mediacontrol/togglecaptionsbutton/closedcaption.png: Added.
  • DefaultTheme/widget/mediacontrol/togglecaptionsbutton/closedcaption_disabled.png: Added.
  • DefaultTheme/widget/mediacontrol/togglecaptionsbutton/toggle_captions_button.edc: Added.

LayoutTests:

Unskip media/video-controls-captions.html test case
now that EFL has a toggle button for closed captions.

Rebaseline a few media track test cases that now
display the new closed caption toggling button.

  • platform/efl/TestExpectations:
  • platform/efl/media/track/track-cue-rendering-horizontal-expected.png:
  • platform/efl/media/track/track-cue-rendering-horizontal-expected.txt:
  • platform/efl/media/track/track-cue-rendering-vertical-expected.png:
  • platform/efl/media/track/track-cue-rendering-vertical-expected.txt:
5:48 AM Changeset in webkit [128048] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[WK2][WTR] User style sheet location should be reset before each test
https://bugs.webkit.org/show_bug.cgi?id=96262

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

User style sheet location is reset before each test now.

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::beginTesting):

5:34 AM Changeset in webkit [128047] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[TexMap] Fix compilation on Windows
https://bugs.webkit.org/show_bug.cgi?id=96257

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-10
Reviewed by Noam Rosenthal.

TextureMapperGL uses near and far as variable names and unfortunately
WinDefs.h on Windows has the nasty habit of unconditionally(!) defining
near and far as empty macros. There's no way to prevent WinDefs.h from
doing so. Instead we rename the variables. (Another option would've been to
#undef)

  • platform/graphics/texmap/TextureMapperGL.cpp:
5:14 AM Changeset in webkit [128046] by allan.jensen@nokia.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, unskip tests passing after r128040 landed.

  • platform/qt-5.0-wk2/Skipped:
4:40 AM Changeset in webkit [128045] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] Fix generation of forward headers for generated files in WebCore on Windows
https://bugs.webkit.org/show_bug.cgi?id=96245

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-10
Reviewed by Tor Arne Vestbø.

We generate the forwarding header files of generated WebCore sources by using
mkdir to ensure the target directory exists, followed by
echo #include "..." > file.h. On Windows mkdir returns with an error if the
target directory exists. For us that is not an error, so work around it with

(mkdir path 2>nul
echo>nul)
  • DerivedSources.pri:
4:24 AM Changeset in webkit [128044] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding flaky crash expectation for editing/deleting/25322-2.html.

  • platform/gtk/TestExpectations:
4:09 AM Changeset in webkit [128043] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Elements] Poor performance upon continuous attribute changes
https://bugs.webkit.org/show_bug.cgi?id=96252

Reviewed by Vsevolod Vlasov.

The DOM tree is now updated after a non-zero timeout, and same node updates are coalesced rather than added into an array
as many times as the DOM node has been tampered with during the update interval.

  • inspector/front-end/ElementsTreeOutline.js:
  • inspector/front-end/utilities.js: Implement Map.prototype.size
4:07 AM Changeset in webkit [128042] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

Source/WebCore: Warn authors about CSP directives ignored due to non-ASCII values.
https://bugs.webkit.org/show_bug.cgi?id=96061

Patch by Mike West <mkwst@chromium.org> on 2012-09-10
Reviewed by Adam Barth.

CSP defines directive values as VCHAR minus ';' and ','. Currently, we
ignore these directives completely in CSPDirectiveList::parseDirective,
but we don't warn authors. We ought to set their expectations correctly,
and help them fix issues in their policy.

This patch adds a console warning for directives that are ignored, and
points authors to the wonderful world of percent-encoding for situations
where high-ASCII or Unicode (or whatever) characters are required.

Test: http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii.html

  • page/ContentSecurityPolicy.cpp:

(WebCore::CSPDirectiveList::parseDirective):

Call ContentSecurityPolicy::reportInvalidDirectiveValueCharacter in
order to report ignored directives.

(WebCore::ContentSecurityPolicy::reportInvalidDirectiveValueCharacter):
(WebCore):

  • page/ContentSecurityPolicy.h:

Add new error message.

LayoutTests: CSP parsing doesn't seem treat as invalid policies with a non-ASCII path
https://bugs.webkit.org/show_bug.cgi?id=96061

Patch by Mike West <mkwst@chromium.org> on 2012-09-10
Reviewed by Adam Barth.

  • http/tests/security/contentSecurityPolicy/resources/multiple-iframe-test.js:

(testPreescapedPolicy):
(test):
(testImpl):

To test non-ASCII characters, we need to ensure that we don't encode
them when testing.

  • http/tests/security/contentSecurityPolicy/source-list-parsing-04-expected.txt:

Adding a warning for the policy here that contains an invalid
character.

  • http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii.html: Added.

Test paths with invalid characters.

4:04 AM Changeset in webkit [128041] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

http/tests/security/contentSecurityPolicy/blob-urls-match-self.html fails on Windows port
https://bugs.webkit.org/show_bug.cgi?id=96133

Patch by Mike West <mkwst@chromium.org> on 2012-09-10
Reviewed by Jochen Eisinger.

Blob is indeed disabled on Windows. Moving this skipped test up with
the other ENABLE(BLOB) tests so that it can be reenabled when BLOB
rolls in.

  • platform/win/Skipped:
3:55 AM Changeset in webkit [128040] by allan.jensen@nokia.com
  • 3 edits in trunk/Source/WebKit2

[Qt][WK2] REGRESSION(r127861): It made one test fail and one test crash
https://bugs.webkit.org/show_bug.cgi?id=96243

Reviewed by Kenneth Rohde Christiansen.

Skip the code if QClipboard is not available, and give WebCore a chance to handle the event first.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::handleMouseEvent):

  • WebProcess/WebPage/qt/WebPageQt.cpp:

(WebKit::WebPage::handleMouseReleaseEvent):

3:30 AM Changeset in webkit [128039] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[EFL] 2 fast/forms tests need rebaseline after r128032
https://bugs.webkit.org/show_bug.cgi?id=96253

Unreviewed EFL gardening.

Rebaseline 2 fast/forms tests due to r128032.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10

  • platform/efl/fast/forms/control-restrict-line-height-expected.png:
  • platform/efl/fast/forms/control-restrict-line-height-expected.txt:
  • platform/efl/fast/forms/menulist-restrict-line-height-expected.txt:
3:28 AM Changeset in webkit [128038] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[Qt] WK2 build fixes for MSVC
https://bugs.webkit.org/show_bug.cgi?id=96248

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-10
Reviewed by Tor Arne Vestbø.

MSVC is picky when it comes to the use of forward declaration and the use of
such forward declared types in templates. In these instances inline functions were
passed parameters in RefPtrs that were only forward declared, but at compile time
MSVC wants to know what type it is in order to completely instantiate RefPtr (which
needs to call the type destructor for example). Therefore this patch resolves a couple
of forward declarations with direct header file inclusions.

  • UIProcess/API/qt/raw/qrawwebview_p_p.h:
  • UIProcess/InspectorServer/WebSocketServerClient.h:
  • UIProcess/qt/QtPageClient.h:
2:46 AM Changeset in webkit [128037] by Carlos Garcia Campos
  • 4 edits in trunk/Source

Unreviewed. Fix make distcheck.

Source/JavaScriptCore:

  • GNUmakefile.list.am: Add missing files.

Source/WebCore:

  • GNUmakefile.list.am: Add missing header files.
2:35 AM Changeset in webkit [128036] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Fix linking of QtWebKit.dll on Windows
https://bugs.webkit.org/show_bug.cgi?id=96250

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

On Windows when using ANGLE, the DLL import library of EGL is called libEGL.lib instead of EGL.lib.
However as it turns out we do not need to explicitly link against EGL, because when Qt is configured with ANGLE
support it will do that automatically for us.

  • WebCore.pri:
2:27 AM Changeset in webkit [128035] by abecsi@webkit.org
  • 6 edits in trunk/Source/WebKit2

[Qt][WK2] QWebKitTest should retrieve the viewport state from the PageViewportController
https://bugs.webkit.org/show_bug.cgi?id=96106

Reviewed by Simon Hausmann.

The functions in PageViewportControllerClientQt proxying the
viewport state values can be removed if QWebKitTest uses the
PageViewportController to retrieve these values.

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate::viewportController):

  • UIProcess/API/qt/qwebkittest.cpp:

(QWebKitTest::viewport):
(QWebKitTest::devicePixelRatio):
(QWebKitTest::contentsScale):

  • UIProcess/PageViewportController.h:

(WebKit::PageViewportController::currentContentsScale):

  • UIProcess/qt/PageViewportControllerClientQt.cpp:
  • UIProcess/qt/PageViewportControllerClientQt.h:

(PageViewportControllerClientQt):

2:16 AM Changeset in webkit [128034] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix build of WTR with Qt on Windows
https://bugs.webkit.org/show_bug.cgi?id=96249

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

Windows loves to define min and max as macros, which beautifully
clashes in many places where min and max are used as variable or method
names. It can be convinced not to do this when min and max are already
define as macros (expanding to themselves). We have this kind of
workaround in config.h files all over WebKit and as it turns out when
building WTR with Qt on Windows we do end up with such a clash. Therefore
we need the same workaround.

  • WebKitTestRunner/config.h:
2:09 AM Changeset in webkit [128033] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2] Make WK2 C API headers compile in the Qt build on Windows
https://bugs.webkit.org/show_bug.cgi?id=96246

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

WKBase.h and WKAPICast.h include files that are specific to the Safari/Windows
port if WIN32 or _WIN32 is defined. When building WebKit2 on Windows with Qt, we
do not want to include these files, as they define an API that is different to ours
(the view aspect differs). Therefore guard the inclusion with !defined(BUILDING_QT)

  • Shared/API/c/WKBase.h:
  • UIProcess/API/C/WKAPICast.h:
1:57 AM Changeset in webkit [128032] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

[EFL] fast/forms/menulist-restrict-line-height.html is failing
https://bugs.webkit.org/show_bug.cgi?id=94878

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

<select> element's text is no longer clipped when a CSS
line-height is specified. The fix is the same as for
Mac port in r24886.

Test: fast/forms/menulist-restrict-line-height.html

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::adjustMenuListStyle):

LayoutTests:

Generate baseline for fast/forms/menulist-restrict-line-height.html
and unskip the test now that <select> element's text is no longer
clipped when a CSS line-height is specified.

  • platform/efl/TestExpectations:
  • platform/efl/fast/forms/menulist-restrict-line-height-expected.png: Added.
  • platform/efl/fast/forms/menulist-restrict-line-height-expected.txt: Added.
1:31 AM Changeset in webkit [128031] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Replace calls to QString::fromAscii which is deprecated in Qt5
https://bugs.webkit.org/show_bug.cgi?id=96242

Patch by Kevin Funk <kevin.funk@kdab.com> on 2012-09-10
Reviewed by Simon Hausmann.

Replace with QString::fromLatin1 which does the same.

Source/WebCore:

  • bridge/qt/qt_runtime.cpp:

Source/WebKit2:

  • UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
1:16 AM Changeset in webkit [128030] by commit-queue@webkit.org
  • 10 edits in trunk

[WK2] New fast/forms/number/number-interactive-validation-required.html fails
https://bugs.webkit.org/show_bug.cgi?id=95936

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add WKPreference private API for manipulate the interactive form
validation setting. This is now needed by WebKitTestRunner.

  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetInteractiveFormValidationEnabled):
(WKPreferencesGetInteractiveFormValidationEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

Tools:

Enable interactive form validation setting in WebKitTestRunner as
we are currently doing in DumpRenderTree. This is needed for some
tests to pass.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetStateToConsistentValues):

LayoutTests:

Unskip fast/forms/number/number-interactive-validation-required.html for
several WebKit2 ports now that the interactive form validation setting is
enabled in WebKitTestRunner.

  • platform/efl-wk2/TestExpectations:
  • platform/qt-5.0-wk2/Skipped:
1:09 AM Changeset in webkit [128029] by commit-queue@webkit.org
  • 8 edits
    1 add in trunk/LayoutTests

[EFL] Several CSS 2.1 need rebaseline after bug 93148
https://bugs.webkit.org/show_bug.cgi?id=96241

Unreviewed EFL gardening.

Rebaseline several CSS 2.1 due to bug 93148.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10

  • platform/efl/TestExpectations:
  • platform/efl/fast/css/nested-layers-with-hover-expected.txt: Added.
  • platform/efl/tables/mozilla_expected_failures/bugs/bug106966-expected.png:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug106966-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
  • platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
  • platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt:
1:02 AM Changeset in webkit [128028] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Unskip 2 test cases fixed in r127987
https://bugs.webkit.org/show_bug.cgi?id=96234

Unreviewed EFL gardening.

Unskip 2 test cases that are now passing consistently
after r127987.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10

  • platform/efl/TestExpectations:
1:00 AM Changeset in webkit [128027] by commit-queue@webkit.org
  • 7 edits
    1 add in trunk/LayoutTests

[EFL] Several test cases need rebaseline after bug 88171
https://bugs.webkit.org/show_bug.cgi?id=96240

Unreviewed EFL gardening.

Rebaseline 3 test cases due to bug 88171. The output
is much better now.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10

  • platform/efl/TestExpectations:
  • platform/efl/css1/formatting_model/floating_elements-expected.png: Added.
  • platform/efl/css1/formatting_model/floating_elements-expected.txt:
  • platform/efl/fast/block/float/010-expected.png:
  • platform/efl/fast/block/float/010-expected.txt:
  • platform/efl/fast/block/float/independent-align-positioning-expected.png:
  • platform/efl/fast/block/float/independent-align-positioning-expected.txt:
12:57 AM Changeset in webkit [128026] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] REGRESSION(r127861): It made one test fail and one test crash
https://bugs.webkit.org/show_bug.cgi?id=96243

Unreviewed gardening, skip new failing and crashing tests to paint the bot green.

  • platform/qt-5.0-wk2/Skipped:
12:56 AM Changeset in webkit [128025] by commit-queue@webkit.org
  • 8 edits in trunk/LayoutTests

[EFL] Several fast/block test cases need rebaseline after r127163
https://bugs.webkit.org/show_bug.cgi?id=96237

Unreviewed EFL gardening.

Rebaseline 4 fast/block test cases due to r127163.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10

  • platform/efl/TestExpectations:
  • platform/efl/fast/block/float/024-expected.png:
  • platform/efl/fast/block/float/024-expected.txt:
  • platform/efl/fast/block/margin-collapse/025-expected.txt:
  • platform/efl/fast/block/margin-collapse/block-inside-inline/025-expected.txt:
  • platform/efl/fast/block/margin-collapse/empty-clear-blocks-expected.png:
  • platform/efl/fast/block/margin-collapse/empty-clear-blocks-expected.txt:
12:54 AM Changeset in webkit [128024] by commit-queue@webkit.org
  • 2 edits
    21 adds in trunk/LayoutTests

[EFL] Add baseline for css3/masking test cases
https://bugs.webkit.org/show_bug.cgi?id=96235

Unreviewed EFL gardening.

Generate baselines for css3/masking test cases added
in r127608.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10

  • platform/efl/TestExpectations:
  • platform/efl/css3/masking/clip-path-circle-expected.png: Added.
  • platform/efl/css3/masking/clip-path-circle-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-circle-filter-expected.png: Added.
  • platform/efl/css3/masking/clip-path-circle-filter-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-circle-overflow-expected.png: Added.
  • platform/efl/css3/masking/clip-path-circle-overflow-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-circle-overflow-hidden-expected.png: Added.
  • platform/efl/css3/masking/clip-path-circle-overflow-hidden-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-circle-relative-overflow-expected.png: Added.
  • platform/efl/css3/masking/clip-path-circle-relative-overflow-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-ellipse-expected.png: Added.
  • platform/efl/css3/masking/clip-path-ellipse-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-polygon-evenodd-expected.png: Added.
  • platform/efl/css3/masking/clip-path-polygon-evenodd-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-polygon-expected.png: Added.
  • platform/efl/css3/masking/clip-path-polygon-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-polygon-nonzero-expected.png: Added.
  • platform/efl/css3/masking/clip-path-polygon-nonzero-expected.txt: Added.
  • platform/efl/css3/masking/clip-path-rectangle-expected.png: Added.
  • platform/efl/css3/masking/clip-path-rectangle-expected.txt: Added.
12:23 AM Changeset in webkit [128023] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Skip 3 spatial navigation test cases failing after r128006
https://bugs.webkit.org/show_bug.cgi?id=96233

Unreviewed EFL gardening.

Mark 3 spatial navigation test cases as expected to fail due
to a regression caused by r128006.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-10

  • platform/efl/TestExpectations:
12:20 AM Changeset in webkit [128022] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Narrowing down flaky crash expectation for fast/js/random-array-gc-stress.html.
The test only crashes in release builds.

Removing flaky expectation for jquery/manipulation.html, the test is consistently
passing.

Removing failure expectation for fast/js/named-function-expression.html, the offending
commit was rolled out in r127987.

  • platform/gtk/TestExpectations:
12:05 AM Changeset in webkit [128021] by weinig@apple.com
  • 5 edits
    4 adds in trunk/Source/WebKit2

Simplify WebKit2 XPC service backend now that I know it doesn't need to soft link WebKit2.framework
https://bugs.webkit.org/show_bug.cgi?id=96228

Reviewed by Dan Bernstein.

We soft link the non-XPC service WebProcess backend to the WebKit2 framework to
ensure that we can close all the necessary file descriptors at launch, without
fear that we will be closing one we open while initializing WebKit2 or one of its
dependencies. Since we don't need to close file descriptors in the XPC service
backend, we don't need to soft link! While here, also do some cleanup and code
sharing.

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::launchXPCService):
We don't need to send the framework executable path anymore (it was used for the
soft linking), but we do need the client identifier.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files. Link the XPC service to WebKit2.framework.

  • WebKit2Service/MainMacService.mm:

Now that we don't have to soft link, just make this a stub that calls immediately
into the WebKit2 framework.

  • WebProcess/mac/WebProcessInitialization.h: Added.
  • WebProcess/mac/WebProcessInitialization.mm: Added.

(WebKit::InitializeWebProcess):
Move initialization that is common between the XPC and non-XPC backends here.

  • WebProcess/mac/WebProcessMainMac.mm:

(WebKit::WebProcessMain):
Remove XPC backend related code. Use new shared InitializeWebProcess function.

  • WebProcess/mac/WebProcessXPCServiceMain.h: Added.
  • WebProcess/mac/WebProcessXPCServiceMain.mm: Added.

(WebKit::WebKit2ServiceEventHandler):
(WebProcessXPCServiceMain):
Move XPC service backend initialization here.

Sep 9, 2012:

11:54 PM Changeset in webkit [128020] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Clean up the code in XvfbDriver
https://bugs.webkit.org/show_bug.cgi?id=96202

Reviewed by Philippe Normand.

Changes:

  • Remove unneeded imports,
  • assign the _lock_file member variable when the display number is determined,
  • no need for parentheses around a single string format argument,
  • use FileSystem.exists method when checking if lock file is present as it

makes the intention much more clearer.

  • Scripts/webkitpy/layout_tests/port/xvfbdriver.py:

(XvfbDriver._start):
(XvfbDriver.stop):

11:23 PM Changeset in webkit [128019] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding text failure expectations for three spatial navigation failures
that regressed after r128006.

  • platform/gtk/TestExpectations:
11:22 PM Changeset in webkit [128018] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

successCallback of ResolveLocalFileSystemURL should not be optional.
https://bugs.webkit.org/show_bug.cgi?id=94802

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-09-09
Reviewed by Kent Tamura.

Spec says it should not optional.
http://www.w3.org/TR/file-system-api/#widl-LocalFileSystem-resolveLocalFileSystemURL-void-DOMString-url-EntryCallback-successCallback-ErrorCallback-errorCallback

Source/WebCore:

Tests: fast/filesystem/entry-points-missing-arguments.html

  • Modules/filesystem/DOMWindowFileSystem.idl:
  • Modules/filesystem/WorkerContextFileSystem.idl:

LayoutTests:

  • fast/filesystem/entry-points-missing-arguments-expected.txt: Added.
  • fast/filesystem/entry-points-missing-arguments.html: Added.
  • fast/filesystem/filesystem-no-callback-null-ptr-crash.html:
10:53 PM Changeset in webkit [128017] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, skip new failing tests to paint the bots green.

  • platform/qt/Skipped:
10:25 PM Changeset in webkit [128016] by keishi@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

REGRESSION(r127558): Fix a crash in DateTimeChooserImpl::didClosePopup
https://bugs.webkit.org/show_bug.cgi?id=96222

Reviewed by Kent Tamura.

DateTimeChooserClient will delete DateTimeChooserImpl inside didEndChooser()
so we shouldn't be changing the members after that.

Testing covered by fast/forms/date/calendar-picker-appearance-pre-100.html.

  • src/DateTimeChooserImpl.cpp:

(WebKit::DateTimeChooserImpl::didClosePopup):

9:25 PM Changeset in webkit [128015] by commit-queue@webkit.org
  • 9 edits in trunk/Source

Source/JavaScriptCore: Fixed a few llint C++ interpreter bugs.
https://bugs.webkit.org/show_bug.cgi?id=96127.

Patch by Mark Lam <mark.lam@apple.com> on 2012-09-09
Reviewed by Geoffrey Garen.

  • llint/LLIntCLoop.h:

CLoop::execute()'s bootstrapOpcodeId does not need a default
value. There is no case when this function is called without
that parameter being specified.

  • llint/LowLevelInterpreter.asm:

Moved the dispatchAfterCall() call to where it is needed.
For the C_LOOP back-end, it generates unreachable code.

  • llint/LowLevelInterpreter.cpp:

#include <wtf/Assertions.h> because LLIntAssembly.h needs it.

(JSC):

Fixed bug in SIGN_BIT32() macro.
Placate a MSVC warning for t0, and t1 being uninitialized.

(JSC::CLoop::execute):

The bootstrapOpcodeId arg should always be specified.
MSVC doesn't like UNUSED_PARAM() for labels. Switch to using

the new UNUSED_LABEL() macro.

  • offlineasm/cloop.rb:
  • offlineasm/generate_offset_extractor.rb:

Resolved a compiler warning found via MSVC.

Source/WTF: Fixed ASSERT() and ASSERT_AT() macros so that they can be used in
comma expressions. Also, added UNUSED_LABEL().
https://bugs.webkit.org/show_bug.cgi?id=96127.

Patch by Mark Lam <mark.lam@apple.com> on 2012-09-09
Reviewed by Geoffrey Garen.

  • wtf/Assertions.h:
  • wtf/UnusedParam.h: Added UNUSED_LABEL(). Removed an obsolete comment.
9:19 PM Changeset in webkit [128014] by Patrick Gansterer
  • 26 edits in trunk/Source

Add StringBuilder::appendNumber() and use it
https://bugs.webkit.org/show_bug.cgi?id=96030

Reviewed by Eric Seidel.

Also fix a bunch of append() vs. appendLiteral() issues in the surrounding code.

Source/JavaScriptCore:

  • API/JSContextRef.cpp:

(JSContextCreateBacktrace):

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
  • interpreter/Interpreter.h:

(JSC::StackFrame::toString):

Source/WebCore:

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::hostName):

  • bindings/v8/ScriptController.cpp:

(WebCore::resourceString):

  • css/FontFeatureValue.cpp:

(WebCore::FontFeatureValue::customCssText):

  • dom/Position.cpp:

(WebCore::Position::formatForDebugger):

  • dom/Range.cpp:

(WebCore::Range::formatForDebugger):

  • html/FormController.cpp:

(WebCore::FormKeyGenerator::formKey):

  • html/HTMLAnchorElement.cpp:

(WebCore::appendServerMapMousePosition):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::font):

  • inspector/IdentifiersFactory.cpp:

(WebCore::IdentifiersFactory::addProcessIdPrefixTo):

  • page/FrameTree.cpp:

(WebCore::FrameTree::uniqueChildName):

  • page/SecurityOrigin.cpp:

(WebCore::SecurityOrigin::toRawString):

  • platform/Decimal.cpp:

(WebCore::Decimal::toString):

  • platform/network/ProxyServer.cpp:

(WebCore::appendProxyServerString):

  • platform/text/TextStream.cpp:

(WebCore::TextStream::operator<<):

  • platform/text/TextStream.h:
  • rendering/RenderTreeAsText.cpp:

(WebCore::nodePosition):

  • xml/XMLErrors.cpp:

(WebCore::XMLErrors::appendErrorMessage):

Source/WTF:

  • wtf/DateMath.cpp:

(WTF::makeRFC2822DateString):

  • wtf/text/StringBuilder.cpp:

(WTF::StringBuilder::appendNumber):

  • wtf/text/StringBuilder.h:

(StringBuilder):

8:34 PM Changeset in webkit [128013] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] Wrong rendering results for square-button-appearance.html
https://bugs.webkit.org/show_bug.cgi?id=85493

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-09-09
Reviewed by Gyuyoung Kim.

Source/WebCore:

A square-button is an element that has '-webkit-appearance: square-button' style.

If it is a block element,
the RenderBlock::recomputeLogicalWidth recalculate the width from the padding values.

But the recalculated width became wrong because the RenderThemeEfl::adjustSizeConstraints
called from RenderThemeEfl::adjustButtonStyle adds padding values for a button.

So, the adjustSizeConstraints must not be called for a square-button(SquareButtonPart).

Test : fast/css/square-button-appearance.html

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::adjustButtonStyle): Call adjustSizeConstrains only for PushButtonPart and ButtonPart

LayoutTests:

Remove fast/css/square-button-appearance.html from TestExpectations because it became PASS.

  • platform/efl/TestExpectations:
7:44 PM Changeset in webkit [128012] by bashi@chromium.org
  • 1 edit
    1 copy
    1 move
    2 adds in trunk/LayoutTests

[Chromium] Unreviewed test expectations update after r128002

  • platform/chromium-mac/inspector/console/command-line-api-getEventListeners-expected.txt: Copied from LayoutTests/platform/chromium/inspector/console/command-line-api-getEventListeners-expected.txt.
  • platform/chromium-win/inspector/console/command-line-api-getEventListeners-expected.txt: Renamed from LayoutTests/platform/chromium/inspector/console/command-line-api-getEventListeners-expected.txt.
7:33 PM Changeset in webkit [128011] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL][WK2] Minibrowser locks up when right clicking editable filed
https://bugs.webkit.org/show_bug.cgi?id=96074

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-09-09
Reviewed by Gyuyoung Kim.

WebProcess crashes when the context menu type is SubmenuType and non-CROSS_PLATFORM_CONTEXT_MENUS is used.
It is because platformSubMenu() in the ContextMenuItemEfl.cpp returns null. This patch implements the setSubMenu()
and platformSubMenu() to set and return the subMenuItems.

  • platform/efl/ContextMenuItemEfl.cpp:

(WebCore::ContextMenuItem::setSubMenu):
(WebCore::ContextMenuItem::platformSubMenu):
(WebCore):

7:08 PM Changeset in webkit [128010] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Pass full target idl file path to CodeGenerator as a constructor argument.
https://bugs.webkit.org/show_bug.cgi?id=96190

Patch by Kangil Han <kangil.han@samsung.com> on 2012-09-09
Reviewed by Kentaro Hara.

Passing idl file path to CodeGenerator would be useful because CodeGenerator* family could manipulate it when creating derived header and cpp files.

  • bindings/scripts/CodeGenerator.pm:

(new):
(ProcessDocument):

  • bindings/scripts/generate-bindings.pl:
6:09 PM Changeset in webkit [128009] by mitz@apple.com
  • 4 edits in trunk/Source/WebCore

Try to fix the build after r128006.

  • dom/Element.cpp:

(WebCore::Element::boundsInRootViewSpace): Updated for rename.
(WebCore::Element::getBoundingClientRect): Ditto.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::getBoundingBox): Renamed boundingBox() to this, to avoid clashing
with the virtual function on Node. The 'get' prefix also indicates that the result is
returned in an out parameter.

  • svg/SVGElement.h:

(SVGElement):

5:45 PM Changeset in webkit [128008] by Patrick Gansterer
  • 3 edits in trunk/Source/WebCore

Replace WTF::numberToString() with String::numberToStringECMAScript()
https://bugs.webkit.org/show_bug.cgi?id=96130

Reviewed by Benjamin Poulain.

The String class provides a nice wrapper for this function
in the meantime, so just use it to avoid code duplication.

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::serializeForNumberType):

  • platform/Decimal.cpp:

(WebCore::Decimal::fromDouble):

5:33 PM Changeset in webkit [128007] by bashi@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Unreviewed gardening after r127907

Fix CCRenderPassTest::copyShouldBeIdenticalExceptIdAndQuads

  • tests/CCRenderPassTest.cpp:

(CCRenderPassSize): Changed type of m_id

5:29 PM Changeset in webkit [128006] by eae@chromium.org
  • 27 edits in trunk/Source

Rename Node::getRect/getPixelSnappedRect and remove ContainerNode::getRect
https://bugs.webkit.org/show_bug.cgi?id=81413

Reviewed by David Hyatt.

Source/WebCore:

Rename Node::getRect and getPixelSnappedRect to boundingBox and
pixelSnappedBoundingBox respectively.

Remove overridden getRect method from ContainerNode as it calculates the
same rect as the Node implementation but in a more complicated and
error-prone way. Also remove the getUpperLeftCorner/getLowerRightCorner
support functions as they are no longer needed.

No new tests, no change in functionality.

  • accessibility/AccessibilitySlider.cpp:

(WebCore::AccessibilitySliderThumb::elementRect):
Update to call boundingBox.

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

Remove overridden getRect method and the getUpperLeftCorner/
getLowerRightCorner support methods .

  • dom/Element.cpp:

(WebCore::Element::scrollIntoView):
(WebCore::Element::scrollIntoViewIfNeeded):
(WebCore::Element::updateFocusAppearance):
Update to call boundingBox.

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

(WebCore::Node::boundingBox):
Rename getRect to boundingBox.

(WebCore::Node::pixelSnappedBoundingBox):
Rename getPixelSnappedRect to pixelSnappedBoundingBox.

  • html/ColorInputType.cpp:

(WebCore::ColorInputType::elementRectRelativeToRootView):

  • html/ValidationMessage.cpp:

(WebCore::ValidationMessage::buildBubbleTree):

  • html/shadow/CalendarPickerElement.cpp:

(WebCore::CalendarPickerElement::openPopup):

  • html/shadow/TextControlInnerElements.cpp:

(WebCore::InputFieldSpeechButtonElement::startSpeechInput):

  • page/FrameView.cpp:

(WebCore::FrameView::scrollElementToRect):
(WebCore::FrameView::scrollToAnchor):

  • page/SpatialNavigation.cpp:

(WebCore::nodeRectInAbsoluteCoordinates):
Update to call boundingBox/pixelSnappedBoundingBox.

Source/WebKit/chromium:

Update WebViewImpl to call boundingBox/pixelSnappedBoundingBox.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::computeBlockBounds):
(WebKit::WebViewImpl::applyAutofillSuggestions):
(WebKit::WebViewImpl::refreshAutofillPopup):

Source/WebKit/efl:

Update ewk_frame to call pixelSnappedBoundingBox.

  • ewk/ewk_frame.cpp:

(ewk_frame_focused_element_geometry_get):

Source/WebKit/gtk:

Update ChromeClientGtk and webkitwebview to call pixelSnappedBoundingBox.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::mouseDidMoveOverElement):

  • webkit/webkitwebview.cpp:

(getLocationForKeyboardGeneratedContextMenu):
(webkit_web_view_query_tooltip):

Source/WebKit/qt:

Update qwebelement and qwebpage to call pixelSnappedBoundingBox.

  • Api/qwebelement.cpp:

(QWebElement::geometry):
(QWebElement::render):

  • Api/qwebpage.cpp:

(QWebPagePrivate::TouchAdjuster::findCandidatePointForTouch):

Source/WebKit2:

Update WebPage to call pixelSnappedBoundingBox.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::editorState):

4:59 PM Changeset in webkit [128005] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

[chromium] Do not delete texture backing structures on the main thread
https://bugs.webkit.org/show_bug.cgi?id=96018

Patch by Christopher Cameron <ccameron@chromium.org> on 2012-09-09
Reviewed by James Robinson.

Do not delete CCPrioritizedTexture::Backing structures on the main
thread. Instead, unlink them from their owning CCPrioritizedTexture
in the main thread, and have the impl thread then delete all unlinked
textures.

This is towards having the main thread not access the m_backings set,
which will allow the impl thread to traverse that set when deleting
resources in response to GPU memory management events.

Tested by existing eviction tests (CCLayerTreeHostTest's
TestEvictTextures, LostContextAfterEvictTextures)

Fix a place where single thread proxy wasn't setting the main thread
blocked state correctly.

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::unlinkAllContentTextures):
(WebCore):
(WebCore::CCLayerTreeHost::deleteUnlinkedTextures):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHost):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp:

(WebCore::CCPrioritizedTextureManager::clearAllMemory):
(WebCore::CCPrioritizedTextureManager::unlinkAllBackings):
(WebCore):
(WebCore::CCPrioritizedTextureManager::deleteAllUnlinkedBackings):

  • platform/graphics/chromium/cc/CCPrioritizedTextureManager.h:

(CCPrioritizedTextureManager):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::commitAndComposite):

  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::beginFrameCompleteOnImplThread):

3:49 PM Changeset in webkit [128004] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

Rebaseline media/video-zoom-controls on chromium-mac for subpixel change.

  • platform/chromium-mac/media/video-zoom-controls-expected.txt:
3:48 PM Changeset in webkit [128003] by weinig@apple.com
  • 12 edits in trunk

Switch to entering the sandbox directly from main(), rather than waiting for the initialization message
https://bugs.webkit.org/show_bug.cgi?id=96194

Reviewed by Dan Bernstein.

Source/WebKit2:

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::ProcessLauncher::launchProcess):
Pass a client identifier to WebProcess as a command line argument
so that it can be used to create private temporary and cache directories.

  • WebProcess/WebProcess.h:

(WebProcess):

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::initializeSandbox):
(WebKit::WebProcess::platformInitializeWebProcess):
Expose the initializeSandbox() function and stop calling it from platformInitializeWebProcess()
since it is now going to be called from WebProcessMain. Also, move changing the current working
directory to sandbox initialization function and replace use of creation parameters with just
the client identifier.

  • WebProcess/com.apple.WebProcess.sb.in:

Add some new exceptions that come from entering the sandbox earlier in the AppKit
initialization process. Don't allow access to com.apple.coreservices.appleevents.

  • WebProcess/mac/WebProcessMainMac.mm:

(WebKit::WebProcessMainXPC):
(WebKit::WebProcessMain):
Enter the sandbox explicitly, not waiting until the initialization message. Also,
since we now have an extra parameter for the client identifier, make the WebProcess
launches the UIProcess code path work by extracting a client identifier from the
client executable path.

WebKitLibraries:

Update WKSI with SPI for getting the bundle URL from an executable URL.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:
  • libWebKitSystemInterfaceSnowLeopard.a:

Adds WKCopyBundleURLForExecutableURL().

3:26 PM Changeset in webkit [128002] by kling@webkit.org
  • 5 edits in trunk

EventListenerMap: Use Vector instead of HashMap as backend.
<http://webkit.org/b/77982>

Reviewed by Geoff Garen.

Source/WebCore:

Refactor EventListenerMap to store pair<AtomicString, EventListenerVector> in a Vector
instead of using key/value HashMap stores. This is much more space efficient and actually
faster since we were spending more time/effort managing the hash map than it costs us
to iterate over and compare a couple of pointers. (It's very rare to have more than
4 different event types registered in a single EventListenerMap.)

This gets rid of the slightly hacky optimization for nodes with listeners of a single type,
reducing the complexity of EventListenerMap greatly.

~1.1MB progression on Membuster. Also strong (20+ MB on larger patches) savings on WebKit
bugzilla review pages, though they don't necessarily represent a common usecase.

  • dom/EventListenerMap.cpp:

(WebCore::EventListenerMap::contains):
(WebCore::EventListenerMap::clear):
(WebCore::EventListenerMap::eventTypes):
(WebCore::EventListenerMap::add):
(WebCore::EventListenerMap::remove):
(WebCore::EventListenerMap::find):
(WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
(WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
(WebCore::EventListenerIterator::EventListenerIterator):
(WebCore::EventListenerIterator::nextListener):

  • dom/EventListenerMap.h:

(WebCore::EventListenerMap::isEmpty):
(WebCore::EventListenerMapEntry::EventListenerMapEntry):
(EventListenerMapEntry):
(EventListenerMap):
(EventListenerIterator):

LayoutTests:

Rebaseline inspector test whose output depended on the internal ordering of event
listeners (changed as listeners are no longer stored in an unordered HashMap.)

  • inspector/console/command-line-api-getEventListeners-expected.txt:
3:20 PM Changeset in webkit [128001] by Lucas Forschler
  • 2 edits in tags/Safari-537.9.1/Source/WebCore

Merged r127998.

3:16 PM Changeset in webkit [128000] by Lucas Forschler
  • 4 edits in tags/Safari-537.9.1/Source

Versioning.

3:14 PM Changeset in webkit [127999] by Lucas Forschler
  • 1 copy in tags/Safari-537.9.1

New Tag.

3:11 PM Changeset in webkit [127998] by Lucas Forschler
  • 2 edits in trunk/Source/WebCore

Build Fix. <rdar://problem/12260893>

  • platform/graphics/mac/WebGLLayer.mm:
2:21 PM Changeset in webkit [127997] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r127979.
http://trac.webkit.org/changeset/127979
https://bugs.webkit.org/show_bug.cgi?id=96217

Appears to have broken the windows and linux builds (Requested
by jamesr_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-09

  • bindings/scripts/CodeGeneratorV8.pm:

(NativeToJSValue):

  • bindings/v8/V8DOMWrapper.h:

(WebCore::V8DOMWrapper::convertEventTargetToV8Object):
(V8DOMWrapper):

2:05 PM Changeset in webkit [127996] by jamesr@google.com
  • 2 edits in trunk/Source/Platform

[chromium] Export WebFilterOperation(FilterType, SkScalar[20]) constructor
https://bugs.webkit.org/show_bug.cgi?id=96215

Reviewed by Adrienne Walker.

Unlike the other WebFilterOperation constructors this one is defined out-of-line and so must be exported to be
usable outside of WebKit.dll

  • chromium/public/WebFilterOperation.h:

(WebFilterOperation):

2:04 PM Changeset in webkit [127995] by jamesr@google.com
  • 4 edits in trunk/Source

[chromium] webkit_platform should only be linked into the webkit target
https://bugs.webkit.org/show_bug.cgi?id=96213

Reviewed by Adrienne Walker.

The Platform.gyp:webkit_platform target provides the implementation of several WEBKIT_EXPORTed symbols. It only
makes sense as a target of WebKit.gyp:webkit, other targets shouldn't directly depend on it.

Source/WebCore:

  • WebCore.gyp/WebCore.gyp:

Source/WebKit/chromium:

  • WebKit.gyp:
2:04 PM Changeset in webkit [127994] by jamesr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Use WebCompositorSupport creation functions in GraphicsLayerChromiumTest
https://bugs.webkit.org/show_bug.cgi?id=96212

Reviewed by Adrienne Walker.

The static ::create()s the test references currently are going away soon.

  • tests/GraphicsLayerChromiumTest.cpp:

(WebKit::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):
(WebKit::TEST_F):

2:02 PM Changeset in webkit [127993] by dmazzoni@google.com
  • 7 edits in trunk/LayoutTests

Unreviewed.\n\nRebaselining 5 mac accessibility tests, skipping one.\n\nhttps://bugs.webkit.org/show_bug.cgi?id=96173

1:52 PM Changeset in webkit [127992] by dmazzoni@google.com
  • 7 edits in trunk/LayoutTests

Unreviewed, rolling out r127963.
http://trac.webkit.org/changeset/127963
https://bugs.webkit.org/show_bug.cgi?id=96173

Inappropriately modified test, and not just expectations,
without review. Will land changes to expectations only, and then
upload a patch to modify the test for review.

  • accessibility/transformed-element-expected.txt:
  • platform/mac/accessibility/image-map2-expected.txt:
  • platform/mac/accessibility/internal-link-anchors2-expected.txt:
  • platform/mac/accessibility/table-detection-expected.txt:
  • platform/mac/accessibility/table-one-cell-expected.txt:
  • platform/mac/accessibility/update-children-when-aria-role-changes.html:
1:48 PM Changeset in webkit [127991] by Patrick Gansterer
  • 17 edits
    1 delete in trunk

Make the String initialization on the function side of String::number()
https://bugs.webkit.org/show_bug.cgi?id=95940

Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

Source/WebKit2:

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

Source/WTF:

Un-Inline String::number() to make the String initialization done on the function side
instead of being on the caller side.

  • GNUmakefile.list.am:
  • WTF.gypi:
  • WTF.pro:
  • WTF.vcproj/WTF.vcproj:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/text/IntegerToStringConversion.cpp: Removed.
  • wtf/text/IntegerToStringConversion.h:

(WTF::numberToStringImpl):
(WTF::numberToStringSigned):
(WTF::numberToStringUnsigned):

  • wtf/text/WTFString.cpp:

(WTF::String::number):

  • wtf/text/WTFString.h:

Tools:

  • TestWebKitAPI/Tests/WTF/IntegerToStringConversion.cpp:

(testBoundaries):
(testNumbers):

10:40 AM Changeset in webkit [127990] by rakuco@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][WK2] Mark sputnik/Conformance/07_Lexical_Conventions/7.4_Comments/S7.4_A5.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=96210

Unreviewed EFL gardening.

Mark additional sputnik test as flaky on WK2 EFL build bot.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-09

  • platform/efl-wk2/TestExpectations:
10:34 AM Changeset in webkit [127989] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Mark fast/innerHTML/innerHTML-iframe.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=96209

Unreviewed EFL gardening.

Mark fast/innerHTML/innerHTML-iframe.html as flaky for
both WK1 and WK2 EFL.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-09

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
10:22 AM Changeset in webkit [127988] by pierre.rossi@gmail.com
  • 22 edits in trunk

[WK2] expose element rect for color input type
https://bugs.webkit.org/show_bug.cgi?id=91664

Reviewed by Simon Hausmann.

Source/WebKit2:

In the same way we do for select elements already. This allows placing the picker
in a sensible location.

  • UIProcess/API/efl/PageClientImpl.cpp: Update the function's signature.

(WebKit::PageClientImpl::createColorChooserProxy): Ditto.

  • UIProcess/API/efl/PageClientImpl.h: Ditto.

(PageClientImpl):

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::createColorChooserProxy): Ditto.

  • UIProcess/API/gtk/PageClientImpl.h: Ditto.

(PageClientImpl):

  • UIProcess/API/mac/PageClientImpl.h: Ditto.

(PageClientImpl):

  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::createColorChooserProxy): Ditto.

  • UIProcess/API/qt/raw/qrawwebview.cpp:

(QRawWebViewPrivate::createColorChooserProxy): Ditto.

  • UIProcess/API/qt/raw/qrawwebview_p_p.h: Ditto.

(QRawWebViewPrivate):

  • UIProcess/PageClient.h: Ditto.

(PageClient):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::showColorChooser): Compute the rect mapped to the current view's transform.

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtPageClient.cpp:

(WebKit::QtPageClient::createColorChooserProxy):

  • UIProcess/qt/QtPageClient.h:

(QtPageClient):

  • UIProcess/qt/WebColorChooserProxyQt.cpp:

(ColorChooserContextObject):
(WebKit::ColorChooserContextObject::ColorChooserContextObject):
(WebKit::ColorChooserContextObject::elementRect):
(WebKit::ColorChooserContextObject::accept):
(WebKit::WebColorChooserProxyQt::WebColorChooserProxyQt):

  • UIProcess/qt/WebColorChooserProxyQt.h:

(WebKit::WebColorChooserProxyQt::create):
(WebColorChooserProxyQt):

  • UIProcess/win/WebView.cpp:

(WebKit::WebView::createColorChooserProxy): Update the function's signature.

  • UIProcess/win/WebView.h:

(WebView): Ditto.

  • WebProcess/WebCoreSupport/WebColorChooser.cpp:

(WebKit::WebColorChooser::WebColorChooser):

Tools:

Update the QML logic in MiniBrowser to take advantage of this.
The picker size is now hardcoded and we try to place it below the
input element if possible.

  • MiniBrowser/qt/qml/ColorChooser.qml:
10:10 AM Changeset in webkit [127987] by ggaren@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Rolled out <http://trac.webkit.org/changeset/127939> because it broke
fast/js/named-function-expression.html.

Refactored bytecode generator initialization to support moving captured vars around
https://bugs.webkit.org/show_bug.cgi?id=96159

Reviewed by Gavin Barraclough.

9:46 AM Changeset in webkit [127986] by Simon Hausmann
  • 2 edits in trunk/Source/WebKit2

[Qt] Add missing files to the WebKit2 build on Windows
https://bugs.webkit.org/show_bug.cgi?id=96177

Reviewed by Kenneth Rohde Christiansen.

For the build on Windows we can re-use existing functionality from the Safari/Windows
build, such as the IPC implementation.

  • Target.pri:
9:44 AM Changeset in webkit [127985] by rakuco@webkit.org
  • 2 edits
    3 adds in trunk/LayoutTests

[EFL][WK2] Gardening to make the bot green
https://bugs.webkit.org/show_bug.cgi?id=96208

Unreviewed EFL gardening.

Update TestExpectations to make the EFL WK2 bot green.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-09

  • platform/efl-wk2/TestExpectations:
  • platform/efl-wk2/fast/events/mouseup-from-button2-expected.txt: Added. Test

needs baseline for wk2 (better output).

9:34 AM Changeset in webkit [127984] by anilsson@rim.com
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix flicker due to introduction of the fence extension.
https://bugs.webkit.org/show_bug.cgi?id=96207

Reviewed by George Staikos.

Don't immediately add fence to garbage list, so it is destroyed
after only one swap, for a set of tiles just because one tile in
the set gets a new fence, the old fence may still not be signalled
and before rendering the other tiles in the set we have to wait for it.

  • WebKitSupport/BackingStoreTile.cpp:

(BlackBerry::WebKit::Fence::~Fence):
(WebKit):

  • WebKitSupport/BackingStoreTile.h:

(WebKit):
(Fence):

  • WebKitSupport/SurfacePool.cpp:

(BlackBerry::WebKit::SurfacePool::initialize):
(BlackBerry::WebKit::SurfacePool::notifyBuffersComposited):
(WebKit):
(BlackBerry::WebKit::SurfacePool::destroyPlatformSync):

  • WebKitSupport/SurfacePool.h:

(SurfacePool):

7:46 AM Changeset in webkit [127983] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[WK2] Fix PLATFORM(WIN) vs. OS(WINDOWS) in various files
https://bugs.webkit.org/show_bug.cgi?id=96178

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-09
Reviewed by Kenneth Rohde Christiansen.

PLATFORM(WIN) is used in various places, where it is safe to use OS(WINDOWS) to allow
the re-use of that code path in ports beyond Safari/Windows.

  • Platform/CoreIPC/BinarySemaphore.h:

(BinarySemaphore):

  • Platform/CoreIPC/Connection.h:

(Connection):

  • Platform/SharedMemory.h:

(Handle):
(SharedMemory):

  • Platform/WorkQueue.h:
7:37 AM Changeset in webkit [127982] by rakuco@webkit.org
  • 4 edits in trunk/LayoutTests

[EFL] Unskip test cases passing reliably on the bots
https://bugs.webkit.org/show_bug.cgi?id=96204

Unreviewed EFL gardening.

Unskip test cases that are passing reliably on the
EFL build bots.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-09

  • platform/efl-wk1/TestExpectations:
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
3:57 AM Changeset in webkit [127981] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

[EFL] Fix build break when MEDIA_STREAM is enabled.
https://bugs.webkit.org/show_bug.cgi?id=96063

Unreviewed. Fix build break when MEDIA_STREAM is enabled.

  • CMakeLists.txt:
1:00 AM Changeset in webkit [127980] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding expectations for two crashing tests and two regressions.

  • platform/gtk/TestExpectations:
12:47 AM Changeset in webkit [127979] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

[V8] convertEventTargetToV8Object doesn't need to be overloaded
https://bugs.webkit.org/show_bug.cgi?id=96195

Reviewed by Kentaro Hara.

WTF::getPtr solves this problem for us.

  • bindings/scripts/CodeGeneratorV8.pm:

(NativeToJSValue):

  • bindings/v8/V8DOMWrapper.h:

(V8DOMWrapper):

12:39 AM Changeset in webkit [127978] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

[V8] V8PerContextData holds m_context using a v8::Handle rather than a v8::Persistent
https://bugs.webkit.org/show_bug.cgi?id=96193

Reviewed by Kentaro Hara.

There are two types of handles in V8: Local and Persistent. We are now
permitted to keep Local handles in the heap because they get
deallocated when the C++ stack unwinds and v8::HandleScope objects are
destructed.

V8PerContextData holds its m_context using the non-specific v8::Handle
type. If we used a Local handle here, we'd have a memory safety
problem. Thankfully, we use a Persistent handle, which need to be
allocated and freed manually.

This patch makes the type of V8PerContextData::m_context more specific
to ensure that we never try to store a local handle in this variable.
This patch should not have any behavior change because we were already
storing a Persistent handle.

  • bindings/v8/V8PerContextData.h:

(WebCore::V8PerContextData::create):
(WebCore::V8PerContextData::V8PerContextData):
(V8PerContextData):

12:27 AM Changeset in webkit [127977] by abarth@webkit.org
  • 4 edits in trunk/Source/WebCore

[V8] V8DOMWindowShell does not need to be RefCounted
https://bugs.webkit.org/show_bug.cgi?id=96192

Reviewed by Kentaro Hara.

V8DOMWindowShell holds a raw Frame pointer, which would point to
unallocated memory if any object that wasn't owned by the frame took a
reference to a V8DOMWindowShell. Thankfully, the only object that takes
a reference to the V8DOMWindowShell is ScriptController, which is owned
by the Frame.

This patch stops V8DOMWindowShell from being RefCounted so that no
other objects are tempted to take a reference to it in the future.

  • bindings/v8/ScriptController.h:

(ScriptController):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::create):

  • bindings/v8/V8DOMWindowShell.h:

(V8DOMWindowShell):

Sep 8, 2012:

11:48 PM Changeset in webkit [127976] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

[V8] unsafeHandleToCurrentWorldContext doesn't need to exist
https://bugs.webkit.org/show_bug.cgi?id=96191

Reviewed by Kentaro Hara.

Previously, we used this function when instantiating DOM wrappers. Now
we get the context from the creationContext, so we don't need access to
this unsafe handle. This patch inlines the function into its one other
caller.

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::currentWorldContext):

  • bindings/v8/ScriptController.h:

(ScriptController):

9:29 PM Changeset in webkit [127975] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Exiting fullscreen mode can leave user stuck without Browser menus
https://bugs.webkit.org/show_bug.cgi?id=96027

Patch by Max Feil <mfeil@rim.com> on 2012-09-08
Reviewed by Antonio Gomes.

The changes for bug 87337 (landed as trunk svn revision 119119)
introduced a bug. The same conditions are not checked on enter
fullscreen vs. exit. Web sites such as http://videojs.com
and youtube's mobile HTML5 player make the div container
of the video element go fullscreen. This is allowed in
WebPagePrivate::enterFullScreenForElement() but disallowed in
WebPagePrivate::exitFullScreenForElement(). I am fixing this by
allowing containers of video elements to exit fullscreen.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):

5:35 PM Changeset in webkit [127974] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Specialize nextBreakablePosition depending on breakNBSP
https://bugs.webkit.org/show_bug.cgi?id=96042

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-08
Reviewed by Eric Seidel.

The speed of isBreakableSpace() is limited by the speed of the inner loop of nextBreakablePosition().
The branches done to handle noBreakSpace can be simplified outside the loop
to reduce the number of tests inside the loop.

This patch split the code of nextBreakablePosition() in two function, depending if breakNBSP is true
or false.

If breakNBSP is true, isBreakableSpace() would return true on noBreakSpace.
->There is no need to test that value again for needsLineBreakIterator().
->There is no need to special case the switch() of isBreakableSpace() for noBreakSpace.

If breakNBSP is false:
->isBreakableSpace() does not need to test for noBreakSpace.

On x86_64, this improves PerformanceTests/Layout/line-layout.html by 2.8%.

  • rendering/break_lines.cpp:

(WebCore::isBreakableSpace):
(WebCore::nextBreakablePositionIgnoringNBSP):
(WebCore::nextBreakablePosition):

  • rendering/break_lines.h:

(WebCore::isBreakable): Remove the default value for breakNBSP, no caller is using it.

12:50 PM Changeset in webkit [127973] by kling@webkit.org
  • 2 edits in trunk/Source/WTF

Give AtomicString SimpleClassVectorTraits.
<http://webkit.org/b/96186>

Reviewed by Karl Anders Carlsson.

AtomicString can be initialized/moved/compared with memset/memcpy/memcmp,
so add a VectorTraits<AtomicString> to make Vector<AtomicString> a little
more efficient.

  • wtf/VectorTraits.h:
11:17 AM Changeset in webkit [127972] by commit-queue@webkit.org
  • 24 edits
    1 delete in trunk

[V8] DOM wrapper creation involves a bunch of sketchy code related to finding the Frame
https://bugs.webkit.org/show_bug.cgi?id=96147

Patch by Adam Barth <abarth@chromium.org> on 2012-09-08
Reviewed by Eric Seidel.

Source/WebCore:

Previously, we used the Frame when instantiating DOM wrappers. That's
sketchy because not all DOM wrappers know how to find their Frame, and
the Frame might be displaying a different document now anyway. This
patch now gets all the information directly from the creation context.

In addition, this patch gets the proper creation context in a few more
cases, including Location.

  • bindings/scripts/CodeGeneratorV8.pm:

(GetInternalFields):
(GenerateNormalAttrGetter):
(GenerateToV8Converters):
(GenerateFunctionCallString):
(NativeToJSValue):

  • bindings/scripts/test/V8/V8Float64Array.cpp:

(WebCore::Float64ArrayV8Internal::fooCallback):
(WebCore::V8Float64Array::wrapSlow):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore::V8TestActiveDOMObject::wrapSlow):

  • bindings/scripts/test/V8/V8TestCallback.cpp:

(WebCore::V8TestCallback::callbackWithClass1Param):
(WebCore::V8TestCallback::callbackWithClass2Param):
(WebCore::V8TestCallback::callbackWithStringList):
(WebCore::V8TestCallback::callbackRequiresThisToPass):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:

(WebCore::V8TestCustomNamedGetter::wrapSlow):

  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:

(WebCore::V8TestEventConstructor::wrapSlow):

  • bindings/scripts/test/V8/V8TestEventTarget.cpp:

(WebCore::TestEventTargetV8Internal::itemCallback):
(WebCore::V8TestEventTarget::wrapSlow):

  • bindings/scripts/test/V8/V8TestException.cpp:

(WebCore::V8TestException::wrapSlow):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::wrapSlow):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:

(WebCore::V8TestMediaQueryListListener::wrapSlow):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructor::wrapSlow):

  • bindings/scripts/test/V8/V8TestNode.cpp:

(WebCore::V8TestNode::wrapSlow):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::testObjAttrAttrGetter):
(WebCore::TestObjV8Internal::XMLObjAttrAttrGetter):
(WebCore::TestObjV8Internal::typedArrayAttrAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetter):
(WebCore::TestObjV8Internal::contentDocumentAttrGetter):
(WebCore::TestObjV8Internal::objMethodCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjV8Internal::withScriptStateObjCallback):
(WebCore::TestObjV8Internal::withScriptStateObjExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesCallback):
(WebCore::TestObjV8Internal::getSVGDocumentCallback):
(WebCore::TestObjV8Internal::strictFunctionCallback):
(WebCore::V8TestObj::wrapSlow):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::disposeContext):

  • bindings/v8/V8DOMWrapper.cpp:

(WebCore::V8DOMWrapper::instantiateV8Object):

  • bindings/v8/V8DOMWrapper.h:

(V8DOMWrapper):

  • bindings/v8/V8PerContextData.cpp:

(WebCore):
(WebCore::V8PerContextData::current):
(WebCore::V8PerContextData::dispose):
(WebCore::V8PerContextData::init):

  • bindings/v8/V8PerContextData.h:

(V8PerContextData):

LayoutTests:

The V8 results for this test now match the JSC results. We can remove
the chromium-specific baseline.

  • platform/chromium/fast/workers/storage/test-authorizer-sync-expected.txt: Removed.
8:24 AM Changeset in webkit [127971] by jchaffraix@webkit.org
  • 12 edits
    2 moves
    5 deletes in trunk/LayoutTests

[Chromium] Layout Tests tables/mozilla/bugs/bug27038*.html are failing
https://bugs.webkit.org/show_bug.cgi?id=93006

Unreviewed Chromium rebaselining.

The tests were not rebaselined after bug 81826 (the TestExpectations were wrongly pointing
to bug 37244). The new rebaselines are expected as we add the extra logical height to the
last section, which was our original behavior before bug 37244.

  • platform/chromium-linux/tables/mozilla/bugs/bug27038-1-expected.png:
  • platform/chromium-linux/tables/mozilla/bugs/bug27038-2-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug27038-1-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug27038-1-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug27038-2-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug27038-1-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug27038-1-expected.txt: Removed.
  • platform/chromium-mac/tables/mozilla/bugs/bug27038-2-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug27038-2-expected.txt: Removed.
  • platform/chromium-win/tables/mozilla/bugs/bug27038-1-expected.png:
  • platform/chromium-win/tables/mozilla/bugs/bug27038-1-expected.txt:
  • platform/chromium-win/tables/mozilla/bugs/bug27038-2-expected.png:
  • platform/chromium-win/tables/mozilla/bugs/bug27038-2-expected.txt:
  • platform/chromium/TestExpectations:
  • platform/gtk/tables/mozilla/bugs/bug27038-1-expected.txt: Removed.
  • platform/gtk/tables/mozilla/bugs/bug27038-2-expected.txt: Removed.
  • tables/mozilla/bugs/bug27038-1-expected.txt: Renamed from LayoutTests/platform/efl/tables/mozilla/bugs/bug27038-1-expected.txt.
  • tables/mozilla/bugs/bug27038-2-expected.txt: Renamed from LayoutTests/platform/efl/tables/mozilla/bugs/bug27038-2-expected.txt.
5:21 AM Changeset in webkit [127970] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

LLInt buildfix for case sensitive filesystems
https://bugs.webkit.org/show_bug.cgi?id=96099

Reviewed by Michael Saboff.

  • llint/LowLevelInterpreter.cpp: Fix filenames.
4:37 AM Changeset in webkit [127969] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Gardening of failing tests after r127939
https://bugs.webkit.org/show_bug.cgi?id=96182

Unreviewed EFL gardening of failing tests after r127939.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-08

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
3:57 AM Changeset in webkit [127968] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Minibrowser crashes on right mouse click
https://bugs.webkit.org/show_bug.cgi?id=95955

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-09-08
Reviewed by Simon Hausmann.

Make early return if the PageClient does not create a ContextMenuProxy.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::internalShowContextMenu):

3:50 AM Changeset in webkit [127967] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt] Fix CoreIPC setup between ProcessLauncher and WebProcessMain on Windows
https://bugs.webkit.org/show_bug.cgi?id=96179

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-08
Reviewed by Kenneth Rohde Christiansen.

  • UIProcess/Launcher/qt/ProcessLauncherQt.cpp:

(WebKit::ProcessLauncher::launchProcess): Hide Unixy platform specific code
and includes behind appropriate platform #ifdefs and use
CoreIPC::Connection::createServerAndClientIdentifiers to set up the IPC pipes.
We also need to tell Windows about our intent of using the client handle in
the child web process.

  • WebProcess/qt/WebProcessMainQt.cpp:

(WebKit::WebProcessMainQt): After retrieving the IPC identifier we call
WebKit::WebProcess::shared().initialize with it. That function actually
cares a CIPC::Connection::Identifier as argument, which happens to be an
int on Unix, but it's actually a HANDLE on Windows. Change the parameter
type according to and a reinterpret_cast from the converted unsigned integer,
similar to WebProcessMainWin.cpp.

3:48 AM Changeset in webkit [127966] by commit-queue@webkit.org
  • 11 edits in trunk

[WK2] New fast/events/tab-focus-link-in-canvas fails from r126908
https://bugs.webkit.org/show_bug.cgi?id=95329

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-08
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add implementation for overriding the WebKitTabToLinksPreferenceKey
preference as well as the corresponding WKPreferences API that
is needed by WebKitTestRunner.

  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetTabToLinksEnabled):
(WKPreferencesGetTabToLinksEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::setTabToLinksEnabled):
(WebKit::WebPage::tabToLinksEnabled):

Tools:

Explicitely disable TabToLinks setting in WebKitTestRunner.
Tests override the "WebKitTabToLinksPreferenceKey" preference
to enable it.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetStateToConsistentValues):

LayoutTests:

Unskip fast/events/tab-focus-link-in-canvas for WK2 now that WebKitTestRunner
supports overriding the "WebKitTabToLinksPreferenceKey" preference.

  • platform/efl-wk2/TestExpectations:
  • platform/wk2/Skipped:
12:36 AM Changeset in webkit [127965] by bashi@chromium.org
  • 2 edits in trunk/Tools

webkit.py gdb pretty printer can't print CString
https://bugs.webkit.org/show_bug.cgi?id=96068

Reviewed by Tony Chang.

Update WTFCStringPrinter to follow r126191.

  • gdb/webkit.py:

(WTFCStringPrinter.to_string):

12:31 AM Changeset in webkit [127964] by anilsson@rim.com
  • 10 edits
    3 adds in trunk/Source/WebCore

[CSS Shaders] [BlackBerry] Refactor CustomFilterMesh and CustomFilter*Program
https://bugs.webkit.org/show_bug.cgi?id=94725

Reviewed by George Staikos.

Separate the MeshGenerator from the CustomFilterMesh into
CustomFilterMeshGenerator.h/cpp. This allows the BlackBerry port to
reuse the mesh generator in its accelerated compositing implementation.

Also add support for creating a "PlatformCompiledProgram" from a
CustomFilterValidatedProgram, so the BlackBerry port can reuse the
shader validation code in its accelerated compositing implementation.

It turns out the GraphicsContext3D is not needed for ANGLE to function,
so this patch removes an ASSERT that required a context before
validating the shaders using ANGLE. This allows the BlackBerry port to
reuse the validation code without triggering the assert. In the future,
the validation code could be moved to a separate class to make it more
obvious that it isn't really related to GraphicsContext3D.

In general, this refactoring can be useful for any port that uses
OpenGL to implement accelerated compositing.

Inspired by an original patch by Joshua Netterfield.

No new tests, because this patch implements no new functionality.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/filters/CustomFilterGlobalContext.cpp:

(WebCore::CustomFilterGlobalContext::getValidatedProgram):

  • platform/graphics/filters/CustomFilterMesh.cpp:

(WebCore::CustomFilterMesh::CustomFilterMesh):

  • platform/graphics/filters/CustomFilterMeshGenerator.cpp: Added.

(WebCore):
(WebCore::CustomFilterMeshGenerator::CustomFilterMeshGenerator):
(WebCore::CustomFilterMeshGenerator::addAttachedMeshIndex):
(WebCore::CustomFilterMeshGenerator::generateAttachedMesh):
(WebCore::CustomFilterMeshGenerator::addDetachedMeshVertexAndIndex):
(WebCore::CustomFilterMeshGenerator::generateDetachedMesh):
(WebCore::CustomFilterMeshGenerator::addPositionAttribute):
(WebCore::CustomFilterMeshGenerator::addTexCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addMeshCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addTriangleCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addAttachedMeshVertexAttributes):
(WebCore::CustomFilterMeshGenerator::addDetachedMeshVertexAttributes):
(WebCore::CustomFilterMeshGenerator::dumpBuffers):

  • platform/graphics/filters/CustomFilterMeshGenerator.h: Added.

(WebCore):
(CustomFilterMeshGenerator):
(WebCore::CustomFilterMeshGenerator::vertices):
(WebCore::CustomFilterMeshGenerator::indices):
(WebCore::CustomFilterMeshGenerator::points):
(WebCore::CustomFilterMeshGenerator::pointsCount):
(WebCore::CustomFilterMeshGenerator::tiles):
(WebCore::CustomFilterMeshGenerator::tilesCount):
(WebCore::CustomFilterMeshGenerator::indicesCount):
(WebCore::CustomFilterMeshGenerator::floatsPerVertex):
(WebCore::CustomFilterMeshGenerator::verticesCount):
(WebCore::CustomFilterMeshGenerator::addTile):

  • platform/graphics/filters/CustomFilterValidatedProgram.cpp:

(WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram):
(WebCore::CustomFilterValidatedProgram::compiledProgram):
(WebCore::CustomFilterValidatedProgram::~CustomFilterValidatedProgram):
(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram):
(WebCore::CustomFilterValidatedProgram::platformDestroy):

  • platform/graphics/filters/CustomFilterValidatedProgram.h:

(WebCore):
(CustomFilterValidatedProgram):

  • platform/graphics/filters/blackberry/CustomFilterValidatedProgramBlackBerry.cpp: Added.

(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram):
(WebCore::CustomFilterValidatedProgram::platformDestroy):

Note: See TracTimeline for information about the timeline view.