Timeline



Apr 10, 2014:

11:32 PM Changeset in webkit [167115] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[CMake] Add missing WTF unit tests
https://bugs.webkit.org/show_bug.cgi?id=131459

Reviewed by Martin Robinson.

  • TestWebKitAPI/CMakeLists.txt: Add a few missing source files

that should be compiled into the TestWTF binary.

11:16 PM Changeset in webkit [167114] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/16582465> [Cocoa] Avoid casts from CF types to unrelated Objective-C types
https://bugs.webkit.org/show_bug.cgi?id=131529

Reviewed by Mark Rowe.

  • Shared/API/c/cf/WKStringCF.mm:

(WKStringCreateWithCFString): Cast the CFStringRef into its toll-free-bridged counterpart,
NSString, then cast the NSString into a WKNSString.

  • Shared/API/c/cf/WKURLCF.mm:

(WKURLCreateWithCFURL): Cast the CFURLRef into its toll-free-bridged counterpart, NSURL,
then cast the NSURL into a WKNSURL.

10:23 PM Changeset in webkit [167113] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

BundlePageDiagnosticLoggingClient leaks every string passing through it.
https://bugs.webkit.org/show_bug.cgi?id=130140

Reviewed by Brent Fulgham.

  • WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:

(WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage): Don’t copy the
strings passed into the bundle client.

10:19 PM Changeset in webkit [167112] by msaboff@apple.com
  • 2 edits
    1 add in trunk/Source/JavaScriptCore

Crash beneath DFG JIT code @ video.disney.com
https://bugs.webkit.org/show_bug.cgi?id=131447

Reviewed by Geoffrey Garen.

The 32-bit path of speculateMisc() uses an 'is not int32' check followed by
'tag not less than Undefined' check. The first check was incorrectly elided if we
knew that the value *was* an int32, when it should have been elided if we already
knew that the value *was not* an int32.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::speculateMisc):

  • tests/stress/test-spec-misc.js: Added test.

(getX):
(foo):
(bar):

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

Make room for additional types in SpeculatedType.h
https://bugs.webkit.org/show_bug.cgi?id=131422

Reviewed by Sam Weinig.

This'll make it easier to add DoubleHeavyNaN and DoubleEmptyNaN.

  • bytecode/SpeculatedType.h:
8:52 PM Changeset in webkit [167110] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

Try to fix the debug bots after r167102

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-10

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

7:44 PM Changeset in webkit [167109] by Darin Adler
  • 6 edits in trunk/Source/WebCore

WebGL: need error checking after texture and buffer uploads in some cases
https://bugs.webkit.org/show_bug.cgi?id=62902
rdar://problem/9640309

Reviewed by Dean Jackson.

Not clear how to write a test for this.

  • html/canvas/WebGLBuffer.cpp:

(WebCore::WebGLBuffer::disassociateBufferData): Added.

  • html/canvas/WebGLBuffer.h: Added disassociateBufferData.
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::bufferData): Check for errors by calling
moveErrorsToSyntheticErrorList twice, once before and once after. If an error
occurred, call the WebGLBuffer so it doesn't think it has data.
(WebCore::WebGLRenderingContext::bufferSubData): Ditto.

  • platform/graphics/GraphicsContext3D.h: Added moveErrorsToSyntheticErrorList.
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::moveErrorsToSyntheticErrorList): Added. Calls
glError and moves any errors to the synthetic error list.
(WebCore::GraphicsContext3D::getError): Added call to moveErrorsToSyntheticErrorList
to preserve error ordering.
(WebCore::GraphicsContext3D::synthesizeGLError): Ditto.

7:17 PM Changeset in webkit [167108] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Compile fix for Win64.
https://bugs.webkit.org/show_bug.cgi?id=131508

Patch by Alex Christensen <achristensen@webkit.org> on 2014-04-10
Reviewed by Geoffrey Garen.

  • assembler/X86Assembler.h:

(JSC::X86Assembler::fillNops):
Added unsigned template parameter to distinguish between size_t and unsigned long.

6:54 PM Changeset in webkit [167107] by bshafiei@apple.com
  • 2 edits in tags/Safari-538.28.1/Source/WebCore

Merged r167106.

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

iOS build fix to deal with CoreText changes.

Reviewed by Benjamin Poulain.

This is a temporary fix until CT fixes the issue.

  • rendering/RenderThemeIOS.mm:
6:23 PM Changeset in webkit [167105] by bshafiei@apple.com
  • 5 edits in tags/Safari-538.28.1/Source

Versioning.

6:20 PM Changeset in webkit [167104] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.28.1

New tag.

6:17 PM Changeset in webkit [167103] by barraclough@apple.com
  • 3 edits in trunk/Source/WebKit2

Add user default for FTL JIT
https://bugs.webkit.org/show_bug.cgi?id=131520

Reviewed by Benjamin Poulain.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::decode):

  • UIProcess/mac/WebContextMac.mm:

(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitializeWebProcess):

  • D'oh, whitespace.
6:13 PM Changeset in webkit [167102] by barraclough@apple.com
  • 5 edits in trunk/Source/WebKit2

Add user default for FTL JIT
https://bugs.webkit.org/show_bug.cgi?id=131520

Reviewed by Benjamin Poulain.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
    • pass setting to WebContent process.
  • UIProcess/mac/WebContextMac.mm:

(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitializeWebProcess):

  • read user default.
  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

  • set JSC::Option.
6:02 PM Changeset in webkit [167101] by Brent Fulgham
  • 5 edits in trunk/Source/WTF

[Win] Clean up some 64-bit warnings from Visual Studio analyzer
https://bugs.webkit.org/show_bug.cgi?id=131514

Reviewed by Tim Horton.

  • WTF.vcxproj/WTF.vcxproj: Use correct platform settings for

64-bit build.

  • config.h: Ditto.
  • wtf/CurrentTime.cpp:

(WTF::highResUpTime): Resolve warning about deprecated API.

  • wtf/StackBounds.cpp:

(WTF::StackBounds::initialize): Silence warning about
an uninitialized variable.

5:53 PM Changeset in webkit [167100] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Notify the form delegate when the custom button in the form accessory view is tapped
https://bugs.webkit.org/show_bug.cgi?id=131518

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/_WKFormDelegate.h: Declared new delegate method.
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView accessoryAutoFill]): Call the new delegate method.

5:50 PM Changeset in webkit [167099] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

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

there was already a mechanism for this, and this was
incomplete anyway (Requested by thorton on #webkit).

Reverted changeset:

"[iOS WebKit2] Disable the find overlay for now"
https://bugs.webkit.org/show_bug.cgi?id=131509
http://trac.webkit.org/changeset/167097

5:27 PM Changeset in webkit [167098] by commit-queue@webkit.org
  • 9 edits
    4 deletes in trunk

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

This patch caused crashes in video tests. (Requested by
mrobinson on #webkit).

Reverted changeset:

Source/WebCore:

"[GStreamer] No CORS support for media elements"
https://bugs.webkit.org/show_bug.cgi?id=99037
http://trac.webkit.org/changeset/167073

LayoutTests:

"[GStreamer] No CORS support for media elements"
https://bugs.webkit.org/show_bug.cgi?id=99037
http://trac.webkit.org/changeset/167073

4:52 PM Changeset in webkit [167097] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebKit2

[iOS WebKit2] Disable the find overlay for now
https://bugs.webkit.org/show_bug.cgi?id=131509

Reviewed by Adele Peterson.

  • Shared/WebPreferencesStore.h:
  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::FindController):
(WebKit::FindController::hideFindOverlay):
(WebKit::FindController::hideFindUI):
(WebKit::FindController::setShouldShowOverlay):

  • WebProcess/WebPage/FindController.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):
Add a setting allowing us to turn off the find-in-page overlay on iOS.

4:23 PM Changeset in webkit [167096] by enrica@apple.com
  • 7 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r167074.

This involves replacing resetDragSession() by
resetCurrentDragInformation() and dragSession().operation by
currentDragOperation().

Patch by Sergio Villar Senin <svillar@igalia.com> on 2014-04-10

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDragDataReceived):
(webkitWebViewBaseDragMotion):
(dragExitedCallback):

3:53 PM Changeset in webkit [167095] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

Radio buttons are using the wrong sizes and margins
https://bugs.webkit.org/show_bug.cgi?id=131503

Reviewed by Jer Noble.

This is a regression that I caused recently when I combined radio button and
checkbox code.

  • platform/mac/ThemeMac.mm:

(WebCore::paintToggleButton):

3:33 PM Changeset in webkit [167094] by msaboff@apple.com
  • 40 edits in trunk/Source

LLInt interpreter code should be generated as part of one function
https://bugs.webkit.org/show_bug.cgi?id=131205

Reviewed by Mark Lam.

Source/JavaScriptCore:

Changed the generation of llint opcodes so that they are all part of the same
global function, llint_entry. That function is used to fill in an entry point
table that includes each of the opcodes and helpers.

Added appropriate use of new -I option to offline assembler and offset
generator scripts.

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter.cpp:
  • llint/LowLevelInterpreter.h:
  • offlineasm/arm.rb:
  • offlineasm/arm64.rb:
  • offlineasm/asm.rb:
  • offlineasm/ast.rb:
  • offlineasm/backends.rb:
  • offlineasm/cloop.rb:
  • offlineasm/generate_offset_extractor.rb:
  • offlineasm/instructions.rb:
  • offlineasm/parser.rb:
  • offlineasm/registers.rb:
  • offlineasm/self_hash.rb:
  • offlineasm/settings.rb:
  • offlineasm/transform.rb:
  • offlineasm/x86.rb:

Added a new "global" keyword to the offline assembler that denotes a label that
should be exported. Added opcode and operand support to get the absolute
address of a local label using position independent calculations. Updated the
offline assembler to handle included files, both when generating the checksum
as well as including files from other than the local directory via a newly
added -I option. The offline assembler now automatically determines external
functions by keeping track of referenced functions that are defined within the
assembly source. This is used both for choosing the correct macro for external
references as well as generating the needed EXTERN directives for masm.
Updated the generation of the masm only .sym file to be written once at the end
of the offline assembler.

  • assembler/MacroAssemblerCodeRef.h:

(JSC::MacroAssemblerCodePtr::createLLIntCodePtr):
(JSC::MacroAssemblerCodeRef::createLLIntCodeRef):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):

  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFromLLInt):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JITStubs.h:
  • llint/LLIntCLoop.cpp:

(JSC::LLInt::initialize):

  • llint/LLIntData.h:

(JSC::LLInt::getCodeFunctionPtr):
(JSC::LLInt::getOpcode): Deleted.
(JSC::LLInt::getCodePtr): Deleted.

  • llint/LLIntOpcode.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LLIntThunks.cpp:

(JSC::LLInt::functionForCallEntryThunkGenerator):
(JSC::LLInt::functionForConstructEntryThunkGenerator):
(JSC::LLInt::functionForCallArityCheckThunkGenerator):
(JSC::LLInt::functionForConstructArityCheckThunkGenerator):
(JSC::LLInt::evalEntryThunkGenerator):
(JSC::LLInt::programEntryThunkGenerator):

  • llint/LLIntThunks.h:

Changed references to llint helpers to go through the entry point table populated
by llint_entry. Added helpers to OpcodeID enum for all builds.

  • bytecode/BytecodeList.json:
  • generate-bytecode-files:
  • llint/LLIntCLoop.cpp:

(JSC::LLInt::CLoop::initialize):
Reordered sections to match the order that the functions are added to the entry point
table. Added new "asmPrefix" property for symbols that have one name but are generated
with a prefix, e.g. op_enter -> llint_op_enter. Eliminated the "emitDefineID" property
as we are using enums for all bytecode references. Changed the C Loop only
llint_c_loop_init to llint_entry.

Source/WebKit:

Updated VS dependencies for JavaScriptCore changes.

  • WebKit.vcxproj/WebKit.sln:
3:23 PM Changeset in webkit [167093] by jhoneycutt@apple.com
  • 4 edits
    2 adds in trunk

Assertion failure in WebCore::FlexBoxIterator::next()
<https://bugs.webkit.org/show_bug.cgi?id=117176>
<rdar://problem/14054549>

Source/WebCore:

Code added in r115687 began removing anonymous wrappers when children
become inline. However, there are some objects, like
RenderDeprecatedFlexBox, whose children should always be blocks.

Reviewed by Tim Horton.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::canCollapseAnonymousBlockChild):
Made public.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::removeAnonymousWrappersForInlinesIfNecessary):
Return early if we can't collapse anonymous block children.

LayoutTests:

Reviewed by Tim Horton.

  • fast/flexbox/collapse-anonymous-wrappers-assertion-expected.txt: Added.
  • fast/flexbox/collapse-anonymous-wrappers-assertion.html: Added.
3:23 PM Changeset in webkit [167092] by jhoneycutt@apple.com
  • 3 edits
    2 adds in trunk
Assertion failure, !node
node->isElementNode(), in

WebCore::RenderBlock::clone()
<https://bugs.webkit.org/show_bug.cgi?id=110489>
<rdar://problem/13666425>

Reviewed by Antti Koivisto.

Source/WebCore:

We're ending up in RenderBlock::splitBlocks() with |this| ==
|fromBlock|. We then try to climb the ancestor block chain from
this->parent() to |fromBlock|, but this->parent() is already above
|fromBlock|, so we end up climbing up to the RenderView and trying to
clone it, causing the assertion failure.

Adopt Chromium's mitigation for this from
<https://codereview.chromium.org/13852041>. This is not intended as a
fix for the underlying issue.

Also, fix another issue that occurs with this fuzzed test case that's
not handled by the Chromium fix.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::splitBlocks):
Ensure while we're in the loop that |curr| is a descendant of
|fromBlock|. From the Chromium patch:

We need to check in every iteration of the loop because
moveChildrenTo could have moved |curr|. This is a mitigation and
not really a fix against a class of tree craziness.

Finally, before moving children from |fromBlock| to |toBlock|, ensure
that the children are children of |fromBlock|. If we never entered the
loop, they will be siblings of |fromBlock|, not children.

LayoutTests:

  • fast/multicol/fuzzed-test-case-expected.txt: Added.
  • fast/multicol/fuzzed-test-case.html: Added.
3:17 PM Changeset in webkit [167091] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix after http://trac.webkit.org/changeset/167085.

Reviewed by Timothy Hatcher.

  • plugins/PluginData.h:
3:09 PM Changeset in webkit [167090] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Web Inspector: Breakpoint in gutter has clipped / broken border image.
https://bugs.webkit.org/show_bug.cgi?id=131500

Reviewed by Joseph Pecoraro.

Typo in r166925.

Source/WebCore:

Test: fast/borders/border-image-slice-missing-right.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintNinePieceImage):

LayoutTests:

  • fast/borders/border-image-slice-missing-right-expected.html: Added.
  • fast/borders/border-image-slice-missing-right.html: Added.
2:44 PM Changeset in webkit [167089] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: AXI: expose aria-busy state of current and ancestor nodes
https://bugs.webkit.org/show_bug.cgi?id=130826

Patch by James Craig <jcraig@apple.com> on 2014-04-10
Reviewed by Timothy Hatcher.

Source/WebCore:

Test: inspector-protocol/dom/getAccessibilityPropertiesForNode.html

Expose if node is contained by any "busy" ancestor nodes, too.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):

LayoutTests:

Expose if node is contained by any "busy" ancestor nodes, too.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode.html:
2:27 PM Changeset in webkit [167088] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] Unreviewed 64-bit Build Fix.

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

proper mangled names for 64-bit build.

2:25 PM Changeset in webkit [167087] by commit-queue@webkit.org
  • 2 edits
    4 adds in trunk/Source/JavaScriptCore

WIP for inlining C++. Added a build target to produce LLVM IR.
https://bugs.webkit.org/show_bug.cgi?id=130523

Patch by Matthew Mirman <mmirman@apple.com> on 2014-04-10
Reviewed by Mark Rowe.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • build-symbol-table-index.py: Added.
  • build-symbol-table-index.sh: Added.
  • Configurations/CompileRuntimeToLLVMIR.xcconfig: Added.
  • copy-llvm-ir-to-derived-sources.sh: Added.
1:57 PM Changeset in webkit [167086] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Remove unused ruler in overlay code
https://bugs.webkit.org/show_bug.cgi?id=131507

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-10
Reviewed by Timothy Hatcher.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::highlightConfigFromInspectorObject):

  • inspector/InspectorOverlay.cpp:

(WebCore::buildObjectForHighlight):

  • inspector/InspectorOverlay.h:

(WebCore::Highlight::Highlight):
(WebCore::Highlight::setDataFromConfig):

  • inspector/InspectorOverlayPage.js:

(_drawFragmentHighlight):
(_drawRegionNumber): Deleted.
(quadToPath): Deleted.
(drawOutlinedQuad): Deleted.
(pathCommand): Deleted.
(drawPath): Deleted.
(drawOutlinedQuadWithClip): Deleted.
(quadEquals): Deleted.
(drawGutter): Deleted.
(drawNodeHighlight): Deleted.
(drawQuadHighlight): Deleted.
(setPlatform): Deleted.
(dispatch): Deleted.
(log): Deleted.

1:52 PM Changeset in webkit [167085] by Brian Burg
  • 12 edits
    2 adds in trunk

Web Replay: memoize plugin data for navigator.mimeTypes and navigator.plugins
https://bugs.webkit.org/show_bug.cgi?id=131341

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Add support for encoding/decoding unsigned long with EncodedValue.
It is a distinct type from uint32_t and uint64_t.

  • replay/EncodedValue.cpp:

(JSC::EncodedValue::convertTo<unsigned long>):

  • replay/EncodedValue.h:

Source/WebCore:

Information about plugins and mime types is nondeterministic and can change
at any time, whether by system events, browser settings changes, or
triggered by script. To avoid interposing on all those code paths, just
memoize the plugin data used by DOMPluginArray and DOMMimeTypeArray.

This is less efficient than controlling mutations to the underlying PluginData
of a Page, but that can be done later if better plugin support is desired.
The point of this change is to make analytics trackers deterministic across
enabling/disabling of plugins.

Test: LayoutTests/inspector/window-navigator-plugins-memoized.hml

  • plugins/DOMMimeTypeArray.cpp:

(WebCore::DOMMimeTypeArray::getPluginData):

  • plugins/DOMPluginArray.cpp:

(WebCore::DOMPluginArray::pluginData): Save or restore memoized plugin
data during capture and replay, respectively.

  • plugins/PluginData.h:

(WebCore::PluginData::PluginData): Add a constructor that uses the
provided plugin data rather than fetching live plugin data. This is
marked protected so it's only used by a subclass specifically for
deserialization.

  • replay/SerializationMethods.cpp: Add encoder specializations.

(JSC::EncodingTraits<MimeClassInfo>::encodeValue):
(JSC::EncodingTraits<MimeClassInfo>::decodeValue):
(JSC::EncodingTraits<PluginInfo>::encodeValue):
(JSC::EncodingTraits<PluginInfo>::decodeValue):
(JSC::EncodingTraits<PluginData>::encodeValue):
(JSC::DeserializedPluginData::DeserializedPluginData): Add a custom
subclass of PluginData that can be initialized from deserialized data.
(JSC::EncodingTraits<PluginData>::decodeValue):

  • replay/SerializationMethods.h:
  • replay/WebInputs.json: Add new input FetchPluginData.

LayoutTests:

Add support for different setup methods before the initial navigation of
capture and replay. This is necessary to test that the value of
navigator.plugins is the same on replay even if the underlying data changed.

  • http/tests/inspector/replay/replay-test.js:

(InspectorTestProxy.runSingleSegmentRefTest): Add calls to optional setup
functions in the test page called setupPreCapture and setupPreReplay.

1:34 PM April 2014 Meeting edited by ddkilzer@apple.com
(diff)
12:26 PM Changeset in webkit [167084] by svillar@igalia.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r167074.

This involves replacing resetDragSession() by
resetCurrentDragInformation() and dragSession().operation by
currentDragOperation().

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDragDataReceived):
(webkitWebViewBaseDragMotion):
(dragExitedCallback):

12:22 PM Changeset in webkit [167083] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

Update text expectations for new failing tests:

accessibility/help-text.html
fast/css/cascade/box-shadow-and-webkit-box-shadow-cascade-order.html
fast/css3-text/css3-text-decoration/text-decoration-skip/glyph-inside-underline.html

Update test expectations related with highdpi still not supported.

On r166930 test media/track/opera/interfaces/TextTrackList/onremovetrack.html
was moved to media/track/w3c/interfaces/TextTrackList/onremovetrack.html.
Now it passes. Remove the expectation.

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-04-10

  • platform/gtk/TestExpectations:
12:16 PM Changeset in webkit [167082] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Remove "System Font" from character width calculations
https://bugs.webkit.org/show_bug.cgi?id=131411

Reviewed by Tim Horton.

Covered by existing tests

  • platform/graphics/Font.cpp:

(WebCore::Font::hasValidAverageCharWidth):

12:10 PM Changeset in webkit [167081] by b.long@cablelabs.com
  • 6 edits in trunk/Tools

[Gtk] run-launcher doesn't work by default
https://bugs.webkit.org/show_bug.cgi?id=131494

Reviewed by Philippe Normand.

  • Scripts/run-launcher: Always use MiniBrowser for WebKitGTK.
  • Scripts/webkitdirs.pm:

(launcherName): Same.

  • Scripts/webkitpy/style/checker.py: Remove reference to GtkLauncher.
  • gtk/common.py:

(get_build_path.is_valid_build_directory): Same.

  • gtk/manifest.txt: Same.
12:10 PM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
12:03 PM Changeset in webkit [167080] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Cairo] Implement ShareableBitmap::paint() with scale factor
https://bugs.webkit.org/show_bug.cgi?id=64665

Patch by Owen Taylor <otaylor@redhat.com> on 2014-04-10
Reviewed by Martin Robinson.

  • Shared/cairo/ShareableBitmapCairo.cpp (WebKit::ShareableBitmap::paint):
11:53 AM Changeset in webkit [167079] by Bem Jones-Bey
  • 3 edits
    2 adds in trunk

Invalid cast in WebCore::RenderLayer::setupClipPath
https://bugs.webkit.org/show_bug.cgi?id=131368

Reviewed by Dirk Schulze.

Source/WebCore:

Only attempt to clip to a box shape if the renderer being clipped is
actually a box.

Test: css3/masking/clip-path-box-shape-on-inline-crash.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setupClipPath): Add isBox() check.

LayoutTests:

  • css3/masking/clip-path-box-shape-on-inline-crash-expected.txt: Added.
  • css3/masking/clip-path-box-shape-on-inline-crash.html: Added.
11:20 AM Changeset in webkit [167078] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Remove a comment that was incorrectly cut-and-pasted from WidgetBackingStoreCairo
https://bugs.webkit.org/show_bug.cgi?id=131499

Patch by Owen Taylor <otaylor@redhat.com> on 2014-04-10
Reviewed by Martin Robinson.

  • platform/gtk/WidgetBackingStoreGtkX11.cpp: Remove a comment that was incorrectly copy and pasted

from the Cairo implementation.

11:00 AM Changeset in webkit [167077] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed iOS build fix after http://trac.webkit.org/changeset/167074

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):

10:50 AM Changeset in webkit [167076] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

LLINT loadisFromInstruction should handle the big endian case.
<https://webkit.org/b/131495>

Reviewed by Mark Hahnenberg.

The LLINT loadisFromInstruction macro aims to load the least significant
32-bit word from the 64-bit bytecode instruction stream and sign extend
it. For big endian machines, the current implementation would load the
wrong 32-bit word.

Without this fix, the JSC tests will crash on big endian machines.
Thanks to Tomas Popela for diagnosing this issue.

  • llint/LowLevelInterpreter.asm:
10:42 AM Rebaseline edited by clopez@igalia.com
add Tools/Scripts path (diff)
10:37 AM Changeset in webkit [167075] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Gtk build fix.

  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::performDragControllerAction):
10:33 AM Changeset in webkit [167074] by ap@apple.com
  • 17 edits
    1 delete in trunk/Source

Eliminate DragSession structure
https://bugs.webkit.org/show_bug.cgi?id=131465

Reviewed by Benjamin Poulain.

Source/WebCore:

DragSession is really just a transient response to NSDragDestination delegate methods.
The "session" name was quite misleading, and thankfully, we don't need a class for this
bag of data at all.

  • WebCore.xcodeproj/project.pbxproj:
  • page/DragController.cpp:

(WebCore::DragController::DragController):
(WebCore::DragController::dragEntered):
(WebCore::DragController::dragUpdated):
(WebCore::DragController::dragEnteredOrUpdated):
(WebCore::DragController::tryDocumentDrag):

  • page/DragController.h:

(WebCore::DragController::mouseIsOverFileInput):
(WebCore::DragController::numberOfItemsToBeAccepted):

  • page/DragSession.h: Removed.

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView draggingEntered:]):
(-[WebView draggingUpdated:]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::DragEnter):
(WebView::DragOver):

Source/WebKit2:

  • Scripts/webkit2/messages.py:

(struct_or_class):

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<DragSession>::encode): Deleted.
(IPC::ArgumentCoder<DragSession>::decode): Deleted.

  • Shared/WebCoreArgumentCoders.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView draggingEntered:]):
(-[WKView draggingUpdated:]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::didPerformDragControllerAction):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::currentDragOperation):
(WebKit::WebPageProxy::currentDragIsOverFileInput):
(WebKit::WebPageProxy::currentDragNumberOfFilesToBeAccepted):
(WebKit::WebPageProxy::resetCurrentDragInformation):
(WebKit::WebPageProxy::dragSession): Deleted.
(WebKit::WebPageProxy::resetDragSession): Deleted.

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::performDragControllerAction):

8:46 AM Changeset in webkit [167073] by commit-queue@webkit.org
  • 9 edits
    4 adds in trunk

[GStreamer] No CORS support for media elements
https://bugs.webkit.org/show_bug.cgi?id=99037

Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-04-10
Reviewed by Philippe Normand.

Source/WebCore:

Added CORS access control check to media sources when crossorigin attribute is set.

Added getter to CORS access control check status (used to compute whether the stream is tainted or not).
Related test is http/tests/security/video-cross-origin-readback.html.

Disabled access to cross-origin streams that fail CORS check when crossorigin attribute is set.
Related test is http/tests/security/video-cross-origin-accessfailure.html.

Tests: http/tests/security/video-cross-origin-accessfailure.html

http/tests/security/video-cross-origin-accesssameorigin.html

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::didPassCORSAccessCheck): Return whether media is cross-origin (tainted) or not by querying the gstreamer source layer.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Added MediaPlayerPrivateGStreamer::didPassCORSAccessCheck declaration.
  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webKitWebSrcStart): Passed CORS mode parameter to the streaming client. In case of CORS check failure, stop the resource loading.
(webKitSrcPassedCORSAccessCheck): Return whether CORS access control check was done and successful.
(StreamingClient::handleResponseReceived): Take a parameter to assign the CORS access control check result.
(CachedResourceStreamingClient::CachedResourceStreamingClient): Updated setting of the ResourceLoaderOptions according CORS mode.
(CachedResourceStreamingClient::responseReceived): Check CORS and pass result to handleResponseReceived.
(ResourceHandleStreamingClient::didReceiveResponse): No CORS check.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.h: Added webKitSrcPassedCORSAccessCheck declaration.

LayoutTests:

http/tests/security/video-cross-origin-accessfailure.html verifies that cross-origin streams that fail CORS check
are not played when crossorigin attribute is set.

http/tests/security/video-cross-origin-accesssameorigin.html verifies that access to same-origin streams

are played when crossorigin attribute is set.

  • http/tests/security/video-cross-origin-accessfailure-expected.txt: Added.
  • http/tests/security/video-cross-origin-accessfailure.html: Added.
  • http/tests/security/video-cross-origin-accesssameorigin-expected.txt: Added.
  • http/tests/security/video-cross-origin-accesssameorigin.html: Added.
  • platform/efl/TestExpectations: Enabled http/tests/security/video-cross-origin-readback.html.
  • platform/gtk/TestExpectations: Ditto.
  • platform/mac/TestExpectations: Disabled http/tests/security/video-cross-origin-accessfailure.html.
7:42 AM Changeset in webkit [167072] by mrobinson@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] LayerTreeHostGtk is creating a software scene graph
https://bugs.webkit.org/show_bug.cgi?id=131471

Reviewed by Sergio Villar Senin.

At some point, a regression was introduced that sent the GTK+ WebKit2 scenegraph down the
software route. The rest of the file depends on the fact that the TextureMapper is the OpenGL
variety, so we should force that explicitly. This is causing crashes locally and soon we
should be able to test this directly.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::initialize): Force the use of the OpenGL scenegraph.

6:10 AM Changeset in webkit [167071] by commit-queue@webkit.org
  • 2 edits
    1 delete in trunk/Source/WebCore

Move UseJSC.cmake back to CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=130834

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-04-10
Reviewed by Csaba Osztrogonác.

No new tests required.

  • CMakeLists.txt:
  • UseJSC.cmake: Removed.
4:14 AM WebKitGTK/KeepingTheTreeGreen edited by elima@igalia.com
(diff)
4:11 AM WebKitGTK/KeepingTheTreeGreen edited by elima@igalia.com
(diff)
3:10 AM WebKitGTK/KeepingTheTreeGreen edited by Adrian Perez de Castro
(diff)
1:11 AM WebKitGTK/2.4.x edited by sergio@webkit.org
(diff)

Apr 9, 2014:

11:40 PM Changeset in webkit [167070] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r166860): ASSERTION FAILED: !isCalculated() on fast/css/image-set-value-not-removed-crash.html
https://bugs.webkit.org/show_bug.cgi?id=131480

  • platform/mac/TestExpectations: Skipped the test in debug builds.
11:33 PM Changeset in webkit [167069] by commit-queue@webkit.org
  • 4 edits in trunk

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

Caused 300+ failures on Mavericks WK1 tester (Requested by ap
on #webkit).

Reverted changeset:

Source/WebCore:

"Remove "System Font" from whitelisted DRT fonts and char
width calculations"
https://bugs.webkit.org/show_bug.cgi?id=131411
http://trac.webkit.org/changeset/167046

Tools:

"Remove "System Font" from whitelisted DRT fonts and char
width calculations"
https://bugs.webkit.org/show_bug.cgi?id=131411
http://trac.webkit.org/changeset/167046

11:25 PM Changeset in webkit [167068] by ap@apple.com
  • 2 edits in trunk/LayoutTests

[WK2] fast/repaint/obscured-background-no-repaint.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=131477

  • platform/mac-wk2/TestExpectations: Marked it as such.
11:25 PM Changeset in webkit [167067] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

11:22 PM Changeset in webkit [167066] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.28

New tag.

11:17 PM Changeset in webkit [167065] by ap@apple.com
  • 2 edits in trunk/LayoutTests

WebVTT tests don't work because of a 800x600 snapshot (but are very flaky anyway)
https://bugs.webkit.org/show_bug.cgi?id=131476

  • platform/mac/TestExpectations: Skip them.
9:50 PM Changeset in webkit [167064] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix build failure when #if USE(XPC_SERVICES) is false.
https://bugs.webkit.org/show_bug.cgi?id=131474

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Dan Bernstein.

Fix build.

  • UIProcess/ios/WebProcessProxyIOS.mm:

Add #if around BackgroundTabFlags ForegroundTabFlags to prevent unused variable error.

9:42 PM Changeset in webkit [167063] by jonlee@apple.com
  • 2 edits in trunk/Source/WebCore

Fix build failure.
https://bugs.webkit.org/show_bug.cgi?id=131473

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Dan Bernstein.

Fix build failure.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(mediaSelectionOptions):

9:04 PM Changeset in webkit [167062] by ryuan.choi@samsung.com
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] Add API to set preferred languages
https://bugs.webkit.org/show_bug.cgi?id=131435

Reviewed by Gyuyoung Kim.

Add ewk_context_preferred_languages_set to change the list of "Accept-Language".
This list is used to receive alternative version of contents, which is related
to specified languages from the contents provider.

  • UIProcess/API/efl/ewk_context.cpp:

(ewk_context_preferred_languages_set):

  • UIProcess/API/efl/ewk_context.h:
  • UIProcess/API/efl/tests/test_ewk2_context.cpp:

(serverCallback):
(TEST_F): Added test case for ewk_context_preferred_languages_set

8:55 PM Changeset in webkit [167061] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Temporarily disable the JIT for the Windows port.
<https://webkit.org/b/131470>

Reviewed by Brent Fulgham.

This is a temporary stop gap measure to green the Windows bots until
we have a fix for https://webkit.org/b/131182.

  • runtime/Options.cpp:

(JSC::recomputeDependentOptions):

8:39 PM Changeset in webkit [167060] by benjamin@webkit.org
  • 15 edits in trunk/Source/WebKit2

[iOS][WK2] Add the initial WebProcess handling of animated resize for rotation
https://bugs.webkit.org/show_bug.cgi?id=131469

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-09
Reviewed by Tim Horton.

Add the basic handling of dynamic resize from the WebProcess.

On animated resize, the UIProcess decides new target rects and scale. The information
is then passed to the WebProcess to update the content.

For various reason, the target rects and scale computed by the UIProcess can be incorrect
(for example, if viewport constraints limit the scale).

In those cases, the WebProcess has all the information to compute a better target. This patch
adds such a basic update mechanism.

Once the new values are computed, they are sent back to the UIProcess. If the rotation animation
is still ongoing, we do not want mess with it. What we do is set a temporary transform on the subviews
and restore the real value after the animation. The key is to have the two matrix multiplying to the end
value so that there is no visual difference.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView _dynamicViewportUpdateChangedTargetToScale:position:]):
(setViewportConfigurationMinimumLayoutSize):
(-[WKWebView _frameOrBoundsChanged]):
(-[WKWebView _setMinimumLayoutSizeOverride:]):
(-[WKWebView _beginAnimatedResizeToSize:obscuredInsets:minimumLayoutSizeOverride:]):
(-[WKWebView _endAnimatedResize]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView _frameOrBoundsChanged]):
(-[WKView setMinimumLayoutSizeOverride:]):

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::dynamicViewportUpdateChangedTarget):

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

(-[WKContentView setMinimumLayoutSize:]): Deleted.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::dynamicViewportSizeUpdate):
(WebKit::WebPageProxy::dynamicViewportUpdateChangedTarget):

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

(WebKit::WebPage::dynamicViewportSizeUpdate):

7:38 PM Changeset in webkit [167059] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[FTL] Emit multibyte NOPs on X86-64
https://bugs.webkit.org/show_bug.cgi?id=131394

Patch by Juergen Ributzka <juergen@apple.com> on 2014-04-09
Reviewed by Michael Saboff.

  • assembler/X86Assembler.h:

(JSC::X86Assembler::fillNops):

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

Unreviewed build fix after http://trac.webkit.org/changeset/167045

The file contained an invalid character.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::enterFullscreen):

6:11 PM April 2014 Meeting edited by Simon Fraser
(diff)
6:06 PM Changeset in webkit [167057] by dino@apple.com
  • 7 edits in trunk/Source/WebCore

[iOS] Media controls should resize as the user zooms
https://bugs.webkit.org/show_bug.cgi?id=131322

Reviewed by Eric Carlson.

On iOS the media controls should remain the same size
independent of user zoom. Have the HTMLMediaElement optionally
register for updates in the page scale to apply an inverse
scale.

  • Modules/mediacontrols/MediaControlsHost.cpp: New exposed property that calls

back into HTMLMediaElement::mediaControlsDependOnPageScaleFactor.
(WebCore::MediaControlsHost::controlsDependOnPageScaleFactor):
(WebCore::MediaControlsHost::setControlsDependOnPageScaleFactor):

  • Modules/mediacontrols/MediaControlsHost.h: Keep a reference to the actual

controls from the JavaScript side so we can talk to it later.
(WebCore::MediaControlsHost::controllerJSValue):
(WebCore::MediaControlsHost::setControllerJSValue):

  • Modules/mediacontrols/MediaControlsHost.idl: Expose controlsDependOnPageScaleFactor.
  • Modules/mediacontrols/mediaControlsiOS.css:

(audio::-webkit-media-controls-panel): Specify the transform origin so that
scaling will keep the controls pinned to the bottom left corner.
(audio::-webkit-media-controls-start-playback-button): Update to the correct size
and provide new artwork.
(audio::-webkit-media-controls-start-playback-button.failed): New artwork.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS): Tell the host that these controls care about the page scale.
(ControllerIOS.prototype.get pageScaleFactor): New getter.
(ControllerIOS.prototype.set pageScaleFactor): When set, update the play button and the panel.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript): Small naming cleanup.
(setPageScaleFactorProperty): Static helper to set a JS property value.
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): Keep a reference to the controls object,
and make sure to set the page scale factor on the controls.
(WebCore::HTMLMediaElement::pageScaleFactorChanged): Implement the callback, telling
the controls object that it needs to relayout.

5:51 PM Changeset in webkit [167056] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Try to fix iOS build.

  • platform/graphics/ca/mac/TileController.mm:
5:48 PM Changeset in webkit [167055] by aestes@apple.com
  • 3 edits in trunk/Source/WebCore

REGRESSION (r165908): ~QuickLookHandle() tries to dereference a null ResourceHandle
https://bugs.webkit.org/show_bug.cgi?id=131467

Reviewed by Tim Horton.

QuickLookHandle stored a ResourceHandle pointer in order to later
retrive the URL of its firstRequest(), but after r165908 we no longer
always have a ResourceHandle. Since firstRequest()'s URL is the only
thing we need from ResourceHandle, store it directly rather than a
ResourceHandle pointer. In the case where we create a QuickLookHandle
from a ResourceLoader rather than a ResourceHandle, pass the loader's
originalRequest(), which represents the same request as firstRequest()
(i.e. the request after willSendRequest() but before redirects).

  • platform/network/ios/QuickLook.h:
  • platform/network/ios/QuickLook.mm:

(WebCore::QuickLookHandle::QuickLookHandle):
(WebCore::QuickLookHandle::create):
(WebCore::QuickLookHandle::didFail):
(WebCore::QuickLookHandle::~QuickLookHandle):

5:18 PM Changeset in webkit [167054] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

AX: Bug in AccessibilityNodeObject::helpText
https://bugs.webkit.org/show_bug.cgi?id=130386

Patch by James Craig <jcraig@apple.com> on 2014-04-09
Reviewed by Chris Fleizach.

Source/WebCore:

Test: accessibility/help-text.html

Ancestor loop was always checking attribute of original node rather than current node.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::helpText):

LayoutTests:

Tests accessibility help text in a variety of examples.

  • accessibility/help-text-expected.txt: Added.
  • accessibility/help-text.html: Added.
5:10 PM Changeset in webkit [167053] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Unreviewed bot maintenance. Re-add a number of passing
tests, and turn off a few failures.

  • platform/win/TestExpectations:
4:51 PM Changeset in webkit [167052] by Chris Fleizach
  • 5 edits in trunk

Regression: AX: list heuristics sometimes determined as presentational even when explicit roles applied
https://bugs.webkit.org/show_bug.cgi?id=131041

Reviewed by Mario Sanchez Prada.

Source/WebCore:

When display:table is used on a list item, it inserts RenderObjects that can be ignored as the children
of the list. This allows normal list heuristics to be applied.

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::computeAccessibilityIsIgnored):

LayoutTests:

  • accessibility/list-detection-expected.txt:
  • accessibility/list-detection.html:
4:37 PM Changeset in webkit [167051] by mrobinson@webkit.org
  • 2 edits in trunk/Source/WebKit2

Try to fix the GTK+ build after resetDragOperation rename

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDragDataReceived): Rename resetDragOperation to resetDragSession.
(dragExitedCallback): Ditto.

4:34 PM Changeset in webkit [167050] by mrobinson@webkit.org
  • 4 edits
    16 adds in trunk/LayoutTests

Rebaseline some tests for GTK+

  • platform/gtk/editing/input/scroll-viewport-page-up-down-expected.txt:
  • platform/gtk/fast/text/international/cjk-segmentation-expected.txt: Added.
  • platform/gtk/http/tests/xmlhttprequest/cache-override-expected.txt: Added.
  • platform/gtk/inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt: Added.
  • platform/gtk/js/dom/dom-static-property-for-in-iteration-expected.txt:
  • platform/gtk/plugins/nested-plugin-objects-expected.txt: Added.
  • platform/gtk/plugins/netscape-destroy-plugin-script-objects-expected.txt: Added.
  • platform/gtk/sputnik/Unicode/Unicode_320/S7.6_A2.2_T2-expected.txt: Added.
  • platform/gtk/sputnik/Unicode/Unicode_320/S7.6_A5.2_T8-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/filters-displace-01-f-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/filters-image-01-b-expected.txt: Added.
  • platform/gtk/svg/custom/object-no-size-attributes-expected.txt:
  • platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.
4:16 PM Changeset in webkit [167049] by ggaren@apple.com
  • 3 edits in trunk/Source/WTF

Rolled back in r166972.

This time, we conditionally exclude linking against bmalloc in Production
builds. Production builds will not be able to link against bmalloc
until the Production build system has been updated to build bmalloc.

WTF should link against bmalloc
https://bugs.webkit.org/show_bug.cgi?id=131403

Reviewed by Mark Rowe.

  • Configurations/WTF.xcconfig:
  • WTF.xcodeproj/project.pbxproj:
4:11 PM Changeset in webkit [167048] by ggaren@apple.com
  • 4 edits in trunk/Source

Put bmalloc headers in the right place
https://bugs.webkit.org/show_bug.cgi?id=131464

Reviewed by Mark Rowe.

../bmalloc:

  • Configurations/bmalloc.xcconfig: Set PRIVATE_HEADERS_FOLDER_PATH to

specify that we don't just want to dump all of our generically-named
headers into /usr/local/include.

../WTF:

  • wtf/FastMalloc.cpp: Use "<bmalloc/...>" syntax so we can find our

headers in <header-root>/usr/local/include/bmalloc/.

4:03 PM Changeset in webkit [167047] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

TileGrid should be PlatformCALayerClient instead of TileController
https://bugs.webkit.org/show_bug.cgi?id=131456

Switch one more place to use removeTiles.

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

(WebCore::TileGrid::revalidateTiles):

3:57 PM April 2014 Meeting edited by jfernandez@igalia.com
(diff)
3:54 PM Changeset in webkit [167046] by mmaxfield@apple.com
  • 4 edits in trunk

Remove "System Font" from whitelisted DRT fonts and char width calculations
https://bugs.webkit.org/show_bug.cgi?id=131411

Reviewed by Tim Horton.

Covered by existing tests.

Source/WebCore:

  • platform/graphics/Font.cpp:

(WebCore::Font::hasValidAverageCharWidth):

Tools:

  • DumpRenderTree/mac/DumpRenderTree.mm:

(allowedFontFamilySet):

3:41 PM April 2014 Meeting edited by stearns@adobe.com
(diff)
3:40 PM April 2014 Meeting edited by stearns@adobe.com
(diff)
3:35 PM Changeset in webkit [167045] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fullscreen does two view controller changes at once
https://bugs.webkit.org/show_bug.cgi?id=131432

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Eric Carlson.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::enterFullscreen):
delay -presentViewController on the main run loop to allow
previous view controller change to complete.

3:33 PM Changeset in webkit [167044] by commit-queue@webkit.org
  • 15 edits in trunk/Source

Enable fullscreen captions selection
https://bugs.webkit.org/show_bug.cgi?id=131069

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Eric Carlson.

Source/WebCore:

Enable media selection options from fullscreen. i.e. captions.

  • WebCore.exp.in:

Add exports for
setAudioMediaSelectionOptions
setLegibleMediaSelectionOptions
selectAudioMediaOption
selectLegibleMediaOption

  • platform/ios/WebVideoFullscreenInterface.h:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

  • platform/ios/WebVideoFullscreenInterfaceAVKit.h:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

(-[WebAVPlayerController dealloc]):
(-[WebAVPlayerController hasMediaSelectionOptions]):
(+[WebAVPlayerController keyPathsForValuesAffectingHasMediaSelectionOptions]):
(-[WebAVPlayerController hasAudioMediaSelectionOptions]):
(+[WebAVPlayerController keyPathsForValuesAffectingHasAudioMediaSelectionOptions]):
(-[WebAVPlayerController hasLegibleMediaSelectionOptions]):
(+[WebAVPlayerController keyPathsForValuesAffectingHasLegibleMediaSelectionOptions]):
(-[WebAVPlayerController currentAudioMediaSelectionOption]):
(-[WebAVPlayerController setCurrentAudioMediaSelectionOption:]):
(-[WebAVPlayerController currentLegibleMediaSelectionOption]):
(-[WebAVPlayerController setCurrentLegibleMediaSelectionOption:]):
(WebVideoFullscreenInterfaceAVKit::setAudioMediaSelectionOptions):
(WebVideoFullscreenInterfaceAVKit::setLegibleMediaSelectionOptions):

  • platform/ios/WebVideoFullscreenModel.h:

Add selectAudioMediaOption/selectLegibleMediaOption

  • platform/ios/WebVideoFullscreenModelMediaElement.h:

Add selectAudioMediaOption/selectLegibleMediaOption

  • platform/ios/WebVideoFullscreenModelMediaElement.mm:

Add selectAudioMediaOption/selectLegibleMediaOption

(WebVideoFullscreenModelMediaElement::setMediaElement):
Send initial media selection options.

(WebVideoFullscreenModelMediaElement::selectAudioMediaOption):
Will be implemented when audio track slection is implemented.

(WebVideoFullscreenModelMediaElement::selectLegibleMediaOption):
Select corresponding text track on HTMLMediaElement.

Source/WebKit2:

Enable media selection in fullscreen.
setLegibleMediaSelectionOptions/setAudioMediaSelectionOptions provide a list of options.
selectAudioMediaOption/selectLegibleMediaOption change the selected option.

  • UIProcess/ios/WebVideoFullscreenManagerProxy.h:

Add selectAudioMediaOption/selectLegibleMediaOption

  • UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:

Add selectAudioMediaOption/selectLegibleMediaOption

  • UIProcess/ios/WebVideoFullscreenManagerProxy.mm:

(WebKit::WebVideoFullscreenManagerProxy::selectAudioMediaOption):
Add selectAudioMediaOption

(WebKit::WebVideoFullscreenManagerProxy::selectLegibleMediaOption):
Add selectLegibleMediaOption

  • WebProcess/ios/WebVideoFullscreenManager.h:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

  • WebProcess/ios/WebVideoFullscreenManager.messages.in:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

  • WebProcess/ios/WebVideoFullscreenManager.mm:

(WebKit::WebVideoFullscreenManager::setAudioMediaSelectionOptions):
Add setAudioMediaSelectionOptions

(WebKit::WebVideoFullscreenManager::setLegibleMediaSelectionOptions):
Add setLegibleMediaSelectionOptions

3:33 PM Changeset in webkit [167043] by mmaxfield@apple.com
  • 2 edits in trunk/Tools

systemHiddenFontFamilySet in DRT is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=131414

Reviewed by Tim Horton.

It doesn't seem to affect test results on my machine.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(drt_NSFontManager_availableFonts):
(systemHiddenFontFamilySet): Deleted.

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

[CSS Shapes] Add no shapes version of RegionsShapes performance test
https://bugs.webkit.org/show_bug.cgi?id=131455

Reviewed by Ryosuke Niwa.

This is a no shapes version of the RegionsShapes performance test. All the content
will wrap around the floating containers. This way we can compare the runtime/memory
usage of the RegionsShapes test with/without shapes. The test is skipped by default.

  • Layout/Shapes/RegionsShapesNoShapes.html: Added.
  • Layout/Shapes/resources/RegionsShapesContentNoShapes.html: Added.
3:29 PM Changeset in webkit [167041] by Antti Koivisto
  • 5 edits in trunk/Source/WebCore

TileGrid should be PlatformCALayerClient instead of TileController
https://bugs.webkit.org/show_bug.cgi?id=131456

Reviewed by Tim Horton.

The client interface is for the tiles in the grid.

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

(WebCore::TileController::setContentsScale):
(WebCore::TileController::createTileLayer):
(WebCore::TileController::platformCALayerPaintContents): Deleted.
(WebCore::TileController::platformCALayerDeviceScaleFactor): Deleted.
(WebCore::TileController::platformCALayerShowDebugBorders): Deleted.
(WebCore::TileController::platformCALayerShowRepaintCounter): Deleted.
(WebCore::TileController::platformCALayerIncrementRepaintCount): Deleted.

  • platform/graphics/ca/mac/TileGrid.h:


Move repaint counter to TileGrid too.

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

(WebCore::TileGrid::removeTiles):
(WebCore::TileGrid::removeAllSecondaryTiles):
(WebCore::TileGrid::removeTilesInCohort):

Cleaned up tile removal.

(WebCore::TileGrid::revalidateTiles):
(WebCore::TileGrid::ensureTilesForRect):
(WebCore::TileGrid::platformCALayerPaintContents):
(WebCore::TileGrid::platformCALayerDeviceScaleFactor):
(WebCore::TileGrid::platformCALayerShowDebugBorders):
(WebCore::TileGrid::platformCALayerShowRepaintCounter):
(WebCore::TileGrid::platformCALayerContentsOpaque):
(WebCore::TileGrid::platformCALayerIncrementRepaintCount):
(WebCore::queueTileForRemoval): Deleted.

3:24 PM Changeset in webkit [167040] by ap@apple.com
  • 15 edits in trunk/Source

Rename some dragging functions
https://bugs.webkit.org/show_bug.cgi?id=131460

Reviewed by Tim Horton.

Source/WebCore:

Renamed performDrag to performDragOperation. This function is responsible for
accepting a drop, not for the whole drag.

The new name is not perfect either, but I think that it's better, and at least
it matches AppKit, like the other dragging destination functions already do.

  • WebCore.exp.in:
  • page/DragController.cpp:

(WebCore::DragController::performDragOperation):
(WebCore::DragController::performDrag): Deleted.

  • page/DragController.h:

Source/WebKit/mac:

Renamed performDrag to performDragOperation.

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

Source/WebKit/win:

Renamed performDrag to performDragOperation.

  • WebView.cpp: (WebView::Drop):

Source/WebKit2:

Renamed performDrag to performDragOperation.

Also renamed resetDragOperation to resetDragSession, because it's m_dragSession
that it resets.

  • Shared/DragControllerAction.h:
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDragDrop):

  • UIProcess/API/mac/WKView.mm:

(-[WKView draggingEntered:]):
(-[WKView draggingExited:]):
(-[WKView performDragOperation:]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::performDragOperation):
(WebKit::WebPageProxy::performDrag): Deleted.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::resetDragSession):
(WebKit::WebPageProxy::resetDragOperation): Deleted.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::performDragControllerAction):

3:13 PM Changeset in webkit [167039] by barraclough@apple.com
  • 4 edits in trunk/Source/WebKit2

Update SPI for managing tabs
https://bugs.webkit.org/show_bug.cgi?id=131453

Reviewed by Alexey Proskuryakov.

  • Configurations/WebKit2.xcconfig:
    • added AssertionServices
  • UIProcess/WebProcessProxy.h:
    • added m_assertion, m_assertionState.
  • UIProcess/ios/WebProcessProxyIOS.mm:

(WebKit::WebProcessProxy::updateProcessState):

  • create BKSProcessAssertion to take an assertion.
3:12 PM Changeset in webkit [167038] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK2: Dictated words disappear after being inserted.
https://bugs.webkit.org/show_bug.cgi?id=131458
<rdar://problem/16395011>

Reviewed by Benjamin Poulain.

The dictation engine treats selected text as text to be
removed. We need to ensure that the range selected to insert the
new text isn't reflected in the UI process until we are done
inserting the text.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::replaceDictatedText):

2:52 PM Changeset in webkit [167037] by mark.lam@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/ChangeLog

Unreviewed. Updated ChangeLog comment for r167031: <http://trac.webkit.org/r167031>.

2:41 PM Changeset in webkit [167036] by commit-queue@webkit.org
  • 6 edits
    1 delete in trunk/Source/JavaScriptCore

Get rid of JITOperationWrappers.h header file.
https://bugs.webkit.org/show_bug.cgi?id=131450

Patch by Julien Brianceau <jbriance@cisco.com> on 2014-04-09
Reviewed by Michael Saboff.

JITOperationWrappers header file contains architecture specific code that is
not needed anymore, so get rid of it.

  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGOperations.cpp:
  • jit/JITOperationWrappers.h: Removed.
  • jit/JITOperations.cpp:
2:39 PM Changeset in webkit [167035] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

2014-04-09 Geoffrey Garen <ggaren@apple.com>

Rolled back out r166972.

The production buildbots are still broken because the build-root script
doesn't build bmalloc.

  • WTF.xcodeproj/project.pbxproj:
2:31 PM Changeset in webkit [167034] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't offer "contact" actions in telephone number menus
<rdar://problem/16556907> and https://bugs.webkit.org/show_bug.cgi?id=131451

Reviewed by Tim Horton.

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::showTelephoneNumberMenu): Skip actions that have to do with contacts,

and skip separators too!

2:13 PM Changeset in webkit [167033] by Samuel White
  • 5 edits in trunk

AX: Initial text selection point should respect element focus.
https://bugs.webkit.org/show_bug.cgi?id=131402

Reviewed by Chris Fleizach.

Source/WebCore:

No new tests, updated existing selection-initial to test this functionality.

Support the case where we want to set the initial selection and there's already a focused element.

  • page/EventHandler.cpp:

(WebCore::setKeyboardSelection):
(WebCore::handleKeyboardSelectionMovement):

LayoutTests:

Updating test to make sure initial selection respects the focused element when necessary. Now, if a VoiceOver user attempts to use
arrow keys to read text and selection isn't set, we will set initial selection before/after the focused element if one is present.

  • platform/mac/accessibility/selection-initial-expected.txt:
  • platform/mac/accessibility/selection-initial.html:
2:07 PM Changeset in webkit [167032] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Unreviewed test fix: Don't double-release BSTR.

  • DumpRenderTree/win/DumpRenderTree.cpp:

(dump): Remove unneeded call to SysFreeString now that we are
using _bstr_t for this variable.

1:31 PM April 2014 Meeting edited by timothy_horton@apple.com
(diff)
1:29 PM April 2014 Meeting edited by Simon Fraser
(diff)
1:26 PM April 2014 Meeting edited by ddkilzer@apple.com
(diff)
1:23 PM Changeset in webkit [167031] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Ensure that LLINT accessing of the ProtoCallFrame is big endian friendly.
<https://webkit.org/b/131449>

Reviewed by Mark Hahnenberg.

Change ProtoCallFrame::paddedArgCount to be of type uint32_t. The argCount
that it pads is of type int anyway. It doesn't need to be 64 bit. This
also makes it work with the LLINT which is loading it with a loadi
instruction.

We should add the PayLoadOffset to ProtoCallFrame::argCountAndCodeOriginValue
when loading the argCount.

  • interpreter/ProtoCallFrame.h:

(JSC::ProtoCallFrame::setPaddedArgCount):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
1:21 PM Changeset in webkit [167030] by Brent Fulgham
  • 15 edits in trunk/Tools

[Win] Various DumpRenderTree Fixes.
https://bugs.webkit.org/show_bug.cgi?id=131446.

Reviewed by Tim Horton.

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::title): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(AccessibilityUIElement::description): Ditto.
(AccessibilityUIElement::helpText): Ditto.
(AccessibilityUIElement::intValue): Ditto.
(AccessibilityUIElement::isPressActionSupported): Ditto.
(AccessibilityUIElement::accessibilityValue): Ditto.

  • DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:

(DRTDesktopNotificationPresenter::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(DRTDesktopNotificationPresenter::AddRef): Ditto.
(DRTDesktopNotificationPresenter::Release): Ditto.
(DRTDesktopNotificationPresenter::showDesktopNotification): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(DRTDesktopNotificationPresenter::cancelDesktopNotification): Ditto.
(DRTDesktopNotificationPresenter::notificationDestroyed): Ditto.
(DRTDesktopNotificationPresenter::checkNotificationPermission): Ditto.
(DRTDesktopNotificationPresenter::requestNotificationPermission): Ditto.

  • DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
  • DumpRenderTree/win/DumpRenderTree.cpp:

(dumpFrameScrollPosition): Ditto.
(dumpFramesAsText): Ditto.
(compareHistoryItems): Ditto.
(dumpHistoryItem): Ditto.
(dump): Ditto.
(resetDefaultsToConsistentValues): Ditto.
(resetWebViewToConsistentStateBeforeTesting): Ditto.
(runTest): Ditto.
(createWebViewAndOffscreenWindow): Ditto.

  • DumpRenderTree/win/EditingDelegate.cpp:

(EditingDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(EditingDelegate::AddRef): Ditto.
(EditingDelegate::Release): Ditto.
(dumpPath): Switch to _bstr_t. Use JSStringCreateWithBSTR
(EditingDelegate::shouldBeginEditingInDOMRange): Get rid of uneeded STDMETHODCALLTYPE declaration.
(EditingDelegate::shouldEndEditingInDOMRange): Ditto.
(EditingDelegate::shouldInsertNode): Ditto.
(EditingDelegate::shouldInsertText): Ditto.
(EditingDelegate::shouldDeleteDOMRange): Ditto.
(EditingDelegate::shouldChangeSelectedDOMRange): Ditto.
(EditingDelegate::shouldApplyStyle): Ditto.
(EditingDelegate::shouldChangeTypingStyle): Ditto.
(EditingDelegate::doPlatformCommand): Ditto.
(EditingDelegate::webViewDidBeginEditing): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(EditingDelegate::webViewDidChange): Ditto.
(EditingDelegate::webViewDidEndEditing): Ditto.
(EditingDelegate::webViewDidChangeTypingStyle): Ditto.
(EditingDelegate::webViewDidChangeSelection): Ditto.
(EditingDelegate::checkSpellingOfString): Ditto.

  • DumpRenderTree/win/FrameLoadDelegate.cpp:

(descriptionSuitableForTestResult): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(FrameLoadDelegate::FrameLoadDelegate): Ditto.
(FrameLoadDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(FrameLoadDelegate::AddRef): Ditto.
(FrameLoadDelegate::Release): Ditto.
(FrameLoadDelegate::didStartProvisionalLoadForFrame): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(FrameLoadDelegate::didReceiveServerRedirectForProvisionalLoadForFrame): Ditto.
(FrameLoadDelegate::didFailProvisionalLoadWithError): Ditto.
(FrameLoadDelegate::didCommitLoadForFrame): Ditto.
(FrameLoadDelegate::didReceiveTitle): Ditto.
(FrameLoadDelegate::didChangeIcons): Ditto.
(delegatesWithDelayedWork): Ditto.
(FrameLoadDelegate::didFinishLoadForFrame): Ditto.
(FrameLoadDelegate::didFailLoadWithError): Ditto.
(FrameLoadDelegate::willPerformClientRedirectToURL): Ditto.
(FrameLoadDelegate::didCancelClientRedirectForFrame): Ditto.
(FrameLoadDelegate::willCloseFrame): Ditto.
(FrameLoadDelegate::didFinishDocumentLoadForFrame): Ditto.
(FrameLoadDelegate::didHandleOnloadEventsForFrame): Ditto.
(FrameLoadDelegate::didFirstVisuallyNonEmptyLayoutInFrame): Ditto.
(FrameLoadDelegate::didDisplayInsecureContent): Ditto.
(FrameLoadDelegate::didRunInsecureContent): Ditto.

  • DumpRenderTree/win/FrameLoadDelegate.h:
  • DumpRenderTree/win/HistoryDelegate.cpp:

(HistoryDelegate::didNavigateWithNavigationData): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(HistoryDelegate::updateHistoryTitle): Ditto.
(HistoryDelegate::populateVisitedLinksForWebView): Ditto.

  • DumpRenderTree/win/PolicyDelegate.cpp:

(dumpPath):
(PolicyDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(PolicyDelegate::AddRef): Ditto.
(PolicyDelegate::Release): Ditto.
(PolicyDelegate::decidePolicyForNavigationAction): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(PolicyDelegate::unableToImplementPolicyWithError): Ditto.

  • DumpRenderTree/win/ResourceLoadDelegate.cpp:

(ResourceLoadDelegate::descriptionSuitableForTestResult): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(ResourceLoadDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(ResourceLoadDelegate::AddRef): Ditto.
(ResourceLoadDelegate::Release): Ditto.
(ResourceLoadDelegate::identifierForInitialRequest): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(ResourceLoadDelegate::removeIdentifierForRequest): Ditto.
(ResourceLoadDelegate::willSendRequest): Ditto.
(ResourceLoadDelegate::didReceiveAuthenticationChallenge): Ditto.
(ResourceLoadDelegate::didReceiveResponse): Ditto.
(ResourceLoadDelegate::didFinishLoadingFromDataSource): Ditto.
(ResourceLoadDelegate::didFailLoadingWithError): Ditto.

  • DumpRenderTree/win/TestRunnerWin.cpp: Ditto.

(TestRunner::queueLoad): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(TestRunner::setUserStyleSheetLocation): Ditto.
(TestRunner::execCommand): Ditto.
(TestRunner::overridePreference): Ditto.
(TestRunner::evaluateScriptInIsolatedWorld): Ditto.

  • DumpRenderTree/win/TextInputControllerWin.cpp: Ditto.

(TextInputController::setMarkedText): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(TextInputController::insertText): Ditto.

  • DumpRenderTree/win/UIDelegate.cpp:

(UIDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(UIDelegate::AddRef): Ditto.
(UIDelegate::Release): Ditto.
(UIDelegate::hasCustomMenuImplementation): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(UIDelegate::trackCustomPopupMenu): Ditto.
(UIDelegate::registerUndoWithTarget): Ditto.
(UIDelegate::removeAllActionsWithTarget): Ditto.
(UIDelegate::setActionTitle): Ditto.
(UIDelegate::undo): Ditto.
(UIDelegate::redo): Ditto.
(UIDelegate::canUndo): Ditto.
(UIDelegate::canRedo): Ditto.
(UIDelegate::printFrame): Ditto.
(UIDelegate::ftpDirectoryTemplatePath): Ditto.
(UIDelegate::webViewHeaderHeight): Ditto.
(UIDelegate::webViewFooterHeight): Ditto.
(UIDelegate::drawHeaderInRect): Ditto.
(UIDelegate::drawFooterInRect): Ditto.
(UIDelegate::webViewPrintingMarginRect): Ditto.
(UIDelegate::canRunModal): Ditto.
(UIDelegate::createModalDialog): Ditto.
(UIDelegate::runModal): Ditto.
(UIDelegate::isMenuBarVisible): Ditto.
(UIDelegate::setMenuBarVisible): Ditto.
(UIDelegate::runDatabaseSizeLimitPrompt): Ditto.
(UIDelegate::paintCustomScrollbar): Ditto.
(UIDelegate::paintCustomScrollCorner): Ditto.
(UIDelegate::setFrame): Ditto.
(UIDelegate::webViewFrame): Ditto.
(UIDelegate::runJavaScriptAlertPanelWithMessage): Ditto.
(UIDelegate::runJavaScriptConfirmPanelWithMessage): Ditto.
(UIDelegate::runJavaScriptTextInputPanelWithPrompt): Ditto.
(UIDelegate::runBeforeUnloadConfirmPanelWithMessage): Ditto.
(UIDelegate::webViewAddMessageToConsole): Ditto.
(UIDelegate::doDragDrop): Ditto.
(UIDelegate::webViewGetDlgCode): Ditto.
(UIDelegate::createWebViewWithRequest): Ditto.
(UIDelegate::webViewClose): Ditto.
(UIDelegate::webViewFocus): Ditto.
(UIDelegate::webViewUnfocus): Ditto.
(UIDelegate::webViewPainted): Ditto.
(UIDelegate::exceededDatabaseQuota): Ditto.
(UIDelegate::embeddedViewWithArguments): Ditto.
(UIDelegate::webViewClosing): Ditto.
(UIDelegate::webViewSetCursor): Ditto.
(UIDelegate::webViewDidInvalidate): Ditto.
(UIDelegate::setStatusText): Ditto.
(UIDelegate::desktopNotificationsDelegate): Ditto.
(UIDelegate::drawBackground): Ditto.
(UIDelegate::decidePolicyForGeolocationRequest): Ditto.
(UIDelegate::didPressMissingPluginButton): Ditto.

  • DumpRenderTree/win/WorkQueueItemWin.cpp: Ditto.

(LoadItem::invoke): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(LoadHTMLStringItem::invoke): Ditto.
(ScriptItem::invoke): Ditto.

12:48 PM Changeset in webkit [167029] by Lucas Forschler
  • 2 edits in tags/Safari-538.26.4/Source/WebCore

Merged r167023.

12:32 PM Changeset in webkit [167028] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

HTMLCollection::updateNamedElementCach iterates over items twice
https://bugs.webkit.org/show_bug.cgi?id=131448

Reviewed by Andreas Kling.

Compute the length first and go through the cache interface to traverse through items.

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::updateNamedElementCache):

12:30 PM Changeset in webkit [167027] by Lucas Forschler
  • 5 edits in tags/Safari-538.26.4/Source

Versioning.

12:13 PM Changeset in webkit [167026] by Lucas Forschler
  • 1 copy in tags/Safari-538.26.4

New Tag.

11:43 AM Changeset in webkit [167025] by b.long@cablelabs.com
  • 24 edits
    2 copies
    3 adds in trunk

[GStreamer] Expose MPEG-TS metadata
https://bugs.webkit.org/show_bug.cgi?id=122001

Reviewed by Eric Carlson.

.:

  • Source/cmake/FindGStreamer.cmake: Look for gstreamer-mpegts >= 1.3.0.
  • Source/cmake/OptionsEfl.cmake: Same.
  • Source/cmake/OptionsGTK.cmake: Same.

Source/WebCore:

Test: media/track/in-band/track-in-band-mpegts-metadata.html

  • CMakeLists.txt: Add InbandDataTextTrack.
  • PlatformGTK.cmake: Look for gstreamer-mpegts and use it if available.
  • WebCore.vcxproj/WebCore.vcxproj: Add InbandDataTextTrack.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Same.
  • WebCore.xcodeproj/project.pbxproj: Same.
  • html/track/DataCue.cpp:

(WebCore::DataCue::DataCue): Add a constructor using raw data.

  • html/track/DataCue.h:

(WebCore::DataCue::create): Same.

  • html/track/InbandDataTextTrack.cpp: Added, InbandTextTrack which implements addDataCue().
  • html/track/InbandDataTextTrack.h:
  • html/track/InbandGenericTextTrack.h: Move unimplemented methods to InbandTextTrack.
  • html/track/InbandWebVTTTextTrack.h: Same.
  • html/track/InbandTextTrack.h: Same, and add inBandMetadataTrackDispatchType.
  • html/track/InbandTextTrack.cpp:

(WebCore::InbandTextTrack::create): Add constructor for InbandDataTextTrack.
(WebCore::InbandTextTrack::inBandMetadataTrackDispatchType): Added.

  • html/track/TextTrack.h:

(WebCore::TextTrack::inBandMetadataTrackDispatchType): Added (empty).

  • html/track/TextTrack.idl: Add inBandMetadataTrackDispatchType.
  • platform/graphics/InbandTextTrackPrivate.h: Add inBandMetadataTrackDispatchType and Data format.

(WebCore::InbandTextTrackPrivate::inBandMetadataTrackDispatchType):

  • platform/graphics/InbandTextTrackPrivateClient.h: Add addDataCue() method.
  • platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h:

(WebCore::InbandMetadataTextTrackPrivateGStreamer::create): Allow specifying the cue format and id.

(WebCore::InbandMetadataTextTrackPrivateGStreamer::InbandMetadataTextTrackPrivateGStreamer): Same.

(WebCore::InbandMetadataTextTrackPrivateGStreamer::setInBandMetadataTrackDispatchType): Added.
(WebCore::InbandMetadataTextTrackPrivateGStreamer::addDataCue): Added.
(WebCore::InbandMetadataTextTrackPrivateGStreamer::addGenericCue): Added.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::handleMessage): Check for MPEG-TS sections.
(WebCore::MediaPlayerPrivateGStreamer::processMpegTsSection): Add MPEG-TS section metadata, and get inBandMetadataTrackDispatchType from the PMT.
(WebCore::MediaPlayerPrivateGStreamer::processTableOfContents): Explicitly use Generic CueFormat.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

LayoutTests:

  • media/content/user-private-streams.ts: Added.
  • media/track/in-band/track-in-band-mpegts-metadata-expected.txt: Added.
  • media/track/in-band/track-in-band-mpegts-metadata.html: Added.
11:41 AM Changeset in webkit [167024] by Chris Fleizach
  • 14 edits in trunk

AX: Make AXPress much more reliable on the Web
https://bugs.webkit.org/show_bug.cgi?id=131426

Reviewed by Mario Sanchez Prada.

Source/WebCore:

AXPress fails when an event handler is on a node higher in the parent chain than the focused node.

We need to make AXPress more reliable by

1) Using the element that is focused as the target of the event
2) Search for the inner most control object when dispatching the event

Updated existing accessibility/press-works-on-control-types.html

  • accessibility/AccessibilityMenuList.cpp:

(WebCore::AccessibilityMenuList::press):

  • accessibility/AccessibilityMenuList.h:
  • accessibility/AccessibilityMenuListPopup.cpp:

(WebCore::AccessibilityMenuListPopup::press):

  • accessibility/AccessibilityMenuListPopup.h:
  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::press):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::performDefaultAction):

  • accessibility/AccessibilitySearchFieldButtons.cpp:

(WebCore::AccessibilitySearchFieldCancelButton::press):

  • accessibility/AccessibilitySearchFieldButtons.h:
  • accessibility/AccessibilitySpinButton.cpp:

(WebCore::AccessibilitySpinButtonPart::press):

  • accessibility/AccessibilitySpinButton.h:

LayoutTests:

  • accessibility/press-works-on-control-types-expected.txt:
  • accessibility/press-works-on-control-types.html:
11:25 AM Changeset in webkit [167023] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

ContentFilterMac is broken when NE_FILTER_SOURCE is enabled.
<rdar://problem/15978793> and https://bugs.webkit.org/show_bug.cgi?id=131445

Reviewed by Andy Estes.

No new tests (Not a tested feature).

  • platform/mac/ContentFilterMac.mm:

(WebCore::ContentFilter::needsMoreData): Only consider m_neFilterSourceStatus if m_neFilterSource exists.
(WebCore::ContentFilter::didBlockData): Ditto.

11:19 AM Changeset in webkit [167022] by zoltan@webkit.org
  • 2 edits
    5 adds in trunk/PerformanceTests

[CSS Shapes] Add no regions version of RegionsShapes performance test
https://bugs.webkit.org/show_bug.cgi?id=131442

Reviewed by Ryosuke Niwa.

We would like have a no regions version for RegionsShapes performance test. The new
test produces similar layout to RegionsShapes.html without using regions. It is helpful
for us to do further comparisons when necessary. This test is skipped by default.

  • Layout/Shapes/RegionsShapesNoRegions.html: Added.
  • Layout/Shapes/resources/RegionsShapes.css: Added.

(html, body):
(.shape):
(#circleShape):
(#imageShape):
(#insetShape):
(#roundedInsetShape):
(#triangleLeft):
(#triangleRight):
(#selfIntersectingStar):
(#region1):
(#region2):
(#region3):

  • Layout/Shapes/resources/RegionsShapesContent.html:
  • Layout/Shapes/resources/RegionsShapesContentNoRegionsWidth400.html: Added.
  • Layout/Shapes/resources/RegionsShapesContentNoRegionsWidth600.html: Added.
  • Layout/Shapes/resources/RegionsShapesContentNoRegionsWidth800.html: Added.
11:15 AM Changeset in webkit [167021] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

2014-04-09 Geoffrey Garen <ggaren@apple.com>

Rolled back in r166972.

The iOS buildbot's scripts have been updated to build bmalloc, so the
build should now succeed on the bot.

Also renamed "Frameworks" to "Libraries" as suggested in a review comment.

WTF should link against bmalloc
https://bugs.webkit.org/show_bug.cgi?id=131403

Reviewed by Michael Saboff.

This is required to build successfullly with bmalloc enabled.

  • WTF.xcodeproj/project.pbxproj:
10:28 AM Changeset in webkit [167020] by oliver@apple.com
  • 69 edits
    3 adds
    2 deletes in trunk

Rewrite Function.bind as a builtin
https://bugs.webkit.org/show_bug.cgi?id=131083

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This change removes the existing function.bind implementation
entirely so JSBoundFunction is no more.

Instead we just return a regular JS closure with a few
private properties hanging off it that allow us to perform
the necessary bound function fakery. While most of this is
simple, a couple of key changes:

  • The parser and lexer now directly track whether they're parsing code for call or construct and convert the private name @IsConstructor into TRUETOK or FALSETOK as appropriate. This automatically gives us the ability to vary behaviour from within the builtin. It also leaves a lot of headroom for trivial future improvements.
  • The instanceof operator now uses the prototypeForHasInstance private name, and we have a helper function to ensure that all objects that need to can update their magical 'prototype' property pair correctly.
  • API/JSScriptRef.cpp:

(parseScript):

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • builtins/BuiltinExecutables.cpp:

(JSC::BuiltinExecutables::createBuiltinExecutable):

  • builtins/Function.prototype.js:

(bind.bindingFunction):
(bind.else.bindingFunction):
(bind):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::generateFunctionCodeBlock):

  • bytecompiler/NodesCodegen.cpp:

(JSC::InstanceOfNode::emitBytecode):

  • interpreter/Interpreter.cpp:
  • parser/Lexer.cpp:

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

  • parser/Lexer.h:
  • parser/Parser.cpp:

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

  • parser/Parser.h:

(JSC::parse):

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

(JSC::CodeCache::getGlobalCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):

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

(JSC::checkSyntax):

  • runtime/Executable.cpp:

(JSC::ProgramExecutable::checkSyntax):

  • runtime/FunctionPrototype.cpp:

(JSC::FunctionPrototype::addFunctionProperties):
(JSC::functionProtoFuncBind): Deleted.

  • runtime/JSBoundFunction.cpp: Removed.
  • runtime/JSBoundFunction.h: Removed.
  • runtime/JSFunction.cpp:

(JSC::RetrieveCallerFunctionFunctor::RetrieveCallerFunctionFunctor):
(JSC::RetrieveCallerFunctionFunctor::operator()):
(JSC::retrieveCallerFunction):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::defineOwnProperty):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncSetTypeErrorAccessor):

  • runtime/JSGlobalObjectFunctions.h:
  • runtime/JSObject.h:

(JSC::JSObject::inlineGetOwnPropertySlot):

Source/WebCore:

Switch WebCore to use the helper functions when defining the
prototype properties on DOM constructors, and update bindings
tests accordingly.

  • bindings/js/JSImageConstructor.cpp:

(WebCore::JSImageConstructor::finishCreation):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorHelperMethods):

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

(WebCore::JSTestActiveDOMObjectConstructor::finishCreation):

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

(WebCore::JSTestCustomNamedGetterConstructor::finishCreation):

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

(WebCore::JSTestEventConstructorConstructor::finishCreation):

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

(WebCore::JSTestEventTargetConstructor::finishCreation):

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

(WebCore::JSTestExceptionConstructor::finishCreation):

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

(WebCore::JSTestGenerateIsReachableConstructor::finishCreation):

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

(WebCore::JSTestInterfaceConstructor::finishCreation):

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

(WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):

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

(WebCore::JSTestNamedConstructorConstructor::finishCreation):
(WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):

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

(WebCore::JSTestNodeConstructor::finishCreation):

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

(WebCore::JSTestObjConstructor::finishCreation):

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

(WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):

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

(WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):

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

(WebCore::JSTestTypedefsConstructor::finishCreation):

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

(WebCore::JSattributeConstructor::finishCreation):

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

(WebCore::JSreadonlyConstructor::finishCreation):

LayoutTests:

Testing.

  • js/dom/function-bind-expected.txt:
  • js/regress/function-bind-expected.txt: Added.
  • js/regress/function-bind.html: Added.
  • js/regress/script-tests/function-bind.js: Added.

(foo):

10:23 AM Changeset in webkit [167019] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix. Replacing deprecated enum with AVPlayerViewControllerExitFullScreenReason.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(-[WebAVPlayerController playerViewController:shouldDismissWithReason:]):

10:07 AM Changeset in webkit [167018] by stavila@adobe.com
  • 5 edits
    8 adds in trunk

[CSS Regions] Monolithic elements should not affect the layout of the content outside its region
https://bugs.webkit.org/show_bug.cgi?id=130499

Reviewed by David Hyatt.

Source/WebCore:

When performing layout on an element flowed into regions, its logical height must not be incremented
past the region's logical bottom for monolithic elements in regions different than the last region their containing
block is fragmented into. This ensures that the following elements are correctly laid out
from the top of the next region.
This change must also be applied to floats in order to prevent text from avoiding part
of a float that did not actually made it into the current region, but instead overflowed
the previous one.

Tests: fast/regions/fragmentation-after-float-overflow-single-region.html

fast/regions/fragmentation-after-monolithic-overflow-self-collapsed.html
fast/regions/fragmentation-after-monolithic-overflow-single-region.html
fast/regions/fragmentation-after-monolithic-overflow.html

  • rendering/FloatingObjects.cpp:

(WebCore::FloatingObjects::computePlacedFloatsTree):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlockChild):
(WebCore::RenderBlockFlow::adjustBlockChildForPagination):
(WebCore::RenderBlockFlow::lowestFloatLogicalBottom):
(WebCore::RenderBlockFlow::getClearDelta):
(WebCore::RenderBlockFlow::applyAfterBreak): Deleted.
(WebCore::RenderBlockFlow::nextFloatLogicalBottomBelow): Deleted.
(WebCore::RenderBlockFlow::nextFloatLogicalBottomBelowForBlock): Deleted.
(WebCore::RenderBlockFlow::flipFloatForWritingModeForChild): Deleted.

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

(WebCore::RenderFlowThread::isBoxInDifferentRegionsAsFloat):

  • rendering/RenderFlowThread.h:

LayoutTests:

Added tests for different types of fragmentation following monolithic content
overflowing its region.
Rebased the webkit-flow-float-unable-to-push test as its expected result was not the correct one.

  • fast/regions/webkit-flow-float-unable-to-push-expected.html:
  • fast/regions/fragmentation-after-float-overflow-single-region-expected.html: Added.
  • fast/regions/fragmentation-after-float-overflow-single-region.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-expected.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-self-collapsed-expected.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-self-collapsed.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-single-region-expected.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-single-region.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow.html: Added.
10:05 AM Changeset in webkit [167017] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Use std::array in AffineTransform, and get rid of setMatrix
https://bugs.webkit.org/show_bug.cgi?id=131416

Reviewed by Sam Weinig.

  • platform/graphics/transforms/AffineTransform.cpp:

(WebCore::AffineTransform::AffineTransform):
(WebCore::AffineTransform::multiply):

  • platform/graphics/transforms/AffineTransform.h:

(WebCore::AffineTransform::setMatrix): Deleted.

9:58 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
9:53 AM Changeset in webkit [167016] by Carlos Garcia Campos
  • 6 edits
    1 delete in trunk/Source/WebCore

[GTK] Plugin process crashes when loading totem plugin
https://bugs.webkit.org/show_bug.cgi?id=131357

Reviewed by Martin Robinson.

Remove netscape plugin implementation from WebCore that was only
used by WebKit1. This removes the conflict between the WebCore NPN
symbols and the ones used by the plugins.

  • CMakeLists.txt:
  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • PlatformWin.cmake:
  • plugins/PluginViewNone.cpp:
  • plugins/gtk/PluginPackageGtk.cpp: Removed.
  • plugins/gtk/PluginViewGtk.cpp: Removed.
  • plugins/gtk/gtk2xtbin.c: Removed.
  • plugins/gtk/gtk2xtbin.h: Removed.
  • plugins/gtk/xembed.h: Removed.
9:47 AM Changeset in webkit [167015] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r166853): fast/preloader/document-write.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=130942

  • platform/mac/TestExpectations: The offending code was re-landed, marking as

flaky again.

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

fullscreen controls first show a play button instead of a pause button
https://bugs.webkit.org/show_bug.cgi?id=131430

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Jer Noble.

isPlaying() is false while buffering, paused() isn't; use paused() for
the play button.

  • platform/ios/WebVideoFullscreenModelMediaElement.mm:

(WebVideoFullscreenModelMediaElement::setMediaElement):
(WebVideoFullscreenModelMediaElement::handleEvent):
Use HTMLMediaElement::paused() instead of HTMLMediaElement::isPlaying()

8:47 AM Changeset in webkit [167013] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove duplicated files and unnecessary conditions from UseJSC.cmake
https://bugs.webkit.org/show_bug.cgi?id=131438

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-04-09
Reviewed by Csaba Osztrogonác.

No new tests required.

  • UseJSC.cmake:
8:08 AM Changeset in webkit [167012] by mario.prada@samsung.com
  • 6 edits in trunk

[GTK] Layout tests accessibility/children-changed-sends-notification.html and accessibility/notification-listeners.html fails
https://bugs.webkit.org/show_bug.cgi?id=131380

Reviewed by Chris Fleizach.

Source/WebCore:

Don't emit signals for added objects that we know won't be exposed
to the accessibility hierarchy (e.g. static text).

  • accessibility/atk/AXObjectCacheAtk.cpp:

(WebCore::AXObjectCache::attachWrapper): Add extra check and early return.

LayoutTests:

Updated TestExpectations file and update layout test that was not
correctly written, and expecting the signals in the wrong order.

  • platform/gtk/TestExpectations: Removed failure expectations.
  • accessibility/children-changed-sends-notification.html: Updated

test to make sure we touch the accessibility tree after adding a
<button> so we get the 'add' signal at the right moment.

  • accessibility/children-changed-sends-notification-expected.txt:

Updated expectations to expect the 'add' and 'remove' signals in
the right order.

8:05 AM Changeset in webkit [167011] by mario.prada@samsung.com
  • 4 edits in trunk

[AX][GTK] No new lines in some AX tests output
https://bugs.webkit.org/show_bug.cgi?id=131294

Reviewed by Martin Robinson.

Source/WebCore:

Do not implement Hypetext or AtkText for the WebArea. Those
interfaces will be implemented by the containers (automatically
generated or not) for the different parts of the DOM and the
render subtree under this element anyway.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(getInterfaceMaskFromObject): Make sure we don't apply
WAIHypertext nor WAIText to objects with role WebAreaRole.

LayoutTests:

Removed failure expectations for tests now passing.

  • platform/gtk/TestExpectations: Updated.
2:48 AM Changeset in webkit [167010] by Csaba Osztrogonác
  • 3 edits in trunk/Tools

Stylechecker: False positive on inline asm code.
https://bugs.webkit.org/show_bug.cgi?id=130570

Patch by Gergo Balogh <gbalogh.u-szeged@partner.samsung.com> on 2014-04-09
Reviewed by Csaba Osztrogonác.

Disable stylechecking in asm blocks.

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

(process_line):
(_InlineASMState):
(_InlineASMState.init):
(_InlineASMState.process_line):
(_InlineASMState.isInside):
(_process_lines):

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

(WebKitStyleTest.test_member_initialization_list):

2:39 AM Changeset in webkit [167009] by mario.prada@samsung.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening for GTK.

Updated test expectations after r166175, which removed an <hr>
from the original test accessibility/lists.html.

  • platform/gtk/accessibility/lists-expected.txt: Updated
1:28 AM Changeset in webkit [167008] by Carlos Garcia Campos
  • 6 edits
    2 adds in trunk/Tools

[GTK] Move WebKit1 unit tests resources used by WebKit2 unit tests to WebKit2 resources dir
https://bugs.webkit.org/show_bug.cgi?id=131029

Reviewed by Philippe Normand.

Add blank.ico and test.pdf to resources dir of WebKit2Gtk unit
tests and remove the getWebKit1TestResoucesDir() method.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:

(testDownloadLocalFile): Use Test::getResourcesDir().
(testDownloadLocalFileError): Ditto.
(serverCallback): Ditto.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:

(serverCallback): Ditto.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:

(httpServerCallback): Ditto.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:

(serverCallback): Ditto.

  • TestWebKitAPI/Tests/WebKit2Gtk/resources/blank.ico: Added.
  • TestWebKitAPI/Tests/WebKit2Gtk/resources/test.pdf: Added.
  • TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h:

(Test::getWebKit1TestResoucesDir): Deleted.

12:37 AM Changeset in webkit [167007] by ap@apple.com
  • 5 edits
    21 adds in trunk

[WK2] HTTP authentication regression tests fail
https://bugs.webkit.org/show_bug.cgi?id=81627
<rdar://problem/11079296>

Reviewed by Anders Carlsson.

Tools:

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

(WTR::TestController::createWebViewWithOptions): Added canAuthenticateAgainstProtectionSpaceInFrame
to pageLoaderClient structure.
(WTR::TestController::canAuthenticateAgainstProtectionSpaceInFrame): Return true
for password based authentication (we do get server trust challenges on some tests,
which WKTR can't handle).
When this client call is not implemented or returns false, didReceiveAuthenticationChallengeInFrame
calls won't be made, at least on CFNetwork based platforms.
(WTR::TestController::didReceiveAuthenticationChallengeInFrame): Changed the output
to omit <unknown>. The resource is always unknown with WK2, and it doesn't really
make sense to associate auth requests with individual resources - there can be
multiple resources loading at once from the same protection space, so WebKit1 API
that had a resource identifier was inherently racy.

LayoutTests:

  • platform/mac-wk2/TestExpectations: Unskipped tests that now pass. Marked three

tests as failing, because enabling auth uncovered that they are failing
(in browser as well).

  • platform/wk2/http: Added.
  • platform/wk2/http/tests: Added.
  • platform/wk2/http/tests/loading: Added.
  • platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials: Added.
  • platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt: Copied from LayoutTests/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt.
  • platform/wk2/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt: Copied from LayoutTests/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt.
  • platform/wk2/http/tests/loading/basic-credentials-sent-automatically-expected.txt: Copied from LayoutTests/http/tests/loading/basic-credentials-sent-automatically-expected.txt.
  • platform/wk2/http/tests/misc: Added.
  • platform/wk2/http/tests/misc/401-alternative-content-expected.txt: Copied from LayoutTests/http/tests/misc/401-alternative-content-expected.txt.
  • platform/wk2/http/tests/misc/authentication-redirect-1: Added.
  • platform/wk2/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt: Copied from LayoutTests/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt.
  • platform/wk2/http/tests/misc/authentication-redirect-2: Added.
  • platform/wk2/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt: Copied from LayoutTests/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt.
  • platform/wk2/http/tests/misc/authentication-redirect-4: Added.
  • platform/wk2/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt: Copied from LayoutTests/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt.
  • platform/wk2/http/tests/security: Added.
  • platform/wk2/http/tests/security/401-logout: Added.
  • platform/wk2/http/tests/security/401-logout/401-logout-expected.txt: Copied from LayoutTests/http/tests/security/401-logout/401-logout-expected.txt.
  • platform/wk2/http/tests/xmlhttprequest: Added.
  • platform/wk2/http/tests/xmlhttprequest/failed-auth-expected.txt: Copied from LayoutTests/http/tests/xmlhttprequest/failed-auth-expected.txt.
  • platform/wk2/http/tests/xmlhttprequest/remember-bad-password-expected.txt: Copied from LayoutTests/http/tests/xmlhttprequest/remember-bad-password-expected.txt.

WebKit2 results are the same as WebKit1, except that they lack resource URL. That
is expected with WebKit2 API.

12:35 AM Changeset in webkit [167006] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r166975.

Do not use WebPage removed API to fix the build. Page overlays are
no broken, see https://bugs.webkit.org/show_bug.cgi?id=131433.

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::display):

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::initialize):
(WebKit::LayerTreeHostGtk::paintContents):

12:32 AM April 2014 Meeting edited by abucur@adobe.com
(diff)
12:31 AM Changeset in webkit [167005] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r166965.

  • WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:

(WebKit::WebDragClient::startDrag): Rename Clipboard to DataTransfer.

12:22 AM Changeset in webkit [167004] by ryuan.choi@samsung.com
  • 3 edits in trunk/Tools

[EFL] Change font path for DumpRenderTree and WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=131427

Reviewed by Gyuyoung Kim.

Since r166973, font path was changed.

  • DumpRenderTree/PlatformEfl.cmake:
  • WebKitTestRunner/PlatformEfl.cmake:

Apr 8, 2014:

11:31 PM Changeset in webkit [167003] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

nil should only be used for objects
https://bugs.webkit.org/show_bug.cgi?id=131431

Patch by Conrad Shultz <Conrad Shultz> on 2014-04-08
Reviewed by Chris Fleizach.

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
nil -> NO.

  • platform/mac/WebVideoFullscreenController.mm:

(-[WebVideoFullscreenController setMediaElement:]):
nil -> 0; change a NULL to nullptr while we're here.

11:25 PM Changeset in webkit [167002] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

Fix EFL Build errors since r166975.
https://bugs.webkit.org/show_bug.cgi?id=131421

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-08
Reviewed by Gyuyoung Kim.

This patch is just for fixing EFL build errors.
The page overlay functionality is not working yet.

  • CMakeLists.txt:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:

(WebKit::CoordinatedDrawingArea::display):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::paintLayerContents):

  • WebProcess/WebPage/PageOverlayController.cpp:
  • WebProcess/WebPage/TapHighlightController.cpp:

(WebKit::TapHighlightController::hideHighlight):

11:18 PM Changeset in webkit [167001] by mihnea@adobe.com
  • 4 edits
    2 adds in trunk

[CSSRegions] Crash when video in region exits fullscreen
https://bugs.webkit.org/show_bug.cgi?id=131366

Reviewed by Andrei Bucur.

Source/WebCore:

After fix for https://bugs.webkit.org/show_bug.cgi?id=130392, we compute the region ranges
information for inline elements collected in named flows with associated region chains.
The algorithm for this computation, implemented in RenderFlowThread::getRegionRangeForBox,
walks up the render tree trying to find the top-most unsplittable box under the named flow
in the case where the region ranges information is not available.

As this traversal works properly only when the starting box is not detached from the render tree,
i changed the named flow information clearing in RenderBlock::collapseAnonymousBoxChild
to occur before the child to be collapsed is removed from the render tree.

Test: fast/regions/full-screen-video-in-region-crash.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::collapseAnonymousBoxChild):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::getRegionRangeForBox):

LayoutTests:

  • fast/regions/full-screen-video-in-region-crash-expected.txt: Added.
  • fast/regions/full-screen-video-in-region-crash.html: Added.
11:13 PM Changeset in webkit [167000] by ap@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Trying to unbreak flakiness dashboard after Gtk TextExpectations reshuffling.

  • platform/gtk-wk2/TestExpectations: Added.
10:25 PM Changeset in webkit [166999] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for iOS (redux).

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityARIAIsBusy]):
(-[WebAccessibilityObjectWrapper accessibilityARIALiveRegionIsAtomic]):

10:23 PM Changeset in webkit [166998] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for iOS.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityElementCount]):

10:01 PM Changeset in webkit [166997] by Antti Koivisto
  • 7 edits
    2 adds in trunk/Source/WebCore

Factor tile coverage map into a class
https://bugs.webkit.org/show_bug.cgi?id=131417

Reviewed by Tim Horton.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/ca/PlatformCALayerClient.h:

(WebCore::PlatformCALayerClient::platformCALayerLayoutSublayersOfLayer):
(WebCore::PlatformCALayerClient::platformCALayerRespondsToLayoutChanges):
(WebCore::PlatformCALayerClient::platformCALayerAnimationStarted):
(WebCore::PlatformCALayerClient::platformCALayerContentsOrientation):
(WebCore::PlatformCALayerClient::platformCALayerShowDebugBorders):
(WebCore::PlatformCALayerClient::platformCALayerShowRepaintCounter):
(WebCore::PlatformCALayerClient::platformCALayerIncrementRepaintCount):
(WebCore::PlatformCALayerClient::platformCALayerLayerDidDisplay):

Added default implementation to some of these to make clients less messy.

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

(WebCore::TileController::~TileController):
(WebCore::TileController::platformCALayerPaintContents):
(WebCore::TileController::setTiledScrollingIndicatorPosition):
(WebCore::TileController::updateTileCoverageMap):
(WebCore::TileController::tiledScrollingIndicatorLayer):

  • platform/graphics/ca/mac/TileCoverageMap.h: Added.

(WebCore::TileCoverageMap::setPosition):
(WebCore::TileCoverageMap::layer):

  • platform/graphics/ca/mac/TileCoverageMap.mm: Added.


The new class.

(WebCore::TileCoverageMap::TileCoverageMap):
(WebCore::TileCoverageMap::~TileCoverageMap):
(WebCore::TileCoverageMap::update):
(WebCore::TileCoverageMap::platformCALayerPaintContents):
(WebCore::TileCoverageMap::platformCALayerDeviceScaleFactor):

  • platform/graphics/ca/mac/TileGrid.h:
  • platform/graphics/ca/mac/TileGrid.mm:

(WebCore::TileGrid::drawTileMapContents):

9:43 PM April 2014 Meeting edited by Simon Fraser
(diff)
9:07 PM April 2014 Meeting edited by bfulgham@webkit.org
(diff)
8:52 PM Changeset in webkit [166996] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: Clip outer rounded border rect on device pixel boundaries.
https://bugs.webkit.org/show_bug.cgi?id=131404

Reviewed by Simon Fraser.

Use device pixel snapped rectangle to clip out rounded rects, when not all sides are solid/double.
Snapping it to device pixel boundaries ensures that when we call drawRect(devicePixelSnappedRect) later,
it leaves no cruft behind.

Source/WebCore:

Test: fast/borders/hidpi-rounded-border-on-subpixel-position.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintBorder):

LayoutTests:

  • fast/borders/hidpi-rounded-border-on-subpixel-position-expected.html: Added.
  • fast/borders/hidpi-rounded-border-on-subpixel-position.html: Added.
8:25 PM Changeset in webkit [166995] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

Build fix after r166479. 'bytes' is now abbreviated as 'B'.

  • public/js/helper-classes.js:

(PerfTestRuns.smallerIsBetter):

7:54 PM Changeset in webkit [166994] by rniwa@webkit.org
  • 3 edits in trunk/Websites/perf.webkit.org

Some CSS teaks.

  • public/common.css:

(#title):

  • public/index.html:

(#charts .pane):
(#charts .arrow):

7:27 PM April 2014 Meeting edited by rniwa@webkit.org
Add a hackathon idea (diff)
7:18 PM Changeset in webkit [166993] by jonlee@apple.com
  • 12 edits in trunk/Source

Turn MSE on by default
https://bugs.webkit.org/show_bug.cgi?id=131313
<rdar://problem/16525223>

Reviewed by Jer Noble.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • page/Settings.in: Add MEDIA_SOURCE conditional.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]): Set default to true.

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
  • Shared/WebPreferencesStore.h: Set default to true.
  • UIProcess/API/C/WKPreferencesRefPrivate.h:
7:16 PM April 2014 Meeting edited by rniwa@webkit.org
Add a hackathon idea (diff)
6:45 PM Changeset in webkit [166992] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Remove an unused parameter from loadResource.

Reviewed by Darin Adler.

Since the CachedResourceRequest has the charset in it, we don't need to pass it separately to loadRequest.

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::loadResource):

  • loader/cache/CachedResourceLoader.h:
6:25 PM Changeset in webkit [166991] by ryuan.choi@samsung.com
  • 5 edits in trunk/Source

Unreviewed EFL build fix attempt since r166956

Source/WebCore:

  • page/efl/DragControllerEfl.cpp: Rename Clipboard to DataTransfer.

(WebCore::DragController::declareAndWriteDragImage):

Source/WebKit/efl:

  • WebCoreSupport/DragClientEfl.cpp: Rename Clipboard to DataTransfer.

(WebCore::DragClientEfl::willPerformDragSourceAction):
(WebCore::DragClientEfl::startDrag): Ditto.

  • WebCoreSupport/DragClientEfl.h:
6:11 PM Changeset in webkit [166990] by Simon Fraser
  • 3 edits
    2 adds in trunk

Source/WebCore: REGRESSION (r155998): Elements render at very low resolution with some 3d transforms
https://bugs.webkit.org/show_bug.cgi?id=131412
<rdar://problem/16525044>

Reviewed by Tim Horton.

In r155998 we started to compute a root-relative transform in order to choose
a good contentsScale to avoid blurring on scaling.

However, the code failed to update this transform when passing over
GraphicsLayerCAs with no uncommitted changes, which caused us to choose
an incorrect contentsScale sometimes, resulting in blurriness.

Fix by updating the root-relative transform on layers with no uncommitted
changes.

Test: compositing/contents-scale/incremental-change.html

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):

LayoutTests: REGRESSION (r155998): Elements render at very low resolution with some 3d transforms
https://bugs.webkit.org/show_bug.cgi?id=131412

Reviewed by Tim Horton.

Test that makes an incremental change to a layer property in a tree with
interesting 3d transforms.

  • compositing/contents-scale/incremental-change-expected.html: Added.
  • compositing/contents-scale/incremental-change.html: Added.
6:11 PM Changeset in webkit [166989] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Don't call CGPathAddPath with invalid CGAffineTransform objects
https://bugs.webkit.org/show_bug.cgi?id=131413
<rdar://problem/16399645>

Reviewed by Darin Adler.

Covered by existing tests.

  • platform/graphics/cg/PathCG.cpp:

(WebCore::Path::addPath):
Don't try to add the path if the affine transform isn't invertible.

  • platform/graphics/transforms/AffineTransform.cpp:

(WebCore::AffineTransform::isInvertible):
Handle infinite and NaN determinants.

(WebCore::AffineTransform::inverse):
Handle infinite and NaN determinants.

5:47 PM Changeset in webkit [166988] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

2014-04-08 Geoffrey Garen <ggaren@apple.com>

Stop linking WTF against bmalloc.

Reviewed by Enrica Casucci.

This seems to have broken an iOS buildbot script. Disable it for now
until we can fix the script.

  • WTF.xcodeproj/project.pbxproj:
5:40 PM Changeset in webkit [166987] by ggaren@apple.com
  • 2 edits in trunk/Tools

Fix the build-jsc build
https://bugs.webkit.org/show_bug.cgi?id=131410

Reviewed by Michael Saboff.

  • Scripts/build-jsc: Make sure to build bmalloc before WTF, since

WTF depends on it.

5:38 PM Changeset in webkit [166986] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix the typo in the previous commit.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::close):

5:37 PM Changeset in webkit [166985] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r 166890): Crash inside WebKit::WebEditorClient::textFieldDidEndEditing
https://bugs.webkit.org/show_bug.cgi?id=131409

Reviewed by Anders Carlsson.

Create an empty API::InjectedBundle::FormClient to avoid crashing inside
m_mainFrame->coreFrame()->loader().detachFromParent().

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::close):

5:22 PM Changeset in webkit [166984] by Brian Burg
  • 3 edits
    1 add in trunk

Web Replay: memoize nondeterministic attributes of the Screen interface
https://bugs.webkit.org/show_bug.cgi?id=131339

Reviewed by Timothy Hatcher.

.:

  • ManualTests/inspector/replay-window-screen.html: Added.

Source/WebCore:

The values from the screen interface are nondeterministic. Since we can't
change the physical screen dimensions, instead memoize values of attributes.

Test: ManualTests/inspector/replay-window-screen.html

  • page/Screen.idl: Add Nondeterministic attribute.
5:13 PM Changeset in webkit [166983] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=131408
Scrollbars layers don't dynamically update when device scale factor changes
-and corresponding-
<rdar://problem/16503875>

Reviewed by Tim Horton.

The scrollbar layers are not children of the RenderView's layer, so they were
completely skipped over by this function before. We need to start this higher up
the tree in the rootGraphicsLayer(), which will typically return the
m_overflowControlsHostLayer.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::deviceOrPageScaleFactorChanged):

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

Web Inspector: Prevent deadlocks receiving WIRPermissionDenied message
https://bugs.webkit.org/show_bug.cgi?id=131406

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-08
Reviewed by Timothy Hatcher.

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

(Inspector::RemoteInspector::stop):
(Inspector::RemoteInspector::stopInternal):
(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
Provide a way to stop externally and a path to stop when in
the middle of handling a message already with the locked mutex.

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

(Inspector::RemoteInspectorXPCConnection::close):
(Inspector::RemoteInspectorXPCConnection::closeFromMessage):
Provide a way to close externally and a path to close when in
the middle of handling a message already with a mutex.

5:06 PM Changeset in webkit [166981] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

HTMLConverter::aggregatedAttributesForAncestors should cache intermediate results
https://bugs.webkit.org/show_bug.cgi?id=131400

Reviewed by Sam Weinig.

Instead of accumulating attributes from a character node to the highest ancestor,
recursively call aggregatedAttributesForElementAndItsAncestors so that aggregated
attributes are cached on each ancestor to eliminate the old O(n2) behavior.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::aggregatedAttributesForAncestors):
(HTMLConverter::aggregatedAttributesForElementAndItsAncestors): Extracted from aggregatedAttributesForAncestors.

4:53 PM Changeset in webkit [166980] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed CMake build fix after r166965.

  • UseJSC.cmake: Rename JSClipboardCustom.cpp to JSDataTransferCustom.cpp.
4:44 PM Changeset in webkit [166979] by mrobinson@webkit.org
  • 6 edits
    147 deletes in trunk

[GTK] Remove the WebKitGTK+ WebKit 1 code
https://bugs.webkit.org/show_bug.cgi?id=131399

Reviewed by Anders Carlsson.

.:

  • Source/PlatformGTK.cmake: Remove WebKit1 dependency from dist target.
  • Source/cmake/OptionsGTK.cmake: Remove option to compile with GTK+2 or with WebKit2 disabled.

Source/WebCore/platform/gtk/po:

  • POTFILES.in: Remove references to WebKit1 source files from the list of

files with translatable strings.

Source/WebKit:

  • PlatformGTK.cmake: Removed.
  • gtk: Remove this entire directory.
4:40 PM Changeset in webkit [166978] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Unify and factor out page overlay implementations
https://bugs.webkit.org/show_bug.cgi?id=131353

Reviewed by Anders Carlsson.

  • WebProcess/WebPage/PageOverlayController.cpp:

(WebKit::PageOverlayController::uninstallPageOverlay):
Don't turn fast scrolling back off unless the last overlay is removed.

4:36 PM Changeset in webkit [166977] by mrobinson@webkit.org
  • 3 edits
    36 deletes in trunk/Tools

[GTK] Remove WebKit1 unit tests
https://bugs.webkit.org/show_bug.cgi?id=131359

Reviewed by Anders Carlsson.

Remove all WebKit1 GTK+ unit tests, in preparation for removing the WebKit1 port
entirely. We also remove the list of skipped WebKi1 tests from run-gtk-tests, as
they were inadvertently left in http://trac.webkit.org/changeset/166504.

  • CMakeLists.txt: No longer load the WebKit1 unit test CMakeLists.txt file.
  • Scripts/run-gtk-tests: Remove skipped WebKit1 unit tests.
  • TestWebKitAPI/Tests/WebKitGtk/CMakeLists.txt: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/blank.ico: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/test.html: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/test.ogg: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/test.pdf: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/test.txt: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/test_utils.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/test_utils.h: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testapplicationcache.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testatk.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testatkroles.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testcontextmenu.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testcopyandpaste.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testdomdocument.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testdomdomwindow.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testdomnode.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testdownload.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testfavicondatabase.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testglobals.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testhittestresult.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testhttpbackend.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testkeyevents.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testloading.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testmimehandling.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testnetworkrequest.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testnetworkresponse.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebbackforwardlist.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebdatasource.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebframe.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebhistoryitem.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebinspector.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebplugindatabase.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebresource.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebsettings.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebview.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwindow.c: Removed.
4:19 PM Changeset in webkit [166976] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit2

Add a WKNavigationAction property indicating whether it resulted from processing a user gesture
https://bugs.webkit.org/show_bug.cgi?id=131405
<rdar://problem/16535453>

Reviewed by Tim Horton.

  • Shared/NavigationActionData.cpp:

(WebKit::NavigationActionData::NavigationActionData):
(WebKit::NavigationActionData::encode):
(WebKit::NavigationActionData::decode):

  • Shared/NavigationActionData.h:
  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/API/Cocoa/WKNavigationActionPrivate.h:
  • UIProcess/Cocoa/NavigationState.mm:

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

  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::UIClient::createNewPage):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createWindow):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):

4:09 PM Changeset in webkit [166975] by timothy_horton@apple.com
  • 19 edits
    2 adds in trunk/Source/WebKit2

Unify and factor out page overlay implementations
https://bugs.webkit.org/show_bug.cgi?id=131353

Reviewed by Anders Carlsson.

Bring all of the PageOverlay code together in a single cross-platform
PageOverlayController, including hit-testing code from WebPage and painting
and layer-tree manipulation code from the DrawingArea.

This also makes all PageOverlays a single GraphicsLayer tree which can be
flushed and plugged into any DrawingArea in a straightforward manner.
We no longer have to watch for individual layers flipping into/out of tiling,
because they're hidden underneath the root PageOverlay GraphicsLayer.
Additionally, because GraphicsLayer is cross-platform, we can share
all of the fairly trivial but oft-repeated overlay management code.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/PageOverlayController.cpp: Added.
  • WebProcess/WebPage/PageOverlayController.h: Added.

(WebKit::PageOverlayController::rootLayer):
Add PageOverlayController.

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

Remove PageOverlay-related code from the DrawingAreas.

  • WebProcess/WebPage/PageOverlay.cpp:

(WebKit::PageOverlay::setNeedsDisplay):
(WebKit::PageOverlay::fadeAnimationTimerFired):
(WebKit::PageOverlay::clear):

  • WebProcess/WebPage/PageOverlay.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::didChangeScrollOffset):

  • WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm:

(-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
(-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
Use PageOverlayController instead of the DrawingArea/WebPage to manipulate page overlays.

  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::pageOverlayController):
Remove PageOverlay-related code from WebPage.

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

(WebKit::RemoteLayerTreeContext::outOfTreeLayerWasAdded): Deleted.
(WebKit::RemoteLayerTreeContext::outOfTreeLayerWillBeRemoved): Deleted.
(WebKit::RemoteLayerTreeContext::flushOutOfTreeLayers): Deleted.
Remove the no-longer-necessary out-of-tree layer code.

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

(WKBundlePageInstallPageOverlayWithAnimation):
(WKBundlePageUninstallPageOverlayWithAnimation):

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::highlight):
(WebKit::WebInspectorClient::hideHighlight):

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::updateFindUIAfterPageScroll):
(WebKit::FindController::hideFindUI):

  • WebProcess/WebPage/TelephoneNumberOverlayController.cpp:

(WebKit::TelephoneNumberOverlayController::createOverlayIfNeeded):
(WebKit::TelephoneNumberOverlayController::destroyOverlay):
Make use of the FadeMode enum.

3:59 PM Changeset in webkit [166974] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed gardening (Take 2): Prevent users from attempting
to build with known invalid cURL.

  • Scripts/webkitdirs.pm:

(checkInstalledTools): Check for 7.34.0 (the broken version), not
7.33.0 (the known good version).

3:52 PM Changeset in webkit [166973] by mrobinson@webkit.org
  • 3 edits
    3 moves
    1 add
    22 deletes in trunk/Tools

[GTK] Remove DumpRenderTree and GtkLauncher
https://bugs.webkit.org/show_bug.cgi?id=131373

Reviewed by Andreas Kling.

Remove the GTK+ port of DumpRenderTree and GtkLauncher. These tools are
no longer necessary now that WebKit1 GTK+ will be removed.

  • CMakeLists.txt:
  • DumpRenderTree/PlatformGTK.cmake: Removed.
  • DumpRenderTree/gtk/AccessibilityControllerGtk.cpp: Removed.
  • DumpRenderTree/gtk/DumpRenderTree.cpp: Removed.
  • DumpRenderTree/gtk/DumpRenderTreeGtk.h: Removed.
  • DumpRenderTree/gtk/EditingCallbacks.cpp: Removed.
  • DumpRenderTree/gtk/EditingCallbacks.h: Removed.
  • DumpRenderTree/gtk/EventSender.cpp: Removed.
  • DumpRenderTree/gtk/EventSender.h: Removed.
  • DumpRenderTree/gtk/GCControllerGtk.cpp: Removed.
  • DumpRenderTree/gtk/PixelDumpSupportGtk.cpp: Removed.
  • DumpRenderTree/gtk/SelfScrollingWebKitWebView.cpp: Removed.
  • DumpRenderTree/gtk/SelfScrollingWebKitWebView.h: Removed.
  • DumpRenderTree/gtk/TestRunnerGtk.cpp: Removed.
  • DumpRenderTree/gtk/TextInputController.cpp: Removed.
  • DumpRenderTree/gtk/TextInputController.h: Removed.
  • DumpRenderTree/gtk/WorkQueueItemGtk.cpp: Removed.
  • GtkLauncher/CMakeLists.txt: Removed.
  • GtkLauncher/LauncherInspectorWindow.c: Removed.
  • GtkLauncher/LauncherInspectorWindow.h: Removed.
  • GtkLauncher/main.c: Removed.
  • GtkLauncher/simple.svg: Removed.
  • GtkLauncher/text.html: Removed.
  • WebKitTestRunner/PlatformGTK.cmake:
  • WebKitTestRunner/gtk/fonts/AHEM.TTF: Renamed from Tools/DumpRenderTree/gtk/fonts/AHEM.TTF.
  • WebKitTestRunner/gtk/fonts/FontWithNoValidEncoding.fon: Renamed from Tools/DumpRenderTree/gtk/fonts/FontWithNoValidEncoding.fon.
  • WebKitTestRunner/gtk/fonts/fonts.conf: Renamed from Tools/DumpRenderTree/gtk/fonts/fonts.conf.
3:51 PM Changeset in webkit [166972] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

WTF should link against bmalloc
https://bugs.webkit.org/show_bug.cgi?id=131403

Reviewed by Michael Saboff.

This is required to build successfullly with bmalloc enabled.

  • WTF.xcodeproj/project.pbxproj:
3:46 PM Changeset in webkit [166971] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

Web Inspector: Address stale FIXMEs concerning console in JSContext inspection
https://bugs.webkit.org/show_bug.cgi?id=131398

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-08
Reviewed by Timothy Hatcher.

  • inspector/InjectedScriptSource.js:

The console object can be deleted from a page or JSContext,
so keep code that expects that it could have been deleted
to be resilient in those cases.

  • inspector/JSGlobalObjectScriptDebugServer.h:
  • inspector/agents/JSGlobalObjectDebuggerAgent.h:
  • inspector/agents/JSGlobalObjectRuntimeAgent.h:

Change the FIXMEs to NOTEs that explain why these functions
have empty implementations for JSContext inspection.

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

Unreviewed iOS build fix.

Return false instead of nil in a function that returns BOOL.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityCanFuzzyHitTest]):

3:37 PM Changeset in webkit [166969] by andersca@apple.com
  • 12 edits in trunk/Source/WebKit2

Change WebPageProxy::CreateNewPage to take a NavigationActionData object
https://bugs.webkit.org/show_bug.cgi?id=131401

Reviewed by Dan Bernstein.

  • UIProcess/API/APIUIClient.h:

(API::UIClient::createNewPage):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient):

  • UIProcess/API/Cocoa/WKNavigationAction.mm:

(toWKNavigationType):

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

(WebKit::toWKNavigationType): Deleted.

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

(WebKit::UIDelegate::UIClient::createNewPage):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::createNewPage):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createWindow):

3:36 PM Changeset in webkit [166968] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Non-empty ranges misdetected as empty ranges, avoiding telephone number detection.
<rdar://problem/16553441> and https://bugs.webkit.org/show_bug.cgi?id=131397

Reviewed by Tim Horton.

No new tests (Only affects a currently untested Mac-only WK2 feature)

  • editing/Editor.cpp:

(WebCore::Editor::scanSelectionForTelephoneNumbers): Fix detection of empty ranges so we don’t

early return erroneously.

3:27 PM Changeset in webkit [166967] by cavalcantii@gmail.com
  • 3 edits
    2 adds in trunk

[SVG] Fix CSS transform handling when zoomed
https://bugs.webkit.org/show_bug.cgi?id=125836

Reviewed by Tim Horton.

Source/WebCore:

Tests: svg/zoom/page/zoom-css-transforms-expected.svg

svg/zoom/page/zoom-css-transforms.svg

Adjusts CSS transforms when used in SVG to account for unexpected
translation scale. Backport from Chromium #174910.

  • svg/SVGGraphicsElement.cpp:

(WebCore::SVGGraphicsElement::animatedLocalTransform):

LayoutTests:

Adjusts CSS transforms when used in SVG to account for unexpected
translation scale. Backport from Chromium #174910.

  • svg/zoom/page/zoom-css-transforms-expected.svg: Added.
  • svg/zoom/page/zoom-css-transforms.svg: Added.
3:26 PM Changeset in webkit [166966] by hmuller@adobe.com
  • 3 edits
    4 adds in trunk

[CSS Shapes] large corner radius combined with 0 radius does not wrap properly
https://bugs.webkit.org/show_bug.cgi?id=129739

Reviewed by Bem Jones-Bey.

Source/WebCore:

Corrected special case handling for shape-outside border-box values with border-radius
values that greater than or equal to the box's height.

Tests: fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-001.html

fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-002.html

  • rendering/shapes/BoxShape.cpp:

(WebCore::BoxShape::getExcludedIntervals):

LayoutTests:

  • fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-001-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-002.html: Added.
3:06 PM Changeset in webkit [166965] by ap@apple.com
  • 64 edits
    6 moves in trunk

Source/WebCore: Rename Clipboard to DataTransfer
https://bugs.webkit.org/show_bug.cgi?id=131371

Reviewed by Anders Carlsson.

This is the name used in HTML5, and it's much better than the confusing Clipboard one.

Renamed related enums too, and made DataTransferAccessPolicy an enum class.

  • CMakeLists.txt:
  • Configurations/WebCore.xcconfig:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSClipboardCustom.cpp: Removed.
  • bindings/js/JSDataTransferCustom.cpp: Copied from Source/WebCore/bindings/js/JSClipboardCustom.cpp.

(WebCore::JSDataTransfer::types):
(WebCore::JSClipboard::types): Deleted.

  • bindings/js/JSEventCustom.cpp:
  • dom/Clipboard.cpp: Removed.
  • dom/Clipboard.h: Removed.
  • dom/Clipboard.idl: Removed.
  • dom/ClipboardAccessPolicy.h: Removed.
  • dom/ClipboardEvent.cpp:

(WebCore::ClipboardEvent::ClipboardEvent):

  • dom/ClipboardEvent.h:

(WebCore::ClipboardEvent::create):
(WebCore::ClipboardEvent::clipboard): Deleted.

  • dom/ClipboardMac.mm: Removed.
  • dom/DOMAllInOne.cpp:
  • dom/DataTransfer.cpp: Copied from Source/WebCore/dom/Clipboard.cpp.

(WebCore::DataTransfer::DataTransfer):
(WebCore::DataTransfer::createForCopyAndPaste):
(WebCore::DataTransfer::~DataTransfer):
(WebCore::DataTransfer::setAccessPolicy):
(WebCore::DataTransfer::canReadTypes):
(WebCore::DataTransfer::canReadData):
(WebCore::DataTransfer::canWriteData):
(WebCore::DataTransfer::clearData):
(WebCore::DataTransfer::getData):
(WebCore::DataTransfer::setData):
(WebCore::DataTransfer::types):
(WebCore::DataTransfer::files):
(WebCore::DataTransfer::dropEffect):
(WebCore::DataTransfer::setDropEffect):
(WebCore::DataTransfer::effectAllowed):
(WebCore::DataTransfer::setEffectAllowed):
(WebCore::DataTransfer::setDragImage):
(WebCore::DataTransfer::createForDragAndDrop):
(WebCore::DataTransfer::canSetDragImage):
(WebCore::DataTransfer::updateDragImage):
(WebCore::DataTransfer::createDragImage):
(WebCore::DragImageLoader::DragImageLoader):
(WebCore::DragImageLoader::imageChanged):
(WebCore::DataTransfer::sourceOperation):
(WebCore::DataTransfer::destinationOperation):
(WebCore::DataTransfer::setSourceOperation):
(WebCore::DataTransfer::setDestinationOperation):
(WebCore::Clipboard::Clipboard): Deleted.
(WebCore::Clipboard::createForCopyAndPaste): Deleted.
(WebCore::Clipboard::~Clipboard): Deleted.
(WebCore::Clipboard::setAccessPolicy): Deleted.
(WebCore::Clipboard::canReadTypes): Deleted.
(WebCore::Clipboard::canReadData): Deleted.
(WebCore::Clipboard::canWriteData): Deleted.
(WebCore::Clipboard::clearData): Deleted.
(WebCore::Clipboard::getData): Deleted.
(WebCore::Clipboard::setData): Deleted.
(WebCore::Clipboard::types): Deleted.
(WebCore::Clipboard::files): Deleted.
(WebCore::Clipboard::dropEffect): Deleted.
(WebCore::Clipboard::setDropEffect): Deleted.
(WebCore::Clipboard::effectAllowed): Deleted.
(WebCore::Clipboard::setEffectAllowed): Deleted.
(WebCore::Clipboard::setDragImage): Deleted.
(WebCore::Clipboard::createForDragAndDrop): Deleted.
(WebCore::Clipboard::canSetDragImage): Deleted.
(WebCore::Clipboard::updateDragImage): Deleted.
(WebCore::Clipboard::createDragImage): Deleted.
(WebCore::Clipboard::sourceOperation): Deleted.
(WebCore::Clipboard::destinationOperation): Deleted.
(WebCore::Clipboard::setSourceOperation): Deleted.
(WebCore::Clipboard::setDestinationOperation): Deleted.

  • dom/DataTransfer.h: Copied from Source/WebCore/dom/Clipboard.h.
  • dom/DataTransfer.idl: Copied from Source/WebCore/dom/Clipboard.idl.
  • dom/DataTransferAccessPolicy.h: Copied from Source/WebCore/dom/ClipboardAccessPolicy.h.
  • dom/DataTransferItemList.h:
  • dom/DataTransferMac.mm: Copied from Source/WebCore/dom/ClipboardMac.mm.

(WebCore::DataTransfer::createDragImage):
(WebCore::Clipboard::createDragImage): Deleted.

  • dom/Event.h:

(WebCore::Event::clipboardData):
(WebCore::Event::internalDataTransfer):
(WebCore::Event::clipboard): Deleted.

  • dom/Event.idl:
  • dom/MouseEvent.cpp:

(WebCore::MouseEvent::create):
(WebCore::MouseEvent::MouseEvent):
(WebCore::MouseEvent::initMouseEvent):

  • dom/MouseEvent.h:

(WebCore::MouseEvent::dataTransfer):

  • dom/MouseEvent.idl:
  • dom/WheelEvent.cpp:
  • editing/Editor.cpp:

(WebCore::Editor::canDHTMLCut):
(WebCore::Editor::canDHTMLCopy):
(WebCore::Editor::canDHTMLPaste):
(WebCore::Editor::tryDHTMLCopy):
(WebCore::Editor::tryDHTMLCut):
(WebCore::Editor::tryDHTMLPaste):
(WebCore::Editor::dispatchCPPEvent):
(WebCore::Editor::performCutOrCopy):
(WebCore::Editor::selectedTextForDataTransfer):
(WebCore::Editor::selectedTextForClipboard): Deleted.

  • editing/Editor.h:
  • editing/ios/EditorIOS.mm:

(WebCore::Editor::stringSelectionForPasteboardWithImageAltText):

  • editing/mac/EditorMac.mm:

(WebCore::Editor::takeFindStringFromSelection):
(WebCore::Editor::stringSelectionForPasteboardWithImageAltText):

  • loader/EmptyClients.h:
  • page/DragClient.h:
  • page/DragController.cpp:

(WebCore::DragController::dragExited):
(WebCore::DragController::performDrag):
(WebCore::DragController::tryDHTMLDrag):
(WebCore::DragController::startDrag):
(WebCore::DragController::doImageDrag):
(WebCore::DragController::doSystemDrag):

  • page/DragController.h:
  • page/DragState.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::dispatchDragEvent):
(WebCore::hasFileOfType):
(WebCore::hasStringOfType):
(WebCore::hasDropZoneType):
(WebCore::findDropZone):
(WebCore::EventHandler::updateDragAndDrop):
(WebCore::EventHandler::cancelDragAndDrop):
(WebCore::EventHandler::performDragAndDrop):
(WebCore::EventHandler::freeDataTransfer):
(WebCore::EventHandler::dragSourceEndedAt):
(WebCore::EventHandler::dispatchDragSrcEvent):
(WebCore::EventHandler::handleDrag):
(WebCore::EventHandler::freeClipboard): Deleted.

  • page/EventHandler.h:
  • page/efl/EventHandlerEfl.cpp:

(WebCore::EventHandler::createDraggingDataTransfer):
(WebCore::EventHandler::createDraggingClipboard): Deleted.

  • page/gtk/DragControllerGtk.cpp:

(WebCore::DragController::declareAndWriteDragImage):

  • page/gtk/EventHandlerGtk.cpp:

(WebCore::EventHandler::createDraggingDataTransfer):
(WebCore::EventHandler::createDraggingClipboard): Deleted.

  • page/mac/DragControllerMac.mm:

(WebCore::DragController::declareAndWriteDragImage):

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::createDraggingDataTransfer):
(WebCore::EventHandler::createDraggingClipboard): Deleted.

  • page/win/DragControllerWin.cpp:

(WebCore::DragController::declareAndWriteDragImage):

  • page/win/EventHandlerWin.cpp:

(WebCore::EventHandler::createDraggingataTransfer):
(WebCore::EventHandler::createDraggingClipboard): Deleted.

  • platform/Pasteboard.h:
  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::writeSelection):

  • platform/mac/PasteboardMac.mm:
  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::writeRangeToDataObject):
(WebCore::Pasteboard::writeSelection):

Source/WebKit/ios: Rename Clipboard to DataTransfer
https://bugs.webkit.org/show_bug.cgi?id=131371

Reviewed by Anders Carlsson.

  • WebView/WebPDFViewPlaceholder.mm:

Source/WebKit/mac: Rename Clipboard to DataTransfer
https://bugs.webkit.org/show_bug.cgi?id=131371

Reviewed by Anders Carlsson.

  • WebCoreSupport/WebDragClient.h:
  • WebCoreSupport/WebDragClient.mm:

(WebDragClient::willPerformDragSourceAction):
(WebDragClient::startDrag):

  • WebView/WebPDFView.mm:

Source/WebKit2: Fix build.

Patch by Anders Carlsson <andersca@apple.com> on 2014-04-08

  • WebKit2Prefix.h:

LayoutTests: Rename Clipboard to DataTransfer
https://bugs.webkit.org/show_bug.cgi?id=131371

Reviewed by Anders Carlsson.

  • fast/dom/dom-constructors-expected.txt:
  • fast/dom/dom-constructors.html:
  • js/dom/global-constructors-attributes-expected.txt:
  • platform/efl/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk-wk1/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk-wk2/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
  • platform/win/js/dom/global-constructors-attributes-expected.txt:
2:41 PM Changeset in webkit [166964] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix. Pass 0 instead of nil to the options parameter of addObserver:forKeyPath:options:context.

  • platform/graphics/ios/TextTrackRepresentationIOS.mm:

(-[WebCoreTextTrackRepresentationIOSHelper setParent:]):

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

Fix build.

  • WebKit2Prefix.h:
2:29 PM Changeset in webkit [166962] by Brent Fulgham
  • 5 edits
    1 move
    2 adds
    1 delete in trunk/Source/WebInspectorUI

[Windows] Generate Optimized WebInspectorUI in Release Build
https://bugs.webkit.org/show_bug.cgi?id=120120

Reviewed by Timothy Hatcher.

  • Scripts/copy-user-interface-resources.pl: Copied from Scripts/copy-user-interface-resources.sh.
  • Scripts/copy-user-interface-resources.sh: Removed.
  • Scripts/remove-console-asserts.pl:
  • WebInspectorUI.vcxproj/WebInspectorUI.make: Added.
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj: Switch to Makefile style.
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters: Ditto.
  • WebInspectorUI.vcxproj/WebInspectorUIPostBuild.cmd: More work should

be done in the new build-webinspectorui.sh file.

  • WebInspectorUI.vcxproj/build-webinspectorui.sh: Added.
  • WebInspectorUI.xcodeproj/project.pbxproj:
2:22 PM Changeset in webkit [166961] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Use an explicit class when decoding individual bundle parameters
https://bugs.webkit.org/show_bug.cgi?id=131392
<rdar://problem/16213914>

Reviewed by Dan Bernstein.

  • WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:

(WebKit::InjectedBundle::setBundleParameter):

2:18 PM Changeset in webkit [166960] by Brent Fulgham
  • 13 edits in trunk/LayoutTests

[Mac] Unreviewed test gardening.

Rebaseline scrolling tests to remove flakiness introduced by slight differences in
pixel scroll counts between WK1 and WK2 test runners.

  • platform/mac/fast/scrolling/scroll-div-latched-div-expected.txt:
  • platform/mac/fast/scrolling/scroll-div-latched-div.html:
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe.html:
  • platform/mac/fast/scrolling/scroll-iframe-latched-iframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-iframe-latched-iframe.html:
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe.html:
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe.html:
  • platform/mac/fast/scrolling/scroll-select-latched-select-expected.txt:
  • platform/mac/fast/scrolling/scroll-select-latched-select.html:
2:11 PM Changeset in webkit [166959] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Move a Mountain Lion declaration to the WebKit2 prefix header
https://bugs.webkit.org/show_bug.cgi?id=131391

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKProcessPool.mm:
  • UIProcess/ios/PageClientImplIOS.mm:
  • UIProcess/mac/WebContextMac.mm:
  • WebKit2Prefix.h:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
  • WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
1:50 PM Changeset in webkit [166958] by Antti Koivisto
  • 12 edits in trunk/Source

Remove exposedRect from TileController
https://bugs.webkit.org/show_bug.cgi?id=131378

Reviewed by Simon Fraser.

Source/WebCore:

Having two separate visible rectangles is confusing. We should compute one on higher level.

  • page/FrameView.cpp:

(WebCore::FrameView::setExposedRect):

Push exposed rect to tile controller by doing a layer flush (like the changed visible rect is normally passed).

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


Remove exposedRect and just use visibleRect.

(WebCore::TileController::TileController):
(WebCore::TileController::setTiledScrollingIndicatorPosition):

Update the scrolling indicator position.

(WebCore::TileController::updateTileCoverageMap):
(WebCore::TileController::setExposedRect): Deleted.

  • platform/graphics/ca/mac/TileGrid.h:
  • platform/graphics/ca/mac/TileGrid.mm:

(WebCore::TileGrid::tilesWouldChangeForVisibleRect):
(WebCore::TileGrid::revalidateTiles):
(WebCore::TileGrid::scaledExposedRect): Deleted.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking):

No need to push exposedRect anymore.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::flushPendingLayerChanges):

Integrate exposed rect to visible rect when flushing layers.

Source/WebKit2:

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):

Update the visible rect for pageOverlayLayers by calling flushCompositingState. This way
tile controller visible rect updates always happens via compositing flush (we assert
for this in TileController::setVisibleRect).

1:36 PM Changeset in webkit [166957] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

Added a bmalloc back-end for FastMalloc
https://bugs.webkit.org/show_bug.cgi?id=131387

Reviewed by Andreas Kling.

We'll need to rethink some things if we adopt this back-end. For example,
fastMallocSize() and fastMallocGoodSize() are no longer real things. But,
this is enough to test for now.

  • wtf/FastMalloc.cpp:

(WTF::fastMalloc):
(WTF::fastCalloc):
(WTF::fastRealloc):
(WTF::fastFree):
(WTF::fastMallocSize):
(WTF::fastMallocGoodSize):
(WTF::tryFastMalloc):
(WTF::tryFastRealloc):
(WTF::tryFastCalloc):
(WTF::releaseFastMallocFreeMemory):
(WTF::fastMallocStatistics):

1:36 PM Changeset in webkit [166956] by ggaren@apple.com
  • 24 edits in trunk/Source/bmalloc

Made bmalloc more #include friendly
https://bugs.webkit.org/show_bug.cgi?id=131386

Reviewed by Andreas Kling.

Marked a bunch of headers private so they can be used from client code
that #includes bmalloc.h.

Renamed ASSERT macros to BASSERT. This matches their header, which already
had to be renamed, and fixes conflicts with WTF's ASSERT macros.

  • bmalloc.xcodeproj/project.pbxproj:
  • bmalloc/Allocator.cpp:

(bmalloc::Allocator::allocateSlowCase):

  • bmalloc/AsyncTask.h:

(bmalloc::Function>::runSlowCase):

  • bmalloc/BAssert.h:
  • bmalloc/BoundaryTag.h:

(bmalloc::BoundaryTag::setSize):

  • bmalloc/BoundaryTagInlines.h:

(bmalloc::validate):
(bmalloc::BoundaryTag::init):
(bmalloc::BoundaryTag::deallocate):
(bmalloc::BoundaryTag::splitLarge):
(bmalloc::BoundaryTag::allocate):

  • bmalloc/Chunk.h:
  • bmalloc/Deallocator.cpp:

(bmalloc::Deallocator::processObjectLog):
(bmalloc::Deallocator::deallocateSlowCase):

  • bmalloc/Deallocator.h:

(bmalloc::Deallocator::deallocateFastCase):

  • bmalloc/FixedVector.h:

(bmalloc::Capacity>::operator):
(bmalloc::Capacity>::push):
(bmalloc::Capacity>::pop):
(bmalloc::Capacity>::shrink):

  • bmalloc/Heap.cpp:

(bmalloc::Heap::allocateLarge):

  • bmalloc/LargeChunk.h:

(bmalloc::LargeChunk::get):
(bmalloc::LargeChunk::endTag):

  • bmalloc/Line.h:

(bmalloc::Line<Traits>::concurrentRef):
(bmalloc::Line<Traits>::deref):

  • bmalloc/MediumAllocator.h:

(bmalloc::MediumAllocator::allocate):

  • bmalloc/ObjectType.h:

(bmalloc::isSmall):

  • bmalloc/Page.h:

(bmalloc::Page<Traits>::ref):
(bmalloc::Page<Traits>::deref):

  • bmalloc/PerThread.h:

(bmalloc::PerThread<T>::getSlowCase):

  • bmalloc/SegregatedFreeList.cpp:

(bmalloc::SegregatedFreeList::SegregatedFreeList):
(bmalloc::SegregatedFreeList::insert):

  • bmalloc/SmallAllocator.h:

(bmalloc::SmallAllocator::allocate):
(bmalloc::SmallAllocator::refill):

  • bmalloc/Syscall.h:
  • bmalloc/VMAllocate.h:

(bmalloc::vmValidate):
(bmalloc::vmAllocate):
(bmalloc::vmDeallocatePhysicalPagesSloppy):

  • bmalloc/Vector.h:

(bmalloc::Vector<T>::operator):
(bmalloc::Vector<T>::pop):
(bmalloc::Vector<T>::shrink):

  • bmalloc/XLargeChunk.h:

(bmalloc::XLargeChunk::range):
(bmalloc::XLargeChunk::size):

1:32 PM Changeset in webkit [166955] by timothy@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Fix corrupt APPLE_IMAGES_LICENSE.rtf after r165676.
https://bugs.webkit.org/show_bug.cgi?id=131384

Reviewed by Joseph Pecoraro.

  • APPLE_IMAGES_LICENSE.rtf:
1:32 PM Changeset in webkit [166954] by mrowe@apple.com
  • 2 edits in trunk/Tools

XPC services launched by Safari have wrong DYLD_FRAMEWORK_PATH set when launched via run-safari / debug-safari
<https://webkit.org/b/131388> / <rdar://problem/16291687>

Reviewed by Alexey Proskuryakov.

  • Scripts/webkitdirs.pm:

(runMacWebKitApp): Set XPC_DYLD_FRAMEWORK_PATH to the absolute path to the built products directory.
(execMacWebKitAppForDebugging): Ditto.

1:26 PM Changeset in webkit [166953] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Always do a full GC when simulating memory pressure.
<https://webkit.org/b/129790>

To get more consistent accounting on automated memory testers,
add a synchronous GC as part of the simulated memory pressure event.

Reviewed by Geoffrey Garen.

  • platform/mac/MemoryPressureHandlerMac.mm:

(WebCore::MemoryPressureHandler::install):

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

Unreviewed, fix a goofy assertion to fix debug.

  • bytecode/PolymorphicPutByIdList.h:

(JSC::PutByIdAccess::isSetter):
(JSC::PutByIdAccess::oldStructure):
(JSC::PutByIdAccess::chain):
(JSC::PutByIdAccess::stubRoutine):
(JSC::PutByIdAccess::customSetter):

1:24 PM Changeset in webkit [166951] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix. Pass 0 instead of nil to setRate: when pausing.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::platformPause):

1:05 PM Changeset in webkit [166950] by mitz@apple.com
  • 4 edits in trunk

Added bmalloc to the WebKit workspace.
https://bugs.webkit.org/show_bug.cgi?id=131362

Reviewed by Geoff Garen.

  • WebKit.xcworkspace/contents.xcworkspacedata:
  • WebKit.xcworkspace/xcshareddata/xcschemes/All Source (target WebProcess).xcscheme:
  • WebKit.xcworkspace/xcshareddata/xcschemes/All Source.xcscheme:
1:04 PM Changeset in webkit [166949] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

Update text expectations for failing tests:

accessibility/children-changed-sends-notification.html
accessibility/notification-listeners.html
fast/repaint/blend-mode-isolate-stacking-context.html
fast/repaint/hidpi-absolute-positioned-element-wrong-cliprect-after-move.html

Rebaseline fast/multicol/client-rects-expected.txt after r165991

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-04-08

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/multicol/client-rects-expected.txt:
1:03 PM Changeset in webkit [166948] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Fail silently if the LLVM dylib isn't found
https://bugs.webkit.org/show_bug.cgi?id=131385

Reviewed by Mark Hahnenberg.

  • dfg/DFGPlan.cpp:

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

  • llvm/InitializeLLVM.cpp:

(JSC::initializeLLVM):

  • llvm/InitializeLLVM.h:
  • llvm/InitializeLLVMPOSIX.cpp:

(JSC::initializeLLVMPOSIX):

12:56 PM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
12:52 PM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
12:48 PM Changeset in webkit [166947] by ggaren@apple.com
  • 4 edits in trunk

Build bmalloc on iOS too
https://bugs.webkit.org/show_bug.cgi?id=131381

Reviewed by Andreas Kling.

.:

  • Source/Makefile: Build it.

Tools:

  • Scripts/build-webkit:
12:42 PM Changeset in webkit [166946] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

FlagsChanged events are not delivered to input methods when using async text input
https://bugs.webkit.org/show_bug.cgi?id=131383

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm: (-[WKView _interpretKeyEvent:completionHandler:]):

The early return is no longer needed.

12:39 PM Changeset in webkit [166945] by fpizlo@apple.com
  • 9 edits
    4 adds in trunk

Repatch should support setters and plant calls to them directly
https://bugs.webkit.org/show_bug.cgi?id=130750

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

All of the infrastructure was in place so this just enables setter optimization.

This is a 12x speed-up on setter microbenchmarks. This is a 1% speed-up on Octane.

  • bytecode/PolymorphicPutByIdList.cpp:

(JSC::PutByIdAccess::visitWeak):

  • bytecode/PolymorphicPutByIdList.h:

(JSC::PutByIdAccess::setter):
(JSC::PutByIdAccess::customSetter): Deleted.

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeForStubInfo):

  • jit/Repatch.cpp:

(JSC::toString):
(JSC::kindFor):
(JSC::customFor):
(JSC::generateByIdStub):
(JSC::tryCachePutByID):
(JSC::tryBuildPutByIdList):

  • runtime/JSObject.cpp:

(JSC::JSObject::put):

  • runtime/Lookup.h:

(JSC::putEntry):

  • runtime/PutPropertySlot.h:

(JSC::PutPropertySlot::setCacheableSetter):
(JSC::PutPropertySlot::isCacheableSetter):
(JSC::PutPropertySlot::isCacheableCustom):
(JSC::PutPropertySlot::setCacheableCustomProperty): Deleted.
(JSC::PutPropertySlot::isCacheableCustomProperty): Deleted.

  • tests/stress/setter.js: Added.

(foo):

LayoutTests:

Reviewed by Geoffrey Garen.

  • js/regress/script-tests/setter.js: Added.
  • js/regress/setter-expected.txt: Added.
  • js/regress/setter.html: Added.
12:26 PM Changeset in webkit [166944] by ggaren@apple.com
  • 1 edit
    1 delete in trunk/Source/bmalloc

2014-04-08 Geoffrey Garen <ggaren@apple.com>

Removed an unused file.

Unreviewed.

  • bmalloc/AsyncTask.cpp: Removed.
12:12 PM Changeset in webkit [166943] by mark.lam@apple.com
  • 3 edits in trunk/Source/WebCore

Refactor to make JSMainThreadExecState's constructor and destructor private.
<https://webkit.org/b/131372>

Reviewed by Mark Hahnenberg.

This is in preparation for subsequent patches to ensure that we don't
exit the VM with an exception still pending.

No new tests required. This is only a refactor of existing behavior.

  • bindings/js/JSDOMGlobalObjectTask.cpp:
  • bindings/js/JSMainThreadExecState.h:

(WebCore::JSMainThreadExecState::runTask):

12:07 PM Changeset in webkit [166942] by timothy@apple.com
  • 3 edits in trunk/Source/WebInspectorUI

Clean up old protocol JSON files to better match the latest
https://bugs.webkit.org/show_bug.cgi?id=131308

Reviewed by Joseph Pecoraro.

  • Versions/Inspector-iOS-6.0.json:
  • Versions/Inspector-iOS-7.0.json:
12:00 PM Changeset in webkit [166941] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

WebKit2 View Gestures (Swipe): Swipe-start hysteresis
https://bugs.webkit.org/show_bug.cgi?id=127393
<rdar://problem/15876822>

Reviewed by Anders Carlsson.

We shouldn't start a swipe immediately upon very small scrolls in the correct direction,
because we don't want to get the user trapped in a swipe when they want to scroll.

We'll accumulate the scroll deltas and wait until the user has scrolled at least 15px horizontally.
In addition, we'll drop the swipe completely if any event has a vertical delta equal to half (or more)
of the horizontal delta.

  • UIProcess/mac/ViewGestureController.h:
  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::deltaIsSufficientToBeginSwipe):
(WebKit::ViewGestureController::handleScrollWheelEvent):
(WebKit::ViewGestureController::wheelEventWasNotHandledByWebCore):

11:26 AM Changeset in webkit [166940] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac][WK2] Videos do not have access to session cookies
https://bugs.webkit.org/show_bug.cgi?id=129687

Reviewed by Eric Carlson.

Update the CookieStorageShim to track changes in underlying networking stack.

  • Shared/mac/CookieStorageShim.mm:

(WebKit::CookieStorageShim::initialize):
(-[WKNSURLSessionLocal _getCookieHeadersForTask:completionHandler:]):

11:22 AM Changeset in webkit [166939] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

[WK2][iOS] Consecutive videos in full screen display only black
https://bugs.webkit.org/show_bug.cgi?id=131316

Reviewed by Eric Carlson.

Update the MediaPlayer's full screen attributes whenever the underlying engine changes,
not just when the engine is initially created. Also, clear the videoLayer out of the
fullscreen layer when destroying the videoLayer.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::destroyVideoLayer):

11:19 AM Changeset in webkit [166938] by commit-queue@webkit.org
  • 7 edits
    6 adds in trunk

[New Multicolumn] Child top margin sometimes ignored for column balancing
https://bugs.webkit.org/show_bug.cgi?id=122754

Patch by Morten Stenshorne <mstensho@opera.com> on 2014-04-08
Reviewed by David Hyatt.

Source/WebCore:

We need to set zero page logical height in LayoutState when column
height is unknown (when the columns haven't yet been
balanced). There's code that assumes that non-zero page height means
that page height is known. Lying about this makes the pagination code
believe that every top margin is adjacent to a column break, which
makes it eat and ignore all top margins.

This should be cleaned up, but it's easier to wait until the old
multicol code has been removed.

Tests: fast/multicol/break-in-scrollable.html

fast/multicol/newmulticol/leading-and-trailing-margin.html
fast/multicol/newmulticol/leading-margin.html

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::checkForPaginationLogicalHeightChange):

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

(WebCore::RenderMultiColumnFlowThread::isPageLogicalHeightKnown):

  • rendering/RenderMultiColumnFlowThread.h:

LayoutTests:

  • fast/multicol/break-in-scrollable-expected.html: Added.
  • fast/multicol/break-in-scrollable.html: Added.
  • fast/multicol/newmulticol/leading-and-trailing-margin-expected.html: Added.
  • fast/multicol/newmulticol/leading-and-trailing-margin.html: Added.
  • fast/multicol/newmulticol/leading-margin-expected.html: Added.
  • fast/multicol/newmulticol/leading-margin.html: Added.
11:06 AM Changeset in webkit [166937] by dino@apple.com
  • 6 edits in trunk/Source/WebCore

Allow elements to register for changes in page scale
https://bugs.webkit.org/show_bug.cgi?id=131319

Reviewed by Eric Carlson.

Some parts of WebCore need to react to changes in the page
scale factor, such as resizing when the user zooms. A followup
patch will enable this for media controls - this simply lays
the groundwork.

At the moment we only allow HTMLMediaElements to register, but if
necessary this could be expanded in the future.

  • dom/Document.cpp: New methods to keep a list of HTMLMediaElements that

are interested in updates.
(WebCore::Document::registerForPageScaleFactorChangedCallbacks):
(WebCore::Document::unregisterForPageScaleFactorChangedCallbacks):
(WebCore::Document::pageScaleFactorChanged):

  • dom/Document.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::registerWithDocument): Add ourselves to the
the document's pageScale callback.
(WebCore::HTMLMediaElement::unregisterWithDocument): Remove ourselves from the
the document's pageScale callback.
(WebCore::HTMLMediaElement::setMediaControlsDependOnPageScaleFactor): Add/remove ourselves to/from
the callback if necessary.
(WebCore::HTMLMediaElement::pageScaleFactorChanged): The callback function. Empty for now.

  • html/HTMLMediaElement.h:

(WebCore::HTMLMediaElement::mediaControlsDependOnPageScaleFactor): Accessor.

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor): Tell all documents that the user has zoomed.

11:04 AM Changeset in webkit [166936] by mitz@apple.com
  • 5 edits in trunk/Source/WebKit2

[Cocoa] Add a way to tell whether a WKWebProcessPlugInNodeHandle is a text-type HTML input element
https://bugs.webkit.org/show_bug.cgi?id=131374

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.h:
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:

(-[WKWebProcessPlugInNodeHandle isTextField]): Added this getter. Calls
InjectedBundleNodeHandle::isTextField.

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::InjectedBundleNodeHandle::isTextField): Added. Uses
WebCore::HTMLInputElement::isText, which is consistent with what
WebChromeClient::focusedElementChanged uses to decide whether to call didFocusTextField.

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
10:45 AM Changeset in webkit [166935] by mitz@apple.com
  • 5 edits in trunk/Source/WebKit2

[Cocoa] Add a _certificateChain property to WKWebProcessPlugInFrame
https://bugs.webkit.org/show_bug.cgi?id=131370

Reviewed by Anders Carlsson.

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

(-[WKWebProcessPlugInFrame _certificateChain]): Added this getter, which uses the new
WebFrame::certificateInfo.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h:
  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::certificateInfo): Added this getter.

  • WebProcess/WebPage/WebFrame.h:
10:36 AM Changeset in webkit [166934] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Add a bundle form delegate method corresponding to textDidChangeInTextField
https://bugs.webkit.org/show_bug.cgi?id=131369

Reviewed by Anders Carlsson.

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

new delegate method.

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

(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Added an override
of API::InjectedBundle::FormClient::textDidChangeInTextField which calls the new delegate
method.

10:17 AM Changeset in webkit [166933] by mitz@apple.com
  • 11 edits
    2 adds in trunk/Source

../WebKit/mac: WebKit part of [Cocoa] Add WKFormDelegate
https://bugs.webkit.org/show_bug.cgi?id=131343

Reviewed by Anders Carlsson.

  • MigrateHeaders.make: Added new WebKit2 headers to WEBKIT2_HEADERS.

../WebKit2: [Cocoa] Add WKFormDelegate
https://bugs.webkit.org/show_bug.cgi?id=131343

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _formDelegate]): Added this accessor.
(-[WKWebView _setFormDelegate:]): Ditto.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h: Declared _formDelegate property.
  • UIProcess/API/Cocoa/_WKFormDelegate.h: Added.
  • UIProcess/API/Cocoa/_WKFormInputSession.h: Added.
  • UIProcess/ios/WKContentView.h: Moved _webView ivar into the @interface…
  • UIProcess/ios/WKContentView.mm: …from the @implementation.
  • UIProcess/ios/WKContentViewInteraction.h: Added _formInputSession ivar and

formAccessoryView property.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKFormInputSession initWithContentView:userObject:]): Added.
(-[WKFormInputSession dealloc]): Added.
(-[WKFormInputSession userObject]): Added.
(-[WKFormInputSession isValid]): Added.
(-[WKFormInputSession accessoryViewCustomButtonTitle]): Added.
(-[WKFormInputSession setAccessoryViewCustomButtonTitle:]): Added.
(-[WKFormInputSession invalidate]): Added.
(-[WKContentView cleanupInteraction]): Invalidate and release the input session.
(-[WKContentView formAccessoryView]): Added this accessor.
(-[WKContentView _startAssistingNode:userObject:]): Create an input session and message the
form delegate.
(-[WKContentView _stopAssistingNode]): Invalidate and release the input session.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files.
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h: Added

comment.

9:47 AM Changeset in webkit [166932] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed gardening: Prevent users from attempting
to build with known invalid cURL.

  • Scripts/webkitdirs.pm:

(checkInstalledTools): Block build attempts with bad
Cygwin tool set.

9:40 AM Changeset in webkit [166931] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Compile error in TextureMapper.h
https://bugs.webkit.org/show_bug.cgi?id=131360

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-04-08
Reviewed by Brent Fulgham.

The TextureMapper class has pure virtual methods, and cannot be instantiated.

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::TextureMapper::platformCreateAccelerated):

9:26 AM Changeset in webkit [166930] by Brent Fulgham
  • 3 edits
    97 moves
    12 adds in trunk/LayoutTests

[WebVTT] Begin Enabling W3C VTT Tests
https://bugs.webkit.org/show_bug.cgi?id=131345

Reviewed by Darin Adler.

Move a number of tests out of 'opera' into a new 'w3c' folder.

  • media/track/opera/interfaces/HTMLElement/HTMLMediaElement/addTextTrack-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLMediaElement/textTracks-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLMediaElement/textTracks.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/default-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/default.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/label-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/label.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/readyState-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/readyState.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/srclang.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/track-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/track.html: Removed.
  • media/track/opera/interfaces/TextTrack/addCue-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/addCue.html: Removed.
  • media/track/opera/interfaces/TextTrack/constants-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/constants.html: Removed.
  • media/track/opera/interfaces/TextTrack/cues-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/cues.html: Removed.
  • media/track/opera/interfaces/TextTrack/kind-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/kind.html: Removed.
  • media/track/opera/interfaces/TextTrack/label-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/label.html: Removed.
  • media/track/opera/interfaces/TextTrack/language-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/language.html: Removed.
  • media/track/opera/interfaces/TextTrack/mode-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/mode.html: Removed.
  • media/track/opera/interfaces/TextTrack/oncuechange-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/oncuechange.html: Removed.
  • media/track/opera/interfaces/TextTrack/removeCue-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/removeCue.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/align-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/align.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/endTime-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/endTime.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/id-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/id.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/pauseOnExit-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/pauseOnExit.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/startTime-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/startTime.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/track-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/track.html: Removed.
  • media/track/opera/interfaces/TextTrackCueList/getCueById-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCueList/getCueById.html: Removed.
  • media/track/opera/interfaces/TextTrackCueList/length-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCueList/length.html: Removed.
  • media/track/opera/interfaces/TextTrackList/length-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackList/length.html: Removed.
  • media/track/opera/interfaces/TextTrackList/onaddtrack-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackList/onaddtrack.html: Removed.
  • media/track/opera/interfaces/TextTrackList/onremovetrack-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackList/onremovetrack.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/2_tracks-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/2_tracks.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_end-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_end.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_50-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_50.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_gt_50-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_gt_50.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50_size_gt_maximum_size-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50_size_gt_maximum_size.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_start-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_start.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/audio_has_no_subtitles-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/audio_has_no_subtitles.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/basic-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/basic.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/decode_escaped_entities-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/decode_escaped_entities.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size_while_paused-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size_while_paused.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text_while_paused-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text_while_paused.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_remove_cue_while_paused-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_remove_cue_while_paused.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/media/background.gif: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/media/white.mp4: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/media/white.webm: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/one_line_cue_plus_wrapped_cue-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/one_line_cue_plus_wrapped_cue.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/size_50-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/size_50.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/support/2_cues_overlapping_completely_move_up.vtt: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/support/align_end_long.vtt: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/support/foo.vtt: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/support/refTestWait.js: Removed.
  • media/track/w3c: Added.
  • media/track/w3c/interfaces: Added.
  • media/track/w3c/interfaces/HTMLMediaElement: Added.
  • media/track/w3c/interfaces/HTMLMediaElement/addTextTrack-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLMediaElement/addTextTrack-expected.txt.
  • media/track/w3c/interfaces/HTMLMediaElement/addTextTrack.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html.
  • media/track/w3c/interfaces/HTMLMediaElement/textTracks-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLMediaElement/textTracks-expected.txt.
  • media/track/w3c/interfaces/HTMLMediaElement/textTracks.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLMediaElement/textTracks.html.
  • media/track/w3c/interfaces/HTMLTrackElement: Added.
  • media/track/w3c/interfaces/HTMLTrackElement/default-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/default-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/default.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/default.html.
  • media/track/w3c/interfaces/HTMLTrackElement/label-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/label-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/label.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/label.html.
  • media/track/w3c/interfaces/HTMLTrackElement/readyState-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/readyState-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/readyState.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/readyState.html.
  • media/track/w3c/interfaces/HTMLTrackElement/srclang-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/srclang.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/srclang.html.
  • media/track/w3c/interfaces/HTMLTrackElement/track-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/track-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/track.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/track.html.
  • media/track/w3c/interfaces/TextTrack: Added.
  • media/track/w3c/interfaces/TextTrack/addCue-expected.txt: Copied from media/track/opera/interfaces/TextTrack/addCue-expected.txt.
  • media/track/w3c/interfaces/TextTrack/addCue.html: Copied from media/track/opera/interfaces/TextTrack/addCue.html.
  • media/track/w3c/interfaces/TextTrack/constants-expected.txt: Copied from media/track/opera/interfaces/TextTrack/constants-expected.txt.
  • media/track/w3c/interfaces/TextTrack/constants.html: Copied from media/track/opera/interfaces/TextTrack/constants.html.
  • media/track/w3c/interfaces/TextTrack/cues-expected.txt: Copied from media/track/opera/interfaces/TextTrack/cues-expected.txt.
  • media/track/w3c/interfaces/TextTrack/cues.html: Copied from media/track/opera/interfaces/TextTrack/cues.html.
  • media/track/w3c/interfaces/TextTrack/kind-expected.txt: Copied from media/track/opera/interfaces/TextTrack/kind-expected.txt.
  • media/track/w3c/interfaces/TextTrack/kind.html: Copied from media/track/opera/interfaces/TextTrack/kind.html.
  • media/track/w3c/interfaces/TextTrack/label-expected.txt: Copied from media/track/opera/interfaces/TextTrack/label-expected.txt.
  • media/track/w3c/interfaces/TextTrack/label.html: Copied from media/track/opera/interfaces/TextTrack/label.html.
  • media/track/w3c/interfaces/TextTrack/language-expected.txt: Copied from media/track/opera/interfaces/TextTrack/language-expected.txt.
  • media/track/w3c/interfaces/TextTrack/language.html: Copied from media/track/opera/interfaces/TextTrack/language.html.
  • media/track/w3c/interfaces/TextTrack/mode-expected.txt: Copied from media/track/opera/interfaces/TextTrack/mode-expected.txt.
  • media/track/w3c/interfaces/TextTrack/mode.html: Copied from media/track/opera/interfaces/TextTrack/mode.html.
  • media/track/w3c/interfaces/TextTrack/oncuechange-expected.txt: Copied from media/track/opera/interfaces/TextTrack/oncuechange-expected.txt.
  • media/track/w3c/interfaces/TextTrack/oncuechange.html: Copied from media/track/opera/interfaces/TextTrack/oncuechange.html.
  • media/track/w3c/interfaces/TextTrack/removeCue-expected.txt: Copied from media/track/opera/interfaces/TextTrack/removeCue-expected.txt.
  • media/track/w3c/interfaces/TextTrack/removeCue.html: Copied from media/track/opera/interfaces/TextTrack/removeCue.html.
  • media/track/w3c/interfaces/TextTrackCue: Added.
  • media/track/w3c/interfaces/TextTrackCue/align-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/align-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/align.html: Copied from media/track/opera/interfaces/TextTrackCue/align.html.
  • media/track/w3c/interfaces/TextTrackCue/endTime-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/endTime-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/endTime.html: Copied from media/track/opera/interfaces/TextTrackCue/endTime.html.
  • media/track/w3c/interfaces/TextTrackCue/id-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/id-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/id.html: Copied from media/track/opera/interfaces/TextTrackCue/id.html.
  • media/track/w3c/interfaces/TextTrackCue/pauseOnExit-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/pauseOnExit-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/pauseOnExit.html: Copied from media/track/opera/interfaces/TextTrackCue/pauseOnExit.html.
  • media/track/w3c/interfaces/TextTrackCue/startTime-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/startTime-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/startTime.html: Copied from media/track/opera/interfaces/TextTrackCue/startTime.html.
  • media/track/w3c/interfaces/TextTrackCue/track-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/track-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/track.html: Copied from media/track/opera/interfaces/TextTrackCue/track.html.
  • media/track/w3c/interfaces/TextTrackCueList: Added.
  • media/track/w3c/interfaces/TextTrackCueList/getCueById-expected.txt: Copied from media/track/opera/interfaces/TextTrackCueList/getCueById-expected.txt.
  • media/track/w3c/interfaces/TextTrackCueList/getCueById.html: Copied from media/track/opera/interfaces/TextTrackCueList/getCueById.html.
  • media/track/w3c/interfaces/TextTrackCueList/length-expected.txt: Copied from media/track/opera/interfaces/TextTrackCueList/length-expected.txt.
  • media/track/w3c/interfaces/TextTrackCueList/length.html: Copied from media/track/opera/interfaces/TextTrackCueList/length.html.
  • media/track/w3c/interfaces/TextTrackList: Added.
  • media/track/w3c/interfaces/TextTrackList/length-expected.txt: Copied from media/track/opera/interfaces/TextTrackList/length-expected.txt.
  • media/track/w3c/interfaces/TextTrackList/length.html: Copied from media/track/opera/interfaces/TextTrackList/length.html.
  • media/track/w3c/interfaces/TextTrackList/onaddtrack-expected.txt: Copied from media/track/opera/interfaces/TextTrackList/onaddtrack-expected.txt.
  • media/track/w3c/interfaces/TextTrackList/onaddtrack.html: Copied from media/track/opera/interfaces/TextTrackList/onaddtrack.html.
  • media/track/w3c/interfaces/TextTrackList/onremovetrack-expected.txt: Copied from media/track/opera/interfaces/TextTrackList/onremovetrack-expected.txt.
  • media/track/w3c/interfaces/TextTrackList/onremovetrack.html: Copied from media/track/opera/interfaces/TextTrackList/onremovetrack.html.
  • media/track/w3c/track: Added.
  • media/track/w3c/track/webvtt: Added.
  • media/track/w3c/track/webvtt/2_tracks-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/2_tracks-ref.html.
  • media/track/w3c/track/webvtt/2_tracks.html: Copied from media/track/opera/track/webvtt/rendering/reftest/2_tracks.html.
  • media/track/w3c/track/webvtt/align_end-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_end-ref.html.
  • media/track/w3c/track/webvtt/align_end.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_end.html.
  • media/track/w3c/track/webvtt/align_middle-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle-ref.html.
  • media/track/w3c/track/webvtt/align_middle.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle.html.
  • media/track/w3c/track/webvtt/align_middle_position_50-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_50-ref.html.
  • media/track/w3c/track/webvtt/align_middle_position_50.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_50.html.
  • media/track/w3c/track/webvtt/align_middle_position_gt_50-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_gt_50-ref.html.
  • media/track/w3c/track/webvtt/align_middle_position_gt_50.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_gt_50.html.
  • media/track/w3c/track/webvtt/align_middle_position_lt_50-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50-ref.html.
  • media/track/w3c/track/webvtt/align_middle_position_lt_50.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50.html.
  • media/track/w3c/track/webvtt/align_middle_position_lt_50_size_gt_maximum_size-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50_size_gt_maximum_size-ref.html.
  • media/track/w3c/track/webvtt/align_middle_position_lt_50_size_gt_maximum_size.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50_size_gt_maximum_size.html.
  • media/track/w3c/track/webvtt/align_start-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_start-ref.html.
  • media/track/w3c/track/webvtt/align_start.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_start.html.
  • media/track/w3c/track/webvtt/audio_has_no_subtitles-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/audio_has_no_subtitles-ref.html.
  • media/track/w3c/track/webvtt/audio_has_no_subtitles.html: Copied from media/track/opera/track/webvtt/rendering/reftest/audio_has_no_subtitles.html.
  • media/track/w3c/track/webvtt/background.gif: Copied from media/track/opera/track/webvtt/rendering/reftest/media/background.gif.
  • media/track/w3c/track/webvtt/basic-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/basic-ref.html.
  • media/track/w3c/track/webvtt/basic.html: Copied from media/track/opera/track/webvtt/rendering/reftest/basic.html.
  • media/track/w3c/track/webvtt/decode_escaped_entities-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/decode_escaped_entities-ref.html.
  • media/track/w3c/track/webvtt/decode_escaped_entities.html: Copied from media/track/opera/track/webvtt/rendering/reftest/decode_escaped_entities.html.
  • media/track/w3c/track/webvtt/dom_override_cue_align_position_line_size-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size-ref.html.
  • media/track/w3c/track/webvtt/dom_override_cue_align_position_line_size.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size.html.
  • media/track/w3c/track/webvtt/dom_override_cue_align_position_line_size_while_paused-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size_while_paused-ref.html.
  • media/track/w3c/track/webvtt/dom_override_cue_align_position_line_size_while_paused.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size_while_paused.html.
  • media/track/w3c/track/webvtt/dom_override_cue_text-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text-ref.html.
  • media/track/w3c/track/webvtt/dom_override_cue_text.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text.html.
  • media/track/w3c/track/webvtt/dom_override_cue_text_while_paused-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text_while_paused-ref.html.
  • media/track/w3c/track/webvtt/dom_override_cue_text_while_paused.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text_while_paused.html.
  • media/track/w3c/track/webvtt/dom_override_remove_cue_while_paused-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_remove_cue_while_paused-ref.html.
  • media/track/w3c/track/webvtt/dom_override_remove_cue_while_paused.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_remove_cue_while_paused.html.
  • media/track/w3c/track/webvtt/media: Added.
  • media/track/w3c/track/webvtt/media/white.mp4: Copied from media/track/opera/track/webvtt/rendering/reftest/media/white.mp4.
  • media/track/w3c/track/webvtt/media/white.webm: Copied from media/track/opera/track/webvtt/rendering/reftest/media/white.webm.
  • media/track/w3c/track/webvtt/one_line_cue_plus_wrapped_cue-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/one_line_cue_plus_wrapped_cue-ref.html.
  • media/track/w3c/track/webvtt/one_line_cue_plus_wrapped_cue.html: Copied from media/track/opera/track/webvtt/rendering/reftest/one_line_cue_plus_wrapped_cue.html.
  • media/track/w3c/track/webvtt/size_50-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/size_50-ref.html.
  • media/track/w3c/track/webvtt/size_50.html: Copied from media/track/opera/track/webvtt/rendering/reftest/size_50.html.
  • media/track/w3c/track/webvtt/support: Added.
  • media/track/w3c/track/webvtt/support/2_cues_overlapping_completely_move_up.vtt: Copied from media/track/opera/track/webvtt/rendering/reftest/support/2_cues_overlapping_completely_move_up.vtt.
  • media/track/w3c/track/webvtt/support/align_end_long.vtt: Copied from media/track/opera/track/webvtt/rendering/reftest/support/align_end_long.vtt.
  • media/track/w3c/track/webvtt/support/foo.vtt: Copied from media/track/opera/track/webvtt/rendering/reftest/support/foo.vtt.
  • media/track/w3c/track/webvtt/support/refTestWait.js: Copied from media/track/opera/track/webvtt/rendering/reftest/support/refTestWait.js.
    • platform/eft/TestExpectations: Skip w3c tests.
    • platform/gtk/TestExpectations: Skip w3c tests.
9:19 AM Changeset in webkit [166929] by Alan Bujtas
  • 4 edits
    2 adds in trunk

Subpixel rendering: Slow paint path for inlines should snap to device pixels.
https://bugs.webkit.org/show_bug.cgi?id=131259

Reviewed by Simon Fraser.

InlineTextBox::paint needs to round to the same device pixel position as SimpleLineLayout does.

Source/WebCore:

Test: fast/inline/hidpi-slow-path-text-on-subpixel-position.html

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paint):

  • rendering/TextPainter.h: Cleanup. No reason to have them as references here.

LayoutTests:

  • fast/inline/hidpi-slow-path-text-on-subpixel-position-expected.html: Added.
  • fast/inline/hidpi-slow-path-text-on-subpixel-position.html: Added.
9:09 AM Changeset in webkit [166928] by dbates@webkit.org
  • 4 edits in trunk/Source

Fallback to default storage session when there isn't a valid session ID
https://bugs.webkit.org/show_bug.cgi?id=131326
<rdar://problem/16231679>

Reviewed by Alexey Proskuryakov.

Fixes and issue where we may use the wrong storage session after disabling
a private browsing session.

Currently WebKit1 and WebKit2 without NetworkProcess assume that there
is always a non-null private browsing storage session so long as the page
has a non-default session ID. Instead we should only use the private browsing
storage session when it's non-null and the page has a non-default session ID;
otherwise, we should use the default storage session. This change will make
the behavior in WebKit1 and WebKit2 without NetworkProcess consistent with
the behavior in WebKit2 with NetworkProcess.

Source/WebKit/mac:

  • WebCoreSupport/WebFrameNetworkingContext.mm:

(WebFrameNetworkingContext::storageSession):

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:

(WebKit::WebFrameNetworkingContext::storageSession):

9:01 AM Changeset in webkit [166927] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

Keep 'webkitClosedCaptionsVisible' API in sync with captions display preferences
https://bugs.webkit.org/show_bug.cgi?id=131344

Reviewed by Eric Carlson.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::configureTextTrackGroup) If we decide that captions should
be active (due to user preferences) make sure the 'webkitClosedCaptionsVisible' state
is turned on.

7:52 AM Changeset in webkit [166926] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: Paint the filter effect result image on device pixel position.
https://bugs.webkit.org/show_bug.cgi?id=131255

Reviewed by Simon Fraser.

This patch moves filter effect images from integral to device pixel position. However,
result images are still integral based.

Source/WebCore:

Test: css3/filters/hidpi-filter-is-on-subpixel-position.html

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRendererHelper::applyFilterEffect):

LayoutTests:

  • css3/filters/hidpi-filter-is-on-subpixel-position-expected.html: Added.
  • css3/filters/hidpi-filter-is-on-subpixel-position.html: Added.
7:50 AM Changeset in webkit [166925] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: Make border images device pixel aware.
https://bugs.webkit.org/show_bug.cgi?id=131209

Reviewed by Simon Fraser.

Snap border-image size and position to device pixels. It works both on generated and bitmap images.

Source/WebCore:

Test: fast/borders/hidpi-border-image-gradient-on-subpixels.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintNinePieceImage):

LayoutTests:

  • fast/borders/hidpi-border-image-gradient-on-subpixels-expected.html: Added.
  • fast/borders/hidpi-border-image-gradient-on-subpixels.html: Added.
5:21 AM WebKitGTK/KeepingTheTreeGreen edited by Andres Gomez
Added tanty shifts (diff)
5:09 AM Changeset in webkit [166924] by commit-queue@webkit.org
  • 9 edits in trunk

[SOUP] Control cookie management according ResourceRequest.allowCookies()
https://bugs.webkit.org/show_bug.cgi?id=131026

Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-04-08
Reviewed by Sergio Villar Senin.

Source/WebCore:

Added per soup-message disabling of cookie jar manager when related ResourceRequest does not allow cookies (e.g. some cross-origin requests).

Patch is covered by unskipped test http/tests/xmlhttprequest/cross-origin-cookie-storage.html.

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateSoupMessageMembers): Added disabling of cookie jar manager if cookies are not allowed.

Source/WebKit2:

Added setting of accept cookies policy for the current soup network session cookie jar and all tracked sessions.
Moved the implementation of cookie policy setting from WebCookieManager to WebFrameNetworkingContext.

  • WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:

(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): Moved implementation to WebCookieManager::platformSetHTTPCookieAcceptPolicy.

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:

(WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts): Moved implementation from WebCookieManager::platformSetHTTPCookieAcceptPolicy and set the cookie jar accept policy to the cookie jars of all sessions in addition to the default cookie jar.

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h: Added method prototype.

LayoutTests:

  • platform/efl/TestExpectations: Unskipped test http/tests/xmlhttprequest/cross-origin-cookie-storage.html.
  • platform/gtk/TestExpectations: Ditto.
5:05 AM Changeset in webkit [166923] by svillar@igalia.com
  • 3 edits
    4 adds in trunk

[CSS Grid Layout] Handle min/max height in the grid element
https://bugs.webkit.org/show_bug.cgi?id=131302

Reviewed by Darin Adler.

Source/WebCore:

Removed a FIXME in the code as we're already handling min/max
height in the code. Added a couple of test cases to improve the
test coverage.

Merged from Blink r161876 by <jchaffraix@chromium.org>

Tests: fast/css-grid-layout/flex-content-sized-columns-resize.html

fast/css-grid-layout/grid-element-min-max-height.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutGridItems):

LayoutTests:

Added test coverage for min/max height handling in the grid
item. Also added other test to cover a blind spot in our testing,
resizing of content sized columns with flexible breadths.

Merged from Blink r161876 by <jchaffraix@chromium.org> and r166914 by <Manuel Rego Casasnovas>.

  • fast/css-grid-layout/flex-content-sized-columns-resize-expected.html: Added.
  • fast/css-grid-layout/flex-content-sized-columns-resize.html: Added.
  • fast/css-grid-layout/grid-element-min-max-height-expected.txt: Added.
  • fast/css-grid-layout/grid-element-min-max-height.html: Added.
3:58 AM WebKitGTK/KeepingTheTreeGreen edited by eocanha@igalia.com
(diff)
2:21 AM Changeset in webkit [166922] by mihnea@adobe.com
  • 3 edits in trunk/Source/WebCore

[CSSRegions] Remove unused RenderBox::clearRenderBoxRegionInfo
https://bugs.webkit.org/show_bug.cgi?id=131352

Reviewed by Andrei Bucur.

No new tests, code clean-up.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::clearRenderBoxRegionInfo): Deleted.

  • rendering/RenderBox.h:
2:15 AM Changeset in webkit [166921] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Buildfix after r166917
https://bugs.webkit.org/show_bug.cgi?id=131351

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-08
Reviewed by Andrei Bucur.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::accessibleNameForNode):

1:58 AM Changeset in webkit [166920] by Darin Adler
  • 13 edits in trunk/Source/WebCore

Fix assertions triggered by CSS calc changes in r166860
https://bugs.webkit.org/show_bug.cgi?id=131346

Reviewed by Andrei Bucur.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::getBorderRadiusCornerValues): Use isPercentNotCalculated() instead of
type() == Percent; no behavior change.
(WebCore::getBorderRadiusCornerValue): Ditto.
(WebCore::lineHeightFromStyle): Use isPercentNotCalculated() before code
that calls percent(), which won't work for a calculated length.

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyBorderRadius::applyValue): Use isNegative and isZero rather
than calling value() unconditionally. Should make calculated values work better.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::is100Percent): Use isPercentNotCalculated() before code
that calls percent(), which won't work for a calculated length.

  • platform/Length.cpp:

(WebCore::CalculationValueMap::deref): Use adoptRef here instead of calling deref
immediately, so the deref will happen after calling remove. This makes the code
work properly even if it's reentered inside the calculation value's destructor.

  • platform/Length.h:

(WebCore::Length::percent): Change assert to isPercentNotCalculated, since the
value function this calls only works for non-calculated values anyway.
(WebCore::Length::isPercentNotCalculated): Added.
(WebCore::Length::isPercent): Changed to call isPercentNotCalculated.
(WebCore::Length::isSpecified): Changed to call isPercent.

  • platform/graphics/transforms/TranslateTransformOperation.h:

(WebCore::TranslateTransformOperation::apply): Use isPercentNotCalculated()
instead of type() == Percent; no behavior change.

  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::recalcColumn): Use isPercentNotCalculated()
before code that calls value() or percent(), which won't work for a calculated length.
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths): Ditto.
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth): Ditto.
(WebCore::AutoTableLayout::layout): Ditto.

  • rendering/FixedTableLayout.cpp:

(WebCore::FixedTableLayout::layout): Ditto.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): Ditto.

  • rendering/RenderTableSection.cpp:

(WebCore::updateLogicalHeightForCell): Ditto.
(WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows): Ditto.
(WebCore::RenderTableSection::distributeExtraLogicalHeightToRows): Ditto.

  • rendering/style/RenderStyle.cpp:

(WebCore::requireTransformOrigin): Use modern for loop. Also marked function static,
since it's private to this file.
(WebCore::RenderStyle::applyTransform): Use isPercentNotCalculated() instead of
type() == Percent; no behavior change. Also use a modern for loop and auto& to avoid
a really long type name.

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation): Use isPercentNotCalculated()
before code that calls percent(), which won't work for a calculated length.

  • platform/Length.h:

(WebCore::Length::percent):
(WebCore::Length::isPercentNotCalculated):
(WebCore::Length::isPercent):
(WebCore::Length::isSpecified):

  • platform/graphics/transforms/TranslateTransformOperation.h:

(WebCore::TranslateTransformOperation::apply):

  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::recalcColumn):
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths):
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
(WebCore::AutoTableLayout::layout):

  • rendering/FixedTableLayout.cpp:

(WebCore::FixedTableLayout::layout):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions):

  • rendering/RenderTableSection.cpp:

(WebCore::updateLogicalHeightForCell):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToRows):

  • rendering/style/RenderStyle.cpp:

(WebCore::requireTransformOrigin):
(WebCore::RenderStyle::applyTransform):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):

1:15 AM Changeset in webkit [166919] by calvaris@igalia.com
  • 2 edits
    1 delete in trunk/Source/WebCore

[GTK] Remove media controls dead code
https://bugs.webkit.org/show_bug.cgi?id=131300

Reviewed by Eric Carlson.

MediaControlsGtk.cpp is no longer used so we can remove it from
the repo.

No new tests needed.

  • PlatformGTK.cmake: Remove html/shadow/MediaControlsGtk.cpp from

compilation.

  • html/shadow/MediaControlsGtk.cpp: Removed.
1:13 AM Changeset in webkit [166918] by mihnea@adobe.com
  • 3 edits
    2 adds in trunk

[CSSRegions] Fixed positioned elements in named flows have fragmented content
https://bugs.webkit.org/show_bug.cgi?id=130595

Reviewed by Darin Adler.

Source/WebCore:

Fixed positioned elements that have the named flow as parent are positioned
and sized relative to the viewport. Because of that, when the named flow
has an associated region chain, the fixed positioned elements should not
be fragmented.

By making a fixed positioned element with a named flow parent unsplittable
for fragmentation, we prevent this wrong behavior.

Test: fast/regions/fixed-pos-content-fragmented.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::isUnsplittableForPagination):

LayoutTests:

  • fast/regions/fixed-pos-content-fragmented-expected.html: Added.
  • fast/regions/fixed-pos-content-fragmented.html: Added.
1:05 AM WebKitGTK/KeepingTheTreeGreen edited by ltilve@igalia.com
(diff)
12:59 AM Changeset in webkit [166917] by Chris Fleizach
  • 3 edits
    2 adds in trunk

Regression: AX: image labels no longer exposed to AX API in SVG test case
https://bugs.webkit.org/show_bug.cgi?id=131208

Reviewed by Daniel Bates.

Source/WebCore:

accessibleNameForNode should work on any Element, not just HTML elements.

Test: accessibility/svg-labelledby.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::accessibleNameForNode):

LayoutTests:

  • accessibility/svg-labelledby-expected.txt: Added.
  • accessibility/svg-labelledby.html: Added.
12:37 AM Changeset in webkit [166916] by Andres Gomez
  • 8 edits in trunk/Source

[GTK] [EFL] Build fails with GCC < 4.8.x
https://bugs.webkit.org/show_bug.cgi?id=130585

Reviewed by Martin Robinson.

The behavior in lower versions of GCC seem to be related to
http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-active.html#2132.

Provided explicit casts for the failing ambiguous overloads.

Source/WebCore:

  • platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:

(WebCore::AudioFileReader::createBus):

  • platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:

(webKitMediaSrcChangeState):
(webKitMediaVideoSrcNeedDataCb):
(webKitMediaAudioSrcNeedDataCb):
(webKitMediaVideoSrcEnoughDataCb):
(webKitMediaAudioSrcEnoughDataCb):
(webKitMediaVideoSrcSeekDataCb):
(webKitMediaAudioSrcSeekDataCb):

  • platform/gtk/GtkDragAndDropHelper.cpp:

(WebCore::GtkDragAndDropHelper::handleDragLeave):

  • platform/gtk/SharedTimerGtk.cpp:

(WebCore::setSharedTimerFireInterval):

Source/WTF:

  • wtf/gtk/MainThreadGtk.cpp:

(WTF::scheduleDispatchFunctionsOnMainThread):

  • wtf/gtk/RunLoopGtk.cpp:

(WTF::RunLoop::wakeUp): Provided lambda with a RefPtr instead of
ref and de-referring.

12:14 AM Changeset in webkit [166915] by gyuyoung.kim@samsung.com
  • 9 edits in trunk/Source

Change NavigatorContentUtils client ownership from port side to NavigatorContentUtils
https://bugs.webkit.org/show_bug.cgi?id=131299

Reviewed by Darin Adler.

EFL and GTK ports have managed own client of NavigatorContentUtils though it is only passed to
NavigatorContentUtils. The NavigatorContentUtils has used the client to call port functions. So,
there is no reason port implementation needs to manage the ownership. To manage the client is
unnecessary work in current implementation.

Source/WebCore:

No new tests, no behavior changes.

  • Modules/navigatorcontentutils/NavigatorContentUtils.cpp:

(WebCore::NavigatorContentUtils::create):
(WebCore::provideNavigatorContentUtilsTo):

  • Modules/navigatorcontentutils/NavigatorContentUtils.h:
  • Modules/navigatorcontentutils/NavigatorContentUtilsClient.h:

Source/WebKit/efl:

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):

Source/WebKit/gtk:

  • webkit/webkitwebview.cpp:

(webkit_web_view_init):

  • webkit/webkitwebviewprivate.h:

Apr 7, 2014:

11:55 PM Changeset in webkit [166914] by gyuyoung.kim@samsung.com
  • 7 edits in trunk/Source/WebKit2

[WK2] Fix unused parameter compile warning
https://bugs.webkit.org/show_bug.cgi?id=131260

Reviewed by Darin Adler.

Remove the arguments name without UNUSED_PARAM().

  • UIProcess/API/APIDownloadClient.h:

(API::DownloadClient::didReceiveData):
(API::DownloadClient::shouldDecodeSourceDataOfMIMEType):
(API::DownloadClient::decideDestinationWithSuggestedFilename):
(API::DownloadClient::didCreateDestination):

  • UIProcess/API/APIFindClient.h:

(API::FindClient::didCountStringMatches):
(API::FindClient::didFindString):

  • UIProcess/API/APIHistoryClient.h:

(API::HistoryClient::didPerformClientRedirect):
(API::HistoryClient::didPerformServerRedirect):
(API::HistoryClient::didUpdateHistoryTitle):

  • UIProcess/API/APILoaderClient.h:

(API::LoaderClient::didStartProvisionalLoadForFrame):
(API::LoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
(API::LoaderClient::didFailProvisionalLoadWithErrorForFrame):
(API::LoaderClient::didCommitLoadForFrame):
(API::LoaderClient::didFinishLoadForFrame):
(API::LoaderClient::didFailLoadWithErrorForFrame):
(API::LoaderClient::didChangeBackForwardList):

  • UIProcess/API/APIPolicyClient.h:

(API::PolicyClient::decidePolicyForNavigationAction):
(API::PolicyClient::decidePolicyForNewWindowAction):
(API::PolicyClient::decidePolicyForResponse):
(API::PolicyClient::unableToImplementPolicy):

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

[Mac] Allow com.apple.ViewBridge preferences reading in plug-in sandbox profile
https://bugs.webkit.org/show_bug.cgi?id=131306
<rdar://problem/16359865>

Reviewed by Sam Weinig.

  • Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb: Do it.
11:09 PM Changeset in webkit [166912] by mrobinson@webkit.org
  • 2 edits in trunk/LayoutTests

Skipped some HighDPI tests for GTK+

  • platform/gtk/TestExpectations: GTK+ does not yet have HighDPI support.
11:02 PM Changeset in webkit [166911] by mrobinson@webkit.org
  • 7 edits
    11 moves
    5 adds
    30 deletes in trunk/LayoutTests

[GTK] Remove WebKit1 test results and merge TestExpectations files
https://bugs.webkit.org/show_bug.cgi?id=131342

Merge all WebKit1 test expectations into the gtk directory and also merge the WebKit2
test expectations files into the GTK+ one, removing duplicate lines.

  • http/tests/security/resources/drag-drop-allowed-expected.txt: Added.
  • platform/gtk-wk1: Removed.
  • platform/gtk-wk2: Removed.
  • platform/gtk/TestExpectations: Merged in WebKit2 expectations.
  • platform/gtk/accessibility/file-upload-button-stringvalue-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/accessibility/file-upload-button-stringvalue-expected.txt.
  • platform/gtk/fast/events/wheelevent-in-horizontal-scrollbar-in-rtl-expected.txt:
  • platform/gtk/fast/events/wheelevent-in-vertical-scrollbar-in-rtl-expected.txt:
  • platform/gtk/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt.
  • platform/gtk/http/tests/loading/basic-credentials-sent-automatically-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/loading/basic-credentials-sent-automatically-expected.txt.
  • platform/gtk/http/tests/misc/401-alternative-content-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/misc/401-alternative-content-expected.txt.
  • platform/gtk/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt.
  • platform/gtk/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt.
  • platform/gtk/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt.
  • platform/gtk/http/tests/security/401-logout/401-logout-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/security/401-logout/401-logout-expected.txt.
  • platform/gtk/http/tests/xmlhttprequest/failed-auth-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/xmlhttprequest/failed-auth-expected.txt.
  • platform/gtk/http/tests/xmlhttprequest/remember-bad-password-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/xmlhttprequest/remember-bad-password-expected.txt.
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/js/dom/global-constructors-attributes-expected.txt.
  • platform/gtk/plugins/npruntime/object-from-destroyed-plugin-expected.txt:
  • platform/gtk/plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt:
  • platform/gtk/plugins/plugin-clip-subframe-expected.txt:
10:31 PM Changeset in webkit [166910] by ggaren@apple.com
  • 14 edits
    7 adds in trunk

Build bmalloc on Mac
https://bugs.webkit.org/show_bug.cgi?id=131333

Reviewed by Mark Rowe.

.:

  • Source/Makefile:
  • WebKitBuild: Added.
  • WebKitBuild/Debug: Added.

Source/bmalloc:

  • Makefile: Added. For make clients.

These files are required for building any project in WebKit. I copied
them from WTF:

  • Configurations: Added.
  • Configurations/Base.xcconfig: Added.
  • Configurations/DebugRelease.xcconfig: Added.
  • Configurations/bmalloc.xcconfig: Added.
  • Configurations/iOS.xcconfig: Added.
  • Configurations/mbmalloc.xcconfig: Added.
  • bmalloc.xcodeproj/project.pbxproj: I removed per-project-file stuff

from here because everything is in .xcconfig files now.

I had to fix a bunch of minor warnings, since they're enabled in our
.xcconfig files:

  • bmalloc/AsyncTask.h:

(bmalloc::Function>::AsyncTask):

  • bmalloc/BAssert.h:
  • bmalloc/BoundaryTagInlines.h:

(bmalloc::validate):

  • bmalloc/Heap.cpp:

(bmalloc::Heap::Heap):
(bmalloc::Heap::allocateLarge):
(bmalloc::Heap::deallocateLarge):

  • bmalloc/Mutex.h:

(bmalloc::Mutex::Mutex): Deleted.

  • bmalloc/VMAllocate.h:

(bmalloc::vmValidate):

  • bmalloc/mbmalloc.cpp:

Tools:

  • Scripts/build-webkit: Add the bmalloc target if we're on Mac.

(Note: Just testing Mac is not good enough because in this
script 'Mac' means 'Mac or iOS'.)

9:47 PM Changeset in webkit [166909] by zoltan@webkit.org
  • 3 edits in trunk/Source/WebCore

[CSS Shapes] Simplify the parsing of width arguments for Inset shapes
https://bugs.webkit.org/show_bug.cgi?id=131305

Reviewed by Andreas Kling.

This code introduces some helper functions for setting the size arguments of inset shapes. This change
also modifies the code to be the same as in Blink, so it helps us to keep the shapes code similar.

No new tests, no behavior change.

  • css/CSSBasicShapes.h:

(WebCore::CSSBasicShapeInset::updateShapeSize4Values):
(WebCore::CSSBasicShapeInset::updateShapeSize1Value):
(WebCore::CSSBasicShapeInset::updateShapeSize2Values):
(WebCore::CSSBasicShapeInset::updateShapeSize3Values):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseBasicShapeInset):

8:55 PM Changeset in webkit [166908] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Setters are just getters that take an extra argument and don't return a value
https://bugs.webkit.org/show_bug.cgi?id=131336

Reviewed by Geoffrey Garen.

Other than that, they're totally the same thing.

This isn't as dumb as it sounds.

Most of the work in calling an accessor has to do with emitting the necessary checks for
figuring out whether we're calling the accessor we expected, followed by the boilerplate
needed for setting up a call inside of a stub. It makes sense for the code to be totally
common.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::storeValue):
(JSC::AssemblyHelpers::moveTrustedValue):

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::setupResults):

  • jit/Repatch.cpp:

(JSC::kindFor):
(JSC::customFor):
(JSC::generateByIdStub):
(JSC::tryCacheGetByID):
(JSC::tryBuildGetByIDList):
(JSC::tryCachePutByID):
(JSC::tryBuildPutByIdList):
(JSC::generateGetByIdStub): Deleted.
(JSC::emitCustomSetterStub): Deleted.

  • runtime/JSCJSValue.h:

(JSC::JSValue::asValue):

  • runtime/PutPropertySlot.h:

(JSC::PutPropertySlot::cachedOffset):

8:49 PM Changeset in webkit [166907] by Stephanie Lewis
  • 2 edits in trunk/Source/WebKit2

Crash in com.apple.WebKit.Plugin.Development at com.apple.WebKit2: WebKit::PluginControllerProxy::pluginInstanceID
<rdar://problem/16479432>
https://bugs.webkit.org/show_bug.cgi?id=131203

Reviewed by Geoff Garen.

pluginController was being removed before accessing the pluginInstanceID.

  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::removePluginControllerProxy):

7:46 PM Changeset in webkit [166906] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

More Mountain Lion build fix.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
7:12 PM Changeset in webkit [166905] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS][WK2] Implement the update of content offset on animated resize
https://bugs.webkit.org/show_bug.cgi?id=131329

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-07
Reviewed by Tim Horton.

Compute a reasonable target offset on rotation. This goes in 3 steps:
1) Move the page so that the center does not move during scaling.
2) Limit the range to keep the page in scrollview without rubberbanding.
3) The horizontal content stays the same but the vertical area changes. When on the top or bottom

edge, stick to the edge.

The code is moved inside _beginAnimatedResizeToSize:obscuredInsets:minimumLayoutSizeOverride: so that we can tell
the WebProcess where the scroll position will be at the end of the animation.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _frameOrBoundsChangedFrom:]):
(-[WKWebView _updateVisibleContentRects]):
(-[WKWebView _beginAnimatedResizeToSize:obscuredInsets:minimumLayoutSizeOverride:]):

7:07 PM Changeset in webkit [166904] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

Mountain Lion build fix.

  • UIProcess/ios/PageClientImplIOS.mm:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
6:38 PM Changeset in webkit [166903] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Handle decoding of nil invocation arguments
https://bugs.webkit.org/show_bug.cgi?id=131335
<rdar://problem/16528449>

Reviewed by Tim Horton.

  • Shared/APIArray.h:

Don't crash if the array element is null.

6:35 PM Changeset in webkit [166902] by mrobinson@webkit.org
  • 8 edits in trunk

fast/css3-text/css3-text-decoration/text-decoration-thickness.html fails on GTK
https://bugs.webkit.org/show_bug.cgi?id=129957

Reviewed by Dean Jackson.

Source/WebCore:

Causes existing tests to pass.

  • platform/graphics/cairo/GraphicsContextCG.cpp: Use the now-shared computeLineBoundsAndAntialiasingModeForText.
  • platform/graphics/cairo/GraphicsContextCairo.cpp: Align the Cairo version of text underline drawing with the CG version.
  • platform/graphics/GraphicsContext.h: Add computeLineBoundsAndAntialiasingModeForText.
  • platform/graphics/GraphicsContext.cpp: Ditto.

LayoutTests:

Unskipped tests and modified one test to use the platform-independent Ahem font.

  • fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-tall-underlines.html: We

need to use Ahem because Helvetica is not a platform-independent font.

  • platform/gtk/TestExpectations: Unskipped tests.
5:56 PM Changeset in webkit [166901] by Brian Burg
  • 12 edits
    4 moves
    3 adds in trunk/LayoutTests

Web Inspector: test helper files should be under LayoutTests/http/tests/inspector/
https://bugs.webkit.org/show_bug.cgi?id=131324

Reviewed by Joseph Pecoraro.

Rearrange helper files used by full inspector tests. In their previous placement,
they were outside the http server root and couldn't be loaded from http tests.

  • http/tests/inspector/debugger/debugger-test.js: Renamed from LayoutTests/inspector/debugger/debugger-test.js.
  • http/tests/inspector/dom/shapes-test.js: Renamed from LayoutTests/inspector/dom/shapes-test.js.
  • http/tests/inspector/inspector-test.js: Renamed from LayoutTests/inspector/inspector-test.js.
  • http/tests/inspector/replay/replay-test.js: Renamed from LayoutTests/inspector/replay/replay-test.js.
  • inspector/debugger/probe-manager-add-remove-actions.html:
  • inspector/dom/content-flow-content-nodes.html:
  • inspector/dom/content-flow-content-removal.html:
  • inspector/dom/content-flow-list.html:
  • inspector/dom/content-node-region-info.html:
  • inspector/dom/highlight-shape-outside-margin.html:
  • inspector/dom/highlight-shape-outside.html:
  • inspector/page/main-frame-resource.html:
  • inspector/replay/javascript-date-now.html:
  • inspector/replay/javascript-random-seed.html:
  • inspector/test-harness-trivially-works.html:
5:39 PM Changeset in webkit [166900] by mitz@apple.com
  • 13 edits in trunk/Source/WebKit2

Add bundle client function corresponding to startAssistingNode
https://bugs.webkit.org/show_bug.cgi?id=131332

Reviewed by Anders Carlsson.

  • UIProcess/PageClient.h: Added userData parameter to startAssistingNode.
  • UIProcess/WebPageProxy.h: Added message decoder parameter to startAssistingNode.
  • UIProcess/WebPageProxy.messages.in: Added message decoder parameter to StartAssistingNode.
  • UIProcess/ios/PageClientImplIOS.h: Updated startAssistingNode override.
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::startAssistingNode): Decode the user data into an NSObject and pass
it on to the content view.

  • UIProcess/ios/WKContentViewInteraction.h: Added userObject parameter to

-_startAssitingNode:.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _startAssistingNode:userObject:]): Added userObject parameter. We will pass
it to a future delegate method.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::startAssistingNode): Decode the user data and pass it to the client.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h: Declared new

delegate method.

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

(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Added an implementation
of API::InjectedBundle::FormClient::willBeginInputSession which calls the new delegate
method, and encodes the user object into userData.

  • WebProcess/InjectedBundle/APIInjectedBundleFormClient.h:

(API::InjectedBundle::FormClient::willBeginInputSession): Added willBeginInputSession.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::elementDidFocus): Call willBeginInputSession and send the user data along
with the StartAssistingNode message to the UI process.

5:24 PM Changeset in webkit [166899] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fixing the EFL build.

  • WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: Include the Document header from WebCore

to avoid operating on an incomplete type.

5:23 PM Changeset in webkit [166898] by ggaren@apple.com
  • 2 edits in trunk/Source/bmalloc

bmalloc: Fixed a leak in the per-thread cache
https://bugs.webkit.org/show_bug.cgi?id=131330

Reviewed by Andreas Kling.

Remember to deallocate our line caches upon thread exit.

  • bmalloc/Deallocator.cpp:

(bmalloc::Deallocator::~Deallocator):

5:12 PM Changeset in webkit [166897] by ggaren@apple.com
  • 8 edits in trunk/Source/bmalloc

bmalloc: rolled out the tryLock experiment
https://bugs.webkit.org/show_bug.cgi?id=131328

Reviewed by Andreas Kling.

It wasn't a speedup.

  • bmalloc.xcodeproj/project.pbxproj:
  • bmalloc/Allocator.cpp:

(bmalloc::Allocator::processSmallAllocatorLog):
(bmalloc::Allocator::processMediumAllocatorLog):

  • bmalloc/Deallocator.cpp:

(bmalloc::Deallocator::processObjectLog):
(bmalloc::Deallocator::deallocateSlowCase):
(bmalloc::Deallocator::deallocateSmallLine):
(bmalloc::Deallocator::deallocateMediumLine):

  • bmalloc/Deallocator.h:

(bmalloc::Deallocator::deallocateFastCase):

  • bmalloc/Heap.h:

(bmalloc::Heap::deallocateSmallLine):
(bmalloc::Heap::deallocateMediumLine):

  • bmalloc/Line.h:

(bmalloc::Line<Traits>::deref):

  • bmalloc/Page.h:

(bmalloc::Page<Traits>::deref):

5:07 PM Changeset in webkit [166896] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

[iOS WebKit2] WKPDFView fades in tiles, PDFs load very flashily
https://bugs.webkit.org/show_bug.cgi?id=131325
<rdar://problem/16382960>

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView scrollViewDidScroll:]):
Forward scroll events to the current custom content provider.

  • UIProcess/Cocoa/WKWebViewContentProvider.h:

Make content providers UIScrollViewDelegates (though we only forward didScroll for now).

  • UIProcess/ios/WKPDFView.mm:

(-[WKPDFView web_setContentProviderData:suggestedFilename:]):
(-[WKPDFView web_setMinimumSize:]):
(-[WKPDFView web_setScrollView:]):
(-[WKPDFView scrollViewDidScroll:]):
(-[WKPDFView _revalidateViews]):
(-[WKPDFView _computePageAndDocumentFrames]):
(-[WKPDFView layoutViews]): Deleted.
Keep track of each UIPDFPage, UIPDFPageView, and its frame (in unscaled/document coordinates).
Compute all the rects up front (and re-compute upon rotation, loading, etc.).
When scrolling, find all the pages that intersect the view (inflated by 1.5x in each
vertical direction), and ensure that pages that are inside that rect have
UIPDFPageViews installed, and ones that are outside that rect do not.
Use setUseBackingLayer to ensure that we have a low-resolution layer behind the
tiled layer to avoid flashiness.

5:04 PM Changeset in webkit [166895] by Beth Dakin
  • 4 edits in trunk/Source/WebCore

REGRESSION (r163194-r163227): Garbage tiles in overflow of RTL page with
background image
https://bugs.webkit.org/show_bug.cgi?id=131323
-and corresponding-
<rdar://problem/16402013>

Reviewed by Tim Horton.

Returning the TiledBacking::bounds() for the
FrameView::extendedBackgroundRectForPainting() in convenient for ltr pages, but it
is simply incorrect in rtl. There is no easy way to map the rect into the right
coordinate space, so this patch re-works the code to use computations in
RenderView to get the right rect.

Call RenderView::unextendedBackgroundRect() and expand and move it based on the
TiledBacking’s margins.

  • page/FrameView.cpp:

(WebCore::FrameView::extendedBackgroundRectForPainting):

The logic that used to be in backgroundRect() has been moved to
unextendedBackgroundRect().

  • rendering/RenderView.cpp:

(WebCore::RenderView::unextendedBackgroundRect):
(WebCore::RenderView::backgroundRect):

  • rendering/RenderView.h:
5:01 PM Changeset in webkit [166894] by zoltan@webkit.org
  • 5 edits in trunk

[CSS Shapes] inset complex calc() args vanish in serialized computed style
https://bugs.webkit.org/show_bug.cgi?id=129838

Reviewed by Bem Jones-Bey.

Source/WebCore:

We didn't pass the style parameter when setting the width members of CSSBasicShapeInset,
which lead to a 'should never reach asserttion' in CSSPrimitiveValue::init. This patch
adds the missing parameters to the call sites.

Extended existing parsing test script.

  • css/BasicShapeFunctions.cpp:

(WebCore::valueForBasicShape):

LayoutTests:

  • fast/shapes/parsing/parsing-shape-outside-expected.txt:
  • fast/shapes/parsing/parsing-test-utils.js:
4:54 PM Changeset in webkit [166893] by ggaren@apple.com
  • 55 adds in trunk/Source/bmalloc

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

Reviewed by Andreas Kling.

Initial commit.

  • bmalloc: Added.
  • bmalloc.xcodeproj: Added.
  • bmalloc.xcodeproj/project.pbxproj: Added.
  • bmalloc/Algorithm.h: Added.

(bmalloc::max):
(bmalloc::min):
(bmalloc::mask):
(bmalloc::test):
(bmalloc::roundUpToMultipleOf):
(bmalloc::roundDownToMultipleOf):
(bmalloc::sizeOf):
(bmalloc::bitCount):
(bmalloc::isPowerOfTwo):

  • bmalloc/Allocator.cpp: Added.

(bmalloc::Allocator::Allocator):
(bmalloc::Allocator::~Allocator):
(bmalloc::Allocator::log):
(bmalloc::Allocator::processSmallAllocatorLog):
(bmalloc::Allocator::processMediumAllocatorLog):
(bmalloc::Allocator::allocateLarge):
(bmalloc::Allocator::allocateXLarge):
(bmalloc::Allocator::allocateMedium):
(bmalloc::Allocator::allocateSlowCase):

  • bmalloc/Allocator.h: Added.

(bmalloc::Allocator::smallAllocatorFor):
(bmalloc::Allocator::allocateFastCase):
(bmalloc::Allocator::allocate):

  • bmalloc/AsyncTask.cpp: Added.

(bmalloc::AsyncTask<Function>::runSlowCase):
(bmalloc::AsyncTask<Function>::pthreadEntryPoint):
(bmalloc::AsyncTask<Function>::entryPoint):

  • bmalloc/AsyncTask.h: Added.

(bmalloc::Function>::AsyncTask):
(bmalloc::Function>::join):
(bmalloc::Function>::run):
(bmalloc::Function>::runSlowCase):
(bmalloc::Function>::pthreadEntryPoint):
(bmalloc::Function>::entryPoint):

  • bmalloc/BAssert.h: Added.
  • bmalloc/BeginTag.h: Added.

(bmalloc::BeginTag::isInFreeList):

  • bmalloc/BoundaryTag.h: Added.

(bmalloc::BoundaryTag::isXLarge):
(bmalloc::BoundaryTag::setXLarge):
(bmalloc::BoundaryTag::isFree):
(bmalloc::BoundaryTag::setFree):
(bmalloc::BoundaryTag::isEnd):
(bmalloc::BoundaryTag::setEnd):
(bmalloc::BoundaryTag::hasPhysicalPages):
(bmalloc::BoundaryTag::setHasPhysicalPages):
(bmalloc::BoundaryTag::isNull):
(bmalloc::BoundaryTag::clear):
(bmalloc::BoundaryTag::size):
(bmalloc::BoundaryTag::setSize):
(bmalloc::BoundaryTag::prev):
(bmalloc::BoundaryTag::next):

  • bmalloc/BoundaryTagInlines.h: Added.

(bmalloc::validate):
(bmalloc::validatePrev):
(bmalloc::validateNext):
(bmalloc::BoundaryTag::init):
(bmalloc::BoundaryTag::mergeLargeLeft):
(bmalloc::BoundaryTag::mergeLargeRight):
(bmalloc::BoundaryTag::mergeLarge):
(bmalloc::BoundaryTag::deallocate):
(bmalloc::BoundaryTag::splitLarge):
(bmalloc::BoundaryTag::allocate):

  • bmalloc/Cache.cpp: Added.

(bmalloc::Cache::operator new):
(bmalloc::Cache::operator delete):
(bmalloc::Cache::Cache):
(bmalloc::Cache::allocateSlowCase):
(bmalloc::Cache::allocateSlowCaseNullCache):
(bmalloc::Cache::deallocateSlowCase):
(bmalloc::Cache::deallocateSlowCaseNullCache):

  • bmalloc/Cache.h: Added.

(bmalloc::Cache::allocator):
(bmalloc::Cache::deallocator):
(bmalloc::Cache::allocateFastCase):
(bmalloc::Cache::deallocateFastCase):
(bmalloc::Cache::allocate):
(bmalloc::Cache::deallocate):

  • bmalloc/Chunk.h: Added.

(bmalloc::Chunk::begin):
(bmalloc::Chunk::end):
(bmalloc::Chunk::lines):
(bmalloc::Chunk::pages):

  • bmalloc/Deallocator.cpp: Added.

(bmalloc::Deallocator::Deallocator):
(bmalloc::Deallocator::~Deallocator):
(bmalloc::Deallocator::deallocateLarge):
(bmalloc::Deallocator::deallocateXLarge):
(bmalloc::Deallocator::processObjectLog):
(bmalloc::Deallocator::deallocateSlowCase):
(bmalloc::Deallocator::deallocateSmallLine):
(bmalloc::Deallocator::allocateSmallLine):
(bmalloc::Deallocator::deallocateMediumLine):
(bmalloc::Deallocator::allocateMediumLine):

  • bmalloc/Deallocator.h: Added.

(bmalloc::Deallocator::deallocateFastCase):
(bmalloc::Deallocator::deallocate):

  • bmalloc/EndTag.h: Added.

(bmalloc::EndTag::operator=):

  • bmalloc/FixedVector.h: Added.

(bmalloc::FixedVector::begin):
(bmalloc::FixedVector::end):
(bmalloc::FixedVector::size):
(bmalloc::FixedVector::capacity):
(bmalloc::FixedVector::clear):
(bmalloc::FixedVector::isEmpty):
(bmalloc::Capacity>::FixedVector):
(bmalloc::Capacity>::operator):
(bmalloc::Capacity>::push):
(bmalloc::Capacity>::pop):
(bmalloc::Capacity>::shrink):

  • bmalloc/Heap.cpp: Added.

(bmalloc::sleep):
(bmalloc::Heap::Heap):
(bmalloc::Heap::concurrentScavenge):
(bmalloc::Heap::scavengeSmallPages):
(bmalloc::Heap::scavengeMediumPages):
(bmalloc::Heap::scavengeLargeRanges):
(bmalloc::Heap::allocateSmallLineSlowCase):
(bmalloc::Heap::allocateMediumLineSlowCase):
(bmalloc::Heap::allocateXLarge):
(bmalloc::Heap::deallocateXLarge):
(bmalloc::Heap::allocateLarge):
(bmalloc::Heap::deallocateLarge):

  • bmalloc/Heap.h: Added.

(bmalloc::Heap::deallocateSmallLine):
(bmalloc::Heap::allocateSmallLine):
(bmalloc::Heap::deallocateMediumLine):
(bmalloc::Heap::allocateMediumLine):

  • bmalloc/Inline.h: Added.
  • bmalloc/LargeChunk.h: Added.

(bmalloc::LargeChunk::begin):
(bmalloc::LargeChunk::end):
(bmalloc::LargeChunk::create):
(bmalloc::LargeChunk::get):
(bmalloc::LargeChunk::beginTag):
(bmalloc::LargeChunk::endTag):

  • bmalloc/Line.h: Added.

(bmalloc::Line<Traits>::begin):
(bmalloc::Line<Traits>::end):
(bmalloc::Line<Traits>::concurrentRef):
(bmalloc::Line<Traits>::deref):

  • bmalloc/MediumAllocator.h: Added.

(bmalloc::MediumAllocator::isNull):
(bmalloc::MediumAllocator::MediumAllocator):
(bmalloc::MediumAllocator::line):
(bmalloc::MediumAllocator::allocate):
(bmalloc::MediumAllocator::derefCount):
(bmalloc::MediumAllocator::refill):

  • bmalloc/MediumChunk.h: Added.
  • bmalloc/MediumLine.h: Added.
  • bmalloc/MediumPage.h: Added.
  • bmalloc/MediumTraits.h: Added.
  • bmalloc/Mutex.cpp: Added.

(bmalloc::Mutex::lockSlowCase):

  • bmalloc/Mutex.h: Added.

(bmalloc::Mutex::Mutex):
(bmalloc::Mutex::try_lock):
(bmalloc::Mutex::lock):
(bmalloc::Mutex::unlock):

  • bmalloc/ObjectType.cpp: Added.

(bmalloc::objectType):

  • bmalloc/ObjectType.h: Added.

(bmalloc::isSmallOrMedium):
(bmalloc::isSmall):

  • bmalloc/Page.h: Added.

(bmalloc::Page<Traits>::ref):
(bmalloc::Page<Traits>::deref):
(bmalloc::Page<Traits>::refCount):

  • bmalloc/PerProcess.h: Added.

(bmalloc::PerProcess::mutex):
(bmalloc::PerProcess<T>::getFastCase):
(bmalloc::PerProcess<T>::get):
(bmalloc::PerProcess<T>::getSlowCase):

  • bmalloc/PerThread.h: Added.

(bmalloc::PerThreadStorage<Cache>::get):
(bmalloc::PerThreadStorage<Cache>::init):
(bmalloc::PerThreadStorage::get):
(bmalloc::PerThreadStorage::init):
(bmalloc::PerThread<T>::getFastCase):
(bmalloc::PerThread<T>::get):
(bmalloc::PerThread<T>::destructor):
(bmalloc::PerThread<T>::getSlowCase):

  • bmalloc/Range.h: Added.

(bmalloc::Range::Range):
(bmalloc::Range::begin):
(bmalloc::Range::end):
(bmalloc::Range::size):
(bmalloc::Range::operator!):
(bmalloc::Range::operator<):

  • bmalloc/SegregatedFreeList.cpp: Added.

(bmalloc::SegregatedFreeList::SegregatedFreeList):
(bmalloc::SegregatedFreeList::insert):
(bmalloc::SegregatedFreeList::takeGreedy):
(bmalloc::SegregatedFreeList::take):

  • bmalloc/SegregatedFreeList.h: Added.
  • bmalloc/Sizes.h: Added.
  • bmalloc/SmallAllocator.h: Added.

(bmalloc::SmallAllocator::isNull):
(bmalloc::SmallAllocator::canAllocate):
(bmalloc::SmallAllocator::SmallAllocator):
(bmalloc::SmallAllocator::line):
(bmalloc::SmallAllocator::allocate):
(bmalloc::SmallAllocator::objectCount):
(bmalloc::SmallAllocator::derefCount):
(bmalloc::SmallAllocator::refill):

  • bmalloc/SmallChunk.h: Added.
  • bmalloc/SmallLine.h: Added.
  • bmalloc/SmallPage.h: Added.
  • bmalloc/SmallTraits.h: Added.
  • bmalloc/Syscall.h: Added.
  • bmalloc/VMAllocate.h: Added.

(bmalloc::vmSize):
(bmalloc::vmValidate):
(bmalloc::vmAllocate):
(bmalloc::vmDeallocate):
(bmalloc::vmDeallocatePhysicalPages):
(bmalloc::vmAllocatePhysicalPages):
(bmalloc::vmDeallocatePhysicalPagesSloppy):
(bmalloc::vmAllocatePhysicalPagesSloppy):

  • bmalloc/VMHeap.cpp: Added.

(bmalloc::VMHeap::VMHeap):
(bmalloc::VMHeap::allocateSmallChunk):
(bmalloc::VMHeap::allocateMediumChunk):
(bmalloc::VMHeap::allocateLargeChunk):

  • bmalloc/VMHeap.h: Added.

(bmalloc::VMHeap::allocateSmallPage):
(bmalloc::VMHeap::allocateMediumPage):
(bmalloc::VMHeap::allocateLargeRange):
(bmalloc::VMHeap::deallocateSmallPage):
(bmalloc::VMHeap::deallocateMediumPage):
(bmalloc::VMHeap::deallocateLargeRange):

  • bmalloc/Vector.h: Added.

(bmalloc::Vector::begin):
(bmalloc::Vector::end):
(bmalloc::Vector::size):
(bmalloc::Vector::capacity):
(bmalloc::Vector::last):
(bmalloc::Vector::pop):
(bmalloc::Vector<T>::Vector):
(bmalloc::Vector<T>::~Vector):
(bmalloc::Vector<T>::operator):
(bmalloc::Vector<T>::push):
(bmalloc::Vector<T>::pop):
(bmalloc::Vector<T>::shrink):
(bmalloc::Vector<T>::reallocateBuffer):
(bmalloc::Vector<T>::shrinkCapacity):
(bmalloc::Vector<T>::growCapacity):

  • bmalloc/XLargeChunk.h: Added.

(bmalloc::XLargeChunk::get):
(bmalloc::XLargeChunk::begin):
(bmalloc::XLargeChunk::XLargeChunk):
(bmalloc::XLargeChunk::create):
(bmalloc::XLargeChunk::destroy):
(bmalloc::XLargeChunk::range):
(bmalloc::XLargeChunk::size):

  • bmalloc/bmalloc.h: Added.

(bmalloc::api::malloc):
(bmalloc::api::free):
(bmalloc::api::realloc):

  • bmalloc/mbmalloc.cpp: Added.
4:51 PM Changeset in webkit [166892] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] MediaDocument should allow autoplay
https://bugs.webkit.org/show_bug.cgi?id=131301

Reviewed by Jer Noble.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Don't add the RequireUserGestureForRateChange

behavior restriction when in a MediaDocument.

4:45 PM Changeset in webkit [166891] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Web Inspector: Hang in debuggable application after receiving WIRPermissionDenied
https://bugs.webkit.org/show_bug.cgi?id=131321

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-07
Reviewed by Mark Rowe.

  • inspector/remote/RemoteInspector.mm:

(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
Avoid attempting to take the same lock twice. Move the received message
lock grab after the WIRPermissionDenied branch, which takes the lock
inside RemoteInspector::stop.

4:00 PM Changeset in webkit [166890] by mitz@apple.com
  • 11 edits
    1 add in trunk/Source/WebKit2

Add API::InjectedBundle::FormClient
https://bugs.webkit.org/show_bug.cgi?id=131317

Reviewed by Anders Carlsson.

  • WebKit2.xcodeproj/project.pbxproj: Added reference to new file.
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageSetFormClient):

  • WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Changed to define and
create a FormClient (which derives from API::InjectedBundle::FormClient and messages a
delegate), and set it as the form client.
(didFocusTextField): Deleted.
(willSubmitForm): Deleted.
(setUpFormClient): Deleted.

  • WebProcess/InjectedBundle/APIInjectedBundleFormClient.h: Added.

(API::InjectedBundle::FormClient::~FormClient):
(API::InjectedBundle::FormClient::didFocusTextField):
(API::InjectedBundle::FormClient::textFieldDidBeginEditing):
(API::InjectedBundle::FormClient::textFieldDidEndEditing):
(API::InjectedBundle::FormClient::textDidChangeInTextField):
(API::InjectedBundle::FormClient::textDidChangeInTextArea):
(API::InjectedBundle::FormClient::shouldPerformActionInTextField):
(API::InjectedBundle::FormClient::willSubmitForm):
(API::InjectedBundle::FormClient::willSendSubmitEvent):
(API::InjectedBundle::FormClient::didAssociateFormControls):
(API::InjectedBundle::FormClient::shouldNotifyOnFormChanges):

  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:

(WebKit::InjectedBundlePageFormClient::InjectedBundlePageFormClient): Added a constructor
from WKBundlePageFormClientBase.
(WebKit::toWKInputFieldActionType): Added helper to convert from internal enum to C SPI
enum.
(WebKit::InjectedBundlePageFormClient::shouldPerformActionInTextField): Use helper.

  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.h: Added inheritance from

API::InjectedBundle::FormClient, marked overrides as such.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Removed unused forward

declarations.

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::toInputFieldAction): Added helper to convert from C SPI enum to internal enum.
(WebKit::WebEditorClient::doTextFieldCommandFromEvent): Use helper.
(WebKit::WebEditorClient::textWillBeDeletedInTextField): Ditto.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialize m_formClient member.
(WebKit::WebPage::setInjectedBundleFormClient): Added. Updates m_formClient.
(WebKit::WebPage::close): Updated code to clear m_formClient.
(WebKit::WebPage::initializeInjectedBundleFormClient): Deleted.

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::injectedBundleFormClient): Updated return type.

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

Move to using std::unique_ptr for opengl, texmap, transforms and efl in WebCore/platform/graphics.
https://bugs.webkit.org/show_bug.cgi?id=131276

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-07
Reviewed by Darin Adler.

Source/WebCore:

Replace uses of OwnPtr and PassOwnPtr in code under WebCore/platform/graphics/
opengl, texmap, transforms and efl with std::unique_ptr.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::initializeNewContext):

  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::create): Deleted.

  • platform/graphics/GraphicsContext3DPrivate.h:
  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::setErrorMessageCallback):

  • platform/graphics/efl/EvasGLContext.h:
  • platform/graphics/efl/EvasGLSurface.h:
  • platform/graphics/efl/GraphicsContext3DEfl.cpp:

(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::setErrorMessageCallback):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::create):
(WebCore::GraphicsContext3DPrivate::setContextLostCallback):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:
  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::setErrorMessageCallback):

  • platform/graphics/opengl/Extensions3DOpenGLES.cpp:

(WebCore::Extensions3DOpenGLES::setEXTContextLostCallback):

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

(WebCore::createOffScreenContext):
(WebCore::GLPlatformContext::createContext):

  • platform/graphics/opengl/GLPlatformContext.h:
  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore::GLPlatformSurface::createOffScreenSurface):

  • platform/graphics/opengl/GLPlatformSurface.h:
  • platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp:
  • platform/graphics/surfaces/egl/EGLSurface.cpp:

(WebCore::EGLOffScreenSurface::createOffScreenSurface):

  • platform/graphics/surfaces/egl/EGLSurface.h:
  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:
  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::create):
(WebCore::TextureMapper::TextureMapper):

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::TextureMapper::platformCreateAccelerated):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapper::platformCreateAccelerated):

  • platform/graphics/texmap/TextureMapperGL.h:

(WebCore::TextureMapperGL::create): Deleted.

  • platform/graphics/texmap/TextureMapperImageBuffer.h:

(WebCore::TextureMapperImageBuffer::TextureMapperImageBuffer):
(WebCore::TextureMapperImageBuffer::create): Deleted.

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

(WebCore::CoordinatedGraphicsScene::purgeGLResources):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
  • platform/graphics/transforms/TransformState.cpp:

(WebCore::TransformState::operator=):
(WebCore::TransformState::applyTransform):

  • platform/graphics/transforms/TransformState.h:
  • platform/graphics/win/GraphicsContext3DWin.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::setErrorMessageCallback):

Source/WebKit/efl:

Replace uses of OwnPtr for TextureMapper in AcceleratedCompositingContextEfl with std::unique_ptr.

  • WebCoreSupport/AcceleratedCompositingContextEfl.h:

Source/WebKit/gtk:

Replace uses of OwnPtr for TextureMapper in AcceleratedCompositingContext with std::unique_ptr.

  • WebCoreSupport/AcceleratedCompositingContext.h:

Source/WebKit2:

Replace uses of OwnPtr for TextureMapper in LayerTreeHostGtk with std::unique_ptr.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
3:11 PM Changeset in webkit [166888] by Joseph Pecoraro
  • 7 edits in trunk/Source/WebKit2

Make Mac only parts of TelephoneNumberOverlayController PLATFORM(MAC).

Unreviewed build fix for r166881.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::showTelephoneNumberMenu): Deleted.

  • WebProcess/WebPage/TelephoneNumberOverlayController.cpp:

(WebKit::TelephoneNumberOverlayController::drawRect):
(WebKit::TelephoneNumberOverlayController::mouseEvent):

  • WebProcess/WebPage/TelephoneNumberOverlayController.h:
  • WebProcess/WebPage/mac/TelephoneNumberOverlayControllerMac.mm:
2:55 PM Changeset in webkit [166887] by zandobersek@gmail.com
  • 4 edits in trunk/Source/WebKit2

Unreviewed. Fixing the GTK build.

  • WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp: Include the Document header from WebCore

to avoid operating on an incomplete type.

  • WebProcess/WebPage/TapHighlightController.cpp: Include the RenderElement instead of RenderObject

to make the RenderObject::style() inline accessible.

  • WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp: Include the Document header from WebCore
2:23 PM Changeset in webkit [166886] by timothy_horton@apple.com
  • 17 edits
    2 adds in trunk/Source

[iOS WebKit2] Make back-buffers purgeable when possible
https://bugs.webkit.org/show_bug.cgi?id=131213
<rdar://problem/15373906>

Reviewed by Simon Fraser.

We should make back-buffers volatile when their owning
layer falls out of use (either stops being repainted or
is unparented), as they are inherently recreatable.

  • Shared/mac/RemoteLayerBackingStore.h:

(WebKit::RemoteLayerBackingStore::volatility):
(WebKit::RemoteLayerBackingStore::lastDisplayTime):
Add storage and a getter for the backing store's last paint time.
Add setter/getter for volatility of backing store.
Add RemoteLayerTreeContext param to constructor.

  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::RemoteLayerBackingStore):
(WebKit::RemoteLayerBackingStore::~RemoteLayerBackingStore):
Inform the RemoteLayerTreeContext when backing store
is created and destroyed. Since we only have a Context in
the Web process, this will only happen there.

(WebKit::RemoteLayerBackingStore::encode):
(WebKit::RemoteLayerBackingStore::decode):
Move some assertions out of #else blocks which are preceded by returns.

(WebKit::RemoteLayerBackingStore::display):
Update the last display time.
If the backing store was volatile, make it non-volatile.

(WebKit::RemoteLayerBackingStore::setVolatility):
Mark the relevant surfaces as volatile or not.
setVolatility:

  • fails and returns false if any surfaces weren't marked volatile because they were in use
  • marks the whole backing store for repaint if the front surface was purged
  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
Make it possible to remove the RemoteLayerBackingStore on layers
that went from drawing contents to not drawing contents.

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewSnapshotStore.mm:

(WebKit::ViewSnapshotStore::recordSnapshot):
Adopt the new names from WebCore.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
Clear the backing store if the layer doesn't want to draw contents anymore.

(WebKit::PlatformCALayerRemote::ensureBackingStore):

  • WebProcess/WebPage/mac/RemoteLayerTreeContext.h:

(WebKit::RemoteLayerTreeContext::backingStoreCollection):

  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

(WebKit::RemoteLayerTreeContext::RemoteLayerTreeContext):
(WebKit::RemoteLayerTreeContext::backingStoreWasCreated):
(WebKit::RemoteLayerTreeContext::backingStoreWillBeDestroyed):
Keep a RemoteLayerBackingStoreCollection, which just keeps track
of all backing store (even unparented) created for layers in a
particular context. Forward backing store creation/deletion to it.
Remove a unused m_rootLayer member.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
If any layers had backing store changes, start the timer
on the RemoteLayerBackingStoreCollection that will mark them
purgeable once they are no longer needed.

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

Keep track of all backing store for our context.
When the timer fires, run through the backing store, finding
backing store that was last painted more than 1 second ago,
and mark them purgeable. If there was more recently-painted
backing store, let the timer fire again in another second;
otherwise, stop it.

  • WebCore.exp.in:
  • platform/graphics/cg/IOSurfacePool.cpp:

(WebCore::IOSurfacePool::takeSurface):
(WebCore::IOSurfacePool::markOlderSurfacesPurgeable):
(WebCore::IOSurfacePool::showPoolStatistics):

  • platform/graphics/cocoa/IOSurface.h:
  • platform/graphics/cocoa/IOSurface.mm:

(IOSurface::isVolatile):
(IOSurface::setIsVolatile):
Rename purgeability functions to match the system
and reduce confusion between purgeable memory
and volatile vs. non-volatile memory.

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

Make it possible to disable some of the FTL's more interesting features
https://bugs.webkit.org/show_bug.cgi?id=131312

Reviewed by Mark Hahnenberg.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::handlePutById):
(JSC::DFG::ByteCodeParser::parse):

  • runtime/Options.h:
1:34 PM Changeset in webkit [166884] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

Another build fix after r166879.

  • WebProcess/WebPage/mac/WebPageMac.mm:
1:26 PM Changeset in webkit [166883] by benjamin@webkit.org
  • 17 edits in trunk/Source/WebCore

Split CSS Selectors pseudo class and pseudo elements
https://bugs.webkit.org/show_bug.cgi?id=131295

Reviewed by Andreas Kling.

Split pseudo class and pseudo element to make it clearer what pseudo types
are possible for a given match type.

Pseudo Element types are separated and Pseudo Class are left in place. The Pseudo Class
will have to be renamed too but that will be done separately to make this change smaller.

  • css/CSSGrammar.y.in:
  • css/CSSParser.cpp:

(WebCore::CSSParser::rewriteSpecifiersWithElementName):
(WebCore::CSSParser::rewriteSpecifiers):
Use a method isPseudoElementCueFunction() to abstract the #ifdef out of the parser.

  • css/CSSParserValues.cpp:

(WebCore::CSSParserSelector::parsePseudoElementSelector):

(WebCore::CSSParserSelector::parsePseudoElementCueFunctionSelector):
Rename to specify this is for the pseudo element cue function, not the pseudo element cue.

(WebCore::CSSParserSelector::parsePseudoClassAndCompatibilityElementSelector):
(WebCore::CSSParserSelector::parsePseudoCueFunctionSelector): Deleted.

  • css/CSSParserValues.h:

(WebCore::CSSParserSelector::isPseudoElementCueFunction):

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::specificityForOneSelector):
(WebCore::CSSSelector::pseudoId):
(WebCore::CSSSelector::parsePseudoElementType):
(WebCore::CSSSelector::operator==):

  • css/CSSSelector.h:

(WebCore::CSSSelector::pseudoType):
(WebCore::CSSSelector::setPseudoElementType):
(WebCore::CSSSelector::pseudoElementType):
(WebCore::CSSSelector::isUnknownPseudoElement):
(WebCore::CSSSelector::isCustomPseudoElement):
(WebCore::pseudoClassIsRelativeToSiblings):
(WebCore::CSSSelector::isSiblingSelector):

  • css/RuleFeature.cpp:

(WebCore::RuleFeatureSet::collectFeaturesFromSelector):

  • css/RuleSet.cpp:

(WebCore::determinePropertyWhitelistType):
(WebCore::RuleSet::findBestRuleSetAndAdd):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::matchRecursively):
(WebCore::SelectorChecker::checkOne):
(WebCore::SelectorChecker::checkScrollbarPseudoClass):
(WebCore::SelectorChecker::determineLinkMatchType):

  • css/SelectorPseudoClassAndCompatibilityElementMap.in:
  • css/SelectorPseudoElementTypeMap.in:
  • css/SelectorPseudoTypeMap.h:
  • css/makeSelectorPseudoClassAndCompatibilityElementMap.py:
  • css/makeSelectorPseudoElementsMap.py:

(enumerablePseudoType):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::getMatchedCSSRules):

  • rendering/style/RenderStyleConstants.h:

All the fullscreen pseudo types are pseudo class selectors. They should not have a pseudo ID.

1:20 PM Changeset in webkit [166882] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Tried to fix the Mac build.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:
1:08 PM WebKitGTK/KeepingTheTreeGreen edited by Diego Pino Garcia
(diff)
1:05 PM Changeset in webkit [166881] by beidson@apple.com
  • 14 edits in trunk/Source/WebKit2

Handle clicks on DataDetectors UI for scanned phone numbers
<rdar://problem/16379588> and https://bugs.webkit.org/show_bug.cgi?id=131309

Reviewed by Tim Horton.

WebContextMenuItemDatas never need to know about a ContextMenu, so remove that concept.
Also add the concept of a selection handler for UIProcess-native menu items.

  • Shared/WebContextMenuItemData.cpp:

(WebKit::WebContextMenuItemData::WebContextMenuItemData):
(WebKit::WebContextMenuItemData::encode):
(WebKit::kitItems):
(WebKit::WebContextMenuItemData::decode):

  • Shared/WebContextMenuItemData.h:

(WebKit::WebContextMenuItemData::selectionHandler):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::showContextMenu):
(WebKit::WebPageProxy::internalShowContextMenu): Make the decoder argument optional. Make consulting the client optional.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::showTelephoneNumberMenu):

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(-[WKSelectionHandlerWrapper initWithSelectionHandler:std::]):
(-[WKSelectionHandlerWrapper executeSelectionHandler]):
(-[WKMenuTarget forwardContextMenuAction:]):
(WebKit::nsMenuItemVector):
(WebKit::WebContextMenuProxyMac::contextMenuItemSelected): If the represented object is a WKSelectionHandlerWrapper,

execute the selection handler. Do nothing else.

Instead of getting rects from ranges, creating highlights, and storing those highlights,
work in terms of a TelephoneNumberData object that wraps both a range and a highlight.
This makes it easier to track where the mouse is down and to know what phone number we should act on when clicked.

  • WebProcess/WebPage/TelephoneNumberOverlayController.cpp:

(WebKit::TelephoneNumberOverlayController::rectsForDrawing): Deleted.

  • WebProcess/WebPage/TelephoneNumberOverlayController.h:

(WebKit::TelephoneNumberData::create):
(WebKit::TelephoneNumberData::range):
(WebKit::TelephoneNumberData::highlight):
(WebKit::TelephoneNumberData::TelephoneNumberData):

  • WebProcess/WebPage/mac/TelephoneNumberOverlayControllerMac.mm:

(WebKit::TelephoneNumberOverlayController::drawRect):
(WebKit::TelephoneNumberOverlayController::handleTelephoneClick): Pass the phone number text and the point to WebPage.
(WebKit::TelephoneNumberOverlayController::mouseEvent):
(WebKit::TelephoneNumberOverlayController::clearMouseDownInformation):
(WebKit::TelephoneNumberOverlayController::clearHighlights):

  • WebProcess/WebPage/WebContextMenu.cpp:

(WebKit::WebContextMenu::menuItemsWithUserData):

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

(WebKit::WebPage::handleTelephoneNumberClick): Message the phone number and coordinate to the UIProcess.

12:58 PM Changeset in webkit [166880] by Brian Burg
  • 12 edits
    1 add in trunk/Source/WebCore

Web Replay: detect possible replay divergence from unexpected DOM event dispatches
https://bugs.webkit.org/show_bug.cgi?id=131193

Reviewed by Andreas Kling.

Add assertions to catch potential nondeterministic behavior.

The assertion added by this patch catches dispatched DOM events
that are triggered by nondeterministic event loop cycles. If we
did not capture an event loop input in the current event loop
cycle nor are we manually simulating an event loop input during
playback, then DOM events fired during the unordered cycle could
run JavaScript and diverge the execution.

During playback, we can assert that EventLoopInputDispatcher is dispatching
when a DOM event is be dispatched to a document that is being replayed.

During capturing, event loop inputs are captured rather than
dispatched, so we add some accounting to track what caused a DOM
event. To approximate the extent of computation triggered by an
event loop input, we add RAII helpers to call sites where event
loop inputs are captured.

The assertions are disabled by default until the most common
sources of nondeterminism are handled and playback errors are
gracefully surfaced to the user. <https://webkit.org/b/131279>

No new tests. This patch adds extra assertions for debugging purposes.

  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorInstrumentation.cpp: Notify ReplayAgent of dispatched DOM event.

(WebCore::InspectorInstrumentation::willDispatchEventImpl):
(WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):

  • inspector/InspectorReplayAgent.cpp: Forward dispatched DOM events to ReplayController.

(WebCore::InspectorReplayAgent::willDispatchEvent): Added.

  • inspector/InspectorReplayAgent.h:
  • replay/CapturingInputCursor.cpp:

(WebCore::CapturingInputCursor::CapturingInputCursor):
(WebCore::CapturingInputCursor::setWithinEventLoopInputExtent): Added.

  • replay/CapturingInputCursor.h:
  • replay/EventLoopInput.cpp: Added.

(WebCore::EventLoopInputExtent::EventLoopInputExtent): Added.
(WebCore::EventLoopInputExtent::~EventLoopInputExtent): Added.

  • replay/EventLoopInput.h:
  • replay/EventLoopInputDispatcher.h:

(WebCore::EventLoopInputDispatcher::isDispatching): Add a getter.

  • replay/ReplayController.cpp:

(WebCore::logDispatchedDOMEvent): Added. This is useful for understanding script-visible events.
(WebCore::ReplayController::willDispatchEvent): Added.

  • replay/ReplayController.h:
  • replay/UserInputBridge.cpp: Add extent helpers to call sites that capture inputs.

(WebCore::UserInputBridge::handleMousePressEvent):
(WebCore::UserInputBridge::handleMouseReleaseEvent):
(WebCore::UserInputBridge::handleMouseMoveEvent):
(WebCore::UserInputBridge::handleMouseMoveOnScrollbarEvent):
(WebCore::UserInputBridge::handleKeyEvent):
(WebCore::UserInputBridge::handleWheelEvent):
(WebCore::UserInputBridge::scrollRecursively):
(WebCore::UserInputBridge::logicalScrollRecursively):

12:44 PM Changeset in webkit [166879] by mitz@apple.com
  • 11 edits
    1 add in trunk/Source/WebKit2

Introduce API::InjectedBundle::PageUIClient
https://bugs.webkit.org/show_bug.cgi?id=131310

Reviewed by Anders Carlsson.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files.
  • WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp: Added #include that

became necessary.

  • WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h: Added.

(API::InjectedBundle::PageUIClient::~PageUIClient):
(API::InjectedBundle::PageUIClient::willAddMessageToConsole):
(API::InjectedBundle::PageUIClient::willSetStatusbarText):
(API::InjectedBundle::PageUIClient::willRunJavaScriptAlert):
(API::InjectedBundle::PageUIClient::willRunJavaScriptConfirm):
(API::InjectedBundle::PageUIClient::willRunJavaScriptPrompt):
(API::InjectedBundle::PageUIClient::mouseDidMoveOverElement):
(API::InjectedBundle::PageUIClient::pageDidScroll):
(API::InjectedBundle::PageUIClient::shouldGenerateFileForUpload):
(API::InjectedBundle::PageUIClient::generateFileForUpload):
(API::InjectedBundle::PageUIClient::statusBarIsVisible):
(API::InjectedBundle::PageUIClient::menuBarIsVisible):
(API::InjectedBundle::PageUIClient::toolbarsAreVisible):
(API::InjectedBundle::PageUIClient::didReachApplicationCacheOriginQuota):
(API::InjectedBundle::PageUIClient::didExceedDatabaseQuota):
(API::InjectedBundle::PageUIClient::plugInStartLabelTitle):
(API::InjectedBundle::PageUIClient::plugInStartLabelSubtitle):
(API::InjectedBundle::PageUIClient::plugInExtraStyleSheet):
(API::InjectedBundle::PageUIClient::plugInExtraScript):

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

(WKBundlePageSetUIClient): Changed to create an InjectedBundlePageUIClient and set it on
the WebPage.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::InjectedBundlePageUIClient): Added constructor from
WKBundlePageUIClient.
(WebKit::toUIElementVisibility): Added helper to convert from C SPI enum to internal enum.
(WebKit::InjectedBundlePageUIClient::statusBarIsVisible): Changed to use the above.
(WebKit::InjectedBundlePageUIClient::menuBarIsVisible): Ditto.
(WebKit::InjectedBundlePageUIClient::toolbarsAreVisible): Ditto.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Added inheritance from

API::InjectedBundle::PageUIClient, marked overrides as such.

  • WebProcess/Storage/StorageAreaMap.cpp: Added #include that became necessary.
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::toolbarsVisible): Updated to use new internal enum.
(WebKit::WebChromeClient::statusbarVisible): Ditto.
(WebKit::WebChromeClient::menubarVisible): Ditto.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialized m_uiClient member.
(WebKit::WebPage::setInjectedBundleUIClient): Added. Updates m_uiClient.
(WebKit::WebPage::close): Updated for change in m_uiClient.
(WebKit::WebPage::pageDidScroll): Ditto.
(WebKit::WebPage::initializeInjectedBundleUIClient): Deleted.

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::injectedBundleUIClient): Updated return type.

  • WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm: Added #include that became

necessary.

12:37 PM WebKitGTK/KeepingTheTreeGreen edited by Adrian Perez de Castro
(diff)
12:37 PM Changeset in webkit [166878] by timothy@apple.com
  • 2 edits
    1 delete in trunk/Source/WebCore

Remove copy of combine-javascript-resources.pl that isn't used anymore
https://bugs.webkit.org/show_bug.cgi?id=131307

Reviewed by Joseph Pecoraro.

  • WebCore.xcodeproj/project.pbxproj:
  • inspector/combine-javascript-resources.pl: Removed.
11:45 AM Changeset in webkit [166877] by fpizlo@apple.com
  • 214 edits
    53 moves
    2 adds in trunk

Move slow JSRegress tests out of the way so that they don't show up in run-jsc-benchmarks runs and also skip tests that are extremely long-running
https://bugs.webkit.org/show_bug.cgi?id=130951

Reviewed by Geoffrey Garen.

Tools:

  • Scripts/run-javascriptcore-tests:

LayoutTests:

  • js/regress/ArrayBuffer-DataView-alloc-large-long-lived.html:
  • js/regress/ArrayBuffer-DataView-alloc-long-lived.html:
  • js/regress/ArrayBuffer-Int32Array-byteOffset.html:
  • js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt: Removed.
  • js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html: Removed.
  • js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented-expected.txt: Removed.
  • js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.html: Removed.
  • js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived.html:
  • js/regress/ArrayBuffer-Int8Array-alloc-long-lived-buffer.html:
  • js/regress/ArrayBuffer-Int8Array-alloc-long-lived.html:
  • js/regress/ArrayBuffer-Int8Array-alloc.html:
  • js/regress/DataView-custom-properties.html:
  • js/regress/Float32Array-matrix-mult.html:
  • js/regress/Float32Array-to-Float64Array-set.html:
  • js/regress/Float64Array-alloc-long-lived.html:
  • js/regress/Float64Array-to-Int16Array-set.html:
  • js/regress/HashMap-put-get-iterate-keys.html:
  • js/regress/HashMap-put-get-iterate.html:
  • js/regress/HashMap-string-put-get-iterate.html:
  • js/regress/Int16Array-alloc-long-lived.html:
  • js/regress/Int16Array-bubble-sort-with-byteLength.html:
  • js/regress/Int16Array-bubble-sort.html:
  • js/regress/Int16Array-load-int-mul.html:
  • js/regress/Int16Array-to-Int32Array-set.html:
  • js/regress/Int32Array-Int8Array-view-alloc.html:
  • js/regress/Int32Array-alloc-huge-expected.txt: Removed.
  • js/regress/Int32Array-alloc-huge-long-lived-expected.txt: Removed.
  • js/regress/Int32Array-alloc-huge-long-lived.html: Removed.
  • js/regress/Int32Array-alloc-huge.html: Removed.
  • js/regress/Int32Array-alloc-large-long-lived-expected.txt: Removed.
  • js/regress/Int32Array-alloc-large-long-lived.html: Removed.
  • js/regress/Int32Array-alloc-large.html:
  • js/regress/Int32Array-alloc-long-lived.html:
  • js/regress/Int32Array-alloc.html:
  • js/regress/Int8Array-alloc-long-lived.html:
  • js/regress/Int8Array-load-with-byteLength.html:
  • js/regress/Int8Array-load.html:
  • js/regress/adapt-to-double-divide.html:
  • js/regress/aliased-arguments-getbyval.html:
  • js/regress/allocate-big-object.html:
  • js/regress/arity-mismatch-inlining.html:
  • js/regress/array-access-polymorphic-structure.html:
  • js/regress/array-nonarray-polymorhpic-access.html:
  • js/regress/array-nonarray-polymorphic-access.html:
  • js/regress/array-prototype-every.html:
  • js/regress/array-prototype-filter-expected.txt: Removed.
  • js/regress/array-prototype-filter.html: Removed.
  • js/regress/array-prototype-forEach.html:
  • js/regress/array-prototype-map.html:
  • js/regress/array-prototype-some.html:
  • js/regress/array-with-double-add.html:
  • js/regress/array-with-double-increment.html:
  • js/regress/array-with-double-mul-add.html:
  • js/regress/array-with-double-sum.html:
  • js/regress/array-with-int32-add-sub.html:
  • js/regress/array-with-int32-or-double-sum.html:
  • js/regress/asmjs_bool_bug.html:
  • js/regress/assign-custom-setter-polymorphic.html:
  • js/regress/assign-custom-setter.html:
  • js/regress/basic-set.html:
  • js/regress/big-int-mul.html:
  • js/regress/boolean-test.html:
  • js/regress/branch-fold.html:
  • js/regress/by-val-generic.html:
  • js/regress/call-spread-apply.html:
  • js/regress/call-spread-call.html:
  • js/regress/call-spread-expected.txt: Removed.
  • js/regress/call-spread.html: Removed.
  • js/regress/captured-assignments.html:
  • js/regress/cast-int-to-double.html:
  • js/regress/cell-argument.html:
  • js/regress/cfg-simplify.html:
  • js/regress/chain-custom-getter-expected.txt: Removed.
  • js/regress/chain-custom-getter.html: Removed.
  • js/regress/chain-getter-access.html:
  • js/regress/cmpeq-obj-to-obj-other.html:
  • js/regress/constant-test.html:
  • js/regress/delay-tear-off-arguments-strictmode.html:
  • js/regress/destructuring-arguments-length-expected.txt: Removed.
  • js/regress/destructuring-arguments-length.html: Removed.
  • js/regress/destructuring-arguments.html:
  • js/regress/destructuring-swap.html:
  • js/regress/direct-arguments-getbyval.html:
  • js/regress/double-get-by-val-out-of-bounds.html:
  • js/regress/double-pollution-getbyval.html:
  • js/regress/double-pollution-putbyoffset.html:
  • js/regress/double-to-int32-typed-array-no-inline.html:
  • js/regress/double-to-int32-typed-array.html:
  • js/regress/double-to-uint32-typed-array-no-inline.html:
  • js/regress/double-to-uint32-typed-array.html:
  • js/regress/empty-string-plus-int.html:
  • js/regress/emscripten-cube2hash.html:
  • js/regress/emscripten-memops-expected.txt: Removed.
  • js/regress/emscripten-memops.html: Removed.
  • js/regress/external-arguments-getbyval.html:
  • js/regress/external-arguments-putbyval.html:
  • js/regress/fixed-typed-array-storage-var-index.html:
  • js/regress/fixed-typed-array-storage.html:
  • js/regress/fold-double-to-int.html:
  • js/regress/fold-strict-eq-expected.txt: Removed.
  • js/regress/fold-strict-eq.html: Removed.
  • js/regress/for-of-iterate-array-entries.html:
  • js/regress/for-of-iterate-array-keys.html:
  • js/regress/for-of-iterate-array-values.html:
  • js/regress/function-dot-apply.html:
  • js/regress/function-test.html:
  • js/regress/function-with-eval.html:
  • js/regress/get-by-id-chain-from-try-block.html:
  • js/regress/get-by-id-proto-or-self.html:
  • js/regress/get-by-id-self-or-proto.html:
  • js/regress/get-by-val-out-of-bounds.html:
  • js/regress/get_callee_monomorphic.html:
  • js/regress/get_callee_polymorphic.html:
  • js/regress/getter.html:
  • js/regress/global-var-const-infer-fire-from-opt.html:
  • js/regress/global-var-const-infer.html:
  • js/regress/imul-double-only.html:
  • js/regress/imul-int-only.html:
  • js/regress/imul-mixed.html:
  • js/regress/in-four-cases.html:
  • js/regress/in-one-case-false.html:
  • js/regress/in-one-case-true.html:
  • js/regress/in-two-cases.html:
  • js/regress/indexed-properties-in-objects.html:
  • js/regress/infer-closure-const-then-mov-no-inline.html:
  • js/regress/infer-closure-const-then-mov.html:
  • js/regress/infer-closure-const-then-put-to-scope-no-inline.html:
  • js/regress/infer-closure-const-then-put-to-scope.html:
  • js/regress/infer-closure-const-then-reenter-no-inline.html:
  • js/regress/infer-closure-const-then-reenter.html:
  • js/regress/infer-one-time-closure-ten-vars.html:
  • js/regress/infer-one-time-closure-two-vars.html:
  • js/regress/infer-one-time-closure.html:
  • js/regress/infer-one-time-deep-closure.html:
  • js/regress/inline-arguments-access.html:
  • js/regress/inline-arguments-aliased-access.html:
  • js/regress/inline-arguments-local-escape.html:
  • js/regress/inline-get-scoped-var.html:
  • js/regress/inlined-put-by-id-transition.html:
  • js/regress/int-or-other-abs-then-get-by-val.html:
  • js/regress/int-or-other-abs-zero-then-get-by-val.html:
  • js/regress/int-or-other-add-then-get-by-val.html:
  • js/regress/int-or-other-add.html:
  • js/regress/int-or-other-div-then-get-by-val.html:
  • js/regress/int-or-other-max-then-get-by-val.html:
  • js/regress/int-or-other-min-then-get-by-val.html:
  • js/regress/int-or-other-mod-then-get-by-val.html:
  • js/regress/int-or-other-mul-then-get-by-val.html:
  • js/regress/int-or-other-neg-then-get-by-val.html:
  • js/regress/int-or-other-neg-zero-then-get-by-val.html:
  • js/regress/int-or-other-sub-then-get-by-val.html:
  • js/regress/int-or-other-sub.html:
  • js/regress/int-overflow-local.html:
  • js/regress/int52-spill.html:
  • js/regress/integer-divide.html:
  • js/regress/integer-modulo.html:
  • js/regress/large-int-captured.html:
  • js/regress/large-int-neg.html:
  • js/regress/large-int.html:
  • js/regress/logical-not.html:
  • js/regress/lots-of-fields.html:
  • js/regress/make-indexed-storage.html:
  • js/regress/make-rope-cse.html:
  • js/regress/marsaglia-expected.txt: Removed.
  • js/regress/marsaglia-larger-ints.html:
  • js/regress/marsaglia-osr-entry.html:
  • js/regress/marsaglia.html: Removed.
  • js/regress/method-on-number.html:
  • js/regress/misc-strict-eq.html:
  • js/regress/negative-zero-divide.html:
  • js/regress/negative-zero-modulo.html:
  • js/regress/negative-zero-negate.html:
  • js/regress/nested-function-parsing-random-expected.txt: Removed.
  • js/regress/nested-function-parsing-random.html: Removed.
  • js/regress/nested-function-parsing.html:
  • js/regress/new-array-buffer-dead.html:
  • js/regress/new-array-buffer-push.html:
  • js/regress/new-array-dead.html:
  • js/regress/new-array-push.html:
  • js/regress/new-spread-expected.txt: Removed.
  • js/regress/new-spread.html: Removed.
  • js/regress/number-test.html:
  • js/regress/object-closure-call.html:
  • js/regress/object-test.html:
  • js/regress/poly-stricteq.html:
  • js/regress/polymorphic-get-by-id.html:
  • js/regress/polymorphic-put-by-id.html:
  • js/regress/polymorphic-structure.html:
  • js/regress/polyvariant-monomorphic-get-by-id.html:
  • js/regress/proto-custom-getter-expected.txt: Removed.
  • js/regress/proto-custom-getter.html: Removed.
  • js/regress/proto-getter-access.html:
  • js/regress/put-by-id.html:
  • js/regress/put-by-val-large-index-blank-indexing-type.html:
  • js/regress/put-by-val-machine-int.html:
  • js/regress/rare-osr-exit-on-local.html:
  • js/regress/register-pressure-from-osr.html:
  • js/regress/resources/regress-post.js: Removed.
  • js/regress/resources/regress-pre.js: Removed.
  • js/regress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js: Removed.
  • js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.js: Removed.
  • js/regress/script-tests/Int32Array-alloc-huge-long-lived.js: Removed.
  • js/regress/script-tests/Int32Array-alloc-huge.js: Removed.
  • js/regress/script-tests/Int32Array-alloc-large-long-lived.js: Removed.
  • js/regress/script-tests/array-prototype-filter.js: Removed.
  • js/regress/script-tests/call-spread.js: Removed.
  • js/regress/script-tests/chain-custom-getter.js: Removed.
  • js/regress/script-tests/destructuring-arguments-length.js: Removed.
  • js/regress/script-tests/emscripten-memops.js: Removed.
  • js/regress/script-tests/fold-strict-eq.js: Removed.
  • js/regress/script-tests/marsaglia.js: Removed.
  • js/regress/script-tests/nested-function-parsing-random.js: Removed.
  • js/regress/script-tests/new-spread.js: Removed.
  • js/regress/script-tests/proto-custom-getter.js: Removed.
  • js/regress/script-tests/simple-custom-getter.js: Removed.
  • js/regress/script-tests/variadic-closure-call.js: Removed.
  • js/regress/simple-activation-demo.html:
  • js/regress/simple-custom-getter-expected.txt: Removed.
  • js/regress/simple-custom-getter.html: Removed.
  • js/regress/simple-getter-access.html:
  • js/regress/slow-array-profile-convergence.html:
  • js/regress/slow-convergence.html:
  • js/regress/sparse-conditional.html:
  • js/regress/splice-to-remove.html:
  • js/regress/string-char-code-at.html:
  • js/regress/string-concat-object.html:
  • js/regress/string-concat-pair-object.html:
  • js/regress/string-concat-pair-simple.html:
  • js/regress/string-concat-simple.html:
  • js/regress/string-cons-repeat.html:
  • js/regress/string-cons-tower.html:
  • js/regress/string-equality.html:
  • js/regress/string-get-by-val-big-char.html:
  • js/regress/string-get-by-val-out-of-bounds-insane.html:
  • js/regress/string-get-by-val-out-of-bounds.html:
  • js/regress/string-get-by-val.html:
  • js/regress/string-hash.html:
  • js/regress/string-long-ident-equality.html:
  • js/regress/string-repeat-arith.html:
  • js/regress/string-sub.html:
  • js/regress/string-test.html:
  • js/regress/string-var-equality.html:
  • js/regress/structure-hoist-over-transitions.html:
  • js/regress/switch-char-constant.html:
  • js/regress/switch-char.html:
  • js/regress/switch-constant.html:
  • js/regress/switch-string-basic-big-var.html:
  • js/regress/switch-string-basic-big.html:
  • js/regress/switch-string-basic-var.html:
  • js/regress/switch-string-basic.html:
  • js/regress/switch-string-big-length-tower-var.html:
  • js/regress/switch-string-length-tower-var.html:
  • js/regress/switch-string-length-tower.html:
  • js/regress/switch-string-short.html:
  • js/regress/switch.html:
  • js/regress/tear-off-arguments-simple.html:
  • js/regress/tear-off-arguments.html:
  • js/regress/temporal-structure.html:
  • js/regress/to-int32-boolean.html:
  • js/regress/undefined-test.html:
  • js/regress/unprofiled-licm.html:
  • js/regress/variadic-closure-call-expected.txt: Removed.
  • js/regress/variadic-closure-call.html: Removed.
  • js/regress/weird-inlining-const-prop.html:
  • js/slow-stress: Added.
  • js/slow-stress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt: Copied from LayoutTests/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt.
  • js/slow-stress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html: Copied from LayoutTests/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html.
  • js/slow-stress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented-expected.txt: Copied from LayoutTests/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented-expected.txt.
  • js/slow-stress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.html: Copied from LayoutTests/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.html.
  • js/slow-stress/Int32Array-alloc-huge-expected.txt: Copied from LayoutTests/js/regress/Int32Array-alloc-huge-expected.txt.
  • js/slow-stress/Int32Array-alloc-huge-long-lived-expected.txt: Copied from LayoutTests/js/regress/Int32Array-alloc-huge-long-lived-expected.txt.
  • js/slow-stress/Int32Array-alloc-huge-long-lived.html: Copied from LayoutTests/js/regress/Int32Array-alloc-huge-long-lived.html.
  • js/slow-stress/Int32Array-alloc-huge.html: Copied from LayoutTests/js/regress/Int32Array-alloc-huge.html.
  • js/slow-stress/Int32Array-alloc-large-long-lived-expected.txt: Copied from LayoutTests/js/regress/Int32Array-alloc-large-long-lived-expected.txt.
  • js/slow-stress/Int32Array-alloc-large-long-lived.html: Copied from LayoutTests/js/regress/Int32Array-alloc-large-long-lived.html.
  • js/slow-stress/array-prototype-filter-expected.txt: Copied from LayoutTests/js/regress/array-prototype-filter-expected.txt.
  • js/slow-stress/array-prototype-filter.html: Copied from LayoutTests/js/regress/array-prototype-filter.html.
  • js/slow-stress/call-spread-expected.txt: Copied from LayoutTests/js/regress/call-spread-expected.txt.
  • js/slow-stress/call-spread.html: Copied from LayoutTests/js/regress/call-spread.html.
  • js/slow-stress/chain-custom-getter-expected.txt: Copied from LayoutTests/js/regress/chain-custom-getter-expected.txt.
  • js/slow-stress/chain-custom-getter.html: Copied from LayoutTests/js/regress/chain-custom-getter.html.
  • js/slow-stress/destructuring-arguments-length-expected.txt: Copied from LayoutTests/js/regress/destructuring-arguments-length-expected.txt.
  • js/slow-stress/destructuring-arguments-length.html: Copied from LayoutTests/js/regress/destructuring-arguments-length.html.
  • js/slow-stress/emscripten-memops-expected.txt: Copied from LayoutTests/js/regress/emscripten-memops-expected.txt.
  • js/slow-stress/emscripten-memops.html: Copied from LayoutTests/js/regress/emscripten-memops.html.
  • js/slow-stress/fold-strict-eq-expected.txt: Copied from LayoutTests/js/regress/fold-strict-eq-expected.txt.
  • js/slow-stress/fold-strict-eq.html: Copied from LayoutTests/js/regress/fold-strict-eq.html.
  • js/slow-stress/marsaglia-expected.txt: Copied from LayoutTests/js/regress/marsaglia-expected.txt.
  • js/slow-stress/marsaglia.html: Copied from LayoutTests/js/regress/marsaglia.html.
  • js/slow-stress/nested-function-parsing-random-expected.txt: Copied from LayoutTests/js/regress/nested-function-parsing-random-expected.txt.
  • js/slow-stress/nested-function-parsing-random.html: Copied from LayoutTests/js/regress/nested-function-parsing-random.html.
  • js/slow-stress/new-spread-expected.txt: Copied from LayoutTests/js/regress/new-spread-expected.txt.
  • js/slow-stress/new-spread.html: Copied from LayoutTests/js/regress/new-spread.html.
  • js/slow-stress/proto-custom-getter-expected.txt: Copied from LayoutTests/js/regress/proto-custom-getter-expected.txt.
  • js/slow-stress/proto-custom-getter.html: Copied from LayoutTests/js/regress/proto-custom-getter.html.
  • js/slow-stress/script-tests: Added.
  • js/slow-stress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js: Copied from LayoutTests/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js.
  • js/slow-stress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.js: Copied from LayoutTests/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.js.
  • js/slow-stress/script-tests/Int32Array-alloc-huge-long-lived.js: Copied from LayoutTests/js/regress/script-tests/Int32Array-alloc-huge-long-lived.js.
  • js/slow-stress/script-tests/Int32Array-alloc-huge.js: Copied from LayoutTests/js/regress/script-tests/Int32Array-alloc-huge.js.
  • js/slow-stress/script-tests/Int32Array-alloc-large-long-lived.js: Copied from LayoutTests/js/regress/script-tests/Int32Array-alloc-large-long-lived.js.
  • js/slow-stress/script-tests/array-prototype-filter.js: Copied from LayoutTests/js/regress/script-tests/array-prototype-filter.js.
  • js/slow-stress/script-tests/call-spread.js: Copied from LayoutTests/js/regress/script-tests/call-spread.js.
  • js/slow-stress/script-tests/chain-custom-getter.js: Copied from LayoutTests/js/regress/script-tests/chain-custom-getter.js.
  • js/slow-stress/script-tests/destructuring-arguments-length.js: Copied from LayoutTests/js/regress/script-tests/destructuring-arguments-length.js.
  • js/slow-stress/script-tests/emscripten-memops.js: Copied from LayoutTests/js/regress/script-tests/emscripten-memops.js.
  • js/slow-stress/script-tests/fold-strict-eq.js: Copied from LayoutTests/js/regress/script-tests/fold-strict-eq.js.
  • js/slow-stress/script-tests/marsaglia.js: Copied from LayoutTests/js/regress/script-tests/marsaglia.js.
  • js/slow-stress/script-tests/nested-function-parsing-random.js: Copied from LayoutTests/js/regress/script-tests/nested-function-parsing-random.js.
  • js/slow-stress/script-tests/new-spread.js: Copied from LayoutTests/js/regress/script-tests/new-spread.js.
  • js/slow-stress/script-tests/proto-custom-getter.js: Copied from LayoutTests/js/regress/script-tests/proto-custom-getter.js.
  • js/slow-stress/script-tests/simple-custom-getter.js: Copied from LayoutTests/js/regress/script-tests/simple-custom-getter.js.
  • js/slow-stress/script-tests/variadic-closure-call.js: Copied from LayoutTests/js/regress/script-tests/variadic-closure-call.js.
  • js/slow-stress/simple-custom-getter-expected.txt: Copied from LayoutTests/js/regress/simple-custom-getter-expected.txt.
  • js/slow-stress/simple-custom-getter.html: Copied from LayoutTests/js/regress/simple-custom-getter.html.
  • js/slow-stress/variadic-closure-call-expected.txt: Copied from LayoutTests/js/regress/variadic-closure-call-expected.txt.
  • js/slow-stress/variadic-closure-call.html: Copied from LayoutTests/js/regress/variadic-closure-call.html.
  • resources/regress-post.js: Copied from LayoutTests/js/regress/resources/regress-post.js.
  • resources/regress-pre.js: Copied from LayoutTests/js/regress/resources/regress-pre.js.
11:24 AM Changeset in webkit [166876] by mark.lam@apple.com
  • 9 edits
    3 adds in trunk

Date object needs to check for ES5 15.9.1.14 TimeClip limit.
<https://webkit.org/b/131248>

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

The current Date object code does not adequately check for the ES5
15.9.1.14 TimeClip limit. As a result, some calculations can underflow
/ overflow and produce unexpected results.

For example, we were getting an assertion failure in
WTF::equivalentYearForDST() due int underflows in this function, which
in turn were due to an int overflow in WTF::msToYear().

This patch adds the needed checks, and adds some assertions to ensure
that the used values are sane.

The changes have no noticeable impact on benchmark results.

  • runtime/DateConstructor.cpp:

(JSC::callDate):

  • runtime/JSDateMath.cpp:

(JSC::localTimeOffset):
(JSC::gregorianDateTimeToMS):
(JSC::msToGregorianDateTime):
(JSC::parseDateFromNullTerminatedCharacters):
(JSC::parseDate):

  • runtime/JSDateMath.h:
  • parseDateFromNullTerminatedCharacters() does not need to be public. Made it a static function.
  • runtime/VM.cpp:

(JSC::VM::resetDateCache):

  • Changed cachedDateStringValue to use std::numeric_limits<double>::quiet_NaN() to be consistent with other Date code.

Source/WTF:

  • wtf/DateMath.cpp:
  • Moved the definition of maxECMAScriptTime to the .h file so that we can use it in other files as well.

(WTF::msToYear):

  • Removed a stale comment for parseDateFromNullTerminatedCharacters().
  • wtf/DateMath.h:

LayoutTests:

  • js/regress-131248-expected.txt: Added.
  • js/regress-131248.html: Added.
  • js/script-tests/regress-131248.js: Added.

(testDateFromSetDateAdjustement):
(testDateFromSetTimeWithMilliseconds):
(testDateFromString):

11:18 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
10:33 AM Changeset in webkit [166875] by svillar@igalia.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening for GTK.

Removed tests that have been actually passing in both release and
debug bots for some time.

  • platform/gtk-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
10:15 AM Changeset in webkit [166874] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Clean up invalid FIXME
https://bugs.webkit.org/show_bug.cgi?id=131304

Reviewed by Andreas Kling.

No new tests, no behavior change.

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):

9:30 AM Changeset in webkit [166873] by svillar@igalia.com
  • 2 edits in trunk/LayoutTests

Unreviewed update of GTK expectations.

Canvas composite tests with alpha are not working.

  • platform/gtk/TestExpectations:
5:34 AM Changeset in webkit [166872] by ryuan.choi@samsung.com
  • 20 edits
    3 deletes in trunk

[EFL] Turn on ENABLE_MEDIA_CONTROLS_SCRIPT
https://bugs.webkit.org/show_bug.cgi?id=131257

Reviewed by Gyuyoung Kim.

.:

  • Source/cmake/OptionsEfl.cmake: Enable MEDIA_CONTROLS_SCRIPT

Source/WebCore:

no new tests. just rebased exisiting tests.

  • PlatformEfl.cmake: Added the media controls script associated files.
  • css/mediaControlsEfl.css: Removed.
  • css/mediaControlsEflFullscreen.css: Removed.
  • platform/efl/DefaultTheme/CMakeLists.txt:
  • platform/efl/DefaultTheme/default.edc:
  • platform/efl/DefaultTheme/widget/mediacontrol/fullscreenbutton/enterfullscreenbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/fullscreenbutton/exitfullscreenbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/fullscreenbutton/fullscreen_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/mutebutton/mute_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/mutebutton/mutebutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/mutebutton/unmutebutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/playpausebutton/pausebutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/playpausebutton/playbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/playpausebutton/playpause_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/seekbackwardbutton/seekbackward_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/seekbackwardbutton/seekbackwardbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/seekforwardbutton/seekforward_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/seekforwardbutton/seekforwardbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/togglecaptionsbutton/closedcaption.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/togglecaptionsbutton/closedcaption_disabled.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/togglecaptionsbutton/toggle_captions_button.edc: Removed.
  • platform/efl/RenderThemeEfl.cpp:

(WebCore::toEdjeGroup):
(WebCore::RenderThemeEfl::RenderThemeEfl):
(WebCore::RenderThemeEfl::adjustSliderThumbSize):
(WebCore::RenderThemeEfl::mediaControlsStyleSheet): Modified to load bundle style sheet.
(WebCore::RenderThemeEfl::mediaControlsScript): Added to load bundle scripts.
(WebCore::RenderThemeEfl::emitMediaButtonSignal): Deleted.
(WebCore::RenderThemeEfl::extraMediaControlsStyleSheet): Deleted.
(WebCore::RenderThemeEfl::extraFullScreenStyleSheet): Deleted.
(WebCore::RenderThemeEfl::formatMediaControlsCurrentTime): Deleted.
(WebCore::RenderThemeEfl::hasOwnDisabledStateHandlingFor): Deleted.
(WebCore::RenderThemeEfl::paintMediaFullscreenButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaMuteButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaPlayButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaSeekBackButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaSeekForwardButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaSliderTrack): Deleted.
(WebCore::RenderThemeEfl::paintMediaSliderThumb): Deleted.
(WebCore::RenderThemeEfl::paintMediaVolumeSliderContainer): Deleted.
(WebCore::RenderThemeEfl::paintMediaVolumeSliderTrack): Deleted.
(WebCore::RenderThemeEfl::paintMediaVolumeSliderThumb): Deleted.
(WebCore::RenderThemeEfl::paintMediaCurrentTime): Deleted.
(WebCore::RenderThemeEfl::supportsClosedCaptioning): Deleted.
(WebCore::RenderThemeEfl::paintMediaToggleClosedCaptionsButton): Deleted.

  • platform/efl/RenderThemeEfl.h:

LayoutTests:

Rebased tests.

  • platform/efl/TestExpectations:
  • platform/efl/media/audio-controls-rendering-expected.png:
  • platform/efl/media/audio-controls-rendering-expected.txt:
  • platform/efl/media/controls-after-reload-expected.png:
  • platform/efl/media/controls-after-reload-expected.txt:
  • platform/efl/media/controls-strict-expected.png:
  • platform/efl/media/controls-strict-expected.txt:
  • platform/efl/media/controls-styling-expected.png:
  • platform/efl/media/controls-styling-expected.txt:
  • platform/efl/media/controls-without-preload-expected.png:
  • platform/efl/media/controls-without-preload-expected.txt:
2:14 AM Changeset in webkit [166871] by svillar@igalia.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Updated expectations for GTK. Added some more failing AX tests.

  • platform/gtk-wk2/TestExpectations:
1:52 AM Changeset in webkit [166870] by benjamin@webkit.org
  • 5 edits in trunk/Source/WebCore

CSS JIT: change the node flags directly instead of using function calls when possible
https://bugs.webkit.org/show_bug.cgi?id=131292

Reviewed by Andreas Kling.

For historical reasons, changing the node flags was always done with function calls.
This patch changes those calls to modify the nodes directly.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::setNodeFlag):
(WebCore::SelectorCompiler::SelectorCodeGenerator::markParentElementIfResolvingStyle):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):
(WebCore::SelectorCompiler::markElementWithSetChildrenAffectedByLastChildRules): Deleted.
(WebCore::SelectorCompiler::markElementWithSetChildrenAffectedByFirstChildAndLastChildRules): Deleted.

  • dom/Element.cpp:

(WebCore::Element::setChildrenAffectedByFirstChildRules): Deleted.
(WebCore::Element::setChildrenAffectedByDirectAdjacentRules): Deleted.

  • dom/Element.h:
  • dom/Node.h:

(WebCore::Node::flagChildrenAffectedByFirstChildRulesFlag):
(WebCore::Node::flagChildrenAffectedByLastChildRulesFlag):
(WebCore::Node::flagChildrenAffectedByDirectAdjacentRulesFlag):

1:18 AM Changeset in webkit [166869] by k.czech@samsung.com
  • 2 edits in trunk/Source/WebCore

Remove unused header from PlatformSpeechSynthesizer.h
https://bugs.webkit.org/show_bug.cgi?id=131103

Reviewed by Anders Carlsson.

Since WebSpeech has switched to use std::unique_ptr, we do not need to include PassOwnPtr.

No new tests. No behaviour change, just quick fix.

  • platform/PlatformSpeechSynthesizer.h:
12:55 AM Changeset in webkit [166868] by svillar@igalia.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Updated expectations for GTK. Added some failing AX tests.

  • platform/gtk-wk2/TestExpectations:

Apr 6, 2014:

11:38 PM Changeset in webkit [166867] by mihnea@adobe.com
  • 10 edits in trunk

[CSSRegions] Use RenderRegion::isValid() before using a region
https://bugs.webkit.org/show_bug.cgi?id=131232

Reviewed by Andreas Kling.

Source/WebCore:

RenderRegion method isValid() should be used to test whether a region
is good to use instead of a mix between isValid() and flowThread().
When the region is designed to fragment content from a parent flow thread,
the m_flowThread is not nullified anymore, thus ensuring the same treatment for all invalid
regions.
Covered by existing regions tests.

  • inspector/InspectorOverlay.cpp:

(WebCore::buildObjectForElementInfo):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::layoutOverflowRectForPropagation):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderNamedFlowFragment.cpp:

(WebCore::RenderNamedFlowFragment::pageLogicalHeight):
(WebCore::RenderNamedFlowFragment::maxPageLogicalHeight):

  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::getRanges):
(WebCore::RenderNamedFlowThread::clearRenderObjectCustomStyle):
(WebCore::RenderNamedFlowThread::checkRegionsWithStyling):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::RenderRegion):
(WebCore::RenderRegion::positionForPoint):
(WebCore::RenderRegion::pageLogicalWidth):
(WebCore::RenderRegion::pageLogicalHeight):
(WebCore::RenderRegion::styleDidChange):
(WebCore::RenderRegion::installFlowThread):
(WebCore::RenderRegion::attachRegion):
(WebCore::RenderRegion::detachRegion):
(WebCore::RenderRegion::ensureOverflowForBox):
(WebCore::RenderRegion::renderBoxRegionInfo):

LayoutTests:

Adjust test expectation now that an invalid region is not unnecessary repainted.

  • fast/regions/repaint/invalid-region-repaint-crash-expected.txt:
10:24 PM Changeset in webkit [166866] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source/WebKit/efl

[EFL][WK1] Apply std::unique_ptr<> to NavigatorContentUtilsClientEfl
https://bugs.webkit.org/show_bug.cgi?id=130958

Reviewed by Darin Adler.

As a step of replacing OwnPtr with std::unique_ptr, this patch replaces
OwnPtr with the std::unique_ptr for NavigatorContentUtilsClientEfl.

  • WebCoreSupport/NavigatorContentUtilsClientEfl.cpp:

(WebCore::NavigatorContentUtilsClientEfl::create): Deleted.

  • WebCoreSupport/NavigatorContentUtilsClientEfl.h:
  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):

10:07 PM Changeset in webkit [166865] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix the debug bots after r166863

  • css/PageRuleCollector.cpp:

(WebCore::checkPageSelectorComponents): I forgot to update one call site for PagePseudoClass.

8:43 PM Changeset in webkit [166864] by Darin Adler
  • 25 edits in trunk/Source

Make some bindings improvements, with smaller code size for error message generation
https://bugs.webkit.org/show_bug.cgi?id=131285

Reviewed by Andreas Kling.

Source/WebCore:

  • WebCore.exp.in: Updated to remove old and add new functions, for use by the Internals

JavaScript bindings.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::makeDOMBindingsTypeErrorStringInternal): Deleted.
(WebCore::throwTypeError): Added. Helper to avoid repeating throwVMError/createTypeError.
(WebCore::appendArgumentMustBe): Added. Helper for building up argument error strings.
(WebCore::reportDeprecatedGetterError): Added. For bindings to use.
(WebCore::throwArgumentMustBeEnumError): Ditto.
(WebCore::throwArgumentMustBeFunctionError): Ditto.
(WebCore::throwArgumentTypeError): Ditto.
(WebCore::throwArrayElementTypeError): Ditto.
(WebCore::throwAttributeTypeError): Ditto.
(WebCore::throwConstructorDocumentUnavailableError): Ditto.
(WebCore::throwGetterTypeError): Ditto.
(WebCore::throwSequenceTypeError): Ditto.
(WebCore::throwSetterTypeError): Ditto.
(WebCore::throwThisTypeError): Ditto.

  • bindings/js/JSDOMBinding.h: Added declarations for new functions. Removed forward

declarations for things not used in this file. Use nullptr instead of 0. Format
templates consistently. Use a better for loop in the jsArray function. Removed
unused HasMemoryCostMemberFunction, makeDOMBindingsTypeErrorString, and
makeDOMBindingsTypeErrorStringInternal.

  • bindings/js/JSNavigatorCustom.cpp: Fixed a hand-written binding that was using

makeDOMBindingsTypeErrorString to make a string.

  • bindings/js/ScriptController.h: Updated forward declarations.
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation): Cut down on use of UNUSED_PARAM. Use the new functions
for errors, keeping the code in the generated file to a minimum.
(GenerateParametersCheck): Ditto.
(GenerateConstructorDefinition): Ditto.

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:
  • bindings/scripts/test/JS/JSTestException.cpp:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:
  • bindings/scripts/test/JS/JSattribute.cpp:
  • bindings/scripts/test/JS/JSreadonly.cpp:

Updated expected results for changes above.

Source/WebKit:

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

changes in JavaScript binding functions.

7:28 PM Changeset in webkit [166863] by benjamin@webkit.org
  • 6 edits in trunk/Source/WebCore

Move the PseudoPageClass types out of the pseudo element/class mix
https://bugs.webkit.org/show_bug.cgi?id=131284

Reviewed by Darin Adler.

Some more cleanup of Selector's pseudo types. This patch moves the page pseudo
class types into their own enumeration (PagePseudoClassType).

  • css/CSSParserValues.cpp:

(WebCore::CSSParserSelector::parsePagePseudoSelector):

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::specificityForPage):
(WebCore::CSSSelector::pseudoId):
(WebCore::CSSSelector::selectorText):

  • css/CSSSelector.h:

(WebCore::CSSSelector::setPagePseudoType):
(WebCore::CSSSelector::pagePseudoClassType):

  • css/PageRuleCollector.cpp:

(WebCore::checkPageSelectorComponents):

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):

7:25 PM Changeset in webkit [166862] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebCore

CSS JIT: add support for :last-child and :only-child
https://bugs.webkit.org/show_bug.cgi?id=131283

Reviewed by Andreas Kling.

This is the straightforward implementation of :last-child and :only-child.

Both are extremely similar to :first-child. There are only minor differences:
-:last-child has an additional check for the flag IsParsingChildrenFinished.
-:only-child is like :first-child + :last-child but with combined marking.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToNextAdjacentElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::jumpIfNoPreviousAdjacentElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::jumpIfNoNextAdjacentElement):
(WebCore::SelectorCompiler::markElementWithSetChildrenAffectedByLastChildRules):
(WebCore::SelectorCompiler::setLastChildState):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
(WebCore::SelectorCompiler::markElementWithSetChildrenAffectedByFirstChildAndLastChildRules):
(WebCore::SelectorCompiler::setOnlyChildState):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):

  • dom/Node.h:

(WebCore::Node::nextSiblingMemoryOffset):
(WebCore::Node::flagIsParsingChildrenFinished):

  • rendering/style/RenderStyle.h:

Removed the unused flags, I will add them back later as needed.

5:54 PM Changeset in webkit [166861] by mitz@apple.com
  • 8 edits
    1 move in trunk/Source/WebKit2

Clean up WKGestureTypes.h
https://bugs.webkit.org/show_bug.cgi?id=131286

Reviewed by Sam Weinig.

Renamed WKGestureTypes.h to GestureTypes.h, dropped the useless “WK” prefixes and changed
into scoped enums, with the exception of SelectionFlags.

  • Shared/ios/GestureTypes.h: Copied from Source/WebKit2/Shared/ios/WKGestureTypes.h.
  • Shared/ios/WKGestureTypes.h: Removed.
  • UIProcess/API/Cocoa/_WKElementAction.mm:

(copyElement):
(saveImage):

  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::didUpdateBlockSelectionWithTouch):

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _performAction:]):
(toGestureType):
(toUIWKGestureType):
(toSelectionTouch):
(toUIWKSelectionTouch):
(toGestureRecognizerState):
(toUIGestureRecognizerState):
(toUIWKSelectionFlags):
(toSelectionHandlePosition):
(selectionChangedWithGesture):
(selectionChangedWithTouch):
(-[WKContentView _didUpdateBlockSelectionWithTouch:withFlags:growThreshold:shrinkThreshold:]):
(-[WKContentView changeSelectionWithGestureAt:withGesture:withState:]):
(-[WKContentView changeSelectionWithTouchAt:withSelectionTouch:baseIsStart:]):
(-[WKContentView changeSelectionWithTouchesFrom:to:withGesture:withState:]):
(-[WKContentView changeBlockSelectionWithTouchAt:withSelectionTouch:forHandle:]):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::rangeForWebSelectionAtPosition):
(WebKit::WebPage::selectWithGesture):
(WebKit::distanceBetweenRectsForPosition):
(WebKit::computeEdgeCenter):
(WebKit::WebPage::expandedRangeFromHandle):
(WebKit::WebPage::contractedRangeFromHandle):
(WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle):
(WebKit::shouldExpand):
(WebKit::WebPage::changeBlockSelection):
(WebKit::WebPage::updateBlockSelectionWithTouch):
(WebKit::WebPage::updateSelectionWithTouches):
(WebKit::WebPage::performActionOnElement):

5:16 PM Changeset in webkit [166860] by Darin Adler
  • 27 edits
    1 add in trunk

Source/WebCore: Rework CSS calc logic, fixing some reference count mistakes in Length
https://bugs.webkit.org/show_bug.cgi?id=131280
rdar://problem/16400823

Reviewed by Andreas Kling.

New unit test in TestWebKitAPI.

Changed the classes related to CSS "calc" to make the code a bit easier to read by
moving code out of class definitions. Also used final some more, made more things private,
used references instead of pointers, and other such changes. Biggest change, though, is to
Length, which had a broken system for managing reference counted calculated objects.
There were multiple bugs including a basic design mistake of not having a reference count
and trying to use the reference count in the object itself. Fixed and covered by the unit
test now; test found multiple problems in both the old and new implementations.

  • WebCore.exp.in: Updated exports, including symbols to make the unit test practical.
  • WebCore.xcodeproj/project.pbxproj: Made CalculationValue.h a Private file so it can

be used in a unit test. Also let Xcode update the file type for a gperf file.

  • css/CSSCalculationValue.cpp:

(WebCore::CSSCalcValue::equals): Updated since m_expression is a Ref now.
(WebCore::CSSCalcValue::clampToPermittedRange): Marked inline and updated for data member
name change.
(WebCore::isIntegerResult): Changed argument order to put the operator first and use
references instead of pointers. Also marked inline.
(WebCore::createBlendHalf): Added. Helper to make the other functions more readable.
(WebCore::createExpressionNode): Made non-member function private to this file. Also made
many small improvements.
(WebCore::CSSCalcValue::create): Updated so both of these call the same constructor.

  • css/CSSCalculationValue.h: Cut down CSSCalcValue class by making more things private

and deleting unneeded things. Also use Ref instead of RefPtr.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::getPositionOffsetValue): Use isFixed function instead of type function.

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::addStops): Updated code since toCalcValue now returns PassRef
instead of PassRefPtr. Unfortunately the new code is a bit more verbose.
(WebCore::positionFromValue): Ditto.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseCalculation):

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Updated to pass reference rather than pointer.
(WebCore::CSSPrimitiveValue::init): Ditto.

  • css/CSSToStyleMap.h: Removed unneeded include of LengthBox.h.
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyLength::applyValue): Updated for function name change.
(WebCore::ApplyPropertyBorderRadius::applyValue): Removed extra parentheses.
(WebCore::ApplyPropertyFontSize::applyValue): Ditto. Also updated since toCalcValue returns Ref.

  • css/LengthFunctions.cpp:

(WebCore::floatValueForLength): Updated to call value instead of getFloatValue; both are the same.

  • css/StyleResolver.cpp:

(WebCore::addIntrinsicMargins): Updated for function name change.
(WebCore::createGridTrackBreadth): Ditto.

  • platform/CalculationValue.cpp:

(WebCore::CalculationValue::create): Changed to return PassRef.
(WebCore::CalcExpressionNumber::evaluate): Moved this function out of the header, since it's
virtual and not really going to be inlined.
(WebCore::CalcExpressionNumber::operator==): Ditto.
(WebCore::CalculationValue::evaluate): Ditto.
(WebCore::CalcExpressionBinaryOperation::operator==): Ditto.
(WebCore::CalcExpressionLength::evaluate): Ditto.
(WebCore::CalcExpressionLength::operator==): Ditto.
(WebCore::CalcExpressionBlendLength::evaluate): Ditto.
(WebCore::CalcExpressionBlendLength::operator==): Ditto.

  • platform/CalculationValue.h: Moved most functions out of the class bodies so the classes are

easier to see. Made all the == operator functions non-member ones except for the polymorphic
one from the base class. Changed the casting functions to work on references instead of pointers.
Tweaked name of some members.

  • platform/Length.cpp: Reworked the CalculationValueMap (formerly CalculationValueHandleMap) to

use unsigned instead of int, and store reference counts in the map rather than trying to share the
reference count of the underlying CalculationValue object, which can lead to storage leaks where
handles end up in the map permanently.
(WebCore::calculationValues): Use NeverDestroyed instead of DEPRECATED_DEFINE_STATIC_LOCAL.
(WebCore::Length::Length): Updated some data member names.
(WebCore::Length::calculationValue): Updated to return a reference instead of a PassRefPtr.
(WebCore::Length::ref): Renamed and updated for new interface to the map.
(WebCore::Length::deref): Ditto.
(WebCore::Length::nonNanCalculatedValue): Updated to use a reference instead of a pointer.
(WebCore::Length::isCalculatedEqual): Updated since this is now only called if both objects are
known to be calculated values.

  • platform/Length.h: Moved most functions out of the class definition to make the class definition

easier to read. Reworked the constructors and assignment operators to handle the reference counting
correctly. Added various FIXMEs and assertions. Removed some unused functions, made others private.

  • platform/LengthBox.h: Renamed some one-letter arguments to use words instead.
  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::recalcColumn): Updated for change to Length::setValue.

  • rendering/FixedTableLayout.cpp:

(WebCore::FixedTableLayout::calcWidthArray): Ditto.

  • rendering/style/FillLayer.h:

(WebCore::FillLayer::initialFillXPosition): Updated to not convert a double to a float at runtime.
(WebCore::FillLayer::initialFillYPosition): Ditto.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::setWordSpacing): Removed a bogus FALLTHROUGH that was clearly wrong, but
harmless. Updated for changes to Length.

  • rendering/style/RenderStyle.h: Updated for name changes and to avoid converting doubles to floats

at runtime.

Tools: Rework CSS calc logic, fixing some reference count mistakes in Length
https://bugs.webkit.org/show_bug.cgi?id=131280

Reviewed by Andreas Kling.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added CalculationValue.cpp.
  • TestWebKitAPI/Tests/WebCore/CalculationValue.cpp: Added.
4:41 PM Changeset in webkit [166859] by weinig@apple.com
  • 9 edits
    2 moves
    2 adds in trunk/Source

Source/WebKit/mac: Document user content related APIs

Reviewed by Anders Carlsson.

  • MigrateHeaders.make:

Source/WebKit2: Document user content related APIs..

Reviewed by Anders Carlsson.

  • Also demote WKScriptWorld to SPI.
  • UIProcess/API/Cocoa/WKScriptMessage.h:
  • UIProcess/API/Cocoa/WKScriptMessage.mm:

(-[WKScriptMessage _scriptWorld]):
(-[WKScriptMessage scriptWorld]): Deleted.

  • UIProcess/API/Cocoa/WKScriptMessageHandler.h:
  • UIProcess/API/Cocoa/WKScriptMessagePrivate.h: Added.
  • UIProcess/API/Cocoa/WKScriptWorld.h: Removed.
  • UIProcess/API/Cocoa/WKScriptWorld.mm: Removed.
  • UIProcess/API/Cocoa/WKUserContentController.h:
  • UIProcess/API/Cocoa/WKUserContentController.mm:

(-[WKUserContentController addScriptMessageHandler:name:]):
(-[WKUserContentController removeScriptMessageHandlerForName:]):
(-[WKUserContentController _addScriptMessageHandler:name:world:]):
(-[WKUserContentController _removeScriptMessageHandlerForName:world:]):
(-[WKUserContentController addScriptMessageHandler:name:world:]): Deleted.
(-[WKUserContentController removeScriptMessageHandlerForName:world:]): Deleted.

  • UIProcess/API/Cocoa/WKUserContentControllerPrivate.h: Added.
  • UIProcess/API/Cocoa/_WKScriptWorld.h: Copied from WebKit2/UIProcess/API/Cocoa/WKScriptWorld.h.
  • UIProcess/API/Cocoa/_WKScriptWorld.mm: Copied from WebKit2/UIProcess/API/Cocoa/WKScriptWorld.mm.

(+[_WKScriptWorld defaultWorld]):
(+[WKScriptWorld defaultWorld]): Deleted.

  • WebKit2.xcodeproj/project.pbxproj:
4:21 PM Changeset in webkit [166858] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

Honor System-Level User Preferences for Caption Display
https://bugs.webkit.org/show_bug.cgi?id=131258

Reviewed by Eric Carlson.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setSelectedTextTrack): Allow preferenced change to fully dispatch
so we can properly deal with captions being turned off.
(WebCore::HTMLMediaElement::captionPreferencesChanged): Use 'webkit' variant of the
setWebKitClosedCaptionsVisible method so we properly adjust settings needed for the JS API call.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlTextTrackContainerElement::updateDisplay): When captions are turned off, e.g.
because the user turned off the preference, don't inadvertently turn them back on just bacause there
was an existing track that was not in a 'hidden' state.

3:12 PM Changeset in webkit [166857] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed speculative 32-bit buildfix after r166837.

  • heap/Heap.cpp:

(JSC::Heap::updateObjectCounts):

2:51 PM Changeset in webkit [166856] by Brian Burg
  • 3 edits in trunk/Source/WebCore

Web Replay: add methods to encode a frame's index based on its FrameTree position
https://bugs.webkit.org/show_bug.cgi?id=131281

Reviewed by Timothy Hatcher.

Given a frame, its encoded index is computed by traversing the frame tree
and saving how many nodes have been traversed to reach a given frame.

This is used to disambiguate frames when dispatching frame-specific event
loop inputs during replay, such as timers and resource loaders.

  • replay/SerializationMethods.cpp:

(WebCore::frameIndexFromDocument): Added.
(WebCore::frameIndexFromFrame): Added.
(WebCore::documentFromFrameIndex): Added.
(WebCore::frameFromFrameIndex): Added.

  • replay/SerializationMethods.h:
2:48 PM Changeset in webkit [166855] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

iOS build fix.

  • WebCore.exp.in: Move newly exported function to a right section of this file.
2:14 PM Changeset in webkit [166854] by Darin Adler
  • 4 edits in trunk

Fix change log dates and a small editing mistake in last patch

1:27 PM Changeset in webkit [166853] by Darin Adler
  • 19 edits in trunk

Refactor post-attach and HTMLObjectElement-related code
https://bugs.webkit.org/show_bug.cgi?id=131282

Reviewed by Antti Koivisto.

Source/WebCore:

  • dom/ContainerNode.cpp: Moved the post-attach callback code from here to

StyleResolveTree.h/cpp.

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

(WebCore::Document::recalcStyle): Use Style::PostResolutionCallbackDisabler instead of
PostAttachCallbackDisabler.

  • dom/Element.h: Moved the post-attach callback code from here to StyleResolveTree.h/cpp.
  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseAttribute): Simplified the code for typeAttr, turning
it into a 1-liner. Added a FIXME in codeAttr about the fact that it does not have the
code to trigger image loads.

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::didAttachRenderers): Updated to use
Style::queuePostResolutionCallback and use a lambda instead of a function.
(WebCore::HTMLFormControlElement::didRecalcStyle): Ditto. Also added RefPtr instead
of just using wishful thinking to keep the object alive.

  • html/HTMLFrameOwnerElement.cpp:

(WebCore::HTMLFrameOwnerElement::scheduleSetNeedsStyleRecalc): Ditto.

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseAttribute):: Simplified the code for typeAttr, turning
it into a 1-liner. Made dataAttr call setNeedsWidgetUpdate(true) unconditionally after
checking carefully to see that's harmless if there is no renderer. Changed classidAttr
to call setNeedsWidgetUpdate(true) unconditionally and not set m_classId.
(WebCore::HTMLObjectElement::shouldAllowQuickTimeClassIdQuirk): Use fastGetAttribute
instead of classId and descendantsOfType instead of getElementsByTagName.
(WebCore::HTMLObjectElement::hasValidClassId): Use fastGetAttribute instead of classId.
(WebCore::HTMLObjectElement::renderFallbackContent): Use imageLoader instead of m_imageLoader.

  • html/HTMLObjectElement.h: Removed classId, since there is no reason to cache that

attribute in a data member. Rearranged header, making more private, and fixing some typos,
and doing a "using" instead of a function to disambiguate the inherited form functions.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::createElementRenderer): Fixed some code that assumed the
first child of the shadow root is guaranteed to be an element.
(WebCore::HTMLPlugInImageElement::didMoveToNewDocument): Removed null check on oldDocument,
since m_needsDocumentActivationCallbacks can't be true if the old document was null.
(WebCore::is100Percent): Added helper to make function below more readable.
(WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Restructured the code a
bit. The part that attracted my attention was the local variable of type RenderBox, which
was named renderEmbeddedObject. Turns out the caller guarantees to only call this if there
is a renderer of type RenderEmbeddedObject, so depend on that.

  • html/HTMLPlugInImageElement.h: Trimmed includes a bit. Made more members private.

Marked more function members final. Made a protected imageLoader function so that
m_imageLoader can be private eventually. Made m_imageLoader be std::unique_ptr.

  • style/StyleResolveTree.cpp:

(WebCore::Style::needsPseudoElement): Fixed spelling error in the name of this function.
(WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded): Updated for name change.
(WebCore::Style::attachRenderTree): Update for new name of PostResolutionCallbackDisabler.
(WebCore::Style::updateBeforeOrAfterPseudoElement): Updated for name change.
(WebCore::Style::postResolutionCallbackQueue): Added.
(WebCore::Style::queuePostResolutionCallback): Added.
(WebCore::Style::suspendMemoryCacheClientCalls): Added. This is a side effect of the original
PostAttachCallbackDisabler that is now done in a cleaner way, using the callback queue, instead
of as a special case. It should not work for multiple documents across multiple pages instead of
only the outermost one.
(WebCore::Style::PostResolutionCallbackDisabler::PostResolutionCallbackDisabler): Added.
Calls suspendMemoryCacheClientCalls, but a FIXME tries to point out why that isn't so great.
(WebCore::Style::PostResolutionCallbackDisabler::~PostResolutionCallbackDisabler): Added.
(WebCore::Style::postResolutionCallbacksAreSuspended): Added.

  • style/StyleResolveTree.h: Added queuePostResolutionCallback and

postResolutionCallbacksAreSuspended. Also added PostResolutionCallbackDisabler, which should
eventually become a private implementation detail.

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.mm: Call toHTMLPlugInImageElement instead of

doing a static_cast.

LayoutTests:

  • svg/custom/object-no-size-attributes-expected.txt: Removed expectation of an empty text

renderer from the render tree.

  • svg/custom/object-no-size-attributes.xhtml: Restructured the source so there is no text

to render. Without this, we were seeing two text renderers due to the loading timing change.

1:20 PM Changeset in webkit [166852] by mitz@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

32-bit build fix.

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::setInputCursor):

10:28 AM Changeset in webkit [166851] by Brian Burg
  • 15 edits in trunk

Enable WEB_REPLAY for PLATFORM(MAC)
https://bugs.webkit.org/show_bug.cgi?id=130700

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Switch on WEB_REPLAY feature flag for non-production builds.

  • Configurations/FeatureDefines.xcconfig:
  • replay/ReplayInputDispatchMethods.cpp: Fix the ENABLE(WEB_REPLAY) build.

It was broken by the bool to enum refactoring in r166684.
(WebCore::InitialNavigation::dispatch):

Source/WebInspectorUI:

If the ReplayAgent is available, then add an option to toggle between the
replay interface and normal Timeline interface from the timeline
sidebar panel. The option is available through a context menu item on the
sidebar panel's top navigation bar.

If web replay not available, just show the non-replay interface.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Base/Main.js: Add WebInspector.showReplayInterfaceSetting.

(WebInspector.loaded):

  • UserInterface/Views/TimelineSidebarPanel.js: Unconditionally create the replay

interface elements, but only show them if showReplayInterfaceSetting is enabled.
(WebInspector.TimelineSidebarPanel.prototype._updateReplayInterfaceVisibility): Added
(WebInspector.TimelineSidebarPanel.prototype._contextMenuNavigationBarOrStatusBar.toggleReplayInterface): Added.
(WebInspector.TimelineSidebarPanel.prototype._contextMenuNavigationBarOrStatusBar): Added.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm: Set the default for WEB_REPLAY for OS X engineering builds.
9:24 AM Changeset in webkit [166850] by rakuco@webkit.org
  • 2 edits in trunk

[GTK] Stop trying to install WebKit1 documentation
https://bugs.webkit.org/show_bug.cgi?id=131278

Reviewed by Martin Robinson.

  • Source/PlatformGTK.cmake: Remove install() call since the WebKit1 documentation is not

built anymore since r166584. This fixes `make install'.

Note: See TracTimeline for information about the timeline view.