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

Timeline



Oct 30, 2013:

11:41 PM Changeset in webkit [158350] by commit-queue@webkit.org
  • 30 edits in trunk/Source/WebCore

[webcore/editing] remove extra header includes from cpp files.
https://bugs.webkit.org/show_bug.cgi?id=123524

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-10-30
Reviewed by Ryosuke Niwa.

Removing redundant header files.

  • editing/AlternativeTextController.cpp:
  • editing/ApplyBlockElementCommand.cpp:
  • editing/ApplyStyleCommand.cpp:
  • editing/BreakBlockquoteCommand.cpp:
  • editing/DeleteButton.cpp:
  • editing/DeleteButtonController.cpp:
  • editing/DeleteSelectionCommand.cpp:
  • editing/DictationCommand.cpp:
  • editing/EditCommand.cpp:
  • editing/EditingStyle.cpp:
  • editing/EditorCommand.cpp:
  • editing/FrameSelection.cpp:
  • editing/IndentOutdentCommand.cpp:
  • editing/InsertLineBreakCommand.cpp:
  • editing/InsertParagraphSeparatorCommand.cpp:
  • editing/MarkupAccumulator.h:
  • editing/RemoveFormatCommand.cpp:
  • editing/RenderedPosition.cpp:
  • editing/ReplaceSelectionCommand.cpp:
  • editing/SpellChecker.cpp:
  • editing/SpellingCorrectionCommand.cpp:
  • editing/SurroundingText.cpp:
  • editing/TextCheckingHelper.cpp:
  • editing/TextIterator.cpp:
  • editing/TypingCommand.cpp:
  • editing/VisibleSelection.cpp:
  • editing/VisibleUnits.cpp:
  • editing/WrapContentsInDummySpanCommand.cpp:
  • editing/htmlediting.cpp:
11:32 PM Changeset in webkit [158349] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Unreviewed, rolling out r158299.
http://trac.webkit.org/changeset/158299
https://bugs.webkit.org/show_bug.cgi?id=123558

caused assertion failures in fast/canvas/canvas-color-
serialization.html and fast/forms/input-text-paste-
maxlength.html (Requested by rniwa on #webkit).

  • wtf/text/StringStatics.cpp:

(WTF::StringImpl::empty):

11:27 PM Changeset in webkit [158348] by beidson@apple.com
  • 16 edits in trunk/Source

IDB Database versions are uint64_t, not int64_t
https://bugs.webkit.org/show_bug.cgi?id=123556

Reviewed by Alexey Proskuryakov.

Source/WebCore:

  • Modules/indexeddb/IDBBackingStoreInterface.h:
  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:
  • Modules/indexeddb/IDBFactoryBackendInterface.h:
  • Modules/indexeddb/IDBPendingOpenCall.h:

(WebCore::IDBPendingOpenCall::create):
(WebCore::IDBPendingOpenCall::version):
(WebCore::IDBPendingOpenCall::IDBPendingOpenCall):

  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:

(WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseVersion):

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:

(WebCore::IDBFactoryBackendLevelDB::open):

  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:

Source/WebKit2:

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:

(WebKit::WebIDBFactoryBackend::open):

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
  • WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.cpp:

(WebKit::WebProcessIDBDatabaseBackend::openConnection):

  • WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h:
11:25 PM Changeset in webkit [158347] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Gtk] Build is failing after r158317
https://bugs.webkit.org/show_bug.cgi?id=123544

Patch by Brendan Long <b.long@cablelabs.com> on 2013-10-30
Reviewed by Alexey Proskuryakov.

No new tests since this just fixes the build.

  • GNUmakefile.list.am: Add JSCryptoKey.cpp and JSCryptoKey.h
10:51 PM Changeset in webkit [158346] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Manage EllipsisBox objects with unique_ptr.
<https://webkit.org/b/123554>

Use smart pointers to store ellipsis boxes instead of new/delete.

Reviewed by Anders Carlsson.

10:37 PM Changeset in webkit [158345] by ap@apple.com
  • 2 edits
    2 adds in trunk/Source/WebCore

[Gtk] Build is failing after r158317
https://bugs.webkit.org/show_bug.cgi?id=123544

Use a correct style for JSC includes.

  • ForwardingHeaders/runtime/JSPromise.h: Added.
  • ForwardingHeaders/runtime/JSPromiseResolver.h: Added.
  • bindings/js/JSDOMPromise.h:
10:02 PM Changeset in webkit [158344] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add two crash expectations per bug 123555.

9:15 PM Changeset in webkit [158343] by akling@apple.com
  • 15 edits in trunk/Source/WebCore

Replace InlineBox::destroy() with regular virtual destruction.
<https://webkit.org/b/123550>

Move logic out of destroy() and its overloads into good ol' virtual
destructors instead.

Reviewed by Anders Carlsson.

9:11 PM Changeset in webkit [158342] by ap@apple.com
  • 3 edits in trunk/Tools

Teach the style checker about ENUM_CLASS
https://bugs.webkit.org/show_bug.cgi?id=123528

Reviewed by Andy Estes.

  • Scripts/webkitpy/style/checkers/cpp.py:

(_EnumState.process_clean_line): Make content of an ENUM_CLASS declaration
equivalent to enum content for checking.
(check_braces): Allow semicolon at the end.

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(NoNonVirtualDestructorsTest.test_enum_casing):
(NoNonVirtualDestructorsTest.test_enum_trailing_semicolon):
(WebKitStyleTest.test_braces):
Test it.

8:52 PM Changeset in webkit [158341] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Assertion failure in js/dom/global-constructors-attributes-dedicated-worker.html
https://bugs.webkit.org/show_bug.cgi?id=123551
<rdar://problem/15356238>

Reviewed by Mark Hahnenberg.

WatchpointSets have always had this "fire everything on deletion" policy because it
seemed like a good fail-safe at the time I first implemented WatchpointSets. But
it's actually causing bugs rather than providing safety:

  • Everyone who registers Watchpoints with WatchpointSets have separate mechanisms for either keeping the WatchpointSets alive or noticing when they are collected. So this wasn't actually providing any safety.


One example of this is Structures, where:


  • CodeBlocks that register Watchpoints on Structure's WatchpointSet will also register weak references to the Structure, and the GC will jettison a CodeBlock if the Structure(s) it cares about dies.


  • StructureStubInfos that register Watchpoints on Structure's WatchpointSet will also be cleared by GC if the Structures die.


  • The WatchpointSet destructor would get invoked from finalization/destruction. This would then cause CodeBlock::jettison() to be called on a CodeBlock, but that method requires doing things that access heap objects. This would usually cause problems on VM destruction, since then the CodeBlocks would still be alive but the whole heap would be destroyed.


This also ensures that CodeBlock::jettison() cannot cause a GC. This is safe since
that method doesn't really allocate objects, and it is likely necessary because
jettison() may be called from deep in the stack.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::jettison):

  • bytecode/Watchpoint.cpp:

(JSC::WatchpointSet::~WatchpointSet):

  • bytecode/Watchpoint.h:
8:37 PM Changeset in webkit [158340] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Fixed a potential race condition around the initializtion of WKObject’s target.

Reviewed by Mark Rowe.

  • Shared/Cocoa/WKObject.mm:

(initializeTargetIfNeeded): Removed the early return if _target is non-nil. As Mark pointed
out, when stores are reordered relative to other stores, it is possible for the early return
to occur while the object _target is pointing to is not yet valid.

8:07 PM Changeset in webkit [158339] by rniwa@webkit.org
  • 2 edits in trunk/Tools

kill-old-processes should kill Web Socket script
https://bugs.webkit.org/show_bug.cgi?id=123546

Reviewed by Benjamin Poulain.

  • BuildSlaveSupport/kill-old-processes:

(main):

7:36 PM Changeset in webkit [158338] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION(r158333): http/tests/xmlhttprequest/response-encoding.html and
xmlhttprequest-overridemimetype-content-type-header.html are failing
https://bugs.webkit.org/show_bug.cgi?id=123548

Add the failing test expectation.

6:15 PM Changeset in webkit [158337] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Simplifying MediaStream and MediStreamDescriptor creation
https://bugs.webkit.org/show_bug.cgi?id=123443

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-10-30
Reviewed by Eric Carlson.

The internal process of creating a MediaStream and MediaStreamDescriptor was quite confusing and spread.
We can take advantage of the platform implementation of MediaStreamTrack (aka MediaStreamTrackPrivate)
and simplify the whole process.
A new constructor that receives vectors of MediaStreamTrackPrivate objects were added, then the check
if a source already exists or if the tracks are all ended are now made in MediaStreamDescriptor.

No new tests needed.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::create): Removed unnecessary variables in one create method and using new
MediaStreamDescriptor::create method that receives vector of MediaStreamTrackPrivate objects as parameter.

  • Modules/webaudio/MediaStreamAudioDestinationNode.cpp:

(WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode): Removed passing flag to
MediaStreamDescriptor create.

  • platform/mediastream/MediaStreamDescriptor.cpp:

(WebCore::MediaStreamDescriptor::create): Removed EndedAtCreationFlag parameter, because this is being
handled inside constructor by analyzing the tracks or sources passed.
(WebCore::MediaStreamDescriptor::MediaStreamDescriptor): Adding new constructor that receives vector of
MediaStreamTrackPrivate as parameter.

(WebCore::MediaStreamDescriptor::addTrack): Changed to store the track's source in the object.

(WebCore::MediaStreamDescriptor::removeTrack):

  • platform/mediastream/MediaStreamDescriptor.h:

(WebCore::MediaStreamDescriptor::numberOfAudioTracks):
(WebCore::MediaStreamDescriptor::audioTracks):
(WebCore::MediaStreamDescriptor::numberOfVideoTracks):
(WebCore::MediaStreamDescriptor::videoTracks):

  • platform/mock/MockMediaStreamCenter.cpp:

(WebCore::MockMediaStreamCenter::createMediaStream): Removing flag that is being passed to
MediaStreamDescriptor's create method.

6:07 PM Changeset in webkit [158336] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

6:04 PM Changeset in webkit [158335] by Lucas Forschler
  • 1 copy in tags/Safari-538.4

New Tag.

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

[Win] Legible Output callbacks should happen on notification queue
https://bugs.webkit.org/show_bug.cgi?id=123545

Reviewed by Eric Carlson.

Modify the callback creation for Legible Output items so that they
are made on our notification queue. The use of the main queue was a
holdover from some temporary code used during earlier development.

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::AVFWrapper::AVFWrapper): Assert this happens on the main thread.
(WebCore::AVFWrapper::~AVFWrapper): Ditto.
(WebCore::destroyAVFWrapper): Ditto.
(WebCore::AVFWrapper::createPlayer): Ditto.
(WebCore::AVFWrapper::createPlayerItem): Ditto.
Also, instruct LegibleOutput callbacks to happen on our notification
queue, rather than the main thread.
(WebCore::AVFWrapper::createAVCFVideoLayer): Assert this happens on the main thread.
(WebCore::AVFWrapper::destroyVideoLayer): Ditto.
(WebCore::AVFWrapper::createImageGenerator): Ditto.
(WebCore::AVFWrapper::destroyImageGenerator): Ditto.

5:32 PM Changeset in webkit [158333] by ap@apple.com
  • 3 edits
    2 adds in trunk

XHR.response is null when requesting empty file as arraybuffer
https://bugs.webkit.org/show_bug.cgi?id=123457

Source/WebCore:

Reviewed by Sam Weinig.

Test: http/tests/xmlhttprequest/response-empty-arraybuffer.html

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::responseArrayBuffer): Don't do this.

LayoutTests:

Based on a Blink test by yusukesuzuki@chromium.org.

Reviewed by Sam Weinig.

Failures in expected results appear to mean that Blink caches XHR responses in more
cases. It's not directly related to the patch.

  • http/tests/xmlhttprequest/response-empty-arraybuffer-expected.txt: Added.
  • http/tests/xmlhttprequest/response-empty-arraybuffer.html: Added.
5:31 PM Changeset in webkit [158332] by Samuel White
  • 3 edits
    2 adds in trunk

AX: AXFocused not exposed on ARIA menuitems
https://bugs.webkit.org/show_bug.cgi?id=123494

Reviewed by Chris Fleizach.

Source/WebCore:

ARIA menuitems should expose AXFocused accessibility attribute.

Test: platform/mac/accessibility/aria-menuitem-focus.html

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):

LayoutTests:

Adding test to make sure ARIA menuitems expose each piece of their focus state correctly.

  • platform/mac/accessibility/aria-menuitem-focus-expected.txt: Added.
  • platform/mac/accessibility/aria-menuitem-focus.html: Added.
5:26 PM Changeset in webkit [158331] by commit-queue@webkit.org
  • 32 edits in trunk/Source/WebCore

Web Inspector: Remove basic uses of InspectorState from agents
https://bugs.webkit.org/show_bug.cgi?id=123534

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-10-30
Reviewed by Timothy Hatcher.

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

(WebCore::InspectorAgent::InspectorAgent):
(WebCore::InspectorAgent::enable):
(WebCore::InspectorAgent::disable):
(WebCore::InspectorAgent::evaluateForTestInFrontend):
(WebCore::InspectorAgent::inspect):
InspectorAgentState::inspectorAgentEnabled -> m_enabled.

  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::enable):
Remove unused state.

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::enable):
(WebCore::InspectorCSSAgent::disable):
(WebCore::InspectorCSSAgent::startSelectorProfiler):
(WebCore::InspectorCSSAgent::stopSelectorProfilerImpl):
Remove unused states. Make CSSAgentState::isSelectorProfiling check profile object exists or not.

  • inspector/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::enable):
(WebCore::InspectorCanvasAgent::disable):
Remove unused state, member variable already existed.

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

(WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
(WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
(WebCore::InspectorConsoleAgent::enable):
(WebCore::InspectorConsoleAgent::disable):
(WebCore::InspectorConsoleAgent::didFinishXHRLoading):
(WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
ConsoleAgentState::consoleMessagesEnabled already had m_enabled.
ConsoleAgentState::monitoringXHR -> m_monitoringXHREnabled.

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

(WebCore::InspectorDOMAgent::InspectorDOMAgent):
(WebCore::InspectorDOMAgent::clearFrontend):
(WebCore::InspectorDOMAgent::setDocument):
(WebCore::InspectorDOMAgent::getDocument):
(WebCore::InspectorDOMAgent::mainFrameDOMContentLoaded):
DOMAgentState::documentRequested -> m_documentRequested.

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

(WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
(WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
DOMDebuggerAgentState::pauseOnAllXHRs -> m_pauseOnAllXHRsEnabled.

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

(WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
(WebCore::InspectorDOMStorageAgent::enable):
(WebCore::InspectorDOMStorageAgent::disable):
(WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
DOMStorageAgentState::domStorageAgentEnabled -> m_enabled.

  • inspector/InspectorDatabaseAgent.cpp:

(WebCore::InspectorDatabaseAgent::enable):
(WebCore::InspectorDatabaseAgent::disable):
Remove unused state, m_enabled already existed.

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

(WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
(WebCore::InspectorDebuggerAgent::enable):
(WebCore::InspectorDebuggerAgent::disable):
(WebCore::InspectorDebuggerAgent::enabled):
(WebCore::InspectorDebuggerAgent::clearFrontend):
(WebCore::InspectorDebuggerAgent::setPauseOnExceptionsImpl):
DebuggerAgentState::pauseOnExceptionsState removed, never read.
DebuggerAgentState::debuggerEnabled -> m_enabled.

  • inspector/InspectorHeapProfilerAgent.h:
  • inspector/InspectorHeapProfilerAgent.cpp:

(WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
(WebCore::InspectorHeapProfilerAgent::resetFrontendProfiles):
(WebCore::InspectorHeapProfilerAgent::clearFrontend):
(WebCore::InspectorHeapProfilerAgent::getProfileHeaders):
HeapProfilerAgentState::profileHeadersRequested -> m_profileHeadersRequested.

  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore::InspectorIndexedDBAgent::enable):
(WebCore::InspectorIndexedDBAgent::disable):
Remove unused state, never read.

  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::enable):
(WebCore::InspectorLayerTreeAgent::disable):
Remove unused state, did not need to be read.

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

(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::webViewResized):
(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::setDeviceMetricsOverride):
(WebCore::InspectorPageAgent::deviceMetricsChanged):
(WebCore::InspectorPageAgent::setShowPaintRects):
(WebCore::InspectorPageAgent::setShowDebugBorders):
(WebCore::InspectorPageAgent::setShowFPSCounter):
(WebCore::InspectorPageAgent::setContinuousPaintingEnabled):
(WebCore::InspectorPageAgent::setScriptExecutionDisabled):
(WebCore::InspectorPageAgent::applyScreenWidthOverride):
(WebCore::InspectorPageAgent::applyScreenHeightOverride):
(WebCore::InspectorPageAgent::didPaint):
(WebCore::InspectorPageAgent::didLayout):
(WebCore::InspectorPageAgent::updateTouchEventEmulationInPage):
(WebCore::InspectorPageAgent::setTouchEmulationEnabled):
(WebCore::InspectorPageAgent::setEmulatedMedia):
(WebCore::InspectorPageAgent::applyEmulatedMedia):
PageAgentState::pageAgentScreenWidthOverride -> m_screenWidthOverride.
PageAgentState::pageAgentScreenHeightOverride -> m_screenHeightOverride.
PageAgentState::pageAgentFontScaleFactorOverride -> m_fontScaleFactorOverride.
PageAgentState::pageAgentFitWindow -> m_fitWindowOverride.
PageAgentState::pageAgentShowPaintRects -> m_showPaintRects.
PageAgentState::pageAgentEmulatedMedia -> m_emulatedMedia.
Remove other unused states.

  • inspector/InspectorProfilerAgent.h:
  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
(WebCore::InspectorProfilerAgent::addProfile):
(WebCore::InspectorProfilerAgent::enable):
(WebCore::InspectorProfilerAgent::disable):
(WebCore::InspectorProfilerAgent::getProfileHeaders):
(WebCore::InspectorProfilerAgent::resetFrontendProfiles):
(WebCore::InspectorProfilerAgent::start):
(WebCore::InspectorProfilerAgent::stop):
(WebCore::InspectorProfilerAgent::enabled):
ProfilerAgentState::profileHeadersRequested -> m_profileHeadersRequested.
Remove other unused states.

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

(WebCore::InspectorResourceAgent::~InspectorResourceAgent):
(WebCore::InspectorResourceAgent::willSendRequest):
(WebCore::InspectorResourceAgent::applyUserAgentOverride):
(WebCore::InspectorResourceAgent::enable):
(WebCore::InspectorResourceAgent::disable):
(WebCore::InspectorResourceAgent::setUserAgentOverride):
(WebCore::InspectorResourceAgent::setCacheDisabled):
(WebCore::InspectorResourceAgent::mainFrameNavigated):
(WebCore::InspectorResourceAgent::InspectorResourceAgent):
ResourceAgentState::resourceAgentEnabled -> m_enabled.
ResourceAgentState::cacheDisabled -> m_cacheDisabled.
ResourceAgentState::userAgentOverride -> m_userAgentOverride (this already existed and was unused).

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

(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::setDOMCounters):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
TimelineAgentState::timelineAgentEnabled -> m_enabled.
TimelineAgentState::includeDomCounters -> m_includeDOMCounters.
Remove other unused states.

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

(WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
(WebCore::InspectorWorkerAgent::clearFrontend):
(WebCore::InspectorWorkerAgent::enable):
(WebCore::InspectorWorkerAgent::disable):
(WebCore::InspectorWorkerAgent::setAutoconnectToWorkers):
(WebCore::InspectorWorkerAgent::shouldPauseDedicatedWorkerOnStart):
(WebCore::InspectorWorkerAgent::didStartWorkerGlobalScope):
(WebCore::InspectorWorkerAgent::createWorkerFrontendChannel):
WorkerAgentState::workerInspectionEnabled -> m_enabled.
WorkerAgentState::autoconnectToWorkers -> m_shouldPauseDedicatedWorkerOnStart.

  • inspector/PageRuntimeAgent.cpp:

(WebCore::PageRuntimeAgent::enable):
(WebCore::PageRuntimeAgent::disable):
Remove unused state, not read.

5:14 PM Changeset in webkit [158330] by rniwa@webkit.org
  • 24 edits in trunk/Source

Remove code for Mac Lion
https://bugs.webkit.org/show_bug.cgi?id=123542

Reviewed by Anders Carlsson.

Source/WebCore:

Removed the code for Mac OS X 10.7.

  • platform/graphics/ImageBuffer.h:
  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::context):
(WebCore::ImageBuffer::flushContext):

  • platform/graphics/cg/ImageBufferDataCG.h:
  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::imageSourceOptions):

  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::scrollAnimationEnabledForSystem):

  • platform/mac/ScrollElasticityController.mm:

(WebCore::reboundDeltaForElasticDelta):

  • platform/mac/ThemeMac.mm:

(WebCore::updateStates):
(WebCore::paintCheckbox):
(WebCore::paintRadio):
(WebCore::paintButton):

  • platform/mac/WebCoreNSCellExtras.h:
  • platform/mac/WebCoreNSCellExtras.m:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintTextField):
(WebCore::RenderThemeMac::paintMenuList):
(WebCore::RenderThemeMac::setPopupButtonCellState):
(WebCore::RenderThemeMac::textField):

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

(-[WebHTMLView attachRootLayer:]):

  • WebView/WebView.mm:

Source/WebKit2:

  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • UIProcess/API/mac/WKView.mm:

(-[WKView viewWillMoveToWindow:]):

  • WebProcess/com.apple.WebProcess.sb.in:

Source/WTF:

  • wtf/Platform.h:
4:59 PM Changeset in webkit [158329] by ap@apple.com
  • 5 edits in trunk/Tools

Set svn:ignore for .pyc files created for test-webkitpy.

  • Scripts/webkitpy/layout_tests/reftests: Added property svn:ignore.
  • Scripts/webkitpy/performance_tests: Added property svn:ignore.
  • Scripts/webkitpy/to_be_moved: Added property svn:ignore.
  • Scripts/webkitpy/w3c: Added property svn:ignore.
4:50 PM Changeset in webkit [158328] by rniwa@webkit.org
  • 1 edit
    1 delete in trunk/LayoutTests

Delete the expected results for Lion.

Rubber-stamped by Anders Carlsson.

  • platform/mac-lion: Removed.
4:48 PM Changeset in webkit [158327] by aestes@apple.com
  • 5 edits
    63 adds in trunk/Source/WebKit

[iOS] Upstream Source/WebKit/ios/
https://bugs.webkit.org/show_bug.cgi?id=123470

Reviewed by Sam Weinig.

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/ios:

  • DefaultDelegates/WebDefaultFormDelegate.h: Added.
  • DefaultDelegates/WebDefaultFormDelegate.m: Added.
  • DefaultDelegates/WebDefaultFrameLoadDelegate.h: Added.
  • DefaultDelegates/WebDefaultFrameLoadDelegate.m: Added.
  • DefaultDelegates/WebDefaultResourceLoadDelegate.h: Added.
  • DefaultDelegates/WebDefaultResourceLoadDelegate.m: Added.
  • DefaultDelegates/WebDefaultUIKitDelegate.h: Added.
  • DefaultDelegates/WebDefaultUIKitDelegate.m: Added.
  • Misc/EmojiFallbackFontSelector.cpp: Added.
  • Misc/EmojiFallbackFontSelector.h: Added.
  • Misc/MemoryMeasure.h: Added.
  • Misc/MemoryMeasure.mm: Added.
  • Misc/WebGeolocationCoreLocationProvider.h: Added.
  • Misc/WebGeolocationCoreLocationProvider.mm: Added.
  • Misc/WebGeolocationProviderIOS.h: Added.
  • Misc/WebGeolocationProviderIOS.mm: Added.
  • Misc/WebNSStringDrawing.h: Added.
  • Misc/WebNSStringDrawing.mm: Added.
  • Misc/WebNSStringExtrasIOS.h: Added.
  • Misc/WebNSStringExtrasIOS.m: Added.
  • Misc/WebNSStringExtrasIPhone.h: Added.
  • Misc/WebUIKitSupport.h: Added.
  • Misc/WebUIKitSupport.mm: Added.
  • Storage/WebSQLiteDatabaseTrackerClient.h: Added.
  • Storage/WebSQLiteDatabaseTrackerClient.mm: Added.
  • WebCoreSupport/PopupMenuIOS.h: Added.
  • WebCoreSupport/PopupMenuIOS.mm: Added.
  • WebCoreSupport/SearchPopupMenuIOS.cpp: Added.
  • WebCoreSupport/SearchPopupMenuIOS.h: Added.
  • WebCoreSupport/WebCaretChangeListener.h: Added.
  • WebCoreSupport/WebChromeClientIOS.h: Added.
  • WebCoreSupport/WebChromeClientIOS.mm: Added.
  • WebCoreSupport/WebFixedPositionContent.h: Added.
  • WebCoreSupport/WebFixedPositionContent.mm: Added.
  • WebCoreSupport/WebFixedPositionContentInternal.h: Added.
  • WebCoreSupport/WebFrameIOS.h: Added.
  • WebCoreSupport/WebFrameIOS.mm: Added.
  • WebCoreSupport/WebFrameIPhone.h: Added.
  • WebCoreSupport/WebGeolocation.mm: Added.
  • WebCoreSupport/WebGeolocationInternal.h: Added.
  • WebCoreSupport/WebGeolocationPrivate.h: Added.
  • WebCoreSupport/WebMIMETypeRegistry.h: Added.
  • WebCoreSupport/WebMIMETypeRegistry.mm: Added.
  • WebCoreSupport/WebSelectionRect.h: Added.
  • WebCoreSupport/WebSelectionRect.m: Added.
  • WebCoreSupport/WebVisiblePosition.h: Added.
  • WebCoreSupport/WebVisiblePosition.mm: Added.
  • WebCoreSupport/WebVisiblePositionInternal.h: Added.
  • WebKit.iOS.exp: Added.
  • WebView/WebFrameViewWAKCompatibility.m: Added.
  • WebView/WebMailDelegate.h: Added.
  • WebView/WebPDFViewIOS.h: Added.
  • WebView/WebPDFViewIOS.mm: Added.
  • WebView/WebPDFViewIPhone.h: Added.
  • WebView/WebPDFViewPlaceholder.h: Added.
  • WebView/WebPDFViewPlaceholder.mm: Added.
  • WebView/WebPlainWhiteView.h: Added.
  • WebView/WebPlainWhiteView.mm: Added.
  • WebView/WebUIKitDelegate.h: Added.

Source/WebKit/mac:

  • Configurations/WebKit.xcconfig: Excluded some iOS files from the Mac build.
4:43 PM Changeset in webkit [158326] by ap@apple.com
  • 7 edits in trunk

85 inspector tests asserting in DrawingAreaProxyImpl::updateAcceleratedCompositingMode()
when there is a stale WebKitTestRunner preference
https://bugs.webkit.org/show_bug.cgi?id=115115

Reviewed by Darin Adler.

Source/WebCore:

  • page/Settings.cpp:

(WebCore::Settings::setMockScrollbarsEnabled):
(WebCore::Settings::setUsesOverlayScrollbars):
Added FIXMEs.

Tools:

Delete stale preferences on launch.

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize): Now that we don't have preferences stored from
the previous run, we need th reinstate them before creating a WKView. Not all preferences
can be applied to an existing view retroactively.
(WTR::TestController::resetPreferencesToConsistentValues): Split out of resetStateToConsistentValues,
because there is no injected bundle yet when calling this function from initialize().

  • WebKitTestRunner/mac/main.mm: (setDefaultsToConsistentValuesForTesting): Delete

the preferences.

  • WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm: (WTR::InjectedBundle::platformInitialize):

Added some FIXMEs.

4:13 PM Changeset in webkit [158325] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the !WK_API_ENABLED Mac build.

  • Shared/Cocoa/APIObject.mm:
3:49 PM Changeset in webkit [158324] by mitz@apple.com
  • 13 edits
    7 adds
    2 deletes in trunk/Source/WebKit2

[Cocoa] Make all API objects have Cocoa wrappers, and delegate refcounting to those wrappers
https://bugs.webkit.org/show_bug.cgi?id=123394

Reviewed by Darin Adler.

All wrappers conform to a new WKObject protocol and contain the wrapped object inline.
APIObject-derived classes override operator new to call newObject, which allocates the
wrapper and returns a pointer to the inline API object.

There are three kinds of wrapper classes: (a) classes that inherit directly from NSObject
and implement their API by calling the wrapped object (example: WKBackForwardList),
(b) internal classes that inherit from a class cluster, and implement the primitive methods
of the class cluster by calling the wrapped object (example: WKNSArray), and (c) internal
classes that inerit from the new WKObject class, and proxy to an object of some public type,
which is created from the wrapped object (example: WKNSURL).

  • Shared/APIObject.h:

(WebKit::APIObject::wrapper): Added this getter.
(WebKit::TypedAPIObject::operator new): Added override that calls newObject.

  • Shared/Cocoa/APIObject.mm: Added.

(WebKit::APIObject::ref): Retains the wrapper.
(WebKit::APIObject::deref): Releases the wrapper. When the wrapper is deallocated, it calls
the API object destructor.
(WebKit::APIObject::newObject): Allocates the wrapper and returns a pointer to the API
object inside the wrapper.

  • Shared/Cocoa/WKNSArray.h:

(WebKit::wrapper): Added. Returns an ImmutableArray’s wrapper as an NSArray.
Replaced the RefPtr<ImmutableArray> ivar with space for an ImmutableArray to live inside
the wrapper.
(-[WKNSArray dealloc]): Calls the ImmutableArray destructor.
(-[WKNSArray count]): Updated for ivar change.
(-[WKNSArray objectAtIndex:]): Ditto.
(-[WKNSArray _apiObject]): Returns the wrapped ImmutableArray.

  • Shared/Cocoa/WKNSObjectExtras.h: Removed.
  • Shared/Cocoa/WKNSObjectExtras.mm: Removed.
  • Shared/Cocoa/WKNSString.h: Added.
  • Shared/Cocoa/WKNSString.mm: Added.

(-[WKNSString _web_createTarget]): Override this WKObject method to create an NSString from
the WebString.
(-[WKNSString copyWithZone:]): Retains self.

  • Shared/Cocoa/WKNSURL.h: Added.
  • Shared/Cocoa/WKNSURL.mm: Added.

(-[WKNSURL _web_createTarget]): Override this WKObject method to create an NSURL from
the WebURL.
(-[WKNSURL copyWithZone:]): Retains self.

  • Shared/Cocoa/WKObject.h: Added.
  • Shared/Cocoa/WKObject.mm: Added.

(-[WKObject dealloc]): Calls the destructor of the wrapped object and releases the target
object.
(initializeTargetIfNeeded): Helper function. Tries to create the target exactly once.
(-[WKObject isEqual:]): NSObject override that creates and compares to the target
object if necessary.
(-[WKObject hash]): NSObject override that creates and hashes the target object if
there is one.
(-[WKObject isKindOfClass:]): NSObject override that delegates to the target object.
(-[WKObject isMemberOfClass:]): Ditto.
(-[WKObject respondsToSelector:]): NSObject override that creates the target object if
necessary and returns whether it or self responds to the selector.
(-[WKObject conformsToProtocol:]): Similarly for protocols.
(-[WKObject forwardingTargetForSelector:]): NSObject override that creates the target object
if necessary and returns it as the target.
(-[WKObject description]): NSObject override that creates the target object if necessary and
forwards to it.
(-[WKObject _web_createTarget]): Added. The base implementation returns nil.
(-[WKObject _apiObject]): Returns the wrapped object.

  • UIProcess/API/mac/WKBrowsingContextController.mm:

(-[WKBrowsingContextController backForwardList]): Changed to return the existing wrapper.
(didChangeBackForwardList): Changed to use existing wrappers.

Replaced the RefPtr<WebBackForwardList> ivar with space for a WebBackForwardList to live
inside the wrapper.
(-[WKBackForwardList dealloc]): Call the WebBackForwardList destructor.
(toWKBackForwardListItem): Changed to us the existing wrapper.
(-[WKBackForwardList currentItem]): Updated for ivar change.
(-[WKBackForwardList backItem]): Ditto.
(-[WKBackForwardList forwardItem]): Ditto.
(-[WKBackForwardList itemAtIndex:]): Ditto.
(-[WKBackForwardList backListCount]): Ditto.
(-[WKBackForwardList forwardListCount]): Ditto,
(-[WKBackForwardList backListWithLimit:]): Ditto, and also changed to use the
ImmutableArray’s existing wrapper.
(-[WKBackForwardList forwardListWithLimit:]): Ditto.
(-[WKBackForwardList _apiObject]): Returns the WebBackForwardListItem.

  • UIProcess/Cocoa/WKBackForwardListInternal.h:

(WebKit::wrapper): Added. Returns a WebBackForwardList’s wrapper as a WKBackForwardList.

  • UIProcess/Cocoa/WKBackForwardListItem.mm:

Replaced the RefPtr<WebBackForwardListItem> ivar with space for a WebBackForwardListItem to
live inside the wrapper.
(-[WKBackForwardListItem dealloc]): Call the WebBackForwardListItem destructor.
(-[WKBackForwardListItem URL]): Updated for ivar change, and changed to make an NSURL
directly instead of going through a wrapper.
(-[WKBackForwardListItem title]): Updated for ivar change, and changed to use
String’s operator NSString*.
(-[WKBackForwardListItem originalURL]): Updated for ivar change, and changed to make an
NSURL directly instead of going through a wrapper.
(-[WKBackForwardListItem _apiObject]): Returns the WebBackForwardListItem.
(-[WKBackForwardListItem _item]): Ditto.

  • UIProcess/Cocoa/WKBackForwardListItemInternal.h:

(WebKit::wrapper): Added. Returns a WebBackForwardListItem’s wrapper as a
WKBackForwardListItem.

  • UIProcess/WebColorPickerResultListenerProxy.h: Changed into a TypedAPIObject.
  • UIProcess/WebFormSubmissionListenerProxy.h:

(WebKit::WebFormSubmissionListenerProxy::operator new): Override to call newObject.

  • UIProcess/WebFramePolicyListenerProxy.h:

(WebKit::WebFramePolicyListenerProxy::operator new): Ditto.

  • WebKit2.xcodeproj/project.pbxproj: Updated for file additions and removals.
3:47 PM Changeset in webkit [158323] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, fix C Loop LLINT build.

  • bytecode/CodeBlockJettisoningWatchpoint.cpp:

(JSC::CodeBlockJettisoningWatchpoint::fireInternal):

  • bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp:

(JSC::ProfiledCodeBlockJettisoningWatchpoint::fireInternal):

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

Unreviewed, fix FTL build.

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

(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):

3:27 PM Changeset in webkit [158321] by akling@apple.com
  • 24 edits in trunk/Source/WebCore

Take line boxes out of the arena.
<https://webkit.org/b/123533>

Stop arena-allocating line boxes so we can move forward on improving
render tree memory management. This will also allow more rendering
code to take advantage of malloc optimizations.

This will likely regress performance on some micro-benchmarks, but
it's something we want to do sooner rather than later so we have time
to restabilize it. All improvements to the simple line layout's
coverage will help with recouping whatever is regressed.

BiDi runs are the only remaining user of the arena now.

Reviewed by Antti Koivisto

3:17 PM Changeset in webkit [158320] by commit-queue@webkit.org
  • 39 edits in trunk/Source/WebCore

Web Inspector: Remove InspectorAgent::restore functionality
https://bugs.webkit.org/show_bug.cgi?id=123525

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-10-30
Reviewed by Timothy Hatcher.

Remove unused InspectorAgent restore functionality.

  • inspector/InspectorApplicationCacheAgent.cpp:
  • inspector/InspectorApplicationCacheAgent.h:
  • inspector/InspectorBaseAgent.cpp:
  • inspector/InspectorBaseAgent.h:
  • inspector/InspectorCSSAgent.cpp:
  • inspector/InspectorCSSAgent.h:
  • inspector/InspectorCanvasAgent.cpp:
  • inspector/InspectorCanvasAgent.h:
  • inspector/InspectorConsoleAgent.cpp:
  • inspector/InspectorConsoleAgent.h:
  • inspector/InspectorController.cpp:
  • inspector/InspectorController.h:
  • inspector/InspectorDOMAgent.cpp:
  • inspector/InspectorDOMAgent.h:
  • inspector/InspectorDatabaseAgent.cpp:
  • inspector/InspectorDatabaseAgent.h:
  • inspector/InspectorDebuggerAgent.cpp:
  • inspector/InspectorDebuggerAgent.h:
  • inspector/InspectorHeapProfilerAgent.cpp:
  • inspector/InspectorHeapProfilerAgent.h:
  • inspector/InspectorIndexedDBAgent.cpp:
  • inspector/InspectorIndexedDBAgent.h:
  • inspector/InspectorLayerTreeAgent.cpp:
  • inspector/InspectorLayerTreeAgent.h:
  • inspector/InspectorPageAgent.cpp:
  • inspector/InspectorPageAgent.h:
  • inspector/InspectorProfilerAgent.cpp:
  • inspector/InspectorProfilerAgent.h:
  • inspector/InspectorResourceAgent.cpp:
  • inspector/InspectorResourceAgent.h:
  • inspector/InspectorTimelineAgent.cpp:
  • inspector/InspectorTimelineAgent.h:
  • inspector/InspectorWorkerAgent.cpp:
  • inspector/InspectorWorkerAgent.h:
  • inspector/PageRuntimeAgent.cpp:
  • inspector/PageRuntimeAgent.h:
  • inspector/WorkerInspectorController.cpp:
  • inspector/WorkerInspectorController.h:
3:12 PM Changeset in webkit [158319] by andersca@apple.com
  • 3 edits in trunk/Tools

Try to fix the 32-bit build.

  • TestWebKitAPI/Tests/WebKit2ObjC/WKRemoteObjectRegistry.mm:
  • TestWebKitAPI/Tests/mac/WKRemoteObjectRegistry_Bundle.mm:
3:07 PM Changeset in webkit [158318] by jer.noble@apple.com
  • 4 edits in trunk

REGRESSION(r158288): media/media-can-play-mpeg4-video.html fails
https://bugs.webkit.org/show_bug.cgi?id=123530

Reviewed by Eric Carlson.

Source/WebCore:

Lower case the mime type before passing it along to MediaPlayer.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::canPlayType):
(WebCore::HTMLMediaElement::selectNextSourceChild):

LayoutTests:

3:05 PM Changeset in webkit [158317] by ap@apple.com
  • 10 edits
    1 copy
    1 add in trunk/Source

Add a way to fulfill promises from DOM code
https://bugs.webkit.org/show_bug.cgi?id=123466

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • JavaScriptCore.xcodeproj/project.pbxproj: Make JSPromise.h and JSPromiseResolver.h

private headers for WebCore to use.

  • runtime/JSPromise.h:
  • runtime/JSPromiseResolver.h:

Export functions that JSDOMPromise will use.

Source/WebCore:

This is not perfect, as it strongly ties DOM code to JavaScript. In the future, we
can make it better e.g. by subclassing, so that only a base interface would be exposed.

  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • bindings/js/JSBindingsAllInOne.cpp:
  • WebCore.xcodeproj/project.pbxproj:

Added JSDOMPromise.

  • bindings/js/JSDOMPromise.cpp: Added.
  • bindings/js/JSDOMPromise.h: Added.

(WebCore::PromiseWrapper::create):
(WebCore::PromiseWrapper::fulfill): A random set of specializations that I needed
in WebCrypto code so far.
(WebCore::PromiseWrapper::reject): Ditto.

2:51 PM Changeset in webkit [158316] by andersca@apple.com
  • 7 edits
    3 copies
    1 add in trunk

Begin fleshing out an API test for WKRemoteObjectRegistry
https://bugs.webkit.org/show_bug.cgi?id=123531

Reviewed by Andreas Kling.

Source/WebKit2:

  • Shared/API/Cocoa/WKRemoteObjectInterface.h:

Add WK_API_CLASS annotation.

  • Shared/API/Cocoa/WKRemoteObjectRegistry.h:

Add WK_API_CLASS annotation.

  • Shared/API/Cocoa/WKRemoteObjectRegistry.mm:

Add a WebConnection ivar.

(-[WKRemoteObjectRegistry _initWithConnectionRef:]):
Add SPI to create an WKRemoteObjectRegistry object with an existing WKConnectionRef.

(-[WKRemoteObjectRegistry _handleMessageWithName:body:]):
Add SPI that will be used to process incoming messages from an existing WKConnectionRef.

  • Shared/API/Cocoa/WKRemoteObjectRegistryPrivate.h: Added.

Add SPI header.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

Tools:

Add a very simple test that doesn't really test anything for now.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2ObjC/WKRemoteObjectRegistry.mm: Added.
  • TestWebKitAPI/Tests/mac/WKRemoteObjectRegistry_Bundle.mm: Added.
  • TestWebKitAPI/Tests/mac/WKRemoteObjectRegistry_Shared.h: Added.
2:26 PM Changeset in webkit [158315] by mark.lam@apple.com
  • 23 edits in trunk/Source/JavaScriptCore

Adjust CallFrameHeader's ReturnPC and CallFrame locations to match the native ABI .
https://bugs.webkit.org/show_bug.cgi?id=123444.

Reviewed by Geoffrey Garen.

  • Introduced an explicit CallerFrameAndPC struct.
  • A CallFrame is expected to start with a CallerFrameAndPC struct.
  • The Register class no longer supports CallFrame* and Instruction*.

These hides the differences between JSVALUE32_64 and JSVALUE64 in
terms of managing the callerFrame() and returnPC() values.

  • Convert all uses of JSStack::CallerFrame and JSStack::ReturnPC to go through CallFrame to access the appropriate values and offsets. CallFrame, in turn, will access the callerFrame and returnPC via the CallerFrameAndPC struct.
  • InlineCallFrame will provide offsets for its callerFrame and returnPC. It will make use of CallFrame::callerFrameOffset() and CallerFrame::returnPCOffset() to compute these.
  • bytecode/CodeOrigin.h:

(JSC::InlineCallFrame::callerFrameOffset):
(JSC::InlineCallFrame::returnPCOffset):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileEntry):
(JSC::DFG::JITCompiler::compileExceptionHandlers):

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::reifyInlinedCallFrames):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::calleeFrameSlot):
(JSC::DFG::SpeculativeJIT::calleeArgumentSlot):
(JSC::DFG::SpeculativeJIT::calleeFrameTagSlot):
(JSC::DFG::SpeculativeJIT::calleeFramePayloadSlot):
(JSC::DFG::SpeculativeJIT::calleeArgumentTagSlot):
(JSC::DFG::SpeculativeJIT::calleeArgumentPayloadSlot):

  • Prefixed all the above with callee since they apply to the callee frame.

