Timeline


and

12/14/11:

23:00 Changeset [102896] by tkent@chromium.org

A spin button changes the value incorrectly if it is clicked after touch events.
https://bugs.webkit.org/show_bug.cgi?id=71181

Reviewed by Ryosuke Niwa.

Source/WebCore:

SpinButtonElement assumed setHovered(true) was always called before a
mousemove event in the element. It is not true for touch events.

We should not reset m_upDownState to Indetermiante in setHovered(true),
and should reset it when the mouse pointer moves out.

This change fixes the flakiness of fast/forms/input-step-as-double.html.

Test: fast/events/touch/touch-before-pressing-spin-button.html

  • html/shadow/TextControlInnerElements.cpp:

(WebCore::SpinButtonElement::defaultEventHandler):
Add an assertion that m_upDownState should not be Indetermiante.
Reset m_upDownState to Indeterminate when the mouse pointer moves out
from the element.
(WebCore::SpinButtonElement::setHovered):
Reset m_upDownState to Indeterminate when the element becomes unhovered.

LayoutTests:

  • fast/events/touch/touch-before-pressing-spin-button-expected.txt: Added.
  • fast/events/touch/touch-before-pressing-spin-button.html: Added.
  • platform/chromium/test_expectations.txt: Remove the flakiness of fast/forms/input-step-as-double.html.
  • platform/qt/Skipped: ditto.
22:57 Changeset [102895] by lforschler@apple.com

https://bugs.webkit.org/show_bug.cgi?id=74543
Add CSS*.cpp to a new CSSAllInOne.cpp file with two exceptions:

CSSProperty.cpp
CSSPrimitiveValue.cpp

Adding these two broke things with a templates problem that was not easily fixable.

Reviewed by Steve Falkenburg.

  • WebCore.vcproj/WebCore.vcproj:
  • css/CSSAllInOne.cpp: Added.
22:51 Changeset [102894] by levin@chromium.org

[chromium] DatabaseObserver needs threadsafe fixes and other clean-up.
https://bugs.webkit.org/show_bug.cgi?id=74558

Reviewed by Dmitry Titov.

Source/WebKit/chromium:

The important part of this fix is the removal of AllowCrossThreadAccess so
that ref counting happens appropriately.

Minor clean up throughout: Removed unnecessary WTF prefix in many
of these places and unnecessary String().

  • src/DatabaseObserver.cpp:

(WebKit::AllowDatabaseMainThreadBridge::create):
(WebKit::AllowDatabaseMainThreadBridge::signalCompleted): Get rid of
AllowCrossThreadAccess so that "this" get ref counted and remove mode from being
a member variable since a String in a ThreadSafeRefCounted class is bad.
(WebKit::AllowDatabaseMainThreadBridge::AllowDatabaseMainThreadBridge): Ditto.
(WebKit::AllowDatabaseMainThreadBridge::allowDatabaseTask): Pass through mode
and minor code cleaning to do only one call to signalCompleted.
(WebKit::allowDatabaseForWorker): Just removed unnecessary String()'s.

LayoutTests:

Added a test which would fail without some of these fixes.

  • http/tests/workers/interrupt-database-sync-open-crash.html: Added.
  • http/tests/workers/resources/open-database-sync.js: Added.

(onmessage):

22:48 Changeset [102893] by timothy_horton@apple.com

Generated images should respect the accelerated state of the context they're going to be drawn into
https://bugs.webkit.org/show_bug.cgi?id=74577
<rdar://problem/10584392>

Reviewed by Simon Fraser.

The tiled code path for GeneratorGeneratedImage and CrossfadeGeneratedImage blindly creates
an unaccelerated ImageBuffer. Instead, take into account the accelerated state of the destination context.

No new tests, as this is a simple performance improvement.

  • platform/graphics/CrossfadeGeneratedImage.cpp:

(WebCore::CrossfadeGeneratedImage::drawPattern):

  • platform/graphics/GeneratorGeneratedImage.cpp:

(WebCore::GeneratorGeneratedImage::drawPattern):

22:36 Changeset [102892] by gyuyoung.kim@samsung.com

[EFL] Change efl style variable name with WebKit style for internal functions.
https://bugs.webkit.org/show_bug.cgi?id=74474

Reviewed by Ryosuke Niwa.

In order to be more compliant with WebKit coding style, variable names of internal functions
should be changed with WebKit coding style.

  • ewk/ewk_private.h:
  • ewk/ewk_view.cpp:

(ewk_view_scroll):

22:34 Changeset [102891] by tony@chromium.org

[chromium] Remove redundant third_party entries from chromium DEPS
https://bugs.webkit.org/show_bug.cgi?id=74472

Reviewed by Kenneth Russell.

Source/WebKit/chromium:

Removed redundant DEPS entries for third_party subdirectories
coming from chromium_svn, which were causing intermittent gclient
failures on the bots.

  • DEPS:

Tools:

  • Scripts/update-webkit-chromium: Temporarily keep unversioned trees.
22:32 Changeset [102890] by haraken@chromium.org

[Refactoring] In prepare-ChangeLog, replace $isGit and $isSVN with
VCSUtils::isGit() and VCSUtils::isSVN().
https://bugs.webkit.org/show_bug.cgi?id=74485

Reviewed by David Kilzer.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. This patch replaces $isGit and $isSVN
with VCSUtils::isGit() and VCSUtils::isSVN(). This patch also removes firstDirectoryOrCwd(),
assuming that no user will mix Git/SVN checkouts and thus we can judge SVN or Git
just by looking at the current working directory.

  • Scripts/prepare-ChangeLog: Removed firstDirectoryOrCwd().

(diffFromToString):
(diffCommand):
(statusCommand):
(createPatchCommand):
(diffHeaderFormat):
(generateFileList):
(isAddedStatus):
(isConflictStatus):
(statusDescription):
(extractLineRange):

22:25 Changeset [102889] by loislo@chromium.org

Web Inspector: cleanup unused variable introduced at r102803

  • inspector/front-end/NetworkManager.js:

(WebInspector.NetworkManager.prototype.enableResourceTracking):
(WebInspector.NetworkManager.prototype.disableResourceTracking):

22:14 Changeset [102888] by commit-queue@webkit.org

fast path to accelerate processing in AudioBus::processWithGainFromMonoStereo
https://bugs.webkit.org/show_bug.cgi?id=74054

Patch by Wei James <james.wei@intel.com> on 2011-12-14
Reviewed by Kenneth Russell.

Avoid de-zippering when the gain has converged on the targetGain.
It can get about 75% performance gain at most when all frames don't need
de-zippering.

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::processWithGainFromMonoStereo):

22:14 Changeset [102887] by commit-queue@webkit.org

Increase maximum number of gamepad buttons in Chromium port interface
https://bugs.webkit.org/show_bug.cgi?id=74559

Patch by Scott Graham <scottmg@chromium.org> on 2011-12-14
Reviewed by Darin Fisher.

  • public/platform/WebGamepad.h:
21:55 Changeset [102886] by tkent@chromium.org

[Chromium] Test expectatino update.

  • Rebaseline for basic-selects.html.
  • Move menulist-onchange-fired-with-key-up-down.html to the WONTFIX section.
  • Remove a duplicated entry.
  • platform/chromium-cg-mac-leopard/fast/forms/basic-selects-expected.png:
  • platform/chromium-cg-mac-leopard/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-cg-mac-snowleopard/fast/forms/basic-selects-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-cg-mac/fast/forms/basic-selects-expected.png: Removed.
  • platform/chromium-linux-x86/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/forms/basic-selects-expected.txt.
  • platform/chromium-linux/fast/forms/basic-selects-expected.png:
  • platform/chromium-linux/fast/forms/basic-selects-expected.txt:
  • platform/chromium-mac-leopard/fast/forms/basic-selects-expected.png: Added.
  • platform/chromium-mac-leopard/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-mac/fast/forms/basic-selects-expected.png: Removed.
  • platform/chromium-win-vista/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/basic-selects-expected.txt.
  • platform/chromium-win-xp/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/basic-selects-expected.txt.
  • platform/chromium-win/fast/forms/basic-selects-expected.png:
  • platform/chromium-win/fast/forms/basic-selects-expected.txt:
  • platform/chromium/test_expectations.txt:
21:48 Changeset [102885] by weinig@apple.com

Revert unintentional change to JavaScriptCore.def

21:47 Changeset [102884] by tkent@chromium.org

[Mac] Skip menulist-popup-crash.html because of timeout.
https://bugs.webkit.org/show_bug.cgi?id=73304

  • platform/mac/Skipped:
21:40 Changeset [102883] by tkent@chromium.org

Opening two popup menus by dispatchEvent() makes problems.
https://bugs.webkit.org/show_bug.cgi?id=73304

Patch by Jing Zhao <jingzhao@chromium.org> on 2011-12-14
Reviewed by Ryosuke Niwa.

  • WebCoreSupport/ChromeClientWinCE.cpp:

(WebKit::ChromeClientWinCE::hasOpenedPopup): Not implemented.

  • WebCoreSupport/ChromeClientWinCE.h: Overrides hasOpenedPopup().
21:26 Changeset [102882] by adamk@chromium.org

Optimize MutationObserverInterestGroup construction
https://bugs.webkit.org/show_bug.cgi?id=74563

Reviewed by Ojan Vafai.

Inline MutationObserverInterestGroup's creation methods and fix an
accidental pass-by-value in an attempt to further reduce the CPU
footprint of MutationObservers.

No new tests, refactor only.

  • dom/WebKitMutationObserver.cpp:

(WebCore::MutationObserverInterestGroup::MutationObserverInterestGroup): Pass observers HashMap by reference.

  • dom/WebKitMutationObserver.h:

(WebCore::MutationObserverInterestGroup::createForChildListMutation): Inline.
(WebCore::MutationObserverInterestGroup::createForCharacterDataMutation): Inline.
(WebCore::MutationObserverInterestGroup::createForAttributesMutation): Inline.
(WebCore::MutationObserverInterestGroup::hasOldValue): Remove spurious inline keyword.

21:22 Changeset [102881] by bashi@chromium.org

Unreviewed, rolling out r102873.
http://trac.webkit.org/changeset/102873
https://bugs.webkit.org/show_bug.cgi?id=64434

Break the build

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-14

  • public/WebPlugin.h:
  • src/WebPluginContainerImpl.cpp:
  • src/WebPluginContainerImpl.h:
21:20 Changeset [102880] by morrita@google.com

Unreviewed test_expectations.txt update.

  • platform/chromium/test_expectations.txt:
21:08 Changeset [102879] by rniwa@webkit.org

Mac build fix after r102874.

  • WebCoreSupport/WebChromeClient.mm:
20:52 Changeset [102878] by morrita@google.com

Unreviewed expectation update.

  • platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt: Removed.
20:40 Changeset [102877] by dmazzoni@google.com

Seeing crash in DRT after loading-iframe-sends-notification.html land
https://bugs.webkit.org/show_bug.cgi?id=72624

Source/WebCore:

When an iframe finishes loading, send an accessibility notification
on the renderer, rather than on a parent node. The only reason it was
being posted on a parent before was because there was no way to detect
that in a test. This is simpler and now covered by the test.

Reviewed by Chris Fleizach.

Updates existing test:
accessibility/loading-iframe-sends-notification.html

  • dom/Document.cpp:

(WebCore::Document::implicitClose):

LayoutTests:

Rewrite test to use a global addNotificationListener, which makes it
more robust and cross-platform.

Reviewed by Chris Fleizach.

  • accessibility/loading-iframe-sends-notification-expected.txt: Added.
  • accessibility/loading-iframe-sends-notification.html:
  • platform/chromium/accessibility/loading-iframe-sends-notification-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/gtk/accessibility/loading-iframe-sends-notification-expected.txt: Removed.
  • platform/mac/Skipped:
  • platform/win/Skipped:
20:37 Changeset [102876] by nduca@chromium.org

[chromium] Add inhibitDraw to CCScheduler and drop root impl to prevent background flash on tab restore
https://bugs.webkit.org/show_bug.cgi?id=74351

Reviewed by James Robinson.

Source/WebCore:

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

(WebCore::CCLayerTreeHost::setNeedsCommit):
(WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):

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

(WebCore::CCScheduler::getNextAction):
(WebCore::CCScheduler::processScheduledActions):

  • platform/graphics/chromium/cc/CCScheduler.h:
  • platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:

(WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
(WebCore::CCSchedulerStateMachine::nextAction):

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

(WebCore::CCSchedulerStateMachine::setInhibitDraw):

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

(WebCore::CCThreadProxy::setVisibleOnImplThread):
(WebCore::CCThreadProxy::inhibitDraw):

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

Source/WebKit/chromium:

  • tests/CCSchedulerStateMachineTest.cpp:

(WebCore::StateMachine::inhibitDraw):
(WebCore::TEST):

  • tests/CCSchedulerTest.cpp:

(WebKitTests::FakeCCSchedulerClient::setInhibitDraw):
(WebKitTests::FakeCCSchedulerClient::inhibitDraw):
(WebKitTests::SchedulerClientThatSetNeedsDrawInsideDraw::inhibitDraw):
(WebKitTests::SchedulerClientThatSetNeedsCommitInsideDraw::inhibitDraw):

20:19 Changeset [102875] by commit-queue@webkit.org

Crash due to incorrect parsing of isolates
https://bugs.webkit.org/show_bug.cgi?id=74311
When <bdi> content is wrapped, all hell breaks loose
https://bugs.webkit.org/show_bug.cgi?id=74396

Patch by Ken Buchanan <kenrb@chromium.org> on 2011-12-14
Reviewed by Eric Seidel.

Source/WebCore:

When an isolate was encountered during run layout, the entire isolate
would be parsed, even if the run started in the middle of the isolate.
This would sometimes cause parts of the isolate to be added multiple
times as runs. This patch marks the starting position within the
isolate so nothing is parsed twice.

This patch changes appendRun() so that when a run is added that is
inside an isolate, it saves the start position of the run rather than
the root. This allows constructBidiRuns() to resume parsing the
isolate from the correct position.

The change to RenderBox partially reverts a previous change I had
done. It makes sense to screen for the condition, as was previously
the case.

This patch does not add the test case from 74396 because a separate
bug is preventing it from rendering correctly.

  • rendering/InlineIterator.h:

(WebCore::addPlaceholderRunForIsolatedInline)
(WebCore::IsolateTracker::addFakeRunIfNecessary)
(WebCore::InlineBidiResolver::appendRun)

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockLineLayout::constructBidiRuns)

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::positionLineBox)

LayoutTests:

Layout test has multiple lines inside an isolate to ensure each run
is created only once.

The test that is in bug 74396 will have to be added once bug 74489 is
fixed.

  • LayoutTests/fast/text/international/multiline-and-object-inside-isolate-crash-expected.txt: Added
  • LayoutTests/fast/text/international/multiline-and-object-inside-isolate-crash.html: Added
20:16 Changeset [102874] by commit-queue@webkit.org

Opening two popup menus by dispatchEvent() makes problems.
https://bugs.webkit.org/show_bug.cgi?id=73304

Patch by Jing Zhao <jingzhao@chromium.org> on 2011-12-14
Reviewed by Kent Tamura.

Source/WebCore:

By using element.dispatchEvent(), a user written script can open two
popup menus, which causes various problems in different platforms.

Add a hasOpenedPopup() method in ChromeClient and a wrapper in Chrome.
In RenderMenuList::showPopup(), check if there is an opened popup menu
before opening a new popup menu.

Test: fast/forms/select-popup-crash.html

  • loader/EmptyClients.h: Overrides hasOpenedPopup().

(WebCore::EmptyChromeClient::hasOpenedPopup): Returns false as a default case.

  • page/Chrome.cpp:

(WebCore::Chrome::hasOpenedPopup): Calls ChromeClient::hasOpenedPopup().

  • page/Chrome.h: Declares hasOpenedPopup().
  • page/ChromeClient.h: Declares hasOpenedPopup() as a pure virtual function.
  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::showPopup): Calls Chrome::hasOpenedPopup() before opening a new popup menu.

Source/WebKit/chromium:

By using element.dispatchEvent(), a user written script can open two
popup menus, which causes the assertion in WebViewImpl::popupOpened()
fail.

ChromeClientImpl::hasOpenedPopup() is called by Chrome::hasOpenedPopup()
in RenderMenuList::showPopup(), to check if there is an opened popup
menu before opening a new popup menu.

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::hasOpenedPopup): Checks the popup in WebViewImpl.

  • src/ChromeClientImpl.h: Overrides hasOpenedPopup().

Source/WebKit/efl:

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::hasOpenedPopup): Not implemented.

  • WebCoreSupport/ChromeClientEfl.h: Overrides hasOpenedPopup().

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::hasOpenedPopup): Not implemented.

  • WebCoreSupport/ChromeClientGtk.h: Overrides hasOpenedPopup().

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::hasOpenedPopup): Not implemented.

Source/WebKit/qt:

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::ChromeClientQt::hasOpenedPopup): Not implemented.

  • WebCoreSupport/ChromeClientQt.h: Overrides hasOpenedPopup().

Source/WebKit/win:

  • WebCoreSupport/WebChromeClient.cpp:

(WebChromeClient::hasOpenedPopup): Not implemented.

  • WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::hasOpenedPopup): Not implemented.

  • WebProcess/WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().

LayoutTests:

  • fast/forms/select/menulist-popup-crash-expected.txt: Added.
  • fast/forms/select/menulist-popup-crash.html: Added.
19:39 Changeset [102873] by bashi@chromium.org

[Chromium] Implement PluginViewBase::getFormValue
https://bugs.webkit.org/show_bug.cgi?id=64434

Adds getFormValue() to WebPluginContainerImpl as an implementation of PluginViewBase::getFormValue().

Reviewed by Darin Fisher.

No new tests. No behavior change at this time. We should add a test for PPAPI after chromium supports the feature.

  • public/WebPlugin.h: Added getFormValue().
  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::getFormValue): Added.

  • src/WebPluginContainerImpl.h: Added getFormValue().
19:24 Changeset [102872] by tony@chromium.org

Clean up style in CSSStyleSelector.cpp
https://bugs.webkit.org/show_bug.cgi?id=74548

Reviewed by Ojan Vafai.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

19:22 Changeset [102871] by kbr@google.com

Unreviewed, rolling out r102794.
http://trac.webkit.org/changeset/102794
https://bugs.webkit.org/show_bug.cgi?id=74220

Reapplying patch since it is not the cause of the problems
described in bug 74220.

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:
  • bindings/v8/custom/V8CustomXPathNSResolver.cpp:

(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

18:30 Changeset [102870] by morrita@google.com

Unreviewed expectation update.

  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-cg-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-cg-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-cg-mac-snowleopard/platform/chromium/compositing/huge-layer-rotated-expected.png:
  • platform/chromium-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt: Renamed from LayoutTests/platform/chromium/svg/css/getComputedStyle-basic-expected.txt.
  • platform/chromium-win-xp/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
  • platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
  • platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Copied from LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
  • platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
18:28 Changeset [102869] by mrowe@apple.com

Build fix.

Clear the executable bit from header files. They don't need it.

18:20 Changeset [102868] by lforschler@apple.com

Merged r102640.

18:14 Changeset [102867] by weinig@apple.com

Remove whitespace from InheritedPropertySheets attributes in
vsprops files to appease the Visual Studio project migrator.

Patch by Sam Weinig <weinig@apple.com> on 2011-12-14
Reviewed by Adam Roben.

Source/JavaScriptCore:

Source/WebCore:

  • WebCore.vcproj/QTMovieWinDebug.vsprops:
  • WebCore.vcproj/QTMovieWinDebugAll.vsprops:
  • WebCore.vcproj/QTMovieWinDebugCairoCFLite.vsprops:
  • WebCore.vcproj/QTMovieWinProduction.vsprops:
  • WebCore.vcproj/QTMovieWinRelease.vsprops:
  • WebCore.vcproj/QTMovieWinReleaseCairoCFLite.vsprops:
  • WebCore.vcproj/WebCoreDebug.vsprops:
  • WebCore.vcproj/WebCoreDebugAll.vsprops:
  • WebCore.vcproj/WebCoreDebugCairoCFLite.vsprops:
  • WebCore.vcproj/WebCoreProduction.vsprops:
  • WebCore.vcproj/WebCoreRelease.vsprops:
  • WebCore.vcproj/WebCoreReleaseCairoCFLite.vsprops:

Source/WebKit/win:

  • WebKit.vcproj/InterfacesDebug.vsprops:
  • WebKit.vcproj/InterfacesDebugAll.vsprops:
  • WebKit.vcproj/InterfacesDebugCairoCFLite.vsprops:
  • WebKit.vcproj/InterfacesProduction.vsprops:
  • WebKit.vcproj/InterfacesRelease.vsprops:
  • WebKit.vcproj/InterfacesReleaseCairoCFLite.vsprops:
  • WebKit.vcproj/WebKitGUIDDebug.vsprops:
  • WebKit.vcproj/WebKitGUIDDebugAll.vsprops:
  • WebKit.vcproj/WebKitGUIDDebugCairoCFLite.vsprops:
  • WebKit.vcproj/WebKitGUIDProduction.vsprops:
  • WebKit.vcproj/WebKitGUIDRelease.vsprops:
  • WebKit.vcproj/WebKitGUIDReleaseCairoCFLite.vsprops:
  • WebKit.vcproj/WebKitLibDebug.vsprops:
  • WebKit.vcproj/WebKitLibDebugAll.vsprops:
  • WebKit.vcproj/WebKitLibDebugCairoCFLite.vsprops:
  • WebKit.vcproj/WebKitLibProduction.vsprops:
  • WebKit.vcproj/WebKitLibRelease.vsprops:
  • WebKit.vcproj/WebKitLibReleaseCairoCFLite.vsprops:

Source/WebKit2:

  • win/WebKit2Debug.vsprops:
  • win/WebKit2DebugAll.vsprops:
  • win/WebKit2DebugCairoCFLite.vsprops:
  • win/WebKit2Production.vsprops:
  • win/WebKit2Release.vsprops:
  • win/WebKit2ReleaseCairoCFLite.vsprops:
  • win/WebKit2WebProcessDebug.vsprops:
  • win/WebKit2WebProcessDebugAll.vsprops:
  • win/WebKit2WebProcessDebugCairoCFLite.vsprops:
  • win/WebKit2WebProcessProduction.vsprops:
  • win/WebKit2WebProcessRelease.vsprops:
  • win/WebKit2WebProcessReleaseCairoCFLite.vsprops:
18:10 Changeset [102866] by andersca@apple.com

Add WorkQueue::dispatch and RunLoop::dispatch which both take WTF::Function objects
https://bugs.webkit.org/show_bug.cgi?id=74574

Reviewed by Sam Weinig.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::SyncMessageState::processIncomingMessage):
(CoreIPC::Connection::addQueueClient):
(CoreIPC::Connection::removeQueueClient):
(CoreIPC::Connection::invalidate):
(CoreIPC::Connection::sendMessage):
(CoreIPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
(CoreIPC::Connection::connectionDidClose):
(CoreIPC::Connection::enqueueIncomingMessage):
Switch over to dispatch.

  • Platform/RunLoop.cpp:

(RunLoop::dispatch):
Create a FunctionWorkItem and call scheduleWork.

  • Platform/RunLoop.h:

Add dispatch.

  • Platform/WorkItem.h:

(FunctionWorkItem::FunctionWorkItem):
(FunctionWorkItem::execute):
(WorkItem::create):
Add a helper work item that wraps a WTF::Function.

  • Platform/WorkQueue.cpp:

(WorkQueue::dispatch):
Create a FunctionWorkItem and call scheduleWork.

  • Platform/WorkQueue.h:

Add dispatch.

  • UIProcess/Launcher/ProcessLauncher.cpp:

(WebKit::ProcessLauncher::ProcessLauncher):
Switch over to dispatch.

18:05 Changeset [102865] by lforschler@apple.com

Merged r102856.

18:04 Changeset [102864] by enrica@apple.com

One more attempt to fix the release build (hopefully the last)

Unreviewed.

  • editing/ReplaceSelectionCommand.cpp: Added NodeRenderStyle.h
18:02 Changeset [102863] by commit-queue@webkit.org

[chromium] Fix CCLayerTreeHostTest shutdown race
https://bugs.webkit.org/show_bug.cgi?id=73926

This patch fixes a shutdown race condition in CCLayerTreeHostTest which
may happen if endTest() is called from within the drawLayersOnCCThread()
test hook. The sequence of events leading to the problem is:

  1. CCThreadProxy::scheduledActionDrawAndSwap() is called when a frame begins.
  2. CCThreadProxy calls drawLayersOnCCThread(), which in turn calls endTest().
  3. Seeing it's not running in the main thread, endTest() posts a task calling itself in the main thread.
  4. CCThreadProxy posts a task for calling didCommitAndDrawFrame() in the main thread.

The race is between the task posted in step #3 and the CC thread running
in scheduledActionDrawAndSwap(). If the endTask() task is scheduled
before the CC thread reaches step #4, it drains the pending message
queue (CCLayerTreeHostTest.cpp:369) before the task in step #4 is
posted.

The result is that the didCommitAndDrawFrame() task is executed after
the test fixture has been torn down, causing a read of unallocated
memory in CCScopedThreadProxy::runTaskIfNotShutdown (as m_targetThread
is no longer valid).

The fix is check m_shutdown before touching m_targetThread in
CCScopedThreadProxy. That is, events will still be queued after shutdown
but they will not be processed.

Patch by Sami Kyostila <skyostil@chromium.org> on 2011-12-14
Reviewed by James Robinson.

18:01 Changeset [102862] by weinig@apple.com

Remove whitespace from InheritedPropertySheets attributes in
vsprops files to appease the Visual Studio project migrator.

Patch by Sam Weinig <weinig@apple.com> on 2011-12-14
Reviewed by Adam Roben.

  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebug.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebugAll.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebugCairoCFLite.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginProduction.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginRelease.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginReleaseCairoCFLite.vsprops:
  • DumpRenderTree/win/DumpRenderTreeDebug.vsprops:
  • DumpRenderTree/win/DumpRenderTreeDebugAll.vsprops:
  • DumpRenderTree/win/DumpRenderTreeDebugCairoCFLite.vsprops:
  • DumpRenderTree/win/DumpRenderTreeProduction.vsprops:
  • DumpRenderTree/win/DumpRenderTreeRelease.vsprops:
  • DumpRenderTree/win/DumpRenderTreeReleaseCairoCFLite.vsprops:
  • DumpRenderTree/win/ImageDiffDebug.vsprops:
  • DumpRenderTree/win/ImageDiffDebugAll.vsprops:
  • DumpRenderTree/win/ImageDiffDebugCairoCFLite.vsprops:
  • DumpRenderTree/win/ImageDiffProduction.vsprops:
  • DumpRenderTree/win/ImageDiffRelease.vsprops:
  • DumpRenderTree/win/ImageDiffReleaseCairoCFLite.vsprops:
  • MiniBrowser/Configurations/MiniBrowserDebug.vsprops:
  • MiniBrowser/Configurations/MiniBrowserDebugAll.vsprops:
  • MiniBrowser/Configurations/MiniBrowserDebugCairoCFLite.vsprops:
  • MiniBrowser/Configurations/MiniBrowserProduction.vsprops:
  • MiniBrowser/Configurations/MiniBrowserRelease.vsprops:
  • MiniBrowser/Configurations/MiniBrowserReleaseCairoCFLite.vsprops:
  • TestWebKitAPI/Configurations/TestWebKitAPIRelease.vsprops:
  • TestWebKitAPI/Configurations/TestWebKitAPIReleaseCairoCFLite.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinDebug.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinDebugAll.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinDebugCairoCFLite.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinProduction.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinRelease.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinReleaseCairoCFLite.vsprops:
  • WebKitTestRunner/win/InjectedBundleDebug.vsprops:
  • WebKitTestRunner/win/InjectedBundleDebugAll.vsprops:
  • WebKitTestRunner/win/InjectedBundleDebugCairoCFLite.vsprops:
  • WebKitTestRunner/win/InjectedBundleProduction.vsprops:
  • WebKitTestRunner/win/InjectedBundleRelease.vsprops:
  • WebKitTestRunner/win/InjectedBundleReleaseCairoCFLite.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerDebug.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerDebugAll.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerDebugCairoCFLite.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerProduction.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerRelease.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerReleaseCairoCFLite.vsprops:
  • WinLauncher/WinLauncherDebug.vsprops:
  • WinLauncher/WinLauncherDebugAll.vsprops:
  • WinLauncher/WinLauncherDebugCairoCFLite.vsprops:
  • WinLauncher/WinLauncherProduction.vsprops:
  • WinLauncher/WinLauncherRelease.vsprops:
  • WinLauncher/WinLauncherReleaseCairoCFLite.vsprops:
  • record-memory-win/record-memory-winDebug.vsprops:
  • record-memory-win/record-memory-winDebugAll.vsprops:
  • record-memory-win/record-memory-winDebugCairoCFLite.vsprops:
  • record-memory-win/record-memory-winProduction.vsprops:
  • record-memory-win/record-memory-winRelease.vsprops:
  • record-memory-win/record-memory-winReleaseCairoCFLite.vsprops:
17:59 Changeset [102861] by lforschler@apple.com

Merged r102728.

17:57 Changeset [102860] by andersca@apple.com

Windows build fix.

Move CHECKs out of the destructor.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:

(TestWebKitAPI::B::~B):
(TestWebKitAPI::TEST):

17:51 Changeset [102859] by lforschler@apple.com

Merged r102709.

17:38 Changeset [102858] by kbr@google.com

Unreviewed, rolling out r102816.
http://trac.webkit.org/changeset/102816
https://bugs.webkit.org/show_bug.cgi?id=74415

Implicated in font-related crashes on Chromium canaries.

  • platform/graphics/chromium/FontChromiumWin.cpp:

(WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
(WebCore::Font::drawGlyphs):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:

(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::~FontPlatformData):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.h:

(WebCore::FontPlatformData::size):
(WebCore::FontPlatformData::hash):

  • platform/graphics/skia/SkiaFontWin.cpp:

(WebCore::setupPaintForFont):
(WebCore::paintSkiaText):

  • platform/graphics/skia/SkiaFontWin.h:
17:37 Changeset [102857] by andersca@apple.com

binding a member function should ref/deref the object pointer if needed
https://bugs.webkit.org/show_bug.cgi?id=74552

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add a HasRefAndDeref helper class template which checks if a given class type has ref and deref
member functions which the right type. Use this to determine if we should ref/deref the first parameter.

  • wtf/Functional.h:

(WTF::R):
(WTF::C::):
(WTF::RefAndDeref::ref):
(WTF::RefAndDeref::deref):

Tools:

Add new tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:

(TestWebKitAPI::B::B):
(TestWebKitAPI::B::~B):
(TestWebKitAPI::B::ref):
(TestWebKitAPI::B::deref):
(TestWebKitAPI::B::f):
(TestWebKitAPI::B::g):
(TestWebKitAPI::TEST):

17:30 Changeset [102856] by msaboff@apple.com
17:30 Changeset [102855] by simon.fraser@apple.com

Filter amounts should accept percentages
https://bugs.webkit.org/show_bug.cgi?id=74531

Source/WebCore:

Reviewed by Chris Marrin.

Support percentage arguments for some filter functions, using the FPercent flag
to validUnit(). Fix CSSStyleSelector::createFilterOperations() to do the divide by 100
for percentages.

Replaced isValidFilterArgument(), which just tested arguments one by one for validity, with
parseBuiltinFilterArguments() which tests and creates the CSSValues at the same time, which
is a little more efficient. It also allows filter-specific behavior to be more localized in this
method.

Covered by existing tests.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseBuiltinFilterArguments):
(WebCore::CSSParser::parseFilter):

  • css/CSSParser.h:
  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::createFilterOperations):

LayoutTests:

Reviewed by Chris Marrin.

Adjust test results now that percentages are allowed for some
filter arguments, and add testing of percentage arguments to filter-property-computed-style.js

  • css3/filters/filter-property-computed-style-expected.txt:
  • css3/filters/filter-property-parsing-invalid-expected.txt:
  • css3/filters/script-tests/filter-property-computed-style.js:
  • css3/filters/script-tests/filter-property-parsing-invalid.js:
17:24 Changeset [102854] by enrica@apple.com

Build fix.

Unreviewed.

  • editing/ReplaceSelectionCommand.cpp: Added include RenderStyle.h
17:17 Changeset [102853] by enrica@apple.com

Updating test results after r102846

Unreviewed.

  • platform/chromium-win/editing/pasteboard/paste-text-013-expected.txt:
  • platform/chromium-win/editing/pasteboard/paste-text-014-expected.txt:
17:15 Changeset [102852] by lforschler@apple.com

Merge 102691.

17:08 Changeset [102851] by lforschler@apple.com

Merged r97524.

17:07 Changeset [102850] by lforschler@apple.com

Merged r97502.

16:51 Changeset [102849] by commit-queue@webkit.org

JS_INLINE and WTF_INLINE should be visible from WebCore
https://bugs.webkit.org/show_bug.cgi?id=73191

Source/JavaScriptCore:

  • Moved Export related macro definitions from config.h to ExportMacros.h and JSExportMacros.h.
  • Moved WTF_USE_JSC and WTF_USE_V8 from various config.h family to Platform.h.
  • Replaced JS_EXPORTDATA in wtf moudule with newly introduced WTF_EXPORTDATA.

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • config.h:
  • runtime/JSExportMacros.h: Added.
  • wtf/ExportMacros.h:
  • wtf/Platform.h:
  • wtf/WTFThreadData.h:
  • wtf/text/AtomicString.h:
  • wtf/text/StringStatics.cpp:

Source/JavaScriptGlue:

  • Extracted export related macro definitions to ExportMacros.h and JSExportMacros.h
  • Added forwarding headers which used in config.h

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

  • ForwardingHeaders/runtime/JSExportMacros.h: Added.
  • ForwardingHeaders/wtf/ExportMacros.h: Added.
  • config.h:

Source/WebCore:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

  • Moved export related definitions from config.h to ExportMacros.h, JSExportMacros.h and PlatformExportMacros.h
  • Added forwarding headers which are referred from config.h

No new tests. Only build related changes.

  • ForwardingHeaders/runtime/JSExportMacros.h: Added.
  • ForwardingHeaders/wtf/ExportMacros.h: Added.
  • WebCore.xcodeproj/project.pbxproj:
  • config.h:
  • platform/PlatformExportMacros.h: Copied from Source/JavaScriptCore/wtf/ExportMacros.h.

Source/WebKit/cf:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

  • WebCoreSupport/WebInspectorClientCF.cpp:

Source/WebKit/mac:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

  • WebKitPrefix.h:

Source/WebKit/qt:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Added a INCLUDEPATH to make JSExportMacros.h visible.

  • tests/MIMESniffing/MIMESniffing.pro

Source/WebKit2:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

  • config.h:

Tools:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

  • DumpRenderTree/chromium/config.h:
  • DumpRenderTree/config.h:
  • DumpRenderTree/ForwardingHeaders/runtime/JSExportMacros.h: Added.
  • DumpRenderTree/ForwardingHeaders/wtf/ExportMacros.h: Added.
  • DumpRenderTree/win/DumpRenderTreePreBuild.cmd: Add new ForwardingHeaders.
  • TestWebKitAPI/config.h:
  • WebKitTestRunner/config.h:
16:44 Changeset [102848] by ap@apple.com

[Mac] Sandbox violation opening AppleSNBFBUserClient
https://bugs.webkit.org/show_bug.cgi?id=74560
<rdar://problem/10410896>

Reviewed by Darin Adler.

  • WebProcess/com.apple.WebProcess.sb: Just allow it.
16:41 Changeset [102847] by dslomov@google.com

Unreviewed: more specific bug for suppression of fast/workers/storage.
Bug https://bugs.webkit.org/show_bug.cgi?id=74554 with investigation results filed.

  • platform/chromium/test_expectations.txt:
16:32 Changeset [102846] by enrica@apple.com

Need a way to produce leaner markup when pasting a fragment containing verbose markup
https://bugs.webkit.org/show_bug.cgi?id=74514
<rdar://problem/10208653>

Reviewed by Ryosuke Niwa.

Source/WebCore:

This patch is another step in the direction of reducing the verbosity of the markup
produced with editing operations.
After the copied fragment is inserted in the document, it is analyzed to remove all
the elements that don't contribute to the style. The decision is made comparing the
render styles. As part of the cleanup, unstyled divs with single child element are
removed. The logic to determine the blocks that can be removed is the same used in
DeleteSelectionCommand and has been moved in CompositeEditCommand.

Test: editing/pasteboard/paste-and-sanitize.html

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::isRemovableBlock): Implements logic to determine
if a block can be removed.

  • editing/CompositeEditCommand.h: Added isRemovableBlock declaration.
  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::removeRedundantBlocks): Implemented using
isRemovableBlock from CompositeEditCommand.

  • editing/Editor.cpp:

(WebCore::Editor::replaceSelectionWithFragment): Added SanitizeFragment option.

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Added initialization
of m_sanitizeFragment member.
(WebCore::ReplaceSelectionCommand::removeRedundantMarkup): New method implementing
the cleanup logic.
(WebCore::ReplaceSelectionCommand::doApply): Added call to removeRedundantMarkup
after the fragment is inserted in the document.

  • editing/ReplaceSelectionCommand.h: Added new value to the enum CommandOption,

a new member variable and the new method declaration.

LayoutTests:

  • editing/pasteboard/paste-and-sanitize-expected.txt: Added.
  • editing/pasteboard/paste-and-sanitize.html: Added.
  • editing/pasteboard/paste-text-012-expected.txt: Updated to reflect cleanup.
  • editing/pasteboard/testcase-9507-expected.txt: Updated to reflect cleanup.
  • platform/mac/editing/pasteboard/paste-text-013-expected.txt: Updated to reflect cleanup.
  • platform/mac/editing/pasteboard/paste-text-014-expected.txt: Updated to reflect cleanup.
16:28 Changeset [102845] by kbr@google.com

Unreviewed Chromium test expectations update. Skip a problematic
test which will be fixed with the fix for an existing bug, and
mark another failure; the latter seems serious and a high-priority
bug has been filed.

  • platform/chromium/test_expectations.txt:
16:24 Changeset [102844] by lforschler@apple.com

Versioning.

16:16 Changeset [102843] by commit-queue@webkit.org

[BlackBerry] Refactor code and add some debug messages in backing store
https://bugs.webkit.org/show_bug.cgi?id=74539

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Antonio Gomes.

Refactor and get rid of the confusing and unnecessary
'renderContentOnly' flag from the family of render methods in the
backing store.
Remove the overload of the render method that takes a list of rects from
the backing store since it is just a for loop and only one place calls it.
Add a debug message to illustrate when we start showing checkerboard and
when we stop.
Fix the debug messages in the DEBUG_BACKINGSTORE so that they actually compile
and add a new message for debugging WebCore invalidation requests.
The original author is Adam Treat <atreat@rim.com>

  • blackberry/Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::resumeScreenAndBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):
(BlackBerry::WebKit::BackingStorePrivate::renderDirectToWindow):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::renderVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::renderBackingStore):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::blitContents):
(BlackBerry::WebKit::BackingStorePrivate::updateTile):
(BlackBerry::WebKit::BackingStorePrivate::invalidateWindow):

  • blackberry/Api/BackingStore_p.h:
16:15 Changeset [102842] by ojan@chromium.org

Add new expected results that were missed in r102837.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
16:12 Changeset [102841] by haraken@chromium.org

Unreviewed, rolling out r102761.
http://trac.webkit.org/changeset/102761
https://bugs.webkit.org/show_bug.cgi?id=74485

we came up with a better fix than this (see comments in bug
74485)

  • Scripts/prepare-ChangeLog:

(generateFunctionLists):
(printDiff):
(diffCommand):
(statusCommand):
(createPatchCommand):
(generateFileList):
(isAddedStatus):
(isConflictStatus):
(statusDescription):
(extractLineRange):

15:59 Changeset [102840] by lforschler@apple.com

New Tag.

15:55 Changeset [102839] by andersca@apple.com

Work around a bug in the MSVC2005 compiler
https://bugs.webkit.org/show_bug.cgi?id=74550

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add template parameters for the return types of the partial specializations of BoundFunctionImpl.

  • wtf/Functional.h:

(WTF::R):

Tools:

Re-enable tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:
15:50 Changeset [102838] by enne@google.com

[chromium] Refactor tile drawing to be more data-driven
https://bugs.webkit.org/show_bug.cgi?id=73059

Reviewed by James Robinson.

Source/WebCore:

Partially tested by compositor layout tests. Debug borders and
checkerboarding tested manually.

This is the first part of a move towards rendering quads on screen
from a bag of data rather than in virtual CCLayerImpl::draw functions.

CCDrawQuad-derived classes store material-specific pieces of data to
use when rendering. CCLayerImpl classes now create these CCDrawQuad
objects rather than issuing direct GL commands. Where this data is
shared between quads that come from the same layer, that data is
stored in a CCSharedQuadState object rather than duplicated.

CCRenderPass is the class that holds the list of quads and the target
surface that they draw into. Drawing a frame consists of drawing a
series of render passes onto their respective surfaces.

CCLayerTreeHostImpl constructs these render passes from the output of
calculateDrawTransformsAndVisibility by asking each layer to insert
quads into a list and hands them off to LayerRendererChromium for
rendering.

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::clearSurfaceForDebug):
(WebCore::LayerRendererChromium::beginDrawingFrame):
(WebCore::LayerRendererChromium::drawRenderPass):
(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawDebugBorderQuad):
(WebCore::LayerRendererChromium::drawRenderSurfaceQuad):
(WebCore::LayerRendererChromium::drawSolidColorQuad):
(WebCore::tileUniformLocation):
(WebCore::findTileProgramUniforms):
(WebCore::LayerRendererChromium::drawTileQuad):
(WebCore::LayerRendererChromium::drawCustomLayerQuad):
(WebCore::LayerRendererChromium::finishDrawingFrame):
(WebCore::LayerRendererChromium::useRenderSurface):

  • platform/graphics/chromium/LayerRendererChromium.h:
  • platform/graphics/chromium/ShaderChromium.h:

(WebCore::FragmentTexAlphaBinding::edgeLocation):
(WebCore::FragmentTexAlphaBinding::fragmentTexTransformLocation):
(WebCore::FragmentTexOpaqueBinding::edgeLocation):
(WebCore::FragmentTexOpaqueBinding::fragmentTexTransformLocation):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp: Added.

(WebCore::CCCustomLayerDrawQuad::create):
(WebCore::CCCustomLayerDrawQuad::CCCustomLayerDrawQuad):

  • platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h: Added.

(WebCore::CCCustomLayerDrawQuad::layer):

  • platform/graphics/chromium/cc/CCDebugBorderDrawQuad.cpp: Added.

(WebCore::CCDebugBorderDrawQuad::create):
(WebCore::CCDebugBorderDrawQuad::CCDebugBorderDrawQuad):

  • platform/graphics/chromium/cc/CCDebugBorderDrawQuad.h: Added.

(WebCore::CCDebugBorderDrawQuad::color):
(WebCore::CCDebugBorderDrawQuad::width):

  • platform/graphics/chromium/cc/CCDrawQuad.cpp: Added.

(WebCore::CCDrawQuad::CCDrawQuad):
(WebCore::CCDrawQuad::toDebugBorderDrawQuad):
(WebCore::CCDrawQuad::toRenderSurfaceDrawQuad):
(WebCore::CCDrawQuad::toSolidColorDrawQuad):
(WebCore::CCDrawQuad::toTileDrawQuad):
(WebCore::CCDrawQuad::toCustomLayerDrawQuad):

  • platform/graphics/chromium/cc/CCDrawQuad.h: Added.

(WebCore::CCDrawQuad::quadRect):
(WebCore::CCDrawQuad::quadTransform):
(WebCore::CCDrawQuad::layerTransform):
(WebCore::CCDrawQuad::layerRect):
(WebCore::CCDrawQuad::clipRect):
(WebCore::CCDrawQuad::opacity):
(WebCore::CCDrawQuad::drawsOpaque):
(WebCore::CCDrawQuad::needsBlending):
(WebCore::CCDrawQuad::isLayerAxisAlignedIntRect):
(WebCore::CCDrawQuad::material):

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

(WebCore::CCLayerImpl::createSharedQuadState):
(WebCore::CCLayerImpl::appendQuads):
(WebCore::CCLayerImpl::appendDebugBorderQuad):
(WebCore::CCLayerImpl::quadTransform):

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

(WebCore::CCLayerTreeHostImpl::trackDamageForAllSurfaces):
(WebCore::computeScreenSpaceTransformForSurface):
(WebCore::damageInSurfaceSpace):
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore::CCLayerTreeHostImpl::drawLayers):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
  • platform/graphics/chromium/cc/CCRenderPass.cpp: Added.

(WebCore::CCRenderPass::create):
(WebCore::CCRenderPass::CCRenderPass):
(WebCore::CCRenderPass::appendQuadsForLayer):
(WebCore::CCRenderPass::appendQuadsForRenderSurfaceLayer):

  • platform/graphics/chromium/cc/CCRenderPass.h: Added.

(WebCore::CCRenderPass::quadList):
(WebCore::CCRenderPass::targetSurface):
(WebCore::CCRenderPass::setSurfaceDamageRect):
(WebCore::CCRenderPass::surfaceDamageRect):

  • platform/graphics/chromium/cc/CCRenderSurfaceDrawQuad.cpp: Added.

(WebCore::CCRenderSurfaceDrawQuad::create):
(WebCore::CCRenderSurfaceDrawQuad::CCRenderSurfaceDrawQuad):

  • platform/graphics/chromium/cc/CCRenderSurfaceDrawQuad.h: Added.

(WebCore::CCRenderSurfaceDrawQuad::layer):
(WebCore::CCRenderSurfaceDrawQuad::surfaceDamageRect):

  • platform/graphics/chromium/cc/CCSharedQuadState.cpp: Added.

(WebCore::CCSharedQuadState::create):
(WebCore::CCSharedQuadState::CCSharedQuadState):
(WebCore::CCSharedQuadState::isLayerAxisAlignedIntRect):

  • platform/graphics/chromium/cc/CCSharedQuadState.h: Added.

(WebCore::CCSharedQuadState::quadTransform):
(WebCore::CCSharedQuadState::layerTransform):
(WebCore::CCSharedQuadState::layerRect):
(WebCore::CCSharedQuadState::clipRect):
(WebCore::CCSharedQuadState::opacity):
(WebCore::CCSharedQuadState::isOpaque):

  • platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp: Added.

(WebCore::CCSolidColorDrawQuad::create):
(WebCore::CCSolidColorDrawQuad::CCSolidColorDrawQuad):

  • platform/graphics/chromium/cc/CCSolidColorDrawQuad.h: Added.

(WebCore::CCSolidColorDrawQuad::color):

  • platform/graphics/chromium/cc/CCTileDrawQuad.cpp: Added.

(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):

  • platform/graphics/chromium/cc/CCTileDrawQuad.h: Added.

(WebCore::CCTileDrawQuad::textureId):
(WebCore::CCTileDrawQuad::textureOffset):
(WebCore::CCTileDrawQuad::textureSize):
(WebCore::CCTileDrawQuad::textureFilter):
(WebCore::CCTileDrawQuad::swizzleContents):
(WebCore::CCTileDrawQuad::leftEdgeAA):
(WebCore::CCTileDrawQuad::topEdgeAA):
(WebCore::CCTileDrawQuad::rightEdgeAA):
(WebCore::CCTileDrawQuad::bottomEdgeAA):
(WebCore::CCTileDrawQuad::isAntialiased):

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

(WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
(WebCore::CCTiledLayerImpl::quadTransform):
(WebCore::CCTiledLayerImpl::appendQuads):

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

(WebCore::CCTiledLayerImpl::setContentsSwizzled):
(WebCore::CCTiledLayerImpl::contentsSwizzled):

LayoutTests:

Mark three tests as failing with small pixel differences. These just
need rebaselining.

  • platform/chromium/test_expectations.txt:
15:39 Changeset [102837] by ojan@chromium.org

Implement flexDirection and flexWrap and make flexFlow a proper shorthand.
https://bugs.webkit.org/show_bug.cgi?id=74542

Reviewed by Tony Chang.

Source/WebCore:

In a followup patch, I'll cleanup all the *Flow methods in RenderFlexibleBox.

Existing tests cover all the rendering behaviors, so only need to test
the css property parsing.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSMutableStyleDeclaration.cpp:

(WebCore::CSSMutableStyleDeclaration::getPropertyValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFlexDirection):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyLonghand.cpp:

(WebCore::initShorthandMap):

  • css/CSSPropertyNames.in:
  • css/CSSStyleApplyProperty.cpp:

(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::sizesToIntrinsicLogicalWidth):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::isColumnFlow):
(WebCore::RenderFlexibleBox::isLeftToRightFlow):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::alignChildren):

  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::flexDirection):
(WebCore::InheritedFlags::isColumnFlexDirection):
(WebCore::InheritedFlags::setFlexDirection):
(WebCore::InheritedFlags::initialFlexDirection):

  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleFlexibleBoxData.cpp:

(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):

  • rendering/style/StyleFlexibleBoxData.h:

LayoutTests:

  • css3/flexbox/css-properties-expected.txt:
  • css3/flexbox/script-tests/css-properties.js:

(testFlexFlowValue):

15:32 Changeset [102836] by jonlee@apple.com

Enable notifications on Mac.

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
15:21 Changeset [102835] by rniwa@webkit.org

COMPILE_ASSERT in CSSStyleSelector.cpp doesn't compile on Windows
https://bugs.webkit.org/show_bug.cgi?id=74327

Reviewed by Darin Adler.

Always use unsigned instead of bool and unsigned in the bitfields of RuleData to shrink
its size under MSVC.

Unlike gcc and clang, MSVC pads each consecutive member variables of the same type
in bitfields. e.g. if you have:
sturct AB {

unsigned m_1 : 31;
bool m_2 : 1;

}
then MSVC pads m_1 and allocates sizeof(unsigned) * 2 for AB whereas gcc and clang
only allocate sizeof(unsigned) * 1 for AB.

  • css/CSSStyleSelector.cpp:

(WebCore::RuleData::RuleData):

15:18 Changeset [102834] by rniwa@webkit.org

NodeChildList shouldn't be in NodeListNodeData
https://bugs.webkit.org/show_bug.cgi?id=73969

Source/WebCore:

Reviewed by Sam Weinig.

Move NodeChildList out of NodeListNodeData to separate it from the other node lists in order to
resolve the bug 73853. Unlike other DynamicNodeList, we don't need to invalidate NodeChildList
on ancestors when children change. Moving ChildNodeList out of NodeListNodeData makes this difference
apparent and makes DynamicNodeList::Caches in NodeListNodeData always held by a DynamicSubtreeNodeList,
eliminating the need for hasOwnCaches() checks in various places.

Also renamed the existing DynamicNodeList to DynamicSubtreeNodeList and re-introduced DynamicNodeList
from which DynamicSubtreeNodeList and ChildNodeList both inherit to share the code for itemWithName.

In addition, renamed registerDynamicNodeList and unregisterDynamicNodeList, which updates a counter for
TreeScope::hasNodeListCaches, to registerDynamicSubtreeNodeList and unregisterDynamicSubtreeNodeList
respectively. They are no longer called by ChildNodeList in order to avoid walking up the DOM tree
inside invalidateNodeListsCacheAfterAttributeChanged and invalidateNodeListsCacheAfterChildrenChanged.

Test: fast/dom/childnode-item-after-itemname.html

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):
(WebCore::ChildNodeList::length):
(WebCore::ChildNodeList::item):
(WebCore::ChildNodeList::nodeMatches):

  • dom/ChildNodeList.h:
  • dom/ClassNodeList.cpp:

(WebCore::ClassNodeList::ClassNodeList):
(WebCore::ClassNodeList::~ClassNodeList):

  • dom/ClassNodeList.h:
  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::childrenChanged):

  • dom/DynamicNodeList.cpp:

(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::~DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):
(WebCore::DynamicNodeList::itemWithName):
(WebCore::DynamicSubtreeNodeList::isDynamicNodeList):
(WebCore::DynamicSubtreeNodeList::invalidateCache):
(WebCore::DynamicSubtreeNodeList::Caches::Caches):
(WebCore::DynamicSubtreeNodeList::Caches::create):
(WebCore::DynamicSubtreeNodeList::Caches::reset):

  • dom/DynamicNodeList.h:

(WebCore::DynamicNodeList::DynamicNodeList):
(WebCore::DynamicNodeList::~DynamicNodeList):
(WebCore::DynamicNodeList::node):
(WebCore::DynamicSubtreeNodeList::rootNode):

  • dom/NameNodeList.cpp:

(WebCore::NameNodeList::NameNodeList):
(WebCore::NameNodeList::~NameNodeList):

  • dom/NameNodeList.h:
  • dom/Node.cpp:

(WebCore::Node::childNodes):
(WebCore::Node::registerDynamicSubtreeNodeList):
(WebCore::Node::unregisterDynamicSubtreeNodeList):
(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged):
(WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged):
(WebCore::Node::removeCachedClassNodeList):
(WebCore::Node::removeCachedNameNodeList):
(WebCore::Node::removeCachedTagNodeList):
(WebCore::Node::removeCachedLabelsNodeList):
(WebCore::NodeListsNodeData::invalidateCaches):
(WebCore::NodeListsNodeData::isEmpty):
(WebCore::NodeRareData::clearChildNodeListCache):

  • dom/Node.h:
  • dom/NodeRareData.h:

(WebCore::NodeRareData::nodeLists):
(WebCore::NodeRareData::ensureChildNodeListCache):

  • dom/TagNodeList.cpp:

(WebCore::TagNodeList::TagNodeList):
(WebCore::TagNodeList::~TagNodeList):

  • dom/TagNodeList.h:
  • html/LabelsNodeList.cpp:

(WebCore::LabelsNodeList::LabelsNodeList):

  • html/LabelsNodeList.h:

LayoutTests:

Added a regression test for ChildNodeList; it catches a bug caught in the review process.

  • fast/dom/childnode-item-after-itemname-expected.txt: Added.
  • fast/dom/childnode-item-after-itemname.html: Added.
15:16 Changeset [102833] by rniwa@webkit.org

Push more member functions from EditCommand to CompositeEditCommand
https://bugs.webkit.org/show_bug.cgi?id=74249

Reviewed by Enrica Casucci.

Moved startingRootEditableElement and endingRootEditableElement from EditCommand to EditCommandComposition,
and isTypingCommand, preservesTypingStyle, shouldRetainAutocorrectionIndicator,
setShouldRetainAutocorrectionIndicator, and shouldStopCaretBlinking from EditCommand to CompositeEditCommand.
Also removed EditCommand::updateLayout().

  • editing/ApplyBlockElementCommand.cpp:

(WebCore::ApplyBlockElementCommand::doApply):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyBlockStyle):
(WebCore::ApplyStyleCommand::applyInlineStyle):

  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::EditCommandComposition):
(WebCore::EditCommandComposition::setStartingSelection):
(WebCore::EditCommandComposition::setEndingSelection):
(WebCore::CompositeEditCommand::preservesTypingStyle):
(WebCore::CompositeEditCommand::isTypingCommand):
(WebCore::CompositeEditCommand::shouldRetainAutocorrectionIndicator):
(WebCore::CompositeEditCommand::setShouldRetainAutocorrectionIndicator):
(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
(WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
(WebCore::CompositeEditCommand::moveParagraphs):

  • editing/CompositeEditCommand.h:

(WebCore::EditCommandComposition::startingRootEditableElement):
(WebCore::EditCommandComposition::endingRootEditableElement):
(WebCore::CompositeEditCommand::shouldStopCaretBlinking):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::removeNode):
(WebCore::DeleteSelectionCommand::fixupWhitespace):

  • editing/EditCommand.cpp:

(WebCore::EditCommand::apply):
(WebCore::EditCommand::unapply):
(WebCore::EditCommand::reapply):
(WebCore::EditCommand::setStartingSelection):
(WebCore::EditCommand::setEndingSelection):
(WebCore::EditCommand::setParent):

  • editing/EditCommand.h:

(WebCore::EditCommand::isEditCommandComposition):

  • editing/Editor.cpp:

(WebCore::dispatchEditableContentChangedEvents):
(WebCore::Editor::appliedEditing):
(WebCore::Editor::unappliedEditing):
(WebCore::Editor::reappliedEditing):

  • editing/Editor.h:

(WebCore::Editor::lastEditCommand):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::updateAppearance):

  • editing/IndentOutdentCommand.cpp:

(WebCore::IndentOutdentCommand::outdentParagraph):

  • editing/InsertLineBreakCommand.cpp:

(WebCore::InsertLineBreakCommand::doApply):

  • editing/InsertParagraphSeparatorCommand.cpp:

(WebCore::InsertParagraphSeparatorCommand::doApply):

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::lastTypingCommandIfStillOpenForTyping):

  • editing/TypingCommand.h:

(WebCore::TypingCommand::shouldRetainAutocorrectionIndicator):

15:08 Changeset [102832] by tony@chromium.org

Fix compile on gcc on Mac.

css/CSSStyleSelector.cpp:1254:166: error: unused parameter 'regionForStyling' [-Werror,-Wunused-parameter,3]
css/CSSStyleSelector.cpp:1425:134: error: unused parameter 'regionForStyling' [-Werror,-Wunused-parameter,3]

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

15:03 Changeset [102831] by ddkilzer@apple.com

Remove definition of old ENABLE(YARR) macro
<http://webkit.org/b/74532>

Reviewed by Darin Adler.

  • wtf/Platform.h: Removed ENABLE_YARR macros.
14:57 Changeset [102830] by commit-queue@webkit.org

Create reftest for outline-sides-in-region
https://bugs.webkit.org/show_bug.cgi?id=74428

Patch by Ethan Malasky <emalasky@adobe.com> on 2011-12-14
Reviewed by Darin Adler.

  • fast/regions/outline-sides-in-region-expected.html: Added.
  • fast/regions/outline-sides-in-region.html:
  • platform/chromium/test_expectations.txt:
  • platform/efl/fast/regions/outline-sides-in-region-expected.png: Removed.
  • platform/efl/fast/regions/outline-sides-in-region-expected.txt: Removed.
  • platform/mac/fast/regions/outline-sides-in-region-expected.png: Removed.
  • platform/mac/fast/regions/outline-sides-in-region-expected.txt: Removed.
14:52 Changeset [102829] by beidson@apple.com

<rdar://problem/10576732> and https://bugs.webkit.org/show_bug.cgi?id=74533
REGRESSION(r102619): Reproducible crash closing window with video + poster image inside an object element

Reviewed by Darin Adler.

Source/WebCore:

Test: media/crash-closing-page-with-media-as-plugin-fallback.html

Switch HTMLPlugInImageElement from using document activation callbacks to using the ActiveDOMObject
mechanism which will prevent the unnecessary (and crashy) work at Document teardown:

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::canSuspend):
(WebCore::HTMLPlugInImageElement::suspend):
(WebCore::HTMLPlugInImageElement::resume):

  • html/HTMLPlugInImageElement.h:

LayoutTests:

  • media/crash-closing-page-with-media-as-plugin-fallback-expected.txt: Added.
  • media/crash-closing-page-with-media-as-plugin-fallback.html: Added.
  • media/resources/video-with-poster-as-object-fallback.html: Added.
14:38 Changeset [102828] by enne@google.com

[chromium] Compositor needs to set texture filtering on canvas layers
https://bugs.webkit.org/show_bug.cgi?id=74530

Reviewed by James Robinson.

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

(WebCore::CCCanvasLayerImpl::draw):

14:21 Changeset [102827] by lforschler@apple.com

delete branch

14:20 Changeset [102826] by lforschler@apple.com

New branch.

14:19 Changeset [102825] by tony@chromium.org

Remove added calls to CSSStyleSelector to gain back another 2% in page cyclers
https://bugs.webkit.org/show_bug.cgi?id=74537

Reviewed by Ojan Vafai.

In r102234, calls to initForRegionStyling() were added in CSSStyleSelector.
There's still a 2% perf regression in chromium page cyclers, so try removing
these calls.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

14:13 Changeset [102824] by ossy@webkit.org

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

My last unreviewed buildfix for this crazy bug.

  • qmake/mkspecs/features/features.prf:
14:13 Changeset [102823] by mrowe@apple.com

Ensure that safari-534.54-branch contains all changes from safari-534.53-branch.

14:09 Changeset [102822] by commit-queue@webkit.org

[Qt] DeviceOrientationClientQt should initialize m_controller to zero.
https://bugs.webkit.org/show_bug.cgi?id=74522

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-14
Reviewed by Kenneth Rohde Christiansen.

  • WebCoreSupport/DeviceOrientationProviderQt.cpp:

(WebCore::DeviceOrientationProviderQt::DeviceOrientationProviderQt):

14:00 Changeset [102821] by andersca@apple.com

Another attempt at fixing the Windows build.

Disable all the tests until I can figure out what's going on here.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:
13:53 Changeset [102820] by rniwa@webkit.org

Skip fast/forms/select/menulist-onchange-fired-with-key-up-down.html on Mac since
it has been failing since it was introduced. The failure is tracked by the bug 74384.

  • platform/mac/Skipped:
13:30 Changeset [102819] by mrowe@apple.com

<rdar://problem/10573872> NPN_GetValueForURL returns wrong value for NPNURLVProxy

Reviewed by Anders Carlsson.

  • PluginProcess/PluginControllerProxy.cpp:

(WebKit::PluginControllerProxy::proxiesForURL): Fix a copy-paste error.

13:27 Changeset [102818] by andersca@apple.com

Fix the Windows build.

Disable some of the tests for now.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:
13:25 Changeset [102817] by commit-queue@webkit.org

[chromium] Plumb through flag for enabling partial swap
https://bugs.webkit.org/show_bug.cgi?id=74513

Patch by Jonathan Backer <backer@chromium.org> on 2011-12-14
Reviewed by James Robinson.

Source/WebCore:

  • page/Settings.h:

(WebCore::Settings::setPartialSwapEnabled):
(WebCore::Settings::partialSwapEnabled):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::initialize):

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

(WebCore::CCSettings::CCSettings):

Source/WebKit/chromium:

  • public/WebSettings.h:
  • public/platform/WebLayerTreeView.h:

(WebKit::WebLayerTreeView::Settings::Settings):

  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::Settings::operator CCSettings):

  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setPartialSwapEnabled):

  • src/WebSettingsImpl.h:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

13:21 Changeset [102816] by reed@google.com

[skia] cache typeface in FontPlatformData
https://bugs.webkit.org/show_bug.cgi?id=74415

Reviewed by Stephen White.

No new tests. Existing tests apply, this is just an optimization
to avoid looking up the typeface on each drawText call.

  • platform/graphics/chromium/FontChromiumWin.cpp:

(WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
(WebCore::Font::drawGlyphs):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:

(WebCore::createTypefaceFromHFont):
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::~FontPlatformData):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.h:

(WebCore::FontPlatformData::typeface):
(WebCore::FontPlatformData::lfQuality):
(WebCore::FontPlatformData::hash):
(WebCore::FontPlatformData::operator==):

  • platform/graphics/skia/SkiaFontWin.cpp:

(WebCore::setupPaintForFont):
(WebCore::paintSkiaText):

  • platform/graphics/skia/SkiaFontWin.h:
13:16 Changeset [102815] by simon.fraser@apple.com

Make -webkit-filter animatable
https://bugs.webkit.org/show_bug.cgi?id=68476

Source/WebCore:

Reviewed by Chris Marrin.

Add -webkit-filter to the list of CSS properties that are animatable. Animate
it like we do transforms, by looking for matching lists of filter functions.
Each kind of filter operation has a blend() method that handles blending
for that filter.

Test: css3/filters/filter-animation.html

  • GNUmakefile.list.am: Add FilterOperation.cpp to the build.
  • Target.pri: Ditto
  • WebCore.gypi: Ditto
  • WebCore.vcproj/WebCore.vcproj: Ditto
  • WebCore.xcodeproj/project.pbxproj: Ditto
  • page/animation/AnimationBase.cpp:

(WebCore::blendFunc): New blendFunc() for FilterOperations, which does per-filter blending.
(WebCore::AnimationBase::ensurePropertyMap): Make PropertyWrapper for filters.
(WebCore::AnimationBase::AnimationBase): Adjust initialization order.

  • page/animation/AnimationBase.h: Adjusted the member variable order to minimize padding.

(WebCore::AnimationBase::filterFunctionListsMatch): Accessor for the flag.

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::reset):
(WebCore::ImplicitAnimation::validateTransformFunctionList): Adjust comment. The "is valid" terminology is confusing.
(WebCore::ImplicitAnimation::checkForMatchingFilterFunctionLists): New method to check for matching lists
of filter functions.

  • page/animation/ImplicitAnimation.h:
  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::KeyframeAnimation):
(WebCore::KeyframeAnimation::checkForMatchingFilterFunctionLists): New method to check for matching lists
of filter functions.

  • page/animation/KeyframeAnimation.h:
  • rendering/style/FilterOperation.cpp: Added.

(WebCore::BasicColorMatrixFilterOperation::blend):
(WebCore::BasicColorMatrixFilterOperation::passthroughAmount):
(WebCore::BasicComponentTransferFilterOperation::blend):
(WebCore::BasicComponentTransferFilterOperation::passthroughAmount): Different filters have
different values for m_amount for the "passthrough" behavior. This method returns the appropriate value.
(WebCore::GammaFilterOperation::blend):
(WebCore::BlurFilterOperation::blend):
(WebCore::DropShadowFilterOperation::blend):

  • rendering/style/FilterOperation.h:

(WebCore::FilterOperation::blend):
(WebCore::PassthroughFilterOperation::create): New "no-op" filter.
(WebCore::PassthroughFilterOperation::operator==):
(WebCore::PassthroughFilterOperation::PassthroughFilterOperation):

  • rendering/style/FilterOperations.cpp:

(WebCore::FilterOperations::operationsMatch):

  • rendering/style/FilterOperations.h:

LayoutTests:

Reviewed by Chris Marrin.

New test for filter animation, and enhancements to animation-test-helpers.js
for filters.

  • animations/resources/animation-test-helpers.js:

(getFilterParameters):
(filterParametersMatch):
(checkExpectedValue):

  • css3/filters/filter-animation.html: Added.
13:14 Changeset [102814] by adamk@chromium.org

Broaden support for mutation observation of attributes
https://bugs.webkit.org/show_bug.cgi?id=74448

Reviewed by Ryosuke Niwa.

Source/WebCore:

The previously-landed MutationObserver support for attributes was incomplete:
it didn't support mutations related to Attr nodes (methods on Attrs,
setAttributeNode/removeAttributeNode on Element, or methods on NamedNodeMap).

This patch adds full support of mutation observation for all these cases,
and adds test cases for all these situations.

  • dom/Attr.cpp:

(WebCore::Attr::setValue): Enqueue a mutation record when Attr.value is set from JS.
(WebCore::Attr::childrenChanged): Enqueue a mutation record when an Attr's value
changes to due additions/removals of Text children.

  • dom/Element.cpp:

(WebCore::Element::enqueueAttributesMutationRecordIfRequested): Previously a static,
expose as part of Element's interface to allow it to be re-used by NamedNodeMap and Attr.
(WebCore::Element::removeAttribute): Remove enqueue call now handled by NamedNodeMap.
(WebCore::Element::setAttributeInternal): Fixup call of enqueueAttributesMutationRecordIfRequested.

  • dom/Element.h:
  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::setNamedItem): Enqueue a mutation record when an attribute
is changed via Element.attributes.setNamedItem from JS.
(WebCore::NamedNodeMap::removeNamedItem): Enqueue a mutation record when an
attribute is removed, either via Element.attributes.removeNamedItem or Element.removeAttribute.

LayoutTests:

Add tests covering attribute mutation via Attr nodes.

  • fast/mutation/observe-attributes-expected.txt:
  • fast/mutation/observe-attributes.html:
13:12 Keeping the Tree Green edited by rniwa@webkit.org
Fix the list item for Chromium. (diff)
13:03 Keeping the Tree Green edited by rniwa@webkit.org
Add a link to Chrome WebKit Merge calendar (diff)
12:59 Changeset [102813] by andersca@apple.com

bind should handle member functions
https://bugs.webkit.org/show_bug.cgi?id=74529

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add FunctionWrapper partial specializations for member function pointers.

  • wtf/Functional.h:

(WTF::C::):

Tools:

Add tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:

(TestWebKitAPI::A::A):
(TestWebKitAPI::A::f):
(TestWebKitAPI::A::addF):
(TestWebKitAPI::TEST):

12:56 Changeset [102812] by leviw@chromium.org

Fixing improper float conversions that had some unpleasant results with large numbers.

12:51 Changeset [102811] by barraclough@apple.com

DFG relies on returning a struct in registers
https://bugs.webkit.org/show_bug.cgi?id=74527

Reviewed by Geoff Garen.

This will not work on all platforms. Returning a uint64_t will more reliably achieve
what we want, on 32-bit platforms (on 64-bit, stick with the struct return).

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:

(JSC::DFG::DFGHandler::dfgHandlerEncoded):

12:34 BuildingGtk edited by mrobinson@webkit.org
Add "sudo" for maximum copy and pasting glory (diff)
12:33 Changeset [102810] by commit-queue@webkit.org

Patch by Raymond Toy <rtoy@google.com> on 2011-12-14

  • platform/audio/Distance.h (WebCore):

Incorrect calculation for DistanceEffect linearGain
https://bugs.webkit.org/show_bug.cgi?id=72871

Reviewed by Kenneth Russell.

Tests still need to be written for all distance models. This
does not add a new API and just corrects an implementation error.

  • platform/audio/Distance.cpp:

(WebCore::DistanceEffect::linearGain): Implement correct
linearGain function. (Fix proposed by davidgaleano@hotmail.com.)

  • platform/audio/Distance.h: Add link to Open AL specification.
12:00 Changeset [102809] by caio.oliveira@openbossa.org

[Qt] [WK2] Move QWebPreferences out of QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74525

Reviewed by Luiz Agostini.

This patch also uses internal WebKit API to set the Accelerate Compositing
directly instead of going thru QWebPreferencesPrivate. The previous approach was
always causing the QWebPreferences to be created making the "lazy initialization"
useless.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::navigatorQtObjectEnabled):
(QQuickWebViewPrivate::setNavigatorQtObjectEnabled):
(QQuickWebViewExperimental::postMessage):
(QQuickWebView::preferences):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebpreferences.cpp:

(QWebPreferencesPrivate::createPreferences):
(QWebPreferencesPrivate::testAttribute):
(QWebPreferencesPrivate::setAttribute):
(QWebPreferences::navigatorQtObjectEnabled):
(QWebPreferences::setNavigatorQtObjectEnabled):
(QWebPreferencesPrivate::preferencesRef):

  • UIProcess/API/qt/qwebpreferences_p_p.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):

  • UIProcess/qt/QtWebPageProxy.h:
11:55 Changeset [102808] by andersca@apple.com

Add unary and binary bind overloads
https://bugs.webkit.org/show_bug.cgi?id=74524

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • wtf/Functional.h:

(WTF::R):
(WTF::FunctionWrapper::ResultType):
(WTF::bind):

Tools:

Add tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:

(TestWebKitAPI::TEST):
(TestWebKitAPI::multiplyByTwo):
(TestWebKitAPI::multiplyByOneAndAHalf):
(TestWebKitAPI::multiply):
(TestWebKitAPI::subtract):

11:49 Changeset [102807] by lforschler@apple.com

Versioning.

11:43 Changeset [102806] by ossy@webkit.org

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

MIPS and SH4 buildfix after r102776 and r102795.

Patch by Holger Hans Peter Freyther <holger@moiji-mobile.com> on 2011-12-14
Reviewed by Csaba Osztrogonác.

  • qmake/mkspecs/features/features.prf:
11:41 Changeset [102805] by lforschler@apple.com

New tag.

11:38 Changeset [102804] by carlosgc@webkit.org

[GTK] Page size should be 0,0 when view widget is not realized
https://bugs.webkit.org/show_bug.cgi?id=74523

Reviewed by Martin Robinson.

We currently return 1,1 because GTK+ initializes widget allocation
as -1,-1,1,1.

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::viewSize): Check whether widget is
realized and return IntSize() in that case.

11:33 Changeset [102803] by loislo@chromium.org

2011-12-14 Ilya Tikhonovsky <loislo@chromium.org>

Web Inspector: consider disabling network tracking while running the CPU profile.
https://bugs.webkit.org/show_bug.cgi?id=74221

The WebCore instrumentation on the backend affects the performance of inspected page.
As the result the CPU profiler's stats data are far away from the reality.
Solution: the profiler code will temporary disable the resource tracking on backend.
Side effect: the resource tree gets out of sinc because it uses Network Agent's notifications for updating the resource tree.
Solution: NetworkManager will report about the changes of the resource tracking state and ResourcePanel will re-fetch the resources tree.

Reviewed by Pavel Feldman.

  • inspector/front-end/NetworkManager.js: (WebInspector.NetworkManager.prototype.enableResourceTracking.networkAgentEnabled): (WebInspector.NetworkManager.prototype.enableResourceTracking): (WebInspector.NetworkManager.prototype.disableResourceTracking.networkAgentDisabled): (WebInspector.NetworkManager.prototype.disableResourceTracking): (WebInspector.NetworkManager.prototype.inflightResourceForURL):
  • inspector/front-end/ProfileView.js: (WebInspector.CPUProfileType.prototype.buttonClicked):
  • inspector/front-end/ResourceTreeModel.js: (WebInspector.ResourceTreeModel): (WebInspector.ResourceTreeModel.prototype._onResourceTrackingEnabled):
11:18 Changeset [102802] by carlosgc@webkit.org

[GTK] Fix PlatformScreen::screenAvailableRect when there's no view widget
https://bugs.webkit.org/show_bug.cgi?id=74520

Reviewed by Martin Robinson.

Use the default screen to get the available screen area instead of
just returning an empty rectangle. This is useful for WebKit2,
since there's no view widget in the web process.

  • platform/gtk/PlatformScreenGtk.cpp:

(WebCore::screenAvailableRect):

11:09 Changeset [102801] by rniwa@webkit.org

Add a manual test for caret blinking during forward deletion
https://bugs.webkit.org/show_bug.cgi?id=74494

Reviewed by Dan Bernstein.

Add a test to forward delete 200 characters. Caret should not blink during the deletion.
This is a follow up for r102413.

  • ManualTests/caret-blink-during-forward-delete.html: Added.
10:59 Changeset [102800] by eric.carlson@apple.com

Media url with fragment may not load
https://bugs.webkit.org/show_bug.cgi?id=74443

Reviewed by Darin Adler.

Source/WebCore:

Test: media/media-extension-with-fragment.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::loadResource): Pass the KURL to MediaPlayer, let it extract a

String when it needs it.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::load): Take a KURL, not a String. Look for the file extension in the

last path component so we don't examine fragments and/or queries.

  • platform/graphics/MediaPlayer.h:

LayoutTests:

  • media/media-extension-with-fragment-expected.txt: Added.
  • media/media-extension-with-fragment.html: Added.
10:52 Changeset [102799] by kbr@google.com

Unreviewed Chromium test expectations update. Suppress another
intermittent compositing test failure.

  • platform/chromium/test_expectations.txt:
10:47 Changeset [102798] by commit-queue@webkit.org

[BlackBerry] Remove some duplicate entries in Source/WebCore/PlatformBlackBerry.cmake
https://bugs.webkit.org/show_bug.cgi?id=74484

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Daniel Bates.

Trivial fix, so no new tests.

  • PlatformBlackBerry.cmake:
10:36 Changeset [102797] by andersca@apple.com

Add back the callOnMainThread overload that takes a WTF::Function
https://bugs.webkit.org/show_bug.cgi?id=74512

Reviewed by Darin Adler.

Source/JavaScriptCore:

Add back the overload; the changes to WebCore should hopefully keep Windows building.

  • wtf/MainThread.cpp:

(WTF::callFunctionObject):
(WTF::callOnMainThread):

  • wtf/MainThread.h:

Source/WebCore:

Explicitly qualify the Function enum flag, since MSVC2005 is too stupid to disambiguate
the Function class template and the enum flag.

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertyDescriptor):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::JSHistory::getOwnPropertySlotDelegate):
(WebCore::JSHistory::getOwnPropertyDescriptorDelegate):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::JSLocation::getOwnPropertySlotDelegate):
(WebCore::JSLocation::getOwnPropertyDescriptorDelegate):

10:30 Changeset [102796] by ojan@chromium.org

Give a resize handle for sidebyside diffs.
https://bugs.webkit.org/show_bug.cgi?id=74465

Reviewed by Ryosuke Niwa.

This gives a drag handle so you can make the side-by-side
diff not be 50/50 on a per-file-diff basis. This is useful
for cases like new files where there's no value on the
left side.

  • PrettyPatch/PrettyPatch.rb:
  • code-review.js:
10:14 Changeset [102795] by ossy@webkit.org

[Qt] Unreviewed speculative MIPS and SH4 buildfix after r102776.

  • qmake/mkspecs/features/features.prf:
10:03 Changeset [102794] by kbr@google.com

Unreviewed, rolling out r102688.
http://trac.webkit.org/changeset/102688
https://bugs.webkit.org/show_bug.cgi?id=74220

Under the hypothesis that it might be the cause of
browser_tests and ui_tests crashes on Chromium canaries --
will reland if not.

  • bindings/v8/V8Proxy.cpp:

(WebCore::addMessageToConsole):
(WebCore::logInfo):
(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:
  • bindings/v8/custom/V8CustomXPathNSResolver.cpp:

(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

09:48 Changeset [102793] by vsevik@chromium.org

Web Inspector: DatabaseTableView should escape table name.
https://bugs.webkit.org/show_bug.cgi?id=74503

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/database-table-name-excaping.html

  • inspector/front-end/DatabaseTableView.js:

(WebInspector.DatabaseTableView.prototype._escapeTableName):
(WebInspector.DatabaseTableView.prototype.update):

LayoutTests:

  • inspector/database-table-name-excaping-expected.txt: Added.
  • inspector/database-table-name-excaping.html: Added.
09:41 Changeset [102792] by ossy@webkit.org

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

  • platform/qt-5.0/Skipped: Unskip a bunch of now passing tests - part 4. : svg
  • platform/qt-wk2/Skipped: Skip 2 flakey tests.
09:26 Changeset [102791] by philn@webkit.org

[GStreamer] padTemplate leak in webkitwebaudiosrc
https://bugs.webkit.org/show_bug.cgi?id=74495

Reviewed by Martin Robinson.

Use a GstPadTemplate smart pointer in webkit_web_audio_src_init to
avoid a memory leak after the ghost pad creation.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webkit_web_audio_src_init):

  • platform/graphics/gstreamer/GRefPtrGStreamer.cpp:

(WTF::adoptGRef):
(WTF::GstPadTemplate):

  • platform/graphics/gstreamer/GRefPtrGStreamer.h:
09:20 Changeset [102790] by kling@webkit.org

Make my e-mail address a little more awesome.

  • Scripts/webkitpy/common/config/committers.py:
09:17 Changeset [102789] by commit-queue@webkit.org

[Qt] [Gardening] editing/pasteboard/4242293-1.html now passes.
https://bugs.webkit.org/show_bug.cgi?id=73417

Patch by João Paulo Rechi Vita <jprvita@openbossa.org> on 2011-12-14
Reviewed by Csaba Osztrogonác.

Remove this test from the skip list since it is passing now.

  • platform/qt-5.0/Skipped:
  • platform/qt-wk2/Skipped:
09:15 Changeset [102788] by ossy@webkit.org

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

  • platform/qt-5.0/Skipped: Unskip a bunch of now passing tests - part 3. : editing
09:13 Changeset [102787] by jchaffraix@webkit.org

Crash in RenderBox::paintBoxDecorations when documentElement has no renderer
https://bugs.webkit.org/show_bug.cgi?id=64284

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/dynamic/crash-paint-no-documentElement-renderer.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintBackground): Check the documentElement's
renderer before using it which matches what RenderView does.

LayoutTests:

  • fast/dynamic/crash-paint-no-documentElement-renderer-expected.png: Added.
  • fast/dynamic/crash-paint-no-documentElement-renderer-expected.txt: Added.
  • fast/dynamic/crash-paint-no-documentElement-renderer.html: Added.
  • platform/chromium/test_expectations.txt:
  • platform/efl/Skipped:
  • platform/gtk/test_expectations.txt:
  • platform/mac/test_expectations.txt:
  • platform/qt/test_expectations.txt:
  • platform/win/test_expectations.txt:

The test hits the ASSERT from bug 68859 in Debug. However it works well in Release.

09:03 Changeset [102786] by tsepez@chromium.org

DocumentLoader should ref its mainResourceLoader.
https://bugs.webkit.org/show_bug.cgi?id=74424

Reviewed by Adam Barth.

Source/WebCore:

Tests: platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-allowed.html

platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-blocked.html

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::startLoadingMainResource):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::loadNow):

LayoutTests:

More tests for insecure iframes blocked inside of https frames.

  • http/tests/security/mixedContent/resources/frame-with-insecure-iframe.html: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-allowed-expected.txt: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-allowed.html: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-blocked-expected.txt: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-blocked.html: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed-expected.txt:
  • platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed.html:
08:59 Changeset [102785] by ossy@webkit.org

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

  • platform/qt-5.0/Skipped: Unskip a bunch of now passing tests - part 2. : tables
08:47 Changeset [102784] by ossy@webkit.org

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

  • platform/qt-5.0/Skipped: Unskip a bunch of now passing tests - part 1. : css2.1, css3
08:45 Changeset [102783] by senorblanco@chromium.org

CSS Filters should support GPU acceleration
https://bugs.webkit.org/show_bug.cgi?id=74441

Reviewed by Darin Adler.

Will be covered by existing CSS filters tests, when run in GPU mode.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::prepare):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateOrRemoveFilterEffect):

08:37 Changeset [102782] by commit-queue@webkit.org

Source/WebCore: [CHROMIUM/SKIA] Handle put[Un/Pre]multipliedImageData conversions in Skia rather than ImageBuffer
https://bugs.webkit.org/show_bug.cgi?id=73953

Patch by Brian Salomon <bsalomon@google.com> on 2011-12-14
Reviewed by Stephen White.

Tested by existing canvas2d layout tests.

  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::putImageData):
(WebCore::ImageBuffer::putUnmultipliedImageData):
(WebCore::ImageBuffer::putPremultipliedImageData):

LayoutTests: [CHROMIUM] Make canvas/philip/tests/2d.imageData.put.unchanged.html be expected to fail
on the GPU due to slight difference in alpha-premul computation.

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

Patch by Brian Salomon <bsalomon@google.com> on 2011-12-14
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
08:29 Changeset [102781] by ossy@webkit.org

[Qt] Rollout r102769, because it broke Qt-4.8 builds.

.:

  • Source/api.pri:

Tools:

  • qmake/mkspecs/features/webcore.prf:
08:20 Changeset [102780] by commit-queue@webkit.org

Remove SharedBufferBlackBerry.cpp from WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=74488

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-14
Reviewed by Rob Buis.

Remove dead code, no new tests.

  • platform/blackberry/SharedBufferBlackBerry.cpp: Removed.
08:04 Changeset [102779] by caio.oliveira@openbossa.org

[Qt] [WK2] Move download handling out of QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74506

Reviewed by Kenneth Rohde Christiansen.

Also moves the creation of QtWebContext out of QtWebPageProxy.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::handleDownloadRequest):
(QQuickWebViewPrivate::_q_onReceivedResponseFromDownload):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebdownloaditem_p.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::handleDownloadRequest):

  • UIProcess/qt/QtPageClient.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):

  • UIProcess/qt/QtWebPageProxy.h:
08:03 Changeset [102778] by vsevik@chromium.org

Merge 102699 - Web Inspector: Network item view does not correctly decode "+" in request parameters.
https://bugs.webkit.org/show_bug.cgi?id=74422

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/network/request-parameters-decoding.html

  • inspector/front-end/ResourceHeadersView.js:

(WebInspector.ResourceHeadersView.prototype._formatParameter):
(WebInspector.ResourceHeadersView.prototype._refreshParms):

LayoutTests:

  • http/tests/inspector/network/request-parameters-decoding-expected.txt: Added.
  • http/tests/inspector/network/request-parameters-decoding.html: Added.

TBR=vsevik@chromium.org
BUG=105690
Review URL: http://codereview.chromium.org/8907036

07:56 Changeset [102777] by ossy@webkit.org

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

Unreviewed gardening, remove unnecessary Qt5 specific expected files.

  • platform/qt-5.0/animations/cross-fade-background-image-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-background-image-expected.txt: Removed.
  • platform/qt-5.0/animations/cross-fade-border-image-source-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-border-image-source-expected.txt: Removed.
  • platform/qt-5.0/animations/cross-fade-list-style-image-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-list-style-image-expected.txt: Removed.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-box-image-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-box-image-expected.txt: Removed.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-image-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-image-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-001-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-002-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-002-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-003-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-003-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-004-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-004-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-005-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-005-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-006-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-006-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-007-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-007-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-008-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-008-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-009-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-009-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/border-spacing-applies-to-015-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-001-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-002-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-002-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-003-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-003-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-004-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-004-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/empty-inline-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/empty-inline-002-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/empty-inline-003-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-002-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-horizontal-alignment-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-margins-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-optional-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-optional-002-expected.txt: Removed.
  • platform/qt-5.0/editing/execCommand/indent-nested-lists-3-expected.txt: Removed.
  • platform/qt-5.0/fast/css/child-style-can-override-visited-style-expected.txt: Removed.
  • platform/qt-5.0/fast/css/empty-inline-003-quirksmode-expected.txt: Removed.
  • platform/qt-5.0/fast/css/empty-inline-line-height-first-line-expected.txt: Removed.
  • platform/qt-5.0/fast/css/empty-inline-line-height-first-line-quirksmode-expected.txt: Removed.
  • platform/qt-5.0/fast/css/font-face-descending-unicode-range-expected.txt: Removed.
  • platform/qt-5.0/fast/dom/rtl-scroll-to-leftmost-and-resize-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/block-axis-horizontal-bt-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/block-axis-horizontal-tb-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/block-axis-vertical-lr-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/block-axis-vertical-rl-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-h-horizontal-bt-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-h-horizontal-tb-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-h-vertical-rl-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-v-horizontal-bt-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-v-vertical-lr-expected.txt: Removed.
  • platform/qt-5.0/svg/as-background-image/background-image-preserveaspectRatio-support-expected.txt: Removed.
  • platform/qt-5.0/svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size-expected.txt: Removed.
  • platform/qt-5.0/svg/as-image/animated-svg-as-image-same-image-expected.txt: Removed.
  • platform/qt-5.0/svg/as-image/same-image-two-instances-expected.txt: Removed.
  • platform/qt-5.0/svg/as-image/svg-image-change-content-size-expected.txt: Removed.
  • platform/qt-5.0/svg/as-object/svg-embedded-in-html-in-iframe-expected.txt: Removed.
  • platform/qt-5.0/svg/custom/pointer-events-image-css-transform-expected.txt: Removed.
  • platform/qt-5.0/svg/custom/pointer-events-text-css-transform-expected.txt: Removed.
  • platform/qt-5.0/svg/transforms/svg-css-transforms-clip-path-expected.txt: Removed.
  • platform/qt-5.0/svg/transforms/svg-css-transforms-expected.txt: Removed.
  • platform/qt-5.0/transitions/cross-fade-background-image-expected.png: Removed.
  • platform/qt-5.0/transitions/cross-fade-background-image-expected.txt: Removed.
  • platform/qt-5.0/transitions/cross-fade-border-image-expected.png: Removed.
  • platform/qt-5.0/transitions/cross-fade-border-image-expected.txt: Removed.
07:55 Changeset [102776] by ossy@webkit.org

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

Patch by Balazs Kelemen <kbalazs@webkit.org> on 2011-12-14
Reviewed by Simon Hausmann.

Don't depend on Q_WS_X11 anymore since it's not the Qt5
way to detect the platform. Make the guards depend
on our own configtest for fontconfig. For Qt4 we can still
use the preassumption that we have it on Linux.

  • DumpRenderTree/qt/DumpRenderTree.pro:
  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::open):
(WebCore::DumpRenderTree::initializeFonts):

  • DumpRenderTree/qt/DumpRenderTreeQt.h:
  • DumpRenderTree/qt/main.cpp:

(main): Additionally remove a nonsense piece of code that was
trying to reset the font settings - which is not necessary -
after we have already returned from main.

  • WebKitTestRunner/InjectedBundle/Target.pri:
  • WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:

(WTR::activateFonts):

  • WebKitTestRunner/Target.pri: Remove unnecessary fontconfig linkage

from WTR. It is not needed. We set up the fonts via the injected bundle.

  • qmake/config.tests/fontconfig/fontconfig.cpp: Added.

(main):

  • qmake/config.tests/fontconfig/fontconfig.pro: Added.
  • qmake/mkspecs/features/features.prf:
  • qmake/sync.profile:
07:33 Changeset [102775] by kbalazs@webkit.org

Unreviewed Qt-WK2 gardening.

[Qt][WK2] fast/dom/rtl-scroll-to-leftmost-and-resize.html fails
https://bugs.webkit.org/show_bug.cgi?id=74504

[Qt][WK2] css3/unicode-bidi-isolate-aharon-failing.html fails
https://bugs.webkit.org/show_bug.cgi?id=74505

Skip failing tests.

  • platform/qt-wk2/Skipped:
06:13 Changeset [102774] by haraken@chromium.org

Use [Supplemental] IDL in WebSocket
https://bugs.webkit.org/show_bug.cgi?id=74160

Reviewed by Adam Barth.

By using the [Supplemental] IDL, this patch moves declarations of WebSocket
attributes from DOMWindow.idl to websocket/DOMWindowWebSocket.idl,
which helps make WebSocket a self-contained module.

No new tests, no change in behavior.
Confirm that http/tests/websocket/* pass.

  • WebCore.gypi: Added DOMWindowWebSocket.idl.
  • page/DOMWindow.idl: Added the [Supplemented] IDL to WebSocket-related attributes. This [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL (See bug 73394 for more details).
  • websockets/DOMWindowWebSocket.idl: Added. Used the [Supplemental=DOMWindow] IDL. The attributes in this IDL file are treated as if they are described in DOMWindow.idl.
06:08 Changeset [102773] by pierre.rossi@gmail.com

Unreviewed fix after mobile theme changes.

05:58 Changeset [102772] by peter@chromium.org

[Chromium] Roll chromium DEPS (r113807 -> r114356)
https://bugs.webkit.org/show_bug.cgi?id=74496

Reviewed by Tony Gentilcore.

Roll deps to r114356 and update the location of sfntly to
pick up the change at Chromium.

  • DEPS:
05:57 Changeset [102771] by caio.oliveira@openbossa.org

[Qt] [WK2] Move QWebNavigationHistory to QQuickWebView
https://bugs.webkit.org/show_bug.cgi?id=74442

Reviewed by Simon Hausmann.

QWebNavigationHistory used QtWebPageProxy to be QObject parent of the inner models,
this patch change that to use OwnPtr instead. When creating the history object we pass
only the WKPageRef and let it get the backForwardList.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::didChangeBackForwardList):
(QQuickWebViewExperimental::navigationHistory):
(QQuickWebViewExperimental::goForwardTo):
(QQuickWebViewExperimental::goBackTo):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebnavigationhistory.cpp:

(QWebNavigationListModelPrivate::createWebNavigationModel):
(QWebNavigationHistoryPrivate::QWebNavigationHistoryPrivate):
(QWebNavigationHistoryPrivate::createHistory):
(QWebNavigationHistoryPrivate::goBackTo):
(QWebNavigationHistoryPrivate::goForwardTo):
(QWebNavigationListModel::QWebNavigationListModel):
(QWebNavigationHistory::backItems):
(QWebNavigationHistory::forwardItems):

  • UIProcess/API/qt/qwebnavigationhistory_p.h:
  • UIProcess/API/qt/qwebnavigationhistory_p_p.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):

  • UIProcess/qt/QtWebPageProxy.h:
05:51 Changeset [102770] by commit-queue@webkit.org

Add different salt to different types of selectors. So the CSS fast
path can tell the different between tags and class attributes with
otherwise identical values.
https://bugs.webkit.org/show_bug.cgi?id=74284

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2011-12-14
Reviewed by Antti Koivisto.

  • css/SelectorChecker.cpp:

(WebCore::collectElementIdentifierHashes):
(WebCore::collectDescendantSelectorIdentifierHashes):

  • css/SelectorChecker.h:
05:48 Changeset [102769] by vestbo@webkit.org

[Qt] Don't add WebCoreSupport and WebKit APIs to include WebCore's include path

Followup to r102679

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

Reviewed by Simon Hausmann.

05:20 Changeset [102768] by pierre.rossi@gmail.com

[Qt] Mobile theme could use a little refresh
https://bugs.webkit.org/show_bug.cgi?id=74293

Source/WebCore:

The look and feel of the "mobile theme" we're
using in QtWebKit dates back to the maemo 5 days.
This is an attempt at making it look less out of
place, and also support progress and range.

Reviewed by Kenneth Rohde Christiansen.

No new tests, this is still not the default theme
for tests.

  • DerivedSources.pri:
  • css/mobileThemeQt.css: Added.

(input[type="submit"], select):
(input[type="submit"]:disabled, input[type="submit"]:disabled:active, select:disabled, input[type="text"]:disabled):
(input[type="submit"]:active):

  • platform/qt/RenderThemeQt.cpp:

(WebCore::RenderThemeQt::extraDefaultStyleSheet):
(WebCore::StylePainter::StylePainter):
(WebCore::StylePainter::init):
(WebCore::StylePainter::~StylePainter):

  • platform/qt/RenderThemeQt.h:
  • platform/qt/RenderThemeQtMobile.cpp:

(WebCore::drawRectangularControlBackground):
(WebCore::shrinkRectToSquare):
(WebCore::StylePainterMobile::StylePainterMobile):
(WebCore::StylePainterMobile::~StylePainterMobile):
(WebCore::StylePainterMobile::drawCheckableBackground):
(WebCore::StylePainterMobile::sizeForPainterScale):
(WebCore::StylePainterMobile::drawChecker):
(WebCore::StylePainterMobile::findCheckBox):
(WebCore::StylePainterMobile::drawRadio):
(WebCore::StylePainterMobile::findRadio):
(WebCore::StylePainterMobile::drawMultipleComboButton):
(WebCore::StylePainterMobile::drawSimpleComboButton):
(WebCore::StylePainterMobile::getButtonImageSize):
(WebCore::StylePainterMobile::findComboButton):
(WebCore::StylePainterMobile::drawLineEdit):
(WebCore::StylePainterMobile::drawCheckBox):
(WebCore::StylePainterMobile::drawRadioButton):
(WebCore::StylePainterMobile::drawPushButton):
(WebCore::StylePainterMobile::drawComboBox):
(WebCore::StylePainterMobile::drawProgress):
(WebCore::StylePainterMobile::drawSliderThumb):
(WebCore::RenderThemeQtMobile::paintButton):
(WebCore::RenderThemeQtMobile::paintTextField):
(WebCore::RenderThemeQtMobile::setPopupPadding):
(WebCore::RenderThemeQtMobile::paintMenuList):
(WebCore::RenderThemeQtMobile::paintMenuListButton):
(WebCore::RenderThemeQtMobile::animationDurationForProgressBar):
(WebCore::RenderThemeQtMobile::paintProgressBar):
(WebCore::RenderThemeQtMobile::paintSliderTrack):
(WebCore::RenderThemeQtMobile::paintSliderThumb):
(WebCore::RenderThemeQtMobile::adjustSliderThumbSize):

  • platform/qt/RenderThemeQtMobile.h:

Tools:

Have MiniBrowser use the mobile theme when not
passed --desktop.

Reviewed by Kenneth Rohde Christiansen.

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::handleUserOptions):

05:00 Changeset [102767] by commit-queue@webkit.org

[Non-Mac] Change event should be fired when changing option by using keyboard.
https://bugs.webkit.org/show_bug.cgi?id=74384

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2011-12-14
Reviewed by Kent Tamura.

Source/WebCore:

Fire onchange event when option is changed using up/down/right/left/pageup/pagedown/home/end keys.

Test: fast/forms/select/menulist-onchange-fired-with-key-up-down.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
Setting the DispatchChangeEvent selection option flag when the option is selected using
up/down/right/left/pageup/pagedown/home/end keys.

LayoutTests:

Fire onchange event when option is changed using up/down/right/left/pageup/pagedown/home/end keys.

  • fast/forms/select/menulist-onchange-fired-with-key-up-down-expected.txt: Added.
  • fast/forms/select/menulist-onchange-fired-with-key-up-down.html: Added.
  • platform/chromium/test_expectations.txt:

Skipped for Chromium MAC.

  • platform/mac/Skipped:

Skipped for Apple MAC.

04:50 Changeset [102766] by alexis.menard@openbossa.org

[Qt] [Gardening] Remove qt-4.7 layout tests dir
https://bugs.webkit.org/show_bug.cgi?id=74426

Building trunk now depends on Qt >= 4.8, so no need to keep this directory
on the tree.

Patch by João Paulo Rechi Vita <jprvita@openbossa.org> on 2011-12-14
Reviewed by Csaba Osztrogonác.

Tools:

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

(QtPort.qt_version):
(QtPort.baseline_search_path):
(QtPort._skipped_file_search_paths):

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

(QtPortTest._assert_search_path):

LayoutTests:

  • platform/qt-4.7/Skipped: Removed.
04:50 Changeset [102765] by caio.oliveira@openbossa.org

[Qt][WK2] Remove DrawingArea and QtWebPageEventHandler code from QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74414

Reviewed by Simon Hausmann.

This also moves QtWebPageEventHandler to inside QQuickWebPagePrivate, to avoid
the WebPage having a backpointer to the QQuickWebView.

  • Target.pri:
  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPage::geometryChanged):
(QQuickWebPage::event):
(QQuickWebPagePrivate::QQuickWebPagePrivate):
(QQuickWebPagePrivate::initialize):
(QQuickWebPagePrivate::setDrawingAreaSize):
(QQuickWebPagePrivate::paintToCurrentGLContext):
(QQuickWebPagePrivate::resetPaintNode):

  • UIProcess/API/qt/qquickwebpage_p.h:
  • UIProcess/API/qt/qquickwebpage_p_p.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::initializeDesktop):
(QQuickWebViewPrivate::initializeTouch):
(QQuickWebViewPrivate::_q_resume):
(QQuickWebViewPrivate::processDidCrash):
(QQuickWebViewPrivate::didRelaunchProcess):
(QQuickWebViewPrivate::createDrawingAreaProxy):
(QQuickWebViewPrivate::updateVisibleContentRectAndScale):
(QQuickWebViewPrivate::_q_viewportTrajectoryVectorChanged):
(QQuickWebViewPrivate::updateViewportSize):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::createDrawingAreaProxy):

  • UIProcess/qt/QtPageClient.h:

(QtPageClient::findStringInCustomRepresentation):
(QtPageClient::countStringMatchesInCustomRepresentation):

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::startDrag):

  • UIProcess/qt/QtWebPageEventHandler.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::init):

  • UIProcess/qt/QtWebPageProxy.h:
03:42 Changeset [102764] by philn@webkit.org

Unreviewed, skip 2 tests failing on 32-bit GTK bot.

  • platform/gtk/Skipped:
03:27 Changeset [102763] by commit-queue@webkit.org

[Qt] Fix compilation of QtWebKit with --orientation-events without ENABLE_DEVICE_ORIENTATION
https://bugs.webkit.org/show_bug.cgi?id=74492

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-14
Reviewed by Simon Hausmann.

.:

  • Source/api.pri:

Source/WebKit/qt:

  • Api/qwebframe.cpp:

(QWebFramePrivate::_q_orientationChanged):

  • Api/qwebframe_p.h:
  • WebCoreSupport/DeviceMotionProviderQt.cpp:
  • WebCoreSupport/DeviceMotionProviderQt.h:
  • WebCoreSupport/DeviceOrientationProviderQt.cpp:
  • WebCoreSupport/DeviceOrientationProviderQt.h:
03:10 Changeset [102762] by commit-queue@webkit.org

[Gtk] rebaseline test results for editing/selection/transformed-selection-rects.html
https://bugs.webkit.org/show_bug.cgi?id=74307

Patch by Zan Dobersek <zandobersek@gmail.com> on 2011-12-14
Reviewed by Philippe Normand.

Update test results for editing/selection/transformed-selection-rects.html
and unskip the test.

  • platform/gtk/Skipped:
  • platform/gtk/editing/selection/transformed-selection-rects-expected.png:
  • platform/gtk/editing/selection/transformed-selection-rects-expected.txt:
02:31 Changeset [102761] by haraken@chromium.org

[Refactoring] In prepare-ChangeLog, make $isGit and $isSVN be used only
through parameter passing
https://bugs.webkit.org/show_bug.cgi?id=74485

Reviewed by Ryosuke Niwa.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. In this patch,
we make the following global variables be used only through parameter passing.

  • $isGit
  • $isSVN
  • Scripts/prepare-ChangeLog:

(generateFunctionLists):
(printDiff):
(diffFromToString):
(diffCommand):
(statusCommand):
(createPatchCommand):
(diffHeaderFormat):
(generateFileList):
(isAddedStatus):
(isConflictStatus):
(statusDescription):
(extractLineRange):

02:23 Changeset [102760] by commit-queue@webkit.org

[Qt] [WK2] Linking fails if GStreamer not installed after r102493
https://bugs.webkit.org/show_bug.cgi?id=74412

Patch by Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com> on 2011-12-14
Reviewed by Simon Hausmann.

Add -lrt to fix WK2 linking when gstreamer is not used.

  • Source/api.pri:
02:16 Changeset [102759] by ossy@webkit.org

Fix compilation for Qt with --minimal option after r102755.

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-14
Reviewed by Csaba Osztrogonác.

  • Api/qwebpage.cpp:

(QWebPagePrivate::QWebPagePrivate):

02:09 Changeset [102758] by philn@webkit.org

Unreviewed, mark a GTK accessibility test flaky and fix
expectation of http/tests/security/cross-origin-xsl-redirect-BLOCKED.html.

  • platform/gtk/test_expectations.txt:

platform/gtk/accessibility/unknown-roles-not-exposed.html is flaky.

02:06 Changeset [102757] by vsevik@chromium.org

Web Inspector: TreeOutline's is broken when li elements have padding-left different from 14px.
https://bugs.webkit.org/show_bug.cgi?id=74445

Reviewed by Pavel Feldman.

  • inspector/front-end/treeoutline.js:

(TreeElement.prototype.isEventWithinDisclosureTriangle):

02:04 Changeset [102756] by vsevik@chromium.org

Web Inspector: [Regression] Scripts panel debug sidebar toolbar should not be scrolled out of the screen.
https://bugs.webkit.org/show_bug.cgi?id=74447

Reviewed by Pavel Feldman.

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.wasShown):

  • inspector/front-end/scriptsPanel.css:

(#scripts-debug-toolbar):
(#scripts-debug-sidebar-contents):

01:57 Changeset [102755] by commit-queue@webkit.org

[Qt] DeviceOrientationClientMockQt should be removed in favor of DeviceOrientationClientMock
https://bugs.webkit.org/show_bug.cgi?id=74417

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-14
Reviewed by Simon Hausmann.

Based on original patch by Kenneth Christiansen.

.:

  • Source/api.pri:

Source/WebCore:

Already covered by current tests.

  • dom/DeviceOrientationController.h:

(WebCore::DeviceOrientationController::client):

Source/WebKit/qt:

Already covered by current tests.

  • Api/qwebpage.cpp:

(QWebPagePrivate::QWebPagePrivate):

  • WebCoreSupport/DeviceMotionProviderQt.cpp:

(WebCore::DeviceMotionProviderQt::DeviceMotionProviderQt):
(WebCore::DeviceMotionProviderQt::filter):

  • WebCoreSupport/DeviceMotionProviderQt.h:
  • WebCoreSupport/DeviceOrientationClientMockQt.cpp: Removed.
  • WebCoreSupport/DeviceOrientationClientMockQt.h: Removed.
  • WebCoreSupport/DeviceOrientationClientQt.cpp:

(WebCore::DeviceOrientationClientQt::DeviceOrientationClientQt):
(WebCore::DeviceOrientationClientQt::~DeviceOrientationClientQt):
(WebCore::DeviceOrientationClientQt::lastOrientation):

  • WebCoreSupport/DeviceOrientationClientQt.h:
  • WebCoreSupport/DeviceOrientationProviderQt.cpp:

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

  • WebCoreSupport/DeviceOrientationProviderQt.h:

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

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(toDeviceOrientationClientMock):
(DumpRenderTreeSupportQt::setMockDeviceOrientation):

  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Tools:

Already covered by current tests.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::~DumpRenderTree):

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:

(LayoutTestController::setMockDeviceOrientation):

01:51 Changeset [102754] by leo.yang@torchmobile.com.cn

[BlackBerry] Add notification support for the BlackBerry port
https://bugs.webkit.org/show_bug.cgi?id=73194

Patch by Robin Qiu <robin.qiu@torchmobile.com.cn> on 2011-12-14
Reviewed by Nikolas Zimmermann.

Contributed by Torch team, the main contributor is Robin Qiu
<robin.qiu@torchmobile.com.cn>.

Initial upstream, no new tests.

  • blackberry/WebCoreSupport/NotificationPresenterImpl.cpp: Added.

(WebKit::NotificationPresenterImpl::instance):
(WebKit::NotificationPresenterImpl::NotificationPresenterImpl):
(WebKit::NotificationPresenterImpl::~NotificationPresenterImpl):
(WebKit::NotificationPresenterImpl::show):
(WebKit::NotificationPresenterImpl::cancel):
(WebKit::NotificationPresenterImpl::notificationObjectDestroyed):
(WebKit::NotificationPresenterImpl::requestPermission):
(WebKit::NotificationPresenterImpl::onPermission):
(WebKit::NotificationPresenterImpl::cancelRequestsForPermission):
(WebKit::NotificationPresenterImpl::checkPermission):
(WebKit::NotificationPresenterImpl::notificationClicked):

  • blackberry/WebCoreSupport/NotificationPresenterImpl.h: Added.

There is already a header file: Source/WebCore/notifications/NotificationPresenter.h.
To avoid conflicting with the it, I name my header file to NotificationPresenterImpl.

01:50 Changeset [102753] by philn@webkit.org

Unreviewed, GTK baselines for new tests.

  • platform/gtk/accessibility/img-alt-tag-only-whitespace-expected.txt: Added.
  • platform/gtk/css1/box_properties/acid_test-expected.txt: Added.
  • platform/gtk/svg/clip-path/clip-path-css-transform-1-expected.txt: Added.
  • platform/gtk/svg/clip-path/clip-path-css-transform-2-expected.txt: Added.
  • platform/gtk/svg/custom/clip-path-with-css-transform-1-expected.txt: Added.
  • platform/gtk/svg/custom/clip-path-with-css-transform-2-expected.txt: Added.
  • platform/gtk/svg/custom/no-inherited-dashed-stroke-expected.txt: Added.
  • platform/gtk/svg/custom/path-moveto-only-rendering-expected.txt: Added.
  • platform/gtk/svg/custom/pointer-events-image-css-transform-expected.txt: Added.
  • platform/gtk/svg/custom/pointer-events-text-css-transform-expected.txt: Added.
  • platform/gtk/svg/custom/recursive-filter-expected.txt: Added.
  • platform/gtk/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.txt: Added.
  • platform/gtk/svg/custom/relative-sized-use-on-symbol-expected.txt: Added.
  • platform/gtk/svg/custom/subpaths-moveto-only-rendering-expected.txt: Added.
  • platform/gtk/svg/custom/use-on-symbol-inside-pattern-expected.txt: Added.
  • platform/gtk/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Added.
  • platform/gtk/svg/text/non-bmp-positioning-lists-expected.txt: Added.
  • platform/gtk/svg/transforms/svg-css-transforms-clip-path-expected.txt: Added.
  • platform/gtk/svg/transforms/svg-css-transforms-expected.txt: Added.
01:41 Changeset [102752] by morrita@google.com

Unreviewed expectation update.

  • platform/chromium-win/fast/gradients/css3-radial-gradients-expected.png:
  • platform/chromium-win/fast/gradients/css3-repeating-radial-gradients-expected.png:
01:29 Changeset [102751] by philn@webkit.org

Unreviewed, GTK rebaseline after r102748.

  • platform/gtk/css1/font_properties/font-expected.txt:
  • platform/gtk/css1/font_properties/font_variant-expected.txt:
  • platform/gtk/css1/pseudo/firstline-expected.txt:
  • platform/gtk/css1/pseudo/multiple_pseudo_elements-expected.txt:
  • platform/gtk/css2.1/t051201-c23-first-line-00-b-expected.txt:
  • platform/gtk/css2.1/t051202-c26-psudo-nest-00-c-expected.txt:
  • platform/gtk/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
  • platform/gtk/css2.1/t1505-c524-font-var-00-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-00-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-04-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-05-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-06-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-07-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-10-c-expected.txt:
  • platform/gtk/fast/css/font-face-cache-bug-expected.txt: Added.
  • platform/gtk/fast/css/font-face-multiple-faces-expected.txt:
  • platform/gtk/fast/css/font-face-opentype-expected.txt:
  • platform/gtk/fast/css/font-face-remote-expected.txt:
  • platform/gtk/fast/css/font-face-woff-expected.txt:
  • platform/gtk/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt:
  • platform/gtk/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt:
  • platform/gtk/fast/repaint/text-emphasis-h-expected.txt:
  • platform/gtk/fast/repaint/text-emphasis-v-expected.txt:
  • platform/gtk/fast/text/emphasis-avoid-ruby-expected.txt:
  • platform/gtk/fast/text/emphasis-combined-text-expected.txt:
  • platform/gtk/fast/text/emphasis-expected.txt:
  • platform/gtk/fast/text/emphasis-overlap-expected.txt:
  • platform/gtk/fast/text/emphasis-vertical-expected.txt:
  • platform/gtk/fast/writing-mode/broken-ideograph-small-caps-expected.txt:
  • platform/gtk/fast/writing-mode/broken-ideographic-font-expected.txt:
  • platform/gtk/fast/writing-mode/japanese-rl-text-with-broken-font-expected.txt:
  • platform/gtk/fonts/custom-font-missing-glyphs-expected.txt:
  • platform/gtk/fonts/font-face-with-complex-text-expected.txt:
  • platform/gtk/fonts/synthetic-oblique-positioning-expected.txt:
  • platform/gtk/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.txt:
01:12 Changeset [102750] by commit-queue@webkit.org

[BlackBerry] Switch to libjpeg for decoding
https://bugs.webkit.org/show_bug.cgi?id=74475

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Daniel Bates.

.:

Find libjpeg instead of libimg.

  • Source/cmake/OptionsBlackBerry.cmake:

Source/WebCore:

Switch to cross platform JPEG image decoder for decoding as this keeps
us inline with other ports and less to maintain.

  • PlatformBlackBerry.cmake:

Source/WebKit:

Append libjpeg instead of libimg.

  • blackberry/CMakeListsBlackBerry.txt:
01:10 Changeset [102749] by mrowe@apple.com

Fix <rdar://problem/10565568>.

Reviewed by Anders Carlsson.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::snapshot): Base the backing store size on the correct member variable.

00:35 Changeset [102748] by philn@webkit.org

[GTK] Bad text rendering since r101343
https://bugs.webkit.org/show_bug.cgi?id=73744

Reviewed by Martin Robinson.

Source/WebCore:

  • platform/graphics/freetype/FontPlatformDataFreeType.cpp:

(WebCore::setCairoFontOptionsFromFontConfigPattern): Keep Cairo
hint metrics unchanged for better visual font rendering results.

Tools:

Turn cairo hint metrics off for better font metrics reporting in
the tests. This is especially important for SVG.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(initializeGtkFontSettings):

  • WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:

(WTR::initializeGtkSettings):

00:25 Changeset [102747] by commit-queue@webkit.org

Upstream text codec and web string files of BlackBerry API
https://bugs.webkit.org/show_bug.cgi?id=73586

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Daniel Bates.

Initial upstream, no new tests.

  • blackberry/Api/WebKitTextCodec.cpp: Added.

(BlackBerry::WebKit::isSameEncoding):
(BlackBerry::WebKit::isASCIICompatibleEncoding):
(BlackBerry::WebKit::transcode):
(BlackBerry::WebKit::base64DecodePolicyForWebCore):
(BlackBerry::WebKit::base64Decode):
(BlackBerry::WebKit::base64Encode):
(BlackBerry::WebKit::unescapeURL):
(BlackBerry::WebKit::escapeURL):
(BlackBerry::WebKit::getExtensionForMimeType):

  • blackberry/Api/WebKitTextCodec.h: Added.
  • blackberry/Api/WebString.cpp: Added.

(BlackBerry::WebKit::WebString::WebString):
(BlackBerry::WebKit::WebString::~WebString):
(BlackBerry::WebKit::WebString::fromUtf8):
(BlackBerry::WebKit::WebString::operator=):
(BlackBerry::WebKit::WebString::utf8):
(BlackBerry::WebKit::WebString::characters):
(BlackBerry::WebKit::WebString::length):
(BlackBerry::WebKit::WebString::isEmpty):
(BlackBerry::WebKit::WebString::equal):
(BlackBerry::WebKit::WebString::equalIgnoringCase):

  • blackberry/Api/WebString.h: Added.
00:24 Changeset [102746] by morrita@google.com

Unreviewed expectation update.

  • platform/chromium-linux/fast/gradients/css3-radial-gradients-expected.png:
  • platform/chromium-linux/fast/gradients/css3-repeating-radial-gradients-expected.png:
00:01 Changeset [102745] by morrita@google.com

Unreviewed attempt for fixing windows build.

  • Included <wtf/MathExtras.h> which defined portable version of lround().
  • Add some static_cast<> to suppress warnings.
  • platform/animation/AnimationUtilities.h:

(WebCore::blend):

12/13/11:

23:34 Changeset [102744] by leo.yang@torchmobile.com.cn

[BlackBerry] Add the new plugin files into the build system.
https://bugs.webkit.org/show_bug.cgi?id=74483

Patch by Wei Charles <charles.wei@torchmobile.com.cn> on 2011-12-13
Reviewed by Daniel Bates.

No new tests, just add new files to the build system.

  • PlatformBlackBerry.cmake:
23:16 Changeset [102743] by fpizlo@apple.com

DFG should infer when local variables are doubles
https://bugs.webkit.org/show_bug.cgi?id=74480

Reviewed by Oliver Hunt.

Introduced the notion that a local variable (though not an argument, yet!) can
be stored as a double, and will be guaranteed to always contain a double. This
requires more magic in the OSR (conversion in both entry and exit). The inference
is quite unorthodox: all uses of a variable vote on whether they think it should
be a double or a JSValue, based on how they use it. If they use it in an integer
or boxed value context, they vote JSValue. If they use it in a double context,
they vote double. This voting is interleaved in the propagator's fixpoint, so
that variables voted double then have a double prediction propagated from them.
This interleaving is needed because a variable that actually always contains an
integer that always gets used in arithmetic that involves doubles may end up
being voted double, which then means that all uses of the variable will see a
double rather than an integer.

This is worth 18% to SunSpider/3d-cube, 7% to Kraken/audio-beat-detection, 7%
to Kraken/audio-fft, 6% to Kraken/imaging-darkroom, 20% to
Kraken/imaging-gaussian-blur, and just over 1% to Kraken/json-parse-financial.
It results in a 1% speed-up on SunSpider and a 4% speed-up in Kraken. Similar
results on JSVALUE32_64, though with a bigger win on Kraken (5%) and no overall
win on SunSpider.

  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::alreadyInRegisterFileAsUnboxedDouble):
(JSC::ValueRecovery::dump):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::boxDouble):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::noticeOSREntry):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • dfg/DFGOSREntry.h:
  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::vote):
(JSC::DFG::Propagator::doRoundOfDoubleVoting):
(JSC::DFG::Propagator::propagatePredictions):
(JSC::DFG::Propagator::fixupNode):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::ValueSource::dump):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::clearVotes):
(JSC::DFG::VariableAccessData::vote):
(JSC::DFG::VariableAccessData::doubleVoteRatio):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormatAccordingToVote):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormat):
(JSC::DFG::VariableAccessData::tallyVotesForShouldUseDoubleFormat):

  • runtime/Arguments.cpp:

(JSC::Arguments::tearOff):

  • runtime/Heuristics.cpp:

(JSC::Heuristics::initializeHeuristics):

  • runtime/Heuristics.h:
22:49 Changeset [102742] by ossy@webkit.org

[Qt] Unreviewed morning gardening.

  • platform/qt/Skipped: Skip new failing tests.
22:14 Changeset [102741] by commit-queue@webkit.org

[Forms] Default selection of select(menulist) should not be disabled
https://bugs.webkit.org/show_bug.cgi?id=74270

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-13
Reviewed by Kent Tamura.

Source/WebCore:

This patch changes default selection of select(menulist) element to

  1. Selected option element. If there are multiple options which have selected state, we pick the largest index option up. (same as current)
  2. Non-disabled option element (new behavior)
  3. The first option if all options are disabled. (new behavior)

Tests: fast/forms/select/menulist-disabled-option-expected.html

fast/forms/select/menulist-disabled-option.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::recalcListItems): Implement new logic for selection.

LayoutTests:

basic-selects.html will fail because select element displays disabled
option element "foo" at index 0 as default selection. This should be
non-disabled option "bar" at index 1.

menulist-disabled-option-expected.html checks default selection of
select(menulist) with disabled option element.

  • fast/forms/select/menulist-disabled-option-expected.html: Added.
  • fast/forms/select/menulist-disabled-option.html: Added.
  • platform/chromium/test_expectations.txt: Add fast/forms/basic-selects.html
  • platform/gtk/test_expectations.txt: Add fast/forms/basic-selects.html
  • platform/mac/test_expectations.txt: Add fast/forms/basic-selects.html
  • platform/qt/test_expectations.txt: Add fast/forms/basic-selects.html
  • platform/win/test_expectations.txt: Add fast/forms/basic-selects.html
21:52 Changeset [102740] by simon.fraser@apple.com

Share blend progress code
https://bugs.webkit.org/show_bug.cgi?id=74464

Reviewed by Dean Jackson.

Lots of places in the code had copies of the animation interpolation
logic "from + (to - from) * progress", in various forms.

Coalesce all these into calls to a few new inline functions in a new
AnimationUtilities.h header. Color and Length get their own blend fuctions
in their respective headers.

Covered by existing tests.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSGradientValue.cpp:
  • page/animation/AnimationBase.cpp:

(WebCore::blendFunc):

  • platform/Length.h:

(WebCore::Length::blend):

  • platform/animation/AnimationUtilities.h: Added.

(WebCore::blend):

  • platform/graphics/Color.h:

(WebCore::blend):

  • platform/graphics/transforms/PerspectiveTransformOperation.cpp:

(WebCore::PerspectiveTransformOperation::blend):

  • platform/graphics/transforms/RotateTransformOperation.cpp:

(WebCore::RotateTransformOperation::blend):

  • platform/graphics/transforms/ScaleTransformOperation.cpp:

(WebCore::ScaleTransformOperation::blend):

  • platform/graphics/transforms/SkewTransformOperation.cpp:

(WebCore::SkewTransformOperation::blend):

  • platform/graphics/transforms/TranslateTransformOperation.cpp:

(WebCore::TranslateTransformOperation::blend):

  • svg/SVGLength.h:

(WebCore::SVGLength::blend):

  • svg/SVGPathBlender.cpp:

(WebCore::blendFloatPoint):
(WebCore::SVGPathBlender::blendAnimatedDimensonalFloat):
(WebCore::SVGPathBlender::blendArcToSegment):

21:22 Changeset [102739] by commit-queue@webkit.org

Upstream 3 files into WebCore/platform/blackberry
ClipboardBlackBerry.cpp/h, PasteboardBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=74381

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-13
Reviewed by Rob Buis.

Main contributor:
Mike Fenton <mifenton@rim.com>

Initial upstream, no new tests.

  • platform/blackberry/ClipboardBlackBerry.cpp: Added.
  • platform/blackberry/ClipboardBlackBerry.h: Added.
  • platform/blackberry/PasteboardBlackBerry.cpp: Added.
21:19 Changeset [102738] by jamesr@google.com

Unreviewed, rolling out r102726.
http://trac.webkit.org/changeset/102726
https://bugs.webkit.org/show_bug.cgi?id=74154

Does not compile on clang

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::UpdatableTile::UpdatableTile):
(WebCore::TiledLayerChromium::createTile):

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

(WebCore::CCLayerTilingData::addTile):
(WebCore::CCLayerTilingData::takeTile):
(WebCore::CCLayerTilingData::tileAt):

  • platform/graphics/chromium/cc/CCLayerTilingData.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::DrawableTile::DrawableTile):
(WebCore::CCTiledLayerImpl::createTile):

21:15 Changeset [102737] by andersca@apple.com

Try to fix the Windows build.

Remove the callOnMainThread overload that takes a WTF::Function since it's not being used.

  • wtf/MainThread.cpp:
  • wtf/MainThread.h:
21:13 Changeset [102736] by haraken@chromium.org

[Refactoring] Remove several global variables from prepare-ChangeLog
https://bugs.webkit.org/show_bug.cgi?id=74389

Reviewed by David Kilzer.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. In this patch,
we make the following global variables being used only through parameter passing.

  • %paths
  • $changedFiles
  • $conflictFiles
  • $functionLists
  • $bugURL
  • Scripts/prepare-ChangeLog:

(findChangeLogs):
(generateNewChangeLogs):
(processPaths):
(generateFileList):
(firstDirectoryOrCwd):

21:07 Changeset [102735] by morrita@google.com

Unreviewed, rolling out r102732.
http://trac.webkit.org/changeset/102732

The last fix makes no sense...

  • platform/graphics/chromium/cc/CCLayerTilingData.h:
20:59 Changeset [102734] by commit-queue@webkit.org

HTML details summary not working with form controls
https://bugs.webkit.org/show_bug.cgi?id=74398

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-13
Reviewed by Kent Tamura.

Source/WebCore:

Allowed HTMLSummaryElement to skip the toggle logic if the event
target is a form control.

Test: fast/html/details-click-controls.html

  • html/HTMLSummaryElement.cpp:

(WebCore::isClickableControl):
(WebCore::HTMLSummaryElement::defaultEventHandler):

LayoutTests:

  • fast/html/details-click-controls-expected.txt: Added.
  • fast/html/details-click-controls.html: Added.
20:56 Changeset [102733] by commit-queue@webkit.org

Optimize to not use pow() in the inner loop in AudioParamTimeline
https://bugs.webkit.org/show_bug.cgi?id=73530

Patch by James Wei <james.wei@intel.com> on 2011-12-13
Reviewed by Kenneth Russell.

No new tests.

  • webaudio/AudioParamTimeline.cpp:

(WebCore:AudioParamTimeline:valuesForTimeRangeImpl):

20:49 Changeset [102732] by morrita@google.com

Unreviewed Chromium-Mac build fix trial.

  • platform/graphics/chromium/cc/CCLayerTilingData.h:
20:11 Changeset [102731] by commit-queue@webkit.org

[Chromium] Initialize Settings::m_perTileDrawingEnabled properly.
https://bugs.webkit.org/show_bug.cgi?id=74476

Patch by David Reveman <reveman@chromium.org> on 2011-12-13
Reviewed by James Robinson.

Add m_perTileDrawingEnabled(false) to WebCore::Settings initialize list.

No new tests.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

19:12 Changeset [102730] by andersca@apple.com

Add a very bare-bones implementation of bind and Function to WTF
https://bugs.webkit.org/show_bug.cgi?id=74462

Reviewed by Sam Weinig.

Source/JavaScriptCore:

In order to make it easier to package up function calls and send them across
threads, add a (currently very simple) implementation of WTF::bind and WTF::Function to a new
wtf/Functional.h header.

Currently, all bind can do is bind a nullary function and return a Function object that can be called and copied,
but I'll add more as the need arises.

(WTF::R):
(WTF::FunctionImplBase::~FunctionImplBase):
(WTF::FunctionWrapper::ResultType):
(WTF::FunctionBase::isNull):
(WTF::FunctionBase::FunctionBase):
(WTF::FunctionBase::impl):
(WTF::bind):

  • wtf/MainThread.cpp:

(WTF::callFunctionObject):
(WTF::callOnMainThread):

  • wtf/MainThread.h:
  • wtf/wtf.pro:

Source/WebCore:

Add a forwarding header for Functional.h.

  • ForwardingHeaders/wtf/Functional.h: Added.

Tools:

Add basic tests for WTF::Function and WTF::bind.

  • TestWebKitAPI/TestWebKitAPI.gypi:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/Functional.cpp: Added.

(TestWebKitAPI::returnFortyTwo):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/win/TestWebKitAPI.vcproj:
18:56 Changeset [102729] by dslomov@google.com

https://bugs.webkit.org/show_bug.cgi?id=74456
[V8][Chromium] Reenable dedicated worker layout tests.

Chromium-specific results are caused by exception message text differences between JSC and V8.

Reviewed by David Levin.

  • platform/chromium/fast/workers/use-machine-stack-expected.txt: Added.
  • platform/chromium/fast/workers/worker-constructor-expected.txt: Added.
  • platform/chromium/fast/workers/worker-location-expected.txt: Added.
  • platform/chromium/fast/workers/worker-script-error-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
18:55 Changeset [102728] by ggaren@apple.com

<rdar://problem/10577239> GC Crash introduced in r102545

Reviewed by Gavin Barraclough.

MarkedArgumentBuffer was still marking items in forwards order, even though
the argument order has been reversed.

I fixed this bug, and replaced address calculation code with some helper
functions -- mallocBase() and slotFor() -- so it stays fixed everywhere.

  • runtime/ArgList.cpp:

(JSC::MarkedArgumentBuffer::markLists):
(JSC::MarkedArgumentBuffer::slowAppend):

  • runtime/ArgList.h:

(JSC::MarkedArgumentBuffer::~MarkedArgumentBuffer):
(JSC::MarkedArgumentBuffer::at):
(JSC::MarkedArgumentBuffer::append):
(JSC::MarkedArgumentBuffer::last):
(JSC::MarkedArgumentBuffer::slotFor):
(JSC::MarkedArgumentBuffer::mallocBase):

18:32 Changeset [102727] by dpranke@chromium.org

chromium port - remove nacl hack in DEPS/gyp_webkit
https://bugs.webkit.org/show_bug.cgi?id=74150

Reviewed by Tony Chang.

This change reverts the change added in r101011; it is
no longer necessary to pull in anything from Native Client for
the chromium port to build.

  • DEPS:
  • gyp_webkit:
17:52 Changeset [102726] by enne@google.com

[chromium] Use HashMap<..., OwnPtr<Tile>> for compositor tilemap
https://bugs.webkit.org/show_bug.cgi?id=74154

Reviewed by James Robinson.

After r102410 landed, it's now possible to properly use an OwnPtr to
store tiles rather than hackily use a RefPtr.

Covered by the compositing/ layout tests.

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::UpdatableTile::create):
(WebCore::UpdatableTile::UpdatableTile):
(WebCore::TiledLayerChromium::createTile):

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

(WebCore::CCLayerTilingData::addTile):
(WebCore::CCLayerTilingData::takeTile):
(WebCore::CCLayerTilingData::tileAt):

  • platform/graphics/chromium/cc/CCLayerTilingData.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::DrawableTile::create):
(WebCore::DrawableTile::DrawableTile):
(WebCore::CCTiledLayerImpl::createTile):

17:52 Changeset [102725] by rniwa@webkit.org

Line breaks are lost when pasted into textarea text starting with a blank line set while textarea is hidden
https://bugs.webkit.org/show_bug.cgi?id=74126

Reviewed by Tony Chang.

The bug was caused by the code that generated text out of pre-rendered text was generating div's inside the fragment
pasted into textarea even though serialization algorithm in textarea doesn't handle block elements.

Fixed the bug by special-casing this in createFragmentFromText. In the long run, we should really get rid of this
whole pre-rendering trick.

  • editing/markup.cpp:

(WebCore::createFragmentFromText):
Merge 102392 - Line breaks are lost when pasted into textarea text starting with a blank line set while textarea is hidden
https://bugs.webkit.org/show_bug.cgi?id=74126

Reviewed by Tony Chang.

The bug was caused by the code that generated text out of pre-rendered text was generating div's inside the fragment
pasted into textarea even though serialization algorithm in textarea doesn't handle block elements.

Fixed the bug by special-casing this in createFragmentFromText. In the long run, we should really get rid of this
whole pre-rendering trick.

  • editing/markup.cpp:

(WebCore::createFragmentFromText):

http://crbug.com/104620
Review URL: http://codereview.chromium.org/8907027

17:51 Changeset [102724] by kov@webkit.org

Unreviewed build fix.

  • GNUmakefile.am: make sure we do not derreference the target link

if it already exists, and replace it with the new one instead,
otherwise we end up with a gtk link inside
Source/WebKit2/UIProcess/API/gtk, which causes the documentation
build to produce warnings, and make the build fail.

17:46 Changeset [102723] by fpizlo@apple.com

DFG OSR exit for UInt32ToNumber should roll forward, not roll backward
https://bugs.webkit.org/show_bug.cgi?id=74463

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Implements roll-forward OSR exit for UInt32ToNumber, which requires ValueRecoveries knowing
how to execute the slow path of UInt32ToNumber.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::lastOSRExit):

  • bytecode/CodeOrigin.h:

(JSC::CodeOrigin::operator!=):

  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::uint32InGPR):
(JSC::ValueRecovery::gpr):
(JSC::ValueRecovery::dump):

  • dfg/DFGAssemblyHelpers.cpp:
  • dfg/DFGAssemblyHelpers.h:
  • dfg/DFGOSRExit.h:

(JSC::DFG::OSRExit::valueRecoveryForOperand):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

Reviewed by Gavin Barraclough.

  • fast/js/dfg-uint32-to-number-expected.txt: Added.
  • fast/js/dfg-uint32-to-number.html: Added.
  • fast/js/script-tests/dfg-uint32-to-number.js: Added.

(foo):

17:17 Changeset [102722] by dslomov@google.com

https://bugs.webkit.org/show_bug.cgi?id=73691
[JSC] Implement correct order of window.postMessage arguments.
This change supports a new signature of windowPostMessage:

postMessage(message, targetOrigin[, transferrables])

as well as the legacy webkit-proprietary:

postMessage(message, [transferrables,] targetOrigin)

The latter is only supported for cases when targetOrigin is a String.

Reviewed by David Levin.

Source/WebCore:

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::handlePostMessage):

  • page/DOMWindow.idl:

LayoutTests:

  • fast/dom/Window/window-postmessage-args-expected.txt:
17:03 Changeset [102721] by adamk@chromium.org

[MutationObservers] Avoid allocations if no observers are present
https://bugs.webkit.org/show_bug.cgi?id=74423

Patch by Rafael Weinstein <rafaelw@chromium.org> on 2011-12-13
Reviewed by Ojan Vafai.

This patch adds Node::mayHaveMutationObserversOfType which can be used to check
if there are any observers at all which could receive a give type of mutation.
MutationObserverInterestGroup uses this to possibly exit early (returning
null) if no observers are present.

No tests needed. This patch is just a refactor.

  • css/CSSMutableStyleDeclaration.cpp:
  • dom/CharacterData.cpp:

(WebCore::CharacterData::dispatchModifiedEvent):

  • dom/ChildListMutationScope.cpp:

(WebCore::ChildListMutationAccumulator::MutationAccumulationRouter::incrementScopingLevel):

  • dom/Element.cpp:

(WebCore::enqueueAttributesMutationRecord):

  • dom/Node.cpp:

(WebCore::Node::mayHaveMutationObserversOfType):

  • dom/Node.h:
  • dom/WebKitMutationObserver.cpp:

(WebCore::MutationObserverInterestGroup::createIfNeeded):
(WebCore::MutationObserverInterestGroup::createForChildListMutation):
(WebCore::MutationObserverInterestGroup::createForCharacterDataMutation):
(WebCore::MutationObserverInterestGroup::createForAttributesMutation):
(WebCore::MutationObserverInterestGroup::MutationObserverInterestGroup):
(WebCore::MutationObserverInterestGroup::enqueueMutationRecord):

  • dom/WebKitMutationObserver.h:
16:20 Changeset [102720] by commit-queue@webkit.org

Export WebArrayBuffer::byteLength
https://bugs.webkit.org/show_bug.cgi?id=74438

Patch by Dave Michael <dmichael@chromium.org> on 2011-12-13
Reviewed by Darin Fisher.

  • public/WebArrayBuffer.h:
16:07 Changeset [102719] by ojan@chromium.org

Expanding context is broken for prepare-ChangeLog in the code review tool.
https://bugs.webkit.org/show_bug.cgi?id=74458

Reviewed by Adam Barth.

  • code-review-test.html:

-Moved all the tests into test* functions.
-Automated calling all test* functions.
-Added testIsChangeLog.

  • code-review.js:

Made the check for whether it's a ChangeLog file more robust.

16:00 Changeset [102718] by kevino@webkit.org

[wx] Don't make the bitmap transparent when using theme drawing
calls that don't support transparent bitmaps.
https://bugs.webkit.org/show_bug.cgi?id=74319

Reviewed by Kevin Ollivier.

15:59 Changeset [102717] by kling@webkit.org

REGRESSION (r102652): New window opens with zero size at produbanco.com
<http://webkit.org/b/74418> and <rdar://problem/10565998>

Reviewed by Anders Carlsson.

Don't use the cached window frame if it's empty (meaning we haven't received
a WindowAndViewFramesChanged message yet.) Instead use the synchronous
GetWindowFrame (WP->UIP) message.

This situation occurs when opening a new window via window.open(), in which
WebCore::createWindow() will query the windowRect() on the new window.

I spent a long time trying to write a layout test for this but couldn't come
up with something reliable. The windowRect() is non-empty before we get a
chance to run JS in/on the new window, and we can't check against the
requested geometry since it varies depending on whether the window manager
has shown the new window yet.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::windowRect):

15:54 Changeset [102716] by tony@chromium.org

Rolling out r102461, a change to a layout test to try to remove flakiness on Chromium.

http://trac.webkit.org/changeset/102461
Test is still flaky on Chromium, so rollout the change.

  • fast/replaced/width100percent-textarea.html:
15:50 Changeset [102715] by kevino@webkit.org

[wx] Add a URL argument to the wxWebView constructor,
and fix page calculations and margins on Windows and Mac.
https://bugs.webkit.org/show_bug.cgi?id=74316

Reviewed by Kevin Ollivier.

15:50 Changeset [102714] by tony@chromium.org

Inline all of initForRegionStyling except for the rarely used part for non-null regions.
https://bugs.webkit.org/show_bug.cgi?id=74435

Reviewed by Andreas Kling.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::initForRegionStyling): Inline setting of m_regionForStyling
(WebCore::CSSStyleSelector::initRegionRules): Move code that only
applies to CSSRegions into non-inlined code.

  • css/CSSStyleSelector.h:
15:39 Changeset [102713] by commit-queue@webkit.org

[Blackberry] Fix a leak in BackingStore class

Don't leak the blit generation condvar and mutex.

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

Patch by Arvid Nilsson <anilsson@rim.com> on 2011-12-13
Reviewed by Antonio Gomes.

  • blackberry/Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::~BackingStorePrivate):

15:38 Changeset [102712] by tony@chromium.org

inline setting m_regionForStyling since region is rarely set
https://bugs.webkit.org/show_bug.cgi?id=74435

Reviewed by Andreas Kling.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::initForRegionStyling):
(WebCore::CSSStyleSelector::initRegionRules):

  • css/CSSStyleSelector.h:
15:26 Changeset [102711] by ojan@chromium.org

Fix bug in the code review tool when readding a discarded comment
https://bugs.webkit.org/show_bug.cgi?id=74450

Reviewed by Adam Barth.

If you discard a comment that has a corresponding previousComment,
then we would incorrectly remove the comment baseline. So, the next
time you added a comment by clicking on the previousComment, we
would get undefined as the start line for the new comment.

All of this works fine until you try to restore the comment from
localStorage, at which point we throw an error because the start
line is undefined.

Also added some failsafes to better handle the case of corrupted comments.

  • code-review-test.html:
  • code-review.js:
15:19 Changeset [102710] by kbr@google.com

Unreviewed Chromium expectations update. Expand a couple of existing suppressions.

  • platform/chromium/test_expectations.txt:
15:17 Changeset [102709] by oliver@apple.com

Arguments object doesn't handle mutation of length property correctly
https://bugs.webkit.org/show_bug.cgi?id=74454

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Correct handling of arguments objects with overridden length property

  • interpreter/Interpreter.cpp:

(JSC::loadVarargs):

  • runtime/Arguments.cpp:

(JSC::Arguments::copyToArguments):
(JSC::Arguments::fillArgList):

LayoutTests:

Add tests of mutated arguments.length

  • fast/js/arguments-expected.txt:
  • fast/js/script-tests/arguments.js:

(argumentLengthIs5):
(duplicateArgumentAndReturnLast_call):
(duplicateArgumentAndReturnFirst_call):
(duplicateArgumentAndReturnLast_apply):
(duplicateArgumentAndReturnFirst_apply):

14:24 Changeset [102708] by simonjam@chromium.org

Unreviewed, Chromium Mac build fix.

  • page/PerformanceTiming.h:
14:12 Changeset [102707] by fpizlo@apple.com

DFG GetByVal CSE rule should match PutByValAlias
https://bugs.webkit.org/show_bug.cgi?id=74390

Reviewed by Geoff Garen.

Tiny win on some benchmarks. Maybe a 0.2% win on SunSpider.

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::getByValLoadElimination):

14:10 Changeset [102706] by commit-queue@webkit.org

Fix interpreter debug build.
https://bugs.webkit.org/show_bug.cgi?id=74439

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-13
Reviewed by Geoffrey Garen.

  • bytecode/ValueRecovery.h: Include stdio.h on debug builds.
14:05 Changeset [102705] by adamk@chromium.org

Update variable names in NamedNodeMap methods to match WebKit style
https://bugs.webkit.org/show_bug.cgi?id=74437

Reviewed by Ojan Vafai.

While reading these methods in preparation for a refactor, I found
them hard to understand due to short or confusing variable names.
I think the new names are much clearer, and match WebKit style.

  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::setNamedItem):
(WebCore::NamedNodeMap::removeNamedItem):

13:50 Changeset [102704] by kubo@profusion.mobi

watchlist: Add watchlist for EFL, CMake and libsoup code and put myself on it.
https://bugs.webkit.org/show_bug.cgi?id=74430

Reviewed by David Levin.

  • Scripts/webkitpy/common/config/watchlist:
13:42 Changeset [102703] by kbr@google.com

Unreviewed, rolling out r102693.
http://trac.webkit.org/changeset/102693
https://bugs.webkit.org/show_bug.cgi?id=74334

Broke Chromium Windows DRT build

  • features.gypi:
13:42 Changeset [102702] by commit-queue@webkit.org

Implement a function of vector multiply with SSE2 optimization in VectorMath.cpp.
https://bugs.webkit.org/show_bug.cgi?id=74048

Patch by Xingnan Wang <xingnan.wang@intel.com> on 2011-12-13
Reviewed by Benjamin Poulain.

The vmul is a function for an element-by-element multiply of two float vectors and we
get about 3.4x performance improvement with SSE2 optimization compared with the common
multiply.

Use vmul in AudioBus::copyWithSampleAccurateGainValuesFrom().

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::copyWithSampleAccurateGainValuesFrom):

  • platform/audio/VectorMath.cpp:

(WebCore::VectorMath::vmul):

  • platform/audio/VectorMath.h:
13:27 Changeset [102701] by vsevik@chromium.org

Web Inspector: [Regression] ResourceHeadersView sections should be expanded by default.
https://bugs.webkit.org/show_bug.cgi?id=74434

Reviewed by Pavel Feldman.

  • inspector/front-end/treeoutline.js:
13:23 Changeset [102700] by peter@chromium.org

[Chromium] Pull in FreeType and decrease check-out complexity for Android
https://bugs.webkit.org/show_bug.cgi?id=74401

Source/WebKit/chromium:

Pull in FreeType in the third_party/ directory from a separate git
repository at Chromium. This introduces a new prerequisite for checking
out the Chromium WebKit port for Android, namely that git needs to be
available on the system. gclient can handle this just fine.

Reviewed by Adam Barth.

  • DEPS:

Tools:

Decrease the check-out complexity by removing the need to first run
"update-webkit-chromium --chromium" prior to running it with
"--chromium-android", which was caused by an unversioned third_party/
directory being created. This moves the Android NDK to Source/WebKit/
chromium/, coming from third_party/ in that directory.

Reviewed by Adam Barth.

  • Scripts/update-webkit-chromium:
  • Scripts/webkitdirs.pm:

(buildChromiumMakefile):

13:19 Changeset [102699] by vsevik@chromium.org

Web Inspector: Network item view does not correctly decode "+" in request parameters.
https://bugs.webkit.org/show_bug.cgi?id=74422

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/network/request-parameters-decoding.html

  • inspector/front-end/ResourceHeadersView.js:

(WebInspector.ResourceHeadersView.prototype._formatParameter):
(WebInspector.ResourceHeadersView.prototype._refreshParms):

LayoutTests:

  • http/tests/inspector/network/request-parameters-decoding-expected.txt: Added.
  • http/tests/inspector/network/request-parameters-decoding.html: Added.
13:12 Changeset [102698] by alokp@chromium.org

[chromium] compositing/masks layout tests fail with accelerated drawing
https://bugs.webkit.org/show_bug.cgi?id=72760

Reviewed by Stephen White.

Source/WebCore:

Accelerated drawing path used to render bottom-up upright textures, which was opposite of what the software path rendered.
The textures produced by the accelerated path was flipped along Y in the shader to make it upside down as expected by the compositor.
This strategy does not work in case of masks which do not go through a shader and hence do not get flipped,
which results in a case where texture in the render surface is top-down, while that in the mask is bottom-up.
This patch makes accelerated drawing path render textures in the same orientation as the software path.
LayerTextureUpdater::Orientation was added to support the difference in texture orientation between software and accelerated paths.
Now that both paths produce textures in the same orientation, there is no need for it.

No new tests needed. Covered by existing compositing tests.

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/ImageLayerChromium.cpp:
  • platform/graphics/chromium/LayerTextureUpdater.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::TiledLayerChromium):
(WebCore::TiledLayerChromium::setLayerTreeHost):
(WebCore::TiledLayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/TiledLayerChromium.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::drawTiles):

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

(WebCore::CCTiledLayerImpl::setSkipsDraw):

Source/WebKit/chromium:

  • tests/TiledLayerChromiumTest.cpp:

(WTF::FakeLayerTextureUpdater::createTexture):

12:53 Changeset [102697] by zmo@google.com

Implement GLES2 CheckFramebufferStatus() behavior
https://bugs.webkit.org/show_bug.cgi?id=74228

Reviewed by Kenneth Russell.

Source/WebCore:

  • html/canvas/WebGLFramebuffer.cpp:

(WebCore::WebGLFramebuffer::getColorBufferWidth): Add ColorBuffer to the function name - this is more accurate.
(WebCore::WebGLFramebuffer::getColorBufferHeight): Ditto.
(WebCore::WebGLFramebuffer::checkStatus): Implement full semantics of GLES2 glCheckFramebufferStatus().
(WebCore::WebGLFramebuffer::onAccess): Call checkStatus().

  • html/canvas/WebGLFramebuffer.h:
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::checkFramebufferStatus): Call checkStatus().
(WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): No longer check framebuffer status.
(WebCore::WebGLRenderingContext::getBoundFramebufferWidth): Call getColorBufferWidth.
(WebCore::WebGLRenderingContext::getBoundFramebufferHeight): Call getColorBufferHeight.

LayoutTests:

  • fast/canvas/webgl/framebuffer-object-attachment-expected.txt:
  • fast/canvas/webgl/framebuffer-object-attachment.html: sync with khronos side, the whole file
  • fast/canvas/webgl/resources/webgl-test.js: synced with khronos side, two listed functions

(shouldGenerateGLError):
(glErrorShouldBe):

  • platform/chromium/test_expectations.txt: Mark framebuffer-object-*.html as failing due to mesa lib bug.
12:48 Changeset [102696] by simonjam@chromium.org

[Navigation Timing] Use monotonicallyIncreasingTime() instead of currentTime()
https://bugs.webkit.org/show_bug.cgi?id=58354

Reviewed by Pavel Feldman.

No new tests. Relies on existing webtiming-* tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp: Use monotonic times.

(WebCore::Document::setReadyState):
(WebCore::Document::finishedParsing):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didFinishLoadingImpl): Convert monotonicFinishTime to wall time if needed.

  • inspector/InspectorResourceAgent.cpp:

(WebCore::buildObjectForTiming): Convert monotonic requestTime to wall time.
(WebCore::buildObjectForResourceResponse): Plumbing for above.
(WebCore::buildObjectForCachedResource): Ditto.
(WebCore::InspectorResourceAgent::willSendRequest): Ditto.
(WebCore::InspectorResourceAgent::didReceiveResponse): Ditto.
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache): Ditto.

  • loader/DocumentLoadTiming.cpp: Added.

(WebCore::DocumentLoadTiming::DocumentLoadTiming):
(WebCore::DocumentLoadTiming::setNavigationStart): Determine reference time and root reference time.
(WebCore::DocumentLoadTiming::addRedirect): Moved logic from MainResourceLoader.
(WebCore::DocumentLoadTiming::convertMonotonicTimeToDocumentTime): Helper to compute wall time from monotonic time.

  • loader/DocumentLoadTiming.h: Turned into class. Made times monotonic.

(WebCore::DocumentLoadTiming::setUnloadEventStart):
(WebCore::DocumentLoadTiming::setUnloadEventEnd):
(WebCore::DocumentLoadTiming::setRedirectStart):
(WebCore::DocumentLoadTiming::setRedirectEnd):
(WebCore::DocumentLoadTiming::setFetchStart):
(WebCore::DocumentLoadTiming::setResponseEnd):
(WebCore::DocumentLoadTiming::setLoadEventStart):
(WebCore::DocumentLoadTiming::setLoadEventEnd):
(WebCore::DocumentLoadTiming::setHasSameOriginAsPreviousDocument):
(WebCore::DocumentLoadTiming::navigationStart):
(WebCore::DocumentLoadTiming::unloadEventStart):
(WebCore::DocumentLoadTiming::unloadEventEnd):
(WebCore::DocumentLoadTiming::redirectStart):
(WebCore::DocumentLoadTiming::redirectEnd):
(WebCore::DocumentLoadTiming::redirectCount):
(WebCore::DocumentLoadTiming::fetchStart):
(WebCore::DocumentLoadTiming::responseEnd):
(WebCore::DocumentLoadTiming::loadEventStart):
(WebCore::DocumentLoadTiming::loadEventEnd):
(WebCore::DocumentLoadTiming::hasCrossOriginRedirect):
(WebCore::DocumentLoadTiming::hasSameOriginAsPreviousDocument):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
(WebCore::FrameLoader::loadProvisionalItemFromCachedPage):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::willSendRequest): Moved logic to DocumentLoadTiming.
(WebCore::MainResourceLoader::didReceiveData): Use monotonic time.
(WebCore::MainResourceLoader::didFinishLoading): Ditto.
(WebCore::MainResourceLoader::load):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::dispatchLoadEvent):

  • page/DOMWindow.h: Removed dispatchTimedEvent. It doesn't really help in the new model.
  • page/PerformanceNavigation.cpp:

(WebCore::PerformanceNavigation::redirectCount):

  • page/PerformanceTiming.cpp: Removed skew correction code. This should never happen now.

(WebCore::PerformanceTiming::navigationStart):
(WebCore::PerformanceTiming::unloadEventStart):
(WebCore::PerformanceTiming::unloadEventEnd):
(WebCore::PerformanceTiming::redirectStart):
(WebCore::PerformanceTiming::redirectEnd):
(WebCore::PerformanceTiming::fetchStart):
(WebCore::PerformanceTiming::responseEnd):
(WebCore::PerformanceTiming::domLoading):
(WebCore::PerformanceTiming::domInteractive):
(WebCore::PerformanceTiming::domContentLoadedEventStart):
(WebCore::PerformanceTiming::domContentLoadedEventEnd):
(WebCore::PerformanceTiming::domComplete):
(WebCore::PerformanceTiming::loadEventStart):
(WebCore::PerformanceTiming::loadEventEnd):
(WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute): Used for ResourceLoadTiming.
(WebCore::PerformanceTiming::monotonicTimeToIntegerMilliseconds): Used for DocumentTiming and DocumentLoadTiming.

  • page/PerformanceTiming.h:
  • platform/network/ResourceLoadTiming.cpp:

(WebCore::ResourceLoadTiming::convertResourceLoadTimeToDocumentTime):

  • platform/network/ResourceLoadTiming.h: Added helper function to convert to wall times. Added instructions for use.
12:40 Changeset [102695] by adamk@chromium.org

Reduce code duplication in Element::setAttribute methods
https://bugs.webkit.org/show_bug.cgi?id=74425

Reviewed by Ryosuke Niwa.

Two overloads of Element::setAttribute share almost all their code,
including tricky logic around updating the appropriate Attribute and
Attr objects and notifying the Inspector and MutationObservers.

This patch puts the common logic in a new setAttributeInternal method
which is called by the other two.

No new tests, refactoring only.

  • dom/Element.cpp:

(WebCore::Element::setAttribute):
(WebCore::Element::setAttributeInternal):

  • dom/Element.h:
11:49 Changeset [102694] by fpizlo@apple.com

DFG should know exactly why recompilation was triggered
https://bugs.webkit.org/show_bug.cgi?id=74362

Reviewed by Oliver Hunt.

Each OSR exit is now individually counted, as well as counting the total number
of OSR exits that occurred in a code block. If recompilation is triggered, we
check to see if there are OSR exit sites that make up a sufficiently large
portion of the total OSR exits that occurred. For any such OSR exit sites, we
add a description of the site (bytecode index, kind) to a data structure in the
corresponding baseline CodeBlock. Then, when we recompile the code, we immediately
know which speculations would be unwise based on the fact that previous such
speculations proved to be fruitless.

This means 2% win on two of the SunSpider string tests, a 4% win on V8's deltablue,
and 5% on Kraken's imaging-darkroom. It is only a minor win in the averages, less
than 0.5%.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::tallyFrequentExitSites):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::addFrequentExitSite):
(JSC::CodeBlock::exitProfile):
(JSC::CodeBlock::reoptimize):
(JSC::CodeBlock::tallyFrequentExitSites):

  • bytecode/DFGExitProfile.cpp: Added.

(JSC::DFG::ExitProfile::ExitProfile):
(JSC::DFG::ExitProfile::~ExitProfile):
(JSC::DFG::ExitProfile::add):
(JSC::DFG::QueryableExitProfile::QueryableExitProfile):
(JSC::DFG::QueryableExitProfile::~QueryableExitProfile):

  • bytecode/DFGExitProfile.h: Added.

(JSC::DFG::exitKindToString):
(JSC::DFG::exitKindIsCountable):
(JSC::DFG::FrequentExitSite::FrequentExitSite):
(JSC::DFG::FrequentExitSite::operator!):
(JSC::DFG::FrequentExitSite::operator==):
(JSC::DFG::FrequentExitSite::hash):
(JSC::DFG::FrequentExitSite::bytecodeOffset):
(JSC::DFG::FrequentExitSite::kind):
(JSC::DFG::FrequentExitSite::isHashTableDeletedValue):
(JSC::DFG::FrequentExitSiteHash::hash):
(JSC::DFG::FrequentExitSiteHash::equal):
(JSC::DFG::QueryableExitProfile::hasExitSite):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::baselineCodeBlockForOriginAndBaselineCodeBlock):
(JSC::DFG::AssemblyHelpers::baselineCodeBlockFor):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::makeDivSafe):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::OSRExit::considerAddingAsFrequentExitSiteSlow):

  • dfg/DFGOSRExit.h:

(JSC::DFG::OSRExit::considerAddingAsFrequentExitSite):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::compileGetCharCodeAt):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnByteArray):
(JSC::DFG::SpeculativeJIT::compileGetTypedArrayLength):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileInstanceOfForObject):
(JSC::DFG::SpeculativeJIT::compileSoftModulo):
(JSC::DFG::SpeculativeJIT::compileArithMul):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • runtime/Heuristics.cpp:

(JSC::Heuristics::initializeHeuristics):

  • runtime/Heuristics.h:
11:43 Changeset [102693] by senorblanco@chromium.org

Enable CSS_FILTERS in Chromium.
https://bugs.webkit.org/show_bug.cgi?id=74334

Reviewed by Kenneth Russell.

  • features.gypi:
11:39 Changeset [102692] by msaboff@apple.com

Cleanup of StringImpl::equal in r102631 post commit
https://bugs.webkit.org/show_bug.cgi?id=74421

Reviewed by Darin Adler.

  • wtf/text/AtomicString.h:

(WTF::operator==): Removed cast no longer needed.

  • wtf/text/StringImpl.h:

(WTF::equal): Changed template to several overloaded methods.

10:48 Changeset [102691] by beidson@apple.com

<http://webkit.org/b/74420> Disable deprecation warnings around more code where we
cannot easily switch away from the deprecated APIs.

Reviewed by Mark Rowe.

  • bindings/objc/DOMInternal.mm:
  • bridge/objc/objc_instance.mm:
10:34 Changeset [102690] by robert@webkit.org

CSS 2.1 failure: eof-002.htm fails
https://bugs.webkit.org/show_bug.cgi?id=74309

Reviewed by Dean Jackson.

Source/WebCore:

Test: css2.1/20110323/eof-002-expected.html

  • css/CSSGrammar.y: Treat EOF during a function expression with an open parenthesis as a close parenthesis.

LayoutTests:

  • css2.1/20110323/eof-002-expected.html: Added.
  • css2.1/20110323/eof-002.htm: Added.
10:23 Changeset [102689] by jamesr@google.com

Merge 102611 - [chromium] Remove assumption that empty surface is always at end of list
https://bugs.webkit.org/show_bug.cgi?id=74037

Patch by Shawn Singh <shawnsingh@chromium.org> on 2011-12-12
Reviewed by James Robinson.

Source/WebCore:

Test case added to CCLayerTreeHostCommonTest.cpp, which reproduces
a crash reported in http://code.google.com/p/chromium/issues/detail?id=106734

This patch fixes the crash in a less risky way to be merged into
m17, but the root of the issue needs to be addressed in a
follow-up patch.

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

(WebCore::calculateDrawTransformsAndVisibilityInternal):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:

(WebCore::TEST):

BUG=106734
TBR=jamesr@chromium.org
Review URL: http://codereview.chromium.org/8890079

10:20 Changeset [102688] by adamk@chromium.org

V8Proxy cleanup: replace custom logging methods with standard WebCore calls
https://bugs.webkit.org/show_bug.cgi?id=74220

Reviewed by Adam Barth.

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:
  • bindings/v8/custom/V8CustomXPathNSResolver.cpp:

(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

10:19 Changeset [102687] by japhet@chromium.org

Revert 102683 - Revert 96912 - Always call setActive() in WebViewImpl::setFocus(),
not just when enabling focus.
https://bugs.webkit.org/show_bug.cgi?id=65220

Reviewed by Darin Fisher.

  • WebKit.gyp:
  • WebKit.gypi:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setFocus):

  • tests/FrameTestHelpers.cpp: Added, refactored out of WebFrameTest.cpp.

(WebKit::FrameTestHelpers::registerMockedURLLoad):
(WebKit::FrameTestHelpers::loadFrame):
(WebKit::FrameTestHelpers::defaultWebFrameClient):
(WebKit::FrameTestHelpers::defaultWebViewClient):
(WebKit::FrameTestHelpers::createWebViewAndLoad):

  • tests/FrameTestHelpers.h: Added, refactored out of WebFrameTest.cpp.
  • tests/WebFrameTest.cpp:
  • tests/WebViewTest.cpp: Added.

TBR=japhet@chromium.org
Review URL: http://codereview.chromium.org/8895026

TBR=japhet@chromium.org
Review URL: http://codereview.chromium.org/8929009

10:12 Changeset [102686] by mrobinson@webkit.org

Fix the 'Reviewed by' field in my last ChangeLog entry.

10:10 Changeset [102685] by mrobinson@webkit.org

build-jsc passing incorrect args to buildGtkProject
https://bugs.webkit.org/show_bug.cgi?id=74308

Reviewed by NOBODY.

  • Scripts/build-webkit: Instead of invoking buildGtkProject with

another argument about webkit2, unshift a --disable-webkit2
argument onto the buildArgs.

  • Scripts/webkitdirs.pm: Remove $enableWebKit2 arg. Only save autogen.sh

arguments for WebKit to prevent unnecessary reconfiguration when build-webkit
and build-jsc are run one after the other.

09:20 Changeset [102684] by ossy@webkit.org

[Qt] REGRESSION(102679): It broke Qt5-WK1 build
https://bugs.webkit.org/show_bug.cgi?id=74413

Unreviewed buildfix.

  • qmake/mkspecs/features/webcore.prf: Temporarily revert a part of r102679 until a proper fix.
09:13 Changeset [102683] by japhet@chromium.org

Revert 96912 - Always call setActive() in WebViewImpl::setFocus(),
not just when enabling focus.
https://bugs.webkit.org/show_bug.cgi?id=65220

Reviewed by Darin Fisher.

  • WebKit.gyp:
  • WebKit.gypi:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setFocus):

  • tests/FrameTestHelpers.cpp: Added, refactored out of WebFrameTest.cpp.

(WebKit::FrameTestHelpers::registerMockedURLLoad):
(WebKit::FrameTestHelpers::loadFrame):
(WebKit::FrameTestHelpers::defaultWebFrameClient):
(WebKit::FrameTestHelpers::defaultWebViewClient):
(WebKit::FrameTestHelpers::createWebViewAndLoad):

  • tests/FrameTestHelpers.h: Added, refactored out of WebFrameTest.cpp.
  • tests/WebFrameTest.cpp:
  • tests/WebViewTest.cpp: Added.

TBR=japhet@chromium.org
Review URL: http://codereview.chromium.org/8895026

08:31 Changeset [102682] by reed@google.com

[skia] need new baselines when SKIA_TEXT is enabled
https://bugs.webkit.org/show_bug.cgi?id=74408

Reviewed by NOBODY. unreviewed, update expectations

  • platform/chromium/test_expectations.txt:
08:26 Changeset [102681] by ossy@webkit.org

[Qt] Unreviewed speculativ debug buildfix after r102679.

  • QtTestBrowser/QtTestBrowser.pro:
  • QtTestBrowser/main.cpp:
07:47 Changeset [102680] by caio.oliveira@openbossa.org

[Qt][WK2] Make QtPageClient dispatch directly to WebView when possible
https://bugs.webkit.org/show_bug.cgi?id=74407

Reviewed by Simon Hausmann.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::~QQuickWebViewPrivate):
(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::pageDidRequestScroll):
(QQuickWebViewPrivate::processDidCrash):
(QQuickWebViewPrivate::didRelaunchProcess):
(QQuickWebViewPrivate::viewSize):
(QQuickWebViewPrivate::didReceiveMessageFromNavigatorQtObject):
(QQuickWebViewExperimental::QQuickWebViewExperimental):
(QQuickWebView::QQuickWebView):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::QtPageClient):
(QtPageClient::setViewNeedsDisplay):
(QtPageClient::pageDidRequestScroll):
(QtPageClient::processDidCrash):
(QtPageClient::didRelaunchProcess):
(QtPageClient::didChangeContentsSize):
(QtPageClient::didChangeViewportProperties):
(QtPageClient::createPopupMenuProxy):
(QtPageClient::didReceiveMessageFromNavigatorQtObject):
(QtPageClient::viewSize):
(QtPageClient::isViewFocused):
(QtPageClient::isViewVisible):

  • UIProcess/qt/QtPageClient.h:

(QtPageClient::initialize):

  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):

  • UIProcess/qt/QtWebPageProxy.h:
07:19 Changeset [102679] by vestbo@webkit.org

[Qt] Get rid of layering violations in includes

WebKit/qt/API and WebKit/qt/WebCoreSupport should not be included
in the webcore.prf, but rather in each target that specificly needs
headers in these location. We used to include them directly in webcore
since we had layering violations between WebCore and WebKit, but now
that they are gone there's no reason to do that.

Reviewed by Simon Hausmann.

07:13 Changeset [102678] by philn@webkit.org

Unreviewed, skip 4 new failing tests on GTK.

  • platform/gtk/Skipped:
05:41 Changeset [102677] by commit-queue@webkit.org

[NRWT] It crashes intermittently when there are WebProcess crashes
https://bugs.webkit.org/show_bug.cgi?id=73451

Use self.poll() instead of self._proc.poll() because it checks if self._proc is None or not.

Patch by János Badics <dicska@gmail.com> on 2011-12-13
Reviewed by Kenneth Rohde Christiansen.

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

(ServerProcess._check_for_crash):

05:39 Changeset [102676] by carlosgc@webkit.org

Unreviewed. Fix GTK+ API docs build.

  • gtk/generate-gtkdoc:

(get_webkit2_options): Ignore WebKitUIClient since it's private
API.

05:31 Changeset [102675] by carlosgc@webkit.org

[GTK] Add support for javascript dialogs in WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=71362

Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitUIClient.cpp:

(runJavaScriptAlert): Call webkitWebViewRunJavaScriptAlert().
(runJavaScriptConfirm): Call webkitWebViewRunJavaScriptConfirm().
(runJavaScriptPrompt): Call webkitWebViewRunJavaScriptPrompt().
(webkitUIClientAttachUIClientToPage): Add implementation for
runJavaScriptAlert, runJavaScriptConfirm and runJavaScriptPrompt
callbacks.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewCreateJavaScriptDialog): Helper function to create
javascript dialogs.
(webkitWebViewScriptAlert): Default implementation of signal
WebKitWebView::script-alert that shows a message dialog.
(webkitWebViewScriptConfirm): Default implementation of signal
WebKitWebView::script-confirm that shows a question dialog.
(webkitWebViewScriptPrompt): Default implementation of signal
WebKitWebView::script-prompt that shows a question dialog with a
text entry.
(webkit_web_view_class_init):
(webkitWebViewRunJavaScriptAlert): Emit WebKitWebView::script-alert.
(webkitWebViewRunJavaScriptConfirm): Emit WebKitWebView::script-confirm.
(webkitWebViewRunJavaScriptPrompt): Emit WebKitWebView::script-prompt.

  • UIProcess/API/gtk/WebKitWebView.h:
  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(testWebViewJavaScriptDialogs):
(beforeAll):

  • UIProcess/API/gtk/webkit2marshal.list:
05:28 Changeset [102674] by kenneth@webkit.org

[Qt] Make sure that touch events result in the page view gaining focus

Reviewed by Simon Hausmann.

  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPage::touchEvent): Force active focus.

  • UIProcess/API/qt/qquickwebview.cpp:
  • UIProcess/API/qt/qquickwebview_p.h: Remove ::touchEvent override.
05:23 Changeset [102673] by carlosgc@webkit.org

[GTK] Initial UI client implementation for WebKit2 GTK +API
https://bugs.webkit.org/show_bug.cgi?id=69753

Reviewed by Martin Robinson.

  • GNUmakefile.am: Add new files to compilation.
  • UIProcess/API/gtk/WebKitUIClient.cpp: Added.

(createNewPage): Call webkitWebViewCreateNewPage.
(showPage): Call webkitWebViewReadyToShowPage.
(closePage): Call webkitWebViewClosePage.
(webkitUIClientAttachUIClientToPage): Initialize UI client and
attach it to the given page.
(webkit_ui_client_init):
(webkit_ui_client_class_init):

  • UIProcess/API/gtk/WebKitUIClient.h: Added.
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewCreate): Default implementation of signal
WebKitWebView::create that simply returns NULL.
(webkitWebViewConstructed): Create the default UI client.
(webkitWebViewAccumulatorObjectHandled):
(webkit_web_view_class_init):
(webkitWebViewCreateNewPage): Emit create signal.
(webkitWebViewReadyToShowPage): Emit ready-to-show signal.
(webkitWebViewClosePage): Emit close signal.

  • UIProcess/API/gtk/WebKitWebView.h:
  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(testWebViewCreateReadyClose):
(beforeAll):

  • UIProcess/API/gtk/webkit2marshal.list:
05:13 Changeset [102672] by ossy@webkit.org

[Qt] Add Qt platform specific expected result after r102602.

Unreviewed gardening.

Patch by Oliver Varga <voliver@inf.u-szeged.hu> on 2011-12-13

  • platform/qt/http/tests/cache/cancel-during-revalidation-succeeded-expected.png: Added.
  • platform/qt/http/tests/cache/cancel-during-revalidation-succeeded-expected.txt: Added.
04:45 Changeset [102671] by vsevik@chromium.org

Web Inspector: Add scripts navigator sidebar to scripts panel.
https://bugs.webkit.org/show_bug.cgi?id=73086

Reviewed by Pavel Feldman.

Source/WebCore:

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.sh:
  • inspector/front-end/Images/domain.png: Added.
  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype.suggestedFileName):

  • inspector/front-end/ScriptsNavigator.js: Added.
  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded.get if):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
(WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
(WebInspector.ScriptsPanel.prototype._reset):
(WebInspector.ScriptsPanel.prototype._removeSourceFrame):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
(WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
(WebInspector.ScriptsPanel.prototype._updateExecutionLine):
(WebInspector.ScriptsPanel.prototype._scriptSelectedInNavigator):
(WebInspector.ScriptsPanel.prototype._createDebugToolbar):

  • inspector/front-end/Settings.js:
  • inspector/front-end/TabbedPane.js:

(WebInspector.TabbedPane.prototype.appendTab):
(WebInspector.TabbedPane.prototype.selectTab):
(WebInspector.TabbedPane.prototype.highlightLine):
(WebInspector.TabbedPane.prototype.elementsToRestoreScrollPositionsFor):

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode.prototype.get domain):
(WebInspector.UISourceCode.prototype.get folderName):
(WebInspector.UISourceCode.prototype.get displayName):
(WebInspector.UISourceCode.prototype._parseURL):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.css:

(.tabbed-pane):
(.tabbed-pane-content):

  • inspector/front-end/inspector.html:
  • inspector/front-end/networkPanel.css:
  • inspector/front-end/scriptsPanel.css:

(#scripts-navigator-resizer-widget):
(.scripts-navigator-domain-tree-item .icon):
(.scripts-navigator-folder-tree-item .icon):
(.scripts-navigator-script-tree-item .icon):
(.scripts.panel .navigator):
(#scripts-navigator-tabbed-pane .tabbed-pane-header):
(#scripts-navigator-tabbed-pane .tabbed-pane-content):
(.scripts.panel .navigator li):
(.scripts.panel .navigator :focus li.selected):
(.scripts.panel .navigator li.selected .selection):
(.scripts.panel .navigator :focus li.selected .selection):
(.scripts.panel .navigator .icon):
(.scripts.panel .base-navigator-tree-element-title):

  • inspector/front-end/treeoutline.js:

(TreeOutline):
(TreeOutline.prototype.appendChild):

LayoutTests:

  • inspector/debugger/scripts-panel.html:
  • inspector/debugger/scripts-sorting.html:
04:35 Changeset [102670] by caio.oliveira@openbossa.org

[Qt][WK2] Move load & navigation related functions out of QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74395

Reviewed by Simon Hausmann.

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::_q_onVisibleChanged):
(QQuickWebViewPrivate::updateViewportSize):
(QQuickWebViewPrivate::computeViewportConstraints):
(QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
(QQuickWebViewPrivate::webPageProxy):
(QQuickWebView::load):
(QQuickWebView::goBack):
(QQuickWebView::goForward):
(QQuickWebView::stop):
(QQuickWebView::reload):
(QQuickWebView::url):
(QQuickWebView::canGoBack):
(QQuickWebView::canGoForward):
(QQuickWebView::loading):
(QQuickWebView::canReload):
(QQuickWebView::title):
(QQuickWebView::loadHtml):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::didReceiveMessageFromNavigatorQtObject):

  • UIProcess/qt/QtWebPageProxy.h:
04:03 Changeset [102669] by kling@webkit.org

CollectionCache: Remove unused copy constructor and make it noncopyable.
<http://webkit.org/b/74378>

Reviewed by Simon Hausmann.

  • html/CollectionCache.cpp:
  • html/CollectionCache.h:
02:37 Changeset [102668] by bashi@chromium.org

Unreviewed Chromium test expectations update. Changed expectation of
editing/spelling/grammer-paste.html.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-13

  • platform/chromium/test_expectations.txt:
02:29 Changeset [102667] by carlosgc@webkit.org

Unreviewed. Fix GTK+ build after r102640.

  • GNUmakefile.am: Add DownloadProxy sources again.
02:24 Changeset [102666] by caio.oliveira@openbossa.org

[Qt][WK2] Move undo & edit command PageClient callbacks into QtWebUndoController
https://bugs.webkit.org/show_bug.cgi?id=74364

Reviewed by Simon Hausmann.

The four callbacks in PageClient related to Undo depend only on the QUndoStack. So we
move their handling to a QtWebUndoController (owned by QQuickWebViewPrivate). This also
make QtWebUndoCommand an implementation detail.

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::registerEditCommand):
(QtPageClient::clearAllEditCommands):
(QtPageClient::canUndoRedo):
(QtPageClient::executeUndoRedo):

  • UIProcess/qt/QtPageClient.h:

(QtPageClient::initialize):

  • UIProcess/qt/QtWebPageProxy.cpp:
  • UIProcess/qt/QtWebPageProxy.h:
  • UIProcess/qt/QtWebUndoController.cpp: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoCommand.cpp.

(QtWebUndoCommand::inUndoRedo):
(QtWebUndoCommand::QtWebUndoCommand):
(QtWebUndoCommand::~QtWebUndoCommand):
(QtWebUndoCommand::redo):
(QtWebUndoCommand::undo):
(QtWebUndoController::QtWebUndoController):
(QtWebUndoController::registerEditCommand):
(QtWebUndoController::clearAllEditCommands):
(QtWebUndoController::canUndoRedo):
(QtWebUndoController::executeUndoRedo):

  • UIProcess/qt/QtWebUndoController.h: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoCommand.h.
02:14 Changeset [102665] by jarred@sencha.com

XHR should use m_responseTypeCode internally to be consistent with WebKit coding style
https://bugs.webkit.org/show_bug.cgi?id=74330

Reviewed by Alexey Proskuryakov.

No new tests needed, no behavioral changes.

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseText):
(WebCore::XMLHttpRequest::responseXML):
(WebCore::XMLHttpRequest::responseBlob):
(WebCore::XMLHttpRequest::didReceiveData):

  • xml/XMLHttpRequest.h:

(WebCore::XMLHttpRequest::asBlob):

02:05 Changeset [102664] by bashi@chromium.org

Unreviewed Chromium test expectations update.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-13

  • platform/chromium/test_expectations.txt:
02:04 Changeset [102663] by haraken@chromium.org

Use the [Supplemental] IDL for webaudio attributes in Chromium
https://bugs.webkit.org/show_bug.cgi?id=73394

Reviewed by Adam Barth.

  • Overview: Using the [Supplemental] IDL, this patch moves the attribute

declarations of webaudio from DOMWindow.idl into a new IDL file
webaudio/DOMWindowWebAudio.idl, which helps make webaudio a self-contained
feature (aka a module).

  • This patch changes the build flow of WebCore.gyp as follows:

Previous build flow:

foreach $idl (all IDL files) {

generate-bindings.pl depends on $idl;
generate-bindings.pl reads $idl;
generate-bindings.pl generates .h and .cpp files for $idl;

}

New build flow (See the discussions in bug 72138 for more details):

resolve-supplemental.pl depends on all IDL files;
resolve-supplemental.pl reads all IDL files;
resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
resolve-supplemental.pl outputs supplemental_dependency.tmp;
foreach $idl (all IDL files) {

generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
generate-bindings.pl reads $idl;
generate-bindings.pl reads supplemental_dependency.tmp;
generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files whilementing $idl;

}

  • This patch introduces a temporary IDL, [Supplemented]. The [Supplemented] IDL

will be removed after build scripts for all platforms support the [Supplemental] IDL.
The motivation for the [Supplemented] IDL is as follows:

In order to support the [Supplemental] IDL, we need to
(1) run resolve-supplemental.pl and generate supplemental_dependency.tmp
(2) and run generate-bindings.pl with the supplemental_dependency.tmp.

This build flow requires a change on the following build scripts,
but changing all the build scripts all at once without any regression is too difficult:

  • DerivedSources.make
  • DerivedSources.pri
  • GNUmakefile.am
  • PlatformBlackBerry.cmake
  • UseJSC.cmake
  • UseV8.cmake
  • WebCore.vcproj/MigrateScripts
  • WebCore.vcproj/WebCore.vcproj
  • bindings/gobject/GNUmakefile.am
  • WebCore.gyp/WebCore.gyp

Thus, we are planning to change the build scripts one by one, which implies that
we need to allow the temporary state in which some build scripts support [Supplemental] IDL
but others do not. To accomplish this, we introduce a temporary IDL, [Supplemented].
The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]
in another IDL file somewhere, like this:

DOMWindowWebAudio.idl:

interface [

Supplemental=DOMWindow

] DOMWindowWebAudio {

attribute attr1;
attribute attr2;

};

DOMWindow.idl:

interface [
] DOMWindow {

attribute [Supplemented] attr1; This line will be removed after all build scripts support the [Su IDL
attribute [Supplemented] attr2;
This line will be removed after all build scripts support the [Su IDL.
attribute attr3;
attribute attr4;

};

Assuming these IDL files, this patch implements the following logic in generate-bindings.pl:

  • If a given build script supports the [Supplemental] IDL, generate-bindings.pl ignores all attributes with the [Supplemented] IDL.
  • Otherwise, generate-bindings.pl treats all attributes with the [Supplemented] IDL as normal attributes and instead ignores all attributes with the [Supplemental] IDL (i.e. generate-bindings.pl generates nothing from the IDL file with the [Supplemental] IDL).

Tests: webaudio/*

  • WebCore.gyp/WebCore.gyp: Describes the build flow that I described above.
  • WebCore.gyp/scripts/action_derivedsourcesallinone.py:

(main): Reads the IDL file names from the input file (i.e. supplemental_dependency.tmp),
which are described at the first column of each line in the input file.
If the file name is a "/cygdrive/c/..."-style path, it is converted to a "C:\cygwin\..."-style
path by the cygpath command.

  • WebCore.gypi: Added DOMWindowWebAudio.idl.
  • bindings/scripts/generate-bindings.pl: As a temporary solution, if the platform does not

support the [Supplemental] IDL, the perl script ignores the [Supplemental] IDL and instead
uses the [Supplemented] IDL. Otherwise, the perl script ignores the [Supplemented] IDL and
instead uses the [Supplemental] IDL.
Added the --additionalIdlFilesList option to specify the IDL files that are not listed in
supplemental-dependency.tmp but should generate .h and .cpp files.

  • page/DOMWindow.idl: Added the [Supplemented] IDL to webaudio-related attributes.

As I described above, the [Supplemented] IDL will be removed after all platforms support
the [Supplemental] IDL.

  • webaudio/DOMWindowWebAudio.idl: Added. Describes the [Supplemental=DOMWindow] IDL.

The attributes in this IDL file should be treated as if they are written in DOMWindow.idl.

01:33 Changeset [102662] by commit-queue@webkit.org

Asynchronous text checking should check the grammar.
https://bugs.webkit.org/show_bug.cgi?id=56368

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-12-13
Reviewed by Hajime Morita.

From r102553, we had capability of grammar checking for asynchronous text checking.
This patch adds a test for it.

  • editing/spelling/grammar-paste-expected.txt: Added.
  • editing/spelling/grammar-paste.html: Added.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac-leopard/Skipped:
  • platform/qt/Skipped:
00:17 Changeset [102661] by bashi@chromium.org

Reviewed, removed one of my email addresses to use the apprpriate one.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-13

  • Scripts/webkitpy/common/config/committers.py:
00:17 Changeset [102660] by commit-queue@webkit.org

RenderTheme should have a function for disabled text color adjustment
https://bugs.webkit.org/show_bug.cgi?id=74143

Change disabledTextColor to private method.

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-13
Reviewed by Kent Tamura.

No new tests / existing tests cover this change.

  • rendering/RenderThemeChromiumMac.h: Change disabledTextColor to private.
  • rendering/RenderThemeChromiumSkia.h: Change disabledTextColor to private.
00:02 Changeset [102659] by bashi@chromium.org

Unreviewed Chromium test expectations update.
Clean out passing tests from test_expectations.txt.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-12

  • platform/chromium/test_expectations.txt:

12/12/11:

22:37 Changeset [102658] by tkent@chromium.org

Merge 101998 - "Raw" pseudo selectors don't match if immediately after a child or descendant combinator
https://bugs.webkit.org/show_bug.cgi?id=72933

Source/WebCore:

Remove shortcut that prevents universal selectors from being created before shadow pseudo-elements.

Reviewed by Antti Koivisto.

  • css/CSSParser.cpp:

(WebCore::CSSParser::updateSpecifiersWithElementName):

LayoutTests:

Add tests cases for "raw" shadow pseudo-element selectors with various combinators.
Also add cases with explicit universal '*' selector.

Reviewed by Antti Koivisto.

  • fast/css/css-selector-text-expected.txt:
  • fast/css/css-selector-text.html:
  • fast/css/css-set-selector-text-expected.txt:
  • fast/css/css-set-selector-text.html:
  • fast/css/unknown-pseudo-element-matching-expected.txt:
  • fast/css/unknown-pseudo-element-matching.html:

TBR=rolandsteiner@chromium.org
BUG=97744
Review URL: http://codereview.chromium.org/8931002

21:11 Changeset [102657] by dbates@webkit.org

Unreviewed, rolling out r102656.
http://trac.webkit.org/changeset/102656
https://bugs.webkit.org/show_bug.cgi?id=74313

Broke the Mac, Windows and WinCairo builds. We need to look
into this patch some more.

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerLocation):

20:07 Changeset [102656] by commit-queue@webkit.org

Implement the JavaScriptCore bindings for eventListenerHandlerLocation
https://bugs.webkit.org/show_bug.cgi?id=74313

Patch by Konrad Piascik <kpiascik@rim.com> on 2011-12-12
Reviewed by Geoffrey Garen.

Open any page in Web Inspector and look at the event listeners. They should now
link to the script which created them.

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerLocation):

19:48 Changeset [102655] by commit-queue@webkit.org

RenderTheme should have a function for disabled text color adjustment
https://bugs.webkit.org/show_bug.cgi?id=74143

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-12
Reviewed by Kent Tamura.

No new tests / existing tests cover this change.

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::adjustInnerTextStyle): Use RenderTheme::disabledTextColor instead of PLATFORM wraped static function.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::disabledTextColor): Moved from RenderTextControl.cpp. This method implements for non-Chromium color.

  • rendering/RenderTheme.h: Add new virtual method disabledTextColor.
  • rendering/RenderThemeChromiumMac.h: Implementation of RenderTheme::disabledTextColor for Chrimium Mac.
  • rendering/RenderThemeChromiumSkia.h: Implementation of RenderTheme::disabledTextColor for Chrimium.
19:28 Changeset [102654] by kbr@google.com

Unreviewed Chromium test expectations update. Actually skip
plugins/netscape-plugin-page-cache-works.html as it looks like its
timeout is causing other tests to fail.

  • platform/chromium/test_expectations.txt:
19:13 Changeset [102653] by kbr@google.com

Unreviewed, rolling out r102648.
http://trac.webkit.org/changeset/102648
https://bugs.webkit.org/show_bug.cgi?id=74313

Broke the Snow Leopard and Windows builds

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerLocation):

19:08 Changeset [102652] by kling@webkit.org

Resizing Cappuccino is very laggy on WebKit since Safari 5.1
<http://webkit.org/b/71354> and <rdar://problem/10565998>

Reviewed by Anders Carlsson.

Source/WebCore:

  • WebCore.exp.in: Export FloatPoint(const NSPoint&)

Source/WebKit2:

On Mac, we already cache the window rect through the WindowAndViewFramesChanged
message, so simply return that in WebChromeClient::windowRect() instead of
sending a synchronous query to the UIProcess.

Changed WindowAndViewFramesChanged to pass FloatRect/FloatPoint rather than
IntRect/IntPoint to match the ChromeClient::windowRect() return type.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _updateWindowAndViewFrames]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::setWindowFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::windowAndViewFramesChanged):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::windowAndViewFramesChanged):

  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::windowRect):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::windowAndViewFramesChanged):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::windowFrameInScreenCoordinates):
(WebKit::WebPage::viewFrameInWindowCoordinates):
(WebKit::WebPage::accessibilityPosition):

  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:

(-[WKAccessibilityWebPageObject accessibilityAttributeValue:]):

18:56 Changeset [102651] by jarred@sencha.com

[Qt] QTKIT-based video support must target OS X 10.5 or higher
https://bugs.webkit.org/show_bug.cgi?id=74294

WebCore on OS X Lion fails to build when QTKIT video support is enabled, unless a
deployment target of 10.5+ is specified explicitly.

Reviewed by Noam Rosenthal.

No new tests as this is a build issue.

  • Target.pri:
18:36 Changeset [102650] by macpherson@chromium.org

Implement CSS text-decoration property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74258

Reviewed by Andreas Kling.

No new tests / refactoring only.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyTextDecoration::applyValue):
(WebCore::ApplyPropertyTextDecoration::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

18:32 Changeset [102649] by enne@google.com

iframe fails to scroll in composited page
https://bugs.webkit.org/show_bug.cgi?id=72682

Reviewed by Simon Fraser.

Source/WebCore:

FrameView::scrollContentsSlowPath only was catching the case where a
child iframe had a composited parent. Now detect if the child iframe
has any composited ancestor.

Test: compositing/iframes/scroll-grandchild-iframe.html

  • page/FrameView.cpp:

(WebCore::FrameView::scrollContentsSlowPath):

LayoutTests:

  • compositing/iframes/resources/scrollgrandchild-grandparent.html: Added.
  • compositing/iframes/resources/scrollgrandchild-inner.html: Added.
  • compositing/iframes/resources/scrollgrandchild-parent.html: Added.
  • compositing/iframes/scroll-grandchild-iframe-expected.png: Added.
  • compositing/iframes/scroll-grandchild-iframe-expected.txt: Added.
  • compositing/iframes/scroll-grandchild-iframe.html: Added.
18:23 Changeset [102648] by commit-queue@webkit.org

Implement the JavaScriptCore bindings for eventListenerHandlerLocation
https://bugs.webkit.org/show_bug.cgi?id=74313

Patch by Konrad Piascik <kpiascik@rim.com> on 2011-12-12
Reviewed by Geoffrey Garen.

Open any page in Web Inspector and look at the event listeners. They should now
link to the script which created them.

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerLocation):

17:45 Changeset [102647] by kbr@google.com

Unreviewed. Chromium test expectations update to get the bots green.

  • platform/chromium/test_expectations.txt:
17:34 Changeset [102646] by arv@chromium.org

[V8] CodeGeneratorV8.pm does not correctly work with inherited HasIndexGetter
https://bugs.webkit.org/show_bug.cgi?id=74027

Reviewed by Adam Barth.

Instead of having to write a custom indexer when the interface has an inherited indexer
we get the signature from the super interface.

Tested by existing tests.

  • Target.pri: Remove V8DOMSettableTokenListCustom.cpp and V8WebKitCSSFilterValueCustom.cpp.
  • UseV8.cmake: Ditto.
  • WebCore.gypi: Ditto.
  • bindings/scripts/CodeGenerator.pm:

(FindSuperMethod): Returns the first matching function in one of the ancestor interfaces.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementationIndexer): If the current interface has no indexer try to find an

indexer in one of the super interfaces.

(GenerateImplementationNamedPropertyGetter): Ditto for named property getter.

  • bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Removed.
  • bindings/v8/custom/V8WebKitCSSFilterValueCustom.cpp: Removed.
17:14 Changeset [102645] by rniwa@webkit.org

Mac rebaselines after r102612 and r102538.

  • platform/mac-snowleopard/fast/text/hyphenate-limit-lines-expected.txt:
  • platform/mac/fast/dom/Window/window-properties-expected.txt:
  • platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
17:05 Changeset [102644] by simon.fraser@apple.com

Make it possible to substitute a different CALayer implementation for the main root layer
https://bugs.webkit.org/show_bug.cgi?id=74369

Reviewed by Anders Carlsson.

Some platforms may wish to have the main root layer (which corresponds with
the main frame's RenderView's layer) implemented by a custom platform layer,
for example to contain a cache of tiles.

Make this possible on Mac by adding a new method to GraphicsLayerClient(),
and implementing it in RenderLayerBacking. This new behavior is not yet enabled.

Also clean up some WebLayer/WebTiledLayer code.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::shouldUseTileCache): New client method that indicates that the GraphicsLayer
should host a tile cache layer instead of a normal layer.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::GraphicsLayerCA): Ask the client, if any, whether to create a tile cache layer.

  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm: NSClassFromString(@"CATransformLayer") was for Leopard;

we can just use the classname now. Handle LayerTypeTileCacheLayer.
(PlatformCALayer::PlatformCALayer):

  • platform/graphics/ca/mac/WebTileCacheLayer.h: Copied from Source/WebCore/platform/graphics/mac/WebLayer.h.
  • platform/graphics/ca/mac/WebTileCacheLayer.mm: Copied from Source/WebCore/platform/graphics/mac/WebLayer.h.
  • platform/graphics/mac/WebLayer.h: Remove the setLayerNeedsDisplayInRect() hackery.
  • platform/graphics/mac/WebLayer.mm: setLayerNeedsDisplayInRect() tried to share code between WebLayer and WebTiledLayer

by using Obj-C runtime methods to find the superclass. This causes infinite recursion if Web[Tiled]Layer is subclassed,
so remove it.
(-[WebLayer setNeedsDisplayInRect:]): Code moved here from setLayerNeedsDisplayInRect.

  • platform/graphics/mac/WebTiledLayer.mm:

(-[WebTiledLayer setNeedsDisplayInRect:]): Code copied here from setLayerNeedsDisplayInRect.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking): Find out, and cache if we're the main frame's layer.
(WebCore::RenderLayerBacking::shouldUseTileCache): Return m_usingTiledCacheLayer, which is always false for now.
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): Use m_isMainFrameRenderViewLayer.
(WebCore::RenderLayerBacking::paintingGoesToWindow): The tile cache layer needs to paint itself.

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.h: m_compositeForFixedPosition was unused.
16:59 Changeset [102643] by rniwa@webkit.org

REGRESSION(r102357): respondToUnappliedEditing exits early for CreateLinkCommand
https://bugs.webkit.org/show_bug.cgi?id=74356

Reviewed by Enrica Casucci.

The problem was that isCreateLinkCommand was called on EditCommandComposition by respondToUnappliedEditing.
Fixed the bug by propagating the value of isCreteLinkCommand from CompositeEditCommand to
EditCommandComposition via wasCreateLinkCommand.

Also move isCreateLinkCommand from EditCommand to CompositeEditCommand to prevent this mistake in the future.

  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::create):
(WebCore::EditCommandComposition::EditCommandComposition):
(WebCore::CompositeEditCommand::ensureComposition):
(WebCore::CompositeEditCommand::isCreateLinkCommand):

  • editing/CompositeEditCommand.h:

(WebCore::EditCommandComposition::wasCreateLinkCommand):

  • editing/SpellingCorrectionController.cpp:

(WebCore::SpellingCorrectionController::respondToUnappliedEditing):

  • editing/SpellingCorrectionController.h:
16:58 Changeset [102642] by lforschler@apple.com

Versioning.

16:56 Changeset [102641] by tony@chromium.org

[CSSRegions]Revert RenderObject::style() to its state before region styling
https://bugs.webkit.org/show_bug.cgi?id=74315

Patch by Mihnea Ovidenie <mihnea@adobe.com> on 2011-12-12
Reviewed by Tony Chang.

Source/WebCore:

  • rendering/RenderObject.h:

(WebCore::RenderObject::style):

LayoutTests:

  • platform/mac-snowleopard/Skipped:
16:52 Changeset [102640] by jberlin@webkit.org

Add EventDispatcher class to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=74344

Patch by Anders Carlsson <andersca@apple.com> on 2011-12-12
Reviewed by Sam Weinig.

The EventDispatcher is a singleton which will be in charge of dispatching events to WebPage objects.

  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.am:
  • Target.pri:
  • WebKit2.xcodeproj/project.pbxproj:
  • win/WebKit2.vcproj:

Add new files.

  • Platform/CoreIPC/MessageID.h:

Add EventDispatcher.

  • WebProcess/WebConnectionToUIProcess.cpp:

(WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
(WebKit::WebConnectionToUIProcess::invalidate):

  • WebProcess/WebConnectionToUIProcess.h:

WebConnectionToUIProcess doesn't need to be a QueueClient. Also, move the call to open into WebProcess since
we don't want to add queue clients after the connection has been opened.

  • WebProcess/WebPage/EventDispatcher.cpp: Added.

(WebKit::EventDispatcher::EventDispatcher):
(WebKit::EventDispatcher::~EventDispatcher):
(WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):
(WebKit::EventDispatcher::wheelEvent):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/EventDispatcher.messages.in: Added.

Add new stub files.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initialize):
Add the event dispatcher as a queue client.

  • WebProcess/WebProcess.h:

Add an EventDispatcher member variable to the web process.

16:48 Changeset [102639] by adamk@chromium.org

Don't crash in StyleAttributeMutationScope if the style declaration's element has been GCed
https://bugs.webkit.org/show_bug.cgi?id=74321

Reviewed by Ryosuke Niwa.

Source/WebCore:

In r101101, Rafael Weinstein added code to CSSMutableStyleDeclaration.cpp
which depended on isInlineStyleDeclaration returning true iff the
element it pointed to was non-null (it will be nulled-out if the
element is garbage collected).

Then, in r101172, Andreas Kling changed the semantics so that
isInlineStyleDeclaration only described the type of the declaration,
not the state of the related element.

This change updates Rafael's code with an explicit check that the
element is still alive.

Test: fast/dom/css-inline-style-declaration-crash.html

  • css/CSSMutableStyleDeclaration.cpp:

LayoutTests:

  • fast/dom/css-inline-style-declaration-crash-expected.txt: Added.
  • fast/dom/css-inline-style-declaration-crash.html: Added.
16:46 Changeset [102638] by lforschler@apple.com

New tag.

16:14 Changeset [102637] by lforschler@apple.com

Versioning.

16:10 Changeset [102636] by lforschler@apple.com

New Tag.

16:09 Changeset [102635] by bfulgham@webkit.org

[WinCairo] Unreviewed update to Skipped list to get bot green.

  • platform/wincairo/Skipped: Exclude current failures (and turn on a few new successes).
15:54 Changeset [102634] by cfleizach@apple.com

AX: aria-hidden inheritance broken when applying to some descendants
https://bugs.webkit.org/show_bug.cgi?id=73940

Reviewed by Darin Adler.

Source/WebCore:

When adding children, we were not updating the children cache for direct AX descendants.
This meant that toggling aria-hidden could result in a stale cache where elements would not be reachable.

Making this fix also exposed a problem in AccessibilityTable where the AccessibilityHeaderObject was not
being managed correctly as a mock element.

Test: platform/mac/accessibility/aria-hidden-changes-for-non-ignored-elements.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::addChildren):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::clearChildren):
(WebCore::AccessibilityTable::headerContainer):

  • accessibility/AccessibilityTable.h:

LayoutTests:

  • platform/mac/accessibility/aria-hidden-changes-for-non-ignored-elements-expected.txt: Added.
  • platform/mac/accessibility/aria-hidden-changes-for-non-ignored-elements.html: Added.
15:51 Changeset [102633] by weinig@apple.com

Prefix internal methods in Objective-C API files with an underscore
https://bugs.webkit.org/show_bug.cgi?id=74363

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKBrowsingContextController.mm:

(-[WKBrowsingContextController _pageRef]):
(-[WKBrowsingContextController loadRequest:]):
(-[WKBrowsingContextController loadFileURL:restrictToFilesWithin:]):
(-[WKBrowsingContextController stopLoading]):
(-[WKBrowsingContextController reload]):
(-[WKBrowsingContextController reloadFromOrigin]):
(-[WKBrowsingContextController goForward]):
(-[WKBrowsingContextController canGoForward]):
(-[WKBrowsingContextController goBack]):
(-[WKBrowsingContextController canGoBack]):
(-[WKBrowsingContextController activeURL]):
(-[WKBrowsingContextController provisionalURL]):
(-[WKBrowsingContextController committedURL]):
(-[WKBrowsingContextController title]):
(-[WKBrowsingContextController textZoom]):
(-[WKBrowsingContextController setTextZoom:]):
(-[WKBrowsingContextController pageZoom]):
(-[WKBrowsingContextController setPageZoom:]):
(-[WKBrowsingContextController setPaginationMode:]):
(-[WKBrowsingContextController paginationMode]):
(-[WKBrowsingContextController setPageLength:]):
(-[WKBrowsingContextController pageLength]):
(-[WKBrowsingContextController setGapBetweenPages:]):
(-[WKBrowsingContextController gapBetweenPages]):
(-[WKBrowsingContextController pageCount]):
(-[WKBrowsingContextController _initWithPageRef:]):

  • UIProcess/API/mac/WKBrowsingContextControllerInternal.h:
  • UIProcess/API/mac/WKBrowsingContextGroup.mm:

(-[WKBrowsingContextGroup allowsJavaScript]):
(-[WKBrowsingContextGroup setAllowsJavaScript:]):
(-[WKBrowsingContextGroup allowsPlugIns]):
(-[WKBrowsingContextGroup setAllowsPlugIns:]):
(-[WKBrowsingContextGroup _pageGroupRef]):

  • UIProcess/API/mac/WKBrowsingContextGroupInternal.h:
  • UIProcess/API/mac/WKConnection.mm:

(-[WKConnection _initWithConnectionRef:]):

  • UIProcess/API/mac/WKConnectionInternal.h:
  • UIProcess/API/mac/WKProcessGroup.mm:

(didCreateConnection):
(-[WKProcessGroup _contextRef]):

  • UIProcess/API/mac/WKProcessGroupInternal.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:processGroup:browsingContextGroup:]):
(-[WKView browsingContextController]):

15:51 Changeset [102632] by commit-queue@webkit.org

When the mouse is dragged out of an :active element, it should lose :hover.
https://bugs.webkit.org/show_bug.cgi?id=57206

Patch by Jeremy Apthorp <jeremya@chromium.org> on 2011-12-12
Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/css/hover-active-drag.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMouseMoveEvent): Don't mark mouse-drag hit tests read-only, since they no longer are.
(WebCore::EventHandler::dragSourceEndedAt): Send a hit test request when the mouse goes up after a drag, so
RenderLayer has a chance to update the hover/active status.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateHoverActiveState): Only allow the :active state to change on mouse down or mouse up.

LayoutTests:

  • fast/css/hover-active-drag-expected.txt: Added.
  • fast/css/hover-active-drag.html: Added.
  • platform/mac/fast/css/hover-active-drag-expected.txt: Removed.
  • platform/chromium/fast/css/hover-active-drag-expected.txt: Removed.
15:21 Changeset [102631] by msaboff@apple.com

Eliminate Duplicate word at a time equal code in StringImpl.cpp and StringHash.h
https://bugs.webkit.org/show_bug.cgi?id=73622

Reviewed by Oliver Hunt.

Moved equal(charType1 *, charType2, unsigned) template methods
from static StringImpl.cpp to StringImpl.h and then replaced the
processor specific character comparison code in StringHash::equal
with calls to these methods.

This change is worth 3% on SunSpider string-unpack-code as reported
by the SunSpider command line harness. No other tests appear to
have measurable performance changes.

  • wtf/text/AtomicString.h:

(WTF::operator==):

  • wtf/text/StringHash.h:

(WTF::StringHash::equal):

  • wtf/text/StringImpl.cpp:
  • wtf/text/StringImpl.h:

(WTF::LChar):
(WTF::UChar):
(WTF::equal):

15:17 Changeset [102630] by kbr@google.com

Unreviewed Chromium expectations update; skip
plugins/netscape-plugin-page-cache-works.html.

  • platform/chromium/test_expectations.txt:
15:08 Changeset [102629] by fpizlo@apple.com

ARMv7 version of DFG soft modulo does register allocation inside of control flow
https://bugs.webkit.org/show_bug.cgi?id=74354

Reviewed by Gavin Barraclough.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileSoftModulo):

15:05 Changeset [102628] by kbr@google.com

Unreviewed Windows build fix after http://trac.webkit.org/changeset/102619 .
Remove OVERRIDE specifier from virtual destructor.

  • html/HTMLPlugInImageElement.h:
14:53 Changeset [102627] by rniwa@webkit.org

WebKit code shouldn't be calling applyCommand directly
https://bugs.webkit.org/show_bug.cgi?id=74337

Reviewed by Darin Adler.

Source/WebCore:

Make WebKit-layer code call Editor::replaceSelectionWithFragment and Editor::replaceSelectionWithText
instead of manually creating and applying ReplaceSelectionCommand.

The only behavioral difference is that new code will end up checking for spell checks. However, this
difference appears to be unintentional since the code predates http://trac.webkit.org/changeset/73886,
which introduced an invocation of spellcheck code.

Unfortunately no tests since there doesn't seem to be anyway to test this change.

  • WebCore.exp.in:
  • editing/EditCommand.cpp:

(WebCore::applyCommand):

  • editing/EditCommand.h:
  • editing/Editor.h:

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::replaceSelection):

Source/WebKit/gtk:

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_replace_selection):

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::replaceSelectionWithText):

14:49 Changeset [102626] by abarth@webkit.org

Update html5lib test data to latest version
https://bugs.webkit.org/show_bug.cgi?id=74343

Reviewed by Eric Seidel.

This patch imports the latest version of the "dat" files from
http://code.google.com/p/html5lib/

  • html5lib/resources/pending-spec-changes.dat:
  • html5lib/resources/plain-text-unsafe.dat:
  • html5lib/resources/tables01.dat:
  • html5lib/resources/tests16.dat:
  • html5lib/resources/tests19.dat:
  • html5lib/resources/tests26.dat:
  • html5lib/resources/tests_innerHTML_1.dat:
  • html5lib/resources/webkit01.dat:
  • html5lib/runner-expected.txt:
  • html5lib/webkit-resumer-expected.txt:
  • platform/chromium/html5lib/runner-expected.txt:
14:41 Changeset [102625] by weinig@apple.com

Remove unused getter on WKConnection.

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKConnection.mm:
14:33 Changeset [102624] by commit-queue@webkit.org

Simplify autotools configure.ac
https://bugs.webkit.org/show_bug.cgi?id=74312

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-12
Reviewed by Martin Robinson.

.:

  • configure.ac: Don't AC_DEFINE so many things. Many of the

defines were stale (ENABLE_YARR, ENABLE_JIT_OPTIMIZE_CALL, etc),
and with Platform.h we don't need to make an explicit decision
here. If the user does pass --enable-jit or --disable-jit, effect
that choice via setting JSC_CPPFLAGS.

Source/JavaScriptCore:

  • GNUmakefile.am: Add JSC_CPPFLAGS to javascriptcore_cppflags.
14:13 Changeset [102623] by fpizlo@apple.com

DFG GetByVal CSE incorrectly assumes that a non-matching PutByVal cannot clobber
https://bugs.webkit.org/show_bug.cgi?id=74329

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::getByValLoadElimination):

LayoutTests:

  • fast/js/dfg-get-by-val-clobber-expected.txt: Added.
  • fast/js/dfg-get-by-val-clobber.html: Added.
  • fast/js/script-tests/dfg-get-by-val-clobber.js: Added.

(doAccesses):

14:13 Changeset [102622] by abarth@webkit.org

Remove platform/audio/fftw
https://bugs.webkit.org/show_bug.cgi?id=73163

Reviewed by Eric Seidel.

The FFTW library is GPL, not LGPL, like WebKit. This patch removes the
integration with the library so folks who use WebAudio don't
accidentially violate the GPL by linking in FFTW.

  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • platform/audio/FFTFrame.h:
  • platform/audio/FFTFrameStub.cpp:
  • platform/audio/fftw: Removed.
  • platform/audio/fftw/FFTFrameFFTW.cpp: Removed.
14:09 Changeset [102621] by kbr@google.com

COMPILE_ASSERT in CSSStyleSelector.cpp doesn't compile on Windows
https://bugs.webkit.org/show_bug.cgi?id=74327

Unreviewed build fix. True fix should follow under above bug.

  • css/CSSStyleSelector.cpp:
14:04 Changeset [102620] by dgrogan@chromium.org

Fix compilation error when !ENABLE(WORKERS)
https://bugs.webkit.org/show_bug.cgi?id=74029

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • storage/IDBFactory.cpp:

(WebCore::IDBFactory::open): add #if ENABLE(WORKERS) guard

Source/WebKit/chromium:

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

(WebKit::IDBFactoryBackendProxy::openFromWorker):

  • src/PlatformSupport.cpp:
  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgent::disconnectEventAsText):

  • src/WebWorkerRunLoop.cpp:
14:00 Changeset [102619] by beidson@apple.com

Page cache should support pages with plugins.
<rdar://problem/5190122> and https://bugs.webkit.org/show_bug.cgi?id=13634

Source/WebCore:

Reviewed by Anders Carlsson.

By making plugin elements renderers go display:none when entering the page cache,
we destroy the plug-in in a cross platform way as well as handle invalidating script
objects created by that plugin.

By restoring the original style when leaving the page cache and forcing a style recalc
on the plugin element, the plugin is gracefully reinstantiated when the user goes back.

Test: plugins/netscape-plugin-page-cache-works.html

  • dom/Document.cpp:

(WebCore::Document::documentDidBecomeActive): Copy this collection before iterating over

it, as the callbacks might result in mutating the set.

  • dom/Node.h:

(WebCore::Node::setHasCustomStyleForRenderer):
(WebCore::Node::clearHasCustomStyleForRenderer): Expose the ability to stop using a

custom renderer and go back to the default renderer.

  • history/CachedFrame.cpp:

(WebCore::CachedFrame::CachedFrame): Move the document inactivation call to the same place

we suspend active DOM objects. It is important this call be *after* the beforeunload event
is dispatched, and was coincidental non of the elements that using Document activation
had run in to this problem yet.

  • history/PageCache.cpp:

(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame): If the page contains plugins but

the PageCacheSupportsPlugins setting is true, allow this page.

Kill and recreate the plugin by listening for Document activation callbacks and setting a custom
display:none render style:

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::~HTMLPlugInImageElement): Unregister for document activation

callbacks.

(WebCore::HTMLPlugInImageElement::createRenderer): Once a renderer (ie. plugin instance) is

created, this element needs Document (in)activation callbacks.

(WebCore::HTMLPlugInImageElement::willMoveToNewOwnerDocument): Manage Document activation

callback registration.

(WebCore::HTMLPlugInImageElement::didMoveToNewOwnerDocument): Ditto.
(WebCore::HTMLPlugInImageElement::documentWillBecomeInactive): Clone the element's current style

and set the clone's display value to None. Start using this custom style and force a style
recall. This destroys the renderer and therefore the plugin instance.

(WebCore::HTMLPlugInImageElement::documentDidBecomeActive): Stop using the custom style and

force a style recall to reinstantiate the plugin.

(WebCore::HTMLPlugInImageElement::customStyleForRenderer): Return the stand-in style that has

display:none set.

  • html/HTMLPlugInImageElement.h:

Add a setting that allows runtime configuration of whether or not the page cache supports plugins:

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setPageCacheSupportsPlugins):
(WebCore::Settings::pageCacheSupportsPlugins):

Source/WebKit/mac:

Expose a WebKit preference for the page cache supporting plugins (on by default).

Reviewed by Anders Carlsson.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(-[WebPreferences pageCacheSupportsPlugins]):
(-[WebPreferences setPageCacheSupportsPlugins:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2:

Expose a WebKit2 preference for the page cache supporting plugins (on by default).

Reviewed by Anders Carlsson.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetPageCacheSupportsPlugins):
(WKPreferencesGetPageCacheSupportsPlugins):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

LayoutTests:

Reviewed by Anders Carlsson.

  • plugins/netscape-plugin-page-cache-works-expected.txt: Added.
  • plugins/netscape-plugin-page-cache-works.html: Added.
  • plugins/resources/go-back.html: Added.
13:56 Changeset [102618] by lforschler@apple.com

<rdar://problem/10565832> After installing Duches 53.8, Mail Hangs on Reply all

Fixing a mis-merge of r99617 where an observer was incorrectly added.

  • WebView/WebView.mm:

(-[WebView addWindowObserversForWindow:]):

13:41 Changeset [102617] by lforschler@apple.com

Merge 97407.

13:41 Changeset [102616] by weinig@apple.com

Add WKConnection objective-c wrapper around WKConnectionRef
<rdar://problem/10446092>
https://bugs.webkit.org/show_bug.cgi?id=74324

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKConnection.h: Added.
  • UIProcess/API/mac/WKConnection.mm: Added.

(-[WKConnection dealloc]):
(-[WKConnection connectionRef]):
(-[WKConnection delegate]):
(-[WKConnection setDelegate:]):
(didReceiveMessage):
(didClose):
(setUpClient):
(-[WKConnection initWithConnectionRef:]):

  • UIProcess/API/mac/WKConnectionInternal.h: Added.

Added new class.

  • UIProcess/API/mac/WKProcessGroup.h:
  • UIProcess/API/mac/WKProcessGroup.mm:

(didCreateConnection):
(setUpConnectionClient):
(-[WKProcessGroup initWithInjectedBundleURL:]):
(-[WKProcessGroup delegate]):
(-[WKProcessGroup setDelegate:]):
Add WKProcessGroupDelegate to inform the user of when connections are established.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

13:41 Changeset [102615] by andersca@apple.com

Rename QueueClient::willProcessMessageOnClientRunLoop
https://bugs.webkit.org/show_bug.cgi?id=74325

Reviewed by Sam Weinig.

Rename the QueueClient willProcessMessageOnClientRunLoop function to didReceiveMessageOnConnectionWorkQueue
and give it an out parameter to indicate whether the message was handled or not. This makes it more clear that
the function is expected to handle the message.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::processIncomingMessage):

  • Platform/CoreIPC/Connection.h:
  • Scripts/webkit2/messages.py:

(async_case_statement):

  • Scripts/webkit2/messages_unittest.py:
  • WebProcess/WebConnectionToUIProcess.cpp:

(WebKit::WebConnectionToUIProcess::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebConnectionToUIProcess.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebProcess.h:
13:26 Changeset [102614] by japhet@chromium.org

Merge 102602 - Source/WebCore: A SubresourceLoader in the middle of revalidating
a resource should be treated as finishing (similar to
didFinishLoading and didFail) to ensure that willCancel()
doesn't declare the revalidation as having failed reentrantly.
https://bugs.webkit.org/show_bug.cgi?id=72762

Reviewed by Adam Barth.

Test: http/tests/cache/cancel-during-revalidation-succeeded.html

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):

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

Reviewed by Adam Barth.

  • http/tests/cache/cancel-during-revalidation-succeeded-expected.txt: Added.
  • http/tests/cache/cancel-during-revalidation-succeeded.html: Added.
  • http/tests/cache/resources/stylesheet304.php: Added.

TBR=japhet@chromium.org
Review URL: http://codereview.chromium.org/8920011

13:25 Changeset [102613] by ojan@chromium.org

r102234 caused RuleData to use 33 bits in its bitmask
https://bugs.webkit.org/show_bug.cgi?id=74314

Reviewed by Antti Koivisto.

Lower m_position to something more reasonable. A million
should be plenty. Current large sites (e.g. gmail) seem to use
tens of thousands.

Added a COMPILE_ASSERT to ensure this doesn't regress.

No new tests.

  • css/CSSStyleSelector.cpp:
12:58 Changeset [102612] by commit-queue@webkit.org

Rename webkitCancelRequestAnimationFrame to webkitCancelAnimationFrame to match spec change
https://bugs.webkit.org/show_bug.cgi?id=74231

Patch by James Robinson <jamesr@chromium.org> on 2011-12-12
Reviewed by Simon Fraser.

Source/WebCore:

The RequestAnimationFrame spec has renamed cancelRequestAnimationFrame to cancelAnimationFrame in response to
feedback from Mozilla and Microsoft that the old name was too long and didn't parallel setTimeout/clearTimeout
and setInterval/clearInterval very well. This updates our IDL to match, while preserving the old name as an
alias to be compatible with current content.

  • dom/Document.cpp:

(WebCore::Document::webkitCancelAnimationFrame):

  • dom/Document.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::webkitCancelAnimationFrame):

  • page/DOMWindow.h:

(WebCore::DOMWindow::webkitCancelRequestAnimationFrame):

  • page/DOMWindow.idl:

LayoutTests:

Update requestAnimationFrame tests to refer to the new function name.

  • fast/animation/request-animation-frame-missing-arguments.html:
  • fast/animation/script-tests/request-animation-frame-cancel.js:

(window):

  • fast/animation/script-tests/request-animation-frame-cancel2.js:
12:53 Changeset [102611] by commit-queue@webkit.org

[chromium] Remove assumption that empty surface is always at end of list
https://bugs.webkit.org/show_bug.cgi?id=74037

Patch by Shawn Singh <shawnsingh@chromium.org> on 2011-12-12
Reviewed by James Robinson.

Source/WebCore:

Test case added to CCLayerTreeHostCommonTest.cpp, which reproduces
a crash reported in http://code.google.com/p/chromium/issues/detail?id=106734

This patch fixes the crash in a less risky way to be merged into
m17, but the root of the issue needs to be addressed in a
follow-up patch.

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

(WebCore::calculateDrawTransformsAndVisibilityInternal):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:

(WebCore::TEST):

12:47 Changeset [102610] by dcheng@chromium.org

[chromium] Remove BufferDrag from WebClipboard::Buffer enum.
https://bugs.webkit.org/show_bug.cgi?id=74227

Reviewed by Tony Chang.

This enum value was intended for asynchronous data retrieval during drop operations; since
that was never implemented, I'm removing this enum value.

  • public/platform/WebClipboard.h:
  • src/AssertMatchingEnums.cpp:
12:29 Changeset [102609] by kbr@google.com

Unreviewed Chromium gardening. Mark flaky crashing transitions/
test and update previously added flaky compositing test expectations.

  • platform/chromium/test_expectations.txt:
11:16 Changeset [102608] by simon.fraser@apple.com

Share code that checks for matching sets of transform operations
https://bugs.webkit.org/show_bug.cgi?id=74265

Reviewed by Dan Bernstein.

Add TransformOperations::operationsMatch() and call it from the
three places that used this same code.

Tested by existing tests.

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::validateTransformFunctionList):

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::validateTransformFunctionList):

  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::fetchTransformOperationList):

  • platform/graphics/transforms/TransformOperations.cpp:

(WebCore::TransformOperations::operationsMatch):

  • platform/graphics/transforms/TransformOperations.h:
11:11 Changeset [102607] by philn@webkit.org

Unreviewed, remove X86_64 modifier from GTK test_expectations list.

  • platform/gtk/test_expectations.txt:
10:56 Changeset [102606] by antti@apple.com

Cache visited link hash
https://bugs.webkit.org/show_bug.cgi?id=74095

Reviewed by Darin Adler.

Visited link hash is relatively expensive to compute. We can cache it for anchor elements
with minimal relative memory cost for faster style resolve.

On my machine this speeds up style matching on full HTML spec by ~100ms or ~1% of the total
CPU usage. It makes link elements 8 bytes larger, a relatively minor increase to their overall size.

Invalidate the hashes on base URL for completeness sake (lack of style invalidation means
that this scenario is not properly supported currently).

Covered by existing tests. No specific test for visited hash invalidation on dynamic base URL
change as the effect is not testable due to lack of style invalidation.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::determineLinkStateSlowCase):
(WebCore::SelectorChecker::visitedStateChanged):

  • html/Document.cpp:
  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::HTMLAnchorElement):
(WebCore::HTMLAnchorElement::parseMappedAttribute):

  • html/HTMLAnchorElement.h:

(WebCore::HTMLAnchorElement::visitedLinkHash):

10:48 Changeset [102605] by mitz@apple.com

<rdar://problem/10328474> Text highlight changes to gray selection color when menu extra is shown

Reviewed by John Sullivan.

  • WebView/WebView.mm:

(-[WebView _updateActiveState]): Changed to use -[NSWindow _hasKeyAppearance] instead
of -isKeyWindow. The former also returns YES when a menu extra is open.
(-[WebView addWindowObserversForWindow:]): Removed code to observe
NSWindowDidBecomeKeyNotification and NSWindowDidResignKeyNotification.
(-[WebView removeWindowObservers]): Removed code to stop observing the above.
(-[WebView _windowChangedKeyState]): Overridden this to call _updateActiveState.
This is called when the result of -_hasKeyAppearance changes.
(-[WebView _windowWillOrderOnScreen:]): Removed call to _updateActiveState,
previously needed for popovers, because _windowChangedKeyState is invoked
at the right time for them.
(-[WebView _windowWillOrderOffScreen:]): Ditto.

10:44 Changeset [102604] by commit-queue@webkit.org

[GTK] gtk_widget_size_allocate for plugin widgets should happen in the WebView size-allocate method
https://bugs.webkit.org/show_bug.cgi?id=72805

Patch by Martin Robinson <mrobinson@igalia.com> on 2011-12-12
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

No new tests. This is only a performance tweak.

Instead of immediately calling gtk_widget_size during painting, defer
this until the size-allocate method of the WebView.

  • plugins/gtk/PluginViewGtk.cpp:

(WebCore::PluginView::updateWidgetAllocationAndClip): Instead of immediately changing
the widget allocation, just record it in a GObject data attachment.

Source/WebKit/gtk:

Instead of immediately calling gtk_widget_size during painting, defer
this until the size-allocate method of the WebView.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::paint): If any child widgets have a pending allocation
call gtk_widget_size_allocate.

  • webkit/webkitwebview.cpp:

(updateChildAllocationFromPendingAllocation): Added this helper.
(webkit_web_view_size_allocate): Call the helper on all child widgets.

10:40 Changeset [102603] by tommyw@google.com

[chromium] MediaStream API: Moving WebMediaStreamSource.h
https://bugs.webkit.org/show_bug.cgi?id=74081

Moving WebMediaStreamSource.h to public/platform.
Keeping a stub in public as to not affect chromium right now.

Reviewed by Darin Fisher.

  • WebKit.gyp:
  • public/WebMediaStreamSource.h:
  • public/platform/WebMediaStreamSource.h: Copied from Source/WebKit/chromium/public/WebMediaStreamSource.h.

(WebKit::WebMediaStreamSource::WebMediaStreamSource):
(WebKit::WebMediaStreamSource::~WebMediaStreamSource):
(WebKit::WebMediaStreamSource::isNull):

  • src/AssertMatchingEnums.cpp:
  • src/UserMediaClientImpl.cpp:
  • src/WebMediaStreamDescriptor.cpp:
  • src/WebMediaStreamRegistry.cpp:
  • src/WebMediaStreamSource.cpp:
  • src/WebUserMediaRequest.cpp:
10:27 Changeset [102602] by japhet@chromium.org

Source/WebCore: A SubresourceLoader in the middle of revalidating
a resource should be treated as finishing (similar to
didFinishLoading and didFail) to ensure that willCancel()
doesn't declare the revalidation as having failed reentrantly.
https://bugs.webkit.org/show_bug.cgi?id=72762

Reviewed by Adam Barth.

Test: http/tests/cache/cancel-during-revalidation-succeeded.html

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):

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

Reviewed by Adam Barth.

  • http/tests/cache/cancel-during-revalidation-succeeded-expected.txt: Added.
  • http/tests/cache/cancel-during-revalidation-succeeded.html: Added.
  • http/tests/cache/resources/stylesheet304.php: Added.
10:18 Changeset [102601] by kubo@profusion.mobi

[EFL] Add API to query the validity of a frame's SSL certificate.
https://bugs.webkit.org/show_bug.cgi?id=74302

Reviewed by Gustavo Noronha Silva.

  • ewk/ewk_frame.cpp:

(ewk_frame_certificate_status_get):

  • ewk/ewk_frame.h:
10:18 Changeset [102600] by kubo@profusion.mobi

[EFL] Add API to notify that mixed content has been loaded.
https://bugs.webkit.org/show_bug.cgi?id=74301

Reviewed by Gustavo Noronha Silva.

When mixed content is displayed/run, both frames and views
emit the proper signals to notify API users.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::didDisplayInsecureContent):
(WebCore::FrameLoaderClientEfl::didRunInsecureContent):

  • ewk/ewk_frame.cpp:

(ewk_frame_view_create_for_view):
(ewk_frame_mixed_content_displayed_get):
(ewk_frame_mixed_content_run_get):
(ewk_frame_mixed_content_displayed_set):
(ewk_frame_mixed_content_run_set):

  • ewk/ewk_frame.h:
  • ewk/ewk_private.h:
  • ewk/ewk_view.cpp:

(ewk_view_frame_main_cleared):
(ewk_view_mixed_content_displayed_get):
(ewk_view_mixed_content_run_get):
(ewk_view_mixed_content_displayed_set):
(ewk_view_mixed_content_run_set):

  • ewk/ewk_view.h:
10:18 Changeset [102599] by kubo@profusion.mobi

[EFL] Add API to manage root X.509 CA certificates.
https://bugs.webkit.org/show_bug.cgi?id=74300

Reviewed by Martin Robinson.

  • ewk/ewk_network.cpp:

(ewk_network_tls_ca_certificates_path_get):
(ewk_network_tls_ca_certificates_path_set):

  • ewk/ewk_network.h:
10:17 Changeset [102598] by kubo@profusion.mobi

[EFL] Add API to control whether SSL certificates should be checked.
https://bugs.webkit.org/show_bug.cgi?id=74299

Reviewed by Martin Robinson.

  • ewk/ewk_main.cpp:

(_ewk_init_body): Explicitly disable certificate checks by default.

  • ewk/ewk_network.cpp:

(ewk_network_tls_certificate_check_get):
(ewk_network_tls_certificate_check_set):

  • ewk/ewk_network.h:
10:10 Changeset [102597] by alexis.menard@openbossa.org

Unreviewed cleanup fix.

Add missing files from https://bugs.webkit.org/show_bug.cgi?id=73016

Also remove the files that should be removed.

  • UIProcess/API/qt/tests/qmltests/WebView/tst_navigationHistory.qml: Added.
  • UIProcess/qt/qwkhistory.cpp: Removed.
  • UIProcess/qt/qwkhistory.h: Removed.
  • UIProcess/qt/qwkhistory_p.h: Removed.
10:03 Changeset [102596] by ossy@webkit.org

[Qt] Unreviewed gardening. Add Qt5 specific expected results after r102388.

  • platform/qt-5.0/animations/cross-fade-background-image-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-background-image-expected.txt: Added.
  • platform/qt-5.0/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-border-image-source-expected.txt: Added.
  • platform/qt-5.0/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-list-style-image-expected.txt: Added.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-image-expected.txt: Added.
  • platform/qt-5.0/transitions/cross-fade-background-image-expected.png: Added.
  • platform/qt-5.0/transitions/cross-fade-background-image-expected.txt: Added.
  • platform/qt-5.0/transitions/cross-fade-border-image-expected.png: Added.
  • platform/qt-5.0/transitions/cross-fade-border-image-expected.txt: Added.
09:49 Changeset [102595] by kbr@google.com

Unreviewed. Mark a couple of flaky compositing tests as failing.

  • platform/chromium/test_expectations.txt:
09:48 Changeset [102594] by commit-queue@webkit.org

[Qt] Fix skip list search path and expected file search path in ORWT
https://bugs.webkit.org/show_bug.cgi?id=74281

Expected file search path fixed.

Print all used skipped list and expected search path in verbose mode similar to NRWT.

Patch by Ádám Kallai <Kallai.Adam@stud.u-szeged.hu> on 2011-12-12
Reviewed by Csaba Osztrogonác.

  • Scripts/old-run-webkit-tests:

(buildPlatformResultHierarchy):
(buildPlatformTestHierarchy):
(readSkippedFiles):

09:40 Changeset [102593] by commit-queue@webkit.org

[qt][wk2] Postpone scroll effects when page transition is ongoing.
https://bugs.webkit.org/show_bug.cgi?id=74177

Patch by Michael Bruning <michael.bruning@nokia.com> on 2011-12-12
Reviewed by Kenneth Rohde Christiansen.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::scrollPositionRequested):

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate::PostTransitionState::apply):

09:30 Changeset [102592] by commit-queue@webkit.org

[Qt] Missing layoutTestController.dumpWillCacheResponse
https://bugs.webkit.org/show_bug.cgi?id=74287

Patch by Nándor Huszka <huszka.nandor@stud.u-szeged.hu> on 2011-12-12
Reviewed by Csaba Osztrogonác.

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::dumpWillCacheResponseCallbacks):

  • WebCoreSupport/DumpRenderTreeSupportQt.h:
  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::dispatchDidReceiveResponse):

  • WebCoreSupport/FrameLoaderClientQt.h:

Tools:

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:

(LayoutTestController::reset):
(LayoutTestController::dumpWillCacheResponse):

  • DumpRenderTree/qt/LayoutTestControllerQt.h:

LayoutTests:

  • platform/qt/Skipped: Unskip http/tests/misc/willCacheResponse-delegate-callback.html
09:26 Changeset [102591] by commit-queue@webkit.org

[GTK] platform/gtk/fonts/custom-font-missing-glyphs.html fails on 64-bit Debug
https://bugs.webkit.org/show_bug.cgi?id=73771

Patch by Martin Robinson <mrobinson@igalia.com> on 2011-12-12
Reviewed by Gustavo Noronha Silva.

Tools:

When using a fallback font during testing, always use DejaVu Sans. This prevents
falling back to DejaVu Serif on some systems.

  • DumpRenderTree/gtk/fonts/fonts.conf: Fall back to DejaVu Sans.

LayoutTests:

  • platform/gtk/fonts/custom-font-missing-glyphs-expected.txt: Update results to reflect DejaVu Sans.
  • platform/gtk/Skipped: Unskip a test that is now passing.
08:47 Changeset [102590] by commit-queue@webkit.org

Upstream 3 files into WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=74275

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-12
Reviewed by Rob Buis.

Initial upstream, no new tests.

  • platform/blackberry/ContextMenuBlackBerry.cpp: Added.
  • platform/blackberry/ContextMenuItemBlackBerry.cpp: Added.
  • platform/blackberry/TemporaryLinkStubs.cpp: Added.
08:44 Changeset [102589] by pierre.rossi@gmail.com

[Qt] Rendering issues with sliders and QStyle
https://bugs.webkit.org/show_bug.cgi?id=73921

With QStyle's origins being deeply rooted with widgets,
several styles make wrong assumptions, leading to sliders
not being painted properly in WebKit. We can solve a lot
of problems by systematically translating the painter to
the top left corner of the render object.

Reviewed by Simon Hausmann.

No new tests. The Qt tests are ran with the Windows
style, this fixes some quirks affecting other styles.

  • platform/qt/RenderThemeQStyle.cpp:

(WebCore::RenderThemeQStyle::paintSliderTrack):
(WebCore::RenderThemeQStyle::paintSliderThumb):

08:35 Changeset [102588] by commit-queue@webkit.org

Upstream 5 files into WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=73798

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-12
Reviewed by Rob Buis.

Main contributors:
Genevieve Mak <gmak@rim.com>
Mike Lattanzio <mlattanzio@rim.com>
George Staikos <gstaikos@rim.com>

Initial upstream, no new tests.

  • platform/blackberry/PlatformTouchEventBlackBerry.cpp: Added.

(WebCore::PlatformTouchEvent::PlatformTouchEvent):

  • platform/blackberry/PlatformTouchPointBlackBerry.cpp: Added.

(WebCore::PlatformTouchPoint::PlatformTouchPoint):

  • platform/blackberry/SharedBufferBlackBerry.cpp: Added.

(WebCore::SharedBuffer::createWithContentsOfFile):

  • platform/blackberry/SharedTimerBlackBerry.cpp: Added.

(WebCore::SharedTimerBlackBerry::SharedTimerBlackBerry):
(WebCore::SharedTimerBlackBerry::~SharedTimerBlackBerry):
(WebCore::SharedTimerBlackBerry::instance):
(WebCore::SharedTimerBlackBerry::start):
(WebCore::SharedTimerBlackBerry::stop):
(WebCore::setSharedTimerFiredFunction):
(WebCore::setSharedTimerFireInterval):
(WebCore::stopSharedTimer):

  • platform/blackberry/SystemTimeBlackBerry.cpp: Added.

(WebCore::userIdleTime):

08:28 Changeset [102587] by philn@webkit.org

Unreviewed, mark
http/tests/security/cross-origin-xsl-redirect-BLOCKED.html as
expected crasher on GTK 64-bit Debug.

  • platform/gtk/test_expectations.txt:
08:14 Changeset [102586] by caio.oliveira@openbossa.org

[Qt][WK2] Remove dead code from QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74296

Reviewed by Andreas Kling.

  • UIProcess/qt/QtWebPageProxy.cpp:
  • UIProcess/qt/QtWebPageProxy.h:
07:50 Changeset [102585] by hausmann@webkit.org

Unreviewed build fix.

Add missing files from https://bugs.webkit.org/show_bug.cgi?id=73016

  • UIProcess/API/qt/qwebnavigationhistory.cpp: Added.

(QWebNavigationListModelPrivate::QWebNavigationListModelPrivate):
(QWebNavigationListModelPrivate::createWebNavigationModel):
(QWebNavigationHistoryPrivate::QWebNavigationHistoryPrivate):
(QWebNavigationHistoryPrivate::createHistory):
(QWebNavigationHistoryPrivate::reset):
(QWebNavigationHistoryPrivate::goBackTo):
(QWebNavigationHistoryPrivate::goForwardTo):
(QWebNavigationListModel::QWebNavigationListModel):
(QWebNavigationListModel::~QWebNavigationListModel):
(QWebNavigationListModel::rowCount):
(QWebNavigationListModel::data):
(QWebNavigationHistory::QWebNavigationHistory):
(QWebNavigationHistory::~QWebNavigationHistory):
(QWebNavigationHistory::backItems):
(QWebNavigationHistory::forwardItems):

  • UIProcess/API/qt/qwebnavigationhistory_p.h: Added.
  • UIProcess/API/qt/qwebnavigationhistory_p_p.h: Added.
07:47 Changeset [102584] by apavlov@chromium.org

Implement a cache for CSSStyleRule::selectorText()
https://bugs.webkit.org/show_bug.cgi?id=74269

This change is geared towards speeding up the CSS selector profiler,
its implementation tracked at https://bugs.webkit.org/show_bug.cgi?id=74004.
Using a proof-of-concept implementation of the profiler, this change reduces
the profiler temporal overhead on PerformanceTests/Parser/html5-full-render.html
roughly by 86% (from ~72 seconds down to ~10 seconds). This change also does not
considerably increase average memory usage, as reading selectorText is a relatively
rare case during normal web browsing.

Reviewed by Andreas Kling.

No new tests, as this functionality is covered by existing tests.

  • css/CSSRule.h:
  • css/CSSStyleRule.cpp:

(WebCore::CSSStyleRule::~CSSStyleRule):
(WebCore::selectorTextCache):
(WebCore::CSSStyleRule::cleanup):
(WebCore::CSSStyleRule::generateSelectorText):
(WebCore::CSSStyleRule::selectorText):
(WebCore::CSSStyleRule::setSelectorText):

  • css/CSSStyleRule.h:
07:42 Changeset [102583] by hausmann@webkit.org

[Qt] Move postMessage/messageReceived APIS to experimental

Reviewed by Tor Arne Vestbø.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::setPageProxy):
(QQuickWebViewExperimental::QQuickWebViewExperimental):
(QQuickWebViewExperimental::postMessage):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_messaging.qml:
07:39 Changeset [102582] by alexis.menard@openbossa.org

[Qt][WK2] History is not accessible in QML.
https://bugs.webkit.org/show_bug.cgi?id=73016

Reviewed by Simon Hausmann.

.:

Add the new QWebNavigationHistory in the map file.

  • Source/qtwebkit-export.map:

Source/WebKit/qt:

Register QWebNavigationHistory and QWebNavigationListModel in the QML plugin.

  • declarative/experimental/plugin.cpp:

(WebKitQmlPlugin::registerTypes):

Source/WebKit2:

Remove the old qwkhistory and create QWebNavigationHistory which is QML
friendly with data models you can plug to a view in QML

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::didChangeBackForwardList):
(QQuickWebViewExperimental::navigationHistory):
(QQuickWebViewExperimental::goForwardTo):
(QQuickWebViewExperimental::goBackTo):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebnavigationhistory.cpp: Added.

(QWebNavigationListModelPrivate::QWebNavigationListModelPrivate):
(QWebNavigationListModelPrivate::createWebNavigationModel):
(QWebNavigationHistoryPrivate::QWebNavigationHistoryPrivate):
(QWebNavigationHistoryPrivate::createHistory):
(QWebNavigationHistoryPrivate::reset):
(QWebNavigationHistoryPrivate::goBackTo):
(QWebNavigationHistoryPrivate::goForwardTo):
(QWebNavigationListModel::QWebNavigationListModel):
(QWebNavigationListModel::~QWebNavigationListModel):
(QWebNavigationListModel::rowCount):
(QWebNavigationListModel::data):
(QWebNavigationHistory::QWebNavigationHistory):
(QWebNavigationHistory::~QWebNavigationHistory):
(QWebNavigationHistory::backItems):
(QWebNavigationHistory::forwardItems):

  • UIProcess/API/qt/qwebnavigationhistory_p.h: Added.
  • UIProcess/API/qt/qwebnavigationhistory_p_p.h: Renamed from Source/WebKit2/UIProcess/qt/qwkhistory_p.h.
  • UIProcess/API/qt/tests/qmltests/WebView/tst_navigationHistory.qml: Added.
  • UIProcess/qt/QtWebPageLoadClient.cpp:

(QtWebPageLoadClient::QtWebPageLoadClient):
(QtWebPageLoadClient::didChangeBackForwardList):

  • UIProcess/qt/QtWebPageLoadClient.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):
(QtWebPageProxy::~QtWebPageProxy):
(QtWebPageProxy::goBackTo):
(QtWebPageProxy::goForwardTo):
(QtWebPageProxy::navigationHistory):

  • UIProcess/qt/QtWebPageProxy.h:
  • UIProcess/qt/qwkhistory.cpp: Removed.
  • UIProcess/qt/qwkhistory.h: Removed.
07:24 Changeset [102581] by apavlov@chromium.org

Web Inspector: [Styles] Modified selector text needs sanitization
https://bugs.webkit.org/show_bug.cgi?id=74291

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • inspector/front-end/StylesSidebarPane.js:

LayoutTests:

  • inspector/styles/commit-selector-expected.txt:
  • inspector/styles/commit-selector.html:
07:13 Changeset [102580] by reni@webkit.org

Fulfill FIXME in HTMLLinkElement.h.
https://bugs.webkit.org/show_bug.cgi?id=74278

Rename HTMLLinkElement::isLoading() to isStyleSheetLoading().

Reviewed by Andreas Kling.

No new tests because the functionality remains the same.

  • dom/Document.cpp:

(WebCore::Document::recalcStyleSelector):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::setDisabledState):
(WebCore::HTMLLinkElement::isStyleSheetLoading):
(WebCore::HTMLLinkElement::sheetLoaded):

  • html/HTMLLinkElement.h:
06:54 Changeset [102579] by jesus@webkit.org

[Qt][WK2] Move startDrag implementation to QtWebPageEventHandler
https://bugs.webkit.org/show_bug.cgi?id=73145

Reviewed by Simon Hausmann.

Move QtWebPageProxy::startDrag to QtWebPageEventHandler::startDrag
and call it straight from QtPageClient.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(dragOperationToDropAction):
(dragOperationToDropActions):
(dropActionToDragOperation):
Now these functions are static inline and not part of QtWebPageEventHandler
anymore.

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::startDrag):

  • UIProcess/qt/QtWebPageEventHandler.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::startDrag): removed.

06:46 Changeset [102578] by apavlov@chromium.org

WebKit does not enumerate over CSS properties in HTMLElement.style
https://bugs.webkit.org/show_bug.cgi?id=23946

Reviewed by Darin Adler.

Source/JavaScriptCore:

Add a few exports to follow the JSCSSStyleDeclaration.cpp changes,
introduce an std::sort() comparator function.

(WTF::codePointCompareLessThan): Used by std::sort() to sort properties.

Source/WebCore:

This change generates a list of JavaScript mirrors of the CSS properties and allows to enumerate them
using the "in" operator on the CSSStyleDeclaration object.

Test: fast/css/style-enumerate-properties.html

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::JSCSSStyleDeclaration::getOwnPropertyNames): Added.

  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:

(WebCore::V8CSSStyleDeclaration::namedPropertyEnumerator): Added.
(WebCore::V8CSSStyleDeclaration::namedPropertyQuery): Added.
(WebCore::V8CSSStyleDeclaration::namedPropertyGetter): A small drive-by optimization (local initialization moved down).

  • css/CSSStyleDeclaration.idl: Use a custom property enumerator.
  • css/makeprop.pl: Add a function to convert CSS property names into JS ones.

LayoutTests:

  • fast/css/style-enumerate-properties-expected.txt: Added.
  • fast/css/style-enumerate-properties.html: Added.
  • fast/dom/domListEnumeration-expected.txt:
  • fast/dom/script-tests/domListEnumeration.js:
06:27 Changeset [102577] by loislo@chromium.org

Web Inspector: unreviewed test fix for r102574

  • inspector/profiler/detailed-heapshots-test.js:
06:09 Changeset [102576] by pierre.rossi@gmail.com

Add myself as a committer

  • Scripts/webkitpy/common/config/committers.py:
06:06 Changeset [102575] by apavlov@chromium.org

Unreviewed, build fix.

Revert r102570 which broke SnowLeopard builders.

Source/JavaScriptCore:

Source/WebCore:

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:
  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:

(WebCore::V8CSSStyleDeclaration::namedPropertyGetter):

  • css/CSSStyleDeclaration.idl:
  • css/makeprop.pl:

LayoutTests:

  • fast/css/style-enumerate-properties-expected.txt: Removed.
  • fast/css/style-enumerate-properties.html: Removed.
  • fast/dom/domListEnumeration-expected.txt:
  • fast/dom/script-tests/domListEnumeration.js:
05:58 Changeset [102574] by loislo@chromium.org

Web Inspector: chromium: UI: Detailed Heap snapshot shows too many objects' hidden properties.
https://bugs.webkit.org/show_bug.cgi?id=74289

WebCore objects have many hidden properties.
The Detailed Heap shapshot view shows all these props for a selected object.
The result view looks too heavy and users usually failed to find a useful information about the object.
Looks like such ability is unnecessary in the most cases.
I'd like to introduce a configurable property that will show/hide these props from the view.

Reviewed by Yury Semikhatsky.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/DetailedHeapshotGridNodes.js:
  • inspector/front-end/DetailedHeapshotView.js:
  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotProxy.prototype.createPathFinder):

  • inspector/front-end/SettingsScreen.js:

(WebInspector.SettingsScreen):

05:53 Changeset [102573] by caio.oliveira@openbossa.org

[Qt] [WK2] Support customizing popup menus with QML
https://bugs.webkit.org/show_bug.cgi?id=73560

Reviewed by Tor Arne Vestbø.

Source/WebKit2:

Add a new property 'itemSelector' to WebView (experimental for now) that contains
the QML component used when it needs to spawn a popup menu. For example, <select>
HTML tag may trigger a popup menu.

When loaded the component will have the 'model' available in its context with two
properties: 'elementRect', describing the position of the element which spawned
the item selector, and 'items', which is a model ready to be used by ListView. The
'model' also have methods to accept/reject the selection.

Option groups are available as a property for each row in the 'items' model. This
can be used together with ListView to create sections, as demonstrated in the
MiniBrowser. QML tests were added as well.

The existing Desktop version is removed since after the Qt5 refactoring isn't
working correctly. Once Qt have its own QML components for popup, we hope to use
it as a default if no other popupMenu is specified.

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewExperimental::itemSelector):
(QQuickWebViewExperimental::setItemSelector):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate::get):

  • UIProcess/API/qt/tests/qmltests/WebView/tst_itemSelector.qml: Added.
  • UIProcess/API/qt/tests/qmltests/common/select.html: Added.
  • UIProcess/API/qt/tests/qmltests/qmltests.pro:
  • UIProcess/qt/QtPageClient.cpp:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::createPopupMenuProxy):

  • UIProcess/qt/WebPopupMenuProxyQt.cpp:

(WebKit::PopupMenuItemModel::rowCount):
(WebKit::PopupMenuItemModel::Item::Item):
(WebKit::ItemSelectorContextObject::elementRect):
(WebKit::ItemSelectorContextObject::items):
(WebKit::ItemSelectorContextObject::reject):
(WebKit::ItemSelectorContextObject::ItemSelectorContextObject):
(WebKit::ItemSelectorContextObject::accept):
(WebKit::createRoleNamesHash):
(WebKit::PopupMenuItemModel::PopupMenuItemModel):
(WebKit::PopupMenuItemModel::data):
(WebKit::PopupMenuItemModel::select):
(WebKit::PopupMenuItemModel::selectedOriginalIndex):
(WebKit::PopupMenuItemModel::buildItems):
(WebKit::WebPopupMenuProxyQt::WebPopupMenuProxyQt):
(WebKit::WebPopupMenuProxyQt::showPopupMenu):
(WebKit::WebPopupMenuProxyQt::hidePopupMenu):
(WebKit::WebPopupMenuProxyQt::selectIndex):
(WebKit::WebPopupMenuProxyQt::createItem):
(WebKit::WebPopupMenuProxyQt::createContext):
(WebKit::WebPopupMenuProxyQt::notifyValueChanged):

  • UIProcess/qt/WebPopupMenuProxyQt.h:

(WebKit::WebPopupMenuProxyQt::create):

  • UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp: Removed.
  • UIProcess/qt/WebPopupMenuProxyQtDesktop.h: Removed.

Tools:

Add an Item Selector to our WebView using the experimental API.

  • MiniBrowser/qt/MiniBrowser.pro:
  • MiniBrowser/qt/MiniBrowser.qrc:
  • MiniBrowser/qt/qml/BrowserWindow.qml:
  • MiniBrowser/qt/qml/ItemSelector.qml: Added.
05:41 Changeset [102572] by haraken@chromium.org

Unreviewed, rolling out r102556.
http://trac.webkit.org/changeset/102556
https://bugs.webkit.org/show_bug.cgi?id=73394

clobber build failure

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gyp/scripts/action_derivedsourcesallinone.py:

(main):

  • WebCore.gypi:
  • bindings/scripts/generate-bindings.pl:
  • page/DOMWindow.idl:
  • webaudio/DOMWindowWebAudio.idl: Removed.
05:39 Changeset [102571] by haraken@chromium.org

Unreviewed, rolling out r102558.
http://trac.webkit.org/changeset/102558
https://bugs.webkit.org/show_bug.cgi?id=74160

clobber build failure

  • WebCore.gypi:
  • page/DOMWindow.idl:
  • websockets/DOMWindowWebSocket.idl: Removed.
05:23 Changeset [102570] by apavlov@chromium.org

WebKit does not enumerate over CSS properties in HTMLElement.style
https://bugs.webkit.org/show_bug.cgi?id=23946

Reviewed by Darin Adler.

Source/JavaScriptCore:

Add a few exports to follow the JSCSSStyleDeclaration.cpp changes,
introduce an std::sort() comparator function.

(WTF::codePointCompareLessThan): Used by std::sort() to sort properties.

Source/WebCore:

This change generates a list of JavaScript mirrors of the CSS properties and allows to enumerate them
using the "in" operator on the CSSStyleDeclaration object.

Test: fast/css/style-enumerate-properties.html

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::JSCSSStyleDeclaration::getOwnPropertyNames): Added.

  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:

(WebCore::V8CSSStyleDeclaration::namedPropertyEnumerator): Added.
(WebCore::V8CSSStyleDeclaration::namedPropertyQuery): Added.
(WebCore::V8CSSStyleDeclaration::namedPropertyGetter): A small drive-by optimization (local initialization moved down).

  • css/CSSStyleDeclaration.idl: Use a custom property enumerator.
  • css/makeprop.pl: Add a function to convert CSS property names into JS ones, and a string comparator.

LayoutTests:

  • fast/css/style-enumerate-properties-expected.txt: Added.
  • fast/css/style-enumerate-properties.html: Added.
  • fast/dom/domListEnumeration-expected.txt:
  • fast/dom/script-tests/domListEnumeration.js:
05:09 Changeset [102569] by yurys@chromium.org

Web Inspector: provide per Document Node count statistics
https://bugs.webkit.org/show_bug.cgi?id=74100

Memory agent now returns counters for nodes with given names. For each
object group root user will see total number of its descendtants and per
tag name counts.

This patch also moves generic CounterVisitor code out of V8 bindings. It
may well be used with both JS engines.

Reviewed by Pavel Feldman.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/ScriptProfiler.h:

(WebCore::ScriptProfiler::visitJSDOMWrappers):

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::visitJSDOMWrappers):

  • bindings/v8/ScriptProfiler.h:
  • inspector/DOMWrapperVisitor.h: Added.

(WebCore::DOMWrapperVisitor::~DOMWrapperVisitor):

  • inspector/Inspector.json:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getDOMNodeCount):

  • inspector/InspectorMemoryAgent.h:
05:08 Changeset [102568] by commit-queue@webkit.org

[Qt] MiniBrowser should only visualize mock touch points when in non-desktop mode
https://bugs.webkit.org/show_bug.cgi?id=74283

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-12
Reviewed by Simon Hausmann.

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::sendTouchEvent):

04:30 Changeset [102567] by philn@webkit.org

Unreviewed, skip flaky fast/events/overflow-events.html test on GTK.

  • platform/gtk/test_expectations.txt:
03:54 Changeset [102566] by philn@webkit.org

Unreviewed, skip failing test on GTK.

  • platform/gtk/Skipped: Skip editing/pasteboard/emacs-ctrl-k-with-move.html
02:54 Changeset [102565] by philn@webkit.org

Unreviewed, skip a flaky test and a failing test on GTK.

  • platform/gtk/Skipped: Skip fast/events/dont-loose-last-event.html
  • platform/gtk/test_expectations.txt: Mark

fullscreen/full-screen-iframe-legacy.html flaky.

02:03 Changeset [102564] by carlosgc@webkit.org

Unreviewed. Fix make distcheck issues.

  • GNUmakefile.list.am:
01:39 Changeset [102563] by philn@webkit.org

Unreviewed, GTK baselines for tests added in r102388.

  • platform/gtk/animations/cross-fade-background-image-expected.txt: Added.
  • platform/gtk/animations/cross-fade-border-image-source-expected.txt: Added.
  • platform/gtk/animations/cross-fade-list-style-image-expected.txt: Added.
  • platform/gtk/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • platform/gtk/animations/cross-fade-webkit-mask-image-expected.txt: Added.
  • platform/gtk/transitions/cross-fade-background-image-expected.txt: Added.
  • platform/gtk/transitions/cross-fade-border-image-expected.txt: Added.
00:58 Changeset [102562] by haraken@chromium.org

[Refactoring] In prepare-ChangeLog, move into a method the top-level code
to show ChangeLogs diff and open ChangeLogs in an editor
https://bugs.webkit.org/show_bug.cgi?id=74266

Reviewed by Ryosuke Niwa.

We are planning to write unit-tests for prepare-ChangeLog
in a run-leaks_unittest manner. This patch is one of the incremental
refactorings to remove all top-level code and global variables from
prepare-ChangeLog.

  • Scripts/prepare-ChangeLog: Moved the top-level code to show ChangeLogs diff into printDiff().

Moved the top-level code to open ChangeLogs in an editor into openChangeLogs().
Renamed @changed_files to @changedFiles.
Renamed %conflict_files to %conflictFiles.
(generateFunctionLists):
(printDiff):
(openChangeLogs):

00:10 Changeset [102561] by noel.gordon@gmail.com

WebPImageDecoder: Increase image/webp decoding performance 10-20%
https://bugs.webkit.org/show_bug.cgi?id=74263

Reviewed by Adam Barth.

Avoid copying data from the RGB buffer of decoded image output to the
backing pixel store. That is slow - costs 10% of the overall decoding
time at libwebp 0.1.2, and 20% at libwebp 0.1.3.

Instead, instruct the decoder to write the decoded pixels directly to
the backing pixel store.

No new tests. Covered by existing tests. No progressive decoding test
exists in DRT, see https://bugs.webkit.org/show_bug.cgi?id=74062

  • platform/image-decoders/webp/WEBPImageDecoder.cpp:

(outputMode): Define output pixel format. On little-endian machines,
output BGRA pixels to the backing store, for example.
(WebCore::WEBPImageDecoder::WEBPImageDecoder):
(WebCore::WEBPImageDecoder::decode):

  • platform/image-decoders/webp/WEBPImageDecoder.h:

12/11/11:

23:44 Changeset [102560] by zherczeg@webkit.org

Add new CSS nth-children parsing tests
https://bugs.webkit.org/show_bug.cgi?id=74178

Source/WebCore:

Reviewed by Darin Adler.

Test: fast/css/parsing-css-nth-child.html

  • css/CSSParser.cpp:

(WebCore::isValidNthToken): Add "-n" to the possible identifiers.

LayoutTests:

The test covers several valid and invalid nth-child tokens.

Reviewed by Darin Adler.

  • fast/css/parsing-css-nth-child-expected.txt: Added.
  • fast/css/parsing-css-nth-child.html: Added.
23:07 Changeset [102559] by haraken@chromium.org

[Refactoring] Move top-level code to resolve conflicted ChangeLogs into a method
https://bugs.webkit.org/show_bug.cgi?id=74257

Reviewed by Ryosuke Niwa.

We are planning to write unit-tests for prepare-ChangeLog
in a run-leaks_unittest/ manner. This patch is one of the incremental
refactorings to remove all top-level code and global variables from
prepare-ChangeLog.

  • Scripts/prepare-ChangeLog: Moved top-level code to get the latest ChangeLogs

into getLatestChangeLogs(), and moved top-level code to resolve conflicted ChangeLogs
into resolveConflictedChangeLogs().
(getLatestChangeLogs):
(resolveConflictedChangeLogs):

23:01 Changeset [102558] by haraken@chromium.org

Use [Supplemental] IDL in WebSocket
https://bugs.webkit.org/show_bug.cgi?id=74160

Reviewed by Adam Barth.

By using the [Supplemental] IDL, this patch moves declarations of WebSocket
attributes from DOMWindow.idl to websocket/DOMWindowWebSocket.idl,
which helps make WebSocket a self-contained module.

No new tests, no change in behavior.
Confirm that http/tests/websocket/* pass.

  • WebCore.gypi: Added DOMWindowWebSocket.idl.
  • page/DOMWindow.idl: Added the [Supplemented] IDL to WebSocket-related attributes. This [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL (See bug 73394 for more details).
  • websockets/DOMWindowWebSocket.idl: Added. Used the [Supplemental=DOMWindow] IDL. The attributes in this IDL file are treated as if they are described in DOMWindow.idl.
20:06 Changeset [102557] by macpherson@chromium.org

Implement webkit-line-grid and webkit-line-grid-snap CSS properties in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74262

Reviewed by Andreas Kling.

No new tests / refactoring only.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

19:55 Changeset [102556] by haraken@chromium.org

Use the [Supplemental] IDL for webaudio attributes in Chromium
https://bugs.webkit.org/show_bug.cgi?id=73394

Reviewed by Adam Barth.

  • Overview: Using the [Supplemental] IDL, this patch moves the attribute

declarations of webaudio from DOMWindow.idl into a new IDL file
webaudio/DOMWindowWebAudio.idl, which helps make webaudio a self-contained
feature (aka a module).

  • This patch changes the build flow of WebCore.gyp as follows:

Previous build flow:

foreach $idl (all IDL files) {

generate-bindings.pl depends on $idl;
generate-bindings.pl reads $idl;
generate-bindings.pl generates .h and .cpp files for $idl;

}

New build flow (See the discussions in bug 72138 for more details):

resolve-supplemental.pl depends on all IDL files;
resolve-supplemental.pl reads all IDL files;
resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
resolve-supplemental.pl outputs supplemental_dependency.tmp;
foreach $idl (all IDL files) {

generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
generate-bindings.pl reads $idl;
generate-bindings.pl reads supplemental_dependency.tmp;
generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files whilementing $idl;

}

  • This patch introduces a temporary IDL, [Supplemented]. The [Supplemented] IDL

will be removed after build scripts for all platforms support the [Supplemental] IDL.
The motivation for the [Supplemented] IDL is as follows:

In order to support the [Supplemental] IDL, we need to
(1) run resolve-supplemental.pl and generate supplemental_dependency.tmp
(2) and run generate-bindings.pl with the supplemental_dependency.tmp.

This build flow requires a change on the following build scripts,
but changing all the build scripts all at once without any regression is too difficult:

  • DerivedSources.make
  • DerivedSources.pri
  • GNUmakefile.am
  • PlatformBlackBerry.cmake
  • UseJSC.cmake
  • UseV8.cmake
  • WebCore.vcproj/MigrateScripts
  • WebCore.vcproj/WebCore.vcproj
  • bindings/gobject/GNUmakefile.am
  • WebCore.gyp/WebCore.gyp

Thus, we are planning to change the build scripts one by one, which implies that
we need to allow the temporary state in which some build scripts support [Supplemental] IDL
but others do not. To accomplish this, we introduce a temporary IDL, [Supplemented].
The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]
in another IDL file somewhere, like this:

DOMWindowWebAudio.idl:

interface [

Supplemental=DOMWindow

] DOMWindowWebAudio {

attribute attr1;
attribute attr2;

};

DOMWindow.idl:

interface [
] DOMWindow {

attribute [Supplemented] attr1; This line will be removed after all build scripts support the [Su IDL
attribute [Supplemented] attr2;
This line will be removed after all build scripts support the [Su IDL.
attribute attr3;
attribute attr4;

};

Assuming these IDL files, this patch implements the following logic in generate-bindings.pl:

  • If a given build script supports the [Supplemental] IDL, generate-bindings.pl ignores all attributes with the [Supplemented] IDL.
  • Otherwise, generate-bindings.pl treats all attributes with the [Supplemented] IDL as normal attributes and instead ignores all attributes with the [Supplemental] IDL (i.e. generate-bindings.pl generates nothing from the IDL file with the [Supplemental] IDL).

Tests: webaudio/*

  • WebCore.gyp/WebCore.gyp: Describes the build flow that I described above.
  • WebCore.gyp/scripts/action_derivedsourcesallinone.py:

(main): Reads the IDL file names from the input file (i.e. supplemental_dependency.tmp), which are described at the first column of each line in the input file. If the file name is a "/cygdrive/c/..."-style path, it is converted to a "C:\cygwin\..."-style path by the cygpath command.

  • WebCore.gypi: Added DOMWindowWebAudio.idl.
  • bindings/scripts/generate-bindings.pl: As a temporary solution, if the platform does not support the [Supplemental] IDL, the perl script ignores the [Supplemental] IDL and instead uses the [Supplemented] IDL. Otherwise, the perl script ignores the [Supplemented] IDL and instead uses the [Supplemental] IDL.
  • page/DOMWindow.idl: Added the [Supplemented] IDL to webaudio-related attributes. As I described above, the [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL.
  • webaudio/DOMWindowWebAudio.idl: Added. Describes the [Supplemental=DOMWindow] IDL. The attributes in this IDL file should be treated as if they are written in DOMWindow.idl.
19:43 Changeset [102555] by kling@webkit.org

Micro-optimize CSSStyleSelector::findSiblingForStyleSharing().
<http://webkit.org/b/74261>

Reviewed by Antti Koivisto.

Move the isStyledElement() check from canShareStyleWithElement() into the
loop in findSiblingForStyleSharing(), and tighten up the argument/return
types to StyledElement* as appropriate.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::canShareStyleWithElement):
(WebCore::CSSStyleSelector::findSiblingForStyleSharing):
(WebCore::CSSStyleSelector::locateSharedStyle):

  • css/CSSStyleSelector.h:
19:25 Changeset [102554] by commit-queue@webkit.org

[Qt] QQuickWebView missing titleChanged signal tests
https://bugs.webkit.org/show_bug.cgi?id=73923

Patch by Gopal Raghavan <gopal.1.raghavan@nokia.com> on 2011-12-11
Reviewed by Simon Hausmann.

Added tests for QQuickWebView tilteChanged signal.

  • UIProcess/API/qt/tests/qmltests/WebView/tst_titleChanged.qml: Added.
  • UIProcess/API/qt/tests/qmltests/common/test3.html: Added.
  • UIProcess/API/qt/tests/qmltests/qmltests.pro:
19:12 Changeset [102553] by commit-queue@webkit.org

Asynchronous path synchronous path of SpellChecker should share the code to mark misspellings.
https://bugs.webkit.org/show_bug.cgi?id=73616

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-12-11
Reviewed by Hajime Morita.

Asynchronous spellchecking path should call the same method for the synchronous spellchecking path
to mark misspellings.

No new tests. Covered by existing tests.

  • editing/Editor.cpp:

(WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
(WebCore::Editor::markAndReplaceFor):

Takes SpellCheckRequest object.

  • editing/Editor.h:
  • editing/SpellChecker.cpp:

(WebCore::SpellChecker::didCheck):

Calls the same method of synchronous spellchecking path.

18:24 Changeset [102552] by macpherson@chromium.org

Implement CSS display property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=73500

Reviewed by Andreas Kling.

Refactoring only / no functionality changed.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyDisplay::isValidDisplayValue):
(WebCore::ApplyPropertyDisplay::applyInheritValue):
(WebCore::ApplyPropertyDisplay::applyInitialValue):
(WebCore::ApplyPropertyDisplay::applyValue):
(WebCore::ApplyPropertyDisplay::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

17:22 Changeset [102551] by andersca@apple.com

Crash when trying to garbage collect JavaScript objects
https://bugs.webkit.org/show_bug.cgi?id=74259
<rdar://problem/10556188>

Reviewed by Sam Weinig.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::garbageCollectJavaScriptObjects):
Use sendToAllProcesses which is more correct and also handles m_process being null.

17:22 Changeset [102550] by weinig@apple.com

Fix another signed vs. unsigned warning

  • runtime/ArgList.h:

(JSC::MarkedArgumentBuffer::~MarkedArgumentBuffer):

17:05 Changeset [102549] by weinig@apple.com

Fix a signed vs. unsigned warning.

  • runtime/ArgList.cpp:

(JSC::MarkedArgumentBuffer::slowAppend):
Cast inlineCapacity to an int to appease the warning. This is known OK
since inlineCapacity is defined to be 8.

16:50 Changeset [102548] by ggaren@apple.com

Try to fix the Qt build.

Unreviewed.

  • css/CSSStyleDeclaration.cpp: Maybe an #include will solve our problem?

Someday, compiler error messages will not suck. Today is not that day.

16:45 Changeset [102547] by ggaren@apple.com

Rolled out *another* debugging change I committed accidentally.

Unreviewed.

  • Configurations/Base.xcconfig:
16:40 Changeset [102546] by ggaren@apple.com

Rolled out a debug counter I committed accidentally.

Unreviewed.

  • jit/JITStubs.cpp:

(JSC::arityCheckFor):

16:35 Changeset [102545] by ggaren@apple.com

v8 benchmark takes 12-13 million function call slow paths due to extra arguments
https://bugs.webkit.org/show_bug.cgi?id=74244

Reviewed by Filip Pizlo.

.arguments function of order the Reversed

10% speedup on v8-raytrace, 1.7% speedup on v8 overall, neutral on Kraken
and SunSpider.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::valueProfileForArgument): Clarified that the interface
to this function is an argument number.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitConstruct):
(JSC::BytecodeGenerator::isArgumentNumber): Switched to using CallFrame
helper functions for computing offsets for arguments, rather than doing
the math by hand.

Switched to iterating argument offsets backwards (--) instead of forwards (++).

  • bytecompiler/BytecodeGenerator.h:

(JSC::CallArguments::thisRegister):
(JSC::CallArguments::argumentRegister):
(JSC::CallArguments::registerOffset): Updated for arguments being reversed.

  • bytecompiler/NodesCodegen.cpp: Allocate arguments in reverse order.
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getArgument):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::flush):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleMinMax):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::processPhiStack): Use abstract argument indices
that just-in-time convert to bytecode operands (i.e., indexes in the register
file) through helper functions. This means only one piece of code needs
to know how arguments are laid out in the register file.

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump): Ditto.

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::valueProfileFor): Ditto.

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileFunction): The whole point of this patch:
Treat too many arguments as an arity match.

  • dfg/DFGOSRExit.h:

(JSC::DFG::OSRExit::variableForIndex):
(JSC::DFG::OSRExit::operandForIndex): Use helper functions, as above.

  • dfg/DFGOperands.h:

(JSC::DFG::operandToArgument):
(JSC::DFG::argumentToOperand): These are now the only two lines of code in
the DFG compiler that know how arguments are laid out in memory.

(JSC::DFG::Operands::operand):
(JSC::DFG::Operands::setOperand): Use helper functions, as above.

  • dfg/DFGOperations.cpp: The whole point of this patch:

Treat too many arguments as an arity match.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall): Use helper functions, as above.

Also, don't tag the caller frame slot as a cell, because it's not a cell.

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall): Use helper functions, as above.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile): Use helper functions, as above.

(JSC::DFG::SpeculativeJIT::checkArgumentTypes): Use already-computed
argument virtual register instead of recomputing by hand.

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callFrameSlot):
(JSC::DFG::SpeculativeJIT::argumentSlot):
(JSC::DFG::SpeculativeJIT::callFrameTagSlot):
(JSC::DFG::SpeculativeJIT::callFramePayloadSlot):
(JSC::DFG::SpeculativeJIT::argumentTagSlot):
(JSC::DFG::SpeculativeJIT::argumentPayloadSlot): Added a few helper
functions for dealing with callee arguments specifically. These still
build on top of our other helper functions, and have no direct knowledge
of how arguments are laid out in the register file.

(JSC::DFG::SpeculativeJIT::resetCallArguments):
(JSC::DFG::SpeculativeJIT::addCallArgument): Renamed argumentIndex to
argumentOffset to match CallFrame naming.

(JSC::DFG::SpeculativeJIT::valueSourceReferenceForOperand): Use helper
functions, as above.

  • interpreter/CallFrame.h:

(JSC::ExecState::argumentOffset):
(JSC::ExecState::argumentOffsetIncludingThis):
(JSC::ExecState::argument):
(JSC::ExecState::setArgument):
(JSC::ExecState::thisArgumentOffset):
(JSC::ExecState::thisValue):
(JSC::ExecState::setThisValue):
(JSC::ExecState::offsetFor):
(JSC::ExecState::hostThisRegister):
(JSC::ExecState::hostThisValue): Added a bunch of helper functions for
computing where an argument is in the register file. Anything in the
runtime that needs to access arguments should use these helpers.

  • interpreter/CallFrameClosure.h:

(JSC::CallFrameClosure::setThis):
(JSC::CallFrameClosure::setArgument):
(JSC::CallFrameClosure::resetCallFrame): This stuff is a lot simpler, now
that too many arguments counts as an arity match and doesn't require
preserving two copies of our arguments.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::slideRegisterWindowForCall): Only need to do something
special if the caller provided too few arguments.

Key simplification: We never need to maintain two copies of our arguments
anymore.

(JSC::eval):
(JSC::loadVarargs): Use helper functions.

(JSC::Interpreter::unwindCallFrame): Updated for new interface.

(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::prepareForRepeatCall): Seriously, though: use helper
functions.

(JSC::Interpreter::privateExecute): No need to check for stack overflow
when calling host functions because they have zero callee registers.

(JSC::Interpreter::retrieveArguments): Explicitly tear off the arguments
object, since there's no special constructor for this anymore.

  • interpreter/Interpreter.h: Reduced the C++ re-entry depth because some

workers tests were hitting stack overflow in some of my testing. We should
make this test more exact in future.

  • interpreter/RegisterFile.h: Death to all runtime knowledge of argument

location that does not belong to the CallFrame class!

  • jit/JIT.cpp:

(JSC::JIT::privateCompile): I am a broken record and I use helper functions.

Also, the whole point of this patch: Treat too many arguments as an arity match.

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileLoadVarargs):

  • jit/JITCall.cpp:

(JSC::JIT::compileLoadVarargs): Updated the argument copying math to use
helper functions, for backwards-correctness. Removed the condition
pertaining to declared argument count because, now that arguments are
always in just one place, this optimization is valid for all functions.
Standardized the if predicate for each line of the optimization. This might
fix a bug, but I couldn't get the bug to crash in practice.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_create_arguments):
(JSC::JIT::emit_op_get_argument_by_val):
(JSC::JIT::emitSlow_op_get_argument_by_val):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_create_arguments):
(JSC::JIT::emit_op_get_argument_by_val):
(JSC::JIT::emitSlow_op_get_argument_by_val): Removed cti_op_create_arguments_no_params
optimization because it's no longer an optimization, now that arguments
are always contiguous in a known location.

Updated argument access opcode math for backwards-correctness.

  • jit/JITStubs.cpp:

(JSC::arityCheckFor): Updated just like slideRegisterWindowForCall. This
function is slightly different because it copies the call frame in
addition to the arguments. (In the Interpreter, the call frame is not
set up by this point.)

(JSC::lazyLinkFor): The whole point of this patch: Treat too many
arguments as an arity match.

(JSC::DEFINE_STUB_FUNCTION): Updated for new iterface to tearOff().

  • jit/JITStubs.h:
  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::loadDoubleArgument):
(JSC::SpecializedThunkJIT::loadCellArgument):
(JSC::SpecializedThunkJIT::loadInt32Argument): Use helper functions! They
build strong bones and teeth!

  • runtime/ArgList.cpp:

(JSC::ArgList::getSlice):
(JSC::MarkedArgumentBuffer::slowAppend):

  • runtime/ArgList.h:

(JSC::MarkedArgumentBuffer::MarkedArgumentBuffer):
(JSC::MarkedArgumentBuffer::~MarkedArgumentBuffer):
(JSC::MarkedArgumentBuffer::at):
(JSC::MarkedArgumentBuffer::clear):
(JSC::MarkedArgumentBuffer::append):
(JSC::MarkedArgumentBuffer::removeLast):
(JSC::MarkedArgumentBuffer::last):
(JSC::ArgList::ArgList):
(JSC::ArgList::at): Updated for backwards-correctness. WTF::Vector doesn't
play nice with backwards-ness, so I changed to using manual allocation.

Fixed a FIXME about not all values being marked in the case of out-of-line
arguments. I had to rewrite the loop anyway, and I didn't feel like
maintaining fidelity to its old bugs.

  • runtime/Arguments.cpp:

(JSC::Arguments::visitChildren):
(JSC::Arguments::copyToArguments):
(JSC::Arguments::fillArgList):
(JSC::Arguments::getOwnPropertySlotByIndex):
(JSC::Arguments::getOwnPropertySlot):
(JSC::Arguments::getOwnPropertyDescriptor):
(JSC::Arguments::putByIndex):
(JSC::Arguments::put):
(JSC::Arguments::tearOff):

  • runtime/Arguments.h:

(JSC::Arguments::create):
(JSC::Arguments::Arguments):
(JSC::Arguments::argument):
(JSC::Arguments::finishCreation): Secondary benefit of this patch: deleted
lots of tricky code designed to maintain two different copies of function
arguments. Now that arguments are always contiguous in one place in memory,
this complexity can go away.

Reduced down to one create function for the Arguments class, from three.

Moved tearOff() into an out-of-line function because it's huge.

Moved logic about whether to tear off eagerly into the Arguments class,
so we didn't have to duplicate it elsewhere.

  • runtime/JSActivation.cpp:

(JSC::JSActivation::JSActivation):
(JSC::JSActivation::visitChildren): Renamed m_numParametersMinusThis to
m_numCapturedArgs because if the value really were m_numParametersMinusThis
we would be marking too much. (We shouldn't mark 'this' because it can't
be captured.) Also, use helper functions.

  • runtime/JSActivation.h:

(JSC::JSActivation::tearOff): Use helper functions.

  • runtime/JSArray.cpp:

(JSC::JSArray::copyToArguments):

  • runtime/JSArray.h: Use helper functions, as above.
16:24 Changeset [102544] by macpherson@chromium.org

Implement CSS resize property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74162

Reviewed by Julien Chaffraix.

No new tests / refactoring only.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyResize::applyValue):
(WebCore::ApplyPropertyResize::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

15:07 Changeset [102543] by kling@webkit.org

Move CSSElementStyleDeclaration to its own cpp/h files.
<http://webkit.org/b/74256>

Reviewed by Sam Weinig.

CSSElementStyleDeclaration is old enough to move out of CSSMutableStyleDeclaration's
attic and into her own apartment.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMBinding.h:
  • css/CSSElementStyleDeclaration.cpp: Added.

(WebCore::CSSElementStyleDeclaration::styleSheet):

  • css/CSSElementStyleDeclaration.h: Added.

(WebCore::CSSElementStyleDeclaration::element):
(WebCore::CSSElementStyleDeclaration::setElement):
(WebCore::CSSElementStyleDeclaration::CSSElementStyleDeclaration):
(WebCore::CSSElementStyleDeclaration::~CSSElementStyleDeclaration):

  • css/CSSInlineStyleDeclaration.h:
  • css/CSSMutableStyleDeclaration.cpp:
  • css/CSSMutableStyleDeclaration.h:
  • dom/CSSMappedAttributeDeclaration.h:
14:20 Changeset [102542] by benjamin@webkit.org

Add KillRingNone.cpp to Mac build system
https://bugs.webkit.org/show_bug.cgi?id=74168

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-11
Reviewed by David Kilzer.

Add KillRingNone.cpp so it can be used on iOS, but
blacklist the file from the build in order to avoid
conflicts with KillRingMac.

  • Configurations/WebCore.xcconfig:
  • WebCore.xcodeproj/project.pbxproj:
12:44 Changeset [102541] by loislo@chromium.org

Web Inspector: [protocol] alter some type names generated from Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=74247

Patch by Peter Rybin <peter.rybin@gmail.com> on 2011-12-11
Reviewed by Pavel Feldman.

Manually-filled map added that contains problem type names and its replacement.

  • inspector/CodeGeneratorInspector.py:

(fix_type_name.Result):
(fix_type_name.Result.output_comment):
(fix_type_name):
(TypeBindings.create_for_named_type_declaration.write_doc):
(TypeBindings.create_for_named_type_declaration.EnumBinding.generate_type_builder):
(TypeBindings.create_for_named_type_declaration.PlainString.generate_type_builder):
(TypeBindings):
(TypeBindings.create_for_named_type_declaration.ClassBinding.generate_type_builder):
(Generator.process_types):

11:38 Changeset [102540] by kling@webkit.org

WK2/NetscapePlugin: Incorrect mouse event coordinates when frameScaleFactor != 1.
<http://webkit.org/b/74209> and <rdar://problem/10438197>

Reviewed by Anders Carlsson.

Source/WebCore:

  • WebCore.exp.in: Export AffineTransform::scale(double).

Source/WebKit2:

  • Shared/WebEvent.h:
  • Shared/WebMouseEvent.cpp:

Remove the WebMouseEvent "copy" constructor that applied a scale factor
to the coordinates of an existing event.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::handleEvent):

Pass the WebMouseEvent through to the plugin unmodified.

(WebKit::PluginView::viewGeometryDidChange):

Plumb a complex translate+scale transform through to the plugin, so coordinate
space transformations in will behave correctly with scale factors other than 1.

LayoutTests:

Add a test verifying that NetscapePlugins receive correctly transformed
mouse events with a page scale factor applied.

  • platform/mac-wk2/plugins/mouse-events-scaled-expected.txt: Added.
  • platform/mac-wk2/plugins/mouse-events-scaled.html: Added.
11:33 Changeset [102539] by kling@webkit.org

Remove OS(SYMBIAN) block from Settings constructor.
<http://webkit.org/b/74248>

Reviewed by Benjamin Poulain.

Kill the last OS(SYMBIAN) block in WebKit!

  • page/Settings.cpp:

(WebCore::Settings::Settings):

11:06 Changeset [102538] by mitz@apple.com

Source/WebCore: <rdar://problem/10561285> REGRESSION (r80438): First word on a line or after collapsed space may not be hyphenated even though it should
https://bugs.webkit.org/show_bug.cgi?id=74239

Reviewed by Anders Carlsson.

Tests: fast/text/hyphenate-first-word-after-skipped-space-expected.html

fast/text/hyphenate-first-word-after-skipped-space.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::tryHyphenating): Replaced the assumption that the character at lastSpace is a space
iff lastSpace is non-zero with a test of whether it is a space, in the sense that it should
not be counted as part of the prefix when comparing it to the value of hyphenate-limit-before.

LayoutTests: Test and updated results for <rdar://problem/10561285> REGRESSION (r80438): First word on a line or after collapsed space may not be hyphenated even though it should
https://bugs.webkit.org/show_bug.cgi?id=74239

Reviewed by Anders Carlsson.

  • fast/text/hyphenate-first-word-after-skipped-space-expected.html: Added.
  • fast/text/hyphenate-first-word-after-skipped-space.html: Added.
  • platform/mac/fast/text/hyphenate-limit-lines-expected.txt:
10:04 Changeset [102537] by haraken@chromium.org

[Refactoring] Move top-level code to generate a new ChangeLog into a method
https://bugs.webkit.org/show_bug.cgi?id=74253

Reviewed by David Kilzer.

The objective is to make prepare-ChangeLog a loadable Perl module for unit testing,
which requires to remove top-level code and global variables. This patch is one of
the incremental refactorings for that.

  • Scripts/prepare-ChangeLog: Moved top-level code to generate a new ChangeLog into generateNewChangeLogs().

(generateFunctionLists):
(findChangeLogs):
(generateNewChangeLogs):
(generateFileList): Removed an unnecessary variable $didChangeRegressionTests.

12/10/11:

22:32 Changeset [102536] by haraken@chromium.org

[Refactoring] In prepare-ChangeLog, move top-level code to find ChangeLogs into a method
https://bugs.webkit.org/show_bug.cgi?id=74175

Reviewed by Ryosuke Niwa.

The objective is to make prepare-ChangeLog a loadable Perl module for unit testing.
This requires to remove top-level code. This patch is one of the incremental refactorings
for that.

  • Scripts/prepare-ChangeLog: Moved top-level code to find ChangeLogs into findChangeLogs().

(findChangeLogs):

22:20 Changeset [102535] by commit-queue@webkit.org

#ifdef the parts of the Mac platform which should not be used on iOS
https://bugs.webkit.org/show_bug.cgi?id=74246

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-10
Reviewed by David Kilzer.

  • Configurations/WebCore.xcconfig:
  • platform/FileSystem.cpp:
  • platform/mac/FileSystemMac.mm:
  • platform/mac/Language.mm:

(+[WebLanguageChangeObserver _webkit_languagePreferencesDidChange]):
(WebCore::createHTTPStyleLanguageCode):
(WebCore::platformDefaultLanguage):

  • platform/mac/LocalizedStringsMac.mm:

(WebCore::localizedString):
(+[WebCoreSharedBufferData initialize]):

  • platform/mac/WebCoreNSStringExtras.h:
  • platform/mac/WebCoreNSStringExtras.mm:
  • platform/mac/WebFontCache.mm:
  • platform/mac/WebNSAttributedStringExtras.mm: The value NSAttachmentCharacter is

not defined in the iOS SDK so we add it here.

17:23 Changeset [102534] by mhahnenberg@apple.com

JSC testapi is crashing on Windows
https://bugs.webkit.org/show_bug.cgi?id=74233

Reviewed by Sam Weinig.

Same error we've encountered before where we are calling the wrong version of
visitChildren and objects that are still reachable aren't getting marked.
This problem will go away soon with the removal of vptrs for these sorts of
optimizations in favor of using the ClassInfo, but for now we can simply give
JSFinalObject a bogus virtual method that Visual Studio can't optimize away to
ensure that JSFinalObject will always have a unique vptr. We don't have to worry
about JSString or JSArray right now, which are the other two special cases for
visitChildren, since they already have their own virtual functions.

(JSC::JSFinalObject::vtableAnchor):

  • runtime/JSObject.h:
16:09 Changeset [102533] by weinig@apple.com

Try to fix the windows build.

  • win/WebKit2.vcproj:
15:54 Changeset [102532] by rniwa@webkit.org

The previous fix broke Lion release build. Fix that.

  • editing/SpellingCorrectionCommand.cpp:
15:46 Changeset [102531] by rniwa@webkit.org

Lion build fix attempt after r102527.

  • editing/SpellingCorrectionCommand.cpp:
15:30 Changeset [102530] by kevino@webkit.org

[wx] Unreviewed build fixes. Add missing header for CPP
DOM bindings and add stubs for new DPI methods.

13:48 Changeset [102529] by rniwa@webkit.org

Mac build fix. Remove an erroneous OVERRIDE.

  • editing/CompositeEditCommand.h:
13:40 Changeset [102528] by robert@webkit.org

CSS 2.1 failure: numerous counter-increment-* tests fail
https://bugs.webkit.org/show_bug.cgi?id=73360

Source/WebCore:

Reviewed by Julien Chaffraix.

Allow counter-increment to handle integer underflow and overflow.
Also allow 'counter' to inherit.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyCounter::applyInheritValue):
(WebCore::ApplyPropertyCounter::applyValue):
(WebCore::ApplyPropertyCounter::createHandler):

LayoutTests:

WebKit dumpAsText() versions of the CSS test suite's counter-increment-001 and 002 are already present in
fast/css/counters, so add a dumpAsText version of tests 003 to 056.

Reviewed by Julien Chaffraix.

  • fast/css/counters/counter-increment-inherit-expected.txt: Added.
  • fast/css/counters/counter-increment-inherit.htm: Added.
  • fast/css/counters/counter-increment-tests-expected.txt: Added.
  • fast/css/counters/counter-increment-tests.htm: Added.
13:35 Changeset [102527] by rniwa@webkit.org

There should be a way to count the number of nodes held by undo stack
https://bugs.webkit.org/show_bug.cgi?id=74099

Reviewed by Enrica Casucci.

Add getNodesInCommand to all SimpleEditCommands and EditCommandComposition in debug builds.
We can easily aggregate the number of nodes held by the undo stack by calling
this function on each item in the undo stack.

  • editing/AppendNodeCommand.cpp:

(WebCore::AppendNodeCommand::getNodesInCommand):

  • editing/AppendNodeCommand.h:
  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::getNodesInCommand):

  • editing/CompositeEditCommand.h:
  • editing/DeleteFromTextNodeCommand.cpp:

(WebCore::DeleteFromTextNodeCommand::getNodesInCommand):

  • editing/DeleteFromTextNodeCommand.h:
  • editing/EditCommand.cpp:

(WebCore::SimpleEditCommand::addNodeAndDescedents):

  • editing/EditCommand.h:
  • editing/Editor.cpp:

(WebCore::Editor::appliedEditing):

  • editing/InsertIntoTextNodeCommand.cpp:

(WebCore::InsertIntoTextNodeCommand::getNodesInCommand):

  • editing/InsertIntoTextNodeCommand.h:
  • editing/InsertNodeBeforeCommand.cpp:

(WebCore::InsertNodeBeforeCommand::getNodesInCommand):

  • editing/InsertNodeBeforeCommand.h:
  • editing/MergeIdenticalElementsCommand.cpp:

(WebCore::MergeIdenticalElementsCommand::getNodesInCommand):

  • editing/MergeIdenticalElementsCommand.h:
  • editing/RemoveCSSPropertyCommand.cpp:

(WebCore::RemoveCSSPropertyCommand::getNodesInCommand):

  • editing/RemoveCSSPropertyCommand.h:
  • editing/RemoveNodeCommand.cpp:

(WebCore::RemoveNodeCommand::getNodesInCommand):

  • editing/RemoveNodeCommand.h:
  • editing/ReplaceNodeWithSpanCommand.cpp:

(WebCore::ReplaceNodeWithSpanCommand::getNodesInCommand):

  • editing/ReplaceNodeWithSpanCommand.h:
  • editing/SetNodeAttributeCommand.cpp:

(WebCore::SetNodeAttributeCommand::getNodesInCommand):

  • editing/SetNodeAttributeCommand.h:
  • editing/SetSelectionCommand.h:
  • editing/SplitElementCommand.cpp:

(WebCore::SplitElementCommand::getNodesInCommand):

  • editing/SplitElementCommand.h:
  • editing/SplitTextNodeCommand.cpp:

(WebCore::SplitTextNodeCommand::getNodesInCommand):

  • editing/SplitTextNodeCommand.h:
  • editing/WrapContentsInDummySpanCommand.cpp:

(WebCore::WrapContentsInDummySpanCommand::getNodesInCommand):

  • editing/WrapContentsInDummySpanCommand.h:
12:30 Changeset [102526] by robert@webkit.org

CSS 2.1 failure: outline-color-* tests fail
https://bugs.webkit.org/show_bug.cgi?id=71931

Source/WebCore:

Reviewed by Julien Chaffraix.

Test: css2.1/20110323/outline-color-001.html

WebKit didn't paint the top block in this series of tests because it ignored the outline
of objects with a zero size. Fix this by taking account of both offset and width of the
outline when deciding whether to paint it.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::paintOutline): paint the outline even when the block has zero size

LayoutTests:

Add outline-color-001.htm to catch regressions against displaying outlines
on objects with zero size. The rest of the outline-color-* test series will
be landed separately.

Reviewed by Julien Chaffraix.

  • css2.1/20110323/outline-color-001-expected.html: Added.
  • css2.1/20110323/outline-color-001.htm: Added.
11:45 Changeset [102525] by kling@webkit.org

Add my Apple e-mail to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
11:33 Changeset [102524] by commit-queue@webkit.org

Update test_expectations for chromium
https://bugs.webkit.org/show_bug.cgi?id=74137

Patch by Alan Stearns <stearns@adobe.com> on 2011-12-10
Reviewed by Ryosuke Niwa.

  • platform/chromium/test_expectations.txt:
10:46 Changeset [102523] by commit-queue@webkit.org

Microdata: Fix compilation error in MICRODATA enabled build.
https://bugs.webkit.org/show_bug.cgi?id=74235

Patch by Arko Saha <arko@motorola.com> on 2011-12-10
Reviewed by Andreas Kling.

  • dom/Document.cpp:

(WebCore::Document::getItems):

09:13 Changeset [102522] by alexis.menard@openbossa.org

Unused variable in YarrJIT.cpp.
https://bugs.webkit.org/show_bug.cgi?id=74237

Reviewed by Andreas Kling.

Variable is set but not used so we can remove it.

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::generatePatternCharacterOnce):

06:50 Changeset [102521] by jarred@sencha.com

[V8] Remove old ArrayBuffer guards from V8XMLHttpRequestCustom.cpp
https://bugs.webkit.org/show_bug.cgi?id=74234

Reviewed by Adam Barth.

No new tests are necessary.

  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::V8XMLHttpRequest::responseAccessorGetter):

05:55 Changeset [102520] by alexis.menard@openbossa.org

Unreviewed build fix for Qt.

Build error introduced by r102484.

  • Target.pri:
01:54 Changeset [102519] by noel.gordon@gmail.com

WebPImageDecoder progressive decodes fail to decode valid images
https://bugs.webkit.org/show_bug.cgi?id=74062

Reviewed by Adam Barth.

The WEBP header is followed by a so-called P0 header, then some data to
decode. If a partial P0 header is received during progressive decodes,
WebPIDecGetRGB() returns false; that makes the decoder enter the failed
state, no image appears on the page.

James Zern (webp) recommended the following via e-mail:

WebPIUpdate() validates input data, and will return an error status for
malformed data (bit-stream error, invalid data). Otherwise, it returns
OK or SUSPENDED. OK means that decoding is done/complete/no-error, and
SUSPENDED means more input data is needed to complete decoding. A NULL
return from WebPIDecGetRGB() is valid at this time due to a partial P0,
and should not be interpreted as a decoding failure.

No new tests. Not something DumpRenderTree can easily test.

  • platform/image-decoders/webp/WEBPImageDecoder.cpp:

(WebCore::WEBPImageDecoder::decode): A NULL WebPIDecGetRGB() return is
acceptable here. Return false instead of failing the decoder.

Note: See TracTimeline for information about the timeline view.