Timeline
Jan 1, 2014:
- 10:21 PM Changeset in webkit [161204] by
-
- 2 edits in trunk/Source/WebCore
Remove stale ScriptProfiler methods
https://bugs.webkit.org/show_bug.cgi?id=126373
Reviewed by Darin Adler.
No new tests, No change behavior.
- bindings/js/ScriptProfiler.h: Remove dead code.
- 7:22 PM Changeset in webkit [161203] by
-
- 6 edits in trunk/Source
Remove ChromeClient::fullScreenRendererChanged().
<https://webkit.org/b/126370>
This hook was added in r75277 to notify WebFullScreenController when
the full screen renderer changed. In r110216 the code was refactored,
making this notification unnecessary.
Reviewed by Antti Koivisto.
- 6:07 PM Changeset in webkit [161202] by
-
- 2 edits in trunk/Source/WebCore
Fix the build by exposing some more scrolling state node headers
as Private in WebCore.framework.
- WebCore.xcodeproj/project.pbxproj:
- 5:30 PM Changeset in webkit [161201] by
-
- 2 edits in trunk/Source/WebCore
[EFL] Unreviewed build fix after r160903 when ACCESSIBILITY is disabled
- accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::children):
- 4:52 PM Changeset in webkit [161200] by
-
- 4 edits in trunk/Source/WebCore
RenderScrollbar: Map of scrollbar parts should use RenderPtr.
<https://webkit.org/b/126367>
Turn RenderScrollbar::m_parts into HashMap of RenderPtrs. This makes
renderer destruction automatic and lets us remove some code.
Reviewed by Antti Koivisto.
- rendering/RenderPtr.h:
Add HashTraits for RenderPtr so we can use them as values in
WTF hash tables.
- rendering/RenderScrollbar.h:
- rendering/RenderScrollbar.cpp:
(WebCore::RenderScrollbar::~RenderScrollbar):
(WebCore::RenderScrollbar::setParent):
(WebCore::RenderScrollbar::updateScrollbarParts):
(WebCore::RenderScrollbar::updateScrollbarPart):
Remove now-unneeded kludges of logic to manually delete scrollbar
part renderers in various scenarios.
- 4:31 PM Changeset in webkit [161199] by
-
- 4 edits in trunk/Source/WebCore
Remove reattachRenderTree
https://bugs.webkit.org/show_bug.cgi?id=126366
Reviewed by Andreas Kling.
Remove the last remaining client.
- html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::parseAttribute):
Reconstruct render tree asynchronously.
(WebCore::HTMLSelectElement::scrollToSelection):
(WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
(WebCore::HTMLSelectElement::selectOption):
It is not safe to cast the renderer based on usesMenuList test. Switch to RenderObject::isMenuList test.
(WebCore::HTMLSelectElement::parseMultipleAttribute):
Reconstruct render tree asynchronously.
(WebCore::HTMLSelectElement::platformHandleKeydownEvent):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
(WebCore::HTMLSelectElement::defaultEventHandler):
- style/StyleResolveTree.cpp:
- style/StyleResolveTree.h:
Remove the function.
- 3:20 PM Changeset in webkit [161198] by
-
- 11 edits2 adds in trunk/Source
Create a ThreadedScrollingTree subclass of ScrollingTree, and push all knowledge of the scrolling thread into it
https://bugs.webkit.org/show_bug.cgi?id=126362
Reviewed by Sam Weinig.
Eventually we'll have a ScrollingTree in situations where there is no scrolling
thread, so make the ScrollingTree base class thread-agnostic (but threadsafe),
and subclass it in ThreadedScrollingTree for scrolling-thread-specific functionality.
The ScrollingTree base class also no longer needs to know about the
ScrollingCoordinator.
ScrollingCoordinatorMac creates a ThreadedScrollingTree.
Source/WebCore:
- WebCore.exp.in:
- WebCore.xcodeproj/project.pbxproj: Add ThreadedScrollingTree.*
Make some headers Private that we'll need in WebKit2 soon.
- page/scrolling/ScrollingStateTree.h: Drive-by cleanup: clone() was unimplemented.
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::ScrollingTree):
(WebCore::ScrollingTree::~ScrollingTree):
(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously): Wrap up some logic that
involves taking the mutex, so ThreadedScrollingTree can conveniently call it.
(WebCore::ScrollingTree::handleWheelEvent):
(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::setMainFrameScrollPosition):
(WebCore::ScrollingTree::isHandlingProgrammaticScroll):
- page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::isThreadedScrollingTree):
(WebCore::ScrollingTree::invalidate):
- page/scrolling/ThreadedScrollingTree.cpp: Added.
(WebCore::ThreadedScrollingTree::create):
(WebCore::ThreadedScrollingTree::ThreadedScrollingTree):
(WebCore::ThreadedScrollingTree::~ThreadedScrollingTree):
(WebCore::ThreadedScrollingTree::tryToHandleWheelEvent):
(WebCore::ThreadedScrollingTree::handleWheelEvent):
(WebCore::derefScrollingCoordinator):
(WebCore::ThreadedScrollingTree::invalidate):
(WebCore::ThreadedScrollingTree::commitNewTreeState):
(WebCore::ThreadedScrollingTree::updateMainFrameScrollPosition):
(WebCore::ThreadedScrollingTree::handleWheelEventPhase):
- page/scrolling/ThreadedScrollingTree.h: Added.
(WebCore::ThreadedScrollingTree::isThreadedScrollingTree):
- page/scrolling/mac/ScrollingCoordinatorMac.h:
- page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::ScrollingCoordinatorMac):
(WebCore::ScrollingCoordinatorMac::handleWheelEvent):
Source/WebKit2:
- WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::addScrollingTreeForPage):
(WebKit::EventDispatcher::wheelEvent):
- WebProcess/WebPage/EventDispatcher.h:
- 3:18 PM Changeset in webkit [161197] by
-
- 3 edits in trunk/Source/WebCore
FrameView: Store scroll corner renderer in a RenderPtr.
<https://webkit.org/b/126364>
Make FrameView::m_scrollCorner a RenderPtr<RenderScrollbarPart> and
remove two manual destroy() calls.
Reviewed by Antti Koivisto.
- 1:48 PM Changeset in webkit [161196] by
-
- 19 edits in trunk/Source/WebCore
Remove elementChildren/elementDescendants shorthands
https://bugs.webkit.org/show_bug.cgi?id=126363
Reviewed by Anders Carlsson.
Just use childrenOfType<Element>/descendantsOfType<Element> instead. They are not that much longer
and consistency is valuable.
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
(WebCore::siblingWithAriaRole):
- accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::isDataTable):
- css/StyleInvalidationAnalysis.cpp:
(WebCore::StyleInvalidationAnalysis::invalidateStyle):
- dom/ChildNodeList.cpp:
(WebCore::ChildNodeList::namedItem):
- dom/Document.cpp:
(WebCore::Document::buildAccessKeyMap):
(WebCore::Document::childrenChanged):
- dom/Element.cpp:
(WebCore::Element::resetComputedStyle):
- dom/ElementChildIterator.h:
- dom/ElementDescendantIterator.h:
- dom/SelectorQuery.cpp:
(WebCore::elementsForLocalName):
(WebCore::anyElement):
(WebCore::SelectorDataList::executeSingleTagNameSelectorData):
(WebCore::SelectorDataList::executeSingleClassNameSelectorData):
(WebCore::SelectorDataList::executeSingleSelectorData):
(WebCore::SelectorDataList::executeSingleMultiSelectorData):
- editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
- editing/ReplaceSelectionCommand.cpp:
(WebCore::removeHeadContents):
- editing/markup.cpp:
(WebCore::completeURLs):
- html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::containsJavaApplet):
- loader/PlaceholderDocument.cpp:
(WebCore::PlaceholderDocument::createRenderTree):
- rendering/RenderChildIterator.h:
- svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::getElementById):
- svg/SVGUseElement.cpp:
(WebCore::subtreeContainsDisallowedElement):
(WebCore::removeDisallowedElementsFromSubtree):
- 1:20 PM Changeset in webkit [161195] by
-
- 11 edits in trunk
Do less synchronous render tree construction
https://bugs.webkit.org/show_bug.cgi?id=126359
Source/WebCore:
Reviewed by Anders Carlsson.
Remove some now-unnecessary attachRenderTree calls.
- html/HTMLDetailsElement.cpp:
(WebCore::HTMLDetailsElement::parseAttribute):
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::parseAttribute):
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::renderFallbackContent):
- html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::didAddUserAgentShadowRoot):
- html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::willRecalcStyle):
(WebCore::HTMLPlugInImageElement::createShadowIFrameSubtree):
(WebCore::HTMLPlugInImageElement::restartSnapshottedPlugIn):
- html/HTMLViewSourceDocument.cpp:
(WebCore::HTMLViewSourceDocument::createContainingTable):
(WebCore::HTMLViewSourceDocument::addSpanWithClassName):
(WebCore::HTMLViewSourceDocument::addLine):
(WebCore::HTMLViewSourceDocument::finishLine):
(WebCore::HTMLViewSourceDocument::addBase):
(WebCore::HTMLViewSourceDocument::addLink):
- xml/XMLErrors.cpp:
(WebCore::XMLErrors::insertErrorMessageBlock):
LayoutTests:
- fast/html/object-image-nested-fallback.html: Update test to work with asynchronous load failures.
- fast/overflow/overflow-height-float-not-removed-crash3-expected.txt: Whitespace change.
- 11:53 AM Changeset in webkit [161194] by
-
- 13 edits in trunk/Source/WebCore
Updating the scrolling tree should use references to state nodes
https://bugs.webkit.org/show_bug.cgi?id=126360
Reviewed by Anders Carlsson.
Change functions related to ScrollingTreeNode updating to take
const references to state nodes rather than pointers.
- page/scrolling/ScrollingStateNode.h:
(WebCore::ScrollingStateNode::hasChangedProperty):
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::updateTreeFromStateNode): The node can be nil so
this continues to take a pointer.
(WebCore::ScrollingTree::removeDestroyedNodes):
- page/scrolling/ScrollingTree.h:
- page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::updateAfterChildren):
- page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
- page/scrolling/ScrollingTreeScrollingNode.h:
- page/scrolling/mac/ScrollingTreeFixedNode.h:
- page/scrolling/mac/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::updateBeforeChildren):
- page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
- page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
(WebCore::ScrollingTreeScrollingNodeMac::updateAfterChildren):
- page/scrolling/mac/ScrollingTreeStickyNode.h:
- page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::updateBeforeChildren):
- 10:36 AM Changeset in webkit [161193] by
-
- 22 edits in trunk/LayoutTests
Unreviewed GTK gardening.
Updating test baselines after the introduction of lazy render tree attaching,
enabling the saturated layout arithmetics for the GTK port, and other changes.
- platform/gtk/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
- platform/gtk/fast/backgrounds/size/contain-and-cover-zoomed-expected.txt:
- platform/gtk/fast/block/float/016-expected.txt:
- platform/gtk/fast/css-generated-content/table-row-group-to-inline-expected.txt:
- platform/gtk/fast/dynamic/011-expected.txt:
- platform/gtk/fast/forms/formmove3-expected.txt:
- platform/gtk/fast/forms/preserveFormDuringResidualStyle-expected.txt:
- platform/gtk/fast/invalid/001-expected.txt:
- platform/gtk/fast/invalid/003-expected.txt:
- platform/gtk/fast/invalid/004-expected.txt:
- platform/gtk/fast/invalid/007-expected.txt:
- platform/gtk/fast/invalid/019-expected.txt:
- platform/gtk/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
- platform/gtk/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
- platform/gtk/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
- platform/gtk/fast/ruby/ruby-base-merge-block-children-crash-expected.txt:
- platform/gtk/fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction-expected.txt:
- platform/gtk/fast/table/empty-cells-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug113235-1-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug647-expected.txt:
- platform/gtk/tables/mozilla/other/wa_table_tr_align-expected.txt:
- 10:34 AM Changeset in webkit [161192] by
-
- 16 edits in trunk/Source
Add a typedef for PlatformLayerID on GraphicsLayer, and migrate RemoteLayerTreeTransaction to use it
https://bugs.webkit.org/show_bug.cgi?id=126346
Source/WebCore:
Reviewed by Tim Horton.
Remote scrolling tree code is soon going to use RemoteLayerTreeTransaction::LayerID,
so it makes more sense to put this layerID type on GraphicsLayer as
GraphicsLayer::PlatformLayerID.
Also add some type cast macros for PlatformCALayer and subclasses, and use them
where appropriate.
- platform/graphics/GraphicsLayer.h:
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setName):
- platform/graphics/ca/PlatformCALayer.h:
(WebCore::PlatformCALayer::isPlatformCALayerMac):
(WebCore::PlatformCALayer::isPlatformCALayerRemote):
(WebCore::PlatformCALayer::PlatformCALayer):
- platform/graphics/ca/mac/PlatformCALayerMac.h:
Source/WebKit2:
Reviewed by Tim Horton.
Remote scrolling tree code is soon going to use RemoteLayerTreeTransaction::LayerID,
so it makes more sense to put this layerID type on GraphicsLayer as
GraphicsLayer::PlatformLayerID.
Also add some type cast macros for PlatformCALayer and subclasses, and use them
where appropriate.
- Shared/mac/RemoteLayerTreePropertyApplier.h:
- Shared/mac/RemoteLayerTreeTransaction.h:
(WebKit::RemoteLayerTreeTransaction::rootLayerID):
(WebKit::RemoteLayerTreeTransaction::changedLayers):
(WebKit::RemoteLayerTreeTransaction::destroyedLayers):
- Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::decode):
(WebKit::RemoteLayerTreeTransaction::setRootLayerID):
(WebKit::RemoteLayerTreeTransaction::setDestroyedLayerIDs):
(WebKit::RemoteLayerTreeTextStream::operator<<):
(WebKit::dumpChangedLayers):
(WebKit::RemoteLayerTreeTransaction::description):
- UIProcess/mac/RemoteLayerTreeHost.h:
- UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::commit):
(WebKit::RemoteLayerTreeHost::getLayer):
- WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
(WebKit::GraphicsLayerCARemote::primaryLayerID):
- WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
- WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(generateLayerID):
- WebProcess/WebPage/mac/PlatformCALayerRemote.h:
(WebKit::PlatformCALayerRemote::layerID):
- WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
- 10:26 AM Changeset in webkit [161191] by
-
- 13 edits in trunk/Source/WebCore
ScrollingStateNodes should have a reference to the ScrollingStateTree
https://bugs.webkit.org/show_bug.cgi?id=126348
Reviewed by Sam Weinig.
Make ScrollingStateNodes always belong to a ScrollingStateTree, and thus
have a reference to the tree rather than a pointer. When cloning nodes,
they are adopted by a new ScrollingStateTree, which adds them to its
node map (which didn't happen before).
In subclasses access the ScrollingStateTree through a member function.
- page/scrolling/ScrollingStateFixedNode.cpp:
(WebCore::ScrollingStateFixedNode::create):
(WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode):
(WebCore::ScrollingStateFixedNode::clone):
(WebCore::ScrollingStateFixedNode::updateConstraints):
- page/scrolling/ScrollingStateFixedNode.h:
- page/scrolling/ScrollingStateNode.cpp:
(WebCore::ScrollingStateNode::ScrollingStateNode):
(WebCore::ScrollingStateNode::cloneAndReset):
(WebCore::ScrollingStateNode::cloneAndResetChildren):
(WebCore::ScrollingStateNode::willBeRemovedFromStateTree):
- page/scrolling/ScrollingStateNode.h:
(WebCore::ScrollingStateNode::scrollingStateTree):
- page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::create):
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::clone):
(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):
- page/scrolling/ScrollingStateScrollingNode.h:
- page/scrolling/ScrollingStateStickyNode.cpp:
(WebCore::ScrollingStateStickyNode::create):
(WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
(WebCore::ScrollingStateStickyNode::clone):
(WebCore::ScrollingStateStickyNode::updateConstraints):
- page/scrolling/ScrollingStateStickyNode.h:
- page/scrolling/ScrollingStateTree.cpp:
(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::commit):
(WebCore::ScrollingStateTree::addNode):
- page/scrolling/ScrollingStateTree.h:
- page/scrolling/mac/ScrollingStateNodeMac.mm:
(WebCore::ScrollingStateNode::setScrollLayer):
- page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
(WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
(WebCore::ScrollingStateScrollingNode::setHeaderLayer):
(WebCore::ScrollingStateScrollingNode::setFooterLayer):
(WebCore::ScrollingStateScrollingNode::setScrollbarPaintersFromScrollbars):
- 10:14 AM Changeset in webkit [161190] by
-
- 11 edits in trunk/Source/WebCore
Give ScrollingStateNodes a nodeType()
https://bugs.webkit.org/show_bug.cgi?id=126347
Reviewed by Tim Horton.
When we start serializing ScrollingStateNodes to send to the UI process,
it's more convenient if they have a nodeType member rather than virtual functions,
so give them one, and fix the casting macros to use it. This allows us to use
a switch() on node creation, so the compiler will tell us if we forgot to create
a node type.
- page/scrolling/ScrollingStateFixedNode.cpp:
(WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode):
- page/scrolling/ScrollingStateFixedNode.h:
- page/scrolling/ScrollingStateNode.cpp:
(WebCore::ScrollingStateNode::ScrollingStateNode):
- page/scrolling/ScrollingStateNode.h: const ScrollingNodeType field
(can't be modified after construction), and move the m_scrollingStateTree
member after it (the awkward protected:/private: will be cleaned up in a later patch).
(WebCore::ScrollingStateNode::nodeType):
- page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
- page/scrolling/ScrollingStateScrollingNode.h:
- page/scrolling/ScrollingStateStickyNode.cpp:
(WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
- page/scrolling/ScrollingStateStickyNode.h:
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::updateTreeFromStateNode):
- 7:41 AM Changeset in webkit [161189] by
-
- 2 edits in trunk/Source/WebKit2
[GTK] [CMake] Fix the WEBKIT_SRC_DIR define when building the WebKit2 GObject API unit tests
https://bugs.webkit.org/show_bug.cgi?id=126350
Reviewed by Carlos Garcia Campos.
- UIProcess/API/gtk/tests/CMakeLists.txt: Fix the define.
- 7:35 AM Changeset in webkit [161188] by
-
- 6 edits in trunk
[GTK] Rename libtestnetscapeplugin to libTestNetscapePlugin
https://bugs.webkit.org/show_bug.cgi?id=126349
Reviewed by Carlos Garcia Campos.
All CMake ports use "libTestNetscapePlugin," so choosing the same
name in the autotools port will make the transition easier.
Source/WebKit2:
- UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
(testWebContextGetPlugins): Use the new plugin library name.
Tools:
- GNUmakefile.am: Rename the plugin library.
LayoutTests:
- platform/gtk/plugins/plugin-javascript-access-expected.txt: Change the plugin name.
- 5:35 AM Changeset in webkit [161187] by
-
- 2 edits in trunk/Tools
[GTK][WK2] Back items are shown in reverse order in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=126354
Reviewed by Carlos Garcia Campos.
The latest visited site for backward history should be placed on the top of a history stack
as a common behavior. However currently its order is reverse.
- MiniBrowser/gtk/BrowserWindow.c:
(browserWindowUpdateNavigationActions):
Dec 31, 2013:
- 5:08 PM Changeset in webkit [161186] by
-
- 2 edits in trunk/Source/WebKit2
[Gtk] WebKitWebInspector has build warnings due to uninitialized didChangeAttachedWidth member
https://bugs.webkit.org/show_bug.cgi?id=126353
Reviewed by Martin Robinson.
- UIProcess/API/gtk/WebKitWebInspector.cpp:
(webkitWebInspectorCreate): Initialize didChangeAttachedWidth to null.
- 3:46 PM Changeset in webkit [161185] by
-
- 115 edits1 copy1 add in trunk/Source/WebKit
[iOS] Upstream PLATFORM(IOS) changes to Source/WebKit/
https://bugs.webkit.org/show_bug.cgi?id=125746
Reviewed by David Kilzer.
Source/WebKit:
- WebKit.xcodeproj/project.pbxproj: Added WebDatabaseManagerInternal.h
and iOS.xcconfig.
Source/WebKit/ios:
- WebCoreSupport/WebVisiblePosition.mm:
(-[WebVisiblePosition positionAtStartOrEndOfWord]): Changed a comment
to mention iOS rather than iPhone.
Source/WebKit/mac:
This is a straight upstreaming of the various PLATFORM(IOS) changes
made to Source/WebKit/ with the following modifications:
- Includes of <Cocoa/Cocoa.h> were generally replaced with an include
of <Foundation/Foundation.h> followed by an include of
<AppKit/AppKit.h> on non-iOS platforms. This assumes that nobody was
relying on <Cocoa/Cocoa.h>'s inclusion of <CoreData/CoreData.h>.
- Includes of <Cocoa/Cocoa.h> and <Foundation/Foundation.h> were
removed from files that include WebKitPrefix.h.
- Instances of 'iPhone (OS)' in comments were replaced with 'iOS', and
other sensitive terms were elided.
- Various PLATFORM(IOS) blocks were simplified. For instance:
#if !PLATFORM(IOS)
...
#endif
#if PLATFORM(IOS)
...
#endif
Was simplified to:
#if !PLATFORM(IOS)
...
#else
...
#endif
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebKit.xcconfig:
- Configurations/iOS.xcconfig: Added.
- DOM/WebDOMOperations.mm:
- DefaultDelegates/WebDefaultContextMenuDelegate.mm:
- DefaultDelegates/WebDefaultEditingDelegate.m:
- DefaultDelegates/WebDefaultPolicyDelegate.m:
- DefaultDelegates/WebDefaultUIDelegate.h:
- DefaultDelegates/WebDefaultUIDelegate.m:
- History/WebBackForwardList.mm:
- History/WebHistory.mm:
- History/WebHistoryItem.mm:
- History/WebURLsWithTitles.m:
- Misc/WebCache.mm:
- Misc/WebDownload.mm:
- Misc/WebElementDictionary.mm:
- Misc/WebIconDatabase.mm:
- Misc/WebIconDatabaseInternal.h:
- Misc/WebKitNSStringExtras.mm:
- Misc/WebKitSystemBits.m:
- Misc/WebKitVersionChecks.h:
- Misc/WebKitVersionChecks.m:
- Misc/WebLocalizableStrings.mm:
- Misc/WebNSArrayExtras.h:
- Misc/WebNSArrayExtras.m:
- Misc/WebNSControlExtras.h:
- Misc/WebNSControlExtras.m:
- Misc/WebNSDictionaryExtras.h:
- Misc/WebNSDictionaryExtras.m:
- Misc/WebNSEventExtras.m:
- Misc/WebNSFileManagerExtras.mm:
- Misc/WebNSImageExtras.h:
- Misc/WebNSImageExtras.m:
- Misc/WebNSPasteboardExtras.mm:
- Misc/WebNSPrintOperationExtras.h:
- Misc/WebNSPrintOperationExtras.m:
- Misc/WebNSURLExtras.mm:
- Misc/WebNSViewExtras.m:
- Misc/WebNSWindowExtras.m:
- Panels/WebAuthenticationPanel.h:
- Panels/WebAuthenticationPanel.m:
- Panels/WebPanelAuthenticationHandler.m:
- Plugins/Hosted/WebHostedNetscapePluginView.mm:
- Plugins/WebBasePluginPackage.h:
- Plugins/WebBasePluginPackage.mm:
- Plugins/WebJavaPlugIn.h:
- Plugins/WebPluginContainerCheck.mm:
- Plugins/WebPluginController.h:
- Plugins/WebPluginController.mm:
- Plugins/WebPluginDatabase.mm:
- Plugins/WebPluginPackage.mm:
- Plugins/WebPluginsPrivate.m:
- Storage/WebDatabaseManager.mm:
- Storage/WebDatabaseManagerClient.h:
- Storage/WebDatabaseManagerClient.mm:
- Storage/WebDatabaseManagerInternal.h: Added.
- Storage/WebStorageManager.mm:
- WebCoreSupport/CorrectionPanel.h:
- WebCoreSupport/WebAlternativeTextClient.h:
- WebCoreSupport/WebApplicationCache.mm:
- WebCoreSupport/WebChromeClient.h:
- WebCoreSupport/WebChromeClient.mm:
- WebCoreSupport/WebContextMenuClient.mm:
- WebCoreSupport/WebEditorClient.h:
- WebCoreSupport/WebEditorClient.mm:
- WebCoreSupport/WebFrameLoaderClient.h:
- WebCoreSupport/WebFrameLoaderClient.mm:
- WebCoreSupport/WebFrameNetworkingContext.h:
- WebCoreSupport/WebFrameNetworkingContext.mm:
- WebCoreSupport/WebGeolocationClient.h:
- WebCoreSupport/WebGeolocationClient.mm:
- WebCoreSupport/WebJavaScriptTextInputPanel.m:
- WebCoreSupport/WebKeyGenerator.mm:
- WebCoreSupport/WebNotificationClient.mm:
- WebCoreSupport/WebOpenPanelResultListener.mm:
- WebCoreSupport/WebSecurityOrigin.mm:
- WebCoreSupport/WebSystemInterface.mm:
- WebKitPrefix.h:
- WebView/WebArchive.mm:
- WebView/WebClipView.h:
- WebView/WebDataSource.mm:
- WebView/WebDelegateImplementationCaching.h:
- WebView/WebDelegateImplementationCaching.mm:
- WebView/WebDeviceOrientation.mm:
- WebView/WebDocumentInternal.h:
- WebView/WebDocumentLoaderMac.mm:
- WebView/WebDynamicScrollBarsViewInternal.h:
- WebView/WebFormDelegate.m:
- WebView/WebFrame.mm:
- WebView/WebFrameInternal.h:
- WebView/WebFrameView.mm:
- WebView/WebFullScreenController.h:
- WebView/WebFullScreenController.mm:
- WebView/WebHTMLRepresentation.mm:
- WebView/WebHTMLView.mm:
- WebView/WebHTMLViewInternal.h:
- WebView/WebPDFDocumentExtras.h:
- WebView/WebPDFDocumentExtras.mm:
- WebView/WebPDFRepresentation.h:
- WebView/WebPDFRepresentation.mm:
- WebView/WebPDFView.h:
- WebView/WebPDFView.mm:
- WebView/WebPreferences.mm:
- WebView/WebResource.mm:
- WebView/WebTextCompletionController.h:
- WebView/WebTextIterator.mm:
- WebView/WebView.mm:
- WebView/WebViewData.h:
- WebView/WebViewData.mm:
- WebView/WebViewInternal.h:
- 8:40 AM Changeset in webkit [161184] by
-
- 37 edits in trunk/Source/WebCore
Out-of-line RenderStyle substructure copying helpers.
<https://webkit.org/b/126340>
This shrinks the .access() calls by moving memory allocation logic
out-of-line, though I'm really doing this to make Instruments.app
allocations output more readable.
Writes to e.g 'font' or 'color' will now be grouped under a single
StyleInheritedData::copy() call instead of being spread out over
setFontDescription(), setLineHeight(), setColor(), etc.
Reviewed by Anders Carlsson.
- 8:16 AM Changeset in webkit [161183] by
-
- 3 edits in trunk/Source/WebCore
RenderListItem should store its marker in a RenderPtr.
<https://webkit.org/b/126298>
Make RenderListItem::m_marker a RenderPtr<RenderListMarker> and
remove two manual destroy() calls. Tweaked code to reduce nesting.
Reviewed by Anders Carlsson.
- 8:14 AM Changeset in webkit [161182] by
-
- 8 edits in trunk
[GTK] Make the output directory of GObject unit tests binaries consistent with the CMake build
https://bugs.webkit.org/show_bug.cgi?id=126297
Reviewed by Philippe Normand.
Source/WebKit/gtk:
- tests/GNUmakefile.am: Build the tests in the new directory.
Source/WebKit2:
- UIProcess/API/gtk/tests/GNUmakefile.am: Build the tests in the new directory.
- UIProcess/API/gtk/tests/TestInspectorServer.cpp:
(startTestServer): Update the search path to reflect the new directory.
- UIProcess/API/gtk/tests/TestWebKitAccessibility.cpp:
(startTestServer): Update the search path to reflect the new directory.
Tools:
- Scripts/run-gtk-tests: Looks for the tests in the new directories.
(TestRunner): Ditto.
(TestRunner._run_test): Ditto.
- 6:05 AM Changeset in webkit [161181] by
-
- 132 edits in trunk/Source/WebCore
Element's renderer factory should return RenderPtrs.
<https://webkit.org/b/126318>
Rename Element::createRenderer() to createElementRenderer() and have
it return RenderPtr<RenderElement>. Propagate signature until it
builds again.
We leakPtr() the renderer at two call sites when handing things over
to raw pointer API. This'll get tidied up in subsequent patches.
Reviewed by Sam Weinig.
- 2:26 AM Changeset in webkit [161180] by
-
- 8 edits in branches/jsCStack/Source/JavaScriptCore
CStack: Need a separate stack limit for the JS stack and the C stack.
https://bugs.webkit.org/show_bug.cgi?id=126320.
Not yet reviewed.
With this patch, we now accurately track how much JS stack space the
VM has used, and cap that at the value specified by Options::maxStackSize().
The JS stack space is measured in chunks, one for each VMEntryScope. Each
VMEntryScope will also keep a running total of the sum of all the stack
usage of previous VMEntryScopes to simplify the calculation of the total
usage.
- interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
- In Interpreter::execute() for programs, we were installing the VMEntryScope even if we end up only processing a JSON object. This poses a problem because the code that processes the JSON object will call functions that will re-enter the VM thereby installing another VMEntryScope. Each VMEntryScope expects VM.topCallFrame and VM.stackPointerAtVMEntry to be set up properly for the previous VMEntryScope. However, in this case, we've installed the VMEntryScope for a potential ProgramExecutable but never executed a program to initialize its values for VM.topCallFrame and VM.stackPointerAtVMEntry. This in turn causes a crash when the second VMEntryScope makes use of VM.topCallFrame.
The fix is simply to defer installation of the VMEntryScope for the
program till we are actually sure that we will attempt to execute a
program.
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL(stack_check)):
- In llint_stack_check(), we pop the frame that we failed to set up before throwing the StackOverflowError. Added an update of topCallFrame here to reflect this popping action.
- llint/LowLevelInterpreter64.asm:
- The VMEntryScope will have to calculate and set up a jsStackLimit value before we actually know what the stack pointer is at the point when we re-enter the VM. So, instead of using the real stackPointerAtVMEntry for the jsStackLimit calculation, we use an estimate.
doCallToJavaScript() here will set VM.stackPointerAtVMEntry to its
real value. But before it does that, it needs to adjust VM.jsStackLimit
by the delta between the estimate and the real stackPointerAtVMEntry.
- If doCallToJavaScript() fails its stack check for incoming args, it also needs to clear VM.stackPointerAtVMEntry so that C code can assert that the various pointers into the stack remain consistent.
By consistent, I mean that, given that the stack grows down, and that
VM.stackPointerAtVMEntry and VM.topCallFrame are properly initialized,
then the following should always be true:
let topOfStack = VM.topCallFrame->topOfFrame();
stackPointerAtVMEntry >= topOfStack >= stack pointer in a C helper function
and
JSStack.containsAddress(stackPointerAtVMEntry)
and
JSStack.containsAddress(topOfStack)
Clearing VM.stackPointerAtVMEntry, if the stack check in doCallToJavaScript()
fails, indicates we failed to enter the current VMEntryScope and that we
should be using the previous VMEntryScope's stackPointerAtVMEntry and
topCallFrame for the above assertions.
NOTE: These assertions are done in VMEntryScope::updateStackLimits().
- runtime/VM.cpp:
(JSC::VM::VM):
- runtime/VM.h:
- runtime/VMEntryScope.cpp:
(JSC::VMEntryScope::VMEntryScope):
(JSC::VMEntryScope::~VMEntryScope):
(JSC::VMEntryScope::stackUsageFor):
(JSC::VMEntryScope::updateStackLimits):
(JSC::VMEntryScope::currentStackPointer):
(JSC::VMEntryScope::requiredCapacity):
- requiredCapacity() now computes the excess amount C stack capacity that we have available, and discount it in the computation of the JS stack limit. By excess, I mean the amount of unused C stack space that exceeds the amount of unused JS stack space capacity.
- runtime/VMEntryScope.h:
- 12:34 AM Changeset in webkit [161179] by
-
- 2 edits in trunk/Source/WebCore
[SOUP] Return early in ResourceHandle::receivedCancellation if the load has already cancelled
https://bugs.webkit.org/show_bug.cgi?id=126287
Reviewed by Martin Robinson.
This situation can happen when using the network process, because
the ReceivedCancellation message can be received when the resource
loader has already been removed, but the authentication challenge
still has a reference to the ResourceHandleClient.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::receivedCancellation):
- 12:32 AM Changeset in webkit [161178] by
-
- 2 edits in trunk/Source/WebCore
[SOUP] The initiating page is lost after a redirection
https://bugs.webkit.org/show_bug.cgi?id=126293
Reviewed by Martin Robinson.
The initiating page id is attached to the initial soup request
object, but not to the one created after a redirection.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::createSoupRequestAndMessageForHandle): Call
setSoupRequestInitiatingPageIDFromNetworkingContext() here if the
soup request is created successfully.
(WebCore::ResourceHandle::start): Remove the call to
setSoupRequestInitiatingPageIDFromNetworkingContext().
- 12:30 AM Changeset in webkit [161177] by
-
- 2 edits in trunk/Source/WebCore
[SOUP] Implement ResourceHandle::continueWillSendRequest()
https://bugs.webkit.org/show_bug.cgi?id=126291
Reviewed by Martin Robinson.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::continueAfterWillSendRequest): Helper function that
continues with the load after willSendRequest has been called.
(WebCore::doRedirect): Call continueAfterWillSendRequest() when
client doesn't use async callbacks.
(WebCore::ResourceHandle::continueWillSendRequest): Call
continueAfterWillSendRequest().
- 12:28 AM Changeset in webkit [161176] by
-
- 4 edits in trunk/Source
[SOUP] willSendRequest doesn't work after a redirect
https://bugs.webkit.org/show_bug.cgi?id=126290
Reviewed by Martin Robinson.
Source/WebCore:
The problem is that we are creating the new soup request for the
redirect before calling ResourceHandleClient::willSendRequest() so
that any change made to the request by the client is ignored.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::doRedirect): Create the new soup request and soup
message for the redirect after calling willSendRequest() on the
client.
Source/WebKit2:
Add test cases to test send-request signal in case of
redirection.
- UIProcess/API/gtk/tests/TestResources.cpp:
(testWebResourceSendRequest):
(serverCallback):