(JSC::DFG::SpeculativeJIT::calleeFrameCallerFrame):

  • Added to set the callerFrame pointer in the callee frame.
  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • ftl/FTLLink.cpp:

(JSC::FTL::compileEntry):
(JSC::FTL::link):

  • interpreter/CallFrame.h:

(JSC::ExecState::callerFrame):
(JSC::ExecState::callerFrameOffset):
(JSC::ExecState::returnPC):
(JSC::ExecState::hasReturnPC):
(JSC::ExecState::clearReturnPC):
(JSC::ExecState::returnPCOffset):
(JSC::ExecState::setCallerFrame):
(JSC::ExecState::setReturnPC):
(JSC::ExecState::callerFrameAndPC):

  • interpreter/JSStack.h:
  • interpreter/Register.h:
  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::emitPutToCallFrameHeader):

  • Convert to using storePtr() here and simplify the code.

(JSC::AssemblyHelpers::emitGetCallerFrameFromCallFrameHeaderPtr):
(JSC::AssemblyHelpers::emitPutCallerFrameToCallFrameHeader):
(JSC::AssemblyHelpers::emitGetReturnPCFromCallFrameHeaderPtr):
(JSC::AssemblyHelpers::emitPutReturnPCToCallFrameHeader):

  • Helpers to emit gets/puts of the callerFrame and returnPC.

(JSC::AssemblyHelpers::addressForByteOffset):

  • jit/JIT.cpp:

(JSC::JIT::JIT):
(JSC::JIT::privateCompile):
(JSC::JIT::privateCompileExceptionHandlers):

  • jit/JITCall.cpp:

(JSC::JIT::compileCallEval):
(JSC::JIT::compileOpCall):

  • jit/JITCall32_64.cpp:

(JSC::JIT::emit_op_ret):
(JSC::JIT::emit_op_ret_object_or_this):
(JSC::JIT::compileCallEval):
(JSC::JIT::compileOpCall):

  • jit/JITInlines.h:

(JSC::JIT::unmap):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_end):
(JSC::JIT::emit_op_ret):
(JSC::JIT::emit_op_ret_object_or_this):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTINativeCall):
(JSC::JIT::emit_op_end):

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

(JSC::SpecializedThunkJIT::returnJSValue):
(JSC::SpecializedThunkJIT::returnDouble):
(JSC::SpecializedThunkJIT::returnInt32):
(JSC::SpecializedThunkJIT::returnJSCell):

  • jit/ThunkGenerators.cpp:

(JSC::throwExceptionFromCallSlowPathGenerator):
(JSC::slowPathFor):
(JSC::nativeForGenerator):

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions):

  • llint/LowLevelInterpreter.asm:
  • Updated offsets and asserts to match the new CallFrame layout.
2:16 PM Changeset in webkit [158314] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

contentEditable deleting lists when list items are block level
https://bugs.webkit.org/show_bug.cgi?id=122602

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-10-30
Reviewed by Ryosuke Niwa.

Source/WebCore:

When listitems are styled with display:block/float then inserting paragraph
twice at end of listitem delete entire list. Generally when listitem is empty
then we delete the listitem on inserting paragraph. In this issue, on inserting
first paragraph one empty listitem is created, and on inserting second paragraph
we try to delete that empty listitem. but it misbehave becasue of incomplete
definition of htmlediting::isLisItem() and entire list is deleted.

htmlediting::isListItem() check only render object to decide whether it is
list or not, so if any LI element is block level then isListItem return false.
Now after this patch if parent of current node is list element then node is
treated as listItem.

Test: editing/execCommand/hit-enter-twice-atendof-block-styled-listitem.html

  • editing/htmlediting.cpp:

(WebCore::isListItem): Modified condition to check if parent node is list;

LayoutTests:

Testcase: When listitem is styled with display:block then inserting
paragraph twice at the end of listitem should not remove entire list.

  • editing/execCommand/hit-enter-twice-atendof-block-styled-listitem-expected.txt: Added.
  • editing/execCommand/hit-enter-twice-atendof-block-styled-listitem.html: Added.

TestCase: When listitem is made of custom tag(<item>) and css(display:list-item)
then inserting paragraph twice at the end of listitem should not remove entire list.

  • editing/execCommand/hit-enter-twice-atendof-custom-listitem-expected.txt: Added.
  • editing/execCommand/hit-enter-twice-atendof-custom-listitem.html: Added.
1:59 PM Changeset in webkit [158313] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix Mac.

  • assembler/AbstractMacroAssembler.h:

(JSC::AbstractMacroAssembler::RegisterAllocationOffset::checkOffsets):
(JSC::AbstractMacroAssembler::checkRegisterAllocationAgainstBranchRange):

1:57 PM Changeset in webkit [158312] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Add a failing test expectation on media/media-can-play-mpeg4-video.html after r158288.
The failure is tracked by the bug 123530.

Also rebaseline Mountain Lion results.

  • TestExpectations:
  • platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt:
1:51 PM Changeset in webkit [158311] by jer.noble@apple.com
  • 5 edits in trunk/Source/WebCore

Unreviewed. Update NEWS and Versions.m4 for 2.3.1 release.

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-10-29

  • Source/autotools/Versions.m4: Bump version numbers.
1:40 PM Changeset in webkit [158310] by akling@apple.com
  • 7 edits in trunk/Source

Let Page::renderTreeSize() be the number of renderers.
<https://webkit.org/b/123518>
<rdar://problem/15348679>

The old metric was "number of bytes allocated in RenderArena" and
that was heading towards obsolescence, fast.

Instead, keep a count of RenderObjects instantiated on RenderView.
While a bit ugly, this lets us move forward with rendering memory
model improvements without breaking features.

Reviewed by Beth Dakin.

1:32 PM Changeset in webkit [158309] by commit-queue@webkit.org
  • 8 edits in trunk/Source

WebKit/win/WebKitGraphics.h:void WebDrawText(WebTextRenderInfo*); is never called
https://bugs.webkit.org/show_bug.cgi?id=123485

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-10-30
Reviewed by Brent Fulgham.

Source/WebCore:

WebDrawText is the only caller of WebCoreDrawTextAtPoint, so we can
delete that as well.

Because there is no behavior difference, no new tests are necessary.

  • platform/win/WebCoreTextRenderer.cpp:
  • platform/win/WebCoreTextRenderer.h:

Source/WebKit:

Deleting the function

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

Source/WebKit/win:

Removed unused WebDrawText implementation.

  • WebKitGraphics.cpp:
  • WebKitGraphics.h:
1:22 PM Changeset in webkit [158308] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix Windows.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::jettison):

1:14 PM Changeset in webkit [158307] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix Windows.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::addFrequentExitSite):

1:13 PM Changeset in webkit [158306] by fpizlo@apple.com
  • 2 edits in trunk/Tools

Remove unnecessary touch

Rubber stamped by Mark Hahnenberg.

  • Scripts/run-jsc-stress-tests:
1:03 PM Changeset in webkit [158305] by Samuel White
  • 3 edits in trunk/Tools

AX: Add Samuel White to accessibility watchlist cc rules
https://bugs.webkit.org/show_bug.cgi?id=123515

Reviewed by Chris Fleizach.

Adding myself and jcraig@apple.com (per his request) to the accessibility watchlist. Also
updating contributors.json with permission from bweinstein@apple.com to make this possible.

  • Scripts/webkitpy/common/config/contributors.json:
  • Scripts/webkitpy/common/config/watchlist:
12:58 PM Changeset in webkit [158304] by fpizlo@apple.com
  • 35 edits
    10 adds
    2 deletes in trunk/Source/JavaScriptCore

Add InvalidationPoints to the DFG and use them for all watchpoints
https://bugs.webkit.org/show_bug.cgi?id=123472

Reviewed by Mark Hahnenberg.

This makes a fundamental change to how watchpoints work in the DFG.

Previously, a watchpoint was an instruction whose execution semantics were something
like:

if (watchpoint->invalidated)

exit


We would implement this without any branch by using jump replacement.

This is a very good optimization. But it's a bit awkward once you get a lot of
watchpoints: semantically we will have lots of these branches in the code, which the
compiler needs to reason about even though they don't actually result in any emitted
code.

Separately, we also had a mechanism for jettisoning a CodeBlock. This mechanism would
be invoked if a CodeBlock exited a lot. It would ensure that a CodeBlock wouldn't be
called into again, but it would do nothing for CodeBlocks that were already on the
stack.

This change flips jettisoning and watchpoint invalidation on their heads. Now, the jump
replacement has nothing to do with watchpoints; instead it's something that happens if
you ever jettison a CodeBlock. Jump replacement is now an all-or-nothing operation over
all of the potential call-return safe-exit-points in a CodeBlock. We call these
"InvalidationPoint"s. A watchpoint instruction is now "lowered" by having the DFG
collect all of the watchpoint sets that the CodeBlock cares about, and then registering
a CodeBlockJettisoningWatchpoint with all of them. That is, if the watchpoint fires, it
jettisons the CodeBlock, which in turn ensures that the CodeBlock can't be called into
(because the entrypoint now points to baseline code) and can't be returned into
(because returning exits to baseline before the next bytecode instruction).

This will allow for a sensible lowering of watchpoints to LLVM IR. It will also allow
for jettison() to be used effectively for things like breakpointing and single-stepping
in the debugger.

Well, basically, this mechanism just takes us into the HotSpot-style world where anyone
can, at any time and for any reason, request that an optimized CodeBlock is rendered
immediately invalid. You can use this for many cool things, I'm sure.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/AbstractMacroAssembler.h:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::jettison):

  • bytecode/CodeBlock.h:
  • bytecode/CodeBlockJettisoningWatchpoint.cpp: Added.

(JSC::CodeBlockJettisoningWatchpoint::fireInternal):

  • bytecode/CodeBlockJettisoningWatchpoint.h: Added.

(JSC::CodeBlockJettisoningWatchpoint::CodeBlockJettisoningWatchpoint):

  • bytecode/ExitKind.cpp:

(JSC::exitKindToString):

  • bytecode/ExitKind.h:
  • bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp: Added.

(JSC::ProfiledCodeBlockJettisoningWatchpoint::fireInternal):

  • bytecode/ProfiledCodeBlockJettisoningWatchpoint.h: Added.

(JSC::ProfiledCodeBlockJettisoningWatchpoint::ProfiledCodeBlockJettisoningWatchpoint):

  • dfg/DFGAbstractHeap.h:
  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGClobberize.cpp:

(JSC::DFG::writesOverlap):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):
(JSC::DFG::AbstractHeapOverlaps::AbstractHeapOverlaps):
(JSC::DFG::AbstractHeapOverlaps::operator()):
(JSC::DFG::AbstractHeapOverlaps::result):

  • dfg/DFGCommonData.cpp:

(JSC::DFG::CommonData::invalidate):

  • dfg/DFGCommonData.h:

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

  • dfg/DFGDesiredWatchpoints.cpp:

(JSC::DFG::DesiredWatchpoints::addLazily):
(JSC::DFG::DesiredWatchpoints::reallyAdd):

  • dfg/DFGDesiredWatchpoints.h:

(JSC::DFG::WatchpointForGenericWatchpointSet::WatchpointForGenericWatchpointSet):
(JSC::DFG::GenericDesiredWatchpoints::addLazily):
(JSC::DFG::GenericDesiredWatchpoints::reallyAdd):
(JSC::DFG::GenericDesiredWatchpoints::areStillValid):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGInvalidationPointInjectionPhase.cpp: Added.

(JSC::DFG::InvalidationPointInjectionPhase::InvalidationPointInjectionPhase):
(JSC::DFG::InvalidationPointInjectionPhase::run):
(JSC::DFG::InvalidationPointInjectionPhase::handle):
(JSC::DFG::InvalidationPointInjectionPhase::insertInvalidationCheck):
(JSC::DFG::performInvalidationPointInjection):

  • dfg/DFGInvalidationPointInjectionPhase.h: Added.
  • dfg/DFGJITCode.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):

  • dfg/DFGJITCompiler.h:
  • dfg/DFGJumpReplacement.cpp: Added.

(JSC::DFG::JumpReplacement::fire):

  • dfg/DFGJumpReplacement.h: Added.

(JSC::DFG::JumpReplacement::JumpReplacement):

  • dfg/DFGNodeType.h:
  • dfg/DFGOSRExitCompilationInfo.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGPlan.cpp:

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

  • dfg/DFGPredictionPropagationPhase.cpp:

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

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::emitInvalidationPoint):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::masqueradesAsUndefinedWatchpointIsStillValid):
(JSC::DFG::SpeculativeJIT::speculateStringObjectForStructure):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGWatchpointCollectionPhase.cpp: Added.

(JSC::DFG::WatchpointCollectionPhase::WatchpointCollectionPhase):
(JSC::DFG::WatchpointCollectionPhase::run):
(JSC::DFG::WatchpointCollectionPhase::handle):
(JSC::DFG::WatchpointCollectionPhase::handleEdge):
(JSC::DFG::WatchpointCollectionPhase::handleMasqueradesAsUndefined):
(JSC::DFG::WatchpointCollectionPhase::handleStringGetByVal):
(JSC::DFG::WatchpointCollectionPhase::addLazily):
(JSC::DFG::WatchpointCollectionPhase::globalObject):
(JSC::DFG::performWatchpointCollection):

  • dfg/DFGWatchpointCollectionPhase.h: Added.
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileStructureTransitionWatchpoint):
(JSC::FTL::LowerDFGToLLVM::compileGetByVal):
(JSC::FTL::LowerDFGToLLVM::compileGlobalVarWatchpoint):
(JSC::FTL::LowerDFGToLLVM::compileCompareEqConstant):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEq):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEqConstant):
(JSC::FTL::LowerDFGToLLVM::compileInvalidationPoint):
(JSC::FTL::LowerDFGToLLVM::equalNullOrUndefined):
(JSC::FTL::LowerDFGToLLVM::speculateNonNullObject):

  • jit/JITOperations.cpp:
  • jit/JumpReplacementWatchpoint.cpp: Removed.
  • jit/JumpReplacementWatchpoint.h: Removed.
12:16 PM Changeset in webkit [158303] by Csaba Osztrogonác
  • 3 edits in trunk/Source/WebCore

URTBF after r158289.

  • CMakeLists.txt:
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:

(WebCore::IDBFactoryBackendLevelDB::createCursorBackend):

12:10 PM Changeset in webkit [158302] by Patrick Gansterer
  • 3 edits in trunk/Tools

[WIN] Add executable entry points to DRT and WinLauncher
https://bugs.webkit.org/show_bug.cgi?id=121837

Reviewed by Brent Fulgham.

This allows to compile and run the executables without DLLLauncher.

  • DumpRenderTree/win/DumpRenderTree.cpp:

(main):
(dllLauncherEntryPoint):

  • WinLauncher/WinLauncher.cpp:

(wWinMain):
(dllLauncherEntryPoint):

12:10 PM Changeset in webkit [158301] by fpizlo@apple.com
  • 2 edits in trunk/Tools

run-jsc-stress-tests should handle ".." in paths and "slow!" in cmd's
https://bugs.webkit.org/show_bug.cgi?id=123521

Reviewed by Mark Hahnenberg.

  • Scripts/run-jsc-stress-tests:
12:07 PM Changeset in webkit [158300] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fails with EGLConfigSelector.cpp when OpenGL ES is not used
https://bugs.webkit.org/show_bug.cgi?id=119037

Patch by Dong-Gwan Kim <donggwan.kim@samsung.com> on 2013-10-30
Reviewed by Brent Fulgham.

Build fix for EGLConfigSelector.cpp

No new tests, no behavior change.

  • platform/graphics/surfaces/egl/EGLConfigSelector.cpp:

(WebCore::EGLConfigSelector::createConfig):

12:03 PM Changeset in webkit [158299] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Remove PCRE workaround.
https://bugs.webkit.org/show_bug.cgi?id=123265

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-10-30
Reviewed by Brent Fulgham.

  • wtf/text/StringStatics.cpp:

(WTF::StringImpl::empty):

12:02 PM Changeset in webkit [158298] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a flaky test expectation to media/track/track-in-band-legacy-api.html
The failure is tracked by the bug 123522.

  • platform/mac/TestExpectations:
11:59 AM Changeset in webkit [158297] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Remote Layer Tree: Lots of ASSERT(m_children.isEmpty()); on Poster Circle
https://bugs.webkit.org/show_bug.cgi?id=123517

Reviewed by Simon Fraser.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::setSublayers):
When setting our list of sublayers, remove all of the new layers from
their parents first.

11:56 AM Changeset in webkit [158296] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Explicitly initialize base class in MediStreamTrackPrivate copy constructor
https://bugs.webkit.org/show_bug.cgi?id=123473

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-10-30
Reviewed by Eric Carlson.

No new tests needed.

Ports that enable -Werror=extra must do that to compile.

  • platform/mediastream/MediaStreamTrackPrivate.cpp:

(WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate):

11:52 AM Changeset in webkit [158295] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Mac build fix after r158291.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::canPlayType):

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

Unreviewed, rolling out r158243.
http://trac.webkit.org/changeset/158243
https://bugs.webkit.org/show_bug.cgi?id=123520

Change was wrong (Requested by smfr on #webkit).

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/blackberry/PathBlackBerry.cpp:

(WebCore::GraphicsContext::drawLineForText):

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::drawLineForText):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::drawLineForText):

  • platform/graphics/wince/GraphicsContextWinCE.cpp:

(WebCore::GraphicsContext::drawLineForText):

  • platform/win/WebCoreTextRenderer.cpp:

(WebCore::doDrawTextAtPoint):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintDecoration):
(WebCore::InlineTextBox::paintCompositionUnderline):

