Timeline


and

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.

12/09/11:

21:47 Changeset [102518] by lforschler@apple.com

Versioning.

21:34 Changeset [102517] by benjamin@webkit.org

Add the FileSystem functions of iOS
https://bugs.webkit.org/show_bug.cgi?id=74164

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-09
Reviewed by David Kilzer.

Two functions are needed on iOS for temporary files and directories.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/ios/FileSystemIOS.h: Added.
  • platform/ios/FileSystemIOS.mm: Added.

(WebCore::createTemporaryDirectory):
(WebCore::createTemporaryFile):

21:18 Changeset [102516] by lforschler@apple.com

New tag.

19:03 Changeset [102515] by commit-queue@webkit.org

Remove ResourceHandle::bufferedData() from ResourceHandleBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=74197

The bufferedData() was removed in r95120.

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-09
Reviewed by Rob Buis.

Trivial fix, so no new tests.

  • platform/network/blackberry/ResourceHandleBlackBerry.cpp:
18:46 Changeset [102514] by commit-queue@webkit.org

Upstream BlackBerry API backing store files
https://bugs.webkit.org/show_bug.cgi?id=73668

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

Contributed by Torch team, the main contributor is Adam Treat
<atreat@rim.com>.

Initial upstream, no new tests.

  • blackberry/Api/BackingStore.cpp: Added.
  • blackberry/Api/BackingStore.h: Added.
  • blackberry/Api/BackingStore_p.h: Added.
18:42 Changeset [102513] by lforschler@apple.com

Merge 98588.

18:35 Changeset [102512] by commit-queue@webkit.org

[chromium] Prevent ASSERT in legitimate out-of-memory case.
https://bugs.webkit.org/show_bug.cgi?id=74215

Patch by Eric Penner <epenner@google.com> on 2011-12-09
Reviewed by James Robinson.

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::updateCompositorResources):

18:29 Changeset [102511] by commit-queue@webkit.org

NameNodeListCache should be invalidated when name attribute changes/modified.
https://bugs.webkit.org/show_bug.cgi?id=70810

Patch by Arko Saha <arko@motorola.com> on 2011-12-09
Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/dom/getelementsbyname-invalidation-cache.html

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::parseMappedAttribute):

  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::parseMappedAttribute):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::parseMappedAttribute):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseMappedAttribute):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::parseMappedAttribute):

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::parseMappedAttribute):

  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::parseMappedAttribute):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::parseMappedAttribute):

  • html/HTMLMapElement.cpp:

(WebCore::HTMLMapElement::parseMappedAttribute):

  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::parseMappedAttribute):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseMappedAttribute):

  • html/HTMLParamElement.cpp:

(WebCore::HTMLParamElement::parseMappedAttribute):

LayoutTests:

  • fast/dom/getelementsbyname-invalidation-cache-expected.txt: Added.
  • fast/dom/getelementsbyname-invalidation-cache.html: Added.
18:26 Changeset [102510] by levin@chromium.org

REGRESSION (r97496-r97499): 6 fast/workers tests failing on SnowLeopard Intel Release (Tests)
https://bugs.webkit.org/show_bug.cgi?id=70619

Reviewed by Alexey Proskuryakov.

  • platform/mac/Skipped: Unskip various worker tests as they should work

now that bug 71695 is fixed.

18:15 Changeset [102509] by fpizlo@apple.com

DFG ArithMul power-of-two case does not check for overflow
https://bugs.webkit.org/show_bug.cgi?id=74230

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Disabled power-of-2 peephole optimization for multiplication, because it was wrong,
and any attempt to fix it would likely introduce code bloat and register pressure.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithMul):

LayoutTests:

Reviewed by Gavin Barraclough.

  • fast/js/dfg-multiply-expected.txt: Added.
  • fast/js/dfg-multiply.html: Added.
  • fast/js/script-tests/dfg-multiply.js: Added.

(doMultiplyConstant2):
(doMultiplyConstant3):
(doMultiplyConstant4):

18:13 Changeset [102508] by levin@chromium.org

REGRESSION(r101863-r102042): Assertion hit: m_verifier.isSafeToUse() in RefCountedBase::ref in FunctionCodeBlock
https://bugs.webkit.org/show_bug.cgi?id=73886

Reviewed by Darin Adler.

  • runtime/SymbolTable.h:

(JSC::SharedSymbolTable::SharedSymbolTable): Added deprecatedTurnOffVerifier for
another JavaScriptObject, since JavaScriptCore objects allow use on multiple threads.
Bug 58091 is about changing these deprecated calls to something else but that something
else will still need to be in all of these places.

18:06 Changeset [102507] by mrowe@apple.com

Fix the Snow Leopard build some more.

Move the #if to a location where it will do some good.

  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
17:59 Changeset [102506] by commit-queue@webkit.org

[Gtk] Unskip two passing Shadow DOM tests
https://bugs.webkit.org/show_bug.cgi?id=74186

Patch by Zan Dobersek <zandobersek@gmail.com> on 2011-12-09
Reviewed by Martin Robinson.

Unskip two passing tests after bug #59571 was fixed.

  • platform/gtk/Skipped:
17:57 Changeset [102505] by commit-queue@webkit.org

Remove unnecessary file DissasemblerARM.cpp from build system
https://bugs.webkit.org/show_bug.cgi?id=74184

Patch by Konrad Piascik <kpiascik@rim.com> on 2011-12-09
Reviewed by Daniel Bates.

  • PlatformBlackBerry.cmake:
17:54 Changeset [102504] by mrowe@apple.com

Fix the Snow Leopard build.

Wrap some code that is only applicable to Lion and newer in the appropriate #if's.

  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h:
  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::ProcessLauncher::launchProcess):

17:44 Changeset [102503] by andersca@apple.com

Fix Lion release build.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]):

17:41 Changeset [102502] by commit-queue@webkit.org

[Qt] request parameter of QQuickWebView::navigationRequested is not a registered type
https://bugs.webkit.org/show_bug.cgi?id=73826

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2011-12-09
Reviewed by Tor Arne Vestbø.

.:

  • Source/qtwebkit-export.map: Adding QWebNavigationRequest

Source/WebKit/qt:

  • declarative/plugin.cpp:

(WebKitQmlPlugin::registerTypes): Registering QWebNavigationRequest

Source/WebKit2:

Adding QWebNavigationRequest by moving NavigationRequest out of QtWebPagePolicyClient.

  • Target.pri:
  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qwebnavigationrequest.cpp: Added.

(QWebNavigationRequestPrivate::QWebNavigationRequestPrivate):
(QWebNavigationRequestPrivate::~QWebNavigationRequestPrivate):
(QWebNavigationRequest::QWebNavigationRequest):
(QWebNavigationRequest::~QWebNavigationRequest):
(QWebNavigationRequest::setAction):
(QWebNavigationRequest::url):
(QWebNavigationRequest::button):
(QWebNavigationRequest::modifiers):
(QWebNavigationRequest::action):

  • UIProcess/API/qt/qwebnavigationrequest_p.h: Added.
  • UIProcess/qt/QtWebPagePolicyClient.cpp:

(QtWebPagePolicyClient::decidePolicyForNavigationAction):
(QtWebPagePolicyClient::decidePolicyForResponse):

17:39 Changeset [102501] by commit-queue@webkit.org

[FileSystem API] Entry.remove successCallback is required
https://bugs.webkit.org/show_bug.cgi?id=69639

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2011-12-09
Reviewed by Adam Barth.

Source/WebCore:

Test: fast/filesystem/simple-required-arguments-remove.html

  • fileapi/Entry.idl: remove [Optional] flag from Entry.remove.successCallback parameter

LayoutTests:

  • fast/filesystem/resources/simple-required-arguments-remove.js: Added.

(errorCallback):
(successCallback):

  • fast/filesystem/simple-required-arguments-remove-expected.txt: Added.
  • fast/filesystem/simple-required-arguments-remove.html: Added.
17:31 Changeset [102500] by jamesr@google.com

[chromium] Remove forwarding headers for WebLayer APIs
https://bugs.webkit.org/show_bug.cgi?id=73729

Reviewed by Adam Barth.

These are no longer necessary.

  • WebKit.gyp:
  • public/WebContentLayer.h: Removed.
  • public/WebContentLayerClient.h: Removed.
  • public/WebExternalTextureLayer.h: Removed.
  • public/WebLayer.h: Removed.
  • public/WebLayerClient.h: Removed.
  • public/WebLayerTreeView.h: Removed.
  • public/WebLayerTreeViewClient.h: Removed.
17:28 Changeset [102499] by commit-queue@webkit.org

[Qt][WK2] Unskip API tests
https://bugs.webkit.org/show_bug.cgi?id=74180

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2011-12-09
Reviewed by Tor Arne Vestbø.

Unskip API tests for geolocation and javascript dialogs.

  • UIProcess/API/qt/tests/qmltests/WebView/tst_geopermission.qml:
  • UIProcess/API/qt/tests/qmltests/WebView/tst_javaScriptDialogs.qml:
17:26 Changeset [102498] by timothy_horton@apple.com

background-image transitions trigger between equivalent images
https://bugs.webkit.org/show_bug.cgi?id=74229
<rdar://problem/10558627>

Reviewed by Darin Adler.
Patch by Simon Fraser.

For animation property wrappers around StyleImage properties,
test the equivalence of the image itself, instead of equality of
the StyleImage pointer.

Test: transitions/equivalent-background-image-no-transition.html

  • page/animation/AnimationBase.cpp:

(WebCore::StyleImagePropertyWrapper::StyleImagePropertyWrapper):
(WebCore::StyleImagePropertyWrapper::equals):
(WebCore::FillLayerStyleImagePropertyWrapper::FillLayerStyleImagePropertyWrapper):
(WebCore::FillLayerStyleImagePropertyWrapper::equals):
(WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
(WebCore::AnimationBase::ensurePropertyMap):

Add a test ensuring that background-images aren't needlessly transitioned
when they are equivalent.

  • transitions/equivalent-background-image-no-transition-expected.txt: Added.
  • transitions/equivalent-background-image-no-transition.html: Added.
17:25 Changeset [102497] by mrowe@apple.com

<http://webkit.org/b/74061> WebProcess and PluginProcess should inherit environment variables provided in LC_DYLD_ENVIRONMENT of main executable binary.

Reviewed by Darin Adler.

  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h: Added.
  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm: Added.

(WebKit::DynamicLinkerEnvironmentExtractor::DynamicLinkerEnvironmentExtractor):
(WebKit::DynamicLinkerEnvironmentExtractor::processEnvironmentVariable): Parse out the name
and value from the environment string and add an entry to our variable map if the variable
is one that dyld would respect in LC_DYLD_ENVIRONMENT.
(WebKit::DynamicLinkerEnvironmentExtractor::processLoadCommand): Look for a LC_DYLD_ENVIRONMENT
load command and extract any environment string that we find within.
(WebKit::DynamicLinkerEnvironmentExtractor::processLoadCommands): Iterate over each
load command in the Mach-O file.
(WebKit::DynamicLinkerEnvironmentExtractor::processSingleArchitecture): Determine whether
the Mach-O file is of the correct architecture, and if so then process the load commands
found within.
(WebKit::DynamicLinkerEnvironmentExtractor::processFatFile): Process each architecture of the
Mach-O file in turn.
(WebKit::DynamicLinkerEnvironmentExtractor::getExtractedEnvironmentVariables): Add our
extracted variables to the passed-in EnvironmentVariables object. We skip adding any
variables that already exist so as to allow variables passed in the environment to override
those that we extract from the executable file.

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::ProcessLauncher::launchProcess): Extract the environment variables from the
main binary and add them to the launch environment of our subprocess.

  • WebKit2.xcodeproj/project.pbxproj:
17:18 Changeset [102496] by commit-queue@webkit.org

[chromium] add accessors to WebDOMMessageEvent
https://bugs.webkit.org/show_bug.cgi?id=73346

Patch by Karl Koscher <supersat@chromium.org> on 2011-12-09
Reviewed by Darin Fisher.

  • public/WebDOMMessageEvent.h:
  • src/WebDOMMessageEvent.cpp:

(WebKit::WebDOMMessageEvent::data):
(WebKit::WebDOMMessageEvent::origin):

17:17 WebKit Team edited by benjamin@webkit.org
(diff)
17:15 WebKit Team edited by kling@webkit.org
(diff)
17:09 Changeset [102495] by commit-queue@webkit.org

[chromium] add event methods to WebFrame
https://bugs.webkit.org/show_bug.cgi?id=73259

Patch by Karl Koscher <supersat@chromium.org> on 2011-12-09
Reviewed by Darin Fisher.

  • public/WebDOMEventListener.h: Use EventTarget instead of Node
  • public/WebFrame.h: Add event methods
  • src/WebDOMEventListener.cpp: Use EventTarget instead of Node

(WebKit::WebDOMEventListener::createEventListenerWrapper):
(WebKit::WebDOMEventListener::getEventListenerWrapper):

  • src/WebDOMEventListenerPrivate.cpp: Use EventTarget instead of Node

(WebKit::WebDOMEventListenerPrivate::createEventListenerWrapper):
(WebKit::WebDOMEventListenerPrivate::getEventListenerWrapper):

  • src/WebDOMEventListenerPrivate.h: Use EventTarget instead of Node

(WebKit::WebDOMEventListenerPrivate::ListenerInfo::ListenerInfo):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addEventListener): register a listener on a WebFrame
(WebKit::WebFrameImpl::removeEventListener): remove a listener on a WebFrame
(WebKit::WebFrameImpl::dispatchEvent): dispatch an event to a WebFrame

  • src/WebFrameImpl.h: Add event methods
17:05 Changeset [102494] by weinig@apple.com

Add WKView implementation for quickLookPreviewItemsAtWindowLocation.
<rdar://problem/10472505>

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKView.mm:

(-[WKView quickLookPreviewItemsAtWindowLocation:]):

17:01 Changeset [102493] by commit-queue@webkit.org

[Qt] Open shared memory files with shm_open.
https://bugs.webkit.org/show_bug.cgi?id=74078

Original patch by Kimmo Kinnunen

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2011-12-09
Reviewed by Kenneth Rohde Christiansen.

Open shared memory files with shm_open. This uses mount point that is
intended to host shared memory files. Typically this is /dev/shm.

This fixes crashes when filesystem that hosts QDir::temp() is full.

This is also more well-defined with respect to question whether SHM
writes to temp dir would cause unintended wear if hosted on flash drives.

This also fixes performance problems regarding QDir::temp() and
mkostemp(), both of which appear to be long operations.

  • Platform/unix/SharedMemoryUnix.cpp:

(WebKit::SharedMemory::create):

17:01 Changeset [102492] by commit-queue@webkit.org

Small style fix on DragDataBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=74171

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

Style fix, no function impact, no new tests.

  • platform/blackberry/DragDataBlackBerry.cpp:

(WebCore::DragData::containsURL):
(WebCore::DragData::asFilenames):
(WebCore::DragData::asURL):
(WebCore::DragData::asFragment):

16:47 Changeset [102491] by tony@chromium.org

Fix test expectations from r102486: flex-flow returns direction and wrap now.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • 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/chromium/svg/css/getComputedStyle-basic-expected.txt:
  • platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
16:41 Changeset [102490] by dpranke@chromium.org

chromium win build: revert build_webkit_exes_from_webkit_gyp change
https://bugs.webkit.org/show_bug.cgi?id=74225

Source/WebKit/chromium:

Reviewed by Tony Chang.

This change sets build_webkit_exes_from_webkit_gyp back to 1;
the "All.gyp" solution doesn't work on windows.

  • gyp_webkit:

Tools:

This change sets build_webkit_exes_from_webkit_gyp back to 1;
the "All.gyp" solution doesn't work on windows.

  • Scripts/webkitdirs.pm:

(buildChromium):

16:09 Changeset [102489] by fpizlo@apple.com

DFG's interpretation of rare case profiles should be frequency-based not count-based
https://bugs.webkit.org/show_bug.cgi?id=74170

Reviewed by Geoff Garen.

DFG optimizes for rare cases only when the rare case counter is above some threshold
and it also constitutes a large enough fraction of total function executions. Also
added some minor debug logic.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::likelyToTakeSlowCase):
(JSC::CodeBlock::couldTakeSlowCase):
(JSC::CodeBlock::likelyToTakeSpecialFastCase):
(JSC::CodeBlock::likelyToTakeDeepestSlowCase):
(JSC::CodeBlock::likelyToTakeAnySlowCase):
(JSC::CodeBlock::executionEntryCount):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::makeDivSafe):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • runtime/Heuristics.cpp:

(JSC::Heuristics::initializeHeuristics):

  • runtime/Heuristics.h:
15:53 Changeset [102488] by commit-queue@webkit.org

[Qt] Click's count is limited to three continuous clicks.
https://bugs.webkit.org/show_bug.cgi?id=45666

Patch by Hugo Parente Lima <hugo.lima@openbossa.org> on 2011-12-09
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Make Qt recognize "infinite" continuous mouse clicks.
handleMouseDoubleClickEvent merged into handleMousePressEvent.

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::handleEvent):
(QtWebPageEventHandler::handleMousePressEvent):
(QtWebPageEventHandler::timerEvent):

  • UIProcess/qt/QtWebPageEventHandler.h:

Tools:

Update m_time at every call to leapForward, so double clicks
event are correctly sent by EventSender.

  • WebKitTestRunner/qt/EventSenderProxyQt.cpp:

(WTR::EventSenderProxy::updateClickCountForButton):
(WTR::EventSenderProxy::leapForward):

LayoutTests:

Enable fast/events/click-count.html for qt and disable for qt-wk1.

  • platform/qt-wk1/Skipped:
  • platform/qt/Skipped:
15:50 Changeset [102487] by haraken@chromium.org

[Refactoring] Reduce top-level code in prepare-ChangeLog
https://bugs.webkit.org/show_bug.cgi?id=74172

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 some top-level code into generateFunctionLists().

(generateFunctionLists):

15:50 Changeset [102486] by ojan@chromium.org

add css parsing for flex-flow: wrap and wrap-reverse
https://bugs.webkit.org/show_bug.cgi?id=74008

Patch by Tony Chang <tony@chromium.org> on 2011-12-09
Reviewed by Ojan Vafai.

Source/WebCore:

Also save 2 bits in StyleFlexibleBoxData by changing the size of m_flexFlow (there are only 4 enum values).

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Print the wrap value if it exists.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue): Parse a second token and put the values into a CSSValueList.

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFlexWrap):

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyFlexFlow::applyInheritValue): Does not inherit.
(WebCore::ApplyPropertyFlexFlow::applyInitialValue):
(WebCore::ApplyPropertyFlexFlow::applyValue): Special handler for setting two render style values from one
CSS property.
(WebCore::ApplyPropertyFlexFlow::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSValueKeywords.in:
  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::flexWrap):
(WebCore::InheritedFlags::setFlexWrap):
(WebCore::InheritedFlags::initialFlexWrap):

  • rendering/style/RenderStyleConstants.h: EFlexWrap to hold flex wrap values.
  • rendering/style/StyleFlexibleBoxData.cpp:

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

  • rendering/style/StyleFlexibleBoxData.h: 2 bits is enough to hold the 4 flexFlow values.

LayoutTests:

  • css3/flexbox/css-properties-expected.txt:
  • css3/flexbox/script-tests/css-properties.js: Test call combinations of flex-flow values.
15:47 Changeset [102485] by oliver@apple.com

PutByValAlias unnecessarily clobbers GetIndexedPropertyStorage
https://bugs.webkit.org/show_bug.cgi?id=74223

Reviewed by Geoffrey Garen.

Don't clobber GetIndexedPropertyStorage when we see PutByValAlias

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::getIndexedPropertyStorageLoadElimination):

15:45 Changeset [102484] by weinig@apple.com

Expose a WKConnectionRef which represents the connection to/from the WebProcess/UIProcess
https://bugs.webkit.org/show_bug.cgi?id=74218

Reviewed by Anders Carlsson.

Source/WebKit2:

Test: WebKit2.WKConnectionTest in TestWebKitAPI

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::forwardDidReceiveMessageToClient):

  • Shared/WebConnection.h:

Add helper for connection subclasses to dispatch to the client.

  • UIProcess/WebConnectionToWebProcess.cpp:

(WebKit::WebConnectionToWebProcess::didReceiveMessage):
Handle postMessage messages from the WebProcess.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::processDidFinishLaunching):
Dispatch the notification that a connection to the WebProcess has
been established.

  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleGetApplicationConnection):

  • WebProcess/InjectedBundle/API/c/WKBundle.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::webConnectionToUIProcess):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(WebKit::WebProcess::webConnectionToUIProcess):
Add accessor to get the connection to the UIProcess from
the bundle.

  • WebProcess/WebConnectionToUIProcess.cpp:

(WebKit::WebConnectionToUIProcess::didReceiveMessage):
Handle postMessage messages from the UIProcess.

  • WebProcess/WebProcess.h:

Tools:

Add a test of the WKConnectionRef API.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/WKConnection.cpp: Added.

(TestWebKitAPI::didCreateConnection):
(TestWebKitAPI::connectionDidReceiveMessage):
(TestWebKitAPI::connectionDidClose):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/WKConnection_Bundle.cpp: Added.

(TestWebKitAPI::connectionDidReceiveMessage):
(TestWebKitAPI::WKConnectionTest::WKConnectionTest):
(TestWebKitAPI::WKConnectionTest::initialize):

15:43 Changeset [102483] by levin@chromium.org

Hash* iterators should allow comparison between const and const versions.
https://bugs.webkit.org/show_bug.cgi?id=73370

Reviewed by Darin Adler.

Source/JavaScriptCore:

  • wtf/HashTable.h: Add the operators needed to do this.

(WTF::HashTableConstIterator::operator==):
(WTF::HashTableConstIterator::operator!=):
(WTF::HashTableIterator::operator==):
(WTF::HashTableIterator::operator!=):
(WTF::operator==):
(WTF::operator!=):

Tools:

  • TestWebKitAPI/TestWebKitAPI.gypi: Add the new test file to the build.
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
  • TestWebKitAPI/win/TestWebKitAPI.vcproj: Ditto.
  • TestWebKitAPI/Tests/WTF/HashMap.cpp: Added.

(TestWebKitAPI::TEST): Add a test for the new functionality.

15:39 Changeset [102482] by dpranke@chromium.org

chromium: visual studio projects are busted when build_webkit_exes_from_webkit_gyp==0
https://bugs.webkit.org/show_bug.cgi?id=74212

Reviewed by Tony Chang.

The change introduced in r102201 to split the executables out of
WebKit.gyp apparently doesn't work right on Windows, since
WebKit.gyp and Tools.gyp refer to dependent projects by
different relative paths (it appears gyp doesn't normalize the
paths). This change moves Tools.gyp to be in the same directory
as WebKit.gyp (and All.gyp), which should fix this and
conveniently will also solve the problem of how to add Tools.gyp
to the chromium DEPS file.

Source/WebKit/chromium:

  • All.gyp:
  • Tools.gyp: Renamed from ../../../Tools/Tools.gyp.

Tools:

  • Tools.gyp: Renamed to ../Source/WebKit/chromium/Tools.gyp
15:26 Changeset [102481] by haraken@chromium.org

[Refactoring] In prepare-ChangeLog, move top-level code to fetch a bug description from URL into a method
https://bugs.webkit.org/show_bug.cgi?id=74173

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 fetch a bug description from URL into fetchBugDescriptionFromURL().

(fetchBugDescriptionFromURL):

15:26 Changeset [102480] by commit-queue@webkit.org

[EFL] Add RefPtrEfl specialization for evas_object.
https://bugs.webkit.org/show_bug.cgi?id=73790

Patch by KwangHyuk Kim <hyuki.kim@samsung.com> on 2011-12-09
Reviewed by Ryosuke Niwa.

As evas_object is also based on reference count, RefPtr is applied for evas_object.

  • PlatformEfl.cmake:
  • platform/efl/RefPtrEfl.cpp: Added.

(WTF::refIfNotNull):
(WTF::derefIfNotNull):

  • platform/efl/RefPtrEfl.h: Added.
15:23 Changeset [102479] by tony@chromium.org

REGRESSION(102234): 2-3% layout regression
https://bugs.webkit.org/show_bug.cgi?id=74141

Reviewed by David Hyatt.

Don't allocate a RuleSet when there are no regions.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::initForRegionStyling):

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

Fix assertion failure in ScrollAnimatorMac
https://bugs.webkit.org/show_bug.cgi?id=74222

Reviewed by Andreas Kling.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
This can be called with a nil scrollerImp, just return NSZeroPoint when that happens.

14:48 Changeset [102477] by adamk@chromium.org

[MutationObservers] Add test for deliver-at-end-of-task semantics
https://bugs.webkit.org/show_bug.cgi?id=74190

Reviewed by Ojan Vafai.

The addition of eventSender.scheduleAsynchronousKeyDown in r102424
allows testing the code added in r101842 and http://crrev.com/113010.

Added a test using a contentEditable element and an onblur event
handler that asserts it fires after mutations due to editing have been
delivered.

  • fast/mutation/end-of-task-delivery-expected.txt: Added.
  • fast/mutation/end-of-task-delivery.html: Added.
14:48 Changeset [102476] by andersca@apple.com

Move the "is currently drawing into layer" flag out into ScrollbarThemeMac
https://bugs.webkit.org/show_bug.cgi?id=74217

Reviewed by Beth Dakin.

There's no need to store this flag inside ScrollAnimatorMac, just make it a global and put it in ScrollbarThemeMac instead.

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

(-[WebScrollbarPainterDelegate layer]):
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):

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

(WebCore::ScrollbarThemeMac::isCurrentlyDrawingIntoLayer):
(WebCore::ScrollbarThemeMac::paint):

14:42 Changeset [102475] by msaboff@apple.com

YARR: Multi-character read optimization for 8bit strings
https://bugs.webkit.org/show_bug.cgi?id=74191

Reviewed by Oliver Hunt.

Changed generatePatternCharacterOnce to generate
code for 1 to 4 characters in the 8 bit case.
This is worth 29% improvement on SunSpider regexp-dna test.
It provides no benefit to v8-regexp.

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::generatePatternCharacterOnce):
(JSC::Yarr::YarrGenerator::generate): Spelling fix in comment.

14:07 Changeset [102474] by andersca@apple.com

Minor cleanup in ScrollAnimatorMac.mm
https://bugs.webkit.org/show_bug.cgi?id=74211

Reviewed by Andreas Kling.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]):
No need to get the scrollbar from the scroll animator anymore.

(-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
Try to get data from the scrollbar and/or the scrollable area instead of the scrollbar painter.

14:05 Changeset [102473] by levin@chromium.org

Regression(r53595): Sync xhr requests in workers aren't terminated on worker close.
https://bugs.webkit.org/show_bug.cgi?id=71695

Reviewed by Zoltan Herczeg.

Source/JavaScriptCore:

  • wtf/MessageQueue.h:

(WTF::MessageQueue::tryGetMessageIgnoringKilled): Added a way to get messages
even after the queue has been killed. This is useful when one wants to
kill a queue but then go through it to run clean up tasks from it.

Source/WebCore:

Overview: Message loops rely on the message queue being killed in order
to exit. r53595 stopped this from happening because killing a message loop
would also stop it from doing database clean up tasks. The database clean up
tasks needed to be tasks due to ordering issues. (They wanted to run after
certain order tasks were run.) This was solved by once again terminating
the message queue but then still runnning clean-up tasks from the killed
message queue.

  • workers/WorkerRunLoop.cpp:

(WebCore::WorkerRunLoop::run): Added the call to run clean-up tasks.
(WebCore::WorkerRunLoop::runInMode):
(WebCore::WorkerRunLoop::runCleanupTasks): Loop to simply clear out all clean up tasks.
(WebCore::WorkerRunLoop::Task::performTask): Stop non-clean up tasks
from running after the loop has been terminated.

  • workers/WorkerRunLoop.h:

(WebCore::WorkerRunLoop::terminated): Just made it const.

  • workers/WorkerThread.cpp:

(WebCore::WorkerThreadShutdownFinishTask::performTask): Removed
the terminate clause since it was put back in stop.
(WebCore::WorkerThread::stop): Terminate the run loop so
that all loops will exit and clean up tasks will run. Also removed a comment
about nested workers because nested workers are no longer imminent and the
issue mentioned is one of many that should logically be investigated -- behavior correctness
in the face of different orderings of shutdown between the document and each worker --
when implementing them.

LayoutTests:

  • http/tests/workers/resources/worker-util.js: Added.

Copied from fast/workers/resources/worker-util.js

  • http/tests/xmlhttprequest/workers/abort-exception-assert.html:

Make the test wait for all workers to exit before finishing.

13:41 Changeset [102472] by tony@chromium.org

Unreviewed, rolling out r102416.
http://trac.webkit.org/changeset/102416
https://bugs.webkit.org/show_bug.cgi?id=73394

Chromium Win clobber builds are failing.

  • 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.
13:32 Changeset [102471] by eric.carlson@apple.com

JSC wrappers for TextTrack and TextTrackCue should not be collected during event dispatch or when owner is reachable
https://bugs.webkit.org/show_bug.cgi?id=72179

Reviewed by Geoff Garen.

Source/WebCore:

Tests: media/track/text-track-cue-is-reachable.html

media/track/text-track-is-reachable.html

  • GNUmakefile.list.am: Add JSTextTrackCueCustom.cpp and JSTextTrackCustom.cpp.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto
  • bindings/js/JSBindingsAllInOne.cpp: Ditto.
  • bindings/js/JSTextTrackCueCustom.cpp: Added.

(WebCore::JSTextTrackCueOwner::isReachableFromOpaqueRoots): New.
(WebCore::JSTextTrackCueOwner::visitChildren): New.

  • bindings/js/JSTextTrackCustom.cpp: Added.

(WebCore::JSTextTrackOwner::isReachableFromOpaqueRoots): New.
(WebCore::JSTextTrack::visitChildren): New, mark all cues.

  • bindings/js/JSTextTrackCustom.h: Added.

(WebCore::root): New.

  • bindings/js/JSTextTrackListCustom.cpp:

(WebCore::JSTextTrackList::visitChildren): New, mark all tracks.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::trackWillBeRemoved): TextTracks::remove now takes a TextTrack*.

  • html/LoadableTextTrack.h:

(WebCore::LoadableTextTrack::trackElement): New, return the <track>.

  • html/TextTrack.cpp:

(WebCore::TextTrack::TextTrack): Initialize m_mediaElement.

  • html/TextTrack.h:

(WebCore::TextTrack::setMediaElement): New.
(WebCore::TextTrack::mediaElement): Ditto.

  • html/TextTrack.idl: Add CustomIsReachable and CustomMarkFunction.
  • html/TextTrackCue.idl: Add CustomIsReachable.
  • html/track/TextTrackList.cpp:

(TextTrackList::append): Set track's media element.
(TextTrackList::remove): Clear track's media element. Take a raw ptr, not a PassRefPtr.

  • html/track/TextTrackList.h:
  • html/track/TextTrackList.idl: Add CustomMarkFunction

LayoutTests:

  • media/track/text-track-cue-is-reachable-expected.txt: Added.
  • media/track/text-track-cue-is-reachable.html: Added.
  • media/track/text-track-is-reachable-expected.txt: Added.
  • media/track/text-track-is-reachable.html: Added.
  • platform/chromium/test_expectations.txt:
13:25 Changeset [102470] by cfleizach@apple.com

WebKit should ignore images with @alt matching only whitespace
https://bugs.webkit.org/show_bug.cgi?id=74189

Reviewed by Darin Adler.

Source/WebCore:

Test: accessibility/img-alt-tag-only-whitespace.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):

LayoutTests:

  • accessibility/img-alt-tag-only-whitespace.html: Added.
  • platform/mac/accessibility/img-alt-tag-only-whitespace-expected.txt: Added.
13:25 Changeset [102469] by andersca@apple.com

Remove NSAnimationContext calls
https://bugs.webkit.org/show_bug.cgi?id=74207

Reviewed by Sam Weinig.

NSAnimationContext is not used for NSAnimation subclasses, so the calls to beginGrouping/endGrouping and setDuration:
are essentially no-ops. Remove them.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):

13:16 Changeset [102468] by andersca@apple.com

Rename scrollAnimatorDestroyed to invalidate
https://bugs.webkit.org/show_bug.cgi?id=74206

Reviewed by Sam Weinig.

Since these methods can be called when both scrollbars are destroyed and the scroll animator itself is
destroyed, rename it to something more neutral.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollAnimationHelperDelegate invalidate]):
(-[WebScrollbarPartAnimation invalidate]):
(-[WebScrollbarPainterDelegate invalidate]):
(WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):

13:08 Changeset [102467] by andersca@apple.com

WebScrollbarPainterControllerDelegate should know about the ScrollableArea, not the ScrollAnimatorMac
https://bugs.webkit.org/show_bug.cgi?id=74204

Reviewed by Sam Weinig.

It makes more logical sense to associate the WebScrollbarPainterControllerDelegate object with its ScrollableArea, since
painting has nothing to do with animation.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterControllerDelegate initWithScrollableArea:]):
(-[WebScrollbarPainterControllerDelegate invalidate]):
(-[WebScrollbarPainterControllerDelegate contentAreaRectForScrollerImpPair:]):
(-[WebScrollbarPainterControllerDelegate inLiveResizeForScrollerImpPair:]):
(-[WebScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]):
(-[WebScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
(-[WebScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):

12:52 Changeset [102466] by jarred@sencha.com

[JSC] Allow cached attributes in bindings that declare a custom mark function
https://bugs.webkit.org/show_bug.cgi?id=74187

Reviewed by Oliver Hunt.

No new tests, current binding tests are sufficient.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

12:36 Changeset [102465] by tony@chromium.org

Switch the chromium mac bots to using skia test results
https://bugs.webkit.org/show_bug.cgi?id=74201

Reviewed by Ryosuke Niwa.

This is reverting http://trac.webkit.org/changeset/97781 and changing
the name in master.cfg to no longer have cg in the name.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(appendCustomBuildFlags):
(RunWebKitTests.start):

12:35 Changeset [102464] by jamesr@google.com

Merge 102405 - Source/WebCore: Improve handling of frame removal during requestAnimationFrame callback invocation
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

See bug for details.

Test: fast/animation/request-animation-frame-detach-element.html

  • dom/Document.cpp:

(WebCore::Document::removedLastRef):
(WebCore::Document::detach):

  • dom/Document.h:
  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::~ScriptedAnimationController):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
(WebCore::ScriptedAnimationController::scheduleAnimation):

  • dom/ScriptedAnimationController.h:

(WebCore::ScriptedAnimationController::create):
(WebCore::ScriptedAnimationController::clearDocumentPointer):

  • page/FrameView.cpp:

(WebCore::FrameView::serviceScriptedAnimations):

LayoutTests: Add some tests for removing frames from the document while servicing requestAnimationFrame callbacks
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

  • fast/animation/request-animation-frame-detach-element-expected.txt: Added.
  • fast/animation/request-animation-frame-detach-element.html: Added.

BUG=106672
TBR=jamesr@google.com
Review URL: http://codereview.chromium.org/8899006

12:33 Changeset [102463] by jamesr@google.com

Merge 102405 - Source/WebCore: Improve handling of frame removal during requestAnimationFrame callback invocation
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

See bug for details.

Test: fast/animation/request-animation-frame-detach-element.html

  • dom/Document.cpp:

(WebCore::Document::removedLastRef):
(WebCore::Document::detach):

  • dom/Document.h:
  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::~ScriptedAnimationController):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
(WebCore::ScriptedAnimationController::scheduleAnimation):

  • dom/ScriptedAnimationController.h:

(WebCore::ScriptedAnimationController::create):
(WebCore::ScriptedAnimationController::clearDocumentPointer):

  • page/FrameView.cpp:

(WebCore::FrameView::serviceScriptedAnimations):

LayoutTests: Add some tests for removing frames from the document while servicing requestAnimationFrame callbacks
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

  • fast/animation/request-animation-frame-detach-element-expected.txt: Added.
  • fast/animation/request-animation-frame-detach-element.html: Added.

BUG=106672
TBR=jamesr@google.com
Review URL: http://codereview.chromium.org/8894015

12:15 Changeset [102462] by andersca@apple.com

Remove duplicate animation ivars
https://bugs.webkit.org/show_bug.cgi?id=74194

Reviewed by Sam Weinig.

Since we now have one WebScrollbarPainterDelegate for each scrollbar, we no longer need separate
vertical/horizontal animation objects, so get rid of them.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate cancelAnimations]):
(-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
(-[WebScrollbarPainterDelegate scrollAnimatorDestroyed]):

11:48 Changeset [102461] by tony@chromium.org

Try to deflake a repaint test on Chromium. It looks like we're
calling lTC.display() before the inital layout. Force a layout
before calling lTC.display().

Reviewed by Ojan Vafai.

  • fast/replaced/width100percent-textarea.html:
11:34 Changeset [102460] by andersca@apple.com

WebScrollbarPartAnimation should only know about the scrollbar it's animating
https://bugs.webkit.org/show_bug.cgi?id=74192

Reviewed by Sam Weinig.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPartAnimation initWithScrollbar:featureToAnimate:animateFrom:animateTo:duration:]):
Change the designated initializer to just take the scrollbar. Also, make the animation non-blocking here
so we don't have to do it in all the call sites.

(-[WebScrollbarPartAnimation startAnimation]):
Update the scrollbar painter.

(-[WebScrollbarPartAnimation setCurrentProgress:]):
Just invalidate the scrollbar we're animating.

(-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
Update call sites to use the new designated initializer.

10:59 Changeset [102459] by enne@google.com

Fix HashMap<..., OwnPtr<...> >::add compilation errors
https://bugs.webkit.org/show_bug.cgi?id=74159

Reviewed by Darin Adler.

Add a constructor to OwnPtr that takes the empty value (nullptr_t)
from HashTraits so that this function can compile.

  • wtf/OwnPtr.h:

(WTF::OwnPtr::OwnPtr):

09:52 Changeset [102458] by tony@chromium.org

[chromium] Update test_expectations.txt to match the bots.

  • platform/chromium/test_expectations.txt:
09:40 Changeset [102457] by jocelyn.turcotte@nokia.com

[Qt] Update WebGraphicLayer's child content scale in all child binding method.
https://bugs.webkit.org/show_bug.cgi?id=74101

Reviewed by Noam Rosenthal.

setChildren is currently the only method propagating the parent layer's content
scale to its children. This need to be done for addChild* as well.

This fixes the overlay layer not being rendered with the right scale when created
until the contents scale is modified again.

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):

09:38 Changeset [102456] by jocelyn.turcotte@nokia.com

Inspector: Don't translate the context when rendering the highlights on a tiled layer.
https://bugs.webkit.org/show_bug.cgi?id=74085

Reviewed by Kenneth Rohde Christiansen.

When the frame view is using fixed layouting, the page overlay is the size of the whole
page and the context shouldn't be translated. The visible rect is still used in that
case to display element titles within the visible rect.

Also:

  • Rename overlayRect to visibleRect to reduce confusion in this case.
  • Remove the superfluous boundingBox check.
  • inspector/DOMNodeHighlighter.cpp:
09:35 Changeset [102455] by jocelyn.turcotte@nokia.com

[Qt] Remove a wrongly placed ASSERT.

Reviewed by Tor Arne Vestbø.

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::notify):

08:50 BuildingQt5OnHarmattan edited by jocelyn.turcotte@nokia.com
Write down some way that works with current qt5 master. (diff)
08:18 Changeset [102454] by caryclark@google.com

Source/WebKit/chromium: Chromium DEPS roll to pick up new use_skia=1 default on Chromium-Mac
https://bugs.webkit.org/show_bug.cgi?id=74118

Reviewed by Adam Barth.

  • DEPS:

Tools: layout_test update to accommodate new use_skia=1 default on Chromium-Mac
https://bugs.webkit.org/show_bug.cgi?id=74118

Reviewed by Adam Barth.

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

(get):

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

(ChromiumMacPort.init):

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

(ChromiumMacPortTest.test_versions):
(ChromiumMacPortTest.test_graphics_type):

07:19 Changeset [102453] by commit-queue@webkit.org

[Qt][WK2] Fix tst_QQuickWebView::scrollRequest() API test
https://bugs.webkit.org/show_bug.cgi?id=73994

Patch by Michael Brüning <michael.bruning@nokia.com> on 2011-12-09
Reviewed by Kenneth Rohde Christiansen.

  • UIProcess/API/qt/tests/html/scroll.html: Corrected html and

added some coloring.

  • UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:

(tst_QQuickWebView::scrollRequest): Corrected calculation
of expected value.

06:48 Changeset [102452] by vestbo@webkit.org

[Qt] Use new qmake option in Qt5 to prevent dependency issues with GNUmake

The GNUmake + gcc_MD_depends options together produce .d files using GCC, but
this failed when moving files in the source tree, as the .d file would contain
stale dependencies on the old source file location. By keeping the object files
(and hence the depdendency files) in a proper tree structure inside the objects
directory we can prevent this failure.

A side benefit is that we can also have objects with the same name inside the
same project.

Reviewed by Simon Hausmann.

06:01 Changeset [102451] by ossy@webkit.org

Unreviewed. Update unit test after r102412.

  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:

(IRCCommandTest.test_whois):

03:59 QtWebKitBuildBots edited by ossy@webkit.org
Update Qt5 revision (diff)
03:49 Changeset [102450] by vsevik@chromium.org

Unreviewed inspector utilities syntax fix.

  • inspector/front-end/utilities.js:

():

02:56 WebKit Team edited by peter@chromium.org
(diff)
02:23 Changeset [102449] by bashi@chromium.org

Unreviewed, chromium test expectation update.

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

  • platform/chromium/test_expectations.txt:
01:40 Changeset [102448] by joone.hur@collabora.co.uk

[GTK] Initial implementation of Accelerated Compositing using Clutter
https://bugs.webkit.org/show_bug.cgi?id=73319

.:

Reviewed by Gustavo Noronha Silva.

  • GNUmakefile.am: Export new compilation macros.
  • configure.ac: Add clutter backend for Accelerated Compositing.

Source/WebCore:

Reviewed by Gustavo Noronha Silva.

No new tests added as this feature will be able to reuse the existing
CSS3 transforms layout tests.

  • GNUmakefile.am: Include WebCore/platform/graphics/clutter path.
  • GNUmakefile.list.am: Add GraphicsLayerClutter.
  • platform/clutter/GRefPtrClutter.cpp: Added.

(WTF::adoptGRef):
(WTF::ClutterActor):

  • platform/clutter/GRefPtrClutter.h: Added.
  • platform/graphics/GraphicsLayer.h: Define PlatformLayer type, which represents ClutterActor.
  • platform/graphics/clutter/GraphicsLayerClutter.cpp: Boilerplate implementation.

(WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
(WebCore::GraphicsLayerClutter::platformLayer):

  • platform/graphics/clutter/GraphicsLayerClutter.h: Boilerplate implementation.

Source/WebKit/gtk:

This patch allows to add a GtkClutterEmbed to embed Clutter Actors in WebKitWebView and
set the root GraphicsLayer to WebKitWebView when Accelerated Compositing needs to be enabled.

Reviewed by Gustavo Noronha Silva.

  • GNUmakefile.am:
  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::attachRootGraphicsLayer): Set the root GraphicsLayer to WebKitWebView.
(WebKit::ChromeClient::allowedCompositingTriggers): Allow to support CSS 3D Transforms only.

  • webkit/webkitglobals.cpp:

(webkitInit): Call gtk_clutter_init().

  • webkit/webkitwebview.cpp:

(webkit_web_view_size_allocate): Set the size of GtkClutterEmbed when the view is changed.
(webkit_web_view_init)
(webViewSetRootGraphicsLayer): Add the GtkClutterEmbed to the WebKitWebView as a child.
(webViewDetachRootGraphicsLayer): Remove the GtkClutterEmbed from the WebKitWebView.
(webViewSyncLayers): Commit layer changes.
(webViewMarkForSync): Set to call webViewSyncLayers using g_timeout_add.

  • webkit/webkitwebviewprivate.h:
01:25 Changeset [102447] by vsevik@chromium.org

Web Inspector: Introduce a Map class allowing to store values indexed by arbitrary objects.
https://bugs.webkit.org/show_bug.cgi?id=74084

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/map.html

  • inspector/front-end/treeoutline.js:

(TreeOutline):
():
(TreeElement.prototype.collapse):
(TreeElement.prototype.expand):

  • inspector/front-end/utilities.js:

():

LayoutTests:

  • inspector/map-expected.txt: Added.
  • inspector/map.html: Added.
01:15 Changeset [102446] by haraken@chromium.org

REGRESSION(r102105): run-bindings-tests should output full diff results
https://bugs.webkit.org/show_bug.cgi?id=74166

Reviewed by Adam Barth.

Since r102105, the output of run-bindings-tests is truncated to 500 characters.
run-bindings-tests should output full diff results.

  • Scripts/webkitpy/bindings/main.py: Replaced e.message_with_output() with e.output.

(BindingsTests.generate_from_idl):
(BindingsTests.generate_supplemental_dependency):
(BindingsTests.detect_changes):

01:11 Changeset [102445] by ossy@webkit.org

[Qt] Fix compilation with newly separated Qt 5 QtQuick module
https://bugs.webkit.org/show_bug.cgi?id=73990

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2011-12-09
Reviewed by Kenneth Rohde Christiansen, tweaked by Csaba Osztrogonác.

Fix QtQuick includes after move from QtDeclarative to QtQuick.

Source/WebKit2:

  • UIProcess/API/qt/qquickwebpage.cpp:
  • UIProcess/API/qt/qquickwebpage_p.h:
  • UIProcess/API/qt/qquickwebview.cpp:
  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/tests/tests.pri: Tests need symbols from QtQuick, so link library.
  • UIProcess/API/qt/tests/testwindow.h:
  • UIProcess/qt/QtDialogRunner.cpp:
  • UIProcess/qt/QtSGTileNode.cpp:
  • UIProcess/qt/QtSGTileNode.h:
  • UIProcess/qt/QtSGUpdateQueue.cpp:
  • UIProcess/qt/QtViewportInteractionEngine.cpp:
  • UIProcess/qt/QtWebPageProxy.cpp:
  • UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:

Tools:

  • MiniBrowser/qt/BrowserWindow.h:
  • WebKitTestRunner/qt/PlatformWebViewQt.cpp:
01:02 Changeset [102444] by nayankk@motorola.com

[WebKit2][gtk] Re-enable running TestWebKitSettings
https://bugs.webkit.org/show_bug.cgi?id=70135

Reviewed by Martin Robinson.

Re-enable running TestWebKitSettings which was skipped as part
of https://bugs.webkit.org/show_bug.cgi?id=70129 due to the
bug https://bugs.webkit.org/show_bug.cgi?id=70127.

  • UIProcess/API/gtk/tests/TestWebKitSettings.cpp:

(testWebKitSettings): Run testWebKitSettings.
(testWebKitSettingsNewWithSettings): Run testWebKitSettingsNewWithSettings.

00:53 Changeset [102443] by ossy@webkit.org

[Qt] Unreviewed gardening. Add Qt specific expected results.

  • platform/qt/animations/cross-fade-background-image-expected.png: Added.
  • platform/qt/animations/cross-fade-background-image-expected.txt: Added.
  • platform/qt/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/qt/animations/cross-fade-border-image-source-expected.txt: Added.
  • platform/qt/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/qt/animations/cross-fade-list-style-image-expected.txt: Added.
  • platform/qt/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/qt/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • platform/qt/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/qt/animations/cross-fade-webkit-mask-image-expected.txt: Added.
  • platform/qt/transitions/cross-fade-background-image-expected.png: Added.
  • platform/qt/transitions/cross-fade-background-image-expected.txt: Added.
  • platform/qt/transitions/cross-fade-border-image-expected.png: Added.
  • platform/qt/transitions/cross-fade-border-image-expected.txt: Added.
00:45 Changeset [102442] by oliver@apple.com

Avoid reloading storage pointer for indexed properties unnecessarily
https://bugs.webkit.org/show_bug.cgi?id=74136

Reviewed by Filip Pizlo.

Add a node to represent loading property storage for indexed properties.
This allows us to reduce code generated for sequential access of arrays,
strings, etc. This results in up to 5% improvement in code that is
very heavy on indexed reads, such as matrix operations in typed arrays
and 20% faster on microbenchmarks.

Currently this is only supported by GetByVal and other similar indexed reads.

  • bytecode/PredictedType.h:

(JSC::isFixedIndexedStorageObjectPrediction):

  • dfg/DFGAbstractState.cpp:

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

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGNode.h:
  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::getIndexedPropertyStorageLoadElimination):
(JSC::DFG::Propagator::performNodeCSE):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetCharCodeAt):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compileGetByValOnByteArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

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

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

00:43 Changeset [102441] by yurys@chromium.org

Fixed reviewer name in r102432 changelog entry.

00:33 Changeset [102440] by yurys@chromium.org

Web Inspector: [protocol] generate C++ classes for protocol JSON named types
https://bugs.webkit.org/show_bug.cgi?id=72835

Patch by Peter Rybin <peter.rybin@gmail.com> on 2011-12-09
Reviewed by NOBODY.

Extends python generator functionality.
Makes constructor in InspectorObject public.

  • inspector/CodeGeneratorInspector.py:
  • inspector/InspectorValues.h:
00:12 Changeset [102439] by yurys@chromium.org

Merge 102140 - [Chromium] Web Inspector: getFunctionLocation should return scriptId as String not as int
https://bugs.webkit.org/show_bug.cgi?id=73892

Reviewed by Pavel Feldman.

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::V8InjectedScriptHost::functionLocationCallback): scriptId should be a string not a number

  • inspector/Inspector.json: removed unused parameter

TBR=pfeldman@chromium.org
Review URL: http://codereview.chromium.org/8872059

12/08/11:

23:26 Changeset [102438] by bashi@chromium.org

Unreviewed, rebaseline fast/forms/select-listbox-multiple-no-focusring.html

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

  • platform/chromium-win/fast/forms/select-listbox-multiple-no-focusring-expected.png:
23:01 Changeset [102437] by lforschler@apple.com

Versioning.

22:59 Changeset [102436] by lforschler@apple.com

New Tag.

22:54 Changeset [102435] by commit-queue@webkit.org

[Qt] [WK2] Webkit should release TextureMapper GL objects if page paint node is deallocated.
https://bugs.webkit.org/show_bug.cgi?id=73591

Patch by Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com> on 2011-12-08
Reviewed by Noam Rosenthal.

Source/WebCore:

Implementation of helper function to remove all GL allocated tiles
when QQuickWebView gets removed from canvas.

Tested by new API test in WK2 (tst_QQuickWebView::removeFromCanvas).

  • platform/graphics/texmap/TextureMapperNode.cpp:

(WebCore::TextureMapperNode::purgeNodeTexturesRecursive):

  • platform/graphics/texmap/TextureMapperNode.h:

Source/WebKit2:

Implement deallocation of TextureMapper GL objects when QQuickWebPage paint node deallocated.
Also adds purging GraphicsLayer backing stores on WebProcess side in order to force repainting
when page becomes visible and painting resumes and fixes incorrect initialization of view
visibility state.

  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPagePrivate::resetPaintNode):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):

  • UIProcess/API/qt/tests/html/direct-image-compositing.html: Added.
  • UIProcess/API/qt/tests/html/resources/simple_image.png: Added.
  • UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:

(tst_QQuickWebView::showWebView):
(tst_QQuickWebView::removeFromCanvas):

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::layerTreeHostProxy):

  • UIProcess/LayerTreeHostProxy.h:
  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeHostProxy::purgeGLResources):

  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::purgeGLResources):

  • UIProcess/qt/QtWebPageProxy.h:
  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
(WebCore::WebGraphicsLayer::purgeBackingStores):
(WebCore::WebGraphicsLayer::recreateBackingStoreIfNeeded):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/LayerTreeHost.h:

(WebKit::LayerTreeHost::purgeBackingStores):

  • WebProcess/WebPage/LayerTreeHost.messages.in:
  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::LayerTreeHostQt):
(WebKit::LayerTreeHostQt::flushPendingLayerChanges):
(WebKit::LayerTreeHostQt::purgeBackingStores):
(WebKit::LayerTreeHostQt::recreateBackingStoreIfNeeded):

  • WebProcess/WebPage/qt/LayerTreeHostQt.h:
22:53 Changeset [102434] by bashi@chromium.org

Unreviewed, chromium test expectation update.

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

  • platform/chromium/test_expectations.txt:
22:43 Changeset [102433] by leo.yang@torchmobile.com.cn

Upstream platform/network/blackberry/DeferredData.{h, cpp}, NetworkJob.{h, cpp} and NetworkManager.{h, cpp}
https://bugs.webkit.org/show_bug.cgi?id=73791

Reviewed by Rob Buis.

Other main contributors:
Joe Mason <jmason@rim.com>
Lianghui Chen <liachen@rim.com>
Charles Wei <charles.wei@torchmobile.com.cn>

Initial upstream, can't be built yet, no new tests.

  • platform/network/blackberry/DeferredData.cpp: Added.
  • platform/network/blackberry/DeferredData.h: Added.
  • platform/network/blackberry/NetworkJob.cpp: Added.
  • platform/network/blackberry/NetworkJob.h: Added.
  • platform/network/blackberry/NetworkManager.cpp: Added.
  • platform/network/blackberry/NetworkManager.h: Added.
21:36 Changeset [102432] by bashi@chromium.org

Unreviewed, rebaseline fast/repaint/textarea-set-disabled.html for
Chromium Linux.

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

  • platform/chromium-linux/fast/repaint/textarea-set-disabled-expected.png: Added.
21:26 Changeset [102431] by rniwa@webkit.org

It's semantically incorrect to call notifyNodeListsAttributeChanged in dispatchSubtreeModifiedEvent
https://bugs.webkit.org/show_bug.cgi?id=74028

Reviewed by Darin Adler.

Remove a call to notifyNodeListsAttributeChanged in dispatchSubtreeModified and add explicit calls
to notifyNodeListsAttributeChanged at appropriate places.

Also merge notifyNodeListsChildrenChanged with notifyLocalNodeListsChildrenChanged, and
notifyNodeListsAttributeChanged with notifyLocalNodeListsAttributeChanged, and rename them to
invalidateNodeListsCacheAfterAttributeChanges and invalidateNodeListsCacheAfterNodeChanges respectively.

  • dom/Attr.cpp:

(WebCore::Attr::childrenChanged):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::childrenChanged):

  • dom/Document.cpp:

(WebCore::Document::updateRangesAfterNodeChanges):

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

(WebCore::NamedNodeMap::addAttribute):
(WebCore::NamedNodeMap::removeAttribute):

  • dom/Node.cpp:

(WebCore::removeNodeListCacheIfPossible):
(WebCore::Node::unregisterDynamicNodeList):
(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanges):
(WebCore::Node::invalidateNodeListsCacheAfterNodeChanges):
(WebCore::Node::dispatchSubtreeModifiedEvent):

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

(WebCore::StyledElement::classAttributeChanged):

21:23 Changeset [102430] by bashi@chromium.org

Unreviewed, rolling out r102418.
http://trac.webkit.org/changeset/102418
https://bugs.webkit.org/show_bug.cgi?id=71870

Caused Chromium build failure.

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

Source/WebCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::toJS):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::toV8Object):

  • html/canvas/WebGLExtension.h:
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
(WebCore::WebGLRenderingContext::maybeRestoreContext):

  • html/canvas/WebGLRenderingContext.h:
  • html/canvas/WebKitLoseContext.cpp: Renamed from Source/WebCore/html/canvas/WebGLLoseContext.cpp.

(WebCore::WebKitLoseContext::WebKitLoseContext):
(WebCore::WebKitLoseContext::~WebKitLoseContext):
(WebCore::WebKitLoseContext::getName):
(WebCore::WebKitLoseContext::create):
(WebCore::WebKitLoseContext::loseContext):
(WebCore::WebKitLoseContext::restoreContext):

  • html/canvas/WebKitLoseContext.h: Renamed from Source/WebCore/html/canvas/WebGLLoseContext.h.
  • html/canvas/WebKitLoseContext.idl: Renamed from Source/WebCore/html/canvas/WebGLLoseContext.idl.

LayoutTests:

  • fast/canvas/webgl/WebGLContextEvent.html:
  • fast/canvas/webgl/context-destroyed-crash.html:
  • fast/canvas/webgl/context-lost-expected.txt:
  • fast/canvas/webgl/context-lost-restored.html:
  • fast/canvas/webgl/context-lost.html:
21:15 Changeset [102429] by fsamuel@chromium.org

[Chromium] Enable viewport metatag
https://bugs.webkit.org/show_bug.cgi?id=73495

Reviewed by Darin Fisher.

Source/JavaScriptCore:

  • wtf/Platform.h: Added ENABLE(VIEWPORT) tag.

Source/WebCore:

Recompute viewpot parameters on frame rect resize.

  • page/FrameView.cpp:

(WebCore::FrameView::setFrameRect):

Source/WebKit/chromium:

Compute the appropriate fixed layout size, page, and device scale factors,
based on the viewport meta tag parameters.

See http://developer.android.com/guide/webapps/targeting.html for more information.

  • features.gypi:
  • public/WebView.h:
  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::layoutUpdated):
(WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):

  • src/ChromeClientImpl.h:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::createFrameView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::isPageScaleFactorSet):
(WebKit::WebViewImpl::setPageScaleFactor):
(WebKit::WebViewImpl::observeNewNavigation):

  • src/WebViewImpl.h:
21:00 WebKit Team edited by jchaffraix@webkit.org
Updated my (very outdated) entry (diff)
21:00 Changeset [102428] by tkent@chromium.org

Build fix for r102419.
https://bugs.webkit.org/show_bug.cgi?id=73916

  • platform/PopupMenuClient.h:

(WebCore::PopupMenuClient::listBoxSelectItem):
Remove unused argument names.

20:51 Changeset [102427] by haraken@chromium.org

Unreviewed. Rebaselined run-bindings-tests results.

  • bindings/scripts/test/JS/JSFloat64Array.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
20:37 Changeset [102426] by commit-queue@webkit.org

Upstream BlackBerry porting of MIMETypeRegistry/KeyboardEvent
https://bugs.webkit.org/show_bug.cgi?id=73534

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

Other main contributors:
Mike Fenton <mifenton@rim.com>
Joe Mason <jmason@rim.com>
Max Feil <mfeil@qnx.com>
Lukas Sydorowski <lsydorowski@rim.com>
Crystal Zhang <haizhang@rim.com>

Initial upstream, no new tests.

  • platform/blackberry/MIMETypeRegistryBlackBerry.cpp: Added.

(WebCore::MIMETypeRegistry::getMIMETypeForExtension):
(WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
(WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):

  • platform/blackberry/PlatformKeyboardEventBlackBerry.cpp: Added.

(WebCore::keyIdentifierForBlackBerryCharacter):
(WebCore::windowsKeyCodeForBlackBerryCharacter):
(WebCore::adjustCharacterFromOS):
(WebCore::toWebCorePlatformKeyboardEventType):
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::currentCapsLockState):
(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
(WebCore::PlatformKeyboardEvent::getCurrentModifierState):

20:22 Changeset [102425] by commit-queue@webkit.org

Unreviewed, rolling out r101619.
http://trac.webkit.org/changeset/101619
https://bugs.webkit.org/show_bug.cgi?id=74158

this patch produces bad behaviour on mac (Requested by
jeremya_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-08

Source/WebCore:

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::dragSourceEndedAt):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateHoverActiveState):

LayoutTests:

  • fast/css/hover-active-drag-expected.txt: Removed.
  • fast/css/hover-active-drag.html: Removed.
20:19 Changeset [102424] by adamk@chromium.org

[MutationObservers] V8LazyEventHandler breaks microtask delivery semantics
https://bugs.webkit.org/show_bug.cgi?id=73492

Reviewed by Adam Barth.

Source/WebCore:

Test: fast/mutation/inline-event-listener.html

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject): Call v8::Script::Run directly instead of going through V8Proxy.

Tools:

Add eventSender.scheduleAsynchronousKeyDown, needed to cause a
keypress event without any script on the stack.

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::EventSender):
(EventSender::keyDown):
(KeyDownTask::KeyDownTask):
(KeyDownTask::runIfValid):
(EventSender::scheduleAsynchronousKeyDown):

  • DumpRenderTree/chromium/EventSender.h:

LayoutTests:

  • fast/mutation/inline-event-listener-expected.txt: Added.
  • fast/mutation/inline-event-listener.html: Added.
20:16 Changeset [102423] by hayato@chromium.org

Suppress rendering of light children when ShadowRoot is dynamically created.
https://bugs.webkit.org/show_bug.cgi?id=72441

Reviewed by Ryosuke Niwa.

Source/WebCore:

Tests: fast/dom/shadow/dynamically-created-shadow-root-expected.html

fast/dom/shadow/dynamically-created-shadow-root.html

  • dom/Element.cpp:

(WebCore::Element::setShadowRoot):

LayoutTests:

  • fast/dom/shadow/dynamically-created-shadow-root-expected.html: Added.
  • fast/dom/shadow/dynamically-created-shadow-root.html: Added.
20:12 Changeset [102422] by bashi@chromium.org

Unreviewed, chromium test rebaseline tests added in r102388. Updates expectations.

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

  • platform/chromium-cg-mac-leopard/transitions/cross-fade-background-image-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/animations/cross-fade-background-image-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/animations/cross-fade-border-image-source-expected.txt: Added.
  • platform/chromium-cg-mac-snowleopard/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/transitions/cross-fade-background-image-expected.png: Added.
  • platform/chromium-linux/animations/cross-fade-background-image-expected.png: Added.
  • platform/chromium-linux/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/chromium-linux/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/chromium-linux/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/chromium-linux/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/chromium-linux/transitions/cross-fade-background-image-expected.png: Added.
  • platform/chromium-linux/transitions/cross-fade-border-image-expected.png: Added.
  • platform/chromium-mac-leopard/animations/cross-fade-background-image-expected.png: Added.
  • platform/chromium-mac-leopard/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/chromium-mac-leopard/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/chromium-mac-leopard/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/chromium-mac-leopard/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/chromium-mac-leopard/transitions/cross-fade-background-image-expected.png: Added.
  • platform/chromium-mac-leopard/transitions/cross-fade-border-image-expected.png: Added.
  • platform/chromium-mac-snowleopard/animations/cross-fade-background-image-expected.png: Added.
  • platform/chromium-mac-snowleopard/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/chromium-mac-snowleopard/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/chromium-mac-snowleopard/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/chromium-mac-snowleopard/transitions/cross-fade-background-image-expected.png: Added.
  • platform/chromium-win/animations/cross-fade-background-image-expected.png: Added.
  • platform/chromium-win/animations/cross-fade-background-image-expected.txt: Added.
  • platform/chromium-win/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/chromium-win/animations/cross-fade-border-image-source-expected.txt: Added.
  • platform/chromium-win/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/chromium-win/animations/cross-fade-list-style-image-expected.txt: Added.
  • platform/chromium-win/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/chromium-win/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • platform/chromium-win/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/chromium-win/animations/cross-fade-webkit-mask-image-expected.txt: Added.
  • platform/chromium-win/transitions/cross-fade-background-image-expected.png: Added.
  • platform/chromium-win/transitions/cross-fade-background-image-expected.txt: Added.
  • platform/chromium-win/transitions/cross-fade-border-image-expected.png: Added.
  • platform/chromium-win/transitions/cross-fade-border-image-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
19:28 Changeset [102421] by commit-queue@webkit.org

Accessibility object searching layout tests are incomplete.
https://bugs.webkit.org/show_bug.cgi?id=74130

Patch by Sam White <samuel.white@rochester.edu> on 2011-12-08
Reviewed by Chris Fleizach.

Added a layout test to support visited link searching and removed frame searching
(which was unimplemented) as it's fully covered by the tests in:
platform/mac/accessibility/search-with-frames.html

  • platform/mac/accessibility/search-predicate-expected.txt:
  • platform/mac/accessibility/search-predicate.html:
19:24 Changeset [102420] by hayato@chromium.org

[gdb] Pretty printer for a 8-bit version of WTF::StringImpl and LChar*.
https://bugs.webkit.org/show_bug.cgi?id=73980

Reviewed by Tony Chang.

  • gdb/webkit.py:

(guess_string_length):
(ustring_to_string):
(lstring_to_string):
(LCharStringPrinter):
(LCharStringPrinter.to_string):
(WTFStringImplPrinter.get_length):
(WTFStringImplPrinter.to_string):
(WTFStringImplPrinter.is_8bit):
(WTFStringPrinter.stringimpl_ptr):
(WTFStringPrinter.get_length):
(WTFStringPrinter.to_string):
(add_pretty_printers.lookup_function):

19:22 Changeset [102419] by pierre.rossi@gmail.com

Drop ENABLE_NO_LISTBOX_RENDERING, and make it a runtime decision.
https://bugs.webkit.org/show_bug.cgi?id=73916

Source/WebCore:

This was needed for Qt since the mobile theme, which can be picked
up at runtime, delegates the rendering of list boxes.

Reviewed by Kent Tamura.

No new tests, there's no functional change.

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::usesMenuList):

  • html/HTMLSelectElement.h:
  • platform/PopupMenuClient.h:

(WebCore::PopupMenuClient::listBoxSelectItem):
(WebCore::PopupMenuClient::multiple):

  • platform/qt/RenderThemeQtMobile.h:

(WebCore::RenderThemeQtMobile::delegatesMenuListRendering):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::multiple):

  • rendering/RenderMenuList.h:
  • rendering/RenderTheme.h:

(WebCore::RenderTheme::delegatesMenuListRendering):

Source/WebKit/chromium:

Reviewed by Kent Tamura.

  • src/ExternalPopupMenu.cpp:

(WebKit::ExternalPopupMenu::didAcceptIndices):
(WebKit::ExternalPopupMenu::getPopupMenuInfo):

Source/WebKit/qt:

Reviewed by Kent Tamura.

  • WebCoreSupport/PopupMenuQt.cpp:

(SelectData::multiple):
(WebCore::PopupMenuQt::selectItem):

Tools:

Reviewed by Kent Tamura.

  • qmake/mkspecs/features/features.prf:
19:07 Changeset [102418] by kbr@google.com

Rename WEBKIT_lose_context to WEBKIT_WEBGL_lose_context
https://bugs.webkit.org/show_bug.cgi?id=71870

Source/WebCore:

Reviewed by James Robinson.

Rename largely done with do-webcore-rename with a couple of
necessary manual fixups. Ran WebGL layout tests.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::toJS):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::toV8Object):

  • html/canvas/WebGLExtension.h:
  • html/canvas/WebGLLoseContext.cpp: Copied from Source/WebCore/html/canvas/WebKitLoseContext.cpp.

(WebCore::WebGLLoseContext::WebGLLoseContext):
(WebCore::WebGLLoseContext::~WebGLLoseContext):
(WebCore::WebGLLoseContext::getName):
(WebCore::WebGLLoseContext::create):
(WebCore::WebGLLoseContext::loseContext):
(WebCore::WebGLLoseContext::restoreContext):

  • html/canvas/WebGLLoseContext.h: Copied from Source/WebCore/html/canvas/WebKitLoseContext.h.
  • html/canvas/WebGLLoseContext.idl: Copied from Source/WebCore/html/canvas/WebKitLoseContext.idl.
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
(WebCore::WebGLRenderingContext::maybeRestoreContext):

  • html/canvas/WebGLRenderingContext.h:
  • html/canvas/WebKitLoseContext.cpp: Removed.
  • html/canvas/WebKitLoseContext.h: Removed.
  • html/canvas/WebKitLoseContext.idl: Removed.

LayoutTests:

Synchronized context-lost-restored.html and context-lost.html with
Khronos repository; upstream tests must check for multiple vendor
prefixes.

Reviewed by James Robinson.

  • fast/canvas/webgl/WebGLContextEvent.html:
  • fast/canvas/webgl/context-destroyed-crash.html:
  • fast/canvas/webgl/context-lost-expected.txt:
  • fast/canvas/webgl/context-lost-restored.html:
  • fast/canvas/webgl/context-lost.html:
18:59 Changeset [102417] by bashi@chromium.org

Unreviewed chromium rebaseline fast/repaint/textarea-set-disabled.html.

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

  • platform/chromium-win/fast/repaint/textarea-set-disabled-expected.png: Added.
  • platform/chromium/fast/repaint/textarea-set-disabled-expected.png: Added.
18:49 Changeset [102416] 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.
18:38 Changeset [102415] by commit-queue@webkit.org

Add test for inline style block in HTML tag
https://bugs.webkit.org/show_bug.cgi?id=72360

Patch by Szilard Ledan <Ledan-Muntean.Szilard@stud.u-szeged.hu> on 2011-12-08
Reviewed by Darin Adler.

  • fast/css/parsing-css-block-expected.txt: Added.
  • fast/css/parsing-css-block.html: Added.
18:32 Changeset [102414] by commit-queue@webkit.org

Unreviewed, rolling out r102396.
http://trac.webkit.org/changeset/102396
https://bugs.webkit.org/show_bug.cgi?id=74153

over-active-drag test still failing. (Requested by macpherson
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-08

  • fast/css/hover-active-drag.html:
  • platform/chromium/fast/css/hover-active-drag-expected.txt: Added.
  • platform/mac/fast/css/hover-active-drag-expected.txt: Added.
18:28 Changeset [102413] by commit-queue@webkit.org

Caret keeps blinking during forward-delete
https://bugs.webkit.org/show_bug.cgi?id=38564

Patch by Van Lam <vanlam@google.com> on 2011-12-08
Reviewed by Darin Adler.

Currently updateAppearance determines if the caret should stop blinking
based on whether or not the editing operation changed the position of
the caret; so the caret stops blinking in case of typing text and
backwards delete (which always displace the caret) but does not stop
blinking in the case of forward delete (which does not displace the
caret).

Added a boolean member function shouldStopCaretBlinking in EditCommand
which will return true if the object is a TypingCommand (my
understanding here is that all TypingCommands should stop the caret
from blinking for a cycle, currently 0.5 seconds). Then used this
function to stop the caret from blinking if the last editing command
is a TypingCommand.

  • editing/EditCommand.h:

(WebCore::EditCommand::shouldStopCaretBlinking):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::updateAppearance):

  • editing/TypingCommand.h:

(WebCore::TypingCommand::shouldStopCaretBlinking):

18:00 Changeset [102412] by enne@google.com

Unreviewed contributor additions to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
17:59 Changeset [102411] by tkent@chromium.org

[Chromium] Rebaseline for r102320.

  • platform/chromium-cg-mac-leopard/fast/forms/basic-inputs-expected.png: Added.
  • platform/chromium-cg-mac-leopard/fast/forms/file/file-input-disabled-expected.png: Added.
  • platform/chromium-cg-mac-leopard/fast/forms/file/file-input-disabled-expected.txt: Added.
  • platform/chromium-cg-mac-leopard/fast/forms/input-disabled-color-expected.png:
  • platform/chromium-cg-mac-snowleopard/fast/forms/basic-inputs-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/fast/forms/file/file-input-disabled-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/fast/forms/file/file-input-disabled-expected.txt: Added.
  • platform/chromium-cg-mac-snowleopard/fast/forms/input-disabled-color-expected.png:
  • platform/chromium-cg-mac/fast/forms/file/file-input-disabled-expected.png: Removed.
  • platform/chromium-linux-x86/fast/forms/file/file-input-disabled-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/forms/file/file-input-disabled-expected.txt.
  • platform/chromium-linux/fast/forms/file/file-input-disabled-expected.png:
  • platform/chromium-linux/fast/forms/file/file-input-disabled-expected.txt:
  • platform/chromium-linux/fast/forms/input-disabled-color-expected.png:
  • platform/chromium-linux/fast/forms/number/input-appearance-spinbutton-disabled-readonly-expected.txt:
  • platform/chromium-mac-leopard/fast/forms/basic-inputs-expected.png: Added.
  • platform/chromium-mac-leopard/fast/forms/file/file-input-disabled-expected.png: Added.
  • platform/chromium-mac-leopard/fast/forms/file/file-input-disabled-expected.txt: Added.
  • platform/chromium-mac-leopard/fast/forms/input-disabled-color-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/basic-inputs-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/forms/basic-textareas-expected.png.
  • platform/chromium-mac-snowleopard/fast/forms/basic-textareas-quirks-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/forms/basic-textareas-quirks-expected.png.
  • platform/chromium-mac-snowleopard/fast/forms/file/file-input-disabled-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/file/file-input-disabled-expected.txt: Added.
  • platform/chromium-mac-snowleopard/fast/forms/input-appearance-disabled-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/forms/input-appearance-disabled-expected.png.
  • platform/chromium-mac-snowleopard/fast/forms/input-disabled-color-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/number/input-appearance-spinbutton-disabled-readonly-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/forms/number/input-appearance-spinbutton-disabled-readonly-expected.png.
  • platform/chromium-win-vista/fast/forms/file/file-input-disabled-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/file/file-input-disabled-expected.txt.
  • platform/chromium-win-xp/fast/forms/file/file-input-disabled-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/file/file-input-disabled-expected.txt.
  • platform/chromium-win/fast/forms/basic-inputs-expected.txt:
  • platform/chromium-win/fast/forms/basic-textareas-expected.txt:
  • platform/chromium-win/fast/forms/basic-textareas-quirks-expected.txt:
  • platform/chromium-win/fast/forms/file/file-input-disabled-expected.png:
  • platform/chromium-win/fast/forms/file/file-input-disabled-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-disabled-expected.txt:
  • platform/chromium-win/fast/forms/input-disabled-color-expected.png:
  • platform/chromium-win/fast/forms/input-disabled-color-expected.txt:
  • platform/chromium-win/fast/forms/number/input-appearance-spinbutton-disabled-readonly-expected.txt:
  • platform/chromium-win/fast/forms/placeholder-pseudo-style-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
  • platform/chromium/fast/forms/basic-inputs-expected.txt: Added.
  • platform/chromium/fast/forms/basic-textareas-expected.txt: Added.
  • platform/chromium/fast/forms/basic-textareas-quirks-expected.txt: Added.
  • platform/chromium/fast/forms/input-appearance-disabled-expected.txt: Added.
  • platform/chromium/fast/forms/input-disabled-color-expected.txt: Added.
  • platform/chromium/fast/forms/number/input-appearance-spinbutton-disabled-readonly-expected.txt: Added.
  • platform/chromium/fast/forms/placeholder-pseudo-style-expected.txt: Added.
  • platform/chromium/fast/forms/textarea-placeholder-pseudo-style-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
17:56 Changeset [102410] by adamk@chromium.org

Use HashMap<Node*, OwnPtr<...>> in ChildListMutationScope
https://bugs.webkit.org/show_bug.cgi?id=73964

Reviewed by Darin Adler.

Source/JavaScriptCore:

  • wtf/HashTraits.h: Add passOut(std::nullptr_t) to allow callers to use HashMap::take on a HashMap of OwnPtrs.

Source/WebCore:

Re-landing r102267 with a fix for the clang build.

No new tests, refactoring only.

  • dom/ChildListMutationScope.cpp:

(WebCore::ChildListMutationAccumulator::MutationAccumulationRouter::childAdded):
(WebCore::ChildListMutationAccumulator::MutationAccumulationRouter::willRemoveChild):
(WebCore::ChildListMutationAccumulator::MutationAccumulationRouter::incrementScopingLevel):
(WebCore::ChildListMutationAccumulator::MutationAccumulationRouter::decrementScopingLevel):

17:54 Changeset [102409] by andersca@apple.com

WebScrollbarPainterDelegate should have a pointer to its Scrollbar
https://bugs.webkit.org/show_bug.cgi?id=74149

Reviewed by Darin Adler.

This is another step towards making the scroll animation code more robust.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate initWithScrollbar:WebCore::]):
(-[WebScrollbarPainterDelegate scrollAnimator]):
(-[WebScrollbarPainterDelegate layer]):
(-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
(-[WebScrollbarPainterDelegate scrollAnimatorDestroyed]):
(WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
(WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):

17:46 Changeset [102408] by commit-queue@webkit.org

keyboard event doesn't fire while moving mouse with button pressed
https://bugs.webkit.org/show_bug.cgi?id=73821

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2011-12-08
Reviewed by Alexey Proskuryakov.

Autoscroll should not stop on key press.

Source/WebCore:

Test: fast/events/autoscroll-should-not-stop-on-keypress.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::keyEvent):
Removed the check for autoscroll so that autoscroll is not stopped on
key press and key event is processed.

LayoutTests:

  • fast/events/autoscroll-should-not-stop-on-keypress-expected.txt: Added.
  • fast/events/autoscroll-should-not-stop-on-keypress.html: Added.
17:46 Changeset [102407] by simon.fraser@apple.com

Forced compositing mode breaks display of full-page PDFs in WK2
https://bugs.webkit.org/show_bug.cgi?id=74122
<rdar://problem/9550059>

Reviewed by Dan Bernstein.

Full page PDFs are displayed in WK2 in a subview of the WKView. However,
when the WKView is forced to use accelerated compositing, the layer obscures
the PDF subview.

To fix this we have to drop out of compositing mode when the WKView is showing
a custom representation.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _setPageHasCustomRepresentation:]): Tell the drawing area that the view
gained or lost a custom representation.

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::pageCustomRepresentationChanged):

  • UIProcess/DrawingAreaProxyImpl.h:
  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::pageCustomRepresentationChanged): Send a messgae to the web process
to indicate that the custom representation changed.

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::pageCustomRepresentationChanged):

  • WebProcess/WebPage/DrawingArea.messages.in:
  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::pageCustomRepresentationChanged): Enter or exit compositing mode
as appropriate when we gain or lost a custom represenetation.
(WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):

  • WebProcess/WebPage/DrawingAreaImpl.h:
17:35 Changeset [102406] by andersca@apple.com

Add scrollAnimator getter method to WebScrollbarPainterDelegate
https://bugs.webkit.org/show_bug.cgi?id=74146

Reviewed by Beth Dakin.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate scrollAnimator]):
(-[WebScrollbarPainterDelegate layer]):
(-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]):
(-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):

17:33 Changeset [102405] by jamesr@google.com

Source/WebCore: Improve handling of frame removal during requestAnimationFrame callback invocation
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

See bug for details.

Test: fast/animation/request-animation-frame-detach-element.html

  • dom/Document.cpp:

(WebCore::Document::removedLastRef):
(WebCore::Document::detach):

  • dom/Document.h:
  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::~ScriptedAnimationController):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
(WebCore::ScriptedAnimationController::scheduleAnimation):

  • dom/ScriptedAnimationController.h:

(WebCore::ScriptedAnimationController::create):
(WebCore::ScriptedAnimationController::clearDocumentPointer):

  • page/FrameView.cpp:

(WebCore::FrameView::serviceScriptedAnimations):

LayoutTests: Add some tests for removing frames from the document while servicing requestAnimationFrame callbacks
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

  • fast/animation/request-animation-frame-detach-element-expected.txt: Added.
  • fast/animation/request-animation-frame-detach-element.html: Added.
17:31 Changeset [102404] by commit-queue@webkit.org

Use bitfield for bool data members in BitmapImage.
https://bugs.webkit.org/show_bug.cgi?id=74102

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2011-12-08
Reviewed by Darin Adler.

Class BitmapImage and FrameData has bool data members, we can use bitfield for those data
members to reduce the BitmapImage's memory footprint.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::BitmapImage):

  • platform/graphics/BitmapImage.h:

(WebCore::FrameData::FrameData):

  • platform/graphics/cairo/ImageCairo.cpp:

(WebCore::BitmapImage::BitmapImage):

  • platform/graphics/cg/ImageCG.cpp:

(WebCore::BitmapImage::BitmapImage):

  • platform/graphics/openvg/ImageOpenVG.cpp:

(WebCore::BitmapImage::BitmapImage):

  • platform/graphics/qt/ImageQt.cpp:

(WebCore::BitmapImage::BitmapImage):

17:16 Changeset [102403] by andersca@apple.com

Fix a paste-o in ScrollAnimatorMac::updateScrollerStyle
https://bugs.webkit.org/show_bug.cgi?id=74145

Reviewed by Sam Weinig.

Call setHorizontalScrollerImp to set the horizontal scrollbar painter.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::updateScrollerStyle):

17:13 Changeset [102402] by commit-queue@webkit.org

Convert some fast/regions pixel tests to reftests
https://bugs.webkit.org/show_bug.cgi?id=74116

Patch by Jacob Goldstein <jacobg@adobe.com> on 2011-12-08
Reviewed by Darin Adler.

  • fast/regions/webkit-flow-renderer-expected.html: Added.
  • fast/regions/webkit-flow-renderer-layer-expected.html: Added.
  • fast/regions/webkit-flow-renderer-nested-expected.html: Added.
  • platform/efl/fast/regions/webkit-flow-renderer-expected.png: Removed.
  • platform/efl/fast/regions/webkit-flow-renderer-expected.txt: Removed.
  • platform/efl/fast/regions/webkit-flow-renderer-layer-expected.png: Removed.
  • platform/efl/fast/regions/webkit-flow-renderer-layer-expected.txt: Removed.
  • platform/efl/fast/regions/webkit-flow-renderer-nested-expected.png: Removed.
  • platform/efl/fast/regions/webkit-flow-renderer-nested-expected.txt: Removed.
  • platform/mac/fast/regions/webkit-flow-renderer-expected.png: Removed.
  • platform/mac/fast/regions/webkit-flow-renderer-expected.txt: Removed.
  • platform/mac/fast/regions/webkit-flow-renderer-layer-expected.png: Removed.
  • platform/mac/fast/regions/webkit-flow-renderer-layer-expected.txt: Removed.
  • platform/mac/fast/regions/webkit-flow-renderer-nested-expected.png: Removed.
  • platform/mac/fast/regions/webkit-flow-renderer-nested-expected.txt: Removed.
17:11 Changeset [102401] by andersca@apple.com

Create one WebScrollbarPainterDelegate for each scrollbar
https://bugs.webkit.org/show_bug.cgi?id=74142

Reviewed by Sam Weinig.

Create and destroy WebScrollbarPainterDelegate objects as scrollbars come and go.
This is a step towards simplifying the WebScrollbarPainterDelegate object.

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

(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
(WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
(WebCore::ScrollAnimatorMac::cancelAnimations):

17:04 Changeset [102400] by commit-queue@webkit.org

[Chromium] Add per-tile painting flag to DumpRenderTree and rename AcceleratedDrawing to AcceleratedPainting in chromium specific code.
https://bugs.webkit.org/show_bug.cgi?id=74017

Source/WebCore:

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

Add per-tile drawing to page settings.

No new tests.

  • page/Settings.h:

(WebCore::Settings::setPerTileDrawingEnabled):
(WebCore::Settings::perTileDrawingEnabled):

  • testing/Internals.cpp:

(WebCore::Internals::setPerTileDrawingEnabled):

  • testing/Internals.h:

Source/WebKit/chromium:

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

Add WebSettings::setAcceleratedPaintingEnabled to public API.

  • public/WebSettings.h:
  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::WebSettingsImpl):
(WebKit::WebSettingsImpl::setAcceleratedPaintingEnabled):
(WebKit::WebSettingsImpl::setPerTilePaintingEnabled):

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

(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

Tools:

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

Add support for command line flag enable-per-tile-painting in DumpRenderTree.

  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(main):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):
(TestShell::resetWebSettings):

  • DumpRenderTree/chromium/TestShell.h:

(TestShell::setAcceleratedPaintingEnabled):
(TestShell::setPerTilePaintingEnabled):

  • DumpRenderTree/chromium/WebPreferences.cpp:

(WebPreferences::reset):
(WebPreferences::applyTo):

  • DumpRenderTree/chromium/WebPreferences.h:
  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumDriver._wrapper_options):

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args):

16:58 Changeset [102399] by jchaffraix@webkit.org

REGRESSION: Changing disabled state of a textarea does not do a repaint
https://bugs.webkit.org/show_bug.cgi?id=23789

Reviewed by Darin Adler.

The bug got fixed (I did not bisect to find out when) thus landing
the test case converted to a repaint test and made cross-platform.

  • fast/repaint/textarea-set-disabled-expected.png: Added.
  • fast/repaint/textarea-set-disabled-expected.txt: Added.
  • fast/repaint/textarea-set-disabled.html: Added.
16:52 Changeset [102398] by andersca@apple.com

Add a scrollbarPainterForScrollbar helper function
https://bugs.webkit.org/show_bug.cgi?id=74139

Reviewed by Sam Weinig.

  • platform/mac/ScrollAnimatorMac.mm:

(macScrollbarTheme):
(scrollbarPainterForScrollbar):
(WebCore::ScrollAnimatorMac::mouseEnteredScrollbar):
(WebCore::ScrollAnimatorMac::mouseExitedScrollbar):
(WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
(WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):

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

[chromium] Move NonCompositedContentHost to WebKit
https://bugs.webkit.org/show_bug.cgi?id=74047

Patch by James Robinson <jamesr@chromium.org> on 2011-12-08
Reviewed by Kenneth Russell.

Source/WebCore:

Updates WebCore.gypi to remove files no longer within WebCore and removes unused forward declaration and include
from LayerRendererChromium.

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

Source/WebKit/chromium:

Moves NonCompositedContentHost into WebKit/chromium/src. This class is a helper class designed to make it easier
for WebViewImpl to interface with the compositor. The compositor proper should not depend on this class, and
other clients of the compositor do not need this functionality.

Follow-up patches will transition this code from using compositor-internal interfaces directly to using
higher-level interfaces like the WebKit platform APIs. This patch simply does a file mv and updates namespaces
to keep things simpler.

Refactor only and covered by several unit tests.

  • WebKit.gyp:
  • src/NonCompositedContentHost.cpp: Renamed from Source/WebCore/platform/graphics/chromium/NonCompositedContentHost.cpp.

(WebKit::NonCompositedContentHost::NonCompositedContentHost):
(WebKit::NonCompositedContentHost::~NonCompositedContentHost):
(WebKit::NonCompositedContentHost::setBackgroundColor):
(WebKit::NonCompositedContentHost::setScrollLayer):
(WebKit::NonCompositedContentHost::setViewport):
(WebKit::NonCompositedContentHost::scrollLayer):
(WebKit::NonCompositedContentHost::protectVisibleTileTextures):
(WebKit::NonCompositedContentHost::invalidateRect):
(WebKit::NonCompositedContentHost::notifyAnimationStarted):
(WebKit::NonCompositedContentHost::notifySyncRequired):
(WebKit::NonCompositedContentHost::paintContents):
(WebKit::NonCompositedContentHost::showDebugBorders):
(WebKit::NonCompositedContentHost::showRepaintCounter):

  • src/NonCompositedContentHost.h: Renamed from Source/WebCore/platform/graphics/chromium/NonCompositedContentHost.h.

(WebKit::NonCompositedContentHost::create):
(WebKit::NonCompositedContentHost::topLevelRootLayer):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::nonCompositedContentHost):

  • src/WebViewImpl.h:
  • tests/LayerChromiumTest.cpp:
16:41 Changeset [102396] by commit-queue@webkit.org

Fix fast/css/hover-active-drag.html on Mac
https://bugs.webkit.org/show_bug.cgi?id=74046

Patch by Jeremy Apthorp <jeremya@chromium.org> on 2011-12-08
Reviewed by Darin Adler.

  • fast/css/hover-active-drag.html:
  • platform/chromium/fast/css/hover-active-drag-expected.txt: Removed.
  • platform/mac/fast/css/hover-active-drag-expected.txt: Removed.
16:37 Changeset [102395] by commit-queue@webkit.org

[chromium] Layer contents scale change should trigger invalidation

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

When the contents scale of a layer is changed, the entire contents of
the layer should be marked dirty.

Patch by Sami Kyostila <skyostil@google.com> on 2011-12-08
Reviewed by James Robinson.

Source/WebCore:

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::setContentsScale):

Source/WebKit/chromium:

  • tests/LayerChromiumTest.cpp:
16:22 Changeset [102394] by senorblanco@chromium.org

[chromium] Add CSS_FILTERS custom binding file to WebCore.gypi.
https://bugs.webkit.org/show_bug.cgi?id=74091

Reviewed by Adam Barth.

If it builds, you're happy.

  • WebCore.gypi:
16:20 Changeset [102393] by dpranke@chromium.org

create a "SystemHost" object for webkitpy to slim down the Host object
https://bugs.webkit.org/show_bug.cgi?id=72680

Reviewed by Eric Siedel.

This creates a SystemHost object that other objects that should
only have dependencies on functionality in webkitpy.common.system
can use; this will allow them to not require a full Host.

  • Scripts/webkitpy/common/host.py:
  • Scripts/webkitpy/common/host_mock.py:
  • Scripts/webkitpy/common/system/systemhost.py: Added.
  • Scripts/webkitpy/common/system/systemhost_mock.py: Added.
16:15 Changeset [102392] 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):

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

Moving SVG elements on the page doesn't always erase element at the old position
https://bugs.webkit.org/show_bug.cgi?id=74002

Patch by Florin Malita <fmalita@google.com> on 2011-12-08
Reviewed by Darin Adler.

Source/WebCore:

Test: svg/repaint/container-repaint.svg

  • rendering/svg/RenderSVGContainer.cpp:

(WebCore::RenderSVGContainer::layout):
Save the old repaint bounds before updating the viewport.

LayoutTests:

  • svg/repaint/container-repaint-expected.png: Added.
  • svg/repaint/container-repaint-expected.txt: Added.
  • svg/repaint/container-repaint.svg: Added.
15:38 Changeset [102390] by tony@chromium.org

Mark tests added in r102388 as failing on Chromium. Fix the cross platform
expected results for transitions/svg-transitions.html (the line number changed).

  • platform/chromium/test_expectations.txt:
  • transitions/svg-transitions-expected.txt:
15:16 Changeset [102389] by commit-queue@webkit.org

https://bugs.webkit.org/show_bug.cgi?id=74005
fix unaligned access memory in generatePatternCharacterOnce function
for SH4 platforms.

Patch by Thouraya ANDOLSI <thouraya.andolsi@st.com> on 2011-12-08
Reviewed by Gavin Barraclough.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::load16Unaligned):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::load16Unaligned):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::load16Unaligned):

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::lshift32):
(JSC::MacroAssemblerSH4::load8):
(JSC::MacroAssemblerSH4::load16):
(JSC::MacroAssemblerSH4::load16Unaligned):
(JSC::MacroAssemblerSH4::branch8):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::load16Unaligned):

  • jit/JIT.h:
  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::generatePatternCharacterOnce):

15:06 Changeset [102388] by timothy_horton@apple.com

Enable animations of CSS images using -webkit-cross-fade
https://bugs.webkit.org/show_bug.cgi?id=74049
<rdar://problem/10209303>

Reviewed by Simon Fraser.

Add support for animating CSS images in the following properties:

  • background(-image)
  • border-image(-source)
  • list-style(-image)
  • -webkit-mask-box-image(-source)
  • -webkit-mask-image(-source)

This patch only adds support for transitioning between NinePieceImages
where all of the properties except the image itself are equal, and the
size of the images are equal. Other cases will not animate.

Add animation blend functions for StyleImage and NinePieceImage.

Apply the proper compositing operation to -webkit-cross-fade, and
fix handling of the destination and source areas to support scaling.

Tests: animations/cross-fade-background-image.html

animations/cross-fade-border-image-source.html
animations/cross-fade-list-style-image.html
animations/cross-fade-webkit-mask-box-image.html
animations/cross-fade-webkit-mask-image.html

  • css/CSSCrossfadeValue.cpp:

(WebCore::cachedImageForCSSValue):
(WebCore::CSSCrossfadeValue::fixedSize):
(WebCore::CSSCrossfadeValue::image):

  • css/CSSImageValue.cpp:

(WebCore::CSSImageValue::CSSImageValue):

  • css/CSSImageValue.h:

(WebCore::CSSImageValue::create):

  • page/animation/AnimationBase.cpp:

(WebCore::crossfadeBlend):
(WebCore::blendFunc):
(WebCore::RefCountedPropertyWrapper::RefCountedPropertyWrapper):
(WebCore::RefCountedPropertyWrapper::blend):
(WebCore::FillLayerRefCountedPropertyWrapper::FillLayerRefCountedPropertyWrapper):
(WebCore::FillLayerRefCountedPropertyWrapper::blend):
(WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
(WebCore::AnimationBase::ensurePropertyMap):
(WebCore::addShorthandProperties):

  • platform/graphics/CrossfadeGeneratedImage.cpp:

(WebCore::CrossfadeGeneratedImage::drawCrossfade):
(WebCore::CrossfadeGeneratedImage::draw):
(WebCore::CrossfadeGeneratedImage::drawPattern):

  • platform/graphics/CrossfadeGeneratedImage.h:
  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::setMaskImage):

Add tests of -webkit-animation (using -webkit-cross-fade) between:

  • background-image
  • border-image
  • list-style-image
  • -webkit-mask-box-image
  • -webkit-mask-image

Add the ability for animation tests to compare an animated element to a static element.

Add tests of -webkit-transition (using -webkit-cross-fade) between:

  • background-image
  • border-image
  • animations/cross-fade-background-image-expected.txt: Added.
  • animations/cross-fade-background-image.html: Added.
  • animations/cross-fade-border-image-source-expected.txt: Added.
  • animations/cross-fade-border-image-source.html: Added.
  • animations/cross-fade-list-style-image-expected.txt: Added.
  • animations/cross-fade-list-style-image.html: Added.
  • animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • animations/cross-fade-webkit-mask-box-image.html: Added.
  • animations/cross-fade-webkit-mask-image-expected.txt: Added.
  • animations/cross-fade-webkit-mask-image.html: Added.
  • animations/resources/animation-test-helpers.js:

(parseCrossFade):
(checkExpectedValue):

  • animations/resources/blue-100.png: Added.
  • animations/resources/green-100.png: Added.
  • animations/resources/stripes-100.png: Added.
  • platform/mac/animations/cross-fade-background-image-expected.png: Added.
  • platform/mac/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/mac/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/mac/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/mac/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/mac/transitions/cross-fade-background-image-expected.png: Added.
  • platform/mac/transitions/cross-fade-border-image-expected.png: Added.
  • transitions/cross-fade-background-image-expected.txt: Added.
  • transitions/cross-fade-background-image.html: Added.
  • transitions/cross-fade-border-image-expected.txt: Added.
  • transitions/cross-fade-border-image.html: Added.
  • transitions/resources/transition-test-helpers.js:

(expected):

15:00 Changeset [102387] by commit-queue@webkit.org

[chromium] Set opaque() for VideoLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=73858

Patch by Dana Jansens <danakj@chromium.org> on 2011-12-08
Reviewed by James Robinson.

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::isVideoFrameFormatOpaque):
(WebKit::WebMediaPlayerClientImpl::getCurrentFrame):

14:38 Changeset [102386] by dslomov@google.com

Merge 102317 - https://bugs.webkit.org/show_bug.cgi?id=74038
[V8][Chromium] Support legacy argument order in window.postMessage/window.webkitPostMessage.

Reviewed by David Levin.

Source/WebCore:

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::isLegacyTargetOriginDesignation):
(WebCore::handlePostMessageCallback):

LayoutTests:

  • fast/dom/Window/window-postmessage-args-expected.txt:
  • fast/dom/Window/window-postmessage-args.html: New tests for legacy argument order.
  • platform/chromium/fast/dom/Window/window-postmessage-args-expected.txt:

TBR=caseq@chromium.org
ISSUE=http://code.google.com/p/chromium/issues/detail?id=106797
Review URL: http://codereview.chromium.org/8883032

14:29 Changeset [102385] by senorblanco@chromium.org

Use Skia's implementation of Gaussian blur when accelerated filters
are enabled.
https://bugs.webkit.org/show_bug.cgi?id=73949

Reviewed by Zoltan Herczeg.

In the future, this will be covered by the SVG tests run in GPU mode.

  • WebCore.gypi:

Add FEGaussianBlurSkia.cpp to the build.

  • platform/graphics/filters/FEGaussianBlur.cpp:

(WebCore::FEGaussianBlur::platformApplySoftware):
Call out to platformApplySkia() when USE_SKIA is enabled.

  • platform/graphics/filters/FEGaussianBlur.h:

platformApplySkia() declaration.

  • platform/graphics/filters/skia: Added.
  • platform/graphics/filters/skia/FEGaussianBlurSkia.cpp: Added.

(WebCore::FEGaussianBlur::platformApplySkia):
On the Skia port, use SkBlurImageFilter for drawing
Gaussian blurs in accelerated mode.

  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::ImageBuffer::copyImage):
Implement ImageBuffer::copyImage() with DontCopyBackingStore semantics.

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

Versioning.

14:15 Changeset [102383] by lforschler@apple.com

New tag.

14:11 Changeset [102382] by cfleizach@apple.com

Tools: AX: platform/mac/accessibility/search-with-frames.html crashes
https://bugs.webkit.org/show_bug.cgi?id=74093

Reviewed by Darin Adler.

Take care of the case when an incoming element is null.

  • DumpRenderTree/AccessibilityUIElement.cpp:

(uiElementForSearchPredicateCallback):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::uiElementForSearchPredicate):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::uiElementForSearchPredicate):

LayoutTests: platform/mac/accessibility/search-with-frames.html crashes
https://bugs.webkit.org/show_bug.cgi?id=74093

Reviewed by Darin Adler.

Unskip the crashing test.

  • platform/mac/Skipped:
14:08 Changeset [102381] by commit-queue@webkit.org

[Qt] Visualize mock point ID's in the MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=74098

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-08
Reviewed by Tor Arne Vestbø.

  • MiniBrowser/qt/BrowserWindow.cpp:

(BrowserWindow::updateVisualMockTouchPoints):

  • MiniBrowser/qt/qml/MockTouchPoint.qml:
14:02 WebKit Team edited by krit@webkit.org
(diff)
13:47 Changeset [102380] by msaboff@apple.com

Add 8 bit paths for StringTypeAdapter classes
https://bugs.webkit.org/show_bug.cgi?id=73882

Reviewed by Darin Adler.

Added is8Bit() method and writeTo(LChar*) methods
to StringTypeAdapter<> classes. The writeTo(LChar*)
method can be used if is8Bit() returns true. The
non-native 8 bit classes contain ASSERT(is8Bit())
in their writeTo(LChar*).

Updated all of the various versions of tryMakeString() to
use 8 bit processing in the updated StringTypeAdapter<>
classes.

This has slight if any performance improvement on kraken.

  • runtime/UStringConcatenate.h:
  • wtf/text/StringConcatenate.h:

(WTF::tryMakeString):

  • wtf/text/StringOperators.h:

(WTF::StringAppend::is8Bit):
(WTF::StringAppend::writeTo):

13:29 Changeset [102379] by arv@chromium.org

CodeGeneratorV8: Fix issue with overloaded static conditional methods
https://bugs.webkit.org/show_bug.cgi?id=74114

Reviewed by Adam Barth.

The code generator was missing checks for Conditional for overloaded methods.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateOverloadedFunctionCallback): Generate needed #ifdefs.
(GenerateFunctionCallback): Ditto.

  • bindings/scripts/test/V8/V8TestObj.cpp: Wrap conditional methods with #ifdefs.

(WebCore::ConfigureV8TestObjTemplate):

13:27 Changeset [102378] by dmazzoni@google.com

Source/WebCore: AccessibilityController should support listening to notifications on all elements.
https://bugs.webkit.org/show_bug.cgi?id=72866

Changes accessibilitySetShouldRepostNotifications from an instance method
into a class method so that it can be used for global notification listeners,
not just for listeners on a particular object.

Reviewed by Chris Fleizach.

Test: accessibility/notification-listeners.html

  • accessibility/mac/WebAccessibilityObjectWrapper.h:
  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(+[WebAccessibilityObjectWrapper accessibilitySetShouldRepostNotifications:]):
(-[WebAccessibilityObjectWrapper accessibilityPostedNotification:]):

Tools: Accessibility: AccessibilityController should support listening to notifications on all elements.
https://bugs.webkit.org/show_bug.cgi?id=72866

Adds addNotificationListener and removeNotificationListener methods
to AccessibilityController, to listen to notifications on any element
rather than a specific element. Mac (DRT and WKTR) and Chromium (DRT)
implementations are all contained in this change.

On Mac, refactors AccessibilityNotificationHandler into its own
source file that can be used by both AccessibilityController and
AccessibilityUIElement. (Both DRT and WKTR.)

Reviewed by Chris Fleizach.

  • DumpRenderTree/AccessibilityController.cpp:

(addNotificationListenerCallback):
(removeNotificationListenerCallback):
(AccessibilityController::getJSClass):

  • DumpRenderTree/AccessibilityController.h:
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/chromium/AccessibilityController.cpp:

(AccessibilityController::AccessibilityController):
(AccessibilityController::notificationReceived):
(AccessibilityController::addNotificationListenerCallback):
(AccessibilityController::removeNotificationListenerCallback):

  • DumpRenderTree/chromium/AccessibilityController.h:
  • DumpRenderTree/gtk/AccessibilityControllerGtk.cpp:

(AccessibilityController::addNotificationListener):
(AccessibilityController::removeNotificationListener):

  • DumpRenderTree/mac/AccessibilityControllerMac.mm:

(AccessibilityController::~AccessibilityController):
(AccessibilityController::addNotificationListener):
(AccessibilityController::removeNotificationListener):

  • DumpRenderTree/mac/AccessibilityNotificationHandler.h: Added.
  • DumpRenderTree/mac/AccessibilityNotificationHandler.mm: Added.

(-[NSString createJSStringRef]):
(-[AccessibilityNotificationHandler init]):
(-[AccessibilityNotificationHandler setPlatformElement:]):
(-[AccessibilityNotificationHandler dealloc]):
(-[AccessibilityNotificationHandler setCallback:]):
(-[AccessibilityNotificationHandler startObserving]):
(-[AccessibilityNotificationHandler _notificationReceived:]):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::addNotificationListener):

  • DumpRenderTree/win/AccessibilityControllerWin.cpp:

(notificationListenerProc):
(AccessibilityController::addNotificationListener):
(AccessibilityController::removeNotificationListener):
(AccessibilityController::winNotificationReceived):
(AccessibilityController::winAddNotificationListener):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::addNotificationListener):

  • WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:

(WTR::AccessibilityController::addNotificationListener):
(WTR::AccessibilityController::removeNotificationListener):

  • WebKitTestRunner/InjectedBundle/AccessibilityController.h:

(WTR::AccessibilityController::logAccessibilityEvents):

  • WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp:

(WTR::AccessibilityTextMarker::AccessibilityTextMarker):

  • WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp:

(WTR::AccessibilityTextMarkerRange::AccessibilityTextMarkerRange):

  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityController.idl:
  • WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm: Added.

(WTR::AccessibilityController::addNotificationListener):
(WTR::AccessibilityController::removeNotificationListener):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.h: Added.
  • WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm: Added.

(-[NSString createJSStringRef]):
(-[AccessibilityNotificationHandler init]):
(-[AccessibilityNotificationHandler setPlatformElement:]):
(-[AccessibilityNotificationHandler dealloc]):
(-[AccessibilityNotificationHandler setCallback:]):
(-[AccessibilityNotificationHandler startObserving]):
(-[AccessibilityNotificationHandler _notificationReceived:]):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::AccessibilityUIElement):
(WTR::AccessibilityUIElement::verticalScrollbar):
(WTR::AccessibilityUIElement::addNotificationListener):

  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:

LayoutTests: Accessibility: AccessibilityController should support listening to notifications on all elements.
https://bugs.webkit.org/show_bug.cgi?id=72866

Previously, the Mac implementation of AccessibilityUIElement.addNotificationListener
incorrectly triggered on notifications from all elements. Now it only triggers on
notifications from the correct element, and a new addNotificationListener method
in AccessibilityController can be used to trigger on notifications from all elements.

Updates 2 tests that depended on the old incorrect behavior.

Reviewed by Chris Fleizach.

  • accessibility/notification-listeners.html: Added.
  • platform/chromium/accessibility/notification-listeners-expected.txt: Added.
  • platform/gtk/Skipped:
  • platform/mac/accessibility/aria-expanded-notifications.html:
  • platform/mac/accessibility/aria-listbox-selectedchildren-change.html:
  • platform/mac/accessibility/notification-listeners-expected.txt: Added.
  • platform/win/Skipped:
13:23 Changeset [102377] by jer.noble@apple.com

HiDPI: Switching a video element to full screen in HiDPI mode doesn't fit the screen correctly
https://bugs.webkit.org/show_bug.cgi?id=74119
rdar://problem/10356869

Reviewed by Darin Adler.

Use the Lion-only -[NSWindow convertRectToScreen:] function to convert between window
coordinates and screen coordinates.

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController enterFullScreen:]):

13:21 Changeset [102376] by lforschler@apple.com

Merged r96777.

13:15 Changeset [102375] by vsevik@chromium.org

Web Inspector: Rename createScriptCallStack() without parameters to createScriptCallStackForInspector().
https://bugs.webkit.org/show_bug.cgi?id=74120

Reviewed by Pavel Feldman.

  • bindings/js/ScriptCallStackFactory.cpp:

(WebCore::createScriptCallStackForInspector):

  • bindings/js/ScriptCallStackFactory.h:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheck):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateFunctionCallback):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):

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

(WebCore::TestObjInternal::customArgsAndExceptionCallback):

  • bindings/v8/ScriptCallStackFactory.cpp:

(WebCore::createScriptCallStackForInspector):

  • bindings/v8/ScriptCallStackFactory.h:
13:11 Changeset [102374] by lforschler@apple.com

Merged r101719.

13:07 Changeset [102373] by enne@google.com

[chromium] Remove dead code in compositor
https://bugs.webkit.org/show_bug.cgi?id=74103

Reviewed by James Robinson.

Tested via the compiler.

  • platform/graphics/chromium/LayerChromium.h:
  • platform/graphics/chromium/LayerRendererChromium.cpp:
  • platform/graphics/chromium/LayerRendererChromium.h:
13:06 Changeset [102372] by lforschler@apple.com

Merged r101532.

13:05 Changeset [102371] by commit-queue@webkit.org

[chromium] Need to adjust memory limit and viewport multipliers.
https://bugs.webkit.org/show_bug.cgi?id=74022

Patch by Eric Penner <epenner@google.com> on 2011-12-08
Reviewed by James Robinson.

  • platform/graphics/chromium/TextureManager.cpp:

(WebCore::TextureManager::highLimitBytes): Changing constants
(WebCore::TextureManager::reclaimLimitBytes): ditto

13:03 Changeset [102370] by lforschler@apple.com

Merged r101290.

12:59 Changeset [102369] by abarth@webkit.org

Chromium DEPS roll 112974 -> 113603
https://bugs.webkit.org/show_bug.cgi?id=74105

Patch by Elliot Poger <epoger@google.com> on 2011-12-08
Reviewed by Adam Barth.

  • DEPS:
12:53 Changeset [102368] by benjamin@webkit.org

Add a platform EventLoop for iOS
https://bugs.webkit.org/show_bug.cgi?id=74043

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-08
Reviewed by David Kilzer.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/ios/EventLoopIOS.mm: Added.

(WebCore::EventLoop::cycle):

12:47 Changeset [102367] by lforschler@apple.com

Merged r100483.

12:41 Changeset [102366] by pfeldman@chromium.org

Web Inspector: return node counts on the document / detached root basis
https://bugs.webkit.org/show_bug.cgi?id=74104

Reviewed by Yury Semikhatsky.

  • bindings/js/ScriptProfiler.h:
  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::domNodeCount):

  • bindings/v8/ScriptProfiler.h:
  • inspector/Inspector.json:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getDOMNodeCount):
(WebCore::InspectorMemoryAgent::InspectorMemoryAgent):

  • inspector/InspectorMemoryAgent.h:

(WebCore::InspectorMemoryAgent::create):

12:34 Changeset [102365] by tony@chromium.org

[chromium] remove headers from WebKit.gyp that moved into WebKit/chromium/public/platform
https://bugs.webkit.org/show_bug.cgi?id=74106

Reviewed by Darin Fisher.

  • WebKit.gyp:
12:29 Changeset [102364] by kling@webkit.org

RenderObject: Rename styleSlowCase() to styleInRegion().

Rubber-stamped by David Hyatt.

  • WebCore.exp.in:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::styleInRegion):

  • rendering/RenderObject.h:

(WebCore::RenderObject::style):

12:21 Changeset [102363] by ossy@webkit.org

[Qt][WK2] Unreviewed buildfix after r102352.

Source/WebKit2:

  • DerivedSources.pri:

Tools:

  • qmake/mkspecs/features/webkit2.prf:
12:16 Changeset [102362] by peter@chromium.org

[Chromium] Exclude the four RenderTableCellDeathTest death tests for Android
https://bugs.webkit.org/show_bug.cgi?id=73997

The ASSERT_DEATH macro is not yet available in Google Test when
building for Android, which causes compilation errors. This code
will be removed once support lands in the GTest version Chromium
uses. See https://bugs.webkit.org/show_bug.cgi?id=74089.

Reviewed by Julien Chaffraix.

  • tests/RenderTableCellTest.cpp:
12:11 Changeset [102361] by commit-queue@webkit.org

IndexedDB: WebKit API addition of IDBObjectStore.count() and IDBIndex.count()
https://bugs.webkit.org/show_bug.cgi?id=73685

Patch by Joshua Bell <jsbell@chromium.org> on 2011-12-08
Reviewed by Darin Fisher.

Implementation to follow - this just extends the WebKit API.

  • public/WebIDBIndex.h:

(WebKit::WebIDBIndex::count):

  • public/WebIDBObjectStore.h:

(WebKit::WebIDBObjectStore::count):

12:01 Changeset [102360] by kling@webkit.org

Optimize RenderObject::containingBlock().
<http://webkit.org/b/74109>

Reviewed by David Hyatt.

When climbing the parent chain to locate the containing block-level element,
use !isRenderBlock() to reject renderers rather than checking against an arbitrary
list of non-block renderers and then rejecting anything that isn't a block anyway.

RenderObject::containingBlock() was very hot (2.0%) when scrolling on youtube.com.
This change takes it down to 1.0% (60% of which is RenderObject::isRenderBlock().)

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

11:39 Changeset [102359] by nayankk@motorola.com

Define DEBUG_GL_COMMANDS only in debug builds.
https://bugs.webkit.org/show_bug.cgi?id=74083

Reviewed by Noam Rosenthal.

No tests added as this change does not affect functionality.

  • platform/graphics/opengl/TextureMapperGL.cpp:
11:35 Changeset [102358] by caseq@chromium.org

Unreviewed. Removed suppressions for inspector extensions tests following a fix in r10231.

  • platform/chromium/test_expectations.txt:
11:32 Changeset [102357] by rniwa@webkit.org

CompositeEditCommand should not be kept alive for undo and redo
https://bugs.webkit.org/show_bug.cgi?id=64414

Reviewed by Enrica Casucci.

This patch introduces EditCommandComposition that replaces CompositeEditCommand for
undo and redo purposes. Furthermore, we now keep a list of commands instead of a tree of commands
to unapply and reapply edit commands that composes an undoable action.

Each top-level CompositeEditCommand holds a ref-pointer to EditCommandComposition,
and applyCommandToComposite adds new SimpleEditCommands to the list.

  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::create):
(WebCore::EditCommandComposition::doApply): Never used.
(WebCore::EditCommandComposition::doUnapply):
(WebCore::EditCommandComposition::doReapply):
(WebCore::EditCommandComposition::append):
(WebCore::CompositeEditCommand::~CompositeEditCommand): Add an assertion to ensure we didn't create
a composition for CompositeEditCommands that have parents.
(WebCore::CompositeEditCommand::doUnapply): Never used.
(WebCore::CompositeEditCommand::doReapply): Never used.
(WebCore::CompositeEditCommand::ensureComposition): Creates and attaches a EditCommandComposition.
(WebCore::CompositeEditCommand::applyCommandToComposite): Append a SimpleEditCommand to the composition.

  • editing/CompositeEditCommand.h:

(WebCore::EditCommandComposition::EditCommandComposition):
(WebCore::CompositeEditCommand::composition):
(WebCore::toEditCommandComposition):
(WebCore::toCompositeEditCommand):

  • editing/DeleteButtonController.cpp: Wrap RemoveNodeCommand in RemoveTargetCommand since top level

commands are now required to be a CompositeEditCommand.
(WebCore::RemoveTargetCommand::create):
(WebCore::RemoveTargetCommand::RemoveTargetCommand):
(WebCore::RemoveTargetCommand::doApply):
(WebCore::DeleteButtonController::deleteTarget):

  • editing/EditCommand.cpp:

(WebCore::EditCommand::EditCommand): New constructor; used by EditCommandComposition.
(WebCore::EditCommand::apply): Create a composition for a top-level command.
(WebCore::EditCommand::unapply): Since we clear m_parent of SimpleEditCommand as soon as they are
added to EditCommandComposition, we can't use isTopLevelCommand() to differentiate EditCommandComposition
from SimpleEditCommand. Use isEditCommandComposition() instead.
(WebCore::EditCommand::reapply): Ditto.
(WebCore::compositionIfPossible):
(WebCore::EditCommand::setStartingSelection): Update the starting selection of EditCommandComposition.
(WebCore::EditCommand::setEndingSelection): Ditto.
(WebCore::EditCommand::setParent): Accepts a null pointer in order to avoid keeping a stale pointer in
m_parent inside SimpleEditCommand when CompositeEditCommand goes away.

  • editing/EditCommand.h:

(WebCore::EditCommand::isSimpleEditCommand):
(WebCore::EditCommand::isCompositeEditCommand):
(WebCore::EditCommand::isEditCommandComposition):
(WebCore::EditCommand::parent):
(WebCore::toSimpleEditCommand):

  • editing/Editor.cpp:

(WebCore::Editor::appliedEditing): Register a EditCommandComposition, instead of a CompositeEditCommand
to the undo stack.
(WebCore::Editor::unappliedEditing): Unapplied or reapplied commands are now always EditCommandComposition.
(WebCore::Editor::reappliedEditing):

  • editing/Editor.h:
11:25 Changeset [102356] by senorblanco@chromium.org

Add missing V8 bindings to get CSS_FILTERS to compile in Chromium.
https://bugs.webkit.org/show_bug.cgi?id=74091

Reviewed by Kenneth Russell.

Will be covered by tests in css3/filters (when enabled).

  • bindings/v8/custom/V8WebKitCSSFilterValueCustom.cpp: Added.

(WebCore::V8WebKitCSSFilterValue::indexedPropertyGetter):

11:19 Changeset [102355] by bdakin@apple.com

https://bugs.webkit.org/show_bug.cgi?id=73348
REGRESSION: Assertion when loading a page with a scrollable RenderLayer
-and corresponding-
<rdar://problem/10518918>

Reviewed by Darin Adler.

The main problem here is that certain delegate calls into AppKit for overlay
scrollbars can cause AppKit to call back into WebKit looking for more information.
The assertion happens when WebKit tells AppKit that the scroll position has
changed during a layout, and AppKit immediately asks WebKit to convert some
coordinates, and WebKit asserts that you shouldn't do that while a layout is still
happening. It's still possible for AppKit to call this delegate method while a
layout is happening, and we should guard against that. This patch, however, does
not do that.

This change instead addresses the reason this assertion started happening much
more frequently recently, which is that it recently became true that
notifyPositionChanged() can be called when the position has not changed. To fix
the assertion AND the bug that that change was intended to fix, we can just make
sure that either the position OR the scroll origin has changed before calling
notifyPositionChanged().

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::immediateScrollToPoint):

Call resetScrollOriginChanged() after the scroll instead of before so that we know
whether or not to call notifyPositionChanged().

  • platform/ScrollView.cpp:

(WebCore::ScrollView::updateScrollbars):

11:16 Changeset [102354] by aroben@apple.com

Make finding crash logs by PID work on Snow Leopard

Crash Reporter on Snow Leopard doesn't set the "app_description" extended attribute that we
were using to check the PID of the crashed process. (Crash Reporter on Lion does.) Now we
read the first line of the crash log and pull the PID out of there.

Fixes <http://webkit.org/b/74094> "webkit-patch crash-log <process> <PID>" doesn't work on
Snow Leopard

Reviewed by Darin Adler.

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

(CrashLogs._find_newest_log_darwin): Read the first line of the crash log to get the process
name and PID for the log, rather than checking the Lion-only app_description extended
attribute. We now also reject the log if the process name doesn't match what we expect.

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

(make_mock_crash_report_darwin): Added. Returns a mock crash report given a process name and
PID.
(CrashLogsTest.assertLinesEqual): Added. This is a compatibility shim around
unittest.TestCase.assertMultiLineEqual, which didn't exist before Python 2.7.
(CrashLogsTest.test_find_log_darwin): Made the mock crash reports more believable by using
the new make_mock_crash_report_darwin function. Also added tests for files that can't be
read, files that actually contain a crash log for some other process, and files that are
misformatted.

  • Scripts/webkitpy/common/system/filesystem.py: Removed FileSystem.getxattr, which is now

unused.

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

(MockFileSystem.init): Removed xattr support, which is now unused.
(MockFileSystem.open_text_file_for_reading): Changed to actually pass the file's data to
ReadableTextFileObject. This function was completely broken before!
(ReadableBinaryFileObject.init): Made the data parameter non-optional to try to prevent
bugs like the above.
(ReadableTextFileObject.init): Added. Wraps the data in a StringIO object so we can do
things like readline() and seek().

(ReadableTextFileObject.close):
(ReadableTextFileObject.read):
Added. We override the superclass implementation to account for using a StringIO object.

(ReadableTextFileObject.readline):
(ReadableTextFileObject.seek):
Added. These just call through to StringIO.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(MainTest.test_crash_log):
(MainTest.test_web_process_crash_log):
Changed to use make_mock_crash_report_darwin.

11:12 Changeset [102353] by commit-queue@webkit.org

Convert some fast/regions pixel tests to reftests
https://bugs.webkit.org/show_bug.cgi?id=73866

Patch by Jacob Goldstein <jacobg@adobe.com> on 2011-12-08
Reviewed by Darin Adler.

  • fast/regions/positioned-objects-block-static-in-regions-expected.html: Added.
  • fast/regions/positioned-objects-block-static-in-rtl-regions-expected.html: Added.
  • fast/regions/positioned-objects-block-static-spanning-regions-expected.html: Added.
  • fast/regions/positioned-objects-block-static-spanning-regions-rtl-expected.html: Added.
  • platform/efl/fast/regions/positioned-objects-block-static-in-regions-expected.png: Removed.
  • platform/efl/fast/regions/positioned-objects-block-static-in-regions-expected.txt: Removed.
  • platform/efl/fast/regions/positioned-objects-block-static-in-rtl-regions-expected.png: Removed.
  • platform/efl/fast/regions/positioned-objects-block-static-in-rtl-regions-expected.txt: Removed.
  • platform/efl/fast/regions/positioned-objects-block-static-spanning-regions-expected.png: Removed.
  • platform/efl/fast/regions/positioned-objects-block-static-spanning-regions-expected.txt: Removed.
  • platform/efl/fast/regions/positioned-objects-block-static-spanning-regions-rtl-expected.png: Removed.
  • platform/efl/fast/regions/positioned-objects-block-static-spanning-regions-rtl-expected.txt: Removed.
  • platform/mac/fast/regions/positioned-objects-block-static-in-regions-expected.png: Removed.
  • platform/mac/fast/regions/positioned-objects-block-static-in-regions-expected.txt: Removed.
  • platform/mac/fast/regions/positioned-objects-block-static-in-rtl-regions-expected.png: Removed.
  • platform/mac/fast/regions/positioned-objects-block-static-in-rtl-regions-expected.txt: Removed.
  • platform/mac/fast/regions/positioned-objects-block-static-spanning-regions-expected.png: Removed.
  • platform/mac/fast/regions/positioned-objects-block-static-spanning-regions-expected.txt: Removed.
  • platform/mac/fast/regions/positioned-objects-block-static-spanning-regions-rtl-expected.png: Removed.
  • platform/mac/fast/regions/positioned-objects-block-static-spanning-regions-rtl-expected.txt: Removed.
11:06 Changeset [102352] by jonlee@apple.com

[WK2] Add permissions support (73960)
https://bugs.webkit.org/show_bug.cgi?id=73960
<rdar://problem/10357008>

Reviewed by Darin Adler.

Source/WebKit2:

  • DerivedSources.make: Moved notification files to its own directory. Need to add that path.
  • WebKit2.xcodeproj/project.pbxproj: New header and impl files.
  • Target.pri: Ditto.
  • GNUmakefile.am: Ditto.
  • win/WebKit2.vcproj: Ditto.
  • win/WebKit2Common.vsprops: Add path to Notifications directory.

Implement permission functions, which go through permission request manager.

  • WebProcess/WebCoreSupport/WebNotificationClient.cpp:

(WebKit::WebNotificationClient::requestPermission):
(WebKit::WebNotificationClient::cancelRequestsForPermission):
(WebKit::WebNotificationClient::checkPermission):

New NotificationPermissionRequestManager to make and cancel permission requests, and to retrieve current
policy.

  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp: Added.

(WebKit::generateRequestID):
(WebKit::NotificationPermissionRequestManager::create):
(WebKit::NotificationPermissionRequestManager::NotificationPermissionRequestManager):
(WebKit::NotificationPermissionRequestManager::startRequest): Keep track of the provided callback once
policy decision is made.
(WebKit::NotificationPermissionRequestManager::cancelRequest):
(WebKit::NotificationPermissionRequestManager::permissionLevel): Retrieve level through a synchronous
message to the proxy.
(WebKit::NotificationPermissionRequestManager::didReceiveNotificationPermissionDecision): Invoke the callback.

  • WebProcess/Notifications/NotificationPermissionRequestManager.h: Added.

(WebKit::isRequestIDValid): Make sure any provided request IDs are valid.

Added new NotificationPermissionRequest class.

  • UIProcess/Notifications/NotificationPermissionRequest.cpp: Added.

(WebKit::NotificationPermissionRequest::create):
(WebKit::NotificationPermissionRequest::NotificationPermissionRequest):
(WebKit::NotificationPermissionRequest::allow): Notify manager of decision.
(WebKit::NotificationPermissionRequest::deny): Ditto.
(WebKit::NotificationPermissionRequest::invalidate): Disassociate with manager.
(WebKit::NotificationPermissionRequest::type):

  • UIProcess/Notifications/NotificationPermissionRequest.h: Added.

WKAPI support for NotificationPermissionRequest:

  • Shared/API/c/WKBase.h:
  • Shared/APIObject.h:
  • UIProcess/API/C/WKAPICast.h:
  • UIProcess/API/C/WKNotificationPermissionRequest.cpp: Added.

(WKNotificationPermissionRequestGetTypeID):
(WKNotificationPermissionRequestAllow):
(WKNotificationPermissionRequestDeny):

  • UIProcess/API/C/WKNotificationPermissionRequest.h: Added.

Other additions to WK API:

  • UIProcess/API/C/WKNotificationProvider.h: Added new callback for WKNotificationProviders, to return policy

for a given security origin.

  • UIProcess/API/C/WKPage.h: Added new callback to WKPageUIClient to ask user to decide on policy.

New NotificationPermissionRequestManagerProxy to create requests.

  • UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp: Added.

(WebKit::NotificationPermissionRequestManagerProxy::NotificationPermissionRequestManagerProxy):
(WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests):
(WebKit::NotificationPermissionRequestManagerProxy::createRequest):
(WebKit::NotificationPermissionRequestManagerProxy::didReceiveNotificationPermissionDecision):

  • UIProcess/Notifications/NotificationPermissionRequestManagerProxy.h: Added.

Added new message to notification manager: NotificationPermissionLevel, to retrieve policy. The current
JS API retrieves the permission synchronously, so the message needs to be sent synchronously also.

  • UIProcess/Notifications/WebNotificationManagerProxy.messages.in: Moved from Source/WebKit2/UIProcess/WebNotificationManagerProxy.messages.in.
  • UIProcess/Notifications/WebNotificationProvider.cpp: Moved from Source/WebKit2/UIProcess/WebNotificationProvider.cpp.

(WebKit::WebNotificationProvider::policyForNotificationPermissionAtOrigin): Added.

  • UIProcess/Notifications/WebNotificationProvider.h: Moved from Source/WebKit2/UIProcess/WebNotificationProvider.h.
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveSyncMessage): Boilerplate to forward messages to notification manager.

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp: Moved from Source/WebKit2/UIProcess/WebNotificationManagerProxy.cpp.

(WebKit::WebNotificationManagerProxy::create):
(WebKit::WebNotificationManagerProxy::WebNotificationManagerProxy):
(WebKit::WebNotificationManagerProxy::invalidate):
(WebKit::WebNotificationManagerProxy::initializeProvider):
(WebKit::WebNotificationManagerProxy::didReceiveMessage):
(WebKit::WebNotificationManagerProxy::didReceiveSyncMessage):
(WebKit::WebNotificationManagerProxy::show):
(WebKit::WebNotificationManagerProxy::cancel):
(WebKit::WebNotificationManagerProxy::didDestroyNotification):
(WebKit::WebNotificationManagerProxy::notificationPermissionLevel): Retrieve the policy from the provider.
(WebKit::WebNotificationManagerProxy::providerDidShowNotification):
(WebKit::WebNotificationManagerProxy::providerDidClickNotification):
(WebKit::WebNotificationManagerProxy::providerDidCloseNotifications):

  • UIProcess/Notifications/WebNotificationManagerProxy.h: Moved from Source/WebKit2/UIProcess/WebNotificationManagerProxy.h.

(WebKit::WebNotificationManagerProxy::clearContext):
(WebKit::WebNotificationManagerProxy::type):

Added NotificationPermissionRequestManagerProxy to WebPageProxy, to allow a request for permission to
go through to the UI client. Added new message to WebPageProxy, RequestNotificationPermission.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::close): Invalidate pending requests.
(WebKit::WebPageProxy::processDidCrash): Ditto.
(WebKit::WebPageProxy::requestNotificationPermission): Forward request to UI client.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::decidePolicyForNotificationPermissionRequest):

  • UIProcess/WebUIClient.h:

Added new message DidReceiveNotificationPermissionDecision. The WebPage forwards the message to the
permission request manager.

  • WebProcess/WebPage/WebPage.messages.in: Added new message DidReceiveNotificationPermissionDecision
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::notificationPermissionRequestManager): Create manager on request.
(WebKit::WebPage::didReceiveNotificationPermissionDecision):

  • WebProcess/WebPage/WebPage.h:

Moving files to Notifications/ subdirectory.

  • UIProcess/Notifications/WebNotification.cpp: Moved from Source/WebKit2/UIProcess/WebNotification.cpp.
  • UIProcess/Notifications/WebNotification.h: Moved from Source/WebKit2/UIProcess/WebNotification.h.

Tools:

Add null function item to comply with added callback to WKPageUIClient.

  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createOtherPage):
(WTR::TestController::initialize):

10:55 Changeset [102351] by commit-queue@webkit.org

Fixing support for static conditional overloaded functions.
https://bugs.webkit.org/show_bug.cgi?id=74068

Patch by Kaustubh Atrawalkar <kaustubh@motorola.com> on 2011-12-08
Reviewed by Adam Barth.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation): Pushing "static" keyword after condition "#if".

  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:

(WebDOMTestObj::overloadedMethod1): Added newly generated bindings.

  • bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto.
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto.

(webkit_dom_test_obj_overloaded_method1):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto.
  • bindings/scripts/test/JS/JSTestObj.cpp: Ditto.

(WebCore::jsTestObjConstructorFunctionOverloadedMethod11):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod12):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod1):

  • bindings/scripts/test/JS/JSTestObj.h: Ditto.
  • bindings/scripts/test/ObjC/DOMTestObj.h: Ditto.
  • bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto.

(-[DOMTestObj overloadedMethod1:]):

  • bindings/scripts/test/TestObj.idl: Ditto.
  • bindings/scripts/test/V8/V8TestObj.cpp: Ditto.

(WebCore::TestObjInternal::overloadedMethod11Callback):
(WebCore::TestObjInternal::overloadedMethod12Callback):
(WebCore::TestObjInternal::overloadedMethod1Callback):
(WebCore::ConfigureV8TestObjTemplate):

10:53 Changeset [102350] by commit-queue@webkit.org

Added a test for css number types problem.
It's testing the css number types parser, where 'px' defined like escape sequences (\70\78) or uppercase / lowercase.
https://bugs.webkit.org/show_bug.cgi?id=72007

Patch by Szilard Ledan <Ledan-Muntean.Szilard@stud.u-szeged.hu> on 2011-12-08
Reviewed by Darin Adler.

  • fast/css/parsing-css-number-types-expected.txt: Added.
  • fast/css/parsing-css-number-types.html: Added.
10:50 Changeset [102349] by kling@webkit.org

Remove EventListenerMap destructor.
<http://webkit.org/b/74096>

Reviewed by Darin Adler.

Let the compiler generate ~EventListenerMap(). We only needed it when the hash map
was managing raw pointers.

We're losing the no-iterators assertion from clear() by doing this, but that was
superfluous to begin with - we were just using it to avoid duplicating code.

  • dom/EventListenerMap.cpp:
  • dom/EventListenerMap.h:
10:38 Changeset [102348] by commit-queue@webkit.org

[Qt] Visualize mock points in the Qt MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=74074

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-08
Reviewed by Tor Arne Vestbø.

  • MiniBrowser/qt/BrowserWindow.cpp:

(BrowserWindow::updateVisualMockTouchPoints):

  • MiniBrowser/qt/BrowserWindow.h:
  • MiniBrowser/qt/MiniBrowser.qrc:
  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::notify):
(MiniBrowserApplication::sendTouchEvent):

  • MiniBrowser/qt/MiniBrowserApplication.h:
  • MiniBrowser/qt/icons/touchpoint.png: Added.
  • MiniBrowser/qt/qml/MockTouchPoint.qml: Added.
10:23 Changeset [102347] by tony@chromium.org

[chromium] Rebaseline printing/width-overflow.html on Chromium Mac Leopard.

  • platform/chromium-cg-mac-snowleopard/printing/width-overflow-expected.png: Renamed from LayoutTests/platform/chromium-cg-mac/printing/width-overflow-expected.png.
  • platform/chromium-linux/printing/width-overflow-expected.txt: Removed.
  • platform/chromium-mac-leopard/printing/width-overflow-expected.png: Added.
  • platform/chromium-mac-snowleopard/printing/width-overflow-expected.txt: Removed.
  • platform/chromium/printing/width-overflow-expected.txt: Renamed from LayoutTests/platform/chromium-cg-mac/printing/width-overflow-expected.txt.
09:57 Changeset [102346] by nayankk@motorola.com

[WebKit2] Initialize threading in UI process.
https://bugs.webkit.org/show_bug.cgi?id=70127

Reviewed by Anders Carlsson.

  • CMakeLists.txt:
  • GNUmakefile.am:
  • Shared/APIObject.cpp: Added.

(WebKit::APIObject::APIObject):

  • Shared/APIObject.h:
  • Target.pri:
  • WebKit2.xcodeproj/project.pbxproj:
  • win/WebKit2.vcproj:
09:25 Changeset [102345] by lforschler@apple.com

Merged r99912.

09:23 Changeset [102344] by lforschler@apple.com

Merged r99911.

08:36 Changeset [102343] by dmazzoni@google.com

Unreviewed, skipping failing test platform/mac/accessibility/search-with-frames.html

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

[Qt] [WK2] Directly composited images doesn't render
https://bugs.webkit.org/show_bug.cgi?id=74058

Patch by Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com> on 2011-12-08
Reviewed by Noam Rosenthal.

Attach image to WebGraphicsLayer even if layerTreeTileClient is not set
and create/assign remote image tiles later during sync.

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::setContentsNeedsDisplay):
(WebCore::WebGraphicsLayer::setContentsToImage):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):

08:06 Changeset [102341] by hausmann@webkit.org

REGRESSION(r102334): Various Qt WK2 layout tests crash

Reviewed by Tor Arne Vestbø.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::editorState): Add missing null pointer check for the editable
element (scope) before calling innerText.

07:46 Changeset [102340] by hausmann@webkit.org

[Qt] WebKitTestRunner crashes with debug builds https://bugs.webkit.org/show_bug.cgi?id=74090

Reviewed by Tor Arne Vestbø.

Source/WebKit2:

Export private C++ API style platformInitialize function needed
by low-level WTR.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebView::platformInitialize):

  • UIProcess/API/qt/qquickwebview_p.h:

Tools:

  • WebKitTestRunner/qt/TestControllerQt.cpp:

(WTR::TestController::platformInitialize): Call QQuickWebView::platformInitialize
to ensure WTF/JSC threading is initialized.

07:45 Changeset [102339] by commit-queue@webkit.org

Provide more specific error description for SocketStreamError.
https://bugs.webkit.org/show_bug.cgi?id=74066

Patch by Takashi Toyoshima <toyoshim@chromium.org> on 2011-12-08
Reviewed by Martin Robinson.

No new tests because this change just improve error messages for unexpected failures.

  • platform/network/soup/SocketStreamError.h: Add an argument for passing error description.

(WebCore::SocketStreamError::SocketStreamError):

  • platform/network/soup/SocketStreamHandleSoup.cpp: Add error description for SocketStreamError.

(WebCore::SocketStreamHandle::connected):
(WebCore::SocketStreamHandle::readBytes):
(WebCore::SocketStreamHandle::platformSend):
(WebCore::SocketStreamHandle::platformClose):

07:32 Changeset [102338] by jocelyn.turcotte@nokia.com

[Qt] Fix non-animated pinch-zoom scale commit.
https://bugs.webkit.org/show_bug.cgi?id=74007

Reviewed by Kenneth Rohde Christiansen.

The update deferrer object was only destroyed at the end of the animation
and wouldn't be if the pinch-zoom was ended within legal bounds.
This patch also makes sure that the deferrer isn't destroyed and re-created
once the animation is started if it was already there.

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::QtViewportInteractionEngine::animateItemRectVisible):
(WebKit::QtViewportInteractionEngine::scaleAnimationStateChanged):
(WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):
(WebKit::QtViewportInteractionEngine::pinchGestureEnded):

  • UIProcess/qt/QtViewportInteractionEngine.h:
07:30 Changeset [102337] by hausmann@webkit.org

REGRESSION(r101683): QQuickWebView doesn't work with OpenGL/ES 2.0
https://bugs.webkit.org/show_bug.cgi?id=74077

Reviewed by Kenneth Rohde Christiansen.

Replace Desktop OpenGL idiom of using gl_Vertex with a simple vertex attribute
that's tied to the same register 0 (by being the first in the array).

  • UIProcess/API/qt/qquickwebpage.cpp:

(PageProxyMaterialShader::attributeNames): Define "vertex" attribute, which is
bound to register 0, which is the current vertex.
(PageProxyMaterialShader::vertexShader): Use the vertex attribute instead of the
built-in gl_Vertex, which is only present in Desktop GL.

07:29 Changeset [102336] by jocelyn.turcotte@nokia.com

[Qt] Fix the memory leak of AC layer update message contents on the UI process.
https://bugs.webkit.org/show_bug.cgi?id=74012

Reviewed by Noam Rosenthal.

Since the messages didn't have a virtual destructor, the destructor
of child class members wouldn't be called and would cause the all tile
update buffers, contained in a QImage, to be leaked as well.

  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeMessageToRenderer::~LayerTreeMessageToRenderer):

06:50 Changeset [102335] by dpranke@chromium.org

fix build-webkit --chromium after breakage in r102201
https://bugs.webkit.org/show_bug.cgi?id=74031

Reviewed by Tony Chang.

  • Scripts/webkitdirs.pm:

(buildChromium):

06:27 Changeset [102334] by kenneth@webkit.org

Upsteam the Qt changes to the EditorState https://bugs.webkit.org/show_bug.cgi?id=74080

Reviewed by Simon Hausmann.

We are not doing the serialization manually due to it not being a POD
structure anymore in the case of Qt.

  • GNUmakefile.am:
  • Shared/EditorState.h:

(WebKit::EditorState::EditorState):

  • Target.pri:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::respondToChangedSelection):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::editorState):

  • win/WebKit2.vcproj:
06:23 Changeset [102333] by mihnea@adobe.com

[CSSRegions][CSSOM] Implement NamedFlow interface
https://bugs.webkit.org/show_bug.cgi?id=66642

Reviewed by David Hyatt.

Add WebKitNamedFlow to support the NamedFlow interface. No methods are
yet implemented on this interface. The NamedFlow object is a live object.
The first time user asks for it, it gets a valid JS object whose properties
will reflect the changes to the flow thread.

Source/WebCore:

Tests: fast/regions/webkit-named-flow-existing-flow.html

fast/regions/webkit-named-flow-flow-added.html
fast/regions/webkit-named-flow-modified-flow.html
fast/regions/webkit-named-flow-non-existing-flow.html
fast/regions/webkit-named-flow-removed-flow.html
fast/regions/webkit-named-flow-same-object.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/gobject/GNUmakefile.am:
  • dom/DOMAllInOne.cpp:
  • dom/Document.cpp:

(WebCore::Document::webkitGetFlowByName):

  • dom/Document.h:
  • dom/Document.idl:
  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):

  • dom/WebKitNamedFlow.cpp: Added.

(WebCore::WebKitNamedFlow::WebKitNamedFlow):
(WebCore::WebKitNamedFlow::~WebKitNamedFlow):

  • dom/WebKitNamedFlow.h: Added.

(WebCore::WebKitNamedFlow::create):

  • dom/WebKitNamedFlow.idl: Added.
  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::ensureNamedFlow):

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

(WebCore::RenderObject::createObject):

  • rendering/RenderView.cpp:

(WebCore::RenderView::ensureRenderFlowThreadWithName):

  • rendering/RenderView.h:

LayoutTests:

  • fast/dom/Window/window-properties-expected.txt:
  • fast/regions/webkit-named-flow-existing-flow-expected.txt: Added.
  • fast/regions/webkit-named-flow-existing-flow.html: Added.
  • fast/regions/webkit-named-flow-flow-added-expected.txt: Added.
  • fast/regions/webkit-named-flow-flow-added.html: Added.
  • fast/regions/webkit-named-flow-modified-flow-expected.txt: Added.
  • fast/regions/webkit-named-flow-modified-flow.html: Added.
  • fast/regions/webkit-named-flow-non-existing-flow-expected.txt: Added.
  • fast/regions/webkit-named-flow-non-existing-flow.html: Added.
  • fast/regions/webkit-named-flow-removed-flow-expected.txt: Added.
  • fast/regions/webkit-named-flow-removed-flow.html: Added.
  • fast/regions/webkit-named-flow-same-object-expected.txt: Added.
  • fast/regions/webkit-named-flow-same-object.html: Added.
  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/mac/fast/dom/Window/window-properties-expected.txt:
  • platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
  • platform/qt/fast/dom/Window/window-properties-expected.txt:
  • platform/win/fast/dom/Window/window-properties-expected.txt:
05:04 Changeset [102332] by haraken@chromium.org

Unreviewed, rolling out r102280.
http://trac.webkit.org/changeset/102280
https://bugs.webkit.org/show_bug.cgi?id=74031

Chromium/Windows build is broken

  • Scripts/webkitdirs.pm:

(buildChromium):

03:52 Changeset [102331] by hausmann@webkit.org

2011-12-08 Gopal Raghavan <gopal.1.raghavan@nokia.com>

[Qt] cleanup qmlplugin
https://bugs.webkit.org/show_bug.cgi?id=73834

Reviewed by Tor Arne Vestbø.

Removed empty folder qmlplugin.

03:24 Changeset [102330] by commit-queue@webkit.org

Unreviewed, rolling out r102321.
http://trac.webkit.org/changeset/102321
https://bugs.webkit.org/show_bug.cgi?id=74072

"Breaks all Chromium clobbered builds" (Requested by apavlov_
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-08

  • 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.
03:09 Changeset [102329] by nayankk@motorola.com

Adding myself to committers list.

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
02:46 Changeset [102328] by commit-queue@webkit.org

Refactoring: Editor::requestCheckingFor should take SpellCheckRequest object.
https://bugs.webkit.org/show_bug.cgi?id=74033

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-12-08
Reviewed by Hajime Morita.

SpellChecker::requestCheckingFor takes SpellCheckRequest object in order to make it easy to
pass necessary information to requestCheckingFor.

No new tests. Covered by existing tests.

  • editing/Editor.cpp:

(WebCore::Editor::replaceSelectionWithFragment):

Uses the new interface.

(WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): ditto.

  • editing/SpellChecker.cpp:

(WebCore::SpellCheckRequest::SpellCheckRequest):
(WebCore::SpellCheckRequest::~SpellCheckRequest):
(WebCore::SpellCheckRequest::create):

Creates a new SpellCheckRequest object.

(WebCore::SpellChecker::requestCheckingFor):

Uses the new interface.

(WebCore::SpellChecker::didCheck):

  • editing/SpellChecker.h:

(WebCore::SpellCheckRequest::setSequence):
(WebCore::SpellCheckRequest::sequence):
(WebCore::SpellCheckRequest::checkingRange):
(WebCore::SpellCheckRequest::paragraphRange):
(WebCore::SpellCheckRequest::text):
(WebCore::SpellCheckRequest::mask):
(WebCore::SpellCheckRequest::rootEditableElement):

02:44 Changeset [102327] by commit-queue@webkit.org

Fix failed layout test, bufferedAmount-after-close-in-busy.html
https://bugs.webkit.org/show_bug.cgi?id=73666

Originally the failed layout test use simple_wsh server side WebSocket
handler. But this handler starts closing handshake after a while and
it bring flakiness on the test.
Now the test use echo_wsh instead of simple_wsh. It never perform
server initiated closing handshake.

Patch by Takashi Toyoshima <toyoshim@chromium.org> on 2011-12-08
Reviewed by Kent Tamura.

  • http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html:
  • platform/gtk/Skipped:
02:37 Changeset [102326] by kbalazs@webkit.org

Unreviewed gardening.

Remove duplicated entries from skipped list.

  • platform/qt-5.0/Skipped:
02:26 Changeset [102325] by ossy@webkit.org

[WK2] Unreviewed gardening.

WebKitTestRunner needs layoutTestController.setEditingBehavior
https://bugs.webkit.org/show_bug.cgi?id=42689

  • platform/wk2/Skipped: Skip new failing tests.
02:12 Changeset [102324] by commit-queue@webkit.org

Unreviewed, rolling out r102323.
http://trac.webkit.org/changeset/102323
https://bugs.webkit.org/show_bug.cgi?id=74069

Caused Chromium and GTK build failure (Requested by bashi on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-08

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • testing/Internals.cpp:

(WebCore::Internals::getPageScaleFactor):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit2:

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

LayoutTests:

  • compositing/geometry/fixed-position-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-composited-page-scale.html:
  • compositing/geometry/fixed-position-iframe-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-iframe-composited-page-scale.html:
  • compositing/geometry/fixed-position-transform-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-transform-composited-page-scale.html:
  • compositing/scaling/tiled-layer-recursion.html:
  • fast/dom/Element/scale-page-bounding-client-rect.html:
  • fast/dom/Element/scale-page-client-rects.html:
  • fast/dom/Range/scale-page-bounding-client-rect.html:
  • fast/dom/Range/scale-page-client-rects.html:
  • fast/events/scale-and-scroll-body.html:
  • fast/events/scale-and-scroll-iframe-body.html:
  • fast/events/scale-and-scroll-iframe-window.html:
  • fast/events/scale-and-scroll-window.html:
  • fast/events/script-tests/page-scaled-mouse-click-iframe.js:

(iframeLoaded):

  • fast/events/script-tests/page-scaled-mouse-click.js:
  • fast/events/scroll-in-scaled-page-with-overflow-hidden.html:
  • fast/events/touch/page-scaled-touch-gesture-click.html:
  • fast/frames/frame-set-rotation-hit.html:
  • fast/frames/frame-set-scaling-hit.html:
  • fast/frames/iframe-double-scale-contents.html:
  • fast/repaint/background-scaling.html:
  • fast/repaint/scale-page-shrink.html:
  • fast/transforms/selection-bounds-in-transformed-view.html:
01:18 Changeset [102323] by fsamuel@chromium.org

Move scalePageBy from eventSender to window.internals
https://bugs.webkit.org/show_bug.cgi?id=64512

Reviewed by Simon Fraser.

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

Added setPageScaleFactor to window.internals.
Renamed window.internals.getPageScaleFactor to window.internals.pageScaleFactor
to match the webkit style.

  • testing/Internals.cpp:

(WebCore::Internals::pageScaleFactor):
(WebCore::Internals::setPageScaleFactor):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit2:

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

LayoutTests:

Updated layout tests to use window.internals.setPageScaleFactor.

  • compositing/geometry/fixed-position-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-composited-page-scale.html:
  • compositing/geometry/fixed-position-iframe-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-iframe-composited-page-scale.html:
  • compositing/geometry/fixed-position-transform-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-transform-composited-page-scale.html:
  • compositing/scaling/tiled-layer-recursion.html:
  • fast/dom/Element/scale-page-bounding-client-rect.html:
  • fast/dom/Element/scale-page-client-rects.html:
  • fast/dom/Range/scale-page-bounding-client-rect.html:
  • fast/dom/Range/scale-page-client-rects.html:
  • fast/events/scale-and-scroll-body.html:
  • fast/events/scale-and-scroll-iframe-body.html:
  • fast/events/scale-and-scroll-iframe-window.html:
  • fast/events/scale-and-scroll-window.html:
  • fast/events/script-tests/page-scaled-mouse-click-iframe.js:

(iframeLoaded):

  • fast/events/script-tests/page-scaled-mouse-click.js:
  • fast/events/scroll-in-scaled-page-with-overflow-hidden.html:
  • fast/events/touch/page-scaled-touch-gesture-click.html:
  • fast/frames/frame-set-rotation-hit.html:
  • fast/frames/frame-set-scaling-hit.html:
  • fast/frames/iframe-double-scale-contents.html:
  • fast/repaint/background-scaling.html:
  • fast/repaint/scale-page-shrink.html:
  • fast/transforms/selection-bounds-in-transformed-view.html:
01:01 Writing Layout Tests for DumpRenderTree edited by shinyak@google.com
(diff)
00:48 Changeset [102322] by bashi@chromium.org

Unreviewed, remove duplicate test expectations.

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

  • platform/chromium/test_expectations.txt:
00:20 Changeset [102321] 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.
Note: See TracTimeline for information about the timeline view.