WebKit.git
10 years ago2011-01-22 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sun, 23 Jan 2011 05:48:11 +0000 (05:48 +0000)]
2011-01-22  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver Hunt.

        Skip a test that seems to cause the subsequent test to sporadically fail, and unskip the several tests after it
        https://bugs.webkit.org/show_bug.cgi?id=52970

        * platform/mac-wk2/Skipped:

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

10 years ago2011-01-22 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sun, 23 Jan 2011 05:03:16 +0000 (05:03 +0000)]
2011-01-22  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Dan Bernstein.

        ASSERT running run-webkit-tests --threaded.
        https://bugs.webkit.org/show_bug.cgi?id=52971

        SunSpider and v8 report no change.

        * runtime/ConservativeSet.cpp:
        (JSC::ConservativeSet::grow):
        (JSC::ConservativeSet::add):
        * runtime/ConservativeSet.h: Tweaked the inline capacity to 128, and
        the growth policy to 2X, to make SunSpider and v8 happy.
        (JSC::ConservativeSet::ConservativeSet):
        (JSC::ConservativeSet::~ConservativeSet):
        (JSC::ConservativeSet::mark): Use OSAllocator directly, instead of malloc.
        Malloc is forbidden during a multi-threaded mark phase because it can
        cause deadlock.
2011-01-22  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Dan Bernstein.

        Beefed up --threaded mode to catch even more kinds of errors.
        https://bugs.webkit.org/show_bug.cgi?id=52971

        * DumpRenderTree/pthreads/JavaScriptThreadingPthreads.cpp: Use a shared
        context group to force JSC to mark multiple threads. (This used to be
        the default, but it changed in SnowLeopard.)
        (runJavaScriptThread): Do more locking and unlocking, and more allocation,
        to give threading mistakes more chances to show themselves.
        (startJavaScriptThreads):
        (stopJavaScriptThreads):

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

10 years ago2011-01-22 Chris Rogers <crogers@google.com>
dbates@webkit.org [Sun, 23 Jan 2011 00:33:55 +0000 (00:33 +0000)]
2011-01-22  Chris Rogers  <crogers@google.com>

        Rubber-stamped by Anders Carlsson.

        Fix FFTFrameStub to compile properly
        https://bugs.webkit.org/show_bug.cgi?id=52969

        No new tests since this is a build fix.

        * platform/audio/FFTFrameStub.cpp:
        (WebCore::FFTFrame::FFTFrame):

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

10 years ago2011-01-22 John Abd-El-Malek <jam@chromium.org>
jam@chromium.org [Sat, 22 Jan 2011 21:55:43 +0000 (21:55 +0000)]
2011-01-22  John Abd-El-Malek  <jam@chromium.org>

        Reviewed by Adam Barth.

        [chromium]: Fix WebScrollbarImpl not getting scroll events after recent scrollbar refactoring
        https://bugs.webkit.org/show_bug.cgi?id=52967

        * src/WebScrollbarImpl.cpp:
        (WebKit::WebScrollbarImpl::horizontalScrollbar):
        (WebKit::WebScrollbarImpl::verticalScrollbar):
        * src/WebScrollbarImpl.h:

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

10 years ago2011-01-22 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 22 Jan 2011 20:11:22 +0000 (20:11 +0000)]
2011-01-22  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Geoffrey Garen.

        Rubber-stamped by Maciej Stachowiak.

        A few of Maciej's review suggestions for my last patch.
        https://bugs.webkit.org/show_bug.cgi?id=52946

        SunSpider reports no change.

        * Android.mk:
        * CMakeLists.txt:
        * GNUmakefile.am:
        * JavaScriptCore.gypi:
        * JavaScriptCore.pro:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
        * JavaScriptCore.xcodeproj/project.pbxproj: Updated build systems.

        * runtime/ConservativeSet.cpp: Added.
        (JSC::isPointerAligned):
        (JSC::ConservativeSet::add):
        * runtime/ConservativeSet.h: Added.
        (JSC::ConservativeSet::ConservativeSet):
        (JSC::ConservativeSet::mark): Split ConservativeSet out into its own
        file, and moved the conservative check into ConservativeSet::add, making
        ConservativeSet's responsibility clearer.

        * runtime/Heap.cpp:
        (JSC::Heap::markRoots):
        * runtime/MachineStackMarker.cpp:
        (JSC::MachineStackMarker::markCurrentThreadConservativelyInternal):
        (JSC::MachineStackMarker::markOtherThreadConservatively):
        * runtime/MachineStackMarker.h:
        * runtime/MarkStack.h: Updated for changes above.

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

10 years ago2011-01-22 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Sat, 22 Jan 2011 19:56:38 +0000 (19:56 +0000)]
2011-01-22  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        Transparent windows with compositing WebKit2 content show garbage
        https://bugs.webkit.org/show_bug.cgi?id=52966
        <rdar://problem/8765051>

        * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
        (WebKit::LayerBackedDrawingAreaProxy::paint):
        If the WKView should draw transparent background, do so.

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

10 years ago2011-01-22 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Sat, 22 Jan 2011 19:36:34 +0000 (19:36 +0000)]
2011-01-22  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        Add an asynchronous WKPageForceRepaint
        https://bugs.webkit.org/show_bug.cgi?id=52964
        <rdar://problem/8898527>

        * UIProcess/API/C/WKPage.cpp:
        (WKPageForceRepaint):
        Call WebPageProxy::forceRepaint.

        * UIProcess/API/C/WKPage.h:
        Add WKPageForceRepaint.

        * UIProcess/GenericCallback.h:
        Add a "generic" VoidCallback class.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::forceRepaint):
        Insert the callback in the m_voidCallbacks map and send a forceRepaint message.

        (WebKit::WebPageProxy::voidCallback):
        Call the right void callback.

        (WebKit::WebPageProxy::processDidCrash):
        Invalidate m_voidCallbacks.

        * UIProcess/WebPageProxy.messages.in:
        Add a VoidCallback message.

        * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
        (WebKit::ChunkedUpdateDrawingArea::forceRepaint):
        Force a repaint.

        * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
        Add forceRepaint.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::forceRepaint):
        Call forceRepaint on the drawing area.

        * WebProcess/WebPage/WebPage.messages.in:
        Add a ForceRepaint message.

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

10 years ago2011-01-22 Robert Hogan <robert@webkit.org>
robert@webkit.org [Sat, 22 Jan 2011 17:27:34 +0000 (17:27 +0000)]
2011-01-22  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Support layoutTestController.addURLToRedirect()
        https://bugs.webkit.org/show_bug.cgi?id=52956

        * platform/qt/Skipped:
2011-01-22  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Support layoutTestController.addURLToRedirect()
        https://bugs.webkit.org/show_bug.cgi?id=52956

        * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
        (DumpRenderTreeSupportQt::addURLToRedirect):
        * WebCoreSupport/DumpRenderTreeSupportQt.h:
        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::dispatchWillSendRequest):
        * WebCoreSupport/FrameLoaderClientQt.h:
2011-01-22  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Support layoutTestController.addURLToRedirect()
        https://bugs.webkit.org/show_bug.cgi?id=52956

        * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
        (LayoutTestController::addURLToRedirect):
        * DumpRenderTree/qt/LayoutTestControllerQt.h:

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

10 years ago2011-01-22 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Sat, 22 Jan 2011 16:16:07 +0000 (16:16 +0000)]
2011-01-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        REGRESSION: Vertical line metrics incorrect
        https://bugs.webkit.org/show_bug.cgi?id=52960

        Revert accidently landed mac baseline changes.

        * platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-03-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-36-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-text-04-t-expected.txt:
        * platform/mac/svg/batik/text/xmlSpace-expected.txt:
        * platform/mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.txt:
        * platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt:
        * platform/mac/svg/text/text-hkern-expected.txt:
        * platform/mac/svg/text/text-hkern-on-vertical-text-expected.txt:
        * platform/mac/svg/text/text-text-04-t-expected.txt:
        * platform/mac/svg/text/text-vkern-expected.txt:
        * platform/mac/svg/text/text-vkern-on-horizontal-text-expected.txt:
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.txt:

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

10 years ago2011-01-22 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Sat, 22 Jan 2011 15:14:17 +0000 (15:14 +0000)]
2011-01-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        REGRESSION: Vertical line metrics incorrect
        https://bugs.webkit.org/show_bug.cgi?id=52960

        Rebaselined several text dumps from the bots, after the FontMetrics change.
        All show 1px diffs, but are progressions, since the lineSpacing calculation has been improved.
        Mac still has the old results - as it depends on a rounding trick at the moment.

        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
        * platform/gtk/svg/text/text-hkern-expected.txt:
        * platform/gtk/svg/text/text-hkern-on-vertical-text-expected.txt:
        * platform/gtk/svg/text/text-vkern-expected.txt:
        * platform/gtk/svg/text/text-vkern-on-horizontal-text-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-03-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-36-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-text-04-t-expected.txt:
        * platform/mac/svg/batik/text/xmlSpace-expected.txt:
        * platform/mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.txt:
        * platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt:
        * platform/mac/svg/text/text-hkern-expected.txt:
        * platform/mac/svg/text/text-hkern-on-vertical-text-expected.txt:
        * platform/mac/svg/text/text-text-04-t-expected.txt:
        * platform/mac/svg/text/text-vkern-expected.txt:
        * platform/mac/svg/text/text-vkern-on-horizontal-text-expected.txt:
        * platform/mac/svg/transforms/text-with-mask-with-svg-transform-expected.txt:
        * platform/qt/css2.1/t1507-c526-font-sz-02-b-a-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
        * platform/qt/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt:
        * platform/qt/svg/text/text-hkern-expected.txt:
        * platform/qt/svg/text/text-hkern-on-vertical-text-expected.txt:
        * platform/qt/svg/text/text-vkern-expected.txt:
        * platform/qt/svg/text/text-vkern-on-horizontal-text-expected.txt:
        * platform/qt/svg/transforms/text-with-mask-with-svg-transform-expected.txt:

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

10 years ago2011-01-22 Andrei Popescu <andreip@google.com>
andreip@google.com [Sat, 22 Jan 2011 15:00:18 +0000 (15:00 +0000)]
2011-01-22  Andrei Popescu  <andreip@google.com>

        Reviewed by Jeremy Orlow.

        IndexedDB corrupts data on disk
        https://bugs.webkit.org/show_bug.cgi?id=52890

        * storage/indexeddb/data-corruption-expected.txt: Added.
        * storage/indexeddb/data-corruption.html: Added.
2011-01-22  Andrei Popescu  <andreip@google.com>

        Reviewed by Jeremy Orlow.

        IndexedDB corrupts data on disk
        https://bugs.webkit.org/show_bug.cgi?id=52890

        We need to store the SerializedScriptValues on disk in a BLOB column rather than TEXT.
        Test: storage/indexeddb/data-corruption.html

        * platform/sql/SQLiteStatement.cpp:
        (WebCore::SQLiteStatement::bindBlob):
        (WebCore::SQLiteStatement::getColumnBlobAsString):
        (WebCore::SQLiteStatement::getColumnBlobAsVector):
        * platform/sql/SQLiteStatement.h:
        * storage/IDBCursorBackendImpl.cpp:
        (WebCore::IDBCursorBackendImpl::loadCurrentRow):
        * storage/IDBFactoryBackendImpl.cpp:
        (WebCore::runCommands):
        (WebCore::createTables):
        (WebCore::createMetaDataTable):
        (WebCore::migrateDatabase):
        * storage/IDBObjectStoreBackendImpl.cpp:
        (WebCore::IDBObjectStoreBackendImpl::getInternal):
        (WebCore::putObjectStoreData):

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

10 years ago2011-01-22 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Sat, 22 Jan 2011 14:18:55 +0000 (14:18 +0000)]
2011-01-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix WinCE build.

        * platform/graphics/wince/GraphicsContextWinCE.cpp:
        (WebCore::GraphicsContext::drawText):
        * rendering/RenderThemeWinCE.cpp:
        (WebCore::RenderThemeWinCE::adjustMenuListButtonStyle):

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

10 years ago2011-01-22 Robert Hogan <robert@webkit.org>
robert@webkit.org [Sat, 22 Jan 2011 14:13:57 +0000 (14:13 +0000)]
2011-01-22  Robert Hogan  <robert@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] REGRESSION (r72360): http/tests/security/aboutBlank/xss-DENIED-* tests fail
        https://bugs.webkit.org/show_bug.cgi?id=49802

        * platform/qt/Skipped:
        * platform/qt/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt: Added.
        * platform/qt/http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt: Added.
        * platform/qt/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt: Added.
2011-01-22  Robert Hogan  <robert@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] REGRESSION (r72360): http/tests/security/aboutBlank/xss-DENIED-* tests fail
        https://bugs.webkit.org/show_bug.cgi?id=49802

        * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
        (WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting):
        (WebCore::DumpRenderTree::open):

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

10 years ago2011-01-22 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Sat, 22 Jan 2011 13:46:31 +0000 (13:46 +0000)]
2011-01-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        REGRESSION: Vertical line metrics incorrect
        https://bugs.webkit.org/show_bug.cgi?id=52960

        SimpleFontDataMac.mm contains a hack to modifiy lineGap/descent for the 'Hiragino' font.
        That didn't influence the lineSpacing so far, but does now, causing regressions.

        Restore old line spacing behaviour to fix the regression.
        Covered by existing fast/blockflow, fast/repaint and fast/text/international test cases.

        * platform/graphics/FontMetrics.h:
        (WebCore::FontMetrics::FontMetrics):
        (WebCore::FontMetrics::floatLineSpacing):
        (WebCore::FontMetrics::setLineSpacing):
        (WebCore::FontMetrics::lineSpacing):
        (WebCore::FontMetrics::reset):
        * platform/graphics/SimpleFontData.cpp:
        (WebCore::SimpleFontData::SimpleFontData):
        * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/chromium/SimpleFontDataLinux.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/haiku/SimpleFontDataHaiku.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/mac/SimpleFontDataMac.mm:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/pango/SimpleFontDataPango.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/qt/SimpleFontDataQt.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/win/SimpleFontDataCGWin.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/win/SimpleFontDataCairoWin.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/win/SimpleFontDataWin.cpp:
        (WebCore::SimpleFontData::initGDIFont):
        * platform/graphics/wince/SimpleFontDataWinCE.cpp:
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/wx/SimpleFontDataWx.cpp:
        (WebCore::SimpleFontData::platformInit):

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

10 years ago2011-01-22 Andreas Kling <kling@webkit.org>
andreas.kling@nokia.com [Sat, 22 Jan 2011 12:52:18 +0000 (12:52 +0000)]
2011-01-22  Andreas Kling  <kling@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] fast/backgrounds/svg-as-mask.html fails
        https://bugs.webkit.org/show_bug.cgi?id=52906

        Transparency layers should start out with in SourceOver mode with
        alpha 1.0 (modeled after CGContextBeginTransparencyLayer.)

        * platform/graphics/qt/TransparencyLayer.h:
        (WebCore::TransparencyLayer::TransparencyLayer):

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

10 years ago2011-01-22 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Sat, 22 Jan 2011 12:44:50 +0000 (12:44 +0000)]
2011-01-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        Introduce FontMetrics abstraction
        https://bugs.webkit.org/show_bug.cgi?id=51456

        Fix Chromium/Win build.

        * platform/graphics/chromium/UniscribeHelperTextRun.cpp: s/->/./
        (WebCore::UniscribeHelperTextRun::UniscribeHelperTextRun):

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

10 years ago2011-01-21 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Sat, 22 Jan 2011 11:46:23 +0000 (11:46 +0000)]
2011-01-21  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        Introduce FontMetrics abstraction
        https://bugs.webkit.org/show_bug.cgi?id=51456

        * src/ExternalPopupMenu.cpp: Use FontMetrics instead of Font to access the metrics.
        (WebKit::ExternalPopupMenu::getPopupMenuInfo):
        * src/WebFontImpl.cpp: Ditto.
        (WebKit::WebFontImpl::ascent):
        (WebKit::WebFontImpl::descent):
        (WebKit::WebFontImpl::height):
        (WebKit::WebFontImpl::lineSpacing):
        (WebKit::WebFontImpl::xHeight):
2011-01-21  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        Introduce FontMetrics abstraction
        https://bugs.webkit.org/show_bug.cgi?id=51456

        * FullscreenVideoController.cpp: Use FontMetrics instead of Font to access the metrics.
        (FullscreenVideoController::draw):
        * WebCoreSupport/WebDragClient.cpp: Ditto.
        (WebDragClient::createDragImageForLink):
        * WebKitGraphics.cpp: Ditto.
        (FontMetrics):
2011-01-21  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        Introduce FontMetrics abstraction
        https://bugs.webkit.org/show_bug.cgi?id=51456

        Encapsulate ascent/descent/lineHeight/lineGap methods in a single FontMetrics class, instead of
        having to define them in both Font & SimpleFontData. Changed to store floating point values
        as default, in order to get accurate information for small sized fonts. All these methods
        now have floating-point and integer versions. Whenever an integer variant of these functions
        is called, lroundf() is used to round the value.

        This makes it possible to support small font-sizes for SVG in a follow-up patch, as well
        as fixing rounding issues when using SVG Fonts.

        Shouldn't affect existing tests.

        * GNUmakefile.am: Add FontMetrics.h to build.
        * WebCore.gypi: Ditto.
        * WebCore.pro: Ditto.
        * WebCore.vcproj/WebCore.vcproj: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: Use style->fontMetrics() instead of style->font() to access the metrics.
        (baselinePositionForAccessibilityRenderObject):
        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::computeLengthDouble):
        * html/canvas/CanvasRenderingContext2D.cpp: Ditto.
        (WebCore::CanvasRenderingContext2D::drawTextInternal):
        * inspector/InspectorController.cpp: Ditto.
        (WebCore::InspectorController::drawElementTitle):
        * platform/chromium/PopupMenuChromium.cpp: Ditto.
        (WebCore::PopupListBox::paintRow):
        (WebCore::PopupListBox::getRowHeight):
        * platform/graphics/Font.h: Remove ascent/descent/height/lineGap/lineSpacing/xHeight/unitsPerEm accessor...
        (WebCore::Font::fontMetrics): ... and only expose a single FontMetrics object here.
        * platform/graphics/FontFastPath.cpp: Use fontMetrics() to query metrics information.
        (WebCore::Font::emphasisMarkAscent):
        (WebCore::Font::emphasisMarkDescent):
        (WebCore::Font::emphasisMarkHeight):
        (WebCore::Font::floatWidthForSimpleText):
        * platform/graphics/FontMetrics.h: Added.
        (WebCore::FontMetrics::FontMetrics): Creates a FontMetrics object, stored in SimpleFontData.
        (WebCore::FontMetrics::unitsPerEm): Returns an unsigned describing the unitsPerEm.
        (WebCore::FontMetrics::setUnitsPerEm): Sets the unitsPerEm value.
        (WebCore::FontMetrics::floatAscent): Returns the stored m_ascent float.
        (WebCore::FontMetrics::setAscent): Sets the stored m_ascent float.
        (WebCore::FontMetrics::floatDescent): Returns the stored m_descent float.
        (WebCore::FontMetrics::setDescent): Sets the stored m_descent float.
        (WebCore::FontMetrics::floatHeight): Returns floatAscent() + floatDescent().
        (WebCore::FontMetrics::floatLineGap): Returns the stored m_lineGap float.
        (WebCore::FontMetrics::setLineGap): Sets the stored m_lineGap float.
        (WebCore::FontMetrics::floatLineSpacing): Returns the stored m_lineSpacing float.
        (WebCore::FontMetrics::setLineSpacing): Sets the stored m_lineSpacing float.
        (WebCore::FontMetrics::xHeight): Returns the stored m_xHeight float (no integer version available, hence no 'float' prefix).
        (WebCore::FontMetrics::setXHeight): Sets the stored m_xHeight float.
        (WebCore::FontMetrics::ascent): Returns a rounded version of ascent().
        (WebCore::FontMetrics::descent): Ditto (for descent).
        (WebCore::FontMetrics::height): Returns ascent() + descent().
        (WebCore::FontMetrics::lineGap): Returns a rounded version of lineGap().
        (WebCore::FontMetrics::lineSpacing): Ditto (for lineSpacing).
        (WebCore::FontMetrics::reset): Nulls all members, used only by the platform variants of SimpleFontData.
        * platform/graphics/SimpleFontData.cpp: Adapt SVG Fonts code, to initialize the FontMetrics object, as the m_ascent/etc.. members are gone.
        (WebCore::SimpleFontData::SimpleFontData):
        (WebCore::SimpleFontData::initCharWidths):
        * platform/graphics/SimpleFontData.h: Remove ascent/descent/height/lineSpacing/lineGap/xHeight/unitsPerEm accessors, and members, just store a FontMetrics object and expose it.
        (WebCore::SimpleFontData::fontMetrics):
        (WebCore::SimpleFontData::avgCharWidth):
        * platform/graphics/chromium/FontChromiumWin.cpp: Use fontMetrics() to query font metrics.
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::estimateTextBounds):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::estimateTextBounds):
        (WebCore::Font::drawComplexText):
        * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: Adapt platform code, to initialize the FontMetrics object.
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/chromium/SimpleFontDataLinux.cpp: Ditto.
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/chromium/UniscribeHelperTextRun.cpp: Use fontMetrics() to query font metrics.
        (WebCore::UniscribeHelperTextRun::UniscribeHelperTextRun):
        (WebCore::UniscribeHelperTextRun::nextWinFontData):
        * platform/graphics/freetype/SimpleFontDataFreeType.cpp: Adapt platform code, to initialize the FontMetrics object.
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/haiku/SimpleFontDataHaiku.cpp: Ditto.
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/mac/FontComplexTextMac.cpp: Use fontMetrics() to query font metrics.
        (WebCore::Font::floatWidthForComplexText):
        * platform/graphics/mac/FontMac.mm: Ditto.
        (WebCore::showGlyphsWithAdvances):
        * platform/graphics/mac/SimpleFontDataMac.mm: Adapt platform code, to initialize the FontMetrics object.
        (WebCore::SimpleFontData::platformInit):
        (WebCore::SimpleFontData::platformCharWidthInit):
        * platform/graphics/pango/SimpleFontDataPango.cpp: Ditto.
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/qt/SimpleFontDataQt.cpp: Ditto. (+ Switch to QFontMetricsF to get floating-point accurancy.)
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/win/FontCGWin.cpp: Use fontMetrics() to query font metrics.
        (WebCore::drawGDIGlyphs):
        * platform/graphics/win/FontWin.cpp: Ditto.
        (WebCore::Font::floatWidthForComplexText):
        * platform/graphics/win/SimpleFontDataCGWin.cpp: Adapt platform code, to initialize the FontMetrics object.
        (WebCore::SimpleFontData::platformInit):
        (WebCore::SimpleFontData::platformBoundsForGlyph):
        * platform/graphics/win/SimpleFontDataCairoWin.cpp: Ditto.
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/win/SimpleFontDataWin.cpp: Ditto.
        (WebCore::SimpleFontData::initGDIFont):
        * platform/graphics/wince/GraphicsContextWinCE.cpp: Use fontMetrics() to query font metrics.
        (WebCore::GraphicsContext::drawText):
        * platform/graphics/wince/SimpleFontDataWinCE.cpp: Adapt platform code, to initialize the FontMetrics object.
        (WebCore::SimpleFontData::platformInit):
        * platform/graphics/wx/SimpleFontDataWx.cpp: Ditto.
        (WebCore::SimpleFontData::platformInit):
        * platform/win/PopupMenuWin.cpp: Use style->fontMetrics() instead of style->font() to access the metrics.
        (WebCore::PopupMenuWin::calculatePositionAndSize):
        (WebCore::PopupMenuWin::paint):
        * rendering/EllipsisBox.cpp: Ditto.
        (WebCore::EllipsisBox::paint):
        (WebCore::EllipsisBox::nodeAtPoint):
        * rendering/InlineBox.cpp: Ditto.
        (WebCore::InlineBox::logicalHeight):
        * rendering/InlineFlowBox.cpp: Ditto.
        (WebCore::verticalPositionForBox):
        (WebCore::InlineFlowBox::computeLogicalBoxHeights):
        (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
        * rendering/InlineTextBox.cpp: Ditto.
        (WebCore::InlineTextBox::paint):
        (WebCore::InlineTextBox::paintDecoration):
        (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
        (WebCore::InlineTextBox::paintCompositionUnderline):
        * rendering/RenderBlock.cpp: Ditto.
        (WebCore::RenderBlock::baselinePosition):
        (WebCore::RenderBlock::firstLineBoxBaseline):
        (WebCore::RenderBlock::lastLineBoxBaseline):
        * rendering/RenderBox.cpp: Ditto.
        (WebCore::RenderBox::localCaretRect):
        * rendering/RenderEmbeddedObject.cpp: Ditto.
        (WebCore::RenderEmbeddedObject::paintReplaced):
        * rendering/RenderImage.cpp: Ditto.
        (WebCore::RenderImage::setImageSizeForAltText):
        (WebCore::RenderImage::paintReplaced):
        * rendering/RenderInline.cpp: Ditto.
        (WebCore::RenderInline::baselinePosition):
        * rendering/RenderListBox.cpp: Ditto.
        (WebCore::RenderListBox::paintItemForeground):
        (WebCore::RenderListBox::itemHeight):
        * rendering/RenderListMarker.cpp: Ditto.
        (WebCore::RenderListMarker::paint):
        (WebCore::RenderListMarker::layout):
        (WebCore::RenderListMarker::computePreferredLogicalWidths):
        (WebCore::RenderListMarker::updateMargins):
        (WebCore::RenderListMarker::getRelativeMarkerRect):
        * rendering/RenderTextControl.cpp: Ditto.
        (WebCore::RenderTextControl::paintPlaceholder):
        * rendering/RenderTextControlSingleLine.cpp: Ditto.
        (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
        * rendering/RenderThemeWin.cpp: Ditto.
        (WebCore::RenderThemeWin::adjustMenuListButtonStyle):
        * rendering/mathml/RenderMathMLFraction.cpp: Ditto.
        (WebCore::RenderMathMLFraction::baselinePosition):
        * rendering/style/RenderStyle.h: Add "const FontMetrics& fontMetrics() const" accessor.
        (WebCore::InheritedFlags::fontMetrics):
        (WebCore::InheritedFlags::computedLineHeight):
        * rendering/svg/RenderSVGInlineText.cpp: Use style->fontMetrics() instead of style->font() to access the metrics.
        (WebCore::RenderSVGInlineText::positionForPoint):
        * rendering/svg/SVGInlineTextBox.cpp: Ditto.
        (WebCore::SVGInlineTextBox::selectionRectForTextFragment):
        (WebCore::positionOffsetForDecoration):
        (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
        (WebCore::SVGInlineTextBox::paintTextWithShadows):
        (WebCore::SVGInlineTextBox::calculateBoundaries):
        * rendering/svg/SVGTextLayoutEngineBaseline.cpp: Ditto.
        (WebCore::SVGTextLayoutEngineBaseline::calculateBaselineShift):
        (WebCore::SVGTextLayoutEngineBaseline::calculateAlignmentBaselineShift):
        (WebCore::SVGTextLayoutEngineBaseline::calculateGlyphAdvanceAndOrientation):
        * rendering/svg/SVGTextLayoutEngineSpacing.cpp: Ditto.
        (WebCore::SVGTextLayoutEngineSpacing::calculateSVGKerning):
        * rendering/svg/SVGTextMetrics.cpp: Ditto.
        (WebCore::SVGTextMetrics::SVGTextMetrics):
        * rendering/svg/SVGTextQuery.cpp: Ditto.
        (WebCore::calculateGlyphBoundaries):
        * svg/SVGFontFaceElement.cpp:
        (WebCore::SVGFontFaceElement::unitsPerEm): Rename defaultUnitsPerEm global to gDefaultUnitsPerEm.
        * svg/SVGLength.cpp: Use style->fontMetrics() instead of style->font() to access the metrics.
        (WebCore::SVGLength::convertValueFromUserUnitsToEXS):
        (WebCore::SVGLength::convertValueFromEXSToUserUnits):
2011-01-21  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        Introduce FontMetrics abstraction
        https://bugs.webkit.org/show_bug.cgi?id=51456

        * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: Use FontMetrics instead of Font to access the metrics.
        (WebKit::WebPopupMenu::setUpPlatformData):

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

10 years ago2011-01-22 Patrick Gansterer <paroga@webkit.org>
paroga@webkit.org [Sat, 22 Jan 2011 11:36:49 +0000 (11:36 +0000)]
2011-01-22  Patrick Gansterer  <paroga@webkit.org>

        Unreviewed WinCE build fix for r76430.

        * runtime/MachineStackMarker.cpp:
        (JSC::swapIfBackwards):

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

10 years ago2011-01-22 Andreas Kling <kling@webkit.org>
andreas.kling@nokia.com [Sat, 22 Jan 2011 11:02:45 +0000 (11:02 +0000)]
2011-01-22  Andreas Kling  <kling@webkit.org>

        Unreviewed, add Qt-specific result for test added in r76414.

        * platform/qt/fast/text/justify-nbsp-expected.txt: Added.

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

10 years ago2011-01-22 Ryosuke Niwa <rniwa@webkit.org>
rniwa@webkit.org [Sat, 22 Jan 2011 10:58:22 +0000 (10:58 +0000)]
2011-01-22  Ryosuke Niwa  <rniwa@webkit.org>

        Unreviewed Chromium test expectation update.

        * platform/chromium/test_expectations.txt:

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

10 years ago2011-01-22 Ryosuke Niwa <rniwa@webkit.org>
rniwa@webkit.org [Sat, 22 Jan 2011 10:51:42 +0000 (10:51 +0000)]
2011-01-22  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        Stop instantiating legacy editing positions in VisibleSelection, visible_units.cpp, Frame, and RenderBlock
        https://bugs.webkit.org/show_bug.cgi?id=52759

        Stopped instantiating legacy editing positions in the following files.

        * editing/VisibleSelection.cpp:
        (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
        * editing/visible_units.cpp:
        (WebCore::previousBoundary):
        (WebCore::previousLinePosition):
        (WebCore::nextLinePosition):
        (WebCore::startOfBlock):
        * page/Frame.cpp:
        (WebCore::Frame::visiblePositionForPoint):
        * rendering/RenderBlock.cpp: Removed RenderBlock::positionForRenderer because it was not called anywhere.
        * rendering/RenderBlock.h: Ditto.

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

10 years ago2011-01-22 Adrienne Walker <enne@google.com>
enne@google.com [Sat, 22 Jan 2011 10:00:13 +0000 (10:00 +0000)]
2011-01-22  Adrienne Walker  <enne@google.com>

        Reviewed by James Robinson.

        [chromium] Fix compositor repaints for offscreen fixed elements
        https://bugs.webkit.org/show_bug.cgi?id=52681

        The fast path scrolling was clipping offscreen invalidations.
        Additionally, the compositor was ignoring all invalidations that were
        entirely out of the content rect.

        Test: compositing/ to verify this caused no regressions.
        Tested fix manually in browser as I could not generate a LayoutTest that reproduced the bug in run-webkit-tests.

        * page/FrameView.cpp:
        (WebCore::FrameView::scrollContentsFastPath):
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::invalidateRootLayerRect):

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

10 years ago2011-01-22 Ryosuke Niwa <rniwa@webkit.org>
rniwa@webkit.org [Sat, 22 Jan 2011 09:29:19 +0000 (09:29 +0000)]
2011-01-22  Ryosuke Niwa  <rniwa@webkit.org>

        Unreviewed Chromium test expectation update.

        * platform/chromium/test_expectations.txt:

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

10 years ago Reviewed by Darin Adler.
ap@apple.com [Sat, 22 Jan 2011 09:23:20 +0000 (09:23 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=52473
        Auto-scaling to avoid orphans is broken, remove dysfunctional code

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]):
        (-[WebHTMLView _scaleFactorForPrintOperation:]):
        (-[WebHTMLView knowsPageRange:]):

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

10 years ago2011-01-22 Alexey Proskuryakov <ap@apple.com>
ap@apple.com [Sat, 22 Jan 2011 09:15:06 +0000 (09:15 +0000)]
2011-01-22  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=52950
        Leak in WebPage::drawRectToPDF

        * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::drawRectToPDF): Use RetainPtr here, too.

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

10 years ago2011-01-22 Alexey Proskuryakov <ap@apple.com>
ap@apple.com [Sat, 22 Jan 2011 08:22:00 +0000 (08:22 +0000)]
2011-01-22  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=52951
        WebKit2 generates a bad PDF for cross process messaging

        * page/PrintContext.cpp: (WebCore::PrintContext::spoolRect): Use a correct offset to actually
        draw inside the requested rectangle.
2011-01-22  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=52951
        WebKit2 generates a bad PDF for cross process messaging

        * UIProcess/API/mac/WKView.mm:
        (-[WKView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
        Use a correct offset when flipping.

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

10 years agoReorganized MarkedSpace, making many of its functions private.
ggaren@apple.com [Sat, 22 Jan 2011 07:11:28 +0000 (07:11 +0000)]
Reorganized MarkedSpace, making many of its functions private.

Reviewed by Beth Dakin.

* runtime/JSCell.h:
(JSC::JSCell::Heap::heap):
* runtime/MarkedSpace.h:
(JSC::MarkedSpace::globalData):
(JSC::MarkedSpace::heap):

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

10 years agoTry to fix build: moved helper function out of #ifdef.
ggaren@apple.com [Sat, 22 Jan 2011 06:50:19 +0000 (06:50 +0000)]
Try to fix build: moved helper function out of #ifdef.

* runtime/MachineStackMarker.cpp:
(JSC::swapIfBackwards):

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

10 years agoA few of Maciej's review suggestions for my last patch.
ggaren@apple.com [Sat, 22 Jan 2011 06:45:13 +0000 (06:45 +0000)]
A few of Maciej's review suggestions for my last patch.
https://bugs.webkit.org/show_bug.cgi?id=52946

Rubber-stamped by Maciej Stachowiak.

SunSpider reports no change.

* runtime/MachineStackMarker.cpp:
(JSC::swapIfBackwards): Added a helper function for handling platforms
where the stack can grow in any direction.

(JSC::MachineStackMarker::markCurrentThreadConservativelyInternal):
(JSC::MachineStackMarker::markOtherThreadConservatively): Use the helper
function.

(JSC::isPointerAligned): Use "!" instead of "==0" because a robot told me to.

(JSC::MachineStackMarker::markConservatively): Changed to use a more
standard looping idiom, and to use the helper function above.

* runtime/MarkedSpace.h:
(JSC::MarkedSpace::isCellAligned): Use "!" instead of "==0" because a robot told me to.

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

10 years ago2011-01-21 Yury Semikhatsky <yurys@chromium.org>
abarth@webkit.org [Sat, 22 Jan 2011 06:41:45 +0000 (06:41 +0000)]
2011-01-21  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Adam Barth.

        Regression: new window.onerror() implementation leaks cross-origin Javascript errors
        https://bugs.webkit.org/show_bug.cgi?id=52903

        In case of an exception in a script from different domain only generic message
        will be passed to window.onerror hander.

        Tests: http/tests/security/cross-origin-script-window-onerror-redirected.html
               http/tests/security/cross-origin-script-window-onerror.html

        * bindings/js/CachedScriptSourceProvider.h: use URL from the resource response to make sure we do all
        cross origin checks agains real script URL, not the original URL which may have resulted in a sequence
        of redirects to different domains.
        (WebCore::CachedScriptSourceProvider::CachedScriptSourceProvider):
        * bindings/v8/ScriptSourceCode.h: same for v8.
        (WebCore::ScriptSourceCode::url):
        * dom/ScriptExecutionContext.cpp:
        (WebCore::ScriptExecutionContext::dispatchErrorEvent): in case the error occurred in a script we cannot
        access provide concise "Script error." message without any information about the error source. This is
        what Firefox does in this case.
2011-01-21  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Adam Barth.

        Regression: new window.onerror() implementation leaks cross-origin Javascript errors
        https://bugs.webkit.org/show_bug.cgi?id=52903

        A couple of tests to check that window.onerror won't reveal any content of the resource
        from a different domain if the latter is referenced via <script src=...>

        * http/tests/security/cross-origin-script-window-onerror-expected.txt: Added.
        * http/tests/security/cross-origin-script-window-onerror-redirected-expected.txt: Added.
        * http/tests/security/cross-origin-script-window-onerror-redirected.html: Added.
        * http/tests/security/cross-origin-script-window-onerror.html: Added.
        * http/tests/security/resources/cross-origin-script.txt: Added.

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

10 years ago2011-01-21 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Sat, 22 Jan 2011 05:59:51 +0000 (05:59 +0000)]
2011-01-21  Adam Barth  <abarth@webkit.org>

        Reviewed by Maciej Stachowiak.

        Disable mac_unittest.py that fails on some of the Mac bots
        https://bugs.webkit.org/show_bug.cgi?id=52947

        As noted in the comment, this test does not appear to be correct
        because the function this test is testing returns different results
        depending on which flavor of Mac the test is run on.  This patch
        disable the test.  Hopefully we can re-enable the test once we've
        probably insulated the test from its environment.

        * Scripts/webkitpy/layout_tests/port/mac_unittest.py:

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

10 years ago2011-01-21 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sat, 22 Jan 2011 04:57:16 +0000 (04:57 +0000)]
2011-01-21  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Geoffrey Garen.

        Humor the WebKit2 buildbot in its continuing hatred of forms tests
        https://bugs.webkit.org/show_bug.cgi?id=52944

        * platform/mac-wk2/Skipped:

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

10 years agoUpdated the results after r76414 fixed text justification in this test.
mitz@apple.com [Sat, 22 Jan 2011 04:30:47 +0000 (04:30 +0000)]
Updated the results after r76414 fixed text justification in this test.

Rubber-stamped by Mark Rowe.

* platform/mac/fast/text/justified-text-rect-expected.checksum:
* platform/mac/fast/text/justified-text-rect-expected.png:
* platform/mac/fast/text/justified-text-rect-expected.txt:

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

10 years ago2011-01-21 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 22 Jan 2011 04:27:18 +0000 (04:27 +0000)]
2011-01-21  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Maciej Stachowiak.

        Cleaned up some conservative marking code.
        https://bugs.webkit.org/show_bug.cgi?id=52946

        SunSpider reports no change.

        * interpreter/RegisterFile.h: No need for a special marking function,
        since we already expose a start() and end().

        * runtime/Heap.cpp:
        (JSC::Heap::registerFile):
        (JSC::Heap::markRoots):
        * runtime/Heap.h:
        (JSC::Heap::contains): Migrated markConservatively() to the machine stack
        marker class. Now, Heap just provides a contains() function, which the
        machine stack marker uses for checking whether a pointer points into the heap.

        * runtime/MachineStackMarker.cpp:
        (JSC::MachineStackMarker::markCurrentThreadConservativelyInternal):
        (JSC::MachineStackMarker::markOtherThreadConservatively):
        (JSC::isPointerAligned):
        (JSC::MachineStackMarker::markConservatively):
        * runtime/MachineStackMarker.h: Move the conservative marking code here.

        * runtime/MarkStack.h:
        (JSC::ConservativeSet::add):
        (JSC::ConservativeSet::mark): Changed to using a vector instead of hash
        set. Vector seems to be a bit faster, and it generates smaller code.

        * runtime/MarkedSpace.cpp:
        (JSC::MarkedSpace::containsSlowCase):
        * runtime/MarkedSpace.h:
        (JSC::MarkedSpace::isCellAligned):
        (JSC::MarkedSpace::isPossibleCell):
        (JSC::MarkedSpace::contains): Kept the code for determining whether a
        pointer pointed into marked space, and moved the code for marking
        a set of conservative pointers into the machine stack marker.

        * wtf/HashSet.h:
        (WTF::::add): Added two missing inlines that I noticed while testing
        vector vs hash set.

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

10 years ago2011-01-21 James Robinson <jamesr@chromium.org>
jamesr@google.com [Sat, 22 Jan 2011 04:00:52 +0000 (04:00 +0000)]
2011-01-21  James Robinson  <jamesr@chromium.org>

        Update chromium test expectations. fast/animation tests should now pass on all chromium configurations.

        * platform/chromium/test_expectations.txt:

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

10 years agoVersioning.
mrowe@apple.com [Sat, 22 Jan 2011 03:31:45 +0000 (03:31 +0000)]
Versioning.

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

10 years agoFix test failure.
mitz@apple.com [Sat, 22 Jan 2011 03:22:52 +0000 (03:22 +0000)]
Fix test failure.

* fast/text/justify-nbsp.html: Removed a contenteditable attribute
that was added after generating results.

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

10 years ago2011-01-21 Andreas Kling <kling@webkit.org>
andreas.kling@nokia.com [Sat, 22 Jan 2011 02:51:15 +0000 (02:51 +0000)]
2011-01-21  Andreas Kling  <kling@webkit.org>

        Unreviewed, removing the Qt result for r76414 since the test
        was actually broken beyond the usual off-by-one metrics.

        * platform/qt/fast/text/justify-nbsp-expected.txt: Removed.

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

10 years ago2011-01-21 Andreas Kling <kling@webkit.org>
andreas.kling@nokia.com [Sat, 22 Jan 2011 02:11:36 +0000 (02:11 +0000)]
2011-01-21  Andreas Kling  <kling@webkit.org>

        Unreviewed, add Qt-specific result for test added in r76414.

        * platform/qt/fast/text/justify-nbsp-expected.txt: Added.

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

10 years ago Reviewed by Dan Bernstein.
ap@apple.com [Sat, 22 Jan 2011 02:08:37 +0000 (02:08 +0000)]
    Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=52943
        Objective-C files should use #import, not #include

        * UIProcess/API/C/WebKit2.h: This is an interesting one, because it's cross-platform, and
        there is more than one WKView.h.

        * Platform/mac/ModuleMac.mm:
        * Platform/mac/RunLoopMac.mm:
        * PluginProcess/mac/PluginControllerProxyMac.mm:
        * PluginProcess/mac/PluginProcessMac.mm:
        * PluginProcess/mac/PluginProcessMainMac.mm:
        * Shared/API/c/mac/WKCertificateInfoMac.mm:
        * Shared/API/c/mac/WKURLRequestNS.mm:
        * Shared/API/c/mac/WKURLResponseNS.mm:
        * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
        * Shared/mac/PlatformCertificateInfo.mm:
        * Shared/mac/SandboxExtensionMac.mm:
        * Shared/mac/WebCoreArgumentCodersMac.mm:
        * Shared/mac/WebMemorySampler.mac.mm:
        * Shared/mac/WebURLRequestMac.mm:
        * Shared/mac/WebURLResponseMac.mm:
        * UIProcess/API/mac/FindIndicatorWindow.mm:
        * UIProcess/API/mac/WKTextInputWindowController.mm:
        * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
        * UIProcess/Launcher/mac/ThreadLauncherMac.mm:
        * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
        * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
        * UIProcess/mac/BackingStoreMac.mm:
        * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
        * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
        * UIProcess/mac/TextCheckerMac.mm:
        * UIProcess/mac/WebContextMac.mm:
        * UIProcess/mac/WebContextMenuProxyMac.mm:
        * UIProcess/mac/WebPageProxyMac.mm:
        * UIProcess/mac/WebPopupMenuProxyMac.mm:
        * UIProcess/mac/WebPreferencesMac.mm:
        * WebProcess/Downloads/mac/DownloadMac.mm:
        * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
        * WebProcess/Plugins/Netscape/mac/PluginProxyMac.mm:
        * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
        * WebProcess/WebCoreSupport/mac/WebDatabaseManagerMac.mm:
        * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
        * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
        * WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm:
        * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
        * WebProcess/WebPage/mac/WebPageMac.mm:
        * WebProcess/mac/WebProcessMac.mm:

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

10 years agoFix the WebKit2 build with clang.
mrowe@apple.com [Sat, 22 Jan 2011 01:46:39 +0000 (01:46 +0000)]
Fix the WebKit2 build with clang.

Reviewed by Sam Weinig.

* Scripts/webkit2/messages.py: Add some more structs to the list.
* UIProcess/DrawingAreaProxy.h: Forward-declare UpdateInfo as a class.
* UIProcess/TextChecker.h: Forward-declare TextCheckerState as a struct.
* UIProcess/WebPageProxy.h: Forward-declare ContextMenuState as a struct.
* UIProcess/mac/TextCheckerMac.mm: Fix the type of the string constants so that they can be passed to
functions expecting NSString* without generating warnings.
* WebProcess/WebPage/DrawingArea.h: Forward-declare WebPageCreationParameters as a struct.
* WebProcess/WebPage/DrawingAreaImpl.h: Forward-declare UpdateInfo as a class.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::getResourceDataFromFrame): Add parens around the assignment in the condition of
the if statement to suppress a warning.

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

10 years agoFix the build when using Clang by removing some unused variables.
mrowe@apple.com [Sat, 22 Jan 2011 01:46:14 +0000 (01:46 +0000)]
Fix the build when using Clang by removing some unused variables.

Rubber-stamped by Jon Honeycutt.

* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView updateAndSetWindow]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController enterFullscreen:]):
(-[WebFullScreenController exitFullscreen]):

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

10 years ago2011-01-21 Andreas Kling <kling@webkit.org>
andreas.kling@nokia.com [Sat, 22 Jan 2011 01:45:14 +0000 (01:45 +0000)]
2011-01-21  Andreas Kling  <kling@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] Always set composition mode through GraphicsContext
        https://bugs.webkit.org/show_bug.cgi?id=52940

        GraphicsContext tracks the current composition mode so we should
        never call through to the QPainter directly.

        * platform/graphics/GraphicsContext.h:
        * platform/graphics/qt/GraphicsContextQt.cpp:
        (WebCore::toQtCompositionMode): Changed this method to a static inline
        since it's only used by GraphicsContextQt.cpp now.

        * platform/graphics/qt/ImageQt.cpp:
        (WebCore::Image::drawPattern):
        (WebCore::BitmapImage::draw):

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

10 years agoInconsistent handling of no-break space in justification logic
mitz@apple.com [Sat, 22 Jan 2011 01:31:05 +0000 (01:31 +0000)]
Inconsistent handling of no-break space in justification logic
https://bugs.webkit.org/show_bug.cgi?id=52938

Reviewed by Adele Peterson.

Source/WebCore:

Test: fast/text/justify-nbsp.html

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Count no-break space as a
space when computing the distribution of space between text boxes on the line.

LayoutTests:

* fast/text/justify-nbsp-expected.checksum: Added.
* fast/text/justify-nbsp-expected.png: Added.
* fast/text/justify-nbsp-expected.txt: Added.
* fast/text/justify-nbsp.html: Added.

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

10 years ago2011-01-21 Dirk Pranke <dpranke@chromium.org>
dpranke@chromium.org [Sat, 22 Jan 2011 01:29:59 +0000 (01:29 +0000)]
2011-01-21  Dirk Pranke  <dpranke@chromium.org>

        Reviewed by Mihai Parparita.

        Fix bug introduced in r76322 that caused NRWT to not actually
        read the Skipped files properly.

        https://bugs.webkit.org/show_bug.cgi?id=52771

        * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
        * Scripts/webkitpy/layout_tests/port/webkit.py:
        * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:

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

10 years ago2011-01-21 Chris Rogers <crogers@google.com>
crogers@google.com [Sat, 22 Jan 2011 01:19:27 +0000 (01:19 +0000)]
2011-01-21  Chris Rogers  <crogers@google.com>

        Unreviewed

        define HAS_WEBAUDIO_RUNTIMEFEATURES for synchronization with chromium patch landing
        https://bugs.webkit.org/show_bug.cgi?id=52941

        * public/WebRuntimeFeatures.h:

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

10 years ago2011-01-21 Chris Rogers <crogers@google.com>
crogers@google.com [Sat, 22 Jan 2011 01:07:55 +0000 (01:07 +0000)]
2011-01-21  Chris Rogers  <crogers@google.com>

        Unreviewed

        Add HAS_WEBAUDIO_FEATURE_ENABLE define to synchronize with chromium-side patch
        https://bugs.webkit.org/show_bug.cgi?id=52939

        * public/WebSettings.h:

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

10 years ago2011-01-21 Kenji Imasaki <imasaki@chromium.org>
commit-queue@webkit.org [Sat, 22 Jan 2011 00:54:24 +0000 (00:54 +0000)]
2011-01-21  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        Remove resolved BUG13907 from test expectation file and added
        newly filed BUGCR70252 for media/video-zoom.html to keep track
        of the issue.

        Also, remove non-flaky test (media/audio-only-video-intrinsic-size.htm).

        * platform/chromium/test_expectations.txt:

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

10 years agoWork around a Clang bug <rdar://problem/8876150> that leads to it incorrectly emittin...
mrowe@apple.com [Sat, 22 Jan 2011 00:38:11 +0000 (00:38 +0000)]
Work around a Clang bug <rdar://problem/8876150> that leads to it incorrectly emitting an access
control warning when a client tries to use operator bool exposed above via "using PageBlock::operator bool".

Reviewed by Sam Weinig.

* wtf/PageAllocation.h:
(WTF::PageAllocation::operator bool):
* wtf/PageReservation.h:
(WTF::PageReservation::operator bool):

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

10 years ago2011-01-21 Martin Robinson <mrobinson@igalia.com>
mrobinson@webkit.org [Sat, 22 Jan 2011 00:16:34 +0000 (00:16 +0000)]
2011-01-21  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline tests that use menulists. Also unskip a non-existent test.

        * platform/gtk/Skipped: Remove non-existent test.
        * platform/gtk/editing/selection/select-box-expected.checksum:
        * platform/gtk/editing/selection/select-box-expected.png:
        * platform/gtk/editing/selection/select-box-expected.txt:
        * platform/gtk/transforms/2d/zoom-menulist-expected.checksum:
        * platform/gtk/transforms/2d/zoom-menulist-expected.png:
        * platform/gtk/transforms/2d/zoom-menulist-expected.txt:

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

10 years ago2011-01-21 Michael Saboff <msaboff@apple.com>
msaboff@apple.com [Fri, 21 Jan 2011 23:52:29 +0000 (23:52 +0000)]
2011-01-21  Michael Saboff  <msaboff@apple.com>

        Reviewed by Oliver Hunt.

        [RegexFuzz] Hang with forward assertion
        https://bugs.webkit.org/show_bug.cgi?id=52825
        <rdar://problem/8894332>

        The backtrackTo label from the first term in a list of terms is
        being overwritten by processing of subsequent terms.  Changed
        copyBacktrackToLabel() to check for an existing bcaktrackTo label
        before copying and renamed it to propagateBacktrackToLabel() since
        it no longer copies.

        * yarr/YarrJIT.cpp:
        (JSC::Yarr::YarrGenerator::BacktrackDestination::propagateBacktrackToLabel):
        (JSC::Yarr::YarrGenerator::generateParenthesesSingle):
2011-01-21  Michael Saboff  <msaboff@apple.com>

        Reviewed by Oliver Hunt.

        [RegexFuzz] Hang with forward assertion
        https://bugs.webkit.org/show_bug.cgi?id=52825
        <rdar://problem/8894332>

        New tests to check for functionality and future regression.

        * fast/regex/parentheses-expected.txt:
        * fast/regex/script-tests/parentheses.js:

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

10 years ago2011-01-21 Charlie Reis <creis@chromium.org>
commit-queue@webkit.org [Fri, 21 Jan 2011 23:47:01 +0000 (23:47 +0000)]
2011-01-21  Charlie Reis  <creis@chromium.org>

        Reviewed by Darin Fisher.

        Crash in WebCore::HistoryController::itemsAreClones
        https://bugs.webkit.org/show_bug.cgi?id=52819

        Adds sanity checks to help diagnose the crash.

        * loader/HistoryController.cpp:
2011-01-21  Charlie Reis  <creis@chromium.org>

        Reviewed by Darin Fisher.

        Crash in WebCore::HistoryController::itemsAreClones
        https://bugs.webkit.org/show_bug.cgi?id=52819

        Adds sanity checks to help diagnose the crash.

        * src/WebFrameImpl.cpp:

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

10 years ago2011-01-21 Andreas Kling <kling@webkit.org>
andreas.kling@nokia.com [Fri, 21 Jan 2011 23:45:26 +0000 (23:45 +0000)]
2011-01-21  Andreas Kling  <kling@webkit.org>

        Reviewed by Ariya Hidayat.

        [Qt] Let QPainter decide whether a composition mode is supported or not

        Lacking Porter-Duff support in the paint engine shouldn't exclude the
        Source and Source-Over modes (and has nothing to do with the blend
        and raster-op modes.)

        Delegate this decision to QPainter instead (this will cause warnings
        if an unsupported mode is used, but that's a good thing.)

        * platform/graphics/qt/GraphicsContextQt.cpp:
        (WebCore::GraphicsContext::clearRect):
        (WebCore::GraphicsContext::setPlatformCompositeOperation):
        * platform/graphics/qt/TransparencyLayer.h:
        (WebCore::TransparencyLayer::TransparencyLayer):

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

10 years ago2011-01-21 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Fri, 21 Jan 2011 23:43:02 +0000 (23:43 +0000)]
2011-01-21  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Adele Peterson.

        Skip a test that's sporadically crashing on the buildbots
        https://bugs.webkit.org/show_bug.cgi?id=52932

        * platform/mac-wk2/Skipped:

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

10 years agoWebKit2: Need API to stop loading a WKFrame
bweinstein@apple.com [Fri, 21 Jan 2011 23:42:00 +0000 (23:42 +0000)]
WebKit2: Need API to stop loading a WKFrame
https://bugs.webkit.org/show_bug.cgi?id=52925

Reviewed by Adam Roben.

* UIProcess/API/C/WKFrame.cpp:
(WKFrameStopLoading): Call through to WebFrameProxy::stopLoading.
* UIProcess/API/C/WKFrame.h:
* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::stopLoading): Send a message to the WebProcess to stop loading the frame
    with the passed in ID.
* UIProcess/WebFrameProxy.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::stopLoadingFrame): Call stopForUserCancel on the passed-in frame.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in: Add StopLoadingFrame.

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

10 years ago2011-01-21 Chris Rogers <crogers@google.com>
crogers@google.com [Fri, 21 Jan 2011 23:41:07 +0000 (23:41 +0000)]
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Kenneth Russell.

        fix audio build: header file should be "Noncopyable.h" and not "NonCopyable.h"
        https://bugs.webkit.org/show_bug.cgi?id=52933

        No new tests since this just fixes the build

        * webaudio/RealtimeAnalyser.h:

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

10 years agoWebKitTestRunner needs the HOME environment variable to be set.
weinig@apple.com [Fri, 21 Jan 2011 23:32:33 +0000 (23:32 +0000)]
WebKitTestRunner needs the HOME environment variable to be set.
<rdar://problem/8896573>

Reviewed by Geoffrey Sean Garen and Mark Rowe.

* Scripts/old-run-webkit-tests: Set the HOME environment variable if
it exists.

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

10 years ago2011-01-21 Chris Rogers <crogers@google.com>
crogers@google.com [Fri, 21 Jan 2011 23:28:06 +0000 (23:28 +0000)]
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Kenneth Russell.

        Fix audio build: change ChromiumBridge to PlatformBridge
        https://bugs.webkit.org/show_bug.cgi?id=52928

        No new tests since audio API is not yet implemented.

        * platform/audio/chromium/AudioBusChromium.cpp:
        (WebCore::AudioBus::loadPlatformResource):

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

10 years ago2011-01-21 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 21 Jan 2011 23:24:07 +0000 (23:24 +0000)]
2011-01-21  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Moved the mark stack from global data to the heap, since it pertains
        to the heap, and not the virtual machine as a whole.
        https://bugs.webkit.org/show_bug.cgi?id=52930

        SunSpider reports no change.

        * runtime/Heap.cpp:
        (JSC::Heap::Heap):
        (JSC::Heap::markRoots):
        * runtime/Heap.h:
        * runtime/JSGlobalData.cpp:
        (JSC::JSGlobalData::JSGlobalData):
        * runtime/JSGlobalData.h:

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

10 years ago2011-01-21 Dirk Pranke <dpranke@chromium.org>
dpranke@chromium.org [Fri, 21 Jan 2011 23:23:49 +0000 (23:23 +0000)]
2011-01-21  Dirk Pranke  <dpranke@chromium.org>

        Reviewed by Eric Seidel.

        Suppress a few remaining integration tests so that none of the
        layout_test unit tests ever read from the filesystem or launch
        subprocesses that aren't part of the unit tests.

        Also fix a minor bug in the printing unit tests that was
        incorrectly relying on sys.argv.

        https://bugs.webkit.org/show_bug.cgi?id=52863

        * Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py:
        * Scripts/webkitpy/layout_tests/port/port_testcase.py:
        * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:

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

10 years ago2011-01-21 Chris Rogers <crogers@google.com>
crogers@google.com [Fri, 21 Jan 2011 23:06:52 +0000 (23:06 +0000)]
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Kenneth Russell.

        Add FFTFrameStub to avoid link errors during bringup on platforms without an FFT implementation
        https://bugs.webkit.org/show_bug.cgi?id=52922

        No new tests since audio API is not yet implemented.

        * WebCore.gypi:
        * platform/audio/FFTFrameStub.cpp: Added.
        (WebCore::FFTFrame::FFTFrame):
        (WebCore::FFTFrame::~FFTFrame):
        (WebCore::FFTFrame::multiply):
        (WebCore::FFTFrame::doFFT):
        (WebCore::FFTFrame::doInverseFFT):
        (WebCore::FFTFrame::cleanup):
        (WebCore::FFTFrame::realData):
        (WebCore::FFTFrame::imagData):

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

10 years ago2011-01-21 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Fri, 21 Jan 2011 22:52:09 +0000 (22:52 +0000)]
2011-01-21  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Adam Roben.

        Skip some newly added tests that use DRT APIs that are not yet available for WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=52924

        * platform/mac-wk2/Skipped:

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

10 years ago2011-01-21 Tony Chang <tony@chromium.org>
tony@chromium.org [Fri, 21 Jan 2011 22:32:15 +0000 (22:32 +0000)]
2011-01-21  Tony Chang  <tony@chromium.org>

        Reviewed by Sam Weinig.

        reduce number of FrameLoaderClient::didChangeScrollOffset calls
        https://bugs.webkit.org/show_bug.cgi?id=52915

        Only notify of changes in scroll offset when there actually is a change.
        This regressed in r76291.

        Covered by Chromium browser_tests.

        * platform/ScrollAnimator.cpp:
        (WebCore::ScrollAnimator::scrollToOffsetWithoutAnimation):

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

10 years ago<rdar://problem/8894125> and https://bugs.webkit.org/show_bug.cgi?id=52916
beidson@apple.com [Fri, 21 Jan 2011 22:12:17 +0000 (22:12 +0000)]
<rdar://problem/8894125> and https://bugs.webkit.org/show_bug.cgi?id=52916
Expose "suggested filename" for a resource based on its resource response.

Reviewed by Adam Roben.

API pieces:
* WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
(WKBundleFrameCopySuggestedFilenameForResourceURL):
* WebProcess/InjectedBundle/API/c/WKBundleFrame.h:

Implementation:
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::suggestedFilenameForResourceURL): See if the DocumentLoader has
  a resource for this URL and, if so, return the response's suggested filename.
* WebProcess/WebPage/WebFrame.h:

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

10 years ago2011-01-21 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Fri, 21 Jan 2011 22:09:19 +0000 (22:09 +0000)]
2011-01-21  Anders Carlsson  <andersca@apple.com>

        Reviewed by Dan Bernstein.

        DrawingAreaProxyImpl::paint should return the unpainted region
        https://bugs.webkit.org/show_bug.cgi?id=52918

        * UIProcess/API/mac/WKView.mm:
        (-[WKView drawRect:]):
        Add unpaintedRegion parameter.

        * UIProcess/BackingStore.h:
        (WebKit::BackingStore::size):
        Add a size getter.

        * UIProcess/DrawingAreaProxyImpl.cpp:
        (WebKit::DrawingAreaProxyImpl::paint):
        Initialize the unpainted region to the dirty region, then subtract the painted region.

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

10 years ago2011-01-21 Pavel Feldman <pfeldman@chromium.org>
pfeldman@chromium.org [Fri, 21 Jan 2011 22:00:52 +0000 (22:00 +0000)]
2011-01-21  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: ~InspectorResourceAgent crashes on closing inspected page.
        https://bugs.webkit.org/show_bug.cgi?id=52900

        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::~InspectorController):
        (WebCore::InspectorController::inspectedPageDestroyed):

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

10 years agoFix for <rdar://problem/8896057>
andersca@apple.com [Fri, 21 Jan 2011 21:58:11 +0000 (21:58 +0000)]
Fix for <rdar://problem/8896057>

Reviewed by Dan Bernstein and Maciej Stachowiak.

Give the Web Process access to the PubSub agent.

* WebProcess/com.apple.WebProcess.sb:

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

10 years ago2011-01-21 Chris Rogers <crogers@google.com>
crogers@google.com [Fri, 21 Jan 2011 21:43:03 +0000 (21:43 +0000)]
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Darin Fisher.

        Add run-time enable support for the web audio API
        https://bugs.webkit.org/show_bug.cgi?id=52741

        * public/WebRuntimeFeatures.h:
        * public/WebSettings.h:
        * src/WebRuntimeFeatures.cpp:
        (WebKit::WebRuntimeFeatures::enableWebAudio):
        (WebKit::WebRuntimeFeatures::isWebAudioEnabled):
        * src/WebSettingsImpl.cpp:
        (WebKit::WebSettingsImpl::setWebAudioEnabled):
        * src/WebSettingsImpl.h:
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Darin Fisher.

        Add run-time enable support for the web audio API
        https://bugs.webkit.org/show_bug.cgi?id=52741

        * WebPreferenceKeysPrivate.h:
        * WebView.cpp:
        (WebView::notifyPreferencesChanged):
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Darin Fisher.

        Add run-time enable support for the web audio API
        https://bugs.webkit.org/show_bug.cgi?id=52741

        * WebView/WebPreferenceKeysPrivate.h:
        * WebView/WebPreferences.mm:
        (-[WebPreferences webAudioEnabled]):
        (-[WebPreferences setWebAudioEnabled:]):
        * WebView/WebPreferencesPrivate.h:
        * WebView/WebView.mm:
        (-[WebView _preferencesChangedNotification:]):
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Darin Fisher.

        Add run-time enable support for the web audio API
        https://bugs.webkit.org/show_bug.cgi?id=52741

        No new tests since audio API is not yet implemented.

        * WebCore.exp.in:
        * bindings/generic/RuntimeEnabledFeatures.cpp:
        * bindings/generic/RuntimeEnabledFeatures.h:
        (WebCore::RuntimeEnabledFeatures::setWebkitAudioContextEnabled):
        (WebCore::RuntimeEnabledFeatures::webkitAudioContextEnabled):
        * page/DOMWindow.idl:
        * page/Settings.cpp:
        (WebCore::Settings::Settings):
        (WebCore::Settings::setWebAudioEnabled):
        * page/Settings.h:
        (WebCore::Settings::webAudioEnabled):

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

10 years agoFix windows build.
weinig@apple.com [Fri, 21 Jan 2011 21:33:40 +0000 (21:33 +0000)]
Fix windows build.

* WebScrollBar.h:

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

10 years ago2011-01-21 Martin Robinson <mrobinson@igalia.com>
mrobinson@webkit.org [Fri, 21 Jan 2011 21:33:07 +0000 (21:33 +0000)]
2011-01-21  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] Menulist text often collides with separator
        https://bugs.webkit.org/show_bug.cgi?id=51155

        Rebaseline tests that have different affected by the metrics of
        the menulist.

        * platform/gtk/fast/forms/001-expected.checksum:
        * platform/gtk/fast/forms/001-expected.png:
        * platform/gtk/fast/forms/001-expected.txt:
        * platform/gtk/fast/forms/003-expected.checksum:
        * platform/gtk/fast/forms/003-expected.png:
        * platform/gtk/fast/forms/003-expected.txt:
        * platform/gtk/fast/forms/004-expected.checksum:
        * platform/gtk/fast/forms/004-expected.png:
        * platform/gtk/fast/forms/004-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.txt:
        * platform/gtk/fast/forms/control-clip-overflow-expected.checksum:
        * platform/gtk/fast/forms/control-clip-overflow-expected.png:
        * platform/gtk/fast/forms/control-clip-overflow-expected.txt:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.checksum:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.png:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.checksum:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.png:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.txt:
        * platform/gtk/fast/forms/form-element-geometry-expected.checksum:
        * platform/gtk/fast/forms/form-element-geometry-expected.png:
        * platform/gtk/fast/forms/form-element-geometry-expected.txt:
        * platform/gtk/fast/forms/input-file-re-render-expected.checksum: Added.
        * platform/gtk/fast/forms/input-file-re-render-expected.png: Added.
        * platform/gtk/fast/forms/menulist-deselect-update-expected.checksum:
        * platform/gtk/fast/forms/menulist-deselect-update-expected.png:
        * platform/gtk/fast/forms/menulist-deselect-update-expected.txt:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.checksum:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.png:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.txt:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.checksum:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.png:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.txt:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.checksum:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.checksum:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.png:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.txt:
        * platform/gtk/fast/forms/menulist-style-color-expected.checksum:
        * platform/gtk/fast/forms/menulist-style-color-expected.png:
        * platform/gtk/fast/forms/menulist-style-color-expected.txt:
        * platform/gtk/fast/forms/menulist-width-change-expected.checksum:
        * platform/gtk/fast/forms/menulist-width-change-expected.png:
        * platform/gtk/fast/forms/menulist-width-change-expected.txt:
        * platform/gtk/fast/forms/option-script-expected.checksum:
        * platform/gtk/fast/forms/option-script-expected.png:
        * platform/gtk/fast/forms/option-script-expected.txt:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.checksum:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.png:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.txt:
        * platform/gtk/fast/forms/option-text-clip-expected.checksum:
        * platform/gtk/fast/forms/option-text-clip-expected.png:
        * platform/gtk/fast/forms/option-text-clip-expected.txt:
        * platform/gtk/fast/forms/select-align-expected.checksum:
        * platform/gtk/fast/forms/select-align-expected.png:
        * platform/gtk/fast/forms/select-align-expected.txt:
        * platform/gtk/fast/forms/select-baseline-expected.checksum:
        * platform/gtk/fast/forms/select-baseline-expected.png:
        * platform/gtk/fast/forms/select-baseline-expected.txt:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.checksum:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.png:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.txt:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.checksum:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.png:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.checksum:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.png:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.txt:
        * platform/gtk/fast/forms/select-initial-position-expected.checksum:
        * platform/gtk/fast/forms/select-initial-position-expected.png:
        * platform/gtk/fast/forms/select-initial-position-expected.txt:
        * platform/gtk/fast/forms/select-selected-expected.checksum:
        * platform/gtk/fast/forms/select-selected-expected.png:
        * platform/gtk/fast/forms/select-selected-expected.txt:
        * platform/gtk/fast/forms/select-size-expected.checksum:
        * platform/gtk/fast/forms/select-size-expected.png:
        * platform/gtk/fast/forms/select-size-expected.txt:
        * platform/gtk/fast/forms/select-style-expected.checksum:
        * platform/gtk/fast/forms/select-style-expected.png:
        * platform/gtk/fast/forms/select-style-expected.txt:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.checksum:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.png:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.txt:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.checksum:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.png:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.txt:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.checksum:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.png:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.txt:
2011-01-21  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] Menulist text often collides with separator
        https://bugs.webkit.org/show_bug.cgi?id=51155

        Move menulist rendering to RenderThemeGtk and correct padding code
        for separators in menulists.

        * platform/gtk/RenderThemeGtk.cpp:
        (WebCore::RenderThemeGtk::RenderThemeGtk): Initialize new widget members.
        (WebCore::RenderThemeGtk::getComboBoxSeparatorWidth): Added.
        (WebCore::RenderThemeGtk::comboBoxArrowSize): Added.
        (WebCore::getButtonInnerBorder): Added.
        (WebCore::RenderThemeGtk::getComboBoxPadding): Do this manually instead of using
        Mozilla code.
        (WebCore::RenderThemeGtk::paintMenuList): Ditto.
        (WebCore::setupWidget): Abstracted this part of the setupWidgetAndAddToContainer
        out to handle child widgets of comboboxes.
        (WebCore::RenderThemeGtk::setupWidgetAndAddToContainer): Abstracted out setupWidget.
        (WebCore::RenderThemeGtk::gtkContainer): Added.
        (WebCore::getGtkComboBoxButton): Added.
        (WebCore::getGtkComboBoxPieces): Added.
        (WebCore::RenderThemeGtk::gtkComboBox): Call setupWidget here.
        (WebCore::RenderThemeGtk::refreshComboBoxChildren): Added.
        (WebCore::RenderThemeGtk::gtkComboBoxButton): Added.
        (WebCore::RenderThemeGtk::gtkComboBoxArrow): Added.
        (WebCore::RenderThemeGtk::gtkComboBoxSeparator): Added.
        * platform/gtk/RenderThemeGtk.h: Added new members and methods.
        * platform/gtk/WidgetRenderingContext.h: Added new members and methods.
        * platform/gtk/WidgetRenderingContextGtk2.cpp:
        (WebCore::WidgetRenderingContext::gtkPaintArrow):
        (WebCore::WidgetRenderingContext::gtkPaintVLine):
        * platform/gtk/WidgetRenderingContextGtk3.cpp:
        (WebCore::WidgetRenderingContext::gtkPaintArrow):
        (WebCore::WidgetRenderingContext::gtkPaintVLine):
        * platform/gtk/gtk2drawing.c: Removed code for drawing menulists and buttons.
        (moz_gtk_init):
        (moz_gtk_get_widget_border):
        (moz_gtk_widget_paint):
        * platform/gtk/gtk3drawing.c:
        (moz_gtk_init):
        (moz_gtk_get_widget_border):
        (moz_gtk_widget_paint):
        * platform/gtk/gtkdrawing.h:

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

10 years agoFix chromium mac build.
weinig@apple.com [Fri, 21 Jan 2011 21:17:01 +0000 (21:17 +0000)]
Fix chromium mac build.

* platform/chromium/ScrollbarThemeChromiumMac.mm:
(WebCore::scrollbarStateToThemeState):
(WebCore::ScrollbarThemeChromiumMac::paint):

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

10 years agoUnreviewed trivial fix.
ossy@webkit.org [Fri, 21 Jan 2011 21:10:12 +0000 (21:10 +0000)]
Unreviewed trivial fix.

FrameLoader::checkLoadCompleteForThisFrame uses wrong history item
https://bugs.webkit.org/show_bug.cgi?id=48812

* platform/qt/http/tests/navigation/forward-and-cancel-expected.txt: Updated after r76357.

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

10 years agoFix the windows build.
weinig@apple.com [Fri, 21 Jan 2011 21:08:45 +0000 (21:08 +0000)]
Fix the windows build.

* platform/ScrollbarThemeComposite.cpp:
(WebCore::ScrollbarThemeComposite::paint):

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

10 years agoSkip transitions/transition-end-event-destroy-iframe.html on Windows in order to...
jberlin@webkit.org [Fri, 21 Jan 2011 21:02:27 +0000 (21:02 +0000)]
Skip transitions/transition-end-event-destroy-iframe.html on Windows in order to get the
Windows 7 Release bots green. Unreviewed.
https://bugs.webkit.org/show_bug.cgi?id=52913

* platform/win/Skipped:

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

10 years ago2011-01-21 Ryosuke Niwa <rniwa@webkit.org>
rniwa@webkit.org [Fri, 21 Jan 2011 20:54:26 +0000 (20:54 +0000)]
2011-01-21  Ryosuke Niwa  <rniwa@webkit.org>

        Unreviewed; another Chromium build fix attempt for r76378.

        * src/WebScrollbarImpl.cpp:
        (WebKit::WebScrollbar::create):
        (WebKit::WebScrollbarImpl::WebScrollbarImpl):
        (WebKit::WebScrollbarImpl::setValue):

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

10 years ago2011-01-21 Ryosuke Niwa <rniwa@webkit.org>
rniwa@webkit.org [Fri, 21 Jan 2011 20:42:06 +0000 (20:42 +0000)]
2011-01-21  Ryosuke Niwa  <rniwa@webkit.org>

        Unreviewed Chromium build fix attempt for r76378.

        * src/WebScrollbarImpl.cpp:
        (WebKit::WebScrollbar::create):
        (WebKit::WebScrollbarImpl::WebScrollbarImpl):

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

10 years ago2011-01-21 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Fri, 21 Jan 2011 20:34:38 +0000 (20:34 +0000)]
2011-01-21  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Sam Weinig.

        Skip another test that is failing sporadically on the buildbots
        https://bugs.webkit.org/show_bug.cgi?id=52908

        * platform/mac-wk2/Skipped:

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

10 years ago2011-01-21 Chris Rogers <crogers@google.com>
crogers@google.com [Fri, 21 Jan 2011 20:29:33 +0000 (20:29 +0000)]
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Kenneth Russell.

        Add chromium bundled audio spatialization resources to WebAudio.grd
        https://bugs.webkit.org/show_bug.cgi?id=52651

        * WebKit.grd:
2011-01-21  Chris Rogers  <crogers@google.com>

        Reviewed by Kenneth Russell.

        Add chromium bundled audio spatialization resources to WebAudio.grd
        https://bugs.webkit.org/show_bug.cgi?id=52651

        No new tests since audio API is not yet implemented.

        * WebCore.gyp/WebCore.gyp:
        * platform/audio/chromium/AudioBusChromium.cpp:
        (WebCore::AudioBus::loadPlatformResource):

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

10 years ago2011-01-21 Xiyuan Xia <xiyuan@chromium.org>
commit-queue@webkit.org [Fri, 21 Jan 2011 20:26:01 +0000 (20:26 +0000)]
2011-01-21  Xiyuan Xia  <xiyuan@chromium.org>

        Reviewed by Tony Chang.

        Update chromium/linux baselines after drawing code moved into
        WebThemeEngine.
        https://bugs.webkit.org/show_bug.cgi?id=52826

        * platform/chromium-linux/css1/box_properties/acid_test-expected.checksum:
        * platform/chromium-linux/css1/box_properties/acid_test-expected.png:
        * platform/chromium-linux/css2.1/t09-c5526c-display-00-e-expected.checksum:
        * platform/chromium-linux/css2.1/t09-c5526c-display-00-e-expected.png:
        * platform/chromium-linux/fast/block/basic/011-expected.checksum:
        * platform/chromium-linux/fast/block/basic/011-expected.png:
        * platform/chromium-linux/fast/block/margin-collapse/103-expected.checksum:
        * platform/chromium-linux/fast/block/margin-collapse/103-expected.png:
        * platform/chromium-linux/fast/css/non-standard-checkbox-size-expected.checksum:
        * platform/chromium-linux/fast/css/non-standard-checkbox-size-expected.png:
        * platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-expected.checksum:
        * platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-expected.png:
        * platform/chromium-linux/fast/forms/basic-inputs-expected.checksum:
        * platform/chromium-linux/fast/forms/basic-inputs-expected.png:
        * platform/chromium-linux/fast/forms/basic-selects-expected.checksum:
        * platform/chromium-linux/fast/forms/basic-selects-expected.png:
        * platform/chromium-linux/fast/forms/box-shadow-override-expected.checksum:
        * platform/chromium-linux/fast/forms/box-shadow-override-expected.png:
        * platform/chromium-linux/fast/forms/checkbox-radio-onchange-expected.checksum:
        * platform/chromium-linux/fast/forms/checkbox-radio-onchange-expected.png:
        * platform/chromium-linux/fast/forms/file-input-disabled-expected.checksum:
        * platform/chromium-linux/fast/forms/file-input-disabled-expected.png:
        * platform/chromium-linux/fast/forms/form-element-geometry-expected.checksum:
        * platform/chromium-linux/fast/forms/form-element-geometry-expected.png:
        * platform/chromium-linux/fast/forms/formmove-expected.checksum:
        * platform/chromium-linux/fast/forms/formmove-expected.png:
        * platform/chromium-linux/fast/forms/formmove2-expected.checksum:
        * platform/chromium-linux/fast/forms/formmove2-expected.png:
        * platform/chromium-linux/fast/forms/indeterminate-expected.checksum:
        * platform/chromium-linux/fast/forms/indeterminate-expected.png:
        * platform/chromium-linux/fast/forms/input-appearance-height-expected.checksum:
        * platform/chromium-linux/fast/forms/input-appearance-height-expected.png:
        * platform/chromium-linux/fast/forms/input-value-expected.checksum:
        * platform/chromium-linux/fast/forms/input-value-expected.png:
        * platform/chromium-linux/fast/forms/menulist-restrict-line-height-expected.checksum:
        * platform/chromium-linux/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/chromium-linux/fast/forms/menulist-style-color-expected.checksum:
        * platform/chromium-linux/fast/forms/menulist-style-color-expected.png:
        * platform/chromium-linux/fast/forms/placeholder-position-expected.checksum:
        * platform/chromium-linux/fast/forms/placeholder-position-expected.png: Added property svn:mime-type.
        * platform/chromium-linux/fast/forms/radio-attr-order-expected.checksum:
        * platform/chromium-linux/fast/forms/radio-attr-order-expected.png:
        * platform/chromium-linux/fast/forms/radio-nested-labels-expected.checksum:
        * platform/chromium-linux/fast/forms/radio-nested-labels-expected.png:
        * platform/chromium-linux/fast/forms/radio_checked-expected.checksum:
        * platform/chromium-linux/fast/forms/radio_checked-expected.png:
        * platform/chromium-linux/fast/forms/radio_checked_dynamic-expected.checksum:
        * platform/chromium-linux/fast/forms/radio_checked_dynamic-expected.png:
        * platform/chromium-linux/fast/forms/select-baseline-expected.checksum:
        * platform/chromium-linux/fast/forms/select-baseline-expected.png:
        * platform/chromium-linux/fast/inline/positionedLifetime-expected.checksum:
        * platform/chromium-linux/fast/inline/positionedLifetime-expected.png:
        * platform/chromium-linux/fast/parser/bad-xml-slash-expected.checksum:
        * platform/chromium-linux/fast/parser/bad-xml-slash-expected.png:
        * platform/chromium-linux/fast/replaced/replaced-breaking-expected.checksum:
        * platform/chromium-linux/fast/replaced/replaced-breaking-expected.png:
        * platform/chromium-linux/fast/replaced/width100percent-checkbox-expected.checksum:
        * platform/chromium-linux/fast/replaced/width100percent-checkbox-expected.png:
        * platform/chromium-linux/fast/text/textIteratorNilRenderer-expected.checksum:
        * platform/chromium-linux/fast/text/textIteratorNilRenderer-expected.png:
        * platform/chromium-linux/fast/text/whitespace/normal-after-nowrap-breaking-expected.checksum:
        * platform/chromium-linux/fast/text/whitespace/normal-after-nowrap-breaking-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug1318-expected.checksum:
        * platform/chromium-linux/tables/mozilla/bugs/bug1318-expected.png:
        * platform/chromium-linux/tables/mozilla/bugs/bug4527-expected.checksum:
        * platform/chromium-linux/tables/mozilla/bugs/bug4527-expected.png: Added property svn:mime-type.
        * platform/chromium-linux/tables/mozilla_expected_failures/core/captions1-expected.checksum:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/captions1-expected.png:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/captions2-expected.checksum:
        * platform/chromium-linux/tables/mozilla_expected_failures/core/captions2-expected.png:
2011-01-21  Xiyuan Xia  <xiyuan@chromium.org>

        Reviewed by Tony Chang.

        Use WebThemeEngine for relevant RenderTheme parts for chromium/linux.
        https://bugs.webkit.org/show_bug.cgi?id=52826

        * platform/chromium/ChromiumBridge.h:
        * rendering/RenderThemeChromiumLinux.cpp:
        (WebCore::getWebThemeState):
        (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
        (WebCore::RenderThemeChromiumLinux::paintCheckbox):
        (WebCore::RenderThemeChromiumLinux::setCheckboxSize):
        (WebCore::RenderThemeChromiumLinux::paintRadio):
        (WebCore::RenderThemeChromiumLinux::setRadioSize):
        (WebCore::RenderThemeChromiumLinux::paintButton):
        (WebCore::RenderThemeChromiumLinux::paintTextField):
        (WebCore::RenderThemeChromiumLinux::paintMenuList):
        (WebCore::RenderThemeChromiumLinux::paintSliderTrack):
        (WebCore::RenderThemeChromiumLinux::paintSliderThumb):
        (WebCore::RenderThemeChromiumLinux::adjustInnerSpinButtonStyle):
        (WebCore::RenderThemeChromiumLinux::paintInnerSpinButton):
        (WebCore::RenderThemeChromiumLinux::paintProgressBar):
        * rendering/RenderThemeChromiumLinux.h:
        * rendering/RenderThemeChromiumSkia.cpp:
        (WebCore::RenderThemeChromiumSkia::setCheckboxSize):
        (WebCore::RenderThemeChromiumSkia::setSizeIfAuto):
        (WebCore::RenderThemeChromiumSkia::indeterminateProgressValueRectFor):
        * rendering/RenderThemeChromiumSkia.h:
2011-01-21  Xiyuan Xia  <xiyuan@chromium.org>

        Reviewed by Tony Chang.

        Use WebThemeEngine for relevant RenderTheme parts for chromium/linux.
        https://bugs.webkit.org/show_bug.cgi?id=52826

        * WebKit.gyp:
        * src/ChromiumBridge.cpp:
        (WebCore::WebThemePart):
        (WebCore::GetWebThemeExtraParams):

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

10 years agoPart 2 of "Cleanup Scrollbar/ScrollbarClient relationship"
weinig@apple.com [Fri, 21 Jan 2011 20:15:04 +0000 (20:15 +0000)]
Part 2 of "Cleanup Scrollbar/ScrollbarClient relationship"
https://bugs.webkit.org/show_bug.cgi?id=52779

Reviewed by Anders Carlsson.

Rename ScrollbarClient -> ScrollableArea.

Source/WebCore:

- Also replaces Scrollbar::setClient with Scrollbar::disconnectFromScrollableArea
  since that was its only use case.

* CMakeLists.txt:
* GNUmakefile.am:
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* accessibility/AccessibilityScrollbar.cpp:
(WebCore::AccessibilityScrollbar::setValue):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
* page/FrameView.h:
* platform/PopupMenuClient.h:
* platform/ScrollAnimator.cpp:
(WebCore::ScrollAnimator::create):
(WebCore::ScrollAnimator::ScrollAnimator):
(WebCore::ScrollAnimator::scroll):
(WebCore::ScrollAnimator::notityPositionChanged):
* platform/ScrollAnimator.h:
* platform/ScrollAnimatorWin.cpp:
(WebCore::ScrollAnimator::create):
(WebCore::ScrollAnimatorWin::ScrollAnimatorWin):
(WebCore::ScrollAnimatorWin::scroll):
* platform/ScrollAnimatorWin.h:
* platform/ScrollView.cpp:
(WebCore::ScrollView::scroll):
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::wheelEvent):
* platform/ScrollView.h:
* platform/ScrollableArea.cpp: Copied from WebCore/platform/ScrollbarClient.cpp.
(WebCore::ScrollableArea::ScrollableArea):
(WebCore::ScrollableArea::~ScrollableArea):
(WebCore::ScrollableArea::scroll):
(WebCore::ScrollableArea::scrollToOffsetWithoutAnimation):
(WebCore::ScrollableArea::scrollToXOffsetWithoutAnimation):
(WebCore::ScrollableArea::scrollToYOffsetWithoutAnimation):
(WebCore::ScrollableArea::setScrollOffsetFromAnimation):
* platform/ScrollableArea.h: Copied from WebCore/platform/ScrollbarClient.h.
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::createNativeScrollbar):
(WebCore::Scrollbar::Scrollbar):
(WebCore::Scrollbar::offsetDidChange):
(WebCore::Scrollbar::autoscrollPressedPart):
(WebCore::Scrollbar::moveThumb):
(WebCore::Scrollbar::mouseMoved):
(WebCore::Scrollbar::isWindowActive):
(WebCore::Scrollbar::invalidateRect):
(WebCore::Scrollbar::convertToContainingView):
(WebCore::Scrollbar::convertFromContainingView):
* platform/Scrollbar.h:
(WebCore::Scrollbar::disconnectFromScrollableArea):
(WebCore::Scrollbar::scrollableArea):
* platform/ScrollbarClient.cpp: Removed.
* platform/ScrollbarClient.h: Removed.
* platform/ScrollbarThemeComposite.cpp:
* platform/chromium/FramelessScrollView.h:
* platform/chromium/ScrollbarThemeChromium.cpp:
(WebCore::ScrollbarThemeChromium::paintTickmarks):
* platform/efl/ScrollbarEfl.cpp:
(Scrollbar::createNativeScrollbar):
(ScrollbarEfl::ScrollbarEfl):
(scrollbarEflEdjeMessage):
* platform/efl/ScrollbarEfl.h:
* platform/gtk/MainFrameScrollbarGtk.cpp:
(MainFrameScrollbarGtk::create):
(MainFrameScrollbarGtk::MainFrameScrollbarGtk):
(MainFrameScrollbarGtk::gtkValueChanged):
* platform/gtk/MainFrameScrollbarGtk.h:
* platform/mac/ScrollAnimatorMac.h:
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimator::create):
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::scroll):
* platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::paint):
* platform/qt/ScrollbarQt.cpp:
(WebCore::Scrollbar::contextMenu):
* platform/win/PopupMenuWin.cpp:
(WebCore::PopupMenuWin::scrollToRevealSelection):
(WebCore::PopupMenuWin::wndProc):
* platform/win/PopupMenuWin.h:
* platform/win/ScrollbarThemeSafari.cpp:
(WebCore::ScrollbarThemeSafari::paintTrackBackground):
(WebCore::ScrollbarThemeSafari::paintButton):
(WebCore::ScrollbarThemeSafari::paintThumb):
* platform/wx/ScrollbarThemeWx.cpp:
(WebCore::ScrollbarThemeWx::paint):
* rendering/RenderDataGrid.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollToOffset):
(WebCore::RenderLayer::destroyScrollbar):
(WebCore::RenderLayer::scroll):
* rendering/RenderLayer.h:
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::scrollToRevealElementAtListIndex):
(WebCore::RenderListBox::scroll):
(WebCore::RenderListBox::logicalScroll):
(WebCore::RenderListBox::setScrollTop):
(WebCore::RenderListBox::destroyScrollbar):
* rendering/RenderListBox.h:
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::createScrollbar):
* rendering/RenderMenuList.h:
* rendering/RenderScrollbar.cpp:
(WebCore::RenderScrollbar::createCustomScrollbar):
(WebCore::RenderScrollbar::RenderScrollbar):
* rendering/RenderScrollbar.h:
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::createScrollbar):
* rendering/RenderTextControlSingleLine.h:

Source/WebKit/chromium:

* src/AutoFillPopupMenuClient.cpp:
(WebKit::AutoFillPopupMenuClient::createScrollbar):
* src/AutoFillPopupMenuClient.h:
* src/WebScrollbarImpl.cpp:
(WebKit::WebScrollbarImpl::WebScrollbarImpl):
(WebKit::WebScrollbarImpl::scroll):
(WebKit::WebScrollbarImpl::onMouseWheel):
(WebKit::WebScrollbarImpl::onKeyDown):
* src/WebScrollbarImpl.h:
* tests/PopupMenuTest.cpp:
(WebKit::TestPopupMenuClient::createScrollbar):

Source/WebKit/qt:

* Api/qwebframe.cpp:
(QWebFrame::setScrollBarValue):

Source/WebKit/win:

* WebScrollBar.cpp:
(WebScrollBar::scroll):
* WebScrollBar.h:

Source/WebKit2:

* UIProcess/win/WebPopupMenuProxyWin.cpp:
(WebKit::WebPopupMenuProxyWin::onMouseWheel):
(WebKit::WebPopupMenuProxyWin::scrollToRevealSelection):
* UIProcess/win/WebPopupMenuProxyWin.h:

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

10 years ago2011-01-21 Sailesh Agrawal <sail@chromium.org>
commit-queue@webkit.org [Fri, 21 Jan 2011 20:13:23 +0000 (20:13 +0000)]
2011-01-21  Sailesh Agrawal  <sail@chromium.org>

        Reviewed by Ryosuke Niwa.

        [chromium] Notify WebFrameClient when spellcheck state changes
        https://bugs.webkit.org/show_bug.cgi?id=52680

        * public/WebFrameClient.h:
        (WebKit::WebFrameClient::continuousSpellCheckingEnabledStateChanged):
        * src/EditorClientImpl.cpp:
        (WebKit::EditorClientImpl::toggleContinuousSpellChecking):
        * src/WebFrameImpl.cpp:

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

10 years ago2011-01-21 Peter Gal <galpeter@inf.u-szeged.hu>
commit-queue@webkit.org [Fri, 21 Jan 2011 20:01:11 +0000 (20:01 +0000)]
2011-01-21  Peter Gal  <galpeter@inf.u-szeged.hu>

        Reviewed by Darin Adler.

        REGRESSION(r76177): All JavaScriptCore tests fail on ARM
        https://bugs.webkit.org/show_bug.cgi?id=52814

        Get the approximateByteSize value before releasing the OwnPtr.

        * parser/JSParser.cpp:
        (JSC::JSParser::parseFunctionInfo):

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

10 years agoFix Leopard build.
darin@apple.com [Fri, 21 Jan 2011 19:51:53 +0000 (19:51 +0000)]
Fix Leopard build.

* rendering/mathml/RenderMathMLFraction.cpp:
(WebCore::RenderMathMLFraction::layout): Use ceilf instead of ceil.

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

10 years ago2011-01-21 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 21 Jan 2011 19:44:27 +0000 (19:44 +0000)]
2011-01-21  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Sam Weinig.

        GraphicsLayer should be non-copyable
        https://bugs.webkit.org/show_bug.cgi?id=52909

        Use WTF_MAKE_NONCOPYABLE on GraphicsLayer, and WTF_MAKE_FAST_ALLOCATED
        on that and KeyframeValueList.

        * platform/graphics/GraphicsLayer.h:

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

10 years ago2011-01-21 Anton Muhin <antonm@chromium.org>
antonm@chromium.org [Fri, 21 Jan 2011 19:40:02 +0000 (19:40 +0000)]
2011-01-21  Anton Muhin  <antonm@chromium.org>

        Reviewed by Nate Chapin.

        [v8] Properly deal with the case when conversion to string throws an exception for HTMLCollection accessors
        https://bugs.webkit.org/show_bug.cgi?id=52901

        * fast/dom/htmlcollection-conversion-throws-exception-expected.txt: Added.
        * fast/dom/htmlcollection-conversion-throws-exception.html: Added.
2011-01-21  Anton Muhin  <antonm@chromium.org>

        Reviewed by Nate Chapin.

        [v8] Properly deal with the case when conversion to string throws an exception for HTMLCollection accessors
        https://bugs.webkit.org/show_bug.cgi?id=52901

        Test: fast/dom/htmlcollection-conversion-throws-exception.html

        * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
        (WebCore::getItem):

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

10 years agoSeparate flushing layer changes from rendering in CACFLayerTreeHost
aroben@apple.com [Fri, 21 Jan 2011 19:35:43 +0000 (19:35 +0000)]
Separate flushing layer changes from rendering in CACFLayerTreeHost

Old model:
  1) A change is made to a GraphicsLayer.
  2) CACFLayerTreeHost::flushPendingGraphicsLayerChangesSoon is called, which schedules the
     render timer.
  3) The timer fires, which calls through to CACFLayerTreeHost::render, which performs the
     flush and then renders.

New model:
  1) A change is made to a GraphicsLayer.
  2) CACFLayerTreeHost::flushPendingGraphicsLayerChangesSoon is called, which tells the new
     LayerChangesFlusher singleton that this host has changes that need to be flushed.
  3) LayerChangesFlusher sets up a Windows hook that will get called on the next iteration
     of the message loop.
  4) LayerChangesFlusher's hook is called, which calls through to
     CACFLayerTreeHost::flushPendingLayerChangesNow.
  5) CACFLayerTreeHost::flushPendingLayerChangesNow schedules the render timer so the changes
     that were just flushed to the context will be rendered.

When a change is made to a PlatformCALayer that doesn't have a corresponding GraphicsLayer
(e.g., for rendering <video>), CACFLayerTreeHost::layerTreeDidChange takes care of
scheduling the flush.

This change has three advantages:
  1) Whenever we flush layer changes, we first update layout. This can cause the page to
     leave compositing mode, which in turn can cause all references to the CACFLayerTreeHost
     to be dropped. By separating flushing (and thus updating layout) from rendering, we no
     longer have to worry about this happen during rendering.
  2) The new model is much more similar to how things work on the Mac, so will hopefully
     reduce the number of platform-specific bugs.
  3) CACFLayerTreeHost::shouldRender, which was used to make sure we didn't render while a
     layout was pending, is no longer needed. It actually hasn't been needed since at least
     r75987, but removing it before now would have resulted in a crash whenever a page came
     out of compositing mode due to (1).

Fixes <http://webkit.org/b/52852> Flushing layer changes and rendering are intertwined in
CACFLayerTreeHost, but shouldn't be

Reviewed by Simon Fraser.

Source/WebCore:

* WebCore.vcproj/WebCore.vcproj: Added LayerChangesFlusher.

* platform/graphics/ca/win/CACFLayerTreeHost.cpp: Added new #include, sorted existing
 #includes.
(WebCore::CACFLayerTreeHost::CACFLayerTreeHost): Initialize new member.
(WebCore::CACFLayerTreeHost::layerTreeDidChange): If we aren't already flushing changes,
schedule a flush. Removed the call to renderSoon(), which now happens when the flush is
finished.
(WebCore::CACFLayerTreeHost::destroyRenderer): Cancel any pending flush we had scheduled. Also
fixed a bug where we'd fail to clear the context's layer.
(WebCore::CACFLayerTreeHost::render): Removed code to ask the client if we should render, which
is no longer needed. Moved code to flush layer changes from here to
flushPendingLayerChangesNow, which is called via the above-described mechanism.
(WebCore::CACFLayerTreeHost::flushPendingGraphicsLayerChangesSoon): Schedule a flush. Removed
code to schedule a render, which now happens after we've flushed.
(WebCore::CACFLayerTreeHost::flushPendingLayerChangesNow): Added. Some of this code came from
render(). First we flush GraphicsLayer changes from GraphicsLayers to their underlying
PlatformCALayers, then we flush changes from PlatformCALayers to the context, then we
schedule a render so that the changes will be rendered to the screen.

* platform/graphics/ca/win/CACFLayerTreeHost.h: Removed
CACFLayerTreeHostClient::shouldRender. Added flushPendingLayerChangesNow and
m_isFlushingLayerChanges.

* platform/graphics/ca/win/LayerChangesFlusher.cpp: Added.
(WebCore::LayerChangesFlusher::shared):
(WebCore::LayerChangesFlusher::LayerChangesFlusher):
(WebCore::LayerChangesFlusher::flushPendingLayerChangesSoon):
(WebCore::LayerChangesFlusher::cancelPendingFlush):
(WebCore::LayerChangesFlusher::hookCallback):
(WebCore::LayerChangesFlusher::hookFired):
(WebCore::LayerChangesFlusher::setHook):
(WebCore::LayerChangesFlusher::removeHook):

* platform/graphics/ca/win/LayerChangesFlusher.cpp: Added.
(WebCore::LayerChangesFlusher::shared): Returns the singleton.
(WebCore::LayerChangesFlusher::LayerChangesFlusher): Initialize our members.
(WebCore::LayerChangesFlusher::flushPendingLayerChangesSoon): Add the host to the set of
hosts with changes that need to be flushed, and set up our hook if we haven't already.
(WebCore::LayerChangesFlusher::cancelPendingFlush): Remove the host from the set of hosts
with changes that need to be flushed. If we have no more such hosts, remove our hook, unless
we're currently in the process of calling out to our hosts, in which case we'll take care of
the hook once we're done calling out.
(WebCore::LayerChangesFlusher::hookCallback): This is the function that Windows calls when
our hook fires. Just calls through to hookFired on the singleton.
(WebCore::LayerChangesFlusher::hookFired): Tell all the hosts with changes that needed to be
flushed that it's time to flush. If no hosts re-added themselves to our set during this
process, remove our hook.
(WebCore::LayerChangesFlusher::setHook): Calls through to ::SetWindowsHookExW.
(WebCore::LayerChangesFlusher::removeHook): Calls through to ::UnhookWindowsHookEx.

* platform/graphics/ca/win/LayerChangesFlusher.h: Added.

Source/WebKit/win:

Update for CACFLayerTreeHost changes

* WebView.cpp:
(WebView::paint): Changed to flush layer changes via CACFLayerTreeHost, which will call back
to our own flushing function if needed.

* WebView.h: Removed shouldRender, which is no longer used or needed.

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

10 years ago2011-01-21 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 21 Jan 2011 19:33:41 +0000 (19:33 +0000)]
2011-01-21  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Sam Weinig.

        Report the sized used by canvases and types arrays
        https://bugs.webkit.org/show_bug.cgi?id=52856

        Report the memory cost associated with canvas elements,
        and typed arrays to JavaScript as extraCost, so that it
        can figure this into its GC behavior.

        * bindings/js/JSArrayBufferViewHelper.h:
        (WebCore::toJSArrayBufferView): New templatized function, similar
        to getDOMObjectWrapper() but calls reportExtraMemoryCost() with
        the byteLength of the array.

        * bindings/js/JSFloat32ArrayCustom.cpp:
        (WebCore::toJS): Use toJSArrayBufferView.
        * bindings/js/JSInt16ArrayCustom.cpp:
        (WebCore::toJS): Use toJSArrayBufferView.
        * bindings/js/JSInt32ArrayCustom.cpp:
        (WebCore::toJS): Use toJSArrayBufferView.
        * bindings/js/JSInt8ArrayCustom.cpp:
        (WebCore::toJS): Use toJSArrayBufferView.
        * bindings/js/JSUint16ArrayCustom.cpp:
        (WebCore::toJS): Use toJSArrayBufferView.
        * bindings/js/JSUint32ArrayCustom.cpp:
        (WebCore::toJS): Use toJSArrayBufferView.
        * bindings/js/JSUint8ArrayCustom.cpp:
        (WebCore::toJS): Use toJSArrayBufferView.

        * html/HTMLCanvasElement.cpp:
        (WebCore::HTMLCanvasElement::createImageBuffer): Call heap.reportExtraMemoryCost()
        with the size of the canvas backing store.

        * html/canvas/TypedArrayBase.h:
        (WebCore::TypedArrayBase::byteLength): byteLength needs to
        be public.

        * platform/graphics/ImageBuffer.h: Add dataSize() method.

        * platform/graphics/cairo/ImageBufferCairo.cpp:
        (WebCore::ImageBuffer::dataSize): Implement dataSize().
        * platform/graphics/cg/ImageBufferCG.cpp:
        (WebCore::ImageBuffer::dataSize): Implement dataSize().
        * platform/graphics/haiku/ImageBufferHaiku.cpp:
        (WebCore::ImageBuffer::dataSize): Implement dataSize().
        * platform/graphics/qt/ImageBufferQt.cpp:
        (WebCore::ImageBuffer::dataSize): Implement dataSize().
        * platform/graphics/skia/ImageBufferSkia.cpp:
        (WebCore::ImageBuffer::dataSize): Implement dataSize().
        * platform/graphics/wince/ImageBufferWinCE.cpp:
        (WebCore::ImageBuffer::dataSize): Implement dataSize().
        * platform/graphics/wx/ImageBufferWx.cpp:
        (WebCore::ImageBuffer::dataSize): Implement dataSize().

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

10 years agoRename WKCACFLayerRenderer[Client] to CACFLayerTreeHost[Client]
aroben@apple.com [Fri, 21 Jan 2011 19:32:59 +0000 (19:32 +0000)]
Rename WKCACFLayerRenderer[Client] to CACFLayerTreeHost[Client]

Also renamed a few functions and data members to match.

Fixes <http://webkit.org/b/52898> WKCACFLayerRenderer sounds like a render object, but isn't

Reviewed by Simon Fraser.

Source/WebCore:

* WebCore.vcproj/WebCore.vcproj: Updated files' names and paths.

* WebCore.vcproj/WebCoreQuartzCore.vsprops: Added platform/graphics/ca/win to the include
path.

* WebCore.vcproj/copyForwardingHeaders.cmd: Copy headers from platform/graphics/ca/win, too.

* platform/graphics/ca/win/CACFLayerTreeHost.cpp: Renamed from Source/WebCore/platform/graphics/win/WKCACFLayerRenderer.cpp.
* platform/graphics/ca/win/CACFLayerTreeHost.h: Renamed from Source/WebCore/platform/graphics/win/WKCACFLayerRenderer.h.

* platform/graphics/ca/win/PlatformCALayerWin.cpp:
* platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
* platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
Updated for renames.

Source/WebKit/win:

Update for WKCACFLayerRenderer -> CACFLayerTreeHost rename

Also renamed WebView::m_layerRenderer to WebView::m_layerTreeHost to match.

* WebPreferences.cpp:
* WebView.cpp:
(WebView::setAcceleratedCompositing): Also made sure to remove our HWND from the layer tree
host before we get rid of the layer tree host itself.
* WebView.h:

Source/WebKit2:

Update for WKCACFLayerRenderer -> CACFLayerView rename

* WebProcess/WebPage/win/LayerBackedDrawingAreaWin.cpp: Just removed all the unnecessary
 #includes.

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

10 years ago2011-01-21 Xan Lopez <xlopez@igalia.com>
xan@webkit.org [Fri, 21 Jan 2011 19:32:27 +0000 (19:32 +0000)]
2011-01-21  Xan Lopez  <xlopez@igalia.com>

        Reviewed by Martin Robinson.

        Remove unnecessary <stdio.h> include
        https://bugs.webkit.org/show_bug.cgi?id=52884

        * jit/JIT.cpp: remove unnecessary include.

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

10 years ago2011-01-21 Patrick Gansterer <paroga@paroga.com>
commit-queue@webkit.org [Fri, 21 Jan 2011 19:27:49 +0000 (19:27 +0000)]
2011-01-21  Patrick Gansterer  <paroga@paroga.com>

        Original patch from Fran├žois Sausset  <sausset@gmail.com>

        Reviewed by Darin Adler.

        Code cleaning in rendering/mathml/RenderMathMLFraction.cpp
        https://bugs.webkit.org/show_bug.cgi?id=52201

        Replace unneeded doubles by floats and remove unneeded casts.

        * rendering/mathml/RenderMathMLFraction.cpp:
        (WebCore::RenderMathMLFraction::paint):
        * rendering/mathml/RenderMathMLFraction.h:

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

10 years agoProposal: Require cross-organizational seconds for reviewer nominations
levin@chromium.org [Fri, 21 Jan 2011 19:20:45 +0000 (19:20 +0000)]
Proposal: Require cross-organizational seconds for reviewer nominations
https://bugs.webkit.org/show_bug.cgi?id=47597

Reviewed by Darin Adler.

This changes the committer/reviewer policy to require an additional
reviewer supporting a reviewer nomination to work for a different
company and different project affiliation from the nominee.

This means reviewer nominations would require four supporting reviewers,
one of which knows the reviewer through the community (irc, email, bugs)
ensuring that the nominee has the open-source collaboration skills
we so highly value here in WebKit.

* coding/commit-review-policy.html:

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

10 years ago2011-01-21 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 21 Jan 2011 19:20:05 +0000 (19:20 +0000)]
2011-01-21  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        REGRESSION(r73618): Clicking on a search input causes a crash.
        https://bugs.webkit.org/show_bug.cgi?id=52905

        * fast/dom/search-shadow-host-crash-expected.txt: Added.
        * fast/dom/search-shadow-host-crash.html: Added.
2011-01-21  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        REGRESSION(r73618): Clicking on a search input causes a crash.
        https://bugs.webkit.org/show_bug.cgi?id=52905

        The problem is caused by TextControlInnerElement being used both as
        shadow root and an element in a shadow subtree. The code assumed it is
        only used as a shadow root.

        Since this code is all just workaround for in-progress conversion to
        new shadow DOM, I am just adding a check. This code will disappear
        completely once bug 52788 is fixed.

        Test: fast/dom/search-shadow-host-crash.html

        * dom/Node.cpp:
        (WebCore::Node::setShadowHost): Added an ASSERT for early detection
            of attempting to stomp on the parentNode.
        * rendering/TextControlInnerElements.cpp:
        (WebCore::TextControlInnerElement::detach): Added a check to only
            clear shadow host if we have one.

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

10 years ago2011-01-21 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 21 Jan 2011 19:05:01 +0000 (19:05 +0000)]
2011-01-21  Dimitri Glazkov  <dglazkov@chromium.org>

        Updated slider expectations after r76147.

        * platform/chromium/test_expectations.txt: Removed test that will start passing.
        * platform/chromium-win/fast/forms/slider-mouse-events-expected.txt: Updated expectation.

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

10 years ago2011-01-21 Xiaomei Ji <xji@chromium.org>
xji@chromium.org [Fri, 21 Jan 2011 19:00:54 +0000 (19:00 +0000)]
2011-01-21  Xiaomei Ji  <xji@chromium.org>

        Unreviewed.

        Rebaseline for leopard after r76319.

        * platform/mac-leopard/fast/dom/52776-expected.txt: Added.

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

10 years ago2011-01-21 Tony Chang <tony@chromium.org>
tony@chromium.org [Fri, 21 Jan 2011 18:50:59 +0000 (18:50 +0000)]
2011-01-21  Tony Chang  <tony@chromium.org>

        Unreviewed, updating chromium DEPS so we can pull in linux theme changes.

        * DEPS:

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

10 years ago Fix Mac build.
darin@apple.com [Fri, 21 Jan 2011 18:44:42 +0000 (18:44 +0000)]
   Fix Mac build.

* MiniBrowser/mac/BrowserWindowController.m:
(-[BrowserWindowController awakeFromNib]): Pass 0 for runModal function.

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

10 years agoWebKit2: Implement showModalDialog
darin@apple.com [Fri, 21 Jan 2011 18:41:32 +0000 (18:41 +0000)]
WebKit2: Implement showModalDialog
https://bugs.webkit.org/show_bug.cgi?id=52855

Reviewed by Dan Bernstein.

Source/WebKit2:

* Shared/WebPageCreationParameters.h: Added canRunModal.

* UIProcess/API/C/WKPage.h: Added a runModal function pointer to
WKPageUIClient. Also removed a lot of redundant typedefs and added
a new one, WKPageCallback, for callbacks without arguments or return
values.

* UIProcess/API/qt/qwkpage.cpp:
(QWKPage::QWKPage): Added a runModal function pointer of 0.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters): Set canRunModal
based on return value of WebUIClient::canRunModal.

* UIProcess/WebPageProxy.h: Added runModal.
Calls WebUIClient::runModal.

* UIProcess/WebPageProxy.messages.in: Added RunModal message.
Also removed the periods from the phrases in the comments
as Maciej requested a while back.

* UIProcess/WebUIClient.cpp:
(WebKit::WebUIClient::canRunModal): Added. Returns true or false
based on whether a runModal function was supplied in the
WKPageUIClient structure.
(WebKit::WebUIClient::runModal): Added. Calls the runModal
function from the WKPageUIClient structure.
* UIProcess/WebUIClient.h: Declared the above functions.

* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::canRunModal): Call through to WebPage.
(WebKit::WebChromeClient::runModal): Ditto.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage): Initialize m_canRunModal based on the
creation parameters. Initialize m_isRunningModal to false.
(WebKit::WebPage::close): Stop the nested run loop if we are running modal.
(WebKit::WebPage::runModal): Send a message to ask the UI process to run
modal and then start a nested run loop. It gets stopped when the page is closed.
* WebProcess/WebPage/WebPage.h: Defined the canRunModal function
and declared the runModal function.

Tools:

This fixes WebKitTestRunner to compile, but more work is probably
needed to get it to pass the tests.

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::runModal): Added. Calls through to the
platform-specific version of runModal.
(WTR::TestController::createOtherPage): Changed to be a private
static member function so it can refer to runModal, which is
a private static member function.
(WTR::TestController::initialize): Pass 0 for the runModal
function since we don't need to run the main window modal.
I suspect this is wrong and will need to change.
* WebKitTestRunner/TestController.h: Added declarations for
the functions added above.
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::runModal): Added. Untested implementation.
* WebKitTestRunner/qt/TestControllerQt.cpp:
(WTR::TestController::runModal): Added.
* WebKitTestRunner/win/TestControllerWin.cpp:
(WTR::TestController::runModal): Added.

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

10 years ago2011-01-21 Kenji Imasaki <imasaki@chromium.org>
commit-queue@webkit.org [Fri, 21 Jan 2011 18:41:15 +0000 (18:41 +0000)]
2011-01-21  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        remove non-flaky tests from test expectation file
        https://bugs.webkit.org/show_bug.cgi?id=52746

        * platform/chromium/test_expectations.txt:

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

10 years agoReplace some "sync compositing state" terminology with "flush pending GraphicsLayer...
aroben@apple.com [Fri, 21 Jan 2011 18:31:45 +0000 (18:31 +0000)]
Replace some "sync compositing state" terminology with "flush pending GraphicsLayer changes"

This seems to be the direction in which our code is moving. I chose "GraphicsLayer" as
opposed to just "layer" because there are cases where we flush changes to CACFLayers that
don't have a corresponding GraphicsLayer.

Fixes <http://webkit.org/b/52894> "Sync compositing state" terminology in
WKCACFLayerRenderer and friends is confusing

Reviewed by Simon Fraser.

Source/WebCore:

* platform/graphics/win/WKCACFLayerRenderer.cpp:
(WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
(WebCore::WKCACFLayerRenderer::render):
Updated for renames.

(WebCore::WKCACFLayerRenderer::flushPendingGraphicsLayerChangesSoon): Renamed from
syncCompositingStateSoon, and updated for other renames.

* platform/graphics/win/WKCACFLayerRenderer.h: Renamed m_syncLayerChanges to
* m_shouldFlushPendingGraphicsLayerChanges.
(WebCore::WKCACFLayerRendererClient::flushPendingGraphicsLayerChanges): Renamed from
syncCompositingState.

Source/WebKit/win:

* WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::scheduleCompositingLayerSync): Updated for WebView changes.

* WebView.cpp:
(WebView::paint): Updated for rename.
(WebView::flushPendingGraphicsLayerChangesSoon): Renamed from scheduleCompositingLayerSync.
(WebView::notifySyncRequired): Updated for rename.
(WebView::flushPendingGraphicsLayerChanges): Renamed from syncCompositingState.

* WebView.h: Did the renames.

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

10 years agoClean up PlatformCAAnimationWin
aroben@apple.com [Fri, 21 Jan 2011 18:31:02 +0000 (18:31 +0000)]
Clean up PlatformCAAnimationWin

Fixes <http://webkit.org/b/52904> PlatformCAAnimationWin is leaky and inefficient

Reviewed by Simon Fraser.

* platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
(toCACFFillModeType):
(fromCACFFillModeType):
(toCACFValueFunctionType):
(fromCACFValueFunctionType):
Changed to take and return CFStringRefs. There's no need to convert to WebCore::String just
so we can later convert back to CFStringRef.

(toCACFTimingFunction): Fixed leaks by changing this to return a RetainPtr and adopting the
results of CACFTimingFunctionCreate.
(PlatformCAAnimation::PlatformCAAnimation): Changed not to needlessly roundtrip through
WebCore::String. Also changed an ASSERT(0) to ASSERT_NOT_REACHED().

(PlatformCAAnimation::setFillMode):
(PlatformCAAnimation::setTimingFunction):
(PlatformCAAnimation::setValueFunction):
(PlatformCAAnimation::setTimingFunctions):
Updated for changes to the above conversion functions.

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