11:31 AM Changeset in webkit [158293] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/WebKit

[Windows] Unreviewed build fix.

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

Added missing 32-bit and 64-bit linker symbols.

11:22 AM Changeset in webkit [158292] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Favicons are flipped in vertical direction in WinCairo builds.
https://bugs.webkit.org/show_bug.cgi?id=102077

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-10-30
Reviewed by Brent Fulgham.

  • platform/graphics/win/ImageCairoWin.cpp:

(WebCore::BitmapImage::getHBITMAPOfSize):

11:18 AM Changeset in webkit [158291] by jer.noble@apple.com
  • 9 edits in trunk/Source/WebCore

[MSE] Add MediaSource compatable loading functions to MediaPlayer
https://bugs.webkit.org/show_bug.cgi?id=123353

Reviewed by Eric Carlson.

Add methods to MediaPlayer to allow it to select the correct MediaPlayerFactory
when attempting to load a MediaSource URL.

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::addSourceBuffer):
(WebCore::MediaSource::isTypeSupported):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::loadResource):
(WebCore::HTMLMediaElement::canPlayType):
(WebCore::HTMLMediaElement::selectNextSourceChild):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::load):
(WebCore::MediaPlayer::supportsType):

  • platform/graphics/MediaPlayer.h:
  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createDocument):

Remove the isSupportedMediaSourceMIMEType() method:

  • platform/MIMETypeRegistry.h:
  • platform/efl/MIMETypeRegistryEfl.cpp:
  • platform/mac/MIMETypeRegistryMac.mm:
11:04 AM Changeset in webkit [158290] by ap@apple.com
  • 2 edits in trunk/Tools

Mavericks: 128 tests are failing due to pixel differences
https://bugs.webkit.org/show_bug.cgi?id=123488

Reviewed by Simon Fraser.

Apple font preferences cannot be fully reset after they've been read, so we
need to set them using CFPreferences before initializing NSApplication.

In theory, this should be an issue on WebKit2 as well, but somehow it doesn't
appear to be. I guess we can figure out the reasons for this difference when/if
any observable problems start to occur.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(setDefaultsToConsistentValuesForTesting): Only set defaults here, move other work
to prepareConsistentTestingEnvironment().
(main): Call setDefaultsToConsistentValuesForTesting before [NSApplication sharedApplication]
(which is unnecessary anyway since NSUserDefaults will implicitly call it, but seems
useful to keep in case we change out approach to defaults again).

11:02 AM Changeset in webkit [158289] by beidson@apple.com
  • 7 edits
    2 moves in trunk/Source/WebCore

Unreviewed. Update NEWS and Versions.m4 for 2.3.1 release.

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-10-29

  • Source/autotools/Versions.m4: Bump version numbers.
11:01 AM Changeset in webkit [158288] by jer.noble@apple.com
  • 10 edits
    9 deletes in trunk

[MSE] Remove legacy Media Source APIs (WebKitMediaSource, WebKitSourceBuffer, WebKitSourceBufferList)
https://bugs.webkit.org/show_bug.cgi?id=123463

Reviewed by Eric Carlson.

Source/WebCore:

No new tests; updated test results.

Remove all reference to WebKitMediaSource, WebKitSourceBuffer, and WebKitSourceBufferList.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.list.am:
  • Modules/mediasource/DOMURLMediaSource.idl:
  • Modules/mediasource/WebKitMediaSource.cpp: Removed.
  • Modules/mediasource/WebKitMediaSource.h: Removed.
  • Modules/mediasource/WebKitMediaSource.idl: Removed.
  • Modules/mediasource/WebKitSourceBuffer.cpp: Removed.
  • Modules/mediasource/WebKitSourceBuffer.h: Removed.
  • Modules/mediasource/WebKitSourceBuffer.idl: Removed.
  • Modules/mediasource/WebKitSourceBufferList.cpp: Removed.
  • Modules/mediasource/WebKitSourceBufferList.h: Removed.
  • Modules/mediasource/WebKitSourceBufferList.idl: Removed.
  • WebCore.xcodeproj/project.pbxproj:
  • dom/EventTargetFactory.in:

LayoutTests:

  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
10:58 AM Changeset in webkit [158287] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Fix PrettyPrinting Tool Load from Saved URL

Reviewed by Timothy Hatcher.

  • Tools/PrettyPrinting/index.html:
10:58 AM Changeset in webkit [158286] by mhahnenberg@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

JSExport doesn't support constructors
https://bugs.webkit.org/show_bug.cgi?id=123380

Reviewed by Geoffrey Garen.

Support for constructor-style callbacks for the Objective-C API to JSC is currently limited to
Objective-C blocks. Any clients who try to call the constructor of a JSExport-ed Objective-C class
are met with a type error stating that it cannot be called as a constructor.

It would be nice to expand JSExport's functionality to support this idiom. It is a natural
extension to JSExport and would increase the expressiveness and simplicity in both Objective-C and
JavaScript client code.

The way we'll do this is to expand the capabilities of ObjCCallbackFunction and associated classes.
Instead of constructing a normal C API object for the constructor, we'll instead allocate a full-blown
ObjCCallbackFunction object which can already properly handle being invoked as a constructor.

  • API/JSWrapperMap.mm:

(copyMethodsToObject):
(allocateConstructorForCustomClass):
(-[JSObjCClassInfo allocateConstructorAndPrototypeWithSuperClassInfo:]):
(tryUnwrapObjcObject):

  • API/ObjCCallbackFunction.h:

(JSC::ObjCCallbackFunction::impl):

  • API/ObjCCallbackFunction.mm:

(JSC::ObjCCallbackFunctionImpl::ObjCCallbackFunctionImpl):
(JSC::ObjCCallbackFunctionImpl::wrappedConstructor):
(JSC::ObjCCallbackFunctionImpl::isConstructible):
(JSC::ObjCCallbackFunction::getConstructData):
(JSC::ObjCCallbackFunctionImpl::name):
(JSC::ObjCCallbackFunctionImpl::call):
(objCCallbackFunctionForInvocation):
(objCCallbackFunctionForInit):
(tryUnwrapConstructor):

  • API/tests/testapi.mm:

(-[TextXYZ initWithString:]):
(-[ClassA initWithA:]):
(-[ClassB initWithA:b:]):
(-[ClassC initWithA:]):
(-[ClassC initWithA:b:]):

10:55 AM Changeset in webkit [158285] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Unbreak the release build.

  • rendering/SimpleLineLayoutFunctions.cpp:
10:54 AM Changeset in webkit [158284] by Simon Fraser
  • 2 edits in trunk/LayoutTests

A WebGL test times out sometimes.

  • platform/mac/TestExpectations:
10:53 AM Changeset in webkit [158283] by aestes@apple.com
  • 3 edits in trunk/Tools

Teach the style checker how to handle Objective-C categories and NS_ENUM
https://bugs.webkit.org/show_bug.cgi?id=123482

Reviewed by Dan Bernstein.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_spacing_for_function_call): Allow a space before '(' in a line
starting with @interface or @implementation, since this is defining an
Objective-C category rather than a function.
(check_braces): The opening brace of an NS_ENUM should not be on its
own line.

  • Scripts/webkitpy/style/checkers/cpp_unittest.py: Added unit tests.
10:49 AM Changeset in webkit [158282] by commit-queue@webkit.org
  • 10 edits
    1 add in trunk/Source

[Win] Compile errors when enabling DFG JIT.
https://bugs.webkit.org/show_bug.cgi?id=120998

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-10-30
Reviewed by Brent Fulgham.

Source/JavaScriptCore:

  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Added files.
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.
  • dfg/DFGAllocator.h: Removed scope.
  • dfg/DFGWorklist.cpp: Use new ThreadingOnce class instead of pthread_once.

(JSC::DFG::globalWorklist):

  • heap/DeferGC.h: Link fix, member needs to be public.
  • jit/JITOperationWrappers.h: Added required assembler macros.

Source/WTF:

  • wtf/CompilationThread.cpp: Use new ThreadingOnce class instead of pthread_once.

(WTF::initializeCompilationThreads):

  • wtf/ThreadingOnce.h: Added ThreadingOnce class encapsulating pthread_once functionality.

(WTF::ThreadingOnce::ThreadingOnce):
(WTF::ThreadingOnce::~ThreadingOnce):
(WTF::ThreadingOnce::callOnce):

  • wtf/text/CString.h: Export needed symbols.
10:47 AM Changeset in webkit [158281] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Add result caching for Math.cos
https://bugs.webkit.org/show_bug.cgi?id=123255

Patch by Iago Toral Quiroga <itoral@igalia.com> on 2013-10-30
Reviewed by Brent Fulgham.

  • runtime/MathObject.cpp:

(JSC::mathProtoFuncCos):

  • runtime/VM.h:
10:44 AM Changeset in webkit [158280] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix memory leaks in platform/image-encoders/JPEGImageEncoder.cpp
https://bugs.webkit.org/show_bug.cgi?id=118781

Patch by Liangjun Zeng <lizeng@blackberry.com> on 2013-10-30
Reviewed by Brent Fulgham.

We can find the function "jpeg_finish_compress" call the function "jpeg_abort" at the end.
And the comments of "jpeg_abort" is "Abort processing of a JPEG compression operation,
but don't destroy the object itself". (We can find these in the "jcapimin.c" of jpeg)
So the compression object destroy need be called.
No new tests because this doesn't change functionality.

  • platform/image-encoders/JPEGImageEncoder.cpp:

(WebCore::compressRGBABigEndianToJPEG):

10:40 AM Changeset in webkit [158279] by Antti Koivisto
  • 10 edits in trunk/Source

Add debug settings for simple line layout
https://bugs.webkit.org/show_bug.cgi?id=123514

Source/WebCore:

Reviewed by Andreas Kling.

  • WebCore.exp.in:
  • page/Settings.in:


Add simpleLineLayoutEnabled and simpleLineLayoutDebugBordersEnabled.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

  • rendering/SimpleLineLayoutFunctions.cpp:

(WebCore::SimpleLineLayout::paintDebugBorders):
(WebCore::SimpleLineLayout::paintFlow):

Source/WebKit2:

Reviewed by Andreas Kling.

Expose debug settings.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetSimpleLineLayoutEnabled):
(WKPreferencesGetSimpleLineLayoutEnabled):
(WKPreferencesSetSimpleLineLayoutDebugBordersEnabled):
(WKPreferencesGetSimpleLineLayoutDebugBordersEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

10:33 AM Changeset in webkit [158278] by Patrick Gansterer
  • 2 edits in trunk/Source/WebKit/win

[WIN] Add missing USE(CFNETWORK) to WebError.h
https://bugs.webkit.org/show_bug.cgi?id=121834

Reviewed by Brent Fulgham.

WebError.cpp uses USE(CFNETWORK), so add it to the header too.

  • WebError.h:
10:31 AM Changeset in webkit [158277] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Curl] Cookies are sometimes not set in download request.
https://bugs.webkit.org/show_bug.cgi?id=123445

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-10-30
Reviewed by Brent Fulgham.

Sometimes cookies are not set in the download request because the cookie file cannot be opened,
it's already been opened by the ResourceHandleManager for writing.
This can be fixed by getting the cookie list from the share handle in ResourceHandleManager instead.
This will also improve performance, as there is no need to read and parse the cookie file for each download.

  • platform/network/curl/CurlDownload.cpp:

(WebCore::CurlDownload::init): Use share handle to get cookie list.

10:29 AM Changeset in webkit [158276] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/win

[Curl][Win] Suggested filename of download is not url decoded.
https://bugs.webkit.org/show_bug.cgi?id=123511

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-10-30
Reviewed by Brent Fulgham.

  • WebDownloadCurl.cpp:

(WebDownload::didReceiveResponse): Url decode suggested filename.

10:21 AM Changeset in webkit [158275] by ChangSeok Oh
  • 3 edits in trunk/Source/WebCore

Unguard Element::childShouldCreateRenderer
https://bugs.webkit.org/show_bug.cgi?id=123496

Reviewed by Andreas Kling.

Make Element::childShouldCreateRenderer normally accessible. Guarding it with flags
just leaves potential build issues.

No new tests since no functionality changed.

  • dom/Element.cpp:

(WebCore::Element::childShouldCreateRenderer):

  • dom/Element.h:
9:44 AM Changeset in webkit [158274] by andersca@apple.com
  • 2 edits
    4 adds in trunk/Source/WebKit2

Add stubbed out WKRemoteObjectRegistry class
https://bugs.webkit.org/show_bug.cgi?id=123512

Reviewed by Andreas Kling.

Also add a WKRemoteObjectInterface class that represents a remote object interface.

  • Shared/API/Cocoa/WKRemoteObjectInterface.h: Added.
  • Shared/API/Cocoa/WKRemoteObjectInterface.mm: Added.

(-[WKRemoteObjectInterface initWithProtocol:identifier:]):
(+[WKRemoteObjectInterface remoteObjectInterfaceWithProtocol:]):

  • Shared/API/Cocoa/WKRemoteObjectRegistry.h: Added.
  • Shared/API/Cocoa/WKRemoteObjectRegistry.mm: Added.

(-[WKRemoteObjectRegistry registerExportedObject:interface:]):
(-[WKRemoteObjectRegistry unregisterExportedObject:interface:]):
(-[WKRemoteObjectRegistry remoteObjectProxyWithInterface:]):

  • WebKit2.xcodeproj/project.pbxproj:
9:06 AM Changeset in webkit [158273] by commit-queue@webkit.org
  • 6 edits in trunk

[EFL] accessibility/textarea-selected-text-range.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112016

Patch by Robert Plociennik <r.plociennik@samsung.com> on 2013-10-30
Reviewed by Mario Sanchez Prada.

Tools:

Provided implementation for AccessibilityUIElement::selectedTextRange() and
AccessibilityUIElement::setSelectedTextRange().

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::selectedTextRange): Implemented.
(AccessibilityUIElement::setSelectedTextRange): Implemented

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::selectedTextRange): Implemented.
(WTR::AccessibilityUIElement::setSelectedTextRange): Implemented.

LayoutTests:

Removed failure expectations.

  • platform/efl-wk1/TestExpectations: The test is no longer failing.
  • platform/efl-wk2/TestExpectations: The test is no longer failing.
9:05 AM Changeset in webkit [158272] by alex.christensen@flexsim.com
  • 6 edits in trunk/Source

Disabled JIT on Win64.
https://bugs.webkit.org/show_bug.cgi?id=122472

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Disabled building JITStubsMSVC64.

Source/WebKit:

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

Added missing 64-bit linker symbol.

Source/WTF:

  • wtf/Platform.h:

Disabled JIT on Win64.

9:01 AM Changeset in webkit [158271] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk/LayoutTests

[EFL] accessibility/svg-remote-element.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112013

Unreviewed EFL gardening. Passes after r158267.

Patch by Robert Plociennik <r.plociennik@samsung.com> on 2013-10-30

  • platform/efl-wk1/TestExpectations: The test is no longer failing.
  • platform/efl-wk2/TestExpectations: The test is no longer failing.
  • platform/efl/accessibility/svg-remote-element-expected.txt: Added.
8:53 AM Changeset in webkit [158270] by jer.noble@apple.com
  • 12 edits in trunk/Source/WebCore

[MSE] Make MediaSourcePrivate, SourceBufferPrivate classes RefCounted.
https://bugs.webkit.org/show_bug.cgi?id=123350

Reviewed by Darin Adler.

Make the MediaSourcePrivate and SourceBufferPrivate classes RefCounted so that
they can be referenced both by MediaSource/SourceBuffer, and by the MediaPlayerPrivate
which creates them.

Change OwnPtr -> RefPtr everywhere:

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::addSourceBuffer):

  • Modules/mediasource/MediaSourceBase.cpp:

(WebCore::MediaSourceBase::setPrivateAndOpen):
(WebCore::MediaSourceBase::createSourceBufferPrivate):

  • Modules/mediasource/MediaSourceBase.h:
  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::create):
(WebCore::SourceBuffer::SourceBuffer):

  • Modules/mediasource/SourceBuffer.h:
  • Modules/mediasource/WebKitMediaSource.cpp:

(WebCore::WebKitMediaSource::addSourceBuffer):

  • Modules/mediasource/WebKitSourceBuffer.cpp:

(WebCore::WebKitSourceBuffer::create):
(WebCore::WebKitSourceBuffer::WebKitSourceBuffer):

  • Modules/mediasource/WebKitSourceBuffer.h:
  • html/HTMLMediaSource.h:
  • platform/graphics/MediaSourcePrivate.h:
  • platform/graphics/SourceBufferPrivate.h:

(WebCore::SourceBufferPrivate::SourceBufferPrivate):

8:50 AM Changeset in webkit [158269] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebCore

Remove unused runtime enabled
https://bugs.webkit.org/show_bug.cgi?id=123509

Reviewed by Anders Carlsson.

Some of the runtime enabled features were only ever used by the V8 bindings
and can be removed as no WebKit code sets or reads them.

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):

  • bindings/generic/RuntimeEnabledFeatures.h:
7:12 AM Changeset in webkit [158268] by Antti Koivisto
  • 7 edits in trunk/Source/WebCore

Make SimpleLineLayout::Layout a class
https://bugs.webkit.org/show_bug.cgi?id=123508

Reviewed by Mario Sanchez Prada.

Improve encapsulation.

5:34 AM Changeset in webkit [158267] by commit-queue@webkit.org
  • 6 edits
    1 add in trunk

[GTK] accessibility/svg-remote-element.html is failing
https://bugs.webkit.org/show_bug.cgi?id=101185

Patch by Robert Plociennik <r.plociennik@samsung.com> on 2013-10-30
Reviewed by Chris Fleizach.

Tools:

Implemented missing methods by mimicing existing functionality in
AccessibilityObject::clickPoint() using available ATK API.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::clickPointX): Implemented.
(AccessibilityUIElement::clickPointY): Implemented.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::clickPointX): Implemented.
(WTR::AccessibilityUIElement::clickPointY): Implemented.

LayoutTests:

Provided new test expectations since resulting discrepancies are believed to be
platform related.

  • platform/gtk-wk2/TestExpectations: The test is no longer failing.
  • platform/gtk/accessibility/svg-remote-element-expected.txt: Added.
  • platform/gtk/TestExpectations: The test is no longer failing.
4:31 AM Changeset in webkit [158266] by commit-queue@webkit.org
  • 11 edits
    8 deletes in trunk/Tools

Removed Windows platform configurations from WebKitTestRunner.
https://bugs.webkit.org/show_bug.cgi?id=123152

Patch by Tamas Gergely <gertom@inf.u-szeged.hu> on 2013-10-30
Reviewed by Csaba Osztrogonác.

Removed Windows specific parts from the source files, Windows specific
subdirectory (win) and Visual Studio property files from the WebKitTestRunner,
as the platform is no longer supported by this tool.

  • WebKitTestRunner/Configurations/InjectedBundleCFLite.vsprops: Removed.
  • WebKitTestRunner/Configurations/InjectedBundleCommon.vsprops: Removed.
  • WebKitTestRunner/Configurations/InjectedBundleCoreFoundation.vsprops: Removed.
  • WebKitTestRunner/Configurations/WebKitTestRunnerCFLite.vsprops: Removed.
  • WebKitTestRunner/Configurations/WebKitTestRunnerCommon.vsprops: Removed.
  • WebKitTestRunner/Configurations/WebKitTestRunnerCoreFoundation.vsprops: Removed.
  • WebKitTestRunner/Configurations/WebKitTestRunnerCoreGraphics.vsprops: Removed.
  • WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:

