Timeline
Dec 30, 2015:
- 9:43 PM Changeset in webkit [194452] by
-
- 24 edits in trunk
Modern IDB: Only fire blocked events after all open connections have handled their versionchange events.
https://bugs.webkit.org/show_bug.cgi?id=152593
Reviewed by Andy Estes.
Source/WebCore:
No new tests (At least two previously timing-out tests now pass, others are now closer to passing).
Before this patch, whenever we sent all open connections the versionchange event, we would immediately
fire the blocked event on the request.
That's not right, as those event handlers can close the connections, rendering the request unblocked.
So this patch implements the behavior of waiting for each open connection to either close or positively
message back "I finished firing my versionchange event handler"
This behavior is explicitly denoted in the spec and is covered by existing tests.
- Modules/indexeddb/client/IDBConnectionToServer.cpp:
(WebCore::IDBClient::IDBConnectionToServer::fireVersionChangeEvent):
(WebCore::IDBClient::IDBConnectionToServer::didFireVersionChangeEvent):
- Modules/indexeddb/client/IDBConnectionToServer.h:
- Modules/indexeddb/client/IDBConnectionToServerDelegate.h:
- Modules/indexeddb/client/IDBDatabaseImpl.cpp:
(WebCore::IDBClient::IDBDatabase::fireVersionChangeEvent):
(WebCore::IDBClient::IDBDatabase::dispatchEvent):
- Modules/indexeddb/client/IDBDatabaseImpl.h:
- Modules/indexeddb/client/IDBVersionChangeEventImpl.cpp:
(WebCore::IDBClient::IDBVersionChangeEvent::IDBVersionChangeEvent):
- Modules/indexeddb/client/IDBVersionChangeEventImpl.h:
- Modules/indexeddb/server/IDBConnectionToClient.cpp:
(WebCore::IDBServer::IDBConnectionToClient::fireVersionChangeEvent):
- Modules/indexeddb/server/IDBConnectionToClient.h:
- Modules/indexeddb/server/IDBConnectionToClientDelegate.h:
- Modules/indexeddb/server/IDBServer.cpp:
(WebCore::IDBServer::IDBServer::didFireVersionChangeEvent):
- Modules/indexeddb/server/IDBServer.h:
- Modules/indexeddb/server/ServerOpenDBRequest.cpp:
(WebCore::IDBServer::ServerOpenDBRequest::notifyRequestBlocked):
(WebCore::IDBServer::ServerOpenDBRequest::notifiedConnectionsOfVersionChange):
(WebCore::IDBServer::ServerOpenDBRequest::connectionClosedOrFiredVersionChangeEvent):
(WebCore::IDBServer::ServerOpenDBRequest::notifyDeleteRequestBlocked): Deleted.
- Modules/indexeddb/server/ServerOpenDBRequest.h:
(WebCore::IDBServer::ServerOpenDBRequest::hasNotifiedBlocked):
(WebCore::IDBServer::ServerOpenDBRequest::hasConnectionsPendingVersionChangeEvent):
(WebCore::IDBServer::ServerOpenDBRequest::hasNotifiedConnectionsOfVersionChange):
(WebCore::IDBServer::ServerOpenDBRequest::hasNotifiedDeleteRequestBlocked): Deleted.
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::performCurrentOpenOperation):
(WebCore::IDBServer::UniqueIDBDatabase::performCurrentDeleteOperation):
(WebCore::IDBServer::UniqueIDBDatabase::maybeNotifyConnectionsOfVersionChange):
(WebCore::IDBServer::UniqueIDBDatabase::notifyCurrentRequestConnectionClosedOrFiredVersionChangeEvent):
(WebCore::IDBServer::UniqueIDBDatabase::didFireVersionChangeEvent):
(WebCore::IDBServer::UniqueIDBDatabase::connectionClosedFromClient):
(WebCore::IDBServer::UniqueIDBDatabase::notifyConnectionsOfVersionChangeForUpgrade): Deleted.
(WebCore::IDBServer::UniqueIDBDatabase::notifyConnectionsOfVersionChange): Deleted.
- Modules/indexeddb/server/UniqueIDBDatabase.h:
- Modules/indexeddb/server/UniqueIDBDatabaseConnection.cpp:
(WebCore::IDBServer::UniqueIDBDatabaseConnection::connectionClosedFromClient):
(WebCore::IDBServer::UniqueIDBDatabaseConnection::didFireVersionChangeEvent):
(WebCore::IDBServer::UniqueIDBDatabaseConnection::fireVersionChangeEvent):
- Modules/indexeddb/server/UniqueIDBDatabaseConnection.h:
- Modules/indexeddb/shared/InProcessIDBServer.cpp:
(WebCore::InProcessIDBServer::fireVersionChangeEvent):
(WebCore::InProcessIDBServer::didFireVersionChangeEvent):
- Modules/indexeddb/shared/InProcessIDBServer.h:
- dom/Event.h:
(WebCore::Event::isVersionChangeEvent):
LayoutTests:
- Unskip two timeout tests that now pass.
- Reclassify a text-failure test to be skipped for new reasons.
- platform/mac-wk1/TestExpectations:
- 9:24 PM Changeset in webkit [194451] by
-
- 2 edits in trunk/Source/WTF
Use of WTF::move prevents clang's move diagnostics from warning about several classes of mistakes
https://bugs.webkit.org/show_bug.cgi?id=152601
Reviewed by Brady Eidson.
Clang has recently added warnings to catch certain classes of mistakes with the use of std::move():
-Wpessimizing-move (warns if moving prevents copy elision), -Wredundant-move (warns if a move is redundant),
and -Wself-move (warns if moving to self). Enabling these warnings manually (by renaming WTF::move to std::move)
have caught numerous mistakes in our codebase (see http://trac.webkit.org/changeset/194428).
It would be nice to be able to take advantage of these warnings, but doing so requires that we use std::move,
not WTF::move. But since WTF::move does provide useful checks for which clang does not yet have warnings,
we should write a best-of-both-worlds move function.
This patch adds a function that satisfies clang's criteria for a move function (in namespace std, named "move",
and takes a single argument) but also retains WTF::move's compile-time checks. It also adds a convenience macro
called WTF_MOVE for use by callers.
- wtf/StdLibExtras.h:
(std::move):
- 5:37 PM Changeset in webkit [194450] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, EFL gardening.
Mark navigation policy tests to failure and unskip some passing test.
Update media failure tests.
- platform/efl/TestExpectations:
- 1:08 PM Changeset in webkit [194449] by
-
- 19 edits4 adds in trunk
[ES6] Arrow function syntax. Arrow function specific features. Lexical bind "super"
https://bugs.webkit.org/show_bug.cgi?id=149615
Source/JavaScriptCore:
Patch by Aleksandr Skachkov <gskachkov@gmail.com> on 2015-12-30
Reviewed by Saam Barati.
Implemented lexical bind "super" property for arrow function. 'super' property can be accessed
inside of the arrow function in case if arrow function is nested in constructor, method,
getter or setter of class. In current patch using 'super' in arrow function, that declared out of the
class, lead to wrong type of error, should be SyntaxError(https://bugs.webkit.org/show_bug.cgi?id=150893)
and this will be fixed in separete patch.
- builtins/BuiltinExecutables.cpp:
(JSC::createExecutableInternal):
- bytecode/EvalCodeCache.h:
(JSC::EvalCodeCache::getSlow):
- bytecode/ExecutableInfo.h:
(JSC::ExecutableInfo::ExecutableInfo):
(JSC::ExecutableInfo::derivedContextType):
(JSC::ExecutableInfo::isClassContext):
- bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):
- bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedCodeBlock::derivedContextType):
(JSC::UnlinkedCodeBlock::isClassContext):
- bytecode/UnlinkedFunctionExecutable.cpp:
(JSC::generateUnlinkedFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):
- bytecode/UnlinkedFunctionExecutable.h:
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitPutDerivedConstructorToArrowFunctionContextScope):
- bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::derivedContextType):
(JSC::BytecodeGenerator::isDerivedConstructorContext):
(JSC::BytecodeGenerator::isDerivedClassContext):
(JSC::BytecodeGenerator::isArrowFunction):
(JSC::BytecodeGenerator::makeFunction):
- bytecompiler/NodesCodegen.cpp:
(JSC::emitHomeObjectForCallee):
(JSC::FunctionCallValueNode::emitBytecode):
- debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::evaluate):
- interpreter/Interpreter.cpp:
(JSC::eval):
- runtime/CodeCache.cpp:
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):
- runtime/Executable.cpp:
(JSC::ScriptExecutable::ScriptExecutable):
(JSC::EvalExecutable::create):
(JSC::EvalExecutable::EvalExecutable):
(JSC::ProgramExecutable::ProgramExecutable):
(JSC::ModuleProgramExecutable::ModuleProgramExecutable):
(JSC::FunctionExecutable::FunctionExecutable):
- runtime/Executable.h:
(JSC::ScriptExecutable::derivedContextType):
- runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncEval):
- tests/es6.yaml:
- tests/stress/arrowfunction-lexical-bind-superproperty.js: Added.
LayoutTests:
Patch by Skachkov Oleksandr <gskachkov@gmail.com> on 2015-12-30
Reviewed by Saam Barati.
- js/arrowfunction-superproperty-expected.txt: Added.
- js/arrowfunction-superproperty.html: Added.
- js/script-tests/arrowfunction-superproperty.js: Added.
- 12:15 PM Changeset in webkit [194448] by
-
- 13 edits in trunk/Source
Add explicit conversions between scrollOffset and scrollPostion, and use them in a few places
https://bugs.webkit.org/show_bug.cgi?id=152594
Reviewed by Sam Weinig.
Add functions to ScrollableArea to convert between scrollPosition and scrollOffset,
and use them in places where code did the math with scrollOrigin.
Source/WebCore:
- page/FrameView.cpp:
(WebCore::FrameView::minimumScrollPosition):
(WebCore::FrameView::maximumScrollPosition): totalContentsSize().width() == contentsWidth(),
so we can use the base class maximumScrollPosition(), which also clamps.
- platform/ScrollView.cpp:
(WebCore::ScrollView::maximumScrollPosition):
(WebCore::ScrollView::setScrollOffset):
(WebCore::ScrollView::overhangAmount):
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::calculateOverhangAreasForPainting):
(WebCore::ScrollView::minimumScrollPosition): Deleted. Can use base class implementation.
- platform/ScrollView.h:
- platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::minimumScrollPosition):
(WebCore::ScrollableArea::maximumScrollPosition):
(WebCore::ScrollableArea::maximumScrollOffset):
(WebCore::ScrollableArea::scrollPositionFromOffset):
(WebCore::ScrollableArea::scrollOffsetFromPosition):
- platform/ScrollableArea.h:
(WebCore::ScrollableArea::scrollOrigin):
(WebCore::ScrollableArea::scrollOriginChanged):
- platform/ios/ScrollViewIOS.mm:
(WebCore::ScrollView::unobscuredContentRect):
- platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::pinnedInDirection):
(WebCore::ScrollAnimatorMac::absoluteScrollPosition):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollPosition):
(WebCore::RenderLayer::maximumScrollPosition):
(WebCore::RenderLayer::overhangAmount):
(WebCore::RenderLayer::minimumScrollPosition): Deleted.
- rendering/RenderLayer.h:
Source/WebKit2:
- WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
- WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):
- 9:19 AM Changeset in webkit [194447] by
-
- 11 edits2 adds in trunk/Source/WebCore
Move InlineTextBox's text decoration painting to its own class.
https://bugs.webkit.org/show_bug.cgi?id=152587
Reviewed by Myles C. Maxfield.
This is in preparation for adding text decoration support for simple line layout.
No change in functionality.
- CMakeLists.txt:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.xcodeproj/project.pbxproj:
- rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintDecoration):
(WebCore::compareTuples): Deleted.
(WebCore::translateIntersectionPointsToSkipInkBoundaries): Deleted.
(WebCore::drawSkipInkUnderline): Deleted.
(WebCore::textDecorationStyleToStrokeStyle): Deleted.
(WebCore::adjustStepToDecorationLength): Deleted.
(WebCore::strokeWavyTextDecoration): Deleted.
- rendering/RenderObject.cpp:
(WebCore::RenderObject::getTextDecorationColorsAndStyles):
- rendering/RenderObject.h:
- rendering/RenderingAllInOne.cpp:
- rendering/TextDecorationPainter.cpp: Added.
(WebCore::adjustStepToDecorationLength):
(WebCore::strokeWavyTextDecoration):
(WebCore::compareTuples):
(WebCore::translateIntersectionPointsToSkipInkBoundaries):
(WebCore::drawSkipInkUnderline):
(WebCore::textDecorationStyleToStrokeStyle):
(WebCore::TextDecorationPainter::TextDecorationPainter):
(WebCore::TextDecorationPainter::paintTextDecoration):
- rendering/TextDecorationPainter.h: Added.
(WebCore::TextDecorationPainter::setInlineTextBox):
(WebCore::TextDecorationPainter::setFont):
(WebCore::TextDecorationPainter::setIsHorizontal):
(WebCore::TextDecorationPainter::setWidth):
(WebCore::TextDecorationPainter::setBaseline):
(WebCore::TextDecorationPainter::addTextShadow):
- style/InlineTextBoxStyle.cpp:
(WebCore::computeUnderlineOffset):
(WebCore::visualOverflowForDecorations):
- style/InlineTextBoxStyle.h:
- 1:48 AM Changeset in webkit [194446] by
-
- 2 edits in trunk/Source/WebCore
[CoordinatedGraphics] VideoRenderRequestScheduler shouldn't dispatch to main thread in threaded compositor
https://bugs.webkit.org/show_bug.cgi?id=152584
Reviewed by Carlos Garcia Campos.
The VideoRenderRequestScheduler class should only send the repaint-requested
signal dispatch to the main thread when not using the threaded compositor.
In case that is used (guarded via WTF_USE_COORDINATED_GRAPHICS_THREADED), the
signal dispatch can be done on the current thread (normally a GStreamer thread)
since the actual GL texture update will be then dispatched to the compositor
thread (unlike when gstreamer-gl is used, when the update can be done on the
very same thread).
When that is the case we don't need the RunLoop::Timer, Condition and the
video sink GRefPtr protector that are otherwise used by this class, so these
can just be guarded with the USE(...) flag.
- platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(VideoRenderRequestScheduler::VideoRenderRequestScheduler):
(VideoRenderRequestScheduler::stop):
(VideoRenderRequestScheduler::requestRender):
- 1:47 AM Changeset in webkit [194445] by
-
- 8 edits in trunk/Source
[TexMap] Clean up TextureMapperAnimation, TextureMapperAnimations
https://bugs.webkit.org/show_bug.cgi?id=152112
Reviewed by Darin Adler.
Source/WebCore:
Clean up the TextureMapperAnimation class. Turn AnimationState into an enum
class. Use references for non-null pointer parameters to one version of the
constructor and the apply() and applyInternal() methods. Remove unnecessary
public methods and reorder the remaining ones into something more sensible.
In terms of the implementation of this class, the methods are moved around to
follow the order of declarations, along with some small cleanups and improvements
applied.
TextureMapperAnimations class is also refreshed. The constructor is defaulted,
and the method implementations are reordered a bit and also adjusted to use the
range-based for-loops and some STL utilities.
Static functions in the implementation file are also updated to use range-based
for-loops, references and nullptrs where possible.
There's no change in behavior as this is just a refactoring.
- platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::addAnimation):
- platform/graphics/texmap/TextureMapperAnimation.cpp:
(WebCore::blendFunc):
(WebCore::applyFilterAnimation):
(WebCore::shouldReverseAnimationValue):
(WebCore::applyTransformAnimation):
(WebCore::TextureMapperAnimation::TextureMapperAnimation):
(WebCore::TextureMapperAnimation::apply):
(WebCore::TextureMapperAnimation::pause):
(WebCore::TextureMapperAnimation::resume):
(WebCore::TextureMapperAnimation::computeTotalRunningTime):
(WebCore::TextureMapperAnimation::isActive):
(WebCore::TextureMapperAnimation::applyInternal):
(WebCore::TextureMapperAnimations::add):
(WebCore::TextureMapperAnimations::remove):
(WebCore::TextureMapperAnimations::pause):
(WebCore::TextureMapperAnimations::suspend):
(WebCore::TextureMapperAnimations::resume):
(WebCore::TextureMapperAnimations::apply):
(WebCore::TextureMapperAnimations::hasActiveAnimationsOfType):
(WebCore::TextureMapperAnimations::hasRunningAnimations):
(WebCore::TextureMapperAnimations::getActiveAnimations):
- platform/graphics/texmap/TextureMapperAnimation.h:
(WebCore::TextureMapperAnimation::name):
(WebCore::TextureMapperAnimation::boxSize):
(WebCore::TextureMapperAnimation::animation):
(WebCore::TextureMapperAnimation::startTime):
(WebCore::TextureMapperAnimation::pauseTime):
(WebCore::TextureMapperAnimation::state):
(WebCore::TextureMapperAnimation::setState): Deleted.
(WebCore::TextureMapperAnimation::property): Deleted.
(WebCore::TextureMapperAnimations::TextureMapperAnimations): Deleted.
- platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::syncAnimations):
- platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::addAnimation):
Source/WebKit2:
- Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(IPC::ArgumentCoder<TextureMapperAnimation>::decode):
- 12:33 AM Changeset in webkit [194444] by
-
- 4 edits1 add in trunk/Tools
[Mac][GTK] Jhbuild support for OSX
https://bugs.webkit.org/show_bug.cgi?id=150799
Reviewed by Michael Catanzaro.
- gtk/install-dependencies: Install dependencies on OSX with Homebrew.
- gtk/jhbuild.modules: Moved platform-specific build settings in condition tags.
- gtk/patches/foxbntconfig-fix-osx-cache.diff: Added.
- gtk/jhbuildrc: GTK+ makeargs clean-up, the 3.0.12 hack is no longer needed.
- 12:31 AM Changeset in webkit [194443] by
-
- 3 edits in trunk
[GTK][Mac] Disable gtk-doc
https://bugs.webkit.org/show_bug.cgi?id=150798
Reviewed by Michael Catanzaro.
- Source/PlatformGTK.cmake: gtkdoc-scangobj fails due to a clang
link error on Mac, so for now disable gtk-doc support on that
platform.
- Source/cmake/OptionsGTK.cmake: Ditto.
Dec 29, 2015:
- 9:02 PM Changeset in webkit [194442] by
-
- 14 edits in trunk/Source/WebCore
Rename "scrollOffsetForFixedPosition" and related functions to refer to scrollPosition
https://bugs.webkit.org/show_bug.cgi?id=152590
Reviewed by Zalan Bujtas.
FrameView::scrollOffsetForFixedPosition() actually returned a scroll position
(possibly negative for RTL content), not a scroll offset, so rename it and related
functions.
- page/FrameView.cpp:
(WebCore::FrameView::fixedScrollableAreaBoundsInflatedForScrolling):
(WebCore::FrameView::scrollPositionRespectingCustomFixedPosition):
(WebCore::FrameView::viewportConstrainedVisibleContentRect):
(WebCore::FrameView::scrollPositionForFixedPosition):
(WebCore::FrameView::scrollOffsetRespectingCustomFixedPosition): Deleted.
(WebCore::FrameView::scrollOffsetForFixedPosition): Deleted.
- page/FrameView.h:
- page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::timeToNextService):
- page/animation/AnimationController.cpp:
(WebCore::AnimationControllerPrivate::scrollWasUpdated):
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateChildNodesAfterScroll):
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollLayerPosition):
- platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
(WebCore::MediaPlayerPrivateMediaFoundation::setSize):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGeometry):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateScrollLayerPosition):
- rendering/RenderView.cpp:
(WebCore::RenderView::mapLocalToContainer):
(WebCore::RenderView::pushMappingToContainer):
(WebCore::RenderView::mapAbsoluteToLocalPoint):
(WebCore::RenderView::computeRectForRepaint):
- 8:49 PM Changeset in webkit [194441] by
-
- 3 edits in trunk/LayoutTests
Remove tests for sometimes unsupported calendars, numbering systems, and time zone backward links
https://bugs.webkit.org/show_bug.cgi?id=152550
Patch by Andy VanWagoner <andy@instructure.com> on 2015-12-29
Reviewed by Alexey Proskuryakov.
Time zones change often, so only test a few probable backward links.
Remove hanidays numbering system tests, since GTK and EFL don't support it.
Remove islamic-umalqura calendar tests, since GTK and EFL don't support it.
- js/intl-datetimeformat-expected.txt:
- js/script-tests/intl-datetimeformat.js:
- 8:12 PM WebKitGTK/Gardening/Calendar edited by
- Move myself to Friday... I can do that, yo (diff)
- 6:45 PM Changeset in webkit [194440] by
-
- 2 edits in trunk/Source/WebKit/win
Fix Windows build.
- WebView.cpp:
(WebView::scrollOffset):
- 5:03 PM Changeset in webkit [194439] by
-
- 2 edits in trunk/Source/WebCore
Fix the Windows build.
- page/win/FrameCGWin.cpp:
(WebCore::drawRectIntoContext):
- 4:29 PM Changeset in webkit [194438] by
-
- 24 edits in trunk/Source
Remove ScrollView::scrollOffset() in preparation for scrollOffset vs. scrollPosition clarification
https://bugs.webkit.org/show_bug.cgi?id=152589
Reviewed by Sam Weinig.
Current code uses scrollOffset vs. scrollPosition interchangeably, and confusingly.
Longer term, I plan to make "scrollPosition" be the value that is relative to the
contents, i.e. affected by scrollOrigin, and "scrollOffset" be the zero-based value
that's used to set scrollbar values.
To prepare for this, remove ScrollView::scrollOffset(), which is just the
scrollPosition as an IntSize.
Add some typedefs in ScrollableArea, which will slowly propagate through the
code as position vs. offset is clarified.
Source/WebCore:
- inspector/InspectorOverlay.cpp:
(WebCore::contentsQuadToCoordinateSystem):
(WebCore::InspectorOverlay::highlightQuad):
(WebCore::localPointToRoot):
- page/FrameView.cpp:
(WebCore::FrameView::scrollOffsetRespectingCustomFixedPosition):
(WebCore::FrameView::topContentInsetDidChange):
(WebCore::FrameView::addTrackedRepaintRect):
(WebCore::FrameView::scrollTo):
(WebCore::FrameView::wheelEvent):
(WebCore::FrameView::setScrollPinningBehavior):
- page/FrameView.h:
- page/SpatialNavigation.cpp:
(WebCore::canScrollInDirection):
(WebCore::rectToAbsoluteCoordinates):
- platform/ScrollView.cpp:
(WebCore::ScrollView::setScrollbarModes):
(WebCore::ScrollView::availableContentSizeChanged):
(WebCore::ScrollView::setContentsSize):
(WebCore::ScrollView::maximumScrollPosition):
(WebCore::ScrollView::minimumScrollPosition):
(WebCore::ScrollView::adjustScrollPositionWithinRange):
(WebCore::ScrollView::documentScrollOffsetRelativeToViewOrigin):
(WebCore::ScrollView::documentScrollOffsetRelativeToScrollableAreaOrigin):
(WebCore::ScrollView::setScrollPosition):
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::rootViewToTotalContents):
(WebCore::ScrollView::setFrameRect):
(WebCore::ScrollView::scrollbarStyleChanged):
(WebCore::ScrollView::setScrollOrigin):
- platform/ScrollView.h:
(WebCore::ScrollView::convertChildToSelf):
(WebCore::ScrollView::convertSelfToChild):
(WebCore::ScrollView::scrollOffset): Deleted.
- platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::scrollbarIntrusion):
(WebCore::ScrollableArea::scrollPosition):
(WebCore::ScrollableArea::minimumScrollPosition):
(WebCore::ScrollableArea::maximumScrollPosition):
- platform/ScrollableArea.h:
- rendering/RenderBox.cpp:
(WebCore::RenderBox::calculateAutoscrollDirection):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollPosition):
(WebCore::RenderLayer::minimumScrollPosition):
(WebCore::RenderLayer::maximumScrollPosition):
- rendering/RenderLayer.h:
- rendering/RenderWidget.cpp:
(WebCore::RenderWidget::nodeAtPoint):
- svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::localCoordinateSpaceTransform):
Source/WebKit2:
- WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
(WebKit::InjectedBundleRangeHandle::renderedImage):
- WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h:
- WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
(WebKit::PDFPlugin::scrollPosition):
(WebKit::PDFPlugin::minimumScrollPosition):
(WebKit::PDFPlugin::maximumScrollPosition):
- WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::scrollOffset):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::scrollMainFrameIfNotAtMaxScrollPosition):
(WebKit::WebPage::updateMainFrameScrollOffsetPinning):
- 10:15 AM Changeset in webkit [194437] by
-
- 6 edits in trunk/Source/WebInspectorUI
Web Inspector: Styling of invalid selector persists when changing the selected node
https://bugs.webkit.org/show_bug.cgi?id=152456
Patch by Devin Rousso <Devin Rousso> on 2015-12-29
Reviewed by Brian Burg.
If the user changes the selector of a CSS rule to be invalid (e.g. having
a { or ; character), it is expected that the invalid indicator will be removed
once the user changes nodes or reverts the selector to its previous value.
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Views/CSSStyleDeclarationSection.css:
(.style-declaration-section > .header > .icon.toggle-able:hover):
(.style-declaration-section > .header > .icon.toggle-able:active):
(.style-declaration-section:not(.invalid-selector) > .header > .icon.toggle-able:hover): Deleted.
Added better :hover and :active styles.
- UserInterface/Views/CSSStyleDeclarationSection.js:
(WebInspector.CSSStyleDeclarationSection):
(WebInspector.CSSStyleDeclarationSection.prototype.refresh):
(WebInspector.CSSStyleDeclarationSection.prototype._handleIconElementClicked):
If the selector is invalid, simply refresh the section to regenerate the
original selector with correct content, specificity, and highlighting.
(WebInspector.CSSStyleDeclarationSection.prototype.get _hasInvalidSelector): Deleted.
Moved the state of the invalid selector to a member
variable instead of a DOM class.
(WebInspector.CSSStyleDeclarationSection.prototype._updateSelectorIcon):
Renamed from _markSelector for clarity.
- UserInterface/Views/VisualStyleSelectorTreeItem.css:
(.item.visual-style-selector-item.selector-invalid > .icon:hover):
(.item.visual-style-selector-item.selector-invalid > .icon:active):
(.item.visual-style-selector-item.selector-invalid > .icon):
Added :hover and :active styles.
- UserInterface/Views/VisualStyleSelectorTreeItem.js:
(WebInspector.VisualStyleSelectorTreeItem):
(WebInspector.VisualStyleSelectorTreeItem.prototype.onattach):
(WebInspector.VisualStyleSelectorTreeItem.prototype._commitSelector):
(WebInspector.VisualStyleSelectorTreeItem.prototype._updateSelectorIcon):
(WebInspector.VisualStyleSelectorTreeItem.prototype._handleIconElementClicked):
(WebInspector.VisualStyleSelectorTreeItem.prototype._selectorChanged): Deleted.
Changed the names of a few functions to provide better
consistency across the classes in the Style sidebar.
- 5:57 AM Changeset in webkit [194436] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, relax limitation in operationCreateThis
https://bugs.webkit.org/show_bug.cgi?id=152383
Unreviewed. operationCreateThis now can be called with non constructible function.
- dfg/DFGOperations.cpp:
- 3:49 AM Changeset in webkit [194435] by
-
- 19 edits1 add1 delete in trunk/Source/JavaScriptCore
[ES6][ES7] Drop Constructability of generator function
https://bugs.webkit.org/show_bug.cgi?id=152383
Reviewed by Saam Barati.
We drop the constructability of generator functions.
This functionality is already landed in ES 2016 draft[1].
And this simplifies the existing JSC's generator implementation;
dropping GeneratorThisMode flag.
[1]: https://github.com/tc39/ecma262/releases/tag/es2016-draft-20151201
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
- JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
- JavaScriptCore.xcodeproj/project.pbxproj:
- builtins/BuiltinExecutables.cpp:
(JSC::createExecutableInternal):
- bytecode/ExecutableInfo.h:
(JSC::ExecutableInfo::ExecutableInfo):
(JSC::ExecutableInfo::generatorThisMode): Deleted.
- bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock): Deleted.
- bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedCodeBlock::generatorThisMode): Deleted.
- bytecode/UnlinkedFunctionExecutable.cpp:
(JSC::generateUnlinkedFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):
- bytecode/UnlinkedFunctionExecutable.h:
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator): Deleted.
- bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::makeFunction):
(JSC::BytecodeGenerator::generatorThisMode): Deleted.
- bytecompiler/NodesCodegen.cpp:
(JSC::ThisNode::emitBytecode):
- interpreter/Interpreter.cpp:
(JSC::eval): Deleted.
- runtime/CodeCache.cpp:
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):
- runtime/Executable.h:
- runtime/GeneratorThisMode.h: Removed.
- tests/stress/generator-eval-this.js:
(shouldThrow):
- tests/stress/generator-is-not-constructible.js: Added.
(shouldThrow):
(A.staticGen):
(A.prototype.gen):
(A):
(TypeError):
- tests/stress/generator-this.js:
(shouldBe.g.next):
- tests/stress/generator-with-new-target.js:
(shouldThrow):