Timeline



May 2, 2012:

11:43 PM Changeset in webkit [115942] by tomz@codeaurora.org
  • 4 edits
    2 adds in trunk

Need tests for PerfTestRunner.computeStatistics
https://bugs.webkit.org/show_bug.cgi?id=85410

Reviewed by Ryosuke Niwa.

PerformanceTests:

  • resources/runner.js:

LayoutTests:

  • fast/harness/perftests/perf-runner-compute-statistics-expected.txt: Added.
  • fast/harness/perftests/perf-runner-compute-statistics.html: Added.
  • platform/chromium/test_expectations.txt:
11:41 PM PrefixedAPIs edited by kihong.kwon@samsung.com
(diff)
11:40 PM Changeset in webkit [115941] by Csaba Osztrogonác
  • 4 edits
    1 add in trunk/LayoutTests

[Qt] Unreviewed morning gardening.

  • platform/qt-5.0/Skipped:
  • platform/qt-5.0/fast/forms/search-rtl-expected.png: Added.
  • platform/qt-5.0/fast/forms/search-rtl-expected.txt:
  • platform/qt/Skipped:
11:10 PM Changeset in webkit [115940] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

[Qt]r57240 broke Qt build (gcc bug)
https://bugs.webkit.org/show_bug.cgi?id=37253

Patch by Lauro Neto <lauro.neto@openbossa.org> on 2012-05-02
Reviewed by Csaba Osztrogonác.

Add back the inline hack just for ARM due to old version of
gcc still being used on Harmattan SDK. Thanks to Ossy for the
suggestion.

  • wtf/PassRefPtr.h:

(WTF):

10:51 PM Changeset in webkit [115939] by Csaba Osztrogonác
  • 10 edits in trunk/Source

Unreviewed, rolling out r115907.
http://trac.webkit.org/changeset/115907
https://bugs.webkit.org/show_bug.cgi?id=85458

It broke all viewport tests on Qt and on GTK (Requested by
Ossy on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-02

Source/WebCore:

  • dom/ViewportArguments.cpp:

(WebCore::computeViewportAttributes):

  • dom/ViewportArguments.h:

(ViewportAttributes):

Source/WebKit/qt:

  • Api/qwebpage.cpp:

(QWebPage::viewportAttributesForSize):

  • Api/qwebpage.h:
  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::viewportAsText):

Source/WebKit2:

  • UIProcess/API/qt/qwebviewportinfo.cpp:

(QWebViewportInfo::layoutSize):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::sendViewportAttributesChanged):
(WebKit::WebPage::viewportConfigurationAsText):

10:45 PM Changeset in webkit [115938] by eric@webkit.org
  • 2 edits in trunk/WebKitLibraries

Resort FeatureDefinesCairo.vcprops to actually be alphabetical (in preparation for autogeneration)
https://bugs.webkit.org/show_bug.cgi?id=85454

Reviewed by Adam Barth.

The PreprocessorDefinitions line is still not sorted, but I'll do that in a separate patch.
There is no functional change in this patch. Just moving the defines around.
Its interesting to me that now that it's sorted and I can easily compare this with other
ports and found that a whole bunch of defines which should be on for Cairo are off,
likely due to Cairo simply being overlooked. These oversights should be easy to avoid
in an autogenerated world.

  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
10:03 PM Changeset in webkit [115937] by caseq@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Adjusted expectations for slow tests.

  • platform/chromium/test_expectations.txt:
9:50 PM Changeset in webkit [115936] by caseq@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Removed entry for fast/dom/prototype-inheritance-2.html to keep lint happy.

  • platform/chromium/test_expectations.txt:
9:07 PM Changeset in webkit [115935] by commit-queue@webkit.org
  • 6 edits in trunk/Tools

Unreviewed, rolling out r115918.
http://trac.webkit.org/changeset/115918
https://bugs.webkit.org/show_bug.cgi?id=85452

"Broke test-webkitpy on Apple Lion bots" (Requested by estes
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-02

  • Scripts/webkitpy/common/system/crashlogs.py:

(CrashLogs.init):
(CrashLogs.find_newest_log):
(CrashLogs._log_directory_darwin):
(CrashLogs._find_newest_log_darwin):

  • Scripts/webkitpy/common/system/crashlogs_unittest.py:

(CrashLogsTest.test_find_log_darwin):

  • Scripts/webkitpy/layout_tests/port/mac.py:

(MacPort._get_crash_log):

  • Scripts/webkitpy/layout_tests/port/test.py:

(TestDriver.run_test):

  • Scripts/webkitpy/tool/commands/queries.py:

(execute):

8:33 PM Changeset in webkit [115934] by eric@webkit.org
  • 2 edits in trunk/WebKitLibraries

Fix tabs vs. space formating in FeatureDefines.vsprops and fix alphabetical sorting
https://bugs.webkit.org/show_bug.cgi?id=85445

Reviewed by Adam Barth.

I noticed this when comparing my auto-generated output for this file vs. the one
we have checked in. Seems we might as well fix the checked in file to be
consistent in style with itself. :)

  • win/tools/vsprops/FeatureDefines.vsprops:
8:05 PM Changeset in webkit [115933] by kov@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Finish moving modules into libWebCoreModules.la
https://bugs.webkit.org/show_bug.cgi?id=85449

Unreviewed build fix.

  • GNUmakefile.list.am: move remaining modules source files into the

libWebCoreModules library, this should fix the problems people had
building the 1.9.1 tarball with unpatched make.

8:01 PM Changeset in webkit [115932] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Unreviewed, Fix build break when WEB_AUDIO is enabled.
https://bugs.webkit.org/show_bug.cgi?id=85443

Unreviewed build fix.

Three new files were added in the Modules/webaudio directory.
These files should be included into the CMakeLists.txt file.

Patch by Dongwoo Im <dw.im@samsung.com> on 2012-05-02

  • CMakeLists.txt: Add the newly created files into the CMakeLists.txt
7:52 PM Changeset in webkit [115931] by eric@webkit.org
  • 8 edits in trunk/Source

Sort ENABLE_ defines in FeatureDefines.xcconfig files to make them easier to compare with one another (and easier to autogenerate)
https://bugs.webkit.org/show_bug.cgi?id=85433

Reviewed by Adam Barth.

I have a script which can autogenerate these xcconfig files as well as the
vsprops files (and soon the Chromium, cmake, gnumake and qmake) feature lists
from a central feature list file.
In preparation for posting such a tool, I'm re-sorting these xcconfig files to be
alphabetically ordered (currently they're close, but not quite).
There is also at least one inconsistency between these files (CSS_LEGACY_PREFIXES) which
I will fix in a second pass. I will also sort the FEATURE_DEFINES = line in a follow-up patch.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
7:42 PM Changeset in webkit [115930] by danakj@chromium.org
  • 8 edits in trunk/Source

[chromium] Don't occlude pixels in a surface that are needed for a background filter blur
https://bugs.webkit.org/show_bug.cgi?id=84317

Reviewed by Adrienne Walker.

Source/Platform:

  • chromium/public/WebFilterOperation.h:

Source/WebCore:

Blur filters move pixels around, so a pixel can influence the value of
pixels at some distance away. If a pixel is not occluded, then all
pixels within the radius of the blur may influence the value of that
pixel, so they should also stay unoccluded.

For background filters, the pixels are read from the filter's target
surface, so we remove occlusion from that target surface from pixels
that will blur into visible pixels.

Unit test: CCOcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilter

CCOcclusionTrackerTestTwoBackgroundFiltersReduceOcclusionTwice
CCOcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilterWithClip
CCOcclusionTrackerTestDontReduceOcclusionBelowBackgroundFilter
CCOcclusionTrackerTestDontReduceOcclusionIfBackgroundFilterIsOccluded
CCOcclusionTrackerTestReduceOcclusionWhenBackgroundFilterIsPartiallyOccluded

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::reduceOcclusion):
(WebCore):
(WebCore::reduceOcclusionBelowSurface):
(WebCore::::leaveToTargetRenderSurface):
(WebCore::::unoccludedContributingSurfaceContentRect):

  • platform/graphics/chromium/cc/CCOcclusionTracker.h:

(CCOcclusionTrackerBase):

  • platform/graphics/chromium/cc/CCQuadCuller.cpp:

(WebCore::CCQuadCuller::appendSurface):
(WebCore::CCQuadCuller::appendReplica):

Source/WebKit/chromium:

  • tests/CCOcclusionTrackerTest.cpp:

(WebKitTests::CCOcclusionTrackerTestOverlappingSurfaceSiblings::runMyTest):
(WebKitTests::CCOcclusionTrackerTestOverlappingSurfaceSiblingsWithTwoTransforms::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationOpacity1OnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationOpacity0OnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationTranslateOnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestReplicaOccluded::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceWithReplicaUnoccluded::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceAndReplicaOccludedDifferently::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceChildOfSurface::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceChildOfClippingSurface::runMyTest):
(WebKitTests):
(CCOcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilter):
(WebKitTests::CCOcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilter::runMyTest):
(CCOcclusionTrackerTestTwoBackgroundFiltersReduceOcclusionTwice):
(WebKitTests::CCOcclusionTrackerTestTwoBackgroundFiltersReduceOcclusionTwice::runMyTest):
(CCOcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilterWithClip):
(WebKitTests::CCOcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilterWithClip::runMyTest):
(CCOcclusionTrackerTestDontReduceOcclusionBelowBackgroundFilter):
(WebKitTests::CCOcclusionTrackerTestDontReduceOcclusionBelowBackgroundFilter::runMyTest):
(CCOcclusionTrackerTestDontReduceOcclusionIfBackgroundFilterIsOccluded):
(WebKitTests::CCOcclusionTrackerTestDontReduceOcclusionIfBackgroundFilterIsOccluded::runMyTest):
(CCOcclusionTrackerTestReduceOcclusionWhenBackgroundFilterIsPartiallyOccluded):
(WebKitTests::CCOcclusionTrackerTestReduceOcclusionWhenBackgroundFilterIsPartiallyOccluded::runMyTest):

7:15 PM Changeset in webkit [115929] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

ARM_TRADITIONAL build fix
https://bugs.webkit.org/show_bug.cgi?id=85358

Patch by Hojong Han <hojong.han@samsung.com> on 2012-05-02
Reviewed by Gavin Barraclough.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::lshift32):
(MacroAssemblerARM):
(JSC::MacroAssemblerARM::or32):
(JSC::MacroAssemblerARM::urshift32):
(JSC::MacroAssemblerARM::xor32):
(JSC::MacroAssemblerARM::branchSub32):

7:01 PM Changeset in webkit [115928] by leviw@chromium.org
  • 2 edits in trunk/Source/WebCore

Convert FractionalLayoutUnit overflow assertions to stderr warnings
https://bugs.webkit.org/show_bug.cgi?id=85393

Reviewed by Eric Seidel.

Writing warnings to stderr when FractionalLayoutUnits overflow on debug builds instead of asserting
and crashing. It can be very useful to WebKit developers know when overflow is occurring, but it's
not always a programming error, so assert wasn't the right action.

No new tests. No change in behavior.

  • platform/FractionalLayoutUnit.h:

(WebCore):
(WebCore::FractionalLayoutUnit::FractionalLayoutUnit):
(WebCore::FractionalLayoutUnit::toUnsigned):
(WebCore::FractionalLayoutUnit::setRawValue):

6:48 PM Changeset in webkit [115927] by arv@chromium.org
  • 6 edits
    27 deletes in trunk/LayoutTests

Remove window-properties.html and other iterate over all possible properties tests
https://bugs.webkit.org/show_bug.cgi?id=85430

Reviewed by Eric Seidel.

These tests iterate over all properties in the global scope and their respective properties.
These tests are different on all platforms because they depend on build flags.
Each feature should be covered by a more specific test than a global catch all that breaks
every time anyone touches any IDL file.

  • fast/dom/Window/window-properties-expected.txt: Removed.
  • fast/dom/Window/window-properties.html: Removed.
  • fast/dom/prototype-inheritance-2-expected.txt: Removed.
  • fast/dom/prototype-inheritance-2.html: Removed.
  • fast/dom/prototype-inheritance-expected.txt: Removed.
  • fast/dom/prototype-inheritance.html: Removed.
  • fast/dom/script-tests/prototype-inheritance-2.js: Removed.
  • fast/dom/script-tests/prototype-inheritance.js: Removed.
  • platform/chromium-win/fast/dom/Window/window-properties-expected.txt: Removed.
  • platform/chromium-win/fast/dom/prototype-inheritance-2-expected.txt: Removed.
  • platform/chromium/fast/dom/prototype-inheritance-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
  • platform/efl/Skipped:
  • platform/gtk/fast/dom/Window/window-properties-expected.txt: Removed.
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt: Removed.
  • platform/mac/fast/dom/Window/window-properties-expected.txt: Removed.
  • platform/mac/fast/dom/prototype-inheritance-2-expected.txt: Removed.
  • platform/qt-4.8/fast/dom/Window/window-properties-expected.png: Removed.
  • platform/qt-4.8/fast/dom/Window/window-properties-expected.txt: Removed.
  • platform/qt-5.0-wk2/fast/dom/Window/window-properties-expected.txt: Removed.
  • platform/qt-5.0-wk2/fast/dom/prototype-inheritance-2-expected.txt: Removed.
  • platform/qt-5.0/fast/dom/Window/window-properties-expected.png: Removed.
  • platform/qt-5.0/fast/dom/Window/window-properties-expected.txt: Removed.
  • platform/qt-5.0/fast/dom/prototype-inheritance-2-expected.txt: Removed.
  • platform/qt-arm/Skipped:
  • platform/qt/fast/dom/prototype-inheritance-2-expected.png: Removed.
  • platform/qt/fast/dom/prototype-inheritance-2-expected.txt: Removed.
  • platform/qt/fast/dom/prototype-inheritance-expected.png: Removed.
  • platform/win/Skipped:
  • platform/win/fast/dom/Window/window-properties-expected.txt: Removed.
  • platform/win/fast/dom/prototype-inheritance-2-expected.txt: Removed.
  • platform/wincairo/Skipped:
6:39 PM Changeset in webkit [115926] by jhoneycutt@apple.com
  • 29 edits in trunk/Source

FrameLoaderClient::dispatchWillSendSubmitEvent() should be given more
information about the form being submitted
https://bugs.webkit.org/show_bug.cgi?id=84297

Reviewed by Andy Estes.

Source/WebCore:

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::prepareForSubmission):
Get the form field names and values, and use them to create a FormState
object. Pass this object when calling dispatchWillSendSubmitEvent().
(WebCore::HTMLFormElement::getTextFieldValues):
Loop over the associated elements, looking for <input> elements.
Collect their names and values.

  • html/HTMLFormElement.h:

Declare getTextFieldData().

  • loader/EmptyClients.h:

(WebCore::EmptyFrameLoaderClient::dispatchWillSendSubmitEvent):
Updated declaration for new parameter type.

  • loader/FrameLoaderClient.h:

Updated declaration of dispatchWillSendSubmitEvent() for new param
type.

Source/WebKit/blackberry:

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):
Updated to use the FormState.

  • WebCoreSupport/FrameLoaderClientBlackBerry.h:

(FrameLoaderClientBlackBerry):
Updated method declaration.

Source/WebKit/chromium:

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchWillSendSubmitEvent):
Updated to use the FormState.

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):
Updated method declaration.

Source/WebKit/efl:

  • WebCoreSupport/FrameLoaderClientEfl.h:

(WebCore::FrameLoaderClientEfl::dispatchWillSendSubmitEvent):
Updated method declaration.

Source/WebKit/gtk:

  • WebCoreSupport/FrameLoaderClientGtk.h:

(WebKit::FrameLoaderClient::dispatchWillSendSubmitEvent):
Updated method declaration.

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.h:

Updated method declaration.

Source/WebKit/qt:

  • WebCoreSupport/FrameLoaderClientQt.h:

(WebCore::FrameLoaderClientQt::dispatchWillSendSubmitEvent):
Updated method declaration.

Source/WebKit/win:

  • WebFrame.h:

Fix function stub for new parameter.

Source/WebKit/wince:

  • WebCoreSupport/FrameLoaderClientWinCE.h:

(WebKit::FrameLoaderClientWinCE::dispatchWillSendSubmitEvent):
Updated method declaration.

Source/WebKit/wx:

  • WebKitSupport/FrameLoaderClientWx.h:

(WebCore::FrameLoaderClientWx::dispatchWillSendSubmitEvent):
Updated method declaration.

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

(WebFrameLoaderClient):
Updated method declaration.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::willSendSubmitEvent):
Stubbed.

6:39 PM Changeset in webkit [115925] by jhoneycutt@apple.com
  • 13 edits in trunk/Source

Make Page::setDefersLoading() have a call count so that each time
loading is deferred, it must be balanced with a call to resume.
https://bugs.webkit.org/show_bug.cgi?id=84522

Reviewed by Andy Estes.

Source/WebCore:

  • page/Page.cpp:

(WebCore::Page::Page):
Initialize new call count member.
(WebCore::Page::setDefersLoading):
Check whether the callers wants balanced defer/resume loading behavior.
If the call count is not changing from 0 to 1 or 1 to 0, return early.
Otherwise, defer or resume loading for frames in this page.

  • page/Page.h:

(WebCore::Page::defersLoading):
Added a member to hold the call count.

  • page/Settings.cpp:

(WebCore::Settings::Settings):
Initialized new member m_wantsBalancedSetDefersLoadingBehavior.

  • page/Settings.h:

(Settings):
Added new member m_wantsBalancedSetDefersLoadingBehavior.
(WebCore::Settings::setWantsBalancedSetDefersLoadingBehavior):
Setter.
(WebCore::Settings::wantsBalancedSetDefersLoadingBehavior):
Getter.

Source/WebKit/mac:

  • WebView/WebPreferenceKeysPrivate.h:

Declare a new key for this preference.

  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
Initialize new preference to NO.
(-[WebPreferences setWantsBalancedSetDefersLoadingBehavior:]):
Setter.
(-[WebPreferences wantsBalancedSetDefersLoadingBehavior]):
Getter.

  • WebView/WebPreferencesPrivate.h:

Declare setter and getter.

  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):
Set the setting from the WebPreferences object's value.

Source/WebKit2:

  • Shared/WebPreferencesStore.h:

Use the macro to declare the new preference.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):
Set the setting from the WebPreferencesStore's value.

6:24 PM Changeset in webkit [115924] by ojan@chromium.org
  • 9 edits in trunk/Source

Add a histogram for rendertree size
https://bugs.webkit.org/show_bug.cgi?id=85226

Reviewed by Eric Seidel.

Source/WebCore:

We record it when the page gets hidden, since this is a point
at which, in theory, we could kill the rendertree.

No new tests. This isn't web visible, so there's no way to test it.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::clear):

  • page/Page.cpp:

(WebCore::Page::renderTreeSize):
(WebCore):
(WebCore::Page::setVisibilityState):

  • page/Page.h:

(Page):

  • platform/HistogramSupport.cpp:

(WebCore::HistogramSupport::histogramCustomCounts):
(WebCore):

  • platform/HistogramSupport.h:

(HistogramSupport):

  • platform/chromium/HistogramSupportChromium.cpp:

(WebCore::HistogramSupport::histogramCustomCounts):
(WebCore):

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::renderTreeSize):
Move the renderTreeSize code into Page.cpp, so it can be reused.

6:13 PM Changeset in webkit [115923] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

Suppress svg failure after switching chromium-win to DRT mode.

Unreviewed, expectations change.

  • platform/chromium/test_expectations.txt:
6:12 PM Changeset in webkit [115922] by zmo@google.com
  • 9 edits in trunk

Unreviewed, rolling out r115902.
http://trac.webkit.org/changeset/115902
https://bugs.webkit.org/show_bug.cgi?id=85441

Compile failure on linux 32 (Requested by zhenyao on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-02

Source/WebCore:

  • Modules/indexeddb/IDBBackingStore.h:

(IDBBackingStore):

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp:

(WebCore::IDBLevelDBBackingStore::nextAutoIncrementNumber):

  • Modules/indexeddb/IDBLevelDBBackingStore.h:

(IDBLevelDBBackingStore):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore::IDBObjectStoreBackendImpl::genAutoIncrementKey):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.h:

(IDBObjectStoreBackendImpl):

LayoutTests:

  • storage/indexeddb/key-generator-expected.txt:
  • storage/indexeddb/resources/key-generator.js:
5:53 PM Changeset in webkit [115921] by jsbell@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS r134537 to r134581.
https://bugs.webkit.org/show_bug.cgi?id=85428

Unreviewed - just a deps roll.

  • DEPS:
5:43 PM Changeset in webkit [115920] by kareng@chromium.org
  • 16 edits in branches/chromium/1123/Source

Revert 115525 - Expose high-resolution on requestAnimationFrame callback
https://bugs.webkit.org/show_bug.cgi?id=66683

This changes requestAnimationFrame's animationStartTime argument
to be a high resolution DOM timestamp, per disucssion here:
http://lists.w3.org/Archives/Public/public-web-perf/2012Apr/0004.html

Reviewed by James Robinson.

Source/WebCore:

Covered by existing requestAnimationFrame tests.

  • dom/Document.cpp:

(WebCore::Document::serviceScriptedAnimations):

  • dom/Document.h:

(Document):

  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::ScriptedAnimationController):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
(WebCore):
(WebCore::ScriptedAnimationController::windowScreenDidChange):
(WebCore::ScriptedAnimationController::scheduleAnimation):
(WebCore::ScriptedAnimationController::animationTimerFired):
(WebCore::ScriptedAnimationController::displayRefreshFired):

  • dom/ScriptedAnimationController.h:

(ScriptedAnimationController):

  • page/FrameView.cpp:

(WebCore::FrameView::serviceScriptedAnimations):

  • page/FrameView.h:

(FrameView):

  • platform/graphics/DisplayRefreshMonitor.cpp:

(WebCore::DisplayRefreshMonitor::DisplayRefreshMonitor):
(WebCore::DisplayRefreshMonitor::notifyClients):

  • platform/graphics/DisplayRefreshMonitor.h:

(DisplayRefreshMonitor):

  • platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp:

(WebCore::DisplayRefreshMonitor::displayLinkFired):

  • platform/graphics/mac/DisplayRefreshMonitorMac.cpp:

(WebCore):
(WebCore::DisplayRefreshMonitor::requestRefreshCallback):
(WebCore::DisplayRefreshMonitor::displayLinkFired):

Source/WebKit/chromium:

  • src/PageWidgetDelegate.cpp:

(WebKit::PageWidgetDelegate::animate):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::updateAnimations):

TBR=nduca@chromium.org

5:40 PM Changeset in webkit [115919] by kareng@chromium.org
  • 26 edits in branches/chromium/1123

Revert 115573 - Move Length and CSS length computation to float
https://bugs.webkit.org/show_bug.cgi?id=84801

Source/WebCore:

Patch by Emil A Eklund <eae@chromium.org> and Levi Weintraub <leviw@chromium.org> on 2012-04-26
Reviewed by Eric Seidel.

Change Length and CSS length computation to floating point. This gets us
closer to the goal of supporting subpixel layout and improves precision
for SVG which already uses floating point for its layout.

This change makes computedStyle return fractional values for pixel values
if a fraction is specified. It also changes the result of computations
where two or more values with fractional precision. Prior to this change
the result of Length(2.9) + Length(2.9) would be 4 as each value would be
floored. With this change the result is 5 as the addition is done with
floating point precision and then the result will be floored. Once we
enable subpixel layout the resulting value in this example would be 5.8.

Updated existing layout tests.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::zoomAdjustedPixelValue):

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLength):

  • css/CSSPrimitiveValue.h:

(WebCore):
(WebCore::roundForImpreciseConversion):
Add specialized float version of roundForImpreciseConversion that matches
the int versions rounding logic.

If a value is sufficiently close to the next integer round it up to
ensure that a style rule such as "width: 4.999px" evaluates to 5px
instead of 4px. This is needed as, although Lengths are using floating
point, the layout system still uses integer precision and floors the
Length values.
This will change once we move to FractionalLayoutUnits but for now this
is needed to ensure compatibility with the existing system and tests.

Without this specialized rounding logic we fail a handful of tests
including acid3.

  • platform/Length.h:

(WebCore::Length::value):
(Length):
(WebCore::Length::intValue):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::styleOrColLogicalWidth):

LayoutTests:

Reviewed by Eric Seidel.

Change Length and CSS length computation to floating point. This gets us
closer to the goal of supporting subpixel layout and improves precision
for SVG which already uses floating point for its layout.

This change makes computedStyle return fractional values for pixel values
if a fraction is specified. It also changes the result of computations
where two or more values with fractional precision. Prior to this change
the result of Length(2.9) + Length(2.9) would be 4 as each value would be
floored. with this change the result is 5 as the addition is done with
floating point precision and then the result will be floored. Once we
enable subpixel layout the resulting value in this example would be 5.8.

  • fast/dom/length-attribute-mapping-expected.txt:
  • fast/dom/length-attribute-mapping.html:
  • platform/mac-snowleopard/fast/forms/001-expected.png:
  • platform/mac-snowleopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
  • platform/mac/fast/forms/001-expected.txt:
  • platform/mac/fast/html/details-position-expected.png:
  • platform/mac/fast/html/details-position-expected.txt:
  • platform/mac/fast/replaced/width100percent-checkbox-expected.png:
  • platform/mac/fast/replaced/width100percent-checkbox-expected.txt:
  • platform/mac/fast/replaced/width100percent-radio-expected.png:
  • platform/mac/fast/replaced/width100percent-radio-expected.txt:
  • platform/mac/mathml/presentation/fractions-expected.png:
  • platform/mac/mathml/presentation/fractions-expected.txt:
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png:
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
  • platform/mac/mathml/presentation/mo-stretch-expected.png:
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
  • platform/mac/mathml/presentation/subsup-expected.png:
  • platform/mac/mathml/presentation/subsup-expected.txt:
  • platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.png:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.txt:

TBR=eae@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10349004

5:31 PM Changeset in webkit [115918] by rakuco@webkit.org
  • 6 edits in trunk/Tools

webkitpy: Remove sys.platform accesses in CrashLogs.
https://bugs.webkit.org/show_bug.cgi?id=85436

Reviewed by Dirk Pranke.

Instead of directly checking for sys.platform == 'darwin', use a
SystemHost and call PlatformInfo.is_mac().

  • Scripts/webkitpy/common/system/crashlogs.py:

(CrashLogs.init):
(CrashLogs.find_newest_log):
(CrashLogs._log_directory_darwin):
(CrashLogs._find_newest_log_darwin):

  • Scripts/webkitpy/common/system/crashlogs_unittest.py:

(CrashLogsTest.test_find_log_darwin):

  • Scripts/webkitpy/layout_tests/port/mac.py:

(MacPort._get_crash_log):

  • Scripts/webkitpy/layout_tests/port/test.py:

(TestDriver.run_test):

  • Scripts/webkitpy/tool/commands/queries.py:

(execute):

5:29 PM Changeset in webkit [115917] by commit-queue@webkit.org
  • 3 edits
    2 deletes in trunk

Unreviewed, rolling out r115905.
http://trac.webkit.org/changeset/115905
https://bugs.webkit.org/show_bug.cgi?id=85435

New computeStatistics test is failing on chromium ports
(Requested by tomz on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-02

PerformanceTests:

  • resources/runner.js:

LayoutTests:

  • fast/harness/perftests/perf-runner-compute-statistics-expected.txt: Removed.
  • fast/harness/perftests/perf-runner-compute-statistics.html: Removed.
5:18 PM Changeset in webkit [115916] by kareng@chromium.org
  • 1 edit in branches/chromium/1123/Source/WebCore/loader/FrameLoader.cpp

Revert 115549 - Ensure that there's always a provisional document loader if the frame loader is in provisional state
https://bugs.webkit.org/show_bug.cgi?id=83894

Reviewed by Nate Chapin.

We're still seeing crashes in the FrameLoader where the FrameLoader's
state is "provisional" but there is no provisional document loader. I
added code to update the FrameLoader's state everytime the provisional
document loader is cleared, and added checks that the FrameLoader's
state can't be set to provisional without a provisional loader.

If the crashes go away, or the newly added checks reveal the culprit,
we should relex the checks to use ASSERT() instead of CRASH().

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::init):
(WebCore::FrameLoader::setupForReplace):
(WebCore::FrameLoader::stopAllLoaders):
(WebCore::FrameLoader::clearProvisionalLoad):
(WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):

TBR=jochen@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10331005

5:14 PM Changeset in webkit [115915] by mhahnenberg@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

Opportunistic GC should give up if the Heap is paged out
https://bugs.webkit.org/show_bug.cgi?id=85411

Reviewed by Filip Pizlo.

Opportunistic GC is punishing us severely in limited memory situations because its
assumptions about how much time a collection will take are way out of whack when the Heap
has been paged out by the OS. We should add a simple detection function to the Heap that
detects if its is paged out. It will do this by iterating each block of both the MarkedSpace
and CopiedSpace. If that operation takes longer than a fixed amount of time (e.g. 100ms),
the function returns true. This function will only be run prior to an opportunistic
collection (i.e. it will not run during our normal allocation-triggered collections).

In my tests, steady state was drastically improved in high memory pressure situations (i.e.
the browser was still usable, significant reduction in SPODs). Occasionally, a normal GC
would be triggered due to pages doing things in the background, which would cause a
significant pause. As we close pages we now cause normal collections rather than full
collections, which prevents us from collecting all of the dead memory immediately. One
nice way to deal with this issue might be to do incremental sweeping.

  • heap/CopiedSpace.cpp:

(JSC::isBlockListPagedOut): Helper function to reduce code duplication when iterating over
to-space, from-space, and the oversize blocks.
(JSC):
(JSC::CopiedSpace::isPagedOut): Tries to determine whether or not CopiedSpace is paged out
by iterating all of the blocks.

  • heap/CopiedSpace.h:

(CopiedSpace):

  • heap/Heap.cpp:

(JSC::Heap::isPagedOut): Tries to determine whether the Heap is paged out by asking the
MarkedSpace and CopiedSpace if they are paged out.
(JSC):

  • heap/Heap.h:

(Heap):
(JSC::Heap::increaseLastGCLength): Added this so that the GC timer can linearly back off
each time it determines that the Heap is paged out.

  • heap/MarkedAllocator.cpp:

(JSC::MarkedAllocator::isPagedOut): Tries to determine if this particular MarkedAllocator's
list of blocks are paged out.
(JSC):

  • heap/MarkedAllocator.h:

(MarkedAllocator):

  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::isPagedOut): For each MarkedAllocator, check to see if they're paged out.

  • heap/MarkedSpace.h:

(MarkedSpace):

  • runtime/GCActivityCallback.cpp:

(JSC::DefaultGCActivityCallback::cancel):
(JSC):

  • runtime/GCActivityCallback.h:

(JSC::GCActivityCallback::cancel):
(DefaultGCActivityCallback):

  • runtime/GCActivityCallbackCF.cpp: Added a constant of 100ms for the timeout in determining

whether the Heap is paged out or not.
(JSC):
(JSC::DefaultGCActivityCallbackPlatformData::timerDidFire): Added the check to see if we
should attempt a collection based on whether or not we can iterate the blocks of the Heap in
100ms. If we can't, we cancel the timer and tell the Heap we just wasted 100ms more trying to
do a collection. This gives us a nice linear backoff so we're not constantly re-trying in
steady state paged-out-ness.
(JSC::DefaultGCActivityCallback::cancel): Added this function which, while currently doing
exactly the same thing as willCollect, is more obvious as to what it's doing when we call it
in timerDidFire.

5:12 PM Changeset in webkit [115914] by kareng@chromium.org
  • 12 edits in branches/chromium/1123

Revert 114283 - Avoid using backing store for compositing layers that just need to clip
https://bugs.webkit.org/show_bug.cgi?id=40547

Source/WebCore:

Reviewed by Dean Jackson.

If a layer becomes composited because it needs to clip composited
descendants, or if it has perspective, then it doesn't actually
needs its own backing store; its contents can be painted by an
ancestor, and we can just have an empty layer that does the clipping
or applies the perspective transform.

This saves backing store memory on some pages.

Tests: compositing/backing/no-backing-for-clip-overlap.html

compositing/backing/no-backing-for-clip.html
compositing/backing/no-backing-for-perspective.html

  • rendering/RenderLayer.cpp:

(WebCore):
(WebCore::RenderLayer::enclosingCompositingLayerForRepaint):
(WebCore::RenderLayer::paintLayer):

  • rendering/RenderLayer.h:

(RenderLayer):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::containsPaintedContent):
(WebCore::RenderLayerBacking::setContentsNeedDisplay):
(WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
(WebCore::RenderLayerBacking::paintIntoLayer):

  • rendering/RenderLayerBacking.h:

(RenderLayerBacking):
(WebCore::RenderLayerBacking::paintsIntoCompositedAncestor):
(WebCore::RenderLayerBacking::setRequiresOwnBackingStore):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::layerWillBeRemoved):
(WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
(WebCore::RenderLayerCompositor::requiresCompositingLayer):
(WebCore::RenderLayerCompositor::requiresOwnBackingStore):
(WebCore):

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containerForRepaint):

  • rendering/RenderTreeAsText.cpp:

(WebCore::write):

  • rendering/RenderView.cpp:

(WebCore::RenderView::paintBoxDecorations):

LayoutTests:

Reviewed by Dean Jackson.

New tests for backing store elimination with clip or perspective.

New results for some tests that no longer have backing store on some
layers.

  • compositing/backing/no-backing-for-clip-expected.txt: Added.
  • compositing/backing/no-backing-for-clip-overlap-expected.txt: Added.
  • compositing/backing/no-backing-for-clip-overlap.html: Added.
  • compositing/backing/no-backing-for-clip.html: Added.
  • compositing/backing/no-backing-for-perspective-expected.txt: Added.
  • compositing/backing/no-backing-for-perspective.html: Added.
  • compositing/geometry/preserve-3d-switching-expected.txt:
  • compositing/visibility/layer-visible-content-expected.png:
  • compositing/visibility/layer-visible-content-expected.txt:

TBR=Simon Fraser
Review URL: https://chromiumcodereview.appspot.com/10342008

4:56 PM Changeset in webkit [115913] by jchaffraix@webkit.org
  • 5 edits in trunk/Source/WebCore

Add ASSERTs to avoid querying dirtied z-index or normal flow lists on RenderLayer
https://bugs.webkit.org/show_bug.cgi?id=84920

Reviewed by Simon Fraser.

Covered by existing tests in Debug (at least several time!).

This change adds some ASSERTs on RenderLayer that prevent any use of its lists if they
are dirtied.

On top of this change, we added an invariant that non-stacking contexts should have their
z-index lists NULL (instead of empty or NULL previously). This is enforced at
updateZOrderLists time as we now ensure that it is called in a timely manner.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateLayerBounds):
Added call to updateLayersIfNeeded as we will query them later and there is no guarantee
that they are not dirty (we recurse in our children as part of calculateLayerBounds).
This was causing the new ASSERTs to trigger on css3/filter/ tests.

(WebCore::RenderLayer::dirtyZOrderLists):
Added a comment as to why we can't ASSERT that we are in a stacking context here.

(WebCore::RenderLayer::rebuildZOrderLists):
Added an ASSERT that we only rebuild z-index lists for dirtied stacking context.

(WebCore::RenderLayer::updateLayerListsIfNeeded):
Updated to ensure that the reflection layer has its layers updated too. This was triggering
the new ASSERTs on fast/runins/run-in-layer-not-removed-crash.html.

(WebCore::RenderLayer::updateCompositingAndLayerListsIfNeeded):
Updated to use the new isDirtyStackingContext function.

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::isDirtyStackingContext):
New helper function. Also made updateLayerListsIfNeeded() the only way
to update layer. That should prevent any misuse.

(WebCore::RenderLayer::posZOrderList):
(WebCore::RenderLayer::negZOrderList):
(WebCore::RenderLayer::normalFlowList):
ASSERT that we don't query any of the previous lists if they are dirty. Also
enforce the invariant that non-stacking contexts should have NULL z-index lists.

(WebCore::RenderLayer::clearZOrderLists):
New function to clearZOrderLists so that we can enfore the previous invariant.

(WebCore::RenderLayer::updateZOrderLists):
Updated to clear the dirty flag and the z-index lists for non-stacking context.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
Removed the explicit ASSERTs.

(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::canBeComposited):
Disabled compositing on RenderLayer in flow thread. Because flow thread's
RenderLayer are not collected as part of RenderLayer's lists and could be composited,
this was causing the new ASSERTs to trigger (e.g. on fast/regions/webkit-flow-renderer-layer.html).

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeLayers):
Updated to use updateLayerListsIfNeeded().

4:48 PM Changeset in webkit [115912] by rakuco@webkit.org
  • 3 edits in trunk/Tools

webkitpy: Special-case win32 calls in file_lock and executive.
https://bugs.webkit.org/show_bug.cgi?id=85431

Reviewed by Dirk Pranke.

Simplify accesses to sys.platform by only checking if sys.platform
is "win32" and removing explicit checks for the else case.

  • Scripts/webkitpy/common/system/executive.py:

(Executive.check_running_pid):

  • Scripts/webkitpy/common/system/file_lock.py:

(FileLock._create_lock):
(FileLock._remove_lock):

4:42 PM Changeset in webkit [115911] by zmo@google.com
  • 2 edits
    2 adds in trunk/LayoutTests

Rebaseline, unreviewed.

  • platform/chromium-linux-x86/http/tests/loading: Added.
  • platform/chromium-linux-x86/http/tests/loading/pdf-commit-load-callbacks-expected.txt: Added.
  • platform/chromium-linux/http/tests/loading/pdf-commit-load-callbacks-expected.txt:
4:35 PM Changeset in webkit [115910] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

PDF page does not show up when opened in the background
https://bugs.webkit.org/show_bug.cgi?id=85427
<rdar://problem/11259951>

Reviewed by Sam Weinig.

Ensure that the accelerated hosting view is always the bottom view so it won't obscure subviews that are before it.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _enterAcceleratedCompositingMode:]):

4:27 PM Changeset in webkit [115909] by ojan@chromium.org
  • 4 edits in trunk/Tools

Remove pink from flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=85422

Reviewed by Dirk Pranke.

The pink indicates that the test doesn't match it's listing in test_expectations.txt.
In practice, this just added noise and confused people.

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(htmlForSingleTestRow):
(showLegend):

  • TestResultServer/static-dashboards/flakiness_dashboard_tests.css:

(#legend-contents *):

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

(testHtmlForSingleTestRow):

4:26 PM Changeset in webkit [115908] by leviw@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove unused adjustForAbsoluteZoom method in RenderObject.h
https://bugs.webkit.org/show_bug.cgi?id=85396

Reviewed by Eric Seidel.

We only want to use the integer adjustForAbsoluteZoom method, so this remnant is both unused
and potentially confusing.

No new tests. Removing unused code.

  • rendering/RenderObject.h:

(WebCore):

4:15 PM Changeset in webkit [115907] by fsamuel@chromium.org
  • 10 edits in trunk/Source

Removing line in computeViewportAttributes that enforces a minimum scale factor to never allow zooming out more than viewport
https://bugs.webkit.org/show_bug.cgi?id=70609

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Make ViewportAttributes' layoutSize be a FloatRect to avoid rounding
too early, and the occasional off by one fixed layout dimensions.

  • dom/ViewportArguments.cpp:

(WebCore::computeViewportAttributes):

  • dom/ViewportArguments.h:

(ViewportAttributes):

Source/WebKit/qt:

  • Api/qwebpage.h:
  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::viewportAsText):

Source/WebKit2:

  • UIProcess/API/qt/qwebviewportinfo.cpp:

(QWebViewportInfo::layoutSize):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::viewportConfigurationAsText):

4:11 PM Changeset in webkit [115906] by jchaffraix@webkit.org
  • 4 edits
    3 adds
    4 deletes in trunk/LayoutTests

Unreviewed gardening.

Rebaselined overflow-delete-line.html and ancestor-overflow.html.

The pixel changes are only text differences.

  • fast/repaint/overflow-delete-line-expected.txt: Added.
  • platform/chromium-mac-leopard/compositing/overflow/ancestor-overflow-expected.png: Added.
  • platform/chromium-mac-leopard/fast/repaint/overflow-delete-line-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/repaint/overflow-delete-line-expected.png:
  • platform/chromium-mac/compositing/overflow/ancestor-overflow-expected.txt: Removed.
  • platform/chromium-mac/fast/repaint/overflow-delete-line-expected.txt: Removed.
  • platform/chromium-win/compositing/overflow/ancestor-overflow-expected.txt:
  • platform/chromium/test_expectations.txt:
  • platform/efl/fast/repaint/overflow-delete-line-expected.txt: Removed.
  • platform/gtk/fast/repaint/overflow-delete-line-expected.txt: Removed.
4:08 PM Changeset in webkit [115905] by tomz@codeaurora.org
  • 3 edits
    3 adds in trunk

Need tests for PerfTestRunner.computeStatistics
https://bugs.webkit.org/show_bug.cgi?id=85410

Reviewed by Ryosuke Niwa.

PerformanceTests:

  • resources/runner.js:

LayoutTests:

  • fast/harness/perftests/perf-runner-compute-statistics-expected.txt: Added.
  • fast/harness/perftests/perf-runner-compute-statistics.html: Added.
4:08 PM Changeset in webkit [115904] by kov@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Fix mistake I committed when applying review comments.

  • jhbuild/jhbuild-wrapper: dependencies_path was getting 'Root'

appended to its path, so jhbuild itself was being cloned and
installed in the wrong place when using WEBKITOUTPUTDIR.

4:05 PM Changeset in webkit [115903] by dpranke@chromium.org
  • 4 edits in trunk/Tools

nrwt: make ServerProcess work on chromium win
https://bugs.webkit.org/show_bug.cgi?id=85333

Reviewed by Ojan Vafai.

This change implements a poor man's select() that will
slow-spin doing non-blocking reads on the stdout and stderr
named pipes connecting the worker to the driver. Seems to work
and I have yet to see much overhead or ill effects but it
probably needs more testing.

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumDriver.init):

  • Scripts/webkitpy/layout_tests/port/server_process.py:

(ServerProcess._start):
(ServerProcess._wait_for_data_and_update_buffers_using_select):
(ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
(ServerProcess):
(ServerProcess._non_blocking_read_win32):
(ServerProcess._read):

  • Scripts/webkitpy/layout_tests/port/server_process_unittest.py:

(TestServerProcess.test_basic): Added.

4:03 PM Changeset in webkit [115902] by jsbell@chromium.org
  • 9 edits in trunk

IndexedDB: Handle generated keys up to 253
https://bugs.webkit.org/show_bug.cgi?id=85114

Source/WebCore:

The spec defines the behavior for generated keys up to 253
(the maximum integer storable as an ECMAScript number) and
the error case when going beyond that. Ensure that we can
handle values up to that point and generate errors beyond.

Reviewed by Tony Chang.

Test: storage/indexeddb/key-generator.html

  • Modules/indexeddb/IDBBackingStore.h:

(IDBBackingStore):

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp:

(WebCore::IDBLevelDBBackingStore::nextAutoIncrementNumber):

  • Modules/indexeddb/IDBLevelDBBackingStore.h:

(IDBLevelDBBackingStore):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore::IDBObjectStoreBackendImpl::genAutoIncrementKey):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.h:

(IDBObjectStoreBackendImpl):

LayoutTests:

Reviewed by Tony Chang.

  • storage/indexeddb/key-generator-expected.txt:
  • storage/indexeddb/resources/key-generator.js:

(get defineTest):

4:01 PM Changeset in webkit [115901] by zmo@google.com
  • 2 edits in trunk/LayoutTests

Rebaseline, unreviewed.

  • platform/chromium-mac/fast/text/textIteratorNilRenderer-expected.txt:
3:55 PM Changeset in webkit [115900] by rakuco@webkit.org
  • 4 edits in trunk/Tools

webkitpy: Use a SystemHost instead of PlatformInfo in the PNG checker.
https://bugs.webkit.org/show_bug.cgi?id=85426

Reviewed by Dirk Pranke.

r115880 replaced the direct use of sys.platform with a
PlatformInfo object. Dirk Pranke later told me SystemHost objects
should be preferred, as nothing out of webkitpy.common.system
should create its own PlatformInfo instances.

  • Scripts/webkitpy/common/system/systemhost_mock.py:

(MockSystemHost.init): Make it possible to specify a custom
filesystem object.

  • Scripts/webkitpy/style/checkers/png.py:

(PNGChecker.init): Accept a host object instead of a
filesystem one, which is now obtained from host.
(PNGChecker._config_file_path): Retrieve PlatformInfo from
SystemHost.

  • Scripts/webkitpy/style/checkers/png_unittest.py:

(PNGCheckerTest.test_init): Adjust calls to PNGChecker to its new
constructor signature.
(PNGCheckerTest.test_check): Ditto.

3:53 PM Changeset in webkit [115899] by zmo@google.com
  • 2 edits
    1 add in trunk/LayoutTests

Rebaseline, unreviewed.

  • platform/chromium-mac/fast/text/textIteratorNilRenderer-expected.txt:
  • platform/chromium/media/media-can-play-wav-audio-expected.txt: Added.
3:22 PM Changeset in webkit [115898] by rakuco@webkit.org
  • 3 edits in trunk/Tools

webkitpy: Remove direct checks for sys.platform == 'darwin' in the layout test classes.
https://bugs.webkit.org/show_bug.cgi?id=85424

Reviewed by Tony Chang.

We should reduce direct usage of sys.platform in webkitpy and use
PlatformInfo instead.

  • Scripts/webkitpy/layout_tests/servers/http_server.py:

(Lighttpd._prepare_config): Call PlatformInfo.is_mac() instead of
checking for 'darwin' directly.

  • Scripts/webkitpy/layout_tests/servers/http_server_base.py:

(HttpServerBase.init): Ditto.

3:04 PM Changeset in webkit [115897] by adamk@chromium.org
  • 3 edits
    2 adds in trunk

Childlist mutations in shadow DOM should be observable with MutationObservers
https://bugs.webkit.org/show_bug.cgi?id=85402

Reviewed by Ojan Vafai.

Source/WebCore:

Though Mutation Events are not supported in Shadow DOM,
MutationObservers are supposed to be. Due to a misplacement of the
ChildListMutationScope, they were erroneously getting skipped.

This patch moves code around to properly notify when childlist are
mutated in shadow DOM and covers that change with a new test.

Test: fast/mutation/shadow-dom.html

  • dom/ContainerNode.cpp:

(WebCore::willRemoveChild): Handle notification of removal directly.
(WebCore::willRemoveChildren): ditto.
(WebCore::dispatchChildInsertionEvents): Remove notification of insertion.
(WebCore::dispatchChildRemovalEvents): Remove notification of removal.
(WebCore::updateTreeAfterInsertion): Handle notification of insertion directly.

LayoutTests:

Added test covering childList mutations as well as attribute and
characterData mutations (these were already working).

  • fast/mutation/shadow-dom-expected.txt: Added.
  • fast/mutation/shadow-dom.html: Added.
3:01 PM Changeset in webkit [115896] by eric.carlson@apple.com
  • 3 edits
    2 adds in trunk

Crash in WebCore::TextTrackList::remove
https://bugs.webkit.org/show_bug.cgi?id=85095

Reviewed by Maciej Stachowiak.

Source/WebCore:

Test: media/track/track-remove-quickly.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::willRemoveTrack): Return immediately if the tracks collection

has not been allocated yet.

LayoutTests:

  • media/track/track-remove-quickly-expected.txt: Added.
  • media/track/track-remove-quickly.html: Added.
3:00 PM Changeset in webkit [115895] by commit-queue@webkit.org
  • 15 edits in trunk

After appending MathML with jquery the table renders with overlaps
https://bugs.webkit.org/show_bug.cgi?id=52444

Patch by David Barton <Dave Barton> on 2012-05-02
Reviewed by Julien Chaffraix.

Source/WebCore:

This patch also fixes bugs 72834 and 47781. The main problem is that correct preferred
logical widths are affected by operator stretching. Thus we add a call to
setNeedsLayoutAndPrefWidthsRecalc() after the stretching code in
RenderMathMLOperator.cpp, and change RenderMathMLBlock and RenderMathMLRow to make sure
that stretching of children is done before an <mrow>'s preferred logical widths are
computed.

Test: Added a test to mathml/presentation/mo-stretch.html

  • rendering/mathml/RenderMathMLBlock.cpp:

(WebCore::RenderMathMLBlock::RenderMathMLBlock):
(WebCore::RenderMathMLBlock::computePreferredLogicalWidths):
(WebCore::RenderMathMLBlock::computeChildrenPreferredLogicalHeights):
(WebCore::RenderMathMLBlock::preferredLogicalHeightAfterSizing):

  • rendering/mathml/RenderMathMLBlock.h:

(WebCore::RenderMathMLBlock::unembellishedOperator):
(WebCore::RenderMathMLBlock::isPreferredLogicalHeightDirty):
(WebCore::RenderMathMLBlock::preferredLogicalHeight):
(WebCore::RenderMathMLBlock::setPreferredLogicalHeight):

  • Add m_preferredLogicalHeight and methods to compute and return it.
  • Remove stretchToHeight() from most classes as it no longer needs to be done recursively. We just call it on the base of an embellished operator, and that calls setNeedsLayoutAndPrefWidthsRecalc() to mark itself and its container chain.
  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::stretchToHeight):

  • Don't compare an unexpanded height to an expanded one.

(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
(WebCore::RenderMathMLOperator::updateFromElement):

  • After stretching, call setNeedsLayoutAndPrefWidthsRecalc().
  • rendering/mathml/RenderMathMLOperator.h:

(RenderMathMLOperator):

  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::computePreferredLogicalWidths):
(WebCore::RenderMathMLRow::layout):

  • rendering/mathml/RenderMathMLRow.h:

(RenderMathMLRow):

  • Add computePreferredLogicalWidths(), using computeChildrenPreferredLogicalHeights() to compute our children's preferred logical heights if necessary, followed by operator stretching.
  • rendering/mathml/RenderMathMLSubSup.cpp:
  • rendering/mathml/RenderMathMLSubSup.h:

(RenderMathMLSubSup):

  • rendering/mathml/RenderMathMLUnderOver.cpp:
  • rendering/mathml/RenderMathMLUnderOver.h:

(RenderMathMLUnderOver):

LayoutTests:

  • mathml/presentation/mo-stretch.html:
  • platform/mac/mathml/presentation/mo-stretch-expected.png:
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
2:55 PM Changeset in webkit [115894] by rakuco@webkit.org
  • 2 edits in trunk/Tools

webkitpy: Remove direct sys.platform usage in run_webkit_tests_integrationtest.
https://bugs.webkit.org/show_bug.cgi?id=85419

Reviewed by Dirk Pranke.

As pointed out by Dirk Pranke, a PlatformInfo is not supposed to
be created directly, we should should a SystemHost instead.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(MainTest.setUp): Create a SystemHost and obtain the PlatformInfo
object from it instead of creating PlatformInfo directly.

2:51 PM Changeset in webkit [115893] by thakis@chromium.org
  • 2 edits in trunk/Source/WTF

Let WebKit parse with clang on windows with -std=c++11
https://bugs.webkit.org/show_bug.cgi?id=85398

Reviewed by Ryosuke Niwa.

See http://trac.webkit.org/changeset/85945 for background on the line
I'm changing. With clang, GXX_EXPERIMENTLAL_CXX0X is set in c++11
mode, but MSVC's c++ library doesn't have a tr1/memory header. So also
check for GLIBCXX, like it's done in the rest of this file.

  • wtf/TypeTraits.h:
2:49 PM Changeset in webkit [115892] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/gtk/test_expectations.txt: remove duplicate annotation

for fast/workers/storage/use-same-database-in-page-and-workers.html,
added comment explaining the ocasional ASSERT that's a
cross-platform problem.

2:44 PM Changeset in webkit [115891] by aestes@apple.com
  • 2 edits in trunk/LayoutTests

media/audio-repaint.html sometimes fails on Lion Debug (Tests)
https://bugs.webkit.org/show_bug.cgi?id=84357

  • platform/mac/Skipped: Skipped the flaky test.
2:41 PM Changeset in webkit [115890] by aestes@apple.com
  • 3 edits in trunk/LayoutTests

Update two more Mac baselines.

  • platform/mac/fast/forms/input-appearance-spinbutton-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
2:40 PM Changeset in webkit [115889] by jochen@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Add WebDocument::referrerPolicy() which wraps the same method on Document
https://bugs.webkit.org/show_bug.cgi?id=85201

Reviewed by Adam Barth.

Embedders should use webFrame->document()->referrerPolicy() instead of webFrame->referrerPolicy(). The latter will be removed soon.

  • public/WebDocument.h:

(WebDocument):

  • src/WebDocument.cpp:

(WebKit::WebDocument::referrerPolicy):
(WebKit):

2:32 PM Changeset in webkit [115888] by rakuco@webkit.org
  • 2 edits in trunk/Tools

webkitpy: Remove direct sys.platform usage in run_webkit_tests_integrationtest.
https://bugs.webkit.org/show_bug.cgi?id=85419

Rubber-stamped by Dirk Pranke.

Follow-up patch to r115887 which fixes some capitalization problems
pointed out in comments 2 and 4.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(MainTest.setUp):
(MainTest.test_child_processes_2):
(MainTest.test_child_processes_min):
(MainTest.test_exception_raised):
(MainTest.test_keyboard_interrupt):

2:16 PM Changeset in webkit [115887] by rakuco@webkit.org
  • 2 edits in trunk/Tools

webkitpy: Remove direct sys.platform usage in run_webkit_tests_integrationtest.
https://bugs.webkit.org/show_bug.cgi?id=85419

Reviewed by Dirk Pranke.

Another part of the work towards replacing direct sys.platform
usage with PlatformInfo.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(MainTest.setUp): Move the setting of SHOULD_TEST_PROCESSES
here. Even though it is costlier, unittest.setUpClass was
introduced in Python 2.7.
(MainTest.test_child_processes_2): Use self.SHOULD_TEST_PROCESSES.
(MainTest.test_child_processes_min): Ditto.
(MainTest.test_exception_raised): Ditto.
(MainTest.test_keyboard_interrupt): Ditto.
(MainTest.test_crash_log): Check for PlatformInfo.is_mac().
(MainTest.test_web_process_crash_log): Ditto, and remove duplicate
check at the end.
(MainTest.test_no_http_tests): Remove check for (cygwin && Python
2.5.2), as we only support Python 2.6+.

2:09 PM Changeset in webkit [115886] by danakj@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium] Avoid extra Region copies in CCOcclusionTracker
https://bugs.webkit.org/show_bug.cgi?id=85257

Reviewed by Adrienne Walker.

Instead of making a Region for each layer and then uniting the region
with the current occlusion, directly add the rects for the given layer
to the current occlusion.

When subtracting a region from a rect, just subtract the region
directly instead of computing the intersecting region.

Covered by existing tests.

  • platform/graphics/chromium/cc/CCOcclusionTracker.cpp:

(WebCore::addOcclusionBehindLayer):
(WebCore::::markOccludedBehindLayer):
(WebCore::rectSubtractRegion):

1:54 PM Changeset in webkit [115885] by aestes@apple.com
  • 5 edits in trunk/LayoutTests

Update more Mac baselines after r115846.

  • platform/mac/editing/selection/select-from-textfield-outwards-expected.txt:
  • platform/mac/fast/block/float/avoiding-float-centered-expected.txt:
  • platform/mac/fast/block/float/float-not-removed-from-next-sibling3-expected.txt:
  • platform/mac/media/audio-controls-rendering-expected.txt:
1:53 PM Changeset in webkit [115884] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

blockquote gets clobbered on delete, but the font-tag inside it doesn't
https://bugs.webkit.org/show_bug.cgi?id=19702

Reviewed by Enrica Casucci.

Add a regression test initially authored by Ojan Vafai since this bug appears to have been fixed already.

  • editing/execCommand/delete-line-and-insert-text-in-font-inside-blockquote-expected.txt: Added.
  • editing/execCommand/delete-line-and-insert-text-in-font-inside-blockquote.html: Added.
1:53 PM Changeset in webkit [115883] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Double tap zooming does nothing on small size table
https://bugs.webkit.org/show_bug.cgi?id=85383

Patch by Jacky Jiang <zhajiang@rim.com> on 2012-05-02
Reviewed by George Staikos.

PR: 153232
When we search the best node for block zoom, if the initial node's new
scale exceeds the maximum block zoom scale, we will try to walk through
it's ancestors and pick the acceptable one. But the reality is that the
acceptable ancestor's size can be too close to the size of the actual
contents, we will do nothing for it. As we will still select the
minimum of the new scale and the maximum block zoom scale as block zoom
scale, we can ignore such kind of node and use the initial node instead.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::adjustedBlockZoomNodeForZoomLimits):

1:48 PM Changeset in webkit [115882] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[Qt] ASSERT in FontCustomPlatformDataQt.cpp with invalid font in data URI
https://bugs.webkit.org/show_bug.cgi?id=85089

Patch by Keith Rosenblatt <keith.rosenblatt@nokia.com> on 2012-05-02
Reviewed by Simon Hausmann.

Source/WebCore:

Do not return data referencing an invalid QRawFont from createFontCustomPlatformData(). Instead
return null.

Test: fast/css/font-face-data-uri-invalid.html

  • platform/graphics/qt/FontCustomPlatformDataQt.cpp:

(WebCore::createFontCustomPlatformData):

LayoutTests:

  • fast/css/font-face-data-uri-invalid-expected.txt: Added.
  • fast/css/font-face-data-uri-invalid.html: Added.
1:42 PM Changeset in webkit [115881] by commit-queue@webkit.org
  • 16 edits in trunk/Source

[chromium] Set contents texture manager preferred memory limit based on GpuMemoryManager suggestion.
https://bugs.webkit.org/show_bug.cgi?id=84270

Patch by Michal Mocny <mmocny@google.com> on 2012-05-02
Reviewed by Kenneth Russell.

Source/WebCore:

Updates the content texture manager memory limits based on GpuMemoryManager memory allocation suggestions.

The memory allocation size (in bytes) is fed from LayerRendererChromium memory allocation changed callback
handler to CCLayerTreeHost. At that point we adjust the limits, using the existing notions of preferred and
max limits.

On android, the preferred limit is half the maximum (as it has always been), but on all other platforms the
preferred limit is now equal to max, in order to allow more agressive prepainting.

Finally, android has memory constraints dependant on viewportSize, but that logic has been pushed into
the GpuMemoryManager.

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererGpuMemoryAllocationChangedCallbackAdapter::onGpuMemoryAllocationChanged):
(WebCore::LayerRendererChromium::beginDrawingFrame):

  • platform/graphics/chromium/LayerRendererChromium.h:

(LayerRendererChromiumClient):

  • platform/graphics/chromium/TextureManager.cpp:

(WebCore::TextureManager::setMemoryAllocationLimitBytes):
(WebCore):

  • platform/graphics/chromium/TextureManager.h:

(TextureManager):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::setViewportSize):
(WebCore::CCLayerTreeHost::setContentsMemoryAllocationLimitBytes):
(WebCore):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHost):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::setContentsMemoryAllocationLimitBytes):
(WebCore):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(CCLayerTreeHostImplClient):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::postSetContentsMemoryAllocationLimitBytesToMainThreadOnImplThread):
(WebCore):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:
  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::postSetContentsMemoryAllocationLimitBytesToMainThreadOnImplThread):
(WebCore):
(WebCore::CCThreadProxy::setContentsMemoryAllocationLimitBytes):

  • platform/graphics/chromium/cc/CCThreadProxy.h:

(CCThreadProxy):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:
  • tests/LayerRendererChromiumTest.cpp:
1:38 PM Changeset in webkit [115880] by rakuco@webkit.org
  • 4 edits in trunk/Tools

webkitpy: Remove direct sys.platform usage in the PNG checker.
https://bugs.webkit.org/show_bug.cgi?id=85407

Reviewed by Tony Chang.

Work towards replacing direct sys.platform usage with
PlatformInfo.

  • Scripts/webkitpy/common/system/platforminfo_mock.py:

(MockPlatformInfo.init): Accept os_name and os_version as
arguments.

  • Scripts/webkitpy/style/checkers/png.py:

(PNGChecker.init): Create a PlatformInfo object instead of
using sys.platform when needed.
(PNGChecker._config_file_path): Check for the current platform via
PlatformInfo.

  • Scripts/webkitpy/style/checkers/png_unittest.py:

(PNGCheckerTest.test_check): Update tests after the changes above.

1:31 PM Changeset in webkit [115879] by aestes@apple.com
  • 16 edits
    2 adds in trunk/LayoutTests

Update Mac baselines after r115846.

  • platform/mac/fast/clip/008-expected.txt:
  • platform/mac/fast/clip/011-expected.txt:
  • platform/mac/fast/clip/012-expected.txt:
  • platform/mac/fast/forms/input-text-double-click-expected.txt:
  • platform/mac/fast/repaint/overflow-delete-line-expected.txt:
  • platform/mac/media/controls-after-reload-expected.txt:
  • platform/mac/media/controls-strict-expected.txt:
  • platform/mac/media/video-controls-rendering-expected.txt:
  • platform/mac/media/video-display-toggle-expected.txt:
  • platform/mac/media/video-no-audio-expected.txt:
  • platform/mac/media/video-playing-and-pause-expected.txt:
  • platform/mac/platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt: Added.
  • platform/mac/svg/custom/inline-svg-in-xhtml-expected.txt:
  • platform/mac/svg/hixie/mixed/003-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
  • platform/mac/transforms/3d/general/perspective-non-layer-expected.txt:
1:30 PM Changeset in webkit [115878] by leviw@chromium.org
  • 6 edits in branches/subpixellayout

Changing expectations and outputting overflow warnings to stdout instead of stderr to trigger test failure in debug builds.

1:29 PM Changeset in webkit [115877] by eae@chromium.org
  • 11 edits in trunk/Source

Fix usage of layout types in platform code
https://bugs.webkit.org/show_bug.cgi?id=85392

Reviewed by Eric Seidel.

Source/WebCore:

No new tests, no change in functionality.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleGestureTap):
Use rounded point for gestures as event handling is still mostly int based.

Source/WebKit/chromium:

  • src/WebHitTestResult.cpp:

(WebKit::WebHitTestResult::localPoint):

  • src/WebSurroundingText.cpp:

(WebKit::WebSurroundingText::initialize):
Explicitly cast WebPoint to IntPoint to avoid ambiguous conversion error.

Source/WebKit/efl:

  • ewk/ewk_frame.cpp:

(ewk_frame_focused_element_geometry_get):

  • ewk/ewk_view.cpp:

(_Ewk_View_Private_Data):
(ewk_view_scale_set):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
Use enclosingIntRect to convert visible rect for transform results to
line up with device pixels.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::editorState):
Use pixelSnapped rect for editor rect calculation as it represents a
device coordinate.

1:27 PM Changeset in webkit [115876] by Nate Chapin
  • 1 edit
    1 add in trunk/LayoutTests

2012-05-02 Nate Chapin <Nate Chapin>

Unreviewed, rebaseline pdf-commit-load-callbacks.html for chromium-linux.

  • platform/chromium-linux/http/tests/loading/pdf-commit-load-callbacks-expected.txt: Added.
1:17 PM Changeset in webkit [115875] by Csaba Osztrogonác
  • 243 edits
    7 copies
    44 adds in trunk/LayoutTests

[Qt] Unreviewed, rebaselining after changes in r115846.

REGRESSION(110072): Clipping is not applied on layers that are animated using platform code
https://bugs.webkit.org/show_bug.cgi?id=83954

  • platform/qt/animations/combo-transform-translate+scale-expected.txt: Added.
  • platform/qt/compositing/geometry/object-clip-rects-assertion-expected.txt: Added.
  • platform/qt/compositing/overflow/ancestor-overflow-expected.png:
  • platform/qt/compositing/overflow/ancestor-overflow-expected.txt:
  • platform/qt/css3/selectors3/html/css3-modsel-23-expected.png:
  • platform/qt/css3/selectors3/html/css3-modsel-23-expected.txt:
  • platform/qt/css3/selectors3/html/css3-modsel-24-expected.png:
  • platform/qt/css3/selectors3/html/css3-modsel-24-expected.txt:
  • platform/qt/css3/selectors3/html/css3-modsel-68-expected.png:
  • platform/qt/css3/selectors3/html/css3-modsel-68-expected.txt:
  • platform/qt/css3/selectors3/html/css3-modsel-69-expected.png:
  • platform/qt/css3/selectors3/html/css3-modsel-69-expected.txt:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-23-expected.png:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-23-expected.txt:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-24-expected.png:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-24-expected.txt:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-68-expected.png:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-68-expected.txt:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-69-expected.png:
  • platform/qt/css3/selectors3/xhtml/css3-modsel-69-expected.txt:
  • platform/qt/css3/selectors3/xml/css3-modsel-23-expected.png:
  • platform/qt/css3/selectors3/xml/css3-modsel-23-expected.txt:
  • platform/qt/css3/selectors3/xml/css3-modsel-24-expected.png:
  • platform/qt/css3/selectors3/xml/css3-modsel-24-expected.txt:
  • platform/qt/css3/selectors3/xml/css3-modsel-68-expected.png:
  • platform/qt/css3/selectors3/xml/css3-modsel-68-expected.txt:
  • platform/qt/css3/selectors3/xml/css3-modsel-69-expected.png:
  • platform/qt/css3/selectors3/xml/css3-modsel-69-expected.txt:
  • platform/qt/editing/pasteboard/4806874-expected.png:
  • platform/qt/editing/pasteboard/4806874-expected.txt:
  • platform/qt/editing/pasteboard/input-field-1-expected.png:
  • platform/qt/editing/pasteboard/input-field-1-expected.txt:
  • platform/qt/editing/selection/3690703-2-expected.png:
  • platform/qt/editing/selection/3690703-2-expected.txt:
  • platform/qt/editing/selection/3690703-expected.png:
  • platform/qt/editing/selection/3690703-expected.txt:
  • platform/qt/editing/selection/3690719-expected.png:
  • platform/qt/editing/selection/3690719-expected.txt:
  • platform/qt/editing/selection/4895428-3-expected.png:
  • platform/qt/editing/selection/4895428-3-expected.txt:
  • platform/qt/editing/selection/4975120-expected.png:
  • platform/qt/editing/selection/4975120-expected.txt:
  • platform/qt/editing/selection/drag-select-1-expected.png:
  • platform/qt/editing/selection/drag-select-1-expected.txt:
  • platform/qt/editing/selection/expanding-selections-expected.png:
  • platform/qt/editing/selection/expanding-selections-expected.txt:
  • platform/qt/editing/selection/leave-requested-block-expected.png:
  • platform/qt/editing/selection/leave-requested-block-expected.txt:
  • platform/qt/editing/selection/select-across-readonly-input-1-expected.png:
  • platform/qt/editing/selection/select-across-readonly-input-1-expected.txt:
  • platform/qt/editing/selection/select-across-readonly-input-2-expected.png:
  • platform/qt/editing/selection/select-across-readonly-input-2-expected.txt:
  • platform/qt/editing/selection/select-across-readonly-input-3-expected.png:
  • platform/qt/editing/selection/select-across-readonly-input-3-expected.txt:
  • platform/qt/editing/selection/select-across-readonly-input-4-expected.png:
  • platform/qt/editing/selection/select-across-readonly-input-4-expected.txt:
  • platform/qt/editing/selection/select-across-readonly-input-5-expected.png:
  • platform/qt/editing/selection/select-across-readonly-input-5-expected.txt:
  • platform/qt/fast/block/float/032-expected.png:
  • platform/qt/fast/block/float/032-expected.txt:
  • platform/qt/fast/block/float/033-expected.txt:
  • platform/qt/fast/block/float/avoidance-rtl-expected.txt:
  • platform/qt/fast/block/float/float-not-removed-from-next-sibling3-expected.png: Copied from LayoutTests/platform/qt/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.png.
  • platform/qt/fast/block/float/float-not-removed-from-next-sibling3-expected.txt:
  • platform/qt/fast/block/float/float-overflow-hidden-containing-block-width-expected.png:
  • platform/qt/fast/block/float/float-overflow-hidden-containing-block-width-expected.txt:
  • platform/qt/fast/block/float/in-margin-expected.png: Copied from LayoutTests/platform/qt/fast/repaint/iframe-scroll-repaint-expected.png.
  • platform/qt/fast/block/float/in-margin-expected.txt:
  • platform/qt/fast/block/float/overlapping-floats-with-overflow-hidden-expected.png:
  • platform/qt/fast/block/float/overlapping-floats-with-overflow-hidden-expected.txt:
  • platform/qt/fast/block/float/shrink-to-avoid-float-complexity-expected.png:
  • platform/qt/fast/block/float/shrink-to-avoid-float-complexity-expected.txt:
  • platform/qt/fast/block/lineboxcontain/parsing-invalid-expected.png:
  • platform/qt/fast/block/lineboxcontain/parsing-invalid-expected.txt:
  • platform/qt/fast/clip/008-expected.png:
  • platform/qt/fast/clip/008-expected.txt:
  • platform/qt/fast/clip/011-expected.png:
  • platform/qt/fast/clip/011-expected.txt:
  • platform/qt/fast/clip/012-expected.png:
  • platform/qt/fast/clip/012-expected.txt:
  • platform/qt/fast/clip/017-expected.png: Copied from LayoutTests/platform/qt/tables/mozilla_expected_failures/bugs/bug45621-expected.png.
  • platform/qt/fast/clip/017-expected.txt:
  • platform/qt/fast/css/input-search-padding-expected.png:
  • platform/qt/fast/css/input-search-padding-expected.txt:
  • platform/qt/fast/css/invalidation-errors-2-expected.png:
  • platform/qt/fast/css/invalidation-errors-2-expected.txt:
  • platform/qt/fast/css/invalidation-errors-expected.png:
  • platform/qt/fast/css/invalidation-errors-expected.txt:
  • platform/qt/fast/css/line-height-expected.png:
  • platform/qt/fast/css/line-height-expected.txt:
  • platform/qt/fast/css/nested-layers-with-hover-expected.png:
  • platform/qt/fast/css/nested-layers-with-hover-expected.txt:
  • platform/qt/fast/css/resize-single-axis-expected.txt: Added.
  • platform/qt/fast/css/text-input-with-webkit-border-radius-expected.png:
  • platform/qt/fast/css/text-input-with-webkit-border-radius-expected.txt:
  • platform/qt/fast/css/text-overflow-input-expected.txt:
  • platform/qt/fast/dom/isindex-001-expected.png: Added.
  • platform/qt/fast/dom/isindex-001-expected.txt:
  • platform/qt/fast/dynamic/subtree-boundary-percent-height-expected.png:
  • platform/qt/fast/dynamic/subtree-boundary-percent-height-expected.txt:
  • platform/qt/fast/dynamic/subtree-no-common-root-static-y-expected.png:
  • platform/qt/fast/dynamic/subtree-no-common-root-static-y-expected.txt:
  • platform/qt/fast/dynamic/subtree-table-cell-height-expected.png:
  • platform/qt/fast/dynamic/subtree-table-cell-height-expected.txt:
  • platform/qt/fast/events/context-no-deselect-expected.png: Added.
  • platform/qt/fast/events/context-no-deselect-expected.txt:
  • platform/qt/fast/events/mouse-relative-position-expected.txt: Added.
  • platform/qt/fast/forms/basic-inputs-expected.txt:
  • platform/qt/fast/forms/date/date-appearance-expected.png: Added.
  • platform/qt/fast/forms/date/date-appearance-expected.txt: Added.
  • platform/qt/fast/forms/encoding-test-expected.png: Copied from LayoutTests/platform/qt/fast/forms/search-styled-expected.png.
  • platform/qt/fast/forms/encoding-test-expected.txt:
  • platform/qt/fast/forms/fieldset-align-expected.png: Added.
  • platform/qt/fast/forms/fieldset-align-expected.txt:
  • platform/qt/fast/forms/floating-textfield-relayout-expected.png: Added.
  • platform/qt/fast/forms/floating-textfield-relayout-expected.txt:
  • platform/qt/fast/forms/input-align-expected.png: Added.
  • platform/qt/fast/forms/input-align-expected.txt:
  • platform/qt/fast/forms/input-appearance-bkcolor-expected.png: Added.
  • platform/qt/fast/forms/input-appearance-bkcolor-expected.txt:
  • platform/qt/fast/forms/input-appearance-default-bkcolor-expected.png: Added.
  • platform/qt/fast/forms/input-appearance-default-bkcolor-expected.txt:
  • platform/qt/fast/forms/input-appearance-disabled-expected.png: Added.
  • platform/qt/fast/forms/input-appearance-disabled-expected.txt:
  • platform/qt/fast/forms/input-appearance-focus-expected.png: Added.
  • platform/qt/fast/forms/input-appearance-focus-expected.txt:
  • platform/qt/fast/forms/input-appearance-preventDefault-expected.png: Added.
  • platform/qt/fast/forms/input-appearance-preventDefault-expected.txt:
  • platform/qt/fast/forms/input-appearance-readonly-expected.png: Added.
  • platform/qt/fast/forms/input-appearance-readonly-expected.txt:
  • platform/qt/fast/forms/input-appearance-selection-expected.png: Added.
  • platform/qt/fast/forms/input-appearance-visibility-expected.png: Added.
  • platform/qt/fast/forms/input-appearance-visibility-expected.txt:
  • platform/qt/fast/forms/input-baseline-expected.png: Added.
  • platform/qt/fast/forms/input-baseline-expected.txt:
  • platform/qt/fast/forms/input-double-click-selection-gap-bug-expected.png: Added.
  • platform/qt/fast/forms/input-double-click-selection-gap-bug-expected.txt:
  • platform/qt/fast/forms/input-field-text-truncated-expected.png: Added.
  • platform/qt/fast/forms/input-field-text-truncated-expected.txt:
  • platform/qt/fast/forms/input-placeholder-visibility-1-expected.png:
  • platform/qt/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/qt/fast/forms/input-placeholder-visibility-3-expected.png:
  • platform/qt/fast/forms/input-placeholder-visibility-3-expected.txt:
  • platform/qt/fast/forms/input-readonly-empty-expected.png: Added.
  • platform/qt/fast/forms/input-readonly-empty-expected.txt:
  • platform/qt/fast/forms/input-spaces-expected.png: Added.
  • platform/qt/fast/forms/input-spaces-expected.txt:
  • platform/qt/fast/forms/input-text-click-inside-expected.png: Added.
  • platform/qt/fast/forms/input-text-click-inside-expected.txt:
  • platform/qt/fast/forms/input-text-double-click-expected.png: Added.
  • platform/qt/fast/forms/input-text-double-click-expected.txt:
  • platform/qt/fast/forms/input-text-option-delete-expected.png: Added.
  • platform/qt/fast/forms/input-text-option-delete-expected.txt:
  • platform/qt/fast/forms/input-text-self-emptying-click-expected.png: Added.
  • platform/qt/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/qt/fast/forms/input-width-expected.png: Copied from LayoutTests/platform/qt/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.png.
  • platform/qt/fast/forms/input-width-expected.txt:
  • platform/qt/fast/forms/number/input-appearance-number-rtl-expected.png:
  • platform/qt/fast/forms/number/input-appearance-number-rtl-expected.txt:
  • platform/qt/fast/forms/number/input-appearance-spinbutton-disabled-readonly-expected.png:
  • platform/qt/fast/forms/number/input-appearance-spinbutton-disabled-readonly-expected.txt:
  • platform/qt/fast/forms/number/input-appearance-spinbutton-layer-expected.png:
  • platform/qt/fast/forms/number/input-appearance-spinbutton-layer-expected.txt:
  • platform/qt/fast/forms/placeholder-position-expected.png:
  • platform/qt/fast/forms/placeholder-position-expected.txt:
  • platform/qt/fast/forms/search-cancel-button-style-sharing-expected.png:
  • platform/qt/fast/forms/search-cancel-button-style-sharing-expected.txt:
  • platform/qt/fast/forms/search-display-none-cancel-button-expected.png:
  • platform/qt/fast/forms/search-display-none-cancel-button-expected.txt:
  • platform/qt/fast/forms/search-rtl-expected.png:
  • platform/qt/fast/forms/search-rtl-expected.txt:
  • platform/qt/fast/forms/search-styled-expected.png:
  • platform/qt/fast/forms/search-styled-expected.txt:
  • platform/qt/fast/forms/search-vertical-alignment-expected.png:
  • platform/qt/fast/forms/search-vertical-alignment-expected.txt:
  • platform/qt/fast/forms/text-style-color-expected.png: Added.
  • platform/qt/fast/forms/text-style-color-expected.txt:
  • platform/qt/fast/forms/textfield-focus-ring-expected.png:
  • platform/qt/fast/forms/textfield-focus-ring-expected.txt:
  • platform/qt/fast/frames/take-focus-from-iframe-expected.png:
  • platform/qt/fast/frames/take-focus-from-iframe-expected.txt:
  • platform/qt/fast/html/details-no-summary4-expected.png:
  • platform/qt/fast/html/details-no-summary4-expected.txt:
  • platform/qt/fast/html/details-open-javascript-expected.png:
  • platform/qt/fast/html/details-open-javascript-expected.txt:
  • platform/qt/fast/html/details-open2-expected.png:
  • platform/qt/fast/html/details-open2-expected.txt:
  • platform/qt/fast/html/details-open4-expected.png:
  • platform/qt/fast/html/details-open4-expected.txt:
  • platform/qt/fast/layers/add-layer-with-nested-stacking-expected.txt:
  • platform/qt/fast/layers/remove-layer-with-nested-stacking-expected.png:
  • platform/qt/fast/layers/remove-layer-with-nested-stacking-expected.txt:
  • platform/qt/fast/layers/self-painting-outline-expected.txt:
  • platform/qt/fast/lists/dynamic-marker-crash-expected.png: Added.
  • platform/qt/fast/lists/dynamic-marker-crash-expected.txt:
  • platform/qt/fast/multicol/layers-split-across-columns-expected.png:
  • platform/qt/fast/multicol/layers-split-across-columns-expected.txt:
  • platform/qt/fast/overflow/004-expected.png: Added.
  • platform/qt/fast/overflow/004-expected.txt:
  • platform/qt/fast/overflow/line-clamp-expected.png:
  • platform/qt/fast/overflow/line-clamp-expected.txt:
  • platform/qt/fast/overflow/overflow-focus-ring-expected.png: Added.
  • platform/qt/fast/overflow/overflow-focus-ring-expected.txt:
  • platform/qt/fast/repaint/iframe-scroll-repaint-expected.png:
  • platform/qt/fast/repaint/iframe-scroll-repaint-expected.txt:
  • platform/qt/fast/repaint/lines-with-layout-delta-expected.png:
  • platform/qt/fast/repaint/lines-with-layout-delta-expected.txt:
  • platform/qt/fast/repaint/opacity-change-on-overflow-float-expected.png:
  • platform/qt/fast/repaint/opacity-change-on-overflow-float-expected.txt:
  • platform/qt/fast/repaint/overflow-clip-subtree-layout-expected.txt:
  • platform/qt/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.png:
  • platform/qt/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
  • platform/qt/fast/repaint/repaint-resized-overflow-expected.png:
  • platform/qt/fast/repaint/repaint-resized-overflow-expected.txt:
  • platform/qt/fast/repaint/search-field-cancel-expected.png:
  • platform/qt/fast/repaint/search-field-cancel-expected.txt:
  • platform/qt/fast/repaint/subtree-layoutstate-transform-expected.png: Added.
  • platform/qt/fast/repaint/subtree-layoutstate-transform-expected.txt:
  • platform/qt/fast/repaint/subtree-root-clip-2-expected.txt:
  • platform/qt/fast/repaint/subtree-root-clip-3-expected.txt:
  • platform/qt/fast/repaint/subtree-root-clip-expected.txt:
  • platform/qt/fast/repaint/subtree-root-skipped-expected.png:
  • platform/qt/fast/repaint/subtree-root-skipped-expected.txt:
  • platform/qt/fast/repaint/table-hover-on-link-expected.png: Copied from LayoutTests/platform/qt/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.png.
  • platform/qt/fast/repaint/table-hover-on-link-expected.txt: Added.
  • platform/qt/fast/replaced/replaced-breaking-expected.txt:
  • platform/qt/fast/replaced/replaced-breaking-mixture-expected.png:
  • platform/qt/fast/replaced/replaced-breaking-mixture-expected.txt:
  • platform/qt/fast/replaced/width100percent-searchfield-expected.png:
  • platform/qt/fast/replaced/width100percent-searchfield-expected.txt:
  • platform/qt/fast/replaced/width100percent-textfield-expected.png:
  • platform/qt/fast/replaced/width100percent-textfield-expected.txt:
  • platform/qt/fast/speech/input-appearance-searchandspeech-expected.png: Added.
  • platform/qt/fast/speech/input-appearance-searchandspeech-expected.txt: Added.
  • platform/qt/fast/speech/input-appearance-speechbutton-expected.png: Added.
  • platform/qt/fast/speech/input-appearance-speechbutton-expected.txt: Added.
  • platform/qt/fast/speech/speech-bidi-rendering-expected.png: Added.
  • platform/qt/fast/speech/speech-bidi-rendering-expected.txt: Added.
  • platform/qt/fast/table/029-expected.png:
  • platform/qt/fast/table/029-expected.txt:
  • platform/qt/fast/table/colspanMinWidth-expected.png:
  • platform/qt/fast/table/colspanMinWidth-expected.txt:
  • platform/qt/fast/table/colspanMinWidth-vertical-expected.png:
  • platform/qt/fast/table/colspanMinWidth-vertical-expected.txt:
  • platform/qt/fast/table/overflowHidden-expected.png:
  • platform/qt/fast/table/overflowHidden-expected.txt:
  • platform/qt/fast/table/spanOverlapRepaint-expected.png:
  • platform/qt/fast/table/spanOverlapRepaint-expected.txt:
  • platform/qt/fast/table/text-field-baseline-expected.png:
  • platform/qt/fast/table/text-field-baseline-expected.txt:
  • platform/qt/fast/text/textIteratorNilRenderer-expected.txt:
  • platform/qt/fast/transforms/transformed-focused-text-input-expected.png:
  • platform/qt/fast/transforms/transformed-focused-text-input-expected.txt:
  • platform/qt/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/qt/plugins/mouse-click-plugin-clears-selection-expected.png: Copied from LayoutTests/platform/qt/fast/repaint/iframe-scroll-repaint-expected.png.
  • platform/qt/plugins/mouse-click-plugin-clears-selection-expected.txt:
  • platform/qt/svg/custom/inline-svg-in-xhtml-expected.txt:
  • platform/qt/svg/hixie/mixed/003-expected.png:
  • platform/qt/svg/hixie/mixed/003-expected.txt:
  • platform/qt/tables/mozilla/bugs/45621-expected.png:
  • platform/qt/tables/mozilla/bugs/45621-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug1188-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug154780-expected.png:
  • platform/qt/tables/mozilla/bugs/bug154780-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug18359-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug24200-expected.png:
  • platform/qt/tables/mozilla/bugs/bug24200-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug2479-2-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug2479-3-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug2479-4-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug28928-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug4382-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug46368-1-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug46368-2-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug51037-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug55545-expected.png:
  • platform/qt/tables/mozilla/bugs/bug55545-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug7342-expected.txt:
  • platform/qt/tables/mozilla/dom/tableDom-expected.txt:
  • platform/qt/tables/mozilla/other/move_row-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug106966-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug106966-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png: Added.
  • platform/qt/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug45621-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug45621-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug92647-1-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug92647-1-expected.txt:
  • platform/qt/test_expectations.txt:
1:12 PM Changeset in webkit [115874] by rakuco@webkit.org
  • 2 edits in trunk/Tools

[watchlist] Update watchlist rules for EFL-related patches.
http://bugs.webkit.org/show_bug.cgi?id=85160

Reviewed by Eric Seidel.

  • Scripts/webkitpy/common/config/watchlist: Monitor

Source/WTF/wtf/efl and LayoutTests/platform/efl as well.

1:06 PM Changeset in webkit [115873] by eric.carlson@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Mac media engine doesn't reccognize canPlayType('audio/wav; codecs=1')
https://bugs.webkit.org/show_bug.cgi?id=85409

Not reviewed, new platform results added after r115798.

  • platform/mac/media/media-can-play-wav-audio-expected.txt: Added.
1:05 PM Changeset in webkit [115872] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unreviewed gardening after r115821.

  • platform/qt-5.0-wk2/fast/dom/Window/window-properties-expected.txt: Updated.
1:01 PM Changeset in webkit [115871] by fpizlo@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed, changing test expectations due to https://bugs.webkit.org/show_bug.cgi?id=85408

  • platform/mac/test_expectations.txt:
12:57 PM Changeset in webkit [115870] by kbr@google.com
  • 8 edits in trunk

Don't allocate stencil buffer if stencil flag is false in context creation attributes
https://bugs.webkit.org/show_bug.cgi?id=85317

Reviewed by Dimitri Glazkov.

Source/WebCore:

Make it appear to WebGL application that there is no stencil
buffer even if the underlying GraphicsContext3D allocated one.
Verified intended behavior with test case from Mozilla's bug report.

Updated context-attributes-alpha-depth-stencil-antialias.html test
from Khronos repository. Ran WebGL layout tests on Linux in
Chrome's DRT and on Mac OS in Safari's.

  • html/canvas/WebGLFramebuffer.cpp:

(WebCore::WebGLFramebuffer::hasStencilBuffer): Added query method.
(WebCore): Changed desired semantics of isValidRenderbuffer.

  • html/canvas/WebGLFramebuffer.h:

(WebGLFramebuffer): Added hasStencilBuffer.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::initializeNewContext):

Clear new flag.

(WebCore::WebGLRenderingContext::bindFramebuffer):

Reset stencil test upon framebuffer change.

(WebCore::WebGLRenderingContext::disable):

Cache flag; reset stencil test.

(WebCore::WebGLRenderingContext::enable):

Cache flag; reset stencil test.

(WebCore::WebGLRenderingContext::framebufferRenderbuffer):

Reset stencil test upon renderbuffer change.

(WebCore::WebGLRenderingContext::getContextAttributes):

Force depth and stencil to false if false was requested.

(WebCore::WebGLRenderingContext::isEnabled):

Return cached flag.

(WebCore::WebGLRenderingContext::renderbufferStorage):

Reset stencil test upon renderbuffer reallocation.

(WebCore::WebGLRenderingContext::applyStencilTest):

Enable or disable stencil test based on request and availability.

(WebCore::WebGLRenderingContext::enableOrDisable):

Helper function.

  • html/canvas/WebGLRenderingContext.h:

(WebGLRenderingContext):

Added cache of STENCIL_TEST flag. Deleted unused m_stencilBits.

LayoutTests:

  • fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias-expected.txt:
  • fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html:
12:50 PM Changeset in webkit [115869] by rniwa@webkit.org
  • 2 edits
    2 adds in trunk

Drag and drop text into table is pasting the text in the next <td> element
https://bugs.webkit.org/show_bug.cgi?id=75004

Reviewed by Darin Adler.

The bug was caused by ReplaceSelectionCommand adjusting the insertion position to be before
of the block element containing the insertion position even when the block element is a table cell.

Fixed the bug by not moving the insertion position before the table cell in this case.

Test: editing/pasteboard/paste-into-table-cell.html

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply):

12:47 PM Changeset in webkit [115868] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=85309
supportsExpandedScrollbars() should check for the method we actually call rather
than a related method

Reviewed by Anders Carlsson.

Missing colon.

  • platform/mac/ScrollbarThemeMac.mm:

(WebCore::supportsExpandedScrollbars):

12:47 PM Changeset in webkit [115867] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix GCC X86 build error
https://bugs.webkit.org/show_bug.cgi?id=85379

Patch by Yong Li <yoli@rim.com> on 2012-05-02
Reviewed by Rob Buis.

Always explicitly claim ".text" to make sure
functions defined with inline assembly will be
created in the correct section.

  • dfg/DFGOperations.cpp:

(JSC):

12:46 PM Changeset in webkit [115866] by zandobersek@gmail.com
  • 131 edits in trunk/LayoutTests

Unreviewed, rebaselining after changes in r115846.

  • fast/repaint/table-hover-on-link-expected.txt:
  • platform/gtk/editing/inserting/before-after-input-element-expected.txt:
  • platform/gtk/editing/pasteboard/4806874-expected.txt:
  • platform/gtk/editing/pasteboard/input-field-1-expected.txt:
  • platform/gtk/editing/selection/3690703-2-expected.txt:
  • platform/gtk/editing/selection/3690703-expected.txt:
  • platform/gtk/editing/selection/3690719-expected.txt:
  • platform/gtk/editing/selection/4895428-3-expected.txt:
  • platform/gtk/editing/selection/4975120-expected.txt:
  • platform/gtk/editing/selection/drag-select-1-expected.txt:
  • platform/gtk/editing/selection/select-across-readonly-input-1-expected.txt:
  • platform/gtk/editing/selection/select-across-readonly-input-4-expected.txt:
  • platform/gtk/editing/selection/select-across-readonly-input-5-expected.txt:
  • platform/gtk/editing/selection/select-from-textfield-outwards-expected.txt:
  • platform/gtk/editing/spelling/inline_spelling_markers-expected.txt:
  • platform/gtk/fast/block/float/032-expected.txt:
  • platform/gtk/fast/block/float/033-expected.txt:
  • platform/gtk/fast/block/float/avoidance-rtl-expected.txt:
  • platform/gtk/fast/block/float/float-not-removed-from-next-sibling3-expected.txt:
  • platform/gtk/fast/block/float/float-overflow-hidden-containing-block-width-expected.txt:
  • platform/gtk/fast/block/float/in-margin-expected.txt:
  • platform/gtk/fast/block/float/overlapping-floats-with-overflow-hidden-expected.txt:
  • platform/gtk/fast/block/float/shrink-to-avoid-float-complexity-expected.txt:
  • platform/gtk/fast/block/lineboxcontain/parsing-invalid-expected.txt:
  • platform/gtk/fast/block/margin-collapse/103-expected.txt:
  • platform/gtk/fast/clip/008-expected.txt:
  • platform/gtk/fast/clip/011-expected.txt:
  • platform/gtk/fast/clip/012-expected.txt:
  • platform/gtk/fast/clip/017-expected.txt:
  • platform/gtk/fast/css/input-search-padding-expected.txt:
  • platform/gtk/fast/css/invalidation-errors-2-expected.txt:
  • platform/gtk/fast/css/invalidation-errors-expected.txt:
  • platform/gtk/fast/css/text-overflow-input-expected.txt:
  • platform/gtk/fast/dom/isindex-001-expected.txt:
  • platform/gtk/fast/dom/isindex-002-expected.txt:
  • platform/gtk/fast/dynamic/subtree-boundary-percent-height-expected.txt:
  • platform/gtk/fast/dynamic/subtree-no-common-root-static-y-expected.txt:
  • platform/gtk/fast/dynamic/subtree-table-cell-height-expected.txt:
  • platform/gtk/fast/events/autoscroll-expected.txt:
  • platform/gtk/fast/events/context-no-deselect-expected.txt:
  • platform/gtk/fast/forms/box-shadow-override-expected.txt:
  • platform/gtk/fast/forms/encoding-test-expected.txt:
  • platform/gtk/fast/forms/fieldset-align-expected.txt:
  • platform/gtk/fast/forms/input-appearance-bkcolor-expected.txt:
  • platform/gtk/fast/forms/input-appearance-focus-expected.txt:
  • platform/gtk/fast/forms/input-appearance-height-expected.txt:
  • platform/gtk/fast/forms/input-appearance-readonly-expected.txt:
  • platform/gtk/fast/forms/input-appearance-selection-expected.txt:
  • platform/gtk/fast/forms/input-appearance-width-expected.txt:
  • platform/gtk/fast/forms/input-baseline-expected.txt:
  • platform/gtk/fast/forms/input-double-click-selection-gap-bug-expected.txt:
  • platform/gtk/fast/forms/input-field-text-truncated-expected.txt:
  • platform/gtk/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/gtk/fast/forms/input-readonly-autoscroll-expected.txt:
  • platform/gtk/fast/forms/input-readonly-empty-expected.txt:
  • platform/gtk/fast/forms/input-table-expected.txt:
  • platform/gtk/fast/forms/input-text-click-inside-expected.txt:
  • platform/gtk/fast/forms/input-text-click-outside-expected.txt:
  • platform/gtk/fast/forms/input-text-double-click-expected.txt:
  • platform/gtk/fast/forms/input-text-drag-down-expected.txt:
  • platform/gtk/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/gtk/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/gtk/fast/forms/input-width-expected.txt:
  • platform/gtk/fast/forms/placeholder-position-expected.txt:
  • platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
  • platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
  • platform/gtk/fast/forms/search-rtl-expected.txt:
  • platform/gtk/fast/forms/search-styled-expected.txt:
  • platform/gtk/fast/forms/searchfield-heights-expected.txt:
  • platform/gtk/fast/forms/tabbing-input-iframe-expected.txt:
  • platform/gtk/fast/forms/textfield-focus-ring-expected.txt:
  • platform/gtk/fast/forms/textfield-overflow-expected.txt:
  • platform/gtk/fast/forms/validation-message-appearance-expected.txt:
  • platform/gtk/fast/frames/take-focus-from-iframe-expected.txt:
  • platform/gtk/fast/html/details-no-summary4-expected.txt:
  • platform/gtk/fast/html/details-open-javascript-expected.txt:
  • platform/gtk/fast/html/details-open2-expected.txt:
  • platform/gtk/fast/html/details-open4-expected.txt:
  • platform/gtk/fast/invalid/residual-style-expected.txt:
  • platform/gtk/fast/layers/add-layer-with-nested-stacking-expected.txt:
  • platform/gtk/fast/layers/remove-layer-with-nested-stacking-expected.txt:
  • platform/gtk/fast/layers/self-painting-outline-expected.txt:
  • platform/gtk/fast/multicol/layers-split-across-columns-expected.txt:
  • platform/gtk/fast/overflow/004-expected.txt:
  • platform/gtk/fast/overflow/clip-rects-fixed-ancestor-expected.txt:
  • platform/gtk/fast/overflow/overflow-focus-ring-expected.txt:
  • platform/gtk/fast/repaint/inline-relative-positioned-expected.txt:
  • platform/gtk/fast/repaint/layer-outline-expected.txt:
  • platform/gtk/fast/repaint/layer-outline-horizontal-expected.txt:
  • platform/gtk/fast/repaint/opacity-change-on-overflow-float-expected.txt:
  • platform/gtk/fast/repaint/overflow-clip-subtree-layout-expected.txt:
  • platform/gtk/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
  • platform/gtk/fast/repaint/repaint-resized-overflow-expected.txt:
  • platform/gtk/fast/repaint/subtree-layoutstate-transform-expected.txt:
  • platform/gtk/fast/repaint/subtree-root-clip-2-expected.txt:
  • platform/gtk/fast/repaint/subtree-root-clip-3-expected.txt:
  • platform/gtk/fast/repaint/subtree-root-clip-expected.txt:
  • platform/gtk/fast/repaint/subtree-root-skipped-expected.txt:
  • platform/gtk/fast/replaced/replaced-breaking-expected.txt:
  • platform/gtk/fast/replaced/replaced-breaking-mixture-expected.txt:
  • platform/gtk/fast/table/003-expected.txt:
  • platform/gtk/fast/table/029-expected.txt:
  • platform/gtk/fast/table/colspanMinWidth-expected.txt:
  • platform/gtk/fast/table/overflowHidden-expected.txt:
  • platform/gtk/fast/table/text-field-baseline-expected.txt:
  • platform/gtk/fast/text/selection-painted-separately-expected.txt:
  • platform/gtk/fast/text/selection-rect-rounding-expected.txt:
  • platform/gtk/fast/text/textIteratorNilRenderer-expected.txt:
  • platform/gtk/fast/transforms/transformed-focused-text-input-expected.txt:
  • platform/gtk/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/gtk/plugins/mouse-click-plugin-clears-selection-expected.txt:
  • platform/gtk/svg/custom/inline-svg-in-xhtml-expected.txt:
  • platform/gtk/tables/mozilla/bugs/45621-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug1188-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug12384-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug24200-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug2479-2-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug2479-3-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug2479-4-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug28928-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug4382-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug44505-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug55545-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug7342-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug99948-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug106966-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug45621-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug92647-1-expected.txt:
12:41 PM Changeset in webkit [115865] by fpizlo@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed, changing test expectations due to https://bugs.webkit.org/show_bug.cgi?id=85404

  • platform/mac/test_expectations.txt:
12:37 PM Changeset in webkit [115864] by Nate Chapin
  • 4 edits
    3 adds in trunk/LayoutTests

2012-05-02 Nate Chapin <Nate Chapin>

Unreviewed, expectations updates after r115774.

  • platform/chromium-win/http/tests/loading/pdf-commit-load-callbacks-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/http/tests/loading/pdf-commit-load-callbacks-expected.txt: Added.
  • platform/gtk/test_expectations.txt:
  • platform/qt/Skipped:
  • platform/qt/http/tests/loading/pdf-commit-load-callbacks-expected.txt: Added.
12:28 PM Changeset in webkit [115863] by fpizlo@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed, changing test expectations due to https://bugs.webkit.org/show_bug.cgi?id=85401

  • platform/mac/test_expectations.txt:
12:19 PM Changeset in webkit [115862] by vestbo@webkit.org
  • 14 edits
    2 deletes in trunk

Revert r115191 - "Make the web view's url property follow the active url"

It uncovered/caused issues in the icon-implementation that can't be
easily fixed, so rolling out instead.

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

Rubber-stamped by Simon Hausmann.

12:18 PM Changeset in webkit [115861] by oliver@apple.com
  • 16 edits in trunk

Unreviewed, rolling out r115388.
http://trac.webkit.org/changeset/115388
https://bugs.webkit.org/show_bug.cgi?id=85011

This caused many weird performance problems, and needs to be
landed in pieces.

Source/JavaScriptCore:

  • dfg/DFGOperations.cpp:
  • heap/Heap.cpp:

(JSC::Heap::getConservativeRegisterRoots):
(JSC::Heap::markRoots):

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::dumpCaller):
(JSC):

  • interpreter/CallFrame.h:

(JSC::ExecState::init):
(ExecState):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::prepareForRepeatCall):
(JSC::Interpreter::privateExecute):

  • interpreter/Interpreter.h:

(JSC::Interpreter::execute):

  • interpreter/RegisterFile.cpp:

(JSC::RegisterFile::growSlowCase):
(JSC::RegisterFile::gatherConservativeRoots):

  • interpreter/RegisterFile.h:

(JSC::RegisterFile::end):
(JSC::RegisterFile::size):
(JSC::RegisterFile::addressOfEnd):
(RegisterFile):
(JSC::RegisterFile::RegisterFile):
(JSC::RegisterFile::shrink):
(JSC::RegisterFile::grow):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):
(JSC::jitCompileFor):
(JSC::lazyLinkFor):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::handleHostCall):

  • llint/LowLevelInterpreter.asm:
  • runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::arityCheckFor):

LayoutTests:

  • fast/js/global-recursion-on-full-stack-expected.txt:
  • fast/js/stack-trace-expected.txt:
12:05 PM Changeset in webkit [115860] by Antti Koivisto
  • 10 edits in trunk/Source/WebCore

Move title and media queries from StyleSheetInternal to CSSStyleSheet
https://bugs.webkit.org/show_bug.cgi?id=85387

Reviewed by Anders Carlsson.

Stylesheet title and media queries are determined by the owner, not by the stylesheet itself.
The fields belong to CSSStyleSheet.

This will make it easier to share StyleSheetInternal instances between documents.

  • css/CSSStyleSheet.cpp:

(WebCore::StyleSheetInternal::StyleSheetInternal):
(WebCore::StyleSheetInternal::isCacheable):
(WebCore):
(WebCore::CSSStyleSheet::setDisabled):

Invalidate the document style directly instead of ping-ponging through StyleSheetInternal.

(WebCore::CSSStyleSheet::setMediaQueries):
(WebCore::CSSStyleSheet::media):

  • css/CSSStyleSheet.h:

(StyleSheetInternal):
(WebCore::StyleSheetInternal::originalURL):
(WebCore::StyleSheetInternal::hasCharsetRule):
(WebCore::CSSStyleSheet::mediaQueries):
(CSSStyleSheet):
(WebCore::CSSStyleSheet::setTitle):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::appendAuthorStylesheets):
(WebCore::StyleResolver::collectMatchingRulesForList):

  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createCSSStyleSheet):

  • dom/ProcessingInstruction.cpp:

(WebCore::ProcessingInstruction::setCSSStyleSheet):

  • dom/StyleElement.cpp:

(WebCore::StyleElement::createSheet):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::parseAttribute):
(WebCore::HTMLLinkElement::setCSSStyleSheet):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::parseAttribute):

  • svg/SVGStyleElement.cpp:

(WebCore::SVGStyleElement::parseAttribute):

12:01 PM Changeset in webkit [115859] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

When viewing a PDF, the Safari Status Bar shows other text
https://bugs.webkit.org/show_bug.cgi?id=85395
<rdar://problem/11297250>

Reviewed by Beth Dakin.

Set the layer contents placement for the WKView so that its layer will get masksToBounds set.

  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:contextRef:pageGroupRef:]):

11:53 AM Changeset in webkit [115858] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed, removing recent test expectations for changes in r115846
to get proper new baselines from the buildbots.

  • platform/gtk/test_expectations.txt:
11:52 AM Changeset in webkit [115857] by alexis.menard@openbossa.org
  • 4 edits in trunk/Source/WebCore

Unreviewed Qt build fix with GCC 4.7.0.

  • platform/qt/DeviceMotionProviderQt.h:

(DeviceMotionProviderQt):

  • platform/qt/DeviceOrientationProviderQt.cpp:

(WebCore::DeviceOrientationProviderQt::~DeviceOrientationProviderQt):
(WebCore):

  • platform/qt/DeviceOrientationProviderQt.h:

(DeviceOrientationProviderQt):

11:50 AM Changeset in webkit [115856] by jchaffraix@webkit.org
  • 5 edits
    4 adds
    2 deletes in trunk/LayoutTests

Unreviewed Chromium gardening.

  • platform/chromium-mac-leopard/fast/layers/add-layer-with-nested-stacking-expected.txt: Added.
  • platform/chromium-mac-leopard/fast/speech/input-appearance-searchandspeech-expected.txt: Added.
  • platform/chromium-mac-snowleopard/fast/layers/add-layer-with-nested-stacking-expected.txt: Added.
  • platform/chromium-mac/editing/selection/select-from-textfield-outwards-expected.txt:
  • platform/chromium-mac/editing/spelling/inline_spelling_markers-expected.txt: Removed.
  • platform/chromium-mac/fast/forms/form-element-geometry-expected.txt:
  • platform/chromium-mac/fast/forms/input-value-expected.txt:
  • platform/chromium-mac/fast/layers/add-layer-with-nested-stacking-expected.txt: Added.
  • platform/chromium-mac/fast/layers/remove-layer-with-nested-stacking-expected.txt: Removed.

Rebaselined the previous tests.

  • platform/chromium/test_expectations.txt:

Tweaked the expectation files to cover the failures on Mac.

11:26 AM Changeset in webkit [115855] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebCore

[Texmap] Enable css filters in TextureMapperGL
https://bugs.webkit.org/show_bug.cgi?id=75778

Unreviewed build fix to greenify the Qt Minimal bot.

  • platform/graphics/texmap/TextureMapperShaderManager.h:
11:22 AM Changeset in webkit [115854] by jchaffraix@webkit.org
  • 3 edits in trunk/LayoutTests

Unreviewed expectation updates after r115846.

  • platform/gtk/test_expectations.txt:
  • platform/qt/test_expectations.txt:

Added more files after triaging the diffs.

11:01 AM Changeset in webkit [115853] by zandobersek@gmail.com
  • 5 edits in trunk/Tools

Reftest mismatches are providing undefined diff percent in results.html
https://bugs.webkit.org/show_bug.cgi?id=85283

Reviewed by Ojan Vafai.

When writing test results for a reftest mismatch, also take into account the
difference percent that is produced when generating image diff. This value is
then used when creating test results in the form of dictionaries, stored under
the 'image_diff_percent' key. It ultimately ends up in JSON results data,
providing additional information about the reftest difference.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(interpret_test_failures): Store the diff percent for reftest failure under the
'image_diff_percent' key.

  • Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:

(write_test_result): Also set the new diff_percent attribute of the reftest
mismatch failure to the value of the difference percent ImageDiff outputs.

  • Scripts/webkitpy/layout_tests/models/test_failures.py:

(FailureReftestMismatch.init): Add the new diff_percent attribute with the
default value of None.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(EndToEndTest.test_reftest_with_two_notrefs): Update the test case expected results.

10:57 AM Changeset in webkit [115852] by Philippe Normand
  • 2 edits in trunk/Source/WebCore

[GTK] Compilation warnings in RenderTheme
https://bugs.webkit.org/show_bug.cgi?id=85286

Reviewed by Martin Robinson.

Removed un-needed code and refactored fileListNameForWidth
accordingly to avoid un-used variable warnings during compilation.

  • platform/gtk/RenderThemeGtk.cpp:

(WebCore):
(WebCore::RenderThemeGtk::fileListNameForWidth):

10:50 AM Changeset in webkit [115851] by eae@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/page/EventHandler.cpp

Whitespace cleanup on branch.

10:49 AM Changeset in webkit [115850] by eae@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebKit2/WebProcess/WebPage/WebPage.cpp

qt wk2 build fix on branch.

10:48 AM Changeset in webkit [115849] by leviw@chromium.org
  • 6 edits in branches/subpixellayout

Adding skips for overflowing test cases in all platform test_expectations.txt files, and adding parenthesis for FractionalLayoutUnit's overflow message.

10:45 AM Changeset in webkit [115848] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

NULL ptr in WebCore::AppendNodeCommand::AppendNodeCommand
https://bugs.webkit.org/show_bug.cgi?id=75843

Reviewed by Tony Chang.

Source/WebCore:

The crash was caused by indentIntoBlockquote's passing a bad outerBlock to moveParagraphsWithClone.

When the position is created after blockquote in the following DOM:
BODY

  • BLOCKQUOTE style=margin: 0 0 0 40px; border: none; padding: 0px;

E

#text "\nx\n"

VisiblePosition's constructor (of startOfContents) turns the position into a legacy position (blockquote, 0).
The crash occurs because this position doesn't belong in the same paragraph as E, which is the paragraph
we're trying to move into the blockquote.

Fixed bug by calling positionInParentAfterNode instead of positionAfterNode for now. We should eventually be
able to use positionAfterNode here once VisiblePosition's constructor starts handling before/after positions
properly.

Test: editing/execCommand/indent-with-after-content-crash.html

  • editing/IndentOutdentCommand.cpp:

(WebCore::IndentOutdentCommand::indentIntoBlockquote):

LayoutTests:

Add a regression test.

  • editing/execCommand/indent-with-after-content-crash-expected.txt: Added.
  • editing/execCommand/indent-with-after-content-crash.html: Added.
10:42 AM Changeset in webkit [115847] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

WebWindowFadeAnimation ignores "duration" parameter. https://bugs.webkit.org/show_bug.cgi?id=85386

Reviewed by Brady Eidson.

Ignoring the "duration" parameter causes the full screen fade and scale animations
to get out of sync.

  • platform/mac/WebWindowAnimation.mm:

(-[WebWindowFadeAnimation initWithDuration:window:initialAlpha:finalAlpha:]):

10:17 AM Changeset in webkit [115846] by jchaffraix@webkit.org
  • 20 edits
    6 adds in trunk

REGRESSION(110072): Clipping is not applied on layers that are animated using platform code
https://bugs.webkit.org/show_bug.cgi?id=83954

Reviewed by Simon Fraser.

Source/WebCore:

Tests: fast/layers/no-clipping-overflow-hidden-added-after-transform-expected.html

fast/layers/no-clipping-overflow-hidden-added-after-transform.html
fast/layers/no-clipping-overflow-hidden-added-after-transition-expected.html
fast/layers/no-clipping-overflow-hidden-added-after-transition.html
fast/layers/no-clipping-overflow-hidden-hardware-acceleration-expected.html
fast/layers/no-clipping-overflow-hidden-hardware-acceleration.html
(and all the tests that will need to be rebaselined)

r110072 changed the way we create layers to lazily allocate overflow: hidden ones
based on layout overflow. However with hardware acceleration, certain operations
do cause overflow without actually calling layout (the test cases added as part
of this change are using transition / animation). This means that those cases
wouldn't properly clip.

Due to the above issue and the other regressions from r110072, the easiest fix is
to just to roll it out.

  • rendering/RenderBox.h:

Changed to allocate a layer whenever we have an overflow clip.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::scrolledContentOffset):
(WebCore::RenderBox::cachedSizeForOverflowClip):
Reverted those 2 to avoid using the cached size logic.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateScrollInfoAfterLayout):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::isPointInOverflowControl):

  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed):
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::layout):
(WebCore::RenderBox::scrollWidth):
(WebCore::RenderBox::scrollHeight):
(WebCore::RenderBox::scrollLeft):
(WebCore::RenderBox::scrollTop):
(WebCore::RenderBox::setScrollLeft):
(WebCore::RenderBox::setScrollTop):
(WebCore::RenderBox::includeVerticalScrollbarSize):
(WebCore::RenderBox::includeHorizontalScrollbarSize):
(WebCore::RenderBox::pushContentsClip):
(WebCore::RenderBox::popContentsClip):
(WebCore::RenderBox::addLayoutOverflow):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::styleDidChange):

  • rendering/RenderBoxModelObject.h:

(RenderBoxModelObject):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::layout):

  • rendering/RenderTableRow.h:

(RenderTableRow):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::layout):
Removed the previous scaffolding code and reverted some functions to
being private (as they were prior to r110072).

LayoutTests:

  • fast/layers/no-clipping-overflow-hidden-added-after-transform-expected.html: Added.
  • fast/layers/no-clipping-overflow-hidden-added-after-transform.html: Added.
  • fast/layers/no-clipping-overflow-hidden-added-after-transition-expected.html: Added.
  • fast/layers/no-clipping-overflow-hidden-added-after-transition.html: Added.
  • fast/layers/no-clipping-overflow-hidden-hardware-acceleration-expected.html: Added.
  • fast/layers/no-clipping-overflow-hidden-hardware-acceleration.html: Added.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/test_expectations.txt:
  • platform/qt/test_expectations.txt:

Disabled some tests for those platforms.

  • platform/efl/test_expectations.txt:
  • platform/mac/test_expectations.txt:
  • platform/qt/Skipped:
  • platform/win/Skipped:

Re-enabled those tests on the premises that r11072 / bug 75568 got rolled out.

10:13 AM Changeset in webkit [115845] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Addition of a contributor to committers.py
https://bugs.webkit.org/show_bug.cgi?id=85324

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-05-02
Reviewed by Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
10:03 AM Changeset in webkit [115844] by mahesh.kulkarni@nokia.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Build fix for Qt port on mac.

  • UIProcess/API/qt/qwebnavigationhistory_p.h:
9:52 AM Changeset in webkit [115843] by commit-queue@webkit.org
  • 5 edits in trunk

[EFL] EFL's LayoutTestController overridePreference implementation
https://bugs.webkit.org/show_bug.cgi?id=83007

Tools:

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-02
Reviewed by Antonio Gomes.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:

(toBool): aux function converting JSStringRef to bool
(toInt): aux function converting JSStringRef to int
(LayoutTestController::overridePreference): added implementation

LayoutTests:

Unskip tescases depending on LayoutTestController overridePreference method.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-02
Reviewed by Antonio Gomes.

  • platform/efl/Skipped:
9:38 AM Changeset in webkit [115842] by eae@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/page/EventHandler.cpp

Use getPixelSnappedRect in EventHandler::handleGestureTap on branch.

9:15 AM Changeset in webkit [115841] by vestbo@webkit.org
  • 2 edits in trunk/Source/WebKit2

Make ShareableSurface's ref-counting thread-safe

Fixes assert when threaded rendering is enabled for the Qt scene-graph.

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

Reviewed by Noam Rosenthal.

8:49 AM Changeset in webkit [115840] by caseq@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Refining expectations for passing tests.

  • platform/chromium/test_expectations.txt:
8:32 AM Changeset in webkit [115839] by rakuco@webkit.org
  • 5 edits in trunk/LayoutTests

Unreviewed, EFL rebaseline after r115415 and r115294.

  • platform/efl/fast/images/support-broken-image-delegate-expected.txt:
  • platform/efl/http/tests/loading/simple-subframe-expected.txt:
  • platform/efl/security/block-test-expected.txt:
  • platform/efl/security/block-test-no-port-expected.txt:
8:30 AM Changeset in webkit [115838] by noam.rosenthal@nokia.com
  • 22 edits in trunk/Source

[Texmap] Enable css filters in TextureMapperGL
https://bugs.webkit.org/show_bug.cgi?id=75778

Source/WebCore:

Reviewed by Jocelyn Turcotte.

Added support for color filters in TextureMapperGL. Blur and shadow would be done in a
different patch.

Modified BitmapTexture::applyFilters to return a texture, since GL cannot paint a texture
into itself.
Created a shader map for standard filters, since all of them work more or less the same way
with a single uniform. Added the colorization shaders based on the W3C filter spec, as
already implemented in FEFilterRenderer.cpp and FEColorMatrix.cpp.
We use two swapping textures to render the filters.

Covered by tests in css3/filters.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::acquireTextureFromPool):

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::BitmapTexture::applyFilters):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::BitmapTextureGL::updateContents):
(WebCore):
(WebCore::TextureMapperGL::drawFiltered):
(WebCore::BitmapTextureGL::applyFilters):
(WebCore::BitmapTextureGL::bind):

  • platform/graphics/texmap/TextureMapperGL.h:

(TextureMapperGL):
(BitmapTextureGL):

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::BitmapTextureImageBuffer::applyFilters):

  • platform/graphics/texmap/TextureMapperImageBuffer.h:

(BitmapTextureImageBuffer):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::applyFilters):
(WebCore::TextureMapperLayer::syncCompositingStateSelf):

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore::TextureMapperShaderManager::~TextureMapperShaderManager):
(WebCore):
(WebCore::StandardFilterProgram::~StandardFilterProgram):
(WebCore::StandardFilterProgram::StandardFilterProgram):
(WebCore::StandardFilterProgram::create):
(WebCore::StandardFilterProgram::prepare):
(WebCore::TextureMapperShaderManager::getShaderForFilter):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(WebCore):
(StandardFilterProgram):
(WebCore::StandardFilterProgram::vertexAttrib):
(WebCore::StandardFilterProgram::texCoordAttrib):
(WebCore::StandardFilterProgram::textureUniform):
(TextureMapperShaderManager):

Source/WebKit2:

Add the plumbing in the ui-side compositing code in Qt to support filters.
Serialize the filter operations for a layer when it's changed.

Reviewed by Jocelyn Turcotte.

  • Shared/WebCoreArgumentCoders.cpp:

(CoreIPC):
(CoreIPC::::encode):
(CoreIPC::::decode):

  • Shared/WebCoreArgumentCoders.h:

(WebCore):

  • UIProcess/LayerTreeHostProxy.cpp:

(WebKit):
(WebKit::LayerTreeHostProxy::setCompositingLayerFilters):

  • UIProcess/LayerTreeHostProxy.h:

(LayerTreeHostProxy):

  • UIProcess/LayerTreeHostProxy.messages.in:
  • UIProcess/WebLayerTreeRenderer.cpp:

(WebKit):
(WebKit::WebLayerTreeRenderer::setLayerFilters):

  • UIProcess/WebLayerTreeRenderer.h:

(WebLayerTreeRenderer):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore):
(WebCore::WebGraphicsLayer::didChangeFilters):
(WebCore::WebGraphicsLayer::setFilters):
(WebCore::WebGraphicsLayer::syncFilters):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:

(WebGraphicsLayerClient):
(WebGraphicsLayer):

  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit):
(WebKit::LayerTreeHostQt::syncLayerFilters):

  • WebProcess/WebPage/qt/LayerTreeHostQt.h:

(LayerTreeHostQt):

8:29 AM Changeset in webkit [115837] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r115825.

  • platform/gtk/fast/lists/drag-into-marker-expected.txt:
8:20 AM Changeset in webkit [115836] by rakuco@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed, EFL rebaseline after r113885.

  • platform/efl/css2.1/20110323/replaced-elements-001-expected.txt:
8:17 AM Changeset in webkit [115835] by Philippe Normand
  • 4 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r115829.

  • platform/gtk/fast/hidpi/video-controls-in-hidpi-expected.txt:
  • platform/gtk/fast/layers/video-layer-expected.txt:
  • platform/gtk/test_expectations.txt:
8:17 AM Changeset in webkit [115834] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/efl

[EFL] Hyperlink auditing ewk_view setting
https://bugs.webkit.org/show_bug.cgi?id=84451

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-02
Reviewed by Antonio Gomes.

Exporting new ewk_view setting: hyperlinkAuditingEnabled - enbles/disables hyperlink auditing.

  • ewk/ewk_view.cpp:

(_Ewk_View_Private_Data):
(_ewk_view_priv_new):
(ewk_view_setting_enable_hyperlink_auditing_get):
(ewk_view_setting_enable_hyperlink_auditing_set):

  • ewk/ewk_view.h:
8:13 AM Changeset in webkit [115833] by rakuco@webkit.org
  • 2 edits in trunk/Tools

webkitpy: Fix sys.platform check in find_files_unittest.
https://bugs.webkit.org/show_bug.cgi?id=85339

Reviewed by Ryosuke Niwa.

Follow-up to r101618 -- 'win' is not a valid sys.platform value,
'win32' should be used instead. The check always returned false
due to this, so assert_normalize() was never called.

  • Scripts/webkitpy/common/find_files_unittest.py:

(TestWinNormalize.test_win): Add the missing import for the
FileSystem class and fix the sys.platform check.

8:08 AM Changeset in webkit [115832] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Pass page-height to PrintContext::begin to fix print layouting
https://bugs.webkit.org/show_bug.cgi?id=84864

Patch by Milian Wolff <milian.wolff@kdab.com> on 2012-05-02
Reviewed by Simon Hausmann.

  • Api/qwebframe.cpp:

(QWebFrame::print):

7:55 AM Changeset in webkit [115831] by Simon Hausmann
  • 2 edits in trunk/Source/WebKit2

[Qt] Fix vkb showing incorrect flags/keys when content changes

Reviewed by Tor Arne Vestbø.

When the editor state changes we have to inform the input method about changed
properties so that it can issue a new input method query. Otherwise it may use old values
from other QQuickItems or other incorrectly initialized data.

Also use isActiveFocus() instead of hasFocus() to detect whether we're actively focused.
This is also what QQuick uses internally to determine whether it can make calls to the input method
or not.

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
(WebKit::QtWebPageEventHandler::updateTextInputState):
(WebKit::QtWebPageEventHandler::doneWithGestureEvent):

7:37 AM Changeset in webkit [115830] by kenneth@webkit.org
  • 5 edits in trunk/Source

[Qt] Add initial QML documentation
https://bugs.webkit.org/show_bug.cgi?id=85370

Reviewed by Simon Hausmann.

Source/WebKit/qt:

  • docs/qtwebkit.qdocconf: Add WebKit2 dirs.

Source/WebKit2:

Add initial documentation which also serves as an example on how it
should be done.

  • UIProcess/API/qt/qquickwebview.cpp:
  • UIProcess/API/qt/qwebloadrequest.cpp:
7:19 AM Changeset in webkit [115829] by Philippe Normand
  • 18 edits in trunk

[GTK] media/track/track-cue-rendering-snap-to-lines-not-set.html fails
https://bugs.webkit.org/show_bug.cgi?id=84378

Reviewed by Eric Carlson.

Source/WebCore:

Fix positioning of the controls panel back to relative, as it is
in the parent CSS. Also remove some duplicate CSS attributes.

  • css/mediaControlsGtk.css:

(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):

LayoutTests:

  • platform/gtk/media/audio-controls-rendering-expected.txt:
  • platform/gtk/media/audio-repaint-expected.txt:
  • platform/gtk/media/controls-after-reload-expected.txt:
  • platform/gtk/media/controls-strict-expected.txt:
  • platform/gtk/media/controls-styling-expected.txt:
  • platform/gtk/media/controls-without-preload-expected.txt:
  • platform/gtk/media/media-controls-clone-expected.txt:
  • platform/gtk/media/media-document-audio-repaint-expected.txt:
  • platform/gtk/media/video-controls-rendering-expected.txt:
  • platform/gtk/media/video-display-toggle-expected.txt:
  • platform/gtk/media/video-empty-source-expected.txt:
  • platform/gtk/media/video-no-audio-expected.txt:
  • platform/gtk/media/video-playing-and-pause-expected.txt:
  • platform/gtk/media/video-volume-slider-expected.txt:
  • platform/gtk/media/video-zoom-controls-expected.txt:
  • platform/gtk/test_expectations.txt: Unflag fixed test.
7:18 AM Changeset in webkit [115828] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Buildfix after r115812 for !ENABLE(DEVICE_ORIENTATION) builds.
https://bugs.webkit.org/show_bug.cgi?id=64595

Reviewed by Kenneth Rohde Christiansen.

  • Api/qwebpage.cpp:
7:10 AM Changeset in webkit [115827] by yurys@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

Web Inspector: TypeError: Cannot call method 'createLiveLocation' of undefined
https://bugs.webkit.org/show_bug.cgi?id=85371

Standard extension scripts injected to the Chromium background page should have
correct script data which means that context debug id should be already set on
the context where they are compiled before the compilation. This patch moves
assignment of context debug id earlier where it is known that no scripts have
been evaluated in the context.

Reviewed by Pavel Feldman.

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchDidClearWindowObjectInWorld):
(WebKit::FrameLoaderClientImpl::didCreateScriptContext):

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::didCreateScriptContext):

  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

  • src/WebDevToolsAgentPrivate.h:

(WebDevToolsAgentPrivate):

7:09 AM Changeset in webkit [115826] by Simon Hausmann
  • 2 edits in trunk

[Qt] Unreviewed prospective QtMobility build fix.

  • Source/api.pri: The Qt 4 equivalent of QT += sensors should be handled by

WebCore.pri, but somehow it isn't.

7:08 AM Changeset in webkit [115825] by zandobersek@gmail.com
  • 4 edits in trunk

[GTK] drag&drop related failures
https://bugs.webkit.org/show_bug.cgi?id=84675

Reviewed by Philippe Normand.

Tools:

Rather than checking options to see whether we're running pixel tests
the pixel_tests argument passed to GtkDriver._start should be used as
it also covers cases when pixel tests should be run because of testing
reftests. This again creates different Xvfb processes with proper
display IDs for a worker that's performing both ordinary and pixel
tests, as was the case before changes made in r114788.

  • Scripts/webkitpy/layout_tests/port/gtk.py:

(GtkDriver._start):

LayoutTests:

Remove test cases from expectations that are now passing.

  • platform/gtk/test_expectations.txt:
7:01 AM Changeset in webkit [115824] by caseq@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Removed entries for 4 media tests that pass now.

  • platform/chromium/test_expectations.txt:
6:41 AM Changeset in webkit [115823] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=85309
supportsExpandedScrollbars() should check for the method we actually call rather
than a related method
-and corresponding-
<rdar://problem/11065691>

Reviewed by Anders Carlsson.

  • platform/mac/ScrollbarThemeMac.mm:

(WebCore::supportsExpandedScrollbars):

6:37 AM Changeset in webkit [115822] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK test_expectations update.

  • platform/gtk/test_expectations.txt:

http/tests/loading/pdf-commit-load-callbacks.html is failing.

6:19 AM Changeset in webkit [115821] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Enable device orientation/motion with Qt 5

Reviewed by Tor Arne Vestbø.

Enable device orientation/motion features with Qt 5 if Qt Sensors is available.

  • qmake/mkspecs/features/features.prf:
6:17 AM Changeset in webkit [115820] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL][DRT] Gardening failure cases on EFL port
https://bugs.webkit.org/show_bug.cgi?id=85365

Unreviewed EFL gardening.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-02

  • platform/efl/Skipped:
  • platform/efl/test_expectations.txt:
6:00 AM Changeset in webkit [115819] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Source/WebCore: [Qt] Remove redundant updateViewportArguments() call from HTMLBodyElement::didNotifyDescendantInseretions()
https://bugs.webkit.org/show_bug.cgi?id=84241

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-05-02
Reviewed by Kenneth Rohde Christiansen.

No need to update viewport arguments when the body element is inserted into the Document.
Viewport arguments are updated first when the Document is set on the Frame, and later
on any subsequent occurence of the viewport meta tag in the document.
It is sufficient to dispatch viewport update once per main frame, if no viewport meta tag is present.

Also add a flag to be able to track viewport argument update dispatch.

No tests. Currrent viewport tests cover this behaviour.

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::updateViewportArguments):
(WebCore::Document::documentWillSuspendForPageCache):

  • dom/Document.h:

(Document):
(WebCore::Document::didDispatchViewportPropertiesChanged):

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::didNotifyDescendantInseretions):

Source/WebKit2: [Qt][WK2] Remove redundant updateViewportArguments() call from HTMLBodyElement::didNotifyDescendantInseretions()
https://bugs.webkit.org/show_bug.cgi?id=84241

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-05-02
Reviewed by Kenneth Rohde Christiansen.

Add ASSERT to ensure at least one viewport argument change call is dispatched to WebPage per main frame.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidFirstLayout):

5:13 AM Changeset in webkit [115818] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][Mac] Skip new failing tests and one crashing test to paint the bot green.

  • platform/qt-mac/Skipped:
5:07 AM Changeset in webkit [115817] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Cannot read property 'length' of undefined TextEditorModel.js:467
https://bugs.webkit.org/show_bug.cgi?id=85360

Reviewed by Yury Semikhatsky.

Added the undo/redo stack length checks.

  • inspector/front-end/TextEditorModel.js:

(WebInspector.TextEditorModel.endsWithBracketRegex.):

5:04 AM Changeset in webkit [115816] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, skipping failing test

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-05-02

  • platform/qt/Skipped:
5:03 AM Changeset in webkit [115815] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

WebInspector: Scripts panel editor dirty state is cleared when the tab with editor is closed.
https://bugs.webkit.org/show_bug.cgi?id=85361

Reviewed by Yury Semikhatsky.

Added content validation upon script show.

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype.wasShown):

5:01 AM Changeset in webkit [115814] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: breakpoints are de-activated only upon the second click.
https://bugs.webkit.org/show_bug.cgi?id=85359

Reviewed by Yury Semikhatsky.

Initial value for activated state is set.

  • inspector/front-end/DebuggerModel.js:

(WebInspector.DebuggerModel):

4:56 AM Changeset in webkit [115813] by pfeldman@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: live edit fails to report error
https://bugs.webkit.org/show_bug.cgi?id=85357

Reviewed by Yury Semikhatsky.

ProtocolError is now a string, not an error object.

  • inspector/front-end/DatabaseQueryView.js:

(WebInspector.DatabaseQueryView.prototype._queryError):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame.prototype.didEditContent):

4:51 AM Changeset in webkit [115812] by commit-queue@webkit.org
  • 7 edits
    8 moves in trunk

[Qt] Make DeviceMotion and DeviceOrientation work with WebKit2
https://bugs.webkit.org/show_bug.cgi?id=64595

Patch by Lars Knudsen <lars.knudsen@nokia.com> on 2012-05-02
Reviewed by Kenneth Rohde Christiansen.

.:

Moving DeviceMotion and DeviceOrientation clients and providers
to WebCore. This is done to allow clean dependencies when
statically linking WK2.

  • Source/api.pri:

Source/WebCore:

No new tests added. This change adds support for WK2
what was in WK1.

Also moving DeviceMotion and DeviceOrientation clients and
providers to WebCore. This is done to allow clean dependencies
when statically linking WK2.

  • Target.pri:
  • WebCore.pri:
  • platform/qt/DeviceMotionClientQt.cpp: Renamed from Source/WebKit/qt/WebCoreSupport/DeviceMotionClientQt.cpp.

(WebCore):
(WebCore::DeviceMotionClientQt::~DeviceMotionClientQt):
(WebCore::DeviceMotionClientQt::deviceMotionControllerDestroyed):
(WebCore::DeviceMotionClientQt::setController):
(WebCore::DeviceMotionClientQt::startUpdating):
(WebCore::DeviceMotionClientQt::stopUpdating):
(WebCore::DeviceMotionClientQt::currentDeviceMotion):

  • platform/qt/DeviceMotionClientQt.h: Renamed from Source/WebKit/qt/WebCoreSupport/DeviceMotionClientQt.h.

(WebCore):
(DeviceMotionClientQt):
(WebCore::DeviceMotionClientQt::DeviceMotionClientQt):

  • platform/qt/DeviceMotionProviderQt.cpp: Renamed from Source/WebKit/qt/WebCoreSupport/DeviceMotionProviderQt.cpp.

(WebCore):
(WebCore::DeviceMotionProviderQt::DeviceMotionProviderQt):
(WebCore::DeviceMotionProviderQt::~DeviceMotionProviderQt):
(WebCore::DeviceMotionProviderQt::setController):
(WebCore::DeviceMotionProviderQt::start):
(WebCore::DeviceMotionProviderQt::stop):
(WebCore::DeviceMotionProviderQt::filter):

  • platform/qt/DeviceMotionProviderQt.h: Renamed from Source/WebKit/qt/WebCoreSupport/DeviceMotionProviderQt.h.

(WebCore):
(DeviceMotionProviderQt):
(WebCore::DeviceMotionProviderQt::currentDeviceMotion):

  • platform/qt/DeviceOrientationClientQt.cpp: Renamed from Source/WebKit/qt/WebCoreSupport/DeviceOrientationClientQt.cpp.

(WebCore):
(WebCore::DeviceOrientationClientQt::deviceOrientationControllerDestroyed):
(WebCore::DeviceOrientationClientQt::setController):
(WebCore::DeviceOrientationClientQt::startUpdating):
(WebCore::DeviceOrientationClientQt::stopUpdating):
(WebCore::DeviceOrientationClientQt::lastOrientation):

  • platform/qt/DeviceOrientationClientQt.h: Renamed from Source/WebKit/qt/WebCoreSupport/DeviceOrientationClientQt.h.

(WebCore):
(DeviceOrientationClientQt):

  • platform/qt/DeviceOrientationProviderQt.cpp: Renamed from Source/WebKit/qt/WebCoreSupport/DeviceOrientationProviderQt.cpp.

(WebCore):
(WebCore::DeviceOrientationProviderQt::DeviceOrientationProviderQt):
(WebCore::DeviceOrientationProviderQt::~DeviceOrientationProviderQt):
(WebCore::DeviceOrientationProviderQt::setController):
(WebCore::DeviceOrientationProviderQt::start):
(WebCore::DeviceOrientationProviderQt::stop):
(WebCore::DeviceOrientationProviderQt::filter):

  • platform/qt/DeviceOrientationProviderQt.h: Renamed from Source/WebKit/qt/WebCoreSupport/DeviceOrientationProviderQt.h.

(WebCore):
(DeviceOrientationProviderQt):
(WebCore::DeviceOrientationProviderQt::isActive):
(WebCore::DeviceOrientationProviderQt::lastOrientation):
(WebCore::DeviceOrientationProviderQt::hasAlpha):

Source/WebKit2:

Adding support for DeviceOrientation in WK2 WebPage

  • Target.pri:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

3:43 AM Changeset in webkit [115811] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: exception in console when there are watch expressions
https://bugs.webkit.org/show_bug.cgi?id=85351

Check if script execution is still paused before trying to resolve an
object for script popover because execution may be resumed after popover
showing is scheduled but before we start resolving the object under
the cursor in which case there is no selected call frame any more and
we should hide the popover.

Reviewed by Pavel Feldman.

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype._resolveObjectForPopover):

3:31 AM Changeset in webkit [115810] by tommyw@google.com
  • 16 edits in trunk

MediaStream API: Changing webkitGetUserMedia to take an object instead of a string
https://bugs.webkit.org/show_bug.cgi?id=84850

Reviewed by Dimitri Glazkov.

Source/WebCore:

The standard changed a while back to use an object as a dictionary but since JSC
didn't support the Dictionary class until just recently we have not updated the API until now.

Change covered by existing, and edited, tests.

  • Modules/mediastream/NavigatorMediaStream.cpp:

(WebCore::NavigatorMediaStream::webkitGetUserMedia):

  • Modules/mediastream/NavigatorMediaStream.h:

(WebCore):
(NavigatorMediaStream):

  • Modules/mediastream/NavigatorMediaStream.idl:
  • Modules/mediastream/UserMediaRequest.cpp:

(WebCore::UserMediaRequest::create):
(WebCore::UserMediaRequest::UserMediaRequest):

  • Modules/mediastream/UserMediaRequest.h:

(WebCore):
(UserMediaRequest):

  • platform/mediastream/MediaStreamSourcesQueryClient.h:

(MediaStreamSourcesQueryClient):

Source/WebKit/chromium:

  • public/WebUserMediaRequest.h:

(WebUserMediaRequest):

  • src/WebUserMediaRequest.cpp:

LayoutTests:

Also took the opportunity to update the peerconnection-Attributes test
to test PeerConnection00 instead.

  • fast/mediastream/argument-types-expected.txt:
  • fast/mediastream/peerconnection-Attributes-expected.txt:
  • fast/mediastream/script-tests/argument-types.js:

(emptyFunction):

  • fast/mediastream/script-tests/peerconnection-Attributes.js:
  • platform/chromium/media/video-capture-preview.html:
3:14 AM Changeset in webkit [115809] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

[EFL] Fix typo introduced in r115800.
https://bugs.webkit.org/show_bug.cgi?id=85354

Patch by Dongwoo Im <dw.im@samsung.com> on 2012-05-02
Reviewed by Nikolas Zimmermann.

  • ewk/ewk_view.cpp:

(_Ewk_View_Private_Data): Assign 1 bit to the boolean attribute, webAudio.

3:00 AM Changeset in webkit [115808] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[Qt][WK2] Minibrowser's progress bar should reset when WebProcess crashes while loading.
https://bugs.webkit.org/show_bug.cgi?id=84445

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-05-02
Reviewed by Jocelyn Turcotte.

Progress value needs resetting, when WebProcess crashes.
This patch moves crash logic for loading to QtWebPageLoadClient. It
also simplifies the callback function names in QtWebPageLoadClient, as they
all valid only for main frames.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::processDidCrash):
(QQuickWebViewFlickablePrivate::loadDidSucceed):

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate::didChangeViewportProperties):
(QQuickWebViewPrivate):

  • UIProcess/qt/QtWebPageLoadClient.cpp:

(WebKit::QtWebPageLoadClient::QtWebPageLoadClient):
(WebKit::QtWebPageLoadClient::completeLoadWhenProcessDidCrashIfNeeded):
(WebKit):
(WebKit::QtWebPageLoadClient::didStartProvisionalLoad):
(WebKit::QtWebPageLoadClient::didReceiveServerRedirectForProvisionalLoad):
(WebKit::QtWebPageLoadClient::didCommitLoad):
(WebKit::QtWebPageLoadClient::didSameDocumentNavigation):
(WebKit::QtWebPageLoadClient::didReceiveTitle):
(WebKit::QtWebPageLoadClient::didFirstVisuallyNonEmptyLayout):
(WebKit::QtWebPageLoadClient::didStartProvisionalLoadForFrame):
(WebKit::QtWebPageLoadClient::didReceiveServerRedirectForProvisionalLoadForFrame):
(WebKit::QtWebPageLoadClient::didCommitLoadForFrame):
(WebKit::QtWebPageLoadClient::didSameDocumentNavigationForFrame):
(WebKit::QtWebPageLoadClient::didReceiveTitleForFrame):
(WebKit::QtWebPageLoadClient::didFirstVisuallyNonEmptyLayoutForFrame):

  • UIProcess/qt/QtWebPageLoadClient.h:

(WebKit):
(QtWebPageLoadClient):

2:52 AM Changeset in webkit [115807] by commit-queue@webkit.org
  • 67 edits
    1 add in trunk/LayoutTests

[EFL] CSS tests needs rebaselining
https://bugs.webkit.org/show_bug.cgi?id=85177

Unreviewed gardening.

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-05-02

  • platform/efl/fast/css/disabled-author-styles-expected.png: Added.
  • platform/efl/fast/css/import-rule-regression-11590-expected.txt:
  • platform/efl/fast/css/inline-element-line-break-expected.txt:
  • platform/efl/fast/css/inline-properties-important-expected.txt:
  • platform/efl/fast/css/invalid-percentage-property-expected.txt:
  • platform/efl/fast/css/invalidation-errors-3-expected.txt:
  • platform/efl/fast/css/last-child-pseudo-class-expected.txt:
  • platform/efl/fast/css/last-of-type-pseudo-class-expected.txt:
  • platform/efl/fast/css/layerZOrderCrash-expected.txt:
  • platform/efl/fast/css/line-height-expected.txt:
  • platform/efl/fast/css/line-height-overflow-expected.txt:
  • platform/efl/fast/css/list-outline-expected.txt:
  • platform/efl/fast/css/margin-bottom-form-element-quirk-expected.txt:
  • platform/efl/fast/css/margin-bottom-form-element-strict-expected.txt:
  • platform/efl/fast/css/margin-top-bottom-dynamic-expected.txt:
  • platform/efl/fast/css/negative-leading-expected.txt:
  • platform/efl/fast/css/negative-nth-child-expected.txt:
  • platform/efl/fast/css/nested-floating-relative-position-percentages-expected.txt:
  • platform/efl/fast/css/nested-layers-with-hover-expected.txt:
  • platform/efl/fast/css/non-empty-span-expected.png:
  • platform/efl/fast/css/non-empty-span-expected.txt:
  • platform/efl/fast/css/nth-child-dynamic-expected.txt:
  • platform/efl/fast/css/only-child-pseudo-class-expected.txt:
  • platform/efl/fast/css/only-of-type-pseudo-class-expected.txt:
  • platform/efl/fast/css/outline-auto-location-expected.txt:
  • platform/efl/fast/css/outline-narrowLine-expected.txt:
  • platform/efl/fast/css/percent-top-relative-container-height-unspecified-expected.txt:
  • platform/efl/fast/css/preserve-user-specified-zoom-level-on-reload-expected.png:
  • platform/efl/fast/css/preserve-user-specified-zoom-level-on-reload-expected.txt:
  • platform/efl/fast/css/pseudo-element-line-break-expected.txt:
  • platform/efl/fast/css/quirk-orphaned-units-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-expected.png:
  • platform/efl/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-removed-expected.png:
  • platform/efl/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-removed-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-nested-with-inline-parent-expected.png:
  • platform/efl/fast/css/relative-positioned-block-nested-with-inline-parent-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic-expected.png:
  • platform/efl/fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-with-inline-ancestor-and-parent-dynamic-expected.png:
  • platform/efl/fast/css/relative-positioned-block-with-inline-ancestor-and-parent-dynamic-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-expected.png:
  • platform/efl/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-removed-expected.png:
  • platform/efl/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-removed-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-with-inline-ancestor-expected.png:
  • platform/efl/fast/css/relative-positioned-block-with-inline-ancestor-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-with-inline-parent-dynamic-expected.png:
  • platform/efl/fast/css/relative-positioned-block-with-inline-parent-dynamic-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-with-inline-parent-dynamic-removed-expected.png:
  • platform/efl/fast/css/relative-positioned-block-with-inline-parent-dynamic-removed-expected.txt:
  • platform/efl/fast/css/relative-positioned-block-with-inline-parent-keeps-style-expected.png:
  • platform/efl/fast/css/relative-positioned-block-with-inline-parent-keeps-style-expected.txt:
  • platform/efl/fast/css/selector-set-attribute-expected.txt:
  • platform/efl/fast/css/table-text-align-quirk-expected.txt:
  • platform/efl/fast/css/table-text-align-strict-expected.txt:
  • platform/efl/fast/css/text-align-expected.txt:
  • platform/efl/fast/css/text-input-with-webkit-border-radius-expected.txt:
  • platform/efl/fast/css/text-overflow-ellipsis-bidi-expected.txt:
  • platform/efl/fast/css/text-overflow-ellipsis-expected.txt:
  • platform/efl/fast/css/text-overflow-ellipsis-strict-expected.txt:
  • platform/efl/fast/css/text-transform-select-expected.txt:
  • platform/efl/fast/css/textCapitalizeEdgeCases-expected.txt:
  • platform/efl/fast/css/universal-hover-quirk-expected.txt:
  • platform/efl/fast/css/value-list-out-of-bounds-crash-expected.txt:
  • platform/efl/fast/css/word-space-extra-expected.txt:
  • platform/efl/fast/css/zoom-font-size-expected.txt:
2:39 AM Changeset in webkit [115806] by caseq@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, marked fast/js/random-array-gc-stress.html as SLOW on debug.

  • platform/chromium/test_expectations.txt:
2:02 AM Changeset in webkit [115805] by Antti Koivisto
  • 5 edits in trunk/Source/WebCore

StyleSheetInternal::parseUserStyleSheet() should be called parseAuthorStyleSheet().

Rubber-stamped by Nikolas Zimmermann.

  • css/CSSImportRule.cpp:

(WebCore::StyleRuleImport::setCSSStyleSheet):

  • css/CSSStyleSheet.cpp:

(WebCore::StyleSheetInternal::parseAuthorStyleSheet):

  • css/CSSStyleSheet.h:

(StyleSheetInternal):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::setCSSStyleSheet):

1:51 AM Changeset in webkit [115804] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

REGRESSION: Web Inspector doesn't show cookies anymore
https://bugs.webkit.org/show_bug.cgi?id=85349

Pass root node instead of DataGrid object to the "populateNode" method.
Added compiler annotations so that closure compiler catches such errors.

Reviewed by Pavel Feldman.

  • inspector/front-end/CookiesTable.js:

(WebInspector.CookiesTable.prototype._rebuildTable):

  • inspector/front-end/NetworkRequest.js:

(WebInspector.NetworkRequest.prototype.addFrameError):

1:29 AM Changeset in webkit [115803] by caseq@chromium.org
  • 15 edits in trunk/LayoutTests

Unreviewed test rebaseline after r115749.

  • platform/chromium-mac-leopard/media/audio-controls-rendering-expected.png:
  • platform/chromium-mac-leopard/media/audio-repaint-expected.png:
  • platform/chromium-mac-leopard/media/controls-after-reload-expected.png:
  • platform/chromium-mac/media/audio-controls-rendering-expected.png:
  • platform/chromium-mac/media/audio-repaint-expected.png:
  • platform/chromium-mac/media/controls-after-reload-expected.png:
  • platform/chromium-mac/media/controls-layout-direction-expected.png:
  • platform/chromium-mac/media/media-controls-clone-expected.png:
  • platform/chromium-win/media/audio-controls-rendering-expected.png:
  • platform/chromium-win/media/audio-repaint-expected.png:
  • platform/chromium-win/media/controls-after-reload-expected.png:
  • platform/chromium-win/media/controls-layout-direction-expected.png:
  • platform/chromium-win/media/media-controls-clone-expected.png:
  • platform/chromium/test_expectations.txt:
1:20 AM Changeset in webkit [115802] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WTF

[Qt]r57240 broke Qt build (gcc bug)
https://bugs.webkit.org/show_bug.cgi?id=37253

Patch by Adenilson Cavalcanti <cavalcantii@gmail.com> on 2012-05-02
Reviewed by Noam Rosenthal.

Removing workaround macro since current gcc/Qt doesn't require it to compile.

  • wtf/PassRefPtr.h:

(WTF):

1:10 AM Changeset in webkit [115801] by Simon Hausmann
  • 5 edits
    1 add in trunk/Source/WebKit2

[Qt] QQuickWebView does not allow for input from virtual keyboard
https://bugs.webkit.org/show_bug.cgi?id=85350

Reviewed by Kenneth Christiansen.

It is necessary to set the ItemAcceptsInputMethod flag on the QQuickWebView if we have editable
content, in order for the input method to recognize that we can handle input method events.

Analyzed by Michael Brüning.

  • UIProcess/API/qt/qquickwebview.cpp: Add simple hook for executing JS as private C++ API.

(JSCallbackClosure):
(javaScriptCallback):
(QQuickWebView::runJavaScriptInMainFrame):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/tests/html/inputmethod.html: Added.
  • UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:

(tst_QQuickWebView):
(tst_QQuickWebView::runJavaScript): Simple helper for running JS.
(tst_QQuickWebView::inputMethod): Added simple test for ItemAcceptsInputMethod toggling.

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(WebKit::QtWebPageEventHandler::updateTextInputState): Set ItemAcceptsInputMethod as soon as we
have editable content.

12:58 AM Changeset in webkit [115800] by commit-queue@webkit.org
  • 13 edits
    4 adds in trunk

[EFL] Implement the Web Audio API feature.
https://bugs.webkit.org/show_bug.cgi?id=78688

Patch by Dongwoo Im <dw.im@samsung.com> on 2012-05-02
Reviewed by Philippe Normand.

Implement the Web Audio API feature on the EFL port.
https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html

.:

  • Source/cmake/FindGStreamer-Audio.cmake: Added. Find the pkgconfig of the GStreamer-audio.
  • Source/cmake/FindGStreamer-FFT.cmake: Added. Find the pkgconfig of the GStreamer-fft.
  • Source/cmake/OptionsEfl.cmake: Add the ENABLE_WEB_AUDIO option.
  • Source/cmakeconfig.h.cmake: Add the ENABLE_WEB_AUDIO option.

Source/WebCore:

  • CMakeLists.txt: Add the list of the files which are needed for the Web Audio APi.
  • PlatformEfl.cmake: Add the list of the files which are needed for the Web Audio APi.
  • UseJSC.cmake: Add the list of the files which are needed for the Web Audio APi.
  • platform/audio/HRTFElevation.cpp: Enable the USE_CONCATENATED_IMPULSE_RESPONSES macro.

(WebCore):

  • platform/audio/efl/AudioBusEfl.cpp: Added.

(WebCore):
(WebCore::AudioBus::loadPlatformResource): Create the absolute path of the audio resource.

Source/WebKit/efl:

  • ewk/ewk_view.cpp: Add the setter/getter of the webaudio feature.

(_Ewk_View_Private_Data):
(_ewk_view_priv_new):
(ewk_view_setting_web_audio_get): Enable/disable the Web Audio API feature.
(ewk_view_setting_web_audio_set): Query if the Web Audio API feature is enabled.

  • ewk/ewk_view.h: Add the prototypes.

LayoutTests:

  • platform/efl/Skipped: Change the comment of webaudio.
12:00 AM Changeset in webkit [115799] by scherkus@chromium.org
  • 1 edit
    1 move in trunk/LayoutTests

[Chromium] Adjust baseline location for media/media-can-play-type-webm.html.

  • platform/chromium/media/media-can-play-webm-expected.txt: Renamed from LayoutTests/media/media-can-play-webm-expected.txt.

May 1, 2012:

11:07 PM Changeset in webkit [115798] by scherkus@chromium.org
  • 14 edits
    1 move
    7 adds
    1 delete in trunk/LayoutTests

Clean up media canPlayType() tests and add a test for WebM.
https://bugs.webkit.org/show_bug.cgi?id=85116

Reviewed by Eric Carlson.

  • media/media-can-play-flac-audio-expected.txt:
  • media/media-can-play-flac-audio.html:
  • media/media-can-play-mpeg-audio-expected.txt:
  • media/media-can-play-mpeg-audio.html:
  • media/media-can-play-mpeg4-video.html:
  • media/media-can-play-octet-stream-expected.txt:
  • media/media-can-play-octet-stream.html:
  • media/media-can-play-ogg-expected.txt:
  • media/media-can-play-ogg.html:
  • media/media-can-play-type-expected.txt: Renamed from LayoutTests/media/video-can-play-type-expected.txt.
  • media/media-can-play-type.html: Added.
  • media/media-can-play-wav-audio-expected.txt:
  • media/media-can-play-wav-audio.html:
  • media/media-can-play-webm-expected.txt: Added.
  • media/media-can-play-webm.html: Added.
  • media/video-can-play-type.html: Removed.
11:07 PM Changeset in webkit [115797] by haraken@chromium.org
  • 15 edits in trunk/Source/WebCore

[V8] Add an Isolate parameter to setJSWrapperForXXX()
https://bugs.webkit.org/show_bug.cgi?id=85329

Reviewed by Adam Barth.

The objective is to pass Isolate around in V8 bindings.
This patch adds an Isolate parameter to setJSWrapperForXXX()
and passes Isolate to setJSWrapperForXXX() in CodeGeneratorV8.pm.
I'll pass Isolate to setJSWrapperForXXX() in custom bindings
in a follow-up patch.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm: Modified as described above.

(GenerateConstructorCallback):
(GenerateEventConstructorCallback):
(GenerateNamedConstructorCallback):
(GenerateToV8Converters):

  • bindings/v8/V8DOMWrapper.cpp:

(WebCore::V8DOMWrapper::setJSWrapperForDOMNode):
(WebCore::V8DOMWrapper::setJSWrapperForActiveDOMNode):

  • bindings/v8/V8DOMWrapper.h:

(V8DOMWrapper):
(WebCore::V8DOMWrapper::setJSWrapperForDOMObject):
(WebCore::V8DOMWrapper::setJSWrapperForActiveDOMObject):

  • bindings/scripts/test/V8/V8Float64Array.cpp: Updated run-bindings-tests results.

(WebCore::V8Float64Array::wrapSlow):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore::V8TestActiveDOMObject::wrapSlow):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:

(WebCore::V8TestCustomNamedGetter::wrapSlow):

  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:

(WebCore::V8TestEventConstructor::constructorCallback):
(WebCore::V8TestEventConstructor::wrapSlow):

  • bindings/scripts/test/V8/V8TestEventTarget.cpp:

(WebCore::V8TestEventTarget::wrapSlow):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::V8TestInterface::constructorCallback):
(WebCore::V8TestInterface::wrapSlow):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:

(WebCore::V8TestMediaQueryListListener::wrapSlow):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructorCallback):
(WebCore::V8TestNamedConstructor::wrapSlow):

  • bindings/scripts/test/V8/V8TestNode.cpp:

(WebCore::V8TestNode::constructorCallback):
(WebCore::V8TestNode::wrapSlow):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::V8TestObj::constructorCallback):
(WebCore::V8TestObj::wrapSlow):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):

10:54 PM Changeset in webkit [115796] by eric@webkit.org
  • 13 edits in trunk

Add <iframe seamless> navigation code (and pass all the navigation tests)
https://bugs.webkit.org/show_bug.cgi?id=85340

Reviewed by Adam Barth.

Source/WebCore:

This code was primarily written by Adam Barth and then submitted to my
GitHub branch via a pull request:
https://github.com/eseidel/webkit/compare/master...seamless
https://github.com/eseidel/webkit/pull/2
https://github.com/eseidel/webkit/pull/3

I rewrote parts of it to use Docment::shouldDisplaySeamlesslyWithParent.

Other parts of the original change have already been committed to WebKit by Adam
as part of prep-work for making the loader seamless-ready.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::findFrameForNavigation):

LayoutTests:

Update results now that we pass all the navigation tests.

  • fast/frames/seamless/seamless-form-get-expected.txt:
  • fast/frames/seamless/seamless-form-get-named-expected.txt:
  • fast/frames/seamless/seamless-form-post-expected.txt:
  • fast/frames/seamless/seamless-form-post-named-expected.txt:
  • fast/frames/seamless/seamless-hyperlink-expected.txt:
  • fast/frames/seamless/seamless-hyperlink-named-expected.txt:
  • fast/frames/seamless/seamless-window-location-expected.txt:
  • fast/frames/seamless/seamless-window-location-href-expected.txt:
  • fast/frames/seamless/seamless-window-location-sandbox-expected.txt:
  • fast/frames/seamless/seamless-window-open-expected.txt:
10:12 PM Changeset in webkit [115795] by tkent@chromium.org
  • 1 edit
    1 copy
    1 delete in trunk/LayoutTests

[Chromium] Move date-input-visible-strings-expected.txt to the correct place.

  • platform/chromium-linux/fast/forms/date/date-input-visible-strings-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/fast/forms/date/date-input-visible-strings-expected.txt.
9:57 PM Changeset in webkit [115794] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Unnecessary <form> tags created inside of an <iframe> with designMode on
https://bugs.webkit.org/show_bug.cgi?id=13126

Reviewed by Eric Seidel.

Add a regression test since this bug doesn't reproduce anymore but it's still good to test it.

  • editing/inserting/insert-paragraph-inside-form-expected.txt: Added.
  • editing/inserting/insert-paragraph-inside-form.html: Added.
9:44 PM Changeset in webkit [115793] by eae@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/page/EventHandler.cpp

Remove extra round call in EventHandler on branch.

9:28 PM Changeset in webkit [115792] by scheib@chromium.org
  • 2 edits in trunk/Source/WebCore

Fullscreen pop-up logic restored to using processingUserGesture.
https://bugs.webkit.org/show_bug.cgi?id=85105

WebKit was recently updated to the new Fullscreen API:
http://dvcs.w3.org/hg/fullscreen/raw-file/tip/Overview.html#api
http://trac.webkit.org/changeset/111028

This change reverts back to using processingUserGesture() instead
of DOMWindow::allowPopUp(). This fixes incorrect behavior in
at least the Chromium port and is consistent with the cited
definition of "allowed to show a pop-up":

An algorithm is allowed to show a pop-up if, in the task in which the algorithm is running, either:

  • an activation behavior is currently being processed whose click event was trusted, or
  • the event listener for a trusted click event is being handled.

Reviewed by Dimitri Glazkov.

No new tests.

  • dom/Document.cpp:

(WebCore::Document::requestFullScreenForElement):

9:22 PM Changeset in webkit [115791] by eae@chromium.org
  • 540 edits
    82 copies
    3 deletes in branches/subpixellayout

Merge trunk changes up until 115787 into subpixel branch.

9:16 PM Changeset in webkit [115790] by xji@chromium.org
  • 3 edits in trunk/LayoutTests

2012-05-01 Xiaomei Ji <xji@chromium.org>

Skip editing/selection/move-by-word-visually-mac.html (introduced in r115788) in qt and wk2.

  • platform/qt/Skipped:
  • platform/wk2/Skipped:
9:01 PM Changeset in webkit [115789] by rakuco@webkit.org
  • 3 edits in trunk/Tools

webkitpy: Remove unused platform imports.
https://bugs.webkit.org/show_bug.cgi?id=85341

Reviewed by Eric Seidel.

Remove a few uses of `import platform' which were either rendered
unneeded after r105931 or were never needed at all.

  • Scripts/webkitpy/common/system/executive.py:
  • Scripts/webkitpy/tool/bot/flakytestreporter.py:
8:41 PM Changeset in webkit [115788] by xji@chromium.org
  • 6 edits
    2 adds
    2 deletes in trunk

Source/WebCore: enable ctrl-arrow move by word visually in non-Windows platforms.
https://bugs.webkit.org/show_bug.cgi?id=85017

Reviewed by Ryosuke Niwa.

Enable ctrl-arrow moves caret by word in visual order in non-Windows platforms that use ICU word
break iterator (it is not enabled for WinCE and Qt where ICU is not used). For those platforms, ctrl-arrow
moves caret to word break position before spaces. For example, given a logical text "abc def hij", the word
break positions using ctrl-left-arrow from rightmost position are "|abc |def |hij".
The word break positions using ctrl-right-arrow from leftmost position are "abc| def| hij|".

Test: editing/selection/move-by-word-visually-mac.html

  • editing/EditingBehavior.h:

(EditingBehavior):
(WebCore::EditingBehavior::shouldEatSpaceToNextWord): To control different word break positions
(regards to space) for different platforms.

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::modifyMovingRight): Enable visual word movement for all platforms that use ICU.
(WebCore::FrameSelection::modifyMovingLeft):

  • editing/visible_units.cpp:

(WebCore::visualWordPosition): Determine the right word break position (regards to space) based on EditingBehavior.
(WebCore::leftWordPosition):
(WebCore::rightWordPosition):

  • editing/visible_units.h:

LayoutTests: enable ctrl-arrow move by word visually in other platforms (besides Windows)
https://bugs.webkit.org/show_bug.cgi?id=85017

Reviewed by Ryosuke Niwa.

Since DOMSelection.modify('move', 'left'/'right', 'word') moves caret by word in visual order (instead of
logical order) now, there are several changes to the test file:

  1. file name renamed from move-left-right-by-word-mac.html to move-by-word-visually-mac.html.
  2. test expectations change from moving caret by word in logical order to moving caret by word in visual order.
  3. since test expectations are inside test file itself, test file itself changes accordingly.
  • editing/selection/move-by-word-visually-mac-expected.txt: Copied from LayoutTests/editing/selection/move-left-right-by-word-mac-expected.txt.
  • editing/selection/move-by-word-visually-mac.html: Copied from LayoutTests/editing/selection/move-left-right-by-word-mac.html.
  • editing/selection/move-left-right-by-word-mac-expected.txt: Removed.
  • editing/selection/move-left-right-by-word-mac.html: Removed.
8:38 PM Changeset in webkit [115787] by commit-queue@webkit.org
  • 12 edits
    4 adds in trunk

Modify RealtimeAnalyserNode pull mechanism
https://bugs.webkit.org/show_bug.cgi?id=77515

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-05-01
Reviewed by Chris Rogers.

Source/WebCore:

Test: webaudio/automatic-pull-node.html

  • GNUmakefile.list.am:
  • Modules/webaudio/AudioBasicInspectorNode.cpp: Added.

(WebCore):
(WebCore::AudioBasicInspectorNode::AudioBasicInspectorNode):
(WebCore::AudioBasicInspectorNode::pullInputs):
(WebCore::AudioBasicInspectorNode::connect):
(WebCore::AudioBasicInspectorNode::disconnect):
(WebCore::AudioBasicInspectorNode::checkNumberOfChannelsForInput):
(WebCore::AudioBasicInspectorNode::updatePullStatus):

  • Modules/webaudio/AudioBasicInspectorNode.h: Added.

(WebCore):
(AudioBasicInspectorNode):

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::AudioContext):
(WebCore::AudioContext::~AudioContext):
(WebCore::AudioContext::handlePreRenderTasks):
(WebCore::AudioContext::handlePostRenderTasks):
(WebCore::AudioContext::markForDeletion):
(WebCore):
(WebCore::AudioContext::addAutomaticPullNode):
(WebCore::AudioContext::removeAutomaticPullNode):
(WebCore::AudioContext::updateAutomaticPullNodes):
(WebCore::AudioContext::processAutomaticPullNodes):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • Modules/webaudio/AudioDestinationNode.cpp:

(WebCore::AudioDestinationNode::provideInput):

  • Modules/webaudio/AudioNode.h:

(AudioNode):

  • Modules/webaudio/AudioNodeOutput.h:

(WebCore::AudioNodeOutput::isConnected):
(AudioNodeOutput):

  • Modules/webaudio/RealtimeAnalyserNode.cpp:

(WebCore::RealtimeAnalyserNode::RealtimeAnalyserNode):

  • Modules/webaudio/RealtimeAnalyserNode.h:

(RealtimeAnalyserNode):

  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:

LayoutTests:

  • webaudio/automatic-pull-node-expected.txt: Added.
  • webaudio/automatic-pull-node.html: Added.
8:35 PM Changeset in webkit [115786] by keishi@webkit.org
  • 4 edits
    4 adds in trunk

datalist: Form control in a <datalist> should be barred from constraint validation
https://bugs.webkit.org/show_bug.cgi?id=84359

Reviewed by Kent Tamura.

Source/WebCore:

Tests: fast/forms/datalist/datalist-child-validation.html

fast/forms/form-control-element-crash.html

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::HTMLFormControlElement):
(WebCore::HTMLFormControlElement::updateAncestors): Updates the ancestor information.
(WebCore::HTMLFormControlElement::insertedInto): Invalidate the ancestor information and call setNeedsWillValidateCheck because willValidate might have changed.
(WebCore::HTMLFormControlElement::removedFrom): Ditto.
(WebCore::HTMLFormControlElement::disabled):
(WebCore::HTMLFormControlElement::recalcWillValidate): Returns false if element has a datalist ancestor.
(WebCore::HTMLFormControlElement::willValidate): Check if ancestor information is valid too.
(WebCore::HTMLFormControlElement::setNeedsWillValidateCheck):

  • html/HTMLFormControlElement.h:

(HTMLFormControlElement):

LayoutTests:

  • fast/forms/datalist/datalist-child-validation-expected.txt: Added.
  • fast/forms/datalist/datalist-child-validation.html: Added. Tests that willValidate changes from false to true when we move the element out of the datalist.
  • fast/forms/form-control-element-crash-expected.txt: Added.
  • fast/forms/form-control-element-crash.html: Added. Tests for the crash reported in Bug 85149.
8:27 PM Changeset in webkit [115785] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

Calendar Picker: Close the picker by ESC key
https://bugs.webkit.org/show_bug.cgi?id=85337

Reviewed by Kentaro Hara.

No new tests. Calendar picker is not testable in DRT yet.

  • Resources/calendarPicker.js:

(handleGlobalKey): Close the popup by ESC key.

8:20 PM Changeset in webkit [115784] by noel.gordon@gmail.com
  • 2 edits in trunk/Source/WebCore

PNGImageDecoder: Handle interlace buffer allocation failure
https://bugs.webkit.org/show_bug.cgi?id=85276

Reviewed by Eric Seidel.

No new tests. Not something we can easily test (malloc failure).

  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::PNGImageDecoder::rowAvailable): Check interlace buffer allocations
and bail via longjmp on failure. Note PNG_INTERLACE_ADAM7 is the only libpng
supported interlace type so test for it explicitly.

8:01 PM Changeset in webkit [115783] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

Calendar Picker: Too wide in Japanese locale
https://bugs.webkit.org/show_bug.cgi?id=85331

Reviewed by Kentaro Hara.

No new tests. This is a locale-specific behavior.

  • Resources/calendarPicker.js:

(formatJapaneseImperialEra):
Do not show an imperial era later than 平成99年 to avoid very long
year string like "275760年(平成273772年)."
(YearMonthController.prototype.attachTo):

  • Respect the maximum year specfied by <input max=...> If <input max="9999-12-31"> is specified, we don't need to secure space for the year 275,760.
  • Check the width for 平成99年 as well as the maximum year because "2087年(平成99年)" is usually wider than "275760年".
7:52 PM Changeset in webkit [115782] by noel.gordon@gmail.com
  • 2 edits in trunk/Source/WebCore

PNGImageDecoder: Add ENABLE(IMAGE_DECODER_DOWN_SAMPLING) guards to rowAvailable
https://bugs.webkit.org/show_bug.cgi?id=85268

Reviewed by Eric Seidel.

PNGImageDecoder supports image downsampling. Add ENABLE guards to show where
downsampling is applied when outputting decoded rows to the frame buffer. Most
ports don't enable the flag: don't penalize them in terms speed in this tight
row pixel write loop. s/y/destY/ to match setRGBA() and amend some comments.

No new tests. No change in behavior.

  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::PNGImageDecoder::rowAvailable):

7:24 PM Changeset in webkit [115781] by tkent@chromium.org
  • 2 edits
    1 copy
    1 move
    1 add in trunk/LayoutTests

[Chromium] Rebaseline for date-input-visible-strings.html.

  • platform/chromium-linux-x86/fast/forms/date/date-input-visible-strings-expected.txt: Copied from LayoutTests/platform/chromium-mac/fast/forms/date/date-input-visible-strings-expected.txt.
  • platform/chromium/fast/forms/date/date-input-visible-strings-expected.txt: Renamed from LayoutTests/platform/chromium-mac/fast/forms/date/date-input-visible-strings-expected.txt.
  • platform/chromium/test_expectations.txt:
7:14 PM Changeset in webkit [115780] by aestes@apple.com
  • 2 edits in trunk/LayoutTests

scrollbars/scrollbar-miss-mousemove-disabled.html is asserting in markAllMisspellingsAndBadGrammarInRanges()
https://bugs.webkit.org/show_bug.cgi?id=85273

  • platform/mac/Skipped: Skip the test.
7:09 PM Changeset in webkit [115779] by eric@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove uneeded min/max pref width assignment from RenderView
https://bugs.webkit.org/show_bug.cgi?id=85325

Reviewed by Julien Chaffraix.

This code has been with us since the original import from KDE:
http://trac.webkit.org/browser/trunk/WebCore/khtml/rendering/render_root.cpp?annotate=blame&rev=4#L93
It's never been documented, or explained. Removing it showed no
effect on my local layout tests run.
However this code blocks proper implementation of <iframe seamless>
as we have to do proper min/max width negotiation across the iframe boundary.

I would remove the whole function, but doing so opens a whole can of worms
as this override is public, yet normally this function is *private* (well protected on RenderBox).
It seems plausible that frame flattening code needs this override since it doesn't always
call the min/maxPreferredWidth() calls which normally automatically call this compute*
function if the pref-widths are dirty.
Instead of trying to track that all down, I'm just removing this line, and we'll go
back and remove the whole function at a later date if possible.

  • rendering/RenderView.cpp:

(WebCore::RenderView::computePreferredLogicalWidths):

6:36 PM Changeset in webkit [115778] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests/platform

Actually commit changes.

6:34 PM Changeset in webkit [115777] by rniwa@webkit.org
  • 1 edit in trunk/LayoutTests/ChangeLog

Skip the test added by r115724 on WebKit2 and Qt because drag and drop isn't supported by DRT
on those platforms.

  • platform/qt/Skipped:
  • platform/wk2/Skipped:
6:32 PM Changeset in webkit [115776] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[GTK] new ref test fast/forms/listbox-clear-restore.html fails.
https://bugs.webkit.org/show_bug.cgi?id=77633

Patch by Joe Thomas <joethomas@motorola.com> on 2012-05-01
Reviewed by Martin Robinson.

Flakiness of the test case is fixed in http://trac.webkit.org/changeset/115526.
Enabling the test for GTK and Chromium ports.

  • platform/chromium/test_expectations.txt:
  • platform/gtk/test_expectations.txt:
6:24 PM Changeset in webkit [115775] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/platform/FractionalLayoutUnit.h

Changing the asserts in FractionalLayoutUnit to stderr logs.

6:23 PM Changeset in webkit [115774] by Nate Chapin
  • 5 edits
    4 adds in trunk

Source/WebCore: REGRESSION(r115654): PDFs come up blank
https://bugs.webkit.org/show_bug.cgi?id=85275

Reviewed by Alexey Proskuryakov.

Test: http/tests/loading/pdf-commit-load-callbacks.html

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::finishedLoading): The load needs to be

committed before we call finishedLoading on the
FrameLoaderClient.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::transitionToCommitted): We're guaranteeing

that receivedFirstData() will be called other ways (namely,
DocumentLoader won't finish without doing so). This call now
causes custom representations to double-commit, which is bad.

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=85275.

Reviewed by Alexey Proskuryakov.

  • http/tests/loading/pdf-commit-load-callbacks-expected.txt: Added.
  • http/tests/loading/pdf-commit-load-callbacks.html: Added.
  • platform/chromium/http/tests/loading: Added.
  • platform/chromium/http/tests/loading/pdf-commit-load-callbacks-expected.txt: Added.
  • platform/wk2/Skipped: New test requires layoutTestController.dumpResourceLoadCallbacks(),

which isn't support for wk2 yet.

6:09 PM Changeset in webkit [115773] by eric@webkit.org
  • 17 edits
    1 copy
    1 add in trunk

Add support for seamless attribute as well as seamless sandbox flag and default CSS styling
https://bugs.webkit.org/show_bug.cgi?id=85302

Reviewed by Ojan Vafai.

Source/WebCore:

This also adds support for the seamless sandbox flag from HTML 5.
The sandbox flag is not speficially overridable in the current HTML5,
but it is set (like all sandbox flags) by default when sandbox is specified.
Unfortunately this support is not yet observable in this patch, as
this patch adds not observable features of seamless.

This patch also adds the html.css additions for seamless, as specified:
http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#replaced-elements

I noticed that my previous testing did not confirm that iframes marked
for seamless (but not possible to display as seamless due to sandbox, etc.)
were still to have this seamless styling. I've added additional testing for this case.

I also added another test for the about:blank FIXME added as part of this change.

In order to support srcdoc w/ seamless, we needed to move the srcdoc determination
sooner in the initSecurityContext function (before the should-inherit early return).

The next patch will make seamless actually observable from JS/DOM, this one
just lays down all the plumbing, and separates the security aspects for
easy review.

Test: fast/frames/seamless/seamless-inherited-origin.html

  • css/html.css:

(iframe:not([seamless])):
(iframe[seamless]):

  • dom/Document.cpp:

(WebCore::isEligibleForSeamless):
(WebCore):
(WebCore::Document::initSecurityContext):
(WebCore::Document::seamlessParentIFrame):
(WebCore::Document::shouldDisplaySeamlesslyWithParent):

  • dom/Document.h:

(WebCore):
(Document):

  • dom/SecurityContext.cpp:

(WebCore::SecurityContext::SecurityContext):

  • dom/SecurityContext.h:

(WebCore::SecurityContext::mayDisplaySeamlessWithParent):
(SecurityContext):

  • html/HTMLAttributeNames.in:
  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::shouldDisplaySeamlessly):
(WebCore):

  • html/HTMLIFrameElement.h:

(HTMLIFrameElement):

  • html/HTMLIFrameElement.idl:

LayoutTests:

Update all the test results now that the html.css changes have
been added for seamless, as specified by HTML5:
http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#replaced-elements

I also added a new test for about:blank iframes (per a code-FIXME)
as well as some new testing to confirm that the default seamless-CSS style
applies even when iframes cannot render seamless due to security restrictions.

  • fast/frames/seamless/seamless-basic-expected.txt:
  • fast/frames/seamless/seamless-basic.html:
  • fast/frames/seamless/seamless-inherited-origin-expected.txt: Added.
  • fast/frames/seamless/seamless-inherited-origin.html: Added.
  • fast/frames/seamless/seamless-inline-expected.txt:
  • fast/frames/seamless/seamless-min-max-expected.txt:
  • fast/frames/seamless/seamless-nested-expected.txt:
  • fast/frames/seamless/seamless-quirks-expected.txt:
  • fast/frames/seamless/seamless-sandbox-flag-expected.txt:
  • fast/frames/seamless/seamless-sandbox-flag.html:
  • fast/frames/seamless/seamless-sandbox-srcdoc-expected.txt:
  • http/tests/security/seamless/seamless-cross-origin-expected.txt:
  • http/tests/security/seamless/seamless-sandbox-srcdoc-expected.txt:
  • svg/in-html/by-reference.html: was using seamless, but really doens't want to, doing so just adds noise.
5:41 PM Changeset in webkit [115772] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Additional instances of calling histogramCustomCounts directly
https://bugs.webkit.org/show_bug.cgi?id=85322

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • src/painting/PaintAggregator.cpp:

(WebKit::PaintAggregator::invalidateRect):

5:39 PM Changeset in webkit [115771] by commit-queue@webkit.org
  • 10 edits in trunk/Source

use USE(NATIVE_FULLSCREEN_VIDEO) instead of ENABLE(NATIVE_FULLSCREEN_VIDEO)
https://bugs.webkit.org/show_bug.cgi?id=85316

Patch by Min Qin <qinmin@google.com> on 2012-05-01
Reviewed by Kent Tamura.

Source/WebCore:

NATIVE_FULLSCREEN_VIDEO means the fullscreen video is implemented by native
system view instead of webkit.
So it is more appropriate to use USE(NATIVE_FULLSCREEN_VIDEO).
This chagne also disabled the rendering of the fullscreen video element in webkit
when that flag is set.
Just renaming the variable, no new tests.

  • dom/Document.cpp:

(WebCore::Document::webkitWillEnterFullScreenForElement):
(WebCore):

  • platform/graphics/MediaPlayer.cpp:

(WebCore):

  • platform/graphics/MediaPlayer.h:

(MediaPlayer):

  • platform/graphics/MediaPlayerPrivate.h:

(MediaPlayerPrivateInterface):

Source/WebKit/chromium:

NATIVE_FULLSCREEN_VIDEO means the fullscreen video is implemented by native
system view instead of webkit
So it is more appropriate to use USE(NATIVE_FULLSCREEN_VIDEO).
Just rename the flag, no new tests

  • features.gypi:
  • src/WebMediaPlayerClientImpl.cpp:

(WebKit):

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::enterFullScreenForElement):
(WebKit::WebViewImpl::exitFullScreenForElement):

5:36 PM Changeset in webkit [115770] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

inspectorReallyUsesWebKitUserInterface should be more robust against missing files
https://bugs.webkit.org/show_bug.cgi?id=85327
<rdar://problem/11332864>

Reviewed by Timothy Hatcher.

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::inspectorReallyUsesWebKitUserInterface):

  • WebProcess/WebPage/mac/WebInspectorMac.mm:

(WebKit::inspectorReallyUsesWebKitUserInterface):

5:33 PM Changeset in webkit [115769] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Additional instances of calling createAudioDevice directly
https://bugs.webkit.org/show_bug.cgi?id=85321

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • src/AudioDestinationChromium.cpp:

(WebCore::AudioDestinationChromium::AudioDestinationChromium):

5:27 PM Changeset in webkit [115768] by pilgrim@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Additional instances of calling mimeRegistry directly
https://bugs.webkit.org/show_bug.cgi?id=85320

Reviewed by Eric Seidel.

Part of a refactoring series. See tracking bug 82948.

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::canShowMIMEType):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::supportsType):

5:21 PM Changeset in webkit [115767] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[chromium] Accept four parameters when dispatching a WebInputEvent::GestureTap in chromium DRT eventSender
https://bugs.webkit.org/show_bug.cgi?id=85289

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-05-01
Reviewed by Eric Seidel.

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::gestureEvent):

This change will allow for testing of WK85101. Currently
no tests use the extra parameters deltaX and deltaY. Added
a check for the size of |arguments|.

5:21 PM Changeset in webkit [115766] by eae@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore

Fix mac build on branch.

5:17 PM Changeset in webkit [115765] by jpfau@apple.com
  • 10 edits in trunk/Source

<rdar://problem/10422318> Support for web content filter delegate for filtering https content
https://bugs.webkit.org/show_bug.cgi?id=85300

Reviewed by Alexey Proskuryakov.

Source/WebCore:

No new tests.

  • WebCore.exp.in:
  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::~MainResourceLoader):
(WebCore::MainResourceLoader::didCancel):
(WebCore::MainResourceLoader::didReceiveResponse):
(WebCore::MainResourceLoader::didReceiveData):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::didFail):

  • loader/MainResourceLoader.h:

(MainResourceLoader):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac:

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

5:12 PM Changeset in webkit [115764] by tkent@chromium.org
  • 8 edits
    1 add in trunk/Source/WebCore

Calendar Picker: Add capability to add platform-specific style sheet
https://bugs.webkit.org/show_bug.cgi?id=85272

Reviewed by Kentaro Hara.

Add RenderTheme::extraCalendarPickerStyleSheet(). The resultant string
of the function is inserted into the calendar picker page.

No new tests. Calendar picker apperance is not testable yet.

  • Resources/calendarPicker.css: Removed styles for year-month buttons.
  • Resources/calendarPickerMac.css:

Moved from calendarPicker.css, and adjust styles so that they look
standard Lion buttons.
(.year-month-button):
(.year-month-button:active):
(.year-month-button:disabled):

  • WebCore.gyp/WebCore.gyp: Add a rule to produce CalendarPickerMac.{cpp,h}.
  • html/shadow/CalendarPickerElement.cpp:

(WebCore::CalendarPickerElement::writeDocument):
Add extraCalendarPickerStyleSheet() result to the document.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::extraCalendarPickerStyleSheet):
Added. Returns an empty CString by default.

  • rendering/RenderTheme.h:

(RenderTheme): Added extraCalendarPickerStyleSheet().

  • rendering/RenderThemeChromiumMac.h: Added extraCalendarPickerStyleSheet().
  • rendering/RenderThemeChromiumMac.mm:

(WebCore::RenderThemeChromiumMac::extraCalendarPickerStyleSheet):
Added. Returns the content of Resources/calendarPickerMac.css.

5:04 PM Changeset in webkit [115763] by simonjam@chromium.org
  • 5 edits in trunk

Ensure HTMLElementStack fails gracefully if it has a non-Element.
https://bugs.webkit.org/show_bug.cgi?id=85167

Reviewed by Adam Barth.

Source/WebCore:

Test: Added to html5lib/resources/webkit02.dat

  • html/parser/HTMLElementStack.cpp:

(WebCore::HTMLElementStack::oneBelowTop):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processEndTag):

LayoutTests:

  • html5lib/resources/webkit02.dat:
4:45 PM Changeset in webkit [115762] by jchaffraix@webkit.org
  • 2 edits in branches/chromium/1084

Partial revert of r110072: Lazily allocate overflow: hidden layers if we have overflowing content

This chage forces us to allocate RenderLayers for overflow: hidden as it has been causing several
regressions. It leaves all of the scaffolding around to keep the change small. See bug 83954 for
the proper revert for trunk.

4:39 PM Changeset in webkit [115761] by eric@webkit.org
  • 2 edits in trunk/Tools

Add myself to the watchlist to watch all rendering changes, as well as sort the watchers in the list
https://bugs.webkit.org/show_bug.cgi?id=85305

Reviewed by Adam Barth.

  • Scripts/webkitpy/common/config/watchlist:
4:36 PM Changeset in webkit [115760] by rniwa@webkit.org
  • 16 edits in trunk/Source

*Command.h files shouldn't be exported to WebKit layer
https://bugs.webkit.org/show_bug.cgi?id=74778

Reviewed by Eric Seidel.

Source/WebCore:

Remove the dependency on *Command.h files from Mac port's WebKit layer.
Also wrapped the call to TypingCommand::insertParagraphSeparatorInQuotedContent in the Editor class
so that we can just expose Editor's method instead of directly exposing the said static method.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • editing/Editor.h:

(Editor):

  • editing/mac/EditorMac.mm:

(WebCore::Editor::insertParagraphSeparatorInQuotedContent):
(WebCore):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:
  • src/WebViewImpl.cpp:

Source/WebKit/gtk:

  • webkit/webkitwebframe.cpp:

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _insertParagraphSeparatorInQuotedContent]):

Source/WebKit/win:

  • WebView.cpp:

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:
4:18 PM Changeset in webkit [115759] by eae@chromium.org
  • 5 edits in branches/subpixellayout/Source

Chromium/linux fixes for branch.

4:09 PM Changeset in webkit [115758] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/LayoutTests

[EFL] fast/loader/file-protocol-fragment.html needs rebaselining
https://bugs.webkit.org/show_bug.cgi?id=85182

Unreviewed, add EFL expectation for fast/loader/file-protocol-fragment.html
and unskip the test.

Patch by Christophe Dumez <Christophe Dumez> on 2012-05-01

  • platform/efl/Skipped:
  • platform/efl/fast/loader/file-protocol-fragment-expected.txt: Added.
4:01 PM Changeset in webkit [115757] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Remove expectations for media/encrypted-media/encrypted-media-events.html now that crash is fixed.
https://bugs.webkit.org/show_bug.cgi?id=84596

Unreviewed expectations update.

Patch by David Dorwin <ddorwin@chromium.org> on 2012-05-01

  • platform/chromium/test_expectations.txt:
3:52 PM Changeset in webkit [115756] by aestes@apple.com
  • 2 edits in trunk/LayoutTests

[Mac] inspector/debugger/linkifier.html is flakey
https://bugs.webkit.org/show_bug.cgi?id=85319

  • platform/mac/Skipped: Skip the flakey test.
3:35 PM Changeset in webkit [115755] by jchaffraix@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove one bit from m_column to pack RenderTableCell bits more
https://bugs.webkit.org/show_bug.cgi?id=85291

Reviewed by Ojan Vafai.

Memory improvement, covered by the existing unit tests.

  • rendering/RenderTableCell.cpp:
  • rendering/RenderTableCell.h:

Remove one bit from m_column (which should be fine as I wouldn't expect tables above 1 millions
columns to render at all anyway) to pack the bitfields in 32 bits. Re-arranged the bits to have the bigger
bitfield first.

3:30 PM Changeset in webkit [115754] by fpizlo@apple.com
  • 8 edits
    3 adds in branches/dfgopt/Source

DFG should be able to compute dominators
https://bugs.webkit.org/show_bug.cgi?id=85269

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

Implements a naive dominator calculator, which is currently just used to
print information in graph dumps. I've enabled it by default mainly to
be able to track its performance impact. So far it appears that there is
none, which is unsurprising given that the number of basic blocks in most
procedures is small.

Also tweaked bytecode dumping to reveal more useful information about the
nature of the code block.

(JSC::CodeBlock::dump):

  • dfg/DFGDominators.cpp: Added.

(DFG):
(JSC::DFG::Dominators::Dominators):
(JSC::DFG::Dominators::~Dominators):
(JSC::DFG::Dominators::compute):
(JSC::DFG::Dominators::iterateForBlock):

  • dfg/DFGDominators.h: Added.

(DFG):
(Dominators):
(JSC::DFG::Dominators::invalidate):
(JSC::DFG::Dominators::computeIfNecessary):
(JSC::DFG::Dominators::isValid):
(JSC::DFG::Dominators::dominates):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGGraph.h:

(Graph):

Source/WTF:

Reviewed by Oliver Hunt.

Added a bitvector class suitable for cheap static analysis. This class
differs from BitVector in that instead of optimizing for space, it
optimizes for execution time. Its API is also somewhat less friendly,
which is intentional; it's meant to be used in places where you know
up front how bit your bitvectors are going to be.

  • WTF.xcodeproj/project.pbxproj:
  • wtf/FastBitVector.h: Added.

(WTF):
(FastBitVector):
(WTF::FastBitVector::FastBitVector):
(WTF::FastBitVector::~FastBitVector):
(WTF::FastBitVector::operator=):
(WTF::FastBitVector::numBits):
(WTF::FastBitVector::resize):
(WTF::FastBitVector::setAll):
(WTF::FastBitVector::clearAll):
(WTF::FastBitVector::set):
(WTF::FastBitVector::setAndCheck):
(WTF::FastBitVector::equals):
(WTF::FastBitVector::merge):
(WTF::FastBitVector::filter):
(WTF::FastBitVector::exclude):
(WTF::FastBitVector::clear):
(WTF::FastBitVector::get):
(WTF::FastBitVector::arrayLength):

3:25 PM Changeset in webkit [115753] by zmo@google.com
  • 2 edits in trunk/Tools

Unreviewed, rolling out r115735.
http://trac.webkit.org/changeset/115735
https://bugs.webkit.org/show_bug.cgi?id=85314

cause two tests to crash due to an ASSERTION failure
(Requested by zhenyao on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-01

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::gestureEvent):

3:22 PM Changeset in webkit [115752] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Slow scrolling on www.sholby.net
https://bugs.webkit.org/show_bug.cgi?id=85304
<rdar://problem/11138952>

Reviewed by Beth Dakin.

Fix two performance issues that showed up on the profiles.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
Reset the relevant painted object counter; it's only interesting when loading.

  • page/Page.cpp:

(WebCore::Page::startCountingRelevantRepaintedObjects):
Set m_isCountingRelevantRepaintedObjects to true after calling reset, since reset now sets it to false.

(WebCore::Page::resetRelevantPaintedObjectCounter):
Set m_isCountingRelevantRepaintedObjects to false.

(WebCore::Page::addRelevantRepaintedObject):
Use HashSet::find to avoid an extra hash lookup.

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition):
Remove the call to FrameView::updateCompositingLayersAfterLayout now, since FrameView::notifyScrollPositionChanged
already calls this and was making us to a lot of work twice.

3:03 PM Changeset in webkit [115751] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Use the new barrier function in TiledCoreAnimationDrawingArea::forceRepaintAsync
https://bugs.webkit.org/show_bug.cgi?id=85313
<rdar://problem/10996039>

Reviewed by Sam Weinig.

Use the new dispatchAfterEnsuringUpdatedScrollPosition function in forceRepaintAsync to
ensure that the scroll position is up to date.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):

2:34 PM Changeset in webkit [115750] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Physijs demo crashes due to DFG not updating topCallFrame correctly.
https://bugs.webkit.org/show_bug.cgi?id=85311

Reviewed by Filip Pizlo.

A few of the dfg operations failed to correctly set the topCallFrame,
and so everything goes wrong. This patch corrects the effected operations,
and makes debug builds poison topCallFrame before calling a dfg operation.

  • dfg/DFGOperations.cpp:

(JSC::DFG::putByVal):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::prepareForExternalCall):
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheck):
(JSC::DFG::SpeculativeJIT::appendCallSetResult):

2:26 PM Changeset in webkit [115749] by commit-queue@webkit.org
  • 25 edits in trunk

Source/WebCore: Audio controls have a 1px surplus outline coming from RenderImage::paintReplaced base class,
which needs overwriting.
https://bugs.webkit.org/show_bug.cgi?id=84570

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-05-01
Reviewed by Eric Carlson.

No new tests - covered by existing audio rendering tests.

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::paintReplaced): Overwrite inherited function.
(WebCore):

  • rendering/RenderMedia.h:

(RenderMedia):

LayoutTests: Audio controls have a 1px surplus outline coming from RenderImage::paintReplaced base class,
which needs overwriting. All layout tests with an audio element need a
visual update.
https://bugs.webkit.org/show_bug.cgi?id=84570

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-05-01
Reviewed by Eric Carlson.

  • platform/chromium-linux/media/audio-controls-rendering-expected.png:
  • platform/chromium-linux/media/audio-repaint-expected.png:
  • platform/chromium-linux/media/controls-after-reload-expected.png:
  • platform/chromium-linux/media/controls-layout-direction-expected.png:
  • platform/chromium-linux/media/media-controls-clone-expected.png:
  • platform/chromium-mac-leopard/media/audio-controls-rendering-expected.png:
  • platform/chromium-mac-leopard/media/audio-repaint-expected.png:
  • platform/chromium-mac-leopard/media/controls-after-reload-expected.png:
  • platform/chromium-mac-snowleopard/media/audio-controls-rendering-expected.png:
  • platform/chromium-mac-snowleopard/media/audio-repaint-expected.png:
  • platform/chromium-mac-snowleopard/media/controls-layout-direction-expected.png:
  • platform/chromium-mac-snowleopard/media/media-controls-clone-expected.png:
  • platform/chromium-mac/media/audio-controls-rendering-expected.png:
  • platform/chromium-mac/media/audio-repaint-expected.png:
  • platform/chromium-mac/media/controls-after-reload-expected.png:
  • platform/chromium-mac/media/controls-layout-direction-expected.png:
  • platform/chromium-mac/media/media-controls-clone-expected.png:
  • platform/chromium-win/media/audio-controls-rendering-expected.png:
  • platform/chromium-win/media/audio-repaint-expected.png:
  • platform/chromium-win/media/controls-after-reload-expected.png:
  • platform/chromium-win/media/controls-layout-direction-expected.png:
  • platform/chromium-win/media/media-controls-clone-expected.png:
2:21 PM Changeset in webkit [115748] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebKit/efl/ewk/ewk_view.cpp

Correct misuse of LayoutUnits for scroll coordinates (we only scroll in full-pixels).

1:50 PM Changeset in webkit [115747] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Allow a pre-targeted node to be specified when dispatching a GestureTap event
https://bugs.webkit.org/show_bug.cgi?id=85296

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-05-01
Reviewed by Adam Barth.

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

The new parameter will be used and tested in this patch.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleGestureTap):

The new preTargetedNode parameter can be used to pass in the Node that is
the target of the GestureTap event. If this parameter is used, adjustedPoint
is changed to be the center of the Node's bounding rectangle.

  • page/EventHandler.h:

(EventHandler):

1:15 PM Changeset in webkit [115746] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebCore

Crash calling disconnectFrame on a DOMWindowExtension a second time.
https://bugs.webkit.org/show_bug.cgi?id=85301

Reviewed by Darin Adler.

DOMWindowExtension::disconnectFrame assumed it would only be called when there was a frame
to disconnect. However, DOMWindow's destructor invokes disconnectFrame on all its
DOMWindowProperties, even if it already did so when it entered the page cache.

  • page/DOMWindowExtension.cpp:

(WebCore::DOMWindowExtension::disconnectFrame):
Don't do anything if the frame has already been disconnected.

12:27 PM Changeset in webkit [115745] by commit-queue@webkit.org
  • 4 edits
    2 deletes in trunk

Source/WebCore: Temporarily remove webkitSourceAddId() & webkitSourceRemoveId() from DOM
until the rest of the Media Source v0.5 methods are implemented. This is
to prevent ambiguity about whether v0.5 is fully supported or not.
https://bugs.webkit.org/show_bug.cgi?id=85295

Patch by Aaron Colwell <acolwell@chromium.org> on 2012-05-01
Reviewed by Eric Carlson.

No new tests. Removing methods from DOM so relevant tests are removed.

  • html/HTMLMediaElement.idl:

LayoutTests: Temporarily removing tests for webkitSourceAddId() & webkitSourceRemoveId()
until the rest of the Media Source v0.5 methods are implemented.
https://bugs.webkit.org/show_bug.cgi?id=85295

Patch by Aaron Colwell <acolwell@chromium.org> on 2012-05-01
Reviewed by Eric Carlson.

  • http/tests/media/media-source/webm/video-media-source-add-and-remove-ids-expected.txt: Removed.
  • http/tests/media/media-source/webm/video-media-source-add-and-remove-ids.html: Removed.
  • platform/chromium/test_expectations.txt:
12:21 PM Changeset in webkit [115744] by eae@chromium.org
  • 502 edits
    10 copies in branches/subpixellayout

Merge trunk changes up until 115741 into subpixel branch.

12:05 PM Changeset in webkit [115743] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: stale index entries may not be removed in some cases
https://bugs.webkit.org/show_bug.cgi?id=85224

Patch by Douglas Stockwell <dstockwell@chromium.org> on 2012-05-01
Reviewed by Ojan Vafai.

Ensure that stale index entries are removed when the corresponding
object store entry no longer exists.

No new tests. Addresses a performance / storage leak that is
not amenable to verification in a layout test.

  • Modules/indexeddb/IDBLevelDBBackingStore.cpp:

(WebCore):

11:50 AM Changeset in webkit [115742] by eric@webkit.org
  • 1 edit
    63 adds in trunk/LayoutTests

Add seamless test cases (all of these will pass as we land the implementation patches)
https://bugs.webkit.org/show_bug.cgi?id=85251

Reviewed by Adam Barth.

These are all test cases which were written as part of implementing seamless
on my github branch: https://github.com/eseidel/webkit/compare/master...seamless
All of these will pass once the implementation is landed, which I am uploading
as a series of patches as we speak. Because the each of pieces
affects variety of tests, it seems easiest to read the implmentation
diffs if I land all the tests up-front.

  • fast/frames/seamless/resources/css-cascade-child.html: Added.
  • fast/frames/seamless/resources/done.html: Added.
  • fast/frames/seamless/resources/nested-seamless.html: Added.
  • fast/frames/seamless/resources/quirks-square.html: Added.
  • fast/frames/seamless/resources/square.html: Added.
  • fast/frames/seamless/resources/two-inline-blocks.html: Added.
  • fast/frames/seamless/seamless-basic-expected.txt: Added.
  • fast/frames/seamless/seamless-basic.html: Added.
  • fast/frames/seamless/seamless-css-cascade-expected.txt: Added.
  • fast/frames/seamless/seamless-css-cascade.html: Added.
  • fast/frames/seamless/seamless-designMode-expected.txt: Added.
  • fast/frames/seamless/seamless-designMode.html: Added.
  • fast/frames/seamless/seamless-float-expected.txt: Added.
  • fast/frames/seamless/seamless-float.html: Added.
  • fast/frames/seamless/seamless-form-get-expected.txt: Added.
  • fast/frames/seamless/seamless-form-get-named-expected.txt: Added.
  • fast/frames/seamless/seamless-form-get-named.html: Added.
  • fast/frames/seamless/seamless-form-get-override-expected.txt: Added.
  • fast/frames/seamless/seamless-form-get-override.html: Added.
  • fast/frames/seamless/seamless-form-get.html: Added.
  • fast/frames/seamless/seamless-form-post-expected.txt: Added.
  • fast/frames/seamless/seamless-form-post-named-expected.txt: Added.
  • fast/frames/seamless/seamless-form-post-named.html: Added.
  • fast/frames/seamless/seamless-form-post-override-expected.txt: Added.
  • fast/frames/seamless/seamless-form-post-override.html: Added.
  • fast/frames/seamless/seamless-form-post.html: Added.
  • fast/frames/seamless/seamless-hyperlink-expected.txt: Added.
  • fast/frames/seamless/seamless-hyperlink-named-expected.txt: Added.
  • fast/frames/seamless/seamless-hyperlink-named.html: Added.
  • fast/frames/seamless/seamless-hyperlink-override-expected.txt: Added.
  • fast/frames/seamless/seamless-hyperlink-override.html: Added.
  • fast/frames/seamless/seamless-hyperlink.html: Added.
  • fast/frames/seamless/seamless-inline-expected.txt: Added.
  • fast/frames/seamless/seamless-inline.html: Added.
  • fast/frames/seamless/seamless-min-max-expected.txt: Added.
  • fast/frames/seamless/seamless-min-max.html: Added.
  • fast/frames/seamless/seamless-nested-expected.txt: Added.
  • fast/frames/seamless/seamless-nested.html: Added.
  • fast/frames/seamless/seamless-quirks-expected.txt: Added.
  • fast/frames/seamless/seamless-quirks.html: Added.
  • fast/frames/seamless/seamless-sandbox-flag-expected.txt: Added.
  • fast/frames/seamless/seamless-sandbox-flag.html: Added.
  • fast/frames/seamless/seamless-sandbox-srcdoc-expected.txt: Added.
  • fast/frames/seamless/seamless-sandbox-srcdoc.html: Added.
  • fast/frames/seamless/seamless-window-location-expected.txt: Added.
  • fast/frames/seamless/seamless-window-location-href-expected.txt: Added.
  • fast/frames/seamless/seamless-window-location-href.html: Added.
  • fast/frames/seamless/seamless-window-location-replace-expected.txt: Added.
  • fast/frames/seamless/seamless-window-location-replace.html: Added.
  • fast/frames/seamless/seamless-window-location-sandbox-expected.txt: Added.
  • fast/frames/seamless/seamless-window-location-sandbox.html: Added.
  • fast/frames/seamless/seamless-window-location.html: Added.
  • fast/frames/seamless/seamless-window-open-expected.txt: Added.
  • fast/frames/seamless/seamless-window-open-override-expected.txt: Added.
  • fast/frames/seamless/seamless-window-open-override.html: Added.
  • fast/frames/seamless/seamless-window-open.html: Added.
  • http/tests/security/seamless/resources/square.html: Added.
  • http/tests/security/seamless/seamless-cross-origin-expected.txt: Added.
  • http/tests/security/seamless/seamless-cross-origin.html: Added.
  • http/tests/security/seamless/seamless-sandbox-srcdoc-expected.txt: Added.
  • http/tests/security/seamless/seamless-sandbox-srcdoc.html: Added.
11:33 AM Changeset in webkit [115741] by kareng@chromium.org
  • 1 add in branches/chromium/1123/codereview.settings

adding codereview.setings so we can drover

11:31 AM Changeset in webkit [115740] by kareng@chromium.org
  • 1 copy in branches/chromium/1123

branching for chrome

11:23 AM Changeset in webkit [115739] by gavinp@chromium.org
  • 2 edits in trunk/Source/Platform

[Chromium] Fix WebPrerender::referrer() thunk.
https://bugs.webkit.org/show_bug.cgi?id=85290

Reviewed by Dimitri Glazkov.

  • chromium/public/WebPrerender.h:

(WebKit::WebPrerender::referrer):

11:18 AM Changeset in webkit [115738] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebKit/efl/ewk/ewk_frame.cpp

Fixing a pixel snapping/build issue in EFL.

11:04 AM Changeset in webkit [115737] by commit-queue@webkit.org
  • 2 edits in trunk

[GTK] Fix gstreamer detection during configure
https://bugs.webkit.org/show_bug.cgi?id=84325

Patch by Landry Breuil <landry@openbsd.org> on 2012-05-01
Reviewed by Philippe Normand.

  • configure.ac: Fix GSTREAMER_REQUIRED_VERSION and

GSTREAMER_PLUGINS_BASE_REQUIRED_VERSION assignments.

10:40 AM Changeset in webkit [115736] by igor.o@sisa.samsung.com
  • 2 edits in trunk/Source/WebCore

Use HashMap<OwnPtr> for CounterMap in RenderCounter
https://bugs.webkit.org/show_bug.cgi?id=85294

Reviewed by Eric Seidel.

  • rendering/RenderCounter.cpp:

(WebCore):
(WebCore::makeCounterNode):
(WebCore::RenderCounter::destroyCounterNodes):

10:19 AM Changeset in webkit [115735] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[chromium] Accept four parameters when dispatching a WebInputEvent::GestureTap in chromium DRT eventSender
https://bugs.webkit.org/show_bug.cgi?id=85289

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-05-01
Reviewed by Eric Seidel.

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::gestureEvent):

This change will allow for testing of WK85101. Currently no tests use the extra
parameters deltaX and deltaY.

10:08 AM Changeset in webkit [115734] by enne@google.com
  • 2 edits in branches/chromium/1084/Source/WebCore/platform/graphics/chromium/cc

Merged 115281 - [chromium] Hold video provider lock from willDraw to didDraw
https://bugs.webkit.org/show_bug.cgi?id=84805

Reviewed by James Robinson.

Note: merged by hand due to conflicts.

  • platform/graphics/chromium/cc/CCVideoLayerImpl.cpp: (WebCore::CCVideoLayerImpl::willDraw): (WebCore): (WebCore::CCVideoLayerImpl::willDrawInternal): (WebCore::CCVideoLayerImpl::appendQuads): (WebCore::CCVideoLayerImpl::didDraw):
  • platform/graphics/chromium/cc/CCVideoLayerImpl.h:
9:59 AM Changeset in webkit [115733] by jchaffraix@webkit.org
  • 4 edits
    1 copy in trunk/Source/WebKit/chromium

WebKit test RenderTableCellDeathTest.CanSetRow is failing as of r115705
https://bugs.webkit.org/show_bug.cgi?id=85274

Reviewed by Ojan Vafai.

The tests were crashing as we were creating a RenderTableCell without any RenderTableRow parent
which shouldn't happen inside the render tree.

Using RenderTableCell to access RenderTableRow was artificial and the checks have now been moved
to using a RenderTableRow directly.

  • WebKit.gyp:
  • WebKit.gypi:

Added the new file.

  • tests/RenderTableCellTest.cpp:

Removed the row index tests as they are now in the following file.

  • tests/RenderTableRowTest.cpp: Copied from Source/WebKit/chromium/tests/RenderTableCellTest.cpp.

Changed a bit the row index tests and re-enabled them.

9:52 AM Changeset in webkit [115732] by eae@chromium.org
  • 512 edits
    18 copies
    2 deletes in branches/subpixellayout

Merge trunk changes up until 115722 into subpixel branch.

9:41 AM Changeset in webkit [115731] by enne@google.com
  • 10 edits in branches/chromium/1084/Source

Merge 115278 - [chromium] Prevent CCLayerImpl::willDraw/didDraw mismatches
https://bugs.webkit.org/show_bug.cgi?id=84812

Reviewed by James Robinson.

Note: this did not merge cleanly, and was merged by hand.

Source/WebCore:

Because some layers lock/unlock resources, it needs to be guaranteed
that if willDraw is called on a layer then didDraw will also be called
on that layer before another willDraw or before layer destruction. Add
asserts to make sure that this is the case.

willDraw is called via CCLayerTreeHostImpl::prepareToDraw ->
calculateRenderPasses. didDraw was previously called in
CCLayerTreeHostImpl::drawLayers. Sometimes drawLayers was being
skipped by the caller of these functions based on what prepareToDraw
returned (causing didDraw to not be called). Fix this by having an
explicit step to call didDraw on all layers. This new didDrawAllLayers
function must be called if and only if prepareToDraw is called.

Tested by existing tests via new asserts in CCLayerImpl.

  • platform/graphics/chromium/cc/CCLayerImpl.cpp: (WebCore::CCLayerImpl::CCLayerImpl): (WebCore::CCLayerImpl::~CCLayerImpl): (WebCore::CCLayerImpl::willDraw): (WebCore): (WebCore::CCLayerImpl::didDraw):
  • platform/graphics/chromium/cc/CCLayerImpl.h: (CCLayerImpl):
  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: (WebCore::CCLayerTreeHostImpl::drawLayers): (WebCore::CCLayerTreeHostImpl::didDrawAllLayers): (WebCore):
  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h: (CCLayerTreeHostImpl):
  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp: (WebCore::CCScrollbarLayerImpl::willDraw): (WebCore::CCScrollbarLayerImpl::didDraw):
  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp: (WebCore::CCSingleThreadProxy::doComposite):
  • platform/graphics/chromium/cc/CCTextureLayerImpl.cpp: (WebCore::CCTextureLayerImpl::willDraw):
  • platform/graphics/chromium/cc/CCThreadProxy.cpp: (WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):
  • platform/graphics/chromium/cc/CCVideoLayerImpl.cpp: (WebCore::CCVideoLayerImpl::willDraw): (WebCore::CCVideoLayerImpl::didDraw):

Source/WebKit/chromium:

Update all tests to call CCLayerTreeHostImpl::didDrawAllLayers if they
call CCLayerTreeHostImpl::prepareToDraw.

  • tests/CCLayerTreeHostImplTest.cpp: (WebKitTests::CCLayerTreeHostImplTest::initializeLayerRendererAndDrawFrame): (WebKitTests::TEST_F):
9:10 AM Changeset in webkit [115730] by pdr@google.com
  • 7 edits
    2 adds in trunk

Skip building instance tree for disallowed target
https://bugs.webkit.org/show_bug.cgi?id=85202

Reviewed by Nikolas Zimmermann.

Source/WebCore:

When the target of a use is disallowed (e.g., a mask element) we can
skip building the instance tree because the shadow tree will be
skipped as well.

Test: svg/custom/animate-disallowed-mask-element.svg

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::buildInstanceTree):

LayoutTests:

  • platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-3-expected.txt:
  • platform/gtk/svg/custom/use-on-disallowed-foreign-object-3-expected.txt:
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-3-expected.txt:
  • platform/qt/svg/custom/use-on-disallowed-foreign-object-3-expected.txt:
  • svg/custom/animate-disallowed-mask-element-expected.txt: Added.
  • svg/custom/animate-disallowed-mask-element.svg: Added.
8:52 AM Changeset in webkit [115729] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Print out stderr output of ImageDiff if it is present
https://bugs.webkit.org/show_bug.cgi?id=85285

Reviewed by Philippe Normand.

Log the stderr output of ImageDiff as a warning if present. This is
especially helpful when ImageDiff crashes and stderr data might contain
relevant information about what caused the crash.

  • Scripts/webkitpy/layout_tests/port/webkit.py:

(WebKitPort._read_image_diff):

8:32 AM Changeset in webkit [115728] by mifenton@rim.com
  • 5 edits
    1 add in trunk

Add special attribute for alternate selection touch handling.
https://bugs.webkit.org/show_bug.cgi?id=85284

Reviewed by Antonio Gomes.

PR 152975.

.:

Add manual test for -bb-selection-touchoverride.

Reviewed Internally by Gen Mak.

  • ManualTests/blackberry/selection-touch-override.html: Added.

Source/WebKit/blackberry:

Add attribute -bb-selection-touchoverride to override
touch handling on selection overlay.

Reviewed Internally by Gen Mak.

  • Api/WebPageClient.h:
  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::inputNodeOverridesTouch):
(WebKit):
(BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):

  • WebKitSupport/SelectionHandler.h:

(SelectionHandler):

8:30 AM Changeset in webkit [115727] by kenneth@webkit.org
  • 6 edits in trunk

[Qt] Add an experimental extension to set the min. contents width
https://bugs.webkit.org/show_bug.cgi?id=85281

Reviewed by Antonio Gomes.

Source/WebKit2:

Add the experimental property preferredMinimumContentsWidth: which
can be used to set the minimum contents width when not overriden by
the page itself.

Default value is set to 0, which defines normal [desktop] behaviour.

  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewExperimental::preferredMinimumContentsWidth):
(QQuickWebViewExperimental::setPreferredMinimumContentsWidth):

  • UIProcess/API/qt/qquickwebview_p.h:

Tools:

  • MiniBrowser/qt/qml/BrowserWindow.qml:

Set the value of preferredMinimumContentsWidth to 980.

8:18 AM Changeset in webkit [115726] by Nikolas Zimmermann
  • 43 edits
    4 adds in trunk

Accumulation for values-animation is broken
https://bugs.webkit.org/show_bug.cgi?id=85158

Reviewed by Darin Adler.

Source/WebCore:

Example:
<rect width="999" height="100" fill="green"/>

<animate begin="0s" values="0; 30; 20" accumulate="sum" repeatCount="5" dur="2s"/>

</rect>

The rect should animate like this:
0.000s -> 0
0.500s -> 15
1.000s -> 30
1.500s -> 25
1.999s -> 20
2.000s -> 20 (first accumulation, starts accumulating from the last set value, here '20').
2.500s -> 45
3.000s -> 50
3.500s -> 45
3.999s -> 40
4.000s -> 40 (second accumulation)
etc.

This is currently broken for values-animation. The accumulation should happen after a full cycle of the values animation ran (aka. at the end of the duration).
A values animation works like this: iterate over the list of values, and calculate a 'from' and 'to' value for a given time. Example for values="0; 30; 20" dur="2s":

  • 0.0s .. 1.0s -> from=0, to=30
  • 1.0s .. 2.0s -> from=30, to=20

Accumulation currently is taken into account at each interval for a values-animation instead of the end of the cycle. Fix that
by passing an additional 'toAtEndOfDuration' type to calculateAnimatedValue() which is used for accumulation instead of the
current 'to' value.

Test: svg/animations/accumulate-values-width-animation.html

  • svg/SVGAnimateElement.cpp:

(WebCore::SVGAnimateElement::calculateAnimatedValue):

  • svg/SVGAnimateElement.h:

(SVGAnimateElement):

  • svg/SVGAnimateMotionElement.cpp:

(WebCore::SVGAnimateMotionElement::calculateAnimatedValue):

  • svg/SVGAnimateMotionElement.h:

(SVGAnimateMotionElement):

  • svg/SVGAnimatedAngle.cpp:

(WebCore::SVGAnimatedAngleAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedAngle.h:

(SVGAnimatedAngleAnimator):

  • svg/SVGAnimatedBoolean.cpp:

(WebCore::SVGAnimatedBooleanAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedBoolean.h:

(SVGAnimatedBooleanAnimator):

  • svg/SVGAnimatedColor.cpp:

(WebCore::SVGAnimatedColorAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedColor.h:

(SVGAnimatedColorAnimator):

  • svg/SVGAnimatedEnumeration.cpp:

(WebCore::SVGAnimatedEnumerationAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedEnumeration.h:

(SVGAnimatedEnumerationAnimator):

  • svg/SVGAnimatedInteger.cpp:

(WebCore::SVGAnimatedIntegerAnimator::calculateAnimatedInteger):
(WebCore::SVGAnimatedIntegerAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedInteger.h:

(SVGAnimatedIntegerAnimator):

  • svg/SVGAnimatedIntegerOptionalInteger.cpp:

(WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedIntegerOptionalInteger.h:

(SVGAnimatedIntegerOptionalIntegerAnimator):

  • svg/SVGAnimatedLength.cpp:

(WebCore::SVGAnimatedLengthAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedLength.h:

(SVGAnimatedLengthAnimator):

  • svg/SVGAnimatedLengthList.cpp:

(WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedLengthList.h:

(SVGAnimatedLengthListAnimator):

  • svg/SVGAnimatedNumber.cpp:

(WebCore::SVGAnimatedNumberAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedNumber.h:

(SVGAnimatedNumberAnimator):

  • svg/SVGAnimatedNumberList.cpp:

(WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedNumberList.h:

(SVGAnimatedNumberListAnimator):

  • svg/SVGAnimatedNumberOptionalNumber.cpp:

(WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedNumberOptionalNumber.h:

(SVGAnimatedNumberOptionalNumberAnimator):

  • svg/SVGAnimatedPath.cpp:

(WebCore::SVGAnimatedPathAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedPath.h:

(SVGAnimatedPathAnimator):

  • svg/SVGAnimatedPointList.cpp:

(WebCore::SVGAnimatedPointListAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedPointList.h:

(SVGAnimatedPointListAnimator):

  • svg/SVGAnimatedPreserveAspectRatio.cpp:

(WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedPreserveAspectRatio.h:

(SVGAnimatedPreserveAspectRatioAnimator):

  • svg/SVGAnimatedRect.cpp:

(WebCore::SVGAnimatedRectAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedRect.h:

(SVGAnimatedRectAnimator):

  • svg/SVGAnimatedString.cpp:

(WebCore::SVGAnimatedStringAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedString.h:

(SVGAnimatedStringAnimator):

  • svg/SVGAnimatedTransformList.cpp:

(WebCore::SVGAnimatedTransformListAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedTransformList.h:

(SVGAnimatedTransformListAnimator):

  • svg/SVGAnimatedTypeAnimator.h:

(SVGAnimatedTypeAnimator):

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
(WebCore::SVGAnimationElement::updateAnimation):

  • svg/SVGAnimationElement.h:

(WebCore::SVGAnimationElement::animateAdditiveNumber):
(SVGAnimationElement):

LayoutTests:

  • svg/animations/accumulate-values-width-animation-expected.txt: Added.
  • svg/animations/accumulate-values-width-animation.html: Added.
  • svg/animations/resources/accumulate-values-width-animation.svg: Added.
  • svg/animations/script-tests/accumulate-values-width-animation.js: Added.

(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(sample6):
(sample7):
(sample8):
(sample9):
(sample10):
(sample11):
(executeTest):

8:08 AM Changeset in webkit [115725] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=85231
Fixed position objects that are removed from the DOM don't kick off
fixed position recalculation
-and corresponding-
<rdar://problem/11297916>

Reviewed by Darin Adler.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed):

7:57 AM Changeset in webkit [115724] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

drag of links with styled text drop as links with plain text
https://bugs.webkit.org/show_bug.cgi?id=19386

Reviewed by Hajime Morita.

Add a regression test since the said bug appears to have been fixed on ToT WebKit.

  • editing/pasteboard/drag-drop-url-with-style-expected.txt: Added.
  • editing/pasteboard/drag-drop-url-with-style.html: Added.
7:53 AM Changeset in webkit [115723] by kenneth@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] Stop repeating timers which should only fire once
https://bugs.webkit.org/show_bug.cgi?id=85277

Reviewed by Antonio Gomes.

The TapGestureRecognizer uses QBasicTimers which are
repeating timers, so stop then when they fire.

  • UIProcess/qt/QtTapGestureRecognizer.cpp:

(WebKit::QtTapGestureRecognizer::highlightTimeout):
(WebKit::QtTapGestureRecognizer::singleTapTimeout):
(WebKit::QtTapGestureRecognizer::tapAndHoldTimeout):

7:20 AM Changeset in webkit [115722] by kling@webkit.org
  • 1 edit
    1 delete in trunk/LayoutTests

Remove Mac WK2-specific result for svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm.

  • platform/mac-wk2/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Removed.
5:55 AM Changeset in webkit [115721] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

WebKit unit tests RenderTableCellDeathTest.CanSetRow* are failing as of r115705
https://bugs.webkit.org/show_bug.cgi?id=85274

Not reviewed: test disabled.

  • tests/RenderTableCellTest.cpp:
5:28 AM Changeset in webkit [115720] by kling@webkit.org
  • 3 edits in trunk/LayoutTests

Fix test regression introduced by r115086.
https://bugs.webkit.org/show_bug.cgi?id=84566

Patch by Yuzhu Shen <yzshen@chromium.org> on 2012-05-01
Reviewed by Pavel Feldman.

  • inspector/network-status-non-http.html:
  • platform/qt/Skipped:
5:12 AM Changeset in webkit [115719] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

WebKit test RenderTableCellDeathTest.CanSetRow is failing as of r115705
https://bugs.webkit.org/show_bug.cgi?id=85274

Not reviewed: test disabled.

The test is based on the standalone cell, while the new logic
requires parent to be present upon the row index set.

  • tests/RenderTableCellTest.cpp:
4:18 AM Changeset in webkit [115718] by hbono@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Regression r113405 ContextMenuImpl does not set a misspelled word
https://bugs.webkit.org/show_bug.cgi?id=85271

Reviewed by Kent Tamura.

This change calls selectMisspelledWord() to get a misspelled word so Chrome can
set the misspelledWord variable without selecting text.

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):

3:47 AM Changeset in webkit [115717] by tkent@chromium.org
  • 8 edits
    1 copy
    1 move in trunk/LayoutTests

[Chromium] Rebaseline for recent changes about <input type=date>.

  • platform/chromium-linux/fast/forms/date/date-appearance-expected.png:
  • platform/chromium-linux/fast/forms/date/date-appearance-expected.txt:
  • platform/chromium-mac/fast/forms/date/date-appearance-expected.png:
  • platform/chromium-mac/fast/forms/date/date-appearance-expected.txt:
  • platform/chromium-mac/fast/forms/date/date-input-visible-strings-expected.txt: Copied from LayoutTests/platform/chromium/fast/forms/date/date-input-visible-strings-expected.txt.
  • platform/chromium-win/fast/forms/date/date-appearance-expected.png:
  • platform/chromium-win/fast/forms/date/date-appearance-expected.txt:
  • platform/chromium-win/fast/forms/date/date-input-visible-strings-expected.txt: Renamed from LayoutTests/platform/chromium/fast/forms/date/date-input-visible-strings-expected.txt.
  • platform/chromium/test_expectations.txt:
2:15 AM Changeset in webkit [115716] by danakj@chromium.org
  • 2 edits in trunk/Source/WebCore

Early-out for subtracting a non-intersecting region
https://bugs.webkit.org/show_bug.cgi?id=85258

Reviewed by Hajime Morita.

Given regions A and B, if the bounds of the regions do not intersect,
then the regions themselves do not intersect. If the intersection of
A and B is empty, then A subtract B == A.

  • platform/graphics/Region.cpp:

(WebCore::Region::subtract):

1:43 AM Changeset in webkit [115715] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Test expectation update for r115713.
https://bugs.webkit.org/show_bug.cgi?id=84935

  • platform/chromium/test_expectations.txt:

Mark TEXT for date-input-visible-strings.html

1:39 AM Changeset in webkit [115714] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK test_expectations update.

  • platform/gtk/test_expectations.txt: media/track/track-mode.html

is still flaky as per bug 83878.

12:54 AM Changeset in webkit [115713] by tkent@chromium.org
  • 5 edits
    4 adds in trunk/Source

[Chromium/Windows] Add LocalizedDateWin
https://bugs.webkit.org/show_bug.cgi?id=84935

Reviewed by Kentaro Hara.

Source/WebCore:

LocalizedDateICU.cpp doesn't reflect system settings. So there were some
problems such as <input type=date> doesn't use system's date format.

We need to use Windows API to get a date format and calendar parameters.

We obtain a date format like "MM/dd/yy" via Windows API, and
format/parse dates for the format by our own code because Windows API
can't handle years older than 1601 and doesn't have date parsing API.

Unit test: Source/WebKit/chromium/tests/LocaleWinTest.cpp

  • WebCore.gypi: Add LocalizedDateWin.cpp.
  • WebCore.gyp/WebCore.gyp:

For Windows, remove LocalizedDateICU.cpp and add LocalizedDateWin.cpp.
All of *Win.cpp files are excluded by default.

  • platform/text/LocaleWin.cpp: Added.

(WebCore::LocaleWin::LocaleWin):
(WebCore::LocaleWin::create):
(WebCore::LocaleWin::currentLocale):
(WebCore::LocaleWin::~LocaleWin):
(WebCore::LocaleWin::getLocaleInfoString):
A helper function to obtain a string by GetLocaleInfo().
(WebCore::LocaleWin::initializeShortMonthLabels):
Obtain short month names from Windows.

(WebCore::DateFormatToken): A struct to represent a token in a date format.
e.g. A format string "MM/dd/yy" generates five DateFormatToken:

Month2, Literal, Day2, Literal, Year2.

(isEraSymbol): A readability helper function.
(isYearSymbol): ditto.
(isMonthSymbol): ditto.
(isDaySymbol): ditto.
(countContinuousLetters):
(commitLiteralToken): A helper for parseDateFormat().
(parseDateFormat):
Parse a format string, and generate a list of DateFormatToken.

(WebCore::parseNumber): A helper for parseDate().
(WebCore::LocaleWin::parseNumberOrMonth): ditto.
(WebCore::LocaleWin::parseDate):
Parse a user-provided date string by matching with a DateFormatToken list.

(WebCore::appendNumber): A helper for formatDate().
(WebCore::appendTwoDigitsNumber): ditto. Write at least two digits.
(WebCore::appendFourDigitsNumber): ditto. Write at least four digits.
(WebCore::LocaleWin::formatDate):
Format a DateComponents by iterating a DateFormatToken list.

(WebCore::LocaleWin::initializeShortDateTokens):
(WebCore::substituteLabelsIntoFormat):
Creates a user-visible format string by iterating a DateFormatToken list.
(WebCore::LocaleWin::dateFormatText):
(WebCore::LocaleWin::initializeMonthLabels):
Creates month names by Windows API.
(WebCore::LocaleWin::initializeWeekDayShortLabels):

Creates day names by Windows API.

(WebCore::LocaleWin::monthLabels):
Public accessor function for month names.
(WebCore::LocaleWin::weekDayShortLabels):
Public accessor function for day names.

  • platform/text/LocaleWin.h: Added.
  • platform/text/LocalizedDateWin.cpp:

Added. The following functions simply delegate to LocaleWin::currentLocale().
(WebCore::parseLocalizedDate):
(WebCore::formatLocalizedDate):
(WebCore::localizedDateFormatText):
(WebCore::monthLabels):
(WebCore::weekDayShortLabels):
(WebCore::firstDayOfWeek):

Source/WebKit/chromium:

Add test for LocaleWin.cpp.

  • WebKit.gypi:
  • tests/LocaleWinTest.cpp: Added.

(msForDate): A helper function.
(TEST):

Apr 30, 2012:

11:39 PM Changeset in webkit [115712] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed, rebaselining after r115666 and test expectations update
after r115651.

  • platform/gtk/fast/js/constructor-length-expected.txt:
  • platform/gtk/test_expectations.txt:
11:11 PM FeatureFlags edited by tkent@chromium.org
Add LEGACY_WEBKIT_BLOB_BUILDER (diff)
8:51 PM Changeset in webkit [115711] by tkent@chromium.org
  • 4 edits in trunk

REGRESSION(r115600): parseLocalizedDate() should fail for invalid inputs
https://bugs.webkit.org/show_bug.cgi?id=85176

Reviewed by Kentaro Hara.

Source/WebCore:

Test: fast/forms/date/input-date-commit-valid-only.html

  • platform/text/mac/LocalizedDateMac.mm:

(WebCore::parseLocalizedDate):
We should check nil for the result of NSDateFormtter::dateFromString.

LayoutTests:

  • platform/chromium/test_expectations.txt: Remove an entry for a fixed test.
8:27 PM Changeset in webkit [115710] by mrowe@apple.com
  • 2 edits in trunk/Source/WebCore

Fix another leak due to misuse of createCFString.

Reviewed by Darin Adler.

  • plugins/mac/PluginPackageMac.cpp:

(WebCore::PluginPackage::fetchInfo): Adopt the result of createCFString.

8:27 PM Changeset in webkit [115709] by mrowe@apple.com
  • 2 edits in trunk/Source/WebCore

<rdar://problem/11312198> Many leaks during fast/events/dropzone-002.html

Reviewed by Darin Adler.

  • platform/mac/ClipboardMac.mm:

(WebCore::utiTypeFromCocoaType): Adopt the result of createCFString.

8:26 PM Changeset in webkit [115708] by mrowe@apple.com
  • 2 edits in trunk/Source/WebCore

<rdar://problem/11352575> Many CGImageRefs leaked during media layout tests

Reviewed by Brian Weinstein.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createImageForTimeInRect): Adopt the CGImageRef.

8:24 PM Changeset in webkit [115707] by eae@chromium.org
  • 2 edits in trunk/Source/WebCore

Change RenderBoxModelObject::calculateBackgroundImageGeometry to use roundToInt
https://bugs.webkit.org/show_bug.cgi?id=85249

Reviewed by Eric Seidel.

Prepare RenderBoxModelObject for FractionalLayoutUnits by adding rounding
logic to calculateBackgroundImageGeometry. Background images, as all
images, needs to be layed out on pixel boundaries thus we need to convert
it to a integer value.

No new tests, no change in functionality.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):

8:21 PM Changeset in webkit [115706] by isherman@chromium.org
  • 5 edits in trunk

Unreviewed, rolling out r113511.
http://trac.webkit.org/changeset/113511
https://bugs.webkit.org/show_bug.cgi?id=66032
https://bugs.webkit.org/show_bug.cgi?id=85150

Regression: Many autofilled form fields lack the default
autofill background even when authors don’t override the
autofill colors

Source/WebCore:

  • css/html.css:

(input:-webkit-autofill): Restore !important modifiers

LayoutTests:

  • fast/forms/input-autofilled-expected.txt:
  • fast/forms/input-autofilled.html:
8:13 PM Changeset in webkit [115705] by jchaffraix@webkit.org
  • 13 edits in trunk/Source

Move RenderTableCell's row index to RenderTableRow
https://bugs.webkit.org/show_bug.cgi?id=85229

Reviewed by Ojan Vafai.

Source/WebCore:

Covered by the existing table tests.

Row index is a RenderTableRow concept and as such this change moves
the relevant logic into the class.

While touching the code, renamed row() -> rowIndex() as now RenderTableCell
can return its parent RenderTableRow and we were returning an index, not the row
itself.

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::cellForColumnAndRow):

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::rowIndexRange):
(WebCore::AccessibilityTableCell::titleUIElement):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::cellAbove):
(WebCore::RenderTable::cellBelow):
(WebCore::RenderTable::cellBefore):
(WebCore::RenderTable::cellAfter):

  • rendering/RenderTreeAsText.cpp:

(WebCore::RenderTreeAsText::writeRenderObject):
Updated after the renaming RenderTableCell::row() -> rowIndex().

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::RenderTableCell):
(WebCore::RenderTableCell::computeCollapsedBeforeBorder):
(WebCore::RenderTableCell::computeCollapsedAfterBorder):
Updated after m_rowIndex removal and row() -> rowIndex() renaming.

(WebCore::RenderTableCell::styleDidChange):
Switched the rowWasSet check to an ASSERT. The new logic guarantees that
row index was set straight when we insert the row. The previous logic was
opened to some race conditions as we could wait for a recalcCells call before
setting the index on the rows which made this check necessary.

  • rendering/RenderTableCell.h:

(WebCore::RenderTableCell::row):
Added this RenderTableRow getter.

(WebCore::RenderTableCell::rowIndex):
Renamed from row().

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::RenderTableRow):
(WebCore::RenderTableRow::styleDidChange):
Updated after adding m_rowIndex / rowIndex().

  • rendering/RenderTableRow.h:

(WebCore::RenderTableRow::setRowIndex):
(WebCore::RenderTableRow::rowIndex):
Added those getter / setter. Also kept m_rowIndex's smaller size
for future optimization and for symmetry with the column index on
RenderTableCell.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::addChild):
(WebCore::RenderTableSection::recalcCells):
Made sure that whenever we insert or update our row index
we do call setRowIndex().

(WebCore::RenderTableSection::addCell):
This logic now doesn't need to query insertionRow as the cell's
should have the index of the row in which it is inserted.

(WebCore::RenderTableSection::calcRowLogicalHeight):
(WebCore::RenderTableSection::layoutRows):
(WebCore::compareCellPositionsWithOverflowingCells):
More updates after row() -> rowIndex() renaming.

  • rendering/RenderTableSection.h:

Removed rowIndexForRenderer now that the row caches this informatin.

Source/WebKit/chromium:

  • tests/RenderTableCellTest.cpp:

Updated after the refactoring.

7:53 PM Changeset in webkit [115704] by keishi@webkit.org
  • 16 edits
    4 adds in trunk

datalist: Inconsistent behavior of HTMLInputElement::list
https://bugs.webkit.org/show_bug.cgi?id=84351

Source/WebCore:

Each platform will have a different set of input types that support the datalist UI.
This patch makes shouldRespectListAttribute ask the RenderTheme if it supports datalist UI for that input type.
Thus making it possible to do feature detection with JS.

Reviewed by Kent Tamura.

  • WebCore.gypi: Added RenderThemeChromiumCommon.{cpp,h}
  • html/ColorInputType.cpp:

(WebCore::ColorInputType::shouldRespectListAttribute):
(WebCore):

  • html/ColorInputType.h:

(ColorInputType):

  • html/InputType.cpp:

(WebCore::InputType::themeSupportsDataListUI): Static method used by TextFieldInputType, RangeInputType, and ColorInputType.
(WebCore):

  • html/InputType.h:

(InputType):

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::shouldRespectListAttribute):

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::shouldRespectListAttribute):

  • rendering/RenderTheme.h:

(RenderTheme):
(WebCore::RenderTheme::supportsDataListUI): Returns true if the platform can show the datalist suggestions for a given input type.

  • rendering/RenderThemeChromiumCommon.cpp: Added.

(WebCore):
(WebCore::RenderThemeChromiumCommon::supportsDataListUI):

  • rendering/RenderThemeChromiumCommon.h: Added.

(WebCore):
(RenderThemeChromiumCommon):

  • rendering/RenderThemeChromiumMac.h:

(RenderThemeChromiumMac):

  • rendering/RenderThemeChromiumMac.mm:

(WebCore::RenderThemeChromiumMac::supportsDataListUI):
(WebCore):

  • rendering/RenderThemeChromiumSkia.cpp:

(WebCore::RenderThemeChromiumMac::supportsDataListUI):
(WebCore):

  • rendering/RenderThemeChromiumSkia.h:

(RenderThemeChromiumSkia):

LayoutTests:

Reviewed by Kent Tamura.

  • fast/forms/datalist/input-list-expected.txt:
  • fast/forms/datalist/input-list.html: Added tests for all input types.
  • platform/chromium/fast/forms/datalist/input-list-expected.txt: Added.
7:51 PM Changeset in webkit [115703] by gavinp@chromium.org
  • 5 edits
    3 adds in trunk/Source

[Chromium] Add thunk headers for staging Prerendering API.
https://bugs.webkit.org/show_bug.cgi?id=84880

Reviewed by Adam Barth.

These empty headers will be replaced by the actual API when Bug 85005 is commited.

Source/Platform:

  • Platform.gypi:
  • chromium/public/WebPrerender.h: Added.

(WebKit):
(WebPrerender):
(ExtraData):
(WebKit::WebPrerender::ExtraData::~ExtraData):
(WebKit::WebPrerender::url):
(WebKit::WebPrerender::referrer):
(WebKit::WebPrerender::referrerPolicy):
(WebKit::WebPrerender::setExtraData):
(WebKit::WebPrerender::extraData):
(WebKit::WebPrerender::WebPrerender):
(WebKit::WebPrerender::~WebPrerender):

  • chromium/public/WebPrerenderingSupport.h: Added.

(WebKit):
(WebPrerenderingSupport):
(WebKit::WebPrerenderingSupport::initialize):
(WebKit::WebPrerenderingSupport::shutdown):
(WebKit::WebPrerenderingSupport::current):
(WebKit::WebPrerenderingSupport::add):
(WebKit::WebPrerenderingSupport::cancel):
(WebKit::WebPrerenderingSupport::abandon):
(WebKit::WebPrerenderingSupport::WebPrerenderingSupport):
(WebKit::WebPrerenderingSupport::~WebPrerenderingSupport):

Source/WebKit/chromium:

  • WebKit.gyp:
  • public/WebPrerendererClient.h: Added.

(WebKit):
(WebPrerendererClient):

  • public/WebView.h:

(WebKit):
(WebKit::WebView::setPrerendererClient):

7:38 PM Changeset in webkit [115702] by isherman@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Fix Autofill popup visibility behavior
Prevent users from interacting with invisible Autofill popups rendered outside the main frame's contents view.
This is a recommit of r115400, restricted to just Autofill popups.
https://bugs.webkit.org/show_bug.cgi?id=84420

Reviewed by Abhishek Arya

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::popupOpened): Hide popups rendered outside the main frame's contents view.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::applyAutofillSuggestions): Fix up order of operations to support immediately hiding a popup if it would not be visible

7:24 PM FeatureFlags edited by tkent@chromium.org
Add LINK_PRERENDER, SUBPIXEL_LAYOUT, and NATIVE_FULLSCREEN_VIDEO (diff)
7:15 PM Changeset in webkit [115701] by leviw@chromium.org
  • 3 edits in trunk/Source/WebCore

RenderObject incorrectly lists maximalOutlineSize as a LayoutUnit
https://bugs.webkit.org/show_bug.cgi?id=85248

Reviewed by Eric Seidel.

Reverting RenderObject::maximalOutlineSize to int. This is a slop value for repaint
rects that doesn't affect layout. It also derives its value from RenderView's function
of the same name, which is already an integer.

No new tests. No change in behavior.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::maximalOutlineSize):

  • rendering/RenderObject.h:

(RenderObject):

7:09 PM Changeset in webkit [115700] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

REGRESSION: editing/inserting/insert-bg-font.html fails on Lion
https://bugs.webkit.org/show_bug.cgi?id=82079

Patch by Koji Ishii <Koji Ishii> on 2012-04-30
Reviewed by Ryosuke Niwa.

The test fails only if "Correct spelling automatically" is turned on.
AutoCorrect kicks in because the test has "backgroundblue" as a word,
so changing it to "background blue" fixes the failure.

  • editing/inserting/insert-bg-font-expected.txt: Change "backgroundblue" to "background blue".
  • editing/inserting/insert-bg-font.html: Ditto.
6:50 PM Changeset in webkit [115699] by commit-queue@webkit.org
  • 4 edits
    5 adds in trunk

Add multichannel support for input of JavaScriptAudioNode
https://bugs.webkit.org/show_bug.cgi?id=84687

Patch by Xingnan Wang <xingnan.wang@intel.com> on 2012-04-30
Reviewed by Chris Rogers.

Source/WebCore:

Tests: webaudio/javascriptaudionode-downmix8-2channel-input.html

webaudio/javascriptaudionode-upmix2-8channel-input.html

  • Modules/webaudio/JavaScriptAudioNode.cpp:

(WebCore::JavaScriptAudioNode::create):
(WebCore::JavaScriptAudioNode::JavaScriptAudioNode):
(WebCore::JavaScriptAudioNode::initialize):
(WebCore::JavaScriptAudioNode::process):

  • Modules/webaudio/JavaScriptAudioNode.h:

(JavaScriptAudioNode):

LayoutTests:

  • webaudio/javascriptaudionode-downmix8-2channel-input-expected.txt: Added.
  • webaudio/javascriptaudionode-downmix8-2channel-input.html: Added.
  • webaudio/javascriptaudionode-upmix2-8channel-input-expected.txt: Added.
  • webaudio/javascriptaudionode-upmix2-8channel-input.html: Added.
  • webaudio/resources/javascriptaudionode-testing.js: Added.

(createBuffer):
(processAudioData):
(fillData):
(checkStereoOnlyData):
(runJSNodeTest):

6:38 PM Changeset in webkit [115698] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash when opening plug-ins in background tabs
https://bugs.webkit.org/show_bug.cgi?id=85255
<rdar://problem/11344053>

Reviewed by Dan Bernstein.

  • PluginProcess/mac/PluginControllerProxyMac.mm:

(WebKit::PluginControllerProxy::setLayerHostingMode):
m_layerHostingContext can be null for plug-ins that don't use the Core Animation drawing model, so check for that.

6:20 PM Changeset in webkit [115697] by barraclough@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Should be able to use YARR JIT without the JS language JIT
https://bugs.webkit.org/show_bug.cgi?id=85252

Reviewed by Geoff Garen.

Need to split canUseRegExpJIT out of canUseJIT.

  • runtime/JSGlobalData.cpp:

(JSC):
(JSC::useJIT):
(JSC::JSGlobalData::JSGlobalData):

  • replace m_canUseJIT with m_canUseAssembler
  • runtime/JSGlobalData.h:

(JSGlobalData):
(JSC::JSGlobalData::canUseRegExpJIT):

  • Added canUseRegExpJIT, distinct from canUseJIT.
  • runtime/RegExp.cpp:

(JSC::RegExp::compile):
(JSC::RegExp::compileMatchOnly):

  • Call canUseRegExpJIT instead of canUseJIT.
6:10 PM Changeset in webkit [115696] by yael.aharon@nokia.com
  • 9 edits in trunk/Source/WebKit2

[Qt][WK2] Fixed layers are shaking when zoom level is not 1.0 due to a rounding error.
https://bugs.webkit.org/show_bug.cgi?id=84306

Reviewed by Noam Rosenthal.

When zooming, we need to be careful about how to convert the visible rect from float to int.
Using toAlignedRect can produce inconsistent width and height when we are scrolling.
This patch carefully modifies each piece of the visible rect, to avoid such rounding errors.
In addition, the TransformationMatrix we use for painting, needs to be adjusted for the same rounding error.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::visibleContentsRect):
(QQuickWebViewFlickablePrivate::_q_contentViewportChanged):

  • UIProcess/DrawingAreaProxy.h:

(WebCore):
(WebKit::DrawingAreaProxy::setVisibleContentsRect):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):

  • UIProcess/DrawingAreaProxyImpl.h:

(DrawingAreaProxyImpl):

  • UIProcess/LayerTreeHostProxy.cpp:

(WebKit::LayerTreeHostProxy::setVisibleContentsRect):

  • UIProcess/LayerTreeHostProxy.h:

(LayerTreeHostProxy):

  • UIProcess/WebLayerTreeRenderer.cpp:

(WebKit::WebLayerTreeRenderer::paintToCurrentGLContext):
(WebKit::WebLayerTreeRenderer::setVisibleContentsRect):

  • UIProcess/WebLayerTreeRenderer.h:

(WebLayerTreeRenderer):

5:57 PM WebKit Team edited by leviw@chromium.org
(diff)
5:52 PM Changeset in webkit [115695] by oliver@apple.com
  • 4 edits in trunk/Source

Source/WebCore: Harden arithmetic in ImageBufferDataCG
https://bugs.webkit.org/show_bug.cgi?id=61373

Reviewed by Gavin Barraclough.

We have a checked type that allows us to automate many of the
bounds checks we want here, so let's replace the floating point
math, and just use Checked<> throughout. We use a non-recording
Checked<> as no overflows should reach this point, so we'll take
a hard early failure, over the cost of many branches when
accessing the raw values in loops.

  • platform/graphics/cg/ImageBufferDataCG.cpp:

(WebCore::ImageBufferData::getData):
(WebCore::ImageBufferData::putData):

Source/WTF: Investigate overflows in Canvas putImageData routine
https://bugs.webkit.org/show_bug.cgi?id=61373

Reviewed by Gavin Barraclough.

Allow floating point multiplies of checked types (complete with
bounds checks).

  • wtf/CheckedArithmetic.h:

(Checked):
(WTF::Checked::operator*=):

5:47 PM Changeset in webkit [115694] by fpizlo@apple.com
  • 13 edits in branches/dfgopt/Source/JavaScriptCore

Bytecode dumps should contain data about the state of get_by_id caches
https://bugs.webkit.org/show_bug.cgi?id=85246

Reviewed by Gavin Barraclough.

Changed the DFG bytecode parser (and the code that calls it) to be able
to call codeBlock->dump() on the code blocks being parsed.

Changed bytecode dumping to be able to print the state of get_by_id
caches inline with the bytecode.

Removed the old StructureStubInfo dumping code, which no longer worked
right, and was incapable of telling us information about chain and list
accesses.

This change does not add dumping for put_by_id caches. We can add that
at a later time.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printUnaryOp):
(JSC::CodeBlock::printBinaryOp):
(JSC::CodeBlock::printConditionalJump):
(JSC::CodeBlock::printGetByIdOp):
(JSC::dumpStructure):
(JSC):
(JSC::dumpChain):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::printPutByIdOp):
(JSC::printGlobalResolveInfo):
(JSC::CodeBlock::printStructure):
(JSC::CodeBlock::printStructures):
(JSC::CodeBlock::dump):
(JSC::CodeBlock::visitStructures):
(JSC::ProgramCodeBlock::jitCompileImpl):
(JSC::EvalCodeBlock::jitCompileImpl):
(JSC::FunctionCodeBlock::jitCompileImpl):

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::jitCompile):
(ProgramCodeBlock):
(EvalCodeBlock):
(FunctionCodeBlock):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::ByteCodeParser):
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::parseCodeBlock):
(JSC::DFG::parse):

  • dfg/DFGByteCodeParser.h:

(DFG):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • dfg/DFGDriver.h:

(DFG):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • dfg/DFGOSRExitCompiler.cpp:
  • jit/JITDriver.h:

(JSC::jitCompileIfAppropriate):
(JSC::jitCompileFunctionIfAppropriate):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::jitCompileAndSetHeuristics):

  • runtime/Executable.cpp:

(JSC::EvalExecutable::jitCompile):
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::jitCompile):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::jitCompileForCall):
(JSC::FunctionExecutable::jitCompileForConstruct):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

  • runtime/Executable.h:

(EvalExecutable):
(ProgramExecutable):
(FunctionExecutable):
(JSC::FunctionExecutable::jitCompileFor):

  • runtime/ExecutionHarness.h:

(JSC::prepareForExecution):
(JSC::prepareFunctionForExecution):

5:39 PM Changeset in webkit [115693] by zmo@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed, test expectations update.

  • platform/chromium/test_expectations.txt:
5:09 PM Changeset in webkit [115692] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderBoxModelObject.cpp

Change lround to roundToInt as we're dealing with LayoutUnits.

5:06 PM Changeset in webkit [115691] by leviw@chromium.org
  • 7 edits in trunk/Source/WebCore

Add absoluteValue method for LayoutUnits to allow overloading abs()
https://bugs.webkit.org/show_bug.cgi?id=85214

Reviewed by Eric Seidel.

Adding an absoluteValue free inline function that operates on LayoutUnits, which
allows us to have one function signature for ints or FractionalLayoutUnits. We
can't simply add a FractionalLayoutUnit flavor of abs because it confuses
some compilers due to the implicit FractionalLayoutUnit constructors that take
ints and floats.

No new tests. No change in behavior.

  • page/SpatialNavigation.cpp:

(WebCore::distanceDataForNode):

  • rendering/LayoutTypes.h:

(WebCore::absoluteValue):
(WebCore):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):

  • rendering/RenderLineBoxList.cpp:

(WebCore::RenderLineBoxList::rangeIntersectsRect):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintAfterLayoutIfNeeded):

4:58 PM Changeset in webkit [115690] by eae@chromium.org
  • 544 edits
    2 copies
    3 deletes in branches/subpixellayout

Merge trunk changes up until 115687 into subpixel branch.

4:42 PM Changeset in webkit [115689] by leviw@chromium.org
  • 3 edits in trunk/Source/WebCore

Update LayoutUnit usage in InlineFlowBox and RenderWidget
https://bugs.webkit.org/show_bug.cgi?id=85239

Reviewed by Eric Seidel.

Updating LayoutUnit usage in a pair of remaining functions to minimize the remaining work to switching
to FractionalLayoutUnits for layout instead of integers.

No new tests. No change in behavior.

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::placeBoxesInBlockDirection): Though stored as a float, the top is always
set to an integer value. When we move to sub-pixel, we need to preserve this. Not preserving this
behavior affects text decorations, most notably underlines.

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::updateWidgetGeometry): Adding pixel snapping for the content box if it's
not transformed (absoluteContentBox includes pixel snapping), and properly treating the boundingBox
as an IntRect.

4:34 PM Changeset in webkit [115688] by barraclough@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Should be able to build YARR JIT without the JS language JIT
https://bugs.webkit.org/show_bug.cgi?id=85242

Reviewed by Michael Saboff.

Some build macros are wrong.

  • assembler/RepatchBuffer.h:
  • jit/ExecutableAllocator.h:

(JSC):

  • jit/JITExceptions.cpp:
  • runtime/InitializeThreading.cpp:

(JSC::initializeThreadingOnce):

4:16 PM Companies and Organizations that have contributed to WebKit edited by krit@webkit.org
(diff)
4:03 PM Changeset in webkit [115687] by leviw@chromium.org
  • 2 edits in trunk/Source/WebCore

Prepare RenderDeprecatedFlexibleBox for sub-pixel layout
https://bugs.webkit.org/show_bug.cgi?id=85217

Reviewed by Eric Seidel.

Bailing from the space distribution loop in layoutHorizontal/VerticalBox when
the remaining space falls below one pixel. This has no effect in whole-pixel
layout, but avoids unnecessary work/infinite loops in the sub-pixel case.

No new tests. No change in behavior.

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):

3:51 PM Changeset in webkit [115686] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

NULL ptr in WebCore::Range::getBorderAndTextQuads
https://bugs.webkit.org/show_bug.cgi?id=77218

Reviewed by Eric Seidel.

Source/WebCore:

The crash was caused by a malformed range obtained within an event handler of mutation events
(DOMNodeRemovedFromDocument). Because this range wasn't updated per node removal, range functions
end up not behaving well.

Fixed the bug by changing the order of the notifications in ContainerNode::willRemoveChild.
We now fire mutation events first before updating ranges so that any range created inside those
event handlers can also be updated prior to the actual node removal.

Test: fast/dom/Range/range-created-in-mutation-event-crash.xhtml

  • dom/ContainerNode.cpp:

(WebCore::willRemoveChild):

LayoutTests:

Add a regression test. We use alert here instead of innerHTML, textContent, etc...
because document element is no longer well-formed at the end of the test.

  • fast/dom/Range/range-created-in-mutation-event-crash-expected.txt: Added.
  • fast/dom/Range/range-created-in-mutation-event-crash.xhtml: Added.
3:51 PM Changeset in webkit [115685] by ojan@chromium.org
  • 2 edits in trunk/Tools

Fix tests to not depend on the actual list of builders at build.chromium.org.

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

(testHtmlForIndividualTestOnAllBuildersWithChrome):
(testHtmlForIndividualTestOnAllBuildersWithChromeWebkitMaster):

3:49 PM Changeset in webkit [115684] by mrowe@apple.com
  • 1 edit
    3 deletes in trunk/LayoutTests

REGRESSION (r115544): platform/mac/fast/events/pointer-events-dashboard.html is failing

Remove the test since r115544 removed the special behavior in Dashboard.

Rubber-stamped by Anders Carlsson.

  • platform/mac/fast/events/pointer-events-dashboard-expected.png: Removed.
  • platform/mac/fast/events/pointer-events-dashboard-expected.txt: Removed.
  • platform/mac/fast/events/pointer-events-dashboard.html: Removed.
3:46 PM Changeset in webkit [115683] by tomz@codeaurora.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening

  • platform/qt/test_expectations.txt:
3:44 PM Changeset in webkit [115682] by commit-queue@webkit.org
  • 5 edits in trunk

Source/WebKit/chromium: [chromium] Disable battery-status API support.

The battery-status API support should not have view-dependency. So disable it until
that is fixed.
https://bugs.webkit.org/show_bug.cgi?id=84499

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-04-30
Reviewed by Adam Barth.

  • features.gypi:

LayoutTests: [chromium] Disable battery-status API support.
https://bugs.webkit.org/show_bug.cgi?id=84499

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-04-30
Reviewed by Adam Barth.

  • platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:
  • platform/chromium/test_expectations.txt:
3:42 PM Changeset in webkit [115681] by andersca@apple.com
  • 5 edits in trunk/Source

ScrollingCoordinator::requestScrollPositionUpdate should not update the main frame scroll position
https://bugs.webkit.org/show_bug.cgi?id=85240
<rdar://problem/11286609>

Reviewed by Sam Weinig.

Source/WebCore:

The call to updateMainFrameScrollPosition was added to make the WebKit2 find overlay work, since it relies
on scroll position updates being synchronous. Change the find code in WebKit2 to handle asynchronous scroll
position updates and remove the call to updateMainFrameScrollPosition.

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::requestScrollPositionUpdate):

Source/WebKit2:

The find machinery should cope with asynchronous scroll position updates.

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::updateFindUIAfterPageScroll):
Split the code that handles updating the find indicator and find overlay out into a separate function.

(WebKit::FindController::findString):
Call updateFindUIAfterPageScroll once we know that the scroll position has been updated.

3:41 PM Changeset in webkit [115680] by gavinp@chromium.org
  • 2 edits
    1 delete in trunk/Source/WebKit/chromium

[Chromium] Remove Webkit/chromium/public/WebReferrerPolicy.h thunk.
https://bugs.webkit.org/show_bug.cgi?id=84552

After http://codereview.chromium.org/10139023/ lands, this thunk is no
longer needed.

Reviewed by Adam Barth.

  • WebKit.gyp:
  • public/WebReferrerPolicy.h: Removed.
3:29 PM Changeset in webkit [115679] by barraclough@apple.com
  • 5 edits in trunk

Arguments object resets attributes on redefinition of a parameter
https://bugs.webkit.org/show_bug.cgi?id=84994

Rubber stamped by Oliver Hunt.

Source/JavaScriptCore:

There is a bug that we always re-add the original property before
redefinition, doing so in a way that will reset the attributes
without checking configurability.

  • runtime/Arguments.cpp:

(JSC::Arguments::defineOwnProperty):

  • Only instantiate the property once - do not re-add if it has already been added, or if it has been deleted.

LayoutTests:

  • fast/js/arguments-expected.txt:
  • fast/js/script-tests/arguments.js:
    • Added test cases.
3:21 PM Changeset in webkit [115678] by andersca@apple.com
  • 8 edits in trunk/Source

Add a way to asynchronously call a function once the scroll position of a page has been updated
https://bugs.webkit.org/show_bug.cgi?id=85237

Reviewed by Sam Weinig.

Source/WebCore:

  • WebCore.exp.in:

Export functions needed by WebKit2.

  • page/scrolling/ScrollingCoordinator.h:

Make commitTreeStateIfNeeded public.

Source/WebKit2:

Add DrawingArea::dispatchAfterEnsuringUpdatedScrollPosition, which will call the given function object after
making sure that the scroll position has been updated correctly. This is important for TiledCoreAnimationDrawingArea,
which updates the scrolling position asynchronously.

  • WebProcess/WebPage/DrawingArea.cpp:

(WebKit::DrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
Since scroll position updates are synchronous by default, just call function directly.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
Commit the layer tree state and then use ScrollingThread::dispatchBarrier to make sure that the function is called when any
scroll position changes have been made. If possible, freeze the layer tree to make sure that the update is atomic.

3:14 PM Changeset in webkit [115677] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Fix ALL the build failures!

  • UIProcess/API/mac/WKView.mm:

(-[WKView WebKit::]):

  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
3:06 PM Changeset in webkit [115676] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix.

  • Shared/DrawingAreaInfo.h:
3:04 PM Changeset in webkit [115675] by leviw@chromium.org
  • 8 edits in branches/subpixellayout/Source

Adding absoluteValue abs clone in LayoutTypes and using it throughout WebCore. Replacing a .round() with roundToInt, and adding needed absoluteValues in DeprecatedFlexibleBox.

2:52 PM Changeset in webkit [115674] by rniwa@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Remove an erroneous assertion after r115655.

  • runtime/NumberPrototype.cpp:

(JSC::toUStringWithRadix):

2:48 PM Changeset in webkit [115673] by haraken@chromium.org
  • 4 edits
    2 adds in trunk

WebGLRenderingContext methods should throw TypeError for not enough arguments
https://bugs.webkit.org/show_bug.cgi?id=84787

Reviewed by Kenneth Russell.

Currently, WebGLRenderingcontext methods implement
"Not enough arguments" error as SyntaxError. The Web IDL
spec requires that it should be TypeError:
http://www.w3.org/TR/WebIDL/#dfn-overload-resolution-algorithm

This patch changes SyntaxError to TypeError.

Source/WebCore:

I wanted to confirm the behavior of Firefox and Opera,
but they do not implement WebGL yet.

Test: fast/canvas/webgl/webgl-exceptions.html

  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::getObjectParameter):
(WebCore::JSWebGLRenderingContext::getAttachedShaders):
(WebCore::JSWebGLRenderingContext::getExtension):
(WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter):
(WebCore::JSWebGLRenderingContext::getParameter):
(WebCore::JSWebGLRenderingContext::getProgramParameter):
(WebCore::JSWebGLRenderingContext::getShaderParameter):
(WebCore::JSWebGLRenderingContext::getUniform):
(WebCore::dataFunctionf):
(WebCore::dataFunctioni):
(WebCore::dataFunctionMatrix):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::getObjectParameter):
(WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
(WebCore::V8WebGLRenderingContext::getExtensionCallback):
(WebCore::V8WebGLRenderingContext::getFramebufferAttachmentParameterCallback):
(WebCore::V8WebGLRenderingContext::getParameterCallback):
(WebCore::V8WebGLRenderingContext::getProgramParameterCallback):
(WebCore::V8WebGLRenderingContext::getShaderParameterCallback):
(WebCore::V8WebGLRenderingContext::getUniformCallback):
(WebCore::vertexAttribAndUniformHelperf):
(WebCore::uniformHelperi):
(WebCore::uniformMatrixHelper):

LayoutTests:

  • fast/canvas/webgl/webgl-exceptions-expected.txt: Added.
  • fast/canvas/webgl/webgl-exceptions.html: Added.
2:41 PM Changeset in webkit [115672] by eae@chromium.org
  • 10 edits in trunk/Source

[gtk, qt, chromium, win] Fix usage of LayoutUnits and rounding in platform code
https://bugs.webkit.org/show_bug.cgi?id=85222

Reviewed by Eric Seidel.

Update platform code to use the pixel snapped values for painting rects
to line up with device pixels and change platform specific hit testing
code to use roundedPoint as hit testing is still mostly done on integer
bounds.

Source/WebCore:

No new tests, no change in functionality.

  • platform/qt/RenderThemeQt.cpp:

(WebCore::RenderThemeQt::paintMediaVolumeSliderTrack):

  • platform/win/PopupMenuWin.cpp:

(WebCore::PopupMenuWin::paint):

  • rendering/RenderThemeChromiumSkia.cpp:

(WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
(WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
(WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::mouseDidMoveOverElement):

  • webkit/webkithittestresult.cpp:

(WebKit::kit):

  • webkit/webkitwebview.cpp:

(getLocationForKeyboardGeneratedContextMenu):
(webkit_web_view_query_tooltip):

Source/WebKit2:

  • WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:

(WebKit::WebPopupMenu::setUpPlatformData):

2:38 PM Changeset in webkit [115671] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Put all of TiledCoreAnimationDrawingArea in #if ENABLE(THREADED_SCROLLING)
https://bugs.webkit.org/show_bug.cgi?id=85232

Reviewed by Sam Weinig.

Stop pretending that TiledCoreAnimationDrawingArea works without threaded scrolling.

  • WebProcess/WebPage/DrawingArea.cpp:

(WebKit::DrawingArea::create):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::~TiledCoreAnimationDrawingArea):
(WebKit::dispatchBackToMainThread):
(WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):
(WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):
(WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):
(WebKit::TiledCoreAnimationDrawingArea::updatePreferences):

2:37 PM Changeset in webkit [115670] by haraken@chromium.org
  • 10 edits in trunk/Source/WebCore

[V8][JSC] Remove hard-coded "Not enough arguments" errors
https://bugs.webkit.org/show_bug.cgi?id=85207

Reviewed by Sam Weinig.

In bug 85022 and bug 85097, we implemented
createNotEnoughArgumentsError() in JSC and
V8Proxy::throwNotEnoughArgumentsError() in V8 and partially
removed hard-coded "Not enough arguments" errors.
This patch removes hard-coded "Not enough arguments"
errors by using the helper methods.

No tests. No change in behavior.

  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::JSAudioContextConstructor::constructJSAudioContext):

  • bindings/js/JSSVGLengthCustom.cpp:

(WebCore::JSSVGLength::convertToSpecifiedUnits):

  • bindings/js/JSWebSocketCustom.cpp:

(WebCore::JSWebSocketConstructor::constructJSWebSocket):
(WebCore::JSWebSocket::send):

  • bindings/js/JSXMLHttpRequestCustom.cpp:

(WebCore::JSXMLHttpRequest::open):

  • bindings/v8/ScriptController.cpp:

(WebCore::setValueAndClosePopupCallback):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallback):

  • bindings/v8/custom/V8SVGLengthCustom.cpp:

(WebCore::V8SVGLength::convertToSpecifiedUnitsCallback):

  • bindings/v8/custom/V8WebSocketCustom.cpp:

(WebCore::V8WebSocket::constructorCallback):
(WebCore::V8WebSocket::sendCallback):

  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::V8XMLHttpRequest::openCallback):

2:32 PM Changeset in webkit [115669] by benjamin@webkit.org
  • 24 edits in trunk/Source

Add String::startsWith() and endsWith() for string literals
https://bugs.webkit.org/show_bug.cgi?id=85154

Reviewed by Darin Adler.

Source/WebCore:

Update WebCore to use the simpler startsWith() and endsWith() taking
a UChar.

  • css/CSSParser.cpp:

(WebCore::CSSParser::markPropertyEnd):

  • css/WebKitCSSKeyframeRule.cpp:

(WebCore::StyleKeyframe::parseKeyString):

  • editing/markup.cpp:

(WebCore::createFragmentFromText):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::addSubresourceAttributeURLs):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::setInnerTextValue):

  • inspector/ContentSearchUtils.cpp:

(WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::SetPropertyTextAction::redo):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::substituteMIMETypeFromPluginDatabase):

  • loader/appcache/ManifestParser.cpp:

(WebCore::parseManifest):

  • platform/blackberry/CookieManager.cpp:

(WebCore::CookieManager::shouldRejectForSecurityReason):

  • platform/posix/FileSystemPOSIX.cpp:

(WebCore::pathByAppendingComponent):

  • plugins/PluginDatabase.cpp:

(WebCore::PluginDatabase::findPlugin):

  • svg/SVGStopElement.cpp:

(WebCore::SVGStopElement::parseAttribute):

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::parseOffsetValue):
(WebCore::SVGSMILElement::parseCondition):

Source/WebKit/blackberry:

  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::elementPatternMatches):

Source/WebKit2:

Update WebKit2 to use String::endsWith(UChar).

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::pathExtension):

Source/WTF:

When invoking StringImpl::startsWidth() or StringImpl::endsWith() with
a string literal, a new String was constructed implicitly, allocating
a new StringImpl and copying the characters for the operation.

This patch adds a version of those methods for single characters and
string literals.
This allows us to avoid allocating memory and use the characters in place,
and it permits some extra shortcuts in the implementation.

  • wtf/text/AtomicString.h:

(WTF::AtomicString::startsWith):
(AtomicString):
(WTF::AtomicString::endsWith):

  • wtf/text/StringImpl.cpp:

(WTF::equalInner):
(WTF):
(WTF::StringImpl::startsWith):
(WTF::StringImpl::endsWith):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::startsWith):
(StringImpl):
(WTF::StringImpl::endsWith):

  • wtf/text/WTFString.h:

(WTF::String::startsWith):
(String):
(WTF::String::endsWith):

2:30 PM Changeset in webkit [115668] by inferno@chromium.org
  • 14 edits
    2 adds in trunk

Source/WebCore: Remove positioned float code.
https://bugs.webkit.org/show_bug.cgi?id=84795

Reviewed by Dan Bernstein.

Backout r92004 and some pieces from r91702.

Test: fast/block/float/positioned-float-crash.html

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFloat):

  • css/CSSValueKeywords.in:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::RenderBlock):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::addOverflowFromFloats):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::simplifiedLayout):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::clearFloats):
(WebCore::RenderBlock::FloatingObjects::clear):
(WebCore::RenderBlock::FloatingObjects::increaseObjectsCount):
(WebCore::RenderBlock::FloatingObjects::decreaseObjectsCount):

  • rendering/RenderBlock.h:

(RenderBlock):
(WebCore::RenderBlock::forceLayoutInlineChildren):
(FloatingObject):
(WebCore::RenderBlock::FloatingObject::FloatingObject):
(WebCore::RenderBlock::hasOverhangingFloats):
(WebCore::RenderBlock::FloatingObjects::FloatingObjects):
(FloatingObjects):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::updateBoxModelInfoFromStyle):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderDeprecatedFlexibleBox.h:

(RenderDeprecatedFlexibleBox):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderFlexibleBox.h:

(RenderFlexibleBox):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateScrollbarsAfterLayout):

  • rendering/style/RenderStyleConstants.h:

LayoutTests: Remove positioned float code.
https://bugs.webkit.org/show_bug.cgi?id=84795

Reviewed by Dan Bernstein.

  • fast/block/float/positioned-float-crash-expected.txt: Added.
  • fast/block/float/positioned-float-crash.html: Added.
2:15 PM Changeset in webkit [115667] by jchaffraix@webkit.org
  • 1 edit
    2 copies in branches/chromium/1084

Merge 114574 - REGRESSION(102040): Auto-table layout with percent width doesn't shrink-to-fit content a cell with colspan
https://bugs.webkit.org/show_bug.cgi?id=84260

Reviewed by Ojan Vafai.

Source/WebCore:

Tests: fast/table/td-width-fifty-percent-regression-expected.html

fast/table/td-width-fifty-percent-regression.html

  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
As we are spreading the cell's min / max logical width, we should be updating them.
This prevents the following logic getting confused and allocating more than needed.

LayoutTests:

  • fast/table/td-width-fifty-percent-regression-expected.html: Added.
  • fast/table/td-width-fifty-percent-regression.html: Added.

TBR=jchaffraix@webkit.org
Review URL: https://chromiumcodereview.appspot.com/10274014

2:11 PM Changeset in webkit [115666] by weinig@apple.com
  • 17 edits in trunk

Remove BlobBuilder
https://bugs.webkit.org/show_bug.cgi?id=84036

Reviewed by Anders Carlsson.

Source/WebCore:

  • GNUmakefile.am:
  • fileapi/WebKitBlobBuilder.idl:
  • page/DOMWindow.idl:
  • workers/WorkerContext.idl:

Make exposing the WebKitBlobBuilder JS object conditional on a new
ENABLE_LEGACY_WEBKIT_BLOB_BUILDER flag. Don't enable this for the Mac,
but do for everyone else.

Source/WebKit/chromium:

  • features.gypi:

Keep WebKitBlobBuilder enabled for Chromium, since it has shipped it.

Tools:

  • Scripts/build-webkit:
  • qmake/mkspecs/features/features.prf:

Make exposing the WebKitBlobBuilder JS object conditional on a new
ENABLE_LEGACY_WEBKIT_BLOB_BUILDER flag. Don't enable this for the Mac,
but do for everyone else.

LayoutTests:

  • fast/js/constructor-length.html:
  • platform/mac/fast/js/constructor-length-expected.txt:

Remove WebKitBlobBuilder from this test, as it is not exposed on all platforms,
and add Blob, which is.

  • platform/mac/Skipped:

Skip fast/files/blob-builder-crash.html, since we no longer support WebKitBlobBuilder.

2:10 PM Changeset in webkit [115665] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Add a barrier-style dispatch member function to ScrollingThread
https://bugs.webkit.org/show_bug.cgi?id=85228

Reviewed by Sam Weinig.

Add a ScrollingThread::dispatchBarrier function which takes a WTF::Function and dispatches it to the main thread
once all the currently scheduled scrolling thread functions have run. This is to be used for synchronization between the
scrolling thread and the main thread.

  • page/scrolling/ScrollingThread.cpp:

(WebCore::callFunctionOnMainThread):
(WebCore):
(WebCore::ScrollingThread::dispatchBarrier):

  • page/scrolling/ScrollingThread.h:

(ScrollingThread):

2:04 PM Changeset in webkit [115664] by cevans@google.com
  • 3 edits in branches/chromium/1084/Source

Merge 114513
BUG=118374
Review URL: https://chromiumcodereview.appspot.com/10264016

2:02 PM Changeset in webkit [115663] by rakuco@webkit.org
  • 2 edits in trunk

[CMake] Add a proper license to FindSqlite.cmake.
https://bugs.webkit.org/show_bug.cgi?id=84901

Reviewed by Daniel Bates.

FindSqlite.cmake referenced COPYING-CMAKE-SCRIPTS, which was
supposed to contain its license. This file, however, was not
imported with FindSqlite.cmake into the tree.

Add it from kdelibs (where the Find file came from) at git
revision [1]. Also worth mentioning is that Alexander Neundorf
added Gilles Caulier as the script author in revision [2].

[1] https://projects.kde.org/projects/kde/kdelibs/repository/revisions/c27925edf98b9952aeada677dfc74ce9c809c48a
[2] https://projects.kde.org/projects/kde/kdelibs/repository/revisions/14d0a92e04e1a200d6e58397e57a29194a0819cf

  • Source/cmake/FindSqlite.cmake:
2:02 PM Changeset in webkit [115662] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

WTF::bind should work with blocks
https://bugs.webkit.org/show_bug.cgi?id=85227

Reviewed by Sam Weinig.

Add a block type FunctionWrapper specialization.

  • wtf/Functional.h:
1:27 PM Changeset in webkit [115661] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Expose a flag so that fullscreen video on android can work with FULLSCREEN_API
https://bugs.webkit.org/show_bug.cgi?id=84414

Patch by Min Qin <qinmin@google.com> on 2012-04-30
Reviewed by Darin Fisher.

Source/WebCore:

No tests, just exposing the flag, and will be used by android later.
Sorry, there is a merge error during the previous commit, resolved now

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::setControls):
(WebCore):
(WebCore::MediaPlayer::enterFullscreen):
(WebCore::MediaPlayer::exitFullscreen):

  • platform/graphics/MediaPlayer.h:

(MediaPlayer):

  • platform/graphics/MediaPlayerPrivate.h:

(MediaPlayerPrivateInterface):
(WebCore::MediaPlayerPrivateInterface::enterFullscreen):

Source/WebKit/chromium:

On android, the fullscreen video was implemented by passing a java
surfaceView to an android mediaplayer class.
The implementation of that logic should happen in WebKit::WebMediaPlayer.
This change makes it possble for WebViewImpl::enterFullScreenForElement()
to call WebMediaPlayer->enterFullscreen(), thus solving the issue.

Sorry, there is a merge error during the previous commit, resolved now

No new tests. This just exposes the flag so later it can be used by android.

  • features.gypi:
  • public/WebMediaPlayer.h:

(WebMediaPlayer):
(WebKit::WebMediaPlayer::enterFullscreen):
(WebKit::WebMediaPlayer::exitFullscreen):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit):
(WebKit::WebMediaPlayerClientImpl::enterFullscreen):
(WebKit::WebMediaPlayerClientImpl::exitFullscreen):

  • src/WebMediaPlayerClientImpl.h:

(WebMediaPlayerClientImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::enterFullScreenForElement):
(WebKit::WebViewImpl::exitFullScreenForElement):

1:20 PM Changeset in webkit [115660] by gavinp@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
12:47 PM Changeset in webkit [115659] by amruthraj@motorola.com
  • 2 edits in trunk/Tools

[GTK] Add glib as a dependency to build glib-networking
https://bugs.webkit.org/show_bug.cgi?id=85181

Reviewed by Martin Robinson.

  • gtk/jhbuild.modules:
12:23 PM Changeset in webkit [115658] by mhahnenberg@apple.com
  • 2 edits in trunk/LayoutTests

fast/js/random-array-gc-stress times out in debug mode
https://bugs.webkit.org/show_bug.cgi?id=84821

Reviewed by Darin Adler.

  • fast/js/script-tests/random-array-gc-stress.js: Lowering the iterations even more.
12:20 PM Changeset in webkit [115657] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

End of Interpreter::tryCacheGetByID can trigger the garbage collector
https://bugs.webkit.org/show_bug.cgi?id=84927

Patch by Myles Maxfield <mmaxfield@google.com> on 2012-04-30
Reviewed by Oliver Hunt.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::tryCacheGetByID):

12:12 PM Changeset in webkit [115656] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

jsSingleCharacterString and jsSingleCharacterSubstring are not inlined
https://bugs.webkit.org/show_bug.cgi?id=85147

Reviewed by Darin Adler.

The functions jsSingleCharacterString() and jsSingleCharacterSubstring() were not inlined
by the compiler. This annihilate the gains of using SmallStrings.

On stringProtoFuncCharAt(), this patch improves the performance by 11%.

  • runtime/JSString.h:

(JSC::jsSingleCharacterString):
(JSC::jsSingleCharacterSubstring):

12:02 PM Changeset in webkit [115655] by benjamin@webkit.org
  • 4 edits
    2 adds in trunk

Source/JavaScriptCore: Add fast patch for radix == 10 on numberProtoFuncToString
https://bugs.webkit.org/show_bug.cgi?id=85120

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-30
Reviewed by Darin Adler.

When radix, we use to turn the doubleValue into a JSValue just to convert
it to a String. The problem is that was using the slow path for conversion and
for the toString() operation.

This patch shortcuts the creation of a JSValue and uses NumericStrings directly.
The conversion is split between Integer and Double to ensure the fastest conversion
for the common case of integer arguments.

Converting number with radix 10 becomes 5% faster.

Due to the simpler conversion of number to string for integer, converting
integers that do not fall in the two previous optimizations get 32% faster.

  • runtime/NumberPrototype.cpp:

(JSC::extractRadixFromArgs):
(JSC::integerValueToString):
(JSC::numberProtoFuncToString):

LayoutTests: Add fast path for radix == 10 to numberProtoFuncToString
https://bugs.webkit.org/show_bug.cgi?id=85120

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-30
Reviewed by Darin Adler.

Add more test coverage for Number.proto.toString.

  • platform/chromium/test_expectations.txt: Mark the test as failing on Chromium.
  • fast/js/toString-number-expected.txt: Added.
  • fast/js/toString-number.html: Added.
11:51 AM Changeset in webkit [115654] by Nate Chapin
  • 6 edits in trunk/Source/WebCore

Move more of committing and starting to write a Document
to DocumentLoader.
https://bugs.webkit.org/show_bug.cgi?id=83908

Reviewed by Adam Barth.

No new tests, refactor only.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::commitIfReady): Ignore m_gotFirstByte here, since

it was always true here anyway.

(WebCore::DocumentLoader::finishedLoading): If we are finishing an empty

document, create the document now, so that FrameLoaderClient doesn't
have to do it later (FrameLoaderClient code will be removed in a later
patch).

(WebCore::DocumentLoader::commitData): Call receivedFirstData() directly and

do some work receivedFirstData() used to do, setEncoding() only once per
load.

(WebCore::DocumentLoader::receivedData):
(WebCore::DocumentLoader::maybeCreateArchive):

  • loader/DocumentLoader.h:
  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::setEncoding):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::receivedFirstData): Move DocumentLoader calls

to DocumentLoader.

  • loader/FrameLoader.h: Remove m_hasReceivedFirstData and willSetEncoding(),

allow hasReceivedData() to be called directly.

(FrameLoader):

11:30 AM Changeset in webkit [115653] by eae@chromium.org
  • 2383 edits
    683 copies
    533 deletes in branches/subpixellayout

Merge trunk changes up until 115647 into subpixel branch.

10:53 AM Changeset in webkit [115652] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed. Fix test crashes in Win/Linux debug builds.

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::V8LazyEventListener):
(WebCore::V8LazyEventListener::prepareListenerObject):

  • bindings/v8/V8LazyEventListener.h:

(V8LazyEventListener):

10:45 AM Changeset in webkit [115651] by tommyw@google.com
  • 1 edit
    2 adds in trunk/LayoutTests

MediaStream API: Adding a test for the experimental PeerConnection00
https://bugs.webkit.org/show_bug.cgi?id=82881

Reviewed by Dimitri Glazkov.

Tests construction of objects.

  • fast/mediastream/constructors-expected.txt: Added.
  • fast/mediastream/constructors.html: Added.
10:44 AM Changeset in webkit [115650] by ap@apple.com
  • 4 edits in trunk/Source/WebKit2

Validate keypress command names
https://bugs.webkit.org/show_bug.cgi?id=85204
<rdar://problem/11249368>

Reviewed by Darin Adler.

  • UIProcess/API/mac/WKView.mm: (-[WKView doCommandBySelector:]): (-[WKView insertText:replacementRange:]):
  • UIProcess/WebPageProxy.h: (WebKit::WebPageProxy::registerKeypressCommandName): (WebKit::WebPageProxy::isValidKeypressCommandName):
  • UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::executeSavedCommandBySelector):
10:44 AM Changeset in webkit [115649] by tommyw@google.com
  • 3 edits in trunk/Source/WebCore

MediaStream API: Change LocalMediaStream::stop to be synchronous
https://bugs.webkit.org/show_bug.cgi?id=84942

Reviewed by Dimitri Glazkov.

Since I changed LocalMediaStream to be a ActiveDOMObject recently the stop()
behaviour needs to change since it is no longer a good idea to start a timer when called.

Not possible to write a test for this.

  • Modules/mediastream/LocalMediaStream.cpp:

(WebCore::LocalMediaStream::LocalMediaStream):
(WebCore::LocalMediaStream::stop):

  • Modules/mediastream/LocalMediaStream.h:

(LocalMediaStream):

10:13 AM Changeset in webkit [115648] by alexis.menard@openbossa.org
  • 2 edits in trunk/Tools

Move myself to reviewers.

Reviewed by Andreas Kling.

  • Scripts/webkitpy/common/config/committers.py:
10:09 AM WebKit Team edited by alexis.menard@openbossa.org
alphabetical fix (diff)
10:03 AM Changeset in webkit [115647] by eae@chromium.org
  • 5 edits in trunk/Source

Add ENABLE_SUBPIXEL_LAYOUT controlling FractionalLayoutUnit denominator
https://bugs.webkit.org/show_bug.cgi?id=85146

Source/WebCore:

Patch by Emil A Eklund <eae@chromium.org> and Levi Weintraub <leviw@chromium.org> on 2012-04-28
Reviewed by Eric Seidel.

Add a new flag for controlling the fixed point denominator in
FractionalLayoutUnit. Controls whether the denominator is set to 60 or 1.
Until we change the LayoutUnit typedef this change will have no effect.

No new tests, no change in functionality.

  • platform/FractionalLayoutUnit.h:

(WebCore):
(WebCore::FractionalLayoutUnit::operator++):
(WebCore::operator/):
(WebCore::operator+):
Add ++, / double and and + double operators. These are needed when
ENABLE_SUBPIXEL_LAYOUT is not enabled.

  • platform/graphics/FractionalLayoutRect.cpp:

(WebCore::enclosingFractionalLayoutRect):

Source/WTF:

Reviewed by Eric Seidel.

Add a new flag for controlling the fixed point denominator in
FractionalLayoutUnit. Controls whether the denominator is set to 60 or 1.
Until we change the LayoutUnit typedef this change will have no effect.

  • wtf/Platform.h:
9:59 AM Changeset in webkit [115646] by jschuh@chromium.org
  • 3 edits
    2 adds in trunk

loadOrRedirectSubframe should return the owner element's frame
https://bugs.webkit.org/show_bug.cgi?id=84780

Reviewed by Nate Chapin.

Source/WebCore:

Test: fast/loader/javascript-url-iframe-remove-on-navigate.html

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadOrRedirectSubframe):

LayoutTests:

  • fast/loader/javascript-url-iframe-remove-on-navigate-expected.txt: Added.
  • fast/loader/javascript-url-iframe-remove-on-navigate.html: Added.
9:58 AM Changeset in webkit [115645] by caio.oliveira@openbossa.org
  • 13 edits in trunk/Source/WebCore

Use Vector<Attribute> directly instead of encapsulating it in AttributeVector
https://bugs.webkit.org/show_bug.cgi?id=84413

Reviewed by Andreas Kling.

As commented in https://bugs.webkit.org/show_bug.cgi?id=79963#c16 we do not
usually subclass basic types like Vector. This patch changes code to use
Vector<Attribute> directly and move around the functionality of the former
methods to more specific helper functions or inline code at the callers.

  • dom/Element.cpp:

(WebCore::Element::parserSetAttributes):
(WebCore::Element::normalizeAttributes):

  • dom/Element.h:

(Element):

  • dom/ElementAttributeData.cpp:
  • dom/ElementAttributeData.h:

(WebCore::findAttributeInVector):
(WebCore::ElementAttributeData::getAttributeItem):
(ElementAttributeData):
(WebCore::ElementAttributeData::attributeVector):
(WebCore::ElementAttributeData::clonedAttributeVector):
(WebCore::ElementAttributeData::getAttributeItemIndex):
(WebCore):

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::createHTMLElementFromSavedElement):

  • html/parser/HTMLToken.h:

(WebCore::AtomicHTMLToken::AtomicHTMLToken):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processFakeStartTag):
(WebCore::HTMLTreeBuilder::attributesForIsindexInput): Loop through the attributes
backwards so we can remove items without affecting the rest of the loop run.

  • html/parser/HTMLTreeBuilder.h:
  • html/parser/TextDocumentParser.cpp:

(WebCore::TextDocumentParser::insertFakePreElement):

  • xml/XMLErrors.cpp:

(WebCore::createXHTMLParserErrorHeader):
(WebCore::XMLErrors::insertErrorMessageBlock):

  • xml/parser/MarkupTokenBase.h:

(WebCore::AtomicMarkupTokenBase::AtomicMarkupTokenBase):
(WebCore::AtomicMarkupTokenBase::getAttributeItem):
(WebCore::AtomicMarkupTokenBase::attributes):
(AtomicMarkupTokenBase):
(WebCore::::initializeAttributes):

  • xml/parser/XMLToken.h:

(WebCore::AtomicXMLToken::AtomicXMLToken):

9:44 AM WebKit Team edited by alexis.menard@openbossa.org
(diff)
9:34 AM Changeset in webkit [115644] by pilgrim@chromium.org
  • 5 edits in trunk/Source

[Chromium] Remove PlatformSupport::loadPlatformAudioResource, call loadResource directly
https://bugs.webkit.org/show_bug.cgi?id=85193

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

Source/WebCore:

  • platform/audio/chromium/AudioBusChromium.cpp:

(WebCore::AudioBus::loadPlatformResource):

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

Source/WebKit/chromium:

  • src/PlatformSupport.cpp:

(WebCore):

9:28 AM Changeset in webkit [115643] by pilgrim@chromium.org
  • 5 edits in trunk/Source

[Chromium] Call defaultLocale directly
https://bugs.webkit.org/show_bug.cgi?id=85192

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

Source/WebCore:

  • platform/chromium/LanguageChromium.cpp:

(WebCore::platformLanguage):

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

Source/WebKit/chromium:

  • src/PlatformSupport.cpp:

(WebCore):

9:12 AM Changeset in webkit [115642] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Update expectations for media/audio-delete-while-step-button-clicked.html
https://bugs.webkit.org/show_bug.cgi?id=85180

Unreviewed gardening.

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-04-30

  • platform/efl/test_expectations.txt:
8:42 AM Changeset in webkit [115641] by Beth Dakin
  • 16 edits
    5 adds in trunk

https://bugs.webkit.org/show_bug.cgi?id=82922
border-image with image-set does not render correctly when viewed at
2x
-and corresponding-
<rdar://problem/11167820>

Reviewed by Dan Bernstein.

Source/WebCore:

StyleImage::computeIntrinsicDimensions() is only called from one
place: RenderBoxModelObject::calculateIntrinsicDimensions(), and that
is only used for background images and border images. In my original
image-set work, I decided that
StyleCachedImageSet::computeIntrinsicDimensions() would compute
"intrinsic" dimensions, meaning that they would compute the dimensions
that the image resource was pretending to be rather than the actual
dimensions of the resource. I chose to do this because it made
background images work great without changing the call-site. But border
images need to know the actual intrinsic dimensions, so this design
decision (which was admittedly questionable from the start) won't
stick.

This patch makes StyleImage::computeIntrinsicDimensions() return
actual intrinsic dimensions. Then the border-image and background-
image code is very lightly patched to account for the image's scale
factor.

These functions no longer need the scale factor parameter.

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::computeIntrinsicDimensions):

  • loader/cache/CachedImage.h:

(CachedImage):

  • platform/graphics/GeneratedImage.h:

(GeneratedImage):

  • platform/graphics/GeneratorGeneratedImage.cpp:

(WebCore::GeneratedImage::computeIntrinsicDimensions):

  • platform/graphics/Image.cpp:

(WebCore::Image::computeIntrinsicDimensions):

  • platform/graphics/Image.h:

(Image):

  • platform/graphics/cg/PDFDocumentImage.cpp:

(WebCore::PDFDocumentImage::computeIntrinsicDimensions):

  • platform/graphics/cg/PDFDocumentImage.h:

(PDFDocumentImage):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::computeIntrinsicDimensions):

  • svg/graphics/SVGImage.h:

(SVGImage):

  • rendering/style/StyleCachedImageSet.cpp:

(WebCore::StyleCachedImageSet::computeIntrinsicDimensions):

New function on StyleImage returns the image's scale factor.

  • rendering/style/StyleCachedImageSet.h:

(WebCore::StyleCachedImageSet::imageScaleFactor):

  • rendering/style/StyleImage.h:

(WebCore::StyleImage::imageScaleFactor):

Scale the intrinsic size of the background image down by the scale
factor.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateFillTileSize):

Slices should be multiplied by the image's scale factor since they are
always expected to the specified in the 1x image's coordinate space.
(WebCore::RenderBoxModelObject::paintNinePieceImage):

LayoutTests:

  • fast/hidpi/image-set-border-image-comparison.html: Added.
  • fast/hidpi/resources/Breakpoint-2x.png: Added.
  • fast/hidpi/resources/Breakpoint.png: Added.
  • platform/mac/fast/hidpi/image-set-border-image-comparison-expected.png: Added.
  • platform/mac/fast/hidpi/image-set-border-image-comparison-expected.txt: Added.
8:33 AM Changeset in webkit [115640] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Use new syntax to call callOnMainThread directly
https://bugs.webkit.org/show_bug.cgi?id=85190

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • src/ChromiumThreading.cpp:

(WTF::ChromiumThreading::callOnMainThread):

8:26 AM Changeset in webkit [115639] by mrowe@apple.com
  • 3 edits in trunk/Source/WebCore

<rdar://problem/11313710> Leaks under WebCore::CSSImageSetValue::cachedImageSet when running tests

There was a reference cycle between CSSImageSetValue and StyleCachedImageSet via
CSSImageSetValue::m_imageSet / StyleCachedImageSet::m_imageSetValue. Break the cycle
by having StyleCachedImageSet hold a weak reference to the CSSImageSetValue rather
than a strong reference.

Reviewed by Geoff Garen.

  • rendering/style/StyleCachedImageSet.cpp:

(WebCore::StyleCachedImageSet::StyleCachedImageSet):

  • rendering/style/StyleCachedImageSet.h:

(StyleCachedImageSet):

8:14 AM Changeset in webkit [115638] by arko@motorola.com
  • 3 edits in trunk/Source/WebCore

Remove custom bindings code in JSHTMLCollectionCustom.cpp for HTMLPropertiesCollection.
https://bugs.webkit.org/show_bug.cgi?id=85172

Reviewed by Kentaro Hara.

Use [JSGenerateToJSObject] in HTMLPropertiesCollection.idl, so that it can generate toJS()
in JSHTMLPropertiesCollection.cpp automatically.

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::toJS):

  • html/HTMLPropertiesCollection.idl:
8:10 AM Changeset in webkit [115637] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-1.9.1

Tagging the WebKitGTK+ 1.9.1 release

8:05 AM Changeset in webkit [115636] by kling@webkit.org
  • 2 edits in trunk/LayoutTests

Rebaseline svg/zoom/page/zoom-svg-through-object-with-percentage-size.svg for Mac after Length changes.

  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
7:58 AM Changeset in webkit [115635] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Use new syntax to call monotonicallyIncreasingTime directly
https://bugs.webkit.org/show_bug.cgi?id=85189

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • src/ChromiumCurrentTime.cpp:

(WTF::monotonicallyIncreasingTime):

7:56 AM Changeset in webkit [115634] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Use new syntax to call userAgent directly
https://bugs.webkit.org/show_bug.cgi?id=85188

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::userAgent):

7:51 AM Changeset in webkit [115633] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Use new syntax to call currentTime directly
https://bugs.webkit.org/show_bug.cgi?id=85187

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • src/ChromiumCurrentTime.cpp:

(WTF::currentTime):

7:48 AM Changeset in webkit [115632] by pilgrim@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Use new syntax to call currentThread directly
https://bugs.webkit.org/show_bug.cgi?id=85185

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • src/CCThreadImpl.cpp:

(WebKit::CCThreadImpl::CCThreadImpl):

  • src/WebCompositorImpl.cpp:

(WebKit::WebCompositorImpl::initialize):

7:43 AM Changeset in webkit [115631] by pilgrim@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Use new syntax to call createThread directly
https://bugs.webkit.org/show_bug.cgi?id=85186

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTest::runTest):

  • tests/Canvas2DLayerChromiumTest.cpp:

(Canvas2DLayerChromiumTest::fullLifecycleTest):

7:15 AM Changeset in webkit [115630] by pilgrim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Use new syntax to call createSocketStreamHandle directly
https://bugs.webkit.org/show_bug.cgi?id=85184

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

  • src/SocketStreamHandle.cpp:

(WebCore::SocketStreamHandleInternal::connect):

7:08 AM Changeset in webkit [115629] by noam.rosenthal@nokia.com
  • 3 edits in trunk/Source/WebCore

[Texmap] TextureMapperLayer uses intermediate surfaces too eagerly
https://bugs.webkit.org/show_bug.cgi?id=85103

Reviewed by Kenneth Rohde Christiansen.

Instead of automatically using an intermediate surface for layers with opacity and
children, we limit surface usage for layers with more than one child and for layers with
one child and contents of its own.

This prevents us from using intermediate surfaces in cases where a single layer with
opacity has a single descendant with content, in which case normal blending can be used.

Covered by existing compositing layout tests.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore):

  • platform/graphics/texmap/TextureMapperLayer.h:
6:53 AM WebKitGTK/WebKit2Roadmap edited by mario@webkit.org
(diff)
6:51 AM Changeset in webkit [115628] by yi.4.shen@nokia.com
  • 7 edits
    4 adds in trunk

Inserting a paragraph between quoted lines in editing/deleting/delete-4038408-fix.html doesn't work
https://bugs.webkit.org/show_bug.cgi?id=78193

Reviewed by Ryosuke Niwa.

When pasting a copied portion of a blockquote with a newline at the end into an unquoted area,
the newline is inserted after the blockquote since we don't want it also to be quoted. However,
this behavior has also applied when we insert a paragraph between quoted lines, which is incorrect.
To figure out the right place to insert a paragraph, we need providing more information to the
InsertParagraphSeparatorCommand by introducing a boolean parameter "pasteBlockqutoeIntoUnquotedArea".

Source/WebCore:

Tests: editing/inserting/insert-paragraph-separator-in-blockquote.html

editing/pasteboard/paste-wrapped-blockquote-into-nonblockquote.html

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::insertParagraphSeparator):

  • editing/CompositeEditCommand.h:

(CompositeEditCommand):

  • editing/InsertParagraphSeparatorCommand.cpp:

(WebCore::InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand):
(WebCore::InsertParagraphSeparatorCommand::doApply):

  • editing/InsertParagraphSeparatorCommand.h:

(WebCore::InsertParagraphSeparatorCommand::create):
(InsertParagraphSeparatorCommand):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply):

LayoutTests:

  • editing/inserting/insert-paragraph-separator-in-blockquote-expected.txt: Added.
  • editing/inserting/insert-paragraph-separator-in-blockquote.html: Added.
  • editing/pasteboard/paste-wrapped-blockquote-into-nonblockquote-expected.txt: Added.
  • editing/pasteboard/paste-wrapped-blockquote-into-nonblockquote.html: Added.
6:49 AM Changeset in webkit [115627] by mario@webkit.org
  • 13 edits
    3 adds in trunk/Source/WebKit2

[GTK] Implement WebUIClient's runOpenPanel in WebKit2GTK+
https://bugs.webkit.org/show_bug.cgi?id=78491

Reviewed by Martin Robinson.

Add a new public class to the API, WebKitFileChooserRequest, to be
emitted along with a new WebKitWebView::run-file-chooser signal to
let client applications to provide their own file chooser dialog
when the use interacts with HTML Input elements of type 'file'.

  • GNUmakefile.am: Added new source files and headers.
  • UIProcess/API/gtk/WebKitFileChooserRequest.cpp: Added.

(_WebKitFileChooserRequestPrivate):
(webkit_file_chooser_request_init):
(webkitFileChooserRequestFinalize):
(webkitFileChooserRequestGetProperty):
(webkit_file_chooser_request_class_init):
(webkitFileChooserRequestCreate):
(webkit_file_chooser_request_get_mime_types):
(webkit_file_chooser_request_get_mime_types_filter):
(webkit_file_chooser_request_get_select_multiple):
(webkit_file_chooser_request_select_files):
(webkit_file_chooser_request_get_selected_files):
(webkit_file_chooser_request_cancel):

  • UIProcess/API/gtk/WebKitFileChooserRequest.h: Added.

(_WebKitFileChooserRequest):
(_WebKitFileChooserRequestClass):

  • UIProcess/API/gtk/WebKitFileChooserRequestPrivate.h: Added,

containing the prototype of webkitFileChooserRequestCreate.

Provide private API to make a file chooser request from the
WebView, and provide a default handler for it.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(fileChooserDialogResponseCallback): Handler for the 'response'
signal for the GtkFileChooserDialog used in the default
handler. It will call to webkit_file_chooser_request_select_files
or webkit_file_chooser_request_cancel as needed.
(webkitWebViewRunFileChooser): Default handler for the new
'run-file-chooser' signal. It will create a GtkFileChooserDialog,
connect to the 'response' signal and show it.
(webkit_web_view_class_init): Connect the 'run-file-chooser'
signal to the default handler, webkitWebViewRunFileChooser.
(webkitWebViewRunFileChooserRequest):

  • UIProcess/API/gtk/WebKitWebView.h:

(_WebKitWebViewClass): Added prototype for the handler of the new
'run-file-chooser' signal.

  • UIProcess/API/gtk/WebKitWebViewPrivate.h: Added prototype for

private new function webkitWebViewRunFileChooserRequest.

Provide an implementation for runOpenPanel in WebKitUIClient.

  • UIProcess/API/gtk/WebKitUIClient.cpp:

(runOpenPanel): New, implements runOpenPanel by creating an
instance of WebKitFileChooserRequest and asking the WebView to
emit the 'run-file-chooser' signal with it.
(attachUIClientToView): Reference the new runOpenPanel function.

Added the new publich header to the main header.

  • UIProcess/API/gtk/webkit2.h: Added WebKitFileChooserRequest.h.

New unit tests for the new WebKitFileChooserRequest API. Also,
extended the WebViewTest class to allow simulating mouse clicks.

  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(checkMimeTypeForFilter): New, checks whether a GtkFileFilter
filters a given MIME type, as specified by RFC 2046.
(testWebViewFileChooserRequest): New unit test.
(beforeAll): Add the new unit test as an UIClientTest.

  • UIProcess/API/gtk/tests/WebViewTest.cpp:

(WebViewTest::clickMouseButton): New public function to simulate a
mouse click through GdkEvents, as the combination of a 'press' and
a 'release' event. Used from the new unit test to simulate the
user pressing in the button rendered for a HTML Input element.
(WebViewTest::executeMouseButtonEvent): New private function to
simulate a mouse event through GdkEvents.

  • UIProcess/API/gtk/tests/WebViewTest.h:

Updated documentation related files with the new API.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added new API.
  • UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Added new section.
  • UIProcess/API/gtk/docs/webkit2gtk.types: Added get_type function.
6:42 AM Changeset in webkit [115626] by jocelyn.turcotte@nokia.com
  • 2 edits in trunk/Tools

Unreviewed, move myself to reviewers

  • Scripts/webkitpy/common/config/committers.py:
5:55 AM Changeset in webkit [115625] by Antti Koivisto
  • 3 edits
    2 adds in trunk

Protect current element in HTMLLinkElement::setCSSStyleSheet
https://bugs.webkit.org/show_bug.cgi?id=85166

Source/WebCore:

Reviewed by Andreas Kling.

Stylesheet loading can trigger script execution.

Test: fast/css/cached-sheet-restore-crash.html

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::setCSSStyleSheet):

LayoutTests:

Reviewed by Andreas Kling.

  • fast/css/cached-sheet-restore-crash-expected.txt: Added.
  • fast/css/cached-sheet-restore-crash.html: Added.
4:58 AM Changeset in webkit [115624] by Carlos Garcia Campos
  • 4 edits in trunk

[GTK] Update NEWS and configure.ac for 1.9.1 release
https://bugs.webkit.org/show_bug.cgi?id=85175

Reviewed by Philippe Normand.

.:

  • configure.ac: Bumped version number. Disable WebKit2 by default

for now, since we still don't use a different libtool version for
libwebkit2gtk. It will be enabled again after the release and the
library version will be reworked for the next release.

Source/WebKit/gtk:

  • NEWS: Added release notes for 1.9.1.
4:30 AM Changeset in webkit [115623] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: chromium expectations updated.

  • platform/chromium/test_expectations.txt:
4:18 AM Changeset in webkit [115622] by Carlos Garcia Campos
  • 10 edits in trunk

Unreviewed. Fix make distcheck.

.:

  • GNUmakefile.am: Add ALL_MOFILES declaration.

Source/JavaScriptCore:

  • GNUmakefile.list.am: Add missing header.

Source/ThirdParty:

  • gtest/GNUmakefile.am: Add source code files included by

gtest_all.cc to EXTRA_DIST.

Source/WebKit/gtk/po:

  • GNUmakefile.am: Use += for ALL_MOFILES variable to make sure all

.mo files are cleaned by distclean.

Tools:

  • TestWebKitAPI/GNUmakefile.am: Add missing headers to compilation

and resources to EXTRA_DIST.

4:02 AM Changeset in webkit [115621] by commit-queue@webkit.org
  • 7 edits in trunk

[GTK] DRT support for layoutTestController.removeOriginAccessWhitelistEntry
https://bugs.webkit.org/show_bug.cgi?id=85156

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-04-30
Reviewed by Martin Robinson.

Source/WebKit/gtk:

Add support for removeOriginAccessWhitelistEntry which allow
layout tests to remove origins whitelisting.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::removeWhiteListAccessFromOrigin):

  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

Tools:

Add missing implementation removeOriginAccessWhitelistEntry to
GTK's LayoutTestController.

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(LayoutTestController::removeOriginAccessWhitelistEntry):

LayoutTests:

Unskip http/tests/xmlhttprequest/origin-whitelisting-removal.html

  • platform/gtk/test_expectations.txt:
3:52 AM Changeset in webkit [115620] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: chromium expectations updated.

  • platform/chromium/test_expectations.txt:
2:24 AM Changeset in webkit [115619] by cevans@google.com
  • 1 edit in branches/chromium/1084/Source/WTF/wtf/ByteArray.cpp

Merge 114209
BUG=122692
Review URL: https://chromiumcodereview.appspot.com/10270008

1:57 AM Changeset in webkit [115618] by cevans@google.com
  • 2 edits in branches/chromium/1084/Source/WebCore/platform/chromium

Merge 113418
BUG=118374
Review URL: https://chromiumcodereview.appspot.com/10267006

1:45 AM Changeset in webkit [115617] by cevans@google.com
  • 13 edits
    12 copies in branches/chromium/1084

Merge 113581
BUG=120711
Review URL: https://chromiumcodereview.appspot.com/10261009

1:36 AM Changeset in webkit [115616] by cevans@google.com
  • 8 edits in branches/chromium/1084/Source/WebCore/rendering

Merge 113497
BUG=120711
Review URL: https://chromiumcodereview.appspot.com/10272008

1:25 AM Changeset in webkit [115615] by cevans@google.com
  • 15 edits in branches/chromium/1084

Merge 113252
BUG=120711
Review URL: https://chromiumcodereview.appspot.com/10264007

1:16 AM Changeset in webkit [115614] by cevans@google.com
  • 1 edit in branches/chromium/1084/Source/WebCore/workers/WorkerEventQueue.cpp

Merge 113291
BUG=122014
Review URL: https://chromiumcodereview.appspot.com/10261008

1:14 AM Changeset in webkit [115613] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1084

Merge 113759
BUG=122760
Review URL: https://chromiumcodereview.appspot.com/10274004

1:08 AM Changeset in webkit [115612] by cevans@google.com
  • 12 edits
    4 copies in branches/chromium/1084

Merge 113138
BUG=121223
Review URL: https://chromiumcodereview.appspot.com/10270006

12:59 AM Changeset in webkit [115611] by cevans@google.com
  • 4 edits
    4 copies in branches/chromium/1084

Merge 113887
BUG=118642
Review URL: https://chromiumcodereview.appspot.com/10265007

12:56 AM Changeset in webkit [115610] by cevans@google.com
  • 1 edit in branches/chromium/1084/Source/WebCore/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp

Merge 113951
BUG=122585
Review URL: https://chromiumcodereview.appspot.com/10260009

12:46 AM Changeset in webkit [115609] by cevans@google.com
  • 2 edits
    8 copies in branches/chromium/1084

Merge 114666
BUG=123484
Review URL: https://chromiumcodereview.appspot.com/10262008

12:37 AM Changeset in webkit [115608] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1084

Merge 115236
BUG=122573
Review URL: https://chromiumcodereview.appspot.com/10271004

12:32 AM Changeset in webkit [115607] by cevans@google.com
  • 1 edit in branches/chromium/1084/Source/WebCore/dom/ContainerNodeAlgorithms.h

Merge 113852
BUG=121736
Review URL: https://chromiumcodereview.appspot.com/10269004

12:10 AM Changeset in webkit [115606] by kling@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

Add Mac expectation for fast/dom/Window/window-lookup-precedence.html.

Mac builds without ENABLE(DATALIST).

  • platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt: Added.
12:00 AM Changeset in webkit [115605] by kling@webkit.org
  • 2 edits in trunk/LayoutTests

Skip the fast/performance/ directory on Mac since the bots don't build with ENABLE(WEB_TIMING).

  • platform/mac/Skipped:

Apr 29, 2012:

7:51 PM Changeset in webkit [115604] by fpizlo@apple.com
  • 3 edits in branches/dfgopt/Source/JavaScriptCore

Predicted types should know about arguments
https://bugs.webkit.org/show_bug.cgi?id=85165

Reviewed by Oliver Hunt.

  • bytecode/PredictedType.cpp:

(JSC::predictionToString):
(JSC::predictionToAbbreviatedString):
(JSC::predictionFromClassInfo):

  • bytecode/PredictedType.h:

(JSC):
(JSC::isMyArgumentsPrediction):
(JSC::isArgumentsPrediction):

7:24 PM Changeset in webkit [115603] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix for LocalizedDateMac.mm
https://bugs.webkit.org/show_bug.cgi?id=85164

Reviewed by Kent Tamura.

  • platform/text/mac/LocalizedDateMac.mm:

(WebCore::monthLabels):

6:28 PM Changeset in webkit [115602] by macpherson@chromium.org
  • 2 edits in trunk/Source/WebCore

Initialize member variables in CSSParser's constructor.
https://bugs.webkit.org/show_bug.cgi?id=84377

Reviewed by Kentaro Hara.

It is good practice not to leave member variables uninitialized. They make debugging more difficult by reducing
repeatability, and in some cases lead to the possibility of information leakage occuring. This patch simply adds
initialization of m_numParsedPropertiesBeforeMarginBox to CSSParser's constructor to INVALID_NUM_PARSED_PROPERTIES
so that the initial state is the same as the state after the properties are cleared.

No tests added because this is a code style fix, not an actual bug so long as the bison generated code calls
startDeclarationsForMarginBox() and endDeclarationsForMarginBox() symmetrically. The lack of initialization was
originally detected by coverity.

  • css/CSSParser.cpp:

(WebCore::CSSParser::CSSParser):

6:22 PM Changeset in webkit [115601] by mjs@apple.com
  • 2 edits in trunk/Tools

REGRESSION: On Lion, run-webkit-tests changes the display color profile even when not running pixel tests
https://bugs.webkit.org/show_bug.cgi?id=81729

Reviewed by Dan Bernstein.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._set_up_run): Only launch LayoutTestHelper when running pixel tests.

5:25 PM Changeset in webkit [115600] by tkent@chromium.org
  • 6 edits
    1 add in trunk/Source

[Mac] Add LocalizedDateMac
https://bugs.webkit.org/show_bug.cgi?id=85039

Reviewed by Kentaro Hara.

Source/WebCore:

A date shown <input type=date> should be formatted for user's OS
settings. Chromium-Mac used LocalizedDateICU.cpp to format/parse visible
date strings and it didn't reflect user-settings.

Test: covered by fast/forms/date/date-appearance.html

  • WebCore.gyp/WebCore.gyp:

Use LocalizedDateMac.mm for OS X instead of LocalizedDateICU.cpp.

  • WebCore.gypi: Add LocalizedDateMac.mm
  • platform/text/mac/LocalizedDateMac.mm: Added.

(WebCore::createShortDateFormatter):
Creates a NSDateFormatter with desired settings.
(WebCore::parseLocalizedDate): Impelment for tyep=date.
(WebCore::formatLocalizedDate): ditto.
(WebCore::isYearSymbol): A readability helper for format string parsing.
(WebCore::isMonthSymbol): ditto.
(WebCore::isDaySymbol): ditto.
(WebCore::localizeDateFormat):
Parse a format string, and replace symbols with user-friendly labels.
(WebCore::localizedDateFormatText):
Gets a format string, and apply localizeDateFormat().
(WebCore::monthLabels): Obtain month names from the system.
(WebCore::weekDayShortLabels): Obtain week day symbols from the system.
(WebCore::firstDayOfWeek): Obtain first day of week from the system.

  • platform/text/ICULocale.cpp:

(WebCore::createFallbackMonthLabels): Uses WTF::monthFullName.

Source/WTF:

  • wtf/DateMath.h:

(WTF): Add monthFullName[]. It is useful to make fallback month
names for calendar/date related features.

1:08 PM Changeset in webkit [115599] by commit-queue@webkit.org
  • 6 edits in trunk

Add support for the Blob constructor (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=84555

Address additional feedback on Blob construction.

  • Add exception when the dictionary is not an object.
  • Ensure the proper ordering of dictionary access. Tested via throwing exceptions in toString, and ensuring correct one is fired first.
  • Changed type of exception throw for invalid enumeration to a TypeError.

Patch by Sam Weinig <sam@webkit.org> on 2012-04-29
Reviewed by Kentaro Hara.

Source/WebCore:

Updated fast/files/blob-constructor.html to be more comprehensive.

  • bindings/js/JSBlobCustom.cpp:

(WebCore::JSBlobConstructor::constructJSBlob):

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallback):

LayoutTests:

  • fast/files/blob-constructor-expected.txt:
  • fast/files/script-tests/blob-constructor.js:
11:22 AM Changeset in webkit [115598] by tomz@codeaurora.org
  • 2 edits in trunk/PerformanceTests

PerfTestRunner.computeStatistics incorrectly calculates min, max and median
https://bugs.webkit.org/show_bug.cgi?id=85111

Reviewed by Ryosuke Niwa.

The sort of the data input was being done alphabetically.
So I provided a numeric compare function.

  • resources/runner.js:
8:25 AM Changeset in webkit [115597] by commit-queue@webkit.org
  • 7 edits in trunk

[GTK] DRT needs an implementation of layoutTestController.setDomainRelaxationForbiddenForURLScheme
https://bugs.webkit.org/show_bug.cgi?id=85131

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-04-29
Reviewed by Martin Robinson.

Source/WebKit/gtk:

Add support for setDomainRelaxationForbiddenForURLScheme which allow
disabling domain relaxation.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::setDomainRelaxationForbiddenForURLScheme):

  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

Tools:

Add missing implementation setDomainRelaxationForbiddenForURLScheme to
GTK's LayoutTestController.

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(LayoutTestController::setDomainRelaxationForbiddenForURLScheme):

LayoutTests:

Unskip http/tests/security/setDomainRelaxationForbiddenForURLScheme.html

  • platform/gtk/test_expectations.txt:
8:20 AM Changeset in webkit [115596] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebCore

[Texmap] Leaves demo: wrong geometry when opacity animation kicks in
https://bugs.webkit.org/show_bug.cgi?id=85096

Reviewed by Kenneth Rohde Christiansen.

We should use combined() instead of combinedForChildren() since we don't allow
intermediate surfaces for preserves-3d. Also, we should apply the offset before
multiplying the transforms, otherwise the transform-origin is incorrect.

Covered by existing compositing tests.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::paintSelf):
(WebCore::TextureMapperLayer::paintRecursive):

1:58 AM Changeset in webkit [115595] by pilgrim@chromium.org
  • 8 edits in trunk/Source

[Chromium] Call highUsageDeltaMB directly
https://bugs.webkit.org/show_bug.cgi?id=84844

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

Source/WebCore:

  • bindings/v8/V8GCController.cpp:

(WebCore::V8GCController::checkMemoryUsage):

  • platform/MemoryUsageSupport.cpp:

(WebCore):
(WebCore::MemoryUsageSupport::highUsageDeltaMB):

  • platform/MemoryUsageSupport.h:

(MemoryUsageSupport):

  • platform/chromium/MemoryUsageSupportChromium.cpp:

(WebCore::MemoryUsageSupport::highUsageDeltaMB):
(WebCore):

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

Source/WebKit/chromium:

  • src/PlatformSupport.cpp:

(WebCore):

1:07 AM Changeset in webkit [115594] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

REGRESSION(r113086): onresize event handler can be deleted in popup window
https://bugs.webkit.org/show_bug.cgi?id=84908

Reviewed by Ojan Vafai.

In a nutshell, an onresize event handler in the popup window
can be non-deterministically deleted. For more details, please
look at Chromium issue 123642:
http://code.google.com/p/chromium/issues/detail?id=123642

I confirmed that this bug is the regression caused by r113086.

r113086 introduced the following code:

void V8LazyEventListener::prepareListenerObject(...) {

if (hasExistingListenerObject())

return;

...;
Since we only parse once, there's no need to keep data
used for parsing around anymore.
m_functionName = String();
m_code = String();
m_eventParameterName = String();
m_sourceURL = String();

setListenerObject(wrappedFunction);

}

This is not correct. The parsing can be done more than once,
and thus we cannot clear data. This patch removes the above code.

Consider the following situation:

(1) Assume '<body onresize="f()"></body>'.
(2) prepareListenerObject() runs.
(3) Since this is the first parsing, hasExistingListenerObject()
returns false. After the parsing, the listener object is set
by setListenerObject().
(4) GC runs. Since there is no strong reference to the listener
object, weakEventListenerCallback() is called back, and the listener
object is disposed.
(5) A resize event is triggered.
(6) prepareListenerObject() is called again. Since the listener object
is already disposed, hasExistingListenerObject() returns false,
and the second parsing starts.

In my investigation, the above situation is happening in the reported
Chromium bug. Anyway, I am sure that potentially the parsing can be
done more than once, and thus we must keep m_xxxx data.

However, this is just a temporary fix. We should fix the code so that
an alive event listener object is never reclaimed.
See https://bugs.webkit.org/show_bug.cgi?id=85152 for more details.

No tests: I tried hard to create a DRT test, but could not.
The bug depends on the behavior of GC, and thus the reported bug is
non-deterministic. For example, (as explained in the Chromium issue,)
the bug does not happen if we load an HTML from network because
the network latency hides the bug. Also the bug happens in the
popup window only. If we open the reported HTML in the main window,
we cannot reproduce the bug.

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

12:09 AM Changeset in webkit [115593] by zandobersek@gmail.com
  • 8 edits
    2 adds in trunk/LayoutTests

Unreviewed, gardening after revisions 115573 and 115582.

  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/constructed-objects-prototypes-expected.txt:
  • platform/gtk/fast/forms/001-expected.txt:
  • platform/gtk/fast/html/details-position-expected.txt: Added.
  • platform/gtk/fast/replaced/width100percent-checkbox-expected.txt:
  • platform/gtk/fast/replaced/width100percent-radio-expected.txt:
  • platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.
  • platform/gtk/tables/mozilla/bugs/bug1318-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug4527-expected.txt:

Apr 28, 2012:

11:04 PM Changeset in webkit [115592] by Csaba Osztrogonác
  • 10 edits in trunk/LayoutTests

[Qt] Unreviewed weekend gardening, update test results, skip new failing tests.

  • fast/files/workers/inline-worker-via-blob-url.html: Trivial typo fix after r115582.
  • platform/qt-4.8/fast/dom/Window/window-properties-expected.txt: Updated after r115582.
  • platform/qt-5.0-wk2/fast/dom/Window/window-properties-expected.txt: Updated after r115582.
  • platform/qt-5.0/fast/dom/Window/window-properties-expected.txt: Updated after r115582.
  • platform/qt/Skipped: Skip a new failing reftest after r115554.
  • platform/qt/fast/dom/constructed-objects-prototypes-expected.txt:
  • platform/qt/fast/html/details-position-expected.png: Updated after r115573.
  • platform/qt/fast/html/details-position-expected.txt: Updated after r115573.
  • platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Updated after r115573.
6:53 PM Changeset in webkit [115591] by weinig@apple.com
  • 4 edits in trunk/Tools

Smooth scrolling needs a new key
<rdar://problem/11331632>

Reviewed by Dan Bernstein.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetDefaultsToConsistentValues):

  • TestWebKitAPI/mac/InjectedBundleControllerMac.mm:

(TestWebKitAPI::InjectedBundleController::platformInitialize):

  • WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:

(WTR::InjectedBundle::platformInitialize):
Update for new key.

6:44 PM Changeset in webkit [115590] by ggaren@apple.com
  • 13 edits
    2 adds in trunk/Source/JavaScriptCore

Factored threaded block allocation into a separate object
https://bugs.webkit.org/show_bug.cgi?id=85148

Reviewed by Sam Weinig.

99% of this patch just moves duplicated block allocation and
deallocation code into a new object named BlockAllocator, with these
exceptions:

  • heap/BlockAllocator.h: Added.

(BlockAllocator::BlockAllocator): The order of declarations here now
guards us against an unlikely race condition during startup.

  • heap/BlockAllocator.cpp:

JSC::BlockAllocator::blockFreeingThreadMain): Added a FIXME to
highlight a lack of clarity we have in our block deallocation routines.

6:32 PM Changeset in webkit [115589] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Smooth scrolling needs a new key
<rdar://problem/11331632>

Reviewed by Geoffrey Garen.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::scrollAnimationEnabledForSystem):
(WebCore::ScrollAnimatorMac::scroll):
Update for new key.

6:14 PM Changeset in webkit [115588] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

MessagePort must set m_closed to be true at the end of MessagePort::close function
https://bugs.webkit.org/show_bug.cgi?id=85139

Source/WebCore:

In the function MessagePort::close, the "m_closed = true" must be executed at the end, not at the beginning.
Or, the m_entangledChannel->close() will not be executed.
And it resulted in the failure of MS bench mark messagechannel_close.htm.
http://samples.msdn.microsoft.com/ietestcenter/WebWorkers/messagechannel_close.htm

Patch by Li Yin <li.yin@intel.com> on 2012-04-28
Reviewed by Kentaro Hara.

Test: fast/events/message-port-close.html

  • dom/MessagePort.cpp:

(WebCore::MessagePort::close):

LayoutTests:

Test MessageChannel.port whether can receive message after it is closed.

Patch by Li Yin <li.yin@intel.com> on 2012-04-28
Reviewed by Kentaro Hara.

  • fast/events/message-port-close-expected.txt: Added.
  • fast/events/message-port-close.html: Added.
4:53 PM Changeset in webkit [115587] by fpizlo@apple.com
  • 2 edits in branches/dfgopt/Source/JavaScriptCore

Bytecompiler should emit trivially fewer jumps in loops
https://bugs.webkit.org/show_bug.cgi?id=85144

Reviewed by Oliver Hunt.

1-2% across the board win.

  • bytecompiler/NodesCodegen.cpp:

(JSC::WhileNode::emitBytecode):
(JSC::ForNode::emitBytecode):

3:50 PM Changeset in webkit [115586] by weinig@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Try to fix the Qt build.

  • heap/Heap.cpp:

(JSC::Heap::lastChanceToFinalize):

3:45 PM Changeset in webkit [115585] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

And again.

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallback):

3:39 PM Changeset in webkit [115584] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Once again, try to make these puppies work.

  • bindings/v8/custom/V8BlobCustom.cpp:
3:33 PM Changeset in webkit [115583] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the Chromium build.

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallback):

3:24 PM Changeset in webkit [115582] by weinig@apple.com
  • 45 edits
    3 adds in trunk

Add support for the Blob constructor
https://bugs.webkit.org/show_bug.cgi?id=84555

Reviewed by Maciej Stachowiak.

Source/WebCore:

Test: fast/files/blob-constructor.html

This adds an implementation of the Blob constructor that willfully
violates the W3C Editor’s Draft 29 February 2012 in the following ways:

  • bindings/js/JSBlobCustom.cpp:

(WebCore::JSBlobConstructor::constructJSBlob):
Implement blob constructor.

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallback):
Implement blob constructor.

  • fileapi/Blob.idl:

Add constructor to IDL.

  • workers/WorkerContext.idl:

Add Blob constructor to the worker global object.

LayoutTests:

Switch tests that were not directly testing BlobBuilder over to
using the Blob constructor, to get test coverage of standard way
constructing blobs.

  • fast/files/blob-constructor.html: Added.
  • fast/files/blob-constructor-expected.txt: Added.
  • fast/files/script-tests/blob-constructor.js: Added.

New test.

  • fast/dom/HTMLAnchorElement/anchor-download-unset.html:
  • fast/dom/HTMLAnchorElement/anchor-download.html:
  • fast/dom/HTMLAnchorElement/anchor-nodownload-set.html:
  • fast/dom/HTMLAnchorElement/anchor-nodownload.html:
  • fast/dom/constructed-objects-prototypes-expected.txt:
  • fast/dom/window-domurl-crash.html:
  • fast/files/blob-slice-overflow.html:
  • fast/files/blob-slice-test.html:
  • fast/files/file-reader-fffd-expected.txt:
  • fast/files/file-reader-fffd.html:
  • fast/files/not-enough-arguments-expected.txt:
  • fast/files/not-enough-arguments.html:
  • fast/files/resources/read-blob-test-cases.js:
  • fast/files/resources/read-common.js:
  • fast/files/workers/inline-worker-via-blob-url.html:
  • fast/filesystem/resources/file-writer-abort-continue.js:
  • fast/filesystem/resources/file-writer-abort-depth.js:
  • fast/filesystem/resources/file-writer-abort.js:
  • fast/filesystem/resources/file-writer-events.js:
  • fast/filesystem/resources/file-writer-gc-blob.js:
  • fast/filesystem/resources/file-writer-sync-truncate-extend.js:
  • fast/filesystem/resources/file-writer-sync-write-overlapped.js:
  • fast/filesystem/resources/file-writer-utils.js:
  • http/tests/fileapi/create-blob-url-from-data-url.html:
  • http/tests/filesystem/no-cache-filesystem-url.html:
  • http/tests/local/blob/resources/hybrid-blob-util.js:
  • http/tests/security/resources/create-filesystem-file.html:
  • http/tests/websocket/tests/hixie76/send-object.html:
  • http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html:
  • http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
  • http/tests/websocket/tests/hybi/send-blob.html:
  • http/tests/websocket/tests/hybi/send-file-blob-fail.html:
  • http/tests/websocket/tests/hybi/send-file-blob.html:
  • http/tests/websocket/tests/hybi/workers/resources/send-blob.js:
  • platform/mac/fast/dom/Window/window-properties-expected.txt:
  • storage/indexeddb/noblobs.html:
  • storage/indexeddb/structured-clone.html:
1:59 PM Changeset in webkit [115581] by igor.o@sisa.samsung.com
  • 14 edits
    2 adds in trunk/Source/WebCore

Move PropertyWrapper out of the AnimationBase
https://bugs.webkit.org/show_bug.cgi?id=84978

Reviewed by Dean Jackson.

AnimationBase is a complex class. It has a state machine and a bunch of
property handlers. This patch moves the property handlers to a separate
class making AnimationBase simpler.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • page/animation/AnimationBase.cpp:
  • page/animation/AnimationBase.h:

(AnimationBase):

  • page/animation/AnimationController.cpp:

(WebCore::AnimationController::supportsAcceleratedAnimationOfProperty):

  • page/animation/CSSPropertyAnimation.cpp: Added.

(WebCore):
(WebCore::blendFunc):
(WebCore::crossfadeBlend):
(AnimationPropertyWrapperBase):
(WebCore::AnimationPropertyWrapperBase::AnimationPropertyWrapperBase):
(WebCore::AnimationPropertyWrapperBase::~AnimationPropertyWrapperBase):
(WebCore::AnimationPropertyWrapperBase::isShorthandWrapper):
(WebCore::AnimationPropertyWrapperBase::property):
(WebCore::AnimationPropertyWrapperBase::animationIsAccelerated):
(WebCore::addPropertyWrapper):
(WebCore::wrapperForProperty):
(PropertyWrapperGetter):
(WebCore::PropertyWrapperGetter::PropertyWrapperGetter):
(WebCore::PropertyWrapperGetter::equals):
(PropertyWrapper):
(WebCore::PropertyWrapper::PropertyWrapper):
(WebCore::PropertyWrapper::blend):
(RefCountedPropertyWrapper):
(WebCore::RefCountedPropertyWrapper::RefCountedPropertyWrapper):
(WebCore::RefCountedPropertyWrapper::blend):
(StyleImagePropertyWrapper):
(WebCore::StyleImagePropertyWrapper::StyleImagePropertyWrapper):
(WebCore::StyleImagePropertyWrapper::equals):
(PropertyWrapperColor):
(WebCore::PropertyWrapperColor::PropertyWrapperColor):
(WebCore::PropertyWrapperColor::blend):
(PropertyWrapperAcceleratedOpacity):
(WebCore::PropertyWrapperAcceleratedOpacity::PropertyWrapperAcceleratedOpacity):
(WebCore::PropertyWrapperAcceleratedOpacity::animationIsAccelerated):
(WebCore::PropertyWrapperAcceleratedOpacity::blend):
(PropertyWrapperAcceleratedTransform):
(WebCore::PropertyWrapperAcceleratedTransform::PropertyWrapperAcceleratedTransform):
(WebCore::PropertyWrapperAcceleratedTransform::animationIsAccelerated):
(WebCore::PropertyWrapperAcceleratedTransform::blend):
(PropertyWrapperAcceleratedFilter):
(WebCore::PropertyWrapperAcceleratedFilter::PropertyWrapperAcceleratedFilter):
(WebCore::PropertyWrapperAcceleratedFilter::animationIsAccelerated):
(WebCore::PropertyWrapperAcceleratedFilter::blend):
(WebCore::shadowListLength):
(WebCore::shadowForBlending):
(PropertyWrapperShadow):
(WebCore::PropertyWrapperShadow::PropertyWrapperShadow):
(WebCore::PropertyWrapperShadow::equals):
(WebCore::PropertyWrapperShadow::blend):
(WebCore::PropertyWrapperShadow::blendSimpleOrMatchedShadowLists):
(WebCore::PropertyWrapperShadow::blendMismatchedShadowLists):
(PropertyWrapperMaybeInvalidColor):
(WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
(WebCore::PropertyWrapperMaybeInvalidColor::equals):
(WebCore::PropertyWrapperMaybeInvalidColor::blend):
(PropertyWrapperVisitedAffectedColor):
(WebCore::PropertyWrapperVisitedAffectedColor::PropertyWrapperVisitedAffectedColor):
(WebCore::PropertyWrapperVisitedAffectedColor::equals):
(WebCore::PropertyWrapperVisitedAffectedColor::blend):
(FillLayerAnimationPropertyWrapperBase):
(WebCore::FillLayerAnimationPropertyWrapperBase::FillLayerAnimationPropertyWrapperBase):
(WebCore::FillLayerAnimationPropertyWrapperBase::~FillLayerAnimationPropertyWrapperBase):
(FillLayerPropertyWrapperGetter):
(WebCore::FillLayerPropertyWrapperGetter::FillLayerPropertyWrapperGetter):
(WebCore::FillLayerPropertyWrapperGetter::equals):
(FillLayerPropertyWrapper):
(WebCore::FillLayerPropertyWrapper::FillLayerPropertyWrapper):
(WebCore::FillLayerPropertyWrapper::blend):
(FillLayerRefCountedPropertyWrapper):
(WebCore::FillLayerRefCountedPropertyWrapper::FillLayerRefCountedPropertyWrapper):
(WebCore::FillLayerRefCountedPropertyWrapper::blend):
(FillLayerStyleImagePropertyWrapper):
(WebCore::FillLayerStyleImagePropertyWrapper::FillLayerStyleImagePropertyWrapper):
(WebCore::FillLayerStyleImagePropertyWrapper::equals):
(FillLayersPropertyWrapper):
(WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
(WebCore::FillLayersPropertyWrapper::equals):
(WebCore::FillLayersPropertyWrapper::blend):
(ShorthandPropertyWrapper):
(WebCore::ShorthandPropertyWrapper::ShorthandPropertyWrapper):
(WebCore::ShorthandPropertyWrapper::isShorthandWrapper):
(WebCore::ShorthandPropertyWrapper::equals):
(WebCore::ShorthandPropertyWrapper::blend):
(WebCore::ShorthandPropertyWrapper::propertyWrappers):
(PropertyWrapperFlex):
(WebCore::PropertyWrapperFlex::PropertyWrapperFlex):
(WebCore::PropertyWrapperFlex::equals):
(WebCore::PropertyWrapperFlex::blend):
(PropertyWrapperSVGPaint):
(WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
(WebCore::PropertyWrapperSVGPaint::equals):
(WebCore::PropertyWrapperSVGPaint::blend):
(WebCore::addShorthandProperties):
(WebCore::CSSPropertyAnimation::ensurePropertyMap):
(WebCore::gatherEnclosingShorthandProperties):
(WebCore::CSSPropertyAnimation::blendProperties):
(WebCore::CSSPropertyAnimation::animationOfPropertyIsAccelerated):
(WebCore::CSSPropertyAnimation::animatableShorthandsAffectingProperty):
(WebCore::CSSPropertyAnimation::propertiesEqual):
(WebCore::CSSPropertyAnimation::getPropertyAtIndex):
(WebCore::CSSPropertyAnimation::getNumProperties):

  • page/animation/CSSPropertyAnimation.h: Added.

(WebCore):
(CSSPropertyAnimation):

  • page/animation/CompositeAnimation.cpp:

(WebCore::CompositeAnimation::updateTransitions):
(WebCore::CompositeAnimation::pauseTransitionAtTime):

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::animate):
(WebCore::ImplicitAnimation::getAnimatedStyle):
(WebCore::ImplicitAnimation::isTargetPropertyEqual):
(WebCore::ImplicitAnimation::blendPropertyValueInStyle):
(WebCore::ImplicitAnimation::timeToNextService):

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::animate):
(WebCore::KeyframeAnimation::getAnimatedStyle):
(WebCore::KeyframeAnimation::timeToNextService):

  • rendering/style/RenderStyle.h:
1:58 PM Changeset in webkit [115580] by ggaren@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

2012-04-28 Geoffrey Garen <ggaren@apple.com>

Try to fix the Windows build.

1:51 PM Changeset in webkit [115579] by ggaren@apple.com
  • 18 edits in trunk/Source

Clarified JSGlobalData (JavaScript VM) lifetime
https://bugs.webkit.org/show_bug.cgi?id=85142

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

This was so confusing that I didn't feel like I could reason about
memory lifetime in the heap without fixing it.

The rules are:

(1) JSGlobalData owns the virtual machine and all memory in it.

(2) Deleting a JSGlobalData frees the virtual machine and all memory
in it.

(Caveat emptor: if you delete the virtual machine while you're running
JIT code or accessing GC objects, you're gonna have a bad time.)

(I opted not to make arbitrary sub-objects keep the virtual machine
alive automatically because:

(a) doing that right would be complex and slow;

(b) in the case of an exiting thread or process, there's no
clear way to give the garbage collector a chance to try again
later;

(c) continuing to run the garbage collector after we've been
asked to shut down the virtual machine seems rude;

(d) we've never really supported that feature, anyway.)

(3) Normal ref-counting will do. No need to call a battery of
specialty functions to tear down a JSGlobalData. Its foibles
notwithstanding, C++ does in fact know how to execute destructors in
order.

  • API/JSContextRef.cpp:

(JSGlobalContextCreate): Removed compatibility shim for older
operating systems because it's no longer used.

(JSGlobalContextRelease): Now that we can rely on JSGlobalData to "do
the right thing", this code is much simpler. We still have one special
case to notify the garbage collector if we're removing the last
reference to the global object, since this can improve memory behavior.

  • heap/CopiedSpace.cpp:

(JSC::CopiedSpace::freeAllBlocks):

  • heap/CopiedSpace.h:

(CopiedSpace): Renamed "destroy" => "freeAllBlocks" because true
destruction-time behaviors should be limited to our C++ destructor.

  • heap/Heap.cpp:

(JSC::Heap::~Heap):
(JSC):
(JSC::Heap::lastChanceToFinalize):

  • heap/Heap.h:

(Heap):
(JSC::Heap::heap): Renamed "destroy" => "lastChanceToFinalize" because
true destruction-time behaviors should be limited to our C++
destructor.

Reorganized the code, putting code that must run before any objects
get torn down into lastChanceToFinalize, and code that just tears down
objects into our destructor.

  • heap/Local.h:

(JSC::LocalStack::LocalStack):
(JSC::LocalStack::push):
(LocalStack): See rule (2).

  • jsc.cpp:

(functionQuit):
(main):
(printUsageStatement):
(parseArguments):
(jscmain):

  • testRegExp.cpp:

(main):
(printUsageStatement):
(parseArguments):
(realMain): See rule (3).

I removed the feature of ensuring orderly tear-down when calling quit()
or running in --help mode because it didn't seem very useful and
making it work with Windows structured exception handling and
NO_RETURN didn't seem like a fun way to spend a Saturday.

  • runtime/JSGlobalData.h:
  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData): Moved heap to be the first data
member in JSGlobalData to ensure that it's destructed last, so other
objects that reference it destruct without crashing. This allowed me
to remove clearBuiltinStructures() altogether, and helped guarantee
rule (3).

(JSC::JSGlobalData::~JSGlobalData): Explicitly call
lastChanceToFinalize() at the head of our destructor to ensure that
all pending finalizers run while the virtual machine is still in a
valid state. Trying to resurrect (re-ref) the virtual machine at this
point is not valid, but all other operations are.

Changed a null to a 0xbbadbeef to clarify just how bad this beef is.

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::init):

  • runtime/JSGlobalObject.h:

(JSGlobalObject):
(JSC::JSGlobalObject::globalData): See rule (3).

Source/WebCore:

  • bindings/js/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::~WorkerScriptController): Slightly
simpler than before. We can't just rely on our default destructor
because we need to hold the JSLock when we tear down the VM.

  • bridge/NP_jsobject.cpp:

(_NPN_InvokeDefault):
(_NPN_Invoke):
(_NPN_Evaluate):
(_NPN_Construct): Don't RefPtr<> the JSGlobalData because it makes it
seem like you know something the rest of our code doesn't know. The
plugin JSGlobalData is immortal, anyway.

I also removed some timeout checker related code because that feature
doesn't work anymore, so it was effectively dead code.

Source/WebKit/mac:

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
(WebKit::NetscapePluginInstanceProxy::construct):

12:22 PM Changeset in webkit [115578] by zandobersek@gmail.com
  • 1 edit
    1 delete in trunk/LayoutTests

Unreviewed, removing a Mac WebKit2-specific test result for
http/tests/xmlviewer/dumpAsText/frames.html that is not required
anymore after changes in r115572.

  • platform/mac-wk2/http/tests/xmlviewer: Removed.
  • platform/mac-wk2/http/tests/xmlviewer/dumpAsText: Removed.
  • platform/mac-wk2/http/tests/xmlviewer/dumpAsText/frames-expected.txt: Removed.
12:11 PM Changeset in webkit [115577] by loislo@chromium.org
  • 10 edits in trunk/Source

Web Inspector: InspectorFrontendHost.append has to be implemented for saving heap snapshots.
https://bugs.webkit.org/show_bug.cgi?id=85137

We can save a file with help of InspectorFrontendHost.save method,
but it is suitable only for relatively small portions of data and
can't process the 6Gb heap snapshot.
These methods just pass the url and content into embedder.

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • inspector/InspectorFrontendClient.h:

(InspectorFrontendClient):

  • inspector/InspectorFrontendClientLocal.h:

(WebCore::InspectorFrontendClientLocal::append):

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::append):
(WebCore):

  • inspector/InspectorFrontendHost.h:

(InspectorFrontendHost):

  • inspector/InspectorFrontendHost.idl:

Source/WebKit/chromium:

  • public/WebDevToolsFrontendClient.h:

(WebKit::WebDevToolsFrontendClient::append):

  • src/InspectorFrontendClientImpl.cpp:

(WebKit::InspectorFrontendClientImpl::append):
(WebKit):

  • src/InspectorFrontendClientImpl.h:

(InspectorFrontendClientImpl):

11:53 AM Changeset in webkit [115576] by noam.rosenthal@nokia.com
  • 2 edits in trunk/Source/WebCore

[Qt][Texmap] Error of cross-compiling webkit with Qt 4.8.1
https://bugs.webkit.org/show_bug.cgi?id=84321

Speculative build-fix for Qt 4.8.
Use QGLContext for Qt 4.x instead of the platform-specific context.

Reviewed by Simon Hausmann.

No new tests, build fix.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(SharedGLData):
(WebCore::TextureMapperGLData::SharedGLData::getCurrentGLContext):

10:31 AM Changeset in webkit [115575] by eae@chromium.org
  • 20 edits
    5 adds
    8 deletes in trunk/LayoutTests

Unreviewed rebaseline for tests affected by Length change in r115573.

  • fast/borders/border-radius-huge-assert-expected.txt: Added.
  • fast/html/details-position-expected.txt: Added.
  • platform/chromium-mac-leopard/fast/forms/001-expected.png:
  • platform/chromium-mac-leopard/fast/replaced/width100percent-checkbox-expected.png:
  • platform/chromium-mac-leopard/fast/replaced/width100percent-radio-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug1318-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug4527-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/001-expected.png:
  • platform/chromium-mac-snowleopard/fast/replaced/width100percent-checkbox-expected.png:
  • platform/chromium-mac-snowleopard/fast/replaced/width100percent-radio-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug1318-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug4527-expected.png:
  • platform/chromium-mac/fast/forms/001-expected.png:
  • platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.png:
  • platform/chromium-mac/fast/replaced/width100percent-radio-expected.png:
  • platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.
  • platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/chromium-win/fast/borders/border-radius-huge-assert-expected.png:
  • platform/chromium-win/fast/html/details-position-expected.txt:
  • platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/efl/fast/borders/border-radius-huge-assert-expected.txt: Removed.
  • platform/efl/fast/html/details-position-expected.txt: Removed.
  • platform/efl/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Removed.
  • platform/efl/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Removed.
  • platform/gtk/fast/borders/border-radius-huge-assert-expected.txt: Removed.
  • platform/gtk/fast/html/details-position-expected.txt: Removed.
  • platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Removed.
  • platform/gtk/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Removed.
  • svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.
  • svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.
10:26 AM Changeset in webkit [115574] by noam.rosenthal@nokia.com
  • 3 edits in trunk/Source/WebCore

[Texmap] Falling leaves demo missing opacity fade out animation
https://bugs.webkit.org/show_bug.cgi?id=83691

Reviewed by Martin Robinson.

The bug originated from clearing an intermediate surface with glClear while the scissor
state was wrong.
When using intermediate surfaces, maintain a clip-stack for each surface, rather than
a single clip-stack for the whole scene. When a surface is bound, its clip stack should
be applied.

Covered by existing compositing tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(SharedGLData):
(WebCore::TextureMapperGL::ClipStack::push):
(WebCore):
(WebCore::TextureMapperGL::ClipStack::pop):
(WebCore::scissorClip):
(WebCore::TextureMapperGL::ClipStack::apply):
(WebCore::TextureMapperGL::clipStack):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::BitmapTextureGL::didReset):
(WebCore::BitmapTextureGL::clearIfNeeded):
(WebCore::BitmapTextureGL::createFboIfNeeded):
(WebCore::BitmapTextureGL::bind):
(WebCore::TextureMapperGL::bindDefaultSurface):
(WebCore::TextureMapperGL::bindSurface):
(WebCore::TextureMapperGL::beginScissorClip):
(WebCore::TextureMapperGL::beginClip):
(WebCore::TextureMapperGL::endClip):

  • platform/graphics/texmap/TextureMapperGL.h:

(TextureMapperGL):
(ClipState):
(WebCore::TextureMapperGL::ClipState::ClipState):
(ClipStack):
(WebCore::TextureMapperGL::ClipStack::current):
(WebCore::TextureMapperGL::ClipStack::clear):
(BitmapTextureGL):
(WebCore::BitmapTextureGL::BitmapTextureGL):

9:27 AM Changeset in webkit [115573] by eae@chromium.org
  • 29 edits in trunk

Move Length and CSS length computation to float
https://bugs.webkit.org/show_bug.cgi?id=84801

Source/WebCore:

Patch by Emil A Eklund <eae@chromium.org> and Levi Weintraub <leviw@chromium.org> on 2012-04-26
Reviewed by Eric Seidel.

Change Length and CSS length computation to floating point. This gets us
closer to the goal of supporting subpixel layout and improves precision
for SVG which already uses floating point for its layout.

This change makes computedStyle return fractional values for pixel values
if a fraction is specified. It also changes the result of computations
where two or more values with fractional precision. Prior to this change
the result of Length(2.9) + Length(2.9) would be 4 as each value would be
floored. With this change the result is 5 as the addition is done with
floating point precision and then the result will be floored. Once we
enable subpixel layout the resulting value in this example would be 5.8.

Updated existing layout tests.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::zoomAdjustedPixelValue):

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLength):

  • css/CSSPrimitiveValue.h:

(WebCore):
(WebCore::roundForImpreciseConversion):
Add specialized float version of roundForImpreciseConversion that matches
the int versions rounding logic.

If a value is sufficiently close to the next integer round it up to
ensure that a style rule such as "width: 4.999px" evaluates to 5px
instead of 4px. This is needed as, although Lengths are using floating
point, the layout system still uses integer precision and floors the
Length values.
This will change once we move to FractionalLayoutUnits but for now this
is needed to ensure compatibility with the existing system and tests.

Without this specialized rounding logic we fail a handful of tests
including acid3.

  • platform/Length.h:

(WebCore::Length::value):
(Length):
(WebCore::Length::intValue):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::styleOrColLogicalWidth):

LayoutTests:

Reviewed by Eric Seidel.

Change Length and CSS length computation to floating point. This gets us
closer to the goal of supporting subpixel layout and improves precision
for SVG which already uses floating point for its layout.

This change makes computedStyle return fractional values for pixel values
if a fraction is specified. It also changes the result of computations
where two or more values with fractional precision. Prior to this change
the result of Length(2.9) + Length(2.9) would be 4 as each value would be
floored. with this change the result is 5 as the addition is done with
floating point precision and then the result will be floored. Once we
enable subpixel layout the resulting value in this example would be 5.8.

  • fast/dom/length-attribute-mapping-expected.txt:
  • fast/dom/length-attribute-mapping.html:
  • platform/mac-snowleopard/fast/forms/001-expected.png:
  • platform/mac-snowleopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
  • platform/mac/fast/forms/001-expected.txt:
  • platform/mac/fast/html/details-position-expected.png:
  • platform/mac/fast/html/details-position-expected.txt:
  • platform/mac/fast/replaced/width100percent-checkbox-expected.png:
  • platform/mac/fast/replaced/width100percent-checkbox-expected.txt:
  • platform/mac/fast/replaced/width100percent-radio-expected.png:
  • platform/mac/fast/replaced/width100percent-radio-expected.txt:
  • platform/mac/mathml/presentation/fractions-expected.png:
  • platform/mac/mathml/presentation/fractions-expected.txt:
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png:
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
  • platform/mac/mathml/presentation/mo-stretch-expected.png:
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
  • platform/mac/mathml/presentation/subsup-expected.png:
  • platform/mac/mathml/presentation/subsup-expected.txt:
  • platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.png:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
9:00 AM Changeset in webkit [115572] by zandobersek@gmail.com
  • 5 edits in trunk

[WK2] http/tests/navigation/anchor-frames-gbk.html fails
https://bugs.webkit.org/show_bug.cgi?id=76896

Reviewed by Darin Adler.

Tools:

Only dump as text if currently dumping render tree. This ensures that
calling dumpAsText in a test with dumpChildFramesAsText already being
called doesn't override the first decision, possibly making tests fail.

  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:

(WTR::LayoutTestController::dumpAsText):

LayoutTests:

Unskip the now-passing test for Mac and Qt WK2 ports.

  • platform/mac-wk2/Skipped:
  • platform/qt-5.0-wk2/Skipped:
8:57 AM Changeset in webkit [115571] by zandobersek@gmail.com
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed, adding a Gtk-specific baseline for
fast/dom/Window/window-lookup-precedence.html.

  • platform/gtk/fast/dom/Window/window-lookup-precedence-expected.txt: Added.
8:42 AM Changeset in webkit [115570] by danw@gnome.org
  • 2 edits in trunk/Tools

watchlist: Add danw@gnome.org to SoupNetwork

  • Scripts/webkitpy/common/config/watchlist:
7:20 AM Changeset in webkit [115569] by apavlov@chromium.org
  • 6 edits in trunk

Web Inspector: Enable touch events feature fails touch feature detection
https://bugs.webkit.org/show_bug.cgi?id=84397

Source/WebCore:

Whenever the touch emulation is enabled, Inspector adds a script to evaluate on load,
that adds ontouch(start|end|move|cancel) properties to window.proto and document.proto.

Reviewed by Pavel Feldman.

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMAgent.prototype._emulateTouchEventsChanged.get if):
(WebInspector.DOMAgent.prototype._emulateTouchEventsChanged.scriptAddedCallback):
(WebInspector.DOMAgent.prototype._emulateTouchEventsChanged):

  • inspector/front-end/inspector.js:

LayoutTests:

Reviewed by Pavel Feldman.

  • fast/events/touch/emulate-touch-events-expected.txt:
  • fast/events/touch/emulate-touch-events.html:
7:11 AM Changeset in webkit [115568] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Shortcuts screen UI polish
https://bugs.webkit.org/show_bug.cgi?id=84708

1) remove inconsistent shadow;
2) reduce border radius;
3) vertically center the “X” button;
4) replace unreadable symbolic shortcuts with text;
5) gaps / colors / opacity adjustments;
6) section-to-column distribution algorithm is replaced with a fair one.

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-04-28
Reviewed by Pavel Feldman.

This is a UI polising patch, so no new tests added.

  • English.lproj/localizedStrings.js: added keyboars arrow keys items
  • inspector/front-end/KeyboardShortcut.js: replace unreadable symbolic shortcuts with text
  • inspector/front-end/ShortcutsScreen.js:

(WebInspector.ShortcutsScreen):
(WebInspector.ShortcutsScreen.prototype.show): remove redundant parameter
(WebInspector.ShortcutsScreen.prototype._buildTable): change section distributing algorithm
(WebInspector.ShortcutsSection.prototype.renderSection): render colon with margins
(WebInspector.ShortcutsSection.prototype._renderHeader): apply classname to th elements

  • inspector/front-end/helpScreen.css:

(.help-window-main): reduce radius, remove shadow; tune color and opacity
(.help-window-caption): fix spacing; add ruler
(.help-window-title): fix spacing; remove ruler
(.help-content): fix spacing
(.help-close-button): fix spacing; adjust background color
(.help-column-table): fix spacing
(.help-table > tr > th): fix color
(.help-key): fix color
(.help-combine-keys, .help-key-delimiter): extract common style
(.help-combine-keys): remove dupe
(.help-section-title): add space between sections

5:47 AM Changeset in webkit [115567] by noel.gordon@gmail.com
  • 2 edits in trunk/Source/WebCore

Remove PlatformTouchPointQt.cpp PlatformTouchEventQt.cpp from the gyp projects
https://bugs.webkit.org/show_bug.cgi?id=85132

Unreviewed VS2010 gyp project generation fix.

PlatformTouchPointQt.cpp and PlatformTouchEventQt.cpp were removed in r115312,
so remove them from the gyp projects.

  • WebCore.gypi:
5:01 AM Changeset in webkit [115566] by Nikolas Zimmermann
  • 3 edits
    2 adds in trunk

<animateTransform type="scale"> should use '0' as effective from value not '1', if no base value is specified and from is not given
https://bugs.webkit.org/show_bug.cgi?id=85133

Source/WebCore:

It should start from scale=0. I had that fixed before, but it got lost during merging. Restore the fix.
See bug 85051, for more context why this is correct.

Tests: svg/animations/animateTransform-by-scale-1-expected.svg

svg/animations/animateTransform-by-scale-1.svg

  • svg/SVGAnimatedTransformList.cpp:

(WebCore::SVGAnimatedTransformListAnimator::calculateAnimatedValue):

LayoutTests:

Reviewed by Antti Koivisto.

  • svg/animations/animateTransform-by-scale-1-expected.svg: Added.
  • svg/animations/animateTransform-by-scale-1.svg: Added.
4:21 AM Changeset in webkit [115565] by noel.gordon@gmail.com
  • 1 edit
    1 move
    1 add
    2 deletes in trunk/LayoutTests

[chromium] http/tests/websocket/tests/hixie76/url-parsing.html is failing
https://bugs.webkit.org/show_bug.cgi?id=85130

Unreviewed test expectations update: fix expected text after r115533.

  • platform/chromium-mac/http/tests/websocket/tests/hixie76/url-parsing-expected.txt: Removed.
  • platform/chromium-win/http/tests/websocket/tests/hixie76/url-parsing-expected.txt: Removed.
  • platform/chromium/http/tests/websocket/tests/hixie76/url-parsing-expected.txt: Renamed from LayoutTests/platform/chromium-linux/http/tests/websocket/tests/hixie76/url-parsing-expected.txt.
4:03 AM Changeset in webkit [115564] by Nikolas Zimmermann
  • 8 edits
    8 adds in trunk

SVGAnimateColorElement doesn't support by/to animations properly
https://bugs.webkit.org/show_bug.cgi?id=36704

Reviewed by Antti Koivisto.

Source/WebCore:

Switch AnimatedColorAnimator to use the standard animateAdditiveNumber() method, taking progress & repeatCount into account.
This gives us accumulation/repeatCount support for free.

We just animate the four color components on their own now and clamp once at the end after addition/accumulation finished.
Import <animateColor> tests from Dr. Olaf Hoffmanns SVG Animation test suite, which all pass now.

While I was at it, remove the includeSMILProperties boolean from computeCSSPropertyValue - we always use the computed style
without SMIL effects included, whenever we want to retrieve the "base value", or handle "inherit/currentColor".

Tests: svg/animations/animateColor-additive-2a-expected.svg

svg/animations/animateColor-additive-2a.svg
svg/animations/animateColor-additive-2b-expected.svg
svg/animations/animateColor-additive-2b.svg
svg/animations/animateColor-additive-2c-expected.svg
svg/animations/animateColor-additive-2c.svg
svg/animations/animateColor-additive-2d-expected.svg
svg/animations/animateColor-additive-2d.svg

  • svg/ColorDistance.cpp:

(WebCore::ColorDistance::clampColor):
(WebCore::ColorDistance::addColors):
(WebCore::ColorDistance::addToColor):

  • svg/ColorDistance.h:

(ColorDistance):

  • svg/SVGAnimateElement.cpp:

(WebCore::SVGAnimateElement::resetToBaseValue):

  • svg/SVGAnimatedColor.cpp:

(WebCore::SVGAnimatedColorAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedColorAnimator::calculateAnimatedValue):

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::computeCSSPropertyValue):
(WebCore::SVGAnimationElement::adjustForInheritance):

  • svg/SVGAnimationElement.h:

(SVGAnimationElement):

LayoutTests:

  • svg/animations/animateColor-additive-2a-expected.svg: Added.
  • svg/animations/animateColor-additive-2a.svg: Added.
  • svg/animations/animateColor-additive-2b-expected.svg: Added.
  • svg/animations/animateColor-additive-2b.svg: Added.
  • svg/animations/animateColor-additive-2c-expected.svg: Added.
  • svg/animations/animateColor-additive-2c.svg: Added.
  • svg/animations/animateColor-additive-2d-expected.svg: Added.
  • svg/animations/animateColor-additive-2d.svg: Added.
2:57 AM Changeset in webkit [115563] by caseq@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] add frame boundaries instrumentation for the threaded compositor
https://bugs.webkit.org/show_bug.cgi?id=83926

  • call instrumentBeginFrame() in a callback invoked by CCThreadProxy to fix frame marks in WebInspector's timeline panel, currently broken for threaded compositor.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::willBeginFrame):

2:49 AM Changeset in webkit [115562] by yurys@chromium.org
  • 2 edits in trunk

Unreviewed. Gtk build fix after r115553.

  • Source/autotools/symbols.filter:
2:44 AM Changeset in webkit [115561] by Nikolas Zimmermann
  • 2 edits in trunk/Source/WebCore

2012-04-28 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Fix Qt build -- I was too quick.

  • rendering/svg/SVGPathData.cpp: Add back Path.h include.
2:29 AM Changeset in webkit [115560] by Nikolas Zimmermann
  • 18 edits
    1 move
    1 add
    1 delete in trunk/Source/WebCore

Rename SVGPathParserFactory to SVGPathUtilities and remove the obsolete singleton
https://bugs.webkit.org/show_bug.cgi?id=85129

SVGPathParserFactory implements the singleton pattern, but stores no members.
Remove the singleton and move all functions to free-functions into SVGPathUtilities.h.

Makes the code easier to read - doesn't affect any tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/svg/SVGPathData.cpp:

(WebCore::updatePathFromPathElement):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::operator<<):

  • svg/SVGAllInOne.cpp:
  • svg/SVGAnimateMotionElement.cpp:

(WebCore::SVGAnimateMotionElement::parseAttribute):

  • svg/SVGAnimatedPath.cpp:

(WebCore::SVGAnimatedPathAnimator::constructFromString):
(WebCore::SVGAnimatedPathAnimator::startAnimValAnimation):
(WebCore::SVGAnimatedPathAnimator::resetAnimValToBaseVal):
(WebCore::SVGAnimatedPathAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedPathAnimator::calculateAnimatedValue):

  • svg/SVGAnimatedType.cpp:
  • svg/SVGGlyphElement.cpp:

(WebCore::SVGGlyphElement::buildGenericGlyphIdentifier):

  • svg/SVGPathBlender.cpp: Fix typo s/;;/;/
  • svg/SVGPathElement.cpp:

(WebCore::SVGPathElement::getTotalLength):
(WebCore::SVGPathElement::getPointAtLength):
(WebCore::SVGPathElement::getPathSegAtLength):
(WebCore::SVGPathElement::parseAttribute):
(WebCore::SVGPathElement::svgAttributeChanged):
(WebCore::SVGPathElement::lookupOrCreateDWrapper):
(WebCore::SVGPathElement::pathSegListChanged):

  • svg/SVGPathParserFactory.h: Removed.
  • svg/SVGPathSegList.cpp:

(WebCore::SVGPathSegList::valueAsString):

  • svg/SVGPathUtilities.cpp: Renamed from Source/WebCore/svg/SVGPathParserFactory.cpp.

(WebCore):
(WebCore::globalSVGPathBuilder):
(WebCore::globalSVGPathSegListBuilder):
(WebCore::globalSVGPathByteStreamBuilder):
(WebCore::globalSVGPathStringBuilder):
(WebCore::globalSVGPathTraversalStateBuilder):
(WebCore::globalSVGPathParser):
(WebCore::globalSVGPathBlender):
(WebCore::buildPathFromString):
(WebCore::buildSVGPathByteStreamFromSVGPathSegList):
(WebCore::buildPathFromByteStream):
(WebCore::buildSVGPathSegListFromByteStream):
(WebCore::buildStringFromByteStream):
(WebCore::buildStringFromSVGPathSegList):
(WebCore::buildSVGPathByteStreamFromString):
(WebCore::buildAnimatedSVGPathByteStream):
(WebCore::addToSVGPathByteStream):
(WebCore::getSVGPathSegAtLengthFromSVGPathByteStream):
(WebCore::getTotalLengthOfSVGPathByteStream):
(WebCore::getPointAtLengthOfSVGPathByteStream):

  • svg/SVGPathUtilities.h: Added.

(WebCore):

  • svg/properties/SVGAnimatedPathSegListPropertyTearOff.h:

(WebCore::SVGAnimatedPathSegListPropertyTearOff::animValDidChange):

2:20 AM Changeset in webkit [115559] by yurys@chromium.org
  • 3 edits in trunk/Source/WebKit2

Unreviewed. Added new exported symbols after r115553.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
2:16 AM Changeset in webkit [115558] by Nikolas Zimmermann
  • 2 edits in trunk/Source/WebCore

2012-04-28 Nikolas Zimmermann <nzimmermann@rim.com>

Fix repetitions & by animation support for path animations
https://bugs.webkit.org/show_bug.cgi?id=85071

Rubber-stamped by Antti Koivisto.

Cleanup SVGPathBlender, to make it more readable.

  • svg/SVGPathBlender.cpp: (WebCore::SVGPathBlender::blendLineToHorizontalSegment): (WebCore::SVGPathBlender::blendLineToVerticalSegment): (WebCore::SVGPathBlender::blendArcToSegment): (WebCore::SVGPathBlender::blendAnimatedPath):
2:07 AM Changeset in webkit [115557] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

2012-04-28 Yury Semikhatsky <yurys@chromium.org>

Unreviewed. Qt build fix: added new exported symbols.

  • WebCore.exp.in:
1:49 AM Changeset in webkit [115556] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix Qt minimal build after r115553.

  • inspector/InspectorConsoleAgent.h:
1:27 AM Changeset in webkit [115555] by Nikolas Zimmermann
  • 12 edits
    4 adds in trunk

Fix repetitions & by animation support for path animations
https://bugs.webkit.org/show_bug.cgi?id=85071

Reviewed by Antti Koivisto.

Source/WebCore:

Implement additive="sum" / by-animation support for path animations, eg.
<path d="M 10 10 L 10 100 Z">

<animate attributeName="d" begin="0s" dur="4s" by="M 0 0 L 90 0 Z"/>

<path>

animates the d attribute to "M 10 10 L 100 100 0 Z".

Now only <animateColor> and <animateMotion> are left to be fixed, all other types are working as expected now in all additive/accumulate/from-by/by/from-to animations.

Tests: svg/animations/path-animation-expected.svg

svg/animations/repeating-path-animation-expected.svg
svg/animations/repeating-path-animation.svg

  • svg/SVGAnimatedPath.cpp:

(WebCore::SVGAnimatedPathAnimator::addAnimatedTypes): Implemented, to support by-animations, instead of falling back to to-animations.
(WebCore::SVGAnimatedPathAnimator::calculateAnimatedValue): Handle repetitions, accumulation & addition.

  • svg/SVGPathBlender.cpp: Allow empty from source everywhere, use default values if no from value is specified, needed for by-animations.

(WebCore::SVGPathBlender::SVGPathBlender):
(WebCore::SVGPathBlender::blendAnimatedDimensonalFloat):
(WebCore::SVGPathBlender::blendAnimatedFloatPoint):
(WebCore::SVGPathBlender::blendMoveToSegment):
(WebCore::SVGPathBlender::blendLineToSegment):
(WebCore::SVGPathBlender::blendLineToHorizontalSegment):
(WebCore::SVGPathBlender::blendLineToVerticalSegment):
(WebCore::SVGPathBlender::blendCurveToCubicSegment):
(WebCore::SVGPathBlender::blendCurveToCubicSmoothSegment):
(WebCore::SVGPathBlender::blendCurveToQuadraticSegment):
(WebCore::SVGPathBlender::blendCurveToQuadraticSmoothSegment):
(WebCore::SVGPathBlender::blendArcToSegment):
(WebCore::SVGPathBlender::addAnimatedPath):
(WebCore::SVGPathBlender::blendAnimatedPath):

  • svg/SVGPathBlender.h: Add new addAnimatedPath function.

(SVGPathBlender):

  • svg/SVGPathByteStream.h:

(SVGPathByteStream): Make SVGPathByteStreams copyable, needed for SVGAnimatedPathAnimator.
(WebCore::SVGPathByteStream::size): Returns size of the SVGPathByteStream.

  • svg/SVGPathParserFactory.cpp:

(WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream): Allow empty from streams, needed for by animations.
(WebCore::SVGPathParserFactory::addToSVGPathByteStream): Add 'byStream' 'repeatCount' times to 'toStream'. Both streams must match in size.

  • svg/SVGPathParserFactory.h: Add new addToSVGPathByteStream function.
  • svg/SVGPointList.cpp: Remove dead code.
  • svg/SVGPointList.h: Ditto.

(SVGPointList):

LayoutTests:

  • svg/animations/path-animation.svg: Added.
  • svg/animations/path-animation-expected.svg: Added.
  • svg/animations/repeating-path-animation-expected.svg: Added.
  • svg/animations/repeating-path-animation.svg: Added.
  • svg/animations/script-tests/svgpath-animation-1.js: Correct testcase, now that by animations are supported.

(sample2):
(sample3):
(executeTest):

  • svg/animations/svgpath-animation-1-expected.txt:
1:22 AM Changeset in webkit [115554] by Nikolas Zimmermann
  • 4 edits
    25 adds in trunk

SVGAnimateMotion does not handle accumulation
https://bugs.webkit.org/show_bug.cgi?id=18564

Reviewed by Antti Koivisto.

Source/WebCore:

Implement accumulation for <animateMotion>. Add lots of new
reftests, verifying additive/accumulate behavior is correct.

Tests: svg/animations/animateMotion-additive-1-expected.svg

svg/animations/animateMotion-additive-1.svg
svg/animations/animateMotion-additive-2a-expected.svg
svg/animations/animateMotion-additive-2a.svg
svg/animations/animateMotion-additive-2b-expected.svg
svg/animations/animateMotion-additive-2b.svg
svg/animations/animateMotion-additive-2c-expected.svg
svg/animations/animateMotion-additive-2c.svg
svg/animations/animateMotion-additive-2d-expected.svg
svg/animations/animateMotion-additive-2d.svg
svg/animations/mozilla/animateMotion-by-1-expected.svg
svg/animations/mozilla/animateMotion-by-1.svg
svg/animations/mozilla/animateMotion-from-to-1-expected.svg
svg/animations/mozilla/animateMotion-from-to-1.svg
svg/animations/mozilla/animateMotion-indefinite-to-1-expected.svg
svg/animations/mozilla/animateMotion-indefinite-to-1.svg
svg/animations/mozilla/animateMotion-indefinite-to-2-expected.svg
svg/animations/mozilla/animateMotion-indefinite-to-2.svg
svg/animations/mozilla/animateMotion-mpath-pathLength-1-expected.svg
svg/animations/mozilla/animateMotion-mpath-pathLength-1.svg
svg/animations/mozilla/animateMotion-mpath-targetChange-1-expected.svg
svg/animations/mozilla/animateMotion-mpath-targetChange-1.svg
svg/animations/mozilla/animateMotion-to-overridden-1-expected.svg
svg/animations/mozilla/animateMotion-to-overridden-1.svg

  • svg/SVGAnimateMotionElement.cpp:

(WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement):
(WebCore::SVGAnimateMotionElement::buildTransformForProgress):
(WebCore::SVGAnimateMotionElement::calculateAnimatedValue):

  • svg/SVGAnimateMotionElement.h:

LayoutTests:

Import mozilla <animateMotion> reftests, and two testscases from
Dr. Olaf Hoffmanns SVG test suite, covering all additive/accumulate modes
for <animateMotion>.

  • svg/animations/animateMotion-additive-1-expected.svg: Added.
  • svg/animations/animateMotion-additive-1.svg: Added.
  • svg/animations/animateMotion-additive-2a-expected.svg: Added.
  • svg/animations/animateMotion-additive-2a.svg: Added.
  • svg/animations/animateMotion-additive-2b-expected.svg: Added.
  • svg/animations/animateMotion-additive-2b.svg: Added.
  • svg/animations/animateMotion-additive-2c-expected.svg: Added.
  • svg/animations/animateMotion-additive-2c.svg: Added.
  • svg/animations/animateMotion-additive-2d-expected.svg: Added.
  • svg/animations/animateMotion-additive-2d.svg: Added.
  • svg/animations/mozilla/animateMotion-by-1-expected.svg: Added.
  • svg/animations/mozilla/animateMotion-by-1.svg: Added.
  • svg/animations/mozilla/animateMotion-from-to-1-expected.svg: Added.
  • svg/animations/mozilla/animateMotion-from-to-1.svg: Added.
  • svg/animations/mozilla/animateMotion-indefinite-to-1-expected.svg: Added.
  • svg/animations/mozilla/animateMotion-indefinite-to-1.svg: Added.
  • svg/animations/mozilla/animateMotion-indefinite-to-2-expected.svg: Added.
  • svg/animations/mozilla/animateMotion-indefinite-to-2.svg: Added.
  • svg/animations/mozilla/animateMotion-mpath-pathLength-1-expected.svg: Added.
  • svg/animations/mozilla/animateMotion-mpath-pathLength-1.svg: Added.
  • svg/animations/mozilla/animateMotion-mpath-targetChange-1-expected.svg: Added.
  • svg/animations/mozilla/animateMotion-mpath-targetChange-1.svg: Added.
  • svg/animations/mozilla/animateMotion-to-overridden-1-expected.svg: Added.
  • svg/animations/mozilla/animateMotion-to-overridden-1.svg: Added.
1:20 AM Changeset in webkit [115553] by yurys@chromium.org
  • 13 edits
    3 adds in trunk

ScriptStateProtectedPtr should not keep a strong reference to the context
https://bugs.webkit.org/show_bug.cgi?id=85009

Source/WebCore:

Delete console message arguments when DOMWindow where the messages were created
is reset on its frame.

Reviewed by Pavel Feldman.

Test: http/tests/inspector-enabled/console-clear-arguments-on-frame-navigation.html

  • inspector/ConsoleMessage.cpp:

(WebCore::ConsoleMessage::addToFrontend):
(WebCore::ConsoleMessage::windowCleared):
(WebCore::ConsoleMessage::argumentCount):
(WebCore):

  • inspector/ConsoleMessage.h:

(ConsoleMessage):

  • inspector/InspectorConsoleAgent.cpp:

(WebCore::InspectorConsoleAgent::consoleMessageArgumentCounts):
(WebCore):

  • inspector/InspectorConsoleAgent.h:

(InspectorConsoleAgent):

  • page/Frame.cpp:

(WebCore::Frame::clearDOMWindow):
(WebCore::Frame::setDOMWindow):

  • testing/Internals.cpp:

(WebCore):
(WebCore::Internals::consoleMessageArgumentCounts):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

LayoutTests:

Test that after frame navigation all arguments passed to the console messages
created in that frame will be discarded and not prevent the frame context from
being GC'ed.

Reviewed by Pavel Feldman.

  • http/tests/inspector-enabled/console-clear-arguments-on-frame-navigation-expected.txt: Added.
  • http/tests/inspector-enabled/console-clear-arguments-on-frame-navigation.html: Added.
  • http/tests/inspector-enabled/console-clear-arguments-on-frame-remove-expected.txt:
  • http/tests/inspector-enabled/console-clear-arguments-on-frame-remove.html:
  • http/tests/inspector-enabled/resources/console-clear-arguments-test.js: Added.

(print):
(dumpConsoleMessageArgumentCounts):

  • http/tests/inspector/console-test.js:

(initialize_ConsoleTest.InspectorTest.checkConsoleMessagesDontHaveParameters):
(initialize_ConsoleTest):

1:08 AM Changeset in webkit [115552] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed weekend gardening, skip new failing tests.

  • platform/qt/Skipped:
12:02 AM Changeset in webkit [115551] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

Layout Test fast/images/gif-large-checkerboard.html is a flaky crash
https://bugs.webkit.org/show_bug.cgi?id=85073

Unreviewed text expectations update. Test has been a solid PASS for past 12 hours
since the patch for bug 85077 rolled in.

  • platform/chromium/test_expectations.txt:
Note: See TracTimeline for information about the timeline view.