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

Timeline



Feb 13, 2014:

10:04 PM Changeset in webkit [164094] by mitz@apple.com
  • 4 edits
    1 add in trunk/Source/WebKit2

[Cocoa] Expose the bundle form client
https://bugs.webkit.org/show_bug.cgi?id=128792

Reviewed by Anders Carlsson.

  • WebKit2.xcodeproj/project.pbxproj: Added new file.
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h: Added.
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(didFocusTextField): Implemented this WKBundlePageFormClient callback by calling the form
delegate.
(setUpFormClient): Added. Initializes the form client with the above function.
(-[WKWebProcessPlugInBrowserContextController _formDelegate]): Added this getter.
(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Added. Initializes or
clears the form client.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:

Declared _formDelegate property.

10:03 PM Changeset in webkit [164093] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Add a way to get the page from a frame in the injected bundle
https://bugs.webkit.org/show_bug.cgi?id=128791

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:

(-[WKWebProcessPlugInFrame _browserContextController]): Added.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h: Declared

_browserContextController property.

9:37 PM Changeset in webkit [164092] by fpizlo@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

Kill some of the last vestiges of the C++ interpreter's PICs
https://bugs.webkit.org/show_bug.cgi?id=128796

Reviewed by Michael Saboff.

  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeForStubInfo):

  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecode/PolymorphicAccessStructureList.h:

(JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::PolymorphicStubInfo):
(JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
(JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
(JSC::PolymorphicAccessStructureList::visitWeak):

  • bytecode/StructureStubInfo.cpp:

(JSC::StructureStubInfo::deref):
(JSC::StructureStubInfo::visitWeakReferences):

  • bytecode/StructureStubInfo.h:

(JSC::isGetByIdAccess):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/Repatch.cpp:

(JSC::getPolymorphicStructureList):
(JSC::tryBuildGetByIDList):

  • llint/LowLevelInterpreter.asm:
8:03 PM Changeset in webkit [164091] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[MSE] Move PublicURLManager shutdown logic so ActiveDOMObjects associated with public URLs won't leak.
https://bugs.webkit.org/show_bug.cgi?id=128532

Patch by Byungseon Shin <sun.shin@lge.com> on 2014-02-13
Reviewed by Jer Noble.

This fixes a leak of DOM objects by breaking the circular reference
between Document, PublicURLManager, and MediaSource.
Instead of clearing PublicURLManager at destruction-time,
which is delayed indefinitely because of the circular reference,
clear the PublicURLManager during ActiveDOMObject::stop().

Frome Blink r151890 by <acolwell@chromium.org>
<https://src.chromium.org/viewvc/blink?view=rev&revision=151890>

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::~ScriptExecutionContext):
(WebCore::ScriptExecutionContext::publicURLManager):

  • html/DOMURL.h:
  • html/PublicURLManager.cpp:

(WebCore::PublicURLManager::create):
(WebCore::PublicURLManager::PublicURLManager):
(WebCore::PublicURLManager::registerURL):
(WebCore::PublicURLManager::stop):

  • html/PublicURLManager.h:
7:35 PM Changeset in webkit [164090] by Martin Robinson
  • 3 edits in trunk

[GTK] [CMake] JavaScriptCore crashes in JSC::eval
https://bugs.webkit.org/show_bug.cgi?id=128434

Extend a fix for EFL to all ports that use GCC. Also include further fixes
that were applied only to the autotools build.

Reviewed by Gyuyoung Kim.

  • Source/cmake/OptionsCommon.cmake: Add -fno-omit-frame-pointer to all ports as well

as -fno-tree-dce, which is necessary for GTK+.

  • Source/cmake/OptionsEfl.cmake: The GCC flag additions are now in the common options file.
6:42 PM Changeset in webkit [164089] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

The JSContainerConvertor and ObjcContainerConvertor need to protect JSValueRefs. Part 2.
<https://webkit.org/b/128764>

Reviewed by Mark Hahnenberg.

toJS() is the wrong cast function to use. We need to use toJSForGC() instead.
Also we need to acquire the JSLock to prevent concurrent accesses to the
Strong handle list.

  • API/JSValue.mm:

(JSContainerConvertor::add):
(containerValueToObject):
(ObjcContainerConvertor::add):
(objectToValue):

6:36 PM Changeset in webkit [164088] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

JSManagedValue::dealloc modifies NSMapTable while iterating it
https://bugs.webkit.org/show_bug.cgi?id=128713

Reviewed by Geoffrey Garen.

Having to write a test for this revealed a bug in how addManagedReference:withOwner:
actually notifies JSManagedValues of new owners.

  • API/JSManagedValue.mm:

(-[JSManagedValue dealloc]):

  • API/JSVirtualMachine.mm:

(-[JSVirtualMachine addManagedReference:withOwner:]):
(-[JSVirtualMachine removeManagedReference:withOwner:]):

  • API/tests/testapi.mm:

(testObjectiveCAPI):

6:32 PM Changeset in webkit [164087] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix build.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileGetMyArgumentsLength):

6:25 PM Changeset in webkit [164086] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Windows] Unreviewed gardening of some timing out tests.
https://bugs.webkit.org/show_bug.cgi?id=128789.

  • platform/win/TestExpectations:
6:04 PM Changeset in webkit [164085] by rniwa@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Speculative Release build fix after r164077.

  • API/JSValue.mm:
5:59 PM Changeset in webkit [164084] by mmaxfield@apple.com
  • 7 edits in trunk/Source/WebCore

Remove position:sticky runtime flag
https://bugs.webkit.org/show_bug.cgi?id=128774

Reviewed by Simon Fraser.

Rollout of r128663

No new tests are necessary because there is no behavior change.

  • css/CSSParser.cpp:

(WebCore::CSSParserContext::CSSParserContext):
(WebCore::operator==):
(WebCore::isValidKeywordPropertyAndValue):

  • css/CSSParserMode.h:
  • dom/Document.cpp:
  • dom/Document.h:
  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:
5:53 PM Changeset in webkit [164083] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add -[WKWebView stopLoading:]
https://bugs.webkit.org/show_bug.cgi?id=128784

Reviewed by Dan Bernstein.

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

(-[WKWebView stopLoading:]):

5:49 PM Changeset in webkit [164082] by dfarler@apple.com
  • 2 edits in trunk/Tools

DumpRenderTree fails to build: Perl support module building for OS X but linking for the simulator
https://bugs.webkit.org/show_bug.cgi?id=128780

Reviewed by Simon Fraser.

  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/Makefile.PL:

Use xcrun -find clang instead of `xcrun --sdk $ENV{SDKROOT} -find clang,
which will pick up SDKROOT=iphonesimulator from building the Xcode aggregate target.

5:44 PM Changeset in webkit [164081] by rniwa@webkit.org
  • 12 edits
    25 deletes in trunk

Unreviewed, rolling out r164073 and r164080.
http://trac.webkit.org/changeset/164073
http://trac.webkit.org/changeset/164080
https://bugs.webkit.org/show_bug.cgi?id=128781

Broke Mac builds (Requested by rniwa on #webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2014-02-13

Tools:

  • DumpRenderTree/mac/EventSendingController.mm:

(+[EventSendingController isSelectorExcludedFromWebScript:]):
(+[EventSendingController webScriptNameForSelector:]):

  • WebKitTestRunner/EventSenderProxy.h:
  • WebKitTestRunner/InjectedBundle/Bindings/EventSendingController.idl:
  • WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
  • WebKitTestRunner/InjectedBundle/EventSendingController.h:
  • WebKitTestRunner/InjectedBundle/ios/EventSenderProxyIOS.mm:
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::didReceiveMessageFromInjectedBundle):
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):

  • WebKitTestRunner/efl/EventSenderProxyEfl.cpp:
  • WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
  • WebKitTestRunner/mac/EventSenderProxy.mm:

LayoutTests:

  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html: Removed.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html: Removed.
  • platform/mac/fast/scrolling/scroll-div-latched-div-expected.txt: Removed.
  • platform/mac/fast/scrolling/scroll-div-latched-div.html: Removed.
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe-expected.txt: Removed.
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe.html: Removed.
  • platform/mac/fast/scrolling/scroll-iframe-latched-iframe-expected.txt: Removed.
  • platform/mac/fast/scrolling/scroll-iframe-latched-iframe.html: Removed.
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe-expected.txt: Removed.
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe.html: Removed.
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe-expected.txt: Removed.
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe.html: Removed.
  • platform/mac/fast/scrolling/scroll-select-latched-select-expected.txt: Removed.
  • platform/mac/fast/scrolling/scroll-select-latched-select.html: Removed.
5:30 PM Changeset in webkit [164080] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed build fix for Mountain Lion.

  • DumpRenderTree/mac/EventSendingController.mm: Provide definition

for kCGScrollWheelEventScrollPhase if it isn't found in the
system headers.

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

Add -[WKWebView activeURL]
https://bugs.webkit.org/show_bug.cgi?id=128777

Reviewed by Dan Bernstein.

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

(-[WKWebView activeURL]):

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::willChangeActiveURL):
(WebKit::NavigationState::didChangeActiveURL):

5:17 PM Changeset in webkit [164078] by zoltan@webkit.org
  • 6 edits
    1 add in trunk/PerformanceTests

[CSS Shapes] Add performance test for complex polygon with shape-margin
https://bugs.webkit.org/show_bug.cgi?id=128769

Reviewed by Ryosuke Niwa.

This patch modifies the logic of createShapeOutsideTest to accept multiple
CSS properties from the test. The patch adds performance test for complex
polygon shape (self intersecting at multiple places) case, moreover we
apply shape-margin on the polygon also.

  • Layout/Shapes/ShapeOutsideContentBox.html:
  • Layout/Shapes/ShapeOutsideInset.html:
  • Layout/Shapes/ShapeOutsidePolygonWithMargin.html: Added.
  • Layout/Shapes/ShapeOutsideRaster.html:
  • Layout/Shapes/ShapeOutsideSimplePolygon.html:
  • Layout/Shapes/resources/shapes.js:
5:06 PM Changeset in webkit [164077] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

The JSContainerConvertor and ObjcContainerConvertor need to protect JSValueRefs.
<https://webkit.org/b/128764>

Reviewed by Mark Hahnenberg.

Added a vector of Strong<Unknown> references in the 2 containers, and append
the newly created JSValues to those vectors. This will keep all those JS objects
alive for the duration of the conversion.

  • API/JSValue.mm:

(JSContainerConvertor::add):
(ObjcContainerConvertor::add):

4:35 PM Changeset in webkit [164076] by Gustavo Noronha Silva
  • 7 edits
    1 add in trunk

[GTK][CMake] Generate GObject DOM bindings .symbols files
https://bugs.webkit.org/show_bug.cgi?id=126210

Reviewed by Martin Robinson.

.:

  • Source/PlatformGTK.cmake: add checking DOM bindings API as a dependency

for documentation generation.

Source/WebCore:

No new tests. Build change only.

  • CMakeLists.txt: list Quota module files and IDLs even if the feature

is disabled, for GTK, since we rely on that for our DOM bindings.

  • PlatformGTK.cmake: add a new target to check for DOM symbols API by

running the new python script.

  • bindings/gobject/GNUmakefile.am: call the new python script instead

of using a custom rule.

Tools:

  • gtk/check-gdom-symbols: Added. Checks symbols compatibility.

(should_update_symbols_file):

4:30 PM Changeset in webkit [164075] by mmaxfield@apple.com
  • 4 edits
    2 adds in trunk

text-decoration-skip: ink skips randomly when using SVG fonts
https://bugs.webkit.org/show_bug.cgi?id=128709

Reviewed by Simon Fraser.

Source/WebCore:

This patch simply disables skipping underlines being used with SVG fonts.
It's a stopgap until we can support skipping properly with SVG fonts.

Test: svg/custom/svg-fonts-skip-ink.html

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::ctFont):

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::dashesForIntersectionsWithRect):

LayoutTests:

This text checks that some text without descenders in an SVG font renders the same with and
without text-decoration-skip: ink.

  • svg/custom/svg-fonts-skip-ink-expected.html: Added.
  • svg/custom/svg-fonts-skip-ink.html: Added.
4:22 PM Changeset in webkit [164074] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk/Source/JavaScriptCore

Added GetMyArgumentsLength to FTL
https://bugs.webkit.org/show_bug.cgi?id=128758

Patch by Matthew Mirman <mmirman@apple.com> on 2014-02-13
Reviewed by Filip Pizlo.

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileGetMyArgumentsLength):

  • tests/stress/ftl-getmyargumentslength.js: Added.

(foo):

4:22 PM Changeset in webkit [164073] by Brent Fulgham
  • 12 edits
    37 adds in trunk

Create some latched scrolling tests.
https://bugs.webkit.org/show_bug.cgi?id=127606
<rdar://problem/15911348>

Reviewed by Simon Fraser.

Tools:

  • DumpRenderTree/mac/EventSendingController.mm:

(+[EventSendingController isSelectorExcludedFromWebScript:]): Update to recognize
the new "mouseScrollByX:andY:withWheel:andMomentumPhases:" selector.
(+[EventSendingController webScriptNameForSelector:]): Ditto.
(-[EventSendingController mouseScrollByX:andY:withWheel:andMomentumPhases:]): Implement
the new wheel event sender.

  • WebKitTestRunner/EventSenderProxy.h:
  • WebKitTestRunner/InjectedBundle/Bindings/EventSendingController.idl: Add declaration

of new mouseScrollByWithWheelAndMomentumPhases method.

  • WebKitTestRunner/InjectedBundle/EventSendingController.cpp:

(WTR::EventSendingController::mouseScrollByWithWheelAndMomentumPhases): Added

  • WebKitTestRunner/InjectedBundle/EventSendingController.h:
  • WebKitTestRunner/InjectedBundle/ios/EventSenderProxyIOS.mm:

(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases): Add stub for iOS.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::didReceiveMessageFromInjectedBundle): Handle the new
mouseScrollByWithWheelAndMomentumPhases message.
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle): Handle the
new mouseScrollByWithWheelAndMomentumPhases.

  • WebKitTestRunner/efl/EventSenderProxyEfl.cpp:

(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases): Provide stub that
relays to the standard mouse wheel handler.

  • WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:

(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases): Ditto.

  • WebKitTestRunner/mac/EventSenderProxy.mm:

(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases): Provide implementation
of mouse wheel gesture method.

LayoutTests:

Add a series of tests to cover desired behavior with wheel events (including momentum).
This behavior is specific to the Mac platform, so is limited to the platform/mac and
platform/mac-wk2 directories.

  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html: Added.
  • platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html: Added.
  • platform/mac/fast/scrolling: Added.
  • platform/mac/fast/scrolling/scroll-div-latched-div-expected.txt: Added.
  • platform/mac/fast/scrolling/scroll-div-latched-div.html: Added.
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe-expected.txt: Added.
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe.html: Added.
  • platform/mac/fast/scrolling/scroll-iframe-latched-iframe-expected.txt: Added.
  • platform/mac/fast/scrolling/scroll-iframe-latched-iframe.html: Added.
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe-expected.txt: Added.
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe.html: Added.
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe-expected.txt: Added.
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe.html: Added.
  • platform/mac/fast/scrolling/scroll-select-latched-select-expected.txt: Added.
  • platform/mac/fast/scrolling/scroll-select-latched-select.html: Added.
4:22 PM Changeset in webkit [164072] by dbates@webkit.org
  • 2 edits in trunk/Source/WTF

Fix the iOS build after <http://trac.webkit.org/changeset/164064

  • wtf/Platform.h:
3:57 PM Changeset in webkit [164071] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, roll out http://trac.webkit.org/changeset/164066.

It broke tests and it was just plain wrong.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):
(JSC::GetByIdStatus::computeForStubInfo):

  • runtime/Structure.h:

(JSC::Structure::takesSlowPathInDFGForImpureProperty):

3:41 PM Changeset in webkit [164070] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed build fix.

Fixed typo.

  • dfg/DFGIntegerCheckCombiningPhase.cpp:

(JSC::DFG::IntegerCheckCombiningPhase::run):

3:35 PM Changeset in webkit [164069] by msaboff@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Change FTL stack check to use VM's stackLimit
https://bugs.webkit.org/show_bug.cgi?id=128561

Reviewed by Filip Pizlo.

Changes FTL function entry to check the call frame register against the FTL
specific stack limit (VM::m_ftlStackLimit) and throw an exception if the
stack limit has been exceeded. Updated the exception handling code to have
a second entry that will unroll the current frame to the caller, since that
is where the exception should be processed.

  • ftl/FTLCompile.cpp:

(JSC::FTL::fixFunctionBasedOnStackMaps):

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

(JSC::FTL::LowerDFGToLLVM::lower):

  • ftl/FTLState.h:
  • runtime/VM.h:

(JSC::VM::addressOfFTLStackLimit):

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

Fix the ARM build when HAVE_ARM_NEON_INTRINSICS is enabled

Add !HAVE(ARM_NEON_INTRINSICS)-guard around file-level inline function arithmeticSoftware to
avoid an unused function compiler warning when building with ARM Neon intrinsics.

  • platform/graphics/filters/FEComposite.cpp:
3:33 PM Changeset in webkit [164067] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add -[WKWebView goToBackForwardListItem:]
https://bugs.webkit.org/show_bug.cgi?id=128773

Reviewed by Andreas Kling.

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

(-[WKWebView goToBackForwardListItem:]):

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

GetByIdStatus shouldn't call takesSlowPathInDFGForImpureProperty() for self accesses, and calling that method should never assert about anything
https://bugs.webkit.org/show_bug.cgi?id=128772

Reviewed by Mark Hahnenberg.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):
(JSC::GetByIdStatus::computeForStubInfo):

  • runtime/Structure.h:

(JSC::Structure::takesSlowPathInDFGForImpureProperty):

3:28 PM Changeset in webkit [164065] by zoltan@webkit.org
  • 1 edit
    2 adds in trunk/PerformanceTests

[CSS Shapes] Add performance test for raster shape
https://bugs.webkit.org/show_bug.cgi?id=128746

Reviewed by Ryosuke Niwa.

This patch adds performance testing for image valued shape-outside.
The test is skipped by default for now.

  • Layout/Shapes/ShapeOutsideRaster.html: Added.
  • Layout/Shapes/resources/shape.gif: Added.
3:17 PM Changeset in webkit [164064] by dbates@webkit.org
  • 2 edits in trunk/Source/WTF

[iOS] Disable HAVE_ARM_NEON_INTRINSICS

For now, disable HAVE_ARM_NEON_INTRINSICS when building for iOS. We want
to audit the applicable code before we enable this define.

  • wtf/Platform.h:
3:07 PM Changeset in webkit [164063] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Add some RELEASE_ASSERTs to catch JSLock bugs earlier
https://bugs.webkit.org/show_bug.cgi?id=128762

Reviewed by Mark Lam.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):

  • runtime/JSLock.cpp:

(JSC::JSLock::DropAllLocks::DropAllLocks):

3:04 PM Changeset in webkit [164062] by beidson@apple.com
  • 5 edits in trunk

IDB: Three tests crash the DatabaseProcess under ~KeyedDecoder
https://bugs.webkit.org/show_bug.cgi?id=128763

Reviewed by Anders Carlsson.

Source/WebCore:

No new tests (Covered by three existing tests)

  • platform/KeyedCoding.h:

(WebCore::KeyedEncoder::encodeObjects): If the array is empty we still have to begin() and end() it.

LayoutTests:

  • platform/mac-wk2/TestExpectations: One test passes, one passes with expectation changes, and the third is now a text failure.
  • storage/indexeddb/key-type-array-expected.txt:
3:02 PM Changeset in webkit [164061] by commit-queue@webkit.org
  • 11 edits in trunk

[css3-text] Support -webkit-text-decoration-skip: objects
https://bugs.webkit.org/show_bug.cgi?id=128723

Patch by Yuki Sekiguchi <yuki.sekiguchi@access-company.com> on 2014-02-13
Reviewed by Dean Jackson.

Source/WebCore:

Implemented 'objects' value of text-decoration-skip.
http://www.w3.org/TR/2013/CR-css-text-decor-3-20130801/#text-decoration-skip

This is initial value and same behavior without
ENABLE_CSS3_TEXT_DECORATION_SKIP_INK flag. Threfore, this patch only
added parser code and constant for 'objects'.

Changed the initial value of text-decoration-skip.

The current implementation parses 'none', but the rendering code is
not match the spec, so this patch added FIXME to the rendering code.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::renderTextDecorationSkipFlagsToCSSValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseTextDecorationSkip):

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

(WebCore::valueToDecorationSkip):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintDecoration):

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

LayoutTests:

Added 'objects' value to the current test case.
Added getComputedStyle() test to test renderTextDecorationSkipFlagsToCSSValue() code.

  • fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip-expected.txt:
  • fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip.html:
2:59 PM Changeset in webkit [164060] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix ARM NEON build following <http://trac.webkit.org/changeset/164058>
(https://bugs.webkit.org/show_bug.cgi?id=128767)

I inadvertently didn't include header NEONHelpers.h, which defines WebCore::loadRGBA8AsFloat().

  • platform/graphics/cpu/arm/filters/FECompositeArithmeticNEON.h:
2:46 PM Changeset in webkit [164059] by fpizlo@apple.com
  • 38 edits
    11 adds in trunk/Source

Hoist and combine array bounds checks
https://bugs.webkit.org/show_bug.cgi?id=125433

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

This adds a phase for reasoning about overflow checks and array bounds checks. It's
block-local, and removes both overflow checks and bounds checks in one go.

This also improves reasoning about commutative operations, and CSE between
CheckOverflow and Unchecked arithmetic.

This strangely uncovered a DFG backend bug where we were trying to extract an int32
from a constant even when that constant was just simply a number. I fixed that bug.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAbstractInterpreterInlines.h:

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

  • dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::set):

  • dfg/DFGArgumentsSimplificationPhase.cpp:

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

  • dfg/DFGArithMode.h:

(JSC::DFG::subsumes):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::pureCSE):
(JSC::DFG::CSEPhase::int32ToDoubleCSE):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGEdge.cpp:

(JSC::DFG::Edge::dump):

  • dfg/DFGEdge.h:

(JSC::DFG::Edge::sanitized):
(JSC::DFG::Edge::hash):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::valueOfInt32Constant):

  • dfg/DFGInsertionSet.h:

(JSC::DFG::InsertionSet::insertConstant):

  • dfg/DFGIntegerCheckCombiningPhase.cpp: Added.

(JSC::DFG::IntegerCheckCombiningPhase::IntegerCheckCombiningPhase):
(JSC::DFG::IntegerCheckCombiningPhase::run):
(JSC::DFG::IntegerCheckCombiningPhase::handleBlock):
(JSC::DFG::IntegerCheckCombiningPhase::rangeKeyAndAddend):
(JSC::DFG::IntegerCheckCombiningPhase::isValid):
(JSC::DFG::IntegerCheckCombiningPhase::insertAdd):
(JSC::DFG::IntegerCheckCombiningPhase::insertMustAdd):
(JSC::DFG::performIntegerCheckCombining):

  • dfg/DFGIntegerCheckCombiningPhase.h: Added.
  • dfg/DFGNode.h:

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

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

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

  • dfg/DFGPredictionPropagationPhase.cpp:

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

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileAdd):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • dfg/DFGStrengthReductionPhase.cpp:

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

  • dfg/DFGTypeCheckHoistingPhase.cpp:

(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantStructureChecks):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantArrayChecks):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

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

  • jsc.cpp:

(GlobalObject::finishCreation):
(functionFalse):

  • runtime/Identifier.h:
  • runtime/Intrinsic.h:
  • runtime/JSObject.h:
  • tests/stress/get-by-id-untyped.js: Added.

(foo):

  • tests/stress/inverted-additive-subsumption.js: Added.

(foo):

  • tests/stress/redundant-add-overflow-checks.js: Added.

(foo):

  • tests/stress/redundant-array-bounds-checks-addition-skip-first.js: Added.

(foo):
(arraycmp):

  • tests/stress/redundant-array-bounds-checks-addition.js: Added.

(foo):
(arraycmp):

  • tests/stress/redundant-array-bounds-checks-unchecked-addition.js: Added.

(foo):
(arraycmp):

  • tests/stress/redundant-array-bounds-checks.js: Added.

(foo):
(arraycmp):

  • tests/stress/tricky-array-bounds-checks.js: Added.

(foo):
(arraycmp):

Source/WTF:

Reviewed by Mark Hahnenberg.

  • GNUmakefile.list.am:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/HashMethod.h: Added.

(WTF::HashMethod::operator()):

2:45 PM Changeset in webkit [164058] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

Write FEComposite::computeArithmeticPixelsNeon() in terms of loadRGBA8AsFloat()
https://bugs.webkit.org/show_bug.cgi?id=128767

Reviewed by Dean Jackson.

This patch was inspired by Gabor Rapcsanyi's work in <https://bugs.webkit.org/show_bug.cgi?id=90669>.

Currently we duplicate code in FEComposite::computeArithmeticPixelsNeon() to read pixel data.
Instead we should use the convenience function WebCore::loadRGBA8AsFloat. This also resolves
an uninitialized variable compiler warning in the existing code.

  • platform/graphics/cpu/arm/filters/FECompositeArithmeticNEON.h:

(WebCore::FEComposite::computeArithmeticPixelsNeon):

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

FTL should be OK with compact_unwind in a data section
https://bugs.webkit.org/show_bug.cgi?id=128756

Reviewed by Mark Hahnenberg.

  • ftl/FTLCompile.cpp:

(JSC::FTL::mmAllocateCodeSection):
(JSC::FTL::mmAllocateDataSection):

2:18 PM Changeset in webkit [164056] by graouts@webkit.org
  • 3 edits in trunk/Tools

Unreviewed. changing my email address.

2:13 PM Changeset in webkit [164055] by timothy@apple.com
  • 1 edit in trunk/Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp

Attempt to fix LevelDB builds.

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

Make WKWebViewConfigurationPrivate.h private
https://bugs.webkit.org/show_bug.cgi?id=128761

Reviewed by Tim Horton.

  • WebKit2.xcodeproj/project.pbxproj:
1:55 PM Changeset in webkit [164053] by mmaxfield@apple.com
  • 19 edits
    2 adds in trunk

During a copy, position:fixed gets converted to position:absolute even if only part of the document is selected
https://bugs.webkit.org/show_bug.cgi?id=128688

Reviewed by Ryosuke Niwa.

Source/WebCore:

Adds a field, m_needsPositionStyleConversion, to StyledMarkupAccumulator.

Also, renames the ConvertPositionStyleOnCopy setting to ShouldConvertPositionStyleOnCopy

Test: editing/pasteboard/copy-paste-doesnt-convert-sticky-and-fixed-during-partial-copy.html

  • editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator):
(WebCore::StyledMarkupAccumulator::appendElement):
(WebCore::createMarkupInternal):

  • page/Settings.in:
  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setShouldConvertPositionStyleOnCopy):

  • testing/InternalSettings.h:
  • testing/InternalSettings.idl:

Source/WebKit/mac:

Renames the ConvertPositionStyleOnCopy setting to ShouldConvertPositionStyleOnCopy

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(-[WebPreferences shouldConvertPositionStyleOnCopy]):
(-[WebPreferences setShouldConvertPositionStyleOnCopy:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2:

Renames the ConvertPositionStyleOnCopy setting to ShouldConvertPositionStyleOnCopy

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

(WKPreferencesSetShouldConvertPositionStyleOnCopy):
(WKPreferencesGetShouldConvertPositionStyleOnCopy):

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

(WebKit::WebPage::updatePreferences):

LayoutTests:

Performs a copy of the contents of a particular div, rather than the entire body. Makes sure that
no position:fixed -> position:absolute conversion occurs.

  • editing/pasteboard/copy-paste-converts-sticky-and-fixed-expected.txt:
  • editing/pasteboard/copy-paste-converts-sticky-and-fixed.html:
  • editing/pasteboard/copy-paste-doesnt-convert-sticky-and-fixed-during-partial-copy-expected.txt: Added.
  • editing/pasteboard/copy-paste-doesnt-convert-sticky-and-fixed-during-partial-copy.html: Added.
1:38 PM Changeset in webkit [164052] by BJ Burg
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: DataGrid should support editing tables with arbitrary columns
https://bugs.webkit.org/show_bug.cgi?id=128619

Reviewed by Timothy Hatcher.

The data grid editing code should work with any columns, but was previously
hardcoded with the column identifiers used by DOMStorageView. This patch
makes the editing code work with any column identifiers. It also fixes some
bugs in previous/next navigation during data entry.

  • UserInterface/DOMStorageContentView.css: Highlight missing keys and values.

(.content-view.dom-storage > .data-grid tr.missing-value td.value-column):
(.content-view.dom-storage > .data-grid:focus tr.selected.missing-value td.value-column):

  • UserInterface/DOMStorageContentView.js: Don't blow away the entire table

whenever the backend notifies us of an update to the storage object. This
caused the editing state to be destroyed when values were entered interactively.

(WebInspector.DOMStorageContentView.prototype.reset): Inline the callback
passed to DOMStorageObject.getEntries().
(WebInspector.DOMStorageContentView.prototype.itemsCleared):
(WebInspector.DOMStorageContentView.prototype.itemAdded): Request a sort
of the table rows after backend tells us about item additions or updates.

(WebInspector.DOMStorageContentView.prototype.itemUpdated): Request a sort
of the table rows after backend tells us about item additions or updates.

(WebInspector.DOMStorageContentView.prototype._sortDataGrid): Use DataGrid's
built-in sorting function.

(WebInspector.DOMStorageContentView.prototype._deleteCallback):
(WebInspector.DOMStorageContentView.prototype._editingCallback): Don't force
recreation of the entire table whenever editing finishes. Perform most
of the error checking and editing logic here, including when to insert a
new placeholder row, and when to commit the entered values to DOM storage.

  • UserInterface/DOMStorageObject.js: Keep track of the DOM storage entries

in the model so we can detect duplicate entries. Remove unused id arguments.

(WebInspector.DOMStorageObject):
(WebInspector.DOMStorageObject.prototype.get entries):
(WebInspector.DOMStorageObject.prototype.itemsCleared):
(WebInspector.DOMStorageObject.prototype.itemRemoved):
(WebInspector.DOMStorageObject.prototype.set this):
(WebInspector.DOMStorageObject.prototype.itemAdded):
(WebInspector.DOMStorageObject.prototype.set var):
(WebInspector.DOMStorageObject.prototype.itemUpdated):

  • UserInterface/DataGrid.js:

(.sortDataGrid):
(WebInspector.DataGrid.createSortableDataGrid): Use the built-in DataGrid
sortNodes() implementation.
(WebInspector.DataGrid.prototype._startEditingNodeAtColumnIndex): Renamed
from _startEditingColumnOfDataGridNode. It's easier to understand the navigation
code when presented in terms of adjusting column indexes rather than identifiers.

(WebInspector.DataGrid.prototype._startEditing):
(WebInspector.DataGrid.prototype.determineNextCell): Added. Decides which
column and row to edit next and whether the table can be sorted before the
next cell edit begins.

(WebInspector.DataGrid.prototype.moveToNextCell): Added. Wrapper method for
the above which handles sorting and beginning the next cell edit.

(WebInspector.DataGrid.prototype._editingCommitted): Use better helper methods.
(WebInspector.DataGrid.prototype._editingCancelled): Add an assert.
(WebInspector.DataGrid.prototype.get sortColumnIdentifier): Shorten.
(WebInspector.DataGrid.prototype.addPlaceholderNode):
(WebInspector.DataGrid.prototype.removeChild):
(WebInspector.DataGrid.prototype.):
(WebInspector.DataGrid.prototype.sortNodes): Remove unecessary copying
of all nodes into a separate array. Defer sorting if the user is in the
middle of editing a cell. Make placeholder nodes always sort to the bottom
regardless of the sort column identifier and sort direction.

(WebInspector.DataGridNode.prototype._attach):
(WebInspector.PlaceholderDataGridNode): Renamed from CreationDataGridNode.
(WebInspector.PlaceholderDataGridNode.prototype.makeNormal):

  • UserInterface/StorageManager.js: Don't pass unused id argument.

(WebInspector.StorageManager.prototype.itemRemoved):
(WebInspector.StorageManager.prototype.itemAdded):
(WebInspector.StorageManager.prototype.itemUpdated):

1:37 PM Changeset in webkit [164051] by timothy@apple.com
  • 11 edits in trunk/Source

Enable inspection of recently used IndexedDB databases.

https://bugs.webkit.org/show_bug.cgi?id=128687

Reviewed by Brady Eidson & Joseph Pecoraro.

Source/WebCore:

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::getDatabaseNames):

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

(WebCore::IDBFactoryBackendLevelDB::getDatabaseNames):

  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:

Fix up the arguments passed to getDatabaseNames.

  • WebCore.xcodeproj/project.pbxproj:

Make DOMStringList.h private so WebKit2 can use it.

  • inspector/InspectorIndexedDBAgent.cpp:

Modernize the loops and remove some PLATFORM(COCOA) ifdefs to
compile the code.

  • inspector/protocol/IndexedDB.json: Use number for version to

allow larger values instead of clamping to int.

Source/WebKit2:

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:

(WebKit::sharedRecentDatabaseNameMap):
(WebKit::combinedSecurityOriginIdentifier):
(WebKit::WebIDBFactoryBackend::WebIDBFactoryBackend):
(WebKit::WebIDBFactoryBackend::getDatabaseNames):
(WebKit::WebIDBFactoryBackend::open):
(WebKit::WebIDBFactoryBackend::deleteDatabase):
Keep track of recently used database names per security-origin pair.
Implement getDatabaseNames to return the recently used names.

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:

Fix up the arguments passed to getDatabaseNames.

1:26 PM Changeset in webkit [164050] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • UIProcess/API/Cocoa/WKWebView.mm:

(layoutMilestones):

1:14 PM Changeset in webkit [164049] by andersca@apple.com
  • 6 edits
    1 copy in trunk/Source/WebKit2

Add rendering progress events SPI
https://bugs.webkit.org/show_bug.cgi?id=128752

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h.
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _observedRenderingProgressEvents]):
(layoutMilestones):
(-[WKWebView _setObservedRenderingProgressEvents:]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:

(NS_OPTIONS):

  • UIProcess/Cocoa/NavigationState.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::setNavigationDelegate):
(WebKit::renderingProgressEvents):
(WebKit::NavigationState::LoaderClient::didLayout):

  • WebKit2.xcodeproj/project.pbxproj:
12:46 PM Changeset in webkit [164048] by BJ Burg
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: long script names should be have text-overflow:ellipsis in probe details sidebar
https://bugs.webkit.org/show_bug.cgi?id=128550

Reviewed by Timothy Hatcher.

Make the link element 'display: block', place it after the floated icons,
and set the appropriate CSS overflow properties.

  • UserInterface/ProbeDetailsSidebarPanel.css:

(.details-section.probe-set .options > a.go-to-link):

  • UserInterface/ProbeSetDetailsSection.js:

(WebInspector.ProbeSetDetailsSection):

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

Copying (createMarkup) wrapping text results in space between wrapped lines stripped.
https://bugs.webkit.org/show_bug.cgi?id=63233

Source/WebCore:

The problem is StyledMarkupAccumulator uses renderedText and the space at
the end of the text has been stripped when the tag after the text was wrapped.

Patch by Chang Shu <cshu@webkit.org> on 2014-02-13
Reviewed by Ryosuke Niwa.

Test: editing/pasteboard/copy-text-with-wrapped-tag.html

  • editing/TextIterator.cpp:

(WebCore::TextIterator::TextIterator):
(WebCore::TextIterator::handleTextBox):

  • editing/TextIterator.h:

Check the special case when the iterator runs over a range that is followed by a non-text box.
In this case, the possible last space has been collapsed and needs to be restored.

  • editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::renderedText):
Check if the range is followed by more nodes and pass this information to the constructed TextIterator.

LayoutTests:

Patch by Chang Shu <cshu@webkit.org> on 2014-02-13
Reviewed by Ryosuke Niwa.

The problem is StyledMarkupAccumulator uses renderedText and the space at
the end of the text has been stripped when the tag after the text was wrapped.

  • editing/pasteboard/copy-text-with-wrapped-tag-expected.txt: Added.
  • editing/pasteboard/copy-text-with-wrapped-tag.html: Added.
12:31 PM Changeset in webkit [164046] by mmaxfield@apple.com
  • 3 edits
    2 adds in trunk

Gaps for text-decoration-skip: ink are calculated assuming the glyph orientation is the same as the run orientation
https://bugs.webkit.org/show_bug.cgi?id=128718

Reviewed by Darin Adler.

Source/WebCore:

This is a stop-gap patch to make underlines in CJK text not look terrible. A long-term fix is to refactor
showGlyphsWithAdvances to move rotation logic into a common place that the text-decoration-skip: ink code
can use.

Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-orientation-upright.html

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintDecoration):

LayoutTests:

This test draws text that has descenders that would be skipped over if the glyph orientation was the same
as the run orientation. However, it uses text-orientation: upright to make those two orientations not equal.
It then compares this to no skipping at all.

  • fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-orientation-upright-expected.html: Added.
  • fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-orientation-upright.html: Added.
12:04 PM Changeset in webkit [164045] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.5/Source/WebKit2

Merged r164031.

11:50 AM Changeset in webkit [164044] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.5/Source

Versioning.

11:47 AM Changeset in webkit [164043] by Lucas Forschler
  • 1 copy in tags/Safari-538.16.5

New Tag.

11:32 AM Changeset in webkit [164042] by ap@apple.com
  • 5 edits in trunk

[Mac] Add a WebKit1 SPI to get WebCrypto master key from a client
https://bugs.webkit.org/show_bug.cgi?id=128725

Reviewed by Anders Carlsson.

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::wrapCryptoKey):
(WebChromeClient::unwrapCryptoKey):

  • WebView/WebUIDelegatePrivate.h:

Looks like UIDelegate is the closest we have to a reasonable place.

Tools:

  • DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webCryptoMasterKeyForWebView:]):

Use the SPI to specify a key.

10:56 AM Changeset in webkit [164041] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

IDB: TestExpectations cleanup

Unreviewed.

  • platform/mac-wk2/TestExpectations: More tests pass than fail, so only list failures.
10:52 AM Changeset in webkit [164040] by beidson@apple.com
  • 5 edits in trunk/LayoutTests

IDB: TestExpectations batch - HTTP tests

Unreviewed.

  • http/tests/security/cross-origin-indexeddb-allowed-expected.txt:
  • http/tests/security/cross-origin-indexeddb-expected.txt:
  • http/tests/security/resources/cross-origin-iframe-for-indexeddb.html:
  • platform/mac-wk2/TestExpectations: Two of the http tests are worker tests. They remain skipped. The other three pass with test updates.
10:45 AM Changeset in webkit [164039] by msaboff@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

CStack Branch: VM::currentReturnThunkPC appears to be unused and should be removed
https://bugs.webkit.org/show_bug.cgi?id=127205

Reviewed by Geoffrey Garen.

Removed ununsed references to VM::currentReturnThunkPC.

  • jit/ThunkGenerators.cpp:

(JSC::arityFixup):

  • runtime/VM.h:
10:39 AM Changeset in webkit [164038] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

InsertIntoTextNodeCommand should get Settings from the Frame.
<https://webkit.org/b/128678>

EditCommands have a frame() accessor that returns a reference,
so there's no need to go through Document.

Reviewed by Anders Carlsson.

  • editing/InsertIntoTextNodeCommand.cpp:

(WebCore::InsertIntoTextNodeCommand::doApply):

10:36 AM Changeset in webkit [164037] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

iOS build fix.

  • WebView/WebView.mm:

(+[WebView registerForMemoryNotifications]):

10:31 AM Changeset in webkit [164036] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Document should be constructable
https://bugs.webkit.org/show_bug.cgi?id=115643

Patch by László Langó <llango.u-szeged@partner.samsung.com> on 2014-02-13
Reviewed by Darin Adler.

Source/WebCore:

http://www.w3.org/TR/2014/WD-dom-20140204/#interface-document
Make Document constructable so that one can do "new Document"
instead of "document.implementation.createHTMLDocument()".

Test: fast/dom/Document/document-constructor.html

  • dom/Document.cpp:

(WebCore::Document::create):
(WebCore::Document::origin):

  • dom/Document.h:
  • dom/Document.idl:

LayoutTests:

  • fast/dom/Document/document-constructor-expected.txt: Added.
  • fast/dom/Document/document-constructor.html: Added.
  • fast/dom/dom-constructors-expected.txt:
  • fast/dom/dom-constructors.html:
10:07 AM Changeset in webkit [164035] by commit-queue@webkit.org
  • 24 edits
    2 moves in trunk

[CSS Grid Layout] Rename named areas property
https://bugs.webkit.org/show_bug.cgi?id=127990

Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-02-13
Reviewed by Sergio Villar Senin.

From Blink r165891 by <Manuel Rego Casasnovas>

The property 'grid-template' has been renamed to 'grid-template-areas'
in the last two versions of the spec.

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSGridTemplateAreasValue.cpp: Renamed from Source/WebCore/css/CSSGridTemplateValue.cpp.

(WebCore::CSSGridTemplateAreasValue::CSSGridTemplateAreasValue):
(WebCore::stringForPosition):
(WebCore::CSSGridTemplateAreasValue::customCSSText):

  • css/CSSGridTemplateAreasValue.h: Renamed from Source/WebCore/css/CSSGridTemplateValue.h.

(WebCore::CSSGridTemplateAreasValue::create):
(WebCore::CSSGridTemplateAreasValue::~CSSGridTemplateAreasValue):
(WebCore::CSSGridTemplateAreasValue::gridAreaMap):
(WebCore::CSSGridTemplateAreasValue::rowCount):
(WebCore::CSSGridTemplateAreasValue::columnCount):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseGridTemplateAreas):

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

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

  • css/CSSValue.h:

(WebCore::CSSValue::isGridTemplateAreasValue):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

Source/WebInspectorUI:

  • Tools/PrettyPrinting/css.js:
  • UserInterface/External/CodeMirror/css.js:

LayoutTests:

  • fast/css-grid-layout/grid-item-area-get-set.html:
  • fast/css-grid-layout/grid-item-column-row-get-set.html:
  • fast/css-grid-layout/grid-item-end-after-get-set.html:
  • fast/css-grid-layout/grid-item-named-grid-area-resolution.html:
  • fast/css-grid-layout/grid-item-start-before-get-set.html:
  • fast/css-grid-layout/grid-template-get-set-expected.txt:
  • fast/css-grid-layout/grid-template-get-set.html:
10:06 AM Changeset in webkit [164034] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove the last remnants of Maemo support
https://bugs.webkit.org/show_bug.cgi?id=85238

Patch by Adrian Bunk <bunk@stusta.de> on 2014-02-13
Reviewed by Ryosuke Niwa.

  • plugins/npapi.h:
10:05 AM Changeset in webkit [164033] by beidson@apple.com
  • 8 edits in trunk/LayoutTests

IDB: TestExpectations batch - "transaction-abort.html to versionchangerequest-activedomobject.html”

Unreviewed.

  • platform/mac-wk2/TestExpectations:
  • storage/indexeddb/transaction-active-flag-expected.txt:
  • storage/indexeddb/transaction-after-close-expected.txt:
  • storage/indexeddb/transaction-read-only-expected.txt:
  • storage/indexeddb/transaction-storeNames-required-expected.txt:
  • storage/indexeddb/version-change-abort-expected.txt:
  • storage/indexeddb/version-change-exclusive-expected.txt:
10:00 AM Changeset in webkit [164032] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Code cleanup: remove gcc<4.7 guards.
https://bugs.webkit.org/show_bug.cgi?id=128729

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2014-02-13
Reviewed by Anders Carlsson.

Remove GCC_VERSION_AT_LEAST guards when it checks for pre-4.7 versions,
as WK does not compile with earlier gcc versions.

Source/JavaScriptCore:

  • assembler/MIPSAssembler.h:

(JSC::MIPSAssembler::cacheFlush):

  • interpreter/StackVisitor.cpp:

(JSC::printif):

Source/WTF:

  • wtf/Assertions.cpp:
  • wtf/Platform.h:
9:30 AM Changeset in webkit [164031] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Disable XPC for plug-ins that need executable heap
https://bugs.webkit.org/show_bug.cgi?id=128744
<rdar://problem/15962958>

Reviewed by Dan Bernstein.

When switching to XPC for plug-ins, we accidentally broke the "feature"
where plug-ins can ask for the heap to be executable.

This breaks Silverlight, so just disable XPC for any plug-ins that need this.
<rdar://problem/16059483> tracks fixing this in the XPC service.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::PluginProcessProxy::pluginNeedsExecutableHeap):
Only return true for 32-bit plug-ins, since we don't know any 64-bit plug-ins
that require this feature.

(WebKit::PluginProcessProxy::platformGetLaunchOptions):
Set launchOptions.useXPC to false if launchOptions.executableHeap is true.

9:24 AM Changeset in webkit [164030] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION: fast/workers/use-machine-stack.html hits Heap::isMarked(cell) assertion
https://bugs.webkit.org/show_bug.cgi?id=128745

8:22 AM Changeset in webkit [164029] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Add or remove expectations for some media layout tests
https://bugs.webkit.org/show_bug.cgi?id=128535

Unreviewed EFL layout tests gardening

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-13

  • platform/efl/TestExpectations:
  • platform/efl-wk1/TestExpectations:
5:25 AM Changeset in webkit [164028] by ryuan.choi@samsung.com
  • 5 edits in trunk/Source/WebKit/efl

[EFL][WK1] Do not include libsoup header in the public headers
https://bugs.webkit.org/show_bug.cgi?id=128701

Reviewed by Gyuyoung Kim.

Although ewebkit used libsoup internally, it's not good for EFL developers
to use it.
Instead, we should provide some wrapper APIs like ewk_network_proxy_uri_set
for future changes.

  • ewk/ewk_network.cpp: Removed soup related header,APIs and comments.

(ewk_network_tls_ca_certificates_path_set):

  • ewk/ewk_network.h: Ditto.
  • ewk/ewk_view.cpp: Ditto.
  • ewk/ewk_view.h: Ditto.
5:20 AM Changeset in webkit [164027] by ChangSeok Oh
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Removed unexpected pass tests from TextExpections

  • platform/gtk-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
4:58 AM Changeset in webkit [164026] by ChangSeok Oh
  • 9 edits in trunk/Source/WebCore

Support ANGLE_instanced_arrays for GLES backend.
https://bugs.webkit.org/show_bug.cgi?id=128579

Reviewed by Dean Jackson.

Add some APIs to Extensions3D to support ANGLE_instanced_arrays for GLES backend.
At the same time, drawArraysInstanced, drawElementsInstanced and vertexAttribDivisor
are moved from GC3DOpenGL.cpp to GC3DOpenGLCommon.cpp since they could be shareable
through Extensions3D.

Covered by fast/canvas/webgl/angle-instanced-arrays.html

  • platform/graphics/Extensions3D.h:
  • platform/graphics/opengl/Extensions3DOpenGL.cpp:

(WebCore::Extensions3DOpenGL::drawArraysInstanced):
(WebCore::Extensions3DOpenGL::drawElementsInstanced):
(WebCore::Extensions3DOpenGL::vertexAttribDivisor):

  • platform/graphics/opengl/Extensions3DOpenGL.h:
  • platform/graphics/opengl/Extensions3DOpenGLES.cpp:

(WebCore::Extensions3DOpenGLES::Extensions3DOpenGLES):
(WebCore::Extensions3DOpenGLES::drawArraysInstanced):
(WebCore::Extensions3DOpenGLES::drawElementsInstanced):
(WebCore::Extensions3DOpenGLES::vertexAttribDivisor):
(WebCore::Extensions3DOpenGLES::supportsExtension):

  • platform/graphics/opengl/Extensions3DOpenGLES.h:
  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::drawArraysInstanced):
(WebCore::GraphicsContext3D::drawElementsInstanced):
(WebCore::GraphicsContext3D::vertexAttribDivisor):

  • platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
4:35 AM Changeset in webkit [164025] by Michał Pakuła vel Rutka
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed EFL gardening

Add test expectations for failing tests.

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/efl/mathml/presentation/mspace-children-expected.txt: Added EFL expectation after r163626.
3:28 AM Changeset in webkit [164024] by calvaris@igalia.com
  • 51 edits
    2 adds in trunk

[GTK] MEDIA_CONTROLS_SCRIPT support
https://bugs.webkit.org/show_bug.cgi?id=123097

Reviewed by Jer Noble.

.:

Part of the Autotools and CMake structure to build the media
controls script.

  • Source/autotools/SetupWebKitFeatures.m4: Activated the media

controls script by default.

  • Source/cmake/OptionsGTK.cmake: Activated the media controls

script by default.

  • Source/cmake/WebKitFeatures.cmake: Created the option to

activate the controls script.

  • Source/cmakeconfig.h.cmake: Created the define template the the

media controls script.

Source/WebCore:

WebKitGTK+ multimedia controls are now managed from Javascript
code. Apple controls are kept as common code and GTK+ ones are
subclassed for the specific behavior.

Both CMake and Autotools build support is provided.

  • CMakeLists.txt: Added support to build the media controls

script and their associated files.

  • GNUmakefile.am: Added support to generate the C++ code from the

Javascript.

  • GNUmakefile.list.am: Added the media controls script associated

files.

  • Modules/mediacontrols/MediaControlsHost.cpp:
  • Modules/mediacontrols/MediaControlsHost.h:
  • Modules/mediacontrols/MediaControlsHost.idl:

(WebCore::MediaControlsHost::supportsFullscreen): Added attribute
to know if the element supports fullscreen.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.handleWrapperMouseMove):
(Controller.prototype.handleWrapperMouseOut):
(Controller.prototype.updatePlaying): Use clear and
resetHideControlsTimer.
(Controller.prototype.clearHideControlsTimer): Added.
(Controller.prototype.resetHideControlsTimer): Added.

  • Modules/mediacontrols/mediaControlsGtk.js: Added.

(createControls): Calls ControllerGtk.
(ControllerGtk): Calls the superclass.
(contains): Defines a function to know if an object is contained
in an array.
(ControllerGtk.prototype.inheritFrom): Copies the method of the
superclass that are not reimplemented in the subclass.
(ControllerGtk.prototype.createControls): Calls the superclass and
create the remaining needed elements.
(ControllerGtk.prototype.configureInlineControls): Configures the
controls.
(ControllerGtk.prototype.setStatusHidden): Redefined empty.
(ControllerGtk.prototype.updateTime): Writes the duration and
current position. As it was so far, current time also includes
duration. If current time is bigger than 0 we show that.
(ControllerGtk.prototype.showCurrentTime): Shows current time and
hides duration label (that is included in current time).
(ControllerGtk.prototype.handlePlay): Calls the superclass and
force showing the current time.
(ControllerGtk.prototype.handleTimeUpdate): Always update the
time.
(ControllerGtk.prototype.handleMuteButtonMouseOver): Shows the
volume slider.
(ControllerGtk.prototype.handleVolumeBoxMouseOut): Hides the
volume slider.
(ControllerGtk.prototype.addControls): Adds the enclosure instead
of the panel directly. Panel is, of course, part of the enclosure.
(ControllerGtk.prototype.updateReadyState): Shows the fullscreen
button only if fullscreen is supported. Sets the volume in up or
down mode depending on its position in the document. Updates the
volume.
(ControllerGtk.prototype.setControlsType): Creates the controls it
they were not created before. Unlike Apple ones, WebKitGTK+
fullscreen and inline controls are the same.
(ControllerGtk.prototype.updatePlaying): Calls the superclass and
shows the controls if not playing.
(ControllerGtk.prototype.handleCaptionButtonClicked): Redefined
empty. To be coherent with volume, that also shows a popup, this
is handled with mouseover instead of click.
(ControllerGtk.prototype.buildCaptionMenu): Calls the superclass
to build the menu, sets some listeners, centers the popup with the
captions button, keeps the current height and sets the style to 0,
which is needed to animate it.
(ControllerGtk.prototype.destroyCaptionMenu): Hides the caption menu.
(ControllerGtk.prototype.showCaptionMenu): Resets the height to
its original. We don't animate it with CSS because we would need
to specify a height in the style and we don't know it in advance.
(ControllerGtk.prototype.hideCaptionMenu): Sets height to 0.
(ControllerGtk.prototype.captionMenuTransitionEnd): When the
captions menu transtition ends, it is destroyed.
(ControllerGtk.prototype.handleCaptionButtonMouseOver): Creates
the caption menu and shows it.
(ControllerGtk.prototype.handleCaptionButtonMouseOut): Hides the
captions menu.
(ControllerGtk.prototype.handleCaptionMouseOut): Hides the
captions menu.

  • PlatformGTK.cmake: Added WebCore to the target link libraries

and initialized the variables needed at CMakelists.txt

  • css/mediaControlsGtk.css:

(audio::-webkit-media-controls-panel)
(video::-webkit-media-controls-panel): Added transtion based on opacity.
(video::-webkit-media-controls-panel): Set video opacity to 0.
(video::-webkit-media-controls-panel.paused): Set video opacity to 1.
(audio::-webkit-media-controls-panel div.mute-box): Set the same
style as the mute button to preserve the layout.
(audio::-webkit-media-controls-panel div.mute-box.hidden): Sets
the display to none.
(audio::-webkit-media-controls-mute-button)
(video::-webkit-media-controls-mute-button): Removed the outline
and the margin that is managed by the mute box now.
(audio::-webkit-media-controls-play-button)
(video::-webkit-media-controls-play-button): Removed the outline.
(audio::-webkit-media-controls-time-remaining-display)
(video::-webkit-media-controls-time-remaining-display): Removed
the display.
(audio::-webkit-media-controls-current-time-display)
(video::-webkit-media-controls-current-time-display): Added the
display block.
(video::-webkit-media-controls-time-remaining-display): Set
display none.
(video::-webkit-media-controls-time-remaining-display.show): Set
display block.
(video::-webkit-media-controls-time-remaining-display.hidden): Set
display none.
(audio::-webkit-media-controls-timeline)
(video::-webkit-media-controls-timeline): Removed outline.
(audio::-webkit-media-controls-volume-slider-container)
(video::-webkit-media-controls-volume-slider-container): Set
overflow hidden and set a transition by height.
(video::-webkit-media-controls-volume-slider-container.hidden):
Set height 0.
(video::-webkit-media-controls-volume-slider-container.down): Set
bottom to be below the panel. Changed the border radius and
transition accordingly.
(video::-webkit-media-controls-panel .hidden.down): Sets default
bottom as 0.
(audio::-webkit-media-controls-volume-slider)
(video::-webkit-media-controls-volume-slider): Removed the outline.
(audio::-webkit-media-controls-toggle-closed-captions-button)
(video::-webkit-media-controls-toggle-closed-captions-button):
Removed the background that is painted from C++ and removed the
outline.
(video::-webkit-media-controls-closed-captions-container):
(video::-webkit-media-controls-closed-captions-container h3):
(video::-webkit-media-controls-closed-captions-container ul):
(video::-webkit-media-controls-closed-captions-container li):
(video::-webkit-media-controls-closed-captions-container li.selected): Changed
the style to make it more coherent with the rest of the controls.
(audio::-webkit-media-controls-fullscreen-button)
(video::-webkit-media-controls-fullscreen-button): Removed the outline.
(audio::-webkit-media-controls-panel button.hidden): Sets the
display to none.

  • html/HTMLMediaElement.cpp: UserAgentScripts.h is not needed here

and build cmake build would need for changes to get this compiled.

  • platform/gtk/RenderThemeGtk.cpp:

(WebCore::nodeHasPseudo): Added. Checks if a node has a certain
pseudo.
(WebCore::nodeHasClass): Added. Checks if a node has a certain
class.
(WebCore::supportsFocus): Removed some element types as outline is
now handled in CSS.
(WebCore::RenderThemeGtk::paintMediaPlayButton): Checks if the
play button has the class paused to show the play icon instead of
the pause one.
(WebCore::RenderThemeGtk::paintMediaToggleClosedCaptionsButton):
Added. Paints the captions icon.
(WebCore::RenderThemeGtk::mediaControlsScript): Added. Loads the
bundled scripts.

  • platform/gtk/RenderThemeGtk.h: Added the mediaControlsScript

method and declared the redefinition of the method to play the
captions icon.

LayoutTests:

Tests infrastructure for the media controls script.

  • media/click-volume-bar-not-pausing.html:
  • media/media-volume-slider-rendered-normal.html:
  • media/video-controls-captions-trackmenu-hide-on-click-outside.html:
  • media/video-volume-slider.html: Fixed.
  • platform/gtk-wk2/TestExpectations: Tests flagged.
  • platform/gtk/TestExpectations: Changed tests flags.
  • platform/gtk/accessibility/media-element-expected.txt:
  • platform/gtk/fast/hidpi/video-controls-in-hidpi-expected.txt:
  • platform/gtk/fast/layers/video-layer-expected.txt: Rebaseline.
  • platform/gtk/fullscreen/video-controls-override-expected.txt: Added.
  • platform/gtk/http/tests/media/video-buffered-range-contains-currentTime-expected.png:
  • platform/gtk/media/audio-controls-rendering-expected.png:
  • platform/gtk/media/audio-controls-rendering-expected.txt:
  • platform/gtk/media/audio-repaint-expected.txt:
  • platform/gtk/media/controls-after-reload-expected.png:
  • platform/gtk/media/controls-after-reload-expected.txt:
  • platform/gtk/media/controls-strict-expected.png:
  • platform/gtk/media/controls-strict-expected.txt:
  • platform/gtk/media/controls-styling-strict-expected.png:
  • platform/gtk/media/controls-styling-strict-expected.txt:
  • platform/gtk/media/controls-without-preload-expected.png:
  • platform/gtk/media/controls-without-preload-expected.txt:
  • platform/gtk/media/video-controls-rendering-expected.png:
  • platform/gtk/media/video-controls-rendering-expected.txt:
  • platform/gtk/media/video-display-toggle-expected.png:
  • platform/gtk/media/video-display-toggle-expected.txt:
  • platform/gtk/media/video-empty-source-expected.txt:
  • platform/gtk/media/video-no-audio-expected.png:
  • platform/gtk/media/video-no-audio-expected.txt:
  • platform/gtk/media/video-volume-slider-expected.png:
  • platform/gtk/media/video-volume-slider-expected.txt:
  • platform/gtk/media/video-zoom-controls-expected.png:
  • platform/gtk/media/video-zoom-controls-expected.txt:

Rebaseline.

12:42 AM Changeset in webkit [164023] by svillar@igalia.com
  • 2 edits in trunk/Tools

Unreviewed. Moved myself to the list of reviewers.

  • Scripts/webkitpy/common/config/contributors.json:
12:39 AM Changeset in webkit [164022] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

12:36 AM Changeset in webkit [164021] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Speculative build fix after r163998.

  • DumpRenderTree/ios/PerlSupport/Makefile:
12:36 AM Changeset in webkit [164020] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.18

New tag.

Feb 12, 2014:

10:52 PM Changeset in webkit [164019] by beidson@apple.com
  • 5 edits in trunk/LayoutTests

IDB: TestExpectations batch - "odd-strings.html to structured-clone.html”

Unreviewed.

  • platform/mac-wk2/TestExpectations:
  • storage/indexeddb/open-cursor-expected.txt:
  • storage/indexeddb/removed-expected.txt:
  • storage/indexeddb/request-result-cache-expected.txt:
10:50 PM Changeset in webkit [164018] by mark.lam@apple.com
  • 9 edits in trunk/Source

No need to save reservedZoneSize when dropping the JSLock.
<https://webkit.org/b/128719>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

The reservedZoneSize does not change due to the VM being run on a different
thread. Hence, there is no need to save and restore its value. Instead of
calling updateReservedZoneSize() to update the stack limit, we now call
setStackPointerAtVMEntry() to do the job. setStackPointerAtVMEntry()
will update the stackPointerAtVMEntry and delegate to updateStackLimit() to
update the stack limit based on the new stackPointerAtVMEntry.

  • runtime/ErrorHandlingScope.cpp:

(JSC::ErrorHandlingScope::ErrorHandlingScope):
(JSC::ErrorHandlingScope::~ErrorHandlingScope):

  • Previously, we initialize stackPointerAtVMEntry in VMEntryScope. This means that the stackPointerAtVMEntry may not be initialize when we instantiate the ErrorHandlingScope. And so, we needed to initialize the stackPointerAtVMEntry in the ErrorHandlingScope constructor if it's not already initialized.

Now that we initialize the stackPointerAtVMEntry when we lock the VM JSLock,
we are guaranteed that it will be initialized by the time we instantiate
the ErrorHandlingScope. Hence, we can change the ErrorHandlingScope code
to just assert that the stackPointerAtVMEntry is initialized instead.

  • runtime/InitializeThreading.cpp:

(JSC::initializeThreading):

  • We no longer need to save the reservedZoneSize. Remove the related code.
  • runtime/JSLock.cpp:

(JSC::JSLock::lock):

  • When we grab the JSLock mutex for the first time, there is no reason why the stackPointerAtVMEntry should be initialized. By definition, grabbing the lock for the first time equates to entering the VM for the first time. Hence, we can just assert that stackPointerAtVMEntry is uninitialized, and initialize it unconditionally.

The only exception to this is if we're locking to regrab the JSLock in
grabAllLocks(), but grabAllLocks() will take care of restoring the
stackPointerAtVMEntry in that case after lock() returns. stackPointerAtVMEntry
should still be 0 when we've just locked the JSLock. So, the above assertion
always holds true.

Note: VM::setStackPointerAtVMEntry() will take care of calling
VM::updateStackLimit() based on the new stackPointerAtVMEntry.

  • There is no need to save the reservedZoneSize. The reservedZoneSize is set to Options::reservedZoneSize() when the VM is initialized. Thereafter, the ErrorHandlingScope will change it to Options::errorModeReservedZoneSize() when we're handling an error, and it will restore it afterwards. There is no other reason we should be changing the reservedZoneSize. Hence, we can remove the unnecessary code to save it here.

(JSC::JSLock::unlock):

  • Similarly, when the lockCount reaches 0 in unlock(), it is synonymous with exiting the VM. Hence, we should just clear the stackPointerAtVMEntry and update the stackLimit. Exiting the VM should have no effect on the VM reservedZoneSize. Hence, we can remove the unnecessary code to "restore" it.

(JSC::JSLock::dropAllLocks):

  • When dropping locks, we do not need to save the reservedZoneSize because the reservedZoneSize should remain the same regardless of which thread we are executing JS on. Hence, we can remove the unnecessary code to save the reservedZoneSize here.

(JSC::JSLock::grabAllLocks):

  • When re-grabbing locks, restoring the stackPointerAtVMEntry via VM::setStackPointerAtVMEntry() will take care of updating the stack limit. As explained above, there's no need to save the reservedZoneSize. Hence, there's no need to "restore" it here.
  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::setStackPointerAtVMEntry):

  • Sets the stackPointerAtVMEntry and delegates to updateStackLimit() to update the stack limit based on the new stackPointerAtVMEntry.

(JSC::VM::updateStackLimit):

  • runtime/VM.h:

(JSC::VM::stackPointerAtVMEntry):

  • Renamed stackPointerAtVMEntry to m_stackPointerAtVMEntry and made it private. Added a stackPointerAtVMEntry() function to read the value.

Source/WTF:

  • wtf/WTFThreadData.cpp:

(WTF::WTFThreadData::WTFThreadData):

  • wtf/WTFThreadData.h:
  • removed unnneeded m_savedReservedZoneSize.
10:40 PM Changeset in webkit [164017] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Another Windows test expectations update.

  • platform/win/TestExpectations:
10:31 PM Changeset in webkit [164016] by beidson@apple.com
  • 11 edits in trunk/LayoutTests

IDB: TestExpectations batch - "key-generator.html to objectStore-required-arguments.html"

Unreviewed.

  • platform/mac-wk2/TestExpectations:
  • storage/indexeddb/keypath-arrays-expected.txt:
  • storage/indexeddb/keypath-basics-expected.txt:
  • storage/indexeddb/keypath-edges-expected.txt:
  • storage/indexeddb/keyrange-expected.txt:
  • storage/indexeddb/keyrange-required-arguments-expected.txt:
  • storage/indexeddb/object-lookups-in-versionchange-expected.txt:
  • storage/indexeddb/objectStore-required-arguments-expected.txt:
  • storage/indexeddb/objectstore-count-expected.txt:
  • storage/indexeddb/objectstore-cursor-expected.txt:
10:04 PM Changeset in webkit [164015] by Antti Koivisto
  • 4 edits in trunk/Source/WebKit2

Return immediately from DestroyPlugin IPC call
https://bugs.webkit.org/show_bug.cgi?id=128712

Reviewed by Anders Carlsson.

In some cases we spend a lot of time waiting for synchronous IPC for plugin termination to complete. Reduce
the delay by returning from IPC immediately when the plugin process receives it. Just using asynchrounous
IPC might introduce undesirable arbitrary delay between the IPC call returning and the destruction actually
starting.

  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::destroyPlugin):

  • PluginProcess/WebProcessConnection.h:
  • PluginProcess/WebProcessConnection.messages.in:
9:52 PM Changeset in webkit [164014] by beidson@apple.com
  • 9 edits in trunk/LayoutTests

IDB: TestExpectations batch - "error-causes-abort-by-default.html to invalid-keys.html"

Unreviewed.

  • platform/mac-wk2/TestExpectations:
  • storage/indexeddb/exception-in-event-aborts-expected.txt:
  • storage/indexeddb/index-count-expected.txt:
  • storage/indexeddb/index-get-key-argument-required-expected.txt:
  • storage/indexeddb/intversion-bad-parameters-expected.txt:
  • storage/indexeddb/intversion-close-in-oncomplete-expected.txt:
  • storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt:
  • storage/indexeddb/invalid-keys-expected.txt:
9:39 PM Changeset in webkit [164013] by rniwa@webkit.org
  • 5 edits in trunk/LayoutTests

Update test expectations for Windows.

  • TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
9:29 PM Changeset in webkit [164012] by beidson@apple.com
  • 6 edits in trunk/LayoutTests

IDB: TestExpectations batch - "data-corruption.html to duplicates.html"
https://bugs.webkit.org/show_bug.cgi?id=128711

Reviewed by Alexey Proskuryakov.

  • platform/mac-wk2/TestExpectations:
  • storage/indexeddb/database-basics-expected.txt:
  • storage/indexeddb/database-name-undefined-expected.txt:
  • storage/indexeddb/deleteIndex-bug110792-expected.txt:
  • storage/indexeddb/deleteObjectStore-name-argument-required-expected.txt:
8:47 PM Changeset in webkit [164011] by beidson@apple.com
  • 6 edits in trunk/LayoutTests

IDB: TestExpectations batch - "cursor-added-bug.html to cursor-value.html"
https://bugs.webkit.org/show_bug.cgi?id=128706

Reviewed by Alexey Proskuryakov.

  • platform/mac-wk2/TestExpectations:
  • storage/indexeddb/cursor-continue-dir-expected.txt:
  • storage/indexeddb/cursor-continue-expected.txt:
  • storage/indexeddb/cursor-finished-expected.txt:
  • storage/indexeddb/cursor-update-value-argument-required-expected.txt:
8:43 PM Changeset in webkit [164010] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Pass the related page in the WebPageConfiguration struct
https://bugs.webkit.org/show_bug.cgi?id=128714

Reviewed by Darin Adler.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

  • UIProcess/API/ios/WKContentView.h:
  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView initWithFrame:context:WebKit::configuration:WebKit::]):

8:24 PM Changeset in webkit [164009] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

DelayedReleaseScope in MarkedAllocator::tryAllocateHelper is wrong
https://bugs.webkit.org/show_bug.cgi?id=128641

Reviewed by Michael Saboff.

We were improperly handling the case where the DelayedReleaseScope
in tryAllocateHelper would cause us to drop the API lock, allowing
another thread to sneak in and allocate a new block after we had already
concluded that there were no more blocks to allocate out of.

The fix is to call tryAllocateHelper in a loop until we know for sure
that this did not happen.

There was also a race condition with the DelayedReleaseScope in addBlock.
We would add the block to the MarkedBlock's list, sweep it, and then return,
causing us to drop the API lock momentarily. Another thread could then
grab the lock, and allocate out of the new block to the point where the
free list was empty. Then we would return to the original thread, who thinks
it's impossible to not allocate successfully at this point.
Instead we should just let tryAllocate do all the hard work with correctly
sweeping and getting a valid result.

There was another race condition in didFinishIterating. We would call resumeAllocating,
which would create a DelayedReleaseScope. The DelayedReleaseScope would then release
API lock before we set m_isIterating back to false, which would potentially confuse
other threads.

  • heap/MarkedAllocator.cpp:

(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::tryPopFreeList):
(JSC::MarkedAllocator::tryAllocate):
(JSC::MarkedAllocator::addBlock):

  • heap/MarkedAllocator.h:
8:05 PM Changeset in webkit [164008] by ap@apple.com
  • 7 edits in trunk

Don't crash when SerializedScriptValue deserialization fails
https://bugs.webkit.org/show_bug.cgi?id=128657

Reviewed by Oliver Hunt.

Source/WebCore:

Test: crypto/subtle/postMessage-worker.html

  • bindings/js/JSMessageEventCustom.cpp: (WebCore::JSMessageEvent::data): Added a FIXME.
  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneBase::fail): Don't assert on failure.
(WebCore::SerializedScriptValue::deserialize): Never return a null JSValue, these
are not allowed.

LayoutTests:

  • crypto/subtle/postMessage-worker-expected.txt:
  • crypto/subtle/resources/postMessage-worker.js:
  • platform/mac/TestExpectations:

Unskip the test, and land (unimportant) failure results.

7:34 PM Changeset in webkit [164007] by BJ Burg
  • 7 edits
    1 add in trunk/Source/JavaScriptCore

Web Replay: capture and replay nondeterminism of Date.now() and Math.random()
https://bugs.webkit.org/show_bug.cgi?id=128633

Reviewed by Filip Pizlo.

Upstream the only two sources of script-visible nondeterminism in JavaScriptCore.

The random seed for WeakRandom is memoized when the owning JSGlobalObject is
constructed. It is deterministically initialized during replay before any
scripts execute with the global object.

The implementations of Date.now() and new Date() eventually obtain the
current time from jsCurrentTime(). When capturing, we save return values of
jsCurrentTime() into the recording. When replaying, we use memoized values from
the recording instead of obtaining values from the platform-specific currentTime()
implementation. No other code calls jsCurrentTime().

  • DerivedSources.make: Add rules to make JSReplayInputs.h from JSInputs.json.
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • replay/JSInputs.json: Added. Includes specifications for replay inputs

"GetCurrentTime" and "SetRandomSeed". Tests will be added for both input
cases once sufficient replay machinery has been added.

  • replay/NondeterministicInput.h: NondeterministicInput should not have

been marked 'final'.

  • runtime/DateConstructor.cpp:

(JSC::deterministicCurrentTime): Added. Load or store the current time depending
on what kind of InputCursor is attached to the JSGlobalObject.

(JSC::constructDate): Use deterministicCurrentTime().
(JSC::dateNow): Use deterministicCurrentTime().

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::setInputCursor): When setting a non-empty input cursor,
immediately store or load the "SetRandomSeed" input and initialize WeakRandom's
random seed with it. The input cursor (and thus random seed) must be set before
any scripts are evaluated with this JSGlobalObject.

  • runtime/WeakRandom.h:

(JSC::WeakRandom::WeakRandom): Add JSGlobalObject as a friend class.
(JSC::WeakRandom::initializeSeed): Extract the seed initialization into a
separate method so it can be called outside of the JSGlobalObject constructor.

7:02 PM Changeset in webkit [164006] by Bem Jones-Bey
  • 11 edits in trunk/Source/WebCore

[CSS Shapes] Rename shapeSize and others to make ShapeInfo and friends easier to understand
https://bugs.webkit.org/show_bug.cgi?id=128685

Reviewed by Alexandru Chiculita.

The ShapeInfo hierarchy has grown organically as the spec has changed,
and the naming has become very stale and confusing. The spec is now in
Last Call, so it seems like a good time to take a stab towards better
naming that matches the spec terminology and is also more consistent
in general.

No new tests, no behavior change.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::imageChanged): Use new names.
(WebCore::RenderBlock::updateShapeInsideInfoAfterStyleChange): Ditto.
(WebCore::shapeInfoRequiresRelayout): Ditto.
(WebCore::RenderBlock::computeShapeSize): Ditto.
(WebCore::RenderBlock::updateShapesAfterBlockLayout): Ditto.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::logicalSizeForChild): This method makes it much

cleaner to set the reference box size.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::positionNewFloats): Use new names.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::updateShapeOutsideInfoAfterStyleChange): Ditto.
(WebCore::RenderBox::imageChanged): Ditto.

  • rendering/shapes/ShapeInfo.cpp:

(WebCore::getShapeImageMarginRect): Rename variables.
(WebCore::ShapeInfo<RenderType>::computedShape): More renames.

  • rendering/shapes/ShapeInfo.h:

(WebCore::ShapeInfo::setReferenceBoxLogicalSize): Renamed from

setShapeSize.

(WebCore::ShapeInfo::logicalLineTop): Use new names.
(WebCore::ShapeInfo::logicalLineBottom): Ditto.
(WebCore::ShapeInfo::shapeContainingBlockLogicalHeight): Ditto.
(WebCore::ShapeInfo::markShapeAsDirty): Renamed from dirtyShapeSize.
(WebCore::ShapeInfo::isShapeDirty): Renamed from shapeSizeDirty.
(WebCore::ShapeInfo::referenceBoxLogicalSize): Renamed from shapeSize.
(WebCore::ShapeInfo::logicalTopOffset): Use new names.
(WebCore::ShapeInfo::logicalLeftOffset): Ditto.

  • rendering/shapes/ShapeInsideInfo.cpp:

(WebCore::ShapeInsideInfo::updateSegmentsForLine): Ditto.
(WebCore::ShapeInsideInfo::adjustLogicalLineTop): Ditto.
(WebCore::ShapeInsideInfo::computeFirstFitPositionForFloat): Ditto.

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

(WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): Ditto.

  • rendering/shapes/ShapeOutsideInfo.h:
6:03 PM Changeset in webkit [164005] by matthew_hanson@apple.com
  • 6 edits
    6 copies in branches/safari-537.75-branch

Merge r163579.

5:54 PM Changeset in webkit [164004] by andersca@apple.com
  • 4 edits
    1 copy in trunk/Source/WebKit2

Add relatedWebView property to WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=128707

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration relatedWebView]):
(-[WKWebViewConfiguration setRelatedWebView:]):

  • UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm.
  • WebKit2.xcodeproj/project.pbxproj:
5:40 PM Changeset in webkit [164003] by matthew_hanson@apple.com
  • 15 edits
    2 copies in branches/safari-537.75-branch

Merge r162679 and r162820

5:32 PM Changeset in webkit [164002] by matthew_hanson@apple.com
  • 10 edits in branches/safari-537.75-branch/Source/WebKit2

Merge r162904

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

REGRESSION: Crashing/Broken Tests Due To Unexpected 8-bit Character Data
https://bugs.webkit.org/show_bug.cgi?id=128698

Reviewed by Tim Horton.

  • platform/graphics/win/UniscribeController.cpp:

(WebCore::UniscribeController::advance): Make 16-bit copy when needed.
(WebCore::UniscribeController::shapeAndPlaceItem): Handle 8-bit case when checking
for word boundaries.

5:06 PM Changeset in webkit [164000] by beidson@apple.com
  • 7 edits in trunk/LayoutTests

IDB: TestExpectations batch - "aborted-versionchange-closes.html to createObjectStore-null-name.html"
https://bugs.webkit.org/show_bug.cgi?id=128703

Reviewed by Alexey Proskuryakov.

  • platform/mac-wk2/TestExpectations:
  • storage/indexeddb/aborted-versionchange-closes-expected.txt:
  • storage/indexeddb/basics-expected.txt:
  • storage/indexeddb/clone-exception-expected.txt:
  • storage/indexeddb/create-and-remove-object-store-expected.txt:
  • storage/indexeddb/createObjectStore-name-argument-required-expected.txt:
4:39 PM Changeset in webkit [163999] by ap@apple.com
  • 8 edits in trunk

[WK2] Add a C API to get WebCrypto master key from a client
https://bugs.webkit.org/show_bug.cgi?id=128702

Reviewed by Anders Carlsson.

Source/WebKit2:

Added a new version of WKContextClient, with a function that returns the key.

  • UIProcess/API/C/WKContext.h:
  • UIProcess/WebContextClient.cpp:

(WebKit::WebContextClient::copyWebCryptoMasterKey):

  • UIProcess/WebContextClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::wrapCryptoKey):
(WebKit::WebPageProxy::unwrapCryptoKey):

  • UIProcess/mac/WebPageProxyMac.mm:

Tools:

  • WebKitTestRunner/TestController.cpp:

(WTR::copyWebCryptoMasterKey):
(WTR::TestController::initialize):
Return a hardcoded key.

4:38 PM Changeset in webkit [163998] by dfarler@apple.com
  • 5 edits in trunk/Tools

Upstream iOS old-run-webkit-tests for use with DumpRenderTree in the iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=127694

Reviewed by Simon Fraser.

This is a short-term effort to get layout tests working in the iOS simulator again.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

Pass PLATFORM_NAME to the makefile.

  • DumpRenderTree/ios/PerlSupport/Makefile:

Cleanup.

  • Scripts/old-run-webkit-tests:

Added functions and some exceptions for the simulator.
(installAndLaunchDumpRenderTreeAppUsingNotification):
(openIPhoneSimulator):
(quitDumpRenderTreeAppUsingNotification):
(quitIPhoneSimulator):
(simulatorSessionUUID):
(openDiffTool):
(buildDumpTool):
(openDumpTool):
(closeDumpTool):
(dumpToolDidCrash):
(expectedDirectoryForTest):
(buildPlatformResultHierarchy):

  • Scripts/webkitdirs.pm:

Support functions for old-run-webkit-tests.
(determineIPhoneSimulatorVersion):
(iPhoneSimulatorVersion):

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

Add destinationFrame property to WKNavigationAction
https://bugs.webkit.org/show_bug.cgi?id=128700

Reviewed by Tim Horton.

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

(-[WKNavigationAction destinationFrame]):
(-[WKNavigationAction setDestinationFrame:]):

  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

3:57 PM Changeset in webkit [163996] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Forward declare WKNavigation in WKNavigationDelegate.h
https://bugs.webkit.org/show_bug.cgi?id=128699

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKNavigationDelegate.h:
3:14 PM Changeset in webkit [163995] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Document::childrenChanged does not necessarily have a page

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-12
Rubber stamped by Enrica Casucci.

  • dom/Document.cpp:

(WebCore::Document::childrenChanged):

3:13 PM Changeset in webkit [163994] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Expose scrollView on the WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128697

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWebView.h:
3:09 PM Changeset in webkit [163993] by timothy@apple.com
  • 2 edits in trunk/Source/WebCore

Add a missing ": " between the URL and exception in STDOUT logs.

https://bugs.webkit.org/show_bug.cgi?id=128689

Reviewed by Joseph Pecoraro.

  • page/PageConsole.cpp:

(WebCore::PageConsole::addMessage): Print ": " after calling
printSourceURLAndPosition now that it does not print it for us.

2:56 PM Changeset in webkit [163992] by andersca@apple.com
  • 4 edits
    1 delete in trunk/Source/WebKit2

Better iOS build fix.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::wrapCryptoKey):
(WebKit::WebPageProxy::unwrapCryptoKey):
Make these functions cross platform.

  • UIProcess/mac/WebPageProxyMac.mm:
2:54 PM Changeset in webkit [163991] by mhahnenberg@apple.com
  • 2 edits
    17 adds in trunk/Tools

Basic framework for a modern jsc CLI
https://bugs.webkit.org/show_bug.cgi?id=127435

Rubber stamped by Geoffrey Garen.

  • Scripts/build-jsc:
  • jsc-cli: Added.
  • jsc-cli/jsc-cli: Added.
  • jsc-cli/jsc-cli.xcodeproj: Added.
  • jsc-cli/jsc-cli.xcodeproj/project.pbxproj: Added.
  • jsc-cli/jsc-cli/CLIInstance.h: Added.
  • jsc-cli/jsc-cli/CLIInstance.m: Added.

(-[CLIInstance init]):
(-[CLIInstance loadFile:]):
(-[CLIInstance run]):

  • jsc-cli/jsc-cli/JSModule.h: Added.
  • jsc-cli/jsc-cli/JSModule.m: Added.

(coreModules):
(isCoreModule):
(classForModule):
(coreModuleFullPath):
(resolveModuleAsFile):
(resolveModuleAsDirectory):
(nodeModulePaths):
(resolveAsNodeModule):
(+[JSModule resolve:atPath:]):
(globalModuleCache):
(isCached):
(cachedModule):
(cacheModule):
(+[JSModule require:atPath:]):
(+[JSModule require:atPath:inContext:]):
(-[JSModule platformObjectInContext:]):
(-[JSModule initWithId:filename:context:]):
(-[JSModule dealloc]):
(-[JSModule didStartLoading]):
(-[JSModule didFinishLoading]):
(-[JSModule require:]):
(-[JSModule exports]):

  • jsc-cli/jsc-cli/JSRunLoopThread.h: Added.
  • jsc-cli/jsc-cli/JSRunLoopThread.m: Added.

(jsThreadMain):
(+[JSRunLoopThread threadMain]):
(-[JSRunLoopThread initWithFiles:andContext:]):
(-[JSRunLoopThread startRunLoop]):
(-[JSRunLoopThread start]):
(-[JSRunLoopThread join]):
(-[JSRunLoopThread didReceiveInput:]):
(-[JSRunLoopThread performCallback:withError:]):
(-[JSRunLoopThread performCallback:withArguments:]):
(-[JSRunLoopThread didFinishRunLoopInitialization]):

  • jsc-cli/jsc-cli/ReadEvalPrintLoop.h: Added.
  • jsc-cli/jsc-cli/ReadEvalPrintLoop.m: Added.

(-[ReadEvalPrintLoop initWithJSThread:]):
(prompt):
(escapeStringForOutput):
(-[ReadEvalPrintLoop processNextInput]):
(-[ReadEvalPrintLoop run]):

  • jsc-cli/jsc-cli/RunLoopThread.h: Added.
  • jsc-cli/jsc-cli/RunLoopThread.m: Added.

(+[RunLoopThread threadMain]):
(-[RunLoopThread init]):
(-[RunLoopThread dealloc]):
(-[RunLoopThread didFinishRunLoopInitialization]):
(-[RunLoopThread start]):
(-[RunLoopThread join]):

  • jsc-cli/jsc-cli/ScriptInputSource.h: Added.
  • jsc-cli/jsc-cli/ScriptInputSource.m: Added.

(scriptInputSourceScheduleRoutine):
(scriptInputSourcePerformRoutine):
(scriptInputSourceCancelRoutine):
(-[ScriptInputSource initWithContext:]):
(-[ScriptInputSource dealloc]):
(-[ScriptInputSource addToCurrentRunLoop]):
(-[ScriptInputSource removeFromRemoteRunLoop]):
(-[ScriptInputSource didReceiveScript:]):
(-[ScriptInputSource didReceiveSignal]):
(-[ScriptInputSource runScriptRemotely:]):
(-[ScriptInputSource finishAsyncCallback:withResult:]):

  • jsc-cli/jsc-cli/main.m: Added.

(main):

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

One more build fix after r163979.

  • Scripts/webkitpy/port/mac_unittest.py:

(test_baseline_search_path):

2:37 PM Changeset in webkit [163989] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

WK2: coordinate mapping for frames does not work when the page is scrolled.
https://bugs.webkit.org/show_bug.cgi?id=128690
<rdar://problem/16042925>

Reviewed by Simon Fraser.

We should not apply the scroll offset when using delegate scrolling.

  • platform/ScrollView.cpp:

(WebCore::ScrollView::rootViewToContents):
(WebCore::ScrollView::contentsToRootView):
(WebCore::ScrollView::rootViewToTotalContents):

2:36 PM Changeset in webkit [163988] by commit-queue@webkit.org
  • 6 edits in trunk/Source/JavaScriptCore

Web Inspector: Cleanup JavaScriptCore/inspector
https://bugs.webkit.org/show_bug.cgi?id=128662

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-02-12
Reviewed by Timothy Hatcher.

Now that the code has settled, do a cleanup pass.

  • inspector/ContentSearchUtilities.cpp:
  • inspector/InspectorValues.cpp:

(Inspector::InspectorValue::asObject):
(Inspector::InspectorValue::asArray):
(Inspector::InspectorValue::parseJSON):
(Inspector::InspectorObjectBase::getObject):
(Inspector::InspectorObjectBase::getArray):
(Inspector::InspectorObjectBase::get):

  • inspector/ScriptCallStackFactory.cpp:
  • inspector/ScriptDebugServer.cpp:
  • inspector/agents/JSGlobalObjectConsoleAgent.h:
2:36 PM Changeset in webkit [163987] by commit-queue@webkit.org
  • 22 edits
    4 moves in trunk/Source/WebCore

Web Inspector: Rename PageInjectedScript* to WebInjectedScript*
https://bugs.webkit.org/show_bug.cgi?id=128660

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-02-12
Reviewed by Timothy Hatcher.

Rename the files update build systems and users.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/CommandLineAPIModule.cpp:

(WebCore::CommandLineAPIModule::host):

  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

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

(WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):

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

(WebCore::PageProfilerAgent::PageProfilerAgent):
(WebCore::InspectorProfilerAgent::create):
(WebCore::WorkerProfilerAgent::WorkerProfilerAgent):
(WebCore::InspectorProfilerAgent::InspectorProfilerAgent):

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

(WebCore::PageConsoleAgent::PageConsoleAgent):
(WebCore::PageConsoleAgent::addInspectedNode):

  • inspector/PageConsoleAgent.h:
  • inspector/WebConsoleAgent.cpp:

(WebCore::WebConsoleAgent::WebConsoleAgent):
(WebCore::WebConsoleAgent::frameWindowDiscarded):
(WebCore::WebConsoleAgent::addInspectedHeapObject):

  • inspector/WebConsoleAgent.h:
  • inspector/WebInjectedScriptHost.cpp: Renamed from Source/WebCore/inspector/PageInjectedScriptHost.cpp.

(WebCore::WebInjectedScriptHost::type):
(WebCore::WebInjectedScriptHost::isHTMLAllCollection):

  • inspector/WebInjectedScriptHost.h: Renamed from Source/WebCore/inspector/PageInjectedScriptHost.h.
  • inspector/WebInjectedScriptManager.cpp: Renamed from Source/WebCore/inspector/PageInjectedScriptManager.cpp.

(WebCore::WebInjectedScriptManager::WebInjectedScriptManager):
(WebCore::WebInjectedScriptManager::disconnect):
(WebCore::WebInjectedScriptManager::didCreateInjectedScript):
(WebCore::WebInjectedScriptManager::discardInjectedScriptsFor):

  • inspector/WebInjectedScriptManager.h: Renamed from Source/WebCore/inspector/PageInjectedScriptManager.h.
  • inspector/WorkerConsoleAgent.cpp:

(WebCore::WorkerConsoleAgent::WorkerConsoleAgent):

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

(WebCore::WorkerInspectorController::WorkerInspectorController):

  • inspector/WorkerInspectorController.h:
2:32 PM Changeset in webkit [163986] by aestes@apple.com
  • 3 edits
    1 add in trunk/Source/WebKit2

Fix the iOS build after r163976

Moved WebPageProxy::{wrap,unwrap}CryptoKey() to a new file built by
both Mac and iOS.

  • UIProcess/Cocoa/WebPageProxyCocoa.mm: Added.

(WebKit::WebPageProxy::wrapCryptoKey):
(WebKit::WebPageProxy::unwrapCryptoKey):

  • UIProcess/mac/WebPageProxyMac.mm:
  • WebKit2.xcodeproj/project.pbxproj:
2:16 PM Changeset in webkit [163985] by stavila@adobe.com
  • 1 edit
    2 adds in trunk/LayoutTests

[CSS Regions] Fix layout of floated nested region
https://bugs.webkit.org/show_bug.cgi?id=128367

Reviewed by Mihnea Ovidenie.

Added test for the correct layout of nested, floating regions.

  • fast/regions/nested-floated-region-expected.html: Added.
  • fast/regions/nested-floated-region.html: Added.
2:07 PM Changeset in webkit [163984] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS Build fix after r163975.

page/EventHandler.cpp: Use wheel event stubs if !PLATFORM(MAC)
PLATFORM(IOS).
1:56 PM Changeset in webkit [163983] by barraclough@apple.com
  • 10 edits in trunk/Source/WebCore

Clean up PageThrottler interface
https://bugs.webkit.org/show_bug.cgi?id=128677

Reviewed by Benjamin Poulain.

Currently, responsibility for throttling DOM timers & suspending animations is split
between the Page & the PageThrottler. Clarify by making Page responsible for suspending
animations (PageThrottler is now purely related to aspects of timer throttling), and
move all timer throttling policy to the PageThrottler, with a single function on Page to
enable (Page::setTimerThrottlingEnabled).

Also, transmit the full ViewState to the PageThrottler (not just the IsVisuallyIdle flag),
and distinguish between media & page-load activity.

  • WebCore.exp.in:
    • removed setDOMTimerAlignmentInterval.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • createActivityToken -> mediaActivityToken
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::started):

  • createActivityToken -> pageLoadActivityToken
  • page/Page.cpp:

(WebCore::Page::Page):

  • added m_timerThrottlingEnabled, made PageThrottler a member

(WebCore::Page::setIsVisuallyIdleInternal):

  • update animiation suspension.

(WebCore::Page::setTimerThrottlingEnabled):

  • setTimerAlignmentInterval -> setTimerThrottlingEnabled

(WebCore::Page::setViewState):

  • pass viewState to PageThrottler.

(WebCore::Page::setIsVisibleInternal):

  • don't update timer throttling.
  • page/Page.h:

(WebCore::Page::pageThrottler):

  • made PageThrottler a member.

(WebCore::Page::timerAlignmentInterval):

  • inlined.
  • page/PageThrottler.cpp:

(WebCore::PageThrottler::PageThrottler):

  • initialize ViewState.

(WebCore::PageThrottler::~PageThrottler):

  • clean up by calling setTimerThrottlingEnabled directly.

(WebCore::PageThrottler::hiddenPageDOMTimerThrottlingStateChanged):

  • moved from Page.

(WebCore::PageThrottler::mediaActivityToken):
(WebCore::PageThrottler::pageLoadActivityToken):

  • from Page::createActivityToken

(WebCore::PageThrottler::throttlePage):
(WebCore::PageThrottler::unthrottlePage):

  • don't throttle animations here.

(WebCore::PageThrottler::setViewState):
(WebCore::PageThrottler::setIsVisible):

  • added, throttle Dom timers.
  • page/PageThrottler.h:
  • page/Settings.cpp:

(WebCore::Settings::setHiddenPageDOMTimerThrottlingEnabled):

  • removed setDOMTimerAlignmentInterval, hiddenPageDOMTimerThrottlingStateChanged moved to PageThrottler.
  • page/Settings.h:
    • removed setDOMTimerAlignmentInterval.
1:38 PM Changeset in webkit [163982] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • UIProcess/API/Cocoa/WKProcessClass.h:
1:37 PM Changeset in webkit [163981] by beidson@apple.com
  • 4 edits in trunk/LayoutTests

Cleanup mac/mac-wk1/mac-wk2 TestExpectations a little bit
https://bugs.webkit.org/show_bug.cgi?id=128679

Reviewed by Alexey Proskuryakov.

  • platform/mac-wk1/TestExpectations: mac-wk1 specific disables should go here.
  • platform/mac-wk2/TestExpectations: Remove unnecessary re-enabling, and simplify indexeddb/mozilla.
  • platform/mac/TestExpectations: Move some tests from here to mac-wk1.
1:37 PM Changeset in webkit [163980] by benjamin@webkit.org
  • 16 edits in trunk/Source

[WK2][iOS] Add back the special viewport for the old xhtml mobile doctype
https://bugs.webkit.org/show_bug.cgi?id=128639

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-12
Reviewed by Andreas Kling.

Source/WebCore:

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

(WebCore::Document::childrenChanged):
Document::setDocType() has been removed and the doctype update code with it.
Add a call to didReceiveDocType() to ensure the viewport is updated when the doctype is parsed.

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

(WebCore::Chrome::didReceiveDocType):

  • page/ChromeClient.h:
  • page/ViewportConfiguration.cpp:

(WebCore::ViewportConfiguration::xhtmlMobileParameters):

  • page/ViewportConfiguration.h:

Source/WebKit/ios:

  • WebCoreSupport/WebChromeClientIOS.h:
  • WebCoreSupport/WebChromeClientIOS.mm:

(WebChromeClientIOS::didReceiveMobileDocType):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:

(WebKit::WebChromeClient::didReceiveMobileDocType):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::didReceiveMobileDocType):

1:27 PM Changeset in webkit [163979] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Add a mac-wk1 platform directory and TestExpectations file
https://bugs.webkit.org/show_bug.cgi?id=128676

Build fix. Put mac-wk1 between mac-mountainlion and mac.

  • Scripts/webkitpy/port/mac.py:

(MacPort.default_baseline_search_path):

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

(TestRebaselineTest.test_baseline_directory):

1:22 PM Changeset in webkit [163978] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Mountain Lion build fix.

  • WebCore.exp.in: Only export WebCrypto symbols on 10.9+, because SUBTLE_CRYPTO

is not enabled on 10.8.

1:22 PM Changeset in webkit [163977] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

WKProcessClass.h and WKNavigationResponse.h should be public headers
https://bugs.webkit.org/show_bug.cgi?id=128683

Reviewed by Dan Bernstein.

  • WebKit2.xcodeproj/project.pbxproj:
1:08 PM Changeset in webkit [163976] by ap@apple.com
  • 15 edits
    4 adds in trunk

Wrap WebCrypto keys in SerializedScriptValue
https://bugs.webkit.org/show_bug.cgi?id=128680

Reviewed by Anders Carlsson.

Source/WebCore:

Test: crypto/subtle/rsa-indexeddb.html

Added Mac code to wrap a key with AES-GCM. We then serialize it into a plist,
because more custom formats would be crazy (even the custom format in SerializedScriptValue
makes me nervous, we'll certainly need to change CryptoKey in the future).

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • crypto/CommonCryptoUtilities.h:
  • crypto/SerializedCryptoKeyWrap.h: Added.
  • crypto/mac/SerializedCryptoKeyWrapMac.mm: Added.

(WebCore::vectorFromNSData):
(WebCore::wrapSerializedCryptoKey):
(WebCore::unwrapSerializedCryptoKey):

Source/WebKit/mac:

Retrieve a master key (placeholder code for now), and use it to wrap key data.

  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::wrapCryptoKey):
(WebChromeClient::unwrapCryptoKey):

Source/WebKit2:

Retrieve a master key (placeholder code for now), and use it to wrap key data.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::wrapCryptoKey):
(WebKit::WebPageProxy::unwrapCryptoKey):

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::wrapCryptoKey):
(WebKit::WebPageProxy::unwrapCryptoKey):

LayoutTests:

  • crypto/subtle/rsa-indexeddb-expected.txt: Added.
  • crypto/subtle/rsa-indexeddb.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
12:40 PM Changeset in webkit [163975] by Brent Fulgham
  • 11 edits in trunk/Source/WebCore

Wheel events don't latch to inner scrollable elements
https://bugs.webkit.org/show_bug.cgi?id=128225
<rdar://problem/12183688>

Reviewed by Simon Fraser

  • WebCore.exp.in: Add declarations for new scrolledToTop, scrolledToBottom, scrolledToLeft, and scrolledToRight.
  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear):
(WebCore::findScrollableContainer): New helper function to locate first node
in enclosing region of document that is capable of handling mouse wheel events.
(WebCore::isAtMaxDominantScrollPosition): Predicate to check if the scrollable
area is at the limit we will hit based on scroll direction.
(WebCore::EventHandler::handleWheelEvent): Identify the case where we have hit
the end of a scroll, and treat that as a valid 'handled' case. If the scroll event
is just starting, treat end-of-scroll as unhandled so the parent element can
handle things.

  • page/EventHandler.h:
  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously): Use new methods
on the PlatformWheelEvent class.
(WebCore::ScrollingTree::setOrClearLatchedNode): Ditto

  • platform/PlatformWheelEvent.h:

(WebCore::PlatformWheelEvent::shouldConsiderLatching): Moved implementation from ScrollingTree.
(WebCore::PlatformWheelEvent::shouldClearLatchedNode): Ditto

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::scrolledToTop): Added
(WebCore::ScrollableArea::scrolledToBottom):Added
(WebCore::ScrollableArea::scrolledToLeft): Added
(WebCore::ScrollableArea::scrolledToRight): Added

  • platform/ScrollableArea.h:
  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scrolledToTop): Added
(WebCore::RenderListBox::scrolledToBottom): Added
(WebCore::RenderListBox::scrolledToLeft): Added
(WebCore::RenderListBox::scrolledToRight): Added

  • rendering/RenderListBox.h: Changed to public inheritance of ScrollableArea to

allow generic use of this type in scroll wheel logic.

12:39 PM Changeset in webkit [163974] by b.long@cablelabs.com
  • 23 edits
    3 copies
    2 adds in trunk

Implement DataCue for metadata cues
https://bugs.webkit.org/show_bug.cgi?id=128402

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/track/track-datacue.html

  • CMakeLists.txt: Add DataCue.
  • DerivedSources.cpp: Add JSDataCue.
  • DerivedSources.make: Same.
  • GNUmakefile.list.am: Add DataCue and JSDataCue.
  • WebCore.vcxproj/WebCore.vcxproj: Add DataCue.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Same.
  • WebCore.xcodeproj/project.pbxproj: Add DataCue and JSDataCue.
  • bindings/js/JSTextTrackCueCustom.cpp:

(WebCore::toJS): Add DataCue wrapper.

  • html/track/DataCue.cpp: Copied from Source/WebCore/html/track/TextTrack.idl.
  • html/track/DataCue.h: Copied from Source/WebCore/html/track/TextTrack.idl.
  • html/track/DataCue.idl: Copied from Source/WebCore/html/track/TextTrack.idl.
  • html/track/InbandGenericTextTrack.cpp:

(WebCore::InbandGenericTextTrack::addGenericCue): Pass ASSERT_NO_EXCEPTION to addCue().

  • html/track/InbandWebVTTTextTrack.cpp:

(WebCore::InbandWebVTTTextTrack::newCuesParsed): Same.

  • html/track/TextTrack.cpp:

(WebCore::TextTrack::addCue): Throw an exception if DataCue is added to a track that isn't kind="metadata".

  • html/track/TextTrack.h: Add exception code parameter to addCue().
  • html/track/TextTrack.idl: Add [RaisesException] to addCue().
  • html/track/TextTrackCue.h: Add Data CueType.

LayoutTests:

  • js/dom/global-constructors-attributes-expected.txt: Add DataCue.
  • media/track/track-datacue-expected.txt: Added.
  • media/track/track-datacue.html: Added.
  • platform/efl/js/dom/global-constructors-attributes-expected.txt: Add DataCue.
  • platform/gtk-wk2/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/mac/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/win/js/dom/global-constructors-attributes-expected.txt: Same.
12:34 PM Changeset in webkit [163973] by Alan Bujtas
  • 10 edits in trunk/Source/WebCore

Subpixel layout: Clean up LayoutPoint class.
https://bugs.webkit.org/show_bug.cgi?id=128515

Reviewed by Simon Fraser.

Remove redundant functions (keep the more explicit ones).

No change in functionality.

  • page/FrameView.cpp:

(WebCore::FrameView::viewportConstrainedVisibleContentRect):

  • platform/graphics/LayoutPoint.h:

(WebCore::toLayoutPoint):
(WebCore::toLayoutSize):
(WebCore::roundedIntPoint):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateContentsRects):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::addFocusRingRects):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::offsetFromContainer):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::addFocusRingRects):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPosition):
(WebCore::accumulateOffsetTowardsAncestor):
(WebCore::RenderLayer::paintBackgroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragmentsWithPhase):
(WebCore::RenderLayer::paintOutlineForFragments):
(WebCore::RenderLayer::paintMaskForFragments):
(WebCore::RenderLayer::paintOverflowControlsForFragments):

  • rendering/RenderScrollbarPart.cpp:

(WebCore::RenderScrollbarPart::paintIntoRect):

12:32 PM Changeset in webkit [163972] by zandobersek@gmail.com
  • 6 edits in trunk/Source

[CoordinatedGraphics] Move CoordinatedGraphicsScene, CoordinatedLayerTreeHostProxy to std::function
https://bugs.webkit.org/show_bug.cgi?id=128473

Reviewed by Anders Carlsson.

Source/WebCore:

Move the CoordinatedGraphicsScene class to using std::function instead of WTF::Functional and std::bind
instead of WTF::bind. The function wrapper is now moved through function calls and not passed by reference,
and lambda functions are inlined into the dispatchOnMainThread() calls, with the CoordinatedGraphicsScene
refcount-protected.

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:

(WebCore::CoordinatedGraphicsScene::dispatchOnMainThread):
(WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):
(WebCore::CoordinatedGraphicsScene::commitSceneState):
(WebCore::CoordinatedGraphicsScene::syncRemoteContent):
(WebCore::CoordinatedGraphicsScene::purgeGLResources):
(WebCore::CoordinatedGraphicsScene::commitScrollOffset):
(WebCore::CoordinatedGraphicsScene::appendUpdate):
(WebCore::CoordinatedGraphicsScene::setActive):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:

Source/WebKit2:

Move the CoordinatedLayerTreeHostProxy class to using std::function instead of WTF::Functional. C++11
lambdas are used to construct the update functions, with the CoordinatedGraphicsScene refcount-protected
throughout the lifetime of the function wrapper.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate):
(WebKit::CoordinatedLayerTreeHostProxy::commitCoordinatedGraphicsState):
(WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
12:29 PM Changeset in webkit [163971] by eric.carlson@apple.com
  • 4 edits in trunk/Source/WebCore

Cleanup the code added for https://bugs.webkit.org/show_bug.cgi?id=128125.

Not reviewed.

  • html/HTMLMediaSession.cpp:

(WebCore::restrictionName): Don't need a "break" after a "return" in a case statement.

  • platform/audio/MediaSession.cpp:

(WebCore::stateName): Ditto.

  • platform/audio/ios/MediaSessionManagerIOS.mm:
12:28 PM Changeset in webkit [163970] by zandobersek@gmail.com
  • 2 edits in trunk

[GDB] Add .gdbinit to the list of files ignored by Git
https://bugs.webkit.org/show_bug.cgi?id=128455

Reviewed by Anders Carlsson.

  • .gitignore: Ignore the .gdbinit file which can be used to perform WebKit-specific GDB initialization

when the debugger is launched in the repository's root directory. Also remove a Chromium-specific comment
that covers already removed entries.

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

RenderNamedFlowThread should only support RenderElement children.
<https://webkit.org/b/128675>

Tighten up flow-thread rendering so that it only supports element
children directly. This means we don't have to worry about text
renderers on this code path.

Reviewed by Antti Koivisto.

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::insertedIntoTree):
(WebCore::RenderElement::willBeRemovedFromTree):
(WebCore::RenderElement::willBeDestroyed):

  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::nextRendererForElement):
(WebCore::RenderNamedFlowThread::addFlowChild):
(WebCore::RenderNamedFlowThread::removeFlowChild):

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

(WebCore::RenderObject::willBeDestroyed):
(WebCore::RenderObject::insertedIntoTree):
(WebCore::RenderObject::willBeRemovedFromTree):

  • style/StyleResolveTree.cpp:

(WebCore::Style::createRendererIfNeeded):

11:29 AM Changeset in webkit [163968] by beidson@apple.com
  • 5 edits
    2 adds in trunk

Add a mac-wk1 platform directory and TestExpectations file
https://bugs.webkit.org/show_bug.cgi?id=128676

Reviewed by Alexey Proskuryakov.

Tools:

  • Scripts/webkitpy/port/mac.py:

(MacPort.default_baseline_search_path): When running WK1 tests on Mac,

make mac-wk1 be the frontmost search path.

LayoutTests:

  • platform/mac-wk1/TestExpectations: Added. Skip IndexedDB here.
  • platform/mac-wk2/TestExpectations: Manage all mac-wk2 IndexedDB expectations here instead of building off the default mac expectations.
  • platform/mac/TestExpectations: Don’t skip IndexedDB here.
10:57 AM Changeset in webkit [163967] by rniwa@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Windows build fix attempt after r163960.

10:50 AM Changeset in webkit [163966] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.4/Source

Versioning.

10:45 AM Changeset in webkit [163965] by Lucas Forschler
  • 1 copy in tags/Safari-538.16.4

New Tag.

10:40 AM Changeset in webkit [163964] by msaboff@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Adjust VM::stackLimit based on the size of the largest FTL stack produced
https://bugs.webkit.org/show_bug.cgi?id=128562

Reviewed by Mark Lam.

Added VM::m_largestFTLStackSize to track the largest stack size of an FTL compiled
function. Added VM::m_ftlStackLimit for FTL functions stack limit. Renamed
VM::updateStackLimitWithReservedZoneSize to VM::updateReservedZoneSize. Renamed
VM::setStackLimit to VM::updateStackLimit and changed it to do the updating of the
stack limits, including taking into account m_largestFTLStackSize.

  • ftl/FTLJITFinalizer.cpp:

(JSC::FTL::JITFinalizer::finalizeFunction):

  • runtime/ErrorHandlingScope.cpp:

(JSC::ErrorHandlingScope::ErrorHandlingScope):
(JSC::ErrorHandlingScope::~ErrorHandlingScope):

  • runtime/JSLock.cpp:

(JSC::JSLock::lock):
(JSC::JSLock::unlock):
(JSC::JSLock::grabAllLocks):

  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::updateReservedZoneSize):
(JSC::VM::updateStackLimit):
(JSC::VM::updateFTLLargestStackSize):

  • runtime/VM.h:
10:17 AM Changeset in webkit [163963] by beidson@apple.com
  • 484 edits
    2 copies
    44 adds in trunk/LayoutTests

IDB: Reimport storage/indexeddb tests from Blink
https://bugs.webkit.org/show_bug.cgi?id=128636

Rubberstamped by Jer Noble.

Take two.

When I did this last night in r163923 the Mozilla tests outputted different results
because one of the logging functions they made had become more verbose.

This time we include the new test expectations for those tests, and update them to
reflect the different exception message outputted in WebKit vs Blink.

  • resources/js-test.js: Added.
  • storage/indexeddb/aborted-versionchange-closes-expected.txt:
  • storage/indexeddb/aborted-versionchange-closes.html:
  • storage/indexeddb/basics-expected.txt:
  • storage/indexeddb/basics-shared-workers-expected.txt:
  • storage/indexeddb/basics-shared-workers.html:
  • storage/indexeddb/basics-workers-expected.txt:
  • storage/indexeddb/basics-workers.html:
  • storage/indexeddb/basics.html:
  • storage/indexeddb/clone-exception-expected.txt:
  • storage/indexeddb/clone-exception.html:
  • storage/indexeddb/closed-cursor-expected.txt: Added.
  • storage/indexeddb/closed-cursor.html: Added.
  • storage/indexeddb/connection-leak-expected.txt: Added.
  • storage/indexeddb/connection-leak.html: Added.
  • storage/indexeddb/create-and-remove-object-store-expected.txt:
  • storage/indexeddb/create-and-remove-object-store.html:
  • storage/indexeddb/create-object-store-options-expected.txt:
  • storage/indexeddb/create-object-store-options.html:
  • storage/indexeddb/createIndex-after-failure-expected.txt:
  • storage/indexeddb/createIndex-after-failure.html:
  • storage/indexeddb/createObjectStore-name-argument-required-expected.txt:
  • storage/indexeddb/createObjectStore-name-argument-required.html:
  • storage/indexeddb/createObjectStore-null-name.html:
  • storage/indexeddb/cursor-added-bug.html:
  • storage/indexeddb/cursor-advance-expected.txt:
  • storage/indexeddb/cursor-advance-workers-expected.txt:
  • storage/indexeddb/cursor-advance-workers.html:
  • storage/indexeddb/cursor-advance.html:
  • storage/indexeddb/cursor-basics-expected.txt: Added.
  • storage/indexeddb/cursor-basics.html: Added.
  • storage/indexeddb/cursor-cast-expected.txt: Added.
  • storage/indexeddb/cursor-cast.html: Added.
  • storage/indexeddb/cursor-continue-dir-expected.txt:
  • storage/indexeddb/cursor-continue-dir.html:
  • storage/indexeddb/cursor-continue-expected.txt:
  • storage/indexeddb/cursor-continue-validity-expected.txt:
  • storage/indexeddb/cursor-continue-validity.html:
  • storage/indexeddb/cursor-continue.html:
  • storage/indexeddb/cursor-continueprimarykey-expected.txt: Added.
  • storage/indexeddb/cursor-continueprimarykey.html: Added.
  • storage/indexeddb/cursor-delete.html:
  • storage/indexeddb/cursor-finished-expected.txt:
  • storage/indexeddb/cursor-finished.html:
  • storage/indexeddb/cursor-inconsistency.html:
  • storage/indexeddb/cursor-index-delete.html:
  • storage/indexeddb/cursor-key-order.html:
  • storage/indexeddb/cursor-leak-expected.txt:
  • storage/indexeddb/cursor-leak.html: Added.
  • storage/indexeddb/cursor-overloads-expected.txt:
  • storage/indexeddb/cursor-overloads.html:
  • storage/indexeddb/cursor-prev-no-duplicate.html:
  • storage/indexeddb/cursor-primary-key-order.html:
  • storage/indexeddb/cursor-properties.html:
  • storage/indexeddb/cursor-request-cycle-expected.txt: Added.
  • storage/indexeddb/cursor-request-cycle.html: Added.
  • storage/indexeddb/cursor-reverse-bug.html:
  • storage/indexeddb/cursor-skip-deleted.html:
  • storage/indexeddb/cursor-update-expected.txt:
  • storage/indexeddb/cursor-update-value-argument-required-expected.txt:
  • storage/indexeddb/cursor-update-value-argument-required.html:
  • storage/indexeddb/cursor-update.html:
  • storage/indexeddb/cursor-value.html:
  • storage/indexeddb/data-corruption-expected.txt:
  • storage/indexeddb/data-corruption.html:
  • storage/indexeddb/database-basics-expected.txt:
  • storage/indexeddb/database-basics.html:
  • storage/indexeddb/database-close-expected.txt:
  • storage/indexeddb/database-close.html:
  • storage/indexeddb/database-closepending-flag-expected.txt:
  • storage/indexeddb/database-closepending-flag.html:
  • storage/indexeddb/database-deletepending-flag.html:
  • storage/indexeddb/database-name-undefined-expected.txt:
  • storage/indexeddb/database-name-undefined.html:
  • storage/indexeddb/database-odd-names.html:
  • storage/indexeddb/database-wrapper-expected.txt:
  • storage/indexeddb/database-wrapper.html:
  • storage/indexeddb/delete-closed-database-object-expected.txt:
  • storage/indexeddb/delete-closed-database-object.html:
  • storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html:
  • storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt:
  • storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html:
  • storage/indexeddb/delete-range.html:
  • storage/indexeddb/deleteIndex-bug110792-expected.txt:
  • storage/indexeddb/deleteIndex-bug110792.html:
  • storage/indexeddb/deleteIndex-expected.txt:
  • storage/indexeddb/deleteIndex.html:
  • storage/indexeddb/deleteObjectStore-name-argument-required-expected.txt:
  • storage/indexeddb/deleteObjectStore-name-argument-required.html:
  • storage/indexeddb/deleteObjectStore-null-name.html:
  • storage/indexeddb/deleted-objects-expected.txt:
  • storage/indexeddb/deleted-objects.html:
  • storage/indexeddb/deletedatabase-blocked.html:
  • storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers.html:
  • storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html:
  • storage/indexeddb/deletedatabase-delayed-by-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-versionchange.html:
  • storage/indexeddb/deletedatabase-not-blocked.html:
  • storage/indexeddb/deletedatabase-transaction.html:
  • storage/indexeddb/dont-commit-on-blocked.html:
  • storage/indexeddb/dont-wedge.html:
  • storage/indexeddb/duplicates.html:
  • storage/indexeddb/error-causes-abort-by-default.html:
  • storage/indexeddb/events-expected.txt:
  • storage/indexeddb/events.html:
  • storage/indexeddb/exception-in-event-aborts-expected.txt:
  • storage/indexeddb/exception-in-event-aborts.html:
  • storage/indexeddb/exceptions-expected.txt:
  • storage/indexeddb/exceptions.html:
  • storage/indexeddb/factory-basics-expected.txt:
  • storage/indexeddb/factory-basics-workers-expected.txt:
  • storage/indexeddb/factory-basics-workers.html:
  • storage/indexeddb/factory-basics.html:
  • storage/indexeddb/factory-cmp-expected.txt:
  • storage/indexeddb/factory-cmp.html:
  • storage/indexeddb/factory-deletedatabase.html:
  • storage/indexeddb/get-keyrange-expected.txt:
  • storage/indexeddb/get-keyrange.html:
  • storage/indexeddb/index-basics-expected.txt:
  • storage/indexeddb/index-basics-workers-expected.txt:
  • storage/indexeddb/index-basics-workers.html:
  • storage/indexeddb/index-basics.html:
  • storage/indexeddb/index-count-expected.txt:
  • storage/indexeddb/index-count.html:
  • storage/indexeddb/index-cursor.html:
  • storage/indexeddb/index-duplicate-keypaths.html:
  • storage/indexeddb/index-get-key-argument-required-expected.txt:
  • storage/indexeddb/index-get-key-argument-required.html:
  • storage/indexeddb/index-multientry.html:
  • storage/indexeddb/index-population.html:
  • storage/indexeddb/index-unique.html:
  • storage/indexeddb/interfaces.html:
  • storage/indexeddb/intversion-abort-in-initial-upgradeneeded.html:
  • storage/indexeddb/intversion-bad-parameters-expected.txt:
  • storage/indexeddb/intversion-bad-parameters.html:
  • storage/indexeddb/intversion-blocked.html:
  • storage/indexeddb/intversion-close-between-events.html:
  • storage/indexeddb/intversion-close-in-oncomplete-expected.txt:
  • storage/indexeddb/intversion-close-in-oncomplete.html:
  • storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt:
  • storage/indexeddb/intversion-close-in-upgradeneeded.html:
  • storage/indexeddb/intversion-encoding.html:
  • storage/indexeddb/intversion-gated-on-delete.html:
  • storage/indexeddb/intversion-long-queue-expected.txt:
  • storage/indexeddb/intversion-long-queue.html:
  • storage/indexeddb/intversion-omit-parameter.html:
  • storage/indexeddb/intversion-open-in-upgradeneeded.html:
  • storage/indexeddb/intversion-open-with-version.html:
  • storage/indexeddb/intversion-pending-version-changes-ascending-expected.txt: Added.
  • storage/indexeddb/intversion-pending-version-changes-ascending.html: Added.
  • storage/indexeddb/intversion-pending-version-changes-descending-expected.txt: Added.
  • storage/indexeddb/intversion-pending-version-changes-descending.html: Added.
  • storage/indexeddb/intversion-pending-version-changes-same-expected.txt: Added.
  • storage/indexeddb/intversion-pending-version-changes-same.html: Added.
  • storage/indexeddb/intversion-persistence.html:
  • storage/indexeddb/intversion-revert-on-abort.html:
  • storage/indexeddb/intversion-two-opens-no-versions.html:
  • storage/indexeddb/intversion-upgrades-expected.txt:
  • storage/indexeddb/intversion-upgrades.html:
  • storage/indexeddb/invalid-keys-expected.txt:
  • storage/indexeddb/invalid-keys.html:
  • storage/indexeddb/key-generator.html:
  • storage/indexeddb/key-sort-order-across-types.html:
  • storage/indexeddb/key-sort-order-date.html:
  • storage/indexeddb/key-type-array-expected.txt:
  • storage/indexeddb/key-type-array.html:
  • storage/indexeddb/key-type-binary-expected.txt: Added.
  • storage/indexeddb/key-type-binary.html: Added.
  • storage/indexeddb/key-type-infinity.html:
  • storage/indexeddb/keypath-arrays-expected.txt:
  • storage/indexeddb/keypath-arrays.html:
  • storage/indexeddb/keypath-basics-expected.txt:
  • storage/indexeddb/keypath-basics.html:
  • storage/indexeddb/keypath-edges-expected.txt:
  • storage/indexeddb/keypath-edges.html:
  • storage/indexeddb/keypath-fetch-key.html:
  • storage/indexeddb/keypath-intrinsic-properties.html:
  • storage/indexeddb/keyrange-expected.txt:
  • storage/indexeddb/keyrange-required-arguments-expected.txt:
  • storage/indexeddb/keyrange-required-arguments.html:
  • storage/indexeddb/keyrange.html:
  • storage/indexeddb/lazy-index-population-expected.txt:
  • storage/indexeddb/lazy-index-population.html:
  • storage/indexeddb/lazy-index-types.html:
  • storage/indexeddb/legacy-constants.html:
  • storage/indexeddb/list-ordering.html:
  • storage/indexeddb/metadata-race-expected.txt: Added.
  • storage/indexeddb/metadata-race.html: Added.
  • storage/indexeddb/metadata.html:
  • storage/indexeddb/mozilla/add-twice-failure.html:
  • storage/indexeddb/mozilla/autoincrement-indexes.html:
  • storage/indexeddb/mozilla/bad-keypath-expected.txt:
  • storage/indexeddb/mozilla/bad-keypath.html:
  • storage/indexeddb/mozilla/clear-expected.txt:
  • storage/indexeddb/mozilla/clear.html:
  • storage/indexeddb/mozilla/create-index-unique.html:
  • storage/indexeddb/mozilla/create-index-with-integer-keys.html:
  • storage/indexeddb/mozilla/create-objectstore-basics-expected.txt:
  • storage/indexeddb/mozilla/create-objectstore-basics.html:
  • storage/indexeddb/mozilla/create-objectstore-null-name.html:
  • storage/indexeddb/mozilla/cursor-mutation-objectstore-only.html:
  • storage/indexeddb/mozilla/cursor-mutation.html:
  • storage/indexeddb/mozilla/cursor-update-updates-indexes.html:
  • storage/indexeddb/mozilla/cursors-expected.txt:
  • storage/indexeddb/mozilla/cursors.html:
  • storage/indexeddb/mozilla/delete-result.html:
  • storage/indexeddb/mozilla/event-source.html:
  • storage/indexeddb/mozilla/global-data.html:
  • storage/indexeddb/mozilla/index-prev-no-duplicate.html:
  • storage/indexeddb/mozilla/indexes.html:
  • storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-delete-null-key.html:
  • storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-inline-and-passed.html:
  • storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-put-no-key.html:
  • storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-put-null-key.html:
  • storage/indexeddb/mozilla/key-requirements.html:
  • storage/indexeddb/mozilla/object-cursors.html:
  • storage/indexeddb/mozilla/object-identity.html:
  • storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put.html:
  • storage/indexeddb/mozilla/object-store-remove-values.html:
  • storage/indexeddb/mozilla/objectstorenames.html:
  • storage/indexeddb/mozilla/odd-result-order.html:
  • storage/indexeddb/mozilla/open-database-null-name.html:
  • storage/indexeddb/mozilla/put-get-values.html:
  • storage/indexeddb/mozilla/readonly-transactions-expected.txt:
  • storage/indexeddb/mozilla/readonly-transactions.html:
  • storage/indexeddb/mozilla/readwrite-transactions.html:
  • storage/indexeddb/mozilla/readyState.html:
  • storage/indexeddb/mozilla/remove-index.html:
  • storage/indexeddb/mozilla/remove-objectstore.html:
  • storage/indexeddb/mozilla/resources/add-twice-failure.js:
  • storage/indexeddb/mozilla/resources/autoincrement-indexes.js:
  • storage/indexeddb/mozilla/resources/bad-keypath.js:
  • storage/indexeddb/mozilla/resources/clear.js:
  • storage/indexeddb/mozilla/resources/create-index-unique.js:
  • storage/indexeddb/mozilla/resources/create-index-with-integer-keys.js:
  • storage/indexeddb/mozilla/resources/create-objectstore-basics.js:
  • storage/indexeddb/mozilla/resources/create-objectstore-null-name.js:
  • storage/indexeddb/mozilla/resources/cursor-mutation-objectstore-only.js:
  • storage/indexeddb/mozilla/resources/cursor-mutation.js:
  • storage/indexeddb/mozilla/resources/cursor-update-updates-indexes.js:
  • storage/indexeddb/mozilla/resources/cursors.js:
  • storage/indexeddb/mozilla/resources/delete-result.js:
  • storage/indexeddb/mozilla/resources/event-source.js:
  • storage/indexeddb/mozilla/resources/global-data.js:
  • storage/indexeddb/mozilla/resources/indexes.js:
  • storage/indexeddb/mozilla/resources/key-requirements-delete-null-key.js:
  • storage/indexeddb/mozilla/resources/key-requirements-inline-and-passed.js:
  • storage/indexeddb/mozilla/resources/key-requirements-put-no-key.js:
  • storage/indexeddb/mozilla/resources/key-requirements-put-null-key.js:
  • storage/indexeddb/mozilla/resources/key-requirements.js:
  • storage/indexeddb/mozilla/resources/object-cursors.js:
  • storage/indexeddb/mozilla/resources/object-identity.js:
  • storage/indexeddb/mozilla/resources/object-store-inline-autoincrement-key-added-on-put.js:
  • storage/indexeddb/mozilla/resources/object-store-remove-values.js:
  • storage/indexeddb/mozilla/resources/objectstorenames.js:
  • storage/indexeddb/mozilla/resources/odd-result-order.js:
  • storage/indexeddb/mozilla/resources/open-database-null-name.js:
  • storage/indexeddb/mozilla/resources/put-get-values.js:
  • storage/indexeddb/mozilla/resources/readonly-transactions.js:
  • storage/indexeddb/mozilla/resources/readwrite-transactions.js:
  • storage/indexeddb/mozilla/resources/readyState.js:
  • storage/indexeddb/mozilla/resources/remove-index.js:
  • storage/indexeddb/mozilla/resources/remove-objectstore.js:
  • storage/indexeddb/mozilla/resources/versionchange-abort.js:
  • storage/indexeddb/mozilla/versionchange-abort.html:
  • storage/indexeddb/mutating-cursor.html:
  • storage/indexeddb/noblobs-expected.txt:
  • storage/indexeddb/noblobs.html:
  • storage/indexeddb/object-lookups-in-versionchange-expected.txt:
  • storage/indexeddb/object-lookups-in-versionchange.html:
  • storage/indexeddb/objectStore-required-arguments-expected.txt:
  • storage/indexeddb/objectStore-required-arguments.html:
  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
  • storage/indexeddb/objectstore-basics-expected.txt:
  • storage/indexeddb/objectstore-basics-workers-expected.txt:
  • storage/indexeddb/objectstore-basics-workers.html:
  • storage/indexeddb/objectstore-basics.html:
  • storage/indexeddb/objectstore-clear.html:
  • storage/indexeddb/objectstore-count-expected.txt:
  • storage/indexeddb/objectstore-count.html:
  • storage/indexeddb/objectstore-cursor-expected.txt:
  • storage/indexeddb/objectstore-cursor.html:
  • storage/indexeddb/objectstore-keycursor-expected.txt: Added.
  • storage/indexeddb/objectstore-keycursor.html: Added.
  • storage/indexeddb/objectstore-removeobjectstore.html:
  • storage/indexeddb/odd-strings.html:
  • storage/indexeddb/open-bad-versions.html:
  • storage/indexeddb/open-cursor-expected.txt:
  • storage/indexeddb/open-cursor.html:
  • storage/indexeddb/open-during-transaction.html:
  • storage/indexeddb/open-ordering.html:
  • storage/indexeddb/open-twice-workers.html:
  • storage/indexeddb/opencursor-key.html:
  • storage/indexeddb/optional-arguments-expected.txt: Added.
  • storage/indexeddb/optional-arguments.html: Added.
  • storage/indexeddb/pending-activity-workers.html:
  • storage/indexeddb/pending-activity.html:
  • storage/indexeddb/pending-version-change-on-exit.html:
  • storage/indexeddb/pending-version-change-stuck-works-with-terminate.html:
  • storage/indexeddb/pending-version-change-stuck.html:
  • storage/indexeddb/persistence.html:
  • storage/indexeddb/prefetch-bugfix-108071-expected.txt:
  • storage/indexeddb/prefetch-bugfix-108071.html:
  • storage/indexeddb/prefetch-invalidation-expected.txt: Added.
  • storage/indexeddb/prefetch-invalidation.html: Added.
  • storage/indexeddb/prefetch-race-expected.txt: Added.
  • storage/indexeddb/prefetch-race.html: Added.
  • storage/indexeddb/queued-commands.html:
  • storage/indexeddb/readonly-properties.html:
  • storage/indexeddb/readonly.html:
  • storage/indexeddb/removed-expected.txt:
  • storage/indexeddb/removed.html:
  • storage/indexeddb/request-continue-abort.html:
  • storage/indexeddb/request-event-propagation.html:
  • storage/indexeddb/request-leak-expected.txt: Added.
  • storage/indexeddb/request-leak.html: Added.
  • storage/indexeddb/request-result-cache-expected.txt: Added.
  • storage/indexeddb/request-result-cache.html: Added.
  • storage/indexeddb/resources/aborted-versionchange-closes.js:
  • storage/indexeddb/resources/basics.js:
  • storage/indexeddb/resources/create-and-remove-object-store.js:
  • storage/indexeddb/resources/create-object-store-options.js:
  • storage/indexeddb/resources/createIndex-after-failure.js:
  • storage/indexeddb/resources/createObjectStore-name-argument-required.js:
  • storage/indexeddb/resources/createObjectStore-null-name.js:
  • storage/indexeddb/resources/cursor-added-bug.js:
  • storage/indexeddb/resources/cursor-advance.js:
  • storage/indexeddb/resources/cursor-basics.js: Added.
  • storage/indexeddb/resources/cursor-continue-dir.js:
  • storage/indexeddb/resources/cursor-continue-validity.js:
  • storage/indexeddb/resources/cursor-continue.js:
  • storage/indexeddb/resources/cursor-continueprimarykey.js: Added.
  • storage/indexeddb/resources/cursor-delete.js:
  • storage/indexeddb/resources/cursor-inconsistency.js:
  • storage/indexeddb/resources/cursor-index-delete.js:
  • storage/indexeddb/resources/cursor-key-order.js:
  • storage/indexeddb/resources/cursor-prev-no-duplicate.js:
  • storage/indexeddb/resources/cursor-primary-key-order.js:
  • storage/indexeddb/resources/cursor-properties.js:
  • storage/indexeddb/resources/cursor-reverse-bug.js:
  • storage/indexeddb/resources/cursor-skip-deleted.js:
  • storage/indexeddb/resources/cursor-update-value-argument-required.js:
  • storage/indexeddb/resources/cursor-update.js:
  • storage/indexeddb/resources/cursor-value.js:
  • storage/indexeddb/resources/data-corruption.js:
  • storage/indexeddb/resources/database-basics.js:
  • storage/indexeddb/resources/database-close.js:
  • storage/indexeddb/resources/database-closepending-flag.js:
  • storage/indexeddb/resources/database-deletepending-flag.js:
  • storage/indexeddb/resources/database-name-undefined.js:
  • storage/indexeddb/resources/database-odd-names.js:
  • storage/indexeddb/resources/database-quota.js:
  • storage/indexeddb/resources/database-wrapper.js:
  • storage/indexeddb/resources/delete-closed-database-object.js:
  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js:
  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js:
  • storage/indexeddb/resources/delete-range.js:
  • storage/indexeddb/resources/deleteIndex.js:
  • storage/indexeddb/resources/deleteObjectStore-name-argument-required.js:
  • storage/indexeddb/resources/deleteObjectStore-null-name.js:
  • storage/indexeddb/resources/deleted-objects.js:
  • storage/indexeddb/resources/deletedatabase-blocked.js:
  • storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js:
  • storage/indexeddb/resources/deletedatabase-delayed-by-versionchange.js:
  • storage/indexeddb/resources/deletedatabase-not-blocked.js:
  • storage/indexeddb/resources/dont-commit-on-blocked-worker.js:
  • storage/indexeddb/resources/dont-wedge.js:
  • storage/indexeddb/resources/duplicates.js:
  • storage/indexeddb/resources/error-causes-abort-by-default.js:
  • storage/indexeddb/resources/events.js:
  • storage/indexeddb/resources/exception-in-event-aborts.js:
  • storage/indexeddb/resources/exceptions.js:
  • storage/indexeddb/resources/factory-basics.js:
  • storage/indexeddb/resources/factory-cmp.js:
  • storage/indexeddb/resources/factory-deletedatabase.js:
  • storage/indexeddb/resources/get-keyrange.js:
  • storage/indexeddb/resources/index-basics.js:
  • storage/indexeddb/resources/index-count.js:
  • storage/indexeddb/resources/index-cursor.js:
  • storage/indexeddb/resources/index-duplicate-keypaths.js:
  • storage/indexeddb/resources/index-get-key-argument-required.js:
  • storage/indexeddb/resources/index-multientry.js:
  • storage/indexeddb/resources/index-population.js:
  • storage/indexeddb/resources/index-unique.js:
  • storage/indexeddb/resources/interfaces.js:
  • storage/indexeddb/resources/intversion-abort-in-initial-upgradeneeded.js:
  • storage/indexeddb/resources/intversion-bad-parameters.js:
  • storage/indexeddb/resources/intversion-blocked.js:
  • storage/indexeddb/resources/intversion-close-between-events.js:
  • storage/indexeddb/resources/intversion-close-in-oncomplete.js:
  • storage/indexeddb/resources/intversion-close-in-upgradeneeded.js:
  • storage/indexeddb/resources/intversion-encoding.js:
  • storage/indexeddb/resources/intversion-gated-on-delete.js:
  • storage/indexeddb/resources/intversion-long-queue.js:
  • storage/indexeddb/resources/intversion-omit-parameter.js:
  • storage/indexeddb/resources/intversion-open-in-upgradeneeded.js:
  • storage/indexeddb/resources/intversion-open-with-version.js:
  • storage/indexeddb/resources/intversion-pending-version-changes-ascending.js: Added.
  • storage/indexeddb/resources/intversion-pending-version-changes-descending.js: Added.
  • storage/indexeddb/resources/intversion-pending-version-changes-same.js: Added.
  • storage/indexeddb/resources/intversion-persistence.js:
  • storage/indexeddb/resources/intversion-revert-on-abort.js:
  • storage/indexeddb/resources/intversion-two-opens-no-versions.js:
  • storage/indexeddb/resources/intversion-upgrades.js:
  • storage/indexeddb/resources/invalid-keys.js:
  • storage/indexeddb/resources/key-generator.js:
  • storage/indexeddb/resources/key-sort-order-across-types.js:
  • storage/indexeddb/resources/key-sort-order-date.js:
  • storage/indexeddb/resources/key-type-array.js:
  • storage/indexeddb/resources/key-type-binary.js: Added.
  • storage/indexeddb/resources/key-type-infinity.js:
  • storage/indexeddb/resources/keypath-arrays.js:
  • storage/indexeddb/resources/keypath-basics.js:
  • storage/indexeddb/resources/keypath-edges.js:
  • storage/indexeddb/resources/keypath-fetch-key.js:
  • storage/indexeddb/resources/keypath-intrinsic-properties.js:
  • storage/indexeddb/resources/keyrange-required-arguments.js:
  • storage/indexeddb/resources/keyrange.js:
  • storage/indexeddb/resources/lazy-index-types.js:
  • storage/indexeddb/resources/legacy-constants.js:
  • storage/indexeddb/resources/list-ordering.js:
  • storage/indexeddb/resources/metadata.js:
  • storage/indexeddb/resources/mutating-cursor.js:
  • storage/indexeddb/resources/objectStore-required-arguments.js:
  • storage/indexeddb/resources/objectstore-autoincrement.js:
  • storage/indexeddb/resources/objectstore-basics.js:
  • storage/indexeddb/resources/objectstore-clear.js:
  • storage/indexeddb/resources/objectstore-count.js:
  • storage/indexeddb/resources/objectstore-cursor.js:
  • storage/indexeddb/resources/objectstore-keycursor.js:
  • storage/indexeddb/resources/objectstore-removeobjectstore.js:
  • storage/indexeddb/resources/odd-strings.js:
  • storage/indexeddb/resources/open-cursor.js:
  • storage/indexeddb/resources/open-during-transaction.js:
  • storage/indexeddb/resources/open-ordering.js:
  • storage/indexeddb/resources/open-twice.js:
  • storage/indexeddb/resources/opencursor-key.js:
  • storage/indexeddb/resources/pending-activity.js:
  • storage/indexeddb/resources/pending-version-change-on-exit.js:
  • storage/indexeddb/resources/pending-version-change-stuck.js:
  • storage/indexeddb/resources/persistence.js:
  • storage/indexeddb/resources/prefetch-bugfix-108071.js:
  • storage/indexeddb/resources/queued-commands.js:
  • storage/indexeddb/resources/readonly-properties.js:
  • storage/indexeddb/resources/readonly.js:
  • storage/indexeddb/resources/removed.js:
  • storage/indexeddb/resources/request-continue-abort.js:
  • storage/indexeddb/resources/request-event-propagation.js:
  • storage/indexeddb/resources/set_version_blocked.js:
  • storage/indexeddb/resources/setversion-blocked-by-versionchange-close.js:
  • storage/indexeddb/resources/setversion-not-blocked.js:
  • storage/indexeddb/resources/shared.js:
  • storage/indexeddb/resources/transaction-abort.js:
  • storage/indexeddb/resources/transaction-active-flag.js:
  • storage/indexeddb/resources/transaction-after-close.js:
  • storage/indexeddb/resources/transaction-and-objectstore-calls.js:
  • storage/indexeddb/resources/transaction-basics.js:
  • storage/indexeddb/resources/transaction-complete-workers.js:
  • storage/indexeddb/resources/transaction-coordination-across-databases.js:
  • storage/indexeddb/resources/transaction-coordination-within-database.js:
  • storage/indexeddb/resources/transaction-crash-on-abort.js:
  • storage/indexeddb/resources/transaction-error.js:
  • storage/indexeddb/resources/transaction-event-propagation.js:
  • storage/indexeddb/resources/transaction-read-only.js:
  • storage/indexeddb/resources/transaction-readwrite-exclusive.js:
  • storage/indexeddb/resources/transaction-rollback.js:
  • storage/indexeddb/resources/transaction-scope-sequencing.js:
  • storage/indexeddb/resources/transaction-starvation.js:
  • storage/indexeddb/resources/transaction-storeNames-required.js:
  • storage/indexeddb/resources/unblocked-version-changes.js:
  • storage/indexeddb/resources/unprefix.js:
  • storage/indexeddb/resources/value-undefined.js:
  • storage/indexeddb/resources/values-odd-types.js:
  • storage/indexeddb/resources/version-change-abort.js:
  • storage/indexeddb/resources/version-change-exclusive.js:
  • storage/indexeddb/resources/versionchangerequest-activedomobject.js:
  • storage/indexeddb/set_version_blocked.html:
  • storage/indexeddb/setversion-blocked-by-versionchange-close-expected.txt:
  • storage/indexeddb/setversion-blocked-by-versionchange-close.html:
  • storage/indexeddb/setversion-not-blocked.html:
  • storage/indexeddb/structured-clone-expected.txt:
  • storage/indexeddb/structured-clone.html:
  • storage/indexeddb/transaction-abort-expected.txt:
  • storage/indexeddb/transaction-abort.html:
  • storage/indexeddb/transaction-active-flag-expected.txt:
  • storage/indexeddb/transaction-active-flag.html:
  • storage/indexeddb/transaction-after-close-expected.txt:
  • storage/indexeddb/transaction-after-close.html:
  • storage/indexeddb/transaction-and-objectstore-calls-expected.txt:
  • storage/indexeddb/transaction-and-objectstore-calls.html:
  • storage/indexeddb/transaction-basics-expected.txt:
  • storage/indexeddb/transaction-basics.html:
  • storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html:
  • storage/indexeddb/transaction-complete-with-js-recursion.html:
  • storage/indexeddb/transaction-complete-workers-expected.txt:
  • storage/indexeddb/transaction-complete-workers.html:
  • storage/indexeddb/transaction-coordination-across-databases.html:
  • storage/indexeddb/transaction-coordination-within-database.html:
  • storage/indexeddb/transaction-crash-in-tasks.html:
  • storage/indexeddb/transaction-crash-on-abort.html:
  • storage/indexeddb/transaction-error-expected.txt:
  • storage/indexeddb/transaction-error.html:
  • storage/indexeddb/transaction-event-propagation.html:
  • storage/indexeddb/transaction-ordering-expected.txt: Added.
  • storage/indexeddb/transaction-ordering.html: Added.
  • storage/indexeddb/transaction-read-only-expected.txt:
  • storage/indexeddb/transaction-read-only.html:
  • storage/indexeddb/transaction-readwrite-exclusive.html:
  • storage/indexeddb/transaction-rollback.html:
  • storage/indexeddb/transaction-scope-sequencing.html:
  • storage/indexeddb/transaction-starvation.html:
  • storage/indexeddb/transaction-storeNames-required-expected.txt:
  • storage/indexeddb/transaction-storeNames-required.html:
  • storage/indexeddb/unblocked-version-changes-expected.txt:
  • storage/indexeddb/unblocked-version-changes.html:
  • storage/indexeddb/unprefix-workers.html:
  • storage/indexeddb/unprefix.html:
  • storage/indexeddb/value-undefined.html:
  • storage/indexeddb/values-odd-types.html:
  • storage/indexeddb/version-change-abort-expected.txt:
  • storage/indexeddb/version-change-abort.html:
  • storage/indexeddb/version-change-exclusive-expected.txt:
  • storage/indexeddb/version-change-exclusive.html:
  • storage/indexeddb/versionchangerequest-activedomobject.html:
10:15 AM Changeset in webkit [163962] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Modernize missed inspector files
https://bugs.webkit.org/show_bug.cgi?id=128661

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-02-12
Reviewed by Anders Carlsson.

Add final, override, and use nullptr where appropriate.

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::asCSSStyleRule):
(WebCore::InspectorCSSAgent::discardAgent):
(WebCore::InspectorCSSAgent::disable):
(WebCore::InspectorCSSAgent::getInlineStylesForNode):
(WebCore::InspectorCSSAgent::getComputedStyleForNode):
(WebCore::InspectorCSSAgent::asInspectorStyleSheet):
(WebCore::InspectorCSSAgent::elementForId):
(WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
(WebCore::InspectorCSSAgent::assertStyleSheetForId):
(WebCore::InspectorCSSAgent::buildObjectForRule):
(WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):

  • inspector/InspectorFrontendClientLocal.h:
9:57 AM Changeset in webkit [163961] by mitz@apple.com
  • 8 edits in trunk/Source/WebKit2

Stop using PLATFORM(MAC) in WebKit2/{Database,Network}Process except where it means “OS X but not iOS”
https://bugs.webkit.org/show_bug.cgi?id=128659

Reviewed by Anders Carlsson.

  • DatabaseProcess/DatabaseProcess.cpp:

(WebKit::DatabaseProcess::createDatabaseToWebProcessConnection): Changed PLATFORM(MAC) to
OS(DARWIN) around use of Mach-based IPC.
Changed PLATFORM(MAC) to PLATFORM(COCOA) elsewhere in this file.

  • NetworkProcess/NetworkProcess.cpp: Ditto.

(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::createNetworkConnectionToWebProcess):

  • NetworkProcess/NetworkProcess.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • NetworkProcess/NetworkProcess.messages.in: Removed PLATFORM(MAC) guard around

SetProcessSuppressionEnabled. Changed it to PLATFORM(COCOA) around SetQOS.

  • NetworkProcess/NetworkResourceLoader.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA)

(WebKit::NetworkResourceLoader::continueWillSendRequest):

  • NetworkProcess/NetworkResourceLoader.h: Ditto.
  • NetworkProcess/RemoteNetworkingContext.h: Ditto, matching WebCore::NetworkingContext.
9:14 AM Changeset in webkit [163960] by oliver@apple.com
  • 62 edits
    2 copies
    6 adds in trunk

Make it possible to implement JS builtins in JS
https://bugs.webkit.org/show_bug.cgi?id=127887

Reviewed by Michael Saboff.

.:

  • GNUmakefile.am:
  • Source/cmake/gtest/CMakeLists.txt:

Source/JavaScriptCore:

This patch makes it possible to write builtin functions in JS.
The bindings, generators, and definitions are all created automatically
based on js files in the builtins/ directory. This patch includes one
such case: Array.prototype.js with an implementation of every().

There's a lot of refactoring to make it possible for CommonIdentifiers
to include the output of the generated files (DerivedSources/JSCBuiltins.{h,cpp})
without breaking the offset extractor. The result of this refactoring
is that CommonIdentifiers, and a few other miscellaneous headers now
need to be included directly as they were formerly captured through other
paths.

In addition this adds a flag to the Lookup table's hashentry to indicate
that a static function is actually backed by JS. There is then a lot of
logic to thread the special nature of the functon to where it matters.
This allows toString(), .caller, etc to mimic the behaviour of a host
function.

Notes on writing builtins:

  • Each function is compiled independently of the others, and those implementations cannot currently capture all global properties (as that could be potentially unsafe). If a function does capture a global we will deliberately crash.
  • For those "global" properties that we do want access to, we use the @ prefix, e.g. Object(this) becomes @Object(this). The @ identifiers are private names, and behave just like regular properties, only without the risk of adulteration. Again, in the @Object case, we explicitly duplicate the ObjectConstructor reference on the GlobalObject so that we have guaranteed access to the original version of the constructor.
  • call, apply, eval, and Function are all rejected identifiers, again to prevent anything from accidentally using an adulterated object. Instead @call and @apply are available, and happily they completely drop the neq_ptr instruction as they're defined as always being the original call/apply functions.

These restrictions are just intended to make it harder to accidentally
make changes that are incorrect (for instance calling whatever has been
assigned to global.Object, instead of the original constructor function).
However, making a mistake like this should result in a purely semantic
error as fundamentally these functions are treated as though they were
regular JS code in the host global, and have no more privileges than
any other JS.

The initial proof of concept is Array.prototype.every, this shows a 65%
performance improvement, and that improvement is significantly hurt by
our poor optimisation of op_in.

As this is such a limited function, we have not yet exported all symbols
that we could possibly need, but as we implement more, the likelihood
of encountering missing features will reduce.

  • API/JSCallbackObjectFunctions.h:

(JSC::JSCallbackObject<Parent>::getOwnPropertySlot):
(JSC::JSCallbackObject<Parent>::put):
(JSC::JSCallbackObject<Parent>::deleteProperty):
(JSC::JSCallbackObject<Parent>::getStaticValue):
(JSC::JSCallbackObject<Parent>::staticFunctionGetter):
(JSC::JSCallbackObject<Parent>::callbackGetter):

(every):

  • builtins/BuiltinExecutables.cpp: Added.

(JSC::BuiltinExecutables::BuiltinExecutables):
(JSC::BuiltinExecutables::createBuiltinExecutable):

  • builtins/BuiltinExecutables.h:

(JSC::BuiltinExecutables::create):

  • builtins/BuiltinNames.h: Added.

(JSC::BuiltinNames::BuiltinNames):
(JSC::BuiltinNames::getPrivateName):
(JSC::BuiltinNames::getPublicName):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::generateFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):
(JSC::UnlinkedFunctionExecutable::codeBlockFor):
(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::ExecutableInfo::ExecutableInfo):
(JSC::UnlinkedFunctionExecutable::create):
(JSC::UnlinkedFunctionExecutable::toStrictness):
(JSC::UnlinkedFunctionExecutable::isBuiltinFunction):
(JSC::UnlinkedCodeBlock::isBuiltinFunction):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::isBuiltinFunction):
(JSC::BytecodeGenerator::makeFunction):

  • bytecompiler/NodesCodegen.cpp:

(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):

  • create_hash_table:
  • generate-js-builtins: Added.

(getCopyright):
(getFunctions):
(generateCode):
(mangleName):
(FunctionExecutable):
(Identifier):
(JSGlobalObject):
(SourceCode):
(UnlinkedFunctionExecutable):
(VM):

  • interpreter/CachedCall.h:

(JSC::CachedCall::CachedCall):

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::makeFunctionCallNode):

  • parser/Lexer.cpp:

(JSC::Lexer<T>::Lexer):
(JSC::isSafeBuiltinIdentifier):
(JSC::Lexer<LChar>::parseIdentifier):
(JSC::Lexer<UChar>::parseIdentifier):
(JSC::Lexer<T>::lex):

  • parser/Lexer.h:

(JSC::isSafeIdentifier):
(JSC::Lexer<T>::lexExpectIdentifier):

  • parser/Nodes.cpp:

(JSC::ProgramNode::setClosedVariables):

  • parser/Nodes.h:

(JSC::ScopeNode::capturedVariables):
(JSC::ScopeNode::setClosedVariables):
(JSC::ProgramNode::closedVariables):

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::Parser):
(JSC::Parser<LexerType>::parseInner):
(JSC::Parser<LexerType>::didFinishParsing):
(JSC::Parser<LexerType>::printUnexpectedTokenText):

  • parser/Parser.h:

(JSC::Scope::getUsedVariables):
(JSC::Parser::closedVariables):
(JSC::parse):

  • parser/ParserModes.h:
  • parser/ParserTokens.h:
  • runtime/ArrayPrototype.cpp:
  • runtime/CodeCache.cpp:

(JSC::CodeCache::getFunctionExecutableFromGlobalCode):

  • runtime/CommonIdentifiers.cpp:

(JSC::CommonIdentifiers::CommonIdentifiers):
(JSC::CommonIdentifiers::~CommonIdentifiers):
(JSC::CommonIdentifiers::getPrivateName):
(JSC::CommonIdentifiers::getPublicName):

  • runtime/CommonIdentifiers.h:

(JSC::CommonIdentifiers::builtinNames):

  • runtime/ExceptionHelpers.cpp:

(JSC::createUndefinedVariableError):

  • runtime/Executable.h:

(JSC::EvalExecutable::executableInfo):
(JSC::ProgramExecutable::executableInfo):
(JSC::FunctionExecutable::isBuiltinFunction):

  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncToString):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::symbolTableGet):
(JSC::JSActivation::symbolTablePut):
(JSC::JSActivation::symbolTablePutWithAttributes):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::createBuiltinFunction):
(JSC::JSFunction::calculatedDisplayName):
(JSC::JSFunction::sourceCode):
(JSC::JSFunction::isHostOrBuiltinFunction):
(JSC::JSFunction::isBuiltinFunction):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getOwnNonIndexPropertyNames):
(JSC::JSFunction::put):
(JSC::JSFunction::defineOwnProperty):

  • runtime/JSFunction.h:
  • runtime/JSFunctionInlines.h:

(JSC::JSFunction::nativeFunction):
(JSC::JSFunction::nativeConstructor):
(JSC::isHostFunction):

  • runtime/JSGlobalObject.cpp:

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

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::objectConstructor):
(JSC::JSGlobalObject::symbolTableHasProperty):

  • runtime/JSObject.cpp:

(JSC::getClassPropertyNames):
(JSC::JSObject::reifyStaticFunctionsForDelete):
(JSC::JSObject::putDirectBuiltinFunction):

  • runtime/JSObject.h:
  • runtime/JSSymbolTableObject.cpp:

(JSC::JSSymbolTableObject::getOwnNonIndexPropertyNames):

  • runtime/JSSymbolTableObject.h:

(JSC::symbolTableGet):
(JSC::symbolTablePut):
(JSC::symbolTablePutWithAttributes):

  • runtime/Lookup.cpp:

(JSC::setUpStaticFunctionSlot):

  • runtime/Lookup.h:

(JSC::HashEntry::builtinGenerator):
(JSC::HashEntry::propertyGetter):
(JSC::HashEntry::propertyPutter):
(JSC::HashTable::entry):
(JSC::getStaticPropertySlot):
(JSC::getStaticValueSlot):
(JSC::putEntry):

  • runtime/NativeErrorConstructor.cpp:

(JSC::NativeErrorConstructor::finishCreation):

  • runtime/NativeErrorConstructor.h:
  • runtime/PropertySlot.h:
  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:

(JSC::VM::builtinExecutables):

Tools:

CMake updates

  • DumpRenderTree/CMakeLists.txt:
  • WebKitTestRunner/CMakeLists.txt:
  • WinCELauncher/CMakeLists.txt:

LayoutTests:

Updated the test results for new error messages (now that they're
actually helpful), and added a js-regress test to track performance.

  • js/array-every-expected.txt:
  • js/dom/array-prototype-properties-expected.txt:
  • js/regress/array-prototype-every-expected.txt: Added.
  • js/regress/array-prototype-every.html: Added.
  • js/regress/script-tests/array-prototype-every.js: Added.

(test1):
(test2):
(test3):

9:10 AM Changeset in webkit [163959] by Brent Fulgham
  • 18 edits in trunk/Source

Remove some unintended copies in ranged for loops
https://bugs.webkit.org/show_bug.cgi?id=128644

Reviewed by Anders Carlsson.

../JavaScriptCore:

  • inspector/InjectedScriptHost.cpp:

(Inspector::InjectedScriptHost::clearAllWrappers): Avoid creating/destroying
a std::pair<> and pointer each loop iteration.

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::Parser): Avoid copying object containing a string
each loop iteration.

../WebCore:

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::loadPendingSVGDocuments): Avoid creating/destroying
RefPtrs in loop.

../WebKit2:

  • Shared/WebCrossThreadCopier.cpp:

(WebCore::Vector<Vector<IDBKeyData>>>::copy): Each iteration copies a vector of
vectors,

  • Shared/mac/RemoteLayerBackingStore.mm:

(RemoteLayerBackingStore::enumerateRectsBeingDrawn): Avoid copying a FloatRect
on each iteration.

  • Shared/mac/RemoteLayerTreePropertyApplier.mm:

(WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer): Avoid copying
a LayerProperty object each iteration.

  • UIProcess/GeolocationPermissionRequestManagerProxy.cpp:

(WebKit::GeolocationPermissionRequestManagerProxy::invalidateRequests): Avoid
copying a pair<int64_t, pointer> each iteration.

  • UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:

(WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests): Ditto

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers): Ditto

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::postMessageToInjectedBundle): Avoid creating/destroying a
RefPtr each loop iteration.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::shouldStartTrackingTouchEvents): Avoid copying a WebPlatformTouchPoint
object each cycle.

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::updateLayerTree): Avoid copying a pair each iteration.

  • UIProcess/mac/WindowServerConnection.mm:

(WebKit::WindowServerConnection::WindowServerConnection): Avoid copying the struct
of occlusionNotificationHandlers each iteration.

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:

(WebKit::WebIDBServerConnection::put): Avoid copying a vector-of-vectors each
iteration.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::recursiveBuildTransaction): Avoid creating/destroying a
RefPtr each loop iteration.

6:58 AM Changeset in webkit [163958] by rakuco@webkit.org
  • 17 edits in trunk

Update the HTML Media Capture implementation.
https://bugs.webkit.org/show_bug.cgi?id=118465

Reviewed by Darin Adler.

Make the implementation in WebKit compatible with the 2013-05-09
version of the spec, which makes the "capture" attribute a boolean
instead of an enum.

Source/WebCore:

Covered by fast/forms/file/file-input-capture.html.

  • html/FileInputType.cpp:

(WebCore::FileInputType::handleDOMActivateEvent):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::capture): Renamed to shouldUseMediaCapture().
(WebCore::HTMLInputElement::shouldUseMediaCapture): Return a bool.

  • html/HTMLInputElement.h:
  • html/HTMLInputElement.idl: Turn the `capture' attribute into a

reflective boolean instead of a DOMString.

  • platform/FileChooser.h:

Source/WebKit/efl:

  • ewk/ewk_file_chooser.cpp:

(ewk_file_chooser_capture_get): Return an Eina_Bool now.

  • ewk/ewk_file_chooser.h: Get rid of Ewk_File_Chooser_Capture_Type.

Source/WebKit2:

  • Shared/WebOpenPanelParameters.cpp:

(WebKit::WebOpenPanelParameters::capture): Return a bool.

  • Shared/WebOpenPanelParameters.h: Ditto.
  • UIProcess/API/C/WKOpenPanelParameters.cpp:

(WKOpenPanelParametersCopyCapture): Deprecate, the implementation is
incompatible with the current version of the spec.
(WKOpenPanelParametersGetCaptureEnabled): Add and return a bool.

  • UIProcess/API/C/WKOpenPanelParameters.h:

LayoutTests:

  • fast/forms/file/file-input-capture-expected.txt:
  • fast/forms/file/file-input-capture.html:
5:31 AM Changeset in webkit [163957] by stavila@adobe.com
  • 3 edits in trunk/Source/WebCore

[CSS Regions] Remove unused method in RenderFlowThread
https://bugs.webkit.org/show_bug.cgi?id=128373

Reviewed by Mihnea Ovidenie.

After the landing of https://bugs.webkit.org/show_bug.cgi?id=118665, the
RenderFlowThread::computeRegionClippingRect method is obsolete.

No new tests needed, this patch only removes an unused method.

  • rendering/RenderFlowThread.cpp:
  • rendering/RenderFlowThread.h:
5:21 AM Changeset in webkit [163956] by berto@igalia.com
  • 2 edits in trunk/Source/WebKit2

[GTK] Fails to build if configure is run with its absolute path
https://bugs.webkit.org/show_bug.cgi?id=126693

Reviewed by Gustavo Noronha Silva.

When creating links to the WebKit2 headers in the source tree
don't expect $(WebKit2) to be a relative path.

  • GNUmakefile.am:
4:40 AM Changeset in webkit [163955] by commit-queue@webkit.org
  • 15 edits
    1 copy
    2 moves
    7 adds
    2 deletes in trunk

[CSS Element Blending] Implement the software path of -webkit-blend-mode with Core Graphics.
https://bugs.webkit.org/show_bug.cgi?id=99119

Patch by Mihai Tica <mitica@adobe.com> on 2014-02-12
Reviewed by Simon Fraser.

Source/WebCore:

This patch adds support for -webkit-blend-mode with Core Graphics.
The layer promotion code that forced compositing when blending was detected has been removed.
Remaining work for the software path is to detect and implement isolation of the blending operation:
as stated in the spec, blending should be limited to the parent stacking context.

Tests: css3/compositing/blend-mode-blended-element-overlapping-composited-sibling-should-have-compositing-layer.html

css3/compositing/blend-mode-parent-of-composited-blended-has-layer.html
css3/compositing/blend-mode-simple-composited.html
css3/compositing/blend-mode-with-composited-descendant-should-have-layer.html

  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer): Remove CompositingReasonBlending.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::beginTransparencyLayers): Set the blendMode on the GraphicsContext.

  • rendering/RenderLayer.h: paintsWithTransparency should return true when a blendMode is set.
  • rendering/RenderLayerCompositor.cpp: Remove promotion code when a blendMode is detected.

(WebCore::RenderLayerCompositor::requiresCompositingLayer): Remove CompositingReasonBlending reason.
(WebCore::RenderLayerCompositor::requiresOwnBackingStore): Remove CompositingReasonBlending reason.
(WebCore::RenderLayerCompositor::reasonsForCompositing): Remove CompositingReasonBlending reason.
(WebCore::RenderLayerCompositor::logReasonsForCompositing): Remove CompositingReasonBlending reason.

  • rendering/RenderLayerCompositor.h:
  • Remove the requiresCompositingForBlending method
  • Remove the CompositingReasonBlending from the CompositingReasons enum.

LayoutTests:

  • css3/compositing/blend-mode-blended-element-overlapping-composited-sibling-should-have-compositing-layer-expected.txt: Copied from LayoutTests/css3/compositing/blend-mode-should-not-have-compositing-layer-expected.txt.
  • css3/compositing/blend-mode-blended-element-overlapping-composited-sibling-should-have-compositing-layer.html: Test if having an overlapping composited sibling forces compositing of a blended element.
  • css3/compositing/blend-mode-layers.html: Update to test both the software and the hardware path.
  • css3/compositing/blend-mode-parent-of-composited-blended-has-layer-expected.txt: Renamed from LayoutTests/css3/compositing/should-have-compositing-layer-expected.txt.
  • css3/compositing/blend-mode-parent-of-composited-blended-has-layer.html: Test if the parent of an accelerated element with -webkit-blend-mode is promoted.
  • css3/compositing/blend-mode-reflection.html: Update to test both the software and the hardware path.
  • css3/compositing/blend-mode-should-not-have-compositing-layer.html: Removed.
  • css3/compositing/blend-mode-simple-composited.html: Test all the blend modes for the hardware path.
  • css3/compositing/blend-mode-with-composited-descendant-should-have-layer-expected.txt: Renamed from LayoutTests/css3/compositing/blend-mode-should-not-have-compositing-layer-expected.txt.
  • css3/compositing/blend-mode-with-composited-descendant-should-have-layer.html: Test to ensure that an element with -webkit-blend-mode and a composited descendant is also accelerated.
  • css3/compositing/should-have-compositing-layer.html: Removed.
  • platform/mac/css3/compositing/blend-mode-layers-expected.png:
  • platform/mac/css3/compositing/blend-mode-layers-expected.txt:
  • platform/mac/css3/compositing/blend-mode-overflow-expected.png:
  • platform/mac/css3/compositing/blend-mode-overflow-expected.txt: Added.
  • platform/mac/css3/compositing/blend-mode-reflection-expected.png:
  • platform/mac/css3/compositing/blend-mode-reflection-expected.txt:
  • platform/mac/css3/compositing/blend-mode-simple-composited-expected.png: Added.
  • platform/mac/css3/compositing/blend-mode-simple-composited-expected.txt: Added.
  • platform/mac/css3/compositing/blend-mode-simple-expected.png:
4:17 AM Changeset in webkit [163954] by berto@igalia.com
  • 2 edits in trunk

'ar T' is not portable and breaks the build on FreeBSD
https://bugs.webkit.org/show_bug.cgi?id=128596

Patch by Ryan Lortie <desrt@desrt.ca> on 2014-02-12
Reviewed by Gustavo Noronha Silva.

Create thin archives only if we are using GNU ar.

  • Source/autotools/SetupLibtool.m4:
4:13 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
4:13 AM WebKitGTK/2.2.x edited by berto@igalia.com
(diff)
3:40 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
3:40 AM WebKitGTK/2.2.x edited by berto@igalia.com
(diff)
3:27 AM Changeset in webkit [163953] by Michał Pakuła vel Rutka
  • 4 edits in trunk/LayoutTests

Unreviewed EFL gatdening

Add test expectations for failing tests.

  • platform/efl/TestExpectations:
  • platform/efl/fast/parser/xhtml-alternate-entities-expected.png: Rebaseline after r163475.
  • platform/efl/fast/parser/xhtml-alternate-entities-expected.txt: Ditto.
Note: See TracTimeline for information about the timeline view.