(WTR::AccessibilityController::rootElement):
(WTR::AccessibilityController::focusedElement):

  • WebKitTestRunner/InjectedBundle/AccessibilityController.h:
  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp:
  • WebKitTestRunner/InjectedBundle/TestRunner.h:
  • WebKitTestRunner/PlatformWebView.h:
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::createWKURL):

  • WebKitTestRunner/cg/TestInvocationCG.cpp:
  • WebKitTestRunner/config.h:
  • WebKitTestRunner/win/InjectedBundle.vcproj: Removed.
  • WebKitTestRunner/win/InjectedBundleDebug.vsprops: Removed.
  • WebKitTestRunner/win/InjectedBundleDebugAll.vsprops: Removed.
  • WebKitTestRunner/win/InjectedBundleDebugCairoCFLite.vsprops: Removed.
  • WebKitTestRunner/win/InjectedBundleGenerated.vcproj: Removed.
  • WebKitTestRunner/win/InjectedBundleGeneratedCommon.vsprops: Removed.
  • WebKitTestRunner/win/InjectedBundlePostBuild.cmd: Removed.
  • WebKitTestRunner/win/InjectedBundlePreBuild.cmd: Removed.
  • WebKitTestRunner/win/InjectedBundleProduction.vsprops: Removed.
  • WebKitTestRunner/win/InjectedBundleRelease.vsprops: Removed.
  • WebKitTestRunner/win/InjectedBundleReleaseCairoCFLite.vsprops: Removed.
  • WebKitTestRunner/win/PlatformWebViewWin.cpp: Removed.
  • WebKitTestRunner/win/TestControllerWin.cpp: Removed.
  • WebKitTestRunner/win/TestInvocationWin.cpp: Removed.
  • WebKitTestRunner/win/WebKitTestRunner.vcproj: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerDebug.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerDebugAll.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerDebugCairoCFLite.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerLauncher.vcproj: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerLauncherCommon.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerLauncherDebug.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerLauncherDebugAll.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerLauncherDebugCairoCFLite.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerLauncherProduction.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerLauncherRelease.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerLauncherReleaseCairoCFLite.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerPostBuild.cmd: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerPreBuild.cmd: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerProduction.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerRelease.vsprops: Removed.
  • WebKitTestRunner/win/WebKitTestRunnerReleaseCairoCFLite.vsprops: Removed.
  • WebKitTestRunner/win/build-generated-files.sh: Removed.
  • WebKitTestRunner/win/main.cpp: Removed.
4:16 AM Changeset in webkit [158265] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

REGRESSION(r158214): It made zillion tests crash on GTK and EFL
https://bugs.webkit.org/show_bug.cgi?id=123505

  • rendering/SimpleLineLayout.h: Add WTF_MAKE_FAST_ALLOCATED
3:39 AM Changeset in webkit [158264] by commit-queue@webkit.org
  • 1 edit
    1 delete in trunk/LayoutTests

[EFL] Remove efl/accessibility/image-map1-expected.txt after r158104
https://bugs.webkit.org/show_bug.cgi?id=123504

Unreviewed EFL gardening.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-10-30

  • platform/efl/accessibility/image-map1-expected.txt: Removed.
1:50 AM Changeset in webkit [158263] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Revert r158259 for EFL and GTK+. They're still failing everywhere according to the flakiness dashboard.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
1:45 AM Changeset in webkit [158262] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Revert r158259 for Mac. They're definitely failing on Mac.

  • platform/mac/TestExpectations:
1:40 AM Changeset in webkit [158261] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Add more test expectations for the bug 121452.

fast/frames/lots-of-objects.html is failing on Mavericks WebKit2 builders in addition to Debug builders.

fast/frames/lots-of-iframes.html is also failing on the exactly same set of builders.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
1:31 AM Changeset in webkit [158260] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] webkit_web_context_allow_tls_certificate_for_host doc is missing Since tag
https://bugs.webkit.org/show_bug.cgi?id=123499

Reviewed by Philippe Normand.

  • UIProcess/API/gtk/WebKitWebContext.cpp: Add Since: 2.4.
1:17 AM Changeset in webkit [158259] by svillar@igalia.com
  • 4 edits in trunk/LayoutTests

Unreviewed. Removed some grid layout tests that are passing now.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
1:04 AM Changeset in webkit [158258] by Philippe Normand
  • 4 edits in trunk/Source/WebCore

[GStreamer] Store video-sink in a bin
https://bugs.webkit.org/show_bug.cgi?id=122831

Reviewed by Gustavo Noronha Silva.

For the upcoming mediastream playback support the player will
handle a non-playbin-based pipeline that will require a slightly
different video rendering chain. This patch generalizes the
encapsulation of the video sink in a bin, just like the audio sink
case.

No new tests, no change in functionality.

Oct 29, 2013:

11:58 PM Changeset in webkit [158257] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

More Mavericks specific test expectation updates.

  • platform/mac/TestExpectations:
11:53 PM Changeset in webkit [158256] by ap@apple.com
  • 9 edits in trunk

Result of focus-option-control-on-page.html depends on system preferences
https://bugs.webkit.org/show_bug.cgi?id=123304

Reviewed by Simon Fraser.

Source/WebKit/mac:

  • WebView/WebView.mm: (-[WebView _retrieveKeyboardUIModeFromPreferences:]):

Read the preference from its correct domain. This doesn't affect behavior in practice
and isn't part of the fix, but it's a good opportunity to correct this code.

Source/WebKit2:

  • UIProcess/mac/WKFullKeyboardAccessWatcher.mm:

(-[WKFullKeyboardAccessWatcher retrieveKeyboardUIModeFromPreferences:]):
Read the preference from its correct domain. This doesn't affect behavior in practice
and isn't part of the fix, but it's a good opportunity to correct this code.

Tools:

  • DumpRenderTree/mac/DumpRenderTree.mm: (setDefaultsToConsistentValuesForTesting):

Override a preference that WebKit reads to decide what Tab does, so that current
user default doesn't affect tests.

  • WebKitTestRunner/mac/main.mm: (setDefaultsToConsistentValuesForTesting):

Ditto.

LayoutTests:

  • platform/mac/TestExpectations: Remove Pass/Failure expectations, this test

should always pass now.

11:03 PM Changeset in webkit [158255] by fpizlo@apple.com
  • 3 edits in trunk/Tools

It should be possible to specify extra tests to run-javascriptcore-tests
https://bugs.webkit.org/show_bug.cgi?id=123495

Reviewed by Oliver Hunt.

This adds two ways to specify additional tests: the option --extra-tests=<blah>, and
the environment variable EXTRA_JSC_TESTS.

Those two values (the command-line option and the environment variable) are passed
as extra arguments to run-jsc-stress-tests.

To make this extra super useful, run-jsc-stress-tests now allows yaml configuration
files to be recursive: if a "- collection:" line is found, the string is handled
just as if it was a command-line argument. This allows you to use --extra-tests=file
where file contains a bunch of "- collection:" lines, and this is equivalent to each
of those lines being a command-line argument.

  • Scripts/run-javascriptcore-tests:
  • Scripts/run-jsc-stress-tests:
10:39 PM Changeset in webkit [158254] by rniwa@webkit.org
  • 11 edits in trunk

REGRESSION(r154614): Opening and closing a picture on Facebook resets scroll position
https://bugs.webkit.org/show_bug.cgi?id=122882

Reviewed by Anders Carlsson.

Source/WebCore:

scrollLeft and scrollTop have to continue to function in the strict mode for the Web compatiblity.
In particular, www.facebook.com and build.webkit.org depend on this behavior as of October 29th, 2013.

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::scrollLeft):
(WebCore::HTMLBodyElement::setScrollLeft):
(WebCore::HTMLBodyElement::scrollTop):
(WebCore::HTMLBodyElement::setScrollTop):

LayoutTests:

  • fast/dom/Element/body-scrollLeft-expected.txt:
  • fast/dom/Element/body-scrollLeft.html:
  • fast/dom/Element/body-scrollTop-expected.txt:
  • fast/dom/Element/body-scrollTop.html:
  • fast/dom/Element/scrollLeft-expected.txt:
  • fast/dom/Element/scrollLeft.html:
  • fast/dom/Element/scrollTop-expected.txt:
  • fast/dom/Element/scrollTop.html:
10:33 PM Changeset in webkit [158253] by beidson@apple.com
  • 7 edits
    4 moves in trunk/Source/WebCore

IDBTransactionBackend should be cross platform
https://bugs.webkit.org/show_bug.cgi?id=123449

Reviewed by Beth Dakin.

  • Rename IDBTransactionBackendLevelDB to IDBTransactionBackendImpl
  • Rename IDBTransactionBackendLevelDBOperations to IDBTransactionBackendOperations
  • Move their files from the leveldb subdirectory to the indexeddb directory
  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • Modules/indexeddb/IDBTransactionBackendImpl.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp.
  • Modules/indexeddb/IDBTransactionBackendImpl.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h.
  • Modules/indexeddb/IDBTransactionBackendOperations.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp.
  • Modules/indexeddb/IDBTransactionBackendOperations.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h.
  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:

(WebCore::IDBFactoryBackendLevelDB::maybeCreateTransactionBackend):

10:15 PM Changeset in webkit [158252] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Modernize DatasetDOMStringMap and ClassList a bit
https://bugs.webkit.org/show_bug.cgi?id=123491

Patch by Sam Weinig <sam@webkit.org> on 2013-10-29
Reviewed by Andreas Kling.

  • dom/DatasetDOMStringMap.cpp:
  • dom/DatasetDOMStringMap.h:
  • dom/Element.cpp:
  • dom/ElementRareData.h:
  • html/ClassList.cpp:
  • html/ClassList.h:

Pass the owner Element by reference and store in a std::unique_ptr.

9:34 PM Changeset in webkit [158251] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Attempted build-fix after http://trac.webkit.org/changeset/158234

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:

(WebCore::IDBBackingStoreLevelDB::createBackingStoreTransaction): Implement this!

9:15 PM Changeset in webkit [158250] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

ElementData construction helpers should return PassRef.
<https://webkit.org/b/123487>

Make functions that create new ElementData objects return appropriate
PassRef pointers instead of PassRefPtr.

Reviewed by Anders Carlsson.

8:57 PM Changeset in webkit [158249] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

GTK+ build fix attempt after r158220.

  • GNUmakefile.list.am:
8:53 PM Changeset in webkit [158248] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mavericks test expectation, tracked by bugs 123489 and 123490.

  • platform/mac/TestExpectations:
8:52 PM Changeset in webkit [158247] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Add Mavericks builders to the old flakiness dashboard.

  • TestResultServer/static-dashboards/builders.jsonp:
  • TestResultServer/static-dashboards/flakiness_dashboard.js:
8:11 PM Changeset in webkit [158246] by beidson@apple.com
  • 18 edits in trunk/Source

Move IDBTransactionBackendLevelDB to generic IDBBackingStoreInterface
https://bugs.webkit.org/show_bug.cgi?id=123483

Reviewed by Andreas Kling.

Source/WebCore:

  • Modules/indexeddb/IDBCursorBackendInterface.h:
  • Modules/indexeddb/IDBDatabaseBackendImpl.h:
  • Modules/indexeddb/IDBDatabaseBackendInterface.h:
  • Modules/indexeddb/IDBFactoryBackendInterface.h:
  • Modules/indexeddb/IDBTransactionBackendInterface.h:
  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:

(WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):

  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:

(WebCore::IDBCursorBackendLevelDB::create):

  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:

(WebCore::IDBFactoryBackendLevelDB::createCursorBackend):

  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:

(WebCore::IDBTransactionBackendLevelDB::registerOpenCursor):
(WebCore::IDBTransactionBackendLevelDB::unregisterOpenCursor):
(WebCore::IDBTransactionBackendLevelDB::closeOpenCursors):
(WebCore::IDBTransactionBackendLevelDB::createCursorBackend):

  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
  • WebCore.xcodeproj/project.pbxproj: Export a required header.

Source/WebKit2:

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:

(WebKit::WebIDBFactoryBackend::createCursorBackend): Stubbed out.

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
  • WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.cpp:

(WebKit::WebProcessIDBDatabaseBackend::factoryBackend): Stubbed out.

  • WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h:
8:05 PM Changeset in webkit [158245] by akling@apple.com
  • 4 edits in trunk/Source

StringImpl::isolatedCopy() should return PassRef.
<https://webkit.org/b/123484>

Make isolatedCopy() return a PassRef<StringImpl>.

Reviewed by Anders Carlsson.

7:40 PM Changeset in webkit [158244] by Seokju Kwon
  • 2 edits in trunk/Source/WebCore

Remove mutable keyword from member variables of XMLHttpRequest
https://bugs.webkit.org/show_bug.cgi?id=123481

Reviewed by Andreas Kling.

No new tests, no change in functionality.

  • xml/XMLHttpRequest.h: Remove mutable keyword as these are no longer used in const functions.
6:51 PM Changeset in webkit [158243] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebCore

Underline bounds cannot be queried before underline itself is drawn
https://bugs.webkit.org/show_bug.cgi?id=123310

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-10-29
Reviewed by Simon Fraser

GraphicsContext's drawLineForText function is used to draw underlines,
strikethroughs, and overlines. Before drawing the line, this function
modifies the bounds given to it in order to make underlines crisp. However,
this means that it is impossible to know where an underline will be drawn
before drawing it. This patch pulls out this adjustment computation into
InlineTextBox, then passes the result to drawLineForText.

Because there should be no observable difference, no tests need to be updated.

  • platform/graphics/GraphicsContext.h: Changing the signature of drawLineForText

so it can accept bounds from our helper function

  • platform/graphics/blackberry/PathBlackBerry.cpp:

(WebCore::GraphicsContext::drawLineForText): Update to work with new
signature of drawLineForText

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::drawLineForText): Ditto

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::drawLineForText): Ditto

  • platform/graphics/wince/GraphicsContextWinCE.cpp:

(WebCore::GraphicsContext::drawLineForText): Ditto

  • platform/win/WebCoreTextRenderer.cpp:

(WebCore::doDrawTextAtPoint): Update the last call site of drawLineForText

  • rendering/InlineTextBox.cpp:

(WebCore::computeBoundsForUnderline): Pure function that computes the adjusted
bounds of the underline about to be drawn
(WebCore::drawLineForText): calls computeBoundsForUnderline and then
GraphicsContext::drawLineForText
(WebCore::InlineTextBox::paintDecoration): Use new drawLineForText function
(WebCore::InlineTextBox::paintCompositionUnderline): Ditto

5:58 PM Changeset in webkit [158242] by Brent Fulgham
  • 3 edits in trunk/LayoutTests

REGRESSION(r158198): editing/execCommand/insert-list-xml.xhtml fails
https://bugs.webkit.org/show_bug.cgi?id=123460

Reviewed by Ryosuke Niwa.

The original version of this test used a MathML document root,
and attempted to add HTML content to prove that a bad cast would
not be encountered when manipulating the MathML document via
JavaScript.

r158198 broke the test, because it enforced the requirements that
MathML nodes not generate renderers for non-MathML children.

This patch revises the test to use an SVG document, which does
permit child HTML nodes.

  • TestExpectations: Remove temporary exclusion landed in r158216.
  • editing/execCommand/insert-list-xml-expected.txt:
  • editing/execCommand/insert-list-xml.xhtml:
5:52 PM Changeset in webkit [158241] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Mountain Lion rebaseline after r158231.

  • platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt:
5:25 PM Changeset in webkit [158240] by Seokju Kwon
  • 2 edits in trunk/Tools

Fix memory leak in Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp
https://bugs.webkit.org/show_bug.cgi?id=123478

Reviewed by Anders Carlsson.

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(NPP_Destroy): Add a missing free() for 'obj->evaluateScriptOnMouseDownOrKeyDown'.

4:33 PM Changeset in webkit [158239] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Beef up CryptoKey
https://bugs.webkit.org/show_bug.cgi?id=123462

Fix a mismerge, remove duplicate CryptoKeyType declaration.

  • crypto/CryptoKey.h:
4:19 PM Changeset in webkit [158238] by Lucas Forschler
  • 2 edits in trunk/Tools

Move the SEO bots from testers to archivers.

Unreviewed.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
4:15 PM Changeset in webkit [158237] by msaboff@apple.com
  • 23 edits in trunk

Change local variable register allocation to start at offset -1
https://bugs.webkit.org/show_bug.cgi?id=123182

Reviewed by Geoffrey Garen.

Adjusted the virtual register mapping down by one slot. Reduced
the CallFrame header slots offsets by one. They now start at 0.
Changed arity fixup to no longer skip passed register slot 0 as this
is now part of the CallFrame header.

  • bytecode/VirtualRegister.h:

(JSC::operandIsLocal):
(JSC::operandIsArgument):
(JSC::VirtualRegister::localToOperand):
(JSC::VirtualRegister::operandToLocal):

Adjusted functions for shift in mapping from local to register offset.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::findArgumentPositionForLocal):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGVariableEventStream.cpp:

(JSC::DFG::VariableEventStream::reconstruct):

  • dfg/DFGVirtualRegisterAllocationPhase.cpp:

(JSC::DFG::VirtualRegisterAllocationPhase::run):

  • interpreter/CallFrame.h:

(JSC::ExecState::frameExtent):
(JSC::ExecState::offsetFor):

  • interpreter/Interpreter.cpp:

(JSC::loadVarargs):
(JSC::Interpreter::dumpRegisters):
(JSC::Interpreter::executeCall):

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions):

  • llint/LowLevelInterpreter.asm: Adjusted math to accomodate for shift in call frame slots.
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::calleeFrameOffset):

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::frameExtentInternal):

  • interpreter/JSStackInlines.h:

(JSC::JSStack::pushFrame):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JITOperations.cpp:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::llint_slow_path_stack_check):

  • runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::arityCheckFor):

Fixed offset calculation to use VirtualRegister and related calculation instead of
doing seperate calculations.

  • interpreter/JSStack.h: Adjusted CallFrame slots down by one. Did some miscellaneous fixing of dumpRegisters() in the process of testing the fixes.
  • jit/ThunkGenerators.cpp:

(JSC::arityFixup):

Changed arity fixup to no longer skip passed register slot 0 as this
is now part of the CallFrame header.

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm: Changed arity fixup to no longer skip passed register slot 0 as this is now part of the CallFrame header. Updated op_enter processing for the change in local registers.
  • runtime/JSGlobalObject.h: Removed the now unneeded extra slot in the global callframe
4:12 PM Changeset in webkit [158236] by ap@apple.com
  • 5 edits
    5 adds in trunk/Source/WebCore

Beef up CryptoKey
https://bugs.webkit.org/show_bug.cgi?id=123462

Reviewed by Sam Weinig.

  • WebCore.xcodeproj/project.pbxproj: Added new files.
  • crypto/CryptoAlgorithmIdentifier.h: Added an enum with all registered algorithms

(they don't have to be all implemented in any port).

  • crypto/CryptoKey.cpp:

(WebCore::CryptoKey::CryptoKey): Initialize base class variables.
(WebCore::CryptoKey::type): Convert internal representation for bindings use.
(WebCore::CryptoKey::buildAlgorithmDescription): Ditto. This function is supposed
to be called by derived classes before adding other keyes.
(WebCore::CryptoKey::usages): Convert internal representation for bindings use.

  • crypto/CryptoKey.h:

(WebCore::CryptoKey::extractable): Expose for bindings.
(WebCore::CryptoKey::allows): A faster way to check allowed key usage from C++ code.

  • crypto/CryptoKey.idl: Added SkipVTableValidation, because validation doesn't work

with derived classes. Corrected "usages" attribute name.

  • crypto/CryptoKeyFormat.h: Added.
  • crypto/CryptoKeyType.h: Added.
  • crypto/CryptoKeyUsage.h: Added.

Added enums used by CryptoKey.

4:03 PM Changeset in webkit [158235] by Hugo Parente Lima
  • 4 edits
    26 adds in trunk

Adding Nix files in Source/Platform to trunk
https://bugs.webkit.org/show_bug.cgi?id=118331

Reviewed by Benjamin Poulain.

Source/Platform:

Add files part of Nix public API used to implement
backends for some WebKit subsystems on Application side.

  • nix/public/AudioDevice.h: Added.
  • nix/public/Canvas.h: Added.
  • nix/public/Color.h: Added.
  • nix/public/Common.h: Added.
  • nix/public/FFTFrame.h: Added.
  • nix/public/Gamepad.h: Added.
  • nix/public/Gamepads.h: Added.
  • nix/public/MediaPlayer.h: Added.
  • nix/public/MultiChannelPCMData.h: Added.
  • nix/public/Platform.h: Added.
  • nix/public/Rect.h: Added.
  • nix/public/Size.h: Added.
  • nix/public/ThemeEngine.h: Added.
  • nix/src/DefaultWebThemeEngine.cpp: Added.
  • nix/src/DefaultWebThemeEngine.h: Added.
  • nix/src/Platform.cpp: Added.

Source/WebCore:

Add Nix WebAudio implementation that just forward some calls to our API.
This patch is part of the upstream process, tests will be landed by other patches.

  • platform/audio/nix/AudioBusNix.cpp: Added.
  • platform/audio/nix/AudioDestinationNix.cpp: Added.
  • platform/audio/nix/AudioDestinationNix.h: Added.
  • platform/audio/nix/FFTFrameNix.cpp: Added.
  • platform/nix/support/MultiChannelPCMData.cpp: Added.

Tools:

Add a special rule for Nix API files located at Source/Platform/nix.

  • Scripts/webkitpy/style/checker.py:

2013-10-29 Nadav Rotem <nrotem@apple.com>

Add myself as a comitter.
https://bugs.webkit.org/show_bug.cgi?id=123455

Reviewed by Anders Carlsson.

  • Scripts/webkitpy/common/config/contributors.json:
3:52 PM Changeset in webkit [158234] by beidson@apple.com
  • 9 edits in trunk/Source/WebCore

Move IDBTransactionBackendLevelDB to generic IDBBackingStoreInterface::Transaction.
https://bugs.webkit.org/show_bug.cgi?id=123475

Reviewed by Tim Horton.

Currently it's using IDBBackingStoreLevelDB::Transaction, which hinders the goal of:
https://bugs.webkit.org/show_bug.cgi?id=123449 - IDBTransactionBackend should be cross platform

  • Modules/indexeddb/IDBBackingStoreInterface.h:
  • Modules/indexeddb/IDBIndexWriter.cpp:

(WebCore::IDBIndexWriter::writeIndexKeys):
(WebCore::IDBIndexWriter::verifyIndexKeys):
(WebCore::IDBIndexWriter::addingKeyAllowed):

  • Modules/indexeddb/IDBIndexWriter.h:
  • Modules/indexeddb/IDBTransactionBackendInterface.h:
  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:

(WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseIntVersion):
(WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseMetaData):
(WebCore::IDBBackingStoreLevelDB::createObjectStore):
(WebCore::IDBBackingStoreLevelDB::deleteObjectStore):
(WebCore::IDBBackingStoreLevelDB::getRecord):
(WebCore::IDBBackingStoreLevelDB::putRecord):
(WebCore::IDBBackingStoreLevelDB::clearObjectStore):
(WebCore::IDBBackingStoreLevelDB::deleteRecord):
(WebCore::IDBBackingStoreLevelDB::getKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStoreLevelDB::maybeUpdateKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
(WebCore::IDBBackingStoreLevelDB::createIndex):
(WebCore::IDBBackingStoreLevelDB::deleteIndex):
(WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
(WebCore::IDBBackingStoreLevelDB::findKeyInIndex):
(WebCore::IDBBackingStoreLevelDB::getPrimaryKeyViaIndex):
(WebCore::IDBBackingStoreLevelDB::keyExistsInIndex):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexCursor):

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:

(WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
(WebCore::IDBTransactionBackendLevelDB::abort):
(WebCore::IDBTransactionBackendLevelDB::commit):
(WebCore::IDBTransactionBackendLevelDB::taskTimerFired):

  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
3:38 PM Changeset in webkit [158233] by dino@apple.com
  • 3 edits in trunk/Source/WebCore

Move InlineTextBox's text painting to it's own class
https://bugs.webkit.org/show_bug.cgi?id=123355

Reinstate the LGPL license. I incorrectly told Myles to
use another license on these new files.

  • rendering/TextPainter.cpp:
  • rendering/TextPainter.h:
3:29 PM Changeset in webkit [158232] by commit-queue@webkit.org
  • 8 edits
    2 adds in trunk/Source/WebCore

Move InlineTextBox's text painting to it's own class
https://bugs.webkit.org/show_bug.cgi?id=123355

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-10-29
Reviewed by Dean Jackson.

Implementing text-decoration-skip: ink requires drawing text
twice (once regularly, and once with a thick outline into a mask).
This patch pulls out the relevant text drawing code from
InlineTextBox into a new class, called TextPainter, which can be re-used
to draw text multiple times.

Because there should be no observable difference, no tests need to be updated.

  • CMakeLists.txt: Adding new TextPainter class
  • GNUmakefile.list.am: Adding new TextPainter class
  • WebCore.vcxproj/WebCore.vcxproj: Adding new TextPainter class
  • WebCore.vcxproj/WebCore.vcxproj.filters: Adding new TextPainter

class

  • WebCore.xcodeproj/project.pbxproj: Adding new TextPainter class
  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paint): Moving text drawing code from
this function

  • rendering/RenderingAllInOne.cpp: Adding new TextPainter class
  • rendering/TextPainter.cpp: Added.

(WebCore::TextPainter::TextPainter):
(WebCore::drawTextOrEmphasisMarks):
(WebCore::paintTextWithShadows):
(WebCore::rotation):
(WebCore::TextPainter::paintText): New location for text drawing
code
(WebCore::TextPainter::paintTextInContext):

  • rendering/TextPainter.h: Added.

(WebCore::SavedDrawingStateForMask::SavedDrawingStateForMask):
(WebCore::TextPainter::boxRect):

3:03 PM Changeset in webkit [158231] by jer.noble@apple.com
  • 11 edits in trunk

[MSE] [Mac] Enable MediaSource on the Mac
https://bugs.webkit.org/show_bug.cgi?id=122484

Reviewed by Darin Adler.

Source/WebCore:

Enable ENABLE_MEDIA_SOURCE.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

Enable ENABLE_MEDIA_SOURCE.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Enable ENABLE_MEDIA_SOURCE.

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

Enable ENABLE_MEDIA_SOURCE.

  • wtf/FeatureDefines.h:
  • wtf/Platform.h: Force a clean build.

LayoutTests:

  • platform/mac/js/dom/global-constructors-attributes-expected.txt: Added.
2:50 PM Changeset in webkit [158230] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebCore

Build fix after 158223; make TileController use float for scales.

This matches what we do in other places, and fixes the constant
issue with exporting symbols that include CGFloat.

  • WebCore.exp.in:
  • platform/graphics/ca/mac/TileController.h:

(WebCore::TileController::scale):

  • platform/graphics/ca/mac/TileController.mm:

(WebCore::TileController::setScale):

2:45 PM Changeset in webkit [158229] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Try to keep MSVC happy.

  • rendering/SimpleLineLayout.h:

(WebCore::SimpleLineLayout::Run::Run):

2:44 PM Changeset in webkit [158228] by Beth Dakin
  • 3 edits
    2 adds in trunk/Websites/webkit.org

Just updating the sample code for this potential blog post.

  • blog-files/regions/pizza-is-amazing.png: Replaced.
  • blog-files/regions/unstyled-article.png: Replaced.
  • demos/regions/pizza-regions-manifesto-regionstyling.html:
  • demos/regions/pizza-regions-manifesto.html:
2:41 PM Changeset in webkit [158227] by Brent Fulgham
  • 5 edits
    2 copies in branches/safari-537.73-branch/Source/WebCore

Merge r155221.


2013-09-06 Brent Fulgham <Brent Fulgham>

[Windows] StructuredExceptionHandlerSuppressor Causes Bad Interactions with Support Libraries
https://bugs.webkit.org/show_bug.cgi?id=120901

Reviewed by Anders Carlsson.

Change from old "crash on any exception" implementation to a new version that leaves normal
exception handling infrastructure in place for use by support libraries. We check exceptions
and decide whether to abort or not based on the failure type.

  • WebCore.vcxproj/WebCore.vcxproj: Add new implementation files.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • platform/graphics/ca/win/LayerChangesFlusher.cpp: (WebCore::LayerChangesFlusher::hookCallback): Allocate handler struct on stack.
  • platform/win/StructuredExceptionHandlerSuppressor.cpp: Added. (exceptionShouldTerminateProgram): New. (exceptionHandler): New. (WebCore::StructuredExceptionHandlerSuppressor::StructuredExceptionHandlerSuppressor): Moved from header, and updated to add our new exception handler. (WebCore::StructuredExceptionHandlerSuppressor::~StructuredExceptionHandlerSuppressor): Moved from header.
  • platform/win/StructuredExceptionHandlerSuppressor.h: Move implementation of constructor and destructor from header file.
  • platform/win/makesafeseh.asm: Added.
2:30 PM Changeset in webkit [158226] by timothy_horton@apple.com
  • 4 edits in trunk/Source

More correct build fix after 158223.

Only fails in release because it's inline.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
  • WebCore.exp.in:
2:25 PM Changeset in webkit [158225] by Antti Koivisto
  • 4 edits in trunk/Source/WebCore

Use left/right instead of left/width for simple text runs
https://bugs.webkit.org/show_bug.cgi?id=123465

Reviewed by Andreas Kling.

This simplifies the code a bit.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::adjustRunOffsets):
(WebCore::SimpleLineLayout::create):

  • rendering/SimpleLineLayout.h:

(WebCore::SimpleLineLayout::Run::Run):

  • rendering/SimpleLineLayoutResolver.h:

(WebCore::SimpleLineLayout::RunResolver::Run::rect):

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

Try fixing the Mac build (though I have no idea why
this wouldn't fail locally)...

  • WebCore.exp.in:
2:04 PM Changeset in webkit [158223] by timothy_horton@apple.com
  • 14 edits
    2 adds in trunk/Source

Remote Layer Tree: Support tiled drawing and use it for the main frame
https://bugs.webkit.org/show_bug.cgi?id=123422

Reviewed by Simon Fraser.

Add a PlatformCALayerRemote subclass that behaves similarly to
WebTiledBackingLayer, forwarding relevant things (setNeedsDisplay, etc.)
to the TileController which it owns.

Teach the remote layer tree code enough to proxy these layers across,
and paint them in a manner similar to WebSimpleLayer (just calling
straight back to the TileController to paint).

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

(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::dumpChangedLayers):

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::commit):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::setEdgeAntialiasingMask):
Add support for adjusting/encoding/decoding/dumping/applying edgeAntialiasingMask.

(WebKit::RemoteLayerTreeTransaction::dump):
Drive-by fix dumping of created layers to have one layer per line.

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::createLayer):
Create CALayers for Simple, TiledBacking, PageTiledBacking, and TiledBackingTile layers.

  • WebKit2.xcodeproj/project.pbxproj:

Add PlatformCALayerRemoteTiledBacking.{h, cpp}.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::create):
Create a PlatformCALayerRemoteTiledBacking for TiledBacking and PageTiledBacking layers.

(PlatformCALayerRemote::removeAllSublayers):
Fix removeAllSublayers to make a copy of the PlatformCALayerList before
mutating it, to avoid crashes when iterating a mutated list.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:

Definalize PlatformCALayerRemote so we can have PlatformCALayerRemoteTiledBacking.
Note that we will use a tiled backing layer in some cases.
Make the constructor protected, not private, so our subclass can use it.

  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp: Added.

(PlatformCALayerRemoteTiledBacking::PlatformCALayerRemoteTiledBacking):
(PlatformCALayerRemoteTiledBacking::~PlatformCALayerRemoteTiledBacking):
(PlatformCALayerRemoteTiledBacking::setNeedsDisplay):
(PlatformCALayerRemoteTiledBacking::customSublayers):
(PlatformCALayerRemoteTiledBacking::setBounds):
(PlatformCALayerRemoteTiledBacking::isOpaque):
(PlatformCALayerRemoteTiledBacking::setOpaque):
(PlatformCALayerRemoteTiledBacking::acceleratesDrawing):
(PlatformCALayerRemoteTiledBacking::setAcceleratesDrawing):
(PlatformCALayerRemoteTiledBacking::setContentsScale):
(PlatformCALayerRemoteTiledBacking::setBorderWidth):
(PlatformCALayerRemoteTiledBacking::setBorderColor):

  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h: Added.

Add a subclass of PlatformCALayerRemote which forwards operations
to TileController, very similar to what WebTiledBackingLayer does.
It also owns the TileController, and overrides customSublayers() and
tiledBacking() to return the right thing.

  • WebProcess/WebPage/mac/RemoteLayerBackingStore.mm:

(RemoteLayerBackingStore::display):
Teach RemoteLayerBackingStore about how to paint different kinds of layers.
Simple layers and Tile layers will call paintContents directly,
WebLayers will do what WebLayer does and use drawLayerContents.
Other kinds of layers won't paint at all right now.
I would like to centralize this behavior (and get rid of our CALayer
subclasses entirely, moving all that behavior to be shared between Mac,
Windows, and the remote layer tree), but that is a patch for another day.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::shouldUseTiledBackingForFrameView):
Force accelerated compositing on always when using the remote layer tree.
Use a TiledBacking for the main frame.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:

Drive-by OVERRIDE.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
2:04 PM Changeset in webkit [158222] by nrotem@apple.com
  • 2 edits in trunk/Tools

Add myself as a comitter

1:48 PM Changeset in webkit [158221] by Brent Fulgham
  • 4 edits
    1 copy
    1 delete in branches/safari-537.73-branch/Source/WebCore

Merge r155215.

2013-09-06 Brent Fulgham <Brent Fulgham>

[Windows] Unreviewed gardening: Spell 'Suppressor' properly

  • WebCore.vcxproj/WebCore.vcxproj: Change StructuredExceptionHandlerSupressor to StructuredExceptionHandlerSuppressor
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
  • platform/graphics/ca/win/LayerChangesFlusher.cpp: (WebCore::LayerChangesFlusher::hookCallback): Ditto
  • platform/win/StructuredExceptionHandlerSuppressor.h: Copied from platform/win/StructuredExceptionHandlerSupressor.h.
  • platform/win/StructuredExceptionHandlerSupressor.h: Removed.
1:48 PM Changeset in webkit [158220] by eric.carlson@apple.com
  • 33 edits
    10 adds in trunk

[Mac MediaStream] implement AVFoundation backed MediaStreamSource
https://bugs.webkit.org/show_bug.cgi?id=123316

Source/WebCore:

Reviewed by Jer Noble

No new tests, existing tests updated.

  • CMakeLists.txt: Add MediaStreamSourceStates.cpp.
  • Modules/mediastream/MediaSourceStates.cpp:

(WebCore::MediaSourceStates::MediaSourceStates): m_SourceStates -> m_sourceStates.
(WebCore::MediaSourceStates::sourceType): Ditto.
(WebCore::MediaSourceStates::facingMode): Ditto.

  • Modules/mediastream/MediaSourceStates.h: Ditto.
  • Modules/mediastream/MediaSourceStates.idl: Mark some attributes as optional.
  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::addTrack):
(WebCore::MediaStream::removeTrack):
(WebCore::MediaStream::addRemoteSource):
(WebCore::MediaStream::removeRemoteSource):

  • Modules/mediastream/MediaStreamCapabilities.cpp:

(WebCore::MediaStreamCapabilities::sourceType): MediaSourceStates -> MediaStreamSourceStates
(WebCore::MediaStreamCapabilities::facingMode): Ditto.

  • Modules/mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::MediaStreamTrack): Don't observe source changes directly, let the

private track do that. Change private track parameter to ref because it can't be NULL.

(WebCore::MediaStreamTrack::~MediaStreamTrack): Ditto.
(WebCore::MediaStreamTrack::setSource): Pass through to private track.
(WebCore::MediaStreamTrack::stopped): Ditto.
(WebCore::MediaStreamTrack::states): Ditto.
(WebCore::MediaStreamTrack::capabilities): Ditto.
(WebCore::MediaStreamTrack::applyConstraints): Ditto.
(WebCore::MediaStreamTrack::stopProducingData): Ditto.
(WebCore::MediaStreamTrack::trackReadyStateChanged): Renamed from sourceStateChanged. Don't

schedule an 'ended' event if called as a side effect of the stop() method having been
called as per spec.

(WebCore::MediaStreamTrack::trackMutedChanged): Renamed from sourceMutedChanged.
(WebCore::MediaStreamTrack::trackEnabledChanged): Renamed from sourceEnabledChanged.
(WebCore::MediaStreamTrack::stop): Pass through to private track.

  • Modules/mediastream/MediaStreamTrack.h:

(WebCore::MediaStreamTrack::Observer::~Observer): Add virtual destructor.

  • Modules/mediastream/UserMediaRequest.cpp:

(WebCore::UserMediaRequest::callSuccessHandler): Set track, not source, constraints.

  • WebCore.xcodeproj/project.pbxproj: Add new files.
  • bindings/js/JSMediaSourceStatesCustom.cpp:

(WebCore::JSMediaSourceStates::facingMode): Return jsUndefined when the facing mode

is Unknown.

  • platform/mediastream/MediaStreamCenter.h: Remove unused class forward defines and

undefined method prototype.

  • platform/mediastream/MediaStreamDescriptor.cpp:

(WebCore::MediaStreamDescriptor::addSource): ASSERT if source is kind None.
(WebCore::MediaStreamDescriptor::removeSource): Ditto.
(WebCore::MediaStreamDescriptor::MediaStreamDescriptor):

  • platform/mediastream/MediaStreamSource.cpp:

(WebCore::MediaStreamSource::setReadyState): Call startProducingData when readyState changes

to Live, stopProducingData when it changes to Ended.

(WebCore::MediaStreamSource::removeObserver): Call stop() when there are no more observers.
(WebCore::MediaStreamSource::setEnabled): If passed false, do nothing unless all observers

are disabled. Call startProducingData/stopProducingData when becoming enabled/disabled.

(WebCore::MediaStreamSource::stop): Don't bother checking to see if other observers have

stopped, the spec says that track.stop() should permanently stop the track's source.

  • platform/mediastream/MediaStreamSource.h:

(WebCore::MediaStreamSource::name): Make virtual so derived classes can override.
(WebCore::MediaStreamSource::setName): Ditto.
(WebCore::MediaStreamSource::readyState): Ditto.
(WebCore::MediaStreamSource::enabled): Ditto.
(WebCore::MediaStreamSource::muted): Ditto.
(WebCore::MediaStreamSource::setReadonly): Ditto.
(WebCore::MediaStreamSource::remote): Ditto.
(WebCore::MediaStreamSource::setRemote): Ditto.
(WebCore::MediaStreamSource::startProducingData): Added.
(WebCore::MediaStreamSource::stopProducingData): Added.

  • platform/mediastream/MediaStreamSourceCapabilities.h: Move MediaStreamSourceStates to

its own file.

  • platform/mediastream/MediaStreamSourceStates.cpp: Added.

(WebCore::MediaStreamSourceStates::facingMode): Moved here from MediaSourceStates so the

strings are available to platform code.

(WebCore::MediaStreamSourceStates::sourceType): Ditto.

  • platform/mediastream/MediaStreamSourceStates.h: Added, moved from MediaStreamSourceCapabilities.h.
  • platform/mediastream/MediaStreamTrackPrivate.cpp:

(WebCore::MediaStreamTrackPrivate::create): Pass private track to constructor as PassRefPtr.
(WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate): Initialize member variables.
(WebCore::MediaStreamTrackPrivate::~MediaStreamTrackPrivate): Unregister as source observer.
(WebCore::MediaStreamTrackPrivate::setSource): Unregister/register as source observer.
(WebCore::MediaStreamTrackPrivate::setEnabled): Enable/disable source, call client.
(WebCore::MediaStreamTrackPrivate::stop): New. Set readyState to Ended, optionally stop source.
(WebCore::MediaStreamTrackPrivate::setReadyState): Inline the logic from shouldFireTrackReadyStateChanged.
(WebCore::MediaStreamTrackPrivate::constraints): New, passthrough to the source.
(WebCore::MediaStreamTrackPrivate::states): Ditto.
(WebCore::MediaStreamTrackPrivate::type): Ditto.
(WebCore::MediaStreamTrackPrivate::capabilities): Ditto.
(WebCore::MediaStreamTrackPrivate::applyConstraints): Ditto.
(WebCore::MediaStreamTrackPrivate::sourceReadyStateChanged): React to source changes.
(WebCore::MediaStreamTrackPrivate::sourceMutedChanged): Ditto.
(WebCore::MediaStreamTrackPrivate::sourceEnabledChanged): Ditto.
(WebCore::MediaStreamTrackPrivate::observerIsEnabled): Respond to source query.
(WebCore::MediaStreamTrackPrivate::observerIsStopped): Ditto.

  • platform/mediastream/MediaStreamTrackPrivate.h:
  • platform/mediastream/mac/AVAudioCaptureSource.h: Added.
  • platform/mediastream/mac/AVAudioCaptureSource.mm: Added.
  • platform/mediastream/mac/AVCaptureDeviceManager.h: Added.
  • platform/mediastream/mac/AVCaptureDeviceManager.mm: Added.
  • platform/mediastream/mac/AVMediaCaptureSource.h: Added.
  • platform/mediastream/mac/AVMediaCaptureSource.mm: Added.
  • platform/mediastream/mac/AVVideoCaptureSource.h: Added.
  • platform/mediastream/mac/AVVideoCaptureSource.mm: Added.
  • platform/mediastream/mac/MediaStreamCenterMac.cpp:

(WebCore::MediaStreamCenterMac::validateRequestConstraints): Implement.
(WebCore::MediaStreamCenterMac::createMediaStream): Ditto.
(WebCore::MediaStreamCenterMac::getMediaStreamTrackSources): Ditto.

  • platform/mock/MockMediaStreamCenter.cpp:

(WebCore::initializeMockSources): Update for MediaStreamSourceStates changes.
(WebCore::MockMediaStreamCenter::createMediaStream):

LayoutTests:

Reviewed by Jer Noble.

  • fast/mediastream/MediaStream-add-remove-tracks-expected.txt: Updated.
  • fast/mediastream/MediaStream-add-remove-tracks.html: Ditto.
  • fast/mediastream/MediaStreamConstructor-expected.txt: Ditto.
  • fast/mediastream/MediaStreamConstructor.html: Ditto.
  • fast/mediastream/MediaStreamTrack-getSources.html: Remove typo.
  • fast/mediastream/MediaStreamTrack-expected.txt: Updated results.
  • fast/mediastream/MediaStreamTrack.html: Update to test track.stop() behavior.
1:44 PM Changeset in webkit [158219] by zoltan@webkit.org
  • 3 edits
    2 adds in trunk

Source/WebCore: [CSS Regions][CSS Shapes] Layout error when the shape has negative top coordinate and it's applied on the second region
<https://webkit.org/b/123346>

Reviewed by David Hyatt.

We have a layout error when there is a shape applied on the second region, and it has a negative 'top' coordinate.
Since shapeInsideInfo::shapeLogicalTop() can return negative numbers, we need to check for it, when we're positioning
the first line in the region.

Test: fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):

LayoutTests: [CSS Regions][CSS Shapes] Layout error when the shape has negative top coordinate and it's applied on the second region
<http://webkit.org/b/123346>

Reviewed by David Hyatt.

We have a layout error when there is a shape applied on the second region, and it has a negative 'top' coordinate.
Since shapeInsideInfo::shapeLogicalTop() can return negative numbers, we need to check for it, when we're positioning
the first line in the region.

  • fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html: Added.
1:41 PM Changeset in webkit [158218] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Get IDBTransactionBackendLevelDBOperations *almost* ready to go cross platform.
https://bugs.webkit.org/show_bug.cgi?id=123451

Reviewed by NOBODY (My bad, non-reviewed, non-building code got in there)

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::processPendingCalls): Remove the auto line I was trying from review feedback.

1:38 PM Changeset in webkit [158217] by beidson@apple.com
  • 19 edits
    2 adds in trunk/Source

Get IDBTransactionBackendLevelDBOperations *almost* ready to go cross platform.
https://bugs.webkit.org/show_bug.cgi?id=123451

Reviewed by Andreas Kling.

Source/WebCore:

This involves:

  • Splitting out IDBTransactionBackendLevelDB::Operation into its own header
  • Splitting out IDBDatabaseBackendImpl::PendingOpenCall into its own header
  • Reworking the LevelDB Operations to handle the base class IDBTransactionBackendInterface
  • Adding virtual methods in a few of the *Interface classes to support the above
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • Modules/indexeddb/IDBCallbacks.h:
  • Modules/indexeddb/IDBCursorBackendInterface.h:
  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::setIndexKeys):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):
(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:
  • Modules/indexeddb/IDBDatabaseBackendInterface.h:
  • Modules/indexeddb/IDBOperation.h: Added.

(WebCore::IDBOperation::~IDBOperation):

  • Modules/indexeddb/IDBPendingOpenCall.h: Added.

(WebCore::IDBPendingOpenCall::create):
(WebCore::IDBPendingOpenCall::callbacks):
(WebCore::IDBPendingOpenCall::databaseCallbacks):
(WebCore::IDBPendingOpenCall::version):
(WebCore::IDBPendingOpenCall::transactionId):
(WebCore::IDBPendingOpenCall::IDBPendingOpenCall):

  • Modules/indexeddb/IDBRequest.h:
  • Modules/indexeddb/IDBTransactionBackendInterface.h:
  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:

(WebCore::IDBCursorBackendLevelDB::CursorIterationOperation::create):
(WebCore::IDBCursorBackendLevelDB::CursorAdvanceOperation::create):
(WebCore::IDBCursorBackendLevelDB::CursorPrefetchIterationOperation::create):
(WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):

  • Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:

(WebCore::IDBTransactionBackendLevelDB::scheduleTask):
(WebCore::IDBTransactionBackendLevelDB::abort):
(WebCore::IDBTransactionBackendLevelDB::taskTimerFired):
(WebCore::IDBTransactionBackendLevelDB::schedulePutOperation):
(WebCore::IDBTransactionBackendLevelDB::scheduleOpenCursorOperation):
(WebCore::IDBTransactionBackendLevelDB::scheduleCountOperation):
(WebCore::IDBTransactionBackendLevelDB::scheduleDeleteRangeOperation):
(WebCore::IDBTransactionBackendLevelDB::scheduleClearOperation):
(WebCore::IDBTransactionBackendLevelDB::createCursorBackend):

  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:

(WebCore::CreateObjectStoreOperation::perform):
(WebCore::CreateIndexOperation::perform):
(WebCore::CreateIndexAbortOperation::perform):
(WebCore::DeleteIndexOperation::perform):
(WebCore::DeleteIndexAbortOperation::perform):
(WebCore::OpenCursorOperation::perform):
(WebCore::DeleteObjectStoreOperation::perform):
(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::CreateObjectStoreAbortOperation::perform):
(WebCore::DeleteObjectStoreAbortOperation::perform):
(WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):

  • Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:

(WebCore::CreateObjectStoreOperation::create):
(WebCore::CreateObjectStoreOperation::CreateObjectStoreOperation):
(WebCore::DeleteObjectStoreOperation::create):
(WebCore::DeleteObjectStoreOperation::DeleteObjectStoreOperation):
(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::create):
(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::VersionChangeOperation):
(WebCore::CreateObjectStoreAbortOperation::create):
(WebCore::CreateObjectStoreAbortOperation::CreateObjectStoreAbortOperation):
(WebCore::DeleteObjectStoreAbortOperation::create):
(WebCore::DeleteObjectStoreAbortOperation::DeleteObjectStoreAbortOperation):
(WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::create):
(WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::VersionChangeAbortOperation):
(WebCore::CreateIndexOperation::create):
(WebCore::CreateIndexOperation::CreateIndexOperation):
(WebCore::CreateIndexAbortOperation::create):
(WebCore::CreateIndexAbortOperation::CreateIndexAbortOperation):
(WebCore::DeleteIndexOperation::create):
(WebCore::DeleteIndexOperation::DeleteIndexOperation):
(WebCore::DeleteIndexAbortOperation::create):
(WebCore::DeleteIndexAbortOperation::DeleteIndexAbortOperation):
(WebCore::GetOperation::create):
(WebCore::GetOperation::GetOperation):
(WebCore::PutOperation::create):
(WebCore::PutOperation::PutOperation):
(WebCore::SetIndexesReadyOperation::create):
(WebCore::SetIndexesReadyOperation::SetIndexesReadyOperation):
(WebCore::OpenCursorOperation::create):
(WebCore::OpenCursorOperation::OpenCursorOperation):
(WebCore::CountOperation::create):
(WebCore::CountOperation::CountOperation):
(WebCore::DeleteRangeOperation::create):
(WebCore::DeleteRangeOperation::DeleteRangeOperation):
(WebCore::ClearOperation::create):
(WebCore::ClearOperation::ClearOperation):

Source/WebKit2:

Stub out more pure virtual methods.

  • WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.cpp:

(WebKit::WebProcessIDBDatabaseBackend::backingStore):
(WebKit::WebProcessIDBDatabaseBackend::id):
(WebKit::WebProcessIDBDatabaseBackend::addObjectStore):
(WebKit::WebProcessIDBDatabaseBackend::removeObjectStore):
(WebKit::WebProcessIDBDatabaseBackend::addIndex):
(WebKit::WebProcessIDBDatabaseBackend::removeIndex):
(WebKit::WebProcessIDBDatabaseBackend::metadata):
(WebKit::WebProcessIDBDatabaseBackend::setCurrentVersion):
(WebKit::WebProcessIDBDatabaseBackend::hasPendingSecondHalfOpen):
(WebKit::WebProcessIDBDatabaseBackend::setPendingSecondHalfOpen):

  • WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h:
1:27 PM Changeset in webkit [158216] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a failing test expectation on editing/execCommand/insert-list-xml.xhtml
after r158198. The failure is tracked by the bug 123460.

1:26 PM Changeset in webkit [158215] by Brent Fulgham
  • 2 edits in branches/safari-537.73-branch/Source/WebKit/win

Merge r154764

2013-08-28 Brent Fulgham <Brent Fulgham>

[Windows] Provide useful error messages for WebKitErrorDomain errors
https://bugs.webkit.org/show_bug.cgi?id=120428

Reviewed by Anders Carlsson.

  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::cancelledError): Provide text for this error. (WebFrameLoaderClient::blockedError): Hook up WEB_UI_STRING for this error. (WebFrameLoaderClient::cannotShowURLError): Ditto (WebFrameLoaderClient::interruptedForPolicyChangeError): Ditto (WebFrameLoaderClient::cannotShowMIMETypeError): Ditto (WebFrameLoaderClient::fileDoesNotExistError): Provide text for this error. (WebFrameLoaderClient::pluginWillHandleLoadError): Hook up WEB_UI_STRING for this error. (WebFrameLoaderClient::dispatchDidFailToStartPlugin): Ditto. (WebFrameLoaderClient::createJavaAppletWidget): Ditto. (WebFrameLoaderClient::webHistory): Remove blank line above method.
1:25 PM Changeset in webkit [158214] by Antti Koivisto
  • 6 edits in trunk/Source/WebCore

Make SimpleLineLayout::Layout a variable size object
https://bugs.webkit.org/show_bug.cgi?id=123459

Reviewed by Andreas Kling.

Less memory, less indirection.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):
(WebCore::SimpleLineLayout::create):
(WebCore::SimpleLineLayout::Layout::create):
(WebCore::SimpleLineLayout::Layout::Layout):

  • rendering/SimpleLineLayout.h:
  • rendering/SimpleLineLayoutFunctions.cpp:

(WebCore::SimpleLineLayout::hitTestFlow):

  • rendering/SimpleLineLayoutFunctions.h:

(WebCore::SimpleLineLayout::computeFlowFirstLineBaseline):
(WebCore::SimpleLineLayout::computeFlowLastLineBaseline):
(WebCore::SimpleLineLayout::findTextCaretMinimumOffset):
(WebCore::SimpleLineLayout::findTextCaretMaximumOffset):
(WebCore::SimpleLineLayout::containsTextCaretOffset):
(WebCore::SimpleLineLayout::isTextRendered):

  • rendering/SimpleLineLayoutResolver.h:

(WebCore::SimpleLineLayout::RunResolver::end):

1:02 PM Changeset in webkit [158213] by akling@apple.com
  • 3 edits in trunk/Source/WTF

StringImpl::adopt() should return PassRef.
<https://webkit.org/b/123456>

Make the StringImpl::adopt() functions return a PassRef<StringImpl>.

Reviewed by Anders Carlsson.

12:52 PM Changeset in webkit [158212] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

RenderObject::outlineStyleForRepaint() should return a reference.
<https://webkit.org/b/123453>

Kill a FIXME and make outlineStyleForRepaint() return a RenderStyle&.

Reviewed by Antti Koivisto.

12:49 PM Changeset in webkit [158211] by Brent Fulgham
  • 4 edits in branches/safari-537.73-branch/Source/WebKit/win

Merge r154759

2013-08-27 Brent Fulgham <Brent Fulgham>

[Windows] Loader is not properly determining supported MIME types
https://bugs.webkit.org/show_bug.cgi?id=120383

Reviewed by Eric Carlson.

  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::canShowMIMEType): Modify to ask WebView if it can display the media type. Use new helper function to avoid converting a String to BSTR, only to immediatly be converted from BSTR back to String. (WebFrameLoaderClient::canShowMIMETypeAsHTML): Ditto.
  • WebView.cpp: (WebView::canShowMIMEType): Move logic to a new (similarly named) helper function. (WebView::canShowMIMETypeAsHTML): Ditto.
  • WebView.h: Add declaration for two new helper functions.
12:43 PM Changeset in webkit [158210] by barraclough@apple.com
  • 8 edits in trunk/Source/WebKit2

SessionState.h should not include WebBackForwardList.h
https://bugs.webkit.org/show_bug.cgi?id=123454

Reviewed by Geoff Garen.

WebBackForwardList is a UIProcess type, SessionState is in shared code.
Also, WebBackForwardListItemVector should be in WebBackForwardListItem.h, not WebBackForwardList.h
(the vector type is used in the WebProcess, the item header is shared but the list type is in the UIProcess).

  • Shared/SessionState.cpp:
    • fixed includes
  • Shared/SessionState.h:
    • WebBackForwardList.h -> WebBackForwardListItem.h
  • Shared/WebBackForwardListItem.h:
    • Moved WebBackForwardListVector from WebBackForwardList.h
  • Shared/WebPageCreationParameters.h:
    • fixed includes
  • UIProcess/WebBackForwardList.h:
    • Moved WebBackForwardListVector to WebBackForwardListItem.h
  • WebProcess/WebPage/DrawingArea.cpp:
    • fixed includes
  • WebProcess/WebPage/WebPage.cpp:
    • fixed includes
12:41 PM Changeset in webkit [158209] by akling@apple.com
  • 10 edits in trunk/Source/WebCore

Move more of SVG resources cache to using RenderElement.
<https://webkit.org/b/123452>

Make some more RenderSVGResourcesCache methods take RenderElement&
instead of RenderObject*.

Also removed a double hash lookup in removeResourcesFromRenderer().

Reviewed by Antti Koivisto.

12:34 PM Changeset in webkit [158208] by commit-queue@webkit.org
  • 8 edits in trunk/Source/JavaScriptCore

[arm] Fix lots of crashes because of 4th argument register trampling.
https://bugs.webkit.org/show_bug.cgi?id=123421

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-10-29
Reviewed by Michael Saboff.

r3 register is the 4th argument register for ARM and also a scratch
register in the baseline JIT for this architecture. We can use r6
instead, as this used to be the timeoutCheckRegister and it is no
longer used since r148119.

  • assembler/ARMAssembler.h: Temp register is now r6 instead of r3 for ARM.
  • assembler/MacroAssemblerARMv7.h: Temp register is now r6 instead of r3 for ARMv7.
  • jit/GPRInfo.h: Add r3 properly in GPRInfo for ARM.

(JSC::GPRInfo::toRegister):
(JSC::GPRInfo::toIndex):

  • jit/JITStubsARM.h:

(JSC::ctiTrampoline): Remove obsolete timeoutCheckRegister init.

  • jit/JITStubsARMv7.h:

(JSC::ctiTrampoline): Remove obsolete timeoutCheckRegister init.

  • jit/JSInterfaceJIT.h: Remove useless stuff.
  • yarr/YarrJIT.cpp: Use r3 and not the new scratch register r6.

(JSC::Yarr::YarrGenerator::generateEnter): r8 register doesn't need to be saved.
(JSC::Yarr::YarrGenerator::generateReturn):

12:20 PM Changeset in webkit [158207] by Lucas Forschler
  • 2 edits in trunk/Tools

Teach the WebKit2 testers to abort early by setting the shouldAbortEarly property to True.
https://bugs.webkit.org/show_bug.cgi?id=123450

Reviewed by Alexey Proskuryakov.

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

(RunWebKit2Tests.start):

12:03 PM Changeset in webkit [158206] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Mark some colorspace-sensitive tests as possibly passing.

  • platform/mac-wk2/TestExpectations:
12:02 PM Changeset in webkit [158205] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

Fix CPU(ARM_TRADITIONAL) build after r157690.
https://bugs.webkit.org/show_bug.cgi?id=123247

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-10-29
Reviewed by Michael Saboff.

Since r157690, the executableCopy function has been removed from AssemblerBuffer.h
and the copy of executable code occurs in the linkCode function (in LinkBuffer.cpp).
As the constant pool for jumps is updated in the executableCopy function of ARM_TRADITIONAL,
this part of code still needs to be called and absolute jumps must be corrected to anticipate
the copy of the executable code through memcpy.

  • assembler/ARMAssembler.cpp:

(JSC::ARMAssembler::prepareExecutableCopy): Rename executableCopy to prepareExecutableCopy
and correct absolute jump values using the delta between the source and destination buffers.

  • assembler/ARMAssembler.h:
  • assembler/LinkBuffer.cpp:

(JSC::LinkBuffer::linkCode): Call prepareExecutableCopy just before the memcpy.

11:56 AM Changeset in webkit [158204] by Simon Fraser
  • 2 edits in trunk/LayoutTests

xss-DENIED-xsl-document-redirect.xml is an XML file, not html.

  • platform/mac-wk2/TestExpectations:
11:38 AM Changeset in webkit [158203] by commit-queue@webkit.org
  • 6 edits
    3 deletes in trunk/Source/WebCore

Web Inspector: Remove old Inspector.json version files and generators
https://bugs.webkit.org/show_bug.cgi?id=123426

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-10-29
Reviewed by Timothy Hatcher.

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/Inspector-0.1.json: Removed.
  • inspector/Inspector-1.0.json: Removed.
  • inspector/generate-inspector-protocol-version: Removed.
11:26 AM Changeset in webkit [158202] by Simon Fraser
  • 2 edits in trunk/LayoutTests

fast/forms/form-associated-element-removal.html can crash because of an underlying
media bug.

  • platform/mac-wk2/TestExpectations:
11:04 AM Changeset in webkit [158201] by Brent Fulgham
  • 6 edits in branches/safari-537.73-branch/Source

Cleanups to get r154508 to build cleanly in Actinium branch.

10:53 AM Changeset in webkit [158200] by Philippe Normand
  • 13 edits in trunk/Source/WebCore

[GTK] DOM bindings documentation errors
https://bugs.webkit.org/show_bug.cgi?id=123448

Reviewed by Carlos Garcia Campos.

  • bindings/gobject/WebKitDOMCustom.h: Basic documentation for

return types.

  • bindings/scripts/CodeGeneratorGObject.pm:

(GenerateFunction): Generate Returns documentation tag for
non-void return types and provide basic documentation.

  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:

Reset tests results.

  • bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
  • bindings/scripts/test/GObject/WebKitDOMTestException.h:
  • bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
  • bindings/scripts/test/GObject/WebKitDOMattribute.h:
10:47 AM Changeset in webkit [158199] by ap@apple.com
  • 4 edits in trunk/Tools

[Mac] Rationalize user defaults override code
https://bugs.webkit.org/show_bug.cgi?id=123436

Reviewed by Dan Bernstein.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetWebPreferencesToConsistentValues): Renamed from resetDefaultsToConsistentValues,
because this function only resets WebPreferences now.
(setDefaultsToConsistentValuesForTesting): Moved code for setting the defaults
here, because tests never change them, and they only need to be set once, not
before each test. Removed long obsolete workaround for HIToolbox preferences.
Don't call resetWebPreferencesToConsistentValues, because it will be called before
the first test anyway.
(main): Don't set AppleMagnifiedMode here, moved that to setDefaultsToConsistentValuesForTesting.
(resetWebViewToConsistentStateBeforeTesting): Moved TestRunner::setSerializeHTTPLoads
and setlocale calls out of resetWebPreferencesToConsistentValues().
Added AppleAquaAntiAliasingChanged notification that we had in WK2, because it's
also needed in WK1.

  • WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:

(WTR::InjectedBundle::platformInitialize): Use literal syntax for defaults
dictionary.

  • WebKitTestRunner/mac/main.mm:

(setDefaultsToConsistentValuesForTesting): Factored out of main(), and changed to
use NSArgumentDomain for everything.

10:40 AM Changeset in webkit [158198] by Brent Fulgham
  • 11 edits
    2 adds in trunk

Source/WebCore: Invalid cast in WebCore::toRenderMathMLBlock
https://bugs.webkit.org/show_bug.cgi?id=121728
rdar://problem/15046151

Reviewed by Dean Jackson.

Tested by: mathml/arbitrary-markup.html

  • dom/Element.h: Expose childShouldCreateRenderer for

MathML as well as SVG builds.

  • dom/Node.h:

(WebCore::Node::isMathMLElement): Added.

  • mathml/MathMLElement.cpp:

(WebCore::MathMLElement::create): Create as MathML Element.
(WebCore::MathMLElement::childShouldCreateRenderer):
Only allow the child to emit a renderer if it is a
MathML element.

  • mathml/MathMLElement.h:

LayoutTests: [MathML] invalid cast in WebCore::toRenderMathMLBlock
https://bugs.webkit.org/show_bug.cgi?id=121728

Reviewed by Dean Jackson.

  • mathml/arbitrary-markup-expected.txt: Added.
  • mathml/arbitrary-markup.html: Added.
  • mathml/mfenced-root-layer.html: Modified to avoid invalid

use of arbitrary markup inside mfenced element.

  • mathml/mfenced-root-layer-expected.txt: Rebaselined.
10:17 AM Changeset in webkit [158197] by akling@apple.com
  • 8 edits in trunk/Source/WebCore

SVG: applyStrokeStyleToContext should take a RenderElement&.
<https://webkit.org/b/123447>

..and a RenderStyle& too, for that matter.

Reviewed by Anders Carlsson.

  • rendering/svg/SVGRenderSupport.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::applyStrokeStyleToContext):

Have this take a RenderElement& and RenderStyle& instead of
raw pointers. Tweaked a silly-looking loop.

  • rendering/svg/RenderSVGShape.h:
  • rendering/svg/RenderSVGShape.cpp:

Moved BoundingRectStrokeStyleApplier helper class into the
cpp file since it wasn't being used anywhere else.

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::applyResource):

  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::applyResource):

  • rendering/svg/RenderSVGResourceSolidColor.cpp:

(WebCore::RenderSVGResourceSolidColor::applyResource):

Remove ampersands.

10:00 AM Changeset in webkit [158196] by Antti Koivisto
  • 5 edits in trunk/Source/WebCore

Multiple runs per line on simple line path
https://bugs.webkit.org/show_bug.cgi?id=123446

Reviewed by Andreas Kling.

By allowing multiple runs per line we can support text flows with consecutive whitespaces in the middle.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

Remove space test.
The improved test coverage found a few more cases that we need to disallow.

(WebCore::SimpleLineLayout::adjustRunOffsets):

Round the run positions and widths so they match line boxes.
Adjust for text-align.

(WebCore::SimpleLineLayout::create):

Split lines with consecutive spaces into runs.

  • rendering/SimpleLineLayout.h:

(WebCore::SimpleLineLayout::Run::Run):

  • rendering/SimpleLineLayoutFunctions.cpp:

(WebCore::SimpleLineLayout::hitTestFlow):
(WebCore::SimpleLineLayout::collectFlowOverflow):
(WebCore::SimpleLineLayout::computeTextBoundingBox):

  • rendering/SimpleLineLayoutResolver.h:

(WebCore::SimpleLineLayout::RunResolver::Iterator::resolver):
(WebCore::SimpleLineLayout::RunResolver::Iterator::lineIndex):
(WebCore::SimpleLineLayout::RunResolver::Run::Run):
(WebCore::SimpleLineLayout::RunResolver::Run::rect):
(WebCore::SimpleLineLayout::RunResolver::Run::baseline):
(WebCore::SimpleLineLayout::RunResolver::Run::text):
(WebCore::SimpleLineLayout::RunResolver::Run::lineIndex):
(WebCore::SimpleLineLayout::RunResolver::Iterator::Iterator):
(WebCore::SimpleLineLayout::RunResolver::Iterator::operator++):

Removed unnecessary operators.

(WebCore::SimpleLineLayout::RunResolver::Iterator::operator==):
(WebCore::SimpleLineLayout::RunResolver::Iterator::operator!=):
(WebCore::SimpleLineLayout::RunResolver::Iterator::operator*):
(WebCore::SimpleLineLayout::RunResolver::Iterator::simpleRun):
(WebCore::SimpleLineLayout::RunResolver::RunResolver):
(WebCore::SimpleLineLayout::RunResolver::begin):
(WebCore::SimpleLineLayout::RunResolver::end):

Resolver -> RunResolver

(WebCore::SimpleLineLayout::LineResolver::Iterator::Iterator):
(WebCore::SimpleLineLayout::LineResolver::Iterator::operator++):
(WebCore::SimpleLineLayout::LineResolver::Iterator::operator==):
(WebCore::SimpleLineLayout::LineResolver::Iterator::operator!=):
(WebCore::SimpleLineLayout::LineResolver::Iterator::operator*):
(WebCore::SimpleLineLayout::LineResolver::LineResolver):
(WebCore::SimpleLineLayout::LineResolver::begin):
(WebCore::SimpleLineLayout::LineResolver::end):

Add LineResolver around RunResolver. It resolves the line rectangles.

(WebCore::SimpleLineLayout::runResolver):
(WebCore::SimpleLineLayout::lineResolver):

9:40 AM Changeset in webkit [158195] by Chris Fleizach
  • 6 edits
    2 adds in trunk

AX: elements with explicit tabindex should expose AXFocused as writable, since mouse clicks can focus it
https://bugs.webkit.org/show_bug.cgi?id=121335

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Re-order logic that determines if a <span> should appear as an accessible element.
The change is that if an element canSetFocus() it should always be in the AX tree.

Test: accessibility/tabindex-elements-are-accessible.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

LayoutTests:

  • accessibility/tabindex-elements-are-accessible-expected.txt: Added.
  • accessibility/tabindex-elements-are-accessible.html: Added.

New test to ensure that if tabindex is on an element, it is in the AX tree.

  • platform/mac/accessibility/table-with-row-col-of-headers-expected.txt:
  • platform/mac/accessibility/table-with-row-col-of-headers.html:

Update to reflect that if an ignored <table> has a tabindex, then it should at least be an AXGroup

  • platform/mac/accessibility/update-children-when-aria-role-changes.html:

Update so that the <span> elements being used don't have tabindex, which forces them to be in the AX tree,
which changes the output of the test (basically we'd need to query the child of those elements instead).

9:32 AM Changeset in webkit [158194] by Philippe Normand
  • 4 edits in trunk

[GTK] enable media-stream in build-webkit
https://bugs.webkit.org/show_bug.cgi?id=123144

Reviewed by Martin Robinson.

Source/WebCore:

  • GNUmakefile.list.am: Add new MediaStream files to the GTK port build.

Tools:

  • Scripts/webkitperl/FeatureList.pm: Enable media-stream build

for the GTK+ port.

9:01 AM Changeset in webkit [158193] by Chris Fleizach
  • 5 edits in trunk

AX: Webkit does not expose AXRequired on input type=file
https://bugs.webkit.org/show_bug.cgi?id=123376

Reviewed by Mario Sanchez Prada.

Source/WebCore:

File upload buttons should expose AXRequired, since they take an input state.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
(WebCore::AccessibilityNodeObject::alternativeText):

LayoutTests:

Modify existing test case to test for file upload buttons.

  • accessibility/html5-required-attribute-expected.txt:
  • accessibility/html5-required-attribute.html:
5:42 AM Changeset in webkit [158192] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

EFL 32 bit buildbot doesn't work on dashboard
https://bugs.webkit.org/show_bug.cgi?id=123435

Reviewed by Csaba Osztrogonác.

32 bit buildbot doesn't work on dashboard because name is different from buildbot list.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:

(WebKitBuildbot):

3:39 AM Changeset in webkit [158191] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.3.1

Tagging the WebKitGTK+ 2.3.1 release

3:18 AM Changeset in webkit [158190] by zandobersek@gmail.com
  • 1 edit in trunk/Source/WebKit2/ChangeLog

Fix the ChangeLog landed in r158185. The RemoteLayerTreeTextStream class is affected, not RemoteLayerTreeTransaction.

3:12 AM Changeset in webkit [158189] by Carlos Garcia Campos
  • 4 edits in trunk

Unreviewed. Update NEWS and Versions.m4 for 2.3.1 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.3.1.
2:56 AM Changeset in webkit [158188] by jinwoo7.song@samsung.com
  • 4 edits in trunk/Source

Re-enable simple line layout for EFL
https://bugs.webkit.org/show_bug.cgi?id=123402

Reviewed by Antti Koivisto.

Source/WebCore:

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor): 8-bit TextRun support is now enabled for EFL port, so the port
can use the simple line layout.

Source/WTF:

  • wtf/FeatureDefines.h: Enable 8-bit TextRun support for EFL port.
2:32 AM Changeset in webkit [158187] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, follow-up to r158185. Export the required symbol.
This should fix the Mac debug build.

  • WebCore.exp.in:
1:38 AM Changeset in webkit [158186] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Text selected with double-click gets unselected after DOM modification
https://bugs.webkit.org/show_bug.cgi?id=114227

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-10-29
Reviewed by Ryosuke Niwa.

Source/WebCore:

Before this patch when selection is done by double-click (start and base remain
same) and DOM is modified then selection gets vanished. This does not
happen when selection is done by dragging mouse. This happens because
on double-click base and extent remain the same and on DOM
modification we update the selection with base and extent, so we loose
the selection. Since in double-click case start/end contain the
correct selection, same should be used after dom modification to
update selection.

Test: editing/selection/double-click-selection-with-dom-mutation.html

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::textWasReplaced): use start/end to update
selection in case double click selection. Added a check for base !=
extent, if base != extent use base/extent to update the selection
otherwise use start/end with directionality check.

LayoutTests:

New Testcase to test that selection remain intact when selection is
created by double-click and then dom is modified.

  • editing/selection/double-click-selection-with-dom-mutation-expected.txt: Added.
  • editing/selection/double-click-selection-with-dom-mutation.html: Added.

Rebaselined the below test cases.

  • platform/mac/editing/deleting/smart-delete-003-expected.txt:
  • platform/mac/editing/deleting/smart-delete-004-expected.txt:
1:34 AM Changeset in webkit [158185] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed Mac debug build fix after r158183.
Remove the duplicated << overloaded operator from RemoteLayerTreeTransaction for printing out
a given FloatSize object. The RemoteLayerTreeTransaction inherits from TextStream, which already
provides that overloaded operator. Format of the output is a bit different so hopefully nothing
breaks further.

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTextStream::operator<<):

1:23 AM Changeset in webkit [158184] by mihnea@adobe.com
  • 16 edits
    2 copies
    4 moves
    5 adds
    23 deletes in trunk

[CSSRegions] Display anonymous regions in DRT
https://bugs.webkit.org/show_bug.cgi?id=122963

Reviewed by Alexandru Chiculita.

After https://bugs.webkit.org/show_bug.cgi?id=119135, css regions are modelled using an anonymous
RenderNamedFlowFragment object inside the block having a valid -webkit-flow-from.
This patch changes the way elements | pseudo-elements with -webkit-flow-from are displayed
in test dumps.

Source/WebCore:

Before:

RenderRegion {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]

After:

RenderBlock (positioned) {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]

RenderNamedFlowFragment at (1,1) size 50x50

Before:

Flow Threads

Thread with flow-name 'article'
Regions for flow 'article'

RenderRegion {DIV} #region_1
RenderRegion {DIV} #region_2

After:

Named flows

Named flow 'article'
Regions for named flow 'article'

RenderNamedFlowFragment (anonymous child of {DIV::before} #region_1)
RenderNamedFlowFragment (anonymous child of {DIV} #region_2)

Changed existing tests based on the new dumps.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::renderName):

  • rendering/RenderNamedFlowFragment.h: Add a comment explaining the purpose of the class.
  • rendering/RenderRegion.h:
  • rendering/RenderTreeAsText.cpp:

(WebCore::write):
(WebCore::writeRenderRegionList): Adjust function to display info for anonymous regions too.
(WebCore::writeRenderNamedFlowThreads): Separate dump of valid and invalid regions for a named flow.

LayoutTests:

Changed expected files for mac port, removed expectations for gtk | efl and added [Missing]
in TestExpectations for these platforms. Results need to be generated again for the [Missing] lines.

  • fast/regions/auto-size/autoheight-regions-mark-expected.txt: Removed.
  • fast/regions/flows-dependency-dynamic-remove-expected.txt: Removed.
  • fast/regions/flows-dependency-same-flow-expected.txt: Removed.
  • platform/efl/TestExpectations:
  • platform/efl/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt: Removed.
  • platform/efl/fast/regions/region-dynamic-after-before-expected.txt: Removed.
  • platform/efl/fast/regions/region-generated-content-before-after-expected.txt: Removed.
  • platform/efl/fast/regions/text-region-split-small-pagination-expected.txt: Removed.
  • platform/efl/fast/regions/top-overflow-out-of-second-region-expected.txt: Removed.
  • platform/efl/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Removed.
  • platform/efl/fast/repaint/line-flow-with-floats-in-regions-expected.png: Removed.
  • platform/efl/fast/repaint/line-flow-with-floats-in-regions-expected.txt: Removed.
  • platform/efl/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Removed.
  • platform/efl/fast/repaint/region-painting-invalidation-expected.txt: Removed.
  • platform/gtk/TestExpectations:
  • platform/gtk/fast/regions/flows-dependency-same-flow-expected.png: Removed.
  • platform/gtk/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt: Removed.
  • platform/gtk/fast/regions/region-dynamic-after-before-expected.txt: Removed.
  • platform/gtk/fast/regions/region-generated-content-before-after-expected.txt: Removed.
  • platform/gtk/fast/regions/text-region-split-small-pagination-expected.txt: Removed.
  • platform/gtk/fast/regions/top-overflow-out-of-second-region-expected.txt: Removed.
  • platform/gtk/fast/repaint/line-flow-with-floats-in-regions-expected.png: Removed.
  • platform/gtk/fast/repaint/line-flow-with-floats-in-regions-expected.txt: Removed.
  • platform/gtk/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Removed.
  • platform/mac/fast/regions/auto-size/autoheight-regions-mark-expected.png: Copied from LayoutTests/fast/regions/flows-dependency-same-flow-expected.png.
  • platform/mac/fast/regions/auto-size/autoheight-regions-mark-expected.txt: Added.
  • platform/mac/fast/regions/autoheight-regions-mark-expected.png: Removed.
  • platform/mac/fast/regions/flows-dependency-dynamic-remove-expected.txt: Added.
  • platform/mac/fast/regions/flows-dependency-same-flow-expected.png: Copied from LayoutTests/fast/regions/flows-dependency-same-flow-expected.png.
  • platform/mac/fast/regions/flows-dependency-same-flow-expected.txt: Added.
  • platform/mac/fast/regions/iframe-html-collected-expected.png: Renamed from LayoutTests/fast/regions/flows-dependency-same-flow-expected.png.
  • platform/mac/fast/regions/iframe-html-collected-expected.txt: Renamed from LayoutTests/fast/regions/iframe-html-collected-expected.txt.
  • platform/mac/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt:
  • platform/mac/fast/regions/region-dynamic-after-before-expected.txt:
  • platform/mac/fast/regions/region-generated-content-before-after-expected.txt:
  • platform/mac/fast/regions/text-region-split-small-pagination-expected.txt:
  • platform/mac/fast/regions/top-overflow-out-of-second-region-expected.txt:
  • platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
  • platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:
  • platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.txt:
  • platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: Renamed from LayoutTests/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt.
  • platform/mac/fast/repaint/region-painting-invalidation-expected.txt:
  • platform/mac/fast/repaint/region-painting-via-layout-expected.txt: Renamed from LayoutTests/fast/repaint/region-painting-via-layout-expected.txt.
12:50 AM Changeset in webkit [158183] by zandobersek@gmail.com
  • 28 edits in trunk/Source/WebCore

Move writeIndent, overloaded << operators from RenderTreeAsText to TextStream
https://bugs.webkit.org/show_bug.cgi?id=116012

Reviewed by Simon Fraser.

The writeIndent method and overloaded << operators for writing out vectors and points and rectangles
of various types are not specific to the render tree nor do they depend on any rendering-specific interface.

  • page/scrolling/ScrollingStateNode.cpp:
  • page/scrolling/ScrollingStateNode.h:

(ScrollingStateNode): Remove the writeIndent declaration, it's functionally the same as the TextStream method.

  • platform/graphics/GraphicsLayer.cpp:
  • platform/graphics/GraphicsLayer.h:

(GraphicsLayer): Ditto.

  • platform/graphics/filters/DistantLightSource.cpp: Remove the RenderTreeAsText.h inclusion or replace it with

the inclusion of the TextStream.h header where required. The writeIndent method is now declared there.

  • platform/graphics/filters/FEBlend.cpp: Ditto.
  • platform/graphics/filters/FEColorMatrix.cpp: Ditto.
  • platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
  • platform/graphics/filters/FEComposite.cpp: Ditto.
  • platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
  • platform/graphics/filters/FECustomFilter.cpp: Ditto.
  • platform/graphics/filters/FEDiffuseLighting.cpp: Ditto.
  • platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
  • platform/graphics/filters/FEDropShadow.cpp: Ditto.
  • platform/graphics/filters/FEFlood.cpp: Ditto.
  • platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
  • platform/graphics/filters/FEMerge.cpp: Ditto.
  • platform/graphics/filters/FEMorphology.cpp: Ditto.
  • platform/graphics/filters/FEOffset.cpp: Ditto.
  • platform/graphics/filters/FESpecularLighting.cpp: Ditto.
  • platform/graphics/filters/FETurbulence.cpp: Ditto.
  • platform/graphics/filters/SourceAlpha.cpp: Ditto.
  • platform/graphics/filters/SourceGraphic.cpp: Ditto.
  • platform/text/TextStream.cpp: Move the writeIndent and operators' definitions here.

(WebCore::operator<<):
(WebCore):
(WebCore::writeIndent):

  • platform/text/TextStream.h: Move the writeIndent and operators' declarations here.

(WebCore):
(TextStream):
(WebCore::TextStream::operator<<):

  • rendering/RenderTreeAsText.cpp: Move the writeIndent and operators' definitions into TextStream.

(WebCore):

  • rendering/RenderTreeAsText.h: Move the writeIndent and operators' declarations into TextStream.

(WebCore):

12:42 AM Changeset in webkit [158182] by zandobersek@gmail.com
  • 4 edits in trunk/Source/WebCore

Clean up ScopedEventQueue
https://bugs.webkit.org/show_bug.cgi?id=123408

Reviewed by Darin Adler.

Clean up the ScopedEventQueue implementation. ScopedEventQueue::instance() should return a reference to a
NeverDestroyed<ScopedEventQueue> object. The static ScopedEventQueue::s_instance pointer is removed.

The ScopedEventQueue destructor, the dispatchAllEvents method and the scope level incrementation/decrementation
methods are made private. NeverDestroyed<ScopedEventQueue> and EventQueueScope are made friends of the
ScopedEventQueue class so they can access the constructor and the incrementation/decrementation methods, respectively.

ScopedEventQueue method definitions are reordered to follow the order of their declarations in the header file.
ScopedEventQueue::dispatchAllEvents() now uses std::move to efficiently dispatch and clear all currently queued events.

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchScopedEvent):

  • dom/ScopedEventQueue.cpp:

(WebCore::ScopedEventQueue::instance):
(WebCore::ScopedEventQueue::dispatchAllEvents):

  • dom/ScopedEventQueue.h:

(WebCore::EventQueueScope::EventQueueScope):
(WebCore::EventQueueScope::~EventQueueScope):

Note: See TracTimeline for information about the timeline view.