zalan@apple.com [Tue, 27 Oct 2015 16:38:10 +0000 (16:38 +0000)]
Subpixel layout: Convert RenderTable* and AutoTableLayout to use LayoutUnit.
https://bugs.webkit.org/show_bug.cgi?id=149366
Reviewed by David Hyatt.
Source/WebCore:
This patch enables non-integral cell space distribution for both
auto and fixed table layout.
Due to the tight layout, float is used to calculate each cell's dimension/position and
we convert them to LayoutUnits while said values are set on the renderer.
Due to the (lack of) LayoutUnit precision, a fudge factor is applied on table cell's minimum width.
Collapsed table borders are still integral based, tracked here: webkit.org/b/150383
Covered by existing tests.
(WebCore::RenderTableSection::firstLineBaseline): Baseline is still integral (same as normal line layout)
* rendering/RenderTreeAsText.cpp: flooring produces the least amount of rebaseline diff (still over 1200 tests). It doesn't really matter which direction we round
as long as it is consistent.
(WebCore::writeTextRun):
(WebCore::writeSimpleLine):
* platform/graphics/LayoutRect.h:
(WebCore::LayoutRect::LayoutRect):
* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::recalcColumn):
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths):
(WebCore::AutoTableLayout::applyPreferredLogicalWidthQuirks):
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
(WebCore::AutoTableLayout::layout):
* rendering/AutoTableLayout.h:
* rendering/FixedTableLayout.cpp:
(WebCore::FixedTableLayout::calcWidthArray):
(WebCore::FixedTableLayout::applyPreferredLogicalWidthQuirks):
(WebCore::FixedTableLayout::layout):
* rendering/FixedTableLayout.h:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computePreferredLogicalWidths):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::updateLogicalWidth):
(WebCore::RenderTable::distributeExtraLogicalHeight):
(WebCore::RenderTable::layout):
(WebCore::RenderTable::addOverflowFromChildren):
(WebCore::RenderTable::computePreferredLogicalWidths):
(WebCore::RenderTable::offsetWidthForColumn):
(WebCore::RenderTable::calcBorderStart):
(WebCore::RenderTable::calcBorderEnd):
(WebCore::RenderTable::outerBorderBefore):
(WebCore::RenderTable::outerBorderAfter):
(WebCore::RenderTable::outerBorderStart):
(WebCore::RenderTable::outerBorderEnd):
* rendering/RenderTable.h:
(WebCore::RenderTable::hBorderSpacing):
(WebCore::RenderTable::vBorderSpacing):
(WebCore::RenderTable::outerBorderLeft):
(WebCore::RenderTable::outerBorderRight):
(WebCore::RenderTable::outerBorderTop):
(WebCore::RenderTable::outerBorderBottom):
(WebCore::RenderTable::columnPositions):
(WebCore::RenderTable::setColumnPosition):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::logicalWidthFromColumns):
(WebCore::RenderTableCell::computeIntrinsicPadding):
(WebCore::RenderTableCell::setCellLogicalWidth):
(WebCore::RenderTableCell::layout):
(WebCore::RenderTableCell::paddingTop):
(WebCore::RenderTableCell::paddingBottom):
(WebCore::RenderTableCell::paddingLeft):
(WebCore::RenderTableCell::paddingRight):
(WebCore::RenderTableCell::paddingBefore):
(WebCore::RenderTableCell::paddingAfter):
(WebCore::RenderTableCell::clippedOverflowRectForRepaint):
(WebCore::RenderTableCell::borderLeft):
(WebCore::RenderTableCell::borderRight):
(WebCore::RenderTableCell::borderTop):
(WebCore::RenderTableCell::borderBottom):
(WebCore::RenderTableCell::borderStart):
(WebCore::RenderTableCell::borderEnd):
(WebCore::RenderTableCell::borderBefore):
(WebCore::RenderTableCell::borderAfter):
(WebCore::RenderTableCell::borderHalfLeft):
(WebCore::RenderTableCell::borderHalfRight):
(WebCore::RenderTableCell::borderHalfTop):
(WebCore::RenderTableCell::borderHalfBottom):
(WebCore::RenderTableCell::borderHalfStart):
(WebCore::RenderTableCell::borderHalfEnd):
(WebCore::RenderTableCell::borderHalfBefore):
(WebCore::RenderTableCell::borderHalfAfter):
(WebCore::CollapsedBorders::addBorder):
(WebCore::RenderTableCell::paintCollapsedBorders):
(WebCore::RenderTableCell::paintBackgroundsBehindCell):
(WebCore::RenderTableCell::paintBoxDecorations):
(WebCore::RenderTableCell::paintMask):
* rendering/RenderTableCell.h:
(WebCore::RenderTableCell::logicalHeightForRowSizing):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::calcRowLogicalHeight):
(WebCore::RenderTableSection::layout):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToAutoRows):
(WebCore::RenderTableSection::distributeRemainingExtraLogicalHeight):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToRows):
(WebCore::RenderTableSection::layoutRows):
(WebCore::RenderTableSection::calcOuterBorderBefore):
(WebCore::RenderTableSection::calcOuterBorderAfter):
(WebCore::RenderTableSection::calcOuterBorderStart):
(WebCore::RenderTableSection::calcOuterBorderEnd):
(WebCore::RenderTableSection::logicalRectForWritingModeAndDirection):
(WebCore::RenderTableSection::dirtiedColumns):
(WebCore::RenderTableSection::spannedColumns):
(WebCore::RenderTableSection::offsetLeftForRowGroupBorder):
(WebCore::RenderTableSection::offsetTopForRowGroupBorder):
(WebCore::RenderTableSection::verticalRowGroupBorderHeight):
(WebCore::RenderTableSection::horizontalRowGroupBorderWidth):
(WebCore::RenderTableSection::paintRowGroupBorderIfRequired):
(WebCore::RenderTableSection::setLogicalPositionForCell):
* rendering/RenderTableSection.h:
(WebCore::RenderTableSection::outerBorderLeft):
(WebCore::RenderTableSection::outerBorderRight):
(WebCore::RenderTableSection::outerBorderTop):
(WebCore::RenderTableSection::outerBorderBottom):
* rendering/style/CollapsedBorderValue.h:
(WebCore::CollapsedBorderValue::CollapsedBorderValue):
(WebCore::CollapsedBorderValue::width):
LayoutTests:
Changeset (due to the massive rebaselining) is too long to list.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191623
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
calvaris@igalia.com [Tue, 27 Oct 2015 11:36:56 +0000 (11:36 +0000)]
[Streams API] Add close method to writable stream
https://bugs.webkit.org/show_bug.cgi?id=150560
Reviewed by Darin Adler.
Source/WebCore:
Added the close method which requires three additional writable stream internal functions plus a queuing
function to retrieve a value from the queue according to the spec.
Current test set suffices. Expectations were updated accordingly.
* Modules/streams/StreamInternals.js:
(peekQueueValue):
* Modules/streams/WritableStream.js:
(close):
* Modules/streams/WritableStreamInternals.js:
(callOrScheduleWritableStreamAdvanceQueue):
(writableStreamAdvanceQueue):
(closeWritableStream): Added as per spec.
LayoutTests:
New expectations after adding close method to writable stream.
Two tests were also flagged because of bug 147933 that prevents them from running properly in certain
conditions. So far this only happened in Mac, hence they were flagged only for it.
* platform/mac/TestExpectations:
* streams/reference-implementation/bad-underlying-sinks-expected.txt:
* streams/reference-implementation/brand-checks-expected.txt:
* streams/reference-implementation/pipe-to-expected.txt:
* streams/reference-implementation/writable-stream-abort-expected.txt:
* streams/reference-implementation/writable-stream-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191622
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
utatane.tea@gmail.com [Tue, 27 Oct 2015 07:00:57 +0000 (07:00 +0000)]
[ES6] Add DFG/FTL support for accessor put operations
https://bugs.webkit.org/show_bug.cgi?id=148860
Reviewed by Geoffrey Garen.
This patch introduces accessor defining ops into DFG and FTL.
The following DFG nodes are introduced.
op_put_getter_by_id => PutGetterById
op_put_setter_by_id => PutSetterById
op_put_getter_setter => PutGetterSetterById
op_put_getter_by_val => PutGetterByVal
op_put_setter_by_val => PutSetterByVal
These DFG nodes just call operations. But it does not prevent compiling in DFG/FTL.
To use operations defined for baseline JIT, we clean up existing operations.
And reuse these operations in DFG and FTL.
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasAccessorAttributes):
(JSC::DFG::Node::accessorAttributes):
* dfg/DFGNodeType.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePutAccessorById):
(JSC::DFG::SpeculativeJIT::compilePutGetterSetterById):
(JSC::DFG::SpeculativeJIT::compilePutAccessorByVal):
We should fill all GPRs before calling flushRegisters().
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLIntrinsicRepository.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::compileNode):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutAccessorById):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutGetterSetterById):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutAccessorByVal):
* jit/JIT.h:
* jit/JITInlines.h:
(JSC::JIT::callOperation):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter):
* tests/stress/dfg-put-accessors-by-id-class.js: Added.
(shouldBe):
(testAttribute):
(getter.Cocoa.prototype.get hello):
(getter.Cocoa):
(getter):
(setter.Cocoa):
(setter.Cocoa.prototype.set hello):
(setter):
(accessors.Cocoa):
(accessors.Cocoa.prototype.get hello):
(accessors.Cocoa.prototype.set hello):
(accessors):
* tests/stress/dfg-put-accessors-by-id.js: Added.
(shouldBe):
(testAttribute):
(getter.object.get hello):
(getter):
(setter.object.set hello):
(setter):
(accessors.object.get hello):
(accessors.object.set hello):
(accessors):
* tests/stress/dfg-put-getter-by-id-class.js: Added.
(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.get hello):
(getter.Cocoa.prototype.get name):
(getter):
* tests/stress/dfg-put-getter-by-id.js: Added.
(shouldBe):
(testAttribute):
(getter.object.get hello):
(getter):
* tests/stress/dfg-put-getter-by-val-class.js: Added.
(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.get name):
(getter):
* tests/stress/dfg-put-getter-by-val.js: Added.
(shouldBe):
(testAttribute):
(getter.object.get name):
(getter):
* tests/stress/dfg-put-setter-by-id-class.js: Added.
(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.set hello):
(getter.Cocoa.prototype.get name):
(getter):
* tests/stress/dfg-put-setter-by-id.js: Added.
(shouldBe):
(testAttribute):
(setter.object.set hello):
(setter):
* tests/stress/dfg-put-setter-by-val-class.js: Added.
(shouldBe):
(testAttribute):
(setter.Cocoa):
(setter.Cocoa.prototype.set name):
(setter):
* tests/stress/dfg-put-setter-by-val.js: Added.
(shouldBe):
(testAttribute):
(setter.object.set name):
(setter):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191621
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Tue, 27 Oct 2015 05:22:55 +0000 (05:22 +0000)]
Make IDBKeyData from a struct to a class.
https://bugs.webkit.org/show_bug.cgi?id=150576
Reviewed by Alex Christensen.
Source/WebCore:
No new tests (No change in behavior).
* Modules/indexeddb/IDBKeyData.cpp:
(WebCore::IDBKeyData::IDBKeyData):
(WebCore::IDBKeyData::maybeCreateIDBKey):
(WebCore::IDBKeyData::isolatedCopy):
(WebCore::IDBKeyData::encode):
(WebCore::IDBKeyData::decode):
(WebCore::IDBKeyData::compare):
(WebCore::IDBKeyData::loggingString):
(WebCore::IDBKeyData::setArrayValue):
(WebCore::IDBKeyData::setStringValue):
(WebCore::IDBKeyData::setDateValue):
(WebCore::IDBKeyData::setNumberValue):
* Modules/indexeddb/IDBKeyData.h:
(WebCore::IDBKeyData::IDBKeyData):
(WebCore::IDBKeyData::minimum):
(WebCore::IDBKeyData::maximum):
(WebCore::IDBKeyData::isNull):
(WebCore::IDBKeyData::type):
(WebCore::IDBKeyData::encode):
(WebCore::IDBKeyData::decode):
* Modules/indexeddb/legacy/IDBTransactionBackendOperations.cpp:
(WebCore::GetOperation::perform):
* bindings/js/IDBBindingUtilities.h:
* platform/CrossThreadCopier.h:
Source/WebKit2:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
* DatabaseProcess/IndexedDB/IDBSerialization.h:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::putRecordInBackingStore):
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
* DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:
(WebKit::buildIndexStatement):
(WebKit::buildObjectStoreStatement):
(WebKit::SQLiteIDBCursor::establishStatement):
(WebKit::SQLiteIDBCursor::createSQLiteStatement):
(WebKit::SQLiteIDBCursor::resetAndRebindStatement):
(WebKit::SQLiteIDBCursor::iterate):
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createIndex):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::didPutRecord):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191620
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 27 Oct 2015 05:16:17 +0000 (05:16 +0000)]
[GTK] [Stable] Build GL texture mapper only if USE_TEXTURE_MAPPER_GL
https://bugs.webkit.org/show_bug.cgi?id=148606
Unreviewed, build-only change.
No new tests, build-only change.
Patch by Philip Chimento <philip.chimento@gmail.com> on 2015-10-26
* PlatformGTK.cmake: Remove sources requiring GL from list of
sources that are built when USE_TEXTURE_MAPPER is true, and add a
separate condition within the USE_TEXTURE_MAPPER condition to
build those sources when USE_TEXTURE_MAPPER_GL is true.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191619
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 27 Oct 2015 05:15:50 +0000 (05:15 +0000)]
[GTK] [Stable] InstallMissingMediaPluginsPermissionRequest not defined when building without GStreamer
https://bugs.webkit.org/show_bug.cgi?id=148607
Unreviewed, build fix.
Patch by Philip Chimento <philip.chimento@gmail.com> on 2015-10-26
* UIProcess/gstreamer/InstallMissingMediaPluginsPermissionRequest.h:
Add a stub for the InstallMissingMediaPluginsPermissionRequest class
for the case when video is disabled or not using GStreamer. It's OK
that this class does nothing, because the associated C API contains
an assert_not_reached if video is disabled. We just need to define
the symbol so that the function signature will compile.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191618
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Tue, 27 Oct 2015 04:03:38 +0000 (04:03 +0000)]
Remove redundant GraphicsContext::clip(const Path&, WindRule)
https://bugs.webkit.org/show_bug.cgi?id=150584
Reviewed by Tim Horton.
GraphicsContext had both clipPath(const Path&, WindRule) and clip(const Path&, WindRule),
which were mostly the same other than GraphicsContext::clipPath() not clipping if the path
was empty (added, I think by mistake, in r72926), and not calling m_data->clip().
Make clipPath() be the winner, and have it behave like clip() with empty paths, and call m_data->clip().
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::clipRoundedRect):
* platform/graphics/GraphicsContext.h:
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::clipPath):
(WebCore::GraphicsContext::clip): Deleted.
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::clipPath):
(WebCore::GraphicsContext::canvasClip):
(WebCore::GraphicsContext::clip): Deleted.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintBoxShadow): Making a path, calling addRoundedRect() and then clipping
to the path is the same as context.clipRoundedRect().
* rendering/mathml/RenderMathMLRadicalOperator.cpp:
(WebCore::RenderMathMLRadicalOperator::paint):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191617
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
youenn.fablet@crf.canon.fr [Tue, 27 Oct 2015 00:55:35 +0000 (00:55 +0000)]
Add myself to the reviewers list
https://bugs.webkit.org/show_bug.cgi?id=150581
Unreviewed.
* Scripts/webkitpy/common/config/contributors.json:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191616
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mattbaker@apple.com [Tue, 27 Oct 2015 00:25:49 +0000 (00:25 +0000)]
Web Inspector: WebInspector.Object can dispatch constructor-level events multiple times
https://bugs.webkit.org/show_bug.cgi?id=150579
Reviewed by Timothy Hatcher.
Use `hasOwnProperty` when checking for constructor event listeners when walking the
prototype chain. This prevents listeners registered with a base class constructor
from being dispatched multiple times by getting picked up higher in the prototype chain.
* UserInterface/Base/Object.js:
(WebInspector.Object.prototype.dispatchEventToListeners.dispatch):
(WebInspector.Object.prototype.dispatchEventToListeners):
(WebInspector.Object):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191615
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mattbaker@apple.com [Tue, 27 Oct 2015 00:11:45 +0000 (00:11 +0000)]
Web Inspector: Hundreds of failed assertions after switching to Rendering Frames after recording complete
https://bugs.webkit.org/show_bug.cgi?id=150568
Reviewed by Timothy Hatcher.
When the TimelineRecordingContentView responds to the current content view changing,
the TimelineOverview may be swapped out (if switching from a Timelines content view to a
Rendering Frames content view). This patch installs a new overview (if it's changing) prior
to setting the TimelineSidebarPanel's tree outline, as setting the tree outline forces
filters to run.
Filtering tree elements requires that the timeline overview is up to date, which was the
cause the assertion deluge.
* UserInterface/Views/TimelineRecordingContentView.js:
(WebInspector.TimelineRecordingContentView.prototype._currentContentViewDidChange):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191614
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 27 Oct 2015 00:08:21 +0000 (00:08 +0000)]
Web Inspector: Spacebar to start recording should not cause system beep
https://bugs.webkit.org/show_bug.cgi?id=150573
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-10-26
Reviewed by Timothy Hatcher.
* UserInterface/Views/TimelineSidebarPanel.js:
(WebInspector.TimelineSidebarPanel.prototype._toggleRecordingOnSpacebar):
(WebInspector.TimelineSidebarPanel.prototype._toggleNewRecordingOnSpacebar):
The keyboard shortcuts do not implicitly prevent default because they may bail.
So in cases where they do handle the key, prevent default to prevent system beeps.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191613
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mattbaker@apple.com [Mon, 26 Oct 2015 23:53:54 +0000 (23:53 +0000)]
Web Inspector: Cleanup sidebar panels, reduce `delete` and use Maps instead of objects
https://bugs.webkit.org/show_bug.cgi?id=150548
Reviewed by Timothy Hatcher.
* UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
(WebInspector.LayerTreeDetailsSidebarPanel):
(WebInspector.LayerTreeDetailsSidebarPanel.prototype._updateDataGrid):
(WebInspector.LayerTreeDetailsSidebarPanel.prototype._dataGridNodeForLayer):
* UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel):
(WebInspector.NavigationSidebarPanel.restoreStateFromCookie.finalAttemptToRestoreViewStateFromCookie):
(WebInspector.NavigationSidebarPanel.restoreStateFromCookie):
(WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement):
(WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
(WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie):
Switched to using Symbol() to set external properties on tree elements.
* UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
(WebInspector.ScopeChainDetailsSidebarPanel.prototype._generateCallFramesSection):
* UserInterface/Views/StorageSidebarPanel.js:
(WebInspector.StorageSidebarPanel):
(WebInspector.StorageSidebarPanel.prototype._addDatabase):
(WebInspector.StorageSidebarPanel.prototype._addIndexedDatabase):
(WebInspector.StorageSidebarPanel.prototype._addFrameManifest):
(WebInspector.StorageSidebarPanel.prototype._storageCleared):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191612
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Mon, 26 Oct 2015 23:51:36 +0000 (23:51 +0000)]
Removing duplicated test expectations and removing debug flag from flaky fast/canvas/webgl tests
https://bugs.webkit.org/show_bug.cgi?id=150367
Unreviewed test gardening.
* platform/mac-wk1/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191611
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Mon, 26 Oct 2015 23:36:01 +0000 (23:36 +0000)]
Floating box is misplaced after content change.
https://bugs.webkit.org/show_bug.cgi?id=150271
Reviewed by David Hyatt.
Collapse anonymous block when as the result of a sibling removal only floating siblings are left.
Source/WebCore:
Test: fast/block/collapse-anon-block-with-float-siblings-only.html
* rendering/RenderBlock.cpp:
(WebCore::canCollapseAnonymousBlock):
(WebCore::canMergeContiguousAnonymousBlocks):
(WebCore::RenderBlock::collapseAnonymousBoxChild):
(WebCore::RenderBlock::removeChild):
(WebCore::canMergeAnonymousBlock): Deleted.
* rendering/RenderBlock.h:
* rendering/RenderElement.cpp:
(WebCore::RenderElement::removeAnonymousWrappersForInlinesIfNecessary):
LayoutTests:
* fast/block/collapse-anon-block-with-float-siblings-only-expected.html: Added.
* fast/block/collapse-anon-block-with-float-siblings-only.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191610
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 23:08:06 +0000 (23:08 +0000)]
Null dereference loading Blink layout test editing/execCommand/crash-replacing-list-by-list.html
https://bugs.webkit.org/show_bug.cgi?id=149288
<rdar://problem/
22746310>
Patch by Jiewen Tan <jiewen_tan@apple.com> on 2015-10-26
Reviewed by Chris Dumez.
Source/WebCore:
This is a merge of Blink r170821:
https://codereview.chromium.org/
220233013
Test: editing/execCommand/crash-replacing-list-by-list.html
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::insertAsListItems):
LayoutTests:
* editing/execCommand/crash-replacing-list-by-list-expected.txt: Added.
* editing/execCommand/crash-replacing-list-by-list.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191609
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 23:05:54 +0000 (23:05 +0000)]
Null dereference loading Blink layout test editing/execCommand/insert-image-changing-visibility-crash.html
https://bugs.webkit.org/show_bug.cgi?id=150208
<rdar://problem/
23137109>
Patch by Jiewen Tan <jiewen_tan@apple.com> on 2015-10-26
Reviewed by Chris Dumez.
Source/WebCore:
This is a merge from Blink r168502:
https://codereview.chromium.org/
183893018
Test: editing/execCommand/insert-image-changing-visibility-crash.html
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::doApply):
We should check again the visibility of the inserted position again since
the replacement might change the visibility.
LayoutTests:
* editing/execCommand/insert-image-changing-visibility-crash-expected.txt: Added.
* editing/execCommand/insert-image-changing-visibility-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191608
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 26 Oct 2015 22:58:39 +0000 (22:58 +0000)]
Pipe custom context menu handling through to the UIDelegate object
https://bugs.webkit.org/show_bug.cgi?id=150572
Reviewed by Tim Horton.
* UIProcess/API/APIContextMenuClient.h:
(API::ContextMenuClient::menuFromProposedMenu):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView setUIDelegate:]):
* UIProcess/Cocoa/UIDelegate.h:
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::createContextMenuClient):
(WebKit::UIDelegate::ContextMenuClient::ContextMenuClient):
(WebKit::UIDelegate::ContextMenuClient::~ContextMenuClient):
(WebKit::UIDelegate::ContextMenuClient::menuFromProposedMenu):
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::showContextMenu):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191607
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Mon, 26 Oct 2015 22:51:57 +0000 (22:51 +0000)]
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Anders Carlsson.
* UIProcess/API/mac/WKView.mm:
(-[WKView mouseDown:]):
(-[WKView mouseDragged:]):
(-[WKView draggedImage:endedAt:operation:]):
(-[WKView draggingEntered:]):
(-[WKView draggingUpdated:]):
(-[WKView draggingExited:]):
(-[WKView prepareForDragOperation:]):
(-[WKView performDragOperation:]):
(-[WKView _hitTest:dragTypes:]):
(-[WKView initWithFrame:processPool:configuration:webView:]):
(-[WKView applicationFlags:]): Deleted.
(maybeCreateSandboxExtensionFromPasteboard): Deleted.
(createSandboxExtensionsForFileUpload): Deleted.
(-[WKView _registerDraggedTypes]): Deleted.
* UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::ignoresMouseDraggedEvents):
* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::setIgnoresMouseDraggedEvents):
(WebKit::WebViewImpl::draggedImage):
(WebKit::applicationFlagsForDrag):
(WebKit::WebViewImpl::draggingEntered):
(WebKit::WebViewImpl::draggingUpdated):
(WebKit::WebViewImpl::draggingExited):
(WebKit::WebViewImpl::prepareForDragOperation):
(WebKit::maybeCreateSandboxExtensionFromPasteboard):
(WebKit::createSandboxExtensionsForFileUpload):
(WebKit::WebViewImpl::performDragOperation):
(WebKit::WebViewImpl::hitTestForDragTypes):
(WebKit::WebViewImpl::registerDraggedTypes):
Move some drag-related things to WebViewImpl.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191606
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 22:49:50 +0000 (22:49 +0000)]
Null dereference loading Blink layout test editing/execCommand/insert-ordered-list-crash.html
https://bugs.webkit.org/show_bug.cgi?id=150209
<rdar://problem/
23137198>
Patch by Jiewen Tan <jiewen_tan@apple.com> on 2015-10-26
Reviewed by Chris Dumez.
Source/WebCore:
This is a merge from Blink r168006:
https://codereview.chromium.org/
181283002
Test: editing/execCommand/insert-ordered-list-crash.html
* editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::doApply):
setEndingSelection() might change endingSelection(), we should check again.
LayoutTests:
* editing/execCommand/insert-ordered-list-crash-expected.txt: Added.
* editing/execCommand/insert-ordered-list-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191605
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 22:03:55 +0000 (22:03 +0000)]
Null dereference loading Blink layout test editing/execCommand/insert-html-to-document-element-crash.html
https://bugs.webkit.org/show_bug.cgi?id=149294
<rdar://problem/
22746657>
Patch by Jiewen Tan <jiewen_tan@apple.com> on 2015-10-26
Reviewed by Darin Adler.
Source/WebCore:
This is a merge of Blink r175019:
https://codereview.chromium.org/
300143012
Test: editing/execCommand/insert-html-to-document-element-crash.html
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
check nullable value |element->parentNode()| before using it.
LayoutTests:
* editing/execCommand/insert-html-to-document-element-crash-expected.txt: Added.
* editing/execCommand/insert-html-to-document-element-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191604
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 22:01:03 +0000 (22:01 +0000)]
Null dereference loading Blink layout test editing/execCommand/indent-nested-blockquotes-crash.html
https://bugs.webkit.org/show_bug.cgi?id=149291
<rdar://problem/
22746473>
Patch by Jiewen Tan <jiewen_tan@apple.com> on 2015-10-26
Reviewed by Darin Adler.
Source/WebCore:
This is a merge of Blink r172967:
https://codereview.chromium.org/
251723003
Test: editing/execCommand/indent-nested-blockquotes-crash.html
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::insertNodeAfter):
LayoutTests:
* editing/execCommand/indent-nested-blockquotes-crash-expected.txt: Added.
* editing/execCommand/indent-nested-blockquotes-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191603
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Mon, 26 Oct 2015 21:45:59 +0000 (21:45 +0000)]
Add logging to warn about under-estimated FTL inline cache sizes.
https://bugs.webkit.org/show_bug.cgi?id=150570
Reviewed by Geoffrey Garen.
Added 2 options:
1. JSC_dumpFailedICSizing - dumps an error message if the FTL encounters IC size
estimates that are less than the actual needed code size.
This option is useful for when we add a new IC and want to compute an
estimated size for the IC. To do this:
1. Build jsc for the target port with a very small IC size (enough to
store the jump instruction needed for the out of line fallback
implementation).
2. Implement a test suite with scenarios that exercise all the code paths in
the IC generator.
3. Run jsc with JSC_dumpFailedICSizing=true on the test suite.
4. The max value reported by the dumps will be the worst case size needed to
store the IC. We should use this value for our estimate.
5. Update the IC's estimated size and rebuild jsc.
6. Re-run (3) and confirm that there are no more error messages about the
IC sizing.
2. JSC_assertICSizing - same as JSC_dumpFailedICSizing except that it also
crashes the VM each time it encounters an inadequate IC size estimate.
This option is useful for regression testing to ensure that our estimates
do not regress.
* ftl/FTLCompile.cpp:
(JSC::FTL::generateInlineIfPossibleOutOfLineIfNot):
* runtime/Options.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191602
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dburkart@apple.com [Mon, 26 Oct 2015 21:45:23 +0000 (21:45 +0000)]
`make analyze` should build using the debug configuration
https://bugs.webkit.org/show_bug.cgi?id=150571
Reviewed by Lucas Forschler.
.:
* Makefile.shared:
WebKitLibraries:
* Makefile:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191601
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 26 Oct 2015 21:41:36 +0000 (21:41 +0000)]
Pipe custom context menu handling through to the UIDelegate object
https://bugs.webkit.org/show_bug.cgi?id=150572
Reviewed by Tim Horton.
* UIProcess/API/APIContextMenuClient.h:
(API::ContextMenuClient::menuFromProposedMenu):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView setUIDelegate:]):
* UIProcess/Cocoa/UIDelegate.h:
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::createContextMenuClient):
(WebKit::UIDelegate::ContextMenuClient::ContextMenuClient):
(WebKit::UIDelegate::ContextMenuClient::~ContextMenuClient):
(WebKit::UIDelegate::ContextMenuClient::menuFromProposedMenu):
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::showContextMenu):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191600
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Mon, 26 Oct 2015 21:09:31 +0000 (21:09 +0000)]
2015-10-26 Ryan Haddad <ryanhaddad@apple.com>
Marking svg/repaint/add-background-property-on-root.html as flaky on mac-wk1 due to timeouts
https://bugs.webkit.org/show_bug.cgi?id=150564
Unreviewed test gardening.
* platform/mac-wk1/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191599
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Mon, 26 Oct 2015 21:07:21 +0000 (21:07 +0000)]
Modern IDB: Backing store objectStores (plumbing for b/150468).
https://bugs.webkit.org/show_bug.cgi?id=150543
Reviewed by Alex Christensen.
No new tests (No change in behavior, plumbing for future testability)
* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* Modules/indexeddb/server/IDBBackingStore.h:
* Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
(WebCore::IDBServer::MemoryBackingStoreTransaction::addNewObjectStore):
(WebCore::IDBServer::MemoryBackingStoreTransaction::abort):
(WebCore::IDBServer::MemoryBackingStoreTransaction::commit):
(WebCore::IDBServer::MemoryBackingStoreTransaction::finish):
* Modules/indexeddb/server/MemoryBackingStoreTransaction.h:
(WebCore::IDBServer::MemoryBackingStoreTransaction::isWriting):
* Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
(WebCore::IDBServer::MemoryIDBBackingStore::createObjectStore):
(WebCore::IDBServer::MemoryIDBBackingStore::removeObjectStoreForVersionChangeAbort):
* Modules/indexeddb/server/MemoryIDBBackingStore.h:
* Modules/indexeddb/server/MemoryObjectStore.cpp:
(WebCore::IDBServer::MemoryObjectStore::create):
(WebCore::IDBServer::MemoryObjectStore::MemoryObjectStore):
(WebCore::IDBServer::MemoryObjectStore::~MemoryObjectStore):
(WebCore::IDBServer::MemoryObjectStore::writeTransactionStarted):
(WebCore::IDBServer::MemoryObjectStore::writeTransactionFinished):
* Modules/indexeddb/server/MemoryObjectStore.h:
(WebCore::IDBServer::MemoryObjectStore::info):
* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::createObjectStore):
* Modules/indexeddb/shared/IDBError.cpp:
(WebCore::idbErrorName):
(WebCore::idbErrorDescription):
* Modules/indexeddb/shared/IDBError.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191598
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 20:16:53 +0000 (20:16 +0000)]
Null dereference loading Blink layout test editing/execCommand/indent-inline-box-crash.html
https://bugs.webkit.org/show_bug.cgi?id=149290
<rdar://problem/
22746435>
Patch by Jiewen Tan <jiewen_tan@apple.com> on 2015-10-26
Reviewed by Alex Christensen.
Source/WebCore:
This is a merge of Blink r174952:
https://codereview.chromium.org/
297203004
Test: editing/execCommand/indent-inline-box-crash.html
* editing/IndentOutdentCommand.cpp:
(WebCore::IndentOutdentCommand::tryIndentingAsListItem):
LayoutTests:
* editing/execCommand/indent-inline-box-crash-expected.txt: Added.
* editing/execCommand/indent-inline-box-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191597
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 20:08:19 +0000 (20:08 +0000)]
Null dereference loading Blink layout test editing/execCommand/indent-no-visible-contents-crash.html
https://bugs.webkit.org/show_bug.cgi?id=149292
<rdar://problem/
22746530>
Patch by Jiewen Tan <jiewen_tan@apple.com> on 2015-10-26
Reviewed by Alex Christensen.
Source/WebCore:
This is a merge of Blink r176735:
https://codereview.chromium.org/
349143002
Test: editing/execCommand/indent-no-visible-contents-crash.html
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::moveParagraphWithClones):
Sometimes callers of this method will pass null startOfParagraphToMove || endOfParagraphToMove,
hence check them before proceeding.
LayoutTests:
* editing/execCommand/indent-no-visible-contents-crash-expected.txt: Added.
* editing/execCommand/indent-no-visible-contents-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191596
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Mon, 26 Oct 2015 20:01:51 +0000 (20:01 +0000)]
Build fix when using NETWORK_SESSION after r191457.
* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[NetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
Use resourceResponse.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191595
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sbarati@apple.com [Mon, 26 Oct 2015 19:48:29 +0000 (19:48 +0000)]
r190735 Caused us to maybe trample the base's tag-GPR on 32-bit inline cache when the cache allocates a scratch register and then jumps to the slow path
https://bugs.webkit.org/show_bug.cgi?id=150532
Reviewed by Geoffrey Garen.
The base's tag register used to show up in the used register set
before r190735 because of how the DFG kept track of used register. I changed this
in my work on inline caching because we don't want to spill these registers
when we have a GetByIdFlush/PutByIdFlush and we use the used register set
as the metric of what to spill. That said, these registers should be locked
and not used as scratch registers by the scratch register allocator. The
reason is that our inline cache may fail and jump to the slow path. The slow
path then uses the base's tag register. If the inline cache used the base's tag
register as a scratch and the inline cache fails and jumps to the slow path, we
have a problem because the tag may now be trampled.
Note that this doesn't mean that we can't trample the base's tag register when making
a call. We can totally trample the register as long as the inline cache succeeds in a GetByIdFlush/PutByIdFlush.
The problem is only when we trample it and then jump to the slow path.
This patch fixes this bug by making StructureStubInfo keep track of the base's
tag GPR. PolymorphicAccess then locks this register when using the ScratchRegisterAllocator.
* bytecode/PolymorphicAccess.cpp:
(JSC::AccessCase::generate):
(JSC::PolymorphicAccess::regenerate):
* bytecode/StructureStubInfo.h:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileIn):
* jit/JITInlineCacheGenerator.cpp:
(JSC::JITByIdGenerator::JITByIdGenerator):
* tests/stress/regress-150532.js: Added.
(assert):
(randomFunction):
(foo):
(i.switch):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191594
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 26 Oct 2015 19:20:09 +0000 (19:20 +0000)]
Remove more dead context menu code
https://bugs.webkit.org/show_bug.cgi?id=150569
Reviewed by Tim Horton.
* UIProcess/API/APIContextMenuClient.h:
(API::ContextMenuClient::contextMenuDismissed): Deleted.
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageContextMenuClient): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191593
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryanhaddad@apple.com [Mon, 26 Oct 2015 19:15:25 +0000 (19:15 +0000)]
2015-10-26 Ryan Haddad <ryanhaddad@apple.com>
Adding myself to contributors.json
* Scripts/webkitpy/common/config/contributors.json:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191592
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 26 Oct 2015 19:01:28 +0000 (19:01 +0000)]
Remove dead context menu code
https://bugs.webkit.org/show_bug.cgi?id=150567
Reviewed by Tim Horton.
Source/WebCore:
* loader/EmptyClients.h:
* page/ContextMenuClient.h:
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::showContextMenu): Deleted.
Source/WebKit/mac:
* WebCoreSupport/WebContextMenuClient.h:
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::getCustomMenuFromDefaultItems): Deleted.
Source/WebKit2:
* WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
(WebKit::WebContextMenuClient::getCustomMenuFromDefaultItems): Deleted.
* WebProcess/WebCoreSupport/WebContextMenuClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191591
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Oct 2015 18:39:05 +0000 (18:39 +0000)]
Implement 'round' and 'space' values for border-image
https://bugs.webkit.org/show_bug.cgi?id=14185
Reviewed by Tim Horton.
Source/WebCore:
Add support for "round" and "space" values for border-image-repeat.
Following "stretch" and "repeat", the code is added to Image::drawTiled().
For "round", we compute an integral number of copies of the image that fit,
and then adjust the tile scale.
For "space", we also compute an integral number N of copies that will fit,
and then divide the remaining space amongst N+1 gaps, adjusting the tiling
phase so that with an even number of images, a gap is centered.
Tests: fast/borders/border-image-round.html
fast/borders/border-image-space.html
* platform/graphics/Image.cpp:
(WebCore::Image::drawTiled):
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawPattern):
LayoutTests:
Ref tests that clip, leaving relevant parts of the images.
* fast/borders/border-image-round-expected.html: Added.
* fast/borders/border-image-round.html: Added.
* fast/borders/border-image-space-expected.html: Added.
* fast/borders/border-image-space.html: Added.
* fast/borders/resources/big-border-image-lines.png: Added.
* fast/borders/resources/big-border-image.png: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191590
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Oct 2015 18:26:48 +0000 (18:26 +0000)]
Incorrect repeated background-size behavior in keyframes
https://bugs.webkit.org/show_bug.cgi?id=150309
Reviewed by Zalan Bujtas.
Source/WebCore:
After computing the style for a keyframe, we failed to propagate unset
fill-layer properties to all layers, which caused incorrect behavior when
there were multiple background images, but only one value on a background
property in the keyframes.
Fix by calling adjustRenderStyle() on keyframe styles, which invokes
style.adjustBackgroundLayers() which fixes the bug.
Test: animations/multiple-backgrounds.html
* css/StyleResolver.cpp:
(WebCore::StyleResolver::styleForKeyframe):
LayoutTests:
* animations/multiple-backgrounds-expected.html: Added.
* animations/multiple-backgrounds.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191589
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Mon, 26 Oct 2015 18:24:55 +0000 (18:24 +0000)]
Don't expose the whitelist/blacklist in _WKUserStyleSheet
https://bugs.webkit.org/show_bug.cgi?id=150566
Reviewed by Anders Carlsson.
Source/WebKit2:
* UIProcess/API/Cocoa/_WKUserStyleSheet.h:
* UIProcess/API/Cocoa/_WKUserStyleSheet.mm:
(-[_WKUserStyleSheet initWithSource:forMainFrameOnly:]):
(toWTFStrings): Deleted.
(-[_WKUserStyleSheet initWithSource:whitelistedURLPatterns:blacklistedURLPatterns:forMainFrameOnly:]): Deleted.
(-[_WKUserStyleSheet whitelistedURLPatterns]): Deleted.
(-[_WKUserStyleSheet blacklistedURLPatterns]): Deleted.
Tools:
* TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
(TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191588
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Mon, 26 Oct 2015 18:08:50 +0000 (18:08 +0000)]
Indexing an object with an integer that is not a supported property index should not call the named property getter
https://bugs.webkit.org/show_bug.cgi?id=148871
<rdar://problem/
22589952>
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C HTML test now that more checks are passing.
* web-platform-tests/html/semantics/forms/the-form-element/form-elements-matches-expected.txt:
Source/WebCore:
Indexing an object with an integer that is not a supported property
index should not call the named property getter, as per the Web IDL
specification:
https://heycam.github.io/webidl/#idl-indexed-properties (Note in blue)
Firefox and Chrome both already behave according to the specification
here so this patch aligns our behavior with other browsers as well.
No new tests, already covered by existing test.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTarget::getOwnPropertySlot):
(WebCore::JSTestEventTarget::getOwnPropertySlotByIndex): Deleted.
(WebCore::jsTestEventTargetConstructor): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191587
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 16:44:54 +0000 (16:44 +0000)]
Add an option to output the results of the graphics benchmark in JSON format
https://bugs.webkit.org/show_bug.cgi?id=150484
<rdar://problem/
23243721>
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2015-10-26
Reviewed by Darin Adler.
* Animometer/resources/extensions.js:
(ResultsDashboard): A new class to hold the iterations results.
(ResultsDashboard.prototype.push): Appends an iteration results;
(ResultsDashboard.prototype.toJSON): Converts the iterations results to JSON format.
(RecordTable.prototype.clear): Clears the results table.
(RecordTable.prototype._showTitles): Shows the header titles and appends the sub-titles to a queue.
(RecordTable.prototype._showHeader): Shows the table header titles.
(RecordTable.prototype._showEmpty): Shows an empty table cell.
(RecordTable.prototype._showValue): Shows a number value in the results table.
(RecordTable.prototype._showSamples): Shows a button for the sampled data graph.
(RecordTable.prototype._showTest): Shows the results of a single test.
(RecordTable.prototype._showSuite): Shows the results of a single suite.
(RecordTable.prototype.showRecord): Shows a single iteration for a single test.
(RecordTable.prototype.showIterations): Shows the results of all the suites of the iterations.
(ResultsTable): RecordTable was renamed to ResultsTable.
(ResultsTable.prototype.clear): Clears the table element.
(ResultsTable.prototype._showHeaderRow): Shows a row in the results table header.
(ResultsTable.prototype._showHeader): Shows the results table header.
(ResultsTable.prototype._showEmpty): Shows an empty table cell.
(ResultsTable.prototype._showText): Shows a string in a new table cell.
(ResultsTable.prototype._showFixedNumber): Shows a number in a new table cell.
(ResultsTable.prototype._showGraph): Shows a button for the sampled data graph.
(ResultsTable.prototype._showJSON): Shows a button for the sampled data JSON.
(ResultsTable.prototype._showTest): Shows the results of a single test.
(ResultsTable.prototype._showSuite): Shows the results of a single suite.
(ResultsTable.prototype._showIteration): Shows the results of a single iteration.
(ResultsTable.prototype.showRecord): Shows a single iteration for a single test.
(ResultsTable.prototype.showIterations): Shows all the results.
(RecordTable): Deleted.
(RecordTable.prototype.clear): Deleted.
(RecordTable.prototype._showTitles): Deleted.
(RecordTable.prototype._showHeader): Deleted.
(RecordTable.prototype._showEmpty): Deleted.
(RecordTable.prototype._showValue): Deleted.
(RecordTable.prototype._showSamples): Deleted.
(RecordTable.prototype._showTest): Deleted.
(RecordTable.prototype._showSuite): Deleted.
(RecordTable.prototype.showRecord): Deleted.
(RecordTable.prototype.showIterations): Deleted.
* Animometer/resources/sampler.js:
(Sampler.prototype.startSampling): Use forEach.
(Sampler.prototype.sample): Use forEach.
(Sampler.prototype.toJSON): Converts the sampler data to JSON format.
* Animometer/resources/strings.js: Added.
This new file will be used to associate the strings used by the benchmark
with IDs. A string can be changed in one place without having to change
all the instances of this string in multiple files. There two groups of
strings in this file. The first one is used by the UI elements and the second
group is used when constructing the results JSON.
* Animometer/runner/animometer.html:
* Animometer/runner/resources/animometer.css:
* Animometer/runner/resources/animometer.js:
(window.benchmarkRunnerClient.willAddTestFrame):
(window.benchmarkRunnerClient.willStartFirstIteration):
(window.benchmarkRunnerClient.didRunSuites):
(window.benchmarkRunnerClient.didFinishLastIteration):
Make benchmarkRunnerClient uses ResultsDashboard instead of _iterationsSamplers
Get the JSON from ResultsDashboard.toJSON() and pass it to ResultsTable.showIterations().
Also set the textContent of the "#json" textarea with the results JSON.
(showResults): Delete unneeded code.
(showJson): Shows the "json" section.
(showTestGraph): Rename showGraph() to be showTestGraph().
(showTestJSON): Shows the JSON of a single testResults.
(showGraph): Deleted.
* Animometer/runner/resources/tests.js:
Use the string table instead of putting literal strings.
* Animometer/tests/resources/stage.js:
(StageBenchmark.prototype.showResults):
Fix the parameters which are passed to RecordTable.showRecord().
* Animometer/tests/bouncing-particles/bouncing-canvas-images.html:
* Animometer/tests/bouncing-particles/bouncing-canvas-shapes.html:
* Animometer/tests/bouncing-particles/bouncing-css-images.html:
* Animometer/tests/bouncing-particles/bouncing-css-shapes.html:
* Animometer/tests/bouncing-particles/bouncing-svg-images.html:
* Animometer/tests/bouncing-particles/bouncing-svg-shapes.html:
* Animometer/tests/examples/canvas-electrons.html:
* Animometer/tests/examples/canvas-stars.html:
* Animometer/tests/simple/simple-canvas-paths.html:
* Animometer/tests/template/template-canvas.html:
* Animometer/tests/template/template-css.html:
* Animometer/tests/template/template-svg.html:
* Animometer/tests/text/layering-text.html:
Include the new strings.js file in all the test files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191586
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Oct 2015 15:59:17 +0000 (15:59 +0000)]
Add images needed for shadow DOM blog post
https://bugs.webkit.org/show_bug.cgi?id=150549
Reviewed by Timothy Hatcher.
Added images.
* blog-files/introducing-shadow-dom: Added.
* blog-files/introducing-shadow-dom/commit-queue-contact.png: Added.
* blog-files/introducing-shadow-dom/progress-bar.png: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191585
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
calvaris@igalia.com [Mon, 26 Oct 2015 15:09:16 +0000 (15:09 +0000)]
[Streams API] Implement abort method on writable streams
https://bugs.webkit.org/show_bug.cgi?id=150444
Reviewed by Darin Adler.
Source/WebCore:
Abort method on writable streams implemented according to the spec.
Current test set suffices. Expectations are updated accordingly.
* Modules/streams/StreamInternals.js:
(promiseInvokeOrFallbackOrNoop): Implemented according to the spec.
* Modules/streams/WritableStream.js:
(abort): Implemented according to the spec.
LayoutTests:
Test expectations updated.
* streams/reference-implementation/bad-underlying-sinks-expected.txt:
* streams/reference-implementation/brand-checks-expected.txt:
* streams/reference-implementation/pipe-to-expected.txt:
* streams/reference-implementation/writable-stream-abort-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191584
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
philn@webkit.org [Mon, 26 Oct 2015 12:04:05 +0000 (12:04 +0000)]
Unreviewed, rolling out r191576.
.:
broke the http/tests/media tests
Reverted changeset:
"[GStreamer] Bump internal jhbuild versions to 1.6.0"
https://bugs.webkit.org/show_bug.cgi?id=149594
http://trac.webkit.org/changeset/191576
Tools:
broke
Reverted changeset:
"[GStreamer] Bump internal jhbuild versions to 1.6.0"
https://bugs.webkit.org/show_bug.cgi?id=149594
http://trac.webkit.org/changeset/191576
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191583
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
changseok.oh@collabora.com [Mon, 26 Oct 2015 08:57:40 +0000 (08:57 +0000)]
[GStreamer] Bump internal jhbuild versions to 1.6.0
https://bugs.webkit.org/show_bug.cgi?id=149594
Reviewed by Philippe Normand.
.:
Bump up the minimum reqirement version of gstreamer-gl to 1.6.0.
* Source/cmake/FindGStreamer.cmake:
Tools:
Bump up whole gstreamer libraries to 1.6.0. Relevant patches are no more
useful so they are removed accordingly.
* gtk/jhbuild.modules:
* gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch: Removed.
* gtk/patches/gst-plugins-bad-remove-gnustep-support.patch: Removed.
* gtk/patches/gst-plugins-base-rtp-rtcpbuffer-fix-typo-in-enum.patch: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191576
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hs85.jeong@samsung.com [Mon, 26 Oct 2015 06:29:22 +0000 (06:29 +0000)]
Use modern for-loops in WebCore/editing.
https://bugs.webkit.org/show_bug.cgi?id=150354
Reviewed by Darin Adler.
No new tests because there is no behavior change.
* editing/AlternativeTextController.cpp:
(WebCore::AlternativeTextController::applyAlternativeTextToRange):
(WebCore::AlternativeTextController::applyAutocorrectionBeforeTypingIfAppropriate):
(WebCore::AlternativeTextController::rootViewRectForRange):
(WebCore::AlternativeTextController::markCorrection):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::dummySpanAncestorForNode):
(WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
(WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
(WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
(WebCore::ApplyStyleCommand::joinChildTextNodes):
* editing/CompositeEditCommand.cpp:
(WebCore::EditCommandComposition::reapply):
(WebCore::EditCommandComposition::getNodesInCommand):
(WebCore::CompositeEditCommand::removeChildrenInRange):
(WebCore::CompositeEditCommand::removeNode):
(WebCore::copyMarkers):
(WebCore::CompositeEditCommand::replaceTextInNodePreservingMarkers):
(WebCore::CompositeEditCommand::deleteInsignificantText):
* editing/DictationCommand.cpp:
(WebCore::DictationMarkerSupplier::addMarkersToTextNode):
(WebCore::DictationCommand::collectDictationAlternativesInRange):
* editing/EditingStyle.cpp:
(WebCore::isEditingProperty):
(WebCore::EditingStyle::extractConflictingImplicitStyleOfAttributes):
(WebCore::EditingStyle::elementIsStyledSpanOrHTMLEquivalent):
(WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement):
(WebCore::styleFromMatchedRulesForElement):
(WebCore::diffTextDecorations):
* editing/Editor.cpp:
(WebCore::Editor::setComposition):
(WebCore::Editor::markAndReplaceFor):
* editing/EditorCommand.cpp:
(WebCore::createCommandMap):
* editing/MarkupAccumulator.cpp:
(WebCore::MarkupAccumulator::totalLength):
* editing/MergeIdenticalElementsCommand.cpp:
(WebCore::MergeIdenticalElementsCommand::doApply):
(WebCore::MergeIdenticalElementsCommand::doUnapply):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplacementFragment::removeUnrenderedNodes):
(WebCore::ReplacementFragment::removeInterchangeNodes):
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::removeHeadContents):
* editing/SpellChecker.cpp:
(WebCore::SpellChecker::~SpellChecker):
(WebCore::SpellChecker::client):
(WebCore::SpellChecker::enqueueRequest):
* editing/SplitElementCommand.cpp:
(WebCore::SplitElementCommand::executeApply):
(WebCore::SplitElementCommand::doApply):
(WebCore::SplitElementCommand::doUnapply):
* editing/TextCheckingHelper.cpp:
(WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar):
(WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange):
* editing/WrapContentsInDummySpanCommand.cpp:
(WebCore::WrapContentsInDummySpanCommand::executeApply):
(WebCore::WrapContentsInDummySpanCommand::doUnapply):
* editing/ios/EditorIOS.mm:
(WebCore::Editor::createFragmentAndAddResources):
* editing/mac/EditorMac.mm:
(WebCore::Editor::WebContentReader::readFilenames):
(WebCore::Editor::createFragmentAndAddResources):
* editing/markup.cpp:
(WebCore::completeURLs):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191553
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Oct 2015 06:23:09 +0000 (06:23 +0000)]
[EFL] Unreviewed gardening. some test expectations for media should be Failure.
https://bugs.webkit.org/show_bug.cgi?id=150495
Unreviewed, EFL gardening.
Some test expectations for media should be Failure.
Patch by Sun-woo Nam <sunny.nam@samsung.com> on 2015-10-25
* platform/efl/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191552
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Oct 2015 04:57:46 +0000 (04:57 +0000)]
Support bezier paths in clip-path property
https://bugs.webkit.org/show_bug.cgi?id=149996
Reviewed by Darin Adler.
Source/WebCore:
Support path() in the -webkit-clip-path property, as specified in
https://drafts.csswg.org/css-shapes-2/#supported-basic-shapes
Added BasicShapePath and CSSBasicShapePath, which both represent the path
as a SVGPathByteStream and wind rule.
Make BasicShape::canBlend() a virtual function, and implement it on each subclass.
Make various BasicShape subclass function overrides private, other than windRule()
wich is called on derived classes in a few places.
Add SVGPathBlender::canBlendPaths() which returns true if the given paths can be
interpolated. Uses the same logic as blendAnimatedPath(), without doing any interpolation.
RenderElement::createsGroup() is fixed to have clip-path trigger a group,
which fixes rendering of clip-path with a descendant compositing layer.
Tests: compositing/masks/clip-path-composited-descendent.html
css3/masking/clip-path-with-path.html
transitions/clip-path-path-transitions.html
* css/BasicShapeFunctions.cpp:
(WebCore::valueForBasicShape):
(WebCore::basicShapeForValue):
* css/CSSBasicShapes.cpp:
(WebCore::CSSBasicShapePath::CSSBasicShapePath):
(WebCore::CSSBasicShapePath::pathData):
(WebCore::buildPathString):
(WebCore::CSSBasicShapePath::cssText):
(WebCore::CSSBasicShapePath::equals):
* css/CSSBasicShapes.h:
* css/CSSParser.cpp:
(WebCore::CSSParser::parseBasicShapePath):
(WebCore::CSSParser::parseBasicShape):
* css/CSSParser.h:
* rendering/RenderElement.h:
(WebCore::RenderElement::createsGroup):
* rendering/style/BasicShapes.cpp:
(WebCore::BasicShapeCircle::canBlend):
(WebCore::BasicShapeEllipse::canBlend):
(WebCore::BasicShapePolygon::canBlend):
(WebCore::BasicShapePath::BasicShapePath):
(WebCore::BasicShapePath::path):
(WebCore::BasicShapePath::operator==):
(WebCore::BasicShapePath::canBlend):
(WebCore::BasicShapePath::blend):
(WebCore::BasicShapeInset::canBlend):
(WebCore::BasicShape::canBlend): Deleted.
* rendering/style/BasicShapes.h:
* svg/SVGPathBlender.cpp:
(WebCore::SVGPathBlender::addAnimatedPath):
(WebCore::SVGPathBlender::blendAnimatedPath):
(WebCore::SVGPathBlender::canBlendPaths):
(WebCore::SVGPathBlender::SVGPathBlender):
(WebCore::SVGPathBlender::blendMoveToSegment):
(WebCore::SVGPathBlender::blendLineToSegment):
(WebCore::SVGPathBlender::blendLineToHorizontalSegment):
(WebCore::SVGPathBlender::blendLineToVerticalSegment):
(WebCore::SVGPathBlender::blendCurveToCubicSegment):
(WebCore::SVGPathBlender::blendCurveToCubicSmoothSegment):
(WebCore::SVGPathBlender::blendCurveToQuadraticSegment):
(WebCore::SVGPathBlender::blendCurveToQuadraticSmoothSegment):
(WebCore::SVGPathBlender::blendArcToSegment):
* svg/SVGPathBlender.h:
* svg/SVGPathByteStream.h:
(WebCore::SVGPathByteStream::operator==):
* svg/SVGPathUtilities.cpp:
(WebCore::canBlendSVGPathByteStreams):
* svg/SVGPathUtilities.h:
LayoutTests:
Tests for compositing with clip-path and a composited descendant,
a ref test which tests clip-paths with evenodd, comparing to SVG rendering,
and a transition test to test path blendability.
* compositing/masks/clip-path-composited-descendent-expected.txt: Added.
* compositing/masks/clip-path-composited-descendent.html: Added.
* css3/masking/clip-path-with-path-expected.html: Added.
* css3/masking/clip-path-with-path.html: Added.
* transitions/clip-path-path-transitions-expected.txt: Added.
* transitions/clip-path-path-transitions.html: Added.
* transitions/resources/transition-test-helpers.js: Add some basic parsing
support for paths.
(extractPathValues):
(parseClipPath):
* transitions/svg-transitions-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191551
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Sun, 25 Oct 2015 19:06:15 +0000 (19:06 +0000)]
API tests fail on El Capitan after r191543
https://bugs.webkit.org/show_bug.cgi?id=150547
Reviewed by Dan Bernstein.
* Scripts/run-api-tests: (listAllTests): Add appropriate arch arguments in one more place.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191550
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yoon@igalia.com [Sun, 25 Oct 2015 15:10:29 +0000 (15:10 +0000)]
[TexMap] Fix a misused flag for GstGL
https://bugs.webkit.org/show_bug.cgi?id=150545
Reviewed by Žan Doberšek.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper):
We should pass TextureMapperGL::Flags to the TextureMapperGL::drawTexture instead of
BitmapTexture::Flags.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191549
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Sun, 25 Oct 2015 09:17:32 +0000 (09:17 +0000)]
Unreviewed. Fix GTK+ build after r191543.
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_run_javascript):
(resourcesStreamReadCallback):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191548
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
youenn.fablet@crf.canon.fr [Sun, 25 Oct 2015 07:42:56 +0000 (07:42 +0000)]
Use ImplementedAs for MediaDevices.getUserMediaFromJS
https://bugs.webkit.org/show_bug.cgi?id=150439
Reviewed by Darin Adler.
No change in behavior.
* Modules/mediastream/MediaDevices.h: Removing getUserMediaFromJS C++ function.
* Modules/mediastream/MediaDevices.idl: Marking getUserMediaFromJS as ImplementedAS=getUserMedia
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191547
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
youenn.fablet@crf.canon.fr [Sun, 25 Oct 2015 07:39:22 +0000 (07:39 +0000)]
Import W3C XMLHttpRequest tests
https://bugs.webkit.org/show_bug.cgi?id=142163
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
* resources/ImportExpectations: skipping import of some XHR tests that are failing or timing out.
* web-platform-tests/XMLHttpRequest/FormData-append-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/FormData-append.html: Added.
* web-platform-tests/XMLHttpRequest/XMLHttpRequest-withCredentials-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/XMLHttpRequest-withCredentials.html: Added.
* web-platform-tests/XMLHttpRequest/XMLHttpRequest-withCredentials.js: Added.
(test_withCredentials.):
(test_withCredentials):
* web-platform-tests/XMLHttpRequest/XMLHttpRequest-withCredentials.worker.js: Added.
* web-platform-tests/XMLHttpRequest/abort-after-receive-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-after-receive.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-after-send-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-after-send.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-after-timeout-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-after-timeout.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-during-done-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-during-done.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-during-open-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-during-open.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-during-unsent-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-during-unsent.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-during-upload-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-during-upload.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-event-abort-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-event-abort.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-event-listeners-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-event-listeners.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-event-loadend-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-event-loadend.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-event-order-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-event-order.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-upload-event-abort-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-upload-event-abort.htm: Added.
* web-platform-tests/XMLHttpRequest/abort-upload-event-loadend-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/abort-upload-event-loadend.htm: Added.
* web-platform-tests/XMLHttpRequest/anonymous-mode-unsupported-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/anonymous-mode-unsupported.htm: Added.
* web-platform-tests/XMLHttpRequest/data-uri-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/data-uri.htm: Added.
* web-platform-tests/XMLHttpRequest/event-abort-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-abort.htm: Added.
* web-platform-tests/XMLHttpRequest/event-error-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-error.html: Added.
* web-platform-tests/XMLHttpRequest/event-load-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-load.htm: Added.
* web-platform-tests/XMLHttpRequest/event-loadend-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-loadend.htm: Added.
* web-platform-tests/XMLHttpRequest/event-loadstart-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-loadstart.htm: Added.
* web-platform-tests/XMLHttpRequest/event-progress-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-progress.htm: Added.
* web-platform-tests/XMLHttpRequest/event-readystatechange-loaded-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-readystatechange-loaded.htm: Added.
* web-platform-tests/XMLHttpRequest/event-timeout-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-timeout.htm: Added.
* web-platform-tests/XMLHttpRequest/event-upload-progress-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/event-upload-progress.htm: Added.
* web-platform-tests/XMLHttpRequest/folder.txt: Added.
* web-platform-tests/XMLHttpRequest/formdata-blob-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/formdata-blob.htm: Added.
* web-platform-tests/XMLHttpRequest/formdata-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/formdata.htm: Added.
* web-platform-tests/XMLHttpRequest/getallresponseheaders-cookies-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getallresponseheaders-cookies.htm: Added.
* web-platform-tests/XMLHttpRequest/getallresponseheaders-status-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getallresponseheaders-status.htm: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-case-insensitive-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-case-insensitive.htm: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-chunked-trailer-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-chunked-trailer.htm: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-cookies-and-more-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-cookies-and-more.htm: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-error-state-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-error-state.htm: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-server-date-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-server-date.htm: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-special-characters-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-special-characters.htm: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-unsent-opened-state-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/getresponseheader-unsent-opened-state.htm: Added.
* web-platform-tests/XMLHttpRequest/interfaces-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/interfaces.html: Added.
* web-platform-tests/XMLHttpRequest/open-after-abort-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-after-abort.htm: Added.
* web-platform-tests/XMLHttpRequest/open-after-setrequestheader-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-after-setrequestheader.htm: Added.
* web-platform-tests/XMLHttpRequest/open-during-abort-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-during-abort.htm: Added.
* web-platform-tests/XMLHttpRequest/open-method-bogus-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-method-bogus.htm: Added.
* web-platform-tests/XMLHttpRequest/open-method-case-insensitive-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-method-case-insensitive.htm: Added.
* web-platform-tests/XMLHttpRequest/open-method-case-sensitive-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-method-case-sensitive.htm: Added.
* web-platform-tests/XMLHttpRequest/open-method-insecure-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-method-insecure.htm: Added.
* web-platform-tests/XMLHttpRequest/open-method-responsetype-set-sync-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-method-responsetype-set-sync.htm: Added.
* web-platform-tests/XMLHttpRequest/open-open-send-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-open-send.htm: Added.
* web-platform-tests/XMLHttpRequest/open-open-sync-send-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-open-sync-send.htm: Added.
* web-platform-tests/XMLHttpRequest/open-referer-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-referer.htm: Added.
* web-platform-tests/XMLHttpRequest/open-send-open-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-send-open.htm: Added.
* web-platform-tests/XMLHttpRequest/open-sync-open-send-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-sync-open-send.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-about-blank-window-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-about-blank-window.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-base-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-base-inserted-after-open-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-base-inserted-after-open.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-base-inserted-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-base-inserted.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-base.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-bogus-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-bogus.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-encoding-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-encoding.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-fragment-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-fragment.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-javascript-window-2-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-javascript-window-2.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-javascript-window-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-javascript-window.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-2-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-2.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-3-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-3.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-4-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-4.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-5-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-5.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-multi-window.htm: Added.
* web-platform-tests/XMLHttpRequest/open-url-worker-simple-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-url-worker-simple.htm: Added.
* web-platform-tests/XMLHttpRequest/open-user-password-non-same-origin-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/open-user-password-non-same-origin.htm: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-done-state-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-done-state.htm: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-headers-received-state-force-shiftjis-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-headers-received-state-force-shiftjis.htm: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-invalid-mime-type-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-invalid-mime-type.htm: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-loading-state-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-loading-state.htm: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-open-state-force-utf-8-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-open-state-force-utf-8.htm: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-open-state-force-xml-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-open-state-force-xml.htm: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-unsent-state-force-shiftjis-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/overridemimetype-unsent-state-force-shiftjis.htm: Added.
* web-platform-tests/XMLHttpRequest/progress-events-response-data-gzip-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/progress-events-response-data-gzip.htm: Added.
* web-platform-tests/XMLHttpRequest/readme.txt: Added.
* web-platform-tests/XMLHttpRequest/resources/accept-language.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/accept.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/auth1/auth.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/auth1/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/w3c-import.log.
* web-platform-tests/XMLHttpRequest/resources/auth2/auth.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/auth2/corsenabled.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/auth2/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/w3c-import.log.
* web-platform-tests/XMLHttpRequest/resources/auth3/auth.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/auth3/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/w3c-import.log.
* web-platform-tests/XMLHttpRequest/resources/auth4/auth.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/auth4/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/w3c-import.log.
* web-platform-tests/XMLHttpRequest/resources/auth5/auth.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/auth5/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/w3c-import.log.
* web-platform-tests/XMLHttpRequest/resources/auth6/auth.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/auth6/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/w3c-import.log.
* web-platform-tests/XMLHttpRequest/resources/authentication.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/chunked.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/conditional.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/content.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/corsenabled.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/delay.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/echo-method.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/folder.txt: Added.
* web-platform-tests/XMLHttpRequest/resources/form.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/gzip.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/headers.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/image.gif: Added.
* web-platform-tests/XMLHttpRequest/resources/img.jpg: Added.
* web-platform-tests/XMLHttpRequest/resources/infinite-redirects.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/init.htm: Added.
* web-platform-tests/XMLHttpRequest/resources/inspect-headers.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/invalid-utf8-html.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/nocors/folder.txt: Added.
* web-platform-tests/XMLHttpRequest/resources/nocors/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/w3c-import.log.
* web-platform-tests/XMLHttpRequest/resources/redirect.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/requri.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/shift-jis-html.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/status.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/trickle.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/upload.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/utf16.txt: Added.
* web-platform-tests/XMLHttpRequest/resources/w3c-import.log: Added.
* web-platform-tests/XMLHttpRequest/resources/well-formed.xml: Added.
* web-platform-tests/XMLHttpRequest/resources/win-1252-xml.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/resources/workerxhr-origin-referrer.js: Added.
(xhr.new.XMLHttpRequest.xhr.onreadystatechange):
(true.xhr.send.xhr2.new.XMLHttpRequest.xhr2.onreadystatechange):
(true.xhr2.send.xhr3.new.XMLHttpRequest.xhr3.onreadystatechange):
* web-platform-tests/XMLHttpRequest/resources/workerxhr-simple.js: Added.
(xhr.new.XMLHttpRequest.xhr.onreadystatechange):
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-aborted.js: Added.
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-abortedonmain.js: Added.
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-overrides.js: Added.
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-overridesexpires.js: Added.
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-runner.js: Added.
(testResultCallbackHandler):
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-simple.js: Added.
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-synconmain.js: Added.
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-synconworker.js: Added.
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout-twice.js: Added.
* web-platform-tests/XMLHttpRequest/resources/xmlhttprequest-timeout.js: Added.
(catch):
(message):
(is):
(ok):
(RequestTracker):
(RequestTracker.prototype.handleEvent):
(RequestTracker.prototype.startXHR):
(RequestTracker.prototype.getMessage):
(AbortedRequest):
(AbortedRequest.prototype.handleEvent):
(AbortedRequest.prototype.abortReq):
(AbortedRequest.prototype.startXHR):
(AbortedRequest.prototype.noEventsFired):
(AbortedRequest.prototype.getMessage):
(SyncRequestSettingTimeoutAfterOpen.startXHR):
(SyncRequestSettingTimeoutBeforeOpen.startXHR):
(TestCounter.testComplete):
(TestCounter.next):
(runTestRequests):
* web-platform-tests/XMLHttpRequest/resources/zlib.py: Added.
(main):
* web-platform-tests/XMLHttpRequest/response-data-arraybuffer-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/response-data-arraybuffer.htm: Added.
* web-platform-tests/XMLHttpRequest/response-data-blob-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/response-data-blob.htm: Added.
* web-platform-tests/XMLHttpRequest/response-data-deflate-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/response-data-deflate.htm: Added.
* web-platform-tests/XMLHttpRequest/response-data-gzip-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/response-data-gzip.htm: Added.
* web-platform-tests/XMLHttpRequest/response-data-progress-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/response-data-progress.htm: Added.
* web-platform-tests/XMLHttpRequest/response-invalid-responsetype-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/response-invalid-responsetype.htm: Added.
* web-platform-tests/XMLHttpRequest/response-json-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/response-json.htm: Added.
* web-platform-tests/XMLHttpRequest/response-method-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/response-method.htm: Added.
* web-platform-tests/XMLHttpRequest/responseText-status-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/responseText-status.html: Added.
* web-platform-tests/XMLHttpRequest/responsetext-decoding-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/responsetext-decoding.htm: Added.
* web-platform-tests/XMLHttpRequest/responsetype-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/responsetype.html: Added.
* web-platform-tests/XMLHttpRequest/responsexml-basic-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/responsexml-basic.htm: Added.
* web-platform-tests/XMLHttpRequest/responsexml-document-properties-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/responsexml-document-properties.htm: Added.
* web-platform-tests/XMLHttpRequest/responsexml-media-type-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/responsexml-media-type.htm: Added.
* web-platform-tests/XMLHttpRequest/responsexml-non-document-types-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/responsexml-non-document-types.htm: Added.
* web-platform-tests/XMLHttpRequest/responsexml-non-well-formed-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/responsexml-non-well-formed.htm: Added.
* web-platform-tests/XMLHttpRequest/security-consideration.sub-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/security-consideration.sub.html: Added.
* web-platform-tests/XMLHttpRequest/send-accept-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-accept-language-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-accept-language.htm: Added.
* web-platform-tests/XMLHttpRequest/send-accept.htm: Added.
* web-platform-tests/XMLHttpRequest/send-authentication-cors-basic-setrequestheader-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-authentication-cors-basic-setrequestheader.htm: Added.
* web-platform-tests/XMLHttpRequest/send-conditional-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-conditional.htm: Added.
* web-platform-tests/XMLHttpRequest/send-content-type-charset-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-content-type-charset.htm: Added.
* web-platform-tests/XMLHttpRequest/send-content-type-string-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-content-type-string.htm: Added.
* web-platform-tests/XMLHttpRequest/send-data-arraybuffer-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-data-arraybuffer.htm: Added.
* web-platform-tests/XMLHttpRequest/send-data-blob-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-data-blob.htm: Added.
* web-platform-tests/XMLHttpRequest/send-data-es-object-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-data-es-object.htm: Added.
* web-platform-tests/XMLHttpRequest/send-data-formdata-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-data-formdata.htm: Added.
* web-platform-tests/XMLHttpRequest/send-data-unexpected-tostring-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-data-unexpected-tostring.htm: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-document-bogus-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-document-bogus.htm: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-document-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-document.htm: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-empty-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-empty.htm: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-get-head-async-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-get-head-async.htm: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-get-head-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-get-head.htm: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-none-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-entity-body-none.htm: Added.
* web-platform-tests/XMLHttpRequest/send-network-error-sync-events.sub-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-network-error-sync-events.sub.htm: Added.
* web-platform-tests/XMLHttpRequest/send-no-response-event-loadend-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-no-response-event-loadend.htm: Added.
* web-platform-tests/XMLHttpRequest/send-no-response-event-loadstart-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-no-response-event-loadstart.htm: Added.
* web-platform-tests/XMLHttpRequest/send-no-response-event-order-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-no-response-event-order.htm: Added.
* web-platform-tests/XMLHttpRequest/send-non-same-origin.sub-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-non-same-origin.sub.htm: Added.
* web-platform-tests/XMLHttpRequest/send-receive-utf16-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-receive-utf16.htm: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-bogus-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-bogus-sync-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-bogus-sync.htm: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-bogus.htm: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-infinite-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-infinite-sync-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-infinite-sync.htm: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-infinite.htm: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-no-location-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-no-location.htm: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-to-cors-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-to-cors.htm: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-to-non-cors-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-redirect-to-non-cors.htm: Added.
* web-platform-tests/XMLHttpRequest/send-redirect.htm: Added.
* web-platform-tests/XMLHttpRequest/send-response-event-order-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-response-event-order.htm: Added.
* web-platform-tests/XMLHttpRequest/send-response-upload-event-loadend-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-response-upload-event-loadend.htm: Added.
* web-platform-tests/XMLHttpRequest/send-response-upload-event-loadstart-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-response-upload-event-loadstart.htm: Added.
* web-platform-tests/XMLHttpRequest/send-response-upload-event-progress-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-response-upload-event-progress.htm: Added.
* web-platform-tests/XMLHttpRequest/send-send-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-send.htm: Added.
* web-platform-tests/XMLHttpRequest/send-sync-blocks-async-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-sync-blocks-async.htm: Added.
* web-platform-tests/XMLHttpRequest/send-sync-no-response-event-load-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-sync-no-response-event-load.htm: Added.
* web-platform-tests/XMLHttpRequest/send-sync-no-response-event-loadend-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-sync-no-response-event-loadend.htm: Added.
* web-platform-tests/XMLHttpRequest/send-sync-no-response-event-order-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-sync-no-response-event-order.htm: Added.
* web-platform-tests/XMLHttpRequest/send-sync-response-event-order-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-sync-response-event-order.htm: Added.
* web-platform-tests/XMLHttpRequest/send-sync-timeout-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-sync-timeout.htm: Added.
* web-platform-tests/XMLHttpRequest/send-timeout-events-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-timeout-events.htm: Added.
* web-platform-tests/XMLHttpRequest/send-usp-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/send-usp.html: Added.
* web-platform-tests/XMLHttpRequest/send-usp.js: Added.
(encode):
(do_test.):
* web-platform-tests/XMLHttpRequest/send-usp.worker.js: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-after-send-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-after-send.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-allow-empty-value-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-allow-empty-value.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-allow-whitespace-in-value-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-allow-whitespace-in-value.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-before-open-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-before-open.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-bogus-name-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-bogus-name.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-bogus-value-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-bogus-value.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-case-insensitive-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-case-insensitive.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-content-type-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-content-type.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-header-allowed-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-header-allowed.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-header-forbidden-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-header-forbidden.htm: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-open-setrequestheader-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/setrequestheader-open-setrequestheader.htm: Added.
* web-platform-tests/XMLHttpRequest/status-async-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/status-async.htm: Added.
* web-platform-tests/XMLHttpRequest/status-basic-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/status-basic.htm: Added.
* web-platform-tests/XMLHttpRequest/status-error-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/status-error.htm: Added.
* web-platform-tests/XMLHttpRequest/timeout-cors-async-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/timeout-cors-async.htm: Added.
* web-platform-tests/XMLHttpRequest/timeout-sync-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/timeout-sync.htm: Added.
* web-platform-tests/XMLHttpRequest/w3c-import.log: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-basic-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-basic.htm: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-eventtarget-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-eventtarget.htm: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-network-error-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-network-error-sync-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-network-error-sync.htm: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-network-error.htm: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-aborted-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-aborted.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-abortedonmain-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-abortedonmain.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-overrides-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-overrides.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-overridesexpires-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-overridesexpires.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-simple-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-simple.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-synconmain-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-synconmain.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-twice-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-twice.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-aborted-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-aborted.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-overrides-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-overrides.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-overridesexpires-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-overridesexpires.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-simple-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-simple.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-synconworker-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-synconworker.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-twice-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-timeout-worker-twice.html: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-unsent-expected.txt: Added.
* web-platform-tests/XMLHttpRequest/xmlhttprequest-unsent.htm: Added.
* web-platform-tests/w3c-import.log:
LayoutTests:
* TestExpectations: Marking xhr timeout tests as slow.
* platform/gtk/TestExpectations: Marking some XHR tests as failing.timing out.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191546
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Sun, 25 Oct 2015 05:59:16 +0000 (05:59 +0000)]
Add a way to add user style sheets to WKUserContentController
https://bugs.webkit.org/show_bug.cgi?id=150531
<rdar://problem/
23191691>
Reviewed by Darin Adler.
* Shared/API/APIObject.h:
* Shared/Cocoa/APIObject.mm:
(API::Object::newObject):
Boilerplate for a new API::UserStyleSheet.
* UIProcess/API/APIUserStyleSheet.cpp: Added.
(API::generateIdentifier):
(API::UserStyleSheet::generateUniqueURL):
* UIProcess/API/APIUserStyleSheet.h: Added.
Added API::UserStyleSheet, borrowing URL generation code from API::UserScript.
* UIProcess/API/Cocoa/WKUserContentController.mm:
(-[WKUserContentController _addUserStyleSheet:]):
(-[WKUserContentController _removeAllUserStyleSheets]):
Forward add and remove-all to WebUserContentControllerProxy.
* UIProcess/API/Cocoa/WKUserContentControllerPrivate.h:
* UIProcess/API/Cocoa/_WKUserStyleSheet.h: Added.
* UIProcess/API/Cocoa/_WKUserStyleSheet.mm: Added.
(toWTFStrings):
(-[_WKUserStyleSheet initWithSource:whitelistedURLPatterns:blacklistedURLPatterns:forMainFrameOnly:]):
(-[_WKUserStyleSheet source]):
(-[_WKUserStyleSheet isForMainFrameOnly]):
(-[_WKUserStyleSheet copyWithZone:]):
(-[_WKUserStyleSheet _apiObject]):
* UIProcess/API/Cocoa/_WKUserStyleSheetInternal.h: Added.
(API::wrapper):
* WebKit2.xcodeproj/project.pbxproj:
Add the new modern API object (as SPI for now).
* TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
(TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191545
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yoon@igalia.com [Sun, 25 Oct 2015 05:41:47 +0000 (05:41 +0000)]
Remove setApplyDeviceScaleFactorInCompositor
https://bugs.webkit.org/show_bug.cgi?id=150538
Reviewed by Tim Horton.
It was used to support the device scale factor for chromium port and blackberry
port. But it was removed quite a while ago.
* page/Settings.in:
applyDeviceScaleFactorInCompositor: Deleted
* platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
(WebCore::CompositingCoordinator::CompositingCoordinator): Remove uses
of applyDeviceScaleFactorInCompositor.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191544
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Sun, 25 Oct 2015 05:37:09 +0000 (05:37 +0000)]
Expose more information about the exception in WKErrorJavaScriptExceptionOccurred errors
https://bugs.webkit.org/show_bug.cgi?id=150525
Reviewed by Darin Adler.
Adjusted API test to cover this: WKWebView.EvaluateJavaScriptErrorCases.
* bindings/js/JSDOMBinding.cpp:
(WebCore::reportException):
* bindings/js/JSDOMBinding.h:
Fill in the given struct with computed exception data if it was given.
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::evaluateInWorld):
(WebCore::ScriptController::evaluate):
(WebCore::ScriptController::executeScript):
* bindings/js/ScriptController.h:
Plumb aforementioned struct through ScriptController.
* Scripts/webkit/messages.py:
(headers_for_type):
* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ExceptionDetails>::encode):
(IPC::ArgumentCoder<ExceptionDetails>::decode):
* Shared/WebCoreArgumentCoders.h:
Learn how to en/decode ExceptionDetails.
* UIProcess/API/C/WKPage.cpp:
(WKPageRunJavaScriptInMainFrame):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::runJavaScriptInMainFrame):
(WebKit::WebPageProxy::scriptValueCallback):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::runJavaScriptInMainFrame):
Plumb ExceptionDetails back through runJavaScriptInMainFrame, across the
process boundary.
* UIProcess/API/Cocoa/WKError.mm:
(localizedDescriptionForErrorCode):
* UIProcess/API/Cocoa/WKErrorInternal.h:
* UIProcess/API/Cocoa/WKErrorPrivate.h:
Expose localizedDescriptionForErrorCode so that WKWebView can do special
things with its error.
Add new private userInfo keys for exception info.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):
Fill in the NSError userInfo with the exception info.
* TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm:
(TEST):
Test the various new keys.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191543
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Sun, 25 Oct 2015 03:20:36 +0000 (03:20 +0000)]
Add a test expectation for imported/blink/transitions/unprefixed-perspective.html
https://bugs.webkit.org/show_bug.cgi?id=150541
* TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191542
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yoon@igalia.com [Sun, 25 Oct 2015 02:23:20 +0000 (02:23 +0000)]
[TexMap] Clean up BitmapTexture and BitmapTextureGL.
https://bugs.webkit.org/show_bug.cgi?id=143298
Reviewed by Žan Doberšek.
No new tests, this is just a refactor.
* platform/graphics/texmap/BitmapTexture.h:
(WebCore::BitmapTexture::canReuseWith): Deleted.
Reuseability of a BitmapTexture is only decided by its size.
We can use size() instead of this method.
* platform/graphics/texmap/BitmapTextureGL.h:
(WebCore::driverSupportsExternalTextureBGRA): Deleted.
We do not have to check a suitable texture format in every
update/reset. It is enough to store the formats in construction time
and reuse them.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191541
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Sun, 25 Oct 2015 01:33:02 +0000 (01:33 +0000)]
REGRESSION (r187121): Delayed instantaneous animations not honouring ' forwards' fill-mode
https://bugs.webkit.org/show_bug.cgi?id=150326
Reviewed by Darin Adler.
Source/WebCore:
With a zero-duration, delayed fill-forwards animation, we'd end up trying
to interpolate between the last and first keyframes, and picking the first
because AnimationBase::progress() had a special case for zero duration. Removing
this check fixes the bug.
Test: animations/fill-mode-forwards-zero-duration.html
* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::progress):
LayoutTests:
Test with a zero-duration, delayed fill-forwards animation.
* animations/fill-mode-forwards-zero-duration-expected.txt: Added.
* animations/fill-mode-forwards-zero-duration.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191540
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
nvasilyev@apple.com [Sun, 25 Oct 2015 00:51:08 +0000 (00:51 +0000)]
Unreviewed, rolling out r191419.
https://bugs.webkit.org/show_bug.cgi?id=150537
Reverted changeset:
"Web Inspector: Autocompletion previews in the CSS sidebar do not apply"
https://bugs.webkit.org/show_bug.cgi?id=147720
http://trac.webkit.org/changeset/191419
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191539
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fred.wang@free.fr [Sat, 24 Oct 2015 23:36:19 +0000 (23:36 +0000)]
check-webkit-style complains about missing operator whitespace inside character literal
https://bugs.webkit.org/show_bug.cgi?id=150396
Reviewed by Darin Adler.
* Scripts/webkitpy/style/checkers/cpp.py: Improve matching of C++ character literal.
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_spacing): Add a test to verify that the spacing for the character literal 'OS/2' is not tested.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191538
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bburg@apple.com [Sat, 24 Oct 2015 21:39:37 +0000 (21:39 +0000)]
Teach create_hash_table to omit builtins macros when generating tables for native-only objects
https://bugs.webkit.org/show_bug.cgi?id=150491
Reviewed by Yusuke Suzuki.
In order to support separate compilation for generated builtins files, we need to be able to
include specific builtins headers from generated .lut.h files. However, the create_hash_table
script isn't smart enough to figure out when a generated file might actually contain a builtin.
Without further help, we'd have to include an all-in-one header, mostly defeating the point of
generating separate .h and .cpp files for every builtin.
This patch segregates the pure native and partially builtin sources in the build system, and
gives hints to create_hash_table so that it doesn't even generate checks for builtins if the
input file has no builtin method implementations. Also do some modernization and code cleanup.
* CMakeLists.txt:
Generate each group with different flags to create_hash_table. Change the macro to take
flags through the variable LUT_GENERATOR_FLAGS. Set this as necessary before calling macro.
Add an additional hint to CMake that the .cpp source file depends on the generated file.
* DerivedSources.make:
Generate each group with different flags to create_hash_table. Clean up the 'all' target
so that static dependencies are listed first. Use static patterns to decide which .lut.h
files require which flags. Reduce fragile usages of implicit variables.
* JavaScriptCore.xcodeproj/project.pbxproj:
Add some missing .lut.h files to the Derived Sources group. Sort the project.
* create_hash_table:
Parse options in a sane way using GetOpt::Long. Remove ability to specify a custom namespace
since this isn't actually used anywhere. Normalize placement of newlines in quoted strings.
Only generate builtins macros and includes if the source file is known to have some builtins.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191537
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@webkit.org [Sat, 24 Oct 2015 20:04:39 +0000 (20:04 +0000)]
[EFL] Fix a wrong enum variable use
https://bugs.webkit.org/show_bug.cgi?id=150522
Reviewed by Csaba Osztrogonác.
* UIProcess/API/efl/EwkView.cpp:
(EwkView::requestPopupMenu):
Use kWKPopupItemTextDirectionLTR instead of EWK_TEXT_DIRECTION_LEFT_TO_RIGHT.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191536
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 24 Oct 2015 15:57:25 +0000 (15:57 +0000)]
[Cocoa] _WKFormInputSession should provide access to the focused element info
https://bugs.webkit.org/show_bug.cgi?id=150512
Reviewed by Tim Horton.
* UIProcess/API/Cocoa/_WKFormInputSession.h: Added focusedElementInfo property to the
protocol.
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKFormInputSession initWithContentView:focusedElementInfo:userObject:]): Added the
focusedElementInfo argument, used to initialize a new ivar.
(-[WKFormInputSession focusedElementInfo]): Added this getter for the new
_WKFormInputSession property.
(-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]):
Create the WKFocusedElementInfo unconditionally and pass it to the new WKFormInputSession
initializer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191535
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 24 Oct 2015 15:54:09 +0000 (15:54 +0000)]
[iOS] Allow clients to specify a custom input view to be used for a form input session
https://bugs.webkit.org/show_bug.cgi?id=150395
Reviewed by Tim Horton.
* UIProcess/API/Cocoa/_WKFormInputSession.h: Added customInputView property to the protocol.
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKFormInputSession customInputView]): Added this getter.
(-[WKFormInputSession setCustomInputView:]): Added this setter, which reloads the input
views when the custom input view changes.
(-[WKContentView inputView]): Changed to return the custom view from the input session if
there is one.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191534
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Sat, 24 Oct 2015 05:53:44 +0000 (05:53 +0000)]
RadioNodeList should be exposed on Window
https://bugs.webkit.org/show_bug.cgi?id=148869
<rdar://problem/
22589828>
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline existing W3C tests now that more checks are passing.
* web-platform-tests/html/dom/interfaces-expected.txt:
* web-platform-tests/html/semantics/forms/the-form-element/form-elements-nameditem-01-expected.txt:
Source/WebCore:
RadioNodeList should be exposed on on the global Window object, as per
the HTML specification:
https://html.spec.whatwg.org/multipage/infrastructure.html#radionodelist
This patch addresses the issue, and aligns our behavior with Firefox
and Chrome.
No new tests, already covered by existing tests.
* html/RadioNodeList.idl:
LayoutTests:
Rebaseline existing layout test now that RadioNodeList is exposed on the
global Window object.
* js/dom/global-constructors-attributes-expected.txt:
* platform/efl/js/dom/global-constructors-attributes-expected.txt:
* platform/gtk/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-yosemite/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:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191533
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Oct 2015 03:58:33 +0000 (03:58 +0000)]
Web Inspector: Remove unused ScrollLayer Timeline EventType
https://bugs.webkit.org/show_bug.cgi?id=150518
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-10-23
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
* inspector/protocol/Timeline.json:
Source/WebCore:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willScrollLayerImpl): Deleted.
(WebCore::InspectorInstrumentation::didScrollLayerImpl): Deleted.
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::willScrollLayer): Deleted.
(WebCore::InspectorInstrumentation::didScrollLayer): Deleted.
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::willScroll): Deleted.
(WebCore::InspectorTimelineAgent::didScroll): Deleted.
* inspector/InspectorTimelineAgent.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollTo): Deleted.
Source/WebInspectorUI:
* UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
* UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
* Versions/Inspector-iOS-7.0.json:
* Versions/Inspector-iOS-8.0.json:
* Versions/Inspector-iOS-9.0.json:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191532
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Oct 2015 03:56:48 +0000 (03:56 +0000)]
Web Inspector: Clean up InspectorInstrumentation includes
https://bugs.webkit.org/show_bug.cgi?id=150523
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-10-23
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
* inspector/agents/InspectorConsoleAgent.cpp:
(Inspector::InspectorConsoleAgent::consoleMessageArgumentCounts): Deleted.
* inspector/agents/InspectorConsoleAgent.h:
Source/WebCore:
* Modules/webdatabase/DatabaseManager.cpp:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* css/MediaQueryEvaluator.cpp:
* dom/EventDispatcher.cpp:
* dom/ExtensionStyleSheets.cpp:
* inspector/InspectorController.h:
* inspector/InspectorDOMDebuggerAgent.cpp:
* inspector/InspectorDatabaseInstrumentation.h: Removed.
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::didOpenDatabase):
* inspector/InspectorPageAgent.cpp:
* inspector/InspectorTimelineAgent.cpp:
(WebCore::toProtocol): Deleted.
* loader/ResourceLoadScheduler.cpp:
* loader/mac/ResourceLoaderMac.mm:
* page/Screen.cpp:
* rendering/TextAutosizer.cpp:
* testing/Internals.cpp:
(WebCore::Internals::consoleMessageArgumentCounts): Deleted.
* testing/Internals.h:
* testing/Internals.idl:
* workers/AbstractWorker.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191531
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
msaboff@apple.com [Sat, 24 Oct 2015 01:45:30 +0000 (01:45 +0000)]
REGRESSION (r179357-r179359): WebContent Crash using AOL Mail @ com.apple.JavascriptCore JSC::linkPolymorphicCall(JSC::ExecState*, JSC::CallLinkInfo&, JSC::CallVariant, JSC::RegisterPreservationMode) + 1584
https://bugs.webkit.org/show_bug.cgi?id=150513
Reviewed by Saam Barati.
Source/JavaScriptCore:
Add check in linkPolymorphicCall() to make sure we have a CodeBlock for the newly added variant.
If not, we turn the call into a virtual call.
The bug was caused by a stack overflow when preparing the function for execution. This properly
threw an exception, however linkPolymorphicCall() didn't check for this error case.
Added a new test function "failNextNewCodeBlock()" to test tools to simplify the testing.
* API/JSCTestRunnerUtils.cpp:
(JSC::failNextNewCodeBlock):
(JSC::numberOfDFGCompiles):
* API/JSCTestRunnerUtils.h:
* jit/Repatch.cpp:
(JSC::linkPolymorphicCall):
* jsc.cpp:
(GlobalObject::finishCreation):
(functionTransferArrayBuffer):
(functionFailNextNewCodeBlock):
(functionQuit):
* runtime/Executable.cpp:
(JSC::ScriptExecutable::prepareForExecutionImpl):
* runtime/TestRunnerUtils.cpp:
(JSC::optimizeNextInvocation):
(JSC::failNextNewCodeBlock):
(JSC::numberOfDFGCompiles):
* runtime/TestRunnerUtils.h:
* runtime/VM.h:
(JSC::VM::setFailNextNewCodeBlock):
(JSC::VM::getAndClearFailNextNewCodeBlock):
(JSC::VM::stackPointerAtVMEntry):
Tools:
Added a new test function, failNextNewCodeBlock() to simplify the writing of a regression test.
* DumpRenderTree/TestRunner.cpp:
(simulateWebNotificationClickCallback):
(failNextCodeBlock):
(numberOfDFGCompiles):
(TestRunner::staticFunctions):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setBlockAllPlugins):
(WTR::TestRunner::failNextCodeBlock):
(WTR::TestRunner::numberOfDFGCompiles):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
LayoutTests:
New regression test.
* js/regress-150513-expected.txt: Added.
* js/regress-150513.html: Added.
* js/script-tests/regress-150513.js: Added.
(test):
* resources/standalone-pre.js: Added failNextNewCodeBlock to testRunner object.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191530
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Oct 2015 01:26:22 +0000 (01:26 +0000)]
Unreviewed, rolling out r191500.
https://bugs.webkit.org/show_bug.cgi?id=150526
Broke two JSC regression tests (Requested by msaboff on
#webkit).
Reverted changeset:
"[ES6] Add DFG/FTL support for accessor put operations"
https://bugs.webkit.org/show_bug.cgi?id=148860
http://trac.webkit.org/changeset/191500
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191529
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Oct 2015 01:11:36 +0000 (01:11 +0000)]
Fix CMake compile error and add correct null check
https://bugs.webkit.org/show_bug.cgi?id=150520
Patch by Alex Christensen <achristensen@webkit.org> on 2015-10-23
Reviewed by Simon Fraser.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _doAfterNextPresentationUpdate:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191528
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Oct 2015 01:01:11 +0000 (01:01 +0000)]
Removing [ Release ] flag from flaky imported blink tests that are timing out in debug too
https://bugs.webkit.org/show_bug.cgi?id=150050
Patch by Ryan Haddad <ryanhaddad@apple.com> on 2015-10-23
Reviewed by Tim Horton.
* platform/mac-wk1/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191527
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Sat, 24 Oct 2015 00:52:41 +0000 (00:52 +0000)]
Avoid SVG-induced layouts inside Element::absoluteEventBounds()
https://bugs.webkit.org/show_bug.cgi?id=150516
Reviewed by Zalan Bujtas.
Speculative fix for a crash under RenderObject::localToContainerQuad() when
computing the wheel event handler region, which uses Element::absoluteEventHandlerBounds().
Element::absoluteEventBounds() was calling SVGElement::getBoundingBox() in a way
that could trigger a layout.
* dom/Element.cpp:
(WebCore::Element::absoluteEventBounds):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191525
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Oct 2015 00:46:06 +0000 (00:46 +0000)]
Remove unnecessary details from Other Crashes section
https://bugs.webkit.org/show_bug.cgi?id=150514
<rdar://problem/
23235458>
Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-23
Reviewed by Alexey Proskuryakov.
* fast/harness/results.html: Create separate other-crash-tests-table.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191524
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Oct 2015 00:42:39 +0000 (00:42 +0000)]
Marking more http/tests/xmlhttprequest/timeout/ tests as flaky, removing Yosemite-only flag
https://bugs.webkit.org/show_bug.cgi?id=150378
Patch by Ryan Haddad <ryanhaddad@apple.com> on 2015-10-23
Reviewed by Alexey Proskuryakov.
* platform/mac-wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191521
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 24 Oct 2015 00:26:21 +0000 (00:26 +0000)]
Invoke the context menu delegate callback right before we return the menu
https://bugs.webkit.org/show_bug.cgi?id=150521
Reviewed by Tim Horton.
Move the getCustomMenuFromDefaultItems to WebHTMLView wholesale. This will allow us to get rid of the ContextMenuClient function from WebCore.
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::getCustomMenuFromDefaultItems):
(isPreVersion3Client): Deleted.
(isPreInspectElementTagClient): Deleted.
(fixMenusToSendToOldClients): Deleted.
(fixMenusReceivedFromOldClients): Deleted.
* WebView/WebHTMLView.mm:
(isPreVersion3Client):
(isPreInspectElementTagClient):
(fixMenusToSendToOldClients):
(fixMenusReceivedFromOldClients):
(customMenuFromDefaultItems):
(-[WebHTMLView menuForEvent:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191520
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 24 Oct 2015 00:24:53 +0000 (00:24 +0000)]
Web Inspector: xlink:href should be linkified
https://bugs.webkit.org/show_bug.cgi?id=150505
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-10-23
Reviewed by Timothy Hatcher.
* UserInterface/Base/Main.js:
When opening a URL with a fragment, prefer opening a resource
that has the same URL without the fragment, otherwise this would
open in a new tab.
* UserInterface/Base/URLUtilities.js:
(absoluteURL):
Better handling absoluteURL("#frag", baseURL).
* UserInterface/Views/CodeMirrorAdditions.js:
* UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement.prototype._buildAttributeDOM):
Allow for more "href" style attributes, such as XML namespaced
"xlink:href" attribute names.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191519
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Fri, 23 Oct 2015 23:55:41 +0000 (23:55 +0000)]
Progress towards CMake on Mac
https://bugs.webkit.org/show_bug.cgi?id=150517
Reviewed by Tim Horton.
Source/WebCore:
* PlatformMac.cmake:
Source/WebKit:
* PlatformMac.cmake:
Source/WebKit2:
* CMakeLists.txt:
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* PlatformMac.cmake:
* WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp: Removed.
* WebProcess/Cookies/curl/WebCookieManagerCurl.cpp: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191518
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 23 Oct 2015 23:47:45 +0000 (23:47 +0000)]
More context menu simplification
https://bugs.webkit.org/show_bug.cgi?id=150519
Reviewed by Tim Horton.
There's no need to convert the menu items back to ContextMenuItems just so we can check whether its
represented object is the sharing service picker. Also, move the check to the second loop.
* WebView/WebHTMLView.mm:
(-[WebHTMLView menuForEvent:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191517
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 23 Oct 2015 23:07:18 +0000 (23:07 +0000)]
Updating test expectation for animations/fill-forwards-end-state.html
https://bugs.webkit.org/show_bug.cgi?id=150328#c11
Patch by Ryan Haddad <ryanhaddad@apple.com> on 2015-10-23
Reviewed by Alexey Proskuryakov.
* animations/fill-forwards-end-state-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191516
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 23 Oct 2015 21:34:27 +0000 (21:34 +0000)]
Simplify the WebKitLegacy menu conversion code
https://bugs.webkit.org/show_bug.cgi?id=150509
Reviewed by Andreas Kling.
Source/WebKit/mac:
* WebCoreSupport/WebContextMenuClient.mm:
(fixMenusToSendToOldClients):
(fixMenusReceivedFromOldClients):
(WebContextMenuClient::getCustomMenuFromDefaultItems):
Tools:
Implement the context menu delegate method so we'll test that code path.
* MiniBrowser/mac/WK1BrowserWindowController.m:
(-[WK1BrowserWindowController webView:contextMenuItemsForElement:defaultMenuItems:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191512
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Fri, 23 Oct 2015 21:25:54 +0000 (21:25 +0000)]
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
* UIProcess/Cocoa/WebViewImpl.h:
Whoops.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191511
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Fri, 23 Oct 2015 21:03:08 +0000 (21:03 +0000)]
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Anders Carlsson.
* UIProcess/API/mac/WKView.mm:
(-[WKView hitTest:]):
(-[WKView _processDidExit]):
(-[WKView _setThumbnailView:]):
(-[WKView _thumbnailView]):
(-[WKFlippedView isFlipped]): Deleted.
(-[WKView dealloc]): Deleted.
(-[WKView _setAcceleratedCompositingModeRootLayer:]): Deleted.
(-[WKView _acceleratedCompositingModeRootLayer]): Deleted.
(-[WKView _updateThumbnailViewLayer]): Deleted.
(-[WKView _reparentLayerTreeInThumbnailView]): Deleted.
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::acceleratedCompositingRootLayer):
(WebKit::WebViewImpl::layerHostingView):
(WebKit::WebViewImpl::thumbnailView):
* UIProcess/Cocoa/WebViewImpl.mm:
(-[WKFlippedView isFlipped]):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::setAcceleratedCompositingRootLayer):
(WebKit::WebViewImpl::setThumbnailView):
(WebKit::WebViewImpl::reparentLayerTreeInThumbnailView):
(WebKit::WebViewImpl::updateThumbnailViewLayer):
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::enterAcceleratedCompositingMode):
(WebKit::PageClientImpl::exitAcceleratedCompositingMode):
(WebKit::PageClientImpl::updateAcceleratedCompositingMode):
(WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
(WebKit::PageClientImpl::acceleratedCompositingRootLayer):
Move accelerated compositing and thumbnail view code.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191510
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Fri, 23 Oct 2015 20:50:34 +0000 (20:50 +0000)]
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Anders Carlsson.
* UIProcess/API/mac/WKView.mm:
(-[WKView _superRemoveTrackingRect:]):
(-[WKView addTrackingRect:owner:userData:assumeInside:]):
(-[WKView _addTrackingRect:owner:userData:assumeInside:useTrackingNum:]):
(-[WKView _addTrackingRects:owner:userDataList:assumeInsideList:trackingNums:count:]):
(-[WKView removeTrackingRect:]):
(-[WKView _removeTrackingRects:count:]):
(-[WKView view:stringForToolTip:point:userData:]):
(-[WKView _toolTipChangedFrom:to:]):
(-[WKView _setAcceleratedCompositingModeRootLayer:]): Deleted.
(-[WKView _acceleratedCompositingModeRootLayer]): Deleted.
(takeWindowSnapshot): Deleted.
* UIProcess/Cocoa/WebViewImpl.h:
* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::addTrackingRect):
(WebKit::WebViewImpl::addTrackingRectWithTrackingNum):
(WebKit::WebViewImpl::addTrackingRectsWithTrackingNums):
(WebKit::WebViewImpl::removeTrackingRect):
(WebKit::WebViewImpl::removeTrackingRects):
(WebKit::WebViewImpl::sendToolTipMouseExited):
(WebKit::WebViewImpl::sendToolTipMouseEntered):
(WebKit::WebViewImpl::stringForToolTip):
(WebKit::WebViewImpl::toolTipChanged):
Move tooltip code.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191509
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Fri, 23 Oct 2015 20:49:38 +0000 (20:49 +0000)]
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Anders Carlsson.
* UIProcess/API/mac/WKView.mm:
(-[WKView _interpretKeyEvent:completionHandler:]):
(-[WKView inputContext]):
(-[WKView performKeyEquivalent:]):
(-[WKView keyDown:]):
(-[WKView _doneWithKeyEvent:eventWasHandled:]):
(-[WKView _setPluginComplexTextInputState:]): Deleted.
(-[WKView _disableComplexTextInputIfNecessary]): Deleted.
(-[WKView _handlePluginComplexTextInputKeyDown:]): Deleted.
(-[WKView _tryHandlePluginComplexTextInputKeyDown:]): Deleted.
(-[WKView _tryPostProcessPluginComplexTextInputKeyDown:]): Deleted.
(-[WKView _pluginFocusOrWindowFocusChanged:pluginComplexTextInputIdentifier:]): Deleted.
(-[WKView _setPluginComplexTextInputState:pluginComplexTextInputIdentifier:]): Deleted.
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::pluginComplexTextInputState):
(WebKit::WebViewImpl::pluginComplexTextInputIdentifier):
* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::setPluginComplexTextInputState):
(WebKit::WebViewImpl::setPluginComplexTextInputStateAndIdentifier):
(WebKit::WebViewImpl::disableComplexTextInputIfNecessary):
(WebKit::WebViewImpl::handlePluginComplexTextInputKeyDown):
(WebKit::WebViewImpl::tryHandlePluginComplexTextInputKeyDown):
(WebKit::WebViewImpl::pluginFocusOrWindowFocusChanged):
(WebKit::WebViewImpl::tryPostProcessPluginComplexTextInputKeyDown):
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::pluginFocusOrWindowFocusChanged):
(WebKit::PageClientImpl::setPluginComplexTextInputState):
Move a few more methods.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191508
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
peavo@outlook.com [Fri, 23 Oct 2015 20:21:54 +0000 (20:21 +0000)]
[WinCairo] Improve test results for fast layouttests.
https://bugs.webkit.org/show_bug.cgi?id=150464
Reviewed by Alex Christensen.
Source/WebCore:
Disable the Mac ascent hack for WinCairo.
* platform/graphics/win/SimpleFontDataCairoWin.cpp:
(WebCore::Font::platformInit):
Tools:
Set custom device scale factor to 1.0.
* DumpRenderTree/win/DumpRenderTree.cpp:
(createWebViewAndOffscreenWindow):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191507
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 23 Oct 2015 19:19:56 +0000 (19:19 +0000)]
Don't override already existing represented objects on menu items
https://bugs.webkit.org/show_bug.cgi?id=150508
Reviewed by Tim Horton.
This fixes a crash/exception when a client implements webView:contextMenuItemsForElement:defaultMenuItems: and
the default menu has a share menu item.
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::getCustomMenuFromDefaultItems):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191506
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 23 Oct 2015 19:06:23 +0000 (19:06 +0000)]
[Content Extensions] Add test for hiding content on <a ping> pings
https://bugs.webkit.org/show_bug.cgi?id=150499
Patch by Roopesh Chander <roop@roopc.net> on 2015-10-23
Reviewed by Alex Christensen.
Test for ensuring that <a ping> pings are subject to
'css-display-none' content blocking rules.
* http/tests/contentextensions/hide-on-ping-expected.txt: Added.
* http/tests/contentextensions/hide-on-ping.html: Added.
* http/tests/contentextensions/hide-on-ping.html.json: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191505
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Fri, 23 Oct 2015 19:01:34 +0000 (19:01 +0000)]
[MediaStream] Fix UserMediaPermissionRequestProxy::invalidate
https://bugs.webkit.org/show_bug.cgi?id=150503
<rdar://problem/
23235386>
Reviewed by Dean Jackson.
* UIProcess/UserMediaPermissionRequestProxy.cpp:
(WebKit::UserMediaPermissionRequestProxy::UserMediaPermissionRequestProxy): m_manager is a pointer.
(WebKit::UserMediaPermissionRequestProxy::allow): Return early if m_manager is null, clear it after
calling the manager.
(WebKit::UserMediaPermissionRequestProxy::deny): Ditto.
(WebKit::UserMediaPermissionRequestProxy::invalidate): Clear m_manager.
* UIProcess/UserMediaPermissionRequestProxy.h: Change m_manager from a reference to a
pointer so it can be cleared.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
csaavedra@igalia.com [Fri, 23 Oct 2015 18:41:17 +0000 (18:41 +0000)]
[GTK] Minor web editor fixes
https://bugs.webkit.org/show_bug.cgi?id=150501
Reviewed by Carlos Garcia Campos.
* UIProcess/gtk/KeyBindingTranslator.cpp: Remove
"MoveParagraphForward/Backward" as these commands do not exist in
WebKit (anymore?).
* WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
(WebKit::WebEditorClient::executePendingEditorCommands):
Editor::Command can take a String, no need to convert to a C char.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191503
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Fri, 23 Oct 2015 18:29:45 +0000 (18:29 +0000)]
REGRESSION (r187121): Multiple-keyframe animations not honouring ' forwards' fill-mode
https://bugs.webkit.org/show_bug.cgi?id=150328
Reviewed by Dean Jackson.
Source/WebCore:
AnimationBase::getElapsedTime() for a finished animation would return 1 (a progress),
rather than a time value as the caller expects. Fix it to return the total duration
if the animation has finished. This fixes the bug.
Change CompositeAnimation::pauseAnimationAtTime() to be more permissive, allowing
testing of filling-forwards animations with the pause API.
Test: animations/fill-forwards-end-state.html
* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::getElapsedTime):
* page/animation/CompositeAnimation.cpp:
(WebCore::CompositeAnimation::pauseAnimationAtTime):
LayoutTests:
Filling-forwards test with an animation whose duration is greater than one second,
which showed the bug.
* animations/fill-forwards-end-state-expected.txt: Added.
* animations/fill-forwards-end-state.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191502
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Fri, 23 Oct 2015 18:07:55 +0000 (18:07 +0000)]
Fix the build by unapplying review comments.
* UIProcess/Cocoa/WebViewImpl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191501
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
utatane.tea@gmail.com [Fri, 23 Oct 2015 18:05:57 +0000 (18:05 +0000)]
[ES6] Add DFG/FTL support for accessor put operations
https://bugs.webkit.org/show_bug.cgi?id=148860
Reviewed by Geoffrey Garen.
This patch introduces accessor defining ops into DFG and FTL.
The following DFG nodes are introduced.
op_put_getter_by_id => PutGetterById
op_put_setter_by_id => PutSetterById
op_put_getter_setter => PutGetterSetterById
op_put_getter_by_val => PutGetterByVal
op_put_setter_by_val => PutSetterByVal
These DFG nodes just call operations. But it does not prevent compiling in DFG/FTL.
To use operations defined for baseline JIT, we clean up existing operations.
And reuse these operations in DFG and FTL.
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasAccessorAttributes):
(JSC::DFG::Node::accessorAttributes):
* dfg/DFGNodeType.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePutAccessorById):
(JSC::DFG::SpeculativeJIT::compilePutGetterSetterById):
(JSC::DFG::SpeculativeJIT::compilePutAccessorByVal):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLIntrinsicRepository.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::compileNode):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutAccessorById):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutGetterSetterById):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutAccessorByVal):
* jit/JIT.h:
* jit/JITInlines.h:
(JSC::JIT::callOperation):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter):
* tests/stress/dfg-put-accessors-by-id-class.js: Added.
(shouldBe):
(testAttribute):
(getter.Cocoa.prototype.get hello):
(getter.Cocoa):
(getter):
(setter.Cocoa):
(setter.Cocoa.prototype.set hello):
(setter):
(accessors.Cocoa):
(accessors.Cocoa.prototype.get hello):
(accessors.Cocoa.prototype.set hello):
(accessors):
* tests/stress/dfg-put-accessors-by-id.js: Added.
(shouldBe):
(testAttribute):
(getter.object.get hello):
(getter):
(setter.object.set hello):
(setter):
(accessors.object.get hello):
(accessors.object.set hello):
(accessors):
* tests/stress/dfg-put-getter-by-id-class.js: Added.
(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.get hello):
(getter.Cocoa.prototype.get name):
(getter):
* tests/stress/dfg-put-getter-by-id.js: Added.
(shouldBe):
(testAttribute):
(getter.object.get hello):
(getter):
* tests/stress/dfg-put-getter-by-val-class.js: Added.
(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.get name):
(getter):
* tests/stress/dfg-put-getter-by-val.js: Added.
(shouldBe):
(testAttribute):
(getter.object.get name):
(getter):
* tests/stress/dfg-put-setter-by-id-class.js: Added.
(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.set hello):
(getter.Cocoa.prototype.get name):
(getter):
* tests/stress/dfg-put-setter-by-id.js: Added.
(shouldBe):
(testAttribute):
(setter.object.set hello):
(setter):
* tests/stress/dfg-put-setter-by-val-class.js: Added.
(shouldBe):
(testAttribute):
(setter.Cocoa):
(setter.Cocoa.prototype.set name):
(setter):
* tests/stress/dfg-put-setter-by-val.js: Added.
(shouldBe):
(testAttribute):
(setter.object.set name):
(setter):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Fri, 23 Oct 2015 17:57:33 +0000 (17:57 +0000)]
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Anders Carlsson.
* UIProcess/API/mac/WKView.mm:
(-[WKView renewGState]):
(-[WKView writeSelectionToPasteboard:types:]):
(-[WKView centerSelectionInVisibleArea:]):
(-[WKView scrollWheel:]):
(-[WKView swipeWithEvent:]):
(-[WKView mouseMoved:]):
(-[WKView mouseDown:]):
(-[WKView mouseUp:]):
(-[WKView mouseDragged:]):
(-[WKView pressureChangeWithEvent:]):
(-[WKView acceptsFirstMouse:]):
(-[WKView shouldDelayWindowOrderingForEvent:]):
(-[WKView performKeyEquivalent:]):
(-[WKView keyUp:]):
(-[WKView keyDown:]):
(-[WKView flagsChanged:]):
(-[WKView _superQuickLookWithEvent:]):
(-[WKView _addFontPanelObserver]):
(-[WKView viewWillMoveToWindow:]):
(-[WKView viewDidMoveToWindow]):
(-[WKView viewDidChangeBackingProperties]):
(-[WKView enableAccessibilityIfNecessary]):
(-[WKView quickLookWithEvent:]):
(-[WKView _colorSpace]):
(-[WKView _didRelaunchProcess]):
(-[WKView _setTextIndicator:]):
(-[WKView _setTextIndicator:withLifetime:]):
(-[WKView _clearTextIndicatorWithAnimation:]):
(-[WKView _setTextIndicatorAnimationProgress:]):
(-[WKView initWithFrame:processPool:configuration:webView:]):
(-[WKView _didPerformImmediateActionHitTest:contentPreventsDefault:userData:]):
(-[WKView _internalImmediateActionAnimationControllerForHitTestResult:withType:userData:]):
(-[WKView _internalPrepareForImmediateActionAnimation]):
(-[WKView _internalCancelImmediateActionAnimation]):
(-[WKView _internalCompleteImmediateActionAnimation]):
(-[WKView _internalDismissContentRelativeChildWindowsWithAnimation:]):
(-[WKView beginDeferringViewInWindowChanges]):
(-[WKView endDeferringViewInWindowChanges]):
(-[WKView endDeferringViewInWindowChangesSync]):
(-[WKView _prepareForMoveToWindow:withCompletionHandler:]):
(-[WKView isDeferringViewInWindowChanges]):
(-[WKView allowsLinkPreview]):
(-[WKView setAllowsLinkPreview:]):
(-[WKView _setIgnoresAllEvents:]):
(-[WKView _setIgnoresNonWheelMouseEvents:]):
(-[WKView _setIgnoresNonWheelEvents:]):
(-[WKView _ignoresNonWheelEvents]):
(-[WKView _ignoresAllEvents]):
(-[WKView _setOverrideDeviceScaleFactor:]):
(-[WKView _overrideDeviceScaleFactor]):
(-[WKView _setTopContentInset:]):
(-[WKView _topContentInset]):
(-[WKView _dismissContentRelativeChildWindows]):
(-[WKView _dismissContentRelativeChildWindowsWithAnimation:]):
(-[WKView _setAutomaticallyAdjustsContentInsets:]):
(-[WKView _automaticallyAdjustsContentInsets]):
(-[WKWindowVisibilityObserver initWithView:]): Deleted.
(-[WKWindowVisibilityObserver startObserving:]): Deleted.
(-[WKWindowVisibilityObserver stopObserving:]): Deleted.
(-[WKWindowVisibilityObserver _windowDidOrderOnScreen:]): Deleted.
(-[WKWindowVisibilityObserver _windowDidOrderOffScreen:]): Deleted.
(-[WKView dealloc]): Deleted.
(-[WKView _updateWindowAndViewFrames]): Deleted.
(-[WKView updateFontPanelIfNeeded]): Deleted.
(-[WKView _selectionChanged]): Deleted.
(-[WKView addWindowObserversForWindow:]): Deleted.
(-[WKView removeWindowObservers]): Deleted.
(-[WKView doWindowDidChangeScreen]): Deleted.
(-[WKView _windowDidBecomeKey:]): Deleted.
(-[WKView _windowDidChangeScreen:]): Deleted.
(-[WKView _windowDidChangeLayerHosting:]): Deleted.
(-[WKView _windowDidResignKey:]): Deleted.
(-[WKView _windowDidMiniaturize:]): Deleted.
(-[WKView _windowDidDeminiaturize:]): Deleted.
(-[WKView _windowDidMove:]): Deleted.
(-[WKView _windowDidResize:]): Deleted.
(-[WKView _windowDidOrderOffScreen:]): Deleted.
(-[WKView _windowDidOrderOnScreen:]): Deleted.
(-[WKView _windowDidChangeBackingProperties:]): Deleted.
(-[WKView _windowDidChangeOcclusionState:]): Deleted.
(-[WKView _prepareForDictionaryLookup]): Deleted.
(-[WKView _dictionaryLookupPopoverWillClose:]): Deleted.
(-[WKView _accessibilityRegisterUIProcessTokens]): Deleted.
(-[WKView _postFakeMouseMovedEventForFlagsChangedEvent:]): Deleted.
(-[WKView _intrinsicDeviceScaleFactor]): Deleted.
(-[WKView _preferencesDidChange]): Deleted.
(-[WKView _targetWindowForMovePreparation]): Deleted.
(-[WKView _updateContentInsetsIfAutomatic]): Deleted.
(-[WKView observeValueForKeyPath:ofObject:change:context:]): Deleted.
(-[WKView _dispatchSetTopContentInset]): Deleted.
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::automaticallyAdjustsContentInsets):
(WebKit::WebViewImpl::topContentInset):
(WebKit::WebViewImpl::overrideDeviceScaleFactor):
(WebKit::WebViewImpl::isDeferringViewInWindowChanges):
(WebKit::WebViewImpl::targetWindowForMovePreparation):
(WebKit::WebViewImpl::lastPressureEvent):
(WebKit::WebViewImpl::allowsLinkPreview):
(WebKit::WebViewImpl::ignoresNonWheelEvents):
(WebKit::WebViewImpl::ignoresAllEvents):
(WebKit::WebViewImpl::createWeakPtr):
* UIProcess/Cocoa/WebViewImpl.mm:
(SOFT_LINK_CONSTANT_MAY_FAIL):
(-[WKWindowVisibilityObserver initWithView:impl:]):
(-[WKWindowVisibilityObserver dealloc]):
(-[WKWindowVisibilityObserver startObserving:]):
(-[WKWindowVisibilityObserver stopObserving:]):
(-[WKWindowVisibilityObserver startObservingFontPanel]):
(-[WKWindowVisibilityObserver startObservingLookupDismissal]):
(-[WKWindowVisibilityObserver _windowDidOrderOnScreen:]):
(-[WKWindowVisibilityObserver _windowDidOrderOffScreen:]):
(-[WKWindowVisibilityObserver _windowDidBecomeKey:]):
(-[WKWindowVisibilityObserver _windowDidResignKey:]):
(-[WKWindowVisibilityObserver _windowDidMiniaturize:]):
(-[WKWindowVisibilityObserver _windowDidDeminiaturize:]):
(-[WKWindowVisibilityObserver _windowDidMove:]):
(-[WKWindowVisibilityObserver _windowDidResize:]):
(-[WKWindowVisibilityObserver _windowDidChangeBackingProperties:]):
(-[WKWindowVisibilityObserver _windowDidChangeScreen:]):
(-[WKWindowVisibilityObserver _windowDidChangeLayerHosting:]):
(-[WKWindowVisibilityObserver _windowDidChangeOcclusionState:]):
(-[WKWindowVisibilityObserver observeValueForKeyPath:ofObject:change:context:]):
(-[WKWindowVisibilityObserver _dictionaryLookupPopoverWillClose:]):
(-[WKEditCommandObjC initWithWebEditCommandProxy:]):
(-[WKEditCommandObjC command]):
(-[WKEditorUndoTargetObjC undoEditing:]):
(-[WKEditorUndoTargetObjC redoEditing:]):
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::becomeFirstResponder):
(WebKit::WebViewImpl::resignFirstResponder):
(WebKit::WebViewImpl::renewGState):
(WebKit::WebViewImpl::updateWindowAndViewFrames):
(WebKit::WebViewImpl::setAutomaticallyAdjustsContentInsets):
(WebKit::WebViewImpl::updateContentInsetsIfAutomatic):
(WebKit::WebViewImpl::setTopContentInset):
(WebKit::WebViewImpl::dispatchSetTopContentInset):
(WebKit::WebViewImpl::setOverrideDeviceScaleFactor):
(WebKit::WebViewImpl::intrinsicDeviceScaleFactor):
(WebKit::WebViewImpl::windowDidOrderOffScreen):
(WebKit::WebViewImpl::windowDidOrderOnScreen):
(WebKit::WebViewImpl::windowDidBecomeKey):
(WebKit::WebViewImpl::windowDidResignKey):
(WebKit::WebViewImpl::windowDidMiniaturize):
(WebKit::WebViewImpl::windowDidDeminiaturize):
(WebKit::WebViewImpl::windowDidMove):
(WebKit::WebViewImpl::windowDidResize):
(WebKit::WebViewImpl::windowDidChangeBackingProperties):
(WebKit::WebViewImpl::windowDidChangeScreen):
(WebKit::WebViewImpl::windowDidChangeLayerHosting):
(WebKit::WebViewImpl::windowDidChangeOcclusionState):
(WebKit::WebViewImpl::viewWillMoveToWindow):
(WebKit::WebViewImpl::viewDidMoveToWindow):
(WebKit::WebViewImpl::viewDidChangeBackingProperties):
(WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent):
(WebKit::WebViewImpl::colorSpace):
(WebKit::WebViewImpl::beginDeferringViewInWindowChanges):
(WebKit::WebViewImpl::endDeferringViewInWindowChanges):
(WebKit::WebViewImpl::endDeferringViewInWindowChangesSync):
(WebKit::WebViewImpl::prepareForMoveToWindow):
(WebKit::WebViewImpl::pressureChangeWithEvent):
(WebKit::WebViewImpl::isEditable):
(WebKit::WebViewImpl::executeEditCommand):
(WebKit::WebViewImpl::registerEditCommand):
(WebKit::WebViewImpl::clearAllEditCommands):
(WebKit::WebViewImpl::writeSelectionToPasteboard):
(WebKit::WebViewImpl::centerSelectionInVisibleArea):
(WebKit::WebViewImpl::selectionDidChange):
(WebKit::WebViewImpl::startObservingFontPanel):
(WebKit::WebViewImpl::updateFontPanelIfNeeded):
(WebKit::WebViewImpl::preferencesDidChange):
(WebKit::WebViewImpl::setTextIndicator):
(WebKit::WebViewImpl::clearTextIndicatorWithAnimation):
(WebKit::WebViewImpl::setTextIndicatorAnimationProgress):
(WebKit::WebViewImpl::dismissContentRelativeChildWindows):
(WebKit::WebViewImpl::quickLookWithEvent):
(WebKit::WebViewImpl::prepareForDictionaryLookup):
(WebKit::WebViewImpl::setAllowsLinkPreview):
(WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResult):
(WebKit::WebViewImpl::prepareForImmediateActionAnimation):
(WebKit::WebViewImpl::cancelImmediateActionAnimation):
(WebKit::WebViewImpl::completeImmediateActionAnimation):
(WebKit::WebViewImpl::setIgnoresNonWheelEvents):
(WebKit::WebViewImpl::setIgnoresAllEvents):
(WebKit::WebViewImpl::accessibilityRegisterUIProcessTokens):
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::activeWindow):
(WebKit::PageClientImpl::preferencesDidChange):
(WebKit::PageClientImpl::registerEditCommand):
(WebKit::PageClientImpl::clearAllEditCommands):
(WebKit::PageClientImpl::selectionDidChange):
(WebKit::PageClientImpl::didPerformDictionaryLookup):
(-[WKEditCommandObjC initWithWebEditCommandProxy:]): Deleted.
(-[WKEditCommandObjC command]): Deleted.
(-[WKEditorUndoTargetObjC undoEditing:]): Deleted.
(-[WKEditorUndoTargetObjC redoEditing:]): Deleted.
(WebKit::PageClientImpl::PageClientImpl): Deleted.
Move more things to WebViewImpl.
This also introduces an unfortunate pattern that is required for things which
clients override on WKView, where we have a flow like this:
- somebody (PageClient, etc.) calls WebViewImpl::x
- WebViewImpl::x does nothing except call [WKView _x]
- [WKView _x] calls WebViewImpl::xFromViewOnly, which does the real work
As long as no clients call the -FromViewOnly variant, this will mean that
all callers are bottlenecked through the overridable WKView method.
How this works with WKWebView, I am not sure yet.
* UIProcess/mac/WKImmediateActionController.h:
* UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController initWithPage:view:viewImpl:recognizer:]):
(-[WKImmediateActionController willDestroyView:]):
(-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WKImmediateActionController immediateActionRecognizerDidCancelAnimation:]):
(-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):
(-[WKImmediateActionController menuItem:viewAtScreenPoint:]):
(-[WKImmediateActionController menuItem:previewItemAtPoint:]):
(-[WKImmediateActionController menuItem:itemFrameForPoint:]):
(-[WKImmediateActionController menuItem:maxSizeForPoint:]):
(-[WKImmediateActionController _animationControllerForDataDetectedText]):
(-[WKImmediateActionController _animationControllerForDataDetectedLink]):
(-[WKImmediateActionController _animationControllerForText]):
(-[WKImmediateActionController initWithPage:view:recognizer:]): Deleted.
Keep a generic NSView, use the WebViewImpl for WK*View related things.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191499
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 23 Oct 2015 17:55:09 +0000 (17:55 +0000)]
[GTK] update-webkitgtk-libs should use mesa tarball
https://bugs.webkit.org/show_bug.cgi?id=150470
update-webkitgtk-libs downloads all build dependencies; in fixing
bug 148941 mesa was switched from ftp to git access. Now an http
tarball is available, which is preferred over accessing via git.
Patch by Mark Salisbury <mark.salisbury@hp.com> on 2015-10-23
Reviewed by Philippe Normand
* gtk/jhbuild.modules:
Mesa access changed to http tarball.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Fri, 23 Oct 2015 17:47:49 +0000 (17:47 +0000)]
A label element not in a document should not label an element in a document
https://bugs.webkit.org/show_bug.cgi?id=148863
<rdar://problem/
22589300>
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline W3C HTML test now that one more check is passing.
* web-platform-tests/html/semantics/forms/the-label-element/label-attributes-expected.txt:
Source/WebCore:
As per the HTML specification, a label element's 'for' attribute may be
specified to indicate a form control with which the caption is to be
associated. If the attribute is specified, the attribute's value must
be the ID of a labelable element in the same Document as the label
element:
https://html.spec.whatwg.org/multipage/forms.html#attr-label-for
However, our code was failing to check if the label element was actually
in the document before calling document.getElementById(). In such case,
we would potentially return a labelable Element that is not in the same
document as the label Element. This patch fixes the problem.
The new behavior is consistent with Firefox.
No new tests, already covered by existing test.
* html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::control):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191497
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
nvasilyev@apple.com [Fri, 23 Oct 2015 17:11:02 +0000 (17:11 +0000)]
Web Inspector: Command-Enter in Debugger should show a popover with evaluation result
https://bugs.webkit.org/show_bug.cgi?id=149195
Currenty, the only way to display the popover is to hover over the text with a mouse cursor.
Provide a way to display it via a keyboard shortcut.
Reviewed by Timothy Hatcher.
* UserInterface/Controllers/CodeMirrorCompletionController.js:
(WebInspector.CodeMirrorCompletionController): Deleted.
(WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions): Deleted.
Don't evaluate selected text from Debugger or Sources in the console.
* UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
(WebInspector.CodeMirrorTokenTrackingController):
(WebInspector.CodeMirrorTokenTrackingController.prototype._handleCommandEnterKey):
(WebInspector.CodeMirrorTokenTrackingController.prototype._hidePopover):
Cmd-Enter triggers the popover, Esc hides it.
(WebInspector.CodeMirrorTokenTrackingController.prototype.set mode):
(WebInspector.CodeMirrorTokenTrackingController.prototype.removeHighlightedRange):
Don't use delete.
(WebInspector.CodeMirrorTokenTrackingController.prototype._mouseMovedWithMarkedText):
When a token isn't hovered, hide it only when it was triggered not by the keyboard.
(WebInspector.CodeMirrorTokenTrackingController.prototype._markedTextIsNoLongerHovered):
Don't use delete.
(WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo):
(WebInspector.CodeMirrorTokenTrackingController.prototype._getTokenInfoForPosition):
Abstract out a no side effects _getTokenInfoForPosition method, which is also used by _handleCommandEnterKey.
(WebInspector.CodeMirrorTokenTrackingController.prototype._mouseMovedOutOfEditor):
(WebInspector.CodeMirrorTokenTrackingController.prototype._mouseButtonWasReleasedOverEditor):
Don't use delete.
(WebInspector.CodeMirrorTokenTrackingController.prototype._processNewHoveredToken):
(WebInspector.CodeMirrorTokenTrackingController.prototype._processNonSymbolToken):
(WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
Pass tokenInfo as an argument to explicitly state that these methods require it.
(WebInspector.CodeMirrorTokenTrackingController.prototype._resetTrackingStates):
Don't use delete.
* UserInterface/Views/SourceCodeTextEditor.js:
(WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeReleased):
Allow to hide the popover regardless of mouse position. Used when the text cursor moves or
when Esc key is pressed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191496
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 23 Oct 2015 08:39:01 +0000 (08:39 +0000)]
Support for SVG `beginEvent` event and `onbegin` attribute
https://bugs.webkit.org/show_bug.cgi?id=150442
Patch by Antoine Quint <graouts@apple.com> on 2015-10-23
Reviewed by Dean Jackson.
Source/WebCore:
Add support for the SVG `beginEvent` event, which is fired as an SVG timing element enters its active interval.
Also add support for the SVG `onbegin` attribute which allows the definition of a JS event listener declaratively
for the SVG `beginEvent` event.
Tests: svg/animations/begin-event-attribute.svg
svg/animations/begin-event-script.svg
svg/animations/begin-event-syncbase.svg
* dom/EventNames.h:
* svg/animation/SVGSMILElement.cpp:
(WebCore::smilBeginEventSender):
(WebCore::smilEndEventSender):
(WebCore::SVGSMILElement::~SVGSMILElement):
(WebCore::SVGSMILElement::parseAttribute):
(WebCore::SVGSMILElement::progress):
(WebCore::SVGSMILElement::dispatchPendingEvent):
* svg/svgattrs.in:
LayoutTests:
* svg/animations/begin-event-attribute-expected.svg: Added.
* svg/animations/begin-event-attribute.svg: Added.
Test for the newly supported `onbegin` attribute.
* svg/animations/begin-event-script-expected.svg: Added.
* svg/animations/begin-event-script.svg: Added.
Test for the newly supported `beginEvent` event handled via `addEventListener()`.
* svg/animations/begin-event-syncbase-expected.svg: Added.
* svg/animations/begin-event-syncbase.svg: Added.
Test for the newly supported `beginEvent` event used as a syncbase value in a
timing attribute.
* svg/animations/end-event-attribute-expected.svg:
* svg/animations/end-event-attribute.svg:
* svg/animations/end-event-script-expected.svg:
* svg/animations/end-event-script.svg:
* svg/animations/end-event-syncbase-expected.svg:
* svg/animations/end-event-syncbase.svg:
Cleaned up tests previously added to remove unnecessary XLink namespace, DOCTYPE and
processing instruction to match new tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191494
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 23 Oct 2015 08:10:24 +0000 (08:10 +0000)]
Web Inspector: Visual sidebar should support multiple backgrounds
https://bugs.webkit.org/show_bug.cgi?id=148310
Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2015-10-23
Reviewed by Timothy Hatcher.
Changes the layout of the Background - Style section in the Visual sidebar
to be a list instead of a single editable field for a background-image URL.
Allows for comma-separated background properties (both shorthand and
longhand) and displays them all in a single list for editing.
* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Views/VisualStyleColorPicker.js:
(WebInspector.VisualStyleColorPicker):
* UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.css:
(.visual-style-property-container.comma-separated-keyword-editor):
* UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js:
(WebInspector.VisualStyleCommaSeparatedKeywordEditor):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._generateTextFromLonghandProperties.propertyValue):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._generateTextFromLonghandProperties):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.modifyPropertyText):
Comma separated properties will now try to assemble a value from related longhand
properties so that a single shorthand property with commas may be used.
* UserInterface/Views/VisualStyleDetailsPanel.css:
(.sidebar > .panel.details.css-style .visual > .details-section.background .details-section.background-style .visual-style-property-container.comma-separated-keyword-editor.background):
* UserInterface/Views/VisualStyleDetailsPanel.js:
(WebInspector.VisualStyleDetailsPanel.prototype._populateBackgroundStyleSection):
(WebInspector.VisualStyleDetailsPanel.prototype._populateBoxShadowSection):
(WebInspector.VisualStyleDetailsPanel.prototype._populateTransitionSection):
(WebInspector.VisualStyleDetailsPanel.prototype._noRemainingCommaSeparatedEditorItems):
(WebInspector.VisualStyleDetailsPanel.prototype._selectedCommaSeparatedEditorItemValueChanged):
(WebInspector.VisualStyleDetailsPanel.prototype._commaSeparatedEditorTreeItemSelected):
(WebInspector.VisualStyleDetailsPanel.prototype._populateBoxShadowSection.noRemainingTreeItems): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateBoxShadowSection.selectedBoxShadowItemValueChanged): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateBoxShadowSection.boxShadowItemSelected): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateTransitionSection.noRemainingTreeItems): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateTransitionSection.selectedtransitionItemValueChanged): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateTransitionSection.transitionItemSelected): Deleted.
Made the "background-image" property into a comma separated editor.
* UserInterface/Views/VisualStyleFontFamilyListEditor.js:
(WebInspector.VisualStyleFontFamilyListEditor):
* UserInterface/Views/VisualStyleKeywordIconList.js:
(WebInspector.VisualStyleKeywordIconList.prototype.set value):
(WebInspector.VisualStyleKeywordIconList.prototype._handleKeywordChanged):
(WebInspector.VisualStyleKeywordIconList):
* UserInterface/Views/VisualStyleKeywordPicker.js:
(WebInspector.VisualStyleKeywordPicker.prototype.updateEditorValues):
(WebInspector.VisualStyleKeywordPicker.prototype._setValue):
* UserInterface/Views/VisualStyleNumberInputBox.js:
(WebInspector.VisualStyleNumberInputBox.prototype.set value):
* UserInterface/Views/VisualStylePropertyCombiner.js:
(WebInspector.VisualStylePropertyCombiner):
(WebInspector.VisualStylePropertyCombiner.prototype.updateValuesFromText.updateCompatibleEditor):
(WebInspector.VisualStylePropertyCombiner.prototype.updateValuesFromText):
* UserInterface/Views/VisualStylePropertyEditor.js:
(WebInspector.VisualStylePropertyEditor):
(WebInspector.VisualStylePropertyEditor.prototype.update):
(WebInspector.VisualStylePropertyEditor.prototype.getValuesFromText):
(WebInspector.VisualStylePropertyEditor.prototype.get propertyMissing):
(WebInspector.VisualStylePropertyEditor.prototype._valueDidChange):
Moved "propertyMissing" into a member variable for better access.
* UserInterface/Views/VisualStyleURLInput.js:
(WebInspector.VisualStyleURLInput):
(WebInspector.VisualStyleURLInput.prototype.get synthesizedValue):
(WebInspector.VisualStyleURLInput.prototype.parseValue):
Added support for specific keywords to be used in the input field.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191493
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 23 Oct 2015 07:37:29 +0000 (07:37 +0000)]
Source/WebCore:
ConvolverNode.buffer must have same sample-rate as the AudioContext
https://bugs.webkit.org/show_bug.cgi?id=150385
Patch by Hyemi Shin <hyemi.sin@samsung.com> on 2015-10-23
Reviewed by Chris Dumez.
ConvolverNode.buffer must be of the same sample-rate as the AudioContext
or an NOT_SUPPORTED_ERR exception MUST be thrown.
Test : webaudio/convolver-setBuffer-different-samplerate.html
* Modules/webaudio/ConvolverNode.cpp:
(WebCore::ConvolverNode::setBuffer):
* Modules/webaudio/ConvolverNode.h:
* Modules/webaudio/ConvolverNode.idl:
LayoutTests:
ConvolverNode.buffer must have same sample rate as the AudioContext
https://bugs.webkit.org/show_bug.cgi?id=150385
Patch by Hyemi Shin <hyemi.sin@samsung.com> on 2015-10-23
Reviewed by Chris Dumez.
* webaudio/convolver-setBuffer-different-samplerate-expected.txt: Added.
* webaudio/convolver-setBuffer-different-samplerate.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191492
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 23 Oct 2015 06:11:49 +0000 (06:11 +0000)]
[GTK] Fix build break since r191471
https://bugs.webkit.org/show_bug.cgi?id=150487
Patch by Joonghun Park <jh718.park@samsung.com> on 2015-10-22
Reviewed by Žan Doberšek.
* UIProcess/API/gtk/WebKitContextMenuClient.cpp:
* UIProcess/gtk/WebContextMenuProxyGtk.cpp:
(WebKit::WebContextMenuProxyGtk::populate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191491
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@webkit.org [Fri, 23 Oct 2015 04:21:34 +0000 (04:21 +0000)]
[EFL] Build break since r191472 and r191473
https://bugs.webkit.org/show_bug.cgi?id=150485
Unreviewed build fix.
* CMakeLists.txt: Remove icu include path and move page include path.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191490
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Fri, 23 Oct 2015 02:53:03 +0000 (02:53 +0000)]
[OS X] Migrate GraphicsContext::drawLineForDocumentMarker() away from LocalCurrentGraphicsContext
https://bugs.webkit.org/show_bug.cgi?id=150483
Reviewed by Simon Fraser.
LocalCurrentGraphicsContext is an ugly hack to work around the problem that many NS* functions
operate on the current context rather than a context passed as an argument. This patch
migrates from NSRectFillUsingOperation() which has this behavior to CGContextDrawTiledImage()
which performs the same operation but with a passed-in CGContextRef. An added benefit is that
we don't have to mess around with pattern-based NSColors.
No new tests because there is no behavior change.
* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::findImage):
(WebCore::GraphicsContext::updateDocumentMarkerResources):
(WebCore::GraphicsContext::drawLineForDocumentMarker):
(WebCore::makePatternColor): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191489
268f45cc-cd09-0410-ab3c-
d52691b4dbfc