⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Sep 18, 2012:

11:56 PM Changeset in webkit [128970] by commit-queue@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

[EFL] Generate baseline for media/video-controls-visible-audio-only.html
https://bugs.webkit.org/show_bug.cgi?id=97073

Unreviewed EFL gardening.

Generate missing baseline for media/video-controls-visible-audio-only.html
on EFL port.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-18

  • platform/efl/media/video-controls-visible-audio-only-expected.txt: Added.
11:48 PM WebKitGTK/WebKit2Roadmap edited by Carlos Garcia Campos
User agent done! (diff)
11:35 PM Changeset in webkit [128969] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Move several test cases to efl-wk1 TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=97072

Unreviewed EFL gardening.

Move several test cases to efl-wk1 TestExpectations
since they don't fail on the WebKit2 bots.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-18

  • platform/efl-wk1/TestExpectations:
  • platform/efl/TestExpectations:
11:19 PM Changeset in webkit [128968] by bashi@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] SkiaGetGlyphWidthAndExtents() should invert y-axis
https://bugs.webkit.org/show_bug.cgi?id=97067

Reviewed by Yuta Kitamura.

Invert skBounds.fTop and skBounds.height(). Don't call hb_font_set_ppem().

No new tests. Arabic shadda (U+0651) should be placed more higher when Arabic lam (U+0644) follows it.
Tests under svg/W3C-I18N contain such sequences so these tests cover this change.

  • platform/graphics/harfbuzz/ng/HarfBuzzNGFaceSkia.cpp:

(WebCore::SkiaGetGlyphWidthAndExtents):
(WebCore::HarfBuzzNGFace::createFont):

10:57 PM Changeset in webkit [128967] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

[EFL][WK2] Add javascript popup API.
https://bugs.webkit.org/show_bug.cgi?id=95672

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-09-18
Reviewed by Gyuyoung Kim.

Add smart class member function for javascript alert(), confirm() and prompt().

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_run_javascript_alert):
(ewk_view_run_javascript_confirm):
(ewk_view_run_javascript_prompt):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_private.h:
  • UIProcess/API/efl/ewk_view_ui_client.cpp:

(runJavaScriptAlert):
(runJavaScriptConfirm):
(runJavaScriptPrompt):
(ewk_view_ui_client_attach):

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

Added unit test for javascript popup smart class member function.
(checkAlert):
(TEST_F):
(checkConfirm):
(checkPrompt):

10:41 PM Changeset in webkit [128966] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[WK2][WTR] CodeGeneratorTestRunner could keep original copyright.
https://bugs.webkit.org/show_bug.cgi?id=96181

Patch by Kangil Han <kangil.han@samsung.com> on 2012-09-18
Reviewed by Daniel Bates.

This patch enabled derived files, in DerivedSources/InjectedBundle, to keep original copyright.

  • WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:

(new):
(_parseLicenseBlock):
(_parseLicenseBlockFromFile):
(_defaultLicenseBlock):
(_licenseBlock):
(_generateHeaderFile):
(_generateImplementationFile):

10:26 PM Changeset in webkit [128965] by bashi@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Don't treat tab as spaces for word-end in HarfBuzzShaper
https://bugs.webkit.org/show_bug.cgi?id=97068

Reviewed by Yuta Kitamura.

No new tests. fast/text/wide-zero-width-space.html should cover this change.

  • platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp:

(WebCore::normalizeCharacters): Don't treat tab as space.

9:21 PM Changeset in webkit [128964] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Check settings before registering AVFoundation media engine.
https://bugs.webkit.org/show_bug.cgi?id=97048
<rdar://problem/12313594>

Reviewed by Dan Bernstein.

Fix the bug introduced in r122676.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::installedMediaEngines): Uncomment the call to check AVFoundation settings.

8:39 PM Changeset in webkit [128963] by commit-queue@webkit.org
  • 32 edits
    2 adds in trunk

Chromium: Scrollbar with tickmarks doesn't respond to clicks
https://bugs.webkit.org/show_bug.cgi?id=96049

Patch by Sailesh Agrawal <sail@chromium.org> on 2012-09-18
Reviewed by Beth Dakin.

.:

Update exported symbols.

  • Source/autotools/symbols.filter:

Source/Platform:

Added isAlphaLocked and setIsAlphaLocked.

  • chromium/public/WebScrollbar.h:

(WebScrollbar):

Source/WebCore:

Currently when a scrollbar has tickmarks its forced to be visible by setting its alpha to 1.0. The alpha value is reset to its old value at the end of the drawing routine. This approach doesn't work with the hit testing code which relies on the scrollbar's alpha value

Unfortunately there doesn't seem to be anyway to force a scrollbar to be visible. The closest API is -[NSScrollerImpPair lockOverlayScrollerState:]. Unfortunately this locks both the horizontal and vertical scrollbar. It also doesn't expand the knob width.

My fix simply adds a new alphaLocked attribute to the scrollbar. If this attribute is set to true then hit testing will return true.

Test: fast/scrolling/scrollbar-tickmarks-hittest.html

  • WebCore.exp.in:
  • WebCore.order:
  • page/Settings.cpp:

(WebCore):
(WebCore::Settings::setUsesOverlayScrollbars): Sets the usesOverlayScrollbars flag.
(WebCore::Settings::usesOverlayScrollbars): Gets the usesOverlayScrollbars flag.

  • page/Settings.h:

(Settings):

  • platform/Scrollbar.cpp:

(WebCore::Scrollbar::Scrollbar):

  • platform/Scrollbar.h:

(WebCore::Scrollbar::isAlphaLocked):
(WebCore::Scrollbar::setIsAlphaLocked):
(Scrollbar):

  • platform/ScrollbarThemeClient.h:

(ScrollbarThemeClient):

  • platform/chromium/ScrollbarThemeChromiumMac.mm:

(WebCore::ScrollbarThemeChromiumMac::paint): Updated to set and unset the alphaLocked attribute.

  • platform/chromium/support/WebScrollbarImpl.cpp:

(WebKit::WebScrollbarImpl::isAlphaLocked):
(WebKit):
(WebKit::WebScrollbarImpl::setIsAlphaLocked):

  • platform/chromium/support/WebScrollbarImpl.h:

(WebScrollbarImpl):

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

(WebCore::CCScrollbarLayerImpl::CCScrollbarLayerImpl):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::isAlphaLocked):
(WebCore):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::setIsAlphaLocked):

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

(CCScrollbar):
(CCScrollbarLayerImpl):

  • platform/mac/NSScrollerImpDetails.mm:

(WebCore::recommendedScrollerStyle): Check the usesOverlayScrollbars setting to see if overlay scrollbars should be forced on.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::shouldScrollbarParticipateInHitTesting): Updated to check the alphaLocked attribute.

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::reset): Resets the usesOverlayScrollbars setting.
(WebCore::InternalSettings::setUsesOverlayScrollbars): Sets the usesOverlayScrollbars setting.
(WebCore):

  • testing/InternalSettings.h:

(InternalSettings):

  • testing/InternalSettings.idl: Add a new setUsesOverlayScrollbars function.

Source/WebKit/chromium:

Pipe isAlphaLocked and setIsAlphaLocked.

  • src/WebPluginScrollbarImpl.cpp:

(WebKit::WebPluginScrollbarImpl::isAlphaLocked):
(WebKit):
(WebKit::WebPluginScrollbarImpl::setIsAlphaLocked):

  • src/WebPluginScrollbarImpl.h:

(WebPluginScrollbarImpl):

  • src/WebScrollbarThemeClientImpl.cpp:

(WebKit::WebScrollbarThemeClientImpl::isAlphaLocked):
(WebKit):
(WebKit::WebScrollbarThemeClientImpl::setIsAlphaLocked):

  • src/WebScrollbarThemeClientImpl.h:

(WebScrollbarThemeClientImpl):

  • tests/ScrollbarLayerChromiumTest.cpp:

Source/WebKit2:

Update exported symbols.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

LayoutTests:

  • fast/scrolling/scrollbar-tickmarks-hittest-expected.txt: Added.
  • fast/scrolling/scrollbar-tickmarks-hittest.html: Added.
8:33 PM Changeset in webkit [128962] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] Add log macros for EINA_LOG_DOM_XXX series
https://bugs.webkit.org/show_bug.cgi?id=97061

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-09-18
Reviewed by Gyuyoung Kim.

EFL Webkit2 is using the EINA_LOG_DOM_XXX series in several places to log a message on the specified domain and format.
This patch adds log macros to simplify these logging codes.

  • UIProcess/API/efl/ewk_main.cpp:

(ewk_init):

  • UIProcess/API/efl/ewk_private.h:
  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_webprocess_crashed):

8:08 PM Changeset in webkit [128961] by noel.gordon@gmail.com
  • 1 edit
    10 adds in trunk/LayoutTests

Add partial load tests for PNG images
https://bugs.webkit.org/show_bug.cgi?id=95707

Reviewed by Adam Barth.

Partial load test: receive a partial number of image bytes and stall forever. The
partial image should be decoded and drawn and the blue <img> background should be
visible.

Progressive load test: receive a partial number of image bytes, stall for 1 second
and then continue to receive all the image bytes. The entire test image should be
decoded and drawn and the blue <img> background should be visible.

  • fast/images/resources/dice.png: Added: test image has alpha transparency.
  • http/tests/images/png-partial-load-expected.png: Added.
  • http/tests/images/png-partial-load-expected.txt: Added.
  • http/tests/images/png-partial-load.html: Added.
  • http/tests/images/png-progressive-load-expected.png: Added.
  • http/tests/images/png-progressive-load-expected.txt: Added.
  • http/tests/images/png-progressive-load.html: Added.
  • platform/chromium/http/tests/images/png-partial-load-expected.png: Added.
  • platform/mac/http/tests/images/png-partial-load-expected.png: Added.
7:37 PM Changeset in webkit [128960] by Martin Robinson
  • 7 edits in trunk/Source/WebKit2

[WebKit2] [GTK] Add API for controlling the user agent
https://bugs.webkit.org/show_bug.cgi?id=95697

Reviewed by Carlos Garcia Campos.

Add API for changing the user agent in WebKit2. This adds two styles of
setting the user agent: complete override and a method that just inserts
the application name and version, but preserves the carefully crafted user agent
in the library.

  • UIProcess/API/gtk/WebKitSettings.cpp:

(_WebKitSettingsPrivate): Added a new field to store the user agent.
This is stored in the private data structure, because we can only
set the user agent when attaching the settings to the page.
(webKitSettingsSetProperty): Add hooks for the new user agent property.
(webKitSettingsGetProperty): Ditto.
(webkit_settings_class_init): Ditto.
(webkitSettingsAttachSettingsToPage): Ditto.
(webkit_settings_get_user_agent): Added.
(webkit_settings_set_user_agent): Added.
(webkit_settings_set_user_agent_with_application_name): Added.

  • UIProcess/API/gtk/WebKitSettings.h: Added new methods.
  • UIProcess/API/gtk/WebKitWebView.cpp: Update the glue for the settings

when attaching and detaching from WebViews.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added new methods to

the documentation.

  • UIProcess/API/gtk/tests/TestWebKitSettings.cpp: Test the new user agent

property.
(testWebKitSettingsUserAgent): Ditto.
(beforeAll): Ditto.

  • UIProcess/gtk/WebPageProxyGtk.cpp:

(WebKit::WebPageProxy::standardUserAgent): Now use the shared WebCore
code when setting the user agent.

6:36 PM WebKitIDL edited by toybabyyou@gmail.com
(diff)
6:36 PM Changeset in webkit [128959] by haraken@chromium.org
  • 3 edits
    2 adds in trunk

[V8] Notification.requestPermission(function() {alert();}) crashes
https://bugs.webkit.org/show_bug.cgi?id=94462

Reviewed by Adam Barth.

Source/WebCore:

Since Notification.requestPermission() is a static method,
we need to use getExecutionContext() instead of retrieving a context
from a DOM object.

Test: http/tests/notifications/notification-request-permission.html

  • bindings/v8/custom/V8NotificationCustom.cpp:

(WebCore::V8Notification::requestPermissionCallback):

LayoutTests:

The added test checks if Notification.requestPermission() does not crash.

  • http/tests/notifications/notification-request-permission-expected.txt: Added.
  • http/tests/notifications/notification-request-permission.html: Added.
6:34 PM Drosera edited by toybabyyou@gmail.com
(diff)
6:33 PM Changeset in webkit [128958] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Implement PageClientImpl::isViewFocused.
https://bugs.webkit.org/show_bug.cgi?id=97015

Reviewed by Gyuyoung Kim.

WebKit2/Efl always returns true for PageClientImpl::isViewFocused.
So window.onblur events will not be generated when webview lost focus.

This patch implements isViewFocused to return the current focus of webview.

  • UIProcess/API/efl/PageClientImpl.cpp:

(WebKit::PageClientImpl::isViewFocused):

6:32 PM WebInspector edited by toybabyyou@gmail.com
(diff)
6:20 PM Changeset in webkit [128957] by fpizlo@apple.com
  • 24 edits in trunk/Source/JavaScriptCore

DFG should not call out to C++ every time that it tries to put to an object that doesn't yet have array storage
https://bugs.webkit.org/show_bug.cgi?id=96983

Reviewed by Oliver Hunt.

Introduce more polymorphism into the DFG's array mode support. Use that to
introduce the notion of effectul array modes, where the check for the mode
will perform actions necessary to ensure that we have the mode we want, if
the object is not already in that mode. Also added profiling support for
checking if an object is of a type that would not allow us to create array
storage (like a typed array or a string for example).

This is a ~2x speed-up on loops that transform an object that did not have
indexed storage into one that does.

  • JSCTypedArrayStubs.h:

(JSC):

  • bytecode/ArrayProfile.cpp:

(JSC::ArrayProfile::computeUpdatedPrediction):

  • bytecode/ArrayProfile.h:

(JSC::ArrayProfile::ArrayProfile):
(JSC::ArrayProfile::mayInterceptIndexedAccesses):
(ArrayProfile):

  • dfg/DFGAbstractState.cpp:

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

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::fromObserved):
(DFG):
(JSC::DFG::modeAlreadyChecked):
(JSC::DFG::modeToString):

  • dfg/DFGArrayMode.h:

(DFG):
(JSC::DFG::modeUsesButterfly):
(JSC::DFG::isSlowPutAccess):
(JSC::DFG::benefitsFromStructureCheck):
(JSC::DFG::isEffectful):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getArrayMode):
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::getPropertyStorageLoadElimination):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::checkArray):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::byValIsPure):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasArrayMode):

  • dfg/DFGNodeType.h:

(DFG):

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

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::arrayify):
(DFG):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • runtime/Arguments.h:

(Arguments):

  • runtime/JSNotAnObject.h:

(JSNotAnObject):

  • runtime/JSObject.h:

(JSObject):
(JSC::JSObject::ensureArrayStorage):

  • runtime/JSString.h:

(JSC::JSString::createStructure):

6:04 PM Changeset in webkit [128956] by shinyak@chromium.org
  • 3 edits in trunk/Source/WebCore

[Refactoring] ContentDistributor::distributeSelectionsTo should not change ContentDistribution pool.
https://bugs.webkit.org/show_bug.cgi?id=96993

Reviewed by Dimitri Glazkov.

Since we would like to reuse ContentDistribution pool, it should not be updated in
ContentDistributor::distributeSelectionsTo. Instead, we should have Vector<bool> to indicate an element is
distributed or not.

No new tests, simple refactoring.

  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistributor::distribute):
(WebCore::ContentDistributor::distributeSelectionsTo):

  • html/shadow/ContentDistributor.h:

(ContentDistributor):

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

Adjust expectation for fast/workers/storage/interrupt-database.html
https://bugs.webkit.org/show_bug.cgi?id=84696

Unreviewed, expectations change.

It looks like this test is just kinda slow and probably won't timeout if we mark it SLOW.

  • platform/chromium/TestExpectations:
5:44 PM Changeset in webkit [128954] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] word-spacing-characters{,-complex} no longer fail on Mac.
https://bugs.webkit.org/show_bug.cgi?id=94008
https://bugs.webkit.org/show_bug.cgi?id=94003

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
5:41 PM Changeset in webkit [128953] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] gradient-with-scaled-ancestor passes on mac lion gpu
http://bugs.webkit.org/show_bug.cgi?id=96441

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
5:38 PM Changeset in webkit [128952] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Adjust expectation for fast/css/sticky/sticky-left-percentage.html
http://webkit.org/b/95136

Unreviewed, expectations change.

The test is only failing on win and linux now.

  • platform/chromium/TestExpectations:
5:35 PM Changeset in webkit [128951] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] overflow-auto-with-touch-toggle is no longer failing.
https://bugs.webkit.org/show_bug.cgi?id=94353

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
5:32 PM Changeset in webkit [128950] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] fast/css/nested-rounded-corners.html is no longer failing.
https://bugs.webkit.org/show_bug.cgi?id=94063

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
5:26 PM Changeset in webkit [128949] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] font-scale-factor.html and simple-paragraph.html are no longer failing.
https://bugs.webkit.org/show_bug.cgi?id=90741

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
5:23 PM Changeset in webkit [128948] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] fast/table/border-collapsing/cached-69296.html is no longer failing.
https://bugs.webkit.org/show_bug.cgi?id=70298

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
5:20 PM Changeset in webkit [128947] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] fast/js/kde/GlobalObject.html is no longer failing.
https://bugs.webkit.org/show_bug.cgi?id=75468

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
5:15 PM Changeset in webkit [128946] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Mark LayoutTests/fullscreen/exit-full-screen-iframe.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=90704

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
5:11 PM Changeset in webkit [128945] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] 2d.imageData.object.round and canvas-ImageData-behavior are no longer failing
https://bugs.webkit.org/show_bug.cgi?id=94246

Unreviewed, expectations change.

[chromium] The following suppressions appear to be no longer needed
(the tests are passing), so I'm removing them:

BUGWK94246 : canvas/philip/tests/2d.imageData.object.round.html = TEXT
BUGWK94246 : platform/chromium/virtual/gpu/canvas/philip/tests/2d.imageData.object.round.html = TEXT
BUGWK94246 : fast/canvas/canvas-ImageData-behaviour.html = TEXT
BUGWK94246 : platform/chromium/virtual/gpu/fast/canvas/canvas-ImageData-behaviour.html = TEXT

  • platform/chromium/TestExpectations:
5:06 PM Changeset in webkit [128944] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

fast/dom/Window/anonymous-slot-with-changes.html is no longer failing.
http://code.google.com/p/chromium/issues/detail?id=33538

Unreviewed, expectations change.

  • platform/chromium/TestExpectations:
4:49 PM Changeset in webkit [128943] by commit-queue@webkit.org
  • 18 edits
    2 adds in trunk

Title string should be changed when document.title is set to .
https://bugs.webkit.org/show_bug.cgi?id=96793

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-09-18
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

DocumentLoader::setTitle() function returns without anything (changing
m_pageTitle and calling FrameLoaderClient::setTitle()) when new title
string is empty.
So, when document.title is set to , title string of a browser cannot
be changed.
For applying the change of document.title properly, empty string check
should be removed.

Test: fast/dom/title-text-property-assigning-empty-string.html

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::setTitle):

Source/WebKit2:

Added unit test for setting document.title and checking the title
string with title,changed signal and ewk_view_title_get() function.

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(TEST_F):

Tools:

Change dump format of dumpTitleChanges more understandable.
Uses single quotation marks for the title string.

  • DumpRenderTree/blackberry/DumpRenderTree.cpp:

(BlackBerry::WebKit::DumpRenderTree::didReceiveTitleForFrame):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::didReceiveTitle):

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::onFrameTitleChanged):

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(webViewTitleChanged):

  • DumpRenderTree/mac/FrameLoadDelegate.mm:

(-[FrameLoadDelegate webView:didReceiveTitle:forFrame:]):

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::titleChanged):

  • DumpRenderTree/win/FrameLoadDelegate.cpp:

(FrameLoadDelegate::didReceiveTitle):

  • DumpRenderTree/wx/DumpRenderTreeWx.cpp:

(LayoutWebViewEventHandler::OnReceivedTitleEvent):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::didReceiveTitleForFrame):

LayoutTests:

Added layout tests for assigning empty string to title text.
And modified expected results according to the change of
dumpTitleChanges.

  • fast/dom/title-text-property-2-expected.txt: Modified expected result.
  • fast/dom/title-text-property-assigning-empty-string-expected.txt: Added.
  • fast/dom/title-text-property-assigning-empty-string.html: Added.
  • fast/dom/title-text-property-expected.txt: Modified expected result.
  • fast/dom/title-text-property.html: Apply modified dumpTitleChanges.
4:19 PM Changeset in webkit [128942] by hclam@chromium.org
  • 3 edits
    3 deletes in trunk/Source/WebKit/chromium

Unreviewed, rolling out r128939.
http://trac.webkit.org/changeset/128939
https://bugs.webkit.org/show_bug.cgi?id=96135

Failing test_shell_tests.

  • WebKit.gypi:
  • src/WebImageSkia.cpp:

(WebKit::WebImage::fromData):
(WebKit::WebImage::framesFromData):

  • tests/WebImageTest.cpp: Removed.
  • tests/data/black-and-white.ico: Removed.
  • tests/data/white-1x1.png: Removed.
3:43 PM Changeset in webkit [128941] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

fast/forms/search-event-delay.html is asserting in markAllMisspellingsAndBadGrammarInRanges()
https://bugs.webkit.org/show_bug.cgi?id=82761

Reviewed by Ryosuke Niwa.

Speculative fix for this assertion: have InternalSettings save
and restore the value of the "unifiedTextCheckerEnabled" setting
between tests, so that tests change the value of this setting don't
affect later tests.

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):

  • testing/InternalSettings.h:

(Backup):

3:38 PM Changeset in webkit [128940] by Lucas Forschler
  • 1 copy in branches/safari-534.58-branch

New Branch.

3:29 PM Changeset in webkit [128939] by hclam@chromium.org
  • 3 edits
    3 adds in trunk/Source/WebKit/chromium

[chromium] WebImage should use ImageDecoder directly
https://bugs.webkit.org/show_bug.cgi?id=96135

Reviewed by Adam Barth.

This patch is for preparation of deferred image decoding.
ImageSource will be used as a portal to access deferred image decoder
by BitmapImage, it should not be accessible through WebKit APIs.

WebImage now calls ImageDecoder directly which is the actual
implementation of an image decoder.

Tests: WebImageTest.PNGImage

WebImageTest.ICOImage

  • WebKit.gypi:
  • src/WebImageSkia.cpp:

(WebKit::WebImage::fromData):
(WebKit::WebImage::framesFromData):

  • tests/WebImageTest.cpp: Added.

(WebKit):
(WebKit::readFile):
(WebKit::TEST):

  • tests/data/black-and-white.ico: Added.
  • tests/data/white-1x1.png: Added.
3:26 PM Changeset in webkit [128938] by Lucas Forschler
  • 2 edits in branches/safari-536.27-branch/Source/WebCore

Merged r128845.

3:26 PM Changeset in webkit [128937] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Include PhantomArguments in DFGDisassembly
https://bugs.webkit.org/show_bug.cgi?id=97043

Reviewed by Geoffrey Garen.

  • dfg/DFGNode.h:

(JSC::DFG::Node::willHaveCodeGenOrOSR):

3:03 PM Changeset in webkit [128936] by Lucas Forschler
  • 2 edits in branches/safari-536.27-branch/Source/WebCore

Merged r126666. <rdar://problem/12030952>

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

Division by zero crash in BackingStore::scroll
https://bugs.webkit.org/show_bug.cgi?id=97046
<rdar://problem/11722564>

Reviewed by Dan Bernstein.

It appears that DrawingAreaImpl::scroll can be called with an empty scroll rect. Do nothing
if that's the case. Also, assert that the scrolling rect in BackingStoreMac is never empty.

  • UIProcess/mac/BackingStoreMac.mm:

(WebKit::BackingStore::scroll):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::scroll):

2:39 PM Changeset in webkit [128934] by Lucas Forschler
  • 4 edits in branches/safari-536.27-branch/Source

Versioning.

2:38 PM Changeset in webkit [128933] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Use didCancel and didSucceed instead of didCheckCancel and didCheckSucceed
https://bugs.webkit.org/show_bug.cgi?id=97033

Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-09-18
Reviewed by Rob Buis.

Using these preferred public methods (the latter has a note to be made private) ensures that
the right SpellChecker object is being called during the callback in spellCheckingRequestProcessed
and spellCheckingRequestCancelled.

Internally reviewed by Mike Fenton.

By referencing the TextCheckingRequest object's methods, we don't need to keep track of the associated
SpellChecker for each request. Removing much of the code that was put in place incorrectly to achieve this.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::InputHandler):
(BlackBerry::WebKit::InputHandler::requestCheckingOfString):
(BlackBerry::WebKit::InputHandler::spellCheckingRequestCancelled):
(BlackBerry::WebKit::InputHandler::spellCheckingRequestProcessed):
(BlackBerry::WebKit::InputHandler::getSpellChecker):

  • WebKitSupport/InputHandler.h:

(InputHandler):

2:37 PM Changeset in webkit [128932] by jchaffraix@webkit.org
  • 2 edits
    2 adds in trunk/LayoutTests

More unreviewed rebaseline after r128906.

  • platform/chromium-mac/fast/invalid/residual-style-expected.txt:
  • platform/chromium-win-xp/fast/invalid/residual-style-expected.txt: Added.
  • platform/chromium-win-xp/tables/mozilla/bugs/bug56563-expected.png: Added.
2:31 PM Changeset in webkit [128931] by ojan@chromium.org
  • 1 edit
    5 adds in trunk/LayoutTests

http://trac.webkit.org/changeset/128912 caused these tests to start failing.
Looks like a garden-o-matic/webkit-patch bug.

  • platform/chromium-linux/css3/filters/filter-change-repaint-composited-expected.png: Added.
  • platform/chromium-linux/css3/filters/filter-change-repaint-expected.png: Added.
  • platform/chromium-linux/css3/filters/filter-repaint-child-layers-expected.png: Added.
  • platform/chromium-linux/css3/filters/filter-repaint-composited-fallback-crash-expected.png: Added.
  • platform/chromium-linux/css3/filters/filter-repaint-composited-fallback-expected.png: Added.
2:28 PM Changeset in webkit [128930] by Lucas Forschler
  • 1 copy in branches/safari-536.27-branch

New Branch.

2:27 PM Changeset in webkit [128929] by fpizlo@apple.com
  • 4 edits in trunk/LayoutTests

Unreviewed gardening after http://trac.webkit.org/changeset/128928

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/Skipped:
2:17 PM Changeset in webkit [128928] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r128802): It made some JS tests crash
https://bugs.webkit.org/show_bug.cgi?id=97001

Reviewed by Mark Hahnenberg.

IndexingHeaderInlineMethods was incorrectly assuming that if the HasArrayStorage bit is clear, then that means that indexing payload capacity is zero.

  • runtime/IndexingHeaderInlineMethods.h:

(JSC::IndexingHeader::preCapacity):
(JSC::IndexingHeader::indexingPayloadSizeInBytes):

1:40 PM Changeset in webkit [128927] by commit-queue@webkit.org
  • 7 edits
    2 copies
    1 move
    3 adds
    1 delete in trunk

Text Autosizing: Ignore constrained heights in certain circumstances.
https://bugs.webkit.org/show_bug.cgi?id=96848

Patch by John Mellor <johnme@chromium.org> on 2012-09-18
Reviewed by Julien Chaffraix.

Source/WebCore:

Ignore constrained heights on html and body elements, as some sites
(e.g. wikipedia) set height:100% on these, without intending to
constrain the height of descendants.

Also ignore constrained heights on ancestors of floats and out-of-flow
positioned elements with no height set, since the height of these is
determined independently from their ancestors.

Test: fast/text-autosizing/constrained-height-body.html

fast/text-autosizing/constrained-out-of-flow.html
fast/text-autosizing/constrained-then-float-ancestors.html
fast/text-autosizing/constrained-then-position-absolute-ancestors.html
fast/text-autosizing/constrained-then-position-fixed-ancestors.html

  • rendering/TextAutosizer.cpp:

(WebCore::contentHeightIsConstrained):

Adjusted constrainedness algorithm.

LayoutTests:

Added 3 tests, updated 2, and removed 1. See below.

  • fast/text-autosizing/constrained-height-body-expected.html: Added.
  • fast/text-autosizing/constrained-height-body.html: Added.

Checks that constrained height html & body are ignored.

  • fast/text-autosizing/constrained-then-overflow-then-positioned-ancestors-expected.html: Removed.
  • fast/text-autosizing/constrained-then-overflow-then-positioned-ancestors.html: Removed.

Removed because this situation is no longer possible now that
heightless position:absolute elements are always unconstrained.

  • fast/text-autosizing/constrained-out-of-flow-expected.html: Added.
  • fast/text-autosizing/constrained-out-of-flow.html: Added.

Checks that floats and out-of-flow positioned elements do not ignore
constraints on themselves.

  • fast/text-autosizing/constrained-then-float-ancestors-expected.html: Added.
  • fast/text-autosizing/constrained-then-float-ancestors.html: Added.

Checks that floats ignore constraints on ancestors.

  • fast/text-autosizing/constrained-then-position-absolute-ancestors-expected.html:
  • fast/text-autosizing/constrained-then-position-absolute-ancestors.html:

Added position:relative to emphasize that the ancestor's constrained
height is actually being ignored, not just skipped over; and updated
explanation.

  • fast/text-autosizing/constrained-then-position-fixed-ancestors-expected.html:
  • fast/text-autosizing/constrained-then-position-fixed-ancestors.html:

Updated explanation (since the test still passes, but for a
different reason).

1:35 PM Changeset in webkit [128926] by cevans@google.com
  • 1 edit in branches/chromium/1229/Source/WebKit/chromium/src/WebWorkerClientImpl.cpp

Merge 128415
BUG=147592
Review URL: https://codereview.chromium.org/10951014

1:34 PM Changeset in webkit [128925] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1229

Merge 128263
BUG=147592
Review URL: https://codereview.chromium.org/10948013

1:07 PM Changeset in webkit [128924] by tommyw@google.com
  • 6 edits in trunk/Source

MediaStream API: Create a flag to enable PeerConnection00
https://bugs.webkit.org/show_bug.cgi?id=96989

Reviewed by Adam Barth.

Adding the functionality to separately enable/disable PeerConnection00.
For now it is enabled by default.

Source/WebCore:

Not testable, nor likely to cause issues.

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore):

  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::deprecatedPeerConnectionEnabled):
(WebCore::RuntimeEnabledFeatures::setDeprecatedPeerConnectionEnabled):
(WebCore::RuntimeEnabledFeatures::webkitPeerConnection00Enabled):
(RuntimeEnabledFeatures):

Source/WebKit/chromium:

  • public/WebRuntimeFeatures.h:

(WebRuntimeFeatures):

  • src/WebRuntimeFeatures.cpp:

(WebKit::WebRuntimeFeatures::enableDeprecatedPeerConnection):
(WebKit):
(WebKit::WebRuntimeFeatures::isDeprecatedPeerConnectionEnabled):

12:55 PM Changeset in webkit [128923] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Date picker isn't inputting after 'OK'
https://bugs.webkit.org/show_bug.cgi?id=97031

PR208052

Patch by Jessica Cao <jecao@rim.com> on 2012-09-18
Reviewed by Rob Buis

Checking for !values.contains("-1") will match valid strings like "2012-09-18". Use value != "-1" instead.

  • WebCoreSupport/DatePickerClient.cpp:

(WebCore::DatePickerClient::setValueAndClosePopup):

12:37 PM Changeset in webkit [128922] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg is failing
https://bugs.webkit.org/show_bug.cgi?id=93589

  • platform/mac/Skipped: Skipping the test on Mac.
12:26 PM Changeset in webkit [128921] by yoli@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Popup page should reference the client with a weak pointer
https://bugs.webkit.org/show_bug.cgi?id=97028

Reviewed by Rob Buis.

RIM PR# 209847.
Internally reviewed by Mike Fenton.

Store the pointer in a ref-coutned shared object, and clear the pointer
when the client is going to be destroyed, so it won't be accessed by
the JS function afterwards.

  • WebCoreSupport/PagePopupBlackBerry.cpp:

(WebCore::PagePopupBlackBerry::PagePopupBlackBerry):
(WebCore::PagePopupBlackBerry::~PagePopupBlackBerry):
(WebCore::PagePopupBlackBerry::init):
(WebCore::setValueAndClosePopupCallback):
(WebCore::popUpExtensionFinalize):
(WebCore::PagePopupBlackBerry::installDOMFunction):
(WebCore::PagePopupBlackBerry::closePopup):

  • WebCoreSupport/PagePopupBlackBerry.h:

(PagePopupBlackBerry):
(SharedClientPointer):
(WebCore::PagePopupBlackBerry::SharedClientPointer::SharedClientPointer):
(WebCore::PagePopupBlackBerry::SharedClientPointer::clear):
(WebCore::PagePopupBlackBerry::SharedClientPointer::get):

12:09 PM Changeset in webkit [128920] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, add missing newline to expectation for test only run
as part of chromium's content_browsertests.

  • storage/indexeddb/basics-shared-workers-expected.txt:
11:58 AM Changeset in webkit [128919] by ojan@chromium.org
  • 2 edits in trunk/LayoutTests

Remove lines for tests that haven't failed on any Chromium bot for the last 500 runs.

  • platform/chromium/TestExpectations:
11:56 AM Changeset in webkit [128918] by kareng@chromium.org
  • 1 add in branches/chromium/1270/codereview.settings

adding for easy drover

11:54 AM Changeset in webkit [128917] by kareng@chromium.org
  • 1 copy in branches/chromium/1270

creating m23 chrome branch for webkit

11:52 AM Changeset in webkit [128916] by jchaffraix@webkit.org
  • 5 edits in trunk/LayoutTests

Rebaseline after r128906. All the differences were expected.

  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug56563-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug56563-expected.png:
  • platform/gtk/fast/invalid/residual-style-expected.txt:
  • platform/mac/fast/invalid/residual-style-expected.txt:
11:26 AM Changeset in webkit [128915] by ojan@chromium.org
  • 6 edits
    8 moves in trunk/LayoutTests

Complete some forgotten rebaselines. The new results match other ports/platforms.

  • fast/block/float/024-expected.txt: Renamed from LayoutTests/platform/efl/fast/block/float/024-expected.txt.
  • fast/block/margin-collapse/025-expected.txt: Renamed from LayoutTests/platform/efl/fast/block/margin-collapse/025-expected.txt.
  • fast/block/margin-collapse/block-inside-inline/025-expected.txt: Renamed from LayoutTests/platform/efl/fast/block/margin-collapse/block-inside-inline/025-expected.txt.
  • fast/block/margin-collapse/empty-clear-blocks-expected.txt: Renamed from LayoutTests/platform/efl/fast/block/margin-collapse/empty-clear-blocks-expected.txt.
  • platform/chromium-mac-snowleopard/fast/block/float/024-expected.png:
  • platform/chromium-mac-snowleopard/fast/block/margin-collapse/empty-clear-blocks-expected.png:
  • platform/chromium-mac/fast/block/float/024-expected.png:
  • platform/chromium-mac/fast/block/float/024-expected.txt: Renamed from LayoutTests/platform/gtk/fast/block/float/024-expected.txt.
  • platform/chromium-mac/fast/block/margin-collapse/025-expected.txt: Renamed from LayoutTests/platform/gtk/fast/block/margin-collapse/025-expected.txt.
  • platform/chromium-mac/fast/block/margin-collapse/block-inside-inline/025-expected.txt: Renamed from LayoutTests/platform/gtk/fast/block/margin-collapse/block-inside-inline/025-expected.txt.
  • platform/chromium-mac/fast/block/margin-collapse/empty-clear-blocks-expected.png:
  • platform/chromium-mac/fast/block/margin-collapse/empty-clear-blocks-expected.txt: Renamed from LayoutTests/platform/gtk/fast/block/margin-collapse/empty-clear-blocks-expected.txt.
  • platform/chromium/TestExpectations:
11:18 AM Changeset in webkit [128914] by commit-queue@webkit.org
  • 25 edits
    8 deletes in trunk

Revert 128780, 128676, 128645
https://bugs.webkit.org/show_bug.cgi?id=97022

Patch by Bo Liu <boliu@chromium.org> on 2012-09-18
Reviewed by Adam Barth.

I made these revisions to add in-place reload behavior to ImagesEnabled setting.
Reverting this for now due to them causing performance regression in
chromium, possibly caused by increased calls to
PermissionClient::imageAllowed.

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

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

(WebCore::FrameLoader::didBeginDocument):

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::willSendRequest):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::load):

  • loader/cache/CachedImage.h:

(WebCore::CachedImage::stillNeedsLoad):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::didAddClient):

  • loader/cache/CachedResource.h:
  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::CachedResourceLoader):
(WebCore::CachedResourceLoader::requestImage):
(WebCore::CachedResourceLoader::canRequest):
(WebCore::CachedResourceLoader::determineRevalidationPolicy):
(WebCore::CachedResourceLoader::setAutoLoadImages):

  • loader/cache/CachedResourceLoader.h:

(CachedResourceLoader):

  • page/Settings.cpp:

(WebCore::setLoadsImagesAutomaticallyInAllFrames):
(WebCore::Settings::Settings):
(WebCore::Settings::setLoadsImagesAutomatically):
(WebCore::Settings::loadsImagesAutomaticallyTimerFired):
(WebCore::Settings::setImagesEnabled):

  • page/Settings.h:

(Settings):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setLangAttributeAwareFormControlUIEnabled):

  • testing/InternalSettings.h:

(Backup):
(InternalSettings):

  • testing/InternalSettings.idl:

Source/WebKit2:

  • win/WebKit2.def:

LayoutTests:

  • fast/loader/display-image-unset-allows-cached-image-load-expected.txt: Removed.
  • fast/loader/display-image-unset-allows-cached-image-load.html: Removed.
  • fast/loader/display-image-unset-can-block-image-and-can-reload-in-place-expected.txt: Removed.
  • fast/loader/display-image-unset-can-block-image-and-can-reload-in-place.html: Removed.
  • fast/loader/images-enabled-unset-can-block-image-and-can-reload-in-place-expected.txt: Removed.
  • fast/loader/images-enabled-unset-can-block-image-and-can-reload-in-place.html: Removed.
  • fast/loader/resources/image1.html: Removed.
  • fast/loader/resources/image2.html: Removed.
  • platform/chromium/http/tests/permissionclient/image-permissions-expected.txt:
  • platform/chromium/permissionclient/image-permissions-expected.txt:
  • platform/chromium/permissionclient/image-permissions.html:
  • platform/chromium/permissionclient/resources/image.html:
  • platform/wk2/Skipped:
11:15 AM Changeset in webkit [128913] by sergio@webkit.org
  • 1 edit
    1 add
    1 delete in trunk/LayoutTests

[GTK] [WK2] Replace Skipped with TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=97029

Reviewed by Martin Robinson.

Replace the Skipped file with a TestExpectations file which adds
lots of semantics.

  • platform/gtk-wk2/Skipped: Removed.
  • platform/gtk-wk2/TestExpectations: Added.
11:12 AM Changeset in webkit [128912] by ojan@chromium.org
  • 5 edits
    5 adds in trunk/LayoutTests

Rebaseline tests. Mostly failing due to slight pixel differences.

  • platform/chromium-win/css3/filters/crash-hw-sw-switch-expected.png:
  • platform/chromium-win/css3/filters/effect-brightness-clamping-expected.png:
  • platform/chromium-win/css3/filters/effect-brightness-expected.png:

These two results are darker now, but this matches the mac/linux results.

  • platform/chromium-win/css3/filters/filter-change-repaint-composited-expected.png: Added.
  • platform/chromium-win/css3/filters/filter-change-repaint-expected.png: Added.
  • platform/chromium-win/css3/filters/filter-repaint-child-layers-expected.png: Added.
  • platform/chromium-win/css3/filters/filter-repaint-composited-fallback-crash-expected.png: Added.
  • platform/chromium-win/css3/filters/filter-repaint-composited-fallback-expected.png: Added.
  • platform/chromium/TestExpectations:
11:09 AM Changeset in webkit [128911] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skipping large number of tests that have been failing on Windows.
https://bugs.webkit.org/show_bug.cgi?id=97026

Due to the state of the windows bots a large number of tests have been failing for quite some time and it is difficult to tell when the failure started.
For now I'm adding these tests to the skip list to get the bots greener and will come back to them later.

  • platform/win/Skipped:
11:02 AM Changeset in webkit [128910] by commit-queue@webkit.org
  • 6 edits in trunk

Web Inspector: Set focus on the ExtensionPanel's iframe when it is selected
https://bugs.webkit.org/show_bug.cgi?id=96148

Patch by John J. Barton <johnjbarton@chromium.org> on 2012-09-18
Reviewed by Vsevolod Vlasov.

Source/WebCore:

ExtensionView ctor calls setDefaultFocusedElement with its iframe,
ExtensionPanel ctor calls setDefaultFocusedElement with the extensionView
and ExtensionPanel's setDefaultFocusedElement calls its grandparent impl

Tests: Added hasFocus test to extensions/extension-panel.html

  • inspector/front-end/ExtensionPanel.js:

(WebInspector.ExtensionPanel):
(WebInspector.ExtensionPanel.prototype.defaultFocusedElement):

  • inspector/front-end/ExtensionView.js:

(WebInspector.ExtensionView):

LayoutTests:

Add one line to verify that the panel's document has focus after show

  • inspector/extensions/extensions-panel-expected.txt:
  • inspector/extensions/extensions-panel.html:
11:00 AM Changeset in webkit [128909] by ojan@chromium.org
  • 35 edits in trunk/LayoutTests

Rebaseline tests failing due to expected slight pixel differences.

  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
  • platform/chromium-linux/svg/custom/feComponentTransfer-Discrete-expected.png:
  • platform/chromium-linux/svg/custom/feComponentTransfer-Gamma-expected.png:
  • platform/chromium-linux/svg/custom/feComponentTransfer-Linear-expected.png:
  • platform/chromium-linux/svg/custom/feComponentTransfer-Table-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEComponentTransferElement-dom-tableValues-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-tableValues-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Discrete-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Gamma-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Linear-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Table-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEComponentTransferElement-dom-tableValues-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-tableValues-prop-expected.png:
  • platform/chromium-mac/css3/filters/effect-combined-expected.png:
  • platform/chromium-mac/css3/filters/effect-opacity-expected.png:
  • platform/chromium-mac/css3/filters/effect-reference-ordering-expected.png:
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
  • platform/chromium-mac/svg/custom/feComponentTransfer-Discrete-expected.png:
  • platform/chromium-mac/svg/custom/feComponentTransfer-Gamma-expected.png:
  • platform/chromium-mac/svg/custom/feComponentTransfer-Linear-expected.png:
  • platform/chromium-mac/svg/custom/feComponentTransfer-Table-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEComponentTransferElement-dom-tableValues-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-tableValues-prop-expected.png:
  • platform/chromium-win/css3/filters/effect-combined-expected.png:
  • platform/chromium-win/css3/filters/effect-opacity-expected.png:
  • platform/chromium-win/css3/filters/effect-reference-ordering-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
  • platform/chromium-win/svg/custom/feComponentTransfer-Discrete-expected.png:
  • platform/chromium-win/svg/custom/feComponentTransfer-Gamma-expected.png:
  • platform/chromium-win/svg/custom/feComponentTransfer-Linear-expected.png:
  • platform/chromium-win/svg/custom/feComponentTransfer-Table-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEComponentTransferElement-dom-tableValues-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-tableValues-prop-expected.png:
  • platform/chromium/TestExpectations:
10:57 AM Changeset in webkit [128908] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

WTFString::show doesn't dump non-ASCII characters in a readable manner
https://bugs.webkit.org/show_bug.cgi?id=96749

Patch by Glenn Adams <glenn@skynav.com> on 2012-09-18
Reviewed by Benjamin Poulain.

Dump non-ASCII characters in a useful form for debugging.

  • wtf/text/WTFString.cpp:

(asciiDebug):
Dump non-ASCII characters (i.e., UTF-16 code elements) as well as non-printable ASCII characters
using \uXXXX format. Also escape \ as
in order to remove ambiguity.

10:54 AM Changeset in webkit [128907] by Martin Robinson
  • 15 edits in trunk/Source

[GTK] [WebKit2] Use XComposite window for accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=94417

Reviewed by Carlos Garcia Campos.

Instead of rendering directly to the widget's native window, render to an
offscreen window redirected to a Pixmap with XComposite.

Source/WebCore:

No new tests. This will be covered by the existing accelerated compositing tests,
which should now give correct pixel results.

  • platform/gtk/RedirectedXCompositeWindow.cpp:

(WebCore::RedirectedXCompositeWindow::resize): Add a call to XFlush which ensures
that pending X11 operations complete.

  • platform/gtk/RedirectedXCompositeWindow.h:

(WebCore::RedirectedXCompositeWindow::windowId): Added this accessor.

Source/WebKit2:

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(_WebKitWebViewBasePrivate): Added a few members necessary to track the
offscreen window.
(webkit_web_view_base_init):
(renderAcceleratedCompositingResults): Added this helper functions which renders
the results of the accelerated compositing operations during the GTK+ draw loop.
(webkitWebViewBaseDraw): Call renderAcceleratedCompositingResults when appropriate.
(resizeWebKitWebViewBaseFromAllocation): Resize the offscreen window when appropriate.
(webkitWebViewBaseSizeAllocate): Do not call resizeWebKitWebViewBaseFromAllocation when
the actual size of the widget does not change. This prevents destroying and recreating
the offscreen window pixmap when it isn't necessary.
(webkitWebViewBaseMap): We no longer send the window id during map, instead it's sent
as soon as there is WebPageProxy.
(webkitWebViewBaseCreateWebPage): Send the window id of the redirected window to
the WebProcess.
(queueAnotherDrawOfAcceleratedCompositingResults): Added this helper which works
around the issue of slow updates of the pixmap backing the redirected XComposite window.
(webkitWebViewBaseQueueDrawOfAcceleratedCompositingResults): Added this method which
is what the WebProcess uses to force a redraw on the UIProcess side.

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Added new method to the list of private methods.
  • UIProcess/DrawingAreaProxyImpl.h:

(DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::isInAcceleratedCompositingMode): Exposed this method publically
so that it can be used from WebKitWebViewBase.

  • UIProcess/WebPageProxy.h:

(WebPageProxy): Renamed widgetMapped to setAcceleratedCompositingWindowId.

  • UIProcess/WebPageProxy.messages.in: Ditto.
  • UIProcess/gtk/WebPageProxyGtk.cpp: Ditto.

(WebKit::WebPageProxy::setAcceleratedCompositingWindowId):

  • WebProcess/WebPage/WebPage.h:

(WebPage): Ditto.

  • WebProcess/WebPage/WebPage.messages.in: Ditto.
  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::sizeDidChange): Force a composite to the resized window right
away so that the new window pixmap is updated before the first draw.
(WebKit::LayerTreeHostGtk::compositeLayersToContext): If the composition is for a resize,
first clear the entire GL context so that we don't see black artifacts during resize.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.h:

(LayerTreeHostGtk): Update the signature of compositeLayersToContext.

  • WebProcess/WebPage/gtk/WebPageGtk.cpp:

(WebKit::WebPage::setAcceleratedCompositingWindowId): Added.

10:51 AM Changeset in webkit [128906] by jchaffraix@webkit.org
  • 58 edits
    4 adds in trunk

Tables without any descendant and auto logical width should have a 0px logical width
https://bugs.webkit.org/show_bug.cgi?id=95521

Reviewed by Abhishek Arya.

Source/WebCore:

The code would wrongly add the border-spacing in the row direction to the table's logical
width even if we didn't have a column. The new behavior matches FireFox and Opera. IE
matches our old behavior for inline tables but our new behavior for normal tables which
is a bug on their side.

Tests: fast/table/empty-table-should-take-no-space.html

fast/table/fixed-table-layout/empty-table-should-take-no-space-fixed-layout.html

  • rendering/RenderTable.h:

(WebCore::RenderTable::borderSpacingInRowDirection):
Added this new helper function to return the right border-spacing. Added a FIXME as the code always
return the horizontal dimension which is wrong in vertical-writing mode.

(WebCore::RenderTable::bordersPaddingAndSpacingInRowDirection):
Changed to call borderSpacingInRowDirection. Added a comment as to why we don't add border-spacing on
border-collapse: separate tables.

LayoutTests:

  • fast/table/empty-table-should-take-no-space-expected.html: Added.
  • fast/table/empty-table-should-take-no-space.html: Added.
  • fast/table/fixed-table-layout/empty-table-should-take-no-space-fixed-layout-expected.html: Added.
  • fast/table/fixed-table-layout/empty-table-should-take-no-space-fixed-layout.html: Added.

2 new tests to check that empty tables have 0px logical width.

  • platform/chromium-linux/tables/mozilla/bugs/bug56563-expected.png:
  • platform/chromium-win/tables/mozilla/bugs/bug56563-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug56563-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug56563-expected.txt:
  • tables/mozilla/bugs/bug56563-expected.txt:

Progression. The table now is 2px wide as it has a 1px right & left border.

  • platform/chromium-linux/fast/invalid/residual-style-expected.txt:

Progression. The changes are due to the tables shrinking which is expected.

  • platform/chromium-linux/fast/forms/file/file-input-disabled-expected.txt:
  • platform/chromium-mac/fast/forms/file/file-input-disabled-expected.txt:
  • platform/chromium-mac/tables/mozilla/bugs/bug113235-2-expected.txt:
  • platform/chromium-win-xp/fast/forms/file-input-disabled-expected.txt:
  • platform/chromium-win/fast/forms/file/file-input-disabled-expected.txt:
  • platform/chromium-win/fast/invalid/017-expected.txt:
  • platform/chromium-win/fast/invalid/018-expected.txt:
  • platform/chromium-win/fast/invalid/020-expected.txt:
  • platform/chromium-win/fast/invalid/table-inside-stray-table-content-expected.txt:
  • platform/chromium-win/tables/mozilla/bugs/bug113235-2-expected.txt:
  • platform/chromium-win/tables/mozilla/bugs/bug23994-expected.txt:
  • platform/chromium-win/tables/mozilla/bugs/bug56405-expected.txt:
  • platform/efl/fast/forms/file/file-input-disabled-expected.txt:
  • platform/efl/fast/invalid/017-expected.txt:
  • platform/efl/fast/invalid/018-expected.txt:
  • platform/efl/fast/invalid/020-expected.txt:
  • platform/efl/fast/invalid/table-inside-stray-table-content-expected.txt:
  • platform/efl/fast/invalid/table-residual-style-crash-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug23994-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug56405-expected.txt:
  • platform/gtk/fast/forms/file/file-input-disabled-expected.txt:
  • platform/gtk/fast/invalid/017-expected.txt:
  • platform/gtk/fast/invalid/018-expected.txt:
  • platform/gtk/fast/invalid/020-expected.txt:
  • platform/gtk/fast/invalid/table-inside-stray-table-content-expected.txt:
  • platform/gtk/fast/invalid/table-residual-style-crash-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug23994-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug56405-expected.txt:
  • platform/mac/fast/forms/file/file-input-disabled-expected.txt:
  • platform/mac/fast/invalid/017-expected.txt:
  • platform/mac/fast/invalid/018-expected.txt:
  • platform/mac/fast/invalid/020-expected.txt:
  • platform/mac/fast/invalid/table-inside-stray-table-content-expected.txt:
  • platform/mac/fast/invalid/table-residual-style-crash-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug113235-2-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug23994-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug56405-expected.txt:
  • platform/qt/fast/forms/file/file-input-disabled-expected.txt:
  • platform/qt/fast/invalid/017-expected.txt:
  • platform/qt/fast/invalid/018-expected.txt:
  • platform/qt/fast/invalid/020-expected.txt:
  • platform/qt/fast/invalid/table-inside-stray-table-content-expected.txt:
  • platform/qt/fast/invalid/table-residual-style-crash-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug113235-2-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug23994-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug56405-expected.txt:
  • platform/win/fast/forms/file-input-disabled-expected.txt:
  • platform/win/fast/forms/file/file-input-disabled-expected.txt:
  • tables/mozilla/bugs/bug113235-2-expected.txt:

Progression. The tables now have a 0px logical width. In some cases, we add the border-spacing in the
block-flow direction if we have a row. This is not consistently handled by browsers and not very well
defined in CSS.

10:43 AM Changeset in webkit [128905] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

[GTK] Build is broken without option --enable-unstable-features
https://bugs.webkit.org/show_bug.cgi?id=96996

Reviewed by Martin Robinson.

When searching for the bare feature define in feature_defines_unstable or
feature_defines_overrides, search for the bare define followed by = character.
This avoids incorrectly matching the ENABLE_VIDEO define to the ENABLE_VIDEO_TRACK
overriding define (and works as well for other similarly named feature defines).

No new tests - no new functionality.

  • GNUmakefile.am:
10:42 AM Changeset in webkit [128904] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding expectations for flakily-crashing tests, these failures
are a regression from r128802.

  • platform/gtk/TestExpectations:
10:23 AM Changeset in webkit [128903] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebKit/chromium

[Chromium] Merge moveSelectionStart, moveSelectionEnd, and moveCaret into selectRange
https://bugs.webkit.org/show_bug.cgi?id=96508

Patch by Iain Merrick <husky@google.com> on 2012-09-18
Reviewed by Ryosuke Niwa.

These methods had "start" and "end" parameters, but this is incorrect.
selectRange() actually takes base and extent (where the user actually
touched), and selectionBounds() returns anchor and focus (base and extent
expanded to account for the selection granularity).

This patch fixes the parameter names, and updates selectRange, its test
and its documentation to reflect the correct usage. It also removes
moveSelectionStart/moveSelectionEnd/moveCaret (which aren't being used
yet), and updates WebFrameTest to show how these can be implemented via
selectRange.

  • public/WebFrame.h:

(WebFrame):

  • public/WebWidget.h:

(WebWidget):
(WebKit::WebWidget::selectionBounds):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::selectRange):

  • src/WebFrameImpl.h:

(WebFrameImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::selectionBounds):

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/WebFrameTest.cpp:
9:51 AM Changeset in webkit [128902] by enne@google.com
  • 1 edit
    4 copies in branches/chromium/1229

Merge 128514 - Hide all ancestors of the full screen element when going full screen
https://bugs.webkit.org/show_bug.cgi?id=96332

Reviewed by James Robinson.

Source/WebCore:

Since fixed position elements can now sometimes become stacking
contexts, explicitly set position: static on full-screen ancestors so
that there are no stacking context ancestors that could cause the full
screen element to become incorrectly sorted.

Test: fullscreen/full-screen-fixed-pos-parent.html

  • css/fullscreen.css:

(:-webkit-full-screen-ancestor:not(iframe)):

LayoutTests:

This test has an all red image that (without this patch) incorrectly
sorts on top of the full screen element. With this patch, the all
green full screen element appears on top.

  • fullscreen/full-screen-fixed-pos-parent-expected.png: Added.
  • fullscreen/full-screen-fixed-pos-parent-expected.txt: Added.
  • fullscreen/full-screen-fixed-pos-parent.html: Added.
  • fullscreen/resources/green.html: Added.

TBR=enne@google.com

9:21 AM Changeset in webkit [128901] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll chromium DEPS to r157342
https://bugs.webkit.org/show_bug.cgi?id=96963

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-09-18
Reviewed by Stephen White.

Roll chromium DEPS to r157342. Also include the top-level directory
google_apis as a dependency, which was required for r157130.

  • DEPS:
9:13 AM Changeset in webkit [128900] by mhahnenberg@apple.com
  • 4 edits in trunk/Source

Use WTF::HasTrivialDestructor instead of compiler-specific versions in JSC::NeedsDestructor
https://bugs.webkit.org/show_bug.cgi?id=96980

Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

  • runtime/JSCell.h:

(JSC):
(NeedsDestructor):

Source/WTF:

  • wtf/TypeTraits.h:

(WTF):

8:30 AM Changeset in webkit [128899] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

EWS shouldn't sleep if there are new patches in its queue
https://bugs.webkit.org/show_bug.cgi?id=83038

Patch by Szilard Ledan <Szilárd LEDÁN> on 2012-09-18
Reviewed by Eric Seidel.

EWS tries to process a security patch. Of course it can't, because the EWS isn't
the member of the security group. But the problem is that after it can't process
the attachment, it says that queue is empty (but it isn't!) and it sleeps 2 minutes
and push the security patch to the end of the queue.
Now it stays in the loop until it finds a patch or the queue gets empty.

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

(AbstractPatchQueue._next_patch):

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

(AbstractPatchQueueTest.test_next_patch):

8:22 AM Changeset in webkit [128898] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFGOperations doesn't use NativeCallFrameTracer in enough places
https://bugs.webkit.org/show_bug.cgi?id=96987

Reviewed by Mark Hahnenberg.

Anything that can GC should use it.

  • dfg/DFGOperations.cpp:
8:14 AM Changeset in webkit [128897] by rakuco@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Gardening.

Move fast/events/dont-loose-last-event.html from Skipped to
TestExpectations now that it has a proper bug tracking the
failure.

  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
8:02 AM Changeset in webkit [128896] by caseq@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed. Avoid using a deprecated extension API parameter in test to avoid console warning,
that break expectations on EFL due to EFL's DRT logging inspector console output to test
expectations.

  • inspector/extensions/extensions-audits-api.html:
  • platform/efl/TestExpectations:
8:00 AM Changeset in webkit [128895] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[WK2][WTR] InjectedBundle::booleanForKey() should handle literals effectively
https://bugs.webkit.org/show_bug.cgi?id=97014

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-18
Reviewed by Kenneth Rohde Christiansen.

According to http://trac.webkit.org/wiki/EfficientStrings WTF::StringBuilder::appendLiteral() shall
be used for literals rather than WTF::StringBuilder::append().

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::booleanForKey):

7:57 AM Changeset in webkit [128894] by rakuco@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening.

  • platform/efl/TestExpectations: Skip

inspector/extensions/extensions-audits-api.html while we do not
solve the associated bug.

7:44 AM Changeset in webkit [128893] by rakuco@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Unreviewed daily gardening.

Re-skip a few tests which were unskipped in r128880 and r128882
and still fail both on my machine and on the bots.

  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
7:14 AM Changeset in webkit [128892] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Extensions API] postpone requests to add extensions until extension server is initialized
https://bugs.webkit.org/show_bug.cgi?id=97012

Reviewed by Vsevolod Vlasov.

  • queue extensions being added unless initialization is complete;
  • add queued extensions upon completion of initialization;
  • inspector/front-end/ExtensionServer.js:

(WebInspector.ExtensionServer.prototype.initExtensions):
(WebInspector.ExtensionServer.prototype._addExtensions):
(WebInspector.ExtensionServer.prototype._addExtension):
(WebInspector.ExtensionServer.prototype._innerAddExtension):

7:11 AM Changeset in webkit [128891] by rakuco@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Unskip the right ietestcenter tests after r128802.

  • platform/efl/TestExpectations:
7:08 AM Changeset in webkit [128890] by Simon Hausmann
  • 2 edits in trunk/Tools

Update my e-mail address.

  • Scripts/webkitpy/common/config/committers.py:
7:05 AM Changeset in webkit [128889] by caio.oliveira@openbossa.org
  • 3 edits in trunk/Source/WebKit/qt

[Qt] Use UndoStep::editingAction() to set the text of undo/redo actions
https://bugs.webkit.org/show_bug.cgi?id=96921

Reviewed by Ryosuke Niwa.

Set the text of QUndoCommands we create for undo/redo actions based on the
editing action from UndoStep.

This change is visible using QtTestBrowser, and looking at the Edit menu after
doing HTML editing changes. I've used http://simple-rte.rniwa.com for testing.

  • WebCoreSupport/UndoStepQt.cpp:

(undoNameForEditAction): This function returns a localized name of the action.
(UndoStepQt::UndoStepQt): Set the text based on UndoStep::editingAction.

  • tests/qwebpage/tst_qwebpage.cpp:

(tst_QWebPage):
(tst_QWebPage::undoActionHaveCustomText): Create a new test to verify that the text
describing the undo action after inserting a text and indenting the text is different.

7:03 AM Changeset in webkit [128888] by abecsi@webkit.org
  • 2 edits in trunk/Tools

Update my e-mail address.

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
6:58 AM Changeset in webkit [128887] by abecsi@webkit.org
  • 2 edits in trunk/Tools

[Qt] qt_webkit.pri should not be listed in Tools.pro

Reviewed and rubber-stamped by Simon Hausmann and Tor Arne Vestbø.

Since r128751 the module pri file is auto-generated
but it was still listed in OTHER_FILES.

Patch by Andras Becsi <andras.becsi@digia.com> on 2012-09-18

  • Tools.pro: Remove unneeded line.
6:51 AM Changeset in webkit [128886] by Simon Hausmann
  • 2 edits
    3 adds in trunk/Tools

[Qt] Fix build with some versions of the gold linker

Reviewed by Tor Arne Vestbø.

Don't unconditionally pass --no-keep-memory to the linker, some versions might not support it.
Instead run a compile/link test first to see if it works.

  • qmake/config.tests/gnuld/gnuld.pro: Added.
  • qmake/config.tests/gnuld/main.cpp: Added.

(main):

  • qmake/mkspecs/features/unix/default_post.prf:
6:37 AM Changeset in webkit [128885] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Remove forced use of gold.

Reviewed by Tor Arne Vestbø.

The choice of what linker to use with WebKit should be taken by Qt's build system and ideally the same for all
modules of Qt. Then in turn it is usually up to the administrator of the machine. Recent Debian based systems
often offer the automatic use of gold through a symlink and a dpkg-diversion when installing the gold package.

  • qmake/mkspecs/features/unix/default_post.prf:
6:29 AM Changeset in webkit [128884] by Simon Hausmann
  • 2 edits in trunk/Tools

[Qt] Prospective Qt/Windows cross-compiling fix

Reviewed by Tor Arne Vestbø.

The win32 scope is not set when cross-compiling from Linux to Windows.

  • qmake/mkspecs/features/functions.prf:
6:23 AM Changeset in webkit [128883] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

Unreviewed, rolling out r128849.
http://trac.webkit.org/changeset/128849
https://bugs.webkit.org/show_bug.cgi?id=97007

Causes test_ewk2_view to time out. (Requested by rakuco on
#webkit).

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

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_webprocess_crashed):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_private.h:
  • UIProcess/API/efl/ewk_view_ui_client.cpp:

(ewk_view_ui_client_attach):

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(TEST_F):

6:02 AM Changeset in webkit [128882] by commit-queue@webkit.org
  • 81 edits
    17 adds
    1 delete in trunk/LayoutTests

[EFL] Rebaseline several test cases in Skipped list
https://bugs.webkit.org/show_bug.cgi?id=97000

Unreviewed EFL gardening.

Rebaseline several test cases an unskip them.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-18

  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
  • platform/efl/animations/additive-transform-animations-expected.txt: Added.
  • platform/efl/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/efl/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • platform/efl/fast/events/offsetX-offsetY-expected.txt: Removed.
  • platform/efl/fast/events/pointer-events-2-expected.png:
  • platform/efl/fast/events/pointer-events-2-expected.txt:
  • platform/efl/fast/forms/001-expected.png:
  • platform/efl/fast/forms/001-expected.txt:
  • platform/efl/fast/forms/float-before-fieldset-expected.png:
  • platform/efl/fast/forms/float-before-fieldset-expected.txt:
  • platform/efl/fast/forms/form-element-geometry-expected.png:
  • platform/efl/fast/forms/form-element-geometry-expected.txt:
  • platform/efl/fast/forms/input-baseline-expected.png:
  • platform/efl/fast/forms/input-baseline-expected.txt:
  • platform/efl/fast/forms/input-placeholder-visibility-1-expected.png:
  • platform/efl/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/efl/fast/forms/input-text-scroll-left-on-blur-expected.png:
  • platform/efl/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/efl/fast/forms/mailto/advanced-get-expected.txt: Added.
  • platform/efl/fast/forms/mailto/advanced-put-expected.txt: Added.
  • platform/efl/fast/forms/placeholder-position-expected.png:
  • platform/efl/fast/forms/placeholder-position-expected.txt:
  • platform/efl/fast/forms/placeholder-pseudo-style-expected.png:
  • platform/efl/fast/forms/placeholder-pseudo-style-expected.txt:
  • platform/efl/fast/forms/textarea-placeholder-pseudo-style-expected.png:
  • platform/efl/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
  • platform/efl/fast/gradients/generated-gradients-expected.png:
  • platform/efl/fast/gradients/generated-gradients-expected.txt:
  • platform/efl/fast/gradients/radial-centered-expected.png:
  • platform/efl/fast/gradients/radial-centered-expected.txt:
  • platform/efl/fast/inline-block/contenteditable-baseline-expected.png:
  • platform/efl/fast/inline-block/contenteditable-baseline-expected.txt:
  • platform/efl/fast/inline/continuation-outlines-with-layers-2-expected.png:
  • platform/efl/fast/inline/continuation-outlines-with-layers-2-expected.txt:
  • platform/efl/fast/inline/inline-box-background-expected.png:
  • platform/efl/fast/inline/inline-box-background-expected.txt:
  • platform/efl/fast/inline/inline-box-background-long-image-expected.png:
  • platform/efl/fast/inline/inline-box-background-long-image-expected.txt:
  • platform/efl/fast/inline/inline-box-background-repeat-x-expected.png:
  • platform/efl/fast/inline/inline-box-background-repeat-x-expected.txt:
  • platform/efl/fast/inline/inline-box-background-repeat-y-expected.png:
  • platform/efl/fast/inline/inline-box-background-repeat-y-expected.txt:
  • platform/efl/fast/invalid/nestedh3s-expected.png:
  • platform/efl/fast/invalid/nestedh3s-expected.txt:
  • platform/efl/fast/overflow/overflow-float-stacking-expected.png:
  • platform/efl/fast/overflow/overflow-float-stacking-expected.txt:
  • platform/efl/fast/overflow/overflow-stacking-expected.png:
  • platform/efl/fast/overflow/overflow-stacking-expected.txt:
  • platform/efl/fast/repaint/block-layout-inline-children-replaced-expected.png:
  • platform/efl/fast/repaint/block-layout-inline-children-replaced-expected.txt:
  • platform/efl/fast/repaint/japanese-rl-selection-clear-expected.png:
  • platform/efl/fast/repaint/japanese-rl-selection-clear-expected.txt:
  • platform/efl/fast/repaint/japanese-rl-selection-repaint-expected.png:
  • platform/efl/fast/repaint/japanese-rl-selection-repaint-expected.txt:
  • platform/efl/fast/repaint/line-flow-with-floats-in-regions-expected.png:
  • platform/efl/fast/repaint/line-flow-with-floats-in-regions-expected.txt:
  • platform/efl/fast/repaint/moving-shadow-on-path-expected.png:
  • platform/efl/fast/repaint/moving-shadow-on-path-expected.txt:
  • platform/efl/fast/repaint/repaint-svg-after-style-change-expected.png: Added.
  • platform/efl/fast/repaint/repaint-svg-after-style-change-expected.txt: Added.
  • platform/efl/fast/repaint/table-section-repaint-expected.txt:
  • platform/efl/fast/repaint/transform-absolute-in-positioned-container-expected.png:
  • platform/efl/fast/repaint/transform-absolute-in-positioned-container-expected.txt:
  • platform/efl/fast/replaced/width100percent-searchfield-expected.png:
  • platform/efl/fast/replaced/width100percent-searchfield-expected.txt:
  • platform/efl/fast/table/027-expected.png:
  • platform/efl/fast/table/027-expected.txt:
  • platform/efl/fast/table/027-vertical-expected.png:
  • platform/efl/fast/table/027-vertical-expected.txt:
  • platform/efl/fast/table/032-expected.png:
  • platform/efl/fast/table/032-expected.txt:
  • platform/efl/fast/table/040-expected.png:
  • platform/efl/fast/table/040-expected.txt:
  • platform/efl/fast/table/040-vertical-expected.png:
  • platform/efl/fast/table/040-vertical-expected.txt:
  • platform/efl/fast/table/absolute-table-at-bottom-expected.png:
  • platform/efl/fast/table/absolute-table-at-bottom-expected.txt:
  • platform/efl/fast/table/border-collapsing/004-expected.png:
  • platform/efl/fast/table/border-collapsing/004-expected.txt:
  • platform/efl/fast/table/border-collapsing/004-vertical-expected.png:
  • platform/efl/fast/table/border-collapsing/004-vertical-expected.txt:
  • platform/efl/fast/table/dynamic-caption-add-before-child-expected.png:
  • platform/efl/fast/table/dynamic-caption-add-before-child-expected.txt:
  • platform/efl/fast/table/frame-and-rules-expected.png:
  • platform/efl/fast/table/frame-and-rules-expected.txt:
  • platform/efl/fast/table/multiple-captions-display-expected.png: Added.
  • platform/efl/fast/table/multiple-captions-display-expected.txt:
  • platform/efl/media/video-colorspace-yuv420-expected.png: Added.
  • platform/efl/media/video-colorspace-yuv420-expected.txt: Added.
  • platform/efl/media/video-colorspace-yuv422-expected.png: Added.
  • platform/efl/media/video-colorspace-yuv422-expected.txt: Added.
  • platform/efl/perf/nested-combined-selectors-expected.txt: Added.
  • platform/efl/userscripts/script-run-at-end-expected.txt: Added.
5:56 AM Changeset in webkit [128881] by rakuco@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening after r128802.

  • platform/efl/TestExpectations: Temporarily skip a few JS tests

which are crashing after r128802.

5:55 AM Changeset in webkit [128880] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] min-device-width failures in media tests
https://bugs.webkit.org/show_bug.cgi?id=96920

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-18
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Return a realistic value (800x600) for screen resolution if
it cannot be detected, instead of returning (0x0).

This allows for some tests to pass on the build bots
where X is not running.

No new tests, already covered by existing tests.

  • platform/efl/PlatformScreenEfl.cpp:

(WebCore::screenRect):

LayoutTests:

Unskip several test cases which should pass on the
build bots now that we return a realistic screen
resolution whenever it cannot be detected.

  • platform/efl/TestExpectations:
5:51 AM Changeset in webkit [128879] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][WK2] Clarify TestExpectations file
https://bugs.webkit.org/show_bug.cgi?id=97003

Unreviewed EFL gardening.

Slight reorganization and bug numbers updating
in EFL WK2 TestExpectations for clarity.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-18

  • platform/efl-wk2/TestExpectations:
5:39 AM Changeset in webkit [128878] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

REGRESSION(r128802): It made some JS tests crash
https://bugs.webkit.org/show_bug.cgi?id=97001

Unreviewed gardening, skip the new _crashing_ tests to paint the bots green.

  • platform/qt/Skipped:
5:21 AM Changeset in webkit [128877] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix compilation with Qt 5 on MeeGo 1.2 Harmattan
https://bugs.webkit.org/show_bug.cgi?id=96937

Patch by Simon Hausmann <simon.hausmann@digia.com> on 2012-09-18
Reviewed by Jocelyn Turcotte.

The gl2ext.h header file on the platform is outdated. Instead use the newer copy from Qt
through implicit inclusion of qopengl.h. Since Qt's declarations are based on newer Khronos
headers, the multi sampling extensions do have the PROC suffix, we need the same workaround
as QNX.

  • platform/graphics/opengl/Extensions3DOpenGLES.h:
5:05 AM Changeset in webkit [128876] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[EFL] Remove background view on EWebLauncher and MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=96905

Patch by Seokju Kwon <seokju.kwon@samsung.com> on 2012-09-18
Reviewed by Gyuyoung Kim.

The size of webview was changed after adding url bar.
And the background view is not necessary anymore, since it was used for debugging back in the day.

  • EWebLauncher/main.c:

(_ELauncher):
(on_ecore_evas_resize):
(browserCreate):

  • MiniBrowser/efl/main.c:

(_MiniBrowser):
(on_ecore_evas_resize):
(browserCreate):

4:41 AM Changeset in webkit [128875] by caseq@chromium.org
  • 11 edits in trunk

Web Inspector: [Extensions API] explicitly manage extension audit progress
https://bugs.webkit.org/show_bug.cgi?id=96803

Reviewed by Alexander Pavlov.

Source/WebCore:

  • create a sub-progress per audit category;
  • manage audit category progress within the category, not in the panel logic;
  • consider audit is done when all categories are done;
  • expose AuditResults.updateProgress(worked, totalWork) in the extensions API;
  • retain old magic for computing audit progress if extension specifies extension results count.
  • inspector/front-end/AuditsPanel.js:

(WebInspector.AuditsPanel.prototype._executeAudit.ruleResultReadyCallback):
(WebInspector.AuditsPanel.prototype._executeAudit):
(WebInspector.AuditCategory.prototype.run.callbackWrapper):
(WebInspector.AuditCategory.prototype.run):

  • inspector/front-end/ExtensionAPI.js:

(defineCommonExtensionSymbols):
(injectedExtensionAPI.Audits.prototype.addCategory):
(injectedExtensionAPI.AuditResultImpl.prototype.updateProgress):

  • inspector/front-end/ExtensionAuditCategory.js:

(WebInspector.ExtensionAuditCategory.prototype.run):
(WebInspector.ExtensionAuditCategoryResults):
(WebInspector.ExtensionAuditCategoryResults.prototype.done):
(WebInspector.ExtensionAuditCategoryResults.prototype._addResult):
(WebInspector.ExtensionAuditCategoryResults.prototype.updateProgress):

  • inspector/front-end/ExtensionServer.js:

(WebInspector.ExtensionServer):
(WebInspector.ExtensionServer.prototype._onUpdateAuditProgress):
(WebInspector.ExtensionServer.prototype._onStopAuditCategoryRun):

  • inspector/front-end/ProgressBar.js:

(WebInspector.ProgressIndicator.prototype.done): Assure only first call to done() has effect.

LayoutTests:

  • inspector/extensions/extensions-audits-api-expected.txt: Added AuditResults.updateProgress()
  • inspector/extensions/extensions-audits.html: Added a call to updateProgress()
4:36 AM WebInspector edited by abecsi@webkit.org
remove spam (diff)
4:33 AM Changeset in webkit [128874] by sergio@webkit.org
  • 2 edits in trunk/Tools

[GTK] run-webkit-tests unable to find TestExpectations for WK2
https://bugs.webkit.org/show_bug.cgi?id=96998

Reviewed by Philippe Normand.

We should look for TestExpectations files in all the locations where
we currently look for Skipped files. This will allow
run-webkit-tests to look for TestExpectations files in
platform/gtk-wk2 and platform/wk2 if the "-2" flag is used.

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

(GtkPort.expectations_files):

4:14 AM Changeset in webkit [128873] by rakuco@webkit.org
  • 10 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

Update some pixel expectations after a long time.
japanese-lr-selection-expected.png now actually shows a selection
background, some shadows are displayed properly and some fonts
have had rendering adjustments.

  • platform/efl/fast/writing-mode/basic-vertical-line-expected.png:
  • platform/efl/fast/writing-mode/border-radius-clipping-vertical-lr-expected.png:
  • platform/efl/fast/writing-mode/box-shadow-horizontal-bt-expected.png:
  • platform/efl/fast/writing-mode/box-shadow-vertical-lr-expected.png:
  • platform/efl/fast/writing-mode/box-shadow-vertical-rl-expected.png:
  • platform/efl/fast/writing-mode/english-bt-text-expected.png:
  • platform/efl/fast/writing-mode/english-rl-text-expected.png:
  • platform/efl/fast/writing-mode/fieldsets-expected.png:
  • platform/efl/fast/writing-mode/japanese-lr-selection-expected.png:
4:05 AM clutter edited by tomeu.vizoso@collabora.com
(diff)
4:04 AM clutter edited by tomeu.vizoso@collabora.com
(diff)
3:57 AM Changeset in webkit [128872] by rakuco@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening after r128802.

  • platform/efl/TestExpectations: Unskip test that is now passing.
3:34 AM Changeset in webkit [128871] by Carlos Garcia Campos
  • 6 edits in trunk/Source/WebKit2

[GTK] Set the area of tooltips in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=96618

Reviewed by Martin Robinson.

In GTK+ tooltips are associated to a widget, if the mouse is moved
inside the widget area, the tooltip position doesn't change even
if the tooltip text changes. To support multiple tooltips for the
same widget, we need to set the area of the widget for every
tooltip.

  • Shared/WebHitTestResult.cpp:

(WebKit::WebHitTestResult::Data::encode): Encode elementBoundingBox.
(WebKit::WebHitTestResult::Data::decode): Decode elementBoundingBox.

  • Shared/WebHitTestResult.h:

(Data): Add elementBoundingBox to WebHitTestResult::Data.
(WebKit::WebHitTestResult::Data::elementBoundingBoxInWindowCoordinates):
Get the bounding box of the inner non shared node of the hit test
result in window coordinates.
(WebKit::WebHitTestResult::Data::Data):
(WebKit::WebHitTestResult::elementBoundingBox):
(WebHitTestResult):

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewMouseTargetChanged): Call webkitWebViewBaseSetTooltipArea.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseQueryTooltip): Use the tooltipArea if it's not empty.
(webkitWebViewBaseSetTooltipArea): Set the tooltipArea.

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
3:29 AM Changeset in webkit [128870] by rakuco@webkit.org
  • 24 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

Update MathML expectations after r128837.

  • platform/efl/mathml/presentation/attributes-expected.txt:
  • platform/efl/mathml/presentation/fenced-expected.txt:
  • platform/efl/mathml/presentation/fenced-mi-expected.png:
  • platform/efl/mathml/presentation/fenced-mi-expected.txt:
  • platform/efl/mathml/presentation/fractions-expected.txt:
  • platform/efl/mathml/presentation/fractions-vertical-alignment-expected.txt:
  • platform/efl/mathml/presentation/mo-stretch-expected.png:
  • platform/efl/mathml/presentation/mo-stretch-expected.txt:
  • platform/efl/mathml/presentation/mroot-pref-width-expected.txt:
  • platform/efl/mathml/presentation/roots-expected.txt:
  • platform/efl/mathml/presentation/row-alignment-expected.png:
  • platform/efl/mathml/presentation/row-alignment-expected.txt:
  • platform/efl/mathml/presentation/style-expected.txt:
  • platform/efl/mathml/presentation/sub-expected.txt:
  • platform/efl/mathml/presentation/subsup-expected.png:
  • platform/efl/mathml/presentation/subsup-expected.txt:
  • platform/efl/mathml/presentation/sup-expected.txt:
  • platform/efl/mathml/presentation/tables-expected.png:
  • platform/efl/mathml/presentation/tables-expected.txt:
  • platform/efl/mathml/presentation/tokenElements-expected.txt:
  • platform/efl/mathml/presentation/under-expected.txt:
  • platform/efl/mathml/presentation/underover-expected.txt:
  • platform/efl/mathml/xHeight-expected.txt:
3:28 AM Changeset in webkit [128869] by allan.jensen@nokia.com
  • 2 edits in trunk/Source/WebCore

Revert r127457 and following fixes due to several hit-testing regressions
https://bugs.webkit.org/show_bug.cgi?id=96830

Reviewed by Antonio Gomes.

The revert misssed one related follow-up.

  • dom/Document.cpp:

(WebCore::Document::updateHoverActiveState):

3:23 AM Changeset in webkit [128868] by vestbo@webkit.org
  • 4 edits in trunk

[Qt] Fix build without the QtQuick module

Reviewed by Simon Hausmann.

2:42 AM Changeset in webkit [128867] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Not reviewed. Attempt at greening the WinCairo bot. Touching
LowLevelInterpreter.asm to trigger a rebuild of LLIntDesiredOffsets.
https://bugs.webkit.org/show_bug.cgi?id=96992.

  • llint/LowLevelInterpreter.asm:
2:40 AM BuildingQtOnLinux edited by vsevik@chromium.org
(diff)
2:32 AM Changeset in webkit [128866] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/LayoutTests

[EFL] Unskip fast/js/global-constructors.html
https://bugs.webkit.org/show_bug.cgi?id=96984

Unreviewed EFL gardening.

Generate baseline for fast/js/global-constructors.html
and unskip test. The only differences in the expected
output are due to webkit prefix.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-18

  • fast/js/global-constructors-expected.txt: Added.
  • platform/efl/Skipped:
2:11 AM Changeset in webkit [128865] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/Source/JavaScriptCore

[Qt] REGRESSION(r128790): It broke the ARM build
https://bugs.webkit.org/show_bug.cgi?id=96968

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2012-09-18
Reviewed by Filip Pizlo.

Implement the missing or32 method in the MacroAssemblerARM.h.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::or32):
(MacroAssemblerARM):

2:11 AM Changeset in webkit [128864] by Stephanie Lewis
  • 2 edits in trunk/Tools

Build fix after http://trac.webkit.org/projects/webkit/changeset/128852.

Unreviewed.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(poseAsClass):

1:58 AM Changeset in webkit [128863] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Skipped failing tests because eventSender.gestureTap
is not implemented on Qt, ENABLE(SHADOW_DOM) is disabled and
WebKitDisplayImagesKey is not supported.

Patch by Szilard Ledan <Szilárd LEDÁN> on 2012-09-18
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
1:46 AM Changeset in webkit [128862] by zandobersek@gmail.com
  • 39 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining MathML tests' baselines after r128837.

  • platform/gtk/mathml/presentation/attributes-expected.png:
  • platform/gtk/mathml/presentation/attributes-expected.txt:
  • platform/gtk/mathml/presentation/fenced-expected.txt:
  • platform/gtk/mathml/presentation/fenced-mi-expected.png:
  • platform/gtk/mathml/presentation/fenced-mi-expected.txt:
  • platform/gtk/mathml/presentation/fractions-expected.png:
  • platform/gtk/mathml/presentation/fractions-expected.txt:
  • platform/gtk/mathml/presentation/fractions-vertical-alignment-expected.png:
  • platform/gtk/mathml/presentation/fractions-vertical-alignment-expected.txt:
  • platform/gtk/mathml/presentation/mo-expected.png:
  • platform/gtk/mathml/presentation/mo-expected.txt:
  • platform/gtk/mathml/presentation/mo-stretch-expected.png:
  • platform/gtk/mathml/presentation/mo-stretch-expected.txt:
  • platform/gtk/mathml/presentation/mroot-pref-width-expected.txt:
  • platform/gtk/mathml/presentation/over-expected.png:
  • platform/gtk/mathml/presentation/over-expected.txt:
  • platform/gtk/mathml/presentation/roots-expected.png:
  • platform/gtk/mathml/presentation/roots-expected.txt:
  • platform/gtk/mathml/presentation/row-alignment-expected.png:
  • platform/gtk/mathml/presentation/row-alignment-expected.txt:
  • platform/gtk/mathml/presentation/row-expected.png:
  • platform/gtk/mathml/presentation/row-expected.txt:
  • platform/gtk/mathml/presentation/style-expected.png:
  • platform/gtk/mathml/presentation/style-expected.txt:
  • platform/gtk/mathml/presentation/sub-expected.png:
  • platform/gtk/mathml/presentation/sub-expected.txt:
  • platform/gtk/mathml/presentation/subsup-expected.png:
  • platform/gtk/mathml/presentation/subsup-expected.txt:
  • platform/gtk/mathml/presentation/sup-expected.png:
  • platform/gtk/mathml/presentation/sup-expected.txt:
  • platform/gtk/mathml/presentation/tables-expected.png:
  • platform/gtk/mathml/presentation/tables-expected.txt:
  • platform/gtk/mathml/presentation/tokenElements-expected.txt:
  • platform/gtk/mathml/presentation/under-expected.png:
  • platform/gtk/mathml/presentation/under-expected.txt:
  • platform/gtk/mathml/presentation/underover-expected.png:
  • platform/gtk/mathml/presentation/underover-expected.txt:
  • platform/gtk/mathml/xHeight-expected.png: Added.
  • platform/gtk/mathml/xHeight-expected.txt:
1:39 AM Changeset in webkit [128861] by mihnea@adobe.com
  • 10 edits
    3 adds in trunk

[CSSRegions]Flag auto-height regions
https://bugs.webkit.org/show_bug.cgi?id=96267

Reviewed by Julien Chaffraix.

Source/WebCore:

The regions having auto logical height should be flagged so that their height will computed as part of a 2 pass-layout mechanism.
A valid region is flagged as having auto logical height if:

  • has auto logical height and is part of the normal flow
  • has auto logical height, is not part of normal flow and does not have logical top/bottom specified

An invalid region (part of circular dependency) will not be marked even if its style matches the above situations.

Test: fast/regions/autoheight-regions-mark.html

  • rendering/FlowThreadController.cpp: Keep a counter of auto logical height valid regions.

(WebCore::FlowThreadController::FlowThreadController):
(WebCore::FlowThreadController::layoutRenderNamedFlowThreads): Verify that the current number of auto logical height regions is correct by iterating over all the regions attached to the flow threads
and compute the number of auto logical height regions on the spot.
(WebCore):
(WebCore::FlowThreadController::isAutoLogicalHeightRegionsFlagConsistent): Helper function that is used to verify the number of auto logical height regions.

  • rendering/FlowThreadController.h:

(WebCore::FlowThreadController::hasAutoLogicalHeightRegions):
(WebCore::FlowThreadController::incrementAutoLogicalHeightRegions):
(WebCore::FlowThreadController::decrementAutoLogicalHeightRegions):
(FlowThreadController):

  • rendering/RenderFlowThread.cpp:

(WebCore):
(WebCore::RenderFlowThread::autoLogicalHeightRegionsCount): Helper function that is used to count the number of regions marked as having auto logical height.

  • rendering/RenderFlowThread.h:
  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::RenderRegion):
(WebCore::RenderRegion::updateRegionHasAutoLogicalHeightFlag):
(WebCore):
(WebCore::RenderRegion::styleDidChange): For a region that is attached to a flow thread, verify whether the style change modified its auto logical height appearance.
(WebCore::RenderRegion::attachRegion): Handle the case of attaching region to a flow thread and the detach/attach sequence when the region is moved in the render tree.
(WebCore::RenderRegion::detachRegion):

  • rendering/RenderRegion.h:

(WebCore::RenderRegion::shouldHaveAutoLogicalHeight):
(WebCore::RenderRegion::hasAutoLogicalHeight):
(RenderRegion):

  • rendering/RenderTreeAsText.cpp: For the regions that use auto logical height, modify the output to reflect that.

(WebCore::writeRenderNamedFlowThreads):

LayoutTests:

The regions having auto logical height should be flagged so that their height will computed as part of a 2 pass-layout mechanism.
Added a test that checks whether a region in several situations is marked properly.

  • fast/regions/autoheight-regions-mark.html: Added.
  • platform/mac/fast/regions/autoheight-regions-mark-expected.png: Added.
  • platform/mac/fast/regions/autoheight-regions-mark-expected.txt: Added.
  • platform/chromium/TestExpectations:
1:35 AM Changeset in webkit [128860] by mark.lam@apple.com
  • 7 edits
    5 adds in trunk/Source/JavaScriptCore

Fix for WinCairo builds.
https://bugs.webkit.org/show_bug.cgi?id=96992.

Reviewed by Filip Pizlo.

Adding additional vcproj build targets in LLIntDesiredOffsets.vcproj,
LLIntOffsetsExtractor.vcproj, and LLIntAssembly.vcproj to match those
in jsc.vcproj.

  • JavaScriptCore.vcproj/LLIntAssembly/LLIntAssembly.vcproj:
  • JavaScriptCore.vcproj/LLIntDesiredOffsets/LLIntDesiredOffsets.vcproj:
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractor.vcproj:
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractorCommon.vsprops: Added property svn:eol-style.
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractorDebug.vsprops: Added property svn:eol-style.
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractorDebugAll.vsprops: Added.
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractorDebugCairoCFLite.vsprops: Added.
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractorProduction.vsprops: Added.
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractorRelease.vsprops: Added property svn:eol-style.
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractorReleaseCairoCFLite.vsprops: Added.
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractorReleasePGO.vsprops: Added.
1:21 AM Changeset in webkit [128859] by allan.jensen@nokia.com
  • 2 edits in trunk/Tools

Unreviewed update of email addresses for Berlin QtWebKit office.

  • Scripts/webkitpy/common/config/committers.py:
1:17 AM Changeset in webkit [128858] by anilsson@rim.com
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Prevent scroll adjustment of input fields when region of interest mechanism active
https://bugs.webkit.org/show_bug.cgi?id=96750

Reviewed by Antonio Gomes.

The region of interest mechanism replaces the scrolling/zooming
functionality in InputHandler::ensureFocusTextElementVisible().

We introduce a new fine-grained setting for the various adjustment
modes. The WebKit embedder can disable all scroll types in favor of the
region of interest mechanism by using the new setting.

PR #208387

Reviewed internally by Mike Fenton.

  • WebKitSupport/AboutData.cpp:

(BlackBerry::WebKit::configPage):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):

  • WebKitSupport/InputHandler.h:
12:29 AM Changeset in webkit [128857] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix sloppy English in comment.

  • runtime/JSGlobalObject.cpp:

(JSC):

12:28 AM Changeset in webkit [128856] by shinyak@chromium.org
  • 43 edits in trunk

Disable adding an AuthorShadowRoot to replaced elements.
https://bugs.webkit.org/show_bug.cgi?id=96978

Reviewed by Hajime Morita.

Source/WebCore:

We (people who implement Shadow DOM) have concluded that we don't support adding AuthorShadowRoot to
replaced elements in the current spec, since it turned out that a lot of difficulties exist and it brings
a lot of mess to our codebase.

For now, we just disable adding AuthorShadowRoot to these replaced elements.

Test: fast/dom/shadow/shadow-disable.html

  • html/HTMLImageElement.h:
  • html/HTMLKeygenElement.h:
  • html/HTMLMeterElement.h:
  • html/HTMLProgressElement.h:
  • html/HTMLTextAreaElement.h:

LayoutTests:

Since we don't support AuthorShadowRoot for replaced elements for now, we enable a flat to
support AuthorShadowRoot in these tests.

Also, we have a test to check to reject adding ShadowRoot to repalced elements.

  • fast/dom/shadow/select-image-with-shadow.html:
  • fast/dom/shadow/shadow-disable-expected.txt:
  • fast/dom/shadow/shadow-disable.html: Checks WebKit rejects adding ShadowRoot to repalced elements.
  • fast/dom/shadow/shadowdom-for-fieldset-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-image-alt-update.html:
  • fast/dom/shadow/shadowdom-for-image-alt.html:
  • fast/dom/shadow/shadowdom-for-image-content.html:
  • fast/dom/shadow/shadowdom-for-image-dynamic.html:
  • fast/dom/shadow/shadowdom-for-image-event-click.html:
  • fast/dom/shadow/shadowdom-for-image-event.html:
  • fast/dom/shadow/shadowdom-for-image-in-shadowdom.html:
  • fast/dom/shadow/shadowdom-for-image-map.html:
  • fast/dom/shadow/shadowdom-for-image-style.html:
  • fast/dom/shadow/shadowdom-for-image-with-multiple-shadow.html:
  • fast/dom/shadow/shadowdom-for-image-with-pseudo-id.html:
  • fast/dom/shadow/shadowdom-for-image-with-width-and-height.html:
  • fast/dom/shadow/shadowdom-for-image.html:
  • fast/dom/shadow/shadowdom-for-keygen-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-keygen-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-meter-dynamic.html:
  • fast/dom/shadow/shadowdom-for-meter-multiple.html:
  • fast/dom/shadow/shadowdom-for-meter-with-style.html:
  • fast/dom/shadow/shadowdom-for-meter-without-appearance.html:
  • fast/dom/shadow/shadowdom-for-meter-without-shadow-element.html:
  • fast/dom/shadow/shadowdom-for-meter.html:
  • fast/dom/shadow/shadowdom-for-object-only-shadow.html:
  • fast/dom/shadow/shadowdom-for-progress-dynamic.html:
  • fast/dom/shadow/shadowdom-for-progress-multiple.html:
  • fast/dom/shadow/shadowdom-for-progress-with-style.html:
  • fast/dom/shadow/shadowdom-for-progress-without-appearance.html:
  • fast/dom/shadow/shadowdom-for-progress-without-shadow-element.html:
  • fast/dom/shadow/shadowdom-for-progress.html:
  • fast/dom/shadow/shadowdom-for-textarea-complex-shadow.html:
  • fast/dom/shadow/shadowdom-for-textarea-with-placeholder.html:
  • fast/dom/shadow/shadowdom-for-textarea-without-shadow.html:
  • fast/dom/shadow/shadowdom-for-textarea.html:
12:20 AM Changeset in webkit [128855] by ryuan.choi@samsung.com
  • 2 edits in trunk

[CMAKE] Fix build break because of memory exhausted.
https://bugs.webkit.org/show_bug.cgi?id=77327

Reviewed by Gyuyoung Kim.

Added to avoid memory exhaustion on 32bit linux debug build.

  • Source/cmake/OptionsCommon.cmake:

Sep 17, 2012:

11:56 PM Changeset in webkit [128854] by zandobersek@gmail.com
  • 4 edits in trunk

[GTK] fast/loader/display-image-unset-can-block-image-and-can-reload-in-place.html failing after r128645
https://bugs.webkit.org/show_bug.cgi?id=96899

Reviewed by Martin Robinson.

Tools:

When overriding the 'WebKitDisplayImageKey' preference, use the
'auto-load-images' property of WebKitWebSettings as the property which
should be updated with the corresponding preference value.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues):

  • DumpRenderTree/gtk/TestRunnerGtk.cpp:

(TestRunner::overridePreference):

LayoutTests:

Remove failure expectation for the test in title.

  • platform/gtk/TestExpectations:
11:45 PM Changeset in webkit [128853] by commit-queue@webkit.org
  • 5 edits
    2 copies in trunk/Source/WebKit2

[EFL][WK2] Add NativeWebTouchEvent and handle the Touch event.
https://bugs.webkit.org/show_bug.cgi?id=90662

Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2012-09-17
Reviewed by Gyuyoung Kim.

Implement codes to handle touch event for WebKit2 EFL port.
Additionally, types and structure for touch event are defined because
they are not in the Evas.

  • PlatformEfl.cmake:
  • Shared/NativeWebTouchEvent.h:

(NativeWebTouchEvent):

  • Shared/efl/NativeWebTouchEventEfl.cpp: Added.

(WebKit):
(WebKit::NativeWebTouchEvent::NativeWebTouchEvent):

  • Shared/efl/WebEventFactory.cpp:

(WebKit):
(WebKit::typeForTouchEvent):
(WebKit::WebEventFactory::createWebTouchEvent):

  • Shared/efl/WebEventFactory.h:

(WebEventFactory):

  • UIProcess/API/efl/ewk_touch.h: Added.
11:34 PM Changeset in webkit [128852] by psolanki@apple.com
  • 4 edits in trunk/Tools

DumpRenderTree and WebKitTestRunner should compile with -Wundef on Mac
https://bugs.webkit.org/show_bug.cgi?id=96973

Reviewed by Dan Bernstein.

  • DumpRenderTree/mac/Configurations/Base.xcconfig:
  • WebKitTestRunner/Configurations/Base.xcconfig:
  • WebKitTestRunner/PlatformWebView.h: Use #ifdef OBJC and not #if.
11:00 PM Changeset in webkit [128851] by Csaba Osztrogonác
  • 63 edits
    2 deletes in trunk/Source

Unreviewed, rolling out r128826 and r128813.

Source/JavaScriptCore:

  • API/JSCallbackConstructor.cpp:

(JSC):
(JSC::JSCallbackConstructor::JSCallbackConstructor):

  • API/JSCallbackConstructor.h:

(JSCallbackConstructor):

  • API/JSCallbackObject.cpp:

(JSC):
(JSC::::createStructure):

  • API/JSCallbackObject.h:

(JSC::JSCallbackObject::create):
(JSCallbackObject):

  • API/JSClassRef.cpp:

(OpaqueJSClass::prototype):

  • API/JSObjectRef.cpp:

(JSObjectMake):
(JSObjectGetPrivate):
(JSObjectSetPrivate):
(JSObjectGetPrivateProperty):
(JSObjectSetPrivateProperty):
(JSObjectDeletePrivateProperty):

  • API/JSValueRef.cpp:

(JSValueIsObjectOfClass):

  • API/JSWeakObjectMapRefPrivate.cpp:
  • GNUmakefile.list.am:
  • JSCTypedArrayStubs.h:

(JSC):

(JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject):
(JSC::DFG::SpeculativeJIT::emitAllocateJSFinalObject):

  • heap/Heap.cpp:

(JSC::Heap::isSafeToSweepStructures):
(JSC):

  • heap/Heap.h:

(JSC::Heap::allocatorForObjectWithDestructor):
(Heap):
(JSC::Heap::allocateWithDestructor):
(JSC::Heap::allocateStructure):
(JSC):

  • heap/IncrementalSweeper.cpp:

(JSC::IncrementalSweeper::IncrementalSweeper):
(JSC::IncrementalSweeper::sweepNextBlock):
(JSC::IncrementalSweeper::startSweeping):
(JSC::IncrementalSweeper::willFinishSweeping):
(JSC::IncrementalSweeper::structuresCanBeSwept):
(JSC):

  • heap/IncrementalSweeper.h:

(IncrementalSweeper):

  • heap/MarkedAllocator.cpp:

(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::allocateBlock):

  • heap/MarkedAllocator.h:

(JSC::MarkedAllocator::cellsNeedDestruction):
(JSC::MarkedAllocator::onlyContainsStructures):
(MarkedAllocator):
(JSC::MarkedAllocator::MarkedAllocator):
(JSC::MarkedAllocator::init):

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::create):
(JSC::MarkedBlock::MarkedBlock):
(JSC):
(JSC::MarkedBlock::specializedSweep):
(JSC::MarkedBlock::sweep):
(JSC::MarkedBlock::sweepHelper):

  • heap/MarkedBlock.h:

(JSC):
(MarkedBlock):
(JSC::MarkedBlock::cellsNeedDestruction):
(JSC::MarkedBlock::onlyContainsStructures):

  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::MarkedSpace):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::canonicalizeCellLivenessData):
(JSC::MarkedSpace::isPagedOut):
(JSC::MarkedSpace::freeBlock):

  • heap/MarkedSpace.h:

(MarkedSpace):
(Subspace):
(JSC::MarkedSpace::allocatorFor):
(JSC::MarkedSpace::destructorAllocatorFor):
(JSC::MarkedSpace::allocateWithDestructor):
(JSC::MarkedSpace::allocateStructure):
(JSC::MarkedSpace::forEachBlock):

  • heap/SlotVisitor.cpp:
  • jit/JIT.h:
  • jit/JITInlineMethods.h:

(JSC::JIT::emitAllocateBasicJSObject):
(JSC::JIT::emitAllocateJSFinalObject):
(JSC::JIT::emitAllocateJSArray):

  • jsc.cpp:

(GlobalObject::create):

  • runtime/Arguments.cpp:

(JSC):

  • runtime/Arguments.h:

(Arguments):
(JSC::Arguments::Arguments):

  • runtime/ErrorPrototype.cpp:

(JSC):

  • runtime/Executable.h:
  • runtime/InternalFunction.cpp:

(JSC):
(JSC::InternalFunction::InternalFunction):

  • runtime/InternalFunction.h:

(InternalFunction):

  • runtime/JSCell.h:

(JSC):
(JSC::allocateCell):

  • runtime/JSDestructibleObject.h: Removed.
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):
(JSC):

  • runtime/JSGlobalObject.h:

(JSGlobalObject):
(JSC::JSGlobalObject::createRareDataIfNeeded):
(JSC::JSGlobalObject::create):

  • runtime/JSGlobalThis.h:

(JSGlobalThis):
(JSC::JSGlobalThis::JSGlobalThis):

  • runtime/JSPropertyNameIterator.h:
  • runtime/JSScope.cpp:

(JSC):

  • runtime/JSString.h:

(JSC):

  • runtime/JSWrapperObject.h:

(JSWrapperObject):
(JSC::JSWrapperObject::JSWrapperObject):

  • runtime/MathObject.cpp:

(JSC):

  • runtime/NameInstance.h:

(NameInstance):

  • runtime/RegExp.h:
  • runtime/RegExpObject.cpp:

(JSC):

  • runtime/SparseArrayValueMap.h:
  • runtime/Structure.h:

(JSC::Structure):
(JSC::JSCell::classInfo):
(JSC):

  • runtime/StructureChain.h:
  • runtime/SymbolTable.h:
  • testRegExp.cpp:

(GlobalObject::create):

Source/WebCore:

  • ForwardingHeaders/runtime/JSDestructibleObject.h: Removed.
  • bindings/js/JSDOMWrapper.h:

(WebCore::JSDOMWrapper::JSDOMWrapper):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

  • bridge/objc/objc_runtime.h:

(ObjcFallbackObjectImp):

  • bridge/objc/objc_runtime.mm:

(Bindings):
(JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):

  • bridge/runtime_array.cpp:

(JSC):
(JSC::RuntimeArray::destroy):

  • bridge/runtime_array.h:

(JSC::RuntimeArray::create):

  • bridge/runtime_object.cpp:

(Bindings):
(JSC::Bindings::RuntimeObject::RuntimeObject):

  • bridge/runtime_object.h:

(RuntimeObject):

Source/WebKit2:

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit):
(WebKit::JSNPObject::JSNPObject):

  • WebProcess/Plugins/Netscape/JSNPObject.h:

(JSNPObject):

10:08 PM Changeset in webkit [128850] by tkent@chromium.org
  • 7 edits in trunk/Source

Export RuntimeEnabledFeatures::isLangAttributeAwareFormControlUIEnabled correctly
https://bugs.webkit.org/show_bug.cgi?id=96855

Reviewed by Hajime Morita.

Source/WebCore:

  • bindings/generic/RuntimeEnabledFeatures.h:

(RuntimeEnabledFeatures): Add WEBCORE_TESTING.

  • testing/InternalSettings.cpp: Remove a workaround.

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setLangAttributeAwareFormControlUIEnabled):

  • testing/InternalSettings.h: ditto.

Source/WebKit2:

  • win/WebKit2.def: Remove a symbol
  • win/WebKit2CFLite.def: ditto.
9:50 PM Changeset in webkit [128849] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

[EFL][WK2] Add javascript popup API.
https://bugs.webkit.org/show_bug.cgi?id=95672

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-09-17
Reviewed by Gyuyoung Kim.

Add smart class member function for javascript alert(), confirm() and prompt().

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_run_javascript_alert):
(ewk_view_run_javascript_confirm):
(ewk_view_run_javascript_prompt):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/ewk_view_private.h:
  • UIProcess/API/efl/ewk_view_ui_client.cpp:

(runJavaScriptAlert):
(runJavaScriptConfirm):
(runJavaScriptPrompt):
(ewk_view_ui_client_attach):

  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

Added unit test for javascript popup smart class member function.
(checkAlert):
(TEST_F):
(checkConfirm):
(checkPrompt):

9:37 PM Changeset in webkit [128848] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Gtk] Remove the unused variable warning in GamepadsGtk.cpp using ASSERT_UNUSED macro
https://bugs.webkit.org/show_bug.cgi?id=96975

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-09-17
Reviewed by Kentaro Hara.

Replacing a simple ASSERT with ASSERT_UNUSED to avoid the warning.

No new tests as refactoring done.

  • platform/gtk/GamepadsGtk.cpp:

(WebCore::GamepadDeviceGtk::readCallback):

9:16 PM Changeset in webkit [128847] by shinyak@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening, mark perf/nested-combined-selectors.html is flaky

perf/nested-combined-selectors.html is flaky on Chromium Mac 10.6

  • platform/chromium/TestExpectations:
8:56 PM FeatureFlags edited by tkent@chromium.org
Add LEGACY_VENDOR_PREFIXES (diff)
8:27 PM Changeset in webkit [128846] by roger_fong@apple.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

Adding 'Reviewed by' in ChangeLog for http://trac.webkit.org/changeset/128845

8:19 PM Changeset in webkit [128845] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

[Win] Null check timing function received from CoreAnimation when calling CACFAnimationGetTimingFunction.
https://bugs.webkit.org/show_bug.cgi?id=96972

Timothy Horton

When paused, some CSS animations cause CoreAnimation to pass back a null timing function when calling CACFAnimationGetTimingFunction.
This patch fixes this simply by ensuring that if the output of this method is null, it does not get passed into CACFAnimationSetTimingFunction via the PlatformCAAnimation::copyTimingFunctionFrom method.

  • platform/graphics/ca/win/PlatformCAAnimationWin.cpp:

(PlatformCAAnimation::copyTimingFunctionFrom):

8:04 PM Changeset in webkit [128844] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Regression (r128163)
https://bugs.webkit.org/show_bug.cgi?id=96610

Patch by Regina Chung <heejin.r.chung@samsung.com> on 2012-09-17
Reviewed by Gyuyoung Kim.

While removing compile warnings r128163 changed the logic of code for entering
accelerated compositing mode, resulting in never being able to enter it.
Changed back to the correct code and fixed the compile warning by using an
appropriate EINA macro.

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_accelerated_compositing_mode_enter): Changed EINA_SAFETY_ON_NULL_RETURN_VAL to *if* condition statement.

7:55 PM Changeset in webkit [128843] by Stephanie Lewis
  • 3 edits in trunk/LayoutTests

Rebaseline after http://trac.webkit.org/projects/webkit/changeset/128837.

Unreviewed.

  • http/tests/xmlviewer/dumpAsText/mathml-expected.txt:
  • platform/mac/accessibility/math-alttext-expected.txt:
7:25 PM Changeset in webkit [128842] by dpranke@chromium.org
  • 2 edits in trunk/Tools

nrwt: remove "unexpected EOF" warnings
https://bugs.webkit.org/show_bug.cgi?id=96970

Reviewed by Ojan Vafai.

After debugging this a bit, it looks like there aren't any cases
that I can reproduce where a read() of zero indicates something
actually wrong; either it is a prelude to a crash, or a false
negative. So, I'm removing these warnings and adding a comment.

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

(ServerProcess._wait_for_data_and_update_buffers_using_select):

7:17 PM Changeset in webkit [128841] by shinyak@chromium.org
  • 2 edits
    1 add in trunk/LayoutTests

Unreviewed gardening, more rebaseline after r128811

  • platform/chromium-win-xp/compositing/shadows/shadow-drawing-expected.png:
  • platform/chromium-win-xp/fast/css/shadow-multiple-expected.png: Added.
6:54 PM Changeset in webkit [128840] by shinyak@chromium.org
  • 10 edits
    1 move
    7 adds
    3 deletes in trunk/LayoutTests

Unreviewed gardening, rebaseline after r128811

  • platform/chromium-linux-x86/fast/writing-mode/english-lr-text-expected.png: Removed.
  • platform/chromium-linux-x86/transitions/svg-text-shadow-transition-expected.png: Removed.
  • platform/chromium-linux/platform/chromium-linux/fast/text/chromium-linux-fontconfig-renderstyle-expected.png:
  • platform/chromium-win-xp/fast/multicol/shadow-breaking-expected.png: Added.
  • platform/chromium-win-xp/fast/repaint/shadow-multiple-vertical-expected.png: Added.
  • platform/chromium-win-xp/fast/text/shadow-translucent-fill-expected.png:
  • platform/chromium-win-xp/fast/text/stroking-decorations-expected.png:
  • platform/chromium-win-xp/fast/text/stroking-expected.png:
  • platform/chromium-win-xp/fast/transforms/shadows-expected.png: Added.
  • platform/chromium-win-xp/fast/writing-mode/english-lr-text-expected.png:
  • platform/chromium-win-xp/ietestcenter/css3/text/textshadow-002-expected.png: Added.
  • platform/chromium-win-xp/ietestcenter/css3/text/textshadow-010-expected.png: Added.
  • platform/chromium-win-xp/svg/css/composite-shadow-text-expected.png:
  • platform/chromium-win-xp/svg/css/shadow-changes-expected.png:
  • platform/chromium-win-xp/svg/css/text-gradient-shadow-expected.png:
  • platform/chromium-win-xp/svg/css/text-shadow-multiple-expected.png: Added.
  • platform/chromium-win-xp/transitions/svg-text-shadow-transition-expected.png:
  • platform/gtk/transitions/svg-text-shadow-transition-expected.png: Removed.
  • transitions/svg-text-shadow-transition-expected.png: Renamed from LayoutTests/platform/efl/transitions/svg-text-shadow-transition-expected.png.
6:51 PM Changeset in webkit [128839] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

<rdar://problem/12316935> [mac WebKit1]: -[WebView _setPaginationBehavesLikeColumns:] is a no-op
https://bugs.webkit.org/show_bug.cgi?id=96971

Reviewed by Sam Weinig.

  • WebView/WebView.mm:

(-[WebView _setPaginationBehavesLikeColumns:]): Added a call to setPagination().

6:46 PM Changeset in webkit [128838] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the Snow Leopard build.

  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::PluginProcess::platformInitialize):

6:37 PM Changeset in webkit [128837] by Dave Barton
  • 63 edits in trunk

Convert MathML to use flexboxes
https://bugs.webkit.org/show_bug.cgi?id=96843

Reviewed by Eric Seidel.

Source/WebCore:

Using the CSS Flexible Box Model simplifies MathML in many ways. Control over alignment, row vs.
column layout, and child layout order are all much easier. Complexities involving floats,
continuations, and most anonymous boxes are eliminated, as are their potential for crashes and
security vulnerabilities.

In a flexbox, column alignment is done with align-items or align-self, instead of text-align.
vertical-align and baselinePosition() are replaced by the firstLineBoxBaseline() virtual
function.

Tested by existing tests.

  • css/mathml.css:

(math):
(math[display="block"]):
(mo, mrow, mfenced, mfrac, msub, msup, msubsup, munder, mover, munderover, msqrt, mroot):
(math, mrow, mfenced, msqrt, mroot):
(msqrt > *):
(mo, mfrac, munder, mover, munderover):
(munder, mover, munderover):
(mfrac > *):
(mfrac[numalign="left"] > :first-child):
(mfrac[numalign="right"] > :first-child):
(mfrac[denomalign="left"] > :last-child):
(mfrac[denomalign="right"] > :last-child):
(msubsup > :last-child, mover > :last-child, munderover > :last-child):
(msub > * + *, msup > * + *, msubsup > * + *, munder > * + *, mover > * + *, munderover > * + *):
(mroot):
(mroot > * + *):
(mtable):

  • mathml/MathMLInlineContainerElement.cpp:

(WebCore::MathMLInlineContainerElement::createRenderer):

  • mathml/mathtags.in:


  • rendering/mathml/RenderMathMLBlock.cpp:

(WebCore::RenderMathMLBlock::RenderMathMLBlock):
(WebCore::RenderMathMLBlock::computePreferredLogicalWidths):
(WebCore::RenderMathMLBlock::baselinePosition):
(WebCore::RenderMathMLBlock::renderName):
(WebCore::RenderMathMLBlock::paint):
(WebCore::RenderMathMLTable::firstLineBoxBaseline):

  • rendering/mathml/RenderMathMLBlock.h:

(RenderMathMLBlock):
(RenderMathMLTable):
(WebCore::RenderMathMLTable::RenderMathMLTable):

  • Change RenderMathMLBlock's base class to RenderFlexibleBox, and its display to FLEX or INLINE_FLEX.
  • Add RenderMathMLTable for its firstLineBoxBaseline() function, like { vertical-align: middle }.


  • rendering/mathml/RenderMathMLFenced.cpp:

(WebCore::RenderMathMLFenced::createMathMLOperator):
(WebCore::RenderMathMLFenced::makeFences):

  • Use RenderMathMLRow::addChild as a more robust name for RenderBlock::addChild.

(WebCore::RenderMathMLFenced::addChild):

  • All inline children of a flexbox are treated as blocks automatically.


  • rendering/mathml/RenderMathMLFraction.cpp:

(WebCore::RenderMathMLFraction::fixChildStyle):
(WebCore::RenderMathMLFraction::updateFromElement):

  • numalign and denomalign attributes are now handled by mathml.css.

(WebCore::RenderMathMLFraction::addChild):
(WebCore::RenderMathMLFraction::layout):
(WebCore::RenderMathMLFraction::firstLineBoxBaseline):

  • rendering/mathml/RenderMathMLFraction.h:

(RenderMathMLFraction):

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::updateFromElement):
(WebCore::RenderMathMLOperator::createStackableStyle):
(WebCore::RenderMathMLOperator::firstLineBoxBaseline):

  • rendering/mathml/RenderMathMLOperator.h:
  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::createAnonymousWithParentRenderer):

  • rendering/mathml/RenderMathMLSubSup.cpp:

(WebCore::RenderMathMLSubSup::RenderMathMLSubSup):
(WebCore::RenderMathMLSubSup::fixScriptsStyle):
(WebCore::RenderMathMLSubSup::addChild):
(WebCore::RenderMathMLSubSup::styleDidChange):
(WebCore::RenderMathMLSubSup::layout):

  • rendering/mathml/RenderMathMLSubSup.h:
    • Rename Sup to Super, to make it more readable vs. Sub.
    • Instead of vertical-align, msub and msup now use the m_scripts anonymous box like msubsup does.
    • Individual anonymous block wrappers are no longer needed around the superscript and subscript to lay them out in a column.
    • Handle msub and msup layout, and improve msubsup layout, by requiring a superscript's baseline to be at least (int) fontSize / 3 + 1 above the main baseline, and a subscript's baseline to be at least (int) fontSize / 5 + 1 below it.


  • rendering/mathml/RenderMathMLUnderOver.cpp:

(WebCore::RenderMathMLUnderOver::unembellishedOperator):
(WebCore::RenderMathMLUnderOver::firstLineBoxBaseline):

  • rendering/mathml/RenderMathMLUnderOver.h:

(RenderMathMLUnderOver):

  • RenderMathMLUnderOver no longer needs to use anonymous wrappers for column layout. Centering and child layout order (overscript first) are also handled by mathml.css.

LayoutTests:

  • mathml/EmptyMFracCrash-expected.txt:
  • mathml/EmptyMunderOverCrash-expected.txt:
  • mathml/empty-mroot-crash-expected.txt:
  • mathml/fenced-whitespace-separators-crash-expected.txt:
  • mathml/msub-anonymous-child-render-crash-expected.txt:
  • mathml/msubsup-no-grandchild-expected.txt:
  • mathml/msubsup-remove-children-expected.txt:
  • mathml/munderover-remove-children-expected.txt:


  • mathml/presentation/fenced.xhtml:
  • mathml/presentation/mo.xhtml:
  • mathml/presentation/row.xhtml:
  • mathml/xHeight.xhtml:
    • The <div>s are wrapped in <mtext> elements to make them valid in MathML, with the intended layout.


  • platform/mac/mathml/presentation/attributes-expected.png:
  • platform/mac/mathml/presentation/attributes-expected.txt:
  • platform/mac/mathml/presentation/fenced-expected.txt:
  • platform/mac/mathml/presentation/fenced-mi-expected.png:
  • platform/mac/mathml/presentation/fenced-mi-expected.txt:
  • platform/mac/mathml/presentation/fractions-expected.txt:
  • platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
  • platform/mac/mathml/presentation/mo-expected.png:
  • platform/mac/mathml/presentation/mo-expected.txt:
  • platform/mac/mathml/presentation/mo-stretch-expected.png:
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
  • platform/mac/mathml/presentation/mroot-pref-width-expected.txt:
  • platform/mac/mathml/presentation/over-expected.png:
  • platform/mac/mathml/presentation/over-expected.txt:
  • platform/mac/mathml/presentation/roots-expected.png:
  • platform/mac/mathml/presentation/roots-expected.txt:
  • platform/mac/mathml/presentation/row-alignment-expected.png:
  • platform/mac/mathml/presentation/row-alignment-expected.txt:
  • platform/mac/mathml/presentation/row-expected.png:
  • platform/mac/mathml/presentation/row-expected.txt:
  • platform/mac/mathml/presentation/style-expected.png:
  • platform/mac/mathml/presentation/style-expected.txt:
  • platform/mac/mathml/presentation/sub-expected.png:
  • platform/mac/mathml/presentation/sub-expected.txt:
  • platform/mac/mathml/presentation/subsup-expected.png:
  • platform/mac/mathml/presentation/subsup-expected.txt:
  • platform/mac/mathml/presentation/sup-expected.txt:
  • platform/mac/mathml/presentation/tables-expected.png:
  • platform/mac/mathml/presentation/tables-expected.txt:
  • platform/mac/mathml/presentation/tokenElements-expected.txt:
  • platform/mac/mathml/presentation/under-expected.txt:
  • platform/mac/mathml/presentation/underover-expected.png:
  • platform/mac/mathml/presentation/underover-expected.txt:
  • platform/mac/mathml/xHeight-expected.txt:
6:31 PM Changeset in webkit [128836] by weinig@apple.com
  • 4 edits in trunk/Source/WebKit2

Add experimental code to enter a sandbox for a plug-in.
Based on a patch by Ivan Krstić.
<rdar://problem/11823151>

Reviewed by Anders Carlsson.

Enter a sandbox for a plug-in if a sandbox profile is found in /usr/share/sandbox/ that
has the plug-ins bundle identifier for a name.

  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::initializeSandbox):
(WebKit::PluginProcess::platformInitialize):
Enter the sandbox provided if a profile can be found.

  • WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.h:
  • WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:

(enterSandbox):
Factor out the core sandbox entering logic (so if can be used above) and make sure
that Remote Save Panel is enabled.

6:23 PM Changeset in webkit [128835] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

[EFL] Several key codes are not mapped with evas key name.
https://bugs.webkit.org/show_bug.cgi?id=96915

Reviewed by Gyuyoung Kim.

  • platform/efl/EflKeyboardUtilities.cpp:

(WebCore::createWindowsKeyMap):
Added missing items of hashmap for virtual key code.

6:20 PM Changeset in webkit [128834] by dpranke@chromium.org
  • 2 edits in trunk/Tools

[chromium] ASAN bot is crashing at the end of the run
https://bugs.webkit.org/show_bug.cgi?id=96967

Reviewed by Abhishek Arya.

The ASAN bot is crashing attempting to decode some output into
UTF-8; there's no reason to do this, so let's not do this and
see if something else is going on as well.

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

(ChromiumPort._get_crash_log):

6:15 PM Changeset in webkit [128833] by shinyak@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening, test expectations update.

fast/js/cross-frame-really-bad-time-with-proto.html is failing from the beginning (r128816)

  • platform/chromium/TestExpectations:
6:15 PM Changeset in webkit [128832] by ggaren@apple.com
  • 14 edits in trunk/Source/JavaScriptCore

Refactored the arguments object so it doesn't dictate closure layout
https://bugs.webkit.org/show_bug.cgi?id=96955

Reviewed by Oliver Hunt.

  • bytecode/CodeBlock.h:

(JSC::ExecState::argumentAfterCapture): Helper function for accessing an
argument that has been moved for capture.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator): Generate metadata for arguments
that are captured. We don't move any arguments yet, but we do use this
metadata to tell the arguments object if an argument is stored in the
activation.

  • dfg/DFGOperations.cpp:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetByValOnArguments):
(JSC::DFG::SpeculativeJIT::compileGetArgumentsLength):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile): Updated for the arguments object not
malloc'ing a separate backing store, and for a rename from deletedArguments
to slowArguments.

  • interpreter/CallFrame.h:

(ExecState):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::unwindCallFrame):
(JSC::Interpreter::privateExecute):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL): Updated for small interface changes.

  • runtime/Arguments.cpp:

(JSC::Arguments::visitChildren):
(JSC::Arguments::copyToArguments):
(JSC::Arguments::fillArgList):
(JSC::Arguments::getOwnPropertySlotByIndex):
(JSC::Arguments::createStrictModeCallerIfNecessary):
(JSC::Arguments::createStrictModeCalleeIfNecessary):
(JSC::Arguments::getOwnPropertySlot):
(JSC::Arguments::getOwnPropertyDescriptor):
(JSC::Arguments::getOwnPropertyNames):
(JSC::Arguments::putByIndex):
(JSC::Arguments::put):
(JSC::Arguments::deletePropertyByIndex):
(JSC::Arguments::deleteProperty):
(JSC::Arguments::defineOwnProperty):
(JSC::Arguments::tearOff): Moved all data inline into the object, for speed,
and refactored all internal argument accesses to use helper functions, so
we can change the implementation without changing lots of code.

(JSC::Arguments::didTearOffActivation): This function needs to account
for arguments that were moved by the activation object. We do this accounting
through a side vector that tells us where our arguments will be in the
activation.

(JSC::Arguments::tearOffForInlineCallFrame):

  • runtime/Arguments.h:

(Arguments):
(JSC::Arguments::length):
(JSC::Arguments::isTornOff):
(JSC::Arguments::Arguments):
(JSC::Arguments::allocateSlowArguments):
(JSC::Arguments::tryDeleteArgument):
(JSC::Arguments::trySetArgument):
(JSC::Arguments::tryGetArgument):
(JSC::Arguments::isDeletedArgument):
(JSC::Arguments::isArgument):
(JSC::Arguments::argument):
(JSC::Arguments::finishCreation):

  • runtime/JSActivation.h:

(JSC::JSActivation::create):
(JSActivation):
(JSC::JSActivation::captureStart):
(JSC::JSActivation::storageSize):
(JSC::JSActivation::registerOffset):
(JSC::JSActivation::isValid): The activation object is no longer responsible
for copying extra arguments provided by the caller. The argumnents object
does this instead. This means we can allocate and initialize an activation
without worrying about the call frame's argument count.

  • runtime/SymbolTable.h:

(JSC::SlowArgument::SlowArgument):
(SlowArgument):
(JSC):
(JSC::SharedSymbolTable::parameterCount):
(SharedSymbolTable):
(JSC::SharedSymbolTable::slowArguments):
(JSC::SharedSymbolTable::setSlowArguments): Added data structures to back
the algorithms above.

6:07 PM Changeset in webkit [128831] by shinyak@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening, test expectations update.

fast/js/cross-frame-really-bad-time.html is failing from the beginning (r128816)

  • platform/chromium/TestExpectations:
5:42 PM Changeset in webkit [128830] by shinyak@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, test expectations update.

These tests are failing from the beginning (r128802)
fast/js/array-bad-time.html
fast/js/array-slow-put.html
fast/js/cross-frame-bad-time.html
fast/js/object-bad-time.html
fast/js/object-slow-put.html

  • platform/chromium/TestExpectations:
5:40 PM Changeset in webkit [128829] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Including HexNumber.h fails build if hexDigitsForMode is not referenced
https://bugs.webkit.org/show_bug.cgi?id=96873

Patch by Glenn Adams <glenn@skynav.com> on 2012-09-17
Reviewed by Benjamin Poulain.

Ensure release build is possible when hexDigitsForMode is not referenced by
template expansion.

  • wtf/HexNumber.h:

(WTF::Internal::hexDigitsForMode):
Change hexDigitsForMode to inline (rather than static). Make string literals
{lower,upper}HexDigits non-local and non-static, but const, to which the linker
should merge references in the RO data segment.

5:35 PM Changeset in webkit [128828] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[chromium] Add rendering commit statistics
https://bugs.webkit.org/show_bug.cgi?id=96938

Patch by Brian Anderson <brianderson@chromium.org> on 2012-09-17
Reviewed by James Robinson.

Adds total commit time and total commit count to WebRenderingStats.
Allows us to caculate average commit time in performance tests.

Source/Platform:

  • chromium/public/WebRenderingStats.h:

(WebRenderingStats):
(WebKit::WebRenderingStats::WebRenderingStats):
(WebKit::WebRenderingStats::enumerateFields):

Source/WebKit/chromium:

  • src/WebLayerTreeViewImpl.cpp:

(WebKit::WebLayerTreeViewImpl::renderingStats):

5:14 PM Changeset in webkit [128827] by Beth Dakin
  • 1 edit
    1 delete in trunk/LayoutTests

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

Rubber-stamped by Alexey Proskuryakov.

These platform-specific results are not necessary. They are identical to the
cross-platform results.

  • platform/mac/compositing/rtl: Removed.
  • platform/mac/compositing/rtl/rtl-fixed-expected.txt: Removed.
  • platform/mac/compositing/rtl/rtl-fixed-overflow-expected.txt: Removed.
5:12 PM Changeset in webkit [128826] by mhahnenberg@apple.com
  • 4 edits in trunk/Source

Source/WebCore: Unreviewed, fix build.

Patch by Filip Pizlo <fpizlo@apple.com> on 2012-09-17

  • css/CSSRule.cpp:

(SameSizeAsCSSRule):

Source/WebKit2: Fixing the build after http://trac.webkit.org/changeset/128813

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit):
(WebKit::JSNPObject::JSNPObject):

  • WebProcess/Plugins/Netscape/JSNPObject.h:

(JSNPObject):

5:00 PM Changeset in webkit [128825] by dpranke@chromium.org
  • 4 edits in trunk/Tools

nrwt: --results-directory isn't getting printed properly
https://bugs.webkit.org/show_bug.cgi?id=96965

Reviewed by Ojan Vafai.

options.results_directory isn't actually initialized with the
default values until after we call print_config(), so this
changes things to print the value directly.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(run):

  • Scripts/webkitpy/layout_tests/views/printing.py:

(Printer.print_config):

  • Scripts/webkitpy/layout_tests/views/printing_unittest.py:

(Testprinter.test_print_config):

4:58 PM Changeset in webkit [128824] by fpizlo@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, fix build.

  • css/CSSRule.cpp:

(SameSizeAsCSSRule):

4:53 PM Changeset in webkit [128823] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Move a FilterOperationsTest and WebInputEventConversionTest back to webkit_unittest_files variable
https://bugs.webkit.org/show_bug.cgi?id=96964

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

These targets are really webkit unit tests and shouldn't be guarded by use_libcc_for_compositor.

  • WebKit.gypi:
4:36 PM Changeset in webkit [128822] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

32-bit LLInt get_by_val does vector length checks incorrectly
https://bugs.webkit.org/show_bug.cgi?id=96893
<rdar://problem/12311678>

Reviewed by Mark Hahnenberg.

  • llint/LowLevelInterpreter32_64.asm:
4:34 PM Changeset in webkit [128821] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

4:28 PM Changeset in webkit [128820] by fpizlo@apple.com
  • 2 edits in trunk/Source/WTF

The ThreadRescrictionVerifier should be more forcibly disabled on systems that use threads
https://bugs.webkit.org/show_bug.cgi?id=96957

Reviewed by Oliver Hunt.

  • wtf/ThreadRestrictionVerifier.h:

(WTF):
(WTF::ThreadRestrictionVerifier::ThreadRestrictionVerifier):
(ThreadRestrictionVerifier):
(WTF::ThreadRestrictionVerifier::setMutexMode):
(WTF::ThreadRestrictionVerifier::setDispatchQueueMode):
(WTF::ThreadRestrictionVerifier::turnOffVerification):
(WTF::ThreadRestrictionVerifier::setShared):
(WTF::ThreadRestrictionVerifier::isSafeToUse):

4:27 PM Changeset in webkit [128819] by Lucas Forschler
  • 1 copy in tags/Safari-537.10

New Tag.

4:00 PM Changeset in webkit [128818] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WTF

Unreviewed, rolling out r128796.
http://trac.webkit.org/changeset/128796
https://bugs.webkit.org/show_bug.cgi?id=96966

It broke everything (Requested by Ossy_NIGHT on #webkit).

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

  • wtf/OSAllocatorPosix.cpp:

(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::reserveAndCommit):
(WTF::OSAllocator::commit):
(WTF::OSAllocator::decommit):

3:51 PM Changeset in webkit [128817] by jpetsovits@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Remove dysfunctional zoom blit in setViewportSize().
https://bugs.webkit.org/show_bug.cgi?id=96954
PR 178411

Reviewed by Antonio Gomes.

The blitContents() call removed by this patch used to
be part of scheduleZoomAboutPoint(). Its goal was to
display a preview of the zoomed contents, primarily
when auto-zoomed after rotation. Nested inside a pair
of screen suspend/resume calls, it has been a pointless
no-op for a while.

Antonio's recent change to remove scheduleZoomAboutPoint()
and call zoomAboutPoint() from setViewportSize() directly
(the only call site) obsoletes the call completely.
The zoomAboutPoint() call itself will cause a re-render
and blit right away, so we don't care about any preview.
zoomAboutPoint() will also take care of the necessary
screen/backingstore suspension.

The result is a vastly simplified block of code.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setViewportSize):

3:47 PM Changeset in webkit [128816] by fpizlo@apple.com
  • 3 edits
    6 adds in trunk

We don't have a bad enough time if an object's prototype chain crosses global objects
https://bugs.webkit.org/show_bug.cgi?id=96962

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • runtime/JSGlobalObject.cpp:

(JSC):

LayoutTests:

  • fast/js/cross-frame-really-bad-time-expected.txt: Added.
  • fast/js/cross-frame-really-bad-time-with-proto-expected.txt: Added.
  • fast/js/cross-frame-really-bad-time-with-proto.html: Added.
  • fast/js/cross-frame-really-bad-time.html: Added.
  • fast/js/script-tests/cross-frame-really-bad-time-with-proto.js: Added.

(foo):
(evil):
(bar):
(done):

  • fast/js/script-tests/cross-frame-really-bad-time.js: Added.

(Cons):
(foo):
(evil):
(bar):
(done):

3:45 PM Changeset in webkit [128815] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, fix a broken assertion in offlineasm.

  • offlineasm/armv7.rb:
  • offlineasm/backends.rb:
3:45 PM Changeset in webkit [128814] by mhahnenberg@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/ChangeLog

Fixing broken JSC ChangeLog

3:16 PM Changeset in webkit [128813] by mhahnenberg@apple.com
  • 60 edits
    2 adds in trunk/Source

Delayed structure sweep can leak structures without bound
https://bugs.webkit.org/show_bug.cgi?id=96546

Reviewed by Gavin Barraclough.

This patch gets rid of the separate Structure allocator in the MarkedSpace and adds two new destructor-only
allocators. We now have separate allocators for our three types of objects: those objects with no destructors,
those objects with destructors and with immortal structures, and those objects with destructors that don't have
immortal structures. All of the objects of the third type (destructors without immortal structures) now
inherit from a new class named JSDestructibleObject (which in turn is a subclass of JSNonFinalObject), which stores
the ClassInfo for these classes at a fixed offset for safe retrieval during sweeping/destruction.

Source/JavaScriptCore:

  • API/JSCallbackConstructor.cpp: Use JSDestructibleObject for JSCallbackConstructor.

(JSC):
(JSC::JSCallbackConstructor::JSCallbackConstructor):

  • API/JSCallbackConstructor.h:

(JSCallbackConstructor):

  • API/JSCallbackObject.cpp: Inherit from JSDestructibleObject for normal JSCallbackObjects and use a finalizer for

JSCallbackObject<JSGlobalObject>, since JSGlobalObject also uses a finalizer.
(JSC):
(JSC::::create): We need to move the create function for JSCallbackObject<JSGlobalObject> out of line so we can add
the finalizer for it. We don't want to add the finalizer is something like finishCreation in case somebody decides
to subclass this. We use this same technique for many other subclasses of JSGlobalObject.
(JSC::::createStructure):

  • API/JSCallbackObject.h:

(JSCallbackObject):
(JSC):

  • API/JSClassRef.cpp: Change all the JSCallbackObject<JSNonFinalObject> to use JSDestructibleObject instead.

(OpaqueJSClass::prototype):

  • API/JSObjectRef.cpp: Ditto.

(JSObjectMake):
(JSObjectGetPrivate):
(JSObjectSetPrivate):
(JSObjectGetPrivateProperty):
(JSObjectSetPrivateProperty):
(JSObjectDeletePrivateProperty):

  • API/JSValueRef.cpp: Ditto.

(JSValueIsObjectOfClass):

  • API/JSWeakObjectMapRefPrivate.cpp: Ditto.
  • JSCTypedArrayStubs.h:

(JSC):

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGSpeculativeJIT.h: Use the proper allocator type when doing inline allocation in the DFG.

(JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject):
(JSC::DFG::SpeculativeJIT::emitAllocateJSFinalObject):

  • heap/Heap.cpp:

(JSC):

  • heap/Heap.h: Add accessors for the various types of allocators now. Also remove the isSafeToSweepStructures function

since it's always safe to sweep Structures now.
(JSC::Heap::allocatorForObjectWithNormalDestructor):
(JSC::Heap::allocatorForObjectWithImmortalStructureDestructor):
(Heap):
(JSC::Heap::allocateWithNormalDestructor):
(JSC):
(JSC::Heap::allocateWithImmortalStructureDestructor):

  • heap/IncrementalSweeper.cpp: Remove all the logic to detect when it's safe to sweep Structures from the

IncrementalSweeper since it's always safe to sweep Structures now.
(JSC::IncrementalSweeper::IncrementalSweeper):
(JSC::IncrementalSweeper::sweepNextBlock):
(JSC::IncrementalSweeper::startSweeping):
(JSC::IncrementalSweeper::willFinishSweeping):
(JSC):

  • heap/IncrementalSweeper.h:

(IncrementalSweeper):

  • heap/MarkedAllocator.cpp: Remove the logic that was preventing us from sweeping Structures if it wasn't safe. Add

tracking of the specific destructor type of allocator.
(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::allocateBlock):

  • heap/MarkedAllocator.h:

(JSC::MarkedAllocator::destructorType):
(MarkedAllocator):
(JSC::MarkedAllocator::MarkedAllocator):
(JSC::MarkedAllocator::init):

  • heap/MarkedBlock.cpp: Add all the destructor type stuff to MarkedBlocks so that we do the right thing when sweeping.

We also use the stored destructor type to determine the right thing to do in all JSCell::classInfo() calls.
(JSC::MarkedBlock::create):
(JSC::MarkedBlock::MarkedBlock):
(JSC):
(JSC::MarkedBlock::specializedSweep):
(JSC::MarkedBlock::sweep):
(JSC::MarkedBlock::sweepHelper):

  • heap/MarkedBlock.h:

(JSC):
(JSC::MarkedBlock::allocator):
(JSC::MarkedBlock::destructorType):

  • heap/MarkedSpace.cpp: Add the new destructor allocators to MarkedSpace.

(JSC::MarkedSpace::MarkedSpace):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::canonicalizeCellLivenessData):
(JSC::MarkedSpace::isPagedOut):
(JSC::MarkedSpace::freeBlock):

  • heap/MarkedSpace.h:

(MarkedSpace):
(JSC::MarkedSpace::immortalStructureDestructorAllocatorFor):
(JSC::MarkedSpace::normalDestructorAllocatorFor):
(JSC::MarkedSpace::allocateWithImmortalStructureDestructor):
(JSC::MarkedSpace::allocateWithNormalDestructor):
(JSC::MarkedSpace::forEachBlock):

  • heap/SlotVisitor.cpp: Add include because the symbol was needed in an inlined function.
  • jit/JIT.h: Make sure we use the correct allocator when doing inline allocations in the baseline JIT.
  • jit/JITInlineMethods.h:

(JSC::JIT::emitAllocateBasicJSObject):
(JSC::JIT::emitAllocateJSFinalObject):
(JSC::JIT::emitAllocateJSArray):

  • jsc.cpp:

(GlobalObject::create): Add finalizer here since JSGlobalObject needs to use a finalizer instead of inheriting from
JSDestructibleObject.

  • runtime/Arguments.cpp: Inherit from JSDestructibleObject.

(JSC):

  • runtime/Arguments.h:

(Arguments):
(JSC::Arguments::Arguments):

  • runtime/ErrorPrototype.cpp: Added an assert to make sure we have a trivial destructor.

(JSC):

  • runtime/Executable.h: Indicate that all of the Executable* classes have immortal Structures.

(JSC):

  • runtime/InternalFunction.cpp: Inherit from JSDestructibleObject.

(JSC):
(JSC::InternalFunction::InternalFunction):

  • runtime/InternalFunction.h:

(InternalFunction):

  • runtime/JSCell.h: Added the NEEDS_DESTRUCTOR macro to make it easier for classes to indicate that instead of being

allocated in a destructor MarkedAllocator that they will handle their destruction themselves through the
use of a finalizer.
(JSC):
(HasImmortalStructure): New template to help us determine at compile-time if a particular class
should be allocated in the immortal structure MarkedAllocator. The default value is false. In order
to be allocated in the immortal structure allocator, classes must specialize this template. Also added
a macro to make it easier for classes to specialize the template.
(JSC::allocateCell): Use the appropriate allocator depending on the destructor type.

  • runtime/JSDestructibleObject.h: Added. New class that stores the ClassInfo of any subclass so that it can be

accessed safely when the object is being destroyed.
(JSC):
(JSDestructibleObject):
(JSC::JSDestructibleObject::classInfo):
(JSC::JSDestructibleObject::JSDestructibleObject):
(JSC::JSCell::classInfo): Checks the current MarkedBlock to see where it should get the ClassInfo from so that it's always safe.

  • runtime/JSGlobalObject.cpp: JSGlobalObject now uses a finalizer instead of a destructor so that it can avoid forcing all

of its relatives in the inheritance hierarchy (e.g. JSScope) to use destructors as well.
(JSC::JSGlobalObject::reset):

  • runtime/JSGlobalObject.h:

(JSGlobalObject):
(JSC::JSGlobalObject::createRareDataIfNeeded): Since we always create a finalizer now, we don't have to worry about adding one
for the m_rareData field when it's created.
(JSC::JSGlobalObject::create):
(JSC):

  • runtime/JSGlobalThis.h: Inherit from JSDestructibleObject.

(JSGlobalThis):
(JSC::JSGlobalThis::JSGlobalThis):

  • runtime/JSPropertyNameIterator.h: Has an immortal Structure.

(JSC):

  • runtime/JSScope.cpp:

(JSC):

  • runtime/JSString.h: Has an immortal Structure.

(JSC):

  • runtime/JSWrapperObject.h: Inherit from JSDestructibleObject.

(JSWrapperObject):
(JSC::JSWrapperObject::JSWrapperObject):

  • runtime/MathObject.cpp: Cleaning up some of the inheritance stuff.

(JSC):

  • runtime/NameInstance.h: Inherit from JSDestructibleObject.

(NameInstance):

  • runtime/RegExp.h: Has immortal Structure.

(JSC):

  • runtime/RegExpObject.cpp: Inheritance cleanup.

(JSC):

  • runtime/SparseArrayValueMap.h: Has immortal Structure.

(JSC):

  • runtime/Structure.h: Has immortal Structure.

(JSC):

  • runtime/StructureChain.h: Ditto.

(JSC):

  • runtime/SymbolTable.h: Ditto.

(SharedSymbolTable):
(JSC):

Source/WebCore:

No new tests.

  • ForwardingHeaders/runtime/JSDestructableObject.h: Added.
  • bindings/js/JSDOMWrapper.h: Inherits from JSDestructibleObject.

(JSDOMWrapper):
(WebCore::JSDOMWrapper::JSDOMWrapper):

  • bindings/scripts/CodeGeneratorJS.pm: Add finalizers to anything that inherits from JSGlobalObject,

e.g. JSDOMWindow and JSWorkerContexts. For those classes we also need to use the NEEDS_DESTRUCTOR macro.
(GenerateHeader):

  • bridge/objc/objc_runtime.h: Inherit from JSDestructibleObject.

(ObjcFallbackObjectImp):

  • bridge/objc/objc_runtime.mm:

(Bindings):
(JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):

  • bridge/runtime_array.cpp: Use a finalizer so that JSArray isn't forced to inherit from JSDestructibleObject.

(JSC):
(JSC::RuntimeArray::destroy):

  • bridge/runtime_array.h:

(JSC::RuntimeArray::create):
(JSC):

  • bridge/runtime_object.cpp: Inherit from JSDestructibleObject.

(Bindings):
(JSC::Bindings::RuntimeObject::RuntimeObject):

  • bridge/runtime_object.h:

(RuntimeObject):

3:05 PM Changeset in webkit [128812] by commit-queue@webkit.org
  • 14 edits in trunk/Source

Unreviewed, rolling out r128809.
http://trac.webkit.org/changeset/128809
https://bugs.webkit.org/show_bug.cgi?id=96958

Broke the Windows build. (Requested by andersca on #webkit).

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

Source/WebCore:

  • platform/win/BString.cpp:

(WebCore::BString::~BString):
(WebCore::BString::adoptBSTR):

  • platform/win/BString.h:

(BString):

Source/WebKit/win:

  • DefaultPolicyDelegate.cpp:

(DefaultPolicyDelegate::decidePolicyForNavigationAction):
(DefaultPolicyDelegate::decidePolicyForMIMEType):
(DefaultPolicyDelegate::unableToImplementPolicyWithError):

  • MarshallingHelpers.cpp:

(MarshallingHelpers::KURLToBSTR):
(MarshallingHelpers::CFStringRefToBSTR):
(MarshallingHelpers::stringArrayToSafeArray):
(MarshallingHelpers::safeArrayToStringArray):

  • WebCoreSupport/WebChromeClient.cpp:

(WebChromeClient::runJavaScriptPrompt):

  • WebCoreSupport/WebEditorClient.cpp:

(WebEditorClient::checkGrammarOfString):
(WebEditorClient::getGuessesForWord):

  • WebFrame.cpp:

(WebFrame::canProvideDocumentSource):

  • WebHistory.cpp:

(WebHistory::removeItem):
(WebHistory::addItem):

  • WebIconDatabase.cpp:

(WebIconDatabase::startUpIconDatabase):

  • WebNotificationCenter.cpp:

(WebNotificationCenter::postNotification):

  • WebPreferences.cpp:

(WebPreferences::setStringValue):

  • WebView.cpp:

(PreferencesChangedOrRemovedObserver::onNotify):
(WebView::close):
(WebView::canShowMIMEType):
(WebView::initWithFrame):
(WebView::setApplicationNameForUserAgent):
(WebView::setCustomUserAgent):
(WebView::userAgentForURL):
(WebView::setCustomTextEncodingName):
(WebView::customTextEncodingName):
(WebView::setPreferences):
(WebView::searchFor):
(WebView::executeCoreCommandByName):
(WebView::markAllMatchesForText):
(WebView::setGroupName):
(WebView::registerURLSchemeAsLocal):
(WebView::replaceSelectionWithText):
(WebView::onNotify):
(WebView::notifyPreferencesChanged):
(WebView::MIMETypeForExtension):
(WebView::standardUserAgentWithApplicationName):
(WebView::addAdditionalPluginDirectory):
(WebView::registerEmbeddedViewMIMEType):
(toString):
(toKURL):
(WebView::addOriginAccessWhitelistEntry):
(WebView::removeOriginAccessWhitelistEntry):
(WebView::geolocationDidFailWithError):
(WebView::setDomainRelaxationForbiddenForURLScheme):
(WebView::setCompositionForTesting):
(WebView::confirmCompositionForTesting):

2:56 PM Changeset in webkit [128811] by Beth Dakin
  • 2 edits
    6 adds in trunk/LayoutTests

https://bugs.webkit.org/show_bug.cgi?id=96945
REGRESSION (r128678): Several tests fail on WK2 bots
(compositing/rtl/rtl-fixed-overflow.html,
compositing/rtl/rtl-fixed.html,
fast/regions/float-pushed-width-change.html,
fast/repaint/fixed-move-after-keyboard-scroll.html)

Reviewed by Tim Horton.

These tests are failing after
https://bugs.webkit.org/show_bug.cgi?id=96688 They are failing on WK2
only because that change only forces compositing mode for fixed
position elements in WK2, not WK1.

This one is a ref test where the expectation used fixed positioning.
We can avoid using fixed pos and avoid that fact that that creates a
layer in WK2 and use absolute pos instead.

  • fast/regions/float-pushed-width-change-expected.html:

These tests just need updated results in the mac-wk2 directory.

  • platform/mac-wk2/compositing/rtl: Added.
  • platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt: Added.
  • platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt: Added.
  • platform/mac-wk2/fast/repaint: Added.
  • platform/mac-wk2/fast/repaint/fixed-move-after-keyboard-scroll-expected.png: Added.
  • platform/mac-wk2/fast/repaint/fixed-move-after-keyboard-scroll-expected.txt: Added.
2:44 PM Changeset in webkit [128810] by cevans@google.com
  • 3 edits
    2 copies in branches/chromium/1229

Merge 128654
BUG=147459
Review URL: https://codereview.chromium.org/10918284

2:43 PM Changeset in webkit [128809] by Patrick Gansterer
  • 13 edits in trunk/Source

[WIN] Use BString in favour of BSTR to improve memory management
https://bugs.webkit.org/show_bug.cgi?id=93128

Reviewed by Anders Carlsson.

BString automatically calls SysFreeString() in its destructor which helps
avoiding memory leaks. So it should be used instead of BSTR directly.
Add operator& to BString to allow its usage for out parameters too (like COMPtr).
This fixes already a few memory leaks in the existing code.

  • platform/win/BString.cpp:

(WebCore::BString::~BString):
(WebCore::BString::adoptBSTR):
(WebCore::BString::clear):
(WebCore):

  • platform/win/BString.h:

(BString):
(WebCore::BString::operator&):

2:41 PM Changeset in webkit [128808] by Nate Chapin
  • 2 edits in trunk/LayoutTests

2012-09-17 Nate Chapin <Nate Chapin>

Unreviewed, test expectations update.

  • platform/chromium/TestExpectations: Mark http/tests/inspector/network/network-xhr-replay.html as timing out on chromium win.
2:32 PM Changeset in webkit [128807] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1229

Merge 128524
BUG=139814
Review URL: https://codereview.chromium.org/10907267

2:31 PM Changeset in webkit [128806] by piman@chromium.org
  • 3 edits in trunk/Source/Platform

[chromium] Add onSendFrameToParentCompositorAck to WebCompositorOutputSurfaceClient
https://bugs.webkit.org/show_bug.cgi?id=96850

Reviewed by James Robinson.

Hook for the WebCompositorOutputSurface::sendFrameToParent ack.
Also changes WebCompositorFrame from a class to a struct.

  • chromium/public/WebCompositorOutputSurface.h:

(WebKit):

  • chromium/public/WebCompositorOutputSurfaceClient.h:

(WebKit):
(WebCompositorOutputSurfaceClient):

2:22 PM Changeset in webkit [128805] by cevans@google.com
  • 15 edits
    3 copies in branches/chromium/1229

Merge 127933
BUG=137233
Review URL: https://codereview.chromium.org/10908295

2:11 PM Changeset in webkit [128804] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

Make CSS.PrefixUsage histogram smaller to save memory
https://bugs.webkit.org/show_bug.cgi?id=96941

Reviewed by Ojan Vafai.

Each bucket costs about 12 bytes. This reduces the size of the histogram
from 600 to 384, which will save about 2.5k per renderer and browser
process.

In the long run, we could probably generate a table in makeprop.pl that
only has the webkit prefix values to save even more memory (there are
194 properties that start with -webkit).

No new tests, just refactoring.

  • css/CSSParser.cpp:

(WebCore::cssPropertyID):

2:04 PM Changeset in webkit [128803] by aelias@chromium.org
  • 3 edits
    1 add in trunk/Source/Platform

[chromium] WebCompositorOutputSurface software API
https://bugs.webkit.org/show_bug.cgi?id=96851

Reviewed by James Robinson.

This adds a software-based output option to
WebCompositorOutputSurface, for use with the new software compositor.
If returns a "tear-off" which provides a WebImage object that can be
written to or read.

  • Platform.gypi:
  • chromium/public/WebCompositorOutputSurface.h:

(WebKit):
(WebCompositorOutputSurface):
(WebKit::WebCompositorOutputSurface::surfaceSoftware):

  • chromium/public/WebCompositorOutputSurfaceSoftware.h: Added.

(WebKit):
(WebCompositorOutputSurfaceSoftware):
(WebKit::WebCompositorOutputSurfaceSoftware::~WebCompositorOutputSurfaceSoftware):

1:56 PM Changeset in webkit [128802] by fpizlo@apple.com
  • 29 edits
    15 adds
    1 delete in trunk

If a prototype has indexed setters and its instances have indexed storage, then all put_by_val's should have a bad time
https://bugs.webkit.org/show_bug.cgi?id=96596

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Added comprehensive support for accessors and read-only indexed properties on the
prototype chain. This is done without any performance regression on benchmarks that
we're aware of, by having the entire VM's strategy with respect to arrays tilted
heavily in favor of:

  • The prototype chain of JSArrays never having any accessors or read-only indexed properties. If that changes, you're going to have a bad time.


  • Prototypes of non-JSArray objects either having no indexed accessors or read-only indexed properties, or, having those indexed accessor thingies inserted before any instance object (i.e. object with that prototype as its prototype) is created. If you add indexed accessors or read-only indexed properties to an object that is already used as a prototype, you're going to have a bad time.


See below for the exact definition of having a bad time.

Put another way, "fair" uses of indexed accessors and read-only indexed properties
are:

  • Put indexed accessors and read-only indexed properties on an object that is never used as a prototype. This will slow down accesses to that object, but will not have any effect on any other object.


  • Put those indexed accessor thingies on an object before it is used as a prototype and then start instantiating objects that claim that object as their prototype. This will slightly slow down indexed stores to the instance objects, and greatly slow down all indexed accesses to the prototype, but will have no other effect.


In short, "fair" uses only affect the object itself and any instance objects. But
if you start using indexed accessors in more eclectic ways, you're going to have
a bad time.

Specifically, if an object that may be used as a prototype has an indexed accessor
added, the VM performs a whole-heap scan to find all objects that belong to the
same global object as the prototype you modified. If any of those objects has
indexed storage, their indexed storage is put into slow-put mode, just as if their
prototype chain had indexed accessors. This will happen even for objects that do
not currently have indexed accessors in their prototype chain. As well, all JSArray
allocations are caused to create arrays with slow-put storage, and all future
allocations of indexed storage for non-JSArray objects are also flipped to slow-put
mode. Note there are two aspects to having a bad time: (i) the whole-heap scan and
(ii) the poisoning of all indexed storage in the entire global object. (i) is
necessary for correctness. If we detect that an object that may be used as a
prototype has had an indexed accessor or indexed read-only property inserted into
it, then we need to ensure that henceforth all instances of that object inspect
the prototype chain whenever an indexed hole is stored to. But by default, indexed
stores do no such checking because doing so would be unnecessarily slow. So, we must
find all instances of the affected object and flip them into a different array
storage mode that omits all hole optimizations. Since prototypes never keep a list
of instance objects, the only way to find those objects is a whole-heap scan. But
(i) alone would be a potential disaster, if a program frequently allocated an
object without indexed accessors, then allocated a bunch of objects that used that
one as their prototype, and then added indexed accessors to the prototype. So, to
prevent massive heap scan storms in such awkward programs, having a bad time also
implies (ii): henceforth *all* objects belonging to that global object will use
slow put indexed storage, so that we don't ever have to scan the heap again. Note
that here we are using the global object as just an approximation of a program
module; it may be worth investigating in the future if other approximations can be
used instead.

  • bytecode/ArrayProfile.h:

(JSC):
(JSC::arrayModeFromStructure):

  • dfg/DFGAbstractState.cpp:

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

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::fromObserved):
(JSC::DFG::modeAlreadyChecked):
(JSC::DFG::modeToString):

  • dfg/DFGArrayMode.h:

(DFG):
(JSC::DFG::isSlowPutAccess):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • jit/JIT.h:
  • jit/JITInlineMethods.h:

(JSC::JIT::emitAllocateJSArray):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_new_array):

  • runtime/ArrayPrototype.cpp:

(JSC::ArrayPrototype::finishCreation):
(JSC::arrayProtoFuncSort):

  • runtime/IndexingType.h:

(JSC):
(JSC::hasIndexedProperties):
(JSC::hasIndexingHeader):
(JSC::hasArrayStorage):
(JSC::shouldUseSlowPut):

  • runtime/JSArray.cpp:

(JSC::JSArray::pop):
(JSC::JSArray::push):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):

  • runtime/JSArray.h:

(JSC::JSArray::createStructure):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::JSGlobalObject):
(JSC::JSGlobalObject::reset):
(JSC):
(JSC::JSGlobalObject::haveABadTime):

  • runtime/JSGlobalObject.h:

(JSGlobalObject):
(JSC::JSGlobalObject::addressOfArrayStructure):
(JSC::JSGlobalObject::havingABadTimeWatchpoint):
(JSC::JSGlobalObject::isHavingABadTime):

  • runtime/JSObject.cpp:

(JSC::JSObject::visitButterfly):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::JSObject::put):
(JSC::JSObject::putByIndex):
(JSC::JSObject::enterDictionaryIndexingMode):
(JSC::JSObject::notifyPresenceOfIndexedAccessors):
(JSC):
(JSC::JSObject::createArrayStorage):
(JSC::JSObject::ensureArrayStorageExistsAndEnterDictionaryIndexingMode):
(JSC::JSObject::switchToSlowPutArrayStorage):
(JSC::JSObject::setPrototype):
(JSC::JSObject::resetInheritorID):
(JSC::JSObject::inheritorID):
(JSC::JSObject::allowsAccessFrom):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::unwrappedGlobalObject):
(JSC::JSObject::notifyUsedAsPrototype):
(JSC::JSObject::createInheritorID):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::attemptToInterceptPutByIndexOnHoleForPrototype):
(JSC::JSObject::attemptToInterceptPutByIndexOnHole):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLength):
(JSC::JSObject::getNewVectorLength):
(JSC::JSObject::getOwnPropertyDescriptor):

  • runtime/JSObject.h:

(JSC::JSObject::mayBeUsedAsPrototype):
(JSObject):
(JSC::JSObject::mayInterceptIndexedAccesses):
(JSC::JSObject::getArrayLength):
(JSC::JSObject::getVectorLength):
(JSC::JSObject::canGetIndexQuickly):
(JSC::JSObject::getIndexQuickly):
(JSC::JSObject::canSetIndexQuickly):
(JSC::JSObject::setIndexQuickly):
(JSC::JSObject::initializeIndex):
(JSC::JSObject::completeInitialization):
(JSC::JSObject::inSparseIndexingMode):
(JSC::JSObject::arrayStorage):
(JSC::JSObject::arrayStorageOrNull):
(JSC::JSObject::ensureArrayStorage):
(JSC):
(JSC::JSValue::putByIndex):

  • runtime/JSValue.cpp:

(JSC::JSValue::putToPrimitive):
(JSC::JSValue::putToPrimitiveByIndex):
(JSC):

  • runtime/JSValue.h:

(JSValue):

  • runtime/ObjectPrototype.cpp:

(JSC::ObjectPrototype::finishCreation):

  • runtime/SparseArrayValueMap.cpp:

(JSC::SparseArrayValueMap::putEntry):
(JSC::SparseArrayEntry::put):
(JSC):

  • runtime/SparseArrayValueMap.h:

(JSC):
(SparseArrayEntry):

  • runtime/Structure.cpp:

(JSC::Structure::anyObjectInChainMayInterceptIndexedAccesses):
(JSC):
(JSC::Structure::suggestedIndexingTransition):

  • runtime/Structure.h:

(Structure):
(JSC::Structure::mayInterceptIndexedAccesses):

  • runtime/StructureTransitionTable.h:

(JSC::newIndexingType):

LayoutTests:

Removed failing expectation for primitive-property-access-edge-cases, and
added more tests to cover the numerical-setter-on-prototype cases.

  • fast/js/array-bad-time-expected.txt: Added.
  • fast/js/array-bad-time.html: Added.
  • fast/js/array-slow-put-expected.txt: Added.
  • fast/js/array-slow-put.html: Added.
  • fast/js/cross-frame-bad-time-expected.txt: Added.
  • fast/js/cross-frame-bad-time.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/object-bad-time-expected.txt: Added.
  • fast/js/object-bad-time.html: Added.
  • fast/js/object-slow-put-expected.txt: Added.
  • fast/js/object-slow-put.html: Added.
  • fast/js/script-tests/array-bad-time.js: Added.
  • fast/js/script-tests/array-slow-put.js: Added.

(foo):

  • fast/js/script-tests/cross-frame-bad-time.js: Added.

(foo):

  • fast/js/script-tests/object-bad-time.js: Added.

(Cons):

  • fast/js/script-tests/object-slow-put.js: Added.

(Cons):
(foo):

  • platform/mac/fast/js/primitive-property-access-edge-cases-expected.txt: Removed.
1:56 PM Changeset in webkit [128801] by cevans@google.com
  • 6 edits
    2 copies in branches/chromium/1229

Merge 127381
BUG=143593
Review URL: https://codereview.chromium.org/10916347

1:55 PM Changeset in webkit [128800] by rwlbuis@webkit.org
  • 6 edits in trunk

[BlackBerry] Enable VIDEO_TRACK
https://bugs.webkit.org/show_bug.cgi?id=96949

Reviewed by Antonio Gomes.

.:

Turn on VIDEO_TRACK feature.

  • Source/cmake/OptionsBlackBerry.cmake:

Source/WebCore:

Turn on runtime feature for VIDEO_TRACK.

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore):

Tools:

  • Scripts/webkitperl/FeatureList.pm:
1:50 PM Changeset in webkit [128799] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, updating some bug numbers in TestExpectations.

  • platform/chromium/TestExpectations:
1:37 PM Changeset in webkit [128798] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

Measure the usage of window.webkitIndexedDB so we can measure the transition to webkit.indexedDB
https://bugs.webkit.org/show_bug.cgi?id=96943

Reviewed by Ojan Vafai.

We don't yet support window.indexedDB but we will once
https://bugs.webkit.org/show_bug.cgi?id=96548 lands. This metric will
help us measure the transition from the prefixed to the unprefixed API.

  • Modules/indexeddb/DOMWindowIndexedDatabase.idl:
  • page/FeatureObserver.h:
1:12 PM Changeset in webkit [128797] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

Measure usage of the legacy WebKitBlobBuilder API in the hopes of being able to remove it
https://bugs.webkit.org/show_bug.cgi?id=96939

Reviewed by Ojan Vafai.

In the course of standardization, the BlobBuilder API was removed in
favor of just using the Blob constructor. This patch adds some
measurement to see how often this legacy API is used. If the API is not
used very much, we might be able to remove it.

  • fileapi/WebKitBlobBuilder.cpp:

(WebCore::WebKitBlobBuilder::create):

  • page/FeatureObserver.h:
1:07 PM Changeset in webkit [128796] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Implement uncommitted memory for Linux.
https://bugs.webkit.org/show_bug.cgi?id=65766

Patch by Uli Schlachter <psychon@znc.in> on 2012-09-17
Reviewed by Gavin Barraclough.

The old approach used MAP_NORESERVE to allocate address space without
committing it. However, that flag gets ignored if
/proc/sys/vm/overcommit_memory is set to 2. The new approach uses a
mapping with PROT_NONE. This works because mappings which aren't even
readable don't get accounted as committed on Linux.

  • wtf/OSAllocatorPosix.cpp:

(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::reserveAndCommit):
(WTF::OSAllocator::commit):
(WTF::OSAllocator::decommit):

1:00 PM Changeset in webkit [128795] by jsbell@chromium.org
  • 7 edits in trunk

IndexedDB: Result of IDBFactory.deleteDatabase() should be undefined, not null
https://bugs.webkit.org/show_bug.cgi?id=96538

Reviewed by Tony Chang.

Source/WebCore:

Trivial implementation change to match the spec.

Tests: storage/indexeddb/factory-deletedatabase-expected.html

storage/indexeddb/intversion-long-queue-expected.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::deleteDatabase):

LayoutTests:

Check result of IDBFactory.deleteDatabase() - one updated assertion, one added assertion.

  • storage/indexeddb/factory-deletedatabase-expected.txt:
  • storage/indexeddb/intversion-long-queue-expected.txt:
  • storage/indexeddb/resources/factory-deletedatabase.js: Add new assertion.

(reopenDatabase):

  • storage/indexeddb/resources/intversion-long-queue.js: Update existing assertion.

(deleteDatabaseSuccessCallback):

12:39 PM Changeset in webkit [128794] by commit-queue@webkit.org
  • 11 edits
    12 adds in trunk

Source/WebCore: Allow gesture events to set active/hover state.
https://bugs.webkit.org/show_bug.cgi?id=96060

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-17
Reviewed by Antonio Gomes.

Adds GestureTapDownCancel as a new PlatformGestureEvent type. On ports
that support gesture events, use GestureTapDown to trigger active/hover
states, and GestureTap/GestureTapDownCancel to clear them. This is
superior to using touch events for a number of reasons:

1) some ports (chromium) avoid sending touch events unless absolutely
necessary, since they hurt scroll performance by blocking threaded
scrolling.
2) with touch, and element really shouldn't be 'active' when the user
happens to be touching it while scrolling. In that case they aren't
'manipulating the element', they're manipulating the page or div that
is scrolling.
3) similarly, there may be other gestures that involve touching the
element which aren't really about manipulating that element (eg.
pinch to zoom).

Test: fast/events/touch/gesture/gesture-tap-active-state.html
Test: fast/events/touch/gesture/gesture-tap-active-state-iframe.html

  • dom/GestureEvent.cpp:

(WebCore::GestureEvent::create):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::handleTouchEvent):

  • platform/PlatformEvent.h:

Source/WebKit/chromium: Send GestureTapDownCancel to WebCore
https://bugs.webkit.org/show_bug.cgi?id=96060

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-17
Reviewed by Antonio Gomes.

Plumb WebInputEvent::GetsureTapCancel to
PlatformInputEvent::GestureTapDownCancel. After all the chromium code
was landed, it was suggested that 'TapDownCancel' was a better name
than 'TapCancel' since you can't cancel a Tap. I'm not changing the
WebInputEvent definition here because that would be a breaking change
to chromium, but I can do that as a series of follow-up CLs.

  • src/WebInputEventConversion.cpp:

(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):

  • src/WebPopupMenuImpl.cpp:

(WebKit::WebPopupMenuImpl::handleInputEvent):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):

Tools: Add handling of new GestureTapCancel in DRT

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

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-17
Reviewed by Antonio Gomes.

  • DumpRenderTree/chromium/TestWebPlugin.cpp:

(TestWebPlugin::handleInputEvent):

  • DumpRenderTree/chromium/EventSender.cpp:

(EventSender::gestureTapCancel):

12:33 PM Changeset in webkit [128793] by ap@apple.com
  • 2 edits in trunk/LayoutTests

https://bugs.webkit.org/show_bug.cgi?id=96942
[Mac] Failing test http/tests/inspector/network/network-xhr-replay.html

  • platform/mac/Skipped: Skipping a test for the newly added feature.
12:19 PM Changeset in webkit [128792] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash if we fail to allocate memory for the argument encoder buffer.
https://bugs.webkit.org/show_bug.cgi?id=88367

Reviewed by Andreas Kling.
<rdar://problem/11488239>

Since there's no way to recover from malloc returning null here, just crash.

  • Platform/CoreIPC/ArgumentEncoder.cpp:

(CoreIPC::ArgumentEncoder::grow):

12:08 PM Changeset in webkit [128791] by cevans@google.com
  • 6 edits
    3 copies in branches/chromium/1229

Merge 127534
BUG=143439
Review URL: https://codereview.chromium.org/10914322

12:07 PM Changeset in webkit [128790] by fpizlo@apple.com
  • 16 edits in trunk/Source

Array profiling has convergence issues
https://bugs.webkit.org/show_bug.cgi?id=96891

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Now each array profiling site merges in the indexing type it observed into
the m_observedArrayModes bitset. The ArrayProfile also uses this to detect
cases where the structure must have gone polymorphic (if the bitset is
polymorphic then the structure must be). This achieves something like the
best of both worlds: on the one hand, we get a probabilistic structure that
we can use to optimize the monomorphic structure case, but on the other hand,
we get an accurate view of the set of types that were encountered.

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::or32):
(MacroAssemblerARMv7):

  • assembler/MacroAssemblerX86.h:

(JSC::MacroAssemblerX86::or32):
(MacroAssemblerX86):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::or32):
(MacroAssemblerX86_64):

  • assembler/X86Assembler.h:

(X86Assembler):
(JSC::X86Assembler::orl_rm):

  • bytecode/ArrayProfile.cpp:

(JSC::ArrayProfile::computeUpdatedPrediction):

  • bytecode/ArrayProfile.h:

(JSC::ArrayProfile::addressOfArrayModes):
(JSC::ArrayProfile::structureIsPolymorphic):

  • jit/JIT.h:

(JIT):

  • jit/JITInlineMethods.h:

(JSC):
(JSC::JIT::emitArrayProfilingSite):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::privateCompilePatchGetArrayLength):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::privateCompilePatchGetArrayLength):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:

Source/WTF:

Added functions for testing if something is a power of 2.

  • wtf/MathExtras.h:

(hasZeroOrOneBitsSet):
(hasTwoOrMoreBitsSet):

12:03 PM Changeset in webkit [128789] by commit-queue@webkit.org
  • 16 edits in trunk/Source

IndexedDB: Use ScriptValue instead of SerializedScriptValue for get/openCursor
https://bugs.webkit.org/show_bug.cgi?id=95409

Patch by Alec Flett <alecflett@chromium.org> on 2012-09-17
Reviewed by Kentaro Hara.

Source/WebCore:

This reduces a bunch of serialization/deserialization when writing
to objectstores with indexes.

No new tests, as this covers core functionality of IndexedDB, and
almost every test would fail. Some likely tests that would fail
fundamentally include:

storage/indexeddb/objectstore-basics.html
storage/indexeddb/cursor-basics.html
storage/indexeddb/index-basics.html

  • Modules/indexeddb/IDBAny.cpp:

(WebCore::IDBAny::scriptValue):
(WebCore::IDBAny::integer):
(WebCore):
(WebCore::IDBAny::set):

  • Modules/indexeddb/IDBAny.h:

(WebCore):
(IDBAny):
(WebCore::IDBAny::create):

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::setValueReady):

  • Modules/indexeddb/IDBCursor.h:

(WebCore):
(IDBCursor):

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::version):

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::setResultCursor):
(WebCore::IDBRequest::onSuccess):
(WebCore):
(WebCore::IDBRequest::onSuccessInternal):
(WebCore::IDBRequest::dispatchEvent):

  • Modules/indexeddb/IDBRequest.h:

(IDBRequest):

  • Modules/indexeddb/IDBTransactionCallbacks.h:
  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::deserializeIDBValue):
(WebCore::injectIDBKeyIntoScriptValue):

  • bindings/v8/IDBBindingUtilities.h:

(WebCore):

  • bindings/v8/custom/V8IDBAnyCustom.cpp:

(WebCore::toV8):

Source/WebKit/chromium:

This removes a bunch of tests that have been migrated to
LayoutTests, in https://bugs.webkit.org/show_bug.cgi?id=96818.

  • tests/IDBBindingUtilitiesTest.cpp:

(WebCore::checkKeyFromValueAndKeyPathInternal):
(WebCore::checkKeyPathNullValue):
(WebCore::injectKey):
(WebCore::checkInjection):
(WebCore::checkInjectionFails):
(WebCore::checkKeyPathStringValue):
(WebCore::checkKeyPathNumberValue):
(WebCore::TEST):

  • tests/IDBKeyPathTest.cpp:
11:53 AM Changeset in webkit [128788] by abarth@webkit.org
  • 17 edits
    2 copies in trunk/Source/WebCore

We should make collecting metrics easier by adding an IDL attribute
https://bugs.webkit.org/show_bug.cgi?id=96837

Reviewed by Kentaro Hara.

Currently it is too hard to set up a good measurement experiment to see
whether we can safely remove a feature (including vendor-prefixed
features). This patch introduces the [V8MeasureAs] IDL attribute to make
that process easier.

When you add the [V8MeasureAs] IDL property to an API, we'll count what
fraction of Page objects used that API.

  • Modules/notifications/DOMWindowNotifications.idl:
  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateFeatureObservation):
(GenerateNormalAttrGetter):
(GenerateReplaceableAttrSetter):
(GenerateNormalAttrSetter):
(GenerateOverloadedFunctionCallback):
(GenerateFunctionCallback):
(GenerateConstructorCallback):
(GenerateNamedConstructorCallback):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::testObjAttrAttrGetter):
(WebCore::TestObjV8Internal::testObjAttrAttrSetter):
(WebCore::TestObjV8Internal::objMethodCallback):
(WebCore):

  • page/Page.h:

(WebCore::Page::featureObserver):
(Page):

11:49 AM Changeset in webkit [128787] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

https://bugs.webkit.org/show_bug.cgi?id=96936
Opt into layers for fixed positioned elements for TiledDrawingArea

Reviewed by Tim Horton.

This code already exists in DrawingAreaImpl, and we need it for
TiledCoreAnimationDrawingArea as well.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updatePreferences):

11:44 AM Changeset in webkit [128786] by commit-queue@webkit.org
  • 9 edits
    2 adds in trunk

[CSS Exclusions] Enable shape-inside for percentage lengths based on logical height
https://bugs.webkit.org/show_bug.cgi?id=93547

Patch by Bear Travis <betravis@adobe.com> on 2012-09-17
Reviewed by Levi Weintraub.

Source/WebCore:

Shape-inside needs to be passed the logical size to use when computing percentage
based coordinates. The CSS Regions-specific method computeInitialRegionRangeForBlock
has been generalized to updateRegionsAndExclusionsLogicalSize. This method takes
the pre-child-layout logical width and height, and uses them to compute the logical
width and height that regions and exclusions should use for layout. Regions use a
block's maximum possible logical height to compute a region's maximum extent.
Exclusions use a block's fixed logical width and height, or 0 if one does not exist,
to resolve percentage-based shape lengths. The default logical size used for resolving
percentage based coordinates is tested in shape-inside-percentage-auto.html.

Test: fast/exclusions/shape-inside/shape-inside-percentage.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize): Calculates the logical
height regions and exclusions should use, and updates their layout sizes through
computeExclusionShapeSize and computeRegionRangeForBlock.
(WebCore):
(WebCore::RenderBlock::computeExclusionShapeSize): Pass the appropriate logical size
to exclusion shapes so they can resolve percentage based coordinates.
(WebCore::RenderBlock::layoutBlock): Call the new updateRegionsAndExclusionsLogicalSize
method.

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderBox.cpp:

(WebCore::percentageLogicalHeightIsResolvable): Determine if percentage lengths
based on logical height can be resolved.
(WebCore):
(WebCore::RenderBox::percentageLogicalHeightIsResolvableFromBlock): Added declaration.

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock): Calling
updateRegionsAndExclusionsLogicalSize rather than computeInitialRegionRangeForBlock.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock): Ditto.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutBlock): Ditto.

LayoutTests:

Test that shape percentage-based measurements resolve correctly. Some testing is
already covered by shape-inside-percentage-auto.html.

  • fast/exclusions/shape-inside/shape-inside-percentage-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-percentage.html: Added.
11:36 AM Changeset in webkit [128785] by vangelis@chromium.org
  • 3 edits in trunk/Source/WebCore

[chromium] Add gpu_test trace events tracking the creation of a DrawingBuffer
and Canvas2DLayerBridge. They will be used by browser tests to verify the
existence of WebGL and accelerated canvas.
https://bugs.webkit.org/show_bug.cgi?id=96871

Reviewed by James Robinson.

  • platform/graphics/chromium/Canvas2DLayerBridge.cpp:

(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):

  • platform/graphics/chromium/DrawingBufferChromium.cpp:

(WebCore::DrawingBuffer::DrawingBuffer):

11:36 AM Changeset in webkit [128784] by leandrogracia@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Fix cases where find-in-page doesn't send a final update
https://bugs.webkit.org/show_bug.cgi?id=96402

Fix some issues in the WebKit implementation that prevented to send a final
reportFindInPageMatchCount message.

Reviewed by Adam Barth.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit):
(WebKit::WebFrameImpl::finishCurrentScopingEffort):
(WebKit::WebFrameImpl::cancelPendingScopingEffort):
(WebKit::WebFrameImpl::WebFrameImpl):
(WebKit::WebFrameImpl::shouldScopeMatches):

  • src/WebFrameImpl.h:
11:28 AM Changeset in webkit [128783] by ojan@chromium.org
  • 2 edits in trunk/LayoutTests

Cleanup the final instance of BUGUSERNAME.

  • platform/chromium/TestExpectations:
11:26 AM Changeset in webkit [128782] by pdr@google.com
  • 3 edits in trunk/Tools

Teach style checker about preprocessor directive indentation rules
https://bugs.webkit.org/show_bug.cgi?id=96874

Reviewed by Adam Barth.

Preprocessor directives (#ifdef, #include, #define, etc.) should not be indented.
This is not explicit in our style guide but is generally followed in our code.
Searching for violations in our codebase shows these are rarely indented:

#include - indented in 6 files
#ifdef - indented in 0 files
#ifndef - indented in 1 file
#define - indented in 11 files
#if - indented in 7 files

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

(check_directive_indentation):

This is the simple test where we look for spaces followed by a #.

(check_style):

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

A few tests needed to be modified because they had unintentionally indented
preprocessor directives.

(CppStyleTest.test_build_class.Foo):
(CppStyleTest.test_build_class):
(CppStyleTest.test_build_class.DERIVE_FROM_GOO):
(WebKitStyleTest.test_line_breaking):
(WebKitStyleTest.test_directive_indentation):

11:22 AM Changeset in webkit [128781] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, skip one more crashy test to paint the bot green.

  • platform/qt/Skipped:
11:19 AM Changeset in webkit [128780] by commit-queue@webkit.org
  • 5 edits
    4 adds in trunk

Fix LoadImagesAutomatically cache behavior
https://bugs.webkit.org/show_bug.cgi?id=96829

Patch by Bo Liu <boliu@chromium.org> on 2012-09-17
Reviewed by Adam Barth.

I broke the caching behavior of LoadImagesAutomatically in
http://trac.webkit.org/changeset/128645

This restores the original behavior that AutoLoadImage does not block
loads from memory cache.

Source/WebCore:

Test: fast/loader/display-image-unset-allows-cached-image-load.html

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::determineRevalidationPolicy):
(WebCore::CachedResourceLoader::clientAllowsImage):
(WebCore::CachedResourceLoader::shouldDeferImageLoad):

  • loader/cache/CachedResourceLoader.h:

(CachedResourceLoader):

LayoutTests:

  • fast/loader/display-image-unset-allows-cached-image-load-expected.txt: Added.
  • fast/loader/display-image-unset-allows-cached-image-load.html: Added.
  • fast/loader/resources/image1.html: Added.
  • fast/loader/resources/image2.html: Added.
  • platform/wk2/Skipped:
11:17 AM Changeset in webkit [128779] by rniwa@webkit.org
  • 2 edits
    1 add in trunk/PerformanceTests

Perf test results is incomprehensive
https://bugs.webkit.org/show_bug.cgi?id=94668

Reviewed by Eric Seidel.

Overhauled the results page to have a tabular view. Clicking on each row shows a flot graph we used to have.
For each run and test, we show the mean value with the standard deviation along with the percent difference
against the reference run chosen by the user if the difference is statistically significant; it also indicates
whether the new value is progression or not.

The unit of each test is adjusted automatically using SI prefixes (Kilo, Mega, Milli), and rows can be sorted
by each column. Time and memory results are separated into two tabs.

  • resources/jquery.tablesorter.min.js: Added.
  • resources/results-template.html:
11:13 AM Changeset in webkit [128778] by commit-queue@webkit.org
  • 9 edits
    4 adds in trunk/Source/WebCore

Web Inspector: Display Named Flows in the Tabbed Pane of the "CSS Named Flows" Drawer
https://bugs.webkit.org/show_bug.cgi?id=96733

Patch by Andrei Poenaru <poenaru@adobe.com> on 2012-09-17
Reviewed by Alexander Pavlov.

Added functionality to the Tabbed Pane from the CSS Named Flows Drawer.

  • English.lproj/localizedStrings.js:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/CSSNamedFlowCollectionsView.js:

(WebInspector.CSSNamedFlowCollectionsView.prototype._appendNamedFlow):
(WebInspector.CSSNamedFlowCollectionsView.prototype._removeNamedFlow):
(WebInspector.CSSNamedFlowCollectionsView.prototype._updateNamedFlow):
(WebInspector.CSSNamedFlowCollectionsView.prototype._showNamedFlow):
(WebInspector.CSSNamedFlowCollectionsView.prototype._selectNamedFlowInSidebar):
(WebInspector.CSSNamedFlowCollectionsView.prototype._selectNamedFlowTab):
(WebInspector.CSSNamedFlowCollectionsView.prototype._tabSelected):
(WebInspector.CSSNamedFlowCollectionsView.prototype._tabClosed):
(WebInspector.CSSNamedFlowCollectionsView.prototype.wasShown):
(WebInspector.CSSNamedFlowCollectionsView.prototype.willHide):
(WebInspector.FlowTreeElement):
(WebInspector.FlowTreeElement.prototype.setOverset):

  • inspector/front-end/CSSNamedFlowView.js: Added.

(WebInspector.CSSNamedFlowView):
(WebInspector.CSSNamedFlowView.prototype._createFlowTreeOutline):
(WebInspector.CSSNamedFlowView.prototype._insertContentNode):
(WebInspector.CSSNamedFlowView.prototype._insertRegion):
(WebInspector.CSSNamedFlowView.prototype.get flow):
(WebInspector.CSSNamedFlowView.prototype.set flow):
(WebInspector.CSSNamedFlowView.prototype._updateRegionOverset):
(WebInspector.CSSNamedFlowView.prototype._mergeContentNodes):
(WebInspector.CSSNamedFlowView.prototype._mergeRegions):
(WebInspector.CSSNamedFlowView.prototype._update):

  • inspector/front-end/ElementsPanel.js:
  • inspector/front-end/Images/regionEmpty.png: Added.
  • inspector/front-end/Images/regionFit.png: Added.
  • inspector/front-end/Images/regionOverset.png: Added.
  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/cssNamedFlows.css:

(.css-named-flow-collections-view .split-view-sidebar-left .named-flow-overflow::before, .css-named-flow-collections-view .region-empty:before, .css-named-flow-collections-view .region-fit::before, .css-named-flow-collections-view .region-overset::before):
(.css-named-flow-collections-view .split-view-sidebar-left .named-flow-overflow::before):
(.css-named-flow-collections-view .region-empty::before):
(.css-named-flow-collections-view .region-fit::before):
(.css-named-flow-collections-view .region-overset::before):
(.css-named-flow-collections-view .split-view-contents .named-flow-element):

11:00 AM Changeset in webkit [128777] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Not reviewed. Added svn:eol-style native to unbreak some build bots.
https://bugs.webkit.org/show_bug.cgi?id=96175.

  • JavaScriptCore.vcproj/LLIntAssembly/LLIntAssembly.vcproj: Added property svn:eol-style.
  • JavaScriptCore.vcproj/LLIntDesiredOffsets/LLIntDesiredOffsets.vcproj: Added property svn:eol-style.
  • JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractor.vcproj: Added property svn:eol-style.
10:58 AM Changeset in webkit [128776] by zandobersek@gmail.com
  • 6 edits in trunk

[Gtk] Remove configuration options for stable features that are currently enabled
https://bugs.webkit.org/show_bug.cgi?id=96621

Reviewed by Martin Robinson.

.:

Remove configuration flags that were used for either features that were enabled
by default or were enabled only when unstable features support was enabled. In
any case the feature was removed only if it does not introduce a dependency.

  • configure.ac:

Source/WebCore:

Remove Automake conditional checking for features that are being removed in
configure.ac. Unstable features that don't introduce dependencies are now
disabled if necessary by being listed in the unstable feature defines overriding
variable.

No new tests - no new functionality.

  • GNUmakefile.am:
  • GNUmakefile.features.am:
  • bindings/gobject/GNUmakefile.am:
10:54 AM Changeset in webkit [128775] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Cleanup/refactor the user agent detection code
https://bugs.webkit.org/show_bug.cgi?id=96822

Unreviewed build fix.

Build fixes for Windows and Mac OS builds.

Patch by Lauro Neto <lauro.neto@openbossa.org> on 2012-09-17

  • platform/qt/UserAgentQt.cpp:

(WebCore::UserAgentQt::standardUserAgent):

QLatin1String doesn't have a default contructor. Replaced #ifdef with #if.

10:53 AM Changeset in webkit [128774] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't load a blocked plug-in if a non-blocked version of the same plug-in exists
https://bugs.webkit.org/show_bug.cgi?id=96933
<rdar://problem/12206720>

Reviewed by Andreas Kling.

If a plug-in with the same bundle identifier already exists and it's blocked, remove it and replace it
with the other version.

  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:

(WebKit::PluginInfoStore::shouldUsePlugin):

10:49 AM WebKitGTK/1.10.x edited by Martin Robinson
(diff)
10:13 AM Changeset in webkit [128773] by jsbell@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

[Chromium] IndexedDB: Remove legacy two-phase open() API members
https://bugs.webkit.org/show_bug.cgi?id=96802

Reviewed by Tony Chang.

Following http://webkit.org/b/90411 and subsequent cleanup on the Chromium side,
these entry points are no longer needed.

  • public/WebIDBDatabase.h: Delete old second-phase open(db-callbacks)
  • public/WebIDBFactory.h: Delete old first-phase open() w/o db-callbacks
  • src/WebIDBDatabaseImpl.cpp: No longer need to account for a close between phases.

(WebKit::WebIDBDatabaseImpl::WebIDBDatabaseImpl):
(WebKit::WebIDBDatabaseImpl::close):
(WebKit::WebIDBDatabaseImpl::forceClose):

  • src/WebIDBDatabaseImpl.h:

(WebIDBDatabaseImpl):

10:03 AM Changeset in webkit [128772] by tonikitoo@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] [FullScreen] entering/leaving fullscreen results in temporary glitches on the screen
https://bugs.webkit.org/show_bug.cgi?id=96927
PR #180866

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>

Suspend backing store and screen updates while entering fullscreen,
and only resume at the end, when viewport is resized.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):

  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::enterFullScreenForElement):
(WebCore::ChromeClientBlackBerry::exitFullScreenForElement):

10:02 AM Changeset in webkit [128771] by mark.lam@apple.com
  • 5 edits
    13 adds in trunk/Source

Added MSVC project changes to enable building the llint.
https://bugs.webkit.org/show_bug.cgi?id=96175.

Reviewed by Geoff Garen.

This only adds the ability to build the llint, but currently, only the
C++ backend is supported. By default, the Windows port will remain
running with the baseline JIT. The llint will not be enabled.

Source/JavaScriptCore:

Source/WebKit/win:

  • WebKit.vcproj/WebKit.sln:
9:35 AM Changeset in webkit [128770] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Updates to the useragent patch

[Qt] Cleanup/refactor the user agent detection code
https://bugs.webkit.org/show_bug.cgi?id=96822

Patch by Lauro Neto <lauro.neto@openbossa.org> on 2012-09-17
Reviewed by Simon Hausmann.

Replaced Q_WS_*/Q_OS_* with WTF OS/CPU detection macros.
Cleanup the check for unsupported OS.
Replaced QString.arg() usage with simple string concatenation.

  • platform/qt/UserAgentQt.cpp:

(WebCore::UserAgentQt::standardUserAgent):

9:26 AM Changeset in webkit [128769] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r128759.
http://trac.webkit.org/changeset/128759
https://bugs.webkit.org/show_bug.cgi?id=96929

New assertion hit on multiple platforms (Requested by carewolf
on #webkit).

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

  • dom/Document.cpp:

(WebCore::Document::updateHoverActiveState):

9:21 AM Changeset in webkit [128768] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt]REGRESSION(r128699): It made 2 fast/js/dfg tests assert
https://bugs.webkit.org/show_bug.cgi?id=96907

Patch by János Badics <János Badics> on 2012-09-17
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped: Skip new crashing tests.
9:06 AM Changeset in webkit [128767] by rwlbuis@webkit.org
  • 10 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix compile problems in WebKit/blackberry
https://bugs.webkit.org/show_bug.cgi?id=96926

Reviewed by Antonio Gomes.

This code is slightly out of date and so will not compile, fix it.

  • WebCoreSupport/BatteryClientBlackBerry.cpp:

(WebCore::BatteryClientBlackBerry::BatteryClientBlackBerry):

  • WebCoreSupport/BatteryClientBlackBerry.h:

(WebKit):

  • WebCoreSupport/CredentialTransformData.h:
  • WebCoreSupport/DeviceOrientationClientBlackBerry.cpp:

(DeviceOrientationClientBlackBerry::onOrientation):

  • WebCoreSupport/InspectorClientBlackBerry.h:
  • WebCoreSupport/PagePopupBlackBerry.cpp:
  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::isDateTimeInputField):
(BlackBerry::WebKit::DOMSupport::isTextBasedContentEditableElement):

  • WebKitSupport/DumpRenderTreeSupport.cpp:

(DumpRenderTreeSupport::numberOfPendingGeolocationPermissionRequests):

  • WebKitSupport/InPageSearchManager.cpp:

(BlackBerry::WebKit::InPageSearchManager::scopeStringMatches):

9:05 AM Changeset in webkit [128766] by tonikitoo@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] BackingStorePrivate::resumeScreenAndBackingStoreUpdates more atomic
https://bugs.webkit.org/show_bug.cgi?id=96925

[FullScreen] entering/leaving fullscreen results in temporary glitches on the screen (part 2/3)
PR #180866

eviewed by Rob Buis.
Patch by Antonio Gomes <agomes@rim.com>
Internally reviewed by Arvid Nilsson.

Paraphrasing Arvid "resumeBackingStore will be a truly atomic operation.
Well more atomic than it was before, with regards to a mix of accelerated and
non-accelerated compositing content".

I.e. by committing the root layer (if needed) when resuming the Backing
Store, we call blitVisibleContents right way, so we are actually shortcutting when
AC content will get on screen.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::resumeScreenAndBackingStoreUpdates):

8:57 AM Changeset in webkit [128765] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Skip again tests that were unskipped recently
https://bugs.webkit.org/show_bug.cgi?id=96923

Unreviewed EFL gardening.

Skip again several test cases that were unskipped in
r128753 but don't seem to pass on the bots for some
reason.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17

  • platform/efl-wk1/TestExpectations:
  • platform/efl/TestExpectations:
8:45 AM Changeset in webkit [128764] by loislo@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Temporary disable visited set counter check.

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::TEST):

8:22 AM Changeset in webkit [128763] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk/LayoutTests

[EFL] Clean up Skipped list
https://bugs.webkit.org/show_bug.cgi?id=96918

Unreviewed EFL gardening.

Unskip several test cases that are now passing for
EFL port.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17

  • platform/efl/Skipped:
  • platform/efl/editing/input/caret-at-the-edge-of-input-expected.png: Added.
  • platform/efl/editing/input/caret-at-the-edge-of-input-expected.txt: Added.
  • platform/efl/editing/unsupported-content/list-delete-001-expected.png:
  • platform/efl/editing/unsupported-content/list-type-after-expected.png:
  • platform/efl/fast/block/basic/fieldset-stretch-to-legend-expected.png:
  • platform/efl/fast/block/basic/fieldset-stretch-to-legend-expected.txt:
8:12 AM Changeset in webkit [128762] by loislo@chromium.org
  • 98 edits in trunk/Source

Web Inspector: NMI: now when we can detect instrumented classes we can
remove addInstrumentedMember and use addMember for everything.
https://bugs.webkit.org/show_bug.cgi?id=96913

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • bindings/v8/DOMDataStore.cpp:

(WebCore::DOMDataStore::reportMemoryUsage):

  • bindings/v8/IntrusiveDOMWrapperMap.h:
  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::reportMemoryUsage):

  • css/CSSBorderImageSliceValue.cpp:

(WebCore::CSSBorderImageSliceValue::reportDescendantMemoryUsage):

  • css/CSSCalculationValue.cpp:
  • css/CSSCanvasValue.cpp:

(WebCore::CSSCanvasValue::reportDescendantMemoryUsage):

  • css/CSSCharsetRule.cpp:

(WebCore::CSSCharsetRule::reportDescendantMemoryUsage):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::reportMemoryUsage):

  • css/CSSCrossfadeValue.cpp:

(WebCore::CSSCrossfadeValue::reportDescendantMemoryUsage):

  • css/CSSFontFaceRule.cpp:

(WebCore::CSSFontFaceRule::reportDescendantMemoryUsage):

  • css/CSSFontFaceSrcValue.cpp:

(WebCore::CSSFontFaceSrcValue::reportDescendantMemoryUsage):

  • css/CSSFunctionValue.cpp:

(WebCore::CSSFunctionValue::reportDescendantMemoryUsage):

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientColorStop::reportMemoryUsage):
(WebCore::CSSGradientValue::reportBaseClassMemoryUsage):
(WebCore::CSSLinearGradientValue::reportDescendantMemoryUsage):
(WebCore::CSSRadialGradientValue::reportDescendantMemoryUsage):

  • css/CSSImageSetValue.cpp:

(WebCore::CSSImageSetValue::ImageWithScale::reportMemoryUsage):

  • css/CSSImageValue.cpp:

(WebCore::CSSImageValue::reportDescendantMemoryUsage):

  • css/CSSImportRule.cpp:

(WebCore::CSSImportRule::reportDescendantMemoryUsage):

  • css/CSSMediaRule.cpp:

(WebCore::CSSMediaRule::reportDescendantMemoryUsage):

  • css/CSSPageRule.cpp:

(WebCore::CSSPageRule::reportDescendantMemoryUsage):

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::reportDescendantMemoryUsage):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::reportMemoryUsage):

  • css/CSSReflectValue.cpp:

(WebCore::CSSReflectValue::reportDescendantMemoryUsage):

  • css/CSSRule.cpp:

(WebCore::CSSRule::reportBaseClassMemoryUsage):

  • css/CSSRuleList.h:
  • css/CSSStyleRule.cpp:

(WebCore::CSSStyleRule::reportDescendantMemoryUsage):

  • css/CSSStyleSheet.cpp:

(WebCore::CSSStyleSheet::reportMemoryUsage):

  • css/CSSValue.cpp:

(WebCore::TextCloneCSSValue::reportDescendantMemoryUsage):

  • css/CSSVariableValue.h:

(WebCore::CSSVariableValue::reportDescendantMemoryUsage):

  • css/FontFeatureValue.cpp:

(WebCore::FontFeatureValue::reportDescendantMemoryUsage):

  • css/FontValue.cpp:

(WebCore::FontValue::reportDescendantMemoryUsage):

  • css/MediaList.cpp:

(WebCore::MediaList::reportMemoryUsage):

  • css/MediaQuery.cpp:

(WebCore::MediaQuery::reportMemoryUsage):

  • css/MediaQueryExp.cpp:

(WebCore::MediaQueryExp::reportMemoryUsage):

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::PropertySetCSSStyleDeclaration::reportMemoryUsage):
(WebCore::StyleRuleCSSStyleDeclaration::reportMemoryUsage):
(WebCore::InlineCSSStyleDeclaration::reportMemoryUsage):

  • css/ShadowValue.cpp:

(WebCore::ShadowValue::reportDescendantMemoryUsage):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::reportMemoryUsage):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

  • css/StyleRule.cpp:

(WebCore::StyleRule::reportDescendantMemoryUsage):
(WebCore::StyleRulePage::reportDescendantMemoryUsage):
(WebCore::StyleRuleFontFace::reportDescendantMemoryUsage):
(WebCore::StyleRuleMedia::reportDescendantMemoryUsage):
(WebCore::StyleRuleRegion::reportDescendantMemoryUsage):

  • css/StyleRuleImport.cpp:

(WebCore::StyleRuleImport::reportDescendantMemoryUsage):

  • css/StyleSheetContents.cpp:

(WebCore::StyleSheetContents::reportMemoryUsage):

  • css/WebKitCSSKeyframeRule.cpp:

(WebCore::StyleKeyframe::reportMemoryUsage):
(WebCore::WebKitCSSKeyframeRule::reportDescendantMemoryUsage):

  • css/WebKitCSSKeyframesRule.cpp:

(WebCore::StyleRuleKeyframes::reportDescendantMemoryUsage):
(WebCore::WebKitCSSKeyframesRule::reportDescendantMemoryUsage):

  • css/WebKitCSSRegionRule.cpp:

(WebCore::WebKitCSSRegionRule::reportDescendantMemoryUsage):

  • css/WebKitCSSSVGDocumentValue.cpp:

(WebCore::WebKitCSSSVGDocumentValue::reportDescendantMemoryUsage):

  • css/WebKitCSSShaderValue.cpp:

(WebCore::WebKitCSSShaderValue::reportDescendantMemoryUsage):

  • dom/Attribute.h:

(WebCore::Attribute::reportMemoryUsage):

  • dom/CharacterData.cpp:

(WebCore::CharacterData::reportMemoryUsage):

  • dom/ContainerNode.h:

(WebCore::ContainerNode::reportMemoryUsage):

  • dom/Document.cpp:

(WebCore::Document::reportMemoryUsage):

  • dom/Element.h:

(WebCore::Element::reportMemoryUsage):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::reportMemoryUsage):

  • dom/Event.cpp:

(WebCore::Event::reportMemoryUsage):

  • dom/Node.cpp:

(WebCore::Node::reportMemoryUsage):

  • dom/QualifiedName.cpp:

(WebCore::QualifiedName::reportMemoryUsage):
(WebCore::QualifiedName::QualifiedNameImpl::reportMemoryUsage):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::reportMemoryUsage):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::reportMemoryUsage):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::reportMemoryUsage):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::reportMemoryUsage):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::reportMemoryUsage):

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::reportMemoryUsage):

  • loader/SubstituteData.cpp:

(WebCore::SubstituteData::reportMemoryUsage):

  • loader/cache/CachedCSSStyleSheet.cpp:

(WebCore::CachedCSSStyleSheet::reportMemoryUsage):

  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::reportMemoryUsage):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::reportMemoryUsage):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::reportMemoryUsage):

  • loader/cache/CachedResourceHandle.cpp:

(WebCore::CachedResourceHandleBase::reportMemoryUsage):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::reportMemoryUsage):

  • loader/cache/CachedSVGDocument.cpp:

(WebCore::CachedSVGDocument::reportMemoryUsage):

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::reportMemoryUsage):

  • loader/cache/CachedShader.cpp:

(WebCore::CachedShader::reportMemoryUsage):

  • loader/cache/CachedXSLStyleSheet.cpp:

(WebCore::CachedXSLStyleSheet::reportMemoryUsage):

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::reportMemoryUsage):

  • page/Frame.cpp:

(WebCore::Frame::reportMemoryUsage):

  • platform/KURL.cpp:

(WebCore::KURL::reportMemoryUsage):

  • platform/KURLGoogle.cpp:

(WebCore::KURLGooglePrivate::reportMemoryUsage):

  • platform/KURLWTFURLImpl.h:

(WebCore::KURLWTFURLImpl::reportMemoryUsage):

  • platform/TreeShared.h:

(WebCore::TreeShared::reportMemoryUsage):

  • platform/graphics/CrossfadeGeneratedImage.cpp:

(WebCore::CrossfadeGeneratedImage::reportMemoryUsage):

  • platform/graphics/Image.cpp:

(WebCore::Image::reportMemoryUsage):

  • platform/network/ResourceRequestBase.cpp:

(WebCore::ResourceRequestBase::reportMemoryUsage):

  • platform/network/ResourceResponseBase.cpp:

(WebCore::ResourceResponseBase::reportMemoryUsage):

  • rendering/style/DataRef.h:

(WebCore::DataRef::reportMemoryUsage):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::reportMemoryUsage):

  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::reportMemoryUsage):

  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::reportMemoryUsage):

  • svg/SVGPaint.cpp:

(WebCore::SVGPaint::reportDescendantMemoryUsage):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::reportMemoryUsage):

Source/WebKit/chromium:

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::InstrumentedDOM::reportMemoryUsage):
(WebCore::NonVirtualInstrumented::reportMemoryUsage):
(WebCore::InstrumentedOwner::reportMemoryUsage):

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::addRootObject):
(WTF::MemoryInstrumentation::addObject):
(WTF::MemoryInstrumentation::addObjectImpl):
(WTF):
(WTF::MemoryInstrumentation::addInstrumentedCollection):
(WTF::MemoryInstrumentation::addInstrumentedMapEntries):
(WTF::MemoryInstrumentation::addInstrumentedMapValues):

  • wtf/text/AtomicString.cpp:

(WTF::AtomicString::reportMemoryUsage):

  • wtf/text/CString.h:

(WTF::CString::reportMemoryUsage):

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::reportMemoryUsage):

  • wtf/text/WTFString.cpp:

(WTF::String::reportMemoryUsage):

  • wtf/url/api/ParsedURL.cpp:

(WTF::ParsedURL::reportMemoryUsage):

  • wtf/url/api/URLString.cpp:

(WTF::URLString::reportMemoryUsage):

8:08 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
8:06 AM Changeset in webkit [128761] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-1.9.92

Tagging the WebKitGTK+ 1.9.92 release

8:06 AM Changeset in webkit [128760] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Use glDeleteProgram to delete OpenGL shader programs.
https://bugs.webkit.org/show_bug.cgi?id=96771

Patch by Filip Spacek <fspacek@rim.com> on 2012-09-17
Reviewed by Rob Buis.

Reviewed internally by Arvid Nilsson.

  • platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:

(WebCore::EGLImageLayerWebKitThread::EGLImageLayerWebKitThread):
(WebCore::EGLImageLayerWebKitThread::~EGLImageLayerWebKitThread):
(WebCore::EGLImageLayerWebKitThread::deleteFrontBuffer):
(WebCore::EGLImageLayerWebKitThread::createShaderIfNeeded):
(WebCore::EGLImageLayerWebKitThread::blitToFrontBuffer):

  • platform/graphics/blackberry/EGLImageLayerWebKitThread.h:

(EGLImageLayerWebKitThread):

8:04 AM Changeset in webkit [128759] by allan.jensen@nokia.com
  • 2 edits in trunk/Source/WebCore

Revert r127457 and following fixes due to several hit-testing regressions
https://bugs.webkit.org/show_bug.cgi?id=96830

Reviewed by Antonio Gomes.

The revert misssed one related follow-up.

  • dom/Document.cpp:

(WebCore::Document::updateHoverActiveState):

8:03 AM Changeset in webkit [128758] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-1.10

Unreviewed. Update NEWS and configure.ac for 1.9.92 release

8:02 AM Changeset in webkit [128757] by allan.jensen@nokia.com
  • 6 edits in trunk

[TouchAdjustment] Adjusted point outside bounds for non-rectilinear targets
https://bugs.webkit.org/show_bug.cgi?id=96098

Reviewed by Antonio Gomes.

Source/WebCore:

Simplifies how snapTo tries to restrict the adjustment to the touch-area, and
at the same fix it to give better guarantees.

Test: touchadjustment/rotated-node.html

  • page/TouchAdjustment.cpp:

(WebCore::TouchAdjustment::snapTo):

LayoutTests:

Expands the test of rotated nodes to also perform checks of the validity of the adjusted points.

  • touchadjustment/resources/touchadjustment.js:

(adjustTouchPoint):

  • touchadjustment/rotated-node-expected.txt:
  • touchadjustment/rotated-node.html:
8:00 AM Changeset in webkit [128756] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] To support "Frames View" of "TimeLine" panel in Inspector
https://bugs.webkit.org/show_bug.cgi?id=96077

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-09-17
Reviewed by Rob Buis.

Invoke the "instrumentBeginFrame" and "instrumentCancelFrame" at the start and end of processing
render message to record one time of page's update.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::instrumentBeginFrame):
(WebKit):
(BlackBerry::WebKit::BackingStorePrivate::instrumentCancelFrame):

  • Api/BackingStore_p.h:
  • WebKitSupport/RenderQueue.cpp:

(BlackBerry::WebKit::RenderQueue::render):

7:57 AM Changeset in webkit [128755] by jpetsovits@rim.com
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Support copying image data in WebOverlay.
https://bugs.webkit.org/show_bug.cgi?id=96684
RIM PR 195444

Reviewed by Rob Buis.
Internally reviewed by Arvid Nilsson.

The publicly exposed WebOverlay class provides a method
setContentsToImage() to assign a pointer to pixel data,
which is later used to provide texture data for the
underlying compositing layer. This works well for static
images that stay in memory and never change, but not
so well for images with changing contents or where the
image data is being reassigned from different image
sources that are not constantly kept around in memory.

Due to the delayed upload and delayed fetching of
EGLImage data by the GPU, we shouldn't assume the caller
to know how long the image should be retained. Instead,
we should offer another method of setting image data
that takes ownership of the pixel data.

This patch adds an option to setContentsToImage() that
copies the passed pixel data and doesn't destroy it
until both the texture is destroyed and the image
contents are changed. Using this method, the caller can
withdraw the passed pixel array right after the
setContentsToImage() call without consequences.

  • Api/WebOverlay.cpp:

(BlackBerry::WebKit::WebOverlay::setContentsToImage):
(BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setContentsToImage):
(BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::WebOverlayLayerCompositingThreadClient):
(BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::invalidate):
(BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::setContents):
(WebKit):
(BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::clearUploadedContents):
(BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::setContentsToColor):
(BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::uploadTexturesIfNeeded):
(BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::deleteTextures):
(BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setContentsToImage):

  • Api/WebOverlay.h:
  • Api/WebOverlay_p.h:

(WebOverlayPrivate):
(WebOverlayPrivateWebKitThread):
(WebOverlayLayerCompositingThreadClient):
(WebOverlayPrivateCompositingThread):

6:56 AM Changeset in webkit [128754] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix Mac compilation.

  • bindings/v8/DOMDataStore.h: added missing virtual modifier.

(DOMDataStore):

6:50 AM Changeset in webkit [128753] by commit-queue@webkit.org
  • 4 edits
    7 adds in trunk/LayoutTests

[EFL] Clean up Skipped list
https://bugs.webkit.org/show_bug.cgi?id=96914

Unreviewed EFL gardening.

Clean up the EFL Skipped list. Unskip several test cases that
are now passing and provide baselines for some of them.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17

  • platform/efl-wk1/TestExpectations:
  • platform/efl/Skipped:
  • platform/efl/TestExpectations:
  • platform/efl/fast/text/emphasis-expected.png: Added.
  • platform/efl/fast/text/emphasis-expected.txt: Added.
  • platform/efl/fast/text/international/vertical-text-metrics-test-expected.txt: Added.
  • platform/efl/fast/writing-mode/text-orientation-basic-expected.png: Added.
  • platform/efl/fast/writing-mode/text-orientation-basic-expected.txt: Added.
  • platform/efl/mathml/presentation/style-expected.png: Added.
  • platform/efl/mathml/presentation/style-expected.txt: Added.
6:33 AM Changeset in webkit [128752] by yurys@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: NMI don't double count fields of StaticDOMDataStore
https://bugs.webkit.org/show_bug.cgi?id=96911

Reviewed by Alexander Pavlov.

Provided two separate memory usage reporting routines for static and
scoped DOM data stores.

  • bindings/v8/DOMDataStore.cpp:
  • bindings/v8/DOMDataStore.h:

(DOMDataStore):

  • bindings/v8/ScopedDOMDataStore.cpp:

(WebCore::ScopedDOMDataStore::reportMemoryUsage):
(WebCore):

  • bindings/v8/ScopedDOMDataStore.h:

(ScopedDOMDataStore):

  • bindings/v8/StaticDOMDataStore.cpp:

(WebCore::StaticDOMDataStore::reportMemoryUsage):
(WebCore):

  • bindings/v8/StaticDOMDataStore.h:

(StaticDOMDataStore):

6:32 AM Changeset in webkit [128751] by vestbo@webkit.org
  • 3 edits
    1 delete in trunk

[Qt] Auto-generate the module pri file for QtWebKit

Reviewed by Simon Hausmann.

6:31 AM Changeset in webkit [128750] by commit-queue@webkit.org
  • 39 edits
    4 adds in trunk

[EFL] autoscroll-in-textarea.html fails on EFL
https://bugs.webkit.org/show_bug.cgi?id=94150

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Do not call adjustTextAreaStyle() from RenderThemeEfl::adjustTextAreaStyle().
This is consistent with Mac port implementation.

Calling adjustTextAreaStyle() causes the TextArea in the test to display 6.5
rows instead of the 6 that are requested. This causes the test case to fail
because the top row that is being displayed when scrolling down is different
than the one expected.

Test: fast/events/autoscroll-in-textarea.html

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::adjustTextAreaStyle):

LayoutTests:

Unskip several test cases that are passing now that textareas
are rendered correctly.

Rebaseline several test cases due to the textarea rendering
change.

  • platform/efl/TestExpectations:
  • platform/efl/editing/input/reveal-caret-of-multiline-input-expected.png:
  • platform/efl/editing/input/reveal-caret-of-multiline-input-expected.txt:
  • platform/efl/fast/block/margin-collapse/103-expected.png:
  • platform/efl/fast/block/margin-collapse/103-expected.txt:
  • platform/efl/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
  • platform/efl/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
  • platform/efl/fast/dynamic/008-expected.png:
  • platform/efl/fast/dynamic/008-expected.txt:
  • platform/efl/fast/forms/text-control-intrinsic-widths-expected.txt:
  • platform/efl/fast/forms/textAreaLineHeight-expected.png:
  • platform/efl/fast/forms/textAreaLineHeight-expected.txt:
  • platform/efl/fast/forms/textarea-align-expected.png:
  • platform/efl/fast/forms/textarea-align-expected.txt:
  • platform/efl/fast/forms/textarea-placeholder-visibility-1-expected.png:
  • platform/efl/fast/forms/textarea-placeholder-visibility-1-expected.txt:
  • platform/efl/fast/forms/textarea-placeholder-visibility-2-expected.png:
  • platform/efl/fast/forms/textarea-placeholder-visibility-2-expected.txt:
  • platform/efl/fast/forms/textarea-scroll-height-expected.png: Added.
  • platform/efl/fast/forms/textarea-scroll-height-expected.txt: Added.
  • platform/efl/fast/forms/textarea-scrollbar-expected.png:
  • platform/efl/fast/forms/textarea-scrollbar-expected.txt:
  • platform/efl/fast/forms/textarea-scrolled-type-expected.png: Added.
  • platform/efl/fast/forms/textarea-scrolled-type-expected.txt: Added.
  • platform/efl/fast/forms/textarea-setinnerhtml-expected.png:
  • platform/efl/fast/forms/textarea-setinnerhtml-expected.txt:
  • platform/efl/fast/forms/textarea-width-expected.png:
  • platform/efl/fast/forms/textarea-width-expected.txt:
  • platform/efl/fast/overflow/overflow-x-y-expected.png:
  • platform/efl/fast/overflow/overflow-x-y-expected.txt:
  • platform/efl/fast/parser/entity-comment-in-textarea-expected.png:
  • platform/efl/fast/parser/entity-comment-in-textarea-expected.txt:
  • platform/efl/fast/parser/open-comment-in-textarea-expected.png:
  • platform/efl/fast/parser/open-comment-in-textarea-expected.txt:
  • platform/efl/fast/replaced/width100percent-textarea-expected.png:
  • platform/efl/fast/replaced/width100percent-textarea-expected.txt:
  • platform/efl/fast/table/003-expected.png:
  • platform/efl/fast/table/003-expected.txt:
  • platform/efl/http/tests/navigation/javascriptlink-frames-expected.png:
  • platform/efl/http/tests/navigation/javascriptlink-frames-expected.txt:
6:27 AM Changeset in webkit [128749] by vsevik@chromium.org
  • 4 edits
    1 move in trunk

Web Inspector: XHR replay fixes: should remove replayed xhr from memory cache, should not assert.
https://bugs.webkit.org/show_bug.cgi?id=96904

Reviewed by Yury Semikhatsky.

Source/WebCore:

Replayed request is now removed from meory cache before replaying.
Request body is now set to 0 when it was not present in original request.

Test: http/tests/inspector/network/network-xhr-replay.html

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::replayXHR):

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::sendFromInspector):

LayoutTests:

Re-enabled http/tests/inspector/network/network-xhr-replay.html test.

  • http/tests/inspector/network/network-xhr-replay.html: Renamed from LayoutTests/http/tests/inspector/network/network-xhr-replay.html_disabled.
5:52 AM Changeset in webkit [128748] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk

AX: Regression (r126369) - toggle buttons no longer return accessible titles
https://bugs.webkit.org/show_bug.cgi?id=94858

Patch by Alejandro Piñeiro <apinheiro@igalia.com> on 2012-09-17
Reviewed by Chris Fleizach.

Source/WebCore:

After the addition of the ToggleButtonRole some logic broke because some parts
of the code were assuming/waiting for a ButtonRole

Test: platform/gtk/accessibility/aria-toggle-button-with-title.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::isImageButton): using
isButton instead of a ButtonRole comparison
(WebCore::AccessibilityNodeObject::isPressed): using isButton
instead of a ButtonRole comparison
(WebCore::AccessibilityNodeObject::actionElement):
ToggleButtonRole also contemplated in order to call or not toElement
(WebCore::AccessibilityNodeObject::title): ToggleButtonRole also
contemplated in order to call or not textUnderElement

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::actionVerb): buttonAction also
assigned to ToggleButtonRole
(WebCore::AccessibilityObject::isButton): isButton now returns
that an object is a button if it is a ButtonRole, a
PopUpButtonRole or a ToggleButtonRole

  • accessibility/AccessibilityObject.h:

(AccessibilityObject): isButton is now implemented on the .c file

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::actionVerb): ToggleButtonRole
also returns a buttonAction

LayoutTests:

Added a test to verify that a toggle button exposes the title.

  • accessibility/aria-toggle-button-with-title.html: Added.
  • platform/chromium/accessibility/aria-toggle-button-with-title-expected.txt: Added.
  • platform/gtk/accessibility/aria-toggle-button-with-title-expected.txt: Added.
  • platform/mac/accessibility/aria-toggle-button-with-title-expected.txt: Added.
5:48 AM Changeset in webkit [128747] by commit-queue@webkit.org
  • 6 edits
    2 deletes in trunk/LayoutTests

[JSC] http/tests/security/cross-frame-access-put.html failing after r123145
https://bugs.webkit.org/show_bug.cgi?id=91843

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17
Reviewed by Adam Barth.

Since r123145, window.top is not longer replaceable in JSC, to bring it
in line with other browsers. The http/tests/security/cross-frame-access-put.html
now needs to be updated because it is still testing the window.top setter.

Thanks to this fix, we can now get rid of the platform-specific results for
ports using JSC.

  • http/tests/security/cross-frame-access-put-expected.txt:
  • http/tests/security/cross-frame-access-put.html:
  • platform/chromium/http/tests/security/cross-frame-access-put-expected.txt:
  • platform/efl/TestExpectations: Unskip test case.
  • platform/gtk/http/tests/security/cross-frame-access-put-expected.txt: Removed.
  • platform/mac/Skipped: Unskip test case.
  • platform/qt/http/tests/security/cross-frame-access-put-expected.txt: Removed.
5:46 AM Changeset in webkit [128746] by apavlov@chromium.org
  • 7 edits in trunk

Web Inspector: Group selectors to highlight matched selector in the Styles pane of Elements Panel
https://bugs.webkit.org/show_bug.cgi?id=96626

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Introduced evaluation of element.webkitMatchesSelector() for every part of a selector group (delimited by commas).
Non-matching selectors in groups are dimmed. If element styles have changed so that the element matches none of the selectors,
the entire group is rendered as matched.

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate.markCallback):
(WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate):
(WebInspector.StylesSidebarPane.prototype._rebuildStyleRules):
(WebInspector.StylePropertiesSection):
(WebInspector.StylePropertiesSection.prototype._markMatchedSelectorsInGroup.mycallback):
(WebInspector.StylePropertiesSection.prototype._markMatchedSelectorsInGroup.trim):
(WebInspector.StylePropertiesSection.prototype._markMatchedSelectorsInGroup.resolvedCallback):
(WebInspector.StylePropertiesSection.prototype._markMatchedSelectorsInGroup):
(WebInspector.StylePropertiesSection.prototype._markMatchedSelectorsInGroup.matchesCallback):
(WebInspector.StylePropertiesSection.prototype.startEditingSelector):
(WebInspector.StylePropertiesSection.prototype._moveEditorFromSelector.markCallback):
(WebInspector.StylePropertiesSection.prototype._moveEditorFromSelector):
(WebInspector.StylePropertiesSection.prototype.editingSelectorCancelled):

  • inspector/front-end/elementsPanel.css:

(.styles-section .selector):
(.styles-section .selector-matches):

LayoutTests:

  • http/tests/inspector/elements-test.js:

(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles.buildMarkedSelectors):
(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles): Let tests get matched selector markings in dumped data

  • inspector/styles/styles-add-new-rule-expected.txt:
  • inspector/styles/styles-add-new-rule.html:
5:45 AM Changeset in webkit [128745] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Unskip css3/flexbox/anonymous-block.html test case
https://bugs.webkit.org/show_bug.cgi?id=96909

Unreviewed EFL gardening.

Unskip css3/flexbox/anonymous-block.html for EFL port
now that it has been fixed in r121687.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17

  • platform/efl/TestExpectations:
5:37 AM Changeset in webkit [128744] by loislo@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed single line fix for mac chromium canary bot.

  • tests/MemoryInstrumentationTest.cpp:

(WebCore::TEST):

4:59 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
4:09 AM Changeset in webkit [128743] by Carlos Garcia Campos
  • 14 edits
    1 add in releases/WebKitGTK/webkit-1.10

Merge r128140 - Properly expose <legend> elements to ATs
https://bugs.webkit.org/show_bug.cgi?id=84137

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-10
Reviewed by Chris Fleizach.

Created a new WebCore Accessibility Role, LegendRole. Used it to map to
the expected platform role, ATK_ROLE_LABEL. Also established the needed
AtkRelation pair, label-for/labelled-by between the legend and fieldset.

Source/WebCore:

No new test needed - Existing legend.html test is now unskipped for Gtk.

  • accessibility/AccessibilityObject.h: Added LegendRole
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole): Map legendTag to LegendRole

  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetName): Fieldset accessible should take its name from the associated LegendRole/label
(setAtkRelationSetFromCoreObject): Set label-for/labelled-by AtkRelation pair between fieldset and legend
(atkRole): Map LegendRole to ATK_ROLE_LABEL

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(createAccessibilityRoleMap): Map LegendRole to NSAccessibilityGroupRole

Source/WebKit/chromium:

  • public/WebAccessibilityRole.h: added WebAccessibilityRoleLegend
  • src/AssertMatchingEnums.cpp: added the assert matching rule for

WebAccessibilityRoleLegend and LegendRole

Tools:

  • DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:

(roleToString): added "Legend" string for WebAccessibilityRoleLegend

LayoutTests:

  • accessibility/legend.html: Modified the test to be more platform-agnostic.
  • platform/gtk/TestExpectations: Removed legend.html from the skipped list.
  • platform/gtk/accessibility/legend-expected.txt: Added.
  • platform/mac/accessibility/legend-expected.txt: Updated.
4:08 AM Changeset in webkit [128742] by Carlos Garcia Campos
  • 15 edits
    2 adds in releases/WebKitGTK/webkit-1.10

Merge r127936 - AX: WebCore accessibility roles should be cross-platform
https://bugs.webkit.org/show_bug.cgi?id=94870

Reviewed by Chris Fleizach.

Source/WebCore:

Make 5 accessibility roles cross-platform rather than GTK-only.

Instead of mapping the HR tag to SplitterRole (which is an interactive
splitter control on Mac), create a new role HorizontalRuleRole.

Map all of the new roles to AXGroup on Mac, which matches the existing
behavior. Add a new test for these roles on Chromium.

Test: platform/chromium/accessibility/chromium-only-roles.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::supportsARIAAttributes):

  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

  • accessibility/gtk/AccessibilityObjectAtk.cpp:

(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):

  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:

(atkRole):

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(createAccessibilityRoleMap):

Source/WebKit/chromium:

Add a new accessibility role.

  • public/WebAccessibilityRole.h:
  • src/AssertMatchingEnums.cpp:

Tools:

Add debug strings to Chromium for new accessibility roles.

  • DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:

(roleToString):

LayoutTests:

Adds a test for some new accessibility roles that aren't present on all platforms.

  • platform/chromium/accessibility/chromium-only-roles-expected.txt: Added.
  • platform/chromium/accessibility/chromium-only-roles.html: Added.
4:06 AM Changeset in webkit [128741] by Carlos Garcia Campos
  • 13 edits
    2 adds in releases/WebKitGTK/webkit-1.10

Merge r127882 - Source/WebCore: AX: ARIA spin button should support range value attributes
https://bugs.webkit.org/show_bug.cgi?id=96076

Reviewed by Chris Fleizach.

Make an ARIA spin button support ARIA range attributes like
aria-valuenow, aria-valuemin, etc. - just like slider, progressbar,
and scrollbar.

Test: accessibility/spinbutton-value.html

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::isSpinButton):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::valueDescription):
(WebCore):
(WebCore::AccessibilityRenderObject::isAriaRange):
(WebCore::AccessibilityRenderObject::valueForRange):
(WebCore::AccessibilityRenderObject::maxValueForRange):
(WebCore::AccessibilityRenderObject::minValueForRange):
(WebCore::AccessibilityRenderObject::stringValue):
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::isGenericFocusableElement):
(WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren):

  • accessibility/AccessibilityRenderObject.h:

(AccessibilityRenderObject):

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

Source/WebKit/chromium: AX: ARIA spin button should support range value attributes
https://bugs.webkit.org/show_bug.cgi?id=96076

Reviewed by Chris Fleizach.

Expose supportsRangeValue to simplify Chromium logic for when to
extract a value from a range.

  • public/WebAccessibilityObject.h:

(WebAccessibilityObject):

  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::supportsRangeValue):
(WebKit):

Tools: New time input needs accessibility
https://bugs.webkit.org/show_bug.cgi?id=96032

Reviewed by Chris Fleizach.

Add support for valueDescription for testing.

  • DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:

(getValueDescription):
(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::valueDescriptionGetterCallback):

  • DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.h:

(AccessibilityUIElement):

LayoutTests: AX: ARIA spin button should support range value attributes
https://bugs.webkit.org/show_bug.cgi?id=96076

Reviewed by Chris Fleizach.

Test that an ARIA spin button exposes ARIA range attributes like
aria-valuenow, aria-valuemin, etc.

  • accessibility/spinbutton-value-expected.txt: Added.
  • accessibility/spinbutton-value.html: Added.
4:05 AM Changeset in webkit [128740] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-1.10

Merge r127825 - [Gtk] accessibility/canvas-description-and-role expected results needed
https://bugs.webkit.org/show_bug.cgi?id=95644

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-06
Reviewed by Martin Robinson.

Source/WebCore:

The new accessibility CanvasRole should be mapped to ATK_ROLE_CANVAS
rather than ATK_ROLE_IMAGE.

No new test because the CanvasRole came with a new layout test lacking
expected results for Gtk. The generated expected results for that test
reflect the revised mapping to ATK_ROLE_CANVAS.

  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:

(atkRole):

LayoutTests:

Generated expected results for Gtk. These results reflect the revised
mapping of CanvasRole to ATK_ROLE_CANVAS rather than ATK_ROLE_IMAGE.

  • platform/gtk/accessibility/canvas-description-and-role-expected.txt: Added.
4:05 AM Changeset in webkit [128739] by Carlos Garcia Campos
  • 2 edits
    1 add in releases/WebKitGTK/webkit-1.10/LayoutTests

Merge r127565 - Unreviewed GTK gardening.

Adding a platform-specific baseline for accessibility/canvas-description-and-role.html
that's required after r127084. The baseline is currently the same as Chromium's,
expecting 'AXCanvas' as the AXRole for the canvas element. The GTK port currently
reports 'image' as the AXRole - this is probably not intended so the text failure
expectation is also added for this test.

  • platform/gtk/TestExpectations:
  • platform/gtk/accessibility/canvas-description-and-role-expected.txt: Added.
4:03 AM Changeset in webkit [128738] by Carlos Garcia Campos
  • 16 edits
    2 moves
    3 adds in releases/WebKitGTK/webkit-1.10

Merge r127084 - AX: Canvas should have a distinct role
https://bugs.webkit.org/show_bug.cgi?id=95248

Reviewed by Chris Fleizach.

Source/WebCore:

Add new role for a canvas element, and a method to determine if
a canvas has fallback content, so each platform can decide on the
appropriate role mapping to use.

Test: accessibility/canvas-description-and-role.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
(WebCore):

  • accessibility/AccessibilityNodeObject.h:

(AccessibilityNodeObject):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::isCanvas):
(WebCore::AccessibilityObject::canvasHasFallbackContent):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::canHaveChildren):

  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:

(atkRole):

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(createAccessibilityRoleMap):
(-[WebAccessibilityObjectWrapper role]):

Source/WebKit/chromium:

Add support for canvas accessibility role.

  • public/WebAccessibilityRole.h:
  • src/AssertMatchingEnums.cpp:

Source/WebKit/win:

Map new CanvasRole to the same as ImageRole.

  • AccessibleBase.cpp:

(MSAARole):

Tools:

Add support for canvas accessibility role.

  • DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:

(roleToString):

LayoutTests:

Add new tests for canvas role.

  • accessibility/canvas.html: Deleted.
  • accessibility/canvas-expected.txt: Deleted.
  • accessibility/canvas-description-and-role.html: Added.
  • platform/chromium/accessibility/canvas-description-and-role-expected.txt: Added.
  • platform/gtk/TestExpectations:
  • platform/mac/accessibility/canvas.html: Added.
  • platform/mac/accessibility/canvas-expected.txt: Added.
  • platform/mac/accessibility/canvas-description-and-role-expected.txt: Added.
4:02 AM Changeset in webkit [128737] by Carlos Garcia Campos
  • 11 edits
    2 adds in releases/WebKitGTK/webkit-1.10

Merge r126970 - AX: Focusable elements without a role should not be ignored
https://bugs.webkit.org/show_bug.cgi?id=94302

Reviewed by Chris Fleizach.

Source/WebCore:

Changes the accessibility logic so that a generic element that's focusable is
not ignored for accessibility, and returns its inner text as its title. That way
if you Tab to the element, a reasonable accessibility notification is generated.

One exception is the body element, because focusing the body is equivalent to
blurring the current focused element and does not result in a "focus" accessibility
notification.

Also fixes logic that determined if an element was contentEditable by making
sure it catches the case with no attribute value (e.g. <div contentEditable>),
which also implies contentEditable=true according to the spec.

Test: accessibility/focusable-div.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore):
(WebCore::nodeHasContentEditableAttributeSet):
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):

LayoutTests:

Adds a new test to make sure that a generic focusable element (like a div with tabindex=0)
can get focus and return an appropriate title, just like a form control or element with
an ARIA role.

Modifies three existing tests that were previously assuming that a focusable node
with no role would be ignored for accessibility ("accessibilityIsIgnored").

  • accessibility/editable-webarea-context-menu-point.html:
  • accessibility/focusable-div-expected.txt: Added.
  • accessibility/focusable-div.html: Added.
  • accessibility/table-detection.html:
  • platform/mac/accessibility/listbox-hit-test.html:
2:59 AM Changeset in webkit [128736] by vsevik@chromium.org
  • 2 edits
    3 copies in branches/chromium/1229

Merge 127902 - Web Inspector: [REGRESSION] Content is not available for dynamically loaded script sometimes.
https://bugs.webkit.org/show_bug.cgi?id=95954

Reviewed by Yury Semikhatsky.

Source/WebCore:

Resource now loads content from request when it is available.
Content was loaded from PageAgent before where it might be not available if the resource was already GCed.

Test: http/tests/inspector/resource-tree/resource-request-content-after-loading-and-clearing-cache.html

  • inspector/front-end/Resource.js:

(WebInspector.Resource.prototype._innerRequestContent.contentLoaded):
(WebInspector.Resource.prototype._innerRequestContent.resourceContentLoaded):
(WebInspector.Resource.prototype._innerRequestContent):

LayoutTests:

  • http/tests/inspector/resource-tree/resource-request-content-after-loading-and-clearing-cache-expected.txt: Added.
  • http/tests/inspector/resource-tree/resource-request-content-after-loading-and-clearing-cache.html: Added.
  • http/tests/inspector/resource-tree/resources/dynamic-script.js: Added.

(foo):

  • http/tests/inspector/resources-test.js:

TBR=vsevik@chromium.org
BUG=146823
Review URL: https://codereview.chromium.org/10911336

2:55 AM Changeset in webkit [128735] by vestbo@webkit.org
  • 5 edits in trunk/Source/WebKit2

[Qt] Remove 'using namespace WebCore' from header file

Broke the build on Mac OS X by causing clashes between Fixed from
/usr/include/MacTypes.h and Source/WebCore/platform/Length.h.

Reviewed by Simon Hausmann.

2:50 AM Changeset in webkit [128734] by loislo@chromium.org
  • 2 edits in trunk/Source/WTF

Unreviewed compilation fix.

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::reportObjectMemoryUsage):

2:44 AM Changeset in webkit [128733] by zandobersek@gmail.com
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed GTK gardening.

Adding a platform-specific baseline required after r128376.

  • platform/gtk/accessibility/svg-image-expected.txt: Added.
2:44 AM Changeset in webkit [128732] by loislo@chromium.org
  • 4 edits in trunk/Source

Web Inspector: automatically detect if class has reportMemoryUsage method
https://bugs.webkit.org/show_bug.cgi?id=96756

Patch by Yury Semikhatsky <yurys@chromium.org> on 2012-09-15
Reviewed by Alexander Pavlov.

Source/WebKit/chromium:

Test that reportMemoryUsage method will be called on the instrumented object
even if it is a template.

  • tests/MemoryInstrumentationTest.cpp:

(WebCore):
(InstrumentedTemplate):
(WebCore::InstrumentedTemplate::InstrumentedTemplate):
(WebCore::InstrumentedTemplate::reportMemoryUsage):
(WebCore::TEST):

Source/WTF:

Implemeted automatic selector of the memory reporting method. If
an object has reportMemoryUsage method then call it. Otherwise
count only object's self size. As the next step we will delete
addInstrumentedMember and addInstrumentedObjectImpl and will
have only addMember and addObjectImpl that would automatically
call reportMemoryUsage if it is present.

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::selectInstrumentationMethod):
(MemoryInstrumentation):
(WTF::MemoryInstrumentation::reportObjectMemoryUsage):
(WTF::MemoryInstrumentation::addInstrumentedObjectImpl):
(WTF::MemoryInstrumentation::addObjectImpl):
(WTF::::process):

2:37 AM Changeset in webkit [128731] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/qt

[Qt] Inspector WebSocket backend protocol update
https://bugs.webkit.org/show_bug.cgi?id=77031

Also adds support for multi-frame messages and non-text messages.
Thanks to Jocelyn Turcotte for most of the WebSocket update code!

Patch by Leo Franchi <lfranchi@kde.org> on 2012-09-17
Reviewed by Simon Hausmann.

  • WebCoreSupport/InspectorServerQt.cpp:

(WebCore):
(WebCore::generateWebSocketChallengeResponse):
(WebCore::InspectorServerRequestHandlerQt::tcpReadyRead):
(WebCore::InspectorServerRequestHandlerQt::webSocketSend):
(WebCore::applyMask):
(WebCore::InspectorServerRequestHandlerQt::webSocketReadyRead):

  • WebCoreSupport/InspectorServerQt.h:

(InspectorServerRequestHandlerQt):

2:05 AM Changeset in webkit [128730] by commit-queue@webkit.org
  • 8 edits
    4 adds in trunk

Don't GC img elements blocked by CSP until error events fire.
https://bugs.webkit.org/show_bug.cgi?id=94677

Patch by Mike West <mkwst@chromium.org> on 2012-09-17
Reviewed by Jochen Eisinger.

Source/WebCore:

Currently, the GC checks that no load events are pending for an image
element before reclaiming its memory. It's not, however, checking that
error events are taken care of. This leads to the potential of firing an
event on a DOM element that we've already collected. That's a Bad Thing.

This patch adjusts the check to catch error events as well as load
events, which should ensure that the element isn't collected until it's
really ready. As a drive-by, it also changes the name of the check to
'hasPendingActivity' from 'hasPendingLoadEvent' for clarity.

http/tests/security/contentSecurityPolicy/register-bypassing-scheme.html
should no longer crash, and the new
http/tests/security/contentSecurityPolicy/img-blocked-no-gc-crash.html
and fast/events/onerror-img-after-gc.html shouldn't crash either.

Tests: fast/events/onerror-img-after-gc.html

http/tests/security/contentSecurityPolicy/img-blocked-no-gc-crash.html

  • bindings/v8/V8GCController.cpp:

(WebCore::calculateGroupId):

Switch to using ImageLoader::hasPendingActivity().

  • html/HTMLImageElement.h:

(WebCore::HTMLImageElement::hasPendingActivity):

Switch to using ImageLoader::hasPendingActivity().

  • loader/ImageLoader.h:

(WebCore::ImageLoader::hasPendingActivity):

Added a check against pending error events in order to ensure that
elements aren't garbage collected prematurely. Aslo renamed from
ImageLoader::hasPendingLoadEvent for clarity.

  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::haveLoadedRequiredResources):

Switch to using ImageLoader::hasPendingActivity().

LayoutTests:

  • fast/events/onerror-img-after-gc.html:
  • fast/events/onerror-img-after-gc-expected.txt:
  • http/tests/security/contentSecurityPolicy/img-blocked-no-gc-crash.html:
  • http/tests/security/contentSecurityPolicy/img-blocked-no-gc-crash-expected.txt:

Explicitly triggering GC before the error in the hopes of proving
that we don't crash anymore.

  • platform/gtk/TestExpectations:
  • platform/qt/Skipped:

Unskipping no-longer-crashing test.

1:56 AM Changeset in webkit [128729] by pdr@google.com
  • 13 edits
    2 adds in trunk

Source/WebCore: Make SVGPathSegList.appendItem O(1) instead of O(n)
https://bugs.webkit.org/show_bug.cgi?id=94048

Reviewed by Nikolas Zimmermann.

Paths in SVG can be specified with a String (with the d attribute) or
with an SVGPathSegList. In SVGPathElement a single representation is
maintained: an SVGPathByteStream. To keep the byte stream synchronized with
the d attribute and the PathSegList, this byte stream is
rebuilt on every operation. As a result, any modification to the
path is an O(n) operation.

This patch takes advantage of the stream aspect of SVGPathByteStream
to make SVGPathSegList.append an O(1) operation instead of O(n).
When an SVGPathSeg is appended to an SVGPathSegList, this patch parses
the SVGPathSeg and directly appends the resulting bytes to the
byte stream.

To achieve this some plumbing has been added to pass more information
about the actual path changes from the SVGPathSegListTearOff to the
SVGPathElement: instead of the generic commitChange() this patch adds
commitChange(ListModification type). If we decide to change our
internal path data structure in the future, this additional commitChange
function can be used to pass the information needed to make
SVGPathSegList synchronization faster.

SVG Path Benchmark (http://bl.ocks.org/1296930) showing just the
appendItem() time used in building a 5000 segment path (avg of 3 runs):
WebKit without patch: 562 ms
Firefox 18.01a: 55 ms
Opera 12.50 internal: 27 ms
WebKit with patch: 7 ms

Test: perf/svg-path-appenditem.html

This test proves the claim: SVGPathSegList.appendItem is now O(1).
Additional tests that appendItem works are covered with existing tests.

  • svg/SVGPathByteStream.h:

(WebCore::SVGPathByteStream::append):

This additional append method allows an SVGPathByteStream to be
appended to another.

  • svg/SVGPathElement.cpp:

(WebCore::SVGPathElement::pathSegListChanged):

By passing the extra ListModification type to pathSegListChanged,
SVGPathElement is now able to only synchronize the parts of the byte stream
that actually changed. In this patch only append is treated
differently but one can imagine other performance improvements this
additional information allows.

  • svg/SVGPathElement.h:

(SVGPathElement):

  • svg/SVGPathParser.cpp:

(WebCore::SVGPathParser::parsePathDataFromSource):

During normal SVGPathSegList parsing we enforce that the path start with a moveto
command. This function has been expanded to make that optional so that parsing
can be performed elsewhere in the path (e.g., in the middle).

  • svg/SVGPathParser.h:

(SVGPathParser):

  • svg/SVGPathSegList.cpp:

(WebCore::SVGPathSegList::commitChange):

  • svg/SVGPathSegList.h:

(SVGPathSegList):

  • svg/SVGPathSegWithContext.h:

(WebCore::SVGPathSegWithContext::commitChange):

  • svg/SVGPathUtilities.cpp:

(WebCore::appendSVGPathByteStreamFromSVGPathSeg):

This function reuses the SVGPathSegList parsing infrastructure
to parse an SVGPathSegList with just the single SVGPathSeg that
is being appended. The resulting byte stream can then be appended
to the result path byte stream.

(WebCore):

  • svg/SVGPathUtilities.h:

(WebCore):

  • svg/properties/SVGListProperty.h:

(WebCore::SVGListProperty::appendItemValues):
(WebCore::SVGListProperty::appendItemValuesAndWrappers):
(WebCore::SVGListProperty::commitChange):
(SVGListProperty):

  • svg/properties/SVGPathSegListPropertyTearOff.h:

(WebCore::SVGPathSegListPropertyTearOff::commitChange):
(SVGPathSegListPropertyTearOff):

LayoutTests: Make SVGPathSegList.append O(1) instead of O(n)
https://bugs.webkit.org/show_bug.cgi?id=94048

Reviewed by Nikolas Zimmermann.

Add performance test to prove this patch works. The rest of SVGPathSegList.append should be covered
in existing tests.

  • perf/svg-path-appenditem-expected.txt: Added.
  • perf/svg-path-appenditem.html: Added.
1:16 AM Changeset in webkit [128728] by commit-queue@webkit.org
  • 2 edits
    5 adds in trunk/LayoutTests

[EFL] Add baseline for text/shaping tests
https://bugs.webkit.org/show_bug.cgi?id=96902

Unreviewed EFL gardening.

Add baseline for text/shaping test cases and unskip
them for EFL port now that the issue has been fixed
in r122562.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17

  • platform/efl/TestExpectations:
  • platform/efl/fast/text/shaping/shaping-script-order-expected.png: Added.
  • platform/efl/fast/text/shaping/shaping-script-order-expected.txt: Added.
  • platform/efl/fast/text/shaping/shaping-selection-rect-expected.png: Added.
  • platform/efl/fast/text/shaping/shaping-selection-rect-expected.txt: Added.
1:06 AM Changeset in webkit [128727] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-1.10/Source/WebCore

Merge r128712 - [GTK] Missing dllexport causing linking errors on Windows platform
https://bugs.webkit.org/show_bug.cgi?id=96888

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-09-16
Reviewed by Kentaro Hara.

Define BUILDING_WebCore during the build to properly mark
FrameDestructionObserver symbols with declspec(dllexport) attribute.

  • GNUmakefile.am:
1:05 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
1:05 AM Changeset in webkit [128726] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/LayoutTests

[EFL] fast/multicol/span/generated-child-split-flow-crash.html fails
https://bugs.webkit.org/show_bug.cgi?id=88031

Unreviewed EFL gardening.

Add platform specific expectation for fast/multicol/span/generated-child-split-flow-crash.html.
Several other ports are doing the same already and the pixel test
already passes anyway.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17

  • platform/efl/TestExpectations:
  • platform/efl/fast/multicol/span/generated-child-split-flow-crash-expected.txt: Added.
1:01 AM Changeset in webkit [128725] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-1.10/Source/WebCore

Merge r128696 - [GTK] Include missing header files in the tarball
https://bugs.webkit.org/show_bug.cgi?id=96860

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-09-15
Reviewed by Kentaro Hara.

Build fix; dist two additional headers that are needed for building on
Windows platform.

  • GNUmakefile.list.am:
1:00 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
12:56 AM Changeset in webkit [128724] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-1.10/Tools

Merge r128447 - [GTK] "Infinite" loop in AccessibilityUIElementGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=96632

Patch by Mario Sanchez Prada <msanchez@igalia.com> on 2012-09-13
Reviewed by Carlos Garcia Campos.

Fix this by using atk_object_get_n_accessible_children instead of
calling getChildren() from childCount.

  • WebKitTestRunner/InjectedBundle/gtk/AccessibilityUIElementGtk.cpp:

(WTR::AccessibilityUIElement::childrenCount): Avoid the infinite
loop by using atk_object_get_n_accessible_children().

12:56 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
12:49 AM Changeset in webkit [128723] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-1.10/Source/WebCore

Merge r127469 - [GStreamer] 0.11 build breaks due to rename of gst_message_new_duration
https://bugs.webkit.org/show_bug.cgi?id=95751

Reviewed by Martin Robinson.

In gstreamer commit f712a9596c2bc1863edf9b816d9854eefca9ba45
gst_message_new_duration was renamed to
gst_message_new_duration_changed.

However the only place where we used this is in the HTTP source
element and only if appsrc < 0.10.27 is used at runtime. In the
case of GStreamer 1.0 this condition will be always false so we
can disable this code at build time.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(StreamingClient::didReceiveResponse):

12:48 AM WebKitGTK/1.10.x edited by Carlos Garcia Campos
(diff)
12:45 AM Changeset in webkit [128722] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Removing stale expectations for already fixed regressions.

Adding two failure expectations for tests added in r128645 and r128713.

Rebaselining fast/css/word-space-extra.html after r128692.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/css/word-space-extra-expected.txt:
12:43 AM Changeset in webkit [128721] by yurys@chromium.org
  • 4 edits in trunk/Source

Web Inspector: OwnPtr and RefPtr reported by pointer can be double counted by the memory instrumentation
https://bugs.webkit.org/show_bug.cgi?id=96791

Reviewed by Alexander Pavlov.

Source/WebKit/chromium:

Test that pointers to RefPtr and OwnPtr won't be double counted by
the memory instrumentation.

  • tests/MemoryInstrumentationTest.cpp:

(WebCore):
(TwoPointersToRefPtr):
(WebCore::TwoPointersToRefPtr::TwoPointersToRefPtr):
(WebCore::TwoPointersToRefPtr::reportMemoryUsage):
(WebCore::TEST):
(TwoPointersToOwnPtr):
(WebCore::TwoPointersToOwnPtr::TwoPointersToOwnPtr):
(WebCore::TwoPointersToOwnPtr::reportMemoryUsage):

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::addObjectImpl): check if the smart pointer has already
been visited before counting its size.

12:13 AM Changeset in webkit [128720] by commit-queue@webkit.org
  • 5 edits
    3 adds in trunk/LayoutTests

[EFL] Several CSS tests need rebaseline after r126911
https://bugs.webkit.org/show_bug.cgi?id=96898

Unreviewed EFL gardening.

Rebaseline 3 CSS tests due to r126911.

Patch by Christophe Dumez <Christophe Dumez> on 2012-09-17

  • platform/efl/TestExpectations:
  • platform/efl/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png:
  • platform/efl/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.txt: Added.
  • platform/efl/fast/inline/absolute-positioned-inline-in-centred-block-expected.png:
  • platform/efl/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
  • platform/efl/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.png:
  • platform/efl/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt: Added.
Note: See TracTimeline for information about the timeline view.