[V8] Clean up V8DOMWindowShell's findFrame
https://bugs.webkit.org/show_bug.cgi?id=95130

Reviewed by Eric Seidel.

This patch just deletes a bunch of unneeded variables from findFrame
and adds an ASSERT for what a comment claims to be true.

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::findFrame):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126809 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebGL should not flip textures on presentation if contents are unchanged
https://bugs.webkit.org/show_bug.cgi?id=94961

Reviewed by Kenneth Russell.

Source/WebCore:

For WebGL contexts where antialias and preserveDrawingBuffer are false, chromium implements DrawingBuffer using
two textures and flips them on presentation. If the page hasn't actually rendered anything into the WebGL
context since the last presentation, this makes an old frame available. This fixes the bug by marking the
DrawingBuffer when its contents change.

Test: compositing/webgl/webgl-repaint.html

* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::markContextChanged):
* platform/graphics/chromium/DrawingBufferChromium.cpp:
(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore::DrawingBuffer::prepareBackBuffer):
* platform/graphics/gpu/DrawingBuffer.h:
(WebCore::DrawingBuffer::markContentsChanged):
(DrawingBuffer):

Tools:

Run some compositing webgl tests in threaded mode to catch regressions specific to that mode.

* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort.virtual_test_suites):

LayoutTests:

Adds a test to make sure multiple displays without any WebGL draw calls leave the WebGL output alone.

* compositing/webgl/webgl-repaint-expected.png: Added.
* compositing/webgl/webgl-repaint-expected.txt: Added.
* compositing/webgl/webgl-repaint.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126810 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Improve the names of some private functions of V8DOMWindowShell.cpp
https://bugs.webkit.org/show_bug.cgi?id=95132

Reviewed by Eric Seidel.

V8DOMWindowShell has a concept of a "DocumentWrapperCache", but that's
more easily understood as the "document" property of the Window. This
patch renames a couple functions to make this clearer.

This patch as renames disposeContextHandles to disposeContext because
that's what's actually happening.

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::isContextInitialized):
(WebCore::V8DOMWindowShell::disposeContext):
(WebCore::V8DOMWindowShell::clearForClose):
(WebCore::V8DOMWindowShell::clearForNavigation):
(WebCore):
(WebCore::V8DOMWindowShell::initializeIfNeeded):
(WebCore::V8DOMWindowShell::updateDocumentProperty):
(WebCore::V8DOMWindowShell::clearDocumentProperty):
(WebCore::V8DOMWindowShell::updateDocument):
* bindings/v8/V8DOMWindowShell.h:
(V8DOMWindowShell):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126811 268f45cc-cd09-0410-ab3c-d52691b4dbfc
If both left and right (or top and bottom) are specified for sticky, use left (or top)
https://bugs.webkit.org/show_bug.cgi?id=95146

Reviewed by Dan Bernstein.

Source/WebCore:

Remove the incorrect FIXME comment, and swap the left and right,
and top and bottom constraints so that left and top win out,
as they do for position:relative.

Test: fast/css/sticky/sticky-both-sides.html

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::stickyPositionOffset):

LayoutTests:

Ref tests for stickies with left and right, or top and bottom specified.

* fast/css/sticky/sticky-both-sides-expected.html: Added.
* fast/css/sticky/sticky-both-sides.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126812 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Put CCThreadImpl / WebCompositorImpl in webcore_chromium_compositor_files gyp section
https://bugs.webkit.org/show_bug.cgi?id=94995

Patch by James Robinson <jamesr@chromium.org> on 2012-08-27
Reviewed by Adrienne Walker.

These need to be controllable by use_libcc_for_compositor

* WebCore.gypi:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126813 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove opcode definition autogen for now
https://bugs.webkit.org/show_bug.cgi?id=95148

Reviewed by Mark Hahnenberg.

This isn't worth doing at the moment.

* DerivedSources.make:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/Opcode.h:
(JSC):
(JSC::padOpcodeName):
* bytecode/OpcodeDefinitions.h: Removed.
* bytecode/opcodes: Removed.
* opcode_definition_generator.py: Removed.
* opcode_generator.py: Removed.
* opcode_parser.py: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126814 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove use of ClassInfo from SpeculativeJIT::compileGetByValOnArguments
https://bugs.webkit.org/show_bug.cgi?id=95131

Reviewed by Filip Pizlo.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileGetByValOnArguments): We don't need this speculation check. We can replace it
with an assert to guarantee this.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126815 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Split LayoutTypes.h to improve compile time
https://bugs.webkit.org/show_bug.cgi?id=95107

Patch by Nikhil Bhargava <nbhargava@google.com> on 2012-08-27
Reviewed by Eric Seidel.

The inlines from LayoutTypes.h are moved to LayoutTypesInlineMethods.h.
Files that only need the types to be forward declared, don't need to
include definitions for FractionalLayout items (those are expensive to
include)

No new tests. Functionality should be the same.

* WebCore.gypi:
* accessibility/AccessibilityObject.h:
* css/LengthFunctions.cpp:
* dom/DocumentMarkerController.h:
* dom/Node.h:
* inspector/InspectorOverlay.h:
* inspector/InspectorTimelineAgent.h:
* inspector/TimelineRecordFactory.h:
* loader/SubframeLoader.h:
* page/FocusController.h:
* page/Page.h:
* platform/Length.h:
* platform/PopupMenuClient.h:
* platform/graphics/transforms/TransformationMatrix.cpp:
* platform/graphics/transforms/TransformationMatrix.h:
* rendering/AutoTableLayout.h:
* rendering/FixedTableLayout.h:
* rendering/HitTestingTransformState.cpp:
* rendering/LayoutTypes.h:
* rendering/LayoutTypesInlineMethods.h: Added.
(WebCore):
* rendering/RenderMenuList.h:
* rendering/RenderThemeChromiumCommon.h:
* rendering/TextAutosizer.h:
* rendering/style/ShadowData.cpp:
* rendering/style/ShadowData.h:
* rendering/style/WrapShapes.h:
* rendering/svg/SVGRenderSupport.h:
* rendering/svg/SVGRenderingContext.h:
* svg/graphics/SVGImage.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126816 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Delete checks for impossible conditions in V8DOMWindowShell
https://bugs.webkit.org/show_bug.cgi?id=95145

Reviewed by Eric Seidel.

These situations do not occur. We don't need to check for them.

* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::updateDocument):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::createNewContext):
(WebCore::V8DOMWindowShell::updateDocumentProperty):
(WebCore::V8DOMWindowShell::setSecurityToken):
(WebCore::V8DOMWindowShell::updateDocument):
* page/Frame.cpp:
(WebCore::Frame::setDocument):
    - updateDocument used to just return early when m_doc was 0. Now we
      don't even bother to call it.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126817 268f45cc-cd09-0410-ab3c-d52691b4dbfc
More unreviewed rebaselining after r126683.

* platform/chromium/TestExpectations:
Removed 5 tests rebaselined in css2.1.

* platform/chromium-linux/css2.1/t0805-c5519-brdr-r-00-a-expected.txt:
* platform/chromium-linux/css2.1/t0805-c5519-brdr-r-01-e-expected.txt:
* platform/chromium-linux/css2.1/t0805-c5520-brdr-b-01-e-expected.txt:
* platform/chromium-linux/css2.1/t0805-c5521-brdr-l-00-a-expected.txt:
* platform/chromium-linux/css2.1/t0805-c5521-brdr-l-01-e-expected.txt:
* platform/chromium-linux/css2.1/t0805-c5521-ibrdr-l-00-a-expected.txt:
* platform/chromium-win/css2.1/t0805-c5519-brdr-r-00-a-expected.txt:
* platform/chromium-win/css2.1/t0805-c5519-brdr-r-01-e-expected.txt:
* platform/chromium-win/css2.1/t0805-c5520-brdr-b-01-e-expected.txt:
* platform/chromium-win/css2.1/t0805-c5521-brdr-l-00-a-expected.txt:
* platform/chromium-win/css2.1/t0805-c5521-brdr-l-01-e-expected.txt:
* platform/chromium-win/css2.1/t0805-c5521-ibrdr-l-00-a-expected.txt:
Updated Chromium specific baseline now that we always dump the border top.

* css2.1/t0805-c5519-brdr-r-00-a-expected.txt: Added.
* css2.1/t0805-c5519-brdr-r-01-e-expected.txt: Added.
* css2.1/t0805-c5520-brdr-b-01-e-expected.txt: Added.
* css2.1/t0805-c5521-brdr-l-00-a-expected.txt: Added.
* css2.1/t0805-c5521-brdr-l-01-e-expected.txt: Added.
* css2.1/t0805-c5521-ibrdr-l-00-a-expected.txt: Added.
* platform/efl/css2.1/t0805-c5519-brdr-r-00-a-expected.txt: Removed.
* platform/efl/css2.1/t0805-c5519-brdr-r-01-e-expected.txt: Removed.
* platform/efl/css2.1/t0805-c5520-brdr-b-01-e-expected.txt: Removed.
* platform/efl/css2.1/t0805-c5521-brdr-l-00-a-expected.txt: Removed.
* platform/efl/css2.1/t0805-c5521-brdr-l-01-e-expected.txt: Removed.
* platform/efl/css2.1/t0805-c5521-ibrdr-l-00-a-expected.txt: Removed.
* platform/gtk/css2.1/t0805-c5519-brdr-r-00-a-expected.txt: Removed.
* platform/gtk/css2.1/t0805-c5519-brdr-r-01-e-expected.txt: Removed.
* platform/gtk/css2.1/t0805-c5520-brdr-b-01-e-expected.txt: Removed.
* platform/gtk/css2.1/t0805-c5521-brdr-l-00-a-expected.txt: Removed.
* platform/gtk/css2.1/t0805-c5521-brdr-l-01-e-expected.txt: Removed.
* platform/gtk/css2.1/t0805-c5521-ibrdr-l-00-a-expected.txt: Removed.
Removed efl + gtk baselines, replaced by the common one.

* platform/mac-lion/css2.1/t0805-c5519-brdr-r-00-a-expected.txt: Removed.
* platform/mac-lion/css2.1/t0805-c5519-brdr-r-01-e-expected.txt: Removed.
* platform/mac-lion/css2.1/t0805-c5520-brdr-b-01-e-expected.txt: Removed.
* platform/mac-lion/css2.1/t0805-c5521-brdr-l-00-a-expected.txt: Removed.
* platform/mac-lion/css2.1/t0805-c5521-brdr-l-01-e-expected.txt: Removed.
* platform/mac-lion/css2.1/t0805-c5521-ibrdr-l-00-a-expected.txt: Removed.
Removed Mac Lion baseline as it was a duplicate of mac.



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