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

Timeline



Jan 4, 2014:

11:29 PM Changeset in webkit [161318] by msaboff@apple.com
  • 6 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: ARM64 needs push/pop pair macro assembler instructions
https://bugs.webkit.org/show_bug.cgi?id=126474

Reviewed by Mark Lam.

Added templated ldp() and stp() instruction generators to the ARM64 assembler.
Added popPair() and pushPair() to the ARM64 macro assembler. Added ARM64
version of emitFunctionPrologue() and emitFunctionEpilogue() to AssemblyHelpers.h
that use the pushPair() and popPair() macro instructions. Added disassembler support
for the newly added load/store pair instructions.

Verified that we correctly generate the new instructions and that they disassemble
the same as what the debugger shows.

  • assembler/ARM64Assembler.h:

(JSC::isInt7):
(JSC::isInt11):
(JSC::PairPostIndex::PairPostIndex):
(JSC::PairPostIndex::operator int):
(JSC::PairPreIndex::PairPreIndex):
(JSC::PairPreIndex::operator int):
(JSC::ARM64Assembler::memPairOffsetShift):
(JSC::ARM64Assembler::ldp):
(JSC::ARM64Assembler::stp):
(JSC::ARM64Assembler::loadStoreRegisterPairPostIndex):
(JSC::ARM64Assembler::loadStoreRegisterPairPreIndex):

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::popPair):
(JSC::MacroAssemblerARM64::pushPair):

  • disassembler/ARM64/A64DOpcode.cpp:

(JSC::ARM64Disassembler::A64DOpcode::appendRegisterName):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreRegisterPair::opName):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreRegisterPair::format):

  • disassembler/ARM64/A64DOpcode.h:

(JSC::ARM64Disassembler::A64DOpcodeLoadStoreRegisterPair::rt2):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreRegisterPair::immediate7):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreRegisterPair::offsetMode):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreRegisterPair::lBit):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::emitFunctionPrologue):
(JSC::AssemblyHelpers::emitFunctionEpilogue):

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

Use Compiler macros instead of raw "final" and "override"
https://bugs.webkit.org/show_bug.cgi?id=126490

Patch by Yusuke Suzuki <Yusuke Suzuki> on 2014-01-04
Reviewed by Sam Weinig.

  • runtime/JSPromiseReaction.cpp:
4:28 PM Changeset in webkit [161316] by weinig@apple.com
  • 4 edits in trunk/Source/WebCore

Move a few more functions from RenderBlock to RenderBlockFlow
https://bugs.webkit.org/show_bug.cgi?id=126494

Reviewed by Andreas Kling.

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.h:

(WebCore::RenderBlockFlow::adjustInlineDirectionLineBounds):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::textAlignmentForLine):
(WebCore::RenderBlockFlow::updateLogicalWidthForAlignment):
(WebCore::RenderBlockFlow::startAlignedOffsetForLine):
These are only used by RenderBlockFlow, so move them there.

1:48 PM Changeset in webkit [161315] by Simon Fraser
  • 9 edits in trunk/Source/WebCore

Prepare the ScrollingTree for remote use
https://bugs.webkit.org/show_bug.cgi?id=126493

Reviewed by Sam Weinig.

When committing the scrolling tree, we clone the ScrollingStateTree
to hand off to another thread, or (in future) to encode to send to the
UI process. During this cloning process, two types of layer transformations
take place: for threaded scrolling, we replace GraphicsLayer with PlatformLayers.
For remote scrolling, we'll replace GraphicsLayers with PlatformLayerIDs.
Allow the ScrollingCoordinator to specify which type of transformation occurs
by giving ScrollingStateTree a LayerRepresentation::Type member,
which is consulted during ScrollingStateNode cloning.

Also only copy layers that have changed to avoid setting dirty bits.

Expose some other stuff on ScrollingStateTree which will be needed for
remote scrolling.

  • page/scrolling/ScrollingStateFixedNode.cpp:

(WebCore::ScrollingStateFixedNode::syncLayerPositionForViewportRect):

  • page/scrolling/ScrollingStateNode.cpp:

(WebCore::ScrollingStateNode::ScrollingStateNode):

  • page/scrolling/ScrollingStateNode.h:

(WebCore::LayerRepresentation::operator GraphicsLayer::PlatformLayerID):
(WebCore::LayerRepresentation::toRepresentation):
(WebCore::ScrollingStateNode::changedProperties):
(WebCore::ScrollingStateNode::setChangedProperties):
(WebCore::ScrollingStateNode::parentNodeID):

  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):

  • page/scrolling/ScrollingStateStickyNode.cpp:

(WebCore::ScrollingStateStickyNode::syncLayerPositionForViewportRect):

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::ScrollingStateTree):
(WebCore::ScrollingStateTree::commit):
(WebCore::ScrollingStateTree::setRemovedNodes):
(WebCore::ScrollingStateTree::stateNodeForID):

  • page/scrolling/ScrollingStateTree.h:

(WebCore::ScrollingStateTree::nodeCount):
(WebCore::ScrollingStateTree::nodeMap):
(WebCore::ScrollingStateTree::preferredLayerRepresentation):
(WebCore::ScrollingStateTree::setPreferredLayerRepresentation):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::commitTreeState):

12:53 PM Changeset in webkit [161314] by weinig@apple.com
  • 6 edits in trunk/Source/WebCore

Move LineBreaker functions to LineBreaker.cpp
https://bugs.webkit.org/show_bug.cgi?id=126491

Reviewed by Simon Fraser.

  • Moves LineBreaker::nextLineBreak() and LineBreaker::nextSegmentBreak() to LineBreaker.cpp from RenderBlockLineLayout.cpp
  • Moves requiresIndent() to LineWidth.h/cpp from RenderBlockLineLayout.cpp so it can be shared.
  • Adds missing inline specifier to BreakingContext::handleEndOfLine() to avoid duplicate symbols.
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::updateLogicalInlinePositions):
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleEndOfLine):

  • rendering/line/LineBreaker.cpp:

(WebCore::LineBreaker::nextLineBreak):
(WebCore::LineBreaker::nextSegmentBreak):

  • rendering/line/LineWidth.cpp:

(WebCore::requiresIndent):

  • rendering/line/LineWidth.h:
10:31 AM Changeset in webkit [161313] by msaboff@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: ARM64 add of stack pointer not valid as second source operand
https://bugs.webkit.org/show_bug.cgi?id=126486

Reviewed by Mark Lam.

Swap the source operands in add64() if the second argument is the stack pointer
to work around ARM64 limitations for using the stack pointer as a second source operand.

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::add64):

10:30 AM Changeset in webkit [161312] by msaboff@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: slowPathFor() should emit an epilogue instead of popping the callFrameRegister
https://bugs.webkit.org/show_bug.cgi?id=126478

Reviewed by Mark Lam.

Changed the pop(callFrameRegister) to emitFunctionEpilogue().

  • jit/ThunkGenerators.cpp:

(JSC::slowPathFor):

9:46 AM Changeset in webkit [161311] by Martin Robinson
  • 8 edits
    1 add in trunk

[GTK] [CMake] Improve the way we locate gobject-introspection
https://bugs.webkit.org/show_bug.cgi?id=126452

Reviewed by Philippe Normand.

.:

  • Source/cmake/FindGObjectIntrospection.cmake: Added.
  • Source/cmake/OptionsGTK.cmake: Load the new FindGObjectIntrospection file.

Source/JavaScriptCore:

  • PlatformGTK.cmake: Use the new introspection variables.

Source/WebKit:

  • PlatformGTK.cmake: Use the new introspection variables.

Source/WebKit2:

  • PlatformGTK.cmake: Use the new introspection variables.
9:44 AM Changeset in webkit [161310] by Martin Robinson
  • 6 edits in trunk

[GTK] [CMake] Fix the video and audio build
https://bugs.webkit.org/show_bug.cgi?id=126464

Reviewed by Philippe Normand.

.:

  • Source/cmake/OptionsGTK.cmake: GStreamer files look for USE(GSTREAMER) and USE(WEBAUDIO_GSTREAMER),

so define those when appropriate. Web audio is one by default in autotools, so turn it on for cmake
as well.

Source/WebCore:

  • PlatformGTK.cmake: Complete the audio and video source lists.

Tools:

  • GtkLauncher/CMakeLists.txt: Add GStreamer includes and libraries, since GtkLauncher uses it.
9:26 AM Changeset in webkit [161309] by zandobersek@gmail.com
  • 65 edits in trunk/Source

Explicitly use the std:: nested name specifier when using std::pair, std::make_pair
https://bugs.webkit.org/show_bug.cgi?id=126439

Reviewed by Andreas Kling.

Source/JavaScriptCore:

Instead of relying on std::pair and std::make_pair symbols being present in the current scope
through the pair and make_pair symbols, the std:: specifier should be used explicitly.

  • bytecode/Opcode.cpp:

(JSC::compareOpcodePairIndices):
(JSC::OpcodeStats::~OpcodeStats):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::makeBinaryNode):

  • parser/Parser.cpp:

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

  • runtime/Structure.cpp:

(JSC::StructureTransitionTable::contains):
(JSC::StructureTransitionTable::get):
(JSC::StructureTransitionTable::add):

Source/WebCore:

Instead of relying on std::pair and std::make_pair symbols being present in the current scope
through the pair and make_pair symbols, the std:: specifier should be used explicitly.

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):

  • accessibility/AXObjectCache.h:
  • accessibility/AccessibilityARIAGridCell.cpp:

(WebCore::AccessibilityARIAGridCell::rowIndexRange):
(WebCore::AccessibilityARIAGridCell::columnIndexRange):

  • accessibility/AccessibilityARIAGridCell.h:
  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::mathPrescripts):
(WebCore::AccessibilityRenderObject::mathPostscripts):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::cellForColumnAndRow):

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::rowIndexRange):
(WebCore::AccessibilityTableCell::columnIndexRange):

  • accessibility/AccessibilityTableCell.h:
  • accessibility/atk/WebKitAccessibleInterfaceTable.cpp:

(webkitAccessibleTableGetColumnAtIndex):
(webkitAccessibleTableGetRowAtIndex):
(webkitAccessibleTableGetColumnExtentAt):
(webkitAccessibleTableGetRowExtentAt):
(webkitAccessibleTableGetColumnHeader):
(webkitAccessibleTableGetRowHeader):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityHeaderElements]):
(-[WebAccessibilityObjectWrapper accessibilityRowRange]):
(-[WebAccessibilityObjectWrapper accessibilityColumnRange]):

  • accessibility/mac/WebAccessibilityObjectWrapperBase.mm:

(convertMathPairsToNSArray):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

  • bindings/js/SerializedScriptValue.cpp:
  • dom/ContainerNode.cpp:
  • dom/StyledElement.cpp:

(WebCore::attributeNameSort):

  • html/MediaFragmentURIParser.cpp:

(WebCore::MediaFragmentURIParser::parseTimeFragment):

  • html/parser/HTMLMetaCharsetParser.h:
  • inspector/ContentSearchUtils.cpp:

(WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines):
(WebCore::ContentSearchUtils::searchInTextByLines):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::diff):
(WebCore::DOMPatchSupport::innerPatchChildren):

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

(WebCore::InspectorAgent::enable):
(WebCore::InspectorAgent::evaluateForTestInFrontend):

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

(WebCore::FormSubmission::create):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::brokenImage):

  • loader/cache/CachedImage.h:
  • platform/URL.cpp:

(WebCore::findHostnamesInMailToURL):
(WebCore::encodeHostnames):

  • platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
  • platform/graphics/FontCache.cpp:

(WebCore::FontCache::getCachedFontData):

  • platform/graphics/WidthIterator.cpp:
  • platform/network/HTTPHeaderMap.cpp:

(WebCore::HTTPHeaderMap::adopt):

  • platform/network/ResourceResponseBase.cpp:

(WebCore::ResourceResponseBase::parseCacheControlDirectives):
(WebCore::parseCacheHeader):

  • platform/text/AtomicStringKeyedMRUCache.h:
  • platform/text/LineBreakIteratorPoolICU.h:
  • rendering/InlineFlowBox.h:
  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageSizeForError):
(WebCore::RenderImage::paintReplaced):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::cachedCollapsedBorder):

  • rendering/RenderTableSection.h:
  • rendering/svg/SVGTextRunRenderingContext.cpp:

(WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):

  • svg/SVGAnimatedAngle.cpp:

(WebCore::SVGAnimatedAngleAnimator::constructFromString):
(WebCore::SVGAnimatedAngleAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedAngleAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedIntegerOptionalInteger.cpp:

(WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::constructFromString):
(WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedNumberOptionalNumber.cpp:

(WebCore::SVGAnimatedNumberOptionalNumberAnimator::constructFromString):
(WebCore::SVGAnimatedNumberOptionalNumberAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedType.cpp:

(WebCore::SVGAnimatedType::createIntegerOptionalInteger):
(WebCore::SVGAnimatedType::createNumberOptionalNumber):

  • svg/SVGAnimatedType.h:

(WebCore::SVGAnimatedType::integerOptionalInteger):
(WebCore::SVGAnimatedType::numberOptionalNumber):

  • svg/SVGAnimatedTypeAnimator.h:

(WebCore::SVGAnimatedTypeAnimator::constructFromBaseValues):
(WebCore::SVGAnimatedTypeAnimator::resetFromBaseValues):

  • svg/SVGParserUtilities.h:
  • svg/animation/SMILTimeContainer.h:

Source/WebKit/mac:

Instead of relying on std::pair and std::make_pair symbols being present in the current scope
through the pair and make_pair symbols, the std:: specifier should be used explicitly.

  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::retain):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::release):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget):

Source/WebKit2:

Instead of relying on std::pair and std::make_pair symbols being present in the current scope
through the pair and make_pair symbols, the std:: specifier should be used explicitly.

  • Shared/mac/ArgumentCodersMac.mm:

(IPC::encode):

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::show):
(WebKit::WebNotificationManagerProxy::cancel):
(WebKit::WebNotificationManagerProxy::didDestroyNotification):

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createNewWebProcess):

  • UIProcess/WebContext.h:

Source/WTF:

  • wtf/VectorTraits.h: Stop bringing std::pair into the current scope.

Jan 3, 2014:

11:43 PM Changeset in webkit [161308] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Attempt to fix EFL build.

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::setHasChangedProperties):

8:59 PM Changeset in webkit [161307] by commit-queue@webkit.org
  • 9 edits in trunk/Source/WebKit2

Build brake after 161045 on EFL port with WebKit2 and gcc 4.6.3
https://bugs.webkit.org/show_bug.cgi?id=126383

Patch by Piotr Grad <p.grad@samsung.com> on 2014-01-03
Reviewed by Sam Weinig.

Class identifier was missing.

  • DatabaseProcess/DatabaseProcess.h:
  • NetworkProcess/NetworkProcess.h:
  • PluginProcess/PluginProcess.h:
  • Shared/mac/CookieStorageShim.h:
  • UIProcess/Plugins/PluginProcessManager.h:
  • UIProcess/WebPageProxy.cpp:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:
  • WebProcess/WebProcess.h:
7:55 PM Changeset in webkit [161306] by Simon Fraser
  • 12 edits in trunk/Source/WebCore

Clean up the means of committing the scrolling state tree
https://bugs.webkit.org/show_bug.cgi?id=126482

Reviewed by Tim Horton.

ScrollingStateNodes would manually call scrollingStateTree().setHasChangedProperties()
after setPropertyChanged() in lots of places, which was repetitive, and
AsyncScrollingCoordinator manually called scheduleTreeStateCommit() in many places.

Clean up both of these with a clearer trigger for state tree commits.
ScrollingStateNodes::setPropertyChanged() calls ScrollingStateTree::setHasChangedProperties(),
which turns around and tells the ScrollingCoordinator that the state tree became dirty.

  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
(WebCore::AsyncScrollingCoordinator::scrollingStateTreePropertiesChanged):
(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate):
(WebCore::AsyncScrollingCoordinator::updateScrollingNode):
(WebCore::AsyncScrollingCoordinator::updateViewportConstrainedNode):
(WebCore::AsyncScrollingCoordinator::setScrollLayerForNode):
(WebCore::AsyncScrollingCoordinator::setCounterScrollingLayerForNode):
(WebCore::AsyncScrollingCoordinator::setHeaderLayerForNode):
(WebCore::AsyncScrollingCoordinator::setFooterLayerForNode):
(WebCore::AsyncScrollingCoordinator::setNonFastScrollableRegionForNode):
(WebCore::AsyncScrollingCoordinator::setWheelEventHandlerCountForNode):
(WebCore::AsyncScrollingCoordinator::setScrollBehaviorForFixedElementsForNode):
(WebCore::AsyncScrollingCoordinator::setScrollbarPaintersFromScrollbarsForNode):
(WebCore::AsyncScrollingCoordinator::setSynchronousScrollingReasons):

  • page/scrolling/AsyncScrollingCoordinator.h:
  • page/scrolling/ScrollingStateFixedNode.cpp:

(WebCore::ScrollingStateFixedNode::updateConstraints):

  • page/scrolling/ScrollingStateNode.cpp:

(WebCore::ScrollingStateNode::setPropertyChanged):
(WebCore::ScrollingStateNode::setLayer):

  • page/scrolling/ScrollingStateNode.h:
  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::setViewportRect):
(WebCore::ScrollingStateScrollingNode::setTotalContentsSize):
(WebCore::ScrollingStateScrollingNode::setScrollOrigin):
(WebCore::ScrollingStateScrollingNode::setScrollableAreaParameters):
(WebCore::ScrollingStateScrollingNode::setFrameScaleFactor):
(WebCore::ScrollingStateScrollingNode::setNonFastScrollableRegion):
(WebCore::ScrollingStateScrollingNode::setWheelEventHandlerCount):
(WebCore::ScrollingStateScrollingNode::setSynchronousScrollingReasons):
(WebCore::ScrollingStateScrollingNode::setScrollBehaviorForFixedElements):
(WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):
(WebCore::ScrollingStateScrollingNode::setHeaderHeight):
(WebCore::ScrollingStateScrollingNode::setFooterHeight):
(WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
(WebCore::ScrollingStateScrollingNode::setHeaderLayer):
(WebCore::ScrollingStateScrollingNode::setFooterLayer):

  • page/scrolling/ScrollingStateStickyNode.cpp:

(WebCore::ScrollingStateStickyNode::updateConstraints):

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::create):
(WebCore::ScrollingStateTree::ScrollingStateTree):
(WebCore::ScrollingStateTree::setHasChangedProperties):
(WebCore::ScrollingStateTree::didRemoveNode):

  • page/scrolling/ScrollingStateTree.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::scheduleTreeStateCommit):

  • page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:

(WebCore::ScrollingStateScrollingNode::setScrollbarPaintersFromScrollbars):

7:41 PM Changeset in webkit [161305] by Simon Fraser
  • 4 edits in trunk/Source/WebCore

Try to fix CoordinatedGraphics build after r161303. Remove implementations
which are now in the cross-platform file.

  • page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:

(WebCore::ScrollingCoordinatorCoordinatedGraphics::detachFromStateTree):
(WebCore::ScrollingCoordinatorCoordinatedGraphics::updateViewportConstrainedNode):

  • page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp:
  • page/scrolling/coordinatedgraphics/ScrollingStateScrollingNodeCoordinatedGraphics.cpp:
6:18 PM Changeset in webkit [161304] by dfarler@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

[super dealloc] missing in Source/JavaScriptCore/API/tests/testapi.mm, fails to build with -Werror,-Wobjc-missing-super-calls
https://bugs.webkit.org/show_bug.cgi?id=126454

Reviewed by Geoffrey Garen.

  • API/tests/testapi.mm:

(-[TextXYZ dealloc]):
add [super dealloc]
(-[EvilAllocationObject dealloc]):
add [super dealloc]

6:04 PM Changeset in webkit [161303] by Simon Fraser
  • 13 edits in trunk/Source/WebCore

Simplify ScrollingStateNode references to various layer types
https://bugs.webkit.org/show_bug.cgi?id=126477

Reviewed by Tim Horton.

ScrollingStateNodes referenced both GraphicsLayer and PlatformLayers, in
confusing ways. In the main thread they have a GraphicsLayer*, but need
to check to see if the underlying PlatformLayer changed. Then, when
cloned to commit to the scrolling thread, they drop the GraphicsLayer
and store a PlatformLayer.

Hide the complexity (and prepare for the future) by adding LayerRepresentation,
which wraps various different flavors of layers, and knows how to check whether
the PlatformLayer underlying a GraphicsLayer changed.

ScrollingStateNode layer setters then just take and compare LayerRepresentations.
Copy constructors convert to a PlatformLayer representation (though not really
in the right place currently), and ScrollingTreeNodes get PlatformLayers.

  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::updateScrollingNode):
(WebCore::AsyncScrollingCoordinator::setScrollLayerForNode):

  • page/scrolling/ScrollingStateFixedNode.cpp:

(WebCore::ScrollingStateFixedNode::syncLayerPositionForViewportRect):

  • page/scrolling/ScrollingStateNode.cpp:

(WebCore::ScrollingStateNode::ScrollingStateNode):
(WebCore::ScrollingStateNode::setLayer):

  • page/scrolling/ScrollingStateNode.h:

(WebCore::LayerRepresentation::LayerRepresentation):
(WebCore::LayerRepresentation::operator GraphicsLayer*):
(WebCore::LayerRepresentation::operator PlatformLayer*):
(WebCore::LayerRepresentation::operator GraphicsLayer::PlatformLayerID):
(WebCore::LayerRepresentation::operator ==):
(WebCore::LayerRepresentation::toPlatformLayer):
(WebCore::LayerRepresentation::representsGraphicsLayer):
(WebCore::LayerRepresentation::representsPlatformLayer):
(WebCore::LayerRepresentation::representsPlatformLayerID):
(WebCore::ScrollingStateNode::layer):

  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
(WebCore::ScrollingStateScrollingNode::setHeaderLayer):
(WebCore::ScrollingStateScrollingNode::setFooterLayer):

  • page/scrolling/ScrollingStateScrollingNode.h:
  • page/scrolling/ScrollingStateStickyNode.cpp:

(WebCore::ScrollingStateStickyNode::syncLayerPositionForViewportRect):

  • page/scrolling/mac/ScrollingStateNodeMac.mm:
  • page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
  • page/scrolling/mac/ScrollingTreeFixedNode.mm:

(WebCore::ScrollingTreeFixedNode::updateBeforeChildren):

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):

  • page/scrolling/mac/ScrollingTreeStickyNode.mm:

(WebCore::ScrollingTreeStickyNode::updateBeforeChildren):

6:01 PM Changeset in webkit [161302] by Seokju Kwon
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix on non-Mac port

  • Shared/API/c/WKDeprecatedFunctions.cpp: Add ENABLE(MAC) guard for "WKContextPrivateMac.h".
5:57 PM Changeset in webkit [161301] by barraclough@apple.com
  • 12 edits in trunk/Source/WebKit2

Simplify process suppression state calculation
https://bugs.webkit.org/show_bug.cgi?id=126473

Reviewed by Geoffrey Garen & Sam Weinig.

Don't check the application occlusion state (this is covered by the pages already),
and let the page check visually idle. Remove layers of functions.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didFinishLaunching):

  • Let the network process nap if all processes in its context are napping.* (* Except not really. We currently leak a boost onto the process anyway.)
  • UIProcess/Plugins/PluginProcessProxy.cpp:

(WebKit::PluginProcessProxy::didFinishLaunching):

  • Let the plugin process nap if all processes in all contexts are napping.
  • UIProcess/WebContext.h:
    • Remove canEnableProcessSuppressionForNetworkProcess & canEnableProcessSuppressionForWebProcess
    • canEnableProcessSuppressionForGlobalChildProcesses -> processSuppressionIsEnabledForAllContexts
    • combine updateProcessSuppressionStateOfChildProcesses & updateProcessSuppressionStateOfGlobalChildProcesses

-> updateProcessSuppressionState

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::isProcessSuppressible):

  • WebProcess is supressible if IsVisuallyIdle.

(WebKit::WebPageProxy::viewStateDidChange):

  • WebProcessProxy should updateProcessSuppressionState when IsVisuallyIdle changes.
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::createWebPage):
(WebKit::WebProcessProxy::addExistingWebPage):
(WebKit::WebProcessProxy::pageSuppressibilityChanged):
(WebKit::WebProcessProxy::pagePreferencesChanged):

  • pageIsProcessSuppressible -> isProcessSuppressible
  • UIProcess/WebProcessProxy.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::updateProcessSuppressionState):

  • Update supression state of network & plugin processes.

(WebKit::WebContext::processSuppressionIsEnabledForAllContexts):

  • Changed iterator style, made a static member of WebContext.
  • UIProcess/mac/WebProcessProxyMac.mm:

(WebKit::WebProcessProxy::updateProcessSuppressionState):

  • Ask the WebContext to update supression state.
  • UIProcess/mac/WindowServerConnection.h:
  • UIProcess/mac/WindowServerConnection.mm:

(WebKit::WindowServerConnection::windowServerConnectionStateChanged):
(WebKit::WindowServerConnection::WindowServerConnection):

  • Remove application occlusion state.
5:27 PM Changeset in webkit [161300] by msaboff@apple.com
  • 3 edits in branches/jsCStack/Source/JavaScriptCore

cstack Branch: ARM64 LLInt fails to compile due to instructions limitations with sp
https://bugs.webkit.org/show_bug.cgi?id=126423

Reviewed by Filip Pizlo.

Disabled the checkStackPointerAlignment macro for ARM64 since it will fault on any
improper changes to the stack pointer that result in bad alignment.

Changed uses of sp to either move into a temp register for certain operations, or
changed the order of subtract operands. The operand ordering includes branch
compare pseudo ops. In the process discovered that sanitizeStackForVM was plain
wrong and never executed the clear loop, so I fixed that while changing the operand
ordering of the compares.

The ARM64 build also complains that we are doing a compare and branch to a
non-local label so I changed branchIfException to branch around a jmp to
a possible global label.

Tested on X86-64.

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter64.asm:
5:20 PM Changeset in webkit [161299] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed, rolling out r161274.
http://trac.webkit.org/changeset/161274
https://bugs.webkit.org/show_bug.cgi?id=126475

Volates ECMA and WebGL Specification (Requested by bfulgham on
#webkit).

  • webgl/1.0.2/resources/webgl_test_files/conformance/typedarrays/data-view-test.html:
4:58 PM Changeset in webkit [161298] by msaboff@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: Make emitPutToCallFrameHeaderBeforePrologue and friends work for all platforms
https://bugs.webkit.org/show_bug.cgi?id=126421

Reviewed by Filip Pizlo.

Added new helper prologueStackPointerDelta() that returns the amount the stack
pointer should be adjusted when accessing a CallFrame via the stack pointer
before the function prologue has been executed.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::prologueStackPointerDelta):
(JSC::AssemblyHelpers::emitFunctionEpilogue):
(JSC::AssemblyHelpers::emitPutToCallFrameHeaderBeforePrologue):
(JSC::AssemblyHelpers::emitPutPayloadToCallFrameHeaderBeforePrologue):
(JSC::AssemblyHelpers::emitPutTagToCallFrameHeaderBeforePrologue):

4:52 PM Changeset in webkit [161297] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[WebGL] Blit operation from Multisample FBO to rendering FBO must ignore GL_SCISSOR test
https://bugs.webkit.org/show_bug.cgi?id=126470
<rdar://problem/15201370>

Reviewed by Dean Jackson.

Covered by webgl/1.0.2/resources/webgl_test_files/conformance/rendering/gl-scissor-test.html

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

(WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary): Temporarily deactivate the GL_SCISSOR
test while we do our blit, then reactivate if necessary.

4:35 PM Changeset in webkit [161296] by timothy_horton@apple.com
  • 10 edits in trunk/Source/WebKit2

[iOS] [WK2] TileController creates all tiles on first paint, making it slow and consuming lots of memory
https://bugs.webkit.org/show_bug.cgi?id=126457

Reviewed by Simon Fraser.

Instead of making all of the tiles all of the time, we should use the
view-exposed-rect mechanism to inform TileController about what portion
of the WKContentView is currently exposed by the WKScrollView.

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

(-[WKContentView setViewportSize:]):
(-[WKContentView didFinishScrollTo:]):
(-[WKContentView didScrollTo:]):
Inform the WebPageProxy that our exposed rect changed.

  • UIProcess/API/ios/WKView.mm:

(-[WKView scrollViewDidScroll:]):
Inform the WKContentView that we've scrolled at all.
Rename the existing WKContentView didScrollTo: to didFinishScrollTo:,
because it is expected to only fire when a scroll lands. Add didScrollTo:,
which fires continually as scrolling progresses.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::viewExposedRectChanged):
(WebKit::WebPageProxy::exposedRectChangedTimerFired):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::viewExposedRect):

  • UIProcess/mac/WebPageProxyMac.mm:

Move view-exposed-rect stuff to WebPageProxy so it can be built on both
Mac and iOS, and un-!PLATFORM(IOS) some of the related members.

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

(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::setExposedRect):
(WebKit::RemoteLayerTreeDrawingArea::setClipsToExposedRect):
(WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
(WebKit::RemoteLayerTreeDrawingArea::updateMainFrameClipsToExposedRect):
(WebKit::RemoteLayerTreeDrawingArea::mainFrameTiledBacking):
Steal TiledCoreAnimationDrawingArea's exposed-rect code.
Note that on iOS, we don't need to manually offset the exposed rect by
the scroll position, because the scroll position is already baked into
the exposed rect, and WebCore's notion of the scroll position will be
inaccurate until the scroll lands.

4:24 PM Changeset in webkit [161295] by ap@apple.com
  • 2 edits in trunk/Tools

It's confusing to have two elements link to the same URL at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=126467

Reviewed by Geoffrey Garen.

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

(StatusLineView): Don't linkify the label text, the bubble is easier to target with mouse
pointer, or to tap.

4:20 PM Changeset in webkit [161294] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[WebGL] CGLPixelFormat should specify SampleBuffer and Sample count when using MSAA
https://bugs.webkit.org/show_bug.cgi?id=126468

Reviewed by Dean Jackson.

Covered by webgl/1.0.2/resources/webgl_test_files/conformance/rendering/gl-scissor-test.html

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::setPixelFormat): Add kCGLPFAMultisample, kCGLPFASampleBuffers (and count), and
kCGLPFASamples (and count) to our pixel format when 'antialias=true'.
(WebCore::GraphicsContext3D::GraphicsContext3D): Pass a new 'antialias' flag to the setPixelFormat
method so we can turn on MSAA features when needed.

4:15 PM Changeset in webkit [161293] by Simon Fraser
  • 14 edits in trunk/Source

Give all PlatformCALayers a PlatformLayerID, not just remote ones
https://bugs.webkit.org/show_bug.cgi?id=126466

Reviewed by Tim Horton.

Source/WebCore:

The ScrollingStateTree has references to both GraphicsLayers and PlatformLayers
which is confusing, and is necessary because the underlying PlatformLayer
inside a GraphicsLayer can change. In order to hide some of this complexity,
expose GraphicsLayer::primaryLayerID() which is a PlatformLayerID that clients
can hold onto to test for underlying layer swapping.

Also constify LayerType m_layerType on PlatformCALayer, which required
cleaning up the construction of PlatformCALayerMac in the case where a
PlatformCALayerMac is wrapping an existing CALayer (which happens for video).

  • WebCore.exp.in:
  • platform/graphics/GraphicsLayer.h:

(WebCore::GraphicsLayer::primaryLayerID):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::primaryLayerID):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCALayer.cpp:

(WebCore::generateLayerID):
(WebCore::PlatformCALayer::PlatformCALayer):

  • platform/graphics/ca/PlatformCALayer.h:

(WebCore::PlatformCALayer::layerID):

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

(PlatformCALayerMac::create):
(PlatformCALayerMac::PlatformCALayerMac):
(PlatformCALayerMac::commonInit):

Source/WebKit2:

The ScrollingStateTree has references to both GraphicsLayers and PlatformLayers
which is confusing, and is necessary because the underlying PlatformLayer
inside a GraphicsLayer can change. In order to hide some of this complexity,
expose GraphicsLayer::primaryLayerID() which is a PlatformLayerID that clients
can hold onto to test for underlying layer swapping.

GraphicsLayerCARemote and PlatformCALayerRemote can now just use the
primaryLayerID() function exposed via the base class.

  • WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
  • WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::PlatformCALayerRemote):
(PlatformCALayerRemote::recursiveBuildTransaction):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
4:04 PM Changeset in webkit [161292] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Expose session state API
https://bugs.webkit.org/show_bug.cgi?id=126463

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKBrowsingContextController.h: Declared new property and method.
  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController sessionState]): Added. Calls WebPageProxy::sessionStateData.
(-[WKBrowsingContextController restoreFromSessionState:]): Added. Calls
WebPageProxy::restoreFromSessionState.

4:03 PM Changeset in webkit [161291] by barraclough@apple.com
  • 6 edits in trunk/Source/WebKit2

Remove SPI, user default for disabling process suppression
https://bugs.webkit.org/show_bug.cgi?id=126458

Reviewed by Sam Weinig.

  • Shared/API/c/WKDeprecatedFunctions.cpp:

(WKContextGetProcessSuppressionEnabled):
(WKContextSetProcessSuppressionEnabled):

  • depracated SPI.
  • UIProcess/API/C/mac/WKContextPrivateMac.mm:
    • depracated SPI.
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):

  • removed m_processSuppressionEnabled.
  • UIProcess/WebContext.h:
    • removed setProcessSuppressionEnabled, processSuppressionEnabled implementation, processSuppressionEnabledChanged, m_processSuppressionEnabled.
  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::platformInitialize):

  • removed m_processSuppressionEnabled.

(WebKit::WebContext::processSuppressionEnabled):

  • check whether all pages in all processes are suppressible.

(WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess):

  • removed call to omitProcessSuppression, m_processSuppressionEnabled -> processSuppressionEnabled().

(WebKit::WebContext::canEnableProcessSuppressionForWebProcess):

  • removed call to omitProcessSuppression, processSuppressionEnabled (we don't care if a page in a difference process is not suppresible).

(WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses):

  • removed call to omitProcessSuppression, s_processSuppressionEnabledForAllContexts -> processSuppressionIsEnabledForAllContexts().
3:38 PM Changeset in webkit [161290] by ap@apple.com
  • 3 edits in trunk/Tools

build.webkit.org/dashboard says "failed build" even if it's another step that failed
https://bugs.webkit.org/show_bug.cgi?id=126461

Reviewed by Geoffrey Garen.

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

(BuildbotBuilderQueueView.prototype.update.appendBuilderQueueStatus): Link to main
build page if it's not the compilation that failed. Use text from buildbot for description.
Show a yellow icon if it's a different kind of failure.

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

(BuildbotIteration.prototype.update): Record whether it was compile-webkit step that failed.

3:25 PM Changeset in webkit [161289] by thiago.lacerda@openbossa.org
  • 2 edits in trunk/Source/WebKit2

[WK2][CoordinatedGraphics] Removing repeated protected keyword in WebView
https://bugs.webkit.org/show_bug.cgi?id=126462

Reviewed by Simon Fraser.

  • UIProcess/CoordinatedGraphics/WebView.h:
3:19 PM Changeset in webkit [161288] by akling@apple.com
  • 6 edits in trunk/Source/WebCore

Add lineageOfType renderer iterator and start using it.
<https://webkit.org/b/126456>

Add a convenient way to iterate over a renderers ancestry *including*
the starting point renderer (if it meets the type criteria.)

This works just like lineageOfType for Elements.

Reviewed by Geoffrey Garen.

  • rendering/RenderAncestorIterator.h:

(WebCore::lineageOfType):

Added. Returns an adapter for walking a renderer's entire lineage
matching any renderer of the given type.

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderLayerModelObject.h:

Add the requisite isRendererOfType<T> helpers.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::enclosingFloatPaintingLayer):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::enclosingLayer):
(WebCore::RenderObject::enclosingBox):
(WebCore::RenderObject::enclosingBoxModelObject):

Simplify with lineageOfType. Added some FIXMEs about functions
that should return references instead of pointers.

3:05 PM Changeset in webkit [161287] by Martin Robinson
  • 2 edits in trunk/Source/WebCore

Small build fix for the GTK+ CMake port

  • PlatformGTK.cmake: Add an IDL file that is missing from the list of IDLs

used to generate GObject DOM bindings.

2:28 PM Changeset in webkit [161286] by dbates@webkit.org
  • 12 edits
    1 add in trunk/Source/WebCore

[iOS] Upstream WebCore/css changes
https://bugs.webkit.org/show_bug.cgi?id=126237

Reviewed by Simon Fraser.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue): Added iOS-specific code and FIXME comment.

  • css/CSSParser.cpp:

(WebCore::CSSParserContext::CSSParserContext): Ditto.
(WebCore::CSSParser::parseValue): Ditto.

  • css/CSSPropertyNames.in: Added property -webkit-composition-fill-color. Also added FIXME comment.
  • css/CSSValueKeywords.in: Added iOS-specific -apple-system-* values.
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): Added iOS-specific code and FIXME comments.

  • css/MediaFeatureNames.h: Added media feature -webkit-video-playable-inline.
  • css/MediaQueryEvaluator.cpp:

(WebCore::isRunningOnIPhoneOrIPod): Added. Also added FIXME comment.
(WebCore::video_playable_inlineMediaFeatureEval): Added.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::canShareStyleWithElement): Substitute toHTMLMediaElement() for toMediaElement().
(WebCore::StyleResolver::applyProperty): Added iOS-specific code and FIXME comment.

  • css/html.css: Added iOS-specific CSS styles.

(input, textarea, keygen, select, button, isindex):
(isindex):
(input[type="date"]):
(input[type="datetime"]):
(input[type="datetime-local"]):
(input[type="month"]):
(input[type="time"]):
(textarea):
(input:-webkit-autofill):
(input[type="radio"], input[type="checkbox"]):
(input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button):
(input[type="range"]::-webkit-slider-thumb, input[type="range"]::-webkit-media-slider-thumb):
(input[type="range"]::-webkit-slider-thumb:active):
(input:disabled, textarea:disabled):
(input[readonly], textarea[readonly]):
(textarea::-webkit-input-placeholder):
(input[type="checkbox"]):
(input[type="radio"]):
(input[type="checkbox"]:checked, input[type="radio"]:checked):
(input[type="checkbox"]:checked:disabled, input[type="radio"]:checked:disabled):
(select:focus):
(select):

  • css/mathml.css: Added iOS-specific CSS styles.

(math, mfenced > *):
(mo, mfenced):

  • css/mediaControlsiOS.css: Added.
  • css/svg.css: Added iOS-specific CSS styles.

(text, tspan, tref):

1:45 PM Changeset in webkit [161285] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[WebGL] glScissor test is not accounted for when generating internal rendering textures.
https://bugs.webkit.org/show_bug.cgi?id=126455
<rdar://problem/15744206>

Reviewed by Dean Jackson.

Covered by webgl/1.0.2/conformance/rendering/gl-scissor-test.html

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::prepareTexture): Check state of GL_SCISSOR_TEST and GL_DITHER, deactivate them during
our internal drawing, then turn them back on for further processing.

1:40 PM Changeset in webkit [161284] by Bem Jones-Bey
  • 3 edits in trunk/Tools

setup-git-clone fails to get email address from git
https://bugs.webkit.org/show_bug.cgi?id=126446

Reviewed by Ryosuke Niwa.

The setup-git-clone command fails to get an email address from git
because of a bug in VCSUtils. This patch fixes that bug, and also
makes it so that when VCSUtils fails for real because of a local
misconfiguration, the error message is actually presented to the user
of setup-git-clone.

  • Scripts/VCSUtils.pm:

(gitConfig): Call isGit() instead of accessing $isGit directly to make

sure that $isGit is properly initialized.

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

(SetupGitClone.execute): Pull out username and email acquistion to

it's own method.

(SetupGitClone._get_username_and_email): Catch the exception thrown

when VCSUtils fails and print out the error message so that the
user actually knows why the command failed.

1:28 PM Changeset in webkit [161283] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Maybe fix Windows build.

  • WebCore.vcxproj/copyForwardingHeaders.cmd:
1:25 PM Changeset in webkit [161282] by Simon Fraser
  • 2 edits in trunk/Source/WebKit

Attempt to fix EFL build.

  • CMakeLists.txt:
1:02 PM Changeset in webkit [161281] by ap@apple.com
  • 2 edits in trunk/Tools

It feels too hard to get rid of a popover at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=126451

Reviewed by Simon Fraser.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Popover.css:

(.popover.fade-out): Reduced the timeout - 200 ms is enough to not have flicker
when moving the mouse from an element to its popover.

12:50 PM Changeset in webkit [161280] by jer.noble@apple.com
  • 6 edits
    2 adds in trunk/Source/WebCore

[MediaControls][iOS] Enable JavaScript Media Controls on iOS.
https://bugs.webkit.org/show_bug.cgi?id=126440

Reviewed by Eric Carlson.

Drive-by misspelling fix, and add a convenience function to check if the
controls are currently hidden:

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.handleWrapperMouseMove):
(Controller.prototype.handleWrapperMouseOut):
(Controller.prototype.updatePlaying):
(Controller.prototype.controlsAreHidden): Added.

Add a new subclass of Controller for iOS and a matching CSS:

  • Modules/mediacontrols/mediaControlsiOS.css: Added.
  • Modules/mediacontrols/mediaControlsiOS.js: Added.

(createControls): Override the createControls() in mediaControlsApple.js.
(ControllerIOS): Define a new class.
(ControllerIOS.prototype.inheritFrom): Convenience method to mixin parent

prototype methods.

(ControllerIOS.prototype.createBase): Override, listen for touches instead of mouse events.
(ControllerIOS.prototype.createControls): Ditto.
(ControllerIOS.prototype.configureInlineControls): Override, only add play, timeline, and full

screen butttons.

(ControllerIOS.prototype.configureFullScreenControls): Override, and add no buttons.
(ControllerIOS.prototype.handlePlayButtonTouchStart): Activate.
(ControllerIOS.prototype.handlePlayButtonTouchEnd): De-activate and do action.
(ControllerIOS.prototype.handlePlayButtonTouchCancel): De-activate and cancel.
(ControllerIOS.prototype.handleWrapperTouchStart): Show controls.
(ControllerIOS.prototype.handlePanelTouchStart): Disable video selection.
(ControllerIOS.prototype.handlePanelTouchEnd): Re-enable video selection.
(ControllerIOS.prototype.handlePanelTouchCancel): Ditto.

Drive-by fix to enable the JavaScript controls when the plugin is disabled:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

Add the iOS JavaScript by appending it to the generic (Apple) JavaScript:

  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::mediaControlsScript):

Add new files to project:

  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
12:45 PM Changeset in webkit [161279] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Allow the ChromeClient to provide a custom ScrollingCoordinator
https://bugs.webkit.org/show_bug.cgi?id=126450

Reviewed by Tim Horton.

Some platforms will want to provide a custom ScrollingCoordinator, so let
them do so by asking ChromeClient first for one.

  • page/ChromeClient.h:

(WebCore::ChromeClient::createScrollingCoordinator):

  • page/Page.cpp:

(WebCore::Page::scrollingCoordinator):

12:22 PM Changeset in webkit [161278] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Deploy more child renderer iterators in RenderBlockFlow.
<https://webkit.org/b/126434>

Reviewed by Sam Weinig.

  • rendering/RenderBlockFlow.cpp:

(WebCore::shouldCheckLines):

Make this helper take a RenderBlockFlow instead of a RenderObject
and simplified it a bit. RenderDeprecatedFlexibleBox does not
derive from RenderBlockFlow so those checks can be omitted.

(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::markAllDescendantsWithFloatsForLayout):
(WebCore::RenderBlockFlow::lineAtIndex):
(WebCore::RenderBlockFlow::lineCount):
(WebCore::RenderBlockFlow::clearTruncation):

Use childrenOfType to iterate over block and block-flow children.
Tweaked some early return/continue to reduce nesting.

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

Please add a way to quick peek at failing tests at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122181

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

(BuildbotQueueView.prototype._presentNoChangePopover): Update one more place for
popover.present signature change.

12:05 PM Changeset in webkit [161276] by Simon Fraser
  • 11 edits in trunk/Source/WebCore

Allow different types of ScrollingTrees to have different types of ScrollingTreeNode subclasses
https://bugs.webkit.org/show_bug.cgi?id=126445

Reviewed by Tim Horton.

Make it possible to have ScrollingTree subclasses with different subclasses of ScrollingTreeNodes,
by giving ScrollingTree a pure virtual createNode() function. ThreadedScrollingTree implements
this, and then delegates node creation to its AsyncScrollingCoordinator (since we have
a ScrollingCoordinatorMac but no real need for a ThreadedScrollingTreeMac).

Also made ThreadedScrollingTree's m_scrollingCoordinator an AsyncScrollingCoordinator,
since by definition a threaded scrolling tree uses an async coordinator.

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

(WebCore::ScrollingTree::updateTreeFromStateNode):

  • page/scrolling/ScrollingTree.h:
  • page/scrolling/ScrollingTreeScrollingNode.h:
  • page/scrolling/ThreadedScrollingTree.cpp:

(WebCore::ThreadedScrollingTree::create):
(WebCore::ThreadedScrollingTree::ThreadedScrollingTree):
(WebCore::ThreadedScrollingTree::createNode):

  • page/scrolling/ThreadedScrollingTree.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::createScrollingTreeNode):

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::create):

11:52 AM Changeset in webkit [161275] by barraclough@apple.com
  • 2 edits in trunk/Source/WebCore

Refactor NSActivity handling code from ChildProcess to UserActivity
https://bugs.webkit.org/show_bug.cgi?id=126330

Unreviewed build fix.

  • platform/UserActivity.h:
    • case fix.
11:47 AM Changeset in webkit [161274] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

Revise WebGL DataView test to match ECMAScript Draft Specification
https://bugs.webkit.org/show_bug.cgi?id=126032

Based on the ECMAScript specification, we believe that the current test is wrong. We are working to get this
fixed upstream.

Reviewed by Dean Jackson.

  • webgl/1.0.2/resources/webgl_test_files/conformance/typedarrays/data-view-test.html: Do not

prohibit using DataView as a function.

11:32 AM Changeset in webkit [161273] by ap@apple.com
  • 12 edits
    1 add in trunk/Tools

Please add a way to quick peek at failing tests at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122181

Reviewed by Timothy Hatcher and Timothy Horton.

Detailed results are saved by run-webkit-tests to full_results.json (which is actually
JSONP). Dashboard will load them on demand.

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

(Buildbot.prototype.layoutTestResultsURLForIteration): Moved from WebKitBuildbot.js
and made it use a function from WebKitBuildbot that builds results directory path.
(Buildbot.prototype.layoutTestFullResultsURLForIteration): Added a function that builds
a URL for full_results.json.
(Buildbot.prototype.layoutTestCrashLogForIteration): Added a function that builds
a URL for a crash log.

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

(BuildbotIteration.prototype.loadLayoutTestResults): Load and cache layout test results for
the iteration.

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

(BuildbotQueueView.prototype._presentPopoverForPendingCommits): Updated for changed
popover API (see below).
(BuildbotQueueView.prototype._presentPopoverForRevisionRange): Ditto.

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

(BuildbotTesterQueueView.prototype.update.appendBuilderQueueStatus): Added a check
for iterations that were interrupted (previously, they were displayed incorrectly,
often as passes). Install popover trackers for failure bubbles for which we can currently
display something useful.
(BuildbotTesterQueueView.prototype._popoverContentForLayoutTestRegressions): Build
a popover for layout test regressions when we have the data loaded on demand.
We have test paths, special indicators for crashes/timeouts, and links to test history
at flakiness dashboard.
(BuildbotTesterQueueView.prototype._presentPopoverForLayoutTestRegressions): Show
the popover for layout test regressions. Just shows "Loading..." until the data is
loaded.
(BuildbotTesterQueueView.prototype._presentPopoverForMultipleFailureKinds): List
types of failures if there are multiple. There is a lot of similarity with
appendBuilderQueueStatus(), but I couldn't find a good way to share the code.

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

Create a global test history object, which is used for links in layout test popover.

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

Changed the API to be more like WebInspector again, allowing for changing content
of an existing popover. As the size of a popover can change, making the mouse pointer
enter it without a mousenter event, install a handler for mousewheel instead, and block
document scrolling from this event handler when needed.

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

(StatusLineView.prototype.get statusBubbleElement): Added an accessor for status
bubble element, making it possible to install a popover on it.

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

(JSON.load): Added the ability to load JSONP by providing an optional callback name.

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

(WebKitBuildbot.prototype.layoutTestResultsDirectoryURLForIteration): Switched from
building a complete results URL to only building one for root results path. This is
the part that depends on specific buildbot installation, everything relative to it
is the same.

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

Build a path to test history page. In the future, we may consider adding code to
load the data and display it inline.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/QueueView.css:

Added styles for this new popover.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html: Added

a new file, WebKitTestHistory.js.

11:13 AM Changeset in webkit [161272] by Carlos Garcia Campos
  • 7 edits in trunk/Source/WebKit2

Define WebProcess::usesNetworkProcess unconditionally
https://bugs.webkit.org/show_bug.cgi?id=126208

Reviewed by Martin Robinson.

Returning false when network process is not enabled like
WebContext does. This way we reduce the amount of ifdefs used when
checking whether network process is in use.

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformInitializeWebProcess): Remove #ifdef
and only setup network features when not using network process.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::isAvailable): Remove #ifdef.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadManager):
(WebKit::WebProcess::shouldTerminate):
(WebKit::WebProcess::usesNetworkProcess):

  • WebProcess/WebProcess.h:
  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformSetCacheModel): Remove #ifdef.
(WebKit::WebProcess::platformInitializeWebProcess): Ditto.

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformSetCacheModel): Ditto.
(WebKit::WebProcess::platformClearResourceCaches): Ditto.
(WebKit::WebProcess::platformInitializeWebProcess): Ditto.
(WebKit::WebProcess::platformTerminate): Only remove the language
observer when not using network process.
(WebKit::WebProcess::setIgnoreTLSErrors): Assert when this is
called with network process enabled.
(WebKit::WebProcess::allowSpecificHTTPSCertificateForHost): Ditto.

11:06 AM Changeset in webkit [161271] by barraclough@apple.com
  • 11 edits
    3 adds in trunk/Source

Source/WebCore: Refactor NSActivity handling code from ChildProcess to UserActivity
https://bugs.webkit.org/show_bug.cgi?id=126330

Reviewed by Sam Weinig.

UserActivity is a mechanism to express to the operating system (where appropriate)
that a user initiated activity is taking place, and as such that resources should be
made available to the process accordingly.

Currently we hold a single NSActivity, at the WebKit layer. This refactoring allows us
to hold different activity tokens for different user actions (which simplifies the
handling, and aides debugging since the token can more accurately express the activity
taking place), and also will allow us to avoid the layering difficulty of calling back
up the stack to WebKit to register that an activity is taking place.

  • WebCore.xcodeproj/project.pbxproj:
    • added new files.
  • platform/UserActivity.cpp: Added.

(WebCore::UserActivity::UserActivity):

  • nop implementation - ignore description.

(WebCore::UserActivity::beginActivity):
(WebCore::UserActivity::endActivity):

  • nop implementation - just inc/dec m_count.
  • platform/UserActivity.h: Added.

(WebCore::UserActivity::isActive):

  • returns true if one or more instance of this activity is in progress.
  • platform/mac/UserActivityMac.mm: Added.

(WebCore::UserActivity::UserActivity):

  • constructor accepts one argument, a description string.

(WebCore::UserActivity::isValid):

  • used by assertions.

(WebCore::UserActivity::beginActivity):
(WebCore::UserActivity::endActivity):

  • track start/end of an activity - calls to these methods should be balanced.

(WebCore::UserActivity::hysteresisTimerFired):

  • used to implement hysteresis in releasing NSActivity.

Source/WebKit2: VibrationPattern should allocate an single vector instance for single integer input
https://bugs.webkit.org/show_bug.cgi?id=126417

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2014-01-03
Reviewed by Gyuyoung Kim.

Fix a vibration unit test regression after r161139. Also remove unnecessary test cases.

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(EWK2ViewTest::loadVibrationHTMLString):
(TEST_F):

Source/WTF: Refactor NSActivity handling code from ChildProcess to UserActivity
https://bugs.webkit.org/show_bug.cgi?id=126330

Reviewed by Sam Weinig.

UserActivity is a mechanism to express to the operating system (where appropriate)
that a user initiated activity is taking place, and as such that resources should be
made available to the process accordingly.

Currently we hold a single NSActivity, at the WebKit layer. This refactoring allows us
to hold different activity tokens for different user actions (which simplifies the
handling, and aides debugging since the token can more accurately express the activity
taking place), and also will allow us to avoid the layering difficulty of calling back
up the stack to WebKit to register that an activity is taking place.

  • wtf/Platform.h:
    • added HAVE_NS_ACTIVITY.
11:05 AM Changeset in webkit [161270] by fpizlo@apple.com
  • 4 edits in branches/jsCStack/Source/JavaScriptCore

Unreviewed, some trivial 32-bit build fixes.

32-bit is still broken but this takes care of some easy things. This is part of
the work for https://bugs.webkit.org/show_bug.cgi?id=116888.

  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::storePtr):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):

  • jit/RegisterPreservationWrapperGenerator.cpp:

(JSC::generateRegisterRestoration):

10:59 AM Changeset in webkit [161269] by ap@apple.com
  • 3 edits
    2 adds in trunk

Line ending conversion should be able to handle strings with null chars
https://bugs.webkit.org/show_bug.cgi?id=126202

This is a merge from Blink.

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Test: http/tests/local/formdata/send-form-data-with-string-containing-null.html

  • platform/text/LineEnding.cpp: (WebCore::normalizeToCROrLF): Do it right.

LayoutTests:

  • http/tests/local/formdata/send-form-data-with-string-containing-null-expected.txt: Added.
  • http/tests/local/formdata/send-form-data-with-string-containing-null.html: Added.
10:49 AM Changeset in webkit [161268] by Carlos Garcia Campos
  • 3 edits in trunk/Tools

REGRESSION(r161214): [GTK] WebKit2 C API tests fail to run after r161214
https://bugs.webkit.org/show_bug.cgi?id=126430

Reviewed by Martin Robinson.

  • Scripts/run-gtk-tests:

(TestRunner._setup_testing_environment):

  • gtk/common.py: Use common.tests_library_build_path() instead.

(tests_library_build_path): Helper funtion that returns the path
where the tests libraries are built.

10:41 AM Changeset in webkit [161267] by berto@igalia.com
  • 2 edits in trunk/Source/WebCore

WebKit-GTK 1.8.1 does not build on OS X 10.7
https://bugs.webkit.org/show_bug.cgi?id=88407

Reviewed by Carlos Garcia Campos.

Replace non-portable 'echo -n' with 'true'.

  • GNUmakefile.am:
9:37 AM Changeset in webkit [161266] by alex.christensen@flexsim.com
  • 2 edits in trunk/WebKitLibraries

[WinCairo] Enable video using GStreamer.
https://bugs.webkit.org/show_bug.cgi?id=126015

Reviewed by Darin Adler.

  • win/tools/vsprops/FeatureDefinesCairo.props:

Define ENABLE_MEDIA_CONTROLS_SCRIPT, ENABLE_VIDEO_TRACK, and ENABLE_VIDEO.

9:35 AM Changeset in webkit [161265] by alex.christensen@flexsim.com
  • 2 edits in trunk/Websites/webkit.org

Added GStreamer to list of required tools for compiling webkit.
https://bugs.webkit.org/show_bug.cgi?id=126319

Reviewed by Philippe Normand.

  • building/tools.html:

Mentioned that QuickTime and QuickTime SDK are only required for AppleWin.
Added GStreamer installers to list of required tools for WinCairo.

9:21 AM Changeset in webkit [161264] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=126428

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-01-03
Reviewed by Brent Fulgham.

The NativeImagePtr type is not an CGImageRef on WinCairo, cannot use CFRetain.

  • loader/cache/MemoryCache.cpp: Replace USE(CF) with USE(CG).
  • loader/cache/MemoryCache.h: Ditto.
9:03 AM Changeset in webkit [161263] by Martin Robinson
  • 2 edits in trunk

[CMake] The forwarding headers generated by WebKitMacros.m4 are incompatible with the headers generated by generate-forwarding-headers.pl
https://bugs.webkit.org/show_bug.cgi?id=126361

Reviewed by Philippe Normand.

Make the forwarding headers generated by WebKitMacros.m4 compatible with the headers
generated by the WebKit2 forwarding headers generation script.

  • Source/cmake/WebKitMacros.cmake: Try to convert absolute paths in the forwarding headers

to ones that are relative to the Source directory.

9:02 AM Changeset in webkit [161262] by Martin Robinson
  • 2 edits in trunk/Tools

[CMake] Build TestWebKitAPI tests into a directory structure
https://bugs.webkit.org/show_bug.cgi?id=126358

Reviewed by Gyuyoung Kim.

WebKitGTK+ builds the TestWebKitAPI tests into a "TestWebKitAPI" directory. This
is useful for keeping the "bin" directory tidy during building and will make it easier
to integrate the CMake build into the existing WebKitGTK+ scripts.

  • TestWebKitAPI/CMakeLists.txt: Set the output directory of all TestWebKitAPI binaries

and make the names simpler now that the directory identifies what category the test is in.

9:00 AM Changeset in webkit [161261] by ap@apple.com
  • 4 edits in trunk/Tools

Provide a visual clue when element has a popover at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=126281

Reviewed by Timothy Hatcher.

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

(PopoverTracker): Add a class name to elements with popovers.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:

(*): We have -webkit-user-select:none, so let's also not show text selection cursor.
I might have broke that recently.
(*:link): Show hand cursor over links.
(.popover-tracking:hover): Put a shadow on hover over element with popovers.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:

(.status-line .message .revision-number): Show text selection cursor on our only
selectable text element.
(.status-line .bubble.popover-tracking:hover): Text in a bubble looks better with
a white shadow than with a dark one on hover.

8:57 AM Changeset in webkit [161260] by hmuller@adobe.com
  • 9 edits in trunk/Source/WebCore

[CSS Shapes] Simplify FloatRoundedRect, BoxShape construction
https://bugs.webkit.org/show_bug.cgi?id=125995

Reviewed by Andreas Kling.

Cleanup of various internal Shape issues:

  • Removed unnecessary Shape() initialization list entries in Shape subclasses per https://bugs.webkit.org/show_bug.cgi?id=125548#c2.
  • Used const references instead of pointers for non-deprecated Shape:createShape() logic.
  • Replaced createShape() overloads for Rasters and Boxes with functions named createRasterShape() and createBoxShape().
  • Added a FloatRoundedRect::Radii() constructor to reduce the parameter list length of the FloatRoundedRect constructor in createBoxShape().

There are no new tests, this is just internal refactoring.

  • platform/graphics/FloatRoundedRect.h:

(WebCore::FloatRoundedRect::Radii::Radii):

  • rendering/shapes/BoxShape.h:

(WebCore::BoxShape::BoxShape):

  • rendering/shapes/PolygonShape.h:

(WebCore::PolygonShape::PolygonShape):

  • rendering/shapes/RasterShape.h:

(WebCore::RasterShape::RasterShape):

  • rendering/shapes/RectangleShape.h:

(WebCore::RectangleShape::RectangleShape):

  • rendering/shapes/Shape.cpp:

(WebCore::createInsetShape):
(WebCore::Shape::createShape):
(WebCore::Shape::createRasterShape):
(WebCore::Shape::createBoxShape):

  • rendering/shapes/Shape.h:
  • rendering/shapes/ShapeInfo.cpp:

(WebCore::ShapeInfo<RenderType>::computedShape):

3:44 AM Changeset in webkit [161259] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Remove unused Document::openSearchDescriptionURL().
<https://webkit.org/b/126419>

Reviewed by Antti Koivisto.

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

Scrub leftovers from the defunct Chromium port.

1:06 AM Changeset in webkit [161258] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Add failure and flakiness expectations for a couple of tests.
  • platform/gtk/svg/custom/object-no-size-attributes-expected.txt: Rebaseline.
12:45 AM Changeset in webkit [161257] by jinwoo7.song@samsung.com
  • 4 edits in trunk/Source

VibrationPattern should allocate an single vector instance for single integer input
https://bugs.webkit.org/show_bug.cgi?id=126417

Reviewed by Gyuyoung Kim.

Source/WebCore:

When the Vibration pattern is set with a single integer, the VibrationPattern should
be set with this integer as a vibration time. But the VibrationPattern(unsigned vector) was
initialized with a single parameter, the vibration time, so the time was used to set
the size of vector.

  • Modules/vibration/NavigatorVibration.cpp:

(WebCore::NavigatorVibration::vibrate):

Source/WebKit2:

Fix a vibration unit test regression after r161139. Also remove unnecessary test cases.

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(EWK2ViewTest::loadVibrationHTMLString):
(TEST_F):

12:42 AM Changeset in webkit [161256] by Carlos Garcia Campos
  • 10 edits in trunk

[GTK] Add API to WebKitResponsePolicyDecision to check if the MIME type can be shown
https://bugs.webkit.org/show_bug.cgi?id=124652

Reviewed by Martin Robinson.

Source/WebKit2:

  • UIProcess/API/gtk/WebKitPolicyClient.cpp:

(decidePolicyForResponse): Pass canShowMIMEType to
webkitResponsePolicyDecisionCreate.

  • UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:

(webkit_response_policy_decision_is_mime_type_supported): Return
canShowMIMEType.
(webkitResponsePolicyDecisionCreate): Set the canShowMIMEType
member from the given parameter.

  • UIProcess/API/gtk/WebKitResponsePolicyDecision.h:
  • UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewDecidePolicy): Use the new API instead of
webkit_web_view_can_show_mime_type() since it's more efficient.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
  • UIProcess/API/gtk/tests/TestWebKitPolicyClient.cpp:

(testResponsePolicy): Test the new API.

Tools:

  • MiniBrowser/gtk/BrowserWindow.c:

(webViewDecidePolicy): Use the new API instead of
webkit_web_view_can_show_mime_type().

Note: See TracTimeline for information about the timeline view.