Timeline



Sep 29, 2014:

8:34 PM Changeset in webkit [174095] by Brian Burg
  • 7 edits in trunk/Source

Web Inspector: InjectedScripts should not be profiled or displayed in Timeline
https://bugs.webkit.org/show_bug.cgi?id=136806

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

It doesn't make sense to show profile nodes for injected scripts when profiling user content.
For now, omit nodes by suspending profiling before and after executing injected scripts.

  • profiler/LegacyProfiler.cpp:

(JSC::LegacyProfiler::suspendProfiling): Added.
(JSC::LegacyProfiler::unsuspendProfiling): Added.

  • profiler/LegacyProfiler.h:
  • profiler/ProfileGenerator.cpp: Add isSuspended() flag, remove unused typedef.

(JSC::ProfileGenerator::ProfileGenerator):
(JSC::ProfileGenerator::willExecute):
(JSC::ProfileGenerator::didExecute):

  • profiler/ProfileGenerator.h:

(JSC::ProfileGenerator::setIsSuspended): Added.

Source/WebCore:

Instead of creating timeline records for injected scripts, suspend profiling
of the current page before and after calling injected script functions.

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::willCallInjectedScriptFunction):
(WebCore::InspectorController::didCallInjectedScriptFunction):

8:30 PM Changeset in webkit [174094] by Brian Burg
  • 27 edits in trunk/Source

Web Inspector: InspectorValues should use references for out parameters
https://bugs.webkit.org/show_bug.cgi?id=137190

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

Use references for out parameters in asType() and getType() methods.
Also convert to references in some miscellaneous code where we don't
expect or handle null values.

Remove variants of asObject() and asArray() that return a nullable RefPtr.
Now, client code is forced to use out parameters and check for cast failure.

Iron out control flow in some functions and fix some style issues.

  • inspector/InjectedScript.cpp:

(Inspector::InjectedScript::getFunctionDetails):
(Inspector::InjectedScript::wrapObject):
(Inspector::InjectedScript::wrapTable):

  • inspector/InjectedScriptBase.cpp:

(Inspector::InjectedScriptBase::makeEvalCall):

  • inspector/InjectedScriptManager.cpp:

(Inspector::InjectedScriptManager::injectedScriptForObjectId): Simplify control flow.

  • inspector/InspectorBackendDispatcher.cpp:

(Inspector::InspectorBackendDispatcher::dispatch):
(Inspector::getPropertyValue):
(Inspector::AsMethodBridges::asInteger):
(Inspector::AsMethodBridges::asDouble):
(Inspector::AsMethodBridges::asString):
(Inspector::AsMethodBridges::asBoolean):
(Inspector::AsMethodBridges::asObject):
(Inspector::AsMethodBridges::asArray):

  • inspector/InspectorProtocolTypes.h:

(Inspector::Protocol::BindingTraits<Protocol::Array<T>>::runtimeCast):
(Inspector::Protocol::BindingTraits<Protocol::Array<T>>::assertValueHasExpectedType):

  • inspector/InspectorValues.cpp: Use more by-reference out parameters. Add more spacing.

(Inspector::InspectorValue::asBoolean):
(Inspector::InspectorValue::asDouble):
(Inspector::InspectorValue::asInteger):
(Inspector::InspectorValue::asString):
(Inspector::InspectorValue::asValue):
(Inspector::InspectorValue::asObject):
(Inspector::InspectorValue::asArray):
(Inspector::InspectorValue::parseJSON):
(Inspector::InspectorValue::toJSONString):
(Inspector::InspectorValue::writeJSON):
(Inspector::InspectorBasicValue::asBoolean):
(Inspector::InspectorBasicValue::asDouble):
(Inspector::InspectorBasicValue::asInteger):
(Inspector::InspectorBasicValue::writeJSON):
(Inspector::InspectorString::asString):
(Inspector::InspectorString::writeJSON):
(Inspector::InspectorObjectBase::asObject):
(Inspector::InspectorObjectBase::openAccessors):
(Inspector::InspectorObjectBase::getBoolean):
(Inspector::InspectorObjectBase::getString):
(Inspector::InspectorObjectBase::getObject):
(Inspector::InspectorObjectBase::getArray):
(Inspector::InspectorObjectBase::writeJSON):
(Inspector::InspectorArrayBase::asArray):
(Inspector::InspectorArrayBase::writeJSON):

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

(Inspector::InspectorDebuggerAgent::breakpointActionsFromProtocol):
(Inspector::InspectorDebuggerAgent::setBreakpointByUrl):
(Inspector::parseLocation):
(Inspector::InspectorDebuggerAgent::setBreakpoint):
(Inspector::InspectorDebuggerAgent::continueToLocation):
(Inspector::InspectorDebuggerAgent::didParseSource):

  • inspector/agents/InspectorRuntimeAgent.cpp:

(Inspector::InspectorRuntimeAgent::getRuntimeTypesForVariablesAtOffsets):

  • inspector/scripts/codegen/generate_protocol_types_implementation.py:

(ProtocolTypesImplementationGenerator):
(ProtocolTypesImplementationGenerator._generate_assertion_for_enum):

  • inspector/scripts/codegen/generator_templates.py:
  • inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result:
  • replay/EncodedValue.cpp:

(JSC::EncodedValue::asObject):
(JSC::EncodedValue::asArray):
(JSC::EncodedValue::convertTo<bool>):
(JSC::EncodedValue::convertTo<double>):
(JSC::EncodedValue::convertTo<float>):
(JSC::EncodedValue::convertTo<int32_t>):
(JSC::EncodedValue::convertTo<int64_t>):
(JSC::EncodedValue::convertTo<uint32_t>):
(JSC::EncodedValue::convertTo<uint64_t>):
(JSC::EncodedValue::convertTo<String>):

Source/WebCore:

Clean up some call sites to explicitly check for cast success, and simplify
some exceptional control flows.

No new tests, no behavior changed.

  • inspector/CommandLineAPIHost.cpp:

(WebCore::CommandLineAPIHost::inspectImpl):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::computePseudoClassMask):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::parseColor):
(WebCore::parseConfigColor):
(WebCore::parseQuad):
(WebCore::InspectorDOMAgent::performSearch):
(WebCore::InspectorDOMAgent::highlightConfigFromInspectorObject):
(WebCore::InspectorDOMAgent::innerHighlightQuad):
(WebCore::InspectorDOMAgent::highlightFrame):

  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::findStorageArea):

  • inspector/InspectorIndexedDBAgent.cpp: Use NeverDestroyed instead of DEPRECATED_DEFINE_STATIC_LOCAL.
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):

  • inspector/InspectorReplayAgent.cpp:

(WebCore::InspectorReplayAgent::replayToPosition):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::willSendRequest):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::styleWithProperties):

  • inspector/InspectorStyleSheet.h:

(WebCore::InspectorCSSId::InspectorCSSId):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::startFromConsole):
(WebCore::InspectorTimelineAgent::stopFromConsole):

  • inspector/InspectorWorkerAgent.cpp:
7:02 PM Changeset in webkit [174093] by clopez@igalia.com
  • 5 edits in trunk/Tools

[GTK] [EFL] Install TestNetscapePlugin apart from the other libs.
https://bugs.webkit.org/show_bug.cgi?id=137212

This moves TestNetscapePlugin to a new folder (lib/plugins).
We should not use the same directory for TestNetscapePlugin and
the other libraries, because we end up scanning all the .so in the
lib dir for every test.

Reviewed by Carlos Garcia Campos.

  • DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt: Set LIBRARY_OUTPUT_DIRECTORY to lib/plugins.
  • Scripts/webkitpy/port/efl.py:

(EflPort.setup_environ_for_server): Update plugin path.

  • Scripts/webkitpy/port/gtk.py:

(GtkPort.setup_environ_for_server): Update plugin path.

  • TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: Update plugin path.
4:08 PM Changeset in webkit [174092] by ap@apple.com
  • 3 edits in trunk/Tools

A small change to EWS bubble text. Explain why there are messages for ineligible patches.

Rubber-stamped by Tim Horton.

  • QueueStatusServer/app.yaml:
  • QueueStatusServer/handlers/statusbubble.py:

(StatusBubble._build_bubble):

3:38 PM Changeset in webkit [174091] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFG HasStructureProperty codegen should use one fewer registers
https://bugs.webkit.org/show_bug.cgi?id=137235

Reviewed by Andreas Kling.

This was an obvious source of inefficiency and it was causing us to run out of registers on
x86-32.

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

3:25 PM Changeset in webkit [174090] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Don't use GPRResult unless you're flushing registers and making a runtime function call
https://bugs.webkit.org/show_bug.cgi?id=137234

Rubber stamped by Andreas Kling.

Rename GPRResult to GPRFlushedCallResult, in an attempt to dissuade people from using it for results in the
general case.

Replace GPRResult with GPRTemporary in those places where it was causing bugs: particularly in GetDirectPname it
would cause us to spill the register that has the base, and the code was assuming (rightly) that the base and the
result were in different registers. That's a valid assumption when using GPRTemporary but not with GPRResult.
Also this code wasn't getting any benefit from using GPRResult because it wasn't doing flushRegisters().

I don't know how to test this. A test would require setting up a particularly awkward register allocation state.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileIn):
(JSC::DFG::SpeculativeJIT::compileNewFunctionNoCheck):
(JSC::DFG::SpeculativeJIT::compileNewFunctionExpression):
(JSC::DFG::SpeculativeJIT::compileRegExpExec):
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileToStringOnCell):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::GPRFlushedCallResult::GPRFlushedCallResult):
(JSC::DFG::GPRFlushedCallResult2::GPRFlushedCallResult2):
(JSC::DFG::GPRResult::GPRResult): Deleted.
(JSC::DFG::GPRResult2::GPRResult2): Deleted.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::speculateDoubleRepMachineInt):

3:23 PM Changeset in webkit [174089] by Chris Dumez
  • 68 edits in trunk/Source

Use is<>() / downcast<>() for Document
https://bugs.webkit.org/show_bug.cgi?id=137221

Reviewed by Andreas Kling.

Use is<>() / downcast<>() for Document instead of isDocumentNode() /
toDocument().

Source/WebCore:

No new tests, no behavior change.

  • Modules/geolocation/Geolocation.cpp:

(WebCore::Geolocation::document):
(WebCore::Geolocation::frame):
(WebCore::Geolocation::page):

  • Modules/indexeddb/IDBFactory.cpp:
  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::document):

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::RTCPeerConnection):

  • Modules/notifications/Notification.cpp:

(WebCore::Notification::Notification):
(WebCore::Notification::show):
(WebCore::Notification::permission):
(WebCore::Notification::requestPermission):

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::document):

  • Modules/webaudio/OfflineAudioContext.cpp:

(WebCore::OfflineAudioContext::create):

  • Modules/webdatabase/DatabaseContext.cpp:

(WebCore::DatabaseContext::allowDatabaseAccess):
(WebCore::DatabaseContext::databaseExceededQuota):

  • Modules/websockets/ThreadableWebSocketChannel.cpp:

(WebCore::ThreadableWebSocketChannel::create):

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::connect):

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::clientHandshakeMessage):
(WebCore::WebSocketHandshake::clientHandshakeRequest):

  • Modules/websockets/WorkerThreadableWebSocketChannel.cpp:

(WebCore::WorkerThreadableWebSocketChannel::Peer::Peer):

  • bindings/gobject/WebKitDOMPrivate.cpp:

(WebKit::wrap):

  • bindings/js/DOMConstructorWithDocument.h:

(WebCore::DOMConstructorWithDocument::document):

  • bindings/js/DOMRequestState.h:

(WebCore::DOMRequestState::DOMRequestState):
(WebCore::DOMRequestState::clear):

  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::constructJSAudioContext):

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::toJSDOMGlobalObject):

  • bindings/js/JSLazyEventListener.cpp:

(WebCore::JSLazyEventListener::initializeJSFunction):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::createWrapperInline):

  • bindings/js/ScheduledAction.cpp:

(WebCore::ScheduledAction::execute):

  • bindings/js/ScriptState.cpp:

(WebCore::frameFromExecState):

  • crypto/SubtleCrypto.cpp:

(WebCore::SubtleCrypto::document):

  • dom/Comment.cpp:

(WebCore::Comment::create):

  • dom/ContainerNode.cpp:

(WebCore::checkAcceptChild):

  • dom/ContainerNodeAlgorithms.cpp:

(WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument):

  • dom/Document.h:

(WebCore::isDocument):

  • dom/DocumentFragment.cpp:

(WebCore::DocumentFragment::create):

  • dom/Element.cpp:

(WebCore::Element::computeInheritedLanguage):

  • dom/EventDispatcher.cpp:

(WebCore::WindowEventContext::WindowEventContext):

  • dom/EventTarget.cpp:

(WebCore::EventTarget::fireEventListeners):

  • dom/NamedFlowCollection.cpp:

(WebCore::NamedFlowCollection::document):

  • dom/Node.cpp:

(WebCore::Node::isDefaultNamespace):
(WebCore::Node::lookupPrefix):
(WebCore::Node::lookupNamespaceURI):
(WebCore::Node::removedLastRef):

  • dom/Range.cpp:

(WebCore::Range::create):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::dispatchErrorEvent):

  • dom/Text.cpp:

(WebCore::Text::create):

  • editing/MarkupAccumulator.cpp:

(WebCore::MarkupAccumulator::appendStartMarkup):

  • html/HTMLDocument.h:

(WebCore::isHTMLDocument):

  • html/HTMLNameCollection.h:

(WebCore::HTMLNameCollection::document):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::insertedInto):

  • html/ImageDocument.h:

(WebCore::isImageDocument):

  • html/MediaDocument.h:

(WebCore::isMediaDocument):

  • html/PluginDocument.h:

(WebCore::isPluginDocument):

  • html/track/TextTrackCue.h:

(WebCore::TextTrackCue::ownerDocument):

  • html/track/VTTCue.cpp:

(WebCore::VTTCue::initialize):

  • html/track/VTTRegion.h:

(WebCore::VTTRegion::ownerDocument):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::assertDocument):
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::innerParentNode):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::frameForScriptExecutionContext):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::instrumentingAgentsForContext):

  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::corsPolicyPreventedLoad):
(WebCore::TextTrackLoader::notifyFinished):
(WebCore::TextTrackLoader::load):

  • loader/ThreadableLoader.cpp:

(WebCore::ThreadableLoader::create):
(WebCore::ThreadableLoader::loadResourceSynchronously):

  • loader/WorkerThreadableLoader.cpp:

(WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):

  • page/ContentSecurityPolicy.cpp:

(WebCore::ContentSecurityPolicy::reportViolation):

  • page/Crypto.cpp:

(WebCore::Crypto::document):

  • page/DOMTimer.cpp:

(WebCore::DOMTimer::install):
(WebCore::DOMTimer::fired):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::focus):
(WebCore::DOMWindow::close):
(WebCore::DOMWindow::document):
(WebCore::DOMWindow::styleMedia):
(WebCore::DOMWindow::getComputedStyle):

  • page/DragController.cpp:

(WebCore::DragController::dragExited):
(WebCore::DragController::dragEnteredOrUpdated):

  • page/EventSource.cpp:

(WebCore::EventSource::create):

  • page/FocusController.cpp:

(WebCore::FocusController::advanceFocusDirectionally):

  • page/History.cpp:

(WebCore::History::go):

  • page/SpatialNavigation.cpp:

(WebCore::scrollInDirection):
(WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDirection):
(WebCore::canScrollInDirection):
(WebCore::nodeRectInAbsoluteCoordinates):

  • svg/SVGDocument.h:

(WebCore::isSVGDocument):

  • testing/Internals.cpp:

(WebCore::Internals::contextDocument):
(WebCore::Internals::frame):
(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):

  • testing/js/WebCoreTestSupport.cpp:

(WebCoreTestSupport::injectInternalsObject):
(WebCoreTestSupport::resetInternalsObject):

  • workers/DefaultSharedWorkerRepository.cpp:

(WebCore::SharedWorkerProxy::addToWorkerDocuments):

  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::startWorkerGlobalScope):

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::document):
(WebCore::XMLHttpRequest::open):

Source/WebKit2:

  • WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:

(-[WKDOMDocument createElement:]):
(-[WKDOMDocument createTextNode:]):
(-[WKDOMDocument body]):

3:14 PM Changeset in webkit [174088] by ap@apple.com
  • 3 edits in trunk/Tools

Typo fix, suggested by Tim Horton.

  • QueueStatusServer/handlers/statusbubble.py:

(StatusBubble._build_message_for_provisional_failure):

2:55 PM Changeset in webkit [174087] by ap@apple.com
  • 5 edits in trunk/Tools

Improve Bugzilla status bubbles
https://bugs.webkit.org/show_bug.cgi?id=137232

Reviewed by Ryosuke Niwa.

  • QueueStatusServer/app.yaml: Will update again with an actual version when landing.
  • QueueStatusServer/handlers/statusbubble.py: Eliminated yellow color, added

blue and orange. Significantly extended tooltips. Made bubbles show up even for queues
that are stuck, as it was only confusing that they disappeared after 99.

  • QueueStatusServer/model/attachment.py: Removed functionality that was only used

by old bubbles. We need a lot more information to determine color, so the implementation
can not be here.

  • QueueStatusServer/templates/statusbubble.html: Updated colors in CSS, made bubbles

always have a link for consistency. Added code to convert timestamps in tooltips
to local time zone.

2:26 PM Changeset in webkit [174086] by commit-queue@webkit.org
  • 17 edits
    1 move
    1 add in trunk

Unreviewed, rolling out r174045.
https://bugs.webkit.org/show_bug.cgi?id=137231

Introduced a crash during page loading tests on Mac (Requested
by rniwa on #webkit).

Reverted changeset:

"Replace OSObjectPtr with RetainPtr/adoptOS"
https://bugs.webkit.org/show_bug.cgi?id=137158
http://trac.webkit.org/changeset/174045

1:54 PM Changeset in webkit [174085] by hyatt@apple.com
  • 4 edits
    2 adds in trunk

REGRESSION (r168046): Confused column spans when combined with dynamic animations
https://bugs.webkit.org/show_bug.cgi?id=134048.

Reviewed by Dean Jackson.

Source/WebCore:

Added fast/multicol/multicol-fieldset-span-changes.html

  • rendering/RenderMultiColumnFlowThread.cpp:

(WebCore::RenderMultiColumnFlowThread::processPossibleSpannerDescendant):
Refactor handling of insertions into the multicolumn flow thread into
a helper function, processPossibleSpannerDescendant. This makes it easier
to call the code from more than one place.

(WebCore::RenderMultiColumnFlowThread::flowThreadDescendantInserted):
Modify the nested columns span shifting code to avoid problems. The
new code suppresses notifications and does the move of the spanner back
into the original spot *before* removing the placeholder. This ensures that
the placeholder parent still exists.

The stale placeholder is then removed and destroyed after the spanner has been put back
into place.

(WebCore::RenderMultiColumnFlowThread::handleSpannerRemoval):
(WebCore::RenderMultiColumnFlowThread::flowThreadRelativeWillBeRemoved):
Refactor the removal notifications for spanners into a helper function so that it can
be called to do cleanup from the code that cleans up stale placeholders on a shift.

  • rendering/RenderMultiColumnFlowThread.h:

Modified to add the new helpers.

LayoutTests:

  • fast/multicol/multicol-fieldset-span-changes-expected.txt: Added.
  • fast/multicol/multicol-fieldset-span-changes.html: Added.
1:50 PM Changeset in webkit [174084] by Chris Dumez
  • 7 edits in trunk/Source/WebCore

Use SPECIALIZE_TYPE_TRAITS_*() macro for MathMLElement
https://bugs.webkit.org/show_bug.cgi?id=137222

Reviewed by Ryosuke Niwa.

Use SPECIALIZE_TYPE_TRAITS_*() macro for MathMLElement instead of
NODE_TYPE_CASTS() + NodeTypeCastTraits template specialization.

No new tests, no behavior change.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::accessibilityDescription):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::isMathElement):

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

  • mathml/MathMLElement.cpp:

(WebCore::MathMLElement::attributeChanged):

  • mathml/MathMLElement.h:

(WebCore::isMathMLElement):

  • mathml/MathMLSelectElement.cpp:

(WebCore::MathMLSelectElement::getSelectedSemanticsChild):

1:39 PM Changeset in webkit [174083] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Windows] Skip some failing inspector tests following r174020.

  • platform/win/TestExpectations:
1:25 PM Changeset in webkit [174082] by roger_fong@apple.com
  • 3 edits in trunk/LayoutTests

[Mac] Unreviewed. Missing test gardening from r174080.

  • accessibility/roles-computedRoleString-expected.txt:
  • accessibility/roles-computedRoleString.html:
1:19 PM Changeset in webkit [174081] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Set the TBA versions based on the PLATFORM_NAME
https://bugs.webkit.org/show_bug.cgi?id=137226
Follow-up fix for <rdar://problem/17761459>.

Reviewed by Dan Bernstein.

  • mac/rewrite-availability-macros.sh:

Turns out that MACOSX_DEPLOYMENT_TARGET is set even for iOS builds,
so set the versions based on the PLATFORM_NAME environment variable.

12:42 PM Changeset in webkit [174080] by roger_fong@apple.com
  • 4 edits in trunk/LayoutTests

[Mac] Unreviewed test gardening.

These accessibility tests need to be changed following r174074.

  • accessibility/aria-labelledby-with-descendants-expected.txt:
  • accessibility/roles-computedRoleString.html:
  • platform/mac/TestExpectations: Some previously skipped inspector tests crash in debug configuration.
12:29 PM Changeset in webkit [174079] by eric.carlson@apple.com
  • 3 edits in trunk/Source/WebCore

[Mac] Remove MediaPlayerPrivateQTKit frame rate code
https://bugs.webkit.org/show_bug.cgi?id=137217

Reviewed by Carlos Garcia Campos.

No new tests, this removes obsolete code.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::MediaPlayerPrivateQTKit):
(WebCore::MediaPlayerPrivateQTKit::play):
(WebCore::MediaPlayerPrivateQTKit::pause):
(WebCore::MediaPlayerPrivateQTKit::didEnd):
(WebCore::MediaPlayerPrivateQTKit::repaint):
(WebCore::MediaPlayerPrivateQTKit::paint):

12:26 PM Changeset in webkit [174078] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Add Jake as a contributor.

  • Scripts/webkitpy/common/config/contributors.json:
12:13 PM Changeset in webkit [174077] by roger_fong@apple.com
  • 2 edits in trunk/Tools

[Windows] Skip a javascriptcore test following r174036.

  • Scripts/run-javascriptcore-tests:
11:42 AM Changeset in webkit [174076] by roger_fong@apple.com
  • 2 edits in trunk/Tools

[Windows] Reduce number of processes used by NRWT on Windows to 1.

  • Scripts/webkitpy/port/win.py:

(WinPort.default_child_processes):
Reduce number of processes to 1 so we can get a good baseline for what failures
we should be expecting to see from the Windows bots.

11:28 AM Changeset in webkit [174075] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::performActionOnElement):

11:18 AM Changeset in webkit [174074] by Chris Fleizach
  • 7 edits
    2 adds in trunk

AX: in an aria-labelledby computation, do not traverse into elements whose nameFrom value does not include 'contents'
https://bugs.webkit.org/show_bug.cgi?id=136714

Reviewed by Darin Adler.

Source/WebCore:

There are certain ARIA elements that tell us we should not query their children when determining the name of the object.
Those ones have the "nameFrom" property set to "author" instead of "contents." WebKit needs to honor that status.

Test: accessibility/aria-namefrom-author.html

Modified: accessibility/aria-labelledby-with-descendants.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::shouldUseAccessiblityObjectInnerText):
(WebCore::shouldAddSpaceBeforeAppendingNextElement):
(WebCore::appendNameToStringBuilder):
(WebCore::AccessibilityNodeObject::textUnderElement):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::accessibleNameDerivesFromContent):
(WebCore::initializeRoleMap):

  • accessibility/AccessibilityObject.h:

LayoutTests:

  • accessibility/aria-labelledby-with-descendants-expected.txt:
  • accessibility/aria-labelledby-with-descendants.html:
  • accessibility/aria-namefrom-author-expected.txt: Added.
  • accessibility/aria-namefrom-author.html: Added.
11:12 AM Changeset in webkit [174073] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Optimize media controls AirPlay discovery
https://bugs.webkit.org/show_bug.cgi?id=137180

Reviewed by Darin Adler.

AirPlay discovery mode uses increases power consumption, so don't enable it when there
is no chance an AirPlay target picker will be useful.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS): Initialize isListeningForPlaybackTargetAvailabilityEvent.
(ControllerIOS.prototype.addVideoListeners): Don't enable register wireless playback event

listeners, it isn't possible to show the target picker until there is an inline controller.

(ControllerIOS.prototype.removeVideoListeners): Call setShouldListenForPlaybackTargetAvailabilityEvent.
(ControllerIOS.prototype.setControlsType): Add wireless event listers on when not showing

the one button controller.

(ControllerIOS.prototype.updateStatusDisplay): Unregister wireless event listeners when the

media element is in an error state.

(ControllerIOS.prototype.setShouldListenForPlaybackTargetAvailabilityEvent): New, add or

remove event listeners.

11:05 AM Changeset in webkit [174072] by aestes@apple.com
  • 8 edits in trunk/Source/WebKit2

[iOS] Add basic support for link navigation in WKPDFView
https://bugs.webkit.org/show_bug.cgi?id=137182

Reviewed by Tim Horton.

Teach WKPDFView to navigate to URLs when PDF link annotations are tapped.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::navigateToURLWithSimulatedClick): Sent Messages::WebPage::NavigateToURLWithSimulatedClick.

  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/WKPDFView.h:
  • UIProcess/ios/WKPDFView.mm:

(-[WKPDFView _clearPages]): Removed self as the UIPDFAnnotationControllerDelegate.
(-[WKPDFView _revalidateViews]): Added self as the UIPDFAnnotationControllerDelegate.
(-[WKPDFView annotation:wasTouchedAtPoint:controller:]): Retrieved the URL from the touched annotation,
computed the touched point relative to the WKPDFView and to the screen, and called
navigateToURLWithSimulatedClick() after a 200 ms delay in order to show a soon-to-be-added tap highlight
(this value matches the delay in UIWebPDFView).

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::navigateToURLWithSimulatedClick): Created a fake single-click MouseEvent and called
FrameLoader::urlSelected(). Creating a mouse event ensures that the navigation appears as a
NavigationTypeLinkClicked in navigation policy delegates.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
11:00 AM Changeset in webkit [174071] by eric.carlson@apple.com
  • 5 edits in trunk/Source/WebCore

[iOS] Remove obsolete playbackTargetAvailabilityChanged methods
https://bugs.webkit.org/show_bug.cgi?id=137179

Reviewed by Darin Adler.

No new tests, this just removes unused code.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerPlaybackTargetAvailabilityChanged): Deleted.

  • html/HTMLMediaElement.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::playbackTargetAvailabilityChanged): Deleted.

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerPlaybackTargetAvailabilityChanged): Deleted.

10:44 AM Changeset in webkit [174070] by commit-queue@webkit.org
  • 2 edits in trunk/Source/ThirdParty/ANGLE

[WinCairo] D3D11 is not used by default.
https://bugs.webkit.org/show_bug.cgi?id=137215

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-29
Reviewed by Alex Christensen.

ANGLE_DEFAULT_D3D11 needs to be defined for D3D11 to be used as default.

  • ANGLE.vcxproj/libGLESv2Common.props:
10:35 AM Changeset in webkit [174069] by Chris Dumez
  • 28 edits in trunk/Source/WebCore

Use the new is<>() / downcast<>() for ShadowRoot and StyledElement
https://bugs.webkit.org/show_bug.cgi?id=137199

Reviewed by Darin Adler.

Use the new is<>() / downcast<>() for ShadowRoot and StyledElement and
move towards getting rid of the NODE_TYPE_CASTS() macro.

No new tests, no behavior change.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::matchAllRules):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::State::initElement):
(WebCore::StyleResolver::State::initForStyleResolve):
(WebCore::StyleResolver::locateCousinList):
(WebCore::StyleResolver::findSiblingForStyleSharing):

  • dom/Attr.cpp:

(WebCore::Attr::style):

  • dom/Element.cpp:

(WebCore::Element::removeAttribute):

  • dom/EventDispatcher.cpp:

(WebCore::EventRelatedNodeResolver::moveToParentOrShadowHost):
(WebCore::EventRelatedNodeResolver::findHostOfTreeScopeInTargetTreeScope):
(WebCore::eventTargetRespectingTargetRules):
(WebCore::EventPath::EventPath):

  • dom/Node.cpp:

(WebCore::Node::containingShadowRoot):
(WebCore::Node::parentOrShadowHostElement):
(WebCore::Node::showNodePathForThis):

  • dom/NodeRenderingTraversal.cpp:

(WebCore::NodeRenderingTraversal::traverseParent):

  • dom/ShadowRoot.h:

(WebCore::isShadowRoot):
(WebCore::Node::shadowRoot):
(WebCore::Node::parentOrShadowHostNode):

  • dom/StyledElement.h:

(WebCore::StyledElement::presentationAttributeStyle):
(WebCore::isStyledElement):

  • dom/Text.cpp:

(WebCore::isSVGShadowText):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::focusedElement):

  • dom/TreeScopeAdopter.cpp:

(WebCore::TreeScopeAdopter::moveNodeToNewDocument):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
(WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):

  • editing/EditingStyle.cpp:

(WebCore::EditingStyle::wrappingStyleForSerialization):

  • editing/Editor.cpp:

(WebCore::Editor::applyEditingStyleToElement):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverterCaches::inlineStylePropertyForElement):

  • editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::appendElement):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):

  • inspector/InspectorOverlay.cpp:

(WebCore::buildObjectForElementInfo):

  • page/DragController.cpp:

(WebCore::asFileInput):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):

  • page/FocusController.cpp:

(WebCore::FocusNavigationScope::owner):

  • page/PageSerializer.cpp:

(WebCore::PageSerializer::serializeFrame):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::resize):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::title):

  • testing/Internals.cpp:

(WebCore::Internals::shadowRoot):
(WebCore::Internals::shadowRootType):
(WebCore::Internals::includerFor):

10:20 AM Changeset in webkit [174068] by Chris Dumez
  • 43 edits in trunk/Source

Use the new is<>() / downcast<>() for Text Nodes
https://bugs.webkit.org/show_bug.cgi?id=137188

Reviewed by Darin Adler.

Use the new is<>() / downcast<>() functions for Text Nodes instead of
isText() / toText().

Source/WebCore:

No new tests, no behavior change.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::textUnderElement):

  • bindings/gobject/WebKitDOMPrivate.cpp:

(WebKit::wrap):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • dom/CharacterData.cpp:

(WebCore::CharacterData::parserAppendData):
(WebCore::CharacterData::setDataAndUpdate):

  • dom/ContainerNode.cpp:

(WebCore::destroyRenderTreeIfNeeded):

  • dom/Node.cpp:

(WebCore::Node::normalize):

  • dom/Position.cpp:

(WebCore::Position::containerNode):
(WebCore::Position::containerText):
(WebCore::Position::isRenderedCharacter):
(WebCore::Position::leadingWhitespacePosition):

  • dom/Range.cpp:

(WebCore::Range::insertNode):
(WebCore::Range::getBorderAndTextQuads):

  • dom/Text.cpp:

(WebCore::earliestLogicallyAdjacentTextNode):
(WebCore::latestLogicallyAdjacentTextNode):

  • dom/Text.h:

(WebCore::isText):

  • dom/TextNodeTraversal.cpp:

(WebCore::TextNodeTraversal::contentsAsString):

  • dom/TextNodeTraversal.h:

(WebCore::TextNodeTraversal::firstTextChildTemplate):
(WebCore::TextNodeTraversal::firstTextWithinTemplate):
(WebCore::TextNodeTraversal::traverseNextTextTemplate):
(WebCore::TextNodeTraversal::nextSibling):

  • editing/ApplyBlockElementCommand.cpp:

(WebCore::isNewLineAtPosition):
(WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::splitTextAtEnd):
(WebCore::ApplyStyleCommand::splitTextElementAtEnd):
(WebCore::ApplyStyleCommand::joinChildTextNodes):

  • editing/BreakBlockquoteCommand.cpp:

(WebCore::BreakBlockquoteCommand::doApply):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::insertNodeAt):
(WebCore::CompositeEditCommand::positionOutsideTabSpan):
(WebCore::CompositeEditCommand::canRebalance):
(WebCore::CompositeEditCommand::rebalanceWhitespaceAt):
(WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
(WebCore::CompositeEditCommand::deleteInsignificantText):
(WebCore::CompositeEditCommand::removePlaceholderAt):
(WebCore::CompositeEditCommand::cleanupAfterDeletion):
(WebCore::CompositeEditCommand::moveParagraphs):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::handleGeneralDelete):
(WebCore::DeleteSelectionCommand::fixupWhitespace):
(WebCore::DeleteSelectionCommand::doApply):

  • editing/Editor.cpp:

(WebCore::Editor::setComposition):

  • editing/InsertLineBreakCommand.cpp:

(WebCore::InsertLineBreakCommand::doApply):

  • editing/InsertParagraphSeparatorCommand.cpp:

(WebCore::InsertParagraphSeparatorCommand::doApply):

  • editing/InsertTextCommand.cpp:

(WebCore::InsertTextCommand::insertTab):

  • editing/MarkupAccumulator.cpp:

(WebCore::MarkupAccumulator::appendStartMarkup):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds):
(WebCore::ReplaceSelectionCommand::addSpacesForSmartReplace):
(WebCore::ReplaceSelectionCommand::mergeTextNodesAroundPosition):
(WebCore::ReplaceSelectionCommand::insertAsListItems):
(WebCore::ReplaceSelectionCommand::performTrivialReplace):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::handleTextNode):
(WebCore::TextIterator::handleTextBox):
(WebCore::SimplifiedBackwardsTextIterator::handleTextNode):

  • editing/VisibleUnits.cpp:

(WebCore::startPositionForLine):
(WebCore::endPositionForLine):
(WebCore::startOfParagraph):
(WebCore::endOfParagraph):

  • editing/htmlediting.cpp:

(WebCore::lineBreakExistsAtPosition):

  • editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::renderedText):
(WebCore::replaceChildrenWithFragment):
(WebCore::replaceChildrenWithText):

  • html/HTMLElement.cpp:

(WebCore::mergeWithNextTextNode):
(WebCore::HTMLElement::setOuterHTML):
(WebCore::HTMLElement::setOuterText):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::hasFallbackContent):
(WebCore::HTMLObjectElement::updateDocNamedItem):

  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::setText):

  • html/HTMLScriptElement.cpp:

(WebCore::HTMLScriptElement::setText):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::innerTextValue):
(WebCore::positionForIndex):
(WebCore::HTMLTextFormControlElement::indexForPosition):
(WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):

  • html/HTMLTitleElement.cpp:

(WebCore::HTMLTitleElement::setText):

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::insertTextNode):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::setNodeValue):

  • rendering/RenderCombineText.h:
  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::getRanges):

  • rendering/RenderText.cpp:

(WebCore::RenderText::textNode):

  • rendering/svg/RenderSVGInlineText.h:
  • style/StyleResolveTree.cpp:

(WebCore::Style::invalidateWhitespaceOnlyTextSiblingsAfterAttachIfNeeded):
(WebCore::Style::attachChildren):
(WebCore::Style::attachDistributedChildren):
(WebCore::Style::detachDistributedChildren):
(WebCore::Style::detachChildren):
(WebCore::Style::resolveShadowTree):
(WebCore::Style::resolveTree):

Source/WebKit2:

  • WebProcess/InjectedBundle/API/mac/WKDOMText.mm:

(-[WKDOMText data]):
(-[WKDOMText setData:]):

10:16 AM Changeset in webkit [174067] by Chris Dumez
  • 14 edits in trunk/Source/WebCore

Remove remaining uses of NODE_TYPE_CASTS() from html/
https://bugs.webkit.org/show_bug.cgi?id=137172

Reviewed by Darin Adler.

Remove remaining uses of NODE_TYPE_CASTS() from html/ and use the new
SPECIALIZE_TYPE_TRAITS_*() macro instead so that is<>() / downcast<>()
works for those types.

No new tests, no behavior change.

  • css/SelectorCheckerTestFunctions.h:

(WebCore::matchesLangPseudoClass):
(WebCore::matchesFutureCuePseudoClass):
(WebCore::matchesPastCuePseudoClass):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::canShareStyleWithElement):
The new casting function found a bad cast from a StyledElement to VTTElement.
Those two types are unrelated as VTTElement inherits directly from Element.
Knowing that |element| in this method cannot be a VTTElement simplifies the
logic a bit.

  • dom/NodeRenderingTraversal.cpp:

(WebCore::NodeRenderingTraversal::findFirstEnteringInsertionPoints):
(WebCore::NodeRenderingTraversal::findLastEnteringInsertionPoints):
(WebCore::NodeRenderingTraversal::traverseParent):

  • html/HTMLLabelElement.cpp:

(WebCore::nodeAsSupportedLabelableElement):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::innerTextElement):

  • html/LabelableElement.h:

(WebCore::isLabelableElement):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistributor::ensureInsertionPointList):

  • html/shadow/InsertionPoint.h:

(WebCore::isInsertionPoint):
(WebCore::isActiveInsertionPoint):
(WebCore::parentNodeForDistribution):

  • html/shadow/TextControlInnerElements.h:

(WebCore::isTextControlInnerTextElement):

  • html/track/VTTCue.cpp:

(WebCore::VTTCue::copyWebVTTNodeToDOMTree):
(WebCore::VTTCue::markFutureAndPastNodes):

  • html/track/WebVTTElement.h:

(WebCore::isWebVTTElement):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTTreeBuilder::constructTreeFromToken):

  • style/StyleResolveTree.cpp:

(WebCore::Style::attachRenderTree):
(WebCore::Style::detachChildren):

10:05 AM Changeset in webkit [174066] by commit-queue@webkit.org
  • 5 edits in trunk

Missing changes from r174049
https://bugs.webkit.org/show_bug.cgi?id=137206

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-09-29
Reviewed by Darin Adler.

Source/JavaScriptCore:

  • runtime/CommonIdentifiers.h:

LayoutTests:

  • js/number-constructor-expected.txt:
  • js/script-tests/number-constructor.js:
9:58 AM Changeset in webkit [174065] by Chris Dumez
  • 23 edits in trunk/Source

Make is<>() / downcast<>() work for HTMLDocument and its subclasses
https://bugs.webkit.org/show_bug.cgi?id=137169

Reviewed by Darin Adler.

Source/WebCore:

Make is<>() / downcast<>() work for HTMLDocument and its subclasses by
using the SPECIALIZE_TYPE_TRAITS_*() macro. Drop the DOCUMENT_TYPE_CASTS()
macro as it is no longer needed.

No new tests, no behavior change.

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::namedItemGetter):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):

  • dom/Document.cpp:

(WebCore::Document::prepareForDestruction):
(WebCore::Document::processHttpEquiv):
(WebCore::eventTargetElementForDocument):

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

(WebCore::Element::insertedInto):
(WebCore::Element::removedFrom):
(WebCore::Element::updateName):
(WebCore::Element::updateId):

  • html/HTMLDocument.h:

(WebCore::isHTMLDocument):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::matchesReadWritePseudoClass):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::updateWidget):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::parseAttribute):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::updateDocNamedItem):

  • html/ImageDocument.cpp:

(WebCore::ImageDocumentParser::document):

  • html/ImageDocument.h:

(WebCore::isImageDocument):

  • html/MediaDocument.h:

(WebCore::isMediaDocument):

  • html/PluginDocument.cpp:

(WebCore::PluginDocumentParser::createDocumentStructure):

  • html/PluginDocument.h:

(WebCore::isPluginDocument):

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadPlugin):

  • page/DragController.cpp:

(WebCore::DragController::operationForLoad):

  • page/FrameView.cpp:

(WebCore::determineLayerFlushThrottleState):

Source/WebKit/win:

Use is<>() / downcast<>() for HTMLDocument and its subclasses.

  • DOMHTMLClasses.cpp:

(DOMHTMLDocument::URL):
(DOMHTMLDocument::body):
(DOMHTMLDocument::forms):

Source/WebKit2:

Use is<>() / downcast<>() for HTMLDocument and its subclasses.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::pdfDocumentForPrintingFrame):

9:31 AM Changeset in webkit [174064] by Bruno de Oliveira Abinader
  • 4 edits
    2 deletes in trunk

Revert "Support for :enabled selector on Anchor & Area elements"
https://bugs.webkit.org/show_bug.cgi?id=134826

Reviewed by Darin Adler.

Source/WebCore:

HTML spec has been modified [1] to disable support for :enabled CSS
selector on Anchor, Area & Link elements, after discussion on W3C
Bugzilla [2].

This reverts r171671.

[1] https://html5.org/r/8818
[2] https://www.w3.org/Bugs/Public/show_bug.cgi?id=26622

  • css/SelectorCheckerTestFunctions.h:

(WebCore::isEnabled):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::parseAttribute):

LayoutTests:

These layout tests are no longer correct after changes to the :enabled
CSS selector specification.

  • fast/css/css-selector-enabled-links-expected.txt: Removed.
  • fast/css/css-selector-enabled-links.html: Removed.
9:26 AM Changeset in webkit [174063] by Darin Adler
  • 4 edits in trunk

Tweak and tighten SVG font converter
https://bugs.webkit.org/show_bug.cgi?id=136956

Reviewed by Myles Maxfield.

Source/WebCore:

  • svg/SVGToOTFFontConversion.cpp: Fixed copyright date.

(WebCore::overwrite32): Changed to use normal subscripting for clarity.
(WebCore::overwrite16): Added.
(WebCore::SVGToOTFFontConverter::GlyphData::GlyphData): Added a move
to make constructing each GlyphData less expensive.
(WebCore::SVGToOTFFontConverter::KerningData): Removed the < operator
since it the struct contains more than what we want to sort it by, so it's
not elegant to build the sorting rule into the struct.
(WebCore::SVGToOTFFontConverter): Removed "k" prefix from some constants.
Replaced many function templates with non-template functions. Changed
key type for m_codepointToIndexMap to UChar32.
(WebCore::integralLog2): Tweaked formatting.
(WebCore::SVGToOTFFontConverter::appendCMAPTable): Removed a stray
cast that doesn't have any effect. Use the Glyph type to index m_glyphs.
(WebCore::SVGToOTFFontConverter::appendHEADTable): Append the magic
number in a more straightforward way.
(WebCore::clampTo): Tweak formatting of the template function.
(WebCore::SVGToOTFFontConverter::appendHHEATable): Made some minor
style changes and improved some comments.
(WebCore::SVGToOTFFontConverter::appendOS2Table): Made some minor
style changes and tightened up code that did parsing a bit, removing the
dynamically allocated array for the fixed length Panose number.
Also use first and last instead of hand-coded versions of those.
(WebCore::appendValidCFFString): Renamed.
(WebCore::SVGToOTFFontConverter::appendCFFTable): Made various tweaks,
including more specific of null for the "no weight" value instead of
either empty or null.
(WebCore::SVGToOTFFontConverter::appendVORGTable): Simplified some of
the numeric parsing, since toInt is guaranteed to return 0 when it also
would return "false" for ok. Also got rid of a local vector and instead
just fixed up the size of the table afterward.
(WebCore::SVGToOTFFontConverter::appendVHEATable): Tweaked comment.
(WebCore::SVGToOTFFontConverter::addCodepointRanges): Use isValidKey
instead of a local hardcoded rule to check hash table key validity.
Check for zero in the result of get rather than using find on the HashMap.
(WebCore::SVGToOTFFontConverter::addCodepointRanges): Ditto.
(WebCore::SVGToOTFFontConverter::addGlyphNames): Ditto.
(WebCore::SVGToOTFFontConverter::addKerningPair): Added. Factored out from
appendKERNSubtable to reduce template bloat and improve clarity.
(WebCore::SVGToOTFFontConverter::appendKERNSubtable): Tweaked formatting.
Moved the bulk of the function into non-template function.
(WebCore::SVGToOTFFontConverter::finishAppendingKERNSubtable): Added.
Non-template part of appendKERNSubtable. Also changed std::sort to supply
custom comparison function rather than trying to use the < operator directly
on KerningData.
(WebCore::writeCFFEncodedNumber): Don't use powf just to multiply by
216. It's pretty easy to do that with plain old multiplication.
(WebCore::CFFBuilder::CFFBuilder): Renamed m_firstPoint to
m_hasBoundingBox.
(WebCore::CFFBuilder::boundingBox): Made this public and const and made
the rest of the class private.
(WebCore::CFFBuilder::updateBoundingBox): Used early return and revised
to use m_hasBoundingBox.
(WebCore::CFFBuilder::writePoint): Added. Used to keep the other
functions below smaller.
(WebCore::CFFBuilder::moveTo): Marked virtual and simplified using writePoint.
Might find a way to simplify even further by teaching writePoint about
the PathCoordinateMode.
(WebCore::CFFBuilder::lineTo): Ditto.
(WebCore::CFFBuilder::curveToCubic): Ditto. Also removed comment that said
the function could be faster. Not sure that's important to state like this.
(WebCore::SVGToOTFFontConverter::transcodeGlyphPaths): Changed into a
non-template function. Tweaked logic and formatting a bit.
(WebCore::SVGToOTFFontConverter::processGlyphElement): Changed into a
non-template function. Moved the code from appendGlyphData in here.
Use WTF::move so we don't copy the glyph paths when creating a GlyphData.
(WebCore::SVGToOTFFontConverter::SVGToOTFFontConverter): Updated a bit for
function changes above. Changed code to use isValidKey to check if we can
add to m_codepointToIndexMap. Parse font-style rather than parsing
font-weight twice. Round weights instead of truncating them. Change rule
to "first wins" instead of "last wins" when there are multiple segments.
Removed one vague and non-helpful comment.
(WebCore::isFourByteAligned): Fixed minor formatting issue by making the
function non-abstract. No reason not to hard-code the number 3 when the
number four appears in the function name.
(WebCore::calculateChecksum): Removed unneeded comment about why the
checksum is little-endian; since this came from Windows documentation there
is no doubt that little-endian is correct, so we don't need a comment creating
fear, uncertainty, and doubt. If the checksum computation is wrong, it should
become obvious that we have a bad checksum. Also changed the for loop to use
its own loop variable instead of changing startingOffset, which is not logical.
(WebCore::SVGToOTFFontConverter::appendTable): Updated for name changes.
(WebCore::SVGToOTFFontConverter::convertSVGToOTFFont): Ditto. Also streamlined
the checksum code a little. The comment still is a little peculiar; I was
tempted to take it out.

Tools:

I was investigating behavior of String::toInt, String::toDouble, and
String::toFloat for various failure cases, and decided to start some
unit tests for those functions here.

  • TestWebKitAPI/Tests/WTF/WTFString.cpp:

(TestWebKitAPI::TEST): Addded a first small bit of StringToInt and
StringToDouble testing.

8:37 AM Changeset in webkit [174062] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit/ios

[iOS] Remove CoreLocation workaround
https://bugs.webkit.org/show_bug.cgi?id=137198

Reviewed by Dan Bernstein.

Following the fix for <rdar://problem/18448331>, we can revert the CoreLocation workaround
committed in <http://trac.webkit.org/changeset/173946> and <http://trac.webkit.org/changeset/173940> (in order).

  • Misc/WebGeolocationCoreLocationProvider.mm:

(-[WebGeolocationCoreLocationProvider requestGeolocationAuthorization]):
(-[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:]):

8:30 AM Changeset in webkit [174061] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix !ENABLE(INSPECTOR) build after r173929
https://bugs.webkit.org/show_bug.cgi?id=137210

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-09-29
Reviewed by Timothy Hatcher.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::getLaunchOptions):

8:16 AM Changeset in webkit [174060] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK][CMake] TestWebCore target build sometimes fail
https://bugs.webkit.org/show_bug.cgi?id=137207

Reviewed by Csaba Osztrogon.

  • TestWebKitAPI/PlatformGTK.cmake: Make sure the forwarding

headers are generated before the TestWebCore target is built.

5:32 AM Changeset in webkit [174059] by Carlos Garcia Campos
  • 2 edits
    2 deletes in trunk/Source/WebCore

[GTK] Remove MainFrameScrollbarGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=137211

Reviewed by Philippe Normand.

This was only used by WebKit1.

  • PlatformGTK.cmake:
  • platform/gtk/MainFrameScrollbarGtk.cpp: Removed.
  • platform/gtk/MainFrameScrollbarGtk.h: Removed.
4:54 AM Changeset in webkit [174058] by Carlos Garcia Campos
  • 7 edits
    2 deletes in trunk

[GTK] Remove IntPointGtk.cpp and IntRectGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=137209

Reviewed by Philippe Normand.

Source/WebCore:

IntPointGtk is unused and IntRectGtk is only required by GTK+2 and
only used when building with GTK+2 in GtkInputMethodFilter.cpp
that can be easily replaced.

  • PlatformGTK.cmake:
  • platform/graphics/IntPoint.h:
  • platform/graphics/IntRect.h:
  • platform/graphics/gtk/IntPointGtk.cpp: Removed.
  • platform/graphics/gtk/IntRectGtk.cpp: Removed.
  • platform/gtk/GtkInputMethodFilter.cpp:

(WebCore::GtkInputMethodFilter::setCursorRect):

Tools:

  • TestWebKitAPI/PlatformGTK.cmake: Remove unneeded IntRectGtk.cpp

from the WebCore test sources.

3:08 AM Changeset in webkit [174057] by svillar@igalia.com
  • 9 edits
    6 adds in trunk

[CSS Grid Layout] Handle percentages of indefinite sizes in minmax() and grid-auto-*
https://bugs.webkit.org/show_bug.cgi?id=136453

Reviewed by Darin Adler.

Source/WebCore:

After r165048 percentages of indefinite sizes were correctly
computed to "auto". The problem is that we were not doing it when
the percentage was inside the minmax() function. In those cases it
should compute to min-content for the min track sizing function or
to max-content for the max track sizing function.

We were not doing it also for the track sizes specified in
grid-auto-{column|row} properties. Fixed as well as the code is
the same.

Tests: fast/css-grid-layout/percent-of-indefinite-track-size-in-auto.html

fast/css-grid-layout/percent-of-indefinite-track-size-in-minmax-crash.html
fast/css-grid-layout/percent-of-indefinite-track-size.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::gridTrackSize):

  • rendering/RenderGrid.h:
  • rendering/style/GridLength.h:

(WebCore::GridLength::isPercentage):

  • rendering/style/GridTrackSize.h:

(WebCore::GridTrackSize::GridTrackSize):

LayoutTests:

Added three new tests, one to verify that we do not assert with
percentages inside minmax() and another two to verify that we
properly compute the percentage of indefinite size in various
situations both in grid-template-* properties and in
grid-auto-{column|row} properties.

Three other tests required minimum adjustments as they were using
percentages of indefinite sizes inside minmax functions. In order
to keep the original expected behavior some definite sizes were
added.

  • fast/css-grid-layout/grid-auto-columns-rows-auto-flow-resolution.html:
  • fast/css-grid-layout/grid-auto-columns-rows-resolution.html:
  • fast/css-grid-layout/grid-auto-columns-rows-update.html:
  • fast/css-grid-layout/percent-of-indefinite-track-size-expected.txt: Added.
  • fast/css-grid-layout/percent-of-indefinite-track-size-in-auto-expected.txt: Added.
  • fast/css-grid-layout/percent-of-indefinite-track-size-in-auto.html: Added.
  • fast/css-grid-layout/percent-of-indefinite-track-size-in-minmax-crash-expected.txt: Added.
  • fast/css-grid-layout/percent-of-indefinite-track-size-in-minmax-crash.html: Added.
  • fast/css-grid-layout/percent-of-indefinite-track-size.html: Added.
2:16 AM Changeset in webkit [174056] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.4.6

WebKitGTK+ 2.4.6

1:54 AM Changeset in webkit [174055] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Move sources not using GTK+ from WebCorePlatformGTK_SOURCES to WebCore_SOURCES.

  • PlatformGTK.cmake:
1:51 AM Changeset in webkit [174054] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

REGRESSION(r172919): WebKitPluginProcess fails to scan GTK+2 plugins after r172919.
https://bugs.webkit.org/show_bug.cgi?id=137191

Reviewed by Philippe Normand.

In r172919 I moved the GTK+ symbols mix check earlier, before the
plugin is loaded and initialized. That made impossible to use the
GTK3 plugin process to scan gtk2 plugins, because we need to load
the plugin to get its metadata. But we don't need to initialize
the plugin to check if it requires GTK2, so we can do that check
in the UI process to decide which plugin process to use.

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::NetscapePluginModule::getPluginInfoForLoadedPlugin):
Remove the requires GTK2 check.
(WebKit::NetscapePluginModule::scanPlugin): Don't write
requires-gtk2 to stdout.

  • UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:

(WebKit::pluginRequiresGtk2): Helper function to check if the
given plugin path requires GTK2.
(WebKit::PluginProcessProxy::scanPlugin): Check if the plugin path
requires GTK2 and use WebKitPluginProcess2 in such case, or return
early if GTK2 plugins are not enabled. Log error messages when
something fails scanning the plugin to make it easiert to debug
problems in the future.

12:15 AM Changeset in webkit [174053] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebCore

Use std::unique_ptr instead of PassOwnPtr|OwnPtr for NamedNodeMap
https://bugs.webkit.org/show_bug.cgi?id=137201

Reviewed by Darin Adler.

No new tests, just refactoring patch.

  • dom/ElementRareData.h: Use std::unique_ptr instead of OwnPtr.

(WebCore::ElementRareData::setAttributeMap): Use std::unique_ptr.

  • dom/NamedNodeMap.h:

(WebCore::NamedNodeMap::create): ditto.

Sep 28, 2014:

8:42 PM Changeset in webkit [174052] by mmaxfield@apple.com
  • 13 edits
    1 add in trunk/Source

Replace wkGetGlyphsForCharacters() with CGFontGetGlyphsForUnichars()
https://bugs.webkit.org/show_bug.cgi?id=137197

Reviewed by Alexey Proskuryakov.

No new tests because there is no behavior change.

Source/WebCore:

  • WebCore.exp.in:
  • WebCore.order:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/mac/GlyphPageTreeNodeMac.cpp:

(WebCore::GlyphPage::fill): Use SPI call instead of WKSI call

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/spi/cocoa/CGFontUnicodeSupport.h: Added for SPI call.

Source/WebKit:

  • mac/WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

  • WebKit.order:

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

  • mac/WebKit2.order:
8:02 PM Changeset in webkit [174051] by mmaxfield@apple.com
  • 3 edits in trunk/Tools

Allow webkit-patch upload to respect the --directory argument with git checkouts
https://bugs.webkit.org/show_bug.cgi?id=137166

Reviewed by Darin Adler.

We simply hadn't plumbed it through.

  • Scripts/webkitpy/common/checkout/scm/detection.py:

(SCMDetector.detect_scm_system):

  • Scripts/webkitpy/common/checkout/scm/git.py:

(Git.init):
(Git.changed_files):

7:13 PM Changeset in webkit [174050] by Chris Dumez
  • 32 edits
    2 copies in trunk/Source/WebCore

Automatically generate template specializations for most Elements
https://bugs.webkit.org/show_bug.cgi?id=137174

Reviewed by Darin Adler.

Previously, the template specializations to make is<>() / downcast<>()
work for HTML/SVG/MathML elements were only generated if
"generateTypeHelpers" parameter was explicitly specified for the
corresponding tag name in the *Tags.in file.

We are however able to generate the template specializations for most
types so this patch drops the "generateTypeHelpers" parameter and
generates those template specializations by default.

One case we cannot generate the specialization ifor is when a class is
associated to several tag names but this patch updates the
make_names.pl script to detect this and skip those classes.

No new tests, no behavior change.

  • CMakeLists.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/make_names.pl:

(defaultTagPropertyHash):
(printTypeHelpers):

  • html/HTMLTagNames.in:
  • mathml/mathtags.in:
  • svg/SVGAllInOne.cpp:
  • svg/SVGAnimateColorElement.cpp:

(WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
(WebCore::SVGAnimateColorElement::determinePropertyValueTypes):

  • svg/SVGAnimateColorElement.h:
  • svg/SVGAnimateElement.cpp:

(WebCore::SVGAnimateElement::SVGAnimateElement):
(WebCore::SVGAnimateElement::~SVGAnimateElement): Deleted.
(WebCore::SVGAnimateElement::hasValidAttributeType): Deleted.
(WebCore::SVGAnimateElement::determineAnimatedPropertyType): Deleted.
(WebCore::SVGAnimateElement::calculateAnimatedValue): Deleted.
(WebCore::SVGAnimateElement::calculateToAtEndOfDurationValue): Deleted.
(WebCore::SVGAnimateElement::calculateFromAndToValues): Deleted.
(WebCore::SVGAnimateElement::calculateFromAndByValues): Deleted.
(WebCore::propertyTypesAreConsistent): Deleted.
(WebCore::SVGAnimateElement::resetAnimatedType): Deleted.
(WebCore::applyCSSPropertyToTarget): Deleted.
(WebCore::removeCSSPropertyFromTarget): Deleted.
(WebCore::applyCSSPropertyToTargetAndInstances): Deleted.
(WebCore::removeCSSPropertyFromTargetAndInstances): Deleted.
(WebCore::notifyTargetAboutAnimValChange): Deleted.
(WebCore::notifyTargetAndInstancesAboutAnimValChange): Deleted.
(WebCore::SVGAnimateElement::clearAnimatedType): Deleted.
(WebCore::SVGAnimateElement::applyResultsToTarget): Deleted.
(WebCore::SVGAnimateElement::animatedPropertyTypeSupportsAddition): Deleted.
(WebCore::SVGAnimateElement::isAdditive): Deleted.
(WebCore::SVGAnimateElement::calculateDistance): Deleted.
(WebCore::SVGAnimateElement::setTargetElement): Deleted.
(WebCore::SVGAnimateElement::setAttributeName): Deleted.
(WebCore::SVGAnimateElement::resetAnimatedPropertyType): Deleted.
(WebCore::SVGAnimateElement::ensureAnimator): Deleted.

  • svg/SVGAnimateElement.h:

(WebCore::isSVGAnimateElement): Deleted.

  • svg/SVGAnimateElementBase.cpp: Copied from Source/WebCore/svg/SVGAnimateElement.cpp.

(WebCore::SVGAnimateElementBase::SVGAnimateElementBase):
(WebCore::SVGAnimateElementBase::~SVGAnimateElementBase):
(WebCore::SVGAnimateElementBase::hasValidAttributeType):
(WebCore::SVGAnimateElementBase::determineAnimatedPropertyType):
(WebCore::SVGAnimateElementBase::calculateAnimatedValue):
(WebCore::SVGAnimateElementBase::calculateToAtEndOfDurationValue):
(WebCore::SVGAnimateElementBase::calculateFromAndToValues):
(WebCore::SVGAnimateElementBase::calculateFromAndByValues):
(WebCore::propertyTypesAreConsistent):
(WebCore::SVGAnimateElementBase::resetAnimatedType):
(WebCore::applyCSSPropertyToTarget):
(WebCore::removeCSSPropertyFromTarget):
(WebCore::applyCSSPropertyToTargetAndInstances):
(WebCore::removeCSSPropertyFromTargetAndInstances):
(WebCore::notifyTargetAboutAnimValChange):
(WebCore::notifyTargetAndInstancesAboutAnimValChange):
(WebCore::SVGAnimateElementBase::clearAnimatedType):
(WebCore::SVGAnimateElementBase::applyResultsToTarget):
(WebCore::SVGAnimateElementBase::animatedPropertyTypeSupportsAddition):
(WebCore::SVGAnimateElementBase::isAdditive):
(WebCore::SVGAnimateElementBase::calculateDistance):
(WebCore::SVGAnimateElementBase::setTargetElement):
(WebCore::SVGAnimateElementBase::setAttributeName):
(WebCore::SVGAnimateElementBase::resetAnimatedPropertyType):
(WebCore::SVGAnimateElementBase::ensureAnimator):

  • svg/SVGAnimateElementBase.h: Copied from Source/WebCore/svg/SVGAnimateElement.h.

(WebCore::isSVGAnimateElementBase):

  • svg/SVGAnimateTransformElement.cpp:

(WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
(WebCore::SVGAnimateTransformElement::parseAttribute):

  • svg/SVGAnimateTransformElement.h:
  • svg/SVGAnimatedAngle.cpp:
  • svg/SVGAnimatedBoolean.cpp:
  • svg/SVGAnimatedColor.cpp:
  • svg/SVGAnimatedInteger.cpp:
  • svg/SVGAnimatedIntegerOptionalInteger.cpp:
  • svg/SVGAnimatedLength.cpp:
  • svg/SVGAnimatedLengthList.cpp:
  • svg/SVGAnimatedNumber.cpp:
  • svg/SVGAnimatedNumberList.cpp:
  • svg/SVGAnimatedNumberOptionalNumber.cpp:
  • svg/SVGAnimatedPath.cpp:
  • svg/SVGAnimatedPointList.cpp:
  • svg/SVGAnimatedPreserveAspectRatio.cpp:
  • svg/SVGAnimatedRect.cpp:
  • svg/SVGAnimatedString.cpp:
  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::currentValuesForValuesAnimation):

  • svg/SVGSetElement.cpp:

(WebCore::SVGSetElement::SVGSetElement):

  • svg/SVGSetElement.h:
  • svg/svgtags.in:
6:52 PM Changeset in webkit [174049] by commit-queue@webkit.org
  • 7 edits
    3 adds in trunk

Simple ES6 feature: Number constructor extras
https://bugs.webkit.org/show_bug.cgi?id=131707

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-09-28
Reviewed by Darin Adler.

Source/JavaScriptCore:

  • runtime/CommonIdentifiers.h:
  • runtime/NumberConstructor.cpp:

(JSC::NumberConstructor::finishCreation): Setup constants and
functions.
(JSC::numberConstructorFuncIsFinite): Added.
(JSC::numberConstructorFuncIsInteger): Added.
(JSC::numberConstructorFuncIsNaN): Added.
(JSC::numberConstructorFuncIsSafeInteger): Added.
(JSC::NumberConstructor::getOwnPropertySlot): Deleted.
(JSC::numberConstructorNaNValue): Deleted.
(JSC::numberConstructorNegInfinity): Deleted.
(JSC::numberConstructorPosInfinity): Deleted.
(JSC::numberConstructorMaxValue): Deleted.
(JSC::numberConstructorMinValue): Deleted.

  • runtime/NumberConstructor.h:

LayoutTests:

  • js/Object-getOwnPropertyNames-expected.txt:
  • js/number-constructor-expected.txt: Added.
  • js/number-constructor.html: Added.
  • js/script-tests/Object-getOwnPropertyNames.js:
  • js/script-tests/number-constructor.js: Added.
6:18 PM Changeset in webkit [174048] by gyuyoung.kim@samsung.com
  • 12 edits in trunk/Source

Use std::unique_ptr for ContextMenuController
https://bugs.webkit.org/show_bug.cgi?id=137178

Reviewed by Darin Adler.

Switch to using std::unique_ptr instead of OwnPtr and PassOwnPtr
for ContextMenuController class. Inherited class is changed by this use as well.

Source/WebCore:

No new tests, no behavior changes.

  • loader/EmptyClients.cpp:

(WebCore::EmptyContextMenuClient::customizeMenu):

  • loader/EmptyClients.h:
  • page/ContextMenuClient.h:
  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::clearContextMenu):
(WebCore::ContextMenuController::maybeCreateContextMenu):
(WebCore::ContextMenuController::showContextMenu):

  • page/ContextMenuController.h:

Source/WebKit/win:

  • WebCoreSupport/WebContextMenuClient.cpp:

(WebContextMenuClient::customizeMenu):

  • WebCoreSupport/WebContextMenuClient.h:

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:

(WebKit::WebContextMenuClient::customizeMenu):

  • WebProcess/WebCoreSupport/WebContextMenuClient.h:
6:04 PM Changeset in webkit [174047] by gyuyoung.kim@samsung.com
  • 14 edits in trunk/Source

Move ColorInputType class to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=137173

Reviewed by Darin Adler.

Replace uses of PassOwnPtr in code under ColorInputType class with std::unique_ptr.
Child classes follow this change as well.

Source/WebCore:

No new tests, no behavior changes.

  • html/ColorInputType.cpp:

(WebCore::ColorInputType::didEndChooser):

  • html/ColorInputType.h:
  • loader/EmptyClients.cpp:

(WebCore::EmptyChromeClient::createColorChooser):

  • loader/EmptyClients.h:
  • page/Chrome.cpp:

(WebCore::Chrome::createColorChooser):

  • page/Chrome.h:
  • page/ChromeClient.h:

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::createColorChooser):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createColorChooser):

  • WebProcess/WebCoreSupport/WebChromeClient.h:
4:18 PM Changeset in webkit [174046] by commit-queue@webkit.org
  • 16 edits in trunk

Fix some minor typos: psuedo -> pseudo
https://bugs.webkit.org/show_bug.cgi?id=137192

Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2014-09-28
Reviewed by Alexey Proskuryakov.

PerformanceTests:

  • Speedometer/resources/todomvc/architecture-examples/emberjs/bower_components/handlebars/handlebars.js:

Source/WebCore:

No new tests, no behavior change.

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::specificityForOneSelector):

LayoutTests:

  • fast/dom/Window/getMatchedCSSRules-with-invalid-pseudo-elements-expected.txt:
  • fast/dom/Window/getMatchedCSSRules-with-invalid-pseudo-elements.html:
  • fast/dom/Window/getMatchedCSSRules-with-pseudo-elements-expected.txt:
  • fast/dom/Window/getMatchedCSSRules-with-pseudo-elements.html:
  • fast/selectors/159.html:
  • fast/selectors/160.html:
  • fast/selectors/166.html:
  • platform/efl/fast/selectors/166-expected.txt:
  • platform/gtk/fast/selectors/166-expected.txt:
  • platform/ios-sim/fast/selectors/166-expected.txt:
  • platform/mac/fast/selectors/166-expected.txt:
1:59 PM Changeset in webkit [174045] by weinig@apple.com
  • 17 edits
    1 move
    1 delete in trunk

Replace OSObjectPtr with RetainPtr/adoptOS
https://bugs.webkit.org/show_bug.cgi?id=137158

Reviewed by Dan Bernstein.

Source/WebKit2:

  • DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:

(DatabaseServiceInitializer):

  • NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:

(WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate):
(NetworkServiceInitializer):

  • Platform/IPC/Connection.h:

(IPC::Connection::Identifier::Identifier):

  • Platform/IPC/mac/ConnectionMac.mm:

(IPC::ConnectionTerminationWatchdog::createConnectionTerminationWatchdog):
(IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):

  • PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:

(WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
(PluginServiceInitializer):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:

(WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
(WebKit::XPCServiceInitializer):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:

(WebKit::XPCServiceInitializerDelegate::checkEntitlements):
(WebKit::XPCServiceInitializerDelegate::hasEntitlement):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:

(WebKit::XPCServiceEventHandler):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:

(WebKit::XPCServiceEventHandler):

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService):
(WebKit::connectToReExecService):

  • WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:

(WebContentServiceInitializer):

Source/WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/OSObjectPtr.h: Removed.
  • wtf/RetainPtr.h:

(WTF::adoptOS):
Added. This adopt function is slightly different than both adoptCF and adoptNS,
in that unlike adoptCF(), it can be passed an Objective-C type (since OS objects
are sometimes Objective-C objects, but not always), and unlike adoptNS() it doesn't
require us to jump through hoops to appease GC (since OS objects are not Objective-C
objects if GC is enabled).

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/darwin/OSObjectPtr.cpp: Removed.
  • TestWebKitAPI/Tests/WTF/darwin/RetainPtrOSObject.cpp: Copied from Tools/TestWebKitAPI/Tests/WTF/darwin/OSObjectPtr.cpp.

Rename and change test to use RetainPtr. Remove now unneeded part testing WTF::retainOSObject/WTF::releaseOSObject.

7:07 AM WebKitGTK/2.6.x edited by berto@igalia.com
(diff)
1:23 AM Changeset in webkit [174044] by Carlos Garcia Campos
  • 1 edit
    1 move in trunk/Source/WebCore

Unreviewed. Move RenderThemeGtk.h from platform/gtk to rendering.

I forgot to move this file in r173111.

  • rendering/RenderThemeGtk.h: Renamed from Source/WebCore/platform/gtk/RenderThemeGtk.h.
1:18 AM Changeset in webkit [174043] by Carlos Garcia Campos
  • 4 edits in trunk/Source/WebCore

[ATK] WebKitAccessibleWrapperAtk should not depend on GTK
https://bugs.webkit.org/show_bug.cgi?id=137177

Reviewed by Martin Robinson.

It's used to get the web view widget, but there's no GtkWidget in
the web process and platformPageClient is always NULL.

  • PlatformGTK.cmake: Move accessibility sources to the WebCore

sources list.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(atkParentOfRootObject): Remove code to get view GtkWidget.

  • editing/atk/FrameSelectionAtk.cpp: Remove unneeded header include.
1:14 AM Changeset in webkit [174042] by Carlos Garcia Campos
  • 2 edits
    2 deletes in trunk/Source/WebCore

[GTK] Remove unused GtkPluginWidget
https://bugs.webkit.org/show_bug.cgi?id=137176

Reviewed by Csaba Osztrogonác.

It was only used by WebKit1.

  • PlatformGTK.cmake:
  • platform/gtk/GtkPluginWidget.cpp: Removed.
  • platform/gtk/GtkPluginWidget.h: Removed.
1:06 AM Changeset in webkit [174041] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebCore

[cairo] GraphicsContext should not depend on GTK+
https://bugs.webkit.org/show_bug.cgi?id=137175

Reviewed by Martin Robinson.

Remove the unused methods depending on GDK and simplify
GraphicsContext::drawFocusRing() using only cairo API.

  • PlatformGTK.cmake: Move GraphicsContextCairo.cpp to the webcore sources.
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::drawFocusRing): Iterate the rectangles
instead of creating a region for the rectangles and call gdk_cairo_region().
(WebCore::GraphicsContext::setGdkExposeEvent): Deleted.
(WebCore::GraphicsContext::gdkExposeEvent): Deleted.
(WebCore::GraphicsContext::gdkWindow): Deleted.

  • platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:

(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):

Sep 27, 2014:

10:57 PM Changeset in webkit [174040] by Chris Dumez
  • 11 edits in trunk/Source/WebCore

HTMLPlugInElement::isUserObservable() is causing layout
https://bugs.webkit.org/show_bug.cgi?id=137156

Reviewed by Ryosuke Niwa.

While profiling the page load of nytimes.com, I noticed that we were
spending ~4-5% of cpu time in HTMLPlugInElement::isUserObservable().
The reason is that the function calls pluginWidget(), which causes a
layout update in HTMLObjectElement::renderWidgetForJSBindings(), to
make sure the plugin is loaded and its renderer is created.

HTMLPlugInElement::isUserObservable() shouldn't need to do a layout.
This patch does the following to address the problem:

  • Rename renderWidgetForJSBindings() to renderWidgetLoadingPlugin() because this function is not always called from the JS Bindings nowadays. The new name makes it clearer that this will load the plugin if needed (to make sure the renderer is created, and by doing a layout).
  • Add a PluginLoadingPolicy argument to HTMLPlugInElement::pluginWidget() to let the caller control if the plugin should be loaded or not.
  • Update the call to pluginWidget() in isUserObservable() so that we do not attempt to load the plugin (thus not causing a layout).

No new tests, no behavior change.

  • WebCore.exp.in:
  • WebCore.order:
  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::renderWidgetLoadingPlugin):
(WebCore::HTMLAppletElement::renderWidgetForJSBindings): Deleted.

  • html/HTMLAppletElement.h:
  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::renderWidgetLoadingPlugin):
(WebCore::HTMLEmbedElement::renderWidgetForJSBindings): Deleted.

  • html/HTMLEmbedElement.h:
  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::renderWidgetLoadingPlugin):
(WebCore::HTMLObjectElement::renderWidgetForJSBindings): Deleted.

  • html/HTMLObjectElement.h:
  • html/HTMLPlugInElement.cpp:

(WebCore::HTMLPlugInElement::pluginWidget):
(WebCore::HTMLPlugInElement::isUserObservable):

  • html/HTMLPlugInElement.h:
10:21 PM Changeset in webkit [174039] by Chris Dumez
  • 22 edits in trunk/Source/WebCore

Use the new is<>() / downcast<>() for more Node subclasses
https://bugs.webkit.org/show_bug.cgi?id=137184

Reviewed by Ryosuke Niwa.

Use the new is<>() / downcast<>() for more Node subclasses:
CDATASection, CharacterData, Comment, DocumentType,
ProcessingInstruction, and PseudoElement.

No new tests, no behavior change.

  • dom/CDATASection.h:

(WebCore::isCDATASection):

  • dom/CharacterData.cpp:

(WebCore::CharacterData::setDataAndUpdate):

  • dom/CharacterData.h:

(WebCore::isCharacterData):

  • dom/Comment.h:

(WebCore::isComment):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):

  • dom/DocumentType.h:

(WebCore::isDocumentType):

  • dom/EventDispatcher.cpp:

(WebCore::eventTargetRespectingTargetRules):
(WebCore::nodeOrHostIfPseudoElement):

  • dom/Node.cpp:

(WebCore::markAncestorsWithChildNeedsStyleRecalc):
(WebCore::Node::pseudoAwarePreviousSibling):
(WebCore::Node::pseudoAwareNextSibling):

  • dom/NodeTraversal.cpp:

(WebCore::NodeTraversal::previousIncludingPseudo):
(WebCore::NodeTraversal::nextIncludingPseudo):
(WebCore::NodeTraversal::nextIncludingPseudoSkippingChildren):

  • dom/ProcessingInstruction.h:

(WebCore::isProcessingInstruction):

  • dom/PseudoElement.h:

(WebCore::isPseudoElement):

  • dom/Range.cpp:

(WebCore::lengthOfContentsInNode):
(WebCore::Range::processContentsBetweenOffsets):
(WebCore::Range::checkNodeWOffset):

  • editing/Editor.cpp:

(WebCore::Editor::shouldInsertFragment):

  • editing/MarkupAccumulator.cpp:

(WebCore::MarkupAccumulator::appendStartMarkup):

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_traverseNode):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::setInnerNode):
(WebCore::HitTestResult::setInnerNonSharedNode):

  • rendering/RenderListItem.cpp:

(WebCore::enclosingList):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::generatingPseudoHostElement):

  • xml/XPathFunctions.cpp:

(WebCore::XPath::expandedNameLocalPart):

9:13 PM Changeset in webkit [174038] by Chris Dumez
  • 8 edits in trunk/Source/WebCore

Use the new is<>() / downcast<>() for Attr Nodes
https://bugs.webkit.org/show_bug.cgi?id=137183

Reviewed by Ryosuke Niwa.

Use the new is<>() / downcast<>() for Attr Nodes instead of isAttr() /
toAttr().

No new tests, no behavior change.

  • dom/Attr.h:

(WebCore::isAttr):

  • dom/Document.cpp:

(WebCore::Document::importNode):
(WebCore::Document::adoptNode):

  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::setNamedItem):

  • dom/Node.cpp:

(WebCore::Node::compareDocumentPosition):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/InspectorNodeFinder.cpp:

(WebCore::InspectorNodeFinder::searchUsingXPath):

  • xml/XPathNodeSet.cpp:

(WebCore::XPath::sortBlock):
(WebCore::XPath::NodeSet::sort):
(WebCore::XPath::findRootNode):

3:17 PM Changeset in webkit [174037] by Brian Burg
  • 5 edits in trunk/Source

Web Replay: Playback position updates should be sent before the next event loop input is dispatched
https://bugs.webkit.org/show_bug.cgi?id=137162

Reviewed by Timothy Hatcher.

Source/WebCore:

To drive playback position updates in the Inspector UI, we send playbackHitPosition protocol
messages as the replay backend dispatches inputs. However, right now the semantics of that
message are muddy. The update is sent *after* the input at the offset is dispatched. This leads
to unexpected results if the debugger pauses while the input is being dispatched: the frontend
will only know about the previous (stale) playback position when the debugger pauses.

With this patch, the backend sends the playbackHitPosition(segmentOffset=n, inputOffset=m)
message when backend is about to dispatch input m, but has not yet begun to do so. Thus, any
subsequent page execution events (profiling, debugger pauses, etc) until the next
playbackHitPosition are caused by input m's being dispatched.

  • inspector/protocol/Replay.json: Clarify the message's semantics.
  • replay/ReplayController.cpp:

(WebCore::ReplayController::willDispatchInput):
(WebCore::ReplayController::didDispatchInput):

Source/WebInspectorUI:

Pausing playback from the UI was broken because of a typo. Fix this, and rename
stopPlayback to cancelPlayback.

  • UserInterface/Controllers/ReplayManager.js:

(WebInspector.ReplayManager.prototype.switchSession.if):

1:27 PM Changeset in webkit [174036] by fpizlo@apple.com
  • 8 edits
    1 add in trunk

Disable function.arguments
https://bugs.webkit.org/show_bug.cgi?id=137167

Source/JavaScriptCore:

Rubber stamped by Geoffrey Garen.

Add an option to disable function.arguments. Add a test for disabling it.

Disabling function.arguments means that it returns an Arguments object that claims that
there were zero arguments. All other Arguments functionality still works, so any code
that tries to inspect this object will still think that it is looking at a perfectly
valid Arguments object.

This also makes function.arguments disabled by default. Note that the RJST harness will
enable them by default, to continue to get test coverage for the code that implements
the feature.

We will rip out that code once we're confident that it's really safe to remove this
feature. Only once we rip out that support will we be able to do optimizations to
leverage the lack of this feature. It's important to keep the support code, and the test
infrastructure, in place before we are confident. The logic to keep this working touches
the entire compiler and a large chunk of the runtime, so reimplementing it - or even
merging it back in - would be a nightmare. That's also basically the reason why we want
to rip it out if at all possible. It's a lot of terrible code.

  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::Frame::createArguments):

  • runtime/Arguments.h:

(JSC::Arguments::create):
(JSC::Arguments::finishCreation):

  • runtime/Options.h:
  • tests/stress/disable-function-dot-arguments.js: Added.

(foo):
(bar):

Tools:

Rubber stamped by Geoffrey Garen

Enable the feature by default during tests.

  • Scripts/run-jsc-stress-tests:

LayoutTests:

Rubber stamped by Geoffrey Garen.

Don't remove the tests for this, yet - but mark them as failing. We will rebase these,
or remove them entirely, once we know that it's safe to rip out this feature entirely.

11:49 AM Changeset in webkit [174035] by benjamin@webkit.org
  • 3 edits
    8 adds in trunk

Chaining multiple :nth-child() does not work properly
https://bugs.webkit.org/show_bug.cgi?id=137032

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-09-27
Reviewed by Gavin Barraclough.

Source/WebCore:

When multiple :nth-child() are chained, the evaluation of each "An+B" could depend on
the execution of the previous "An+B". The reason is that the register holding the position
of the current element could be modified by the evaluation of "An+B".

There are two cases in which the register was used as the destination of an operation:
1) When A and B are positive, the counter would be the destination of "counter - B".
2) When A is not 1 or 2, the modulo operation was not preserving the input register.

For (1), we a copy of the counter in that case of generateElementIsNthChild().

For (2), we also preserve a copy of the input if it is used by the operation. In this case,
if the input register is one of the argument we need for idiv, we preserve it on the stack
or in a register depending on what is available.

This increases the register requirements by 2 in the worst case on x86. The extra registers
can push generateElementIsNthChild() above the 4 available registers. To accomodate for that,
minimumRegisterRequirements() reserve more registers on x86.

The extra register pressure has strictly no effect on performance, x86_64 has 9 registers
available without pushing anything. The extra allocation is only necessary for debugging.

Tests: fast/selectors/nth-child-basics.html

fast/selectors/nth-child-chained.html
fast/selectors/nth-child-of-basics-2.html
fast/selectors/nth-child-of-chained.html

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::minimumRegisterRequirements):
(WebCore::SelectorCompiler::SelectorCodeGenerator::modulo):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChild):

LayoutTests:

  • fast/selectors/nth-child-chained-expected.txt: Added.
  • fast/selectors/nth-child-chained.html: Added.
  • fast/selectors/nth-child-of-chained-expected.txt: Added.
  • fast/selectors/nth-child-of-chained.html: Added.

Those new tests target specifically the register reuse bug fixed by the patch.

  • fast/selectors/nth-child-basics-expected.txt: Added.
  • fast/selectors/nth-child-basics.html: Added.
  • fast/selectors/nth-child-of-basics-2-expected.txt: Added.
  • fast/selectors/nth-child-of-basics-2.html: Added.

Those tests add coverage for the examples used by http://nthmaster.com. This is to increase
the general test coverage.

I added nth-child-of-basics-2.html instead of extending nth-child-of-basics.html because
of the speed issue in debug without CSS JIT (otherwise the test can timeout).

12:13 AM Changeset in webkit [174034] by mitz@apple.com
  • 5 edits in trunk

WebKit top of tree sources won't build in 10.9 w/ Xcode 6.0.1
https://bugs.webkit.org/show_bug.cgi?id=137053

Reviewed by Mark Rowe.

.:

  • WebKit.xcworkspace/xcshareddata/xcschemes/All Source (target WebProcess).xcscheme:

In the build pre-action, pass the --wksi and --llvm options to
copy-webkitlibraries-to-product-directory.

  • WebKit.xcworkspace/xcshareddata/xcschemes/All Source.xcscheme: Ditto.

Websites/webkit.org:

  • building/build.html: Removed instructions how to work around this bug, now that it’s fixed.

Sep 26, 2014:

10:18 PM Changeset in webkit [174033] by ap@apple.com
  • 2 edits in trunk/Websites/webkit.org

WebKit top of tree sources won't build in 10.9 w/ Xcode 6.0.1
https://bugs.webkit.org/show_bug.cgi?id=137053

Patch by David Gatwood. Reviewed, tweaked and landed by Alexey Proskuryakov.

Explain that to build from Xcode, one needs to build from command line once first.

Removed a Windows section that explained how to launch cygwin shell, which was
silly given that we then link to a long document explaining further steps.

  • building/build.html:
8:52 PM Changeset in webkit [174032] by Yusuke Suzuki
  • 2 edits in trunk/LayoutTests

Mark fast/selectors/nth-child-of-basics as Slow
https://bugs.webkit.org/show_bug.cgi?id=137149

Reviewed by Benjamin Poulain.

Since there are many tests in fast/selectors/nth-child-of-basics,
it takes long time and sometime LayoutTests timeout[1].

[1]: https://build.webkit.org/builders/GTK%20Linux%2064-bit%20Release%20(Tests)/builds/3042

Mark fast/selectors/nth-child-of-basics as Slow.

6:32 PM Changeset in webkit [174031] by Chris Dumez
  • 97 edits in trunk/Source

Stop using legacy NODE_TYPE_CASTS() macro for HTML Elements
https://bugs.webkit.org/show_bug.cgi?id=137137

Reviewed by Benjamin Poulain.

Source/WebCore:

Stop using legacy NODE_TYPE_CASTS() macro for HTML Elements and use the
new SPECIALIZE_TYPE_TRAITS_*() macro instead so that is<>() /
downcast<>() works for those types.

No new tests, no behavior change.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::labelForElement):
(WebCore::AccessibilityNodeObject::text):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::isDataTable):

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetName):
(webkitAccessibleGetDescription):

  • bindings/gobject/WebKitDOMPrivate.cpp:

(WebKit::wrap):

  • bindings/js/JSElementCustom.cpp:

(WebCore::toJSNewlyCreated):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::createWrapperInline):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginInstance):
(WebCore::pluginScriptObjectFromPluginViewBase):
(WebCore::pluginScriptObject):
(WebCore::pluginElementCustomPut):
(WebCore::isPluginElement): Deleted.

  • bindings/objc/DOM.mm:

(kitClass):

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::matchAllRules):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::locateCousinList):
(WebCore::elementHasDirectionAuto):

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::makeContextStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
(WebCore::SelectorCompiler::makeElementStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
(WebCore::SelectorCompiler::isPlaceholderShown):

  • dom/ContainerNodeAlgorithms.cpp:

(WebCore::assertConnectedSubrameCountIsConsistent):
(WebCore::collectFrameOwners):
(WebCore::disconnectSubframes):

  • dom/Document.cpp:

(WebCore::Document::adoptNode):
(WebCore::Document::setBody):
(WebCore::Document::iconURLs):
(WebCore::Document::dispatchFullScreenChangeOrErrorEvent):
(WebCore::Document::updateHoverActiveState):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):

  • dom/Range.cpp:

(WebCore::Range::createContextualFragment):

  • dom/make_names.pl:

(printTypeHelpers):

  • editing/ApplyStyleCommand.cpp:

(WebCore::isLegacyAppleStyleSpan):
(WebCore::isStyleSpanOrSpanWithOnlyStyleAttribute):
(WebCore::isSpanWithoutAttributesOrUnstyledStyleSpan):
(WebCore::isEmptyFontTag):
(WebCore::ApplyStyleCommand::applyBlockStyle):
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::removeConflictingInlineStyleFromRun):
(WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle):
(WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
(WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
(WebCore::ApplyStyleCommand::removeInlineStyle):
(WebCore::ApplyStyleCommand::shouldSplitTextElement):
(WebCore::ApplyStyleCommand::applyInlineStyleChange):

  • editing/DeleteButtonController.cpp:

(WebCore::enclosingDeletableElement):

  • editing/Editor.cpp:

(WebCore::Editor::selectionForCommand):
(WebCore::Editor::setBaseWritingDirection):
(WebCore::findFirstMarkable):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::selectAll):
(WebCore::scanForForm):

  • editing/InsertListCommand.cpp:

(WebCore::InsertListCommand::mergeWithNeighboringLists):

  • editing/MarkupAccumulator.cpp:

(WebCore::MarkupAccumulator::elementCannotHaveEndTag):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):
(WebCore::ReplaceSelectionCommand::handleStyleSpans):
(WebCore::ReplaceSelectionCommand::doApply):
(WebCore::ReplaceSelectionCommand::insertAsListItems):

  • editing/TextIterator.cpp:

(WebCore::shouldEmitNewlinesBeforeAndAfterNode):
(WebCore::shouldEmitExtraNewlineForNode):

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_addTableCellForElement):
(HTMLConverter::_processElement):

  • editing/htmlediting.cpp:

(WebCore::enclosingList):
(WebCore::embeddedSublist):
(WebCore::appendedSublist):

  • editing/ios/EditorIOS.mm:

(WebCore::Editor::setTextAlignmentForChangedBaseWritingDirection):

  • editing/mac/EditorMac.mm:

(WebCore::maybeCopyNodeAttributesToFragment):

  • editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::appendElement):

  • html/BaseChooserOnlyDateAndTimeInputType.cpp:

(WebCore::BaseChooserOnlyDateAndTimeInputType::updateAppearance):

  • html/ColorInputType.cpp:

(WebCore::ColorInputType::shadowColorSwatch):

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::insertedInto):

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNamedElementCache):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::matchesReadWritePseudoClass):
(WebCore::HTMLElement::setOuterHTML):
(WebCore::elementAffectsDirectionality):
(WebCore::HTMLElement::directionality):
(WebCore::HTMLElement::dirAttributeChanged):

  • html/HTMLElement.h:

(WebCore::isHTMLElement):
(WebCore::Node::hasTagName):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::getNamedElements):

  • html/HTMLFrameElementBase.h:

(WebCore::isHTMLFrameElementBase):

  • html/HTMLFrameOwnerElement.h:

(WebCore::isHTMLFrameOwnerElement):

  • html/HTMLMediaElement.h:

(WebCore::isHTMLMediaElement):

  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::isDisabledFormControl):

  • html/HTMLPlugInElement.h:

(WebCore::isHTMLPlugInElement):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::addPlugInsFromNodeListMatchingPlugInOrigin):

  • html/HTMLPlugInImageElement.h:

(WebCore::isHTMLPlugInImageElement):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::setOption):
(WebCore::HTMLSelectElement::setLength):
(WebCore::HTMLSelectElement::recalcListItems):

  • html/HTMLSourceElement.cpp:

(WebCore::HTMLSourceElement::insertedInto):
(WebCore::HTMLSourceElement::removedFrom):

  • html/HTMLTableCellElement.cpp:

(WebCore::HTMLTableCellElement::cellAbove):

  • html/HTMLTableCellElement.h:

(WebCore::isHTMLTableCellElement):

  • html/HTMLTableElement.cpp:

(WebCore::HTMLTableElement::tHead):
(WebCore::HTMLTableElement::tFoot):
(WebCore::HTMLTableElement::lastBody):

  • html/HTMLTableRowElement.cpp:

(WebCore::HTMLTableRowElement::rowIndex):

  • html/HTMLTableRowsCollection.cpp:

(WebCore::isInSection):

  • html/HTMLTableSectionElement.h:

(WebCore::isHTMLTableSectionElement):

  • html/HTMLTagNames.in:
  • html/HTMLTextFormControlElement.cpp:

(WebCore::enclosingTextFormControl):

  • html/HTMLTextFormControlElement.h:

(WebCore::isHTMLTextFormControlElement):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::removedFrom):
(WebCore::HTMLTrackElement::mediaElement):

  • html/LabelableElement.h:

(WebCore::isLabelableElement):

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::sliderTrackElement):

  • html/shadow/MediaControlElementTypes.cpp:

(WebCore::parentMediaElement):
(WebCore::mediaControlElementType):

  • html/shadow/TextControlInnerElements.h:

(WebCore::isTextControlInnerTextElement):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/InspectorNodeFinder.cpp:

(WebCore::InspectorNodeFinder::searchUsingDOMTreeTraversal):

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadSubframe):

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::create):

  • mathml/MathMLElement.cpp:

(WebCore::MathMLElement::isPhrasingContent):
(WebCore::MathMLElement::isFlowContent):
(WebCore::MathMLElement::childShouldCreateRenderer):

  • mathml/mathtags.in:
  • page/DragController.cpp:

(WebCore::DragController::canProcessDrag):

  • page/EventHandler.cpp:

(WebCore::targetIsFrame):

  • page/FocusController.cpp:

(WebCore::hasCustomFocusLogic):
(WebCore::FocusController::findFocusableElementDescendingDownIntoFrameDocument):
(WebCore::FocusController::advanceFocusInDocumentOrder):

  • page/Frame.cpp:

(WebCore::Frame::searchForLabelsBeforeElement):

  • page/FrameView.cpp:

(WebCore::FrameView::init):
(WebCore::FrameView::addEmbeddedObjectToUpdate):
(WebCore::FrameView::updateEmbeddedObject):

  • page/PageSerializer.cpp:

(WebCore::isCharsetSpecifyingNode):
(WebCore::SerializerMarkupAccumulator::appendCustomAttributes):

  • page/SpatialNavigation.cpp:

(WebCore::frameOwnerElement):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::absolutePDFURL):
(WebCore::HitTestResult::mediaElement):

  • rendering/RenderBlockFlow.cpp:

(WebCore::resizeTextPermitted):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::paintContents):
(WebCore::RenderEmbeddedObject::layout):
(WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollRectToVisible):
(WebCore::RenderLayer::updateSnapOffsets):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateConfiguration):
(WebCore::isRestartedPlugin):

  • rendering/RenderMedia.h:

(WebCore::RenderMedia::mediaElement):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::offsetParent):

  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::plugInImageElement):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::parseColSpanFromDOM):
(WebCore::RenderTableCell::parseRowSpanFromDOM):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::textFormControlElement):

  • rendering/RenderThemeGtk.cpp:

(WebCore::getMediaElementFromRenderObject):

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintSearchFieldCancelButton):
(WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):

  • rendering/RenderTreeAsText.cpp:

(WebCore::isEmptyOrUnstyledAppleStyleSpan):

  • rendering/RenderWidget.h:

(WebCore::RenderWidget::frameOwnerElement):

  • testing/Internals.cpp:

(WebCore::Internals::visiblePlaceholder):
(WebCore::Internals::simulateAudioInterruption):
(WebCore::Internals::isPluginSnapshotted):

  • xml/XPathStep.cpp:

(WebCore::XPath::nodeMatchesBasicTest):

Source/WebKit/win:

Use is<>() / downcast<>() where appropriate.

  • DOMHTMLClasses.cpp:

(DOMHTMLElement::idName):
(DOMHTMLElement::innerText):
(DOMHTMLElement::setInnerText):

Source/WebKit2:

Use is<>() / downcast<>() where appropriate.

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:

(WebKit::PDFPluginTextAnnotation::value):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::initializePlugin):
(WebKit::PluginView::pluginSnapshotTimerFired):
(WebKit::PluginView::pluginDidReceiveUserInteraction):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::performActionOnElement):

4:55 PM Changeset in webkit [174030] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Win] Unreviewed. More gardening on Windows tests.

  • platform/win/TestExpectations:

Enable some css3 conditional tests that are now passing.
Disable some failing hidpi tests since we don’t have hidpi test support on Windows.

4:38 PM Changeset in webkit [174029] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Add API for loading local files
https://bugs.webkit.org/show_bug.cgi?id=137153
rdar://problem/17761459

Reviewed by Oliver Hunt.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView loadFileURL:allowingReadAccessToURL:]):
Load the file, wrapping the navigation ID in a WKNavigation using createLoadRequestNavigation.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::loadFile):

  • UIProcess/WebPageProxy.h:

Return the navigation ID (or 0 if the navigation failed).

4:25 PM Changeset in webkit [174028] by commit-queue@webkit.org
  • 19 edits in trunk/Source

Web Inspector: Automatic Inspection should continue once all breakpoints are loaded
https://bugs.webkit.org/show_bug.cgi?id=137038

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-26
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Add a new protocol command "Inspector.initialized" that signifies to the backend
when the frontend has sent all its initialization messages to the backend. This
can include information like breakpoints, which we would want to have loaded
before any JavaScript evaluates in the context.

  • inspector/protocol/InspectorDomain.json:

New protocol command, Inspector.initialized.

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

(Inspector::InspectorAgent::InspectorAgent):
(Inspector::InspectorAgent::initialized):
Tell the InspectorEnvironment (the Controller) the frontend has initialized.

  • inspector/InspectorEnvironment.h:

Abstract virtual method to handle frontend initialization. To be
implemented by all of the InspectorControllers.

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

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::connectFrontend):
(Inspector::JSGlobalObjectInspectorController::disconnectFrontend):
(Inspector::JSGlobalObjectInspectorController::frontendInitialized):
When a frontend is initialized, if it was automatic inspection unpause the debuggable.

  • inspector/remote/RemoteInspectorDebuggable.cpp:

(Inspector::RemoteInspectorDebuggable::unpauseForInitializedInspector):
Complete setup for this debuggable.

  • inspector/remote/RemoteInspectorDebuggable.h:
  • inspector/remote/RemoteInspectorDebuggableConnection.mm:

(Inspector::RemoteInspectorDebuggableConnection::setup):
Move the setup complete to later, when the frontend sends an "initialized" message.

  • inspector/remote/RemoteInspector.h:
  • inspector/remote/RemoteInspector.mm:

(Inspector::RemoteInspector::updateDebuggableAutomaticInspectCandidate):
Provide a longer timeout now that the frontend must send messages after the connection
has established. The longest I have seen in 600ms, but the average tends to be 200ms.
So bump the timeout to 800ms for a buffer.

(Inspector::RemoteInspector::setupSucceeded): Deleted.
(Inspector::RemoteInspector::setupCompleted):
Rename, as this happens at a slightly different time.

Source/WebCore:

Handle frontend initialization messages even though pages cannot
be automatically inspected yet.

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
(WebCore::InspectorController::frontendInitialized):

  • inspector/InspectorController.h:
  • inspector/WorkerInspectorController.h:
  • page/Page.h:

(WebCore::Page::inspectorDebuggable):

Source/WebInspectorUI:

  • UserInterface/Base/Main.js:

Send the initialized message after we have sent all other setup messages,
such as enabling features and setting breakpoints.

4:18 PM Changeset in webkit [174027] by Beth Dakin
  • 2 edits in trunk/Tools

Many platform/mac-wk2/tiled-drawing/ tests fail when run on a retina device
https://bugs.webkit.org/show_bug.cgi?id=137089

Reviewed by Tim Horton.

This is a little sneaky since updateWindowScaleForTest() should ensure that these
tests run at 1x, but that code does not seem to execute at the right time for
these tests, so if we just ensure we start out at 1x, that appears to fix these
tests and does not break the HiDPI tests either.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions):

3:54 PM Changeset in webkit [174026] by roger_fong@apple.com
  • 2 edits in trunk/Tools

[Windows] Decrease default number of child processes used by Windows.

  • Scripts/webkitpy/port/win.py:

(WinPort.default_child_processes):
Having too many seems to cause many tests to crash or timeout.
We may even need to make it have only 1 child process if we’re still seeing problems after this.

3:53 PM Changeset in webkit [174025] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

DFG shouldn't insert store barriers when it has it on good authority that we're not storing a cell
https://bugs.webkit.org/show_bug.cgi?id=137161

Reviewed by Mark Hahnenberg.

This looks like a 1% Octane speed-up.

  • bytecode/SpeculatedType.h:

(JSC::isNotCellSpeculation):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::insertStoreBarrier):
(JSC::DFG::FixupPhase::insertCheck):

  • dfg/DFGNode.h:

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

3:17 PM Changeset in webkit [174024] by bshafiei@apple.com
  • 7 edits
    5 deletes in tags/Safari-601.1.1

Roll out r172794. <rdar://problem/18447606>

3:05 PM Changeset in webkit [174023] by bshafiei@apple.com
  • 2 edits in tags/Safari-601.1.1/Source/WebCore

Merged r173981. <rdar://problem/18447820>

2:57 PM Changeset in webkit [174022] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

2:53 PM Changeset in webkit [174021] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.1

New tag.

2:41 PM Changeset in webkit [174020] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Mac] Some inspector tests time out following r173992.
https://bugs.webkit.org/show_bug.cgi?id=137157

  • platform/mac/TestExpectations:
2:39 PM Changeset in webkit [174019] by saambarati1@gmail.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Type Token View shows type information on hover when it shouldn't
https://bugs.webkit.org/show_bug.cgi?id=137152

Reviewed by Brian J. Burg.

TypeTokenView should only show type information when there is
more than one primitive type or more than zero objects types.
This fixes a bug in checking the length of object types.

  • UserInterface/Views/TypeTokenView.js:

(WebInspector.TypeTokenView.prototype._shouldShowPopover):

2:05 PM Changeset in webkit [174018] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION (r173988): Fix unused variable warning in PDFDocumentImage.cpp

Fixes the following build failure in release builds:

WebCore/platform/graphics/cg/PDFDocumentImage.cpp:230:12: error: unused variable 'pageCount' [-Werror,-Wunused-variable]

  • platform/graphics/cg/PDFDocumentImage.cpp:

(WebCore::PDFDocumentImage::computeBoundsForCurrentPage): Change
ASSERT() to call pageCount().

12:02 PM Changeset in webkit [174017] by ap@apple.com
  • 2 edits in trunk/Tools

Mac EWS bots do not keep logs as promised
https://bugs.webkit.org/show_bug.cgi?id=137151

Reviewed by Ryosuke Niwa.

  • EWSTools/start-queue-mac.sh: Actually keep the logs for 14 days.
11:51 AM Changeset in webkit [174016] by timothy@apple.com
  • 2 edits in trunk/Source/WebKit2

Add WKInspector back function stubs that went missing from r173929.
My changes to WKDeprecatedFunctions.cpp got lost in the shuffle.

  • Shared/API/c/WKDeprecatedFunctions.cpp:

(WKInspectorIsDebuggingJavaScript):
(WKInspectorToggleJavaScriptDebugging):
(WKInspectorIsProfilingJavaScript):
(WKInspectorToggleJavaScriptProfiling):

11:49 AM Changeset in webkit [174015] by ap@apple.com
  • 7 edits
    1 move
    2 deletes in trunk/Tools

Get rid of webkit-queues dashboard
https://bugs.webkit.org/show_bug.cgi?id=137141

Reviewed by Ryosuke Niwa.

  • QueueStatusServer/app.yaml: Updated version.
  • QueueStatusServer/templates/dashboard.html: Removed.
  • QueueStatusServer/handlers/dashboard.py: Removed.
  • QueueStatusServer/main.py:

Kill it!

  • QueueStatusServer/stylesheets/common.css: Copied from Tools/QueueStatusServer/stylesheets/dashboard.css.

(.status-cell): Deleted.
(.status-cell:hover): Deleted.
(.status-cell.pass): Deleted.
(.status-cell.fail): Deleted.
(.status-cell.pending): Deleted.
(.status-cell.error): Deleted.

  • QueueStatusServer/stylesheets/dashboard.css: Removed.
  • QueueStatusServer/templates/activebots.html:
  • QueueStatusServer/templates/patch.html:
  • QueueStatusServer/templates/queuestatus.html:
  • QueueStatusServer/templates/recentstatus.html:

Renamed dashboard.css to common.css, and removed dashboard-only rules.

11:26 AM Changeset in webkit [174014] by Brian Burg
  • 2 edits in trunk/Source/WebCore

StorageTracker::deleteOrigin being called off the main thread (ASSERTs in inspector/test-harness-trivially-works.html test)
https://bugs.webkit.org/show_bug.cgi?id=129642

Apply post-review comments from Alexey Proskuryakov.

  • storage/StorageAreaSync.cpp:

(WebCore::StorageAreaSync::deleteEmptyDatabase): Make a thread-safe isolated copy of the string.

10:50 AM Changeset in webkit [174013] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

REGRESSION(r173929): Web inspector doesn't work after r173929 when INSPECTOR_SERVER is enabled
https://bugs.webkit.org/show_bug.cgi?id=137150

Reviewed by Timothy Hatcher.

The inspector doesn't show any information about the inspected
page because it's sending messages to a remote frontend that is
not running.

  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::WebInspector): Initialize m_remoteFrontendConnected.
(WebKit::WebInspector::sendMessageToFrontend): Send
SendMessageToRemoteFrontend message to the UI process when remote
frontend is connected, or SendMessageToFrontend message to
WebInspectorUI otherwise.
(WebKit::WebInspector::remoteFrontendConnected): Set m_remoteFrontendConnected to true.
(WebKit::WebInspector::remoteFrontendDisconnected): Set m_remoteFrontendConnected to false.

  • WebProcess/WebPage/WebInspector.h:
10:49 AM Changeset in webkit [174012] by pvarga@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix typo in YARR at BOL check
https://bugs.webkit.org/show_bug.cgi?id=137144

Reviewed by Darin Adler.

  • yarr/YarrPattern.cpp: replace bitwise and operator by logical and

(JSC::Yarr::YarrPatternConstructor::assertionBOL):

10:18 AM Changeset in webkit [174011] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

SVG -> OTF converter bug gardening
https://bugs.webkit.org/show_bug.cgi?id=137088

Reviewed by Darin Adler.

This test fixes some (but not all) of the svg/ layout tests that never worked with the
SVG -> OTF font converter. The actual list of tests this fixes is shown below. I will be
filing bugs for the remaining issues along with the relevant tests that those issues
cause to fail.

Tests: svg/W3C-SVG-1.1/fonts-elem-05-t.svg

svg/W3C-SVG-1.1/fonts-kern-01-t.svg
svg/custom/glyph-setting-d-attribute.svg
svg/custom/scrolling-embedded-svg-file-image-repaint-problem.html
svg/custom/skip-underline-missing-glyph.html
svg/custom/svg-fonts-fallback.xhtml
svg/custom/svg-fonts-in-text-controls.html

  • svg/SVGToOTFFontConversion.cpp:

(WebCore::SVGToOTFFontConverter::appendHEADTable): We use the font's minimum and maximum
bounding box information to size <textarea>s and <input>s.
(WebCore::SVGToOTFFontConverter::addCodepointRanges): Codepoint ranges are closed.
(WebCore::SVGToOTFFontConverter::computeKerningData): Typo in appending glyphs to the
wrong set.
(WebCore::SVGToOTFFontConverter::transcodeGlyphPaths): Use the font's horizontal
origin if the glyph doesn't have one.
(WebCore::SVGToOTFFontConverter::convertSVGToOTFFont): r173852 implemented vhea, vmtx,
and kern.
(WebCore::transcodeGlyphPaths): Moved inside SVGToOTFFontConverter.

10:02 AM Changeset in webkit [174010] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

iOS build fix following r173989.

  • page/ios/FrameIOS.mm:

(WebCore::ancestorRespondingToClickEvents):

9:58 AM Changeset in webkit [174009] by ap@apple.com
  • 10 edits in trunk/Tools

Get rid of Retry status in webkit-queues
https://bugs.webkit.org/show_bug.cgi?id=137135

Reviewed by Ryosuke Niwa.

  • QueueStatusServer/config/messages.py: Removed Retry.
  • QueueStatusServer/handlers/releasepatch.py: This is now straightforward, as it

no longer needs to check the latest status. It just always both unlocks the patch
and removes it from WorkItems.

  • QueueStatusServer/handlers/submittoews.py: (SubmitToEWS._should_add_to_ews_queue):

I don't understand why we even needed to check for retries here, but now that there
are no retries, that code can go to /dev/null.

  • QueueStatusServer/loggers/recordpatchevent.py:

(RecordPatchEvent.started):
(RecordPatchEvent.retrying): Deleted.
Fixed retry counting, it should work for all queues now.

  • QueueStatusServer/model/queuestatus.py:

(QueueStatus.is_retry_request): Deleted. These are no more.

  • Scripts/webkitpy/common/net/statusserver_mock.py:

(MockStatusServer.release_lock):

  • Scripts/webkitpy/tool/commands/queues_unittest.py:

Did whatever it took to keep passing the tests. The particular test doesn't seem
quite right, but whatever.

  • Scripts/webkitpy/tool/commands/queues.py:

(CommitQueue.process_work_item): Instead of posting a retry status, just unlock
and let others pick up. Also, added explicit returns for clarity.
(AbstractPatchQueue._did_retry): Deleted.

9:57 AM Changeset in webkit [174008] by berto@igalia.com
  • 2 edits in trunk/Source/WebKit2

[GTK] Don't include full path names in WebKitEnumTypes.h
https://bugs.webkit.org/show_bug.cgi?id=137148

Reviewed by Carlos Garcia Campos.

Replace @filename@ with @basename@ in the template, since we don't
want to include the full path name in the generated header.

  • UIProcess/API/gtk/WebKitEnumTypes.h.template:
9:57 AM WebKitGTK/2.6.x edited by berto@igalia.com
(diff)
7:27 AM Changeset in webkit [174007] by jfernandez@igalia.com
  • 2 edits in trunk/Source/WebCore

[CSS Grid Layout] Empty string case already covered by containesOnlyWhiteSpace.
https://bugs.webkit.org/show_bug.cgi?id=137146

Reviewed by Sergio Villar Senin.

When checking out for white-space only strings in the grid-template-areas
property values, it's not neccessary to check out for empty strings as
such case is already covered.

No new tests, already covered by fast/css-grid-layout/grid-template-areas-empty-string-crash.html.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseGridTemplateAreasRow):

6:41 AM Changeset in webkit [174006] by svillar@igalia.com
  • 4 edits
    2 adds in trunk

[CSS Grid Layout] Fix the handling of infinity in track growth limits
https://bugs.webkit.org/show_bug.cgi?id=137019

Reviewed by Darin Adler.

Source/WebCore:

The growth limit of content sized tracks is initialized to
infinity which is internally represented as -1. We were not
specialcasing this situation, and thus, -1 was used in the
computations as any other value. This change makes the code aware
of the existence of infinites (like when sorting tracks by growth
potential or when initializing the track growth limits).

There was another bug related to infinities. The code that was
replacing a infinite growth limit by a finite one was not using
the proper indexes so the tracks that were being updated were the
wrong ones.

Test: fast/css-grid-layout/grid-content-sized-columns-resolution.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computeUsedBreadthOfGridTracks):
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
(WebCore::sortByGridTrackGrowthPotential):
(WebCore::RenderGrid::distributeSpaceToTracks):

LayoutTests:

  • fast/css-grid-layout/grid-content-sized-columns-resolution-expected.txt: Added.
  • fast/css-grid-layout/grid-content-sized-columns-resolution.html: Added.
  • fast/css-grid-layout/grid-item-order-in-content-sized-columns-resolution-expected.txt:
6:14 AM Changeset in webkit [174005] by Csaba Osztrogonác
  • 2 edits
    1 add in trunk/Tools

[EFL] Fix the gst-libav build on ARM Thumb2
https://bugs.webkit.org/show_bug.cgi?id=137022

Reviewed by Zoltan Herczeg.

  • efl/jhbuild.modules:
  • efl/patches/gst-libav.patch: Added.
5:16 AM Changeset in webkit [174004] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Unreviewed. Fix make distcheck.

  • GNUmakefile.list.am: Add missing header file.
2:50 AM Changeset in webkit [174003] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4

Merge r170997 - [GTK] Enable VIDEO_TRACK by default
https://bugs.webkit.org/show_bug.cgi?id=134801

Reviewed by Philippe Normand.

  • Source/cmake/OptionsGTK.cmake:
1:39 AM Changeset in webkit [174002] by commit-queue@webkit.org
  • 3 edits
    6 adds in trunk

[GTK] Fix support for the initial-letter CSS property to first-letter
https://bugs.webkit.org/show_bug.cgi?id=137108

Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-09-26
Reviewed by Alejandro G. Castro.

Source/WebCore:

Add support for cap-height to the font system.

  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:

(WebCore::SimpleFontData::platformInit):

LayoutTests:

Add missing GTK test expectation files after http://webkit.org/b/136484

  • platform/gtk/fast/css-generated-content/initial-letter-basic-expected.txt: Added.
  • platform/gtk/fast/css-generated-content/initial-letter-border-padding-expected.txt: Added.
  • platform/gtk/fast/css-generated-content/initial-letter-clearance-expected.txt: Added.
  • platform/gtk/fast/css-generated-content/initial-letter-descender-expected.txt: Added.
  • platform/gtk/fast/css-generated-content/initial-letter-raised-expected.txt: Added.
  • platform/gtk/fast/css-generated-content/initial-letter-sunken-expected.txt: Added.
1:20 AM Changeset in webkit [174001] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Bump up dependencies not to conflict with the GTK port.
https://bugs.webkit.org/show_bug.cgi?id=137143

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-09-26
Reviewed by Gyuyoung Kim.

Tools/efl/install-dependencies and Tools/gtk/install-dependencies keep
installing and removing different versions of libgnutls-dev, thus
hindering the development for both ports on the same machine. GTK is
using the newer version of the package, now bumping up EFL to use the
same.

  • efl/install-dependencies:
1:17 AM Changeset in webkit [174000] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4

Merge r173999 - [GTK] Enable CSS_IMAGE_SET in production builds
https://bugs.webkit.org/show_bug.cgi?id=137142

Reviewed by Alejandro G. Castro.

This is required by the inspector to show some of the icons that
has a HiDPI variant.

  • Source/cmake/OptionsGTK.cmake:
12:39 AM Changeset in webkit [173999] by Carlos Garcia Campos
  • 2 edits in trunk

[GTK] Enable CSS_IMAGE_SET in production builds
https://bugs.webkit.org/show_bug.cgi?id=137142

Reviewed by Alejandro G. Castro.

This is required by the inspector to show some of the icons that
has a HiDPI variant.

  • Source/cmake/OptionsGTK.cmake:
12:32 AM Changeset in webkit [173998] by Brian Burg
  • 2 edits in trunk/LayoutTests

Unreviewed gardening after r173992. Skip inspector/timelines/.

it seems to be running into unexplained nondeterminism similar to
inspector/debugger/ tests. These should be investigated together.

Sep 25, 2014:

11:24 PM Changeset in webkit [173997] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][WK2] Minibrowser : Fix the 'Escape' button issue to exit fullscreen
https://bugs.webkit.org/show_bug.cgi?id=136854

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-09-25
Reviewed by Gyuyoung Kim.

'Escape' key should exit fullscreen first and then should be used to stop page load.

  • MiniBrowser/efl/main.c:

(on_key_down):

11:03 PM Changeset in webkit [173996] by timothy@apple.com
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: Show type info icon is blurry
https://bugs.webkit.org/show_bug.cgi?id=137125

Reviewed by Darin Adler.

  • UserInterface/Images/NavigationItemTypes.svg:
  • UserInterface/Views/ScriptContentView.js:

(WebInspector.ScriptContentView):

  • UserInterface/Views/TextContentView.js:

(WebInspector.TextContentView):

  • UserInterface/Views/TextResourceContentView.js:

(WebInspector.TextResourceContentView):

10:37 PM Changeset in webkit [173995] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed, EFL gardening. Mark SVG 1.1 tests are flaky.

  • platform/efl/TestExpectations:
9:31 PM Changeset in webkit [173994] by saambarati1@gmail.com
  • 5 edits in trunk/Source

Web Inspector: console.assert(bitString) TypeSet:50
https://bugs.webkit.org/show_bug.cgi?id=137051

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

This patch creates stricter requirements on a TypeDescription
being valid. To be valid, a TypeDescription now ensures that
the TypeSet it describes has non null type information.

  • inspector/agents/InspectorRuntimeAgent.cpp:

(Inspector::InspectorRuntimeAgent::getRuntimeTypesForVariablesAtOffsets):

  • runtime/TypeSet.h:

(JSC::TypeSet::isEmpty):

Source/WebInspectorUI:

This fixes TypeSet's isContainedIn method by ensuring that
the type bit string isn't zero because the test would trivially
pass if the bit string is zero.

  • UserInterface/Models/TypeSet.js:

(WebInspector.TypeSet.prototype.isContainedIn):

8:59 PM Changeset in webkit [173993] by fpizlo@apple.com
  • 51 edits
    52 adds in trunk

FTL should sink object allocations
https://bugs.webkit.org/show_bug.cgi?id=136330

Reviewed by Oliver Hunt.
Source/JavaScriptCore:


This adds a comprehensive infrastructure for sinking object allocations in DFG SSA form. The
ultimate goal of sinking is to sink an allocation "past the points of its death" - i.e. to
eliminate it completely. The way sinking reasons about the CFG means that it resembles a
partial escape analysis: we create paths through a function where some allocation(s) don't
have to be done at all even if there are other paths along which those allocations still have
to happen. But it also produces other side benefits. Even if an allocation isn't eliminated
along any path, the act of sinking reduces the number of barriers that have to execute.

Because this was a fairly ambituous SSA analysis and transformation, I added a bunch of C++11
sugar to the DFG's internal APIs to allow for easier iteration over blocks, nodes, and
successors; and to add more functor goodness to allow for more lambdas.

This is just the beginning. The bug has a bunch of other bugs that depend on it. So far this
is a spectacular speed-up on microbenchmarks but it's still too limited to affect big
benchmarks. For example, doing o == p makes the sinking phase think that o and p escape.
That's just an omission and there are likely others; we can easily fix them. I think it's
best to land it in its current form and then to worry about the big benchmarks in subsequent
work (see bug 137126).

(JSC::StructureSet::iterator::iterator):
(JSC::StructureSet::iterator::operator*):
(JSC::StructureSet::iterator::operator++):
(JSC::StructureSet::iterator::operator==):
(JSC::StructureSet::iterator::operator!=):
(JSC::StructureSet::begin):
(JSC::StructureSet::end):

  • dfg/DFGAbstractInterpreter.h:

(JSC::DFG::AbstractInterpreter::phiChildren):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::AbstractInterpreter):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::startExecuting):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::execute):

  • dfg/DFGAvailability.h:

(JSC::DFG::Availability::shouldUseNode):
(JSC::DFG::Availability::isFlushUseful):
(JSC::DFG::Availability::isDead):
(JSC::DFG::Availability::operator!=):

  • dfg/DFGAvailabilityMap.cpp: Added.

(JSC::DFG::AvailabilityMap::prune):
(JSC::DFG::AvailabilityMap::clear):
(JSC::DFG::AvailabilityMap::dump):
(JSC::DFG::AvailabilityMap::operator==):
(JSC::DFG::AvailabilityMap::merge):

  • dfg/DFGAvailabilityMap.h: Added.

(JSC::DFG::AvailabilityMap::forEachAvailability):

  • dfg/DFGBasicBlock.cpp:

(JSC::DFG::BasicBlock::SSAData::SSAData):

  • dfg/DFGBasicBlock.h:

(JSC::DFG::BasicBlock::begin):
(JSC::DFG::BasicBlock::end):
(JSC::DFG::BasicBlock::SuccessorsIterable::SuccessorsIterable):
(JSC::DFG::BasicBlock::SuccessorsIterable::iterator::iterator):
(JSC::DFG::BasicBlock::SuccessorsIterable::iterator::operator*):
(JSC::DFG::BasicBlock::SuccessorsIterable::iterator::operator++):
(JSC::DFG::BasicBlock::SuccessorsIterable::iterator::operator==):
(JSC::DFG::BasicBlock::SuccessorsIterable::iterator::operator!=):
(JSC::DFG::BasicBlock::SuccessorsIterable::begin):
(JSC::DFG::BasicBlock::SuccessorsIterable::end):
(JSC::DFG::BasicBlock::successors):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGConstantFoldingPhase.cpp:

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

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGFlushedAt.cpp:

(JSC::DFG::FlushedAt::dump):

  • dfg/DFGFlushedAt.h:

(JSC::DFG::FlushedAt::FlushedAt):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::dumpBlockHeader):
(JSC::DFG::Graph::mergeRelevantToOSR):
(JSC::DFG::Graph::invalidateCFG):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::NaturalBlockIterable::NaturalBlockIterable):
(JSC::DFG::Graph::NaturalBlockIterable::iterator::iterator):
(JSC::DFG::Graph::NaturalBlockIterable::iterator::operator*):
(JSC::DFG::Graph::NaturalBlockIterable::iterator::operator++):
(JSC::DFG::Graph::NaturalBlockIterable::iterator::operator==):
(JSC::DFG::Graph::NaturalBlockIterable::iterator::operator!=):
(JSC::DFG::Graph::NaturalBlockIterable::iterator::findNext):
(JSC::DFG::Graph::NaturalBlockIterable::begin):
(JSC::DFG::Graph::NaturalBlockIterable::end):
(JSC::DFG::Graph::blocksInNaturalOrder):
(JSC::DFG::Graph::doToChildrenWithNode):
(JSC::DFG::Graph::doToChildren):

  • dfg/DFGHeapLocation.cpp:

(WTF::printInternal):

  • dfg/DFGHeapLocation.h:
  • dfg/DFGInsertOSRHintsForUpdate.cpp: Added.

(JSC::DFG::insertOSRHintsForUpdate):

  • dfg/DFGInsertOSRHintsForUpdate.h: Added.
  • dfg/DFGInsertionSet.h:

(JSC::DFG::InsertionSet::graph):

  • dfg/DFGMayExit.cpp:

(JSC::DFG::mayExit):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToPutByOffsetHint):
(JSC::DFG::Node::convertToPutStructureHint):
(JSC::DFG::Node::convertToPhantomNewObject):
(JSC::DFG::Node::isCellConstant):
(JSC::DFG::Node::castConstant):
(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasStorageAccessData):
(JSC::DFG::Node::hasObjectMaterializationData):
(JSC::DFG::Node::objectMaterializationData):
(JSC::DFG::Node::isPhantomObjectAllocation):

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

(JSC::DFG::OSRAvailabilityAnalysisPhase::run):
(JSC::DFG::LocalOSRAvailabilityCalculator::endBlock):
(JSC::DFG::LocalOSRAvailabilityCalculator::executeNode):

  • dfg/DFGOSRAvailabilityAnalysisPhase.h:
  • dfg/DFGObjectAllocationSinkingPhase.cpp: Added.

(JSC::DFG::ObjectAllocationSinkingPhase::ObjectAllocationSinkingPhase):
(JSC::DFG::ObjectAllocationSinkingPhase::run):
(JSC::DFG::ObjectAllocationSinkingPhase::performSinking):
(JSC::DFG::ObjectAllocationSinkingPhase::determineMaterializationPoints):
(JSC::DFG::ObjectAllocationSinkingPhase::placeMaterializationPoints):
(JSC::DFG::ObjectAllocationSinkingPhase::lowerNonReadingOperationsOnPhantomAllocations):
(JSC::DFG::ObjectAllocationSinkingPhase::promoteSunkenFields):
(JSC::DFG::ObjectAllocationSinkingPhase::resolve):
(JSC::DFG::ObjectAllocationSinkingPhase::handleNode):
(JSC::DFG::ObjectAllocationSinkingPhase::createMaterialize):
(JSC::DFG::ObjectAllocationSinkingPhase::populateMaterialize):
(JSC::DFG::performObjectAllocationSinking):

  • dfg/DFGObjectAllocationSinkingPhase.h: Added.
  • dfg/DFGObjectMaterializationData.cpp: Added.

(JSC::DFG::PhantomPropertyValue::dump):
(JSC::DFG::ObjectMaterializationData::dump):
(JSC::DFG::ObjectMaterializationData::oneWaySimilarityScore):
(JSC::DFG::ObjectMaterializationData::similarityScore):

  • dfg/DFGObjectMaterializationData.h: Added.

(JSC::DFG::PhantomPropertyValue::PhantomPropertyValue):
(JSC::DFG::PhantomPropertyValue::operator==):

  • dfg/DFGPhantomCanonicalizationPhase.cpp:

(JSC::DFG::PhantomCanonicalizationPhase::run):

  • dfg/DFGPhantomRemovalPhase.cpp:

(JSC::DFG::PhantomRemovalPhase::run):

  • dfg/DFGPhiChildren.cpp: Added.

(JSC::DFG::PhiChildren::PhiChildren):
(JSC::DFG::PhiChildren::~PhiChildren):
(JSC::DFG::PhiChildren::upsilonsOf):

  • dfg/DFGPhiChildren.h: Added.

(JSC::DFG::PhiChildren::forAllIncomingValues):
(JSC::DFG::PhiChildren::forAllTransitiveIncomingValues):

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThreadImpl):

  • dfg/DFGPrePostNumbering.cpp: Added.

(JSC::DFG::PrePostNumbering::PrePostNumbering):
(JSC::DFG::PrePostNumbering::~PrePostNumbering):
(JSC::DFG::PrePostNumbering::compute):
(WTF::printInternal):

  • dfg/DFGPrePostNumbering.h: Added.

(JSC::DFG::PrePostNumbering::preNumber):
(JSC::DFG::PrePostNumbering::postNumber):
(JSC::DFG::PrePostNumbering::isStrictAncestorOf):
(JSC::DFG::PrePostNumbering::isAncestorOf):
(JSC::DFG::PrePostNumbering::isStrictDescendantOf):
(JSC::DFG::PrePostNumbering::isDescendantOf):
(JSC::DFG::PrePostNumbering::edgeKind):

  • dfg/DFGPredictionPropagationPhase.cpp:

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

  • dfg/DFGPromoteHeapAccess.h: Added.

(JSC::DFG::promoteHeapAccess):

  • dfg/DFGPromotedHeapLocation.cpp: Added.

(JSC::DFG::PromotedLocationDescriptor::dump):
(JSC::DFG::PromotedHeapLocation::createHint):
(JSC::DFG::PromotedHeapLocation::dump):
(WTF::printInternal):

  • dfg/DFGPromotedHeapLocation.h: Added.

(JSC::DFG::PromotedLocationDescriptor::PromotedLocationDescriptor):
(JSC::DFG::PromotedLocationDescriptor::operator!):
(JSC::DFG::PromotedLocationDescriptor::kind):
(JSC::DFG::PromotedLocationDescriptor::info):
(JSC::DFG::PromotedLocationDescriptor::hash):
(JSC::DFG::PromotedLocationDescriptor::operator==):
(JSC::DFG::PromotedLocationDescriptor::operator!=):
(JSC::DFG::PromotedLocationDescriptor::isHashTableDeletedValue):
(JSC::DFG::PromotedHeapLocation::PromotedHeapLocation):
(JSC::DFG::PromotedHeapLocation::operator!):
(JSC::DFG::PromotedHeapLocation::kind):
(JSC::DFG::PromotedHeapLocation::base):
(JSC::DFG::PromotedHeapLocation::info):
(JSC::DFG::PromotedHeapLocation::descriptor):
(JSC::DFG::PromotedHeapLocation::hash):
(JSC::DFG::PromotedHeapLocation::operator==):
(JSC::DFG::PromotedHeapLocation::isHashTableDeletedValue):
(JSC::DFG::PromotedHeapLocationHash::hash):
(JSC::DFG::PromotedHeapLocationHash::equal):

  • dfg/DFGSSACalculator.cpp:

(JSC::DFG::SSACalculator::reset):

  • dfg/DFGSSACalculator.h:
  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCurrentBlock):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • dfg/DFGStructureRegistrationPhase.cpp:

(JSC::DFG::StructureRegistrationPhase::run):

  • dfg/DFGValidate.cpp:

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

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLExitPropertyValue.cpp: Added.

(JSC::FTL::ExitPropertyValue::dump):

  • ftl/FTLExitPropertyValue.h: Added.

(JSC::FTL::ExitPropertyValue::ExitPropertyValue):
(JSC::FTL::ExitPropertyValue::operator!):
(JSC::FTL::ExitPropertyValue::location):
(JSC::FTL::ExitPropertyValue::value):

  • ftl/FTLExitTimeObjectMaterialization.cpp: Added.

(JSC::FTL::ExitTimeObjectMaterialization::ExitTimeObjectMaterialization):
(JSC::FTL::ExitTimeObjectMaterialization::~ExitTimeObjectMaterialization):
(JSC::FTL::ExitTimeObjectMaterialization::add):
(JSC::FTL::ExitTimeObjectMaterialization::get):
(JSC::FTL::ExitTimeObjectMaterialization::dump):

  • ftl/FTLExitTimeObjectMaterialization.h: Added.

(JSC::FTL::ExitTimeObjectMaterialization::type):
(JSC::FTL::ExitTimeObjectMaterialization::properties):

  • ftl/FTLExitValue.cpp:

(JSC::FTL::ExitValue::materializeNewObject):
(JSC::FTL::ExitValue::dumpInContext):

  • ftl/FTLExitValue.h:

(JSC::FTL::ExitValue::isObjectMaterialization):
(JSC::FTL::ExitValue::objectMaterialization):
(JSC::FTL::ExitValue::withVirtualRegister):
(JSC::FTL::ExitValue::valueFormat):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCheckStructure):
(JSC::FTL::LowerDFGToLLVM::compileArrayifyToStructure):
(JSC::FTL::LowerDFGToLLVM::compilePutStructure):
(JSC::FTL::LowerDFGToLLVM::compileNewObject):
(JSC::FTL::LowerDFGToLLVM::compileMultiGetByOffset):
(JSC::FTL::LowerDFGToLLVM::compileMultiPutByOffset):
(JSC::FTL::LowerDFGToLLVM::compileInvalidationPoint):
(JSC::FTL::LowerDFGToLLVM::compileCheckStructureImmediate):
(JSC::FTL::LowerDFGToLLVM::compileMaterializeNewObject):
(JSC::FTL::LowerDFGToLLVM::checkStructure):
(JSC::FTL::LowerDFGToLLVM::allocateCell):
(JSC::FTL::LowerDFGToLLVM::storeStructure):
(JSC::FTL::LowerDFGToLLVM::allocateObject):
(JSC::FTL::LowerDFGToLLVM::speculateStringObjectForStructureID):
(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::LowerDFGToLLVM::buildExitArguments):
(JSC::FTL::LowerDFGToLLVM::exitValueForAvailability):
(JSC::FTL::LowerDFGToLLVM::exitValueForNode):
(JSC::FTL::LowerDFGToLLVM::weakStructureID):
(JSC::FTL::LowerDFGToLLVM::weakStructure):
(JSC::FTL::LowerDFGToLLVM::availabilityMap):
(JSC::FTL::LowerDFGToLLVM::availability): Deleted.

  • ftl/FTLOSRExit.h:
  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileRecovery):
(JSC::FTL::compileStub):

  • ftl/FTLOperations.cpp: Added.

(JSC::FTL::operationNewObjectWithButterfly):
(JSC::FTL::operationMaterializeObjectInOSR):

  • ftl/FTLOperations.h: Added.
  • ftl/FTLSwitchCase.h:

(JSC::FTL::SwitchCase::SwitchCase):

  • runtime/JSObject.h:

(JSC::JSObject::finishCreation):
(JSC::JSFinalObject::JSFinalObject):
(JSC::JSFinalObject::create):

  • runtime/Structure.cpp:

(JSC::Structure::canUseForAllocationsOf):

  • runtime/Structure.h:
  • tests/stress/elidable-new-object-roflcopter-then-exit.js: Added.

(sumOfArithSeries):
(foo):

  • tests/stress/elide-new-object-dag-then-exit.js: Added.

(sumOfArithSeries):
(bar):
(verify):
(foo):

  • tests/stress/obviously-elidable-new-object-then-exit.js: Added.

(sumOfArithSeries):
(foo):

Source/WTF:


Make it possible to reset a Bag.

  • wtf/Bag.h:

(WTF::Bag::Bag):
(WTF::Bag::~Bag):
(WTF::Bag::clear):

LayoutTests:

  • js/math-denorm.html: Added.
  • js/regress/elidable-new-object-dag-expected.txt: Added.
  • js/regress/elidable-new-object-dag.html: Added.
  • js/regress/elidable-new-object-roflcopter-expected.txt: Added.
  • js/regress/elidable-new-object-roflcopter.html: Added.
  • js/regress/elidable-new-object-tree-expected.txt: Added.
  • js/regress/elidable-new-object-tree.html: Added.
  • js/regress/obvious-sink-pathology-expected.txt: Added.
  • js/regress/obvious-sink-pathology-taken-expected.txt: Added.
  • js/regress/obvious-sink-pathology-taken.html: Added.
  • js/regress/obvious-sink-pathology.html: Added.
  • js/regress/obviously-elidable-new-object-expected.txt: Added.
  • js/regress/obviously-elidable-new-object.html: Added.
  • js/regress/script-tests/elidable-new-object-dag.js: Added.

(sumOfArithSeries):
(foo):

  • js/regress/script-tests/elidable-new-object-roflcopter.js: Added.

(sumOfArithSeries):
(foo):

  • js/regress/script-tests/elidable-new-object-tree.js: Added.

(sumOfArithSeries):
(foo):

  • js/regress/script-tests/obvious-sink-pathology-taken.js: Added.

(sumOfArithSeries):
(bar):
(foo):

  • js/regress/script-tests/obvious-sink-pathology.js: Added.

(sumOfArithSeries):
(bar):
(foo):

  • js/regress/script-tests/obviously-elidable-new-object.js: Added.

(sumOfArithSeries):
(foo):

  • js/regress/script-tests/sinkable-new-object-dag.js: Added.

(sumOfArithSeries):
(verify):
(foo):

  • js/regress/script-tests/sinkable-new-object-taken.js: Added.

(sumOfArithSeries):
(bar):
(foo):

  • js/regress/script-tests/sinkable-new-object.js: Added.

(sumOfArithSeries):
(bar):
(foo):

  • js/regress/sinkable-new-object-dag-expected.txt: Added.
  • js/regress/sinkable-new-object-dag.html: Added.
  • js/regress/sinkable-new-object-expected.txt: Added.
  • js/regress/sinkable-new-object-taken-expected.txt: Added.
  • js/regress/sinkable-new-object-taken.html: Added.
  • js/regress/sinkable-new-object.html: Added.
7:29 PM Changeset in webkit [173992] by Brian Burg
  • 6 edits
    3 adds in trunk

Web Inspector: FunctionCall timeline records omit profile data if the debugger has paused
https://bugs.webkit.org/show_bug.cgi?id=136805

Reviewed by Timothy Hatcher.

Source/WebCore:

TimelineAgent was mismanaging its call stack depth counter, which caused nested FunctionCall
records to steal the parent FunctionCall's captured profile in the child's didCallFunction().
Thus, the top FunctionCall node had no profile data and nested FunctionCall nodes each had
their own profiles. The frontend expected just one profile, so it didn't show anything when
it couldn't be found.

Test: inspector/timeline/debugger-paused-while-recording.html

  • inspector/InspectorTimelineAgent.cpp: Rename m_recordingProfileDepth to m_callStackDepth.

(WebCore::InspectorTimelineAgent::willCallFunction): Fix the call stack depth management.
(WebCore::InspectorTimelineAgent::didCallFunction):
(WebCore::InspectorTimelineAgent::willEvaluateScript):
(WebCore::InspectorTimelineAgent::didEvaluateScript):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):

  • inspector/InspectorTimelineAgent.h:

Source/WebInspectorUI:

  • UserInterface/Test.html: Add missing include for ScopeChainNode.js.

LayoutTests:

Add a test to see that script timeline records contain profiles even when
the debugger pauses during timeline capturing.

  • inspector/timeline/debugger-paused-while-recording-expected.txt: Added.
  • inspector/timeline/debugger-paused-while-recording.html: Added.
  • inspector/timeline/resources/timeline-helper.js: Added.

(callFunction):
(hook):

7:20 PM Changeset in webkit [173991] by Brian Burg
  • 4 edits in trunk

StorageTracker::deleteOrigin being called off the main thread (ASSERTs in inspector/test-harness-trivially-works.html test)
https://bugs.webkit.org/show_bug.cgi?id=129642

Reviewed by Brady Eidson.

Source/WebCore:

When tearing down the inspector frontend's page, we trigger a threading violation
in StorageAreaSync's final sync code underneath StorageAreaSync::deleteEmptyDatabase().

No new tests. Regression is covered by inspector/test-harness-trivially-works.html.

  • storage/StorageAreaSync.cpp:

(WebCore::StorageAreaSync::deleteEmptyDatabase): add a missing callOnMainThread() when
calling StorageTracker::deleteOriginWithIdentifier().

LayoutTests:

Remove the blanket Skip for all tests in inspector/.

  • TestExpectations: clean up expectations for inspector/ and add new tracking bugs.
6:09 PM Changeset in webkit [173990] by Yusuke Suzuki
  • 3 edits in trunk/Source/WebKit2

Clean up unused parameter warnings
https://bugs.webkit.org/show_bug.cgi?id=137107

Reviewed by Benjamin Poulain.

  • Scripts/webkit/messages.py:

(generate_message_handler):
Sometimes generated code doesn't use connection parameter. So UNUSED_PARAM(connection) is necessary.

  • UIProcess/API/C/WKPage.cpp:

(WKPageIsPlayingAudio):

6:00 PM Changeset in webkit [173989] by commit-queue@webkit.org
  • 12 edits in trunk

Unprefix CSS cursor values zoom-in and zoom-out.
https://bugs.webkit.org/show_bug.cgi?id=137061

Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2014-09-25
Reviewed by Benjamin Poulain.

Source/WebCore:

This patch unprefixes CSS cursor values zoom-in and zoom-out.
-webkit-zoom-in and -webkit-zoom-out are kept as aliases.
ECursor members use InterCaps with an initial capital letter for now.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator ECursor):

  • css/CSSValueKeywords.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyCursor::applyValue):

  • html/ImageDocument.cpp:

(WebCore::ImageDocument::resizeImageToFit):
(WebCore::ImageDocument::restoreImageSize):
(WebCore::ImageDocument::windowSizeChanged):

  • page/EventHandler.cpp:

(WebCore::EventHandler::selectCursor):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:

LayoutTests:

Add test cases for zoom-in, zoom-out, -webkit-zoom-in, -webkit-zoom-out.

  • fast/css/cursor-parsing-expected.txt:
  • fast/css/cursor-parsing.html:
5:39 PM Changeset in webkit [173988] by Brent Fulgham
  • 57 edits in trunk/Source

[Win] Debug builds of TestWebKitAPI are crashing.
https://bugs.webkit.org/show_bug.cgi?id=133553

Reviewed by Dean Jackson.

../WebCore:

Avoid crash on shutdown due to invalid mutex state in the
HashMap debug implementation during a static destruction operation.

  • dom/Node.cpp:

(WebCore::ignoreSet): Convert static value into a NeverDestroyed.
(WebCore::Node::trackForDebugging): Use new NeverDestroyed call.
(WebCore::Node::~Node): Ditto.

../WebKit/win:

Switch from global static HashTable to a NeverDestroyed object.
Modify all accessors of the global static to use the new
NeverDestroyed accessor method.

  • AccessibleBase.cpp:

(AccessibleBase::AccessibleBase):
(AccessibleBase::~AccessibleBase):

  • CFDictionaryPropertyBag.cpp:

(CFDictionaryPropertyBag::CFDictionaryPropertyBag):
(CFDictionaryPropertyBag::~CFDictionaryPropertyBag):

  • DefaultDownloadDelegate.cpp:

(DefaultDownloadDelegate::DefaultDownloadDelegate):
(DefaultDownloadDelegate::~DefaultDownloadDelegate):

  • DefaultPolicyDelegate.cpp:

(DefaultPolicyDelegate::DefaultPolicyDelegate):
(DefaultPolicyDelegate::~DefaultPolicyDelegate):

  • MemoryStream.cpp:

(MemoryStream::MemoryStream):
(MemoryStream::~MemoryStream):

  • WebActionPropertyBag.cpp:

(WebActionPropertyBag::WebActionPropertyBag):
(WebActionPropertyBag::~WebActionPropertyBag):

  • WebArchive.cpp:

(WebArchive::WebArchive):
(WebArchive::~WebArchive):

  • WebBackForwardList.cpp:

(WebBackForwardList::WebBackForwardList):
(WebBackForwardList::~WebBackForwardList):

  • WebCache.cpp:

(WebCache::WebCache):
(WebCache::~WebCache):

  • WebCookieManager.cpp:

(WebCookieManager::WebCookieManager):
(WebCookieManager::~WebCookieManager):

  • WebCoreStatistics.cpp:

(WebCoreStatistics::WebCoreStatistics):
(WebCoreStatistics::~WebCoreStatistics):

  • WebDataSource.cpp:

(WebDataSource::~WebDataSource):

  • WebDatabaseManager.cpp:

(WebDatabaseManager::WebDatabaseManager):
(WebDatabaseManager::~WebDatabaseManager):

  • WebDocumentLoader.cpp:

(WebDocumentLoader::WebDocumentLoader):
(WebDocumentLoader::~WebDocumentLoader):

  • WebDownload.cpp:

(WebDownload::WebDownload):
(WebDownload::~WebDownload):

  • WebDropSource.cpp:

(WebDropSource::WebDropSource):
(WebDropSource::~WebDropSource):

  • WebElementPropertyBag.cpp:

(WebElementPropertyBag::WebElementPropertyBag):
(WebElementPropertyBag::~WebElementPropertyBag):

  • WebError.cpp:

(WebError::WebError):
(WebError::~WebError):

  • WebFrame.cpp:

(WebFrame::WebFrame):
(WebFrame::~WebFrame):

  • WebFramePolicyListener.cpp:

(WebFramePolicyListener::WebFramePolicyListener):
(WebFramePolicyListener::~WebFramePolicyListener):

  • WebGeolocationPolicyListener.cpp:

(WebGeolocationPolicyListener::WebGeolocationPolicyListener):
(WebGeolocationPolicyListener::~WebGeolocationPolicyListener):

  • WebGeolocationPosition.cpp:

(WebGeolocationPosition::WebGeolocationPosition):
(WebGeolocationPosition::~WebGeolocationPosition):

  • WebHTMLRepresentation.cpp:

(WebHTMLRepresentation::WebHTMLRepresentation):
(WebHTMLRepresentation::~WebHTMLRepresentation):

  • WebHistory.cpp:

(WebHistory::WebHistory):
(WebHistory::~WebHistory):

  • WebHistoryItem.cpp:

(WebHistoryItem::WebHistoryItem):
(WebHistoryItem::~WebHistoryItem):

  • WebIconDatabase.cpp:

(WebIconDatabase::WebIconDatabase):
(WebIconDatabase::~WebIconDatabase):

(WebInspector::WebInspector):
(WebInspector::~WebInspector):

  • WebJavaScriptCollector.cpp:

(WebJavaScriptCollector::WebJavaScriptCollector):
(WebJavaScriptCollector::~WebJavaScriptCollector):

  • WebKitClassFactory.cpp:

(WebKitClassFactory::WebKitClassFactory):
(WebKitClassFactory::~WebKitClassFactory):

  • WebKitDLL.cpp: Also switch to NeverDestroyed HashTable for

the global class name count.

  • WebKitDLL.h:
  • WebKitStatistics.cpp:

(WebKitStatistics::WebKitStatistics):
(WebKitStatistics::~WebKitStatistics):
(WebKitStatistics::comClassNameCounts):

  • WebMutableURLRequest.cpp:

(WebMutableURLRequest::WebMutableURLRequest):
(WebMutableURLRequest::~WebMutableURLRequest):

  • WebNavigationData.cpp:

(WebNavigationData::WebNavigationData):
(WebNavigationData::~WebNavigationData):

  • WebNotification.cpp:

(WebNotification::WebNotification):
(WebNotification::~WebNotification):

  • WebNotificationCenter.cpp:

(WebNotificationCenter::WebNotificationCenter):
(WebNotificationCenter::~WebNotificationCenter):

  • WebPreferences.cpp:

(webPreferencesInstances):
(WebPreferences::WebPreferences):
(WebPreferences::~WebPreferences):
(WebPreferences::getInstanceForIdentifier):
(WebPreferences::setInstance):
(WebPreferences::removeReferenceForIdentifier):

  • WebResource.cpp:

(WebResource::WebResource):
(WebResource::~WebResource):

  • WebScriptObject.cpp:

(WebScriptObject::WebScriptObject):
(WebScriptObject::~WebScriptObject):

  • WebScriptWorld.cpp:

(WebScriptWorld::WebScriptWorld):
(WebScriptWorld::~WebScriptWorld):

  • WebSecurityOrigin.cpp:

(WebSecurityOrigin::WebSecurityOrigin):
(WebSecurityOrigin::~WebSecurityOrigin):

  • WebSerializedJSValue.cpp:

(WebSerializedJSValue::WebSerializedJSValue):
(WebSerializedJSValue::~WebSerializedJSValue):

  • WebTextRenderer.cpp:

(WebTextRenderer::WebTextRenderer):
(WebTextRenderer::~WebTextRenderer):

  • WebURLAuthenticationChallenge.cpp:

(WebURLAuthenticationChallenge::WebURLAuthenticationChallenge):
(WebURLAuthenticationChallenge::~WebURLAuthenticationChallenge):

  • WebURLAuthenticationChallengeSender.cpp:

(WebURLAuthenticationChallengeSender::WebURLAuthenticationChallengeSender):
(WebURLAuthenticationChallengeSender::~WebURLAuthenticationChallengeSender):

  • WebURLCredential.cpp:

(WebURLCredential::WebURLCredential):
(WebURLCredential::~WebURLCredential):

  • WebURLProtectionSpace.cpp:

(WebURLProtectionSpace::WebURLProtectionSpace):
(WebURLProtectionSpace::~WebURLProtectionSpace):

  • WebURLResponse.cpp:

(:m_refCount):
(WebURLResponse::~WebURLResponse):

  • WebUserContentURLPattern.cpp:

(WebUserContentURLPattern::WebUserContentURLPattern):
(WebUserContentURLPattern::~WebUserContentURLPattern):

  • WebView.cpp:

(pendingDeleteBackingStoreSet): Switch from a global static
value to a NeverDestroyed object wrapped by an accessor function.
(WebView::WebView): Ditto.
(WebView::~WebView): Ditto.
(WebView::deleteBackingStore): Ditto.
(WebView::deleteBackingStoreSoon): Ditto,
(WebView::cancelDeleteBackingStoreSoon): Ditto.

  • WebWorkersPrivate.cpp: Switch from a global static value for

the preferences objects t a NeverDestroyed container.
(WebWorkersPrivate::WebWorkersPrivate): Ditto.
(WebWorkersPrivate::~WebWorkersPrivate): Ditto.

5:34 PM Changeset in webkit [173987] by Chris Dumez
  • 9 edits in trunk/Source/WebCore

Add support for is<SVGDocument>() / downcast<SVGDocument>()
https://bugs.webkit.org/show_bug.cgi?id=137128

Reviewed by Ryosuke Niwa.

Add support for is<SVGDocument>() / downcast<SVGDocument>() by using
the SPECIALIZE_TYPE_TRAITS_*() macro, instead of the
DOCUMENT_TYPE_CASTS() one.

No new tests, no behavior change.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::remoteSVGRootElement):

  • html/HTMLFrameOwnerElement.cpp:

(WebCore::HTMLFrameOwnerElement::getSVGDocument):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):

  • page/Frame.cpp:

(WebCore::Frame::setPageAndTextZoomFactors):

  • page/FrameView.cpp:

(WebCore::FrameView::scrollToAnchor):

  • svg/SVGDocument.h:

(WebCore::isSVGDocument):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::hasSingleSecurityOrigin):
(WebCore::SVGImage::setContainerSize):
(WebCore::SVGImage::containerSize):
(WebCore::SVGImage::embeddedContentBox):
(WebCore::SVGImage::hasRelativeWidth):
(WebCore::SVGImage::hasRelativeHeight):
(WebCore::SVGImage::computeIntrinsicDimensions):
(WebCore::SVGImage::startAnimation):
(WebCore::SVGImage::stopAnimation):

5:34 PM Changeset in webkit [173986] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] 64-bit build fix after r173929.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
5:29 PM Changeset in webkit [173985] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip quicktime-plugin-snapshotted.html
Quicktime plugin snapshotting is now covered by all other snapshotting tests
and this test in particular seems to fail only on a few bots.

  • platform/mac/TestExpectations:
5:22 PM Changeset in webkit [173984] by roger_fong@apple.com
  • 2 edits in trunk/Source/WTF

[Windows] Unreviewed build fix. Ensure that python2.7 is used for Windows builds.

  • WTF.vcxproj/WTFGenerated.make:
5:04 PM Changeset in webkit [173983] by dino@apple.com
  • 2 edits in trunk/Tools

Add Said to the contributors list so his name completes in bugzilla.

  • Scripts/webkitpy/common/config/contributors.json:
5:03 PM Changeset in webkit [173982] by commit-queue@webkit.org
  • 5 edits in trunk

Rename CSSKeyframesRule insertRule to appendRule (57910)
https://bugs.webkit.org/show_bug.cgi?id=57910

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2014-09-25
Reviewed by Dean Jackson.

Source/WebCore:

Tests: animations/change-keyframes.html

  • css/WebKitCSSKeyframesRule.h:

(WebCore::WebKitCSSKeyframesRule::appendRule):
-- Make WebKitCSSKeyframesRule::appendRule to be an alias of WebKitCSSKeyframesRule::insertRule()

to conform with CSS specs

  • css/WebKitCSSKeyframesRule.idl:

-- Add the new method WebKitCSSKeyframesRule::appendRule() but keep the original method

WebKitCSSKeyframesRule::appendRule() to not break exiting customers' pages.

LayoutTests:

  • animations/change-keyframes.html:

-- Ensure both WebKitCSSKeyframesRule methods insertRule() and appendRule() are

both supported.

4:49 PM Changeset in webkit [173981] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Null deref in setStateScrollingNodeSnapOffsetsAsFloat
https://bugs.webkit.org/show_bug.cgi?id=137133
<rdar://problem/18447820>

Reviewed by Beth Dakin.

  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::AsyncScrollingCoordinator::updateOverflowScrollingNode):
Get the deviceScaleFactor from m_page instead of various other places,
because scrolledContentsLayer can be null in the case of non-composited
overflow scroll.

4:37 PM Changeset in webkit [173980] by Chris Dumez
  • 91 edits in trunk/Source

Use is<HTML*Element>() instead of isHTML*Element() - Part 2
https://bugs.webkit.org/show_bug.cgi?id=137103

Reviewed by Benjamin Poulain.

Source/WebCore:

Use is<HTML*Element>() instead of isHTML*Element() and drop support for
the generated isHTML*Element() macros.

No new tests, no behavior change.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::focusedUIElementForPage):
(WebCore::AXObjectCache::getOrCreate):
(WebCore::AXObjectCache::handleAttributeChanged):
(WebCore::AXObjectCache::labelChanged):

  • accessibility/AccessibilityListBoxOption.cpp:

(WebCore::AccessibilityListBoxOption::isEnabled):
(WebCore::AccessibilityListBoxOption::stringValue):
(WebCore::AccessibilityListBoxOption::listBoxOptionParentNode):

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::isNativeImage):
(WebCore::AccessibilityNodeObject::anchorElement):
(WebCore::AccessibilityNodeObject::alternativeText):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::anchorElement):
(WebCore::AccessibilityRenderObject::labelElementContainer):
(WebCore::AccessibilityRenderObject::internalLinkElement):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::url):
(WebCore::AccessibilityRenderObject::getDocumentLinks):
(WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
(WebCore::AccessibilityRenderObject::accessibilityHitTest):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::stringValueForMSAA):
(WebCore::AccessibilityRenderObject::isLinked):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::tableElement):
(WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
(WebCore::AccessibilityTable::title):

  • accessibility/atk/WebKitAccessibleInterfaceTable.cpp:

(webkitAccessibleTableGetCaption):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::nameGetter):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::isReachableFromDOM):

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::elementCanUseSimpleDefaultStyle):
(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

  • css/CSSStyleSheet.cpp:

(WebCore::isAcceptableCSSStyleSheetParent):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):

  • css/StyleSheetList.cpp:

(WebCore::StyleSheetList::getNamedItem):

  • dom/CurrentScriptIncrementer.h:

(WebCore::CurrentScriptIncrementer::CurrentScriptIncrementer):

  • dom/DataTransfer.cpp:

(WebCore::DataTransfer::setDragImage):

  • dom/DocumentOrderedMap.cpp:

(WebCore::keyMatchesMapName):
(WebCore::keyMatchesLowercasedMapName):
(WebCore::keyMatchesLowercasedUsemap):
(WebCore::keyMatchesLabelForAttribute):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):

  • dom/Node.cpp:

(WebCore::Node::enclosingLinkEventParentOrSelf):

  • dom/Position.cpp:

(WebCore::endsOfNodeAreVisuallyDistinctPositions):

  • dom/ScriptElement.cpp:

(WebCore::toScriptElementIfPossible):

  • dom/VisitedLinkState.cpp:

(WebCore::linkHashForElement):
(WebCore::VisitedLinkState::determineLinkStateSlowCase):

  • dom/make_names.pl:

(printTypeHelpers):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::handleGeneralDelete):

  • editing/Editor.cpp:

(WebCore::imageElementFromImageDocument):

  • editing/FrameSelection.cpp:

(WebCore::scanForForm):

  • editing/InsertLineBreakCommand.cpp:

(WebCore::InsertLineBreakCommand::doApply):

  • editing/InsertParagraphSeparatorCommand.cpp:

(WebCore::InsertParagraphSeparatorCommand::doApply):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::removeHeadContents):

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_processElement):

  • editing/htmlediting.cpp:

(WebCore::isNonTableCellHTMLBlockElement):

  • editing/markup.cpp:

(WebCore::ancestorToRetainStructureAndAppearanceForBlock):
(WebCore::collectElementsToRemoveFromFragment):

  • html/FTPDirectoryDocument.cpp:

(WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):

  • html/FormAssociatedElement.cpp:

(WebCore::FormAssociatedElement::findAssociatedForm):

  • html/HTMLAnchorElement.cpp:

(WebCore::appendServerMapMousePosition):

  • html/HTMLAreaElement.cpp:

(WebCore::HTMLAreaElement::imageElement):

  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::bgColor):
(WebCore::HTMLDocument::setBgColor):
(WebCore::HTMLDocument::fgColor):
(WebCore::HTMLDocument::setFgColor):
(WebCore::HTMLDocument::alinkColor):
(WebCore::HTMLDocument::setAlinkColor):
(WebCore::HTMLDocument::linkColor):
(WebCore::HTMLDocument::setLinkColor):
(WebCore::HTMLDocument::vlinkColor):
(WebCore::HTMLDocument::setVlinkColor):
(WebCore::HTMLDocument::isFrameSet):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::setInnerHTML):

  • html/HTMLFieldSetElement.cpp:

(WebCore::updateFromControlElementsAncestorDisabledStateUnder):
(WebCore::HTMLFieldSetElement::disabledStateChanged):

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::computeIsDisabledByFieldsetAncestor):

  • html/HTMLFormControlsCollection.cpp:

(WebCore::HTMLFormControlsCollection::HTMLFormControlsCollection):
(WebCore::HTMLFormControlsCollection::formControlElements):
(WebCore::HTMLFormControlsCollection::formImageElements):
(WebCore::HTMLFormControlsCollection::namedItem):
(WebCore::HTMLFormControlsCollection::updateNamedElementCache):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::rendererIsNeeded):

  • html/HTMLFrameElementBase.h:

(WebCore::isHTMLFrameElementBase):

  • html/HTMLImageLoader.cpp:

(WebCore::HTMLImageLoader::dispatchLoadEvent):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::dataList):

  • html/HTMLLegendElement.cpp:

(WebCore::HTMLLegendElement::virtualForm):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLNameCollection.cpp:

(WebCore::WindowNameCollection::elementMatchesIfNameAttributeMatch):
(WebCore::DocumentNameCollection::elementMatches):

  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::ownerDataListElement):
(WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
(WebCore::HTMLOptionElement::isDisabledFormControl):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::recalcListItems):

  • html/HTMLTableElement.cpp:

(WebCore::HTMLTableElement::caption):

  • html/HTMLTablePartElement.cpp:

(WebCore::HTMLTablePartElement::findParentTable):

  • html/HTMLTableRowElement.cpp:

(WebCore::HTMLTableRowElement::rowIndex):

  • html/HTMLTableRowsCollection.cpp:

(WebCore::HTMLTableRowsCollection::rowAfter):
(WebCore::HTMLTableRowsCollection::lastRow):

  • html/HTMLTagNames.in:
  • html/LabelsNodeList.cpp:

(WebCore::LabelsNodeList::elementMatches):

  • html/MediaDocument.cpp:

(WebCore::descendentVideoElement):
(WebCore::ancestorVideoElement):

  • html/RadioInputType.cpp:

(WebCore::RadioInputType::handleKeydownEvent):

  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::RadioNodeList):
(WebCore::RadioNodeList::checkElementMatchesRadioNodeListFilter):

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::hasImpliedEndTag):
(WebCore::insert):
(WebCore::HTMLConstructionSite::insertHTMLFormElement):
(WebCore::HTMLConstructionSite::insertTextNode):
(WebCore::HTMLConstructionSite::ownerDocumentForCurrentNode):

  • html/parser/HTMLElementStack.cpp:

(WebCore::HTMLNames::isScopeMarker):
(WebCore::HTMLNames::isTableScopeMarker):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
(WebCore::HTMLTreeBuilder::processStartTag):
(WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processCharacterBuffer):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::inlineStyleSheetText):

  • page/DragController.cpp:

(WebCore::DragController::draggableElement):

  • page/FocusController.cpp:

(WebCore::FocusController::advanceFocusDirectionally):

  • page/PageSerializer.cpp:

(WebCore::PageSerializer::serializeFrame):

  • page/SpatialNavigation.cpp:

(WebCore::FocusCandidate::FocusCandidate):
(WebCore::areElementsOnSameLine):

  • page/ios/FrameIOS.mm:

(WebCore::ancestorRespondingToClickEvents):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::altDisplayString):
(WebCore::HitTestResult::mediaSupportsFullscreen):
(WebCore::HitTestResult::mediaElement):
(WebCore::HitTestResult::enterFullscreenForVideo):
(WebCore::HitTestResult::mediaIsVideo):
(WebCore::HitTestResult::isLiveLink):

  • rendering/RenderCounter.cpp:

(WebCore::planCounter):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::RenderImage):
(WebCore::RenderImage::paintAreaElementFocusRing):
(WebCore::RenderImage::paintIntoRect):
(WebCore::RenderImage::imageMap):
(WebCore::RenderImage::updateAltText):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::updateFromElement):
(WebCore::RenderListBox::paintItemForeground):

  • rendering/RenderMarquee.cpp:

(WebCore::RenderMarquee::marqueeSpeed):

  • rendering/RenderMenuList.cpp:

(RenderMenuList::itemText):
(RenderMenuList::itemIsEnabled):
(RenderMenuList::itemIsLabel):

  • rendering/RenderMeter.cpp:

(WebCore::RenderMeter::meterElement):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::shouldRespectImageOrientation):
(WebCore::RenderObject::getTextDecorationColors):
(WebCore::RenderObject::offsetParent):

  • rendering/RenderProgress.cpp:

(WebCore::RenderProgress::progressElement):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
(WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):

  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::imageForRenderer):

  • testing/Internals.cpp:

(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::startElementNs):

Source/WebKit/win:

Use is<HTML*Element>() instead of isHTML*Element().

  • DOMCoreClasses.cpp:

(DOMElement::createInstance):

  • DOMHTMLClasses.cpp:

(DOMHTMLFormElement::action):
(DOMHTMLFormElement::method):

  • WebFrame.cpp:

(formElementFromDOMElement):

Source/WebKit2:

Use is<HTML*Element>() instead of isHTML*Element().

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::containsAnyFormElements):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::determinePrimarySnapshottedPlugIn):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getAssistedNodeInformation):

4:16 PM Changeset in webkit [173979] by ap@apple.com
  • 10 edits
    2 adds in trunk/Tools

EWS only repeats its cycle every two hours
https://bugs.webkit.org/show_bug.cgi?id=137129

Reviewed by Ryosuke Niwa.

  • QueueStatusServer/app.yaml: Updated version.
  • QueueStatusServer/config/queues.py: Moved timeout from activeworkitems.py to configuration.
  • QueueStatusServer/handlers/releaselock.py: Added. Releases the lock without removing

the patch from work items.

  • QueueStatusServer/index.yaml: No real change, just let AppEngine have its way with entry order.
  • QueueStatusServer/main.py: Added release-lock.
  • QueueStatusServer/model/activeworkitems.py:

(ActiveWorkItems.deactivate_expired): Use timeout from configuration.

  • QueueStatusServer/model/workitems.py: Added move_to_end. When we unlock a patch,

we don't want it to be immediately picked up again, it's better to give other patches
a chance.

  • QueueStatusServer/templates/releaselock.html: Added. Not sure why all commands have

these interactive versions, but OK.

  • Scripts/webkitpy/tool/commands/earlywarningsystem.py: (AbstractEarlyWarningSystem.review_patch):

Unlock the patch when a non-final failure occurs (e.g. can't build even without the patch,
or svn is down).

  • Scripts/webkitpy/tool/commands/queues.py:

(AbstractReviewQueue.process_work_item): Do not try/catch ScriptError around review_patch.
Style queue never raises these, and EWS already calls _did_fail, before re-throwing,
meaning that these handlers could never do the right thing. We'd either get a duplicate
_did_fail, or try to unlock an already unlocked patch.
(StyleQueue.review_patch): Unlock the patch on transient failure (such as svn failure),
making it eligible for retry immediately.

  • Scripts/webkitpy/common/net/statusserver.py:

(StatusServer._post_release_lock):
(StatusServer.release_lock):
Added a call to release-lock.

2:59 PM Changeset in webkit [173978] by Brian Burg
  • 8 edits in trunk/Source

Source/JavaScriptCore:
Web Replay: Check event loop input extents during replaying too
https://bugs.webkit.org/show_bug.cgi?id=136316

Reviewed by Timothy Hatcher.

Sometimes we see different nondeterminism during capture and replay
executions, so we should add determinism checks during replay too.

Move the withinEventLoopInputExtent flag to the base class, and tighten
the assertion to address <http://webkit.org/b/133019>.

  • replay/InputCursor.h:

(JSC::InputCursor::InputCursor):
(JSC::InputCursor::setWithinEventLoopInputExtent): Added.
This assertion is slightly wrong because it does not account for nested run loops.
We can be within two input extents when a nested run loop processes additional
user inputs while the debugger is paused.

This should only be the case when execution is being neither captured or
replayed. The debugger should not pause when capturing, and we should not replay
event loop inputs while in a nested run loop.

(JSC::InputCursor::withinEventLoopInputExtent): Added.

Source/WebCore:
Web Replay: Check event loop input extents during replay too
https://bugs.webkit.org/show_bug.cgi?id=136316

Reviewed by Timothy Hatcher.

Sometimes we see different nondeterminism during capture and replay
executions, so we should support determinism checks during replay too.

Move the withinEventLoopInputExtent flag to the base class.

No new tests, no behavior changed.

  • replay/CapturingInputCursor.cpp:

(WebCore::CapturingInputCursor::CapturingInputCursor):
(WebCore::CapturingInputCursor::setWithinEventLoopInputExtent): Deleted.

  • replay/CapturingInputCursor.h:
  • replay/EventLoopInput.cpp:

(WebCore::EventLoopInputExtent::EventLoopInputExtent):
(WebCore::EventLoopInputExtent::~EventLoopInputExtent):
Make m_cursor a pointer and add a new constructor so we can conditionally
enter event loop input extents. This is useful in some network replay situations.

  • replay/EventLoopInput.h:
  • replay/ReplayController.cpp:

(WebCore::ReplayController::willDispatchEvent): Expand the assertion to include replaying.

2:53 PM Changeset in webkit [173977] by Brian Burg
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: sort probe details sidebar sections by source code location string
https://bugs.webkit.org/show_bug.cgi?id=137080

Reviewed by Timothy Hatcher.

Probe sections should display in the same order as associated breakpoint tree elements.

  • UserInterface/Views/ProbeDetailsSidebarPanel.js:

(WebInspector.ProbeDetailsSidebarPanel.prototype.inspect.inspectedProbeSets):
(WebInspector.ProbeDetailsSidebarPanel.prototype.inspect):

2:45 PM Changeset in webkit [173976] by roger_fong@apple.com
  • 2 edits in trunk/Tools

[Windows] Followup to r173972. Don’t set child process to none before reading from stdout.

  • Scripts/webkitpy/common/system/path.py:

(_CygPath.convert):

2:05 PM Changeset in webkit [173975] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Expand WK_MAC_TBA and WK_IOS_TBA to the current deployment target version (or NA).
https://bugs.webkit.org/show_bug.cgi?id=137127
Part of rdar://problem/17761459.

Reviewed by Dan Bernstein.

  • mac/rewrite-availability-macros.sh:
1:35 PM Changeset in webkit [173974] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Race in ref pointer for WebVideoFullscreenInterfaceAVKit.
https://bugs.webkit.org/show_bug.cgi?id=137123

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-09-25
Reviewed by Eric Carlson.

Add WebThreadRun to prevent race with RefPtr of WebVideoFullscreenInterfaceAVKit.

  • platform/ios/WebVideoFullscreenControllerAVKit.mm:

(-[WebVideoFullscreenController didSetupFullscreen]): add WebThreadRun

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::setDuration): ditto
(WebVideoFullscreenInterfaceAVKit::setCurrentTime): ditto
(WebVideoFullscreenInterfaceAVKit::setRate): ditto
(WebVideoFullscreenInterfaceAVKit::setVideoDimensions): ditto
(WebVideoFullscreenInterfaceAVKit::setSeekableRanges): ditto
(WebVideoFullscreenInterfaceAVKit::setAudioMediaSelectionOptions): ditto
(WebVideoFullscreenInterfaceAVKit::setLegibleMediaSelectionOptions): ditto
(WebVideoFullscreenInterfaceAVKit::setExternalPlayback): ditto
(WebVideoFullscreenInterfaceAVKit::setupFullscreen): ditto
(WebVideoFullscreenInterfaceAVKit::enterFullscreen): ditto
(WebVideoFullscreenInterfaceAVKit::exitFullscreen): ditto
(WebVideoFullscreenInterfaceAVKit::cleanupFullscreen): ditto
(WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen): ditto

12:30 PM Changeset in webkit [173973] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

CommitLayerTree decode fails in 32-bit apps on 64-bit devices (TransformationMatrix alignment differs)
https://bugs.webkit.org/show_bug.cgi?id=136444
<rdar://problem/17952526>

Reviewed by Anders Carlsson.

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<TransformationMatrix>::encode):
(IPC::ArgumentCoder<TransformationMatrix>::decode):
Stop using SimpleArgumentCoder to encode/decode TransformationMatrix,
because the alignment of TransformationMatrix differs between architectures,
and there's no guarantee that both sides of a connection are the same architecture.

12:21 PM Changeset in webkit [173972] by roger_fong@apple.com
  • 2 edits in trunk/Tools

[Windows] Close stdin to force a flush to stdout if no test path is read during layout tests.

  • Scripts/webkitpy/common/system/path.py:

(_CygPath.convert):

10:26 AM Changeset in webkit [173971] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix after r173944.

Add a missing header include.
See <rdar://problem/18454708> for more details.

  • html/parser/HTMLTreeBuilder.cpp:
10:25 AM Changeset in webkit [173970] by Chris Dumez
  • 41 edits in trunk/Source/WebCore

Stop using legacy NODE_TYPE_CASTS() macro in svg/
https://bugs.webkit.org/show_bug.cgi?id=137106

Reviewed by Ryosuke Niwa.

Stop using legacy NODE_TYPE_CASTS() in svg/ and use the new
SPECIALIZE_TYPE_TRAITS_*() macro instead so that is<>() / downcast<>()
can be used for those types.

No new tests, no behavior change.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • dom/Element.h:
  • dom/Node.h:

(WebCore::is):

  • dom/make_names.pl:

(printTypeHelpers):

  • html/HTMLElement.h:
  • html/HTMLMediaElement.h:
  • html/HTMLPlugInImageElement.h:
  • html/LabelableElement.h:
  • mathml/MathMLElement.h:

Rename NodeTypeCastTraits::is() to NodeTypeCastTraits::isType() to
avoid naming conflict with the global is<>() function. This was an
issue when is<>() was called from one of the template specializations.

  • rendering/svg/RenderSVGBlock.h:

(WebCore::RenderSVGBlock::graphicsElement):

  • rendering/svg/RenderSVGGradientStop.cpp:

(WebCore::RenderSVGGradientStop::gradientElement):

  • rendering/svg/RenderSVGInline.h:

(WebCore::RenderSVGInline::graphicsElement):

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::pathOnlyClipping):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):

  • rendering/svg/RenderSVGShape.h:

(WebCore::RenderSVGShape::graphicsElement):

  • rendering/svg/RenderSVGTransformableContainer.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::updateMaskedAncestorShouldIsolateBlending):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::operator<<):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::prepareToRenderSVGContent):

  • rendering/svg/SVGResources.cpp:

(WebCore::targetReferenceFromResource):

  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::defaultEventHandler):

  • svg/SVGAnimateElement.cpp:

(WebCore::SVGAnimateElement::calculateAnimatedValue):
(WebCore::isSVGAnimateElement): Deleted.
Use is<>() / downcast<>() where appropriate.

  • svg/SVGAnimateElement.h:

(WebCore::isSVGAnimateElement):
Use SPECIALIZE_TYPE_TRAITS_*() instead of NODE_TYPE_CASTS() and add
overload for isSVGAnimateElement() taking an SVGElement in argument to
bypass the is<SVGElement>() check when the input type is an SVGElement.

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::currentValuesForValuesAnimation):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::getBoundingBox):
Use is<>() / downcast<>() where appropriate.

  • svg/SVGElement.h:
  • svg/SVGFilterPrimitiveStandardAttributes.h:

Use SPECIALIZE_TYPE_TRAITS_*() instead of NODE_TYPE_CASTS() and drop
the pre-existing NodeTypeCastTraits template specialization as it is
now generated by the macro.

  • svg/SVGGradientElement.cpp:

(WebCore::isSVGGradientElement): Deleted.

  • svg/SVGGradientElement.h:

(WebCore::isSVGGradientElement):
Use SPECIALIZE_TYPE_TRAITS_*() instead of NODE_TYPE_CASTS() and add
overload for isSVGAnimateElement() taking an SVGElement in argument to
bypass the is<SVGElement>() check when the input type is an SVGElement.

  • svg/SVGGraphicsElement.h:

(WebCore::isSVGGraphicsElement):
Use SPECIALIZE_TYPE_TRAITS_*() instead of NODE_TYPE_CASTS().

  • svg/SVGLinearGradientElement.cpp:

(WebCore::SVGLinearGradientElement::collectGradientAttributes):

  • svg/SVGLocatable.cpp:

(WebCore::SVGLocatable::getTransformToElement):

  • svg/SVGPolyElement.cpp:

(WebCore::SVGPolyElement::synchronizePoints):
(WebCore::SVGPolyElement::lookupOrCreatePointsWrapper):
(WebCore::isSVGPolyElement): Deleted.
Use is<>() / downcast<>() where appropriate.

  • svg/SVGPolyElement.h:

(WebCore::isSVGPolyElement):
Use SPECIALIZE_TYPE_TRAITS_*() instead of NODE_TYPE_CASTS() and add
overload for isPolyElement() taking an SVGElement in argument to
bypass the is<SVGElement>() check when the input type is an SVGElement.

  • svg/SVGRadialGradientElement.cpp:

(WebCore::SVGRadialGradientElement::collectGradientAttributes):

  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::synchronizeTextLength):
(WebCore::SVGTextContentElement::lookupOrCreateTextLengthWrapper):
(WebCore::SVGTextContentElement::elementFromRenderer):
Use is<>() / downcast<>() where appropriate.

  • svg/SVGTextContentElement.h:

WebCore::isSVGTextContentElement):
Use SPECIALIZE_TYPE_TRAITS_*() instead of NODE_TYPE_CASTS().

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::toClipPath):
Use is<>() / downcast<>() where appropriate. Also use tighter typing
for value returned by shadowTreeElement().

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::buildPendingResource):
(WebCore::SVGSMILElement::connectConditions):
(WebCore::SVGSMILElement::disconnectConditions):
Use is<>() / downcast<>() where appropriate.

  • svg/animation/SVGSMILElement.h:

(WebCore::isSVGSMILElement):
Use SPECIALIZE_TYPE_TRAITS_*() instead of NODE_TYPE_CASTS() and drop
the pre-existing NodeTypeCastTraits template specialization as it is
now generated by the macro.

10:23 AM Changeset in webkit [173969] by Brent Fulgham
  • 4 edits in trunk/Source/WebCore

Minor refactoring to mediaType/presentationType
https://bugs.webkit.org/show_bug.cgi?id=137085

Reviewed by Eric Carlson.

Add overloads for presentationType for the audio and video
HTML elements so that we don't have to explicity check the
tag name (via string comparison) to identify the type of
element.

No new tests. Should create no change in behavior.

  • html/HTMLAudioElement.h: Overload presentationType to always

indicate audio type.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaType): Use the presentationType
method implementation, rather than duplicating that code.

  • html/HTMLVideoElement.h: Overload presentationType to always

return video type.

9:17 AM Changeset in webkit [173968] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4

Unreviewed. Update NEWS and Versions.m4 for 2.4.6 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.4.6.
9:11 AM Changeset in webkit [173967] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebInspectorUI

Unreviewed. Fix make distcheck.

  • GNUmakefile.am: Files in EXTRA_DIST need to be explicitly listed.
7:54 AM Changeset in webkit [173966] by berto@igalia.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed typo fix.

  • UIProcess/API/C/soup/WKContextSoup.cpp:
7:50 AM Changeset in webkit [173965] by jfernandez@igalia.com
  • 3 edits
    2 adds in trunk

ASSERTION FAILED: columnCount in WebCore::CSSParser::parseGridTemplateAreasRow
https://bugs.webkit.org/show_bug.cgi?id=136945

Reviewed by Sergio Villar Senin.

Source/WebCore:

Checking out whether the grid-template-areas value contains a white-space only
string, which is not valid as it does not produce a cell token.

Test: fast/css-grid-layout/grid-template-areas-empty-string-crash.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseGridTemplateAreasRow):

LayoutTests:

Testing the different types of white-space only strings for the grid-template-areas
property, which is not valid as it does not produce a cell token.

  • fast/css-grid-layout/grid-template-areas-empty-string-crash-expected.txt: Added.
  • fast/css-grid-layout/grid-template-areas-empty-string-crash.html: Added.
7:45 AM Changeset in webkit [173964] by commit-queue@webkit.org
  • 4 edits in trunk

[Gtk] build.sh needs a -- before make options when the build command is cmake --build
https://bugs.webkit.org/show_bug.cgi?id=136377

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2014-09-25
Reviewed by Philippe Normand.

.:

  • Source/cmake/OptionsGTK.cmake: Only create the build.sh script

for CMake versions less than 3.

Tools:

  • Scripts/webkitdirs.pm:

(buildCMakeGeneratedProject): Only use the build.sh script if it exists.

7:21 AM Changeset in webkit [173963] by Carlos Garcia Campos
  • 9 edits in releases/WebKitGTK/webkit-2.4/Tools

Unreviewed. Get rid of runtime warnings about deprecated properties and signals, since they break the tests.

  • TestWebKitAPI/Tests/WebKitGtk/testcontextmenu.c:

(main):

  • TestWebKitAPI/Tests/WebKitGtk/testdownload.c:

(main):

  • TestWebKitAPI/Tests/WebKitGtk/testfavicondatabase.c:

(main):

  • TestWebKitAPI/Tests/WebKitGtk/testhittestresult.c:

(main):

  • TestWebKitAPI/Tests/WebKitGtk/testloading.c:

(main):

  • TestWebKitAPI/Tests/WebKitGtk/testmimehandling.c:

(main):

  • TestWebKitAPI/Tests/WebKitGtk/testwebresource.c:

(main):

  • TestWebKitAPI/Tests/WebKitGtk/testwebview.c:
7:05 AM Changeset in webkit [173962] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r173252 - [SOUP] Race condition when downloading a file due to the intermediate temporary file
https://bugs.webkit.org/show_bug.cgi?id=136423

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-09-03
Reviewed by Carlos Garcia Campos.

  • Shared/Downloads/soup/DownloadSoup.cpp:

(WebKit::DownloadClient::DownloadClient): Replace m_destinationURI with
m_destinationFile and add m_createdDestination.
(WebKit::DownloadClient::deleteFilesIfNeeded): Added.
(WebKit::DownloadClient::downloadFailed): Call deleteFilesIfNeeded.
(WebKit::DownloadClient::didReceiveResponse): Attempt to create the
destination file before the intermediate file. Fail here if the file
exists and overwrite is not allowed, so we don't erroneously fire the
didCreateDestination event or waste time downloading the file when we
know the download will fail.
(WebKit::DownloadClient::didFinishLoading): Unconditionally overwrite
the empty destination file.
(WebKit::DownloadClient::cancel): Call deleteFilesIfNeeded.
(WebKit::DownloadClient::deleteIntermediateFileInNeeded): Deleted.

6:56 AM Changeset in webkit [173961] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r173154 - [SOUP] WebKitDownload cannot overwrite existing file
https://bugs.webkit.org/show_bug.cgi?id=136322

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-09-01
Reviewed by Carlos Garcia Campos.

  • Shared/Downloads/soup/DownloadSoup.cpp:

(WebKit::DownloadClient::didReceiveResponse): pass a member variable
to Download::decideDestinationWithSuggestedFilename instead of a
temporary bool, so we can use the result in didFinishLoading.
(WebKit::DownloadClient::didFinishLoading): overwrite the destination
if Download::decideDestinationWithSuggestedFilename determined we
should do so.

6:49 AM Changeset in webkit [173960] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r173658 - [GTK] Typo in webkit_security_manager_register_uri_scheme_as_empty_document documentation
https://bugs.webkit.org/show_bug.cgi?id=136852

Patch by Tomas Popela <tpopela@redhat.com> on 2014-09-16
Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/WebKitSecurityManager.cpp:
6:46 AM Changeset in webkit [173959] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r172928 - [GStreamer] ASSERT failure in WebKitWebSource in StreamingClient
https://bugs.webkit.org/show_bug.cgi?id=136132

adoptGRef() has an ASSERT failure if it's used on a floating pointer. For some reason,
WebKitWebSrc* src in StreamingClient's constructor is floating. Since we
don't construct this ourselves, I assume this is happening in Playbin.

If we remove the ref and adopt, GRefPtr's constructor calls gst_object_ref_sink,
which removes the floating reference and doesn't increment the reference count.
This should work, but actually causes the page to either lock up or crash (different
results for different testers).

In this case, it seems like the adoptGRef / gst_object_ref was the correct thing to do,
but adoptGRef won't actually let us do. Removing the ASSERT is a bad idea, because
usually we don't want to adopt floating pointers.

This is all a long way of saying that making m_src a raw pointer and manually
calling gst_object_ref(), and calling gst_object_unref in the destructor is the
best solution in this case, since it fixes the problem while leaving the ASSERT
to protect us in the much more common case where adopting a floating reference is bad.

Reviewed by Philippe Normand.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(StreamingClient::StreamingClient): Make m_src a raw pointer instead of a GRefPtr.
(StreamingClient::~StreamingClient): Unref m_src.
(StreamingClient::createReadBuffer): Replace m_src.get() with m_src, since it's a raw pointer now.
(StreamingClient::handleResponseReceived): Same.
(StreamingClient::handleDataReceived): Same.
(StreamingClient::handleNotifyFinished): Same.
(CachedResourceStreamingClient::notifyFinished): Same.
(ResourceHandleStreamingClient::didFail): Same.
(ResourceHandleStreamingClient::wasBlocked): Same.
(ResourceHandleStreamingClient::cannotShowURL): Same.

6:39 AM Changeset in webkit [173958] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Split the list of dependencies to make sure that at least the universally available packages get installed
https://bugs.webkit.org/show_bug.cgi?id=137117

Tools/efl/install-dependencies relies on apt-get to install packages.
Unfortunately, if a package does not exist (e.g., for a given
architecture) then apt-get install is not able to ignore the missing
package and install the rest but fails to run entirely (and there
seems to be no intent to change this behaviour).

On ARM64, the luajit package is missing and currently it needs manual
editing of install-dependencies to get the script install as much as it
can.

This patch separates the installation of the universally available
packages from those which might not be available for all architectures.

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-09-25
Reviewed by Gyuyoung Kim.

  • efl/install-dependencies:
6:39 AM Changeset in webkit [173957] by Carlos Garcia Campos
  • 1 edit in releases/WebKitGTK/webkit-2.4/Source/WebCore/ChangeLog

Merge r172896 - [GTK] Toggle buttons visually broken with GTK+ 3.13.7
https://bugs.webkit.org/show_bug.cgi?id=136130

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-08-24
Reviewed by Martin Robinson.

No new tests. Hopefully covered by existing tests, and our tests only
run with GTK+ 3.6 anyway.

  • platform/gtk/RenderThemeGtk3.cpp:

(WebCore::paintToggle): use GTK_STATE_FLAG_CHECKED when compiling for
GTK+ 3.13.7 and above to ensure toggle buttons display as toggled.

6:31 AM Changeset in webkit [173956] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r172958 - [GTK] Selection background is rendered white when unfocused with recent GTK+
https://bugs.webkit.org/show_bug.cgi?id=136251

Reviewed by Martin Robinson.

This is due to a change in the GTK+ theme, but because we are not
using the right flags to get the selections colors. We should use
GTK_STATE_FLAG_SELECTED | GTK_STATE_FLAG_FOCUSED when focused and
GTK_STATE_FLAG_SELECTED when unfocused, instead of
GTK_STATE_FLAG_ACTIVE when unfocused.

  • platform/gtk/RenderThemeGtk3.cpp:

(WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor):

6:25 AM Changeset in webkit [173955] by Carlos Garcia Campos
  • 4 edits
    6 adds in releases/WebKitGTK/webkit-2.4

Merge r173809 - [GStreamer] Cannot play Vimeo video
https://bugs.webkit.org/show_bug.cgi?id=134969

Reviewed by Sergio Villar Senin.

Source/WebCore:

Ensure the GStreamer HTTP source element also sends cookies when
it's sending its requests. Some streaming platforms such as Vimeo
do server-side cookie checks on incoming requests before serving
media data.

Test: http/tests/media/hls/video-cookie.html

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webKitWebSrcStart): Set first-party cookie URL to the request so
the ResourceLoader properly sets cookies in the HTTP request.

6:13 AM Changeset in webkit [173954] by Carlos Garcia Campos
  • 3 edits
    189 adds in releases/WebKitGTK/webkit-2.4

Merge r173753 - Webkitgtk 2.5.3: tarball contains APPLE LICENSE file - stating not distributable
https://bugs.webkit.org/show_bug.cgi?id=136632

Reviewed by Gustavo Noronha Silva.

Source/WebInspectorUI:

Add free icons for the GTK port. These icons are from the GNOME
project, some of them adapted by Andres Gomez for the inspector.

6:10 AM Changeset in webkit [173953] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.4

Merge r173751 - [GTK] generate-inspector-gresource-manifest.py should receive the list of files from the makefile
https://bugs.webkit.org/show_bug.cgi?id=136943

Reviewed by Philippe Normand.

Source/WebKit2:

  • PlatformGTK.cmake: Fix the inspector file list and pass it to

the generate-inspector-gresource-manifest.py script.

Tools:

Update the script to receive the list of files from the command
line instead of scanning the given directories.

  • gtk/generate-inspector-gresource-manifest.py:

(get_filenames): Convert filenames to use relative paths.
(find_all_files_in_directory): Deleted.
(find_all_files_in_directory.select_file): Deleted.

4:26 AM Changeset in webkit [173952] by Carlos Garcia Campos
  • 3 edits
    29 adds in trunk/Source/WebInspectorUI

Unreviewed. Add more free icons for the Web Inspector in GTK+.

Patch by Andres Gomez <Andres Gomez> on 2014-09-25

  • UserInterface/Images/gtk/AUTHORS:
  • UserInterface/Images/gtk/ApplicationCacheManifest.png: Added.
  • UserInterface/Images/gtk/ApplicationCacheManifest@2x.png: Added.
  • UserInterface/Images/gtk/COPYING:
  • UserInterface/Images/gtk/COPYING_LGPL2: Added.
  • UserInterface/Images/gtk/Cookie.png: Added.
  • UserInterface/Images/gtk/Cookie@2x.png: Added.
  • UserInterface/Images/gtk/HoverMenuButton.png: Added.
  • UserInterface/Images/gtk/HoverMenuButton@2x.png: Added.
  • UserInterface/Images/gtk/InstructionPointer.png: Added.
  • UserInterface/Images/gtk/InstructionPointer@2x.png: Added.
  • UserInterface/Images/gtk/Log.png: Added.
  • UserInterface/Images/gtk/Log@2x.png: Added.
  • UserInterface/Images/gtk/Profile.png: Added.
  • UserInterface/Images/gtk/Profile@2x.png: Added.
  • UserInterface/Images/gtk/Recording.png: Added.
  • UserInterface/Images/gtk/Recording@2x.png: Added.
  • UserInterface/Images/gtk/RecordingHovered.png: Added.
  • UserInterface/Images/gtk/RecordingHovered@2x.png: Added.
  • UserInterface/Images/gtk/RecordingStopped.png: Added.
  • UserInterface/Images/gtk/RecordingStopped@2x.png: Added.
  • UserInterface/Images/gtk/Script.png: Added.
  • UserInterface/Images/gtk/Script@2x.png: Added.
  • UserInterface/Images/gtk/ScriptLarge.png: Added.
  • UserInterface/Images/gtk/ScriptLarge@2x.png: Added.
  • UserInterface/Images/gtk/SliderThumb.png: Added.
  • UserInterface/Images/gtk/SliderThumb@2x.png: Added.
  • UserInterface/Images/gtk/SliderThumbPressed.png: Added.
  • UserInterface/Images/gtk/SliderThumbPressed@2x.png: Added.
  • UserInterface/Images/gtk/Stopwatch.png: Added.
  • UserInterface/Images/gtk/Stopwatch@2x.png: Added.
3:51 AM Changeset in webkit [173951] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WebKit2] Fix build warning in WebKit2/WebProcess module.
https://bugs.webkit.org/show_bug.cgi?id=137105

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-09-25
Reviewed by Csaba Osztrogonác.

Fix build warning by removing unused parameter names

  • WebProcess/WebPage/WebInspector.h:

(WebKit::WebInspector::didReceiveInvalidMessage):

  • WebProcess/WebPage/WebInspectorUI.h:

(WebKit::WebInspectorUI::didReceiveInvalidMessage):

3:36 AM Changeset in webkit [173950] by Csaba Osztrogonác
  • 1 delete in trunk/Source/WebKit/wince

Unreviewed, delete the empty Source/WebKit/wince/ChangeLog after r173949.

3:14 AM Changeset in webkit [173949] by Csaba Osztrogonác
  • 101 edits
    54 deletes in trunk

Remove WinCE port from trunk
https://bugs.webkit.org/show_bug.cgi?id=136951

Reviewed by Alex Christensen.

.:

  • Source/cmake/OptionsWinCE.cmake: Removed.
  • Source/cmake/WebKitPackaging.cmake:

Source/JavaScriptCore:

  • assembler/ARMAssembler.h:

(JSC::ARMAssembler::cacheFlush):

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::cacheFlush):

  • config.h:
  • heap/MachineStackMarker.cpp:

(JSC::MachineThreads::gatherFromCurrentThread):
(JSC::MachineThreads::gatherFromOtherThread):
(JSC::swapIfBackwards): Deleted.

  • jit/ExecutableAllocator.h:
  • jsc.cpp:

(main):

  • runtime/DateConstructor.cpp:
  • runtime/Options.cpp:

(JSC::overrideOptionWithHeuristic):

  • runtime/VM.cpp:

(JSC::VM::VM):

  • testRegExp.cpp:

(main):

  • tools/CodeProfiling.cpp:

(JSC::CodeProfiling::notifyAllocator):

Source/WebCore:

  • Modules/encryptedmedia/CDMPrivateMediaPlayer.cpp:
  • PlatformWinCE.cmake: Removed.
  • accessibility/AXObjectCache.cpp:
  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::modifyMovingRight):

  • loader/icon/wince/IconDatabaseWinCE.cpp: Removed.
  • page/EventHandler.cpp:

(WebCore::EventHandler::sendContextMenuEventForKey):

  • page/Settings.cpp:
  • page/win/EventHandlerWin.cpp:

(WebCore::EventHandler::createDraggingDataTransfer):

  • platform/ContextMenu.h:
  • platform/DragImage.cpp:
  • platform/FileSystem.h:
  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::mayFillWithSolidColor):

  • platform/graphics/FontGlyphs.cpp:

(WebCore::FontGlyphs::glyphDataAndPageForCharacter):

  • platform/graphics/FontPlatformData.h:
  • platform/graphics/ImageBufferData.h:
  • platform/graphics/MediaPlayer.cpp:
  • platform/graphics/SimpleFontData.h:
  • platform/graphics/opentype/OpenTypeUtilities.cpp:

(WebCore::renameAndActivateFont):

  • platform/graphics/opentype/OpenTypeUtilities.h:
  • platform/graphics/win/DIBPixelData.cpp:

(WebCore::DIBPixelData::setRGBABitmapAlpha):

  • platform/graphics/win/GDIExtras.cpp: Removed.
  • platform/graphics/win/GDIExtras.h:

(WebCore::hasAlphaBlendSupport):
(WebCore::alphaBlendIfSupported):

  • platform/graphics/win/IconWin.cpp:

(WebCore::Icon::createIconForFiles):
(WebCore::Icon::paint):

  • platform/graphics/win/SimpleFontDataWin.cpp:

(WebCore::SimpleFontData::initGDIFont):
(WebCore::SimpleFontData::platformDestroy):
(WebCore::SimpleFontData::boundsForGDIGlyph):
(WebCore::SimpleFontData::widthForGDIGlyph):
(WebCore::SimpleFontData::scriptFontProperties):

  • platform/graphics/wince/FontCacheWinCE.cpp: Removed.
  • platform/graphics/wince/FontCustomPlatformData.cpp: Removed.
  • platform/graphics/wince/FontCustomPlatformData.h: Removed.
  • platform/graphics/wince/FontPlatformData.cpp: Removed.
  • platform/graphics/wince/FontPlatformData.h: Removed.
  • platform/graphics/wince/FontWinCE.cpp: Removed.
  • platform/graphics/wince/GlyphPageTreeNodeWinCE.cpp: Removed.
  • platform/graphics/wince/GradientWinCE.cpp: Removed.
  • platform/graphics/wince/GraphicsContextWinCE.cpp: Removed.
  • platform/graphics/wince/ImageBufferDataWince.h: Removed.
  • platform/graphics/wince/ImageBufferWinCE.cpp: Removed.
  • platform/graphics/wince/ImageWinCE.cpp: Removed.
  • platform/graphics/wince/MediaPlayerPrivateWinCE.h: Removed.
  • platform/graphics/wince/MediaPlayerProxy.cpp: Removed.
  • platform/graphics/wince/MediaPlayerProxy.h: Removed.
  • platform/graphics/wince/PathWinCE.cpp: Removed.
  • platform/graphics/wince/PlatformPathWinCE.cpp: Removed.
  • platform/graphics/wince/PlatformPathWinCE.h: Removed.
  • platform/graphics/wince/SharedBitmap.cpp: Removed.
  • platform/graphics/wince/SharedBitmap.h: Removed.
  • platform/graphics/wince/SimpleFontDataWinCE.cpp: Removed.
  • platform/graphics/wince/WinCEGraphicsExtras.h: Removed.
  • platform/image-decoders/jpeg/JPEGImageDecoder.h:
  • platform/network/win/NetworkStateNotifierWin.cpp:

(WebCore::NetworkStateNotifier::NetworkStateNotifier):

  • platform/win/COMPtr.h:
  • platform/win/ClipboardUtilitiesWin.cpp:
  • platform/win/ContextMenuItemWin.cpp:
  • platform/win/ContextMenuWin.cpp:

(WebCore::ContextMenu::getContextMenuItems):
(WebCore::ContextMenu::createPlatformContextMenuFromItems):

  • platform/win/DragImageWin.cpp:

(WebCore::dragLabelFont):

  • platform/win/FileSystemWin.cpp:

(WebCore::pathByAppendingComponent):
(WebCore::pathGetFileName):
(WebCore::storageDirectory):

  • platform/win/LoggingWin.cpp:

(WebCore::logLevelString):

  • platform/win/PasteboardWin.cpp:

(WebCore::PasteboardOwnerWndProc):
(WebCore::Pasteboard::createForCopyAndPaste):
(WebCore::pathRemoveBadFSCharacters):
(WebCore::filesystemPathFromUrlOrTitle):
(WebCore::createGlobalHDropContent):

  • platform/win/PlatformMouseEventWin.cpp:

(WebCore::messageToEventType):
(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/win/PlatformScreenWin.cpp:

(WebCore::deviceInfoForWidget):
(WebCore::screenIsMonochrome):

  • platform/win/PopupMenuWin.cpp:

(WebCore::PopupMenuWin::show):
(WebCore::PopupMenuWin::paint):
(WebCore::PopupMenuWin::registerClass):
(WebCore::PopupMenuWin::wndProc):

  • platform/win/ScrollbarThemeWin.cpp:

(WebCore::ScrollbarThemeWin::paintButton):

  • platform/win/SharedBufferWin.cpp:
  • platform/win/SharedTimerWin.cpp:

(WebCore::TimerWindowWndProc):
(WebCore::initializeOffScreenTimerWindow):
(WebCore::queueTimerProc):
(WebCore::setSharedTimerFireInterval):
(WebCore::stopSharedTimer):

  • platform/win/SoftLinking.h:
  • platform/win/SystemInfo.cpp:

(WebCore::windowsVersion):
(WebCore::processorArchitecture):
(WebCore::architectureTokenForUAString):

  • platform/win/WCDataObject.cpp:

(WebCore::WCDataObject::CopyMedium):

  • plugins/PluginDatabase.cpp:
  • plugins/PluginView.cpp:

(WebCore::PluginView::stop):

  • plugins/PluginViewNone.cpp:
  • plugins/win/PluginDatabaseWin.cpp:

(WebCore::addWindowsMediaPlayerPluginDirectory):
(WebCore::addMacromediaPluginDirectories):

  • plugins/win/PluginPackageWin.cpp:

(WebCore::PluginPackage::load):

  • plugins/win/PluginViewWin.cpp:

(WebCore::setUpOffscreenPaintingHooks):
(WebCore::registerPluginView):
(WebCore::PluginView::wndProc):
(WebCore::PluginView::updatePluginWidget):
(WebCore::PluginView::paintIntoTransformedContext):
(WebCore::PluginView::paint):
(WebCore::PluginView::handleMouseEvent):
(WebCore::PluginView::setParent):
(WebCore::PluginView::setNPWindowRect):
(WebCore::PluginView::platformStart):

  • rendering/RenderThemeWinCE.cpp: Removed.
  • rendering/RenderThemeWinCE.h: Removed.
  • storage/wince/DatabaseThreadWinCE.cpp: Removed.
  • storage/wince/DatabaseThreadWinCE.h: Removed.
  • storage/wince/StorageThreadWinCE.cpp: Removed.
  • storage/wince/StorageThreadWinCE.h: Removed.

Source/WebKit:

  • PlatformWinCE.cmake: Removed.
  • wince/WebCoreSupport/ChromeClientWinCE.cpp: Removed.
  • wince/WebCoreSupport/ChromeClientWinCE.h: Removed.
  • wince/WebCoreSupport/ContextMenuClientWinCE.cpp: Removed.
  • wince/WebCoreSupport/ContextMenuClientWinCE.h: Removed.
  • wince/WebCoreSupport/DragClientWinCE.cpp: Removed.
  • wince/WebCoreSupport/DragClientWinCE.h: Removed.
  • wince/WebCoreSupport/EditorClientWinCE.cpp: Removed.
  • wince/WebCoreSupport/EditorClientWinCE.h: Removed.
  • wince/WebCoreSupport/FrameLoaderClientWinCE.cpp: Removed.
  • wince/WebCoreSupport/FrameLoaderClientWinCE.h: Removed.
  • wince/WebCoreSupport/FrameNetworkingContextWinCE.cpp: Removed.
  • wince/WebCoreSupport/FrameNetworkingContextWinCE.h: Removed.
  • wince/WebCoreSupport/InspectorClientWinCE.cpp: Removed.
  • wince/WebCoreSupport/InspectorClientWinCE.h: Removed.
  • wince/WebCoreSupport/PlatformStrategiesWinCE.cpp: Removed.
  • wince/WebCoreSupport/PlatformStrategiesWinCE.h: Removed.
  • wince/WebView.cpp: Removed.
  • wince/WebView.h: Removed.

Source/WebKit/cf:

  • WebCoreSupport/WebInspectorClientCF.cpp:

Source/WTF:

  • config.h:
  • wtf/Assertions.cpp:
  • wtf/Assertions.h:
  • wtf/Atomics.h:

(WTF::weakCompareAndSwap):

  • wtf/CurrentTime.cpp:

(WTF::lowResUTCTime):

  • wtf/DataLog.cpp:
  • wtf/DateMath.cpp:

(WTF::getLocalTime):
(WTF::calculateDSTOffset):

  • wtf/FastMalloc.cpp:
  • wtf/FeatureDefines.h:
  • wtf/OSAllocator.h:

(WTF::OSAllocator::decommitAndRelease):

  • wtf/Platform.h:
  • wtf/PlatformWin.cmake:
  • wtf/RAMSize.cpp:

(WTF::computeRAMSize):

  • wtf/RandomNumberSeed.h:

(WTF::initializeRandomNumberGenerator):

  • wtf/StackBounds.cpp:

(WTF::StackBounds::initialize):

  • wtf/StackBounds.h:

(WTF::StackBounds::isGrowingDownward):

  • wtf/StdLibExtras.h:

(wtf_bsearch): Deleted.

  • wtf/StringExtras.h:

(strnicmp): Deleted.
(stricmp): Deleted.
(strdup): Deleted.

  • wtf/ThreadSpecific.h:
  • wtf/ThreadingWin.cpp:

(WTF::createThreadInternal):

  • wtf/WindowsExtras.h:

(WTF::getRegistryValue):
(WTF::getWindowPointer):
(WTF::setWindowPointer):

  • wtf/dtoa/utils.h:
  • wtf/text/WTFString.cpp:

(WTF::String::format):

Tools:

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

(_should_file_trigger_build):

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

(ShouldBuildTest):

  • CMakeLists.txt:
  • DumpRenderTree/win/DRTDataObject.cpp:

(DRTDataObject::CopyMedium):

  • Scripts/build-webkit:
  • Scripts/webkit-build-directory:
  • Scripts/webkitdirs.pm:

(argumentsForConfiguration):
(builtDylibPathForName):
(isAppleWinWebKit):
(launcherPath):
(launcherName):
(shouldRemoveCMakeCache):
(cmakeBasedPortArguments):
(cmakeBasedPortName):
(isCMakeBuild):
(isWinCE): Deleted.
(determineIsWinCE): Deleted.

  • Scripts/webkitperl/FeatureList.pm:
  • Scripts/webkitpy/port/port_testcase.py:

(test_apache_config_file_name_for_platform):

  • TestWebKitAPI/config.h:
  • WinCELauncher/CMakeLists.txt: Removed.
  • WinCELauncher/main.cpp: Removed.
  • gtk/manifest.txt:
2:44 AM Changeset in webkit [173948] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-09-25

  • platform/gtk/TestExpectations: Report and mark new failures after r173515 and r173582.
  • platform/gtk/fast/dom/Document/CaretRangeFromPoint/hittest-relative-to-viewport-expected.txt:

Update expectations after r173857.

2:36 AM Changeset in webkit [173947] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix GTK+ build after r173944.

  • page/ContextMenuController.cpp: Add missing include.
2:27 AM WebKitGTK/KeepingTheTreeGreen edited by ltilve@igalia.com
(diff)
Note: See TracTimeline for information about the timeline view.