https://bugs.webkit.org/show_bug.cgi?id=105475
Nested fixed position elements incorrectly repositioned on scrolling

Reviewed by Simon Fraser.

Source/WebCore: 

The fix here is to ensure that the ScrollingTree reflects the same hierarchy as 
the GraphicsLayer tree. And from there, we can correctly calculate the offset for 
nested objects by keeping track of a cumulative delta that parents have been moved 
by.

We already had to fix this same bug in ScrollingStateNode::removeChild(). The 
index can be notFound when you are removing a grandchild.
* page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::removeChild):

parentScrollPositionDidChange() now takes a second parameter that represents the 
delta that parent graphicsLayers have been moved by.
* page/scrolling/ScrollingTreeNode.h:
(ScrollingTreeNode):
* page/scrolling/ScrollingTreeScrollingNode.h:
* page/scrolling/mac/ScrollingTreeFixedNode.h:
(ScrollingTreeFixedNode):

attachToStateTree() now handles re-parenting.
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::attachToStateTree):

Properly adjust by and compute the new parameter cumulativeDelta. Adjusting by 
this will prevent fixed children of fixed objects from moving when they are not 
supposed to.
* page/scrolling/mac/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::parentScrollPositionDidChange):

Give parentScrollPositionDidChange() an initial delta of (0,0).
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):

Properly adjust by and compute the new parameter cumulativeDelta. This math is 
actually not quite right for sticky yet as the FIXME indicates. 
* page/scrolling/mac/ScrollingTreeStickyNode.h:
(ScrollingTreeStickyNode):
* page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::parentScrollPositionDidChange):

Re-named attachToScrollingCoordinator() to attachToScrollingCoordinatorWithParent 
to make it clear that the node may already be attached, but it may need to be re-
parented.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::attachToScrollingCoordinatorWithParent):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateBacking):

Always call attachToScrollingCoordinatorWithParent() in case the fixed node has 
been re-parented.
(WebCore::RenderLayerCompositor::registerOrUpdateViewportConstrainedLayer):

LayoutTests: 

Unfortunately, the children were not really accurate before, and they are not 
really accurate now. It seems like the state tree is not fully up-to-date when the 
test is printing it. 
* platform/mac/tiled-drawing/fixed/nested-fixed-expected.txt:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138758 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove all traces of Windows from WebKit2 folder.
https://bugs.webkit.org/show_bug.cgi?id=105585.

Reviewed by Sam Weinig.

WebKitExportGenerator project needs to be moved out of the WebKit2/win folder and into WebKit/win.

* WebKit.vcproj/WebKit.def.in: Added.
* WebKit.vcproj/WebKit.sln:
* WebKit.vcproj/WebKit.vcproj:
* WebKit.vcproj/WebKitCFLite.vsprops: Added.
* WebKit.vcproj/WebKitExportGenerator.vcproj: Added.
* WebKit.vcproj/WebKitExportGeneratorBuildCmd.cmd: Added.
* WebKit.vcproj/WebKitExportGeneratorCommon.vsprops: Added.
* WebKit.vcproj/WebKitExportGeneratorDebug.vsprops: Added.
* WebKit.vcproj/WebKitExportGeneratorDebugAll.vsprops: Added.
* WebKit.vcproj/WebKitExportGeneratorDebugCairoCFLite.vsprops: Added.
* WebKit.vcproj/WebKitExportGeneratorPostBuild.cmd: Added.
* WebKit.vcproj/WebKitExportGeneratorPreBuild.cmd: Added.
* WebKit.vcproj/WebKitExportGeneratorProduction.vsprops: Added.
* WebKit.vcproj/WebKitExportGeneratorRelease.vsprops: Added.
* WebKit.vcproj/WebKitExportGeneratorReleaseCairoCFLite.vsprops: Added.
* WebKit.vcproj/WebKitLibCommon.vsprops:
* win: Removed.
* win/MainWin.cpp: Removed.
* win/WebKit2.def.in: Removed.
* win/WebKit2.make: Removed.
* win/WebKit2.rc: Removed.
* win/WebKit2.submit.sln: Removed.
* win/WebKit2.vcproj: Removed.
* win/WebKit2Apple.vsprops: Removed.
* win/WebKit2CFLite.vsprops: Removed.
* win/WebKit2Common.vsprops: Removed.
* win/WebKit2Debug.vsprops: Removed.
* win/WebKit2DebugAll.vsprops: Removed.
* win/WebKit2DebugCairoCFLite.vsprops: Removed.
* win/WebKit2DirectX.vsprops: Removed.
* win/WebKit2ExportGenerator.vcproj: Removed.
* win/WebKit2ExportGeneratorBuildCmd.cmd: Removed.
* win/WebKit2ExportGeneratorCommon.vsprops: Removed.
* win/WebKit2ExportGeneratorDebug.vsprops: Removed.
* win/WebKit2ExportGeneratorDebugAll.vsprops: Removed.
* win/WebKit2ExportGeneratorDebugCairoCFLite.vsprops: Removed.
* win/WebKit2ExportGeneratorPostBuild.cmd: Removed.
* win/WebKit2ExportGeneratorPreBuild.cmd: Removed.
* win/WebKit2ExportGeneratorProduction.vsprops: Removed.
* win/WebKit2ExportGeneratorRelease.vsprops: Removed.
* win/WebKit2ExportGeneratorReleaseCairoCFLite.vsprops: Removed.
* win/WebKit2Generated.make: Removed.
* win/WebKit2Generated.vcproj: Removed.
* win/WebKit2GeneratedCommon.vsprops: Removed.
* win/WebKit2Production.vsprops: Removed.
* win/WebKit2Release.vsprops: Removed.
* win/WebKit2ReleaseCairoCFLite.vsprops: Removed.
* win/WebKit2WebProcess.resources: Removed.
* win/WebKit2WebProcess.resources/Info.plist: Removed.
* win/WebKit2WebProcess.vcproj: Removed.
* win/WebKit2WebProcessCommon.vsprops: Removed.
* win/WebKit2WebProcessDebug.vsprops: Removed.
* win/WebKit2WebProcessDebugAll.vsprops: Removed.
* win/WebKit2WebProcessDebugCairoCFLite.vsprops: Removed.
* win/WebKit2WebProcessPostBuild.cmd: Removed.
* win/WebKit2WebProcessPreBuild.cmd: Removed.
* win/WebKit2WebProcessProduction.vsprops: Removed.
* win/WebKit2WebProcessRelease.vsprops: Removed.
* win/WebKit2WebProcessReleaseCairoCFLite.vsprops: Removed.
* win/WebKitPostBuild.cmd: Removed.
* win/WebKitPreBuild.cmd: Removed.
* win/WebKitPreLink.cmd: Removed.
* win/build-generated-files.sh: Removed.
* win/deleteButton.png: Removed.
* win/deleteButtonPressed.png: Removed.
* win/fsVideoAudioVolumeHigh.png: Removed.
* win/fsVideoAudioVolumeLow.png: Removed.
* win/fsVideoExitFullscreen.png: Removed.
* win/fsVideoPause.png: Removed.
* win/fsVideoPlay.png: Removed.
* win/missingImage.png: Removed.
* win/nullplugin.png: Removed.
* win/panEastCursor.png: Removed.
* win/panIcon.png: Removed.
* win/panNorthCursor.png: Removed.
* win/panNorthEastCursor.png: Removed.
* win/panNorthWestCursor.png: Removed.
* win/panSouthCursor.png: Removed.
* win/panSouthEastCursor.png: Removed.
* win/panSouthWestCursor.png: Removed.
* win/panWestCursor.png: Removed.
* win/resource.h: Removed.
* win/searchCancel.png: Removed.
* win/searchCancelPressed.png: Removed.
* win/searchMagnifier.png: Removed.
* win/searchMagnifierResults.png: Removed.
* win/textAreaResizeCorner.png: Removed.
* win/verticalTextCursor.png: Removed.
* win/xcopy.excludes: Removed.
* win/zoomInCursor.png: Removed.
* win/zoomOutCursor.png: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138759 268f45cc-cd09-0410-ab3c-d52691b4dbfc