Timeline



Feb 27, 2013:

11:57 PM Changeset in webkit [144267] by rniwa@webkit.org
  • 2 edits in trunk/Tools

PerfTestRunner doesn't need _needs_http and _has_http_lock
https://bugs.webkit.org/show_bug.cgi?id=111037

Reviewed by Adam Barth.

Delete these variables in favor of using a local variable.

Member variables are like global variables. They introduce implicit dependencies
between member functions.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):
(PerfTestsRunner._start_http_servers):
(PerfTestsRunner):
(PerfTestsRunner._stop_http_servers):
(PerfTestsRunner.run):

11:55 PM Changeset in webkit [144266] by commit-queue@webkit.org
  • 7 edits
    1 add in trunk

Unreviewed, rolling out r144224.
http://trac.webkit.org/changeset/144224
https://bugs.webkit.org/show_bug.cgi?id=111045

Caused plugins/pass-different-npp-struct.html to time out
(Requested by abarth on #webkit).

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

Tools:

  • DumpRenderTree/TestNetscapePlugIn/Tests/PassDifferentNPPStruct.cpp:

(PassDifferentNPPStruct::NPP_SetWindow):

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(NPP_SetWindow):

LayoutTests:

  • platform/mac-wk2/plugins/netscape-plugin-setwindow-size-2-expected.txt: Added.
  • plugins/netscape-plugin-setwindow-size-2.html:
  • plugins/netscape-plugin-setwindow-size.html:
  • plugins/pass-different-npp-struct.html:
11:50 PM Changeset in webkit [144265] by eustas@chromium.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: [Protocol] Genarate JS enum definitions.
https://bugs.webkit.org/show_bug.cgi?id=110461

Reviewed by Pavel Feldman.

Generating corresponding type annotations
would help to compiler to point errors.

  • inspector/CodeGeneratorInspector.py: Generate "registerEnum" records.
  • inspector/InjectedScriptSource.js: Shadow compiler warning.
  • inspector/front-end/InspectorBackend.js:

Added "registerEnum". Added "registerEnum" generation.

  • inspector/front-end/NetworkManager.js: Use enum instead of literal.
  • inspector/generate_protocol_externs.py: Generate enum typedefs.
11:44 PM Changeset in webkit [144264] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed.

Update some test expectations based on the threaded parser behavior.
These look like test integration issues rather than actual bugs in the
parser. We will investigate them offline.

  • platform/chromium/TestExpectations:
10:44 PM Changeset in webkit [144263] by commit-queue@webkit.org
  • 12 edits
    2 adds in trunk

INPUT_MULTIPLE_FIELDS_UI: Step-up/-down of hour field should respect min/max attributes
https://bugs.webkit.org/show_bug.cgi?id=109555

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2013-02-27
Reviewed by Kent Tamura.

Source/WebCore:

Make step-up/-down of the hour field respect the min/max attributes of the element.
Note that it still accepts any keyboard inputs (the element
becomes 'invalid' state when out-of-range values entered).
Also, disable the hour field and/or the AMPM field when there is only single possible value.

Test: fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-readonly-subfield.html

fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-stepup-stepdown-from-renderer.html
fast/forms/time-multiple-fields/time-multiple-fields-readonly-subfield.html
fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html

  • html/TimeInputType.cpp:

(WebCore::TimeInputType::setupLayoutParameters): Populates layoutParameters.{minimum,maximum}.

  • html/shadow/DateTimeEditElement.cpp:

(DateTimeEditBuilder): Add data fields for min/max of day and hour fields.
(WebCore::DateTimeEditBuilder::DateTimeEditBuilder): Set newly added data members.
(WebCore::DateTimeEditBuilder::visitField): Pass minimum/maximum value to the month field constructors.
(WebCore::DateTimeEditBuilder::shouldAMPMFieldDisabled): Added.
(WebCore::DateTimeEditBuilder::shouldDayOfMonthFieldDisabled):
(WebCore::DateTimeEditBuilder::shouldHourFieldDisabled):
Disables the hour field when min, max, and value have the same hour, except when the minute
field is disabled (by step attribute), because we need to leave at least one field editable.

  • html/shadow/DateTimeFieldElements.cpp:

(WebCore::DateTimeHourFieldElementBase::DateTimeHourFieldElementBase):
(WebCore::DateTimeHourFieldElementBase::initialize):
(WebCore::DateTimeHourFieldElementBase::setValueAsDate):
(WebCore::DateTimeHourFieldElementBase::setValueAsDateTimeFieldsState):
(WebCore::DateTimeHour11FieldElement::DateTimeHour11FieldElement):
(WebCore::DateTimeHour11FieldElement::create):
(WebCore::DateTimeHour11FieldElement::populateDateTimeFieldsState):
(WebCore::DateTimeHour11FieldElement::setValueAsInteger):
(WebCore::DateTimeHour11FieldElement::clampValueForHardLimits):
(WebCore::DateTimeHour12FieldElement::DateTimeHour12FieldElement):
(WebCore::DateTimeHour12FieldElement::create):
(WebCore::DateTimeHour12FieldElement::populateDateTimeFieldsState):
(WebCore::DateTimeHour12FieldElement::setValueAsInteger):
(WebCore::DateTimeHour12FieldElement::clampValueForHardLimits):
(WebCore::DateTimeHour23FieldElement::DateTimeHour23FieldElement):
(WebCore::DateTimeHour23FieldElement::create):
(WebCore::DateTimeHour23FieldElement::populateDateTimeFieldsState):
(WebCore::DateTimeHour23FieldElement::setValueAsInteger):
(WebCore::DateTimeHour23FieldElement::clampValueForHardLimits):
(WebCore::DateTimeHour24FieldElement::DateTimeHour24FieldElement):
(WebCore::DateTimeHour24FieldElement::create):
(WebCore::DateTimeHour24FieldElement::populateDateTimeFieldsState):
(WebCore::DateTimeHour24FieldElement::setValueAsInteger):
(WebCore::DateTimeHour24FieldElement::clampValueForHardLimits):

  • html/shadow/DateTimeFieldElements.h: Splitted DateTimeHourFieldElement into a base class and four derived classes that represents different hour formats.

(DateTimeHourFieldElementBase): Added.
(DateTimeHour11FieldElement): Added. Represents 0-11 hour format.
(DateTimeHour12FieldElement): Added. Represents 1-12 hour format.
(DateTimeHour23FieldElement): Added. Represents 0-23 hour format.
(DateTimeHour24FieldElement): Added. Represents 1-24 hour format.

LayoutTests:

Added test cases with min/max attributes.

  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-readonly-subfield-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-readonly-subfield.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-stepup-stepdown-from-renderer-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-stepup-stepdown-from-renderer.html: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-readonly-subfield-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-readonly-subfield.html:
  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html:
10:41 PM Changeset in webkit [144262] by abarth@webkit.org
  • 11 edits
    15 adds
    2 deletes in trunk

[Chromium] Enable threaded HTML parser by default in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=110907

Reviewed by Eric Seidel.

Tools:

This patch changes --enable-threaded-html-parser into
--disable-threaded-html-parser and thereby enables the threaded HTML
parser by default for the Chromium port.

  • DumpRenderTree/chromium/DumpRenderTree.cpp:
  • DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:

(WebTestRunner::WebPreferences::reset):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

Update test results to show subtle differences in FrameLoaderClient callbacks.

  • platform/chromium-mac/security/block-test-no-port-expected.txt: Removed.
  • platform/chromium-win/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium-win/security/block-test-no-port-expected.txt: Removed.
  • platform/chromium/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium/fast/loader/main-document-url-for-non-http-loads-expected.txt: Added.
  • platform/chromium/http/tests/loading/307-after-303-after-post-expected.txt: Added.
  • platform/chromium/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Added.
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
  • platform/chromium/http/tests/misc/window-dot-stop-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Added.
  • platform/chromium/inspector/debugger/pause-in-inline-script-expected.txt: Added.
  • platform/chromium/inspector/timeline/timeline-script-tag-1-expected.txt: Added.
  • platform/chromium/security/block-test-no-port-expected.txt:
10:31 PM FeatureFlags edited by tkent@chromium.org
Sort CSS3_* flags, update comments for form flags (diff)
10:25 PM FeatureFlags edited by tkent@chromium.org
Add STREAM and CSS3_TEXT_LINE_BREAK (diff)
10:14 PM EnableFormFeatures edited by tkent@chromium.org
(diff)
9:53 PM Changeset in webkit [144261] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Should not return WebTextInputTypeNone for date input element.
https://bugs.webkit.org/show_bug.cgi?id=110740

Patch by Seigo Nonaka <nona@chromium.org> on 2013-02-27
Reviewed by Kent Tamura.

In the case of Windows 8, text input state including on-screen keyboard is controlled by the
value of WebTextInputType returned from WebViewImpl::textInputType().
In past, it returned WebTextInputTypeDate for date text input but now it returns
WebTextInputTypeNone.
WebTextInputTypeNone is used for non editable node, so on-screen keyboard will be hidden if
the date text input is focused. So there is no way to input on Windows 8 tablet without
physical keyboard except tapping small up/down arrow.

  • public/WebTextInputType.h: Introduces WebTextInputTypeDateTimeField.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::textInputInfo): Fills type filed regardless of editable or not. It is
safe because textInputType returns editable type only for known editable element.
(WebKit::WebViewImpl::textInputType): Returns WebTextInputTypeDateTimeField for the date
time field element.

9:04 PM Changeset in webkit [144260] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Need to re-layout fixed position elements after scale when using settings()->fixedElementsLayoutRelativeToFrame()
https://bugs.webkit.org/show_bug.cgi?id=105486

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-02-27
Reviewed by James Robinson.

In settings()->fixedElementsLayoutRelativeToFrame() mode, fixed-position
elements are layout relative to the current visible viewport, which can
be different from the layout viewport when using fixed-layout mode.
We need to re-layout fixed-position elements in case of visible content
size changes.

The test is currently chromium-specific due to difficulties to make this
test works on Mac. The mac port seems to work very differently with
visible content size when a page is scaled. And there is no reliable way
to hide scrollbars in mac-wk1 that doesn't cause a side effect.

Source/WebCore:

Test: platform/chromium/fast/repaint/relayout-fixed-position-after-scale.html

  • page/FrameView.h:

(FrameView):

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor):

LayoutTests:

  • platform/chromium/fast/repaint/relayout-fixed-position-after-scale-expected.html: Added.
  • platform/chromium/fast/repaint/relayout-fixed-position-after-scale.html: Added.
7:51 PM Changeset in webkit [144259] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Initialize page visibility after creating WebKitTestRunner WebView on Mac
https://bugs.webkit.org/show_bug.cgi?id=111025

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-02-27
Reviewed by Simon Fraser.

Set page visibility to "visible" after creating WebView to override
visibility state inferred from window occlusion notifications on Mac.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions): Add call to
setVisibilityState.

7:31 PM Changeset in webkit [144258] by hmuller@adobe.com
  • 7 edits
    8 adds in trunk

[CSS Exclusions] Enable shape-inside rectangle support for shape-padding
https://bugs.webkit.org/show_bug.cgi?id=110500

Reviewed by Dirk Schulze.

Source/WebCore:

Added support for CSS shape-padding for shapes defined with shape-inside.

Tests: fast/exclusions/shape-inside/shape-inside-circle-padding.html

fast/exclusions/shape-inside/shape-inside-ellipse-padding.html
fast/exclusions/shape-inside/shape-inside-rectangle-padding.html
fast/exclusions/shape-inside/shape-inside-rounded-rectangle-padding.html

  • rendering/ExclusionRectangle.cpp:

(WebCore::FloatRoundedRect::paddingBounds): Inset the rounded rectangle to reflect the padding parameter.
(WebCore::FloatRoundedRect::marginBounds): Expand the rounded rectangle to reflect the margin parameter.
(WebCore::FloatRoundedRect::cornerInterceptForWidth): Moved this method from ExclusionRectangle to FloatRoundedRect.
(WebCore::ExclusionRectangle::shapePaddingBounds): Lazily compute the bounds of the padding box.
(WebCore::ExclusionRectangle::shapeMarginBounds): Lazily compute the bounds of the margin box.
(WebCore::ExclusionRectangle::getExcludedIntervals): This computuation is now based on the (new) margin box.
(WebCore::ExclusionRectangle::getIncludedIntervals): This computation is now base don the (new) padding box.
(WebCore::ExclusionRectangle::firstIncludedIntervalLogicalTop): This computation is now base don the (new) padding box.

  • rendering/ExclusionRectangle.h:

(FloatRoundedRect): A subclass of FloatRect that includes corner radii specified as CSS shapes do.
(WebCore::FloatRoundedRect::FloatRoundedRect):
(WebCore::FloatRoundedRect::rx):
(WebCore::FloatRoundedRect::ry):
(WebCore::ExclusionRectangle::ExclusionRectangle):

  • rendering/ExclusionShape.cpp:

(WebCore::ExclusionShape::createExclusionShape): Initialize the new shapeMargin and shapePadding properties.

  • rendering/ExclusionShape.h:

(ExclusionShape):
(WebCore::ExclusionShape::shapeMargin): Added a public read-only property for shapeMargin.
(WebCore::ExclusionShape::shapePadding): Added a public read-only property for shapePadding.

  • rendering/ExclusionShapeInfo.cpp:

(WebCore::::computedShape): Pass the values of the CSS shape-margin and shapp-padding properties to createExclusionShape().

LayoutTests:

Added one shape-inside, shape-padding test for each CSS shape type.

  • fast/exclusions/shape-inside/shape-inside-circle-padding-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-circle-padding.html: Added.
  • fast/exclusions/shape-inside/shape-inside-ellipse-padding-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-ellipse-padding.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rectangle-padding-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rectangle-padding.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-padding-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-padding.html: Added.
7:09 PM Changeset in webkit [144257] by hclam@chromium.org
  • 2 edits in trunk/Source/WebCore

More style cleanup in GIFImageReader
https://bugs.webkit.org/show_bug.cgi?id=110776

Reviewed by Allan Sandfeld Jensen.

Renamed variable q to currentComponent which more accurately represent
the purpose.

No test. Simple refactoring.

  • platform/image-decoders/gif/GIFImageReader.cpp:

(GIFImageReader::decodeInternal):

6:58 PM Changeset in webkit [144256] by schenney@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

[Chromium] Rebaseline after r144236
https://bugs.webkit.org/show_bug.cgi?id=109879

Unreviewed expectations update

  • platform/chromium-linux/plugins/plugin-clip-subframe-expected.txt: Added.
6:29 PM Changeset in webkit [144255] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Merge PageLoadingPerfTest into ReplayPerfTest
https://bugs.webkit.org/show_bug.cgi?id=111027

Reviewed by Dirk Pranke.

Merged two classes.

We should really move ahead with the bug 100991 and get rid of PageLoadingPerfTest
part of ReplayPerfTest.

  • Scripts/webkitpy/performance_tests/perftest.py:

(ReplayPerfTest): Moved _FORCE_GC_FILE here.
(ReplayPerfTest.init):
(ReplayPerfTest._run_with_driver): Moved from PageLoadingPerfTest.
(ReplayPerfTest.run_single): Load the GC page as run_single on PageLoadingPerfTest did.

  • Scripts/webkitpy/performance_tests/perftest_unittest.py:

(TestReplayPerfTest):
(TestReplayPerfTest.test_run_single.run_test):
(TestReplayPerfTest.test_run_single): Make sure test_time is passed down properly from output.
(TestReplayPerfTest.test_run_with_driver_accumulates_results): Renamed from
TestPageLoadingPerfTest.test_run.
(TestReplayPerfTest.test_run_with_driver_accumulates_results.mock_run_signle):
(TestReplayPerfTest.test_run_with_driver_accumulates_memory_results): Renamed from
TestPageLoadingPerfTest.test_run_with_memory_output
(TestReplayPerfTest.test_run_with_driver_accumulates_memory_results.mock_run_signle):
(TestReplayPerfTest.test_prepare_calls_run_single):

6:24 PM Changeset in webkit [144254] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Add month popup for new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110830

Reviewed by Kent Tamura.

Adding month popup view for use in the new calendar picker (Bug 109439).
YearListCell will grow in height when selected to reveal the buttons for
selecting the month.

No new tests. Code is not used yet.

  • Resources/pagepopups/calendarPicker.js:

(YearListCell): A row inside the month popup. Contains buttons for choosing a month.
(YearListCell.prototype._recycleBin):
(YearListCell.prototype.reset): Resets a thrown away cell for reuse at the given row.
(YearListCell.prototype.height):
(YearListCell.prototype.setHeight):
(YearListView): List view showing YearListCells.
(YearListView.prototype.onMouseOver): If the mouse is over a month button, highlights it.
(YearListView.prototype.onMouseOut): De-highlights the month button.
(YearListView.prototype.setWidth): Set scroll view width to leave space for the scroll bar.
(YearListView.prototype.setHeight): Sets the scroll bar height as well.
(YearListView.prototype._animateRow): Animates the row height to open/close the YearListCell.
(YearListView.prototype.onCellHeightAnimatorDidStop): Keep this._runningAnimators and this._animatingRows up to date.
(YearListView.prototype.onCellHeightAnimatorStep): Update the cell height and position.
(YearListView.prototype.onClick): If this is a click on a month button, select the month.
(YearListView.prototype.rowAtScrollOffset): Calculates the row currently at the given offset.
(YearListView.prototype.scrollOffsetForRow): Calculates the current scroll offset of the given row.
(YearListView.prototype.prepareNewCell): Prepares a new or recycled YearListCell.
(YearListView.prototype.updateCells): Updates the position of the visible cells.
(YearListView.prototype.deselect): Deselects a row.
(YearListView.prototype.deselectWithoutAnimating): Deselects a row without the closing animation.
(YearListView.prototype.select): Selects a row.
(YearListView.prototype.selectWithoutAnimating): Deselects a row without the opening animation.
(YearListView.prototype.buttonForMonth): Returns the month button for a given month. Returns null if the cell is not visible.
(YearListView.prototype.dehighlightMonth): Dehighlights the month button.
(YearListView.prototype.highlightMonth): Highlights the month button.
(YearListView.prototype.show): Call when showing the year list view. Shows the given month as highlighted.
(YearListView.prototype.hide): Dispatches a did hide event which will be picked up by the CalendarPicker and the MonthPopupView will close.
(YearListView.prototype._moveHighlightTo): Used to move the month highlight in response to a key event.
(YearListView.prototype.onKeyDown): Arrow keys and PageUp/PageDown keys work.
(MonthPopupView): The popup view to be overlayed over the calendar picker.
(MonthPopupView.prototype.show): Takes the initialMonth to show and the calendarTableRect so we can overlay the year list view right on top of it.
(MonthPopupView.prototype.hide):
(MonthPopupView.prototype.onClick): Hides itself if the use clicks outside the year list view.

5:33 PM Changeset in webkit [144253] by eric@webkit.org
  • 3 edits in trunk/Tools

Add --additional-drt-flag option to run-perf-tests to make it easy to test runtime options
https://bugs.webkit.org/show_bug.cgi?id=111021

Reviewed by Dirk Pranke.

The underlying code (which is shared with run-webkit-tests)
already knew how to support this option, it just wasn't exposed
via the run-perf-tests front-end. This patch fixes that.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

4:56 PM Changeset in webkit [144252] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Stop uploading results to webkit-perf.appspot.com
https://bugs.webkit.org/show_bug.cgi?id=110954

Reviewed by Benjamin Poulain.

Pass in perf.webkit.org instead of webkit-perf.appspot.com as the test results server.

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

(RunAndUploadPerfTests):

4:42 PM Changeset in webkit [144251] by schenney@chromium.org
  • 1 edit
    2 adds
    1 delete in trunk/LayoutTests

[Chromium] Rebaseline after r144236
https://bugs.webkit.org/show_bug.cgi?id=109879

Unreviewed expectations update

  • platform/chromium-mac/plugins/plugin-clip-subframe-expected.txt: Added.
  • platform/chromium-win-xp/plugins: Removed.
  • platform/chromium-win/plugins/plugin-clip-subframe-expected.txt: Added.
4:41 PM AddingFeatures edited by l.gombos@samsung.com
GTK port is now using SetupWebKitFeatures.m4 (diff)
4:17 PM Changeset in webkit [144250] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

Use FeatureObserver to see how often web sites use multipart main documents
https://bugs.webkit.org/show_bug.cgi?id=111015

Reviewed by Nate Chapin.

Multipart main documents add sigificant complexity to the loader. It
would be interesting to know how often this complexity is used.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::responseReceived):

  • page/FeatureObserver.h:
3:50 PM Changeset in webkit [144249] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r144168.
http://trac.webkit.org/changeset/144168
https://bugs.webkit.org/show_bug.cgi?id=111019

It broke the build and tronical is unavailable (Requested by
Ossy_night on #webkit).

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

  • LLIntOffsetsExtractor.pro:
3:47 PM Changeset in webkit [144248] by simonjam@chromium.org
  • 22 edits
    2 adds in trunk

[chromium] Lower priority of preloaded images
https://bugs.webkit.org/show_bug.cgi?id=110527

Source/WebCore:

Reviewed by Nate Chapin.

This improves Speed Index by ~5%, because it encourages us to load images that are needed for
painting over speculative preloads. Ideally, all embedders would use this, but it relies on
ResourceHandle::didChangePriority being implemented. Currently, only Chrome does that.

Test: http/tests/loading/promote-img-preload-priority.html

  • loader/FrameLoaderClient.h:

(FrameLoaderClient):
(WebCore::FrameLoaderClient::dispatchDidChangeResourcePriority): Added callback to enable testing.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::setLoadPriority): Signal callback.

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::preload): Actual behavior change.

Source/WebKit/chromium:

Plumb the didChangePriority signal into DRT so it can be tested.

Reviewed by Nate Chapin.

  • public/WebFrameClient.h:

(WebKit):
(WebKit::WebFrameClient::didChangeResourcePriority):
(WebFrameClient):

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchDidChangeResourcePriority):
(WebKit):

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

Tools:

Plumb the didChangePriority signal into DRT so it can be tested.

Reviewed by Nate Chapin.

  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebKit):
(WebTestRunner::WebTestProxy::didChangeResourcePriority):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::shouldDumpResourcePriorities):
(WebTestRunner):
(WebTestRunner::TestRunner::dumpResourceRequestPriorities):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::assignIdentifierToRequest):
(WebTestRunner::WebTestProxyBase::willSendRequest):
(WebTestRunner::WebTestProxyBase::didChangeResourcePriority):
(WebTestRunner):

LayoutTests:

Reviewed by Nate Chapin.

  • http/tests/loading/promote-img-preload-priority-expected.txt: Added.
  • http/tests/loading/promote-img-preload-priority.html: Added.
3:25 PM Changeset in webkit [144247] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Unreviewed trivial buildfix after r144190.

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-02-27

  • platform/graphics/surfaces/win/GraphicsSurfaceWin.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

3:13 PM Changeset in webkit [144246] by Csaba Osztrogonác
  • 5 edits in trunk/Source/WebKit2

[WK2] One more unreviewed buildfix for EFL, GTK and Qt after r144218.

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-02-27

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebProcess/Storage/StorageNamespaceProxy.cpp:

(WebKit::StorageNamespaceProxy::copy):

3:04 PM Changeset in webkit [144245] by pdr@google.com
  • 2 edits
    2 adds in trunk/LayoutTests

Rebaseline 2 SVG tests after WK108429

This patch rebaselines svg/repaint after WK108429 and removes a stale
test expectations entry for svg/custom/text-ctm.

Unreviewed update of test expectations.

  • platform/chromium-win/svg/repaint/svgsvgelement-repaint-children-expected.png: Added.
  • platform/chromium-win/svg/repaint/svgsvgelement-repaint-children-expected.txt: Added.
  • platform/chromium/TestExpectations:
2:55 PM Changeset in webkit [144244] by Chris Fleizach
  • 7 edits
    2 adds in trunk

WebSpeech: support speech cancel
https://bugs.webkit.org/show_bug.cgi?id=107349

Reviewed by Beth Dakin.

Source/WebCore:

Add the ability to cancel speech utterances and make it work with Mac
and the mock speech synthesizer.

Test: platform/mac/fast/speechsynthesis/speech-synthesis-cancel.html

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore::SpeechSynthesis::pending):
(WebCore::SpeechSynthesis::cancel):
(WebCore::SpeechSynthesis::handleSpeakingCompleted):

  • platform/PlatformSpeechSynthesizer.h:

(PlatformSpeechSynthesizer):

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(-[WebSpeechSynthesisWrapper cancel]):
(WebCore::PlatformSpeechSynthesizer::cancel):
(WebCore):

  • platform/mock/PlatformSpeechSynthesizerMock.cpp:

(WebCore::PlatformSpeechSynthesizerMock::cancel):
(WebCore):
(WebCore::PlatformSpeechSynthesizerMock::speak):

  • platform/mock/PlatformSpeechSynthesizerMock.h:

(PlatformSpeechSynthesizerMock):

LayoutTests:

  • platform/mac/fast/speechsynthesis/speech-synthesis-cancel-expected.txt: Added.
  • platform/mac/fast/speechsynthesis/speech-synthesis-cancel.html: Added.
2:53 PM Changeset in webkit [144243] by zandobersek@gmail.com
  • 5 edits in trunk/Source/WebKit2

Unreviewed (speculative) build fixes for EFL, GTK and Qt after r144218.

  • CMakeLists.txt:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
2:49 PM Changeset in webkit [144242] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Unlock partially decoded images after passing them to the ImageDecodingStore
https://bugs.webkit.org/show_bug.cgi?id=110778

Patch by Min Qin <qinmin@chromium.org> on 2013-02-27
Reviewed by Stephen White.

Source/WebCore:

For partially decoded images, we need to unlock them so that the memory can be freed.
This change unlocks all the image frames after they are passed to ImageDecodingStore.
Unit tests are added in ImageFrameGeneratorTest.

  • platform/graphics/chromium/ImageFrameGenerator.cpp:

(WebCore::ImageFrameGenerator::tryToResumeDecodeAndScale):
(WebCore::ImageFrameGenerator::tryToDecodeAndScale):
(WebCore::ImageFrameGenerator::decode):

  • platform/image-decoders/ImageDecoder.h:

(ImageDecoder):
(WebCore::ImageDecoder::lockFrameBuffers):
(WebCore::ImageDecoder::unlockFrameBuffers):

Source/WebKit/chromium:

Test for testing that image frames are unlocked after passing to ImageDecodingStore.

  • tests/ImageFrameGeneratorTest.cpp:

(WebCore::ImageFrameGeneratorTest::SetUp):
(WebCore::ImageFrameGeneratorTest::frameBuffersUnlocked):
(ImageFrameGeneratorTest):
(WebCore::ImageFrameGeneratorTest::frameBuffersLocked):
(WebCore::TEST_F):

  • tests/MockImageDecoder.h:

(WebCore::MockImageDecoderClient::frameBuffersLocked):
(WebCore::MockImageDecoderClient::frameBuffersUnlocked):
(WebCore::MockImageDecoder::unlockFrameBuffers):
(WebCore::MockImageDecoder::lockFrameBuffers):
(MockImageDecoder):

2:44 PM Changeset in webkit [144241] by kbr@google.com
  • 4 edits in trunk

Insufficient validation when uploading depth textures to WebGL
https://bugs.webkit.org/show_bug.cgi?id=110931

Reviewed by Abhishek Arya.

Source/WebCore:

Updated webgl/conformance/extensions/webgl-depth-texture.html
layout test with additional test cases.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::texSubImage2DImpl):
(WebCore::WebGLRenderingContext::texSubImage2D):

Check for valid format/type combinations, depth, and
depth+stencil formats when uploading HTML elements and
ImageData as textures.

LayoutTests:

Updated webgl/conformance/extensions/webgl-depth-texture.html
layout test with additional test cases. These changes will be
added to the Khronos repository.

  • webgl/resources/webgl_test_files/conformance/extensions/webgl-depth-texture.html:

Added more test cases.

2:39 PM Changeset in webkit [144240] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

Threaded HTML Parser fails fast/dom/HTMLAnchorElement/anchor-no-multiple-windows.html in debug
https://bugs.webkit.org/show_bug.cgi?id=110951

Reviewed by Eric Seidel.

We were triggering this ASSERT because we didn't understand that a
given frame might have multiple DocumentLoaders in various states. That
caused us to think that a DocumentLoader in the provisional state was
actually loading.

  • dom/Document.cpp:

(WebCore::Document::decrementActiveParserCount):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::isLoading):

2:24 PM Changeset in webkit [144239] by pdr@google.com
  • 7 edits
    2 copies in branches/chromium/1410

Merge 143541

Account for transform in SVG background images
https://bugs.webkit.org/show_bug.cgi?id=110295

Reviewed by Dirk Schulze.

Source/WebCore:

Tiled SVG background images are rendererd by drawing the SVG content into a temporary
image buffer, then stamping out a tiled pattern using this buffer. Previously the
image buffer did not account for CSS transforms which could result in pixelated backgrounds.

This patch takes advantage of the context's transform when sizing the temporary tiling
image buffer. Because the context's transform also includes scale, this patch simplifies
the SVG image code to no longer track scale.

Test: svg/as-background-image/svg-transformed-background.html

  • loader/cache/CachedImage.cpp:

(WebCore):
(WebCore::CachedImage::imageForRenderer):

CachedImage::lookupOrCreateImageForRenderer no longer creates images so it has been
refactored into just "imageForRenderer". Previously there were two versions of
lookupOrCreateImageForRenderer; these have been folded into imageForRenderer.

  • loader/cache/CachedImage.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::drawPatternForContainer):

To create the temporary tiling image buffer, the final size in screen coordinates is
needed. This is now computed using the current context's CTM. Because the CTM
already includes the page scale, all page scale tracking can be removed.

The adjustments to srcRect and the pattern transform are the same as before, just
refactored to use imageBufferScale which has x and y components.

  • svg/graphics/SVGImage.h:
  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::setContainerSizeForRenderer):

Because the page scale needed to be cached between calls to
setContainerSizeForRenderer, this function was written to modify an existing cache
entry. Because the page scale no longer needs to be tracked, this code has been
simplified to re-write any existing cache entry.

(WebCore::SVGImageCache::imageSizeForRenderer):

This function has been simplified by calling SVGImageForContainer::size() instead
of computing this value manually. The value returned remains the same, containing
the container size multiplied by zoom.

(WebCore::SVGImageCache::imageForRenderer):

Previously we set the page scale on every call to imageForRenderer. Because page scale
no longer needs to be tracked, this function has been simplified to simply return
the cached SVGImageForContainer.

  • svg/graphics/SVGImageForContainer.cpp:

(WebCore::SVGImageForContainer::drawPattern):

  • svg/graphics/SVGImageForContainer.h:

(WebCore::SVGImageForContainer::create):
(WebCore::SVGImageForContainer::SVGImageForContainer):
(SVGImageForContainer):

LayoutTests:

  • svg/as-background-image/svg-transformed-background-expected.html: Added.
  • svg/as-background-image/svg-transformed-background.html: Added.

TBR=pdr@google.com
Review URL: https://codereview.chromium.org/12314169

2:22 PM Changeset in webkit [144238] by pdr@google.com
  • 1 edit
    2 copies in branches/chromium/1410

Merge 143257

Fix scaling of tiled SVG backgrounds on high-dpi displays
https://bugs.webkit.org/show_bug.cgi?id=110047

Reviewed by Dirk Schulze.

Source/WebCore:

This patch fixes the scaling of SVG when used for drawing patterns. Tiled/patterend SVG
images are first drawn into an image buffer and then the image buffer is used to stamp
out tiles. Because it is a raster source, the size of the image buffer needs to
be scaled to the final resolution of the device. After scaling the image buffer, the
source rect and pattern transforms need to be adjusted so they align in device pixel
coordinates. This adjustment was not done before this patch, causing pixelated rendering.

Additionally, a FIXME has been added due to webkit.org/b/110065 and the image buffer
has been manually scaled (using "zoomedAndScaledContainerRect") instead of relying
on the ImageBuffer's resolutionScale parameter.

Test: svg/as-background-image/tiled-background-image.html

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::drawPatternForContainer):

Note that fixing the FIXME does not change that the source rect and transform need
to be adjusted for page scale.

LayoutTests:

  • svg/as-background-image/tiled-background-image-expected.html: Added.
  • svg/as-background-image/tiled-background-image.html: Added.

TBR=pdr@google.com
Review URL: https://codereview.chromium.org/12326167

2:10 PM Changeset in webkit [144237] by Chris Fleizach
  • 10 edits
    2 adds in trunk

AX: Mac platform should support ability to scroll an element into visible
https://bugs.webkit.org/show_bug.cgi?id=109860

Reviewed by Beth Dakin.

Source/WebCore:

Support the scrollToMakeVisible() action for MacOS accessibility clients.

Tests: platform/mac/accessibility/scroll-to-visible-action.html

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(-[WebAccessibilityObjectWrapper accessibilityActionNames]):
(-[WebAccessibilityObjectWrapper accessibilityScrollToVisible]):
(-[WebAccessibilityObjectWrapper accessibilityPerformAction:]):

Tools:

  • DumpRenderTree/AccessibilityUIElement.cpp:

(scrollToMakeVisibleCallback):
(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::scrollToMakeVisible):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::scrollToMakeVisible):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:

(AccessibilityUIElement):

  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::scrollToMakeVisible):
(WTR):

LayoutTests:

  • platform/mac/accessibility/scroll-to-visible-action.html: Added.
  • platform/mac/accessibility/scroll-to-visible-action-expected.txt: Added.
2:05 PM Changeset in webkit [144236] by commit-queue@webkit.org
  • 20 edits
    5 adds in trunk

Plugin in iframe may not display
https://bugs.webkit.org/show_bug.cgi?id=109879

Patch by John Bauman <jbauman@chromium.org> on 2013-02-27
Reviewed by Simon Fraser.

Source/WebCore:

Changing the cliprect on a layer containing an iframe may change the
cliprect of plugins inside the iframe, so recursively tell all plugins
in iframes that their cliprect has changed after doing layout on the
outer frame.

Test: plugins/plugin-clip-subframe.html

  • platform/ScrollView.cpp:

(WebCore::ScrollView::clipRectChanged):

  • platform/ScrollView.h:
  • platform/Widget.h:

(WebCore::Widget::clipRectChanged):

  • plugins/PluginView.cpp:

(WebCore::PluginView::clipRectChanged):

  • plugins/PluginView.h:
  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::setWidgetGeometry):

Source/WebKit/chromium:

Use clipRectChanged to update the geometry.

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::clipRectChanged):

  • src/WebPluginContainerImpl.h:

Source/WebKit/mac:

Ensure NetscapePluginWidget informs the plugin view of the cliprect change directly.

  • Plugins/WebBaseNetscapePluginView.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(NetscapePluginWidget::clipRectChanged):

Source/WebKit2:

Update geometry when cliprect changes.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::clipRectChanged):

  • WebProcess/Plugins/PluginView.h:

Tools:

LogNPPSetWindow will be used with other ports as well.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:

LayoutTests:

Use log-npp-set-window to ensure plugin clip changes correctly.

  • platform/mac-wk2/plugins/plugin-clip-subframe-expected.txt: Added.
  • platform/mac/plugins/plugin-clip-subframe-expected.txt: Added.
  • plugins/plugin-clip-subframe-expected.txt: Added.
  • plugins/plugin-clip-subframe.html: Added.
  • plugins/resources/plugin-clip-subframe-iframe.html: Added.
1:46 PM Changeset in webkit [144235] by crogers@google.com
  • 12 edits
    2 adds in trunk

Implement channel up-mixing and down-mixing rules
https://bugs.webkit.org/show_bug.cgi?id=110812

Reviewed by Kenneth Russell.

Source/WebCore:

Please see Web Audio specification for details of the AudioNode mixing rules attributes:
https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#UpMix

Test: webaudio/audionode-channel-rules.html

  • Modules/webaudio/AudioNode.cpp:

(WebCore::AudioNode::AudioNode):
(WebCore::AudioNode::channelCount):
(WebCore):
(WebCore::AudioNode::setChannelCount):
(WebCore::AudioNode::channelCountMode):
(WebCore::AudioNode::setChannelCountMode):
(WebCore::AudioNode::channelInterpretation):
(WebCore::AudioNode::setChannelInterpretation):
(WebCore::AudioNode::updateChannelsForInputs):

  • Modules/webaudio/AudioNode.h:

(AudioNode):
(WebCore::AudioNode::internalChannelCountMode):
(WebCore::AudioNode::internalChannelInterpretation):

  • Modules/webaudio/AudioNode.idl:
  • Modules/webaudio/AudioNodeInput.cpp:

(WebCore::AudioNodeInput::numberOfChannels):
(WebCore::AudioNodeInput::bus):
(WebCore::AudioNodeInput::internalSummingBus):
(WebCore::AudioNodeInput::sumAllConnections):
(WebCore::AudioNodeInput::pull):

  • Modules/webaudio/AudioNodeInput.h:

(AudioNodeInput):

  • Modules/webaudio/ConvolverNode.cpp:

(WebCore::ConvolverNode::ConvolverNode):

  • Modules/webaudio/DefaultAudioDestinationNode.cpp:

(WebCore::DefaultAudioDestinationNode::DefaultAudioDestinationNode):

  • Modules/webaudio/PannerNode.cpp:

(WebCore::PannerNode::PannerNode):

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::speakersCopyFrom):
(WebCore::AudioBus::speakersSumFrom):
(WebCore::AudioBus::speakersSumFrom5_1_ToMono):
(WebCore):

  • platform/audio/AudioBus.h:

(AudioBus):

LayoutTests:

  • webaudio/audionode-channel-rules-expected.txt: Added.
  • webaudio/audionode-channel-rules.html: Added.
1:42 PM Changeset in webkit [144234] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

RenderTableCellDeathTest unit test fails on mac
https://bugs.webkit.org/show_bug.cgi?id=110992

Unreviewed second attempt. Trying to get the right define for the OS.

  • tests/RenderTableCellTest.cpp:
1:35 PM WebKitGTK/2.0.x edited by zandobersek@gmail.com
(diff)
1:30 PM Changeset in webkit [144233] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Need WebPage API for animating scroll position & zoom changes
https://bugs.webkit.org/show_bug.cgi?id=110912

Patch by Andrew Lo <anlo@rim.com> on 2013-02-27
Reviewed by Rob Buis.

Internally reviewed by Jakob Petsovits.
Internal PR 285468.

Add an API to WebPage for animated scroll position & zoom level
adjustments.

Have InputHandler use the new API.

Rename some variables to reflect the fact that they are not only
used by block zoom now.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::zoomBlock):
(BlackBerry::WebKit::WebPage::blockZoom):
(BlackBerry::WebKit::WebPagePrivate::animateToScaleAndDocumentScrollPosition):
(WebKit):
(BlackBerry::WebKit::WebPage::animateToScaleAndDocumentScrollPosition):

  • Api/WebPage.h:
  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebKitSupport/InputHandler.cpp:

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

1:23 PM Changeset in webkit [144232] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Threaded HTML parser hits ASSERTION FAILED: this == frameLoader()->activeDocumentLoader()
https://bugs.webkit.org/show_bug.cgi?id=110937

Reviewed by Darin Adler.

This patch restores the ASSERT behind an ifdef so that we can continue
to get converage from the ASSERT while we investigate why it is
triggering in the threaded parser.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::checkLoadComplete):

1:20 PM Changeset in webkit [144231] by jochen@chromium.org
  • 3 edits
    1 add in trunk/Source/Platform

[chromium] Introduce WebHyphenator class to consolidate hyphenation related method on WebKit::Platform
https://bugs.webkit.org/show_bug.cgi?id=110953

Reviewed by Adam Barth.

This patch makes it easier to mock the hyphenation related methods.

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

(WebKit):
(Platform):
(WebKit::Platform::hyphenator):

  • chromium/public/WebHyphenator.h: Added.

(WebKit):
(WebHyphenator):
(WebKit::WebHyphenator::canHyphenate):
(WebKit::WebHyphenator::computeLastHyphenLocation):
(WebKit::WebHyphenator::~WebHyphenator):

12:58 PM Changeset in webkit [144230] by jochen@chromium.org
  • 2 edits in trunk/LayoutTests

Skip media tests that fail on content_shell

Unreviewed gardening.

  • platform/chromium/ContentShellTestExpectations:
12:50 PM Changeset in webkit [144229] by liachen@rim.com
  • 9 edits in trunk/Source

[BlackBerry] User credentials is not correctly handled
https://bugs.webkit.org/show_bug.cgi?id=110994

Source/WebCore:

Internal PR: 280990
Internal reviewed by Leo Yang.

Reviewed by Yong Li.

Following changes are made:

Remove url from generating the hash to index user credential.
Remove url from database.
Use new CertMgrWrapper API to remove password from CertMgr.
Handle encrypted password as binary data, instead of normal text string.
When authentication fails, remove the saved user credential only when they match.
Remove some url related API from CredentialBackingStore, as they are obsolete now.

No new tests as this is platform specific change about user credential.

  • platform/network/blackberry/CredentialBackingStore.cpp:

(WebCore::hashCredentialInfo):
(WebCore::CredentialBackingStore::CredentialBackingStore):
(WebCore::CredentialBackingStore::~CredentialBackingStore):
(WebCore::CredentialBackingStore::open):
(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):
(WebCore::CredentialBackingStore::hasLogin):
(WebCore::CredentialBackingStore::getLogin):
(WebCore::CredentialBackingStore::removeLogin):
(WebCore::CredentialBackingStore::addNeverRemember):
(WebCore::CredentialBackingStore::encryptedString):
(WebCore::CredentialBackingStore::decryptedString):

  • platform/network/blackberry/CredentialBackingStore.h:

(CredentialBackingStore):

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::sendRequestWithCredentials):
(WebCore::NetworkJob::purgeCredentials):

Source/WebKit/blackberry:

Reviewed by Yong Li.

Following change are made:

Remove url from CredentialTransformData, as url is not used anymore.
Adapt to updated CredentialBackingStore API about removing url.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):

  • WebCoreSupport/CredentialManager.cpp:

(WebCore::CredentialManager::autofillPasswordForms):
(WebCore::CredentialManager::saveCredentialIfConfirmed):

  • WebCoreSupport/CredentialTransformData.cpp:

(WebCore::CredentialTransformData::CredentialTransformData):

  • WebCoreSupport/CredentialTransformData.h:

(CredentialTransformData):

12:44 PM Changeset in webkit [144228] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebKit2

REGRESSION (48533): Full-frame plugins stopped working (download instead of loading the plugin)
https://bugs.webkit.org/show_bug.cgi?id=111003

Reviewed by Anders Carlsson.

Also query the Page's pluginData when determining whether a given MIME type can be shown.

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

(WKBundlePageCanShowMIMEType):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::canShowMIMEType):

  • WebProcess/WebPage/WebPage.h:
12:43 PM Changeset in webkit [144227] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

RenderTableCellDeathTest unit test fails on mac
https://bugs.webkit.org/show_bug.cgi?id=110992

Unreviewed disabling of test that is hanging or crashing on Mac.

  • tests/RenderTableCellTest.cpp:
12:40 PM Changeset in webkit [144226] by hyatt@apple.com
  • 3 edits in trunk/Source/WebCore

Refactor transform painting/hit testing code in RenderLayer.
https://bugs.webkit.org/show_bug.cgi?id=110998

Reviewed by Eric Seidel.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
Pull the code that applies the transform for painting into a new
function that can also apply an additional translation offset. This
offset will be used by the new columns code when that patch lands.

(WebCore::RenderLayer::createLocalTransformState):
Also patched to be able to apply an additional translation offset.

(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestLayerByApplyingTransform):
Same as with painting, pull the code that applies the transform into
its own function and also enable an extra translation offset to be
applied.

  • rendering/RenderLayer.h:

Added the new functions to the header.

12:39 PM Changeset in webkit [144225] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Remove suppression invalidation logic from WebViewImpl
https://bugs.webkit.org/show_bug.cgi?id=110999

Patch by James Robinson <jamesr@chromium.org> on 2013-02-27
Reviewed by Adrienne Walker.

This suppression logic is now handled on the embedder side. In fact, scheduleComposite() is now only used
by DumpRenderTree.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::suppressInvalidations):
(WebKit::WebViewImpl::scheduleComposite):

  • src/WebViewImpl.h:
12:38 PM Changeset in webkit [144224] by jochen@chromium.org
  • 7 edits
    1 delete in trunk

plugins/netscape-plugin-setwindow-size*.html and plugins/pass-different-npp-struct.html should be async
https://bugs.webkit.org/show_bug.cgi?id=110973

Reviewed by Adam Barth.

There is nothing that ensures that the log messages from the plugin
come in before the layout test finished loading.

Tools:

  • DumpRenderTree/TestNetscapePlugIn/Tests/PassDifferentNPPStruct.cpp:

(PassDifferentNPPStruct::NPP_SetWindow):

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(NPP_SetWindow):

LayoutTests:

  • platform/mac-wk2/plugins/netscape-plugin-setwindow-size-2-expected.txt: Removed.
  • plugins/netscape-plugin-setwindow-size-2.html:
  • plugins/netscape-plugin-setwindow-size.html:
  • plugins/pass-different-npp-struct.html:
12:37 PM Changeset in webkit [144223] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Touch CSSGrammar.y.in to fix an internal buildbot

  • css/CSSGrammar.y.in: Add copyright dates based on previous

commits.

12:21 PM Changeset in webkit [144222] by zandobersek@gmail.com
  • 2 edits in trunk

[GTK] Disable MathML support in release builds
https://bugs.webkit.org/show_bug.cgi?id=110981

Patch by Zan Dobersek <zdobersek@igalia.com> on 2013-02-27
Reviewed by Martin Robinson.

  • Source/autotools/SetupWebKitFeatures.m4: Disable the MathML support in release builds

as the code is not yet deemed production-ready.

12:20 PM Changeset in webkit [144221] by commit-queue@webkit.org
  • 19 edits in trunk

Add smartInsertDeleteEnabled setting to WebCore::Page
https://bugs.webkit.org/show_bug.cgi?id=107840

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-02-27
Reviewed by Ryosuke Niwa.

Source/WebCore:

Covered by editing/deleting/smart-editing-disabled.html.

  • page/Settings.in: Add new setting with true as initial value.

Source/WebKit2:

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode): Remove code related to
isSmartInsertDeleteEnabled.

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters): Remove isSmartInsertDeleteEnabled.

  • Shared/WebPreferencesStore.h:

(WebKit): Add macro for smartInsertDeleteEnabled setting.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetSmartInsertDeleteEnabled):
(WKPreferencesGetSmartInsertDeleteEnabled): Implement methods using the
new setting.

  • UIProcess/API/C/WKPreferencesPrivate.h: Add new methods headers.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeWebPage): Set smartInsertDeleteEnabled
setting using m_isSmartInsertDeleteEnabled to keep initial value on Mac.
(WebKit::WebPageProxy::creationParameters): Remove usage of
parameters.isSmartInsertDeleteEnabled.

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::smartInsertDeleteEnabled): Enable method for
all platforms.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Remove m_isSmartInsertDeleteEnabled
initialization.
(WebKit::WebPage::updatePreferences): Set smartInsertDeleteEnabled
setting.
(WebKit::WebPage::isSmartInsertDeleteEnabled): Implement method using
settings.
(WebKit):
(WebKit::WebPage::setSmartInsertDeleteEnabled): Implement method using
settings.

  • WebProcess/WebPage/WebPage.h:

(WebPage): Enable methods dealing with smartInsertDeleteEnabled for all
platforms and remove m_isSmartInsertDeleteEnabled as it will be a
setting.

LayoutTests:

Replace testRunner.setSmartInsertDeleteEnabled by
internals.settings.setSmartInsertDeleteEnabled in tests.

  • editing/deleting/smart-editing-disabled.html:
  • editing/selection/doubleclick-beside-cr-span.html:
  • editing/selection/doubleclick-whitespace-crash.html:
  • editing/selection/doubleclick-whitespace-img-crash.html:
  • editing/selection/doubleclick-whitespace.html:
  • platform/wk2/TestExpectations: Unflag

editing/deleting/smart-editing-disabled.html as it passes now.

12:14 PM Changeset in webkit [144220] by Chris Fleizach
  • 8 edits
    2 adds in trunk

WebSpeech: Support pause/resume ability
https://bugs.webkit.org/show_bug.cgi?id=107345

Reviewed by Beth Dakin.

Source/WebCore:

Add in the pause/resume functionality to SpeechSynthesis. Also hook up
the callback events.

Test: platform/mac/fast/speechsynthesis/speech-synthesis-pause-resume.html

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore::SpeechSynthesis::SpeechSynthesis):
(WebCore::SpeechSynthesis::pending):
(WebCore::SpeechSynthesis::paused):
(WebCore::SpeechSynthesis::startSpeakingImmediately):
(WebCore::SpeechSynthesis::pause):
(WebCore::SpeechSynthesis::resume):
(WebCore):
(WebCore::SpeechSynthesis::didPauseSpeaking):
(WebCore::SpeechSynthesis::didResumeSpeaking):

  • Modules/speech/SpeechSynthesis.h:

(SpeechSynthesis):

  • platform/PlatformSpeechSynthesizer.h:

(PlatformSpeechSynthesizerClient):
(PlatformSpeechSynthesizer):

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
(-[WebSpeechSynthesisWrapper pause]):
(-[WebSpeechSynthesisWrapper resume]):
(-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
(WebCore::PlatformSpeechSynthesizer::pause):
(WebCore):
(WebCore::PlatformSpeechSynthesizer::resume):

LayoutTests:

  • platform/mac/fast/speechsynthesis/speech-synthesis-pause-resume-expected.txt: Added.
  • platform/mac/fast/speechsynthesis/speech-synthesis-pause-resume.html: Added.
12:11 PM Changeset in webkit [144219] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Disable some unsound DFG DCE
https://bugs.webkit.org/show_bug.cgi?id=110948

Reviewed by Michael Saboff.

DCE of bitops is not sound since the bitops might call some variant of valueOf.

This used to work right because ValueToInt32 was MustGenerate. From the DFG IR
standpoint it feels weird to make ValueToInt32 be MustGenerate since that node is
implemented entirely as a pure conversion. If we ever gave the DFG the ability to
do effectful bitops, we would most likely implement them as special nodes not
related to the ValueToInt32 and bitop nodes we have now.

This change is performance neutral.

  • dfg/DFGNodeType.h:

(DFG):

12:04 PM Changeset in webkit [144218] by andersca@apple.com
  • 6 edits
    1 add in trunk/Source/WebKit2

More storage scaffolding
https://bugs.webkit.org/show_bug.cgi?id=110997

Reviewed by Andreas Kling.

  • DerivedSources.make:

Add StorageAreaProxy.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::setItem):
Send back a DidSetItem message.

  • WebKit2.xcodeproj/project.pbxproj:

Add generated files.

  • WebProcess/Storage/StorageAreaProxy.cpp:

(WebKit::StorageAreaProxy::StorageAreaProxy):
Add the message receiver.

(WebKit::StorageAreaProxy::~StorageAreaProxy):
Remove the message receiver.

(WebKit::StorageAreaProxy::didSetItem):
add stub.

  • WebProcess/Storage/StorageAreaProxy.h:

(StorageAreaProxy):

  • WebProcess/Storage/StorageAreaProxy.messages.in: Added.
11:40 AM Changeset in webkit [144217] by weinig@apple.com
  • 8 edits in trunk/Source/WebKit2

REGRESSION: Loading flash switches to discrete graphics, 100 MB on membuster
<rdar://problem/13229828>

Reviewed by Dan Bernstein.

Due the change in CFBundleIdentifier, the WebProcess and PluginProcess were
unnecessarily muxing (they used to be whitelisted by OpenGL) to the discrete
GPU.

  • PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:

Add NSSupportsAutomaticGraphicsSwitching YES.

  • WebKit2.xcodeproj/project.pbxproj:

Re-add the PluginService.32-64.Info.plist plist to the project file.

11:14 AM Changeset in webkit [144216] by ap@apple.com
  • 34 edits in trunk/Source

Don't add a body to platform request until necessary
https://bugs.webkit.org/show_bug.cgi?id=110900

Reviewed by NOBODY (OOPS!).

Reviewed by Brady Eidson.

ResourceRequest now has more state for syncing between resource and platform parts.
In addition to tracking which is up to date, we also track which has up to date
HTTP Body.

The reason is that we don't need the body on request before it's actually sent,
and we actually cannot build it when networking is out of process.

  • WebCore.exp.in: Updated exports.
  • platform/network/ResourceRequestBase.h:
  • platform/network/ResourceRequestBase.cpp: (WebCore::ResourceRequestBase::setHTTPBody): Update HTTP body before returning it. (WebCore::ResourceRequestBase::updatePlatformRequest): Update according to HTTPBodyUpdatePolicy. (WebCore::ResourceRequestBase::updateResourceRequest): Ditto.
  • platform/network/cf/FormDataStreamCFNet.cpp: (WebCore::formDataStreamLengthPropertyName): (WebCore::formCopyProperty): (WebCore::setHTTPBody): Changed to not update Content-Length in platform request directly. We need to keep it in sync with resource request, and it's easier to do in a caller. Exposed computed length as a property do avoid duplicating the work.
  • platform/network/cf/FormDataStreamCFNet.h: Removed unnecessary httpBodyFromStream().
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::willSendRequest): (WebCore::didReceiveResponse): (WebCore::ResourceHandle::createCFURLConnection): Update body when necessary.

(WebCore::ResourceRequest::nsURLRequest):
(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdateResourceHTTPBody):
(WebCore):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdatePlatformHTTPBody):
(WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody):
(WebCore::ResourceRequest::applyWebArchiveHackForMail):
Ditto.

  • platform/network/cf/ResourceRequest.h: Track body up-to-date state.
  • platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::cfURLRequest): Honor HTTPBodyUpdatePolicy. (WebCore::ResourceRequest::doUpdatePlatformRequest): Don't update body here. (WebCore::ResourceRequest::doUpdatePlatformHTTPBody): Update the body, and make sure that Content-Length is correct. (WebCore::ResourceRequest::doUpdateResourceRequest): Don't update body here. (WebCore::ResourceRequest::doUpdateResourceHTTPBody): Update the body, fixing a bug where body stream was lost if this function got called. (WebCore::ResourceRequest::applyWebArchiveHackForMail): No need to update body for this one.
  • platform/network/mac/ResourceRequestMac.mm: Ditto (but this didn't have a bug with streams in doUpdateResourceRequest()).
  • platform/network/mac/FormDataStreamMac.h: Forward declare formDataStreamLengthPropertyName().
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::createNSURLConnection): (WebCore::ResourceHandle::start): (WebCore::ResourceHandle::platformLoadResourceSynchronously): (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Update body when necessary.
  • platform/network/blackberry/ResourceRequest.h:
  • platform/network/chromium/ResourceRequest.h:
  • platform/network/curl/ResourceRequest.h:
  • platform/network/qt/ResourceRequest.h:
  • platform/network/soup/ResourceRequest.h:
  • platform/network/win/ResourceRequest.h: Added stubs for new functions. These ports don't keep a platform request in ResourceRequest, and don't need updating.
11:03 AM Changeset in webkit [144215] by schenney@chromium.org
  • 8 edits
    4 adds in trunk/LayoutTests

[Chromium] Test expectations updates

Unreviewed expectations after recent bug fixes.

  • platform/chromium-mac-lion/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium-mac-lion/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-mac-snowleopard/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-mac/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium-mac/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-mac/svg/custom/transform-with-shadow-and-gradient-expected.png:
  • platform/chromium-win/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium-win/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-win/svg/custom/transform-with-shadow-and-gradient-expected.png:
  • platform/chromium/TestExpectations:
10:46 AM Changeset in webkit [144214] by glenn@skynav.com
  • 19 edits in trunk

Add ENABLE_CSS3_TEXT_LINE_BREAK flag.
https://bugs.webkit.org/show_bug.cgi?id=110944

Reviewed by Dean Jackson.

.:

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/chromium:

  • features.gypi:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
  • qmake/mkspecs/features/features.pri:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
10:43 AM Changeset in webkit [144213] by abucur@adobe.com
  • 10 edits in trunk

REGRESSION(r124739): fast/lists/list-marker-remove-crash.html hits an assertion in MoveParagraphs
https://bugs.webkit.org/show_bug.cgi?id=93247

Reviewed by Darin Adler.

Source/WebCore:

The listifyParagraph function inside InsertListCommand triggered a layout for the new list and updated
only the "start" Position. The insertion and layout may have changed the "end" Position as well. The patch
makes sure "end" is also recomputed.

Test: No new test, the patch fixes a regression.

  • editing/InsertListCommand.cpp:

(WebCore::InsertListCommand::listifyParagraph):

LayoutTests:

Update TestExpectations because the test doesn't crash any more.

  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt-4.8/TestExpectations:
  • platform/qt-mac/TestExpectations:
  • platform/qt/TestExpectations:
10:38 AM Changeset in webkit [144212] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Add ENABLE_STREAM guards to FileReaderLoader
https://bugs.webkit.org/show_bug.cgi?id=110938

Patch by Zach Kuznia <zork@chromium.org> on 2013-02-27
Reviewed by Hajime Morrita.

  • fileapi/FileReaderLoader.cpp:
  • fileapi/FileReaderLoader.h:
10:38 AM Changeset in webkit [144211] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Remove myself from watchlist.

Patch by Yong Li <yong.li.webkit@outlook.com> on 2013-02-27

  • Scripts/webkitpy/common/config/watchlist:
10:34 AM Changeset in webkit [144210] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix build when DFG_JIT is not enabled
https://bugs.webkit.org/show_bug.cgi?id=110991

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-02-27
Reviewed by Csaba Osztrogonác.

  • jit/JIT.h:

(JSC::JIT::canBeOptimizedOrInlined):

10:19 AM Changeset in webkit [144209] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

Fix bug in HTML5 Fullscreen API implementation that was preventing YouTube HTML5 media controls fullscreen button from working properly.
https://bugs.webkit.org/show_bug.cgi?id=110905

Patch by John Griggs <jgriggs@rim.com> on 2013-02-27
Reviewed by Yong Li.

Return true from ChromeClientBlackBerry::supportsFullScreenForElement instead of the negation of the boolean flag (withKeyboard) passed in.

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::supportsFullScreenForElement):

10:18 AM Changeset in webkit [144208] by allan.jensen@digia.com
  • 4 edits in trunk

Switch QtWebKit to GStreamer 1.0.
https://bugs.webkit.org/show_bug.cgi?id=106669.

Original patch by Sebastian Dröge.
Reviewed by Csaba Osztrogonác.

Source/WebCore:

  • WebCore.pri:

Tools:

Build with GStreamer 1.0 if available, but support GStreamer 0.10
temporarily to make upgrading easy and the patch suitable for Qt5.

  • qmake/mkspecs/features/features.prf:
10:01 AM Changeset in webkit [144207] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/planet.webkit.org

Add Martin Robinson's blog to the planet
https://bugs.webkit.org/show_bug.cgi?id=110990

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-27
Reviewed by Eric Seidel.

  • config.ini: Add my blog to the planet.
9:53 AM Changeset in webkit [144206] by jamesr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Remove WebViewImpl::animate shimmy out through compositor
https://bugs.webkit.org/show_bug.cgi?id=110935

Reviewed by Adrienne Walker.

WebViewImpl::animate() and WebViewImpl::updateAnimations() are confusingly similar. ::animate() implements
the WebWidget API and is called by content::RenderWidget and WebViewHost. ::updateAnimations() implements
the WebLayerTreeViewClient API and is called by content::RenderWidgetCompositor and by ::animate(). The
important part of this indirection is that whenever the compositor is active, all animation calls must
route through cc::LayerTreeHost before entering into WebCore's animation code so that the compositor
can set the appropriate rate limiting state. Animations may originate from
content::RenderWidget::AnimateIfNeeded when in software and single threaded mode or from
cc::LayerTreeHost::updateAnimations in threaded compositing mode. In the long ago, content::RenderWidget had no
idea if compositing was active or not and always called WebWidget::animate(), so WebViewImpl::animate() had to
redirect to the compositor when appropriate.

Now (as of chromium r180947) RenderWidget calls WebWidget::animate only when in software mode and otherwise
calls directly into the compositor. Thus WebViewImpl::animate() no longer needs to do this check. In a
follow-up, WebViewImpl::updateAnimations will go away completely in favor of just calling WebWidget::animate in
all cases.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::animate):
(WebKit::WebViewImpl::updateAnimations):

9:48 AM Changeset in webkit [144205] by efidler@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Fix BlackBerry::Platform::String to WTF::String conversion when the string is Latin-1-encoded.
https://bugs.webkit.org/show_bug.cgi?id=110986

Reviewed by Yong Li.

Internally reviewed by Nima Ghanavatian.
BlackBerry PR 292922

We were assuming all platform strings were valid UTF-8, which isn't true for Latin-1 strings.

  • platform/text/blackberry/StringBlackBerry.cpp:

(WTF::String::String):

9:42 AM Changeset in webkit [144204] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[TexMap] REGRESSION(144183): It make negative delay tests fails
https://bugs.webkit.org/show_bug.cgi?id=110989

Reviewed by Noam Rosenthal.

Do not apply a negative offset to the animation starttime send to the GraphicLayerClient,
it needs the actual animation start not a virtual start.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::addAnimation):

9:35 AM Changeset in webkit [144203] by acolwell@chromium.org
  • 3 edits
    2 adds in trunk

Fix SourceBufferList so SourceBuffer.append() calls are always rejected after the MediaSource is closed.
https://bugs.webkit.org/show_bug.cgi?id=110917

Reviewed by Eric Carlson.

Source/WebCore:

Test: http/tests/media/media-source/video-media-source-reject-append-after-reopening.html

  • Modules/mediasource/SourceBufferList.cpp:

(WebCore::SourceBufferList::clear):

LayoutTests:

  • http/tests/media/media-source/video-media-source-reject-append-after-reopening-expected.txt: Added.
  • http/tests/media/media-source/video-media-source-reject-append-after-reopening.html: Added.
9:25 AM AddingFeatures edited by mrobinson@webkit.org
(diff)
9:20 AM Changeset in webkit [144202] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Context menu cannot be invoked after doing text selection in landscape mode
https://bugs.webkit.org/show_bug.cgi?id=110860

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2013-02-27
Reviewed by Yong Li.

PR 290248 Internally reviewed by Mike Fenton

Add a parameter to notify the webpage client which parts of selection have
changed in visual or in its selected DOM content. Refactor the selection details
parameter to platform repo.

The reason of this issue is that when javascript triggers webpage layout, the selection
will update its apperance event when the selected content is not changed. We want
to hide the context menu only when the selected content is changed not when only its
visual is changed.

9:18 AM Changeset in webkit [144201] by szledan@inf.u-szeged.hu
  • 2 edits in trunk/Tools

Unreviewed. Added myself to committers.py

  • Scripts/webkitpy/common/config/committers.py:
9:12 AM Changeset in webkit [144200] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] The virtual keyboard hides part of Signing In dialog
https://bugs.webkit.org/show_bug.cgi?id=110836

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2013-02-27
Reviewed by Yong Li.

PR # 283427 Internally reviewed by Mike Fenton.

Store form credentials before javascript "onSubmit" event and notify
webpage client to save credentials after that event since javascript
may check credentials and stop the submission in its event handler.

  • WebCoreSupport/CredentialTransformData.cpp:

(WebCore::CredentialTransformData::CredentialTransformData):
(WebCore):

  • WebCoreSupport/CredentialTransformData.h:

(CredentialTransformData):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):

  • WebCoreSupport/FrameLoaderClientBlackBerry.h:

(FrameLoaderClientBlackBerry):

9:07 AM Changeset in webkit [144199] by szledan@inf.u-szeged.hu
  • 2 edits in trunk/Tools

Unreviewed, rolling out r144192.
http://trac.webkit.org/changeset/144192
https://bugs.webkit.org/show_bug.cgi?id=110984

Stored svn password on wrong computer (Requested by kkristof
on #webkit).

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

  • Scripts/webkitpy/common/config/committers.py:
9:02 AM Changeset in webkit [144198] by pilgrim@chromium.org
  • 2 edits in trunk/Source/Platform

[Chromium] Remove unused WebKitPlatformSupport class
https://bugs.webkit.org/show_bug.cgi?id=110982

Reviewed by Adam Barth.

Part of a larger refactoring series; see tracking bug 82948.

  • chromium/public/Platform.h:
8:59 AM Changeset in webkit [144197] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipp inspector tests after r144071.

  • platform/qt/TestExpectations:
8:48 AM Changeset in webkit [144196] by junov@google.com
  • 4 edits
    3 adds in trunk

REGRESSION (r134631) of border-radius percentage with border pixel
https://bugs.webkit.org/show_bug.cgi?id=110889

Reviewed by Simon Fraser.

Source/WebCore:

Fixing background color filling to handle "non renderable" rounded
rectangles.

Test: fast/borders/border-radius-percent.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

LayoutTests:

Adding new pixel test to verify the correct rendering of
rounded rectangle backgrounds with inner border radii that
exceed the dimensions of the inner edge of the border.

  • fast/borders/border-radius-percent-expected.txt: Added.
  • fast/borders/border-radius-percent.html: Added.
  • platform/chromium-linux/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium/TestExpectations:
8:45 AM Changeset in webkit [144195] by fmalita@chromium.org
  • 6 edits in trunk

[Chromium] Layout Test svg/custom/transform-with-shadow-and-gradient.svg is failing
https://bugs.webkit.org/show_bug.cgi?id=76557

Reviewed by Stephen Chenney.

Source/WebCore:

Always use kDst_Mode transfer for the shadow looper. Using kSrc_Mode to enforce CSS
box-shadow opaqueness at this level is not necessary since the RenderBoxModel box
decoration code already makes sure that shadows are filled with opaque black.

This change aligns the SVG shadow behavior (and pixel results) with CG/Safari.

No new tests, coverage provided by existing tests.

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::setPlatformShadow):

LayoutTests:

  • platform/chromium-linux/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-linux/svg/custom/transform-with-shadow-and-gradient-expected.png:
  • platform/chromium/TestExpectations:
8:42 AM Changeset in webkit [144194] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Generate a wrapper function for ReplaceableAttrSetter()
https://bugs.webkit.org/show_bug.cgi?id=110781

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection function
for xxxReplaceableAttrSetter(), like this:

For non-custom replaceable setters (Note: One implementation
is enough for all replaceable setters in one interface.)
void V8XXX:::ReplaceableAttrSetterCallback(...) {

V8XXX::ReplaceableAttrSetter(...);

}

For custom replaceable setters. (Note: This is treated as
a normal custom setter.)
void xxxAttrSetterCallback(...) {

return xxxAttrSetterCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateReplaceableAttrSetterCallback):
(GenerateReplaceableAttrSetter):
(GenerateSingleBatchedAttribute):
(GenerateImplementation):

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

(WebCore::TestObjV8Internal::TestObjReplaceableAttrSetterCallback):
(TestObjV8Internal):
(WebCore):

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

(WebCore::TestTypedefsV8Internal::TestTypedefsReplaceableAttrSetterCallback):
(TestTypedefsV8Internal):

8:26 AM Changeset in webkit [144193] by mifenton@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Accept key events even when composing region is active.
https://bugs.webkit.org/show_bug.cgi?id=110617

Reviewed by Rob Buis.

PR 293598.

Fix a regression in the previous patch caused
by an unhandled Alt key down being sent through
by IMF.

Reviewed Internally by Nima Ghanavatian.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::updateFormState):

  • WebKitSupport/InputHandler.h:

(InputHandler):

8:21 AM Changeset in webkit [144192] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/Tools

Unreviewed. Added myself to committers.py

  • Scripts/webkitpy/common/config/committers.py:
8:18 AM Changeset in webkit [144191] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Flash objects won't load until scrolling page
https://bugs.webkit.org/show_bug.cgi?id=110149

Reviewed by Simon Hausmann.

Revert r134222. The issue from bug 101836 is no longer reproducable,
and the fix was causing flash objects to not load properly.

  • plugins/PluginPackage.cpp:

(WebCore::PluginPackage::determineQuirks):

8:16 AM Changeset in webkit [144190] by commit-queue@webkit.org
  • 36 edits
    7 adds in trunk

[Texmap] TextureMapper is too eager to use intermediate surfaces
https://bugs.webkit.org/show_bug.cgi?id=110762

Patch by No'am Rosenthal <noam@webkit.org> on 2013-02-27
Reviewed by Allan Sandfeld Jensen.

Source/WebCore:

Refactor the way intermediate surfaces are handled in TextureMapperLayer.
Beforehand, we would create an intermediate surface whenever there is a chance of overlap, and
the intermediate surface would be the largest possible. The result would then be drawn to the
target surface with the layer's opacity and mask.

This would make it so that (1) surfaces are created even when they're not needed, i.e. when there
is no actual overlap, and (2) mask wouldn't be applied correctly.

In this patch the behavior is changed so that the area to be painted is divided to "overlapping"
and "non overlapping" regions. The non-overlapping regions are painted directly, while the overlapping
regions are tiled to smaller rectangles painted using an intermediate surface.
Masks are applied to those intermediate surfaces based on the transform of the actual mask, not drawn
together with the content texture like before.

This optimizes for the more common case of opacity animations on a large tree, while making the quite
rare case of composited masks slightly less optimized but always correct.

Tests: compositing/overlap-blending/children-opacity-huge.html

compositing/overlap-blending/reflection-opacity-huge.html
compositing/overlap-blending/children-opacity-no-overlap.html

  • platform/graphics/cairo/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/cairo/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/qt/MediaPlayerPrivateQt.cpp:

(WebCore::MediaPlayerPrivateQt::paintToTextureMapper):

  • platform/graphics/qt/MediaPlayerPrivateQt.h:

(MediaPlayerPrivateQt):

  • platform/graphics/surfaces/GraphicsSurface.cpp:

(WebCore::GraphicsSurface::paintToTextureMapper):

  • platform/graphics/surfaces/GraphicsSurface.h:

(GraphicsSurface):

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/surfaces/win/GraphicsSurfaceWin.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/texmap/TextureMapperBackingStore.h:

(TextureMapperBackingStore):

  • platform/graphics/texmap/TextureMapperPlatformLayer.h:

(TextureMapperPlatformLayer):

  • platform/graphics/texmap/TextureMapperSurfaceBackingStore.cpp:

(WebCore::TextureMapperSurfaceBackingStore::paintToTextureMapper):

  • platform/graphics/texmap/TextureMapperSurfaceBackingStore.h:

(TextureMapperSurfaceBackingStore):

  • platform/graphics/texmap/TextureMapperTile.cpp:

(WebCore::TextureMapperTile::paint):

  • platform/graphics/texmap/TextureMapperTile.h:

(TextureMapperTile):

  • platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:

(WebCore::TextureMapperTiledBackingStore::paintToTextureMapper):

  • platform/graphics/texmap/TextureMapperTiledBackingStore.h:

(TextureMapperTiledBackingStore):

  • platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp:

(WebCore::CoordinatedBackingStore::paintTilesToTextureMapper):
(WebCore::CoordinatedBackingStore::paintToTextureMapper):

  • platform/graphics/texmap/coordinated/CoordinatedBackingStore.h:

(CoordinatedBackingStore):

Removed the "mask" parameter from TextureMapperPlatformLayer and overrides, since
we no longer paint the contents and the mask in the same pass.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::TextureMapper):

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::TextureMapper::setMaskMode):
(TextureMapper):
(WebCore::TextureMapper::isInMaskMode):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawNumber):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::draw):
(WebCore):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
(WebCore::TextureMapperGL::drawFiltered):

  • platform/graphics/texmap/TextureMapperGL.h:

(TextureMapperGL):

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::TextureMapperImageBuffer::drawTexture):
(WebCore::TextureMapperImageBuffer::drawSolidColor):

  • platform/graphics/texmap/TextureMapperImageBuffer.h:

(TextureMapperImageBuffer):

Instead of painting the mask together with the texture/color, paint the mask
by drawing with DestinationIn to an existing surface.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(TextureMapperPaintOptions):
(WebCore::TextureMapperLayer::paintSelf):
(WebCore::TextureMapperLayer::shouldBlend):
(WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica):
(WebCore::TextureMapperLayer::replicaTransform):
(WebCore):
(WebCore::applyFilters):
(WebCore::resolveOverlaps):
(WebCore::TextureMapperLayer::computeOverlapRegions):
(WebCore::TextureMapperLayer::paintUsingOverlapRegions):
(WebCore::TextureMapperLayer::applyMask):
(WebCore::TextureMapperLayer::paintIntoSurface):
(WebCore::commitSurface):
(WebCore::TextureMapperLayer::paintWithIntermediateSurface):
(WebCore::TextureMapperLayer::paintRecursive):

  • platform/graphics/texmap/TextureMapperLayer.h:

(WebCore):
(TextureMapperLayer):
(WebCore::TextureMapperLayer::hasFilters):

  • platform/graphics/texmap/TextureMapperShaderProgram.cpp:

(WebCore):
(WebCore::TextureMapperShaderProgram::create):

  • platform/graphics/texmap/TextureMapperShaderProgram.h:

LayoutTests:

Added a few ref-tests for correct overlap blending in accelearated compositing mode.
Skipping the new reflection test on Mac/Chromium since it's not rendered
properly on those platforms.

  • compositing/overlap-blending/children-opacity-huge-expected.html: Added.
  • compositing/overlap-blending/children-opacity-huge.html: Added.
  • compositing/overlap-blending/children-opacity-no-overlap-expected.html: Added.
  • compositing/overlap-blending/children-opacity-no-overlap.html: Added.
  • compositing/overlap-blending/reflection-opacity-huge-expected.html: Added.
  • compositing/overlap-blending/reflection-opacity-huge.html: Added.
8:13 AM Changeset in webkit [144189] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Template element support is already enabled in

development builds. Removing skip entries for related tests as they all pass.

8:11 AM Changeset in webkit [144188] by zandobersek@gmail.com
  • 5 edits
    3 adds in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining after r144096.

  • platform/gtk/TestExpectations:
  • platform/gtk/css2.1/20110323/replaced-elements-001-expected.txt:
  • platform/gtk/css2.1/replaced-elements-001-expected.png: Added.
  • platform/gtk/css3/flexbox/button-expected.png: Added.
  • platform/gtk/css3/flexbox/button-expected.txt: Added.
  • platform/gtk/svg/custom/foreign-object-skew-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug92647-2-expected.txt:
8:03 AM Changeset in webkit [144187] by jochen@chromium.org
  • 2 edits in trunk/LayoutTests

Add plugins test expectations for content_shell

Unreviewed gardening.

  • platform/chromium/ContentShellTestExpectations:
7:48 AM Changeset in webkit [144186] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [REGRESSION] [Audits] Disabled "Run" button styling is the same as the enabled one
https://bugs.webkit.org/show_bug.cgi?id=110971

Reviewed by Yury Semikhatsky.

Split out PanelEnablerView-related rules into panelEnabledView.css and restored the missing rules
in inspector.css.

  • inspector/front-end/inspector.css:
  • inspector/front-end/panelEnablerView.css:
7:35 AM Changeset in webkit [144185] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r144179.
http://trac.webkit.org/changeset/144179
https://bugs.webkit.org/show_bug.cgi?id=110980

Breaks compilation (Requested by vsevik on #webkit).

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

  • public/WebTextInputType.h:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::textInputInfo):
(WebKit::WebViewImpl::textInputType):

7:29 AM Changeset in webkit [144184] by tkent@chromium.org
  • 8 edits in trunk

REGRESSION: INPUT_MULTIPLE_FIELDS_UI: Changing CSS display property on input[type=date] unexpectedly makes another line for ::-webkit-calendar-picker-indicator
https://bugs.webkit.org/show_bug.cgi?id=110974

Reviewed by Kentaro Hara.

Source/WebCore:

Input elements with the multiple fields UI require flexible box
layout. We should use RenderFlexibleBox regardless of display
property values.

Tests: Update fast/forms/date/date-apparance-basic.html

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::createRenderer):
Always use RenderFlexibleBox.

  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType): Declare createRenderer.

LayoutTests:

  • fast/forms/date/date-appearance-basic-expected.txt:
  • fast/forms/date/date-appearance-basic.html:
  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium/TestExpectations:
7:27 AM Changeset in webkit [144183] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebCore

[TexMap] Flickering after transitions on Apple HTML5 demo
https://bugs.webkit.org/show_bug.cgi?id=102501

Reviewed by Noam Rosenthal.

Notify about animation start after the new animation is actually commited.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
(WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
(WebCore::GraphicsLayerTextureMapper::addAnimation):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):

7:11 AM Changeset in webkit [144182] by vivek.vg@samsung.com
  • 9 edits
    1 add in trunk

Web Inspector: Refactor AuditsPanel with AuditController as newly introduced entity
https://bugs.webkit.org/show_bug.cgi?id=110866

Reviewed by Alexander Pavlov.

Source/WebCore:

AuditController is being introduced in order to follow MVC pattern with the Audits.
This is the first step about the refactoring. Moving the methods from the AuditsPanel
into AuditController would ease the event driven approach to de-couple the AuditsPanel
and the AuditLauncherView.

No new tests as code refactoring.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/AuditController.js: Added.

(WebInspector.AuditController):
(WebInspector.AuditController.prototype.ruleResultReadyCallback):
(WebInspector.AuditController.prototype.categoryDoneCallback):
(WebInspector.AuditController.prototype._executeAudit):
(WebInspector.AuditController.prototype._auditFinishedCallback):
(WebInspector.AuditController.prototype.startAuditWhenResourcesReady):
(WebInspector.AuditController.prototype.initiateAudit):
(WebInspector.AuditController.prototype._reloadResources):
(WebInspector.AuditController.prototype._didMainResourceLoad):

  • inspector/front-end/AuditLauncherView.js:

(WebInspector.AuditLauncherView):
(WebInspector.AuditLauncherView.prototype._startAudit):

  • inspector/front-end/AuditsPanel.js:

(WebInspector.AuditsPanel):
(WebInspector.AuditsPanel.prototype.auditFinishedCallback):

  • inspector/front-end/WebKit.qrc:

LayoutTests:

  • inspector/extensions/extensions-audits-tests.js:
7:11 AM Changeset in webkit [144181] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] GIFImageDecoderTest.parseAndDecodeByteByByte failing on Android
https://bugs.webkit.org/show_bug.cgi?id=110922

Unreviewed build fix.

  • tests/GIFImageDecoderTest.cpp:

(WebKit):
(WebKit::TEST): Disable the entire test on Android.

7:00 AM Changeset in webkit [144180] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
6:54 AM Changeset in webkit [144179] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Should not return WebTextInputTypeNone for date input element.
https://bugs.webkit.org/show_bug.cgi?id=110740

Patch by Seigo Nonaka <nona@chromium.org> on 2013-02-27
Reviewed by Kent Tamura.

In the case of Windows 8, text input state including on-screen keyboard is controlled by the
value of WebTextInputType returned from WebViewImpl::textInputType().
In past, it returned WebTextInputTypeDate for date text input but now it returns
WebTextInputTypeNone.
WebTextInputTypeNone is used for non editable node, so on-screen keyboard will be hidden if
the date text input is focused. So there is no way to input on Windows 8 tablet without
physical keyboard except tapping small up/down arrow.

  • public/WebTextInputType.h: Introduces WebTextInputTypeDateTimeField.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::textInputInfo): Fills type filed regardless of editable or not. It is
safe because textInputType returns editable type only for known editable element.
(WebKit::WebViewImpl::textInputType): Returns WebTextInputTypeDateTimeField for the date
time field element.

6:50 AM Changeset in webkit [144178] by commit-queue@webkit.org
  • 3 edits
    8 adds in trunk

[CSS Regions] Region overset property is not properly computed when there is a region break
https://bugs.webkit.org/show_bug.cgi?id=92497

Patch by Mihai Maerean <Mihai Maerean> on 2013-02-27
Reviewed by David Hyatt.

Source/WebCore:

For "paginated" content in regions that has -webkit-region-break-after:always, the bottom margin was being passed
along for the next region in the chain, which shouldn't happen.

The fix is, at layout, to clear the bottom margin for the nodes (inside paginated contexts) that have
-webkit-region-break-after:always.

Tests: fast/multicol/break-after-always-bottom-margin.html

fast/regions/overset-break-nested.html
fast/regions/overset-break-with-sibling.html
fast/regions/overset-break.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::applyAfterBreak):

LayoutTests:

  • fast/multicol/break-after-always-bottom-margin-expected.txt: Added.
  • fast/multicol/break-after-always-bottom-margin.html: Added.
  • fast/regions/overset-break-expected.txt: Added.
  • fast/regions/overset-break-nested-expected.txt: Added.
  • fast/regions/overset-break-nested.html: Added.
  • fast/regions/overset-break-with-sibling-expected.txt: Added.
  • fast/regions/overset-break-with-sibling.html: Added.
  • fast/regions/overset-break.html: Added.
6:47 AM Changeset in webkit [144177] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
6:46 AM Changeset in webkit [144176] by schenney@chromium.org
  • 2 edits in trunk/Source/WebCore

Bindings test results update after r144126
https://bugs.webkit.org/show_bug.cgi?id=108196

Unreviewed test update.

  • bindings/scripts/test/JS/JSTestObj.cpp: Add include of CallbackFunction.h
5:49 AM Changeset in webkit [144175] by commit-queue@webkit.org
  • 5 edits in trunk/LayoutTests

[chromium] Adapt test expectations to V8 proto changes.
https://bugs.webkit.org/show_bug.cgi?id=110887

Patch by Michael Starzinger <mstarzinger@chromium.org> on 2013-02-27
Reviewed by Stephen Chenney.

ad window-custom-prototype) This is expected bahavior, consistent with
SpiderMonkey. The test expectation is broken. Assigning 'null' to
'proto' makes the accessor installed on Object.prototype disappear.

ad JSON-parse) The result of JSON.parse() doesn't match the result we
get when evaluating the same string through eval() as V8 still has
special handling of the proto property for object literals.

ad cyclic-prototypes) Test fully matches the WebKit expectation now and
no longer fails. However the exception message has a slightly different
format and hence causes a text diff.

  • platform/chromium/TestExpectations: Temporary mark tests failing.
  • platform/chromium/fast/dom/Window/window-custom-prototype-expected.txt:
  • platform/chromium/fast/js/JSON-parse-expected.txt:
  • platform/chromium/fast/js/cyclic-prototypes-expected.txt:
5:34 AM Changeset in webkit [144174] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Bug in atomicIncrement implementation for MIPS GCC
https://bugs.webkit.org/show_bug.cgi?id=110969

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-27
Reviewed by Csaba Osztrogonác.

Fix of sync_[add|sub]_and_fetch_8 for GCC patch.

  • wtf/Atomics.cpp:
5:07 AM Changeset in webkit [144173] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed inspector front-end closure compilaiton fix.

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.SnippetsNavigatorView.prototype._handleEvaluateSnippet):
(WebInspector.SnippetsNavigatorView.prototype._handleRemoveSnippet):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.set _fileRenamed):

4:49 AM Changeset in webkit [144172] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
4:38 AM Changeset in webkit [144171] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
4:09 AM Changeset in webkit [144170] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

REGRESSION(r137994): It made JSC tests hang and layout tests fail on ARM Thumb2 / Linux
https://bugs.webkit.org/show_bug.cgi?id=108632

Patch by Simon Hausmann <simon.hausmann@digia.com> on 2013-02-27
Reviewed by Csaba Osztrogonác.

It appears that mprotect() is very slow on ARM/Linux, so disable the
approach of unreserved mappings there and fall back to overcomitting
memory, based on Uli Schlachter's recommendation.

  • wtf/OSAllocatorPosix.cpp:

(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::decommit):

4:05 AM Changeset in webkit [144169] by Bruno de Oliveira Abinader
  • 3 edits in trunk/Source/WebCore

[texmap] Do not apply clip state if redundant
https://bugs.webkit.org/show_bug.cgi?id=110790

Reviewed by Noam Rosenthal.

Add a bool to check if clip state has changed since last apply.

No behavior changes, thus covered by existing tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::ClipStack::reset):
(WebCore::TextureMapperGL::ClipStack::pop):
(WebCore::TextureMapperGL::ClipStack::apply):

  • platform/graphics/texmap/TextureMapperGL.h:

(WebCore::TextureMapperGL::ClipStack::ClipStack):
(ClipStack):

4:05 AM Changeset in webkit [144168] by Simon Hausmann
  • 2 edits in trunk/Source/JavaScriptCore

[Qt][Mac] Fix massive parallel builds

Reviewed by Tor Arne Vestbø.

There exists a race condition that LLIntDesiredOffsets.h is written to
by two parllel instances of the ruby script. This patch ensures that similar to the output file,
the generated file is also prefixed according to the build configuration.

  • LLIntOffsetsExtractor.pro:
4:03 AM Changeset in webkit [144167] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
3:51 AM Changeset in webkit [144166] by li.yin@intel.com
  • 3 edits in trunk/LayoutTests

MediaStream constructor test should cover ended MediaStreamTrack.
https://bugs.webkit.org/show_bug.cgi?id=110941

Reviewed by Kentaro Hara.

Spec: http://dev.w3.org/2011/webrtc/editor/getusermedia.html#mediastream
If tracks has ended, it should skip these tracks and continue with the next one.

  • fast/mediastream/MediaStreamConstructor-expected.txt:
  • fast/mediastream/MediaStreamConstructor.html:
3:40 AM Changeset in webkit [144165] by michael.bruning@digia.com
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Replace use of WebPreferences with use of WKPrefences C API
https://bugs.webkit.org/show_bug.cgi?id=108952

Reviewed by Simon Hausmann.

Signed off for WebKit2 by Benjamin Poulain.

This patch moves the view classes and preferences in the Qt API
to use the C API for accessing and manipulating preferences as
part of the cleanup and move towards using the C API as base for
the Qt WebKit2 API.

Adds the function WebKit::adoptToQString for convenience when
dealing with QString and copied String objects.

Removes the ScrollAnimatorEnabled options from QWebPreferences.

  • UIProcess/API/cpp/qt/WKStringQt.cpp:

(WebKit::adoptToQString):

  • UIProcess/API/cpp/qt/WKStringQt.h:

(WebKit):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/API/qt/qwebpreferences.cpp:

(QWebPreferencesPrivate::testAttribute):
(QWebPreferencesPrivate::setAttribute):
(QWebPreferencesPrivate::setFontFamily):
(QWebPreferencesPrivate::fontFamily):
(QWebPreferencesPrivate::setFontSize):
(QWebPreferencesPrivate::fontSize):

  • UIProcess/API/qt/qwebpreferences_p.h:
  • UIProcess/API/qt/qwebpreferences_p_p.h:
3:07 AM Changeset in webkit [144164] by thiago.santos@intel.com
  • 1 edit
    1 add in trunk/LayoutTests

[EFL] Unreviewed gardening

Updated tests baselines.

  • platform/efl/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: Added.
2:53 AM Changeset in webkit [144163] by mkwst@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

XHR should fire 'abort' event when navigation interrupts a request.
https://bugs.webkit.org/show_bug.cgi?id=110867

Reviewed by Alexey Proskuryakov.

Adding a layout test to ensure that navigation-canceled XMLHttpRequests
fire an 'abort' event rather than an 'error' event.

  • http/tests/xmlhttprequest/navigation-should-abort-expected.txt: Added.
  • http/tests/xmlhttprequest/navigation-should-abort.html: Added.
2:16 AM Changeset in webkit [144162] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Build fix after r144155. The report page is located at /api/report, not /api/test/report.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._upload_json):

2:15 AM Changeset in webkit [144161] by eustas@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: timeline stops working on certain sites
https://bugs.webkit.org/show_bug.cgi?id=110955

Reviewed by Alexander Pavlov.

Analysis: "timerId" value is number,
so it is not wrapped to node as expected.

Solution: wrap values of all types except Node.

  • inspector/front-end/TimelinePresentationModel.js:

Wrap nonstring values to text nodes.

2:03 AM Changeset in webkit [144160] by thiago.santos@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening

Mark custom elements tests as failures until we enable them.

  • platform/efl/TestExpectations:
1:22 AM Changeset in webkit [144159] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Remove test related to html5lib after r144032
https://bugs.webkit.org/show_bug.cgi?id=110946

Unreviewed, EFL gardening.

Test was removed after r144032. And remove it from TestExpectations.
html5lib/generated/run-template.html.

Patch by Seokju Kwon <Seokju Kwon> on 2013-02-27

  • platform/efl/TestExpectations:
1:21 AM Changeset in webkit [144158] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

HTMLDocumentParser::didReceiveParsedChunkFromBackgroundParser can trigger ASSERT(m_speculations.isEmpty())
https://bugs.webkit.org/show_bug.cgi?id=110949

Reviewed by Eric Seidel.

We can hit this ASSERT if didReceiveParsedChunkFromBackgroundParser is
called from the background thread while we're processing
m_speculations (i.e., if processing m_speculations is taking a while
and we've yielded to the event loop).

It's hard to write a deterministic test for this patch, but it's hit
quite often with existing LayoutTests.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::didReceiveParsedChunkFromBackgroundParser):

1:09 AM Changeset in webkit [144157] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Generate a wrapper function for named constructor callbacks
https://bugs.webkit.org/show_bug.cgi?id=110794

Reviewed by Adam Barth.

This would be the final step of generating wrapper functions.
The patch generates the following wrapper function for named
constructor callbacks.

Handle<Value> namedConstructorCallback(...)
{

return namedConstructor(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNamedConstructor):

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

(WebCore::namedConstructor):
(WebCore::namedConstructorCallback):
(WebCore):
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):

  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp:

(WebCore::namedConstructor):
(WebCore::namedConstructorCallback):
(WebCore):
(WebCore::V8HTMLImageElementConstructor::GetTemplate):

1:02 AM Changeset in webkit [144156] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
12:56 AM Changeset in webkit [144155] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Stop uploading results to webkit-perf.appspot.com
https://bugs.webkit.org/show_bug.cgi?id=110954

Reviewed by Benjamin Poulain.

When the specified test results server was webkit-perf.appspot.com, replace it by perf.webkit.org.
Also, always use the new JSON format. Removed the code to generate the old format.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._generate_and_show_results):
(PerfTestsRunner._generate_results_dict):
(PerfTestsRunner._merge_slave_config_json):
(PerfTestsRunner._generate_output_files):

12:37 AM Changeset in webkit [144154] by caseq@chromium.org
  • 12 edits in trunk

Web Inspector: show raster tasks on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

  • add DeferPaint, Paint & RasterTask trace events handling to trace event processor;
  • upon begin frame, emit aggregated background event for all raster tasks related to inspected page.

Reviewed by Pavel Feldman.

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
(InstrumentationEvents):
(InstrumentationEventArguments):

  • inspector/InspectorInstrumentation.h:

(InstrumentationEvents):
(WebCore):
(InstrumentationEventArguments):

  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):

  • inspector/InspectorTimelineAgent.h:

(TimelineRecordType):
(WebCore):

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createRasterData):
(WebCore):

  • inspector/TimelineRecordFactory.h:

(TimelineRecordFactory):

  • inspector/TimelineTraceEventProcessor.cpp:

(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::registerHandler):
(WebCore::TimelineTraceEventProcessor::shutdown):
(WebCore::TimelineTraceEventProcessor::TraceEvent::findParameter):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::onBeginFrame):
(WebCore::TimelineTraceEventProcessor::onPaintLayerBegin):
(WebCore::TimelineTraceEventProcessor::onPaintLayerEnd):
(WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
(WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
(WebCore::TimelineTraceEventProcessor::onLayerDeleted):
(WebCore::TimelineTraceEventProcessor::onPaint):
(WebCore::TimelineTraceEventProcessor::flushRasterizerStatistics):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):

  • inspector/TimelineTraceEventProcessor.h:

(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::id):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(TimelineTraceEventProcessor):

  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel._initRecordStyles):

12:33 AM Changeset in webkit [144153] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
12:23 AM Changeset in webkit [144152] by benjamin@webkit.org
  • 12 edits in trunk/LayoutTests

Fix the tests based on computedStyleIncludingVisitedInfo for asynchronous update of the visited style
https://bugs.webkit.org/show_bug.cgi?id=110708

Reviewed by Ryosuke Niwa.

The tests using computedStyleIncludingVisitedInfo were using the asumption that visited style
is updated synchronously with the loading of resources.
This assumption is valid for Mac WebKit1, but does not hold for multiprocess
WebKit because the list of visited URLs is maintained outside the WebProcess.

This patch changes the tests to use the 'shouldBecomeXXX' test functions in order to wait
for the asynchronous update. With the change, all the tests succeed reliably on WebKit2.

  • fast/history/multiple-classes-visited-expected.txt:
  • fast/history/multiple-classes-visited.html:
  • fast/history/nested-visited-test-expected.txt:
  • fast/history/nested-visited-test.html:
  • fast/history/self-is-visited-expected.txt:
  • fast/history/self-is-visited.html:
  • fast/history/sibling-visited-test-expected.txt:
  • fast/history/sibling-visited-test.html:
  • fast/js/resources/js-test-pre.js:

(.condition):
(.failureHandler):
(shouldBecomeDifferent):

  • platform/wk2/TestExpectations:
  • platform/chromium/TestExpectations: The tests can now also timeout due to

computedStyleIncludingVisitedInfo missing from Chromium's DRT.

12:09 AM Changeset in webkit [144151] by zandobersek@gmail.com
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed gardening.

  • platform/efl/TestExpectations: Removing expectation for html5lib/runner.html, the test was removed in r144032.
  • platform/gtk/TestExpectations: Ditto.
  • platform/gtk/http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added. Required after r144105.
12:04 AM Changeset in webkit [144150] by commit-queue@webkit.org
  • 11 edits
    2 copies
    15 deletes in trunk

Unreviewed, rolling out r144136, r144143, and r144147.
http://trac.webkit.org/changeset/144136
http://trac.webkit.org/changeset/144143
http://trac.webkit.org/changeset/144147
https://bugs.webkit.org/show_bug.cgi?id=110950

Caused some timeouts and flaky crashes (Requested by abarth on
#webkit).

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

Tools:

  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(main):

  • DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:

(WebTestRunner::WebPreferences::reset):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

  • platform/chromium-mac/security/block-test-no-port-expected.txt: Copied from LayoutTests/platform/chromium/security/block-test-no-port-expected.txt.
  • platform/chromium-win/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium-win/http/tests/loading/redirect-methods-expected.txt:
  • platform/chromium-win/security/block-test-no-port-expected.txt: Copied from LayoutTests/platform/chromium/security/block-test-no-port-expected.txt.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium/fast/loader/main-document-url-for-non-http-loads-expected.txt: Removed.
  • platform/chromium/http/tests/loading/307-after-303-after-post-expected.txt: Removed.
  • platform/chromium/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Removed.
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
  • platform/chromium/http/tests/misc/window-dot-stop-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Removed.
  • platform/chromium/inspector/debugger/pause-in-inline-script-expected.txt: Removed.
  • platform/chromium/inspector/timeline/timeline-script-tag-1-expected.txt: Removed.
  • platform/chromium/security/block-test-no-port-expected.txt:

Feb 26, 2013:

11:32 PM Changeset in webkit [144149] by Csaba Osztrogonác
  • 8 edits in trunk/LayoutTests

One more unreviewed fix after r144032 and r144051.
https://bugs.webkit.org/show_bug.cgi?id=110734

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-02-26

  • TestExpectations: Unskip tests.
  • html5lib/generated/run-template-write.html: Revert an accidental change by r144051.
  • platform/gtk/TestExpectations: Skip run-template-data.html and run-template-write.html instead of run-template.html
  • platform/mac/TestExpectations: Ditto.
  • platform/qt/TestExpectations: Ditto.
  • platform/win/TestExpectations: Ditto.
  • platform/wincairo/TestExpectations: Ditto.
11:17 PM Changeset in webkit [144148] by vsevik@chromium.org
  • 6 edits in trunk/Source

Unreviewed, rolling out r144129.
http://trac.webkit.org/changeset/144129
https://bugs.webkit.org/show_bug.cgi?id=110947

Breaks compilation on chromium mac and win (Requested by
vsevik on #webkit).

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

Source/Platform:

  • chromium/public/WebLayerTreeViewClient.h:

(WebLayerTreeViewClient):
(WebKit::WebLayerTreeViewClient::willBeginFrame):
(WebKit::WebLayerTreeViewClient::didBeginFrame):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::willBeginFrame):
(WebKit):
(WebKit::WebViewImpl::didBeginFrame):

  • src/WebViewImpl.h:
  • tests/WebLayerTreeViewTestCommon.h:
10:18 PM Changeset in webkit [144147] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed.

Note another multipart failure to work through.

  • platform/chromium/TestExpectations:
10:16 PM Changeset in webkit [144146] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

getPropertyValue for -webkit-column-rule returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=110698

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

Test: fast/css/getPropertyValue-column-rule.html

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

  • fast/css/getPropertyValue-column-rule-expected.txt: Added.
  • fast/css/getPropertyValue-column-rule.html: Added.
10:14 PM Changeset in webkit [144145] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

getPropertyValue for -webkit-margin-collapse returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=110903

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

getPropertyValue("-webkit-margin-collapse") should compute shorthand value
when -webkit-margin-collapse is specified in CSS.

Test: fast/css/getPropertyValue-webkit-margin-collapse.html

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

Added test for getPropertyValue("-webkit-margin-collapse").

  • fast/css/getPropertyValue-webkit-margin-collapse-expected.txt: Added.
  • fast/css/getPropertyValue-webkit-margin-collapse.html: Added.
10:06 PM Changeset in webkit [144144] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

getPropertyValue for -webkit-marquee returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=110816

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

Compute the shorthand value for '-webkit-marquee' specified in CSS.

Test: fast/css/getPropertyValue-webkit-marquee.html

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

Added testcases to check getPropertyValue for -webkit-marquee shorthand.

  • fast/css/getPropertyValue-webkit-marquee-expected.txt: Added.
  • fast/css/getPropertyValue-webkit-marquee.html: Added.
9:51 PM Changeset in webkit [144143] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed.

Update expectations to show new FrameLoaderClient callbacks. I missed
this test earlier because it doesn't run on Linux.

  • platform/chromium-win/http/tests/loading/redirect-methods-expected.txt:
9:11 PM Changeset in webkit [144142] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Remove Event::dataTransferAttrGetterCustom() and Event::valueAttrSetterCustom()
https://bugs.webkit.org/show_bug.cgi?id=110666

Reviewed by Adam Barth.

Event::dataTransferAttrGetterCustom() is not used
(i.e. the custom method is not registered to V8).
Event::valueAttrSetterCustom() is declared but not
implemented. We can remove them.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeaderCustomCall):

  • bindings/v8/custom/V8EventCustom.cpp:
9:02 PM Changeset in webkit [144141] by rniwa@webkit.org
  • 5 edits
    1 add in trunk

Use perf.webkit.org JSON format in results page
https://bugs.webkit.org/show_bug.cgi?id=110842

Reviewed by Benjamin Poulain.

PerformanceTests:

Updated the results page template to use the new JSON format.

Since new JSON format doesn't contain statistics such as stdev and min, added statistics.js to compute
these values. Also use 95% percentile confidence interval instead of standard deviation in various places.

  • resources/results-template.html: Added statistics.js as dependency.

(TestResult): Updated to take a metric instead of its test. Replaced stdev() with confidenceIntervalDelta()
now that we have a fancy Statistics class.

(TestRun.webkitRevision):
(PerfTestMetric): Renamed from PerfTest since this object now encapsulates each measurement (such as time,
JS heap, and malloc) in test. Also added a conversion table from a metric name to a unit since new format
doesn't contain units.
(PerfTestMetric.name): Updated to compute the full metric name from test name and metric name, matching
the old behavior.
(PerfTestMetric.isMemoryTest): Explicitly look for 'JSHeap' and 'Malloc' tests.
(PerfTestMetric.smallerIsBetter):

(attachPlot): Deleted the code to deal with tests that don't provide individual iteration measurement
since such tests no longer exist. Also fixed up the code compute y-axis range.

(createTableRow.markupForRun): Updated to use confidenceIntervalDelta() instead of stdev().

(init.addTests): Added. Recursively add metrics.

  • resources/statistics.js: Added. Imported from perf.webkit.org.

(Statistics.max):
(Statistics.min):
(Statistics.sum):
(Statistics.squareSum):
(Statistics.sampleStandardDeviation):
(Statistics.supportedConfidenceLevels):
(Statistics.confidenceIntervalDelta):
(Statistics.confidenceInterval):

Tools:

Change the default JSON format from that of webkit-perf.appspot.com to that of perf.webkit.org.

A whole bunch of integration tests have been updated to use the new JSON format.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._generate_and_show_results): Renamed output and output_path to legacy_output
and legacy_output_json_path respectively.
(PerfTestsRunner._generate_results_dict): Don't assume meta build information is always available.
(PerfTestsRunner._generate_output_files): Make json_output, which is used to generate the default
JSON file and the results page out of perf_webkit_output instead of legacy_output.

  • Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:

(MainTest.test_run_memory_test):
(MainTest._test_run_with_json_output.mock_upload_json):
(MainTest):
(MainTest.test_run_with_json_output):
(MainTest.test_run_with_description):
(MainTest.test_run_generates_json_by_default):
(MainTest.test_run_merges_output_by_default):
(MainTest.test_run_respects_reset_results):
(MainTest.test_run_generates_and_show_results_page):
(MainTest.test_run_with_slave_config_json):
(MainTest.test_run_with_multiple_repositories):
(MainTest.test_run_with_upload_json):
(MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):

8:34 PM Changeset in webkit [144140] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

SelectorQuery should not ever use ResolvingStyle mode.
https://bugs.webkit.org/show_bug.cgi?id=110843

It looks like we accidentally used ResolvingStyle mode for webkitMatchesSelector, and I exacerbated the problem
in r143858 by switching all of SelectorQuery to use it. There aren't any visible effects, but the style bits
of elements are unnecessarily twiddled when if we do that. Let's not do it.

Reviewed by Eric Seidel.

No public-facing behavior change, covered by existing tests.

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::selectorMatches): Switched to always use QueryingRules mode.

8:32 PM Changeset in webkit [144139] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Silence this ASSERT. It is triggered by the threaded HTML parser.
Investigation to follow in https://bugs.webkit.org/show_bug.cgi?id=110937

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::checkLoadComplete):

8:26 PM Changeset in webkit [144138] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r184829. Requested by
"Mark Pilgrim" <pilgrim@chromium.org> via sheriffbot.

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

  • DEPS:
7:52 PM Changeset in webkit [144137] by fpizlo@apple.com
  • 15 edits
    3 adds in trunk

DFG OSR exit doesn't know which virtual register to use for the last result register for post_inc and post_dec
https://bugs.webkit.org/show_bug.cgi?id=109036
<rdar://problem/13292139>

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

This was a two-fold problem:

1) post_inc/dec has two results - the new value of the variable, and the old value of the variable. DFG OSR exit

assumed that the "last result" used for the Baseline JIT's register allocation would be the new value. It was
wrong in this assumption.


2) The Baseline JIT knew to disable its last result optimization in cases where it might confuse the DFG. But it

was doing this only for code blocks that could be totally optimized, but not code blocks that could only be
optimized when inlined.


This patch introduces a more rigorous notion of when the Baseline JIT emits profiling, when it does extra work
to account for the possibility of OSR exit, and when it does extra work to account for the possibility of OSR
entry. These notions are called shouldEmitProfiling(), canBeOptimizedOrInlined(), and canBeOptimized(),
respectively.

This is performance-neutral and fixes the reported bug. It probably fixes other bugs as well, since previously
we for example weren't doing the more conservative implementation of op_mov in the Baseline JIT for code blocks
that could be inlined but not optimized. So, if such a code block OSR exited at just the right point, you'd get
symptoms similar to this bug.

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGCommon.h:
  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JIT.h:

(JSC::JIT::compilePatchGetArrayLength):
(JSC::JIT::canBeOptimizedOrInlined):
(JIT):

  • jit/JITArithmetic.cpp:

(JSC::JIT::emit_op_post_inc):
(JSC::JIT::emit_op_post_dec):

  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emit_op_post_inc):
(JSC::JIT::emit_op_post_dec):

  • jit/JITCall.cpp:

(JSC::JIT::emit_op_call_put_result):
(JSC::JIT::compileOpCall):

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileOpCall):

  • jit/JITInlines.h:

(JSC::JIT::emitArrayProfilingSite):
(JSC::JIT::map):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_mov):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::privateCompilePutByIdTransition):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::privateCompilePutByIdTransition):

LayoutTests:

Reviewed by Gavin Barraclough.

  • fast/js/dfg-post-inc-then-exit-expected.txt: Added.
  • fast/js/dfg-post-inc-then-exit.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-post-inc-then-exit.js: Added.

(foo):

7:00 PM Changeset in webkit [144136] by abarth@webkit.org
  • 10 edits
    16 adds
    2 deletes in trunk

[Chromium] Enable threaded HTML parser by default in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=110907

Reviewed by Eric Seidel.

Tools:

This patch changes --enable-threaded-html-parser into
--disable-threaded-html-parser and thereby enables the threaded HTML
parser by default for the Chromium port.

  • DumpRenderTree/chromium/DumpRenderTree.cpp:
  • DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:

(WebTestRunner::WebPreferences::reset):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

Update test results to show subtle differences in FrameLoaderClient callbacks.

  • platform/chromium-mac/security/block-test-no-port-expected.txt: Removed.
  • platform/chromium-win/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium-win/security/block-test-no-port-expected.txt: Removed.
  • platform/chromium/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium/fast/loader/main-document-url-for-non-http-loads-expected.txt: Added.
  • platform/chromium/http/tests/loading/307-after-303-after-post-expected.txt: Added.
  • platform/chromium/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Added.
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
  • platform/chromium/http/tests/misc/window-dot-stop-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Added.
  • platform/chromium/inspector/debugger/pause-in-inline-script-expected.txt: Added.
  • platform/chromium/inspector/timeline/timeline-script-tag-1-expected.txt: Added.
  • platform/chromium/security/block-test-no-port-expected.txt:
6:51 PM Changeset in webkit [144135] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebCore

SQLTransactionBackend::doCleanup() should not nullify its current
statement and transaction error fields.
https://bugs.webkit.org/show_bug.cgi?id=110826.

Reviewed by Geoffrey Garen.

The reason for this is because the frontend SQLTransaction may have
tasks that are already registered via callOnMainThread(), and may
invoke transaction state functions that access these objects in the
SQLTransactionBackend. This proves to be problematic if the database
was interrupted resulting in doCleanup() being called concurrently
while those states are executing.

Instead, we leave their clean up to the SQLTransactionBackend destructor
which is guaranteed to only be called when the SQLTransaction is also
destructing i.e. these objects are no longer needed.

No new tests.

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::doCleanup):

6:40 PM Changeset in webkit [144134] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

Crashes in fast/notifications/notifications-request-permission.html after r144126
https://bugs.webkit.org/show_bug.cgi?id=108196

Unreviewed expectations update.

  • platform/chromium/TestExpectations:
6:34 PM Changeset in webkit [144133] by schenney@chromium.org
  • 1 edit
    1 delete in trunk/LayoutTests

Deleting extraneous baseline after feDisplacementMap fix
https://bugs.webkit.org/show_bug.cgi?id=10592

Unreviewed expectations update. Slow build bot to blame.

  • platform/chromium-win-xp/svg/filters/feDisplacementMap-expected.png: Removed.
6:04 PM Changeset in webkit [144132] by roger_fong@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. AppleWin VS2010 build fix.

  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:
5:45 PM Changeset in webkit [144131] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

The DFG backend's and OSR's decision to unbox a variable should be based on whether it's used in a typed context
https://bugs.webkit.org/show_bug.cgi?id=110433

Reviewed by Oliver Hunt and Mark Hahnenberg.

This introduces the equivalent of a liveness analysis, except for type checking.
A variable is said to be "profitable for unboxing" (i.e. live at a type check)
if there exists a type check on a GetLocal of that variable, and the type check
is consistent with the variable's prediction. Variables that are not profitable
for unboxing aren't unboxed. Previously they would have been.

This is a slight speed-up on some things but mostly neutral.

  • dfg/DFGArgumentPosition.h:

(JSC::DFG::ArgumentPosition::ArgumentPosition):
(JSC::DFG::ArgumentPosition::mergeShouldNeverUnbox):
(JSC::DFG::ArgumentPosition::mergeArgumentPredictionAwareness):
(JSC::DFG::ArgumentPosition::mergeArgumentUnboxingAwareness):
(ArgumentPosition):
(JSC::DFG::ArgumentPosition::isProfitableToUnbox):
(JSC::DFG::ArgumentPosition::shouldUseDoubleFormat):

  • dfg/DFGCommon.h:

(JSC::DFG::checkAndSet):
(DFG):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::run):
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupSetLocalsInBlock):
(FixupPhase):
(JSC::DFG::FixupPhase::alwaysUnboxSimplePrimitives):
(JSC::DFG::FixupPhase::setUseKindAndUnboxIfProfitable):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::doRoundOfDoubleVoting):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArgumentTypes):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::mergeIsCaptured):
(JSC::DFG::VariableAccessData::mergeIsProfitableToUnbox):
(VariableAccessData):
(JSC::DFG::VariableAccessData::isProfitableToUnbox):
(JSC::DFG::VariableAccessData::shouldUnboxIfPossible):
(JSC::DFG::VariableAccessData::mergeStructureCheckHoistingFailed):
(JSC::DFG::VariableAccessData::mergeIsArgumentsAlias):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormat):
(JSC::DFG::VariableAccessData::mergeFlags):

5:20 PM Changeset in webkit [144130] by andersca@apple.com
  • 7 edits in trunk/Source

Implement StorageAreaProxy::getItem and StorageAreaProxy::setItem
https://bugs.webkit.org/show_bug.cgi?id=110927

Reviewed by Sam Weinig.

Source/WebCore:

Export StorageMap::getItem and StorageMap::setItem.

  • WebCore.exp.in:

Source/WebKit2:

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::setItem):

  • UIProcess/Storage/StorageManager.h:

Add empty stub.

  • UIProcess/Storage/StorageManager.messages.in:

Add SetItem message.

  • WebProcess/Storage/StorageAreaProxy.cpp:

(WebKit::StorageAreaProxy::getItem):
Fill the storage map and get the item from it.

(WebKit::StorageAreaProxy::setItem):
Update the storage map and send a SetItem message to the UI process.

5:09 PM Changeset in webkit [144129] by jamesr@google.com
  • 6 edits in trunk/Source

[chromium] Remove WebLayerTreeViewClient::(will|did)BeginFrame
https://bugs.webkit.org/show_bug.cgi?id=110928

Reviewed by Adrienne Walker.

Source/Platform:

  • chromium/public/WebLayerTreeViewClient.h:

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:
  • src/WebViewImpl.h:
  • tests/WebLayerTreeViewTestCommon.h:
5:05 PM Changeset in webkit [144128] by adamk@chromium.org
  • 4 edits
    5 adds in trunk

Parsing of HTML tags in MathML Text Insertion Points leads to bogus parser behavior
https://bugs.webkit.org/show_bug.cgi?id=110808

Reviewed by Adam Barth.

Source/WebCore:

When looking for various table tags in the HTMLElementStack, compare
QualifiedNames rather than just local names, where necessary.

Note that not all uses have been "fixed"; I've only changed for which
I could write a test with differing behavior. A followup patch to
rationalize the use of QualifiedName vs local names would be ideal.

Tests: html5lib/generated/run-math-data.html

html5lib/generated/run-math-write.html

  • html/parser/HTMLElementStack.cpp:

(WebCore::inScopeCommon): Added a version of inScopeCommon that
handles QualifiedNames instead of just localNames.
(WebCore::HTMLElementStack::inTableScope): When given a QualifiedName,
call the new version of inScopeCommon().

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processStartTag):
(WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
(WebCore::HTMLTreeBuilder::processTrEndTagForInRow):

LayoutTests:

  • html5lib/generated/run-math-data-expected.txt: Added.
  • html5lib/generated/run-math-data.html: Added.
  • html5lib/generated/run-math-write-expected.txt: Added.
  • html5lib/generated/run-math-write.html: Added.
  • html5lib/resources/math.dat: Added.
5:01 PM Changeset in webkit [144127] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix windows build.

4:52 PM Changeset in webkit [144126] by Kaustubh Atrawalkar
  • 14 edits
    2 adds
    2 deletes in trunk

Notification.requestPermission callback should be optional
https://bugs.webkit.org/show_bug.cgi?id=108196

Reviewed by Adam Barth.

Source/WebCore:

Spec says it should be optional.
http://notifications.spec.whatwg.org/#notification

Test: fast/notifications/notifications-request-permission-optional.html

  • GNUmakefile.list.am:
  • Modules/notifications/Notification.h:

(Notification):

  • Modules/notifications/Notification.idl:
  • Target.pri:
  • UseJSC.cmake:
  • UseV8.cmake:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSNotificationCustom.cpp: Removed.
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheck):

  • bindings/v8/custom/V8NotificationCustom.cpp: Removed.

LayoutTests:

Specs says it should be optional.
http://notifications.spec.whatwg.org/#notification

  • fast/notifications/notifications-request-permission-optional-expected.txt: Added.
  • fast/notifications/notifications-request-permission-optional.html: Added.
4:45 PM Changeset in webkit [144125] by jsbell@chromium.org
  • 3 edits
    1 add in trunk/Source/WebCore

IndexedDB: Add temporary diagnostic code to IDBRequest.result getter
https://bugs.webkit.org/show_bug.cgi?id=110916

Reviewed by Kentaro Hara.

Implement a custom getter for IDBRequest.result that does one additional hidden
property set, to try and isolate the flaky crash seen in wkbug.com/105363 which is
difficult to repro locally. If the crash moves to the new line it will point
the investigation in a new direction. Also add an assertion that probes string
wrappers (the expected type).

  • Modules/indexeddb/IDBRequest.idl: Mark attribute as [Custom]
  • WebCore.gypi: New file.
  • bindings/v8/custom/V8IDBRequestCustom.cpp: Added.

(WebCore::V8IDBRequest::resultAttrGetterCustom): Implementation - copy/paste from
generated code, plus extra setNamedHiddenReference call and string ASSERT.

4:44 PM Changeset in webkit [144124] by hclam@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] GIFImageDecoderTest.parseAndDecodeByteByByte failing on Android
https://bugs.webkit.org/show_bug.cgi?id=110922

Unreviewed. Build fix.

  • tests/GIFImageDecoderTest.cpp:

(WebKit):

4:42 PM Changeset in webkit [144123] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] TestExpectations addition

Unreviewed addition of fast/js/regress/inlined-put-by-id-transition.html which crashes occasionally.

  • platform/chromium/TestExpectations:
4:38 PM Changeset in webkit [144122] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Web Inspector: REGRESSION: [JSC] SourceProvider reuses IDs
https://bugs.webkit.org/show_bug.cgi?id=99674

Reviewed by Gavin Barraclough.

Simple incrementing counter for SourceProvider IDs. Uses a
lock to incrementing the counter so we don't increment reuse
counter values or reassign the ID for a given SourceProvider.

  • parser/SourceProvider.cpp:

(JSC::SourceProvider::SourceProvider):
(JSC):
(JSC::SourceProvider::getID):

  • parser/SourceProvider.h:

(JSC::SourceProvider::asID):
(SourceProvider):

4:34 PM Changeset in webkit [144121] by schenney@chromium.org
  • 50 edits
    3 deletes in trunk/LayoutTests

New baselines after feDisplacementMap fix
https://bugs.webkit.org/show_bug.cgi?id=10592

Unreviewed expectations update.

  • platform/chromium-linux-x86/svg/filters/feDisplacementMap-expected.png: Removed.
  • platform/chromium-linux/svg/filters/feDisplacementMap-expected.png: Removed.
  • platform/chromium-mac-lion/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/filters/feDisplacementMap-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-mac/svg/filters/feDisplacementMap-expected.png:
  • platform/chromium-mac/svg/filters/filterRes-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-win/svg/filters/feDisplacementMap-expected.png:
  • platform/chromium-win/svg/filters/filterRes-expected.png:
  • platform/chromium/TestExpectations:
4:31 PM Changeset in webkit [144120] by jamesr@google.com
  • 6 edits in trunk/Source

[chromium] Remove unused WebLayerTreeViewClient calls
https://bugs.webkit.org/show_bug.cgi?id=110923

Reviewed by Adrienne Walker.

These notifications existed for instrumentation, but now the instrumentation routes
through WebDevToolsAgent.

Source/Platform:

  • chromium/public/WebLayerTreeViewClient.h:

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:
  • src/WebViewImpl.h:
  • tests/WebLayerTreeViewTestCommon.h:
4:28 PM Changeset in webkit [144119] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Add a couple of symbols needed by WebKit2.

  • WebCore.exp.in:
4:19 PM Changeset in webkit [144118] by Michelangelo De Simone
  • 4 edits
    4 adds in trunk

[CSS Shaders] Implement color and luminosity non-separable blend modes
https://bugs.webkit.org/show_bug.cgi?id=106226

Source/WebCore:

Added the following GLSL helper functions to the CustomFilterValidatedProgram:

  • css_Lum(C): returns the luminosity for the color C
  • css_ClipColor(C): clips color C
  • css_SetLum(C, l): sets the luminosity l on the color C

The above functions are being used for the "color" and "luminosity" non-separable
blend modes, the relevant spec for such modes is at URL:
https://dvcs.w3.org/hg/FXTF/rawfile/tip/compositing/index.html#blendingnonseparable

Reviewed by Dean Jackson.

Tests: css3/filters/custom/custom-filter-nonseparable-blend-mode-color.html

css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity.html

  • platform/graphics/filters/CustomFilterValidatedProgram.cpp:

(WebCore::CustomFilterValidatedProgram::blendFunctionString):

LayoutTests:

Added relevant tests for the "color" and "luminosity" non-separable blend modes.
These tests are currently skipped on Mac due to a slight color difference; please
see relevant bug: http://webkit.org/b/107487.

Reviewed by Dean Jackson.

  • css3/filters/custom/custom-filter-nonseparable-blend-mode-color-expected.html: Added.
  • css3/filters/custom/custom-filter-nonseparable-blend-mode-color.html: Added.
  • css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity-expected.html: Added.
  • css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity.html: Added.
4:13 PM Changeset in webkit [144117] by andersca@apple.com
  • 5 edits in trunk/Source

StorageAreaProxy should hold on to a StorageMap and not a HashMap
https://bugs.webkit.org/show_bug.cgi?id=110919

Reviewed by Jessie Berlin.

Source/WebCore:

StorageMap should be a private header.

  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

Create a storage map instead of a hash map.

  • WebProcess/Storage/StorageAreaProxy.cpp:

(WebKit::StorageAreaProxy::length):
(WebKit::StorageAreaProxy::loadValuesIfNeeded):

  • WebProcess/Storage/StorageAreaProxy.h:

(WebCore):
(StorageAreaProxy):

3:43 PM Changeset in webkit [144116] by dpranke@chromium.org
  • 4 edits in trunk

[chromium] Re-enable the fixed version of freetype on linux
https://bugs.webkit.org/show_bug.cgi?id=110542

Reviewed by Tony Chang.

Tools:

Re-land the change in r143794 to switch to building with a fixed
version of FreeType for just DumpRenderTree. This allows us to share
one version of pixel baselines for both Lucid and Precise, and run the
layout tests in a stock Precise install (instead of a Lucid chroot).
Going forward, this approach isolates us from os-level changes to the
version of FreeType. Note that Chromium itself still uses the system
FreeType and is unaffected by this change.

This setting can still be turned off (at compile/gyp-time) by
manually setting use_custom_freetype=0.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

LayoutTests:

Re-add entries for two tests that pass on Lucid but fail on Precise
even with the Freetype change. This isn't worth adding in
Lucid and Precise keywords for just these two tests.

  • platform/chromium/TestExpectations:
3:18 PM Changeset in webkit [144115] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS from r183905 -> r184646.

Unreviewed.

  • DEPS:
3:06 PM Changeset in webkit [144114] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix a copy/paste error in WebLoaderClient::didBlockInsecurePluginVersion
https://bugs.webkit.org/show_bug.cgi?id=110914
<rdar://problem/13297581>

Reviewed by Beth Dakin.

Pass kWKErrorCodeInsecurePlugInVersion to the pluginDidFail callback.

  • UIProcess/WebLoaderClient.cpp:

(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):

2:57 PM Changeset in webkit [144113] by commit-queue@webkit.org
  • 14 edits
    1 delete in trunk/Source/JavaScriptCore

Unreviewed, rolling out r144074.
http://trac.webkit.org/changeset/144074
https://bugs.webkit.org/show_bug.cgi?id=110897

Causing 20+ crashes on Mac (Requested by bradee-oh on
#webkit).

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

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):

  • runtime/PropertyTable.cpp: Removed.
  • runtime/Structure.cpp:

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):

  • runtime/Structure.h:

(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):

  • runtime/StructureInlines.h:
2:49 PM Changeset in webkit [144112] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Remove unused WebWidget::instrument calls
https://bugs.webkit.org/show_bug.cgi?id=110906

Patch by James Robinson <jamesr@chromium.org> on 2013-02-26
Reviewed by Jochen Eisinger.

These calls are now routed through WebDevToolsAgent.

  • public/WebWidget.h:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::willBeginFrame):

  • src/WebViewImpl.h:
2:40 PM Changeset in webkit [144111] by roger_fong@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. AppleWin VS2010 build fix.

  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorCommon.props:
2:33 PM Changeset in webkit [144110] by schenney@chromium.org
  • 24 edits
    4 adds in trunk

feDisplacementMap filter gets color space wrong
https://bugs.webkit.org/show_bug.cgi?id=105929

Reviewed by Dirk Schulze.

Source/WebCore:

Tests: svg/filters/feDisplacementMap-color-interpolation-filters-expected.svg

svg/filters/feDisplacementMap-color-interpolation-filters.svg
svg/filters/feDisplacementMap-filterUnits-expected.svg
svg/filters/feDisplacementMap-filterUnits.svg

According to the spec, the SVG feDisplacementMap filter should not
change the color space on its first input, and other vendors seem to
agree that this also means that the output should be in the first
input's color space. That makes sense: we are displacing the input,
not otherwise manipulating colors.

This change improves color space handling for filters by more
explicitly tracking which color space is used for the filter's
operation and which is used for the filter's result. It provides a
means for filter effects to override the color-interpolation-filters
property as defined by the spec. feFlood and feDisplacementMap use
this new feature to enforce the spec requirements.

  • platform/graphics/filters/FEDisplacementMap.cpp:

(WebCore::FEDisplacementMap::setResultColorSpace): Override the default color space with the

same color space as the first input filter.

(WebCore):
(WebCore::FEDisplacementMap::transformResultColorSpace): Only transform the color space on

the second filter input.

(WebCore::FEDisplacementMap::platformApplySoftware): Make the application code more efficient,

and give slightly better numerical accuracy.

  • platform/graphics/filters/FEDisplacementMap.h:

(FEDisplacementMap): Declare setResultColorSpace.

  • platform/graphics/filters/FEFlood.cpp:

(WebCore::FEFlood::platformApplySoftware): Remove the call that forces

the result color space. We do it now in the setResultColorSpace.

  • platform/graphics/filters/FEFlood.h:

(FEFlood): Add setResultColorSPace override that enforces sRGB color space. But not if using

CG, which apparently does this this already internally.

  • platform/graphics/filters/FilterEffect.cpp:

(WebCore::FilterEffect::FilterEffect): Rename m_colorSpace to m_operatingColorSpace.
(WebCore::FilterEffect::apply): Allow filter effects to

override the color space conversion of their inputs.

(WebCore::FilterEffect::createImageBufferResult): Always create the

image buffer with the result color space.

  • platform/graphics/filters/FilterEffect.h:

(WebCore::FilterEffect::operatingColorSpace): New accessor.
(WebCore::FilterEffect::setOperatingColorSpace): New accessor.
(WebCore::FilterEffect::resultColorSpace): New accessor.
(WebCore::FilterEffect::setResultColorSpace): New accessor.
(FilterEffect):
(WebCore::FilterEffect::transformResultColorSpace): A new virtual

method that allows filter effects individual control over the color
space conversion of their inputs.

  • platform/graphics/filters/SourceGraphic.h:

(WebCore::SourceGraphic::SourceGraphic): Variable rename.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build): Use accessors to set color

space to enable per-effect overrides.

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::buildPrimitives): Use accessors to set color.

LayoutTests:

Add two new feDisplacementMap tests to get better coverage. And update some results.

  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-linux/svg/filters/feDisplacementMap-expected.png:
  • platform/chromium-linux/svg/filters/filterRes-expected.png:
  • svg/filters/feDisplacementMap-color-interpolation-filters-expected.svg: Added.
  • svg/filters/feDisplacementMap-color-interpolation-filters.svg: Added.
  • svg/filters/feDisplacementMap-filterUnits-expected.svg: Added.
  • svg/filters/feDisplacementMap-filterUnits.svg: Added.
2:29 PM Changeset in webkit [144109] by roger_fong@apple.com
  • 4 edits in trunk/Source/WebKit

Unreviewed AppleWin build fix following r143996.

  • WebKit.vcproj/WebKitExportGeneratorCommon.vsprops:
  • WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorCommon.props:
2:21 PM Changeset in webkit [144108] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1364

Merge 143454
BUG=176738
Review URL: https://codereview.chromium.org/12334104

2:15 PM Changeset in webkit [144107] by jschuh@chromium.org
  • 1 edit in branches/chromium/1410/Source/WebCore/rendering/RenderArena.cpp

Merge 143811
BUG=webkit.org/b/110394
TBR=jschuh@chromium.org
Review URL: https://codereview.chromium.org/12321148

2:13 PM Changeset in webkit [144106] by jschuh@chromium.org
  • 1 edit in branches/chromium/1364/Source/WebCore/rendering/RenderArena.cpp

Merge 143811
BUG=webkit.org/b/110394
TBR=jschuh@chromium.org
Review URL: https://codereview.chromium.org/12334103

2:00 PM Changeset in webkit [144105] by mkwst@chromium.org
  • 4 edits
    3 adds in trunk

X-Frame-Options should accept ALLOWALL as a valid value.
https://bugs.webkit.org/show_bug.cgi?id=110857

Reviewed by Adam Barth.

Source/WebCore:

DoubleClick, among others, serves ALLOWALL as a 'X-Frame-Options' value
with the intent of (shock!) allowing a resource to be framed by all
origins. Given its prevelance, and the fact that IE supports the header,
we shouldn't call it out as invalid.

This patch tweaks the warning logic to only throw the warning if the
header's value isn't 'ALLOWALL', 'DENY', or 'SAMEORIGIN'.

Test: http/tests/security/XFrameOptions/x-frame-options-allowall.html

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):

LayoutTests:

  • http/tests/security/XFrameOptions/resources/x-frame-options-allowall.cgi: Added.
  • http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-allowall.html: Added.

Exciting new test!

  • http/tests/security/XFrameOptions/x-frame-options-cached-expected.txt:

Exciting new baseline for an old test that was already using ALLOWALL!

1:58 PM Changeset in webkit [144104] by tony@chromium.org
  • 5 edits
    2 adds in trunk

CSS Flexbox: dynamically applied align-items doesn't affect item alignment
https://bugs.webkit.org/show_bug.cgi?id=110341

Reviewed by Ojan Vafai.

Source/WebCore:

If flex items don't change width, we don't lay them out again. This causes problems
when an item goes from stretch to non-stretch since we need to relayout to get the
smaller height. Fix this by marking flex items that were stretch as needing layout.

Test: css3/flexbox/relayout-align-items.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::resolveAlignment): Pull out common code for computing flex item style.
(WebCore::RenderFlexibleBox::styleDidChange): Mark children as needing layout.
(WebCore::RenderFlexibleBox::alignmentForChild): Use resolveAlignment.

  • rendering/RenderFlexibleBox.h:

LayoutTests:

Also fix a typo causing align-self-* classes from not applying. There
was only one test that tried to use the align-self classes and it was
testing all values behaved the same.

  • css3/flexbox/relayout-align-items-expected.txt: Added.
  • css3/flexbox/relayout-align-items.html: Added.
  • css3/flexbox/resources/flexbox.css:

(.align-self-auto):
(.align-self-flex-start):
(.align-self-flex-end):
(.align-self-center):
(.align-self-baseline):
(.align-self-stretch):

1:54 PM Changeset in webkit [144103] by andersca@apple.com
  • 6 edits in trunk/Source/WebCore

StorageMap can just import an entire map of items at once
https://bugs.webkit.org/show_bug.cgi?id=110904

Reviewed by Beth Dakin.

Instead of iterating over the map inside StorageAreaSync, just pass it directly
(through StorageAreaImpl) to StorageMap and iterate over it there.

  • storage/StorageAreaImpl.cpp:

(WebCore::StorageAreaImpl::importItems):

  • storage/StorageAreaImpl.h:

(StorageAreaImpl):

  • storage/StorageAreaSync.cpp:

(WebCore::StorageAreaSync::performImport):

  • storage/StorageMap.cpp:

(WebCore::StorageMap::importItems):

  • storage/StorageMap.h:

(StorageMap):

1:40 PM Changeset in webkit [144102] by Lucas Forschler
  • 8 edits in tags/Safari-537.31.10/Source

Merged r144091. <rdar://problem/13254985>

1:40 PM Changeset in webkit [144101] by Vineet
  • 6 edits in trunk/Source/WebCore

[JSC] static methods with Callback should not have this pointer
https://bugs.webkit.org/show_bug.cgi?id=110846

Reviewed by Kentaro Hara.

Fixing the JSC Codegenerator not to use 'this' pointer in static methods.

No new tests.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheck):

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

(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):

  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::staticMethodWithCallbackAndOptionalArgMethod):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::staticMethodWithCallbackAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::staticMethodWithCallbackArgMethod):
(WebCore::TestObjV8Internal::staticMethodWithCallbackArgMethodCallback):
(WebCore::ConfigureV8TestObjTemplate):

1:38 PM Changeset in webkit [144100] by hclam@chromium.org
  • 7 edits
    2 adds in trunk/Source

GIFImageReader to read from source data directly
https://bugs.webkit.org/show_bug.cgi?id=109662

Reviewed by Stephen White.

Source/WebCore:

This is the first patch to improve GIF image decoding.

GIFImageReader has an internal 256 bytes buffer to saving incoming
bytes. This mechanism is out-dated because WebKit holds the entire
file in memory and it is not necessary to hold data in an intermediate
buffer.

This is also a blocker for later work to parse and decode GIF
incrementally.

This change removed the imtermediate 'hold' buffer and uses an index
for data position to keep track of parsing of the GIF file. Buffer for
global colormap and local colormap are also removed because they can be
referenced from the data stream.

This change is tested by:

Layout tests
All tests passed under fast/images.

Unit tests
Added GIFImageDecoderTest for Chromium.

Local testing
I tested this implementation against a set of 50k GIF images and
there's no crashes and produces bit-exact results as previous code.

  • platform/image-decoders/gif/GIFImageDecoder.cpp:

(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):

  • platform/image-decoders/gif/GIFImageReader.cpp:

(GIFImageReader::doLZW):
(GIFImageReader::decode):
(GIFImageReader::decodeInternal):
(GIFImageReader::setRemainingBytes):

  • platform/image-decoders/gif/GIFImageReader.h:

(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader::setData):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::localColormap):
(GIFImageReader::localColormapSize):
(GIFImageReader::data):
(GIFImageReader::colormap):

Source/WebKit/chromium:

Added the following unit tests to test new logic in GIFImageDecoder:

GIFImageDecoderTest.decodeTwoFrames
Test that it can decode a multi-frame GIF image correctly.

GIFImageDecoderTest.parseAndDecode
First perform a parse operation and then a decode operation. Expect
that parse and decode operates correctly.

GIFImageDecoderTest.parseByteByByte
Test that multi-frame GIF image can be parsed correctly byte by byte.

GIFImageDecoderTest.parseAndDecodeByteByByte
Run a loop to feed decoder byte by byte, perform a parse and then
decode operation and make sure frames are decoded correctly.

GIFImageDecoderTest.brokenSecondFrame
Decode a GIF image with second frame broken. Expect that the first
frame can be decoded correctly.

  • WebKit.gypi:
  • tests/GIFImageDecoderTest.cpp: Added.

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

  • tests/data/broken.gif: Added.
1:35 PM Changeset in webkit [144099] by Lucas Forschler
  • 10 edits in tags/Safari-537.31.10/Source

Merged r143984. <rdar://problem/13254985>

1:12 PM Changeset in webkit [144098] by Lucas Forschler
  • 2 edits in tags/Safari-537.31.10/Source/JavaScriptCore

Merged r143509. <rdar://problem/13254985>

1:09 PM Changeset in webkit [144097] by Lucas Forschler
  • 6 edits
    2 copies in tags/Safari-537.31.10/Source/WebCore

Merged r143259. <rdar://problem/13254985>

1:08 PM Changeset in webkit [144096] by commit-queue@webkit.org
  • 17 edits
    5 adds in trunk

Empty <button>s should collapse; empty <input type="button"> should not collapse
https://bugs.webkit.org/show_bug.cgi?id=110654

Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

Source/WebCore:

This patch also fixes other height computation issues with flex boxes
related to scroll bars and hasLineIfEmpty()=true. See below for
details.

Tests: css3/flexbox/button.html

css3/flexbox/position-absolute-child-with-contenteditable.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock): Add a FIXME to make
border/padding/scrollbar inclusion more consistent with other
renderers.

  • rendering/RenderButton.h:

(WebCore::RenderButton::hasLineIfEmpty): We only want a line for
<input type=button|submit|reset>, for consistency with Firefox.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock): Start out layoutBlock by
setting the logical height to border + padding + scrollbar height to
ensure that we have space for the scrollbar even without children. The
layoutFlexItems change below is not enough because we also need this
when hasLineIfEmpty() is false.
(WebCore::RenderFlexibleBox::layoutFlexItems): Ensure we have a line
when hasLineIfEmpty() is true by calling setLogicalHeight(border+
padding+scrollbar+lineHeight()) if we don't have a flex line.

LayoutTests:

  • css3/flexbox/button-expected.png: Added.
  • css3/flexbox/button-expected.txt: Added.
  • css3/flexbox/button.html: Added.

Test empty buttons, <input type=button>, and buttons with
overflow:scroll;

  • css3/flexbox/position-absolute-child-with-contenteditable-expected.html: Added.
  • css3/flexbox/position-absolute-child-with-contenteditable.html: Added.

Test flex boxes with hasLineIfEmpty()=true and absolute positioned
children. Uses contenteditable=true to get that effect.

  • platform/chromium-linux/css2.1/20110323/replaced-elements-001-expected.png:
  • platform/chromium-linux/css2.1/20110323/replaced-elements-001-expected.txt:
  • platform/chromium-linux/svg/custom/foreign-object-skew-expected.png:
  • platform/chromium-linux/svg/custom/foreign-object-skew-expected.txt:
  • platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.png:
  • platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.txt:

Regenerate test cases that use <input type=button>.

  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:

Mark tests for rebaselining.

1:07 PM Changeset in webkit [144095] by Lucas Forschler
  • 7 edits in tags/Safari-537.31.10/Source/WebCore

Merged r143072. <rdar://problem/13254985>

1:04 PM Changeset in webkit [144094] by Lucas Forschler
  • 10 edits in tags/Safari-537.31.10

Merged r142918. <rdar://problem/13254985>

1:01 PM Changeset in webkit [144093] by Lucas Forschler
  • 5 edits in tags/Safari-537.31.10/Source/WebCore

Merged r142819. <rdar://problem/13254985>

12:52 PM Changeset in webkit [144092] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebCore

Unreviewed, rolling out r143941.
http://trac.webkit.org/changeset/143941
https://bugs.webkit.org/show_bug.cgi?id=110901

This is a step in the wrong direction as it ties us to what
grid-{row|column} expect (see
https://bugs.webkit.org/show_bug.cgi?id=110777 for the right
direction) (Requested by jchaffraix on #webkit).

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

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForGridPosition):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/StyleResolver.cpp:

(WebCore::createGridPosition):
(WebCore::StyleResolver::applyProperty):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::maximumIndexInDirection):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::autoPlacementMajorAxisPositionForChild):
(WebCore::RenderGrid::autoPlacementMinorAxisPositionForChild):

  • rendering/RenderGrid.h:
  • rendering/style/GridPosition.h:
  • rendering/style/RenderStyle.h:
  • rendering/style/StyleGridItemData.h:

(StyleGridItemData):

12:51 PM Changeset in webkit [144091] by jer.noble@apple.com
  • 8 edits in trunk/Source

Unreviewed build fix; use correct macro for platform name in FeatureDefines.xcconfig.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
12:48 PM Changeset in webkit [144090] by Lucas Forschler
  • 10 edits in tags/Safari-537.31.10/Source

Merged r144067. <rdar://problem/13250271>

12:44 PM Changeset in webkit [144089] by cevans@google.com
  • 3 edits in branches/chromium/1364/Source

Merge 143347
BUG=174627
Review URL: https://codereview.chromium.org/12310146

12:36 PM Changeset in webkit [144088] by Lucas Forschler
  • 6 edits in tags/Safari-537.31.10/Source

Merged r143650. <rdar://problem/13250271>

12:33 PM Changeset in webkit [144087] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.10/Source

Versioning.

12:28 PM Changeset in webkit [144086] by Lucas Forschler
  • 1 copy in tags/Safari-537.31.10

New Tag.

12:13 PM Changeset in webkit [144085] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Animated images not animating on accelerated compositing layers
https://bugs.webkit.org/show_bug.cgi?id=110886

Patch by Andrew Lo <anlo@rim.com> on 2013-02-26
Reviewed by Rob Buis.

Internally reviewed by Arvid Nilsson.
Internal PR 299598.

Animated images on AC layers call GraphicsLayer::setContentsToImage
on each frame with the same Image.

We need to set needs display in that case so that the frames are
displayed.

No new tests are needed since there is no new functionality.

  • platform/graphics/blackberry/LayerWebKitThread.cpp:

(WebCore::LayerWebKitThread::setContents):

11:48 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
11:43 AM Changeset in webkit [144084] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Unreviewed, rolling out r144065.
http://trac.webkit.org/changeset/144065
https://bugs.webkit.org/show_bug.cgi?id=110896

Causing failures and crashes on Chromium Win7 and Win XP
(Requested by schenney on #webkit).

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

Source/WebCore:

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):

  • platform/graphics/harfbuzz/HarfBuzzShaperBase.cpp:

(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):

Source/WebKit/chromium:

  • features.gypi:
11:37 AM Changeset in webkit [144083] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Potential crash in YARR JIT generated code when building 64 bit
https://bugs.webkit.org/show_bug.cgi?id=110893

Reviewed by Gavin Barraclough.

The ABI doesn't define the behavior for the upper bits of a value that takes less than 64 bits.
Therefore, we zero extend both the count and length registers to assure that these unsigned values
don't have garbage upper bits.

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::generateEnter):

11:25 AM Changeset in webkit [144082] by roger_fong@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed. Build fix for VS2010 solution, take 2.

  • WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
11:21 AM Changeset in webkit [144081] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] content shell drt: Enable WebKit::setLayoutTestMode()
https://bugs.webkit.org/show_bug.cgi?id=110890

Reviewed by Jochen Eisinger.

Several functions in webkit check that bit to change rendering
in layout test mode. For example, platform/graphics/skia/FrontSkia.cpp
disables font smoothing in this mode. TestShell and DRT both set
this flag, so content shell drt should set it too.

  • DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp:

(WebTestRunner::TestInterfaces::TestInterfaces):

11:12 AM Changeset in webkit [144080] by roger_fong@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed. Unreviewed build fix for VS2010 solution.

  • WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
11:03 AM Changeset in webkit [144079] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening.

Adding failure expectations for three html5lib tests that are failing after r144032
on EFL and GTK, most likely due to the ports sharing Libsoup as the network backend.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
11:00 AM Changeset in webkit [144078] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[TexMap] Ignore layer repaint request when drawsContent is false
https://bugs.webkit.org/show_bug.cgi?id=110888

Reviewed by Noam Rosenthal.

As long as drawsContent is false we should ignore requests for repaints.
A full repaint will be requested when drawsContent is changed to true.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::setNeedsDisplay):
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
(WebCore::GraphicsLayerTextureMapper::setDrawsContent):

10:55 AM Changeset in webkit [144077] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source/WTF

Fix the atomicIncrement implementation for MIPS GCC
https://bugs.webkit.org/show_bug.cgi?id=106739

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-26
Reviewed by Oliver Hunt.

Implementation of missing sync_[add|sub]_and_fetch_8 functions.

Some architectures, like MIPS32, don't have GCC implementation for
builtin sync_* functions with 64 bits variable size. GCC answer
for the problem: If a target doesn't support atomic operations on
certain variable sizes, you are out of luck with atomicity in that
case (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56296). GCC >= 4.8
will support
atomic_* builtin functions for this purpose for all
the GCC targets, but for current compilers we have to include our
own implementation.

  • GNUmakefile.list.am:
  • WTF.pro:
  • wtf/Atomics.cpp: Added.

(WTF):
(WTF::getSwapLock):
(WTF::atomicStep):

  • wtf/CMakeLists.txt:
10:50 AM Changeset in webkit [144076] by vivek.vg@samsung.com
  • 2 edits in trunk/Tools

new-commit-bot: Fix the unit test newcommitbot-unittest.py due to r144040
https://bugs.webkit.org/show_bug.cgi?id=110884

Reviewed by Csaba Osztrogonác.

Adding the missing spaces before ':' in the unit test.

  • Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:
10:44 AM Changeset in webkit [144075] by jsbell@chromium.org
  • 3 edits
    2 adds in trunk

IndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex()
https://bugs.webkit.org/show_bug.cgi?id=110792

Reviewed by Tony Chang.

Source/WebCore:

The object store's metadata wasn't updated if the index hadn't been accessed
by script and hence placed in the name->object map. Make sure the metadata
is always updated.

Test: storage/indexeddb/deleteIndex-bug110792.html

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::deleteIndex): Always update the object store's metadata.

LayoutTests:

Added regression test for bug.

  • storage/indexeddb/deleteIndex-bug110792-expected.txt: Added.
  • storage/indexeddb/deleteIndex-bug110792.html: Added.
10:43 AM Changeset in webkit [144074] by akling@apple.com
  • 14 edits
    1 add in trunk/Source/JavaScriptCore

Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

Added PropertyTable.cpp.

  • runtime/PropertyTable.cpp: Added.

(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

Moved marking of property table values here from Structure::visitChildren().

  • runtime/StructureInlines.h:

(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

  • runtime/Structure.cpp:

(JSC::Structure::visitChildren):

Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):

  • runtime/Structure.h:

(Structure):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

10:38 AM Changeset in webkit [144073] by commit-queue@webkit.org
  • 11 edits in trunk

Unreviewed, rolling out r144019.
http://trac.webkit.org/changeset/144019
https://bugs.webkit.org/show_bug.cgi?id=110892

due to 8% perf regression on chromium-win7 intl1 page cycler,
see https://bugs.webkit.org/show_bug.cgi?id=110872 (Requested
by gasubic on #webkit).

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

Source/WebCore:

  • platform/text/LineBreakIteratorPoolICU.h:

(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
(LineBreakIteratorPool):

  • platform/text/TextBreakIterator.h:

(WebCore):
(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):

  • platform/text/TextBreakIteratorICU.cpp:

(WebCore::acquireLineBreakIterator):
(WebCore::releaseLineBreakIterator):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):

  • rendering/RenderText.cpp:

(WebCore::RenderText::computePreferredLogicalWidths):

  • rendering/RenderText.h:

(WebCore):

  • rendering/break_lines.cpp:

(WebCore):
(WebCore::isBreakableSpace):
(WebCore::needsLineBreakIterator):
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):

  • rendering/break_lines.h:

(WebCore):
(WebCore::isBreakable):

LayoutTests:

  • platform/mac/TestExpectations:
10:35 AM Changeset in webkit [144072] by danakj@chromium.org
  • 6 edits in trunk/Source

Create the SharedGraphicsContext3D through its own method.
https://bugs.webkit.org/show_bug.cgi?id=109345

Reviewed by James Robinson.

Source/Platform:

Add Platform API methods to get shared contexts from the embedder.

  • chromium/public/Platform.h:

(Platform):
(WebKit::Platform::sharedOffscreenGraphicsContext3D):
(WebKit::Platform::sharedOffscreenGrContext):

Source/WebCore:

Allow creating a GraphicsContext3DPrivate from an externally owned
WebGraphicsContext3D and GrContext. Then create the shared graphics
context from these provided by the embedder.

This falls back to the old path if the new methods return NULL to
let us land this immediately and then transition the chromium side
over to this path.

  • platform/chromium/support/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromExternalWebContextAndGrContext):
(WebCore::GraphicsContext3DPrivate::grContext):

  • platform/chromium/support/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::webContext):

  • platform/graphics/gpu/SharedGraphicsContext3D.cpp:

(WebCore::SharedGraphicsContext3DImpl::getOrCreateContext):

10:32 AM Changeset in webkit [144071] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Appease the QT bots.

10:29 AM Changeset in webkit [144070] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
https://bugs.webkit.org/show_bug.cgi?id=110869

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-02-26
Reviewed by Martin Robinson.

Test was failing because of new media controls needs more space to be
painted than just 10x10 pixels.

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

(testContextMenuDefaultMenu): Modified test in order to give more space
to the media controls.

10:04 AM Changeset in webkit [144069] by yoli@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Use APIEntryShim when making JS call
https://bugs.webkit.org/show_bug.cgi?id=110787

Reviewed by Rob Buis.

PR# 301451.
Use APIEntryShim to fix an assert and ensure it is thread-safe.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::executeJavaScriptFunction):

9:50 AM Changeset in webkit [144068] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

REGRESSION(r143986): fast/files/revoke-blob-url.html asserts
https://bugs.webkit.org/show_bug.cgi?id=110885

Reviewed by Alexey Proskuryakov.

The ResourceRequest string constructor assumes that the string is a valid URL. Use KURL constructor instead.

  • html/DOMURL.cpp:

(WebCore::DOMURL::revokeObjectURL):

9:16 AM Changeset in webkit [144067] by dino@apple.com
  • 10 edits in trunk/Source

Draw intermediate snapshots if possible
https://bugs.webkit.org/show_bug.cgi?id=110811

Reviewed by Simon Fraser.

After http://webkit.org/b/110495 we delayed snapshotting until we've
received a nice image, but this made the page look like it is broken.
We should draw any intermediate snapshots that we find, which might
include content such as progress bars/spinners.

Source/WebCore:

  • html/HTMLPlugInElement.h:

(WebCore::HTMLPlugInElement::isPlugInImageElement): Expose virtual method
to indicate if this is a HTMLPlugInImageElement or not.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::updateSnapshot): If we have
a RenderEmbeddedObject renderer, then tell it to repaint.

  • html/HTMLPlugInImageElement.h:

(WebCore::HTMLPlugInImageElement::snapshotImage): Expose an
accessor for snapshot images.

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::paintSnapshotImage): New helper
method to render an image directly. This code is similar to
that in RenderSnapshottedPlugIn.
(WebCore::RenderEmbeddedObject::paintContents): The virtual implementation
of this method for use when we have a snapshot to paint. If we are a plugin that is
in the process of being snapshotted, ask our HTMLPlugInImageElement for a
snapshot and paint that instead. In the case where we are not snapshotting,
or we do not yet have a snapshot, this will call back into the RenderWidget code.

  • rendering/RenderEmbeddedObject.h:

(RenderEmbeddedObject): New methods paintSnapshotImage and paintContents

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::paintContents): New method called in the middle
of paint() that can be overridden by RenderEmbeddedObject. The code here was
simply moved out of the previous paint().
(WebCore::RenderWidget::paint): Call paintContents at the appropriate time.

  • rendering/RenderWidget.h:

(RenderWidget): New virtual method paintContents.

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit): Reinstate 60 attempts at snapshots before giving up.
(WebKit::PluginView::isAcceleratedCompositingEnabled): We do not
want accelerated compositing enabled when we are trying to capture
snapshots.

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

Remove nonexistent StringPairVector.h from Target.pri after r142839

Unreviewed gardening.

  • Target.pri:
9:08 AM Changeset in webkit [144065] by leviw@chromium.org
  • 5 edits in trunk/Source

Add support for 8 bit TextRuns for Chromium/HarfBuzz
https://bugs.webkit.org/show_bug.cgi?id=99393

Reviewed by Eric Seidel.

Source/WebCore:

Adding support for 8 bit TextRuns for platforms using HarfBuzz. To accomplish this,
8 bit text runs are upconverted to 16 bit in the complex text path during string
normalization, as HarfBuzz operates on UChars.

No new tests. No change in behavior.

(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):

  • platform/graphics/harfbuzz/HarfBuzzShaperBase.h:
  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):

Source/WebKit/chromium:

Enabling 8 bit text runs for Chromium.

  • features.gypi:
8:51 AM WebKitGTK edited by kov@webkit.org
(diff)
8:37 AM Changeset in webkit [144064] by commit-queue@webkit.org
  • 17 edits in trunk/Source

Merged Tip and Debug log levels for web console.
https://bugs.webkit.org/show_bug.cgi?id=109919

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-02-26
Reviewed by Pavel Feldman.

In every component either TIP or DEBUG level was used for reporting,
but not both. This patch is prerequisite for Web Inspector console log filtering.

Source/WebCore:

  • css/MediaList.cpp:

(WebCore::addResolutionWarningMessageToConsole):

  • inspector/ConsoleMessage.cpp:

(WebCore::messageLevelValue):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::abort):

  • page/Console.cpp:

(WebCore::printMessageSourceAndLevelPrefix):

  • page/ConsoleTypes.h:
  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::XSLTProcessor::parseErrorFunc):

  • xml/XSLTProcessorQt.cpp:

(WebCore::XSLTMessageHandler::handleMessage):

Source/WebKit/chromium:

  • public/WebConsoleMessage.h:
  • src/AssertMatchingEnums.cpp:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addMessageToConsole):

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.mm:

(stringForMessageLevel):

  • WebView/WebUIDelegatePrivate.h:

Source/WebKit/wx:

  • WebView.h:
8:28 AM Changeset in webkit [144063] by commit-queue@webkit.org
  • 10 edits
    4 adds in trunk/Source

[BlackBerry] Upstream the datalist support UI
https://bugs.webkit.org/show_bug.cgi?id=110736

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-02-26
Reviewed by Rob Buis.

Original code by Otto Derek Cheung <otcheung@rim.com>

Source/WebCore:

  • css/themeBlackBerry.css:

(input::-webkit-suggestion-dropdown-box):
(input::-webkit-suggestion-dropdown-box-item):
(input::-webkit-suggestion-prefix-text):
(input::-webkit-suggestion-dropdown-box-item-last):

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::supportsDataListUI):
(WebCore):

  • platform/blackberry/RenderThemeBlackBerry.h:

(RenderThemeBlackBerry):

Source/WebKit:

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

  • WebCoreSupport/SuggestionBoxElement.cpp: Added.

(WebCore):
(WebCore::SuggestionBoxElement::SuggestionBoxElement):
(WebCore::SuggestionBoxElement::~SuggestionBoxElement):
(WebCore::SuggestionBoxElement::create):
(WebCore::SuggestionBoxElement::defaultEventHandler):

  • WebCoreSupport/SuggestionBoxElement.h: Added.

(WebCore):
(SuggestionBoxElement):

  • WebCoreSupport/SuggestionBoxHandler.cpp: Added.

(WebCore):
(WebCore::SuggestionBoxHandler::SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::~SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::create):
(WebCore::SuggestionBoxHandler::setInputElementAndUpdateDisplay):
(WebCore::SuggestionBoxHandler::showDropdownBox):
(WebCore::SuggestionBoxHandler::hideDropdownBox):
(WebCore::SuggestionBoxHandler::changeInputElementInnerTextValue):
(WebCore::SuggestionBoxHandler::parseSuggestions):
(WebCore::SuggestionBoxHandler::insertSuggestionsToDropdownBox):
(WebCore::adjustDropdownBoxPosition):
(WebCore::SuggestionBoxHandler::buildDropdownBoxTree):

  • WebCoreSupport/SuggestionBoxHandler.h: Added.

(WebCore):
(SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::focusedElement):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::updateFormState):

  • WebKitSupport/InputHandler.h:

(WebCore):
(InputHandler):

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

8:22 AM Changeset in webkit [144062] by caseq@chromium.org
  • 17 edits
    2 adds in trunk/Source

Source/WebCore: Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

  • plumb trace events to Timeline;
  • add TimelineTraceEventProcessor to process selected trace events;
  • emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

  • CMakeLists.txt: Added TimelineTraceEventProcessor.{h,cpp}.
  • GNUmakefile.list.am: Ditto.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • inspector/InspectorAllInOne.cpp: Ditto.
  • inspector/InspectorClient.h:

(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):

  • inspector/InspectorTimelineAgent.cpp: create/destroy trace event processor on start/stop.

(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::page):
(WebCore):

  • inspector/InspectorTimelineAgent.h:

(WebCore):
(InspectorTimelineAgent):

  • inspector/TimelineTraceEventProcessor.cpp: Added.

(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):

  • inspector/TimelineTraceEventProcessor.h: Added.

(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):

Source/WebKit/chromium: Plumbing trace events to Timeline

Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

  • public/WebDevToolsAgentClient.h:

(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):

  • src/InspectorClientImpl.cpp:

(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):

  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):

  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

8:14 AM Changeset in webkit [144061] by eustas@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Web Inspector: Specify return type of WebInspector.UIString
https://bugs.webkit.org/show_bug.cgi?id=110095

Reviewed by Pavel Feldman.

Specify return type of WebInspector.UIString.
Fix new js-compiler warnings.

This change will increase type coverage by 0.4% (to 81%)

  • inspector/front-end/ObjectPropertiesSection.js: Fix type errors.
  • inspector/front-end/UIString.js:

(WebInspector.UIString): Return type specified.

8:08 AM Changeset in webkit [144060] by eustas@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Resources] Cookies table looks empty.
https://bugs.webkit.org/show_bug.cgi?id=110870

Reviewed by Pavel Feldman.

Fixed data-grid selector.

  • inspector/front-end/resourcesPanel.css:

(.storage-view .data-grid): Fixed selector.

8:05 AM Changeset in webkit [144059] by schenney@chromium.org
  • 1 edit
    5 adds
    3 deletes in trunk/LayoutTests

[Chromium] New baselines for css3-modsel-15c

Unreviewed test expectations update.

  • platform/chromium-linux-x86/css3/selectors3/xml: Removed.
  • platform/chromium-linux/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
  • platform/chromium-mac-lion/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
  • platform/chromium-mac-snowleopard/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
  • platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
  • platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.txt: Added.
  • platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.png: Removed.
  • platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.txt: Removed.
7:59 AM Changeset in webkit [144058] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Migrate FileSystem inspection support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110878

Reviewed by Alexander Pavlov.

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
FileSystemModel. This patch migrates FileSystem inspection support to new events.

  • inspector/front-end/FileSystemModel.js:

(WebInspector.FileSystemModel):
(WebInspector.FileSystemModel.prototype._reset):
(WebInspector.FileSystemModel.prototype._securityOriginAdded):
(WebInspector.FileSystemModel.prototype._securityOriginRemoved):
(WebInspector.FileSystemModel.prototype._addOrigin):
(WebInspector.FileSystemModel.prototype._removeOrigin):
(WebInspector.FileSystemModel.prototype.refreshFileSystemList):

7:57 AM Changeset in webkit [144057] by Antoine Quint
  • 5 edits in trunk

Web Inspector: Cannot deep expand an element that has previously been partially expanded
https://bugs.webkit.org/show_bug.cgi?id=110424

In the case where the children from the provided node have already been pushed, traverse children at the depth provided until we find children that have not been pushed yet.

Reviewed by Pavel Feldman.

7:53 AM Changeset in webkit [144056] by akling@apple.com
  • 14 edits
    1 delete in trunk/Source/JavaScriptCore

Unreviewed, rolling out r144054.
http://trac.webkit.org/changeset/144054
https://bugs.webkit.org/show_bug.cgi?id=110854

broke builds

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):

  • runtime/PropertyTable.cpp: Removed.
  • runtime/Structure.cpp:

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):

  • runtime/Structure.h:

(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):

  • runtime/StructureInlines.h:
7:43 AM Changeset in webkit [144055] by commit-queue@webkit.org
  • 6 edits in trunk

REGRESSION (r143619): Crashes in three layout tests
https://bugs.webkit.org/show_bug.cgi?id=110588

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-26
Reviewed by Gustavo Noronha Silva.

Source/WebKit/gtk:

Guard against null main resource identifiers. The main resource
identifier can be null at various times during the load. A null
identifier is never equal to the ones we are looking to remove.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::dispatchDidFinishLoading): Use the new webkitWebViewRemoveSubresource helper.
(WebKit::FrameLoaderClient::dispatchDidFailLoading): ditto.

  • webkit/webkitwebview.cpp:

(webkitWebViewRemoveSubresource): Added this helper which removes a subresource, but
never touches the main resource. This is adapted from the old method, for which the
main resource branch was dead code.

  • webkit/webkitwebviewprivate.h: Update the method list.

LayoutTests:

  • platform/gtk/TestExpectations: Unskip some tests which are no longer

crashing.

7:36 AM WebKitGTK/2.0.x edited by sergio@webkit.org
(diff)
7:32 AM Changeset in webkit [144054] by akling@apple.com
  • 14 edits
    1 add in trunk/Source/JavaScriptCore

Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

Added PropertyTable.cpp.

  • runtime/PropertyTable.cpp: Added.

(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

Moved marking of property table values here from Structure::visitChildren().

  • runtime/StructureInlines.h:

(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

  • runtime/Structure.cpp:

(JSC::Structure::visitChildren):

Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):

  • runtime/Structure.h:

(Structure):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

6:22 AM Changeset in webkit [144053] by caseq@chromium.org
  • 25 edits
    2 deletes in trunk

Unreviewed, rolling out r144041, r144044, and r144048.
http://trac.webkit.org/changeset/144041
http://trac.webkit.org/changeset/144044
http://trac.webkit.org/changeset/144048
https://bugs.webkit.org/show_bug.cgi?id=105796

Broke build

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorClient.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):

  • inspector/InspectorInstrumentation.h:
  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):

  • inspector/InspectorTimelineAgent.h:

(WebCore):
(InspectorTimelineAgent):

  • inspector/TimelineRecordFactory.cpp:
  • inspector/TimelineRecordFactory.h:
  • inspector/TimelineTraceEventProcessor.cpp: Removed.
  • inspector/TimelineTraceEventProcessor.h: Removed.
  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel._initRecordStyles):

Source/WebKit/chromium:

  • public/WebDevToolsAgentClient.h:
  • src/InspectorClientImpl.cpp:
  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:
  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

LayoutTests:

  • inspector/timeline/timeline-enum-stability-expected.txt:
6:20 AM Changeset in webkit [144052] by vsevik@chromium.org
  • 9 edits in trunk

Web Inspector: Migrate IndexedDB support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110863

Reviewed by Alexander Pavlov.

Source/WebCore:

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
IndexedDBModel. This patch migrates IndexedDB support to new events.

  • inspector/Inspector.json:
  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore):
(WebCore::InspectorIndexedDBAgent::requestDatabaseNames):
(WebCore::InspectorIndexedDBAgent::requestDatabase):
(WebCore::InspectorIndexedDBAgent::requestData):

  • inspector/InspectorIndexedDBAgent.h:

(InspectorIndexedDBAgent):

  • inspector/front-end/IndexedDBModel.js:

(WebInspector.IndexedDBModel):
(WebInspector.IndexedDBModel.prototype._reset):
(WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
(WebInspector.IndexedDBModel.prototype._securityOriginAdded):
(WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
(WebInspector.IndexedDBModel.prototype._addOrigin):
(WebInspector.IndexedDBModel.prototype._removeOrigin):
(WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.prototype.):
(WebInspector.IndexedDBModel.prototype._requestData):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype.securityOrigins):

LayoutTests:

  • http/tests/inspector/indexeddb/database-names-expected.txt:
  • http/tests/inspector/indexeddb/database-names.html:
5:57 AM Changeset in webkit [144051] by Csaba Osztrogonác
  • 9 edits
    6 copies in trunk/LayoutTests

Unreviewed fix after r144032.
https://bugs.webkit.org/show_bug.cgi?id=110734

Update expected files due to JSC/V8 differences.

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-02-26

  • TestExpectations: Skip 2 failing tests until proper fix.
  • html5lib/generated/run-template-write.html:
  • html5lib/generated/run-tests1-data-expected.txt:
  • html5lib/generated/run-tests1-write-expected.txt:
  • html5lib/generated/run-tests18-data-expected.txt:
  • html5lib/generated/run-tests18-write-expected.txt:
  • html5lib/generated/run-tests7-data-expected.txt:
  • html5lib/generated/run-tests7-write-expected.txt:
  • platform/chromium/html5lib/generated/run-tests1-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-data-expected.txt.
  • platform/chromium/html5lib/generated/run-tests1-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-write-expected.txt.
  • platform/chromium/html5lib/generated/run-tests18-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-data-expected.txt.
  • platform/chromium/html5lib/generated/run-tests18-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-write-expected.txt.
  • platform/chromium/html5lib/generated/run-tests7-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-data-expected.txt.
  • platform/chromium/html5lib/generated/run-tests7-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-write-expected.txt.
5:51 AM Changeset in webkit [144050] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:51 AM Changeset in webkit [144049] by apavlov@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: in protocol make field "securityOrigin" in type Page.Frame mandatory
https://bugs.webkit.org/show_bug.cgi?id=80857

Reviewed by Vsevolod Vlasov.

Frame.securityOrigin has always been set to a valid value, so this change just fixes
the protocol flaw.

  • inspector/Inspector.json:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::buildObjectForFrame):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeFrame):
(WebInspector.ResourceTreeFrame.prototype._navigate):

5:44 AM Changeset in webkit [144048] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix following r144041.

  • inspector/TimelineTraceEventProcessor.h:

(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):

5:43 AM Changeset in webkit [144047] by vivek.vg@samsung.com
  • 2 edits in trunk/Source/WebCore

Web Inspector: DataGrid should reveal and select next/previous DataGridNode upon deletion of selected node
https://bugs.webkit.org/show_bug.cgi?id=110862

Reviewed by Alexander Pavlov.

While deleting entries in the DataGrid, deleting of selected node should trigger selection of
next possible (backward/forward) DataGridNode.

  • inspector/front-end/DataGrid.js:

(WebInspector.DataGrid.prototype._keyDown):
(WebInspector.DataGridNode.prototype.get leftPadding):
(WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle):

5:42 AM Changeset in webkit [144046] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] TestExpectations cleanup.

Unreviewed removal of expectations for tests that are now passing.

  • platform/chromium/TestExpectations:
5:37 AM Changeset in webkit [144045] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

REGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
https://bugs.webkit.org/show_bug.cgi?id=110844

Patch by Sergio Villar Senin <svillar@igalia.com> on 2013-02-26
Reviewed by Alexey Proskuryakov.

Clean up cookies at the beginning and after finishing the test in
order not to break other tests behavior.

  • http/tests/cookies/resources/set-cookie-on-redirect.php: clear cookie before returning.
  • http/tests/cookies/set-cookie-on-redirect.html: clear all cookies before starting the test.
5:12 AM Changeset in webkit [144044] by caseq@chromium.org
  • 13 edits in trunk

Source/WebCore: Web Inspector: show raster tasks on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

  • add PaintLayer, Paint & RasterTask trace events handling to trace event processor;
  • upon begin frame, emit aggregated background event for all raster tasks related to the inspected page.

Reviewed by Pavel Feldman.

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
(InstrumentationEvents):
(InstrumentationEventArguments):

  • inspector/InspectorInstrumentation.h:

(InstrumentationEvents):
(WebCore):
(InstrumentationEventArguments):

  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):

  • inspector/InspectorTimelineAgent.h:

(TimelineRecordType):
(WebCore):

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createRasterData):
(WebCore):

  • inspector/TimelineRecordFactory.h:

(TimelineRecordFactory):

  • inspector/TimelineTraceEventProcessor.cpp:

(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::registerHandler):
(WebCore::TimelineTraceEventProcessor::shutdown):
(WebCore::TimelineTraceEventProcessor::TraceEvent::findParameter):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::onBeginFrame):
(WebCore::TimelineTraceEventProcessor::onPaintLayerBegin):
(WebCore::TimelineTraceEventProcessor::onPaintLayerEnd):
(WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
(WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
(WebCore::TimelineTraceEventProcessor::onLayerDeleted):
(WebCore::TimelineTraceEventProcessor::onPaint):
(WebCore::TimelineTraceEventProcessor::flushRasterizerStatistics):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):

  • inspector/TimelineTraceEventProcessor.h:

(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::id):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(TimelineTraceEventProcessor):

  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel._initRecordStyles):

LayoutTests: Web Inspector: show deferred paints on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

Reviewed by Pavel Feldman.

  • inspector/timeline/timeline-enum-stability-expected.txt: Added "Rasterize" record type.
5:11 AM WebKitGtkLayoutTests edited by Manuel Rego Casasnovas
Add explanation to launch a single unit test (diff)
5:04 AM Changeset in webkit [144043] by jocelyn.turcotte@digia.com
  • 9 edits
    1 add in trunk/Source

Implement JIT on Windows 64 bits
https://bugs.webkit.org/show_bug.cgi?id=107965

Reviewed by Simon Hausmann.

Source/JavaScriptCore:

  1. MSVC doesn't support inline assembly for 64 bits, implements the trampoline in a separate ASM file.
  1. Windows 64 bits has a different calling convention than other OSes following the AMD64 ABI.

Differences that we have to handle here:

  • Registers passed parameters are RCX, RDX, R8 and R9 instead of RDI, RSI, RDX, RCX, R8 and R9
  • RDI and RSI must be preserved by callee
  • Only return values <= 8 bytes can be returned by register (RDX can't be used to return a second word)
  • There is no red-zone after RIP on the stack, but instead 4 reserved words before it
  • Target.pri:
  • jit/JITStubs.cpp:
  • jit/JITStubs.h:

(JSC):
(JITStackFrame):
(JSC::JITStackFrame::returnAddressSlot):

  • jit/JITStubsMSVC64.asm: Added.
  • jit/JSInterfaceJIT.h:

(JSInterfaceJIT):

  • jit/ThunkGenerators.cpp:

(JSC::nativeForGenerator):

  • yarr/YarrJIT.cpp:

(YarrGenerator):
(JSC::Yarr::YarrGenerator::generateEnter):
(JSC::Yarr::YarrGenerator::generateReturn):

Source/WTF:

  • wtf/Platform.h:
5:01 AM Changeset in webkit [144042] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Source/WebCore

Work around a MSVC 2012 Update 1 bug causing a crash on x86
https://bugs.webkit.org/show_bug.cgi?id=110488

Reviewed by Anders Carlsson.

The crash happens when building with /O2, where TextEncodingNameHash::equal is
incorrectly optimized with the inlined toASCIILower and uses a register already in use.
The function returns false incorrectly, causing a mismatch of text encoding name which
then results in a null pointer access.

Slightly rewording the use of the inline function lets the compiler produce correct code.

The bug has already been reported and should be fixed in the next release of MSVS later this year.
https://connect.microsoft.com/VisualStudio/feedback/details/777533/vs2012-c-optimizing-bug-when-using-inline-and-char-return-type-x86-target-only

  • platform/text/TextEncodingRegistry.cpp:
4:52 AM Changeset in webkit [144041] by caseq@chromium.org
  • 17 edits
    2 adds in trunk/Source

Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

Source/WebCore:

  • plumb trace events to Timeline;
  • add TimelineTraceEventProcessor to process selected trace events;
  • emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/Inspector.json:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorClient.h:

(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):
(WebCore::InspectorTimelineAgent::page):

  • inspector/InspectorTimelineAgent.h:

(WebCore):
(InspectorTimelineAgent):

  • inspector/TimelineTraceEventProcessor.cpp: Added.

(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):

  • inspector/TimelineTraceEventProcessor.h: Added.

(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):

  • inspector/front-end/TimelineFrameController.js:

(WebInspector.TimelineFrameController.prototype._addRecord):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):

  • inspector/front-end/timelinePanel.css:

(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

Source/WebKit/chromium:

Plumb trace events to Inspector.

  • public/WebDevToolsAgentClient.h:

(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):

  • src/InspectorClientImpl.cpp:

(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):

  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):

  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

4:52 AM Changeset in webkit [144040] by vivek.vg@samsung.com
  • 2 edits in trunk/Tools

new-commit-bot: Some IRC clients doesn't linkify rollout messages
https://bugs.webkit.org/show_bug.cgi?id=110861

Reviewed by Ryosuke Niwa.

Adding the space before ':' in order to fix the links shown for the rollout message.

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

(NewCommitBot._summarize_commit_log):

4:42 AM Changeset in webkit [144039] by caseq@chromium.org
  • 8 edits in trunk/Source/WebCore

Web Inspector: display background events on Timeline
https://bugs.webkit.org/show_bug.cgi?id=108599

Reviewed by Pavel Feldman.

  • add optional `thread' field to timeline event;
  • if thread field is present, display the event as 'background' (hollow bar / list icon), align to nearest foreground event;
  • do not account background events in Frame mode of overview.
  • inspector/Inspector.json:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):

  • inspector/InspectorTimelineAgent.h:

(InspectorTimelineAgent):

  • inspector/front-end/TimelineFrameController.js:

(WebInspector.TimelineFrameController.prototype._addRecord):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):

  • inspector/front-end/timelinePanel.css:

(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

4:33 AM Changeset in webkit [144038] by haraken@chromium.org
  • 12 edits in trunk/Source/WebCore

[V8] Rename BatchedCallback to BatchedMethod
https://bugs.webkit.org/show_bug.cgi?id=110791

Reviewed by Adam Barth.

Now 'Callback' is used to refer to functions that are called back
by V8. DOM methods should be referred to as 'Method's.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):

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

(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):

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

(WebCore):
(WebCore::ConfigureV8TestCustomNamedGetterTemplate):

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

(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):

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

(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):

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

(WebCore):
(WebCore::ConfigureV8TestMediaQueryListListenerTemplate):

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

(WebCore):
(WebCore::ConfigureV8TestObjTemplate):

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

(WebCore):
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):

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

(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):

  • bindings/v8/V8DOMConfiguration.cpp:

(WebCore::V8DOMConfiguration::batchConfigureCallbacks):
(WebCore::V8DOMConfiguration::configureTemplate):

  • bindings/v8/V8DOMConfiguration.h:

(V8DOMConfiguration):

4:08 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
4:01 AM Changeset in webkit [144037] by toyoshim@chromium.org
  • 3 edits
    3 adds in trunk

Add User-Agent header in opening handshake headers.
https://bugs.webkit.org/show_bug.cgi?id=110601

Reviewed by Alexey Proskuryakov.

RFC-6455 doesn't require to send User-Agent header, but allow it.
Many web application developers want to have it, and Firefox already
did it. This patch adds User-Agent header in opening handshake also in
WebKit ports.

Test: http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html

Source/WebCore:

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::clientHandshakeMessage):
(WebCore::WebSocketHandshake::clientHandshakeRequest):

LayoutTests:

  • http/tests/websocket/tests/hybi/sendback_ua_wsh.py: Added.

(web_socket_do_extra_handshake):
(web_socket_transfer_data):

  • http/tests/websocket/tests/hybi/useragent-in-openinghandshake-expected.txt: Added.
  • http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html: Added.
4:01 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
3:41 AM Changeset in webkit [144036] by mkwst@chromium.org
  • 2 edits in trunk/Source/WebCore

XSSAuditor: Don't rely on implicit casting when copying the document's KURL to String.
https://bugs.webkit.org/show_bug.cgi?id=110859

Reviewed by Jochen Eisinger.

XSSAuditor::init should explicitly make a thread-safe copy of the
document's URL as a String rather than relying on implicit casting from
a copy of the KURL.

This shouldn't change any visible behavior; all existing XSSAuditor
tests should continue to pass. They'll now just be a bit more smug while
doing so.

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::init):

3:38 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:31 AM Changeset in webkit [144035] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Updating expectations for two inspector tests.

Expanding expectation for media/encrypted-media/encrypted-media-syntax.html to expect timeouts as well.
Adding a flaky failure expectation for svg/custom/animation-currentColor.svg.

3:30 AM WebKitGTK/2.0.x edited by Claudio Saavedra
(diff)
3:28 AM WebKitGTK/1.10.x edited by Claudio Saavedra
(diff)
3:22 AM Changeset in webkit [144034] by jochen@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

[chromium] add content shell specific TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=110710

Reviewed by Eric Seidel.

For now, add tests that pass on content shell but fail on DRT.
Next, I will file bugs for all the remaining failing tests and skip
them here to ease the transition from DRT.

  • platform/chromium/ContentShellTestExpectations: Added.
3:09 AM Changeset in webkit [144033] by zarvai@inf.u-szeged.hu
  • 1 edit
    3 moves
    1 add in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk1/http/tests/navigation/forward-and-cancel-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/forward-and-cancel-expected.txt.
  • platform/qt-5.0-wk1/http/tests/navigation/postredirect-frames-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-frames-expected.txt.
  • platform/qt-5.0-wk1/http/tests/navigation/postredirect-goback2-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-goback2-expected.txt.
3:05 AM Changeset in webkit [144032] by eric@webkit.org
  • 4 edits
    82 copies
    7 moves
    93 adds
    50 deletes in trunk/LayoutTests

Layout Test Multiple html5lib/ tests are too slow and should be split.
https://bugs.webkit.org/show_bug.cgi?id=110734

Reviewed by Adam Barth.

Split all of the html5lib tests into write and data variants
instead of running both in sequence in each test.
I added a script to autogenerate all of the test harness files
from the *.dat files in resources/ (which we sync with the
upstream html5lib tests.

I removed all the old tests and expectations as well as TestExpectation entries.
All of these tests should now be fast enough to avoid timeout on all platforms.
I set the expectations from my chromium-linux (v8) machine, thus someone
from a jsc port will need to rebaseline appropriately from their machine.

(WrapperGenerator):
(_files_in_directory_with_suffix):
(_last_path_component_removing_suffix):
(_remove_harness_prefix):
(_remove_harness_type):
(_test_name_from_harness_name):
(_remove_stale_tests):
(_input_path):
(_harness_path):
(_harness_content):
(_write_harness):
(main):

  • html5lib/generated/run-adoption01-data-expected.txt: Added.
  • html5lib/generated/run-adoption01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-adoption01-write-expected.txt: Added.
  • html5lib/generated/run-adoption01-write.html: Renamed from LayoutTests/html5lib/generated/run-template.html.
  • html5lib/generated/run-adoption02-data-expected.txt: Added.
  • html5lib/generated/run-adoption02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-adoption02-write-expected.txt: Added.
  • html5lib/generated/run-adoption02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests11.html.
  • html5lib/generated/run-comments01-data-expected.txt: Added.
  • html5lib/generated/run-comments01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-comments01-write-expected.txt: Added.
  • html5lib/generated/run-comments01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-doctype01-data-expected.txt: Added.
  • html5lib/generated/run-doctype01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-doctype01-write-expected.txt: Added.
  • html5lib/generated/run-doctype01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests10.html.
  • html5lib/generated/run-domjs-unsafe-data-expected.txt: Added.
  • html5lib/generated/run-domjs-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-domjs-unsafe-write-expected.txt: Added.
  • html5lib/generated/run-domjs-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-entities01-data-expected.txt: Added.
  • html5lib/generated/run-entities01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-entities01-write-expected.txt: Added.
  • html5lib/generated/run-entities01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-entities02-data-expected.txt: Added.
  • html5lib/generated/run-entities02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-entities02-write-expected.txt: Added.
  • html5lib/generated/run-entities02-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-html5test-com-data-expected.txt: Added.
  • html5lib/generated/run-html5test-com-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-html5test-com-write-expected.txt: Added.
  • html5lib/generated/run-html5test-com-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-inbody01-data-expected.txt: Added.
  • html5lib/generated/run-inbody01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-inbody01-write-expected.txt: Added.
  • html5lib/generated/run-inbody01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-isindex-data-expected.txt: Added.
  • html5lib/generated/run-isindex-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-isindex-write-expected.txt: Added.
  • html5lib/generated/run-isindex-write.html: Renamed from LayoutTests/html5lib/generated/run-tests2.html.
  • html5lib/generated/run-pending-spec-changes-data-expected.txt: Added.
  • html5lib/generated/run-pending-spec-changes-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data-expected.txt: Added.
  • html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data.html: Added.
  • html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write-expected.txt: Added.
  • html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-pending-spec-changes-write-expected.txt: Added.
  • html5lib/generated/run-pending-spec-changes-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-plain-text-unsafe-data-expected.txt: Added.
  • html5lib/generated/run-plain-text-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-plain-text-unsafe-write-expected.txt: Added.
  • html5lib/generated/run-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-scriptdata01-data-expected.txt: Added.
  • html5lib/generated/run-scriptdata01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-scriptdata01-write-expected.txt: Added.
  • html5lib/generated/run-scriptdata01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tables01-data-expected.txt: Added.
  • html5lib/generated/run-tables01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tables01-write-expected.txt: Added.
  • html5lib/generated/run-tables01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests22.html.
  • html5lib/generated/run-template-data-expected.txt: Added.
  • html5lib/generated/run-template-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-template-expected.txt: Removed.
  • html5lib/generated/run-template-write-expected.txt: Added.
  • html5lib/generated/run-template-write.html: Renamed from LayoutTests/html5lib/generated/run-tests3.html.
  • html5lib/generated/run-tests1-data-expected.txt: Added.
  • html5lib/generated/run-tests1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests1-expected.txt: Removed.
  • html5lib/generated/run-tests1-write-expected.txt: Added.
  • html5lib/generated/run-tests1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests10-data-expected.txt: Added.
  • html5lib/generated/run-tests10-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests10-expected.txt: Removed.
  • html5lib/generated/run-tests10-write-expected.txt: Added.
  • html5lib/generated/run-tests10-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests11-data-expected.txt: Added.
  • html5lib/generated/run-tests11-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests11-expected.txt: Removed.
  • html5lib/generated/run-tests11-write-expected.txt: Added.
  • html5lib/generated/run-tests11-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests12-data-expected.txt: Added.
  • html5lib/generated/run-tests12-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests12-expected.txt: Removed.
  • html5lib/generated/run-tests12-write-expected.txt: Added.
  • html5lib/generated/run-tests12-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests12.html: Removed.
  • html5lib/generated/run-tests14-data-expected.txt: Added.
  • html5lib/generated/run-tests14-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests14-expected.txt: Removed.
  • html5lib/generated/run-tests14-write-expected.txt: Added.
  • html5lib/generated/run-tests14-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests14.html: Removed.
  • html5lib/generated/run-tests15-data-expected.txt: Added.
  • html5lib/generated/run-tests15-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests15-expected.txt: Removed.
  • html5lib/generated/run-tests15-write-expected.txt: Added.
  • html5lib/generated/run-tests15-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests15.html: Removed.
  • html5lib/generated/run-tests16-data-expected.txt: Added.
  • html5lib/generated/run-tests16-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests16-expected.txt: Removed.
  • html5lib/generated/run-tests16-write-expected.txt: Added.
  • html5lib/generated/run-tests16-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests16.html: Removed.
  • html5lib/generated/run-tests17-data-expected.txt: Added.
  • html5lib/generated/run-tests17-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests17-expected.txt: Removed.
  • html5lib/generated/run-tests17-write-expected.txt: Added.
  • html5lib/generated/run-tests17-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests17.html: Removed.
  • html5lib/generated/run-tests18-data-expected.txt: Added.
  • html5lib/generated/run-tests18-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests18-expected.txt: Removed.
  • html5lib/generated/run-tests18-write-expected.txt: Added.
  • html5lib/generated/run-tests18-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests18.html: Removed.
  • html5lib/generated/run-tests19-data-expected.txt: Added.
  • html5lib/generated/run-tests19-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests19-expected.txt: Removed.
  • html5lib/generated/run-tests19-write-expected.txt: Added.
  • html5lib/generated/run-tests19-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests19.html: Removed.
  • html5lib/generated/run-tests2-data-expected.txt: Added.
  • html5lib/generated/run-tests2-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests2-expected.txt: Removed.
  • html5lib/generated/run-tests2-write-expected.txt: Added.
  • html5lib/generated/run-tests2-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests20-data-expected.txt: Added.
  • html5lib/generated/run-tests20-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests20-expected.txt: Removed.
  • html5lib/generated/run-tests20-write-expected.txt: Added.
  • html5lib/generated/run-tests20-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests20.html: Removed.
  • html5lib/generated/run-tests21-data-expected.txt: Added.
  • html5lib/generated/run-tests21-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests21-expected.txt: Removed.
  • html5lib/generated/run-tests21-write-expected.txt: Added.
  • html5lib/generated/run-tests21-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests21.html: Removed.
  • html5lib/generated/run-tests22-data-expected.txt: Added.
  • html5lib/generated/run-tests22-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests22-expected.txt: Removed.
  • html5lib/generated/run-tests22-write-expected.txt: Added.
  • html5lib/generated/run-tests22-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests23-data-expected.txt: Added.
  • html5lib/generated/run-tests23-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests23-expected.txt: Removed.
  • html5lib/generated/run-tests23-write-expected.txt: Added.
  • html5lib/generated/run-tests23-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests23.html: Removed.
  • html5lib/generated/run-tests24-data-expected.txt: Added.
  • html5lib/generated/run-tests24-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests24-expected.txt: Removed.
  • html5lib/generated/run-tests24-write-expected.txt: Added.
  • html5lib/generated/run-tests24-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests24.html: Removed.
  • html5lib/generated/run-tests25-data-expected.txt: Added.
  • html5lib/generated/run-tests25-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests25-expected.txt: Removed.
  • html5lib/generated/run-tests25-write-expected.txt: Added.
  • html5lib/generated/run-tests25-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests25.html: Removed.
  • html5lib/generated/run-tests26-data-expected.txt: Added.
  • html5lib/generated/run-tests26-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests26-expected.txt: Removed.
  • html5lib/generated/run-tests26-write-expected.txt: Added.
  • html5lib/generated/run-tests26-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests26.html: Removed.
  • html5lib/generated/run-tests3-data-expected.txt: Added.
  • html5lib/generated/run-tests3-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests3-expected.txt: Removed.
  • html5lib/generated/run-tests3-write-expected.txt: Added.
  • html5lib/generated/run-tests3-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests4-data-expected.txt: Added.
  • html5lib/generated/run-tests4-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests4-expected.txt: Removed.
  • html5lib/generated/run-tests4-write-expected.txt: Added.
  • html5lib/generated/run-tests4-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests4.html: Removed.
  • html5lib/generated/run-tests5-data-expected.txt: Added.
  • html5lib/generated/run-tests5-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests5-expected.txt: Removed.
  • html5lib/generated/run-tests5-write-expected.txt: Added.
  • html5lib/generated/run-tests5-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests5.html: Removed.
  • html5lib/generated/run-tests6-data-expected.txt: Added.
  • html5lib/generated/run-tests6-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests6-expected.txt: Removed.
  • html5lib/generated/run-tests6-write-expected.txt: Added.
  • html5lib/generated/run-tests6-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests6.html: Removed.
  • html5lib/generated/run-tests7-data-expected.txt: Added.
  • html5lib/generated/run-tests7-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests7-expected.txt: Removed.
  • html5lib/generated/run-tests7-write-expected.txt: Added.
  • html5lib/generated/run-tests7-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests7.html: Removed.
  • html5lib/generated/run-tests8-data-expected.txt: Added.
  • html5lib/generated/run-tests8-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests8-expected.txt: Removed.
  • html5lib/generated/run-tests8-write-expected.txt: Added.
  • html5lib/generated/run-tests8-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests8.html: Removed.
  • html5lib/generated/run-tests9-data-expected.txt: Added.
  • html5lib/generated/run-tests9-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests9-expected.txt: Removed.
  • html5lib/generated/run-tests9-write-expected.txt: Added.
  • html5lib/generated/run-tests9-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests9.html: Removed.
  • html5lib/generated/run-tests_innerHTML_1-data-expected.txt: Added.
  • html5lib/generated/run-tests_innerHTML_1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests_innerHTML_1-write-expected.txt: Added.
  • html5lib/generated/run-tests_innerHTML_1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tricky01-data-expected.txt: Added.
  • html5lib/generated/run-tricky01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tricky01-write-expected.txt: Added.
  • html5lib/generated/run-tricky01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-webkit01-data-expected.txt: Added.
  • html5lib/generated/run-webkit01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-webkit01-write-expected.txt: Added.
  • html5lib/generated/run-webkit01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-webkit02-data-expected.txt: Added.
  • html5lib/generated/run-webkit02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-webkit02-write-expected.txt: Added.
  • html5lib/generated/run-webkit02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/resources/runner.js:

(window.onload):

  • html5lib/runner-expected.txt: Removed.
  • html5lib/runner.html: Removed.
  • platform/chromium/TestExpectations:
  • platform/chromium/html5lib/generated/run-tests1-expected.txt: Removed.
  • platform/chromium/html5lib/generated/run-tests18-expected.txt: Removed.
  • platform/chromium/html5lib/generated/run-tests7-expected.txt: Removed.
2:51 AM Changeset in webkit [144031] by tasak@google.com
  • 3 edits
    2 adds in trunk

Shadow DOM styles appear to be over-eagerly shared
https://bugs.webkit.org/show_bug.cgi?id=110797

Reviewed by Dimitri Glazkov.

Source/WebCore:

A style of a distributed node should not be shared, because the node
might be affected by styles in a shadow dom tree, i.e. :distributed
or something.

Test: fast/dom/shadow/no-style-sharing-with-distributed-nodes.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::locateCousinList):
Skip shadow hosts, because children of shadow hosts are distributed
nodes and cannot share their styles.

LayoutTests:

  • fast/dom/shadow/no-style-sharing-with-distributed-nodes-expected.html: Added.
  • fast/dom/shadow/no-style-sharing-with-distributed-nodes.html: Added.
2:40 AM Changeset in webkit [144030] by adamk@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove unused conditional includes of {MathML,SVG}Names.h
https://bugs.webkit.org/show_bug.cgi?id=110809

Reviewed by Eric Seidel.

  • html/parser/HTMLConstructionSite.cpp:
2:30 AM Changeset in webkit [144029] by kadam@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Update platform specific expected file after r143836.

  • platform/qt/TestExpectations: Skipped after r143300.
  • platform/qt/fast/forms/select-baseline-expected.txt: Update after r143836.
2:05 AM Changeset in webkit [144028] by joone.hur@intel.com
  • 2 edits in trunk/Tools

[GTK] Add Clutter to jhbuild
https://bugs.webkit.org/show_bug.cgi?id=110245

Reviewed by Martin Robinson.

Add clutter, cogl, clutter-gtk, and atk to the optional moduleset.
This allows to build WebKitGtk+ with clutter as an acceleration backend
within the jhbuild environment.

  • gtk/jhbuild-optional.modules:
1:57 AM Changeset in webkit [144027] by eric@webkit.org
  • 2 edits in trunk/Source/WebCore

Threaded HTML parser fails fast/loader/stateobjects/state-attribute-history-getter.html
https://bugs.webkit.org/show_bug.cgi?id=110801

Reviewed by Adam Barth.

This causes 6 more tests to pass for the threaded parser,
an solves all of our timeout issues.

These tests which were failing were racy, we just were never
hitting the race due to using file urls. This change fixes
the threaded parser to emulate one more of the EOF quirks from
the loader/main-thread-parser interaction.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):

1:47 AM Changeset in webkit [144026] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Kill another analyzer warning in javascriptcore
https://bugs.webkit.org/show_bug.cgi?id=110802

Reviewed by Benjamin Poulain.

Add null checks.

  • profiler/LegacyProfiler.cpp:

(JSC::LegacyProfiler::startProfiling):
(JSC::LegacyProfiler::stopProfiling):

1:15 AM Changeset in webkit [144025] by apavlov@chromium.org
  • 7 edits in trunk

Web Inspector: CSSAgent.setStyleSheetText crashes on inline styles
https://bugs.webkit.org/show_bug.cgi?id=110359

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::SetStyleSheetTextAction::undo): Pass ExceptionCode into setText().
(WebCore::InspectorCSSAgent::SetStyleSheetTextAction::redo): Ditto.

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::setText): Make use of checkPageStyleSheet().
(WebCore::InspectorStyleSheet::setRuleSelector): Ditto.
(WebCore::InspectorStyleSheet::addRule): Ditto.
(WebCore::InspectorStyleSheet::deleteRule): Ditto.
(WebCore::InspectorStyleSheet::checkPageStyleSheet):

Return NOT_SUPPORTED_ERR if no m_pageStyleSheet.

(WebCore::InspectorStyleSheet::setStyleText): Check field directly.

  • inspector/InspectorStyleSheet.h:

LayoutTests:

  • inspector/styles/styles-new-API-expected.txt:
  • inspector/styles/styles-new-API.html:
1:13 AM Changeset in webkit [144024] by commit-queue@webkit.org
  • 26 edits
    9 copies
    42 adds in trunk

Implement coordinated scrollbar for subframes and overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=109560

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-02-26
Reviewed by James Robinson.

Source/WebCore:

This patch obsoletes ScrollingCoordinatorPrivate for the Chromium
implementation. Also removes the concept of a single main scrolling
layer. Should use HashMap to keep track resources for multiple
scrollable objects.

Many of the callbacks are extended to support ScrollableArea instead
of just FrameView. Now ScrollingCoordinatorChromium coordinates
scrollbars for both subframes and overflow:scroll.

Some drive-by change:

  1. Remove the GraphicsLayer parameter for layer change callbacks. Should be able to get the latest layer from the ScrollableArea anyway.
  2. Should start from main frame document when updating touch event target rects.

New chromium test: ScrollingCoordinatorChromiumTest.iframeScrolling

  • page/Frame.cpp:

(WebCore::Frame::willDetachPage):

  • page/FrameView.cpp:

(WebCore::FrameView::prepareForDetach):
(WebCore::FrameView::layerForScrolling):
(WebCore):

  • page/FrameView.h:

(FrameView):

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::scrollLayerForScrollableArea):
(WebCore):
(WebCore::ScrollingCoordinator::horizontalScrollbarLayerForScrollableArea):
(WebCore::ScrollingCoordinator::verticalScrollbarLayerForScrollableArea):

  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::willDestroyScrollableArea):
(WebCore::ScrollingCoordinator::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinator::scrollableAreaScrollbarLayerDidChange):
(ScrollingCoordinator):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::scrollingWebLayerForGraphicsLayer):
(WebCore::ScrollingCoordinatorChromium::scrollingWebLayerForScrollableArea):
(WebCore::ScrollingCoordinatorChromium::ScrollingCoordinatorChromium):
(WebCore::ScrollingCoordinatorChromium::~ScrollingCoordinatorChromium):
(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorChromium::touchEventTargetRectsDidChange):
(WebCore::createScrollbarLayer):
(WebCore::detachScrollbarLayer):
(WebCore::setupScrollbarLayer):
(WebCore::ScrollingCoordinatorChromium::willDestroyScrollableArea):
(WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollbarLayerDidChange):
(WebCore::ScrollingCoordinatorChromium::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRects):
(WebCore::ScrollingCoordinatorChromium::setWheelEventHandlerCount):
(WebCore::ScrollingCoordinatorChromium::setShouldUpdateScrollLayerPositionOnMainThread):
(WebCore::ScrollingCoordinatorChromium::setLayerIsContainerForFixedPositionLayers):
(WebCore::ScrollingCoordinatorChromium::setLayerIsFixedToContainerLayer):
(WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinatorChromium::addWebScrollbarLayer):
(WebCore):
(WebCore::ScrollingCoordinatorChromium::getWebScrollbarLayer):
(WebCore::ScrollingCoordinatorChromium::removeWebScrollbarLayer):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.h:

(WebCore):
(ScrollingCoordinatorChromium):

  • page/scrolling/mac/ScrollingCoordinatorMac.h:

(ScrollingCoordinatorMac):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::scrollableAreaScrollbarLayerDidChange):

  • platform/ScrollableArea.h:

(ScrollableArea):
(WebCore::ScrollableArea::layerForScrolling):

  • platform/graphics/GraphicsLayer.h:

(GraphicsLayer):
(WebCore::GraphicsLayer::setContentsToPlatformLayer):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::~RenderLayer):
(WebCore::RenderLayer::layerForScrolling):
(WebCore):

  • rendering/RenderLayer.h:

(RenderLayer):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateOverflowControlsLayers):
(WebCore::RenderLayerBacking::positionOverflowControlsLayers):
(WebCore::RenderLayerBacking::updateScrollingLayers):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::frameViewDidScroll):
(WebCore::RenderLayerCompositor::scrollingLayerDidChange):
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):

Source/WebKit/chromium:

Added ScrollingCoordinatorChromiumTest.iframeScrolling to verify
impl-side scrolling and impl-side scrollbars for frames.

Update ScrollingCoordinatorChromiumTest.overflowScrolling to verify
impl-side scrollbars.

  • tests/ScrollingCoordinatorChromiumTest.cpp:

(WebKit::ScrollingCoordinatorChromiumTest::ScrollingCoordinatorChromiumTest):
(WebKit::TEST_F):
(WebKit):

  • tests/data/iframe-scrolling-inner.html: Added.
  • tests/data/iframe-scrolling.html: Added.

LayoutTests:

Coordinated scrollbars changes drawsContent flag on scrollbar GraphicsLayers,
test expectation are updated.

  • platform/chromium-linux/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/composited-parent-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/iframe-resize-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/overlapped-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/resizer-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/scrolling-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/compositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt:
  • platform/chromium-linux/compositing/overflow/textarea-scroll-touch-expected.txt: Added.
  • platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt:
  • platform/chromium-linux/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
  • platform/chromium-linux/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
  • platform/chromium-linux/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
  • platform/chromium-linux/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-toggle-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-overlay-with-touch-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/become-overlapped-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-parent-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe2-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe3-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/enter-compositing-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-resize-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-size-from-zero-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/overlapped-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/resizer-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/scrolling-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-without-painting-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/textarea-scroll-touch-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/updating-scrolling-content-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
  • platform/chromium/TestExpectations:
1:07 AM Changeset in webkit [144023] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r144004.
http://trac.webkit.org/changeset/144004
https://bugs.webkit.org/show_bug.cgi?id=110858

This iOS change is outdated (Requested by notbenjamin on
#webkit).

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

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
(BytecodeGenerator):

  • parser/Parser.cpp:

(JSC::::Parser):

  • parser/Parser.h:

(JSC::Parser::canRecurse):
(Parser):

1:06 AM Changeset in webkit [144022] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Overloaded constructors don't need header declarations
https://bugs.webkit.org/show_bug.cgi?id=110799

Reviewed by Adam Barth.

They are implemented as static functions in cpp files.
Header declarations are not needed.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
1:04 AM Changeset in webkit [144021] by commit-queue@webkit.org
  • 4 edits
    1 delete in trunk/Source

Unreviewed, rolling out r144016.
http://trac.webkit.org/changeset/144016
https://bugs.webkit.org/show_bug.cgi?id=110856

Breaks compilation on chromium mac (Requested by vsevik on
#webkit).

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

Source/WebCore:

  • platform/chromium/KeyCodeConversionGtk.cpp:

(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/KeyCodeConversionTest.cpp: Removed.
12:49 AM Changeset in webkit [144020] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Appease static analyzer warning about null string passed to strlen
https://bugs.webkit.org/show_bug.cgi?id=110658

Reviewed by Benjamin Poulain.

Add a null check before calling strlen

  • wtf/Threading.cpp:

(WTF::createThread):

12:42 AM Changeset in webkit [144019] by glenn@skynav.com
  • 11 edits in trunk

Source/WebCore: Add support to -webkit-line-break property for CSS3 Text line-break property values and semantics.
https://bugs.webkit.org/show_bug.cgi?id=89235

Reviewed by Eric Seidel.

This patch adds semantic support for the CSS3 line-break property (qua -webkit-line-break),
and enables testing on (apple) mac ports. Follow on patches will enable these tests on
other ports as they are incrementally verified.

See also wiki documentation at:
[1] http://trac.webkit.org/wiki/LineBreaking
[2] http://trac.webkit.org/wiki/LineBreakingCSS3Mapping

Tests: css3/line-break/line-break-auto-centered.html

css3/line-break/line-break-auto-half-kana.html
css3/line-break/line-break-auto-hyphens.html
css3/line-break/line-break-auto-inseparables.html
css3/line-break/line-break-auto-iteration-marks.html
css3/line-break/line-break-auto-postfixes.html
css3/line-break/line-break-auto-prefixes.html
css3/line-break/line-break-auto-sound-marks.html
css3/line-break/line-break-loose-centered.html
css3/line-break/line-break-loose-half-kana.html
css3/line-break/line-break-loose-hyphens.html
css3/line-break/line-break-loose-inseparables.html
css3/line-break/line-break-loose-iteration-marks.html
css3/line-break/line-break-loose-postfixes.html
css3/line-break/line-break-loose-prefixes.html
css3/line-break/line-break-loose-sound-marks.html
css3/line-break/line-break-normal-centered.html
css3/line-break/line-break-normal-half-kana.html
css3/line-break/line-break-normal-hyphens.html
css3/line-break/line-break-normal-inseparables.html
css3/line-break/line-break-normal-iteration-marks.html
css3/line-break/line-break-normal-postfixes.html
css3/line-break/line-break-normal-prefixes.html
css3/line-break/line-break-normal-sound-marks.html
css3/line-break/line-break-strict-centered.html
css3/line-break/line-break-strict-half-kana.html
css3/line-break/line-break-strict-hyphens.html
css3/line-break/line-break-strict-inseparables.html
css3/line-break/line-break-strict-iteration-marks.html
css3/line-break/line-break-strict-postfixes.html
css3/line-break/line-break-strict-prefixes.html
css3/line-break/line-break-strict-sound-marks.html

These tests were previously added in http://trac.webkit.org/changeset/143378, but skipped
in generic TestExpectations. In this patch, they are marked as Pass for the (apple) mac ports.

  • platform/text/LineBreakIteratorPoolICU.h:

(WebCore::LineBreakIteratorPool::makeLocaleWithBreakKeyword):
Add static function to construct ICU locale argument (also used as pool key) with additional
break keyword.
(LineBreakIteratorPool):
(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
Remove direct dependency from ICU library (and types), moving that dependency into
new {open,close}LineBreakIterator() functions (defined in TextBreakIteratorICU.cpp).
Update to take line break mode into account.
Create (and cache) different break iterators depending on line break mode (in addition to locale),
which entails expanding pool entry key format to optionally append "@break=" +
"loose"|"normal"|"strict" keyword to locale string.

  • platform/text/TextBreakIterator.h:

(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::isLooseCJKMode):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):
Define LineBreakIteratorMode enumeration for use in TextBreakIterator et al.
Add state member to indicate line break mode.

  • platform/text/TextBreakIteratorICU.cpp:

(WebCore::acquireLineBreakIterator):
Use new line break mode when making iterator from pool.
Handle change of return type of LineBreakIteratorPool::take() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore::releaseLineBreakIterator):
Handle change of parameter type of LineBreakIteratorPool::put() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore):
(WebCore::isCJKLocale):
New functions for determining if CJK rules apply.
(WebCore::openLineBreakIterator):
New function for abstracting opening of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.
This function also takes into account the line break mode.
(WebCore::closeLineBreakIterator):
(WebCore::mapLineIteratorModeToRules):
New function for abstracting closing of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
Pass line break iterator mode flag when reseting LazyLineBreakIterator.
Add looseMode local variable to prevent need for computing under isBreakable().

  • rendering/RenderText.cpp:

(WebCore::mapLineBreakToIteratorMode):
Add implementation for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.
(WebCore):
(WebCore::RenderText::computePreferredLogicalWidths):
Ensure (lazy line) breakIterator is initialized for line break mode.
Ensure isBreakable() is passed loose mode flag to match behavior in RenderBlock::LineBreaker::nextLineBreak.

  • rendering/RenderText.h:

(WebCore):
Add declaration for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.

  • rendering/break_lines.cpp:

(WebCore):
Introduce (local) enum NBSPBehavior for expanding template on nextBreakablePosition.
(WebCore::isBreakableSpace):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation. Use new loose mode flavors off NBP functions.
(WebCore::needsLineBreakIterator):
Use enum NBSP behavior template parameter rather than boolean.
(WebCore::nextBreakablePositionNonLoosely):
Extend name to distinguish from loose flavor of this function.
(WebCore::nextBreakablePositionLoosely):
Add loose flavor of NBP invoked only when loose mode applies, in which case ASCII shortcut
table cannot be used.
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):
Use (renamed) non-loose flavor of NBP.
(WebCore::nextBreakablePositionLoose):
(WebCore::nextBreakablePositionIgnoringNBSPLoose):
Introduce loose flavor of NBP template expansions.

  • rendering/break_lines.h:

(WebCore):
(WebCore::isBreakable):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation.

LayoutTests: CSS3: line-break property support
https://bugs.webkit.org/show_bug.cgi?id=89235

Reviewed by Eric Seidel.

  • platform/mac/TestExpectations: Mark css3/line-break tests as passing.
12:38 AM Changeset in webkit [144018] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipp now passing tests after r144005.
https://bugs.webkit.org/show_bug.cgi?id=110756.

Reviewed by Geoffrey Garen.

  • platform/qt/TestExpectations:
12:34 AM Changeset in webkit [144017] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Fix continuous painting mode
https://bugs.webkit.org/show_bug.cgi?id=110788

Patch by James Robinson <jamesr@chromium.org> on 2013-02-26
Reviewed by Adrienne Walker.

Recent instrumentation shuffling caused WebViewImpl::didBeginFrame to no longer be called, which
broke continuous painting. Since continuous painting mode is meant to simply invalidate layers
on each frame, it's a better fit for the animation system. This moves the invalidation calls
into WebViewImpl::updateAnimations along with other animation type things.

Tested manually by enabling continuous painting mode in the inspector. There aren't any automated
tests in WebKit for this feature.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setContinuousPaintingEnabled):
(WebKit::WebViewImpl::didBeginFrame):
(WebKit::WebViewImpl::updateAnimations):

  • src/painting/ContinuousPainter.cpp:

(WebKit::ContinuousPainter::setNeedsDisplayRecursive):

12:32 AM Changeset in webkit [144016] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source

keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=85642

Source/WebCore:

Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.

Patch by James Weatherall <wez@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

  • platform/chromium/KeyCodeConversionGtk.cpp:

(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

Add tests to verify that the fixed keys generate the same keyCode values
as their equivalents.

Patch by James Weatherall <wez@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

  • WebKit.gypi:
  • tests/KeyCodeConversionTest.cpp: Added.

(WebCore):
(WebCore::TEST):

12:28 AM Changeset in webkit [144015] by Simon Hausmann
  • 2 edits in trunk/Source/WebKit2

Unreviewed trivial !ENABLE(NETSCAPE_PLUGIN_API) build fix

Add an intermediate pluginName string variable instead of
accessing plugin.info outside the feature #ifdef.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::unavailablePluginButtonClicked):

Feb 25, 2013:

11:57 PM Changeset in webkit [144014] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Another fix attempt after r143991 since having \r? after a greedy match doesn't help.

  • Scripts/webkitpy/common/checkout/scm/svn.py:

(SVN.value_from_svn_info):

11:56 PM Changeset in webkit [144013] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
11:47 PM Changeset in webkit [144012] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Coordinated Graphics: remove redundant update of non compositing layer.
https://bugs.webkit.org/show_bug.cgi?id=110444

Patch by Huang Dongsung <luxtella@company100.net> on 2013-02-25
Reviewed by Noam Rosenthal.

Currently, we update non compositing layer when the page scrolled. However, it
is not needed, because TiledBackingStore can scroll without tile update.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

(CoordinatedLayerTreeHost):

11:42 PM Changeset in webkit [144011] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r143981): Crash in WebFrameLoaderClient::dispatchDidStartProvisionalLoad()
https://bugs.webkit.org/show_bug.cgi?id=110848

Reviewed by Ryosuke Niwa.

NULL-check the result of document->documentElement().

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):

11:21 PM Changeset in webkit [144010] by abarth@webkit.org
  • 9 edits in trunk/Source/WebCore

6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Unreviewed.

This patch restores the code that I rolled out in
http://trac.webkit.org/changeset/143960 and
http://trac.webkit.org/changeset/143983. Rolling out those patches did
not heal the bot.

  • dom/Element.cpp:

(WebCore::Element::addAttributeInternal):
(WebCore::ShareableElementData::ShareableElementData):
(WebCore::UniqueElementData::makeShareableCopy):
(WebCore::UniqueElementData::addAttribute):
(WebCore::UniqueElementData::removeAttribute):
(WebCore::ElementData::reportMemoryUsage):
(WebCore::UniqueElementData::getAttributeItem):
(WebCore):
(WebCore::UniqueElementData::attributeItem):

  • dom/Element.h:

(ElementData):
(UniqueElementData):
(WebCore::isShadowHost):
(WebCore::ElementData::length):
(WebCore::ElementData::attributeItem):

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::resumeFrom):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):

  • html/parser/CSSPreloadScanner.cpp:

(WebCore):
(WebCore::CSSPreloadScanner::scanCommon):
(WebCore::CSSPreloadScanner::scan):
(WebCore::CSSPreloadScanner::emitRule):

  • html/parser/CSSPreloadScanner.h:

(CSSPreloadScanner):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::startBackgroundParser):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::TokenPreloadScanner::tagIdFor):
(WebCore):
(WebCore::TokenPreloadScanner::initiatorFor):
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
(TokenPreloadScanner::StartTagScanner):
(WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
(WebCore::TokenPreloadScanner::createCheckpoint):
(WebCore::TokenPreloadScanner::rewindTo):
(WebCore::TokenPreloadScanner::scan):
(WebCore::TokenPreloadScanner::scanCommon):
(WebCore::TokenPreloadScanner::updatePredictedBaseURL):
(WebCore::HTMLPreloadScanner::scan):

  • html/parser/HTMLPreloadScanner.h:

(TokenPreloadScanner):
(WebCore::TokenPreloadScanner::isSafeToSendToAnotherThread):
(WebCore::TokenPreloadScanner::Checkpoint::Checkpoint):
(Checkpoint):

11:01 PM Changeset in webkit [144009] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
10:32 PM Changeset in webkit [144008] by noel.gordon@gmail.com
  • 2 edits in trunk/Tools

GCE EWS bots failing intermittently on HTTP 502 error while updating their status
https://bugs.webkit.org/show_bug.cgi?id=110845

Unreviewed EWS bot fix.

Switch the Queue Status Server address the EWS bots use to a more direct URL that
doesn't seem to be having problems from GCE like queues.webkit.org.

Patch by Alan Cutter <alancutter@chromium.org> on 2013-02-25

  • Scripts/webkitpy/common/net/statusserver.py:

(StatusServer):

10:24 PM TestExpectations edited by glenn@skynav.com
editorial cleanup (diff)
10:13 PM TestExpectations edited by glenn@skynav.com
editorial cleanup (diff)
10:10 PM TestExpectations edited by glenn@skynav.com
describe how to learn which expectations files apply (diff)
10:00 PM TestExpectations edited by glenn@skynav.com
editorial cleanup; add info on generic test expectations file (diff)
9:57 PM TestExpectations edited by glenn@skynav.com
editorial cleanup (diff)
9:54 PM TestExpectations edited by glenn@skynav.com
editorial cleanup (diff)
9:53 PM Changeset in webkit [144007] by crogers@google.com
  • 2 edits in trunk/Source/WebCore

AudioDestinationChromium should pass in inputDeviceId when creating WebKit::WebAudioDevice
https://bugs.webkit.org/show_bug.cgi?id=110796

Reviewed by Kenneth Russell.

  • platform/audio/chromium/AudioDestinationChromium.cpp:

(WebCore::AudioDestinationChromium::AudioDestinationChromium):

9:51 PM TestExpectations edited by glenn@skynav.com
clarify usage of WontFix | Skip (diff)
9:49 PM TestExpectations edited by glenn@skynav.com
ensure grammaticality (diff)
9:47 PM TestExpectations edited by glenn@skynav.com
qualify "equivalent" (diff)
9:36 PM Creating and Submitting Layout Tests and Patches edited by glenn@skynav.com
add description about using webkit-patch upload instead of svn-create-patch (diff)
9:06 PM Changeset in webkit [144006] by mark.lam@apple.com
  • 25 edits
    4 deletes in trunk/Source/WebCore

Need a more robust WebSQL disk usage computation.
https://bugs.webkit.org/show_bug.cgi?id=110805.

Reviewed by Geoffrey Garen.

  • Changed DatabaseTracker::usageForOrigin() to compute the disk usage for a specified origin by fetching database sizes from the file system instead of using cached file size values.
  • The OriginQuotaManager and OriginUsageRecord are no longer needed. Updated build files to reflect this.
  • Removed getMaxSizeForDatabase() from DatabaseManager, DatabaseServer, and AbstractDatabaseServer since it is only needed in the backend.
  • DatabaseTracker::getMaxSizeForDatabase() now calls usageForOrigin() to get the disk usage for its computation.
  • The performance difference for this changes is a 1.6% degradation per additional database whose size needs to be fetched. This is a worst case estimated based on the disk-stat-speed-test.html benchmark (attached to bugzilla). The benchmark writes an average of 16 bytes per transaction. Most real-world transactions will likely write more content than that. Since disk write IO time will dominate over memory read time for fetching the file size, the degradation ratio will only reduce with larger workloads.

No layout test, but there is a quota-test.html attached to bugzilla.
The test is a webpage that can be loaded into multiple tabs to
consuming storage space. While the test is running, we can run a
"du -k; du -k *" on the database directory to verify that the total
disk usage does not far exceed the allowed quota (some small error
is expected). Without this change, each database from each tab may
exceed the quota by that same maginitude of error.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/webdatabase/AbstractDatabaseServer.h:
  • Modules/webdatabase/Database.cpp:
  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::maximumSize):

  • Modules/webdatabase/DatabaseManager.cpp:
  • Modules/webdatabase/DatabaseManager.h:
  • Modules/webdatabase/DatabaseServer.cpp:
  • Modules/webdatabase/DatabaseServer.h:
  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::hasAdequateQuotaForOrigin):
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::fullPathForDatabaseNoLock):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::usageForOrigin):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):

  • Modules/webdatabase/DatabaseTracker.h:
  • Modules/webdatabase/OriginQuotaManager.cpp: Removed.
  • Modules/webdatabase/OriginQuotaManager.h: Removed.
  • Modules/webdatabase/OriginUsageRecord.cpp: Removed.
  • Modules/webdatabase/OriginUsageRecord.h: Removed.
  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::runCurrentStatementAndGetNextState):

  • Modules/webdatabase/SQLTransactionBackendSync.cpp:

(WebCore::SQLTransactionBackendSync::executeSQL):

  • Modules/webdatabase/SQLTransactionClient.cpp:
  • Modules/webdatabase/SQLTransactionClient.h:
  • Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp:
  • Target.pri:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
8:25 PM Changeset in webkit [144005] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r143654): some jquery test asserts on 32 bit debug build
https://bugs.webkit.org/show_bug.cgi?id=110756

Reviewed by Geoffrey Garen.

TypeOf does speculations manually, so it should mark its JSValueOperand as doing ManualOperandSpeculation.

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

8:13 PM Changeset in webkit [144004] by benjamin@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

[JSC] Upstream iOS Stack bound checking
https://bugs.webkit.org/show_bug.cgi?id=110813

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-25
Reviewed by Filip Pizlo.

On iOS, the StackBounds cannot be cached because the stack
can be in one of two threads (the web thread or the UI thread).

We simply always consider the current stack bound when testing
stack boundaries.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
(BytecodeGenerator):

  • parser/Parser.cpp:

(JSC::::Parser):

  • parser/Parser.h:

(JSC::Parser::canRecurse):
(Parser):

8:04 PM Changeset in webkit [144003] by Bruno de Oliveira Abinader
  • 3 edits in trunk/Source/WebCore

[texmap] Rename TextureMapperGL::ClipStack::init to reset
https://bugs.webkit.org/show_bug.cgi?id=110783

Reviewed by Noam Rosenthal.

Functions named init() are usually called inside ctor's to initialize
member variables that were unable to be assigned on an initialization
list, which is not the case, and also because reset() better reflects
the behavior (clears the clip stack and assigns a value to the initial
clip state).

No behavior changes, thus covered by existing tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::ClipStack::reset):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::BitmapTextureGL::initializeDepthBuffer):

  • platform/graphics/texmap/TextureMapperGL.h:

(ClipStack):

7:18 PM Changeset in webkit [144002] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Add expandedToParagraph() method to WebRange
https://bugs.webkit.org/show_bug.cgi?id=110618

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-02-25
Reviewed by Adam Barth.

Add a method expandedToParagraph() to WebRange to return a copy of the
range expanded to paragraph boundaries. This method is to be used to
query the spelling context around the misspelled word under cursor.

  • public/WebRange.h:

(WebRange): Added expandedToParagraph() method declaration.

  • src/WebRange.cpp:

(WebKit::WebRange::expandedToParagraph): Added method to copy range, expand the copied range to paragraph boundaries, and return the resulting range.
(WebKit): Added expandedToParagraph() method definition.

7:02 PM Changeset in webkit [144001] by rniwa@webkit.org
  • 2 edits in trunk/Source/WTF

Build fix attempt after r143996.

  • wtf/FastMalloc.cpp:

(WTF):

6:36 PM Changeset in webkit [144000] by abarth@webkit.org
  • 5 edits in trunk/Source/WebCore

Threaded HTML parser should pass fast/parser/iframe-sets-parent-to-javascript-url.html
https://bugs.webkit.org/show_bug.cgi?id=110637

Reviewed by Eric Seidel.

With the main thread parser, we always parse the first chunk of content
returned as the result of evaluating a JavaScript URL synchronously. In
particular, if the first chunk has an inline script, we'll execute it
synchronously.

Previous to this patch, the threaded parser would always parse this
content asynchronously. It's conceivable that there could be some
content relying on the synchronous behavior, so this patch introduces
the notion of "pinning" a parser to the main thread and uses that
concept to force the result of JavaScript URLs to be parsed on the main
thread (which is probably desirable anyway because they're likely to be
quite short).

This patch fixes fast/parser/iframe-sets-parent-to-javascript-url.html
and fast/dom/javascript-url-crash-function.html with the threaded
parser with --enable-threaded-html-parser.

  • dom/DocumentParser.h:

(WebCore::DocumentParser::pinToMainThread):
(DocumentParser):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore):
(WebCore::HTMLDocumentParser::pinToMainThread):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):
(WebCore::HTMLDocumentParser::shouldUseThreading):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::replaceDocument):

6:33 PM Changeset in webkit [143999] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebCore

Update the localizable strings file.

Rubber-stamped by Anders Carlsson.

  • English.lproj/Localizable.strings:
6:25 PM Changeset in webkit [143998] by jamesr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] WebViewImpl::m_client can be null in some unit tests, check it before calling
https://bugs.webkit.org/show_bug.cgi?id=110834

Reviewed by Adrienne Walker.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::suppressInvalidations):
(WebKit::WebViewImpl::setRootGraphicsLayer):

6:25 PM Changeset in webkit [143997] by roger_fong@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed. Fix script to use WEBKIT_SOURCE for VS2010 property sheets instead of WEBKIT_LIBRARIES.

  • WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
6:13 PM Changeset in webkit [143996] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Add cookies to FastMalloc spans
https://bugs.webkit.org/show_bug.cgi?id=110827

Reviewed by Michael Saboff.

Add a cookie to spans, and move some of the hardening around so
that it's more useful.

  • wtf/FastMalloc.cpp:

(WTF::internalEntropyValue):
(WTF::spanInitializerCookie):
(WTF::Span::initCookie):
(WTF::Span::clearCookie):
(WTF::Span::isValid):
(Span):
(WTF::NewSpan):
(WTF::DeleteSpan):
(WTF::TCMalloc_ThreadCache_FreeList::Validate):
(WTF::TCMalloc_Central_FreeList::Populate):
(WTF::TCMalloc_ThreadCache::Deallocate):
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):

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

Forgot to delete a no-longer-needed unit test after r143980.

Unreviewed, build fix.

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

(ChromiumWinTest.test_path_to_image_diff):

6:10 PM Changeset in webkit [143994] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

For JSVALUE32_64, maxOffsetRelativeToPatchedStorage() doesn't compute the maximum negative offset
https://bugs.webkit.org/show_bug.cgi?id=110828

Reviewed by Oliver Hunt.

  • runtime/JSObject.h:

(JSC::maxOffsetRelativeToPatchedStorage): Only add the OBJECT_OFFSETOF(tag) for positive offsets.
That way this function will return the offset farthest from 0 needed to access either the payload
or tag.

6:06 PM Changeset in webkit [143993] by commit-queue@webkit.org
  • 5 edits
    4 adds in trunk

Flexbox should ignore firstLetter pseudo element.
https://bugs.webkit.org/show_bug.cgi?id=105126

Patch by Xueqing Huang <huangxueqing@baidu.com> on 2013-02-25
Reviewed by Tony Chang.

Source/WebCore:

The CSS WG decided that first-line and first-letter should not
apply to flex containers.
http://dev.w3.org/csswg/css3-flexbox/issue-cr-2012#issue-13

tests:
css3/flexbox/flexbox-ignore-firstLetter.html
css3/flexbox/flexbox-ignore-container-firstLetter.html

  • rendering/RenderBlock.cpp:

(WebCore::findFirstLetterBlock):

LayoutTests:

The CSS WG decided that first-line and first-letter should not
apply to flex containers.
http://dev.w3.org/csswg/css3-flexbox/issues-cr-2012#issue-13

  • css3/flexbox/flexbox-ignore-container-firstLetter-expected.txt: Added.
  • css3/flexbox/flexbox-ignore-container-firstLetter.html: Added.
  • css3/flexbox/flexbox-ignore-firstLetter-expected.txt: Added.
  • css3/flexbox/flexbox-ignore-firstLetter.html: Added.
  • css3/flexbox/inline-flex-crash-expected.txt:
  • css3/flexbox/inline-flex-crash2-expected.txt:
5:35 PM Changeset in webkit [143992] by zmo@google.com
  • 2 edits in branches/chromium/1410/Source/WebCore

Merge 142545

WEBGL_compressed_texture_s3tc extension can be enabled even when not supported
https://bugs.webkit.org/show_bug.cgi?id=109508

Reviewed by Kenneth Russell.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::getExtension): Check whether the extension support is there before returning the extension pointer.

TBR=zmo@google.com
Review URL: https://codereview.chromium.org/12334083

5:24 PM Changeset in webkit [143991] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Build fix. run-perf-tests was reporting with revision numbers ending with \r.
Don't include \r at the end of svn info lines on Windows.

This is similar to r143839.

  • Scripts/webkitpy/common/checkout/scm/svn.py:

(SVN.value_from_svn_info):

5:22 PM Changeset in webkit [143990] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Lots of unnecessary DidLayout notifications when scrolling zoomed page with iframes
https://bugs.webkit.org/show_bug.cgi?id=110824

Reviewed by Tim Horton.

RenderWidget::setWidgetGeometry() compares the old and new frame rects to decide
if the geometry changed. However, it use implicit IntRect->LayoutRect promotion in
the comparison, and then roundedIntRect() in setting. Thus the code would think
that the geometry changed, even when the final assigned frame did not.

Fix by computing the new frame using roundedIntRect(), and using that to determine
whether the geometry changed.

No way to test DidLayout notifications in DRT/WTR.

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::setWidgetGeometry):

5:13 PM Changeset in webkit [143989] by simonjam@chromium.org
  • 10 edits
    22 moves
    3 adds in trunk

[Resource Timing] Update test suite so it can be exported to the W3C
https://bugs.webkit.org/show_bug.cgi?id=107343

Reviewed by Tony Gentilcore.

Tools:

  • Scripts/export-w3c-performance-wg-tests: Clean up output.
  • Scripts/import-w3c-performance-wg-tests:

LayoutTests:

  • http/tests/w3c/webperf/resources/webperftestharness.js: Removed unneeded functions and moved new ones to extension.
  • http/tests/w3c/webperf/resources/webperftestharnessextension.js:

(test_resource_entries):

  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_attribute_order-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_attribute_order-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_attribute_order.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_attribute_order.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_cached-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_cached.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_connection_reuse-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_connection_reuse.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_dynamic_insertion-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_dynamic_insertion-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_dynamic_insertion.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_dynamic_insertion.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_frame_initiator_type-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_frame_initiator_type-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_frame_initiator_type.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_frame_initiator_type.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_data_url-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_data_url.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_failures-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_failures.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_initiator_types-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_initiator_types-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_initiator_types.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_initiator_types.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_redirects-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_redirects-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_redirects.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_redirects.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_reparenting-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_reparenting-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_reparenting.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_reparenting.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_script_types-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_script_types-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_script_types.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_script_types.html.
  • platform/chromium/TestExpectations: Moved directories...
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
5:06 PM Changeset in webkit [143988] by andersca@apple.com
  • 16 edits in trunk

Source/WebKit2: Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110821

Reviewed by Beth Dakin.

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetPluginInformationPluginspageAttributeURLKey):
(WKPageGetPluginInformationPluginURLKey):
Add two new API key getters.

  • UIProcess/API/C/WKPage.h:

Add a new callback and deprecate the old callback.

  • UIProcess/WebLoaderClient.cpp:

(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):
Make the pluginInformationDictionary a static member function of WebPageProxy so it
can be called from WebUIClient as well.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getPluginPath):
Pass the bundle version as well.

(WebKit::WebPageProxy::pluginInformationPluginspageAttributeURLKey):
(WebKit::WebPageProxy::pluginInformationPluginURLKey):
Add two new keys.

(WebKit::WebPageProxy::pluginInformationDictionary):
Handle more keys.

(WebKit::WebPageProxy::unavailablePluginButtonClicked):
Get the plug-in bundle identifier and version.

  • UIProcess/WebPageProxy.messages.in:

Pass along more information; the frame and page URLs.

  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::unavailablePluginButtonClicked):
Call the new callback if it's supported.

  • UIProcess/WebUIClient.h:

(WebUIClient):

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):
Update for API changes.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::unavailablePluginButtonClicked):
Ensure that the pluginspage attribute is a valid URL.

Tools: Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110821
<rdar://problem/13265303>

Reviewed by Beth Dakin.

Update for WebKit2 changes.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createOtherPage):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::unavailablePluginButtonClicked):

  • WebKitTestRunner/TestController.h:

(TestController):

4:50 PM Changeset in webkit [143987] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Remove browser patching mechanism for handling javascript dialogs in chromium port
https://bugs.webkit.org/show_bug.cgi?id=110531

Patch by Ken Kania <kkania@chromium.org> on 2013-02-25
Reviewed by Pavel Feldman.

  • public/WebDevToolsAgent.h:
  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::handleJavaScriptDialog):
(WebKit::browserHintToString):
(WebKit::browserHintFromString):
(WebKit::WebDevToolsAgent::patchWithBrowserData):

4:49 PM Changeset in webkit [143986] by jpfau@apple.com
  • 37 edits
    7 adds in trunk

Optionally partition cache to prevent using cache for tracking
https://bugs.webkit.org/show_bug.cgi?id=110269

Reviewed by Maciej Stachowiak.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage

Source/WebCore:

Implement memory cache partitioning by passing the cache name through
resource requests into a new version of resourceForURL.

Test: http/tests/cache/partitioned-cache.html

  • Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
  • WebCore.exp.in: Export new functions for WKSI and test suite
  • WebCore.xcodeproj/project.pbxproj:
  • html/DOMURL.cpp:

(WebCore::DOMURL::revokeObjectURL): Retrofit for new resourceForRequest function

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::cachedResource): Retrofit for new resourceForRequest function

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::replayXHR): Retrofit for new resourceForRequest function

  • loader/DocumentLoader.h:

(DocumentLoader):
(WebCore::DocumentLoader::recordMemoryCacheLoadForFutureClientNotification): Retrofit for new resourceForRequest function
(WebCore::DocumentLoader::takeMemoryCacheLoadsForClientNotification): Retrofit for new resourceForRequest function

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadedResourceFromMemoryCache): Retrofit for new resourceForRequest function
(WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads): Retrofit for new resourceForRequest function

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::create): Retrofit for new resourceForRequest function

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::~CachedResource):

  • loader/cache/CachedResource.h: Retrofit for new resourceForRequest function

(CachedResource):
(WebCore::CachedResource::cachePartition):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestUserCSSStyleSheet): Retrofit for new resourceForRequest function
(WebCore::CachedResourceLoader::requestResource): Retrofit for new resourceForRequest function
(WebCore::CachedResourceLoader::loadResource): Retrofit for new resourceForRequest function

  • loader/cache/MemoryCache.cpp:

(WebCore):
(WebCore::partitionName): Add function for determining absolute partition name
(WebCore::MemoryCache::add): Retrofit for partition mapping
(WebCore::MemoryCache::revalidationSucceeded): Retrofit for partition mapping
(WebCore::MemoryCache::resourceForURL): Call into new resourceForRequest
(WebCore::MemoryCache::resourceForRequest): Retrofit for partition mapping
(WebCore::MemoryCache::evict): Retrofit for partition mapping
(WebCore::MemoryCache::removeResourcesWithOrigin): Retrofit for partition mapping
(WebCore::MemoryCache::getOriginsWithCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeUrlFromCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeRequestFromCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeRequestFromCacheImpl): Retrofit for partition mapping
(WebCore::MemoryCache::crossThreadRemoveRequestFromCache): Add function for calling removeRequestFromCacheImpl that takes a CrossThreadResourceRequestData
(WebCore::MemoryCache::getStatistics): Retrofit for partition mapping
(WebCore::MemoryCache::setDisabled): Retrofit for partition mapping

  • loader/cache/MemoryCache.h:

(MemoryCache):

  • page/SecurityOrigin.cpp:

(WebCore):
(WebCore::SecurityOrigin::cachePartition): Add function for determining the cache partition name

  • page/SecurityOrigin.h:

(SecurityOrigin):

  • platform/PublicSuffix.h: Added.

(WebCore):

  • platform/mac/PublicSuffixMac.mm: Added.

(WebCore):
(WebCore::isPublicSuffix):
(WebCore::topPrivatelyControlledDomain):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/network/cf/ResourceRequest.h:

(ResourceRequest):
(WebCore::ResourceRequest::cachePartition):
(WebCore::ResourceRequest::setCachePartition):
(CrossThreadResourceRequestData):

  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore::ResourceRequest::doPlatformCopyData): Pass through cache partition name
(WebCore):
(WebCore::ResourceRequest::doPlatformAdopt): Pass through cache partition name

  • platform/network/mac/ResourceRequestMac.mm:

(WebCore::ResourceRequest::doUpdateResourceRequest): Pass through cache partition name
(WebCore::ResourceRequest::doUpdatePlatformRequest): Pass through cache partition name

Source/WebKit/mac:

Update WKSI bindings and add feature defines.

  • Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2:

Update WKSI bindings and add feature defines.

  • Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Tools:

Add test suite for public suffix functions on Mac.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/PublicSuffix.mm: Added.

(TestWebKitAPI):
(TestWebKitAPI::TEST_F):

WebKitLibraries:

Update WKSI bindings.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:

LayoutTests:

Added tests for ensuring the cache partitioning functions

  • http/tests/cache/partitioned-cache-expected.txt: Added.
  • http/tests/cache/partitioned-cache.html: Added.
  • http/tests/cache/resources/echo-cookie.cgi: Added.
  • http/tests/cache/resources/partitioned-cache-loader.html: Added.
4:44 PM Changeset in webkit [143985] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Plumb WebViewImpl's compositor scheduling suppression out to WebWidgetClient
https://bugs.webkit.org/show_bug.cgi?id=110640

Patch by James Robinson <jamesr@chromium.org> on 2013-02-25
Reviewed by Adrienne Walker.

This plumbs the WebViewImpl::m_suppressInvalidations logic out to the WebWidgetClient so
it can be implemented by the embedder. The existing logic is left in place for now,
once the embedder side has landed WebViewImpl will be purely a pass-through.

  • public/WebWidgetClient.h:

(WebWidgetClient):
(WebKit::WebWidgetClient::suppressCompositorScheduling):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::suppressInvalidations):
(WebKit::WebViewImpl::setRootGraphicsLayer):

4:21 PM Changeset in webkit [143984] by jer.noble@apple.com
  • 10 edits in trunk/Source

Normalize ENABLE_ENCRYPTED_MEDIA definitions across all FeatureDefines files.
https://bugs.webkit.org/show_bug.cgi?id=110806

Source/WebCore:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

  • Configurations/FeatureDefines.xcconfig:

Fix some build errors which occurred when both ENCRYPTED_MEDIA and
ENCRYPTED_MEDIA_V2 were enabled:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::webkitGenerateKeyRequest):
(WebCore::HTMLMediaElement::webkitAddKey):

  • page/DOMWindow.idl:

Source/WebKit/mac:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

Reviewed by Alexey Proskuryakov.

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

  • wtf/FeatureDefines.h:
4:12 PM Changeset in webkit [143983] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Reviewed by Eric Seidel.

This patch reverts http://trac.webkit.org/changeset/143014 to see if
that's the cause of the PLT regression. If it's not the cause, I'll
roll it back in.

  • dom/Element.cpp:

(WebCore::Element::addAttributeInternal):
(WebCore::ShareableElementData::ShareableElementData):
(WebCore::UniqueElementData::makeShareableCopy):
(WebCore::ElementData::addAttribute):
(WebCore::ElementData::removeAttribute):
(WebCore::ElementData::reportMemoryUsage):

  • dom/Element.h:

(ElementData):
(UniqueElementData):
(WebCore::ElementData::mutableAttributeVector):
(WebCore):
(WebCore::ElementData::immutableAttributeArray):
(WebCore::ElementData::length):
(WebCore::ElementData::getAttributeItem):
(WebCore::ElementData::attributeItem):

3:48 PM Changeset in webkit [143982] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

Full screen mode should not exit when application resigns active state.
https://bugs.webkit.org/show_bug.cgi?id=106129

Reviewed by Darin Adler.

Now that full screen windows get their own full screen space, there is no reason to exit full
screen mode when the application resigns active state. Instead, the windowserver will bring the
space containing the newly active application to the foreground. The user can then swipe back
to the full screen space (or use Mission Control) to get back to the full screen window.

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController windowDidLoad]): Remove the applicationDidResignActive: notification from WKFullScreenWindowController.

3:39 PM Changeset in webkit [143981] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

Safari shows empty window and paints webpage in full-screen background
https://bugs.webkit.org/show_bug.cgi?id=103712

Reviewed by Darin Adler.

When canceling full screen mode due to a provisional load, exit normally instead of closing the
full screen window controller. Additionally, to ensure full screen is cancelled when the enclosing
frame around a full screen iframe is navigated, check to see if the navigating document contains
a full screen element, rather than checking whether the document itself is full screen.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):

3:36 PM Changeset in webkit [143980] by dpranke@chromium.org
  • 2 edits in trunk/Tools

nrwt: reenable multiple http shards on chromium win
https://bugs.webkit.org/show_bug.cgi?id=110814

Reviewed by Tony Chang.

The underlying bug in DumpRenderTree that was causing us to look for a
pac file and timeout under load was fixed a while ago.

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

(ChromiumWinPort.relative_test_filename):

3:32 PM Changeset in webkit [143979] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Page::m_isInWindow is uninitialized
https://bugs.webkit.org/show_bug.cgi?id=110807

Reviewed by Simon Fraser.

Ideally m_isInWindow and m_isOnscreen would default to false, and be flipped to true
when the Page is put in-window or on-screen. However, only the Mac port seems to ever
call setIsInWindow/didMoveOnscreen. So, we have to default to true and flip it to false
immediately after construction on Mac.

This is just matching the behaviour of the existing m_isOnscreen.

  • page/Page.cpp:

(WebCore::Page::Page): Initialize m_isInWindow to true.

3:02 PM Changeset in webkit [143978] by dpranke@chromium.org
  • 2 edits in trunk/Tools

Make ninja the default w/ build-webkit --chromium on windows.
https://bugs.webkit.org/show_bug.cgi?id=110731

Unreviewed - TBR'ing thakis :).

  • Scripts/update-webkit-chromium:
2:58 PM Changeset in webkit [143977] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didBlockInsecurePluginVersion):

2:38 PM Changeset in webkit [143976] by andersca@apple.com
  • 13 edits in trunk

Add a new pluginDidFail callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110793
<rdar://problem/13265303>

Reviewed by Sam Weinig.

Source/WebKit2:

Add a new pluginDidFail callback that takes a WKDictionaryRef and also pass in the
frame and page URLs.

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebLoaderClient.cpp:

(WebKit::pluginInformationDictionary):
(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):

  • UIProcess/WebLoaderClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didFailToInitializePlugin):
(WebKit::WebPageProxy::didBlockInsecurePluginVersion):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::didFailToInitializePlugin):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::createJavaAppletWidget):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):

Tools:

Update for WebKit2 API changes.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions):

2:27 PM Changeset in webkit [143975] by eric@webkit.org
  • 8 edits
    18 copies
    11 moves
    28 adds
    44 deletes in trunk/LayoutTests

Move html5lib/run-test* into html5lib/generated in preparation for generating these harnesses
https://bugs.webkit.org/show_bug.cgi?id=110795

Reviewed by Ojan Vafai.

  • html5lib/generated/run-template-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-template.html: Added.
  • html5lib/generated/run-tests1-expected.txt: Renamed from LayoutTests/html5lib/run-test7-expected.txt.
  • html5lib/generated/run-tests1.html: Added.
  • html5lib/generated/run-tests10-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests10.html: Added.
  • html5lib/generated/run-tests11-expected.txt: Renamed from LayoutTests/html5lib/run-test11-expected.txt.
  • html5lib/generated/run-tests11.html: Added.
  • html5lib/generated/run-tests12-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests12.html: Added.
  • html5lib/generated/run-tests14-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests14.html: Added.
  • html5lib/generated/run-tests15-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests15.html: Added.
  • html5lib/generated/run-tests16-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests16.html: Added.
  • html5lib/generated/run-tests17-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests17.html: Added.
  • html5lib/generated/run-tests18-expected.txt: Renamed from LayoutTests/html5lib/run-test18-expected.txt.
  • html5lib/generated/run-tests18.html: Added.
  • html5lib/generated/run-tests19-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests19.html: Added.
  • html5lib/generated/run-tests2-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests2.html: Added.
  • html5lib/generated/run-tests20-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests20.html: Added.
  • html5lib/generated/run-tests21-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests21.html: Added.
  • html5lib/generated/run-tests22-expected.txt: Renamed from LayoutTests/html5lib/run-test10-expected.txt.
  • html5lib/generated/run-tests22.html: Added.
  • html5lib/generated/run-tests23-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests23.html: Added.
  • html5lib/generated/run-tests24-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests24.html: Added.
  • html5lib/generated/run-tests25-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests25.html: Added.
  • html5lib/generated/run-tests26-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests26.html: Added.
  • html5lib/generated/run-tests3-expected.txt: Renamed from LayoutTests/html5lib/run-test14-expected.txt.
  • html5lib/generated/run-tests3.html: Added.
  • html5lib/generated/run-tests4-expected.txt: Renamed from LayoutTests/html5lib/run-test12-expected.txt.
  • html5lib/generated/run-tests4.html: Added.
  • html5lib/generated/run-tests5-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests5.html: Added.
  • html5lib/generated/run-tests6-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests6.html: Added.
  • html5lib/generated/run-tests7-expected.txt: Renamed from LayoutTests/html5lib/run-test1-expected.txt.
  • html5lib/generated/run-tests7.html: Added.
  • html5lib/generated/run-tests8-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests8.html: Added.
  • html5lib/generated/run-tests9-expected.txt: Renamed from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests9.html: Added.
  • html5lib/run-template.html: Removed.
  • html5lib/run-test1.html: Removed.
  • html5lib/run-test10.html: Removed.
  • html5lib/run-test11.html: Removed.
  • html5lib/run-test12.html: Removed.
  • html5lib/run-test14.html: Removed.
  • html5lib/run-test15-expected.txt: Removed.
  • html5lib/run-test15.html: Removed.
  • html5lib/run-test16-expected.txt: Removed.
  • html5lib/run-test16.html: Removed.
  • html5lib/run-test17-expected.txt: Removed.
  • html5lib/run-test17.html: Removed.
  • html5lib/run-test18.html: Removed.
  • html5lib/run-test19-expected.txt: Removed.
  • html5lib/run-test19.html: Removed.
  • html5lib/run-test2-expected.txt: Removed.
  • html5lib/run-test2.html: Removed.
  • html5lib/run-test20-expected.txt: Removed.
  • html5lib/run-test20.html: Removed.
  • html5lib/run-test21-expected.txt: Removed.
  • html5lib/run-test21.html: Removed.
  • html5lib/run-test22-expected.txt: Removed.
  • html5lib/run-test22.html: Removed.
  • html5lib/run-test23-expected.txt: Removed.
  • html5lib/run-test23.html: Removed.
  • html5lib/run-test24-expected.txt: Removed.
  • html5lib/run-test24.html: Removed.
  • html5lib/run-test25-expected.txt: Removed.
  • html5lib/run-test25.html: Removed.
  • html5lib/run-test26-expected.txt: Removed.
  • html5lib/run-test26.html: Removed.
  • html5lib/run-test3-expected.txt: Removed.
  • html5lib/run-test3.html: Removed.
  • html5lib/run-test4-expected.txt: Removed.
  • html5lib/run-test4.html: Removed.
  • html5lib/run-test5-expected.txt: Removed.
  • html5lib/run-test5.html: Removed.
  • html5lib/run-test6-expected.txt: Removed.
  • html5lib/run-test6.html: Removed.
  • html5lib/run-test7.html: Removed.
  • html5lib/run-test8-expected.txt: Removed.
  • html5lib/run-test8.html: Removed.
  • html5lib/run-test9-expected.txt: Removed.
  • html5lib/run-test9.html: Removed.
  • platform/chromium/TestExpectations:
  • platform/chromium/html5lib/generated/run-tests1-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test7-expected.txt.
  • platform/chromium/html5lib/generated/run-tests18-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test18-expected.txt.
  • platform/chromium/html5lib/generated/run-tests7-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test1-expected.txt.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
2:21 PM Changeset in webkit [143974] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed build fix after r143965.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateOverloadedConstructorCallback):

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

(WebCore::TestOverloadedConstructorsV8Internal::constructor):

2:15 PM WebKitGTK/2.0.x edited by kov@webkit.org
(diff)
2:12 PM Changeset in webkit [143973] by kov@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix for gtk2-based library.

Reviewed by Martin Robinson.

  • platform/gtk/WidgetRenderingContext.cpp: move gtk2 check to after the config.h

include, which is the one that includes autotoolsconfig.h, where the gtk2 define
lives.

2:06 PM Changeset in webkit [143972] by commit-queue@webkit.org
  • 8 edits
    2 deletes in trunk/Source

Unreviewed, rolling out r143936.
http://trac.webkit.org/changeset/143936
https://bugs.webkit.org/show_bug.cgi?id=110789

Causes webkit_unit_tests failures on android dbg (Requested by
vollick on #webkit).

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

Source/WebCore:

  • platform/image-decoders/gif/GIFImageDecoder.cpp:

(WebCore::GIFImageDecoder::GIFImageDecoder):
(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::decodingHalted):
(WebCore):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):

  • platform/image-decoders/gif/GIFImageDecoder.h:

(GIFImageDecoder):

  • platform/image-decoders/gif/GIFImageReader.cpp:

(GIFImageReader::doLZW):
(GIFImageReader::read):

  • platform/image-decoders/gif/GIFImageReader.h:

(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::globalColormapSize):

Source/WebKit/chromium:

  • WebKit.gyp:
  • WebKit.gypi:
  • tests/GIFImageDecoderTest.cpp: Removed.
  • tests/data/broken.gif: Removed.
1:48 PM Changeset in webkit [143971] by Lucas Forschler
  • 2 edits in tags/Safari-537.31.9/Source/WebKit2

Merged r143829. <rdar://problem/13236883>

1:47 PM Changeset in webkit [143970] by roger_fong@apple.com
  • 4 edits in trunk/Source

Unreviewed. VS2010 solution build fix.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorCommon.props:
1:44 PM Changeset in webkit [143969] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.9/Source

Versioning.

1:40 PM Changeset in webkit [143968] by Lucas Forschler
  • 1 copy in tags/Safari-537.31.9

New Tag.

1:31 PM Changeset in webkit [143967] by haraken@chromium.org
  • 11 edits in trunk/Source/WebCore

[V8] Generate a wrapper function for method callbacks
https://bugs.webkit.org/show_bug.cgi?id=110769

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection
function for xxxMethod(), like this:

For non-custom methods
void xxxMethodCallback(...) {

xxxMethod(...);

}

For custom methods
void xxxMethodCallback(...) {

return xxxMethodCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):
(GenerateOverloadedFunction):
(GenerateFunctionCallback):
(GenerateFunction):
(GenerateNonStandardFunction):
(GenerateImplementation):
(GenerateFunctionCallString):

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

(WebCore::Float64ArrayV8Internal::fooMethodCallback):
(Float64ArrayV8Internal):
(WebCore::Float64ArrayV8Internal::setMethodCallback):
(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):

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

(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethodCallback):
(TestActiveDOMObjectV8Internal):
(WebCore::TestActiveDOMObjectV8Internal::postMessageMethodCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):

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

(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionMethodCallback):
(TestCustomNamedGetterV8Internal):
(WebCore):

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

(WebCore::TestEventTargetV8Internal::itemMethodCallback):
(TestEventTargetV8Internal):
(WebCore::TestEventTargetV8Internal::addEventListenerMethodCallback):
(WebCore::TestEventTargetV8Internal::removeEventListenerMethodCallback):
(WebCore::TestEventTargetV8Internal::dispatchEventMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):

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

(WebCore::TestInterfaceV8Internal::supplementalMethod1MethodCallback):
(TestInterfaceV8Internal):
(WebCore::TestInterfaceV8Internal::supplementalMethod2MethodCallback):
(WebCore::TestInterfaceV8Internal::supplementalMethod3MethodCallback):
(WebCore::TestInterfaceV8Internal::supplementalMethod4MethodCallback):
(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):

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

(WebCore::TestMediaQueryListListenerV8Internal::methodMethodCallback):
(TestMediaQueryListListenerV8Internal):
(WebCore):

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

(WebCore::TestObjV8Internal::voidMethodMethodCallback):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::voidMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::longMethodMethodCallback):
(WebCore::TestObjV8Internal::longMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::objMethodMethod):
(WebCore::TestObjV8Internal::objMethodMethodCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::methodWithSequenceArgMethodCallback):
(WebCore::TestObjV8Internal::methodReturningSequenceMethodCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethodCallback):
(WebCore::TestObjV8Internal::serializedValueMethodCallback):
(WebCore::TestObjV8Internal::optionsObjectMethodCallback):
(WebCore::TestObjV8Internal::methodWithExceptionMethodCallback):
(WebCore::TestObjV8Internal::customMethodMethodCallback):
(WebCore::TestObjV8Internal::customMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::addEventListenerMethodCallback):
(WebCore::TestObjV8Internal::removeEventListenerMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateObjMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateObjExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesMethodCallback):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringMethodCallback):
(WebCore::TestObjV8Internal::methodWithCallbackArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithCallbackAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod1MethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod2MethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod3MethodCallback):
(WebCore::TestObjV8Internal::overloadedMethodMethodCallback):
(WebCore::TestObjV8Internal::classMethodMethodCallback):
(WebCore::TestObjV8Internal::classMethodWithOptionalMethodCallback):
(WebCore::TestObjV8Internal::classMethod2MethodCallback):
(WebCore::TestObjV8Internal::overloadedMethod1MethodCallback):
(WebCore::TestObjV8Internal::classMethodWithClampMethodCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod1MethodCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod2MethodCallback):
(WebCore::TestObjV8Internal::enabledPerContextMethod1MethodCallback):
(WebCore::TestObjV8Internal::enabledPerContextMethod2MethodCallback):
(WebCore::TestObjV8Internal::stringArrayFunctionMethodCallback):
(WebCore::TestObjV8Internal::domStringListFunctionMethodCallback):
(WebCore::TestObjV8Internal::getSVGDocumentMethodCallback):
(WebCore::TestObjV8Internal::convert1MethodCallback):
(WebCore::TestObjV8Internal::convert2MethodCallback):
(WebCore::TestObjV8Internal::convert4MethodCallback):
(WebCore::TestObjV8Internal::convert5MethodCallback):
(WebCore::TestObjV8Internal::mutablePointFunctionMethodCallback):
(WebCore::TestObjV8Internal::immutablePointFunctionMethodCallback):
(WebCore::TestObjV8Internal::orangeMethodCallback):
(WebCore::TestObjV8Internal::strictFunctionMethodCallback):
(WebCore::TestObjV8Internal::variadicStringMethodMethodCallback):
(WebCore::TestObjV8Internal::variadicDoubleMethodMethodCallback):
(WebCore::TestObjV8Internal::variadicNodeMethodMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextPrototypeProperties):

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

(WebCore::TestSerializedScriptValueInterfaceV8Internal::acceptTransferListMethodCallback):
(TestSerializedScriptValueInterfaceV8Internal):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::multiTransferListMethodCallback):
(WebCore):

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

(WebCore::TestTypedefsV8Internal::funcMethodCallback):
(TestTypedefsV8Internal):
(WebCore::TestTypedefsV8Internal::multiTransferListMethodCallback):
(WebCore::TestTypedefsV8Internal::setShadowMethodCallback):
(WebCore::TestTypedefsV8Internal::methodWithSequenceArgMethodCallback):
(WebCore::TestTypedefsV8Internal::nullableArrayArgMethodCallback):
(WebCore::TestTypedefsV8Internal::funcWithClampMethodCallback):
(WebCore::TestTypedefsV8Internal::immutablePointFunctionMethodCallback):
(WebCore::TestTypedefsV8Internal::stringArrayFunctionMethodCallback):
(WebCore::TestTypedefsV8Internal::stringArrayFunction2MethodCallback):
(WebCore::TestTypedefsV8Internal::methodWithExceptionMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):

1:29 PM Changeset in webkit [143966] by pdr@google.com
  • 2 edits in trunk/LayoutTests

Remove two stale entries from TestExpectations

Unreviewed patch of test expectations.

  • platform/chromium/TestExpectations:
1:28 PM Changeset in webkit [143965] by haraken@chromium.org
  • 11 edits in trunk/Source/WebCore

[V8] Generate a wrapper method for constructor callbacks
https://bugs.webkit.org/show_bug.cgi?id=110765

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection
function for constructor(), like this:

For non-custom constructors
void constructorCallback(...) {

return constructor(...);

}

For custom constructors
void constructorCallback(...) {

return constructorCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateOverloadedConstructorCallback):
(GenerateSingleConstructorCallback):
(GenerateConstructorCallback):
(GenerateConstructor):
(GenerateEventConstructor):
(GenerateTypedArrayConstructor):
(GenerateNamedConstructor):
(GenerateConstructorHeader):
(GenerateImplementation):

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

(WebCore::Float64ArrayV8Internal::constructor):
(Float64ArrayV8Internal):
(WebCore::V8Float64Array::constructorCallback):

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

(WebCore::TestEventConstructorV8Internal::constructor):
(WebCore):
(WebCore::V8TestEventConstructor::constructorCallback):

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

(WebCore::TestInterfaceV8Internal::constructor):
(TestInterfaceV8Internal):
(WebCore::V8TestInterface::constructorCallback):

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

(WebCore::V8TestNamedConstructorConstructorCallback):

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

(WebCore::TestNodeV8Internal::constructor):
(TestNodeV8Internal):
(WebCore::V8TestNode::constructorCallback):

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

(WebCore::TestObjV8Internal::constructor):
(TestObjV8Internal):
(WebCore::V8TestObj::constructorCallback):

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

(WebCore::TestOverloadedConstructorsV8Internal::constructor1):
(WebCore::TestOverloadedConstructorsV8Internal::constructor2):
(WebCore::TestOverloadedConstructorsV8Internal::constructor3):
(WebCore::TestOverloadedConstructorsV8Internal::constructor4):
(WebCore::TestOverloadedConstructorsV8Internal::constructor):
(WebCore):
(WebCore::V8TestOverloadedConstructors::constructorCallback):

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

(WebCore::TestSerializedScriptValueInterfaceV8Internal::constructor):
(TestSerializedScriptValueInterfaceV8Internal):
(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):

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

(WebCore::TestTypedefsV8Internal::constructor):
(TestTypedefsV8Internal):
(WebCore::V8TestTypedefs::constructorCallback):

1:26 PM Changeset in webkit [143964] by haraken@chromium.org
  • 6 edits in trunk/Source/WebCore

[V8] Generate xxxAttrSetterCallback()
https://bugs.webkit.org/show_bug.cgi?id=110726

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros into DOM bindings.
This patch introduces an indirection function for xxxAttrSetter(), like this:

For non-custom setters
void xxxAttrSetterCallback(...) {

xxxAttrSetter(...);

}

For custom setters.
void xxxAttrSetterCallback(...) {

return xxxAttrSetterCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrSetterCallback):
(GenerateNormalAttrSetter):
(GenerateSingleBatchedAttribute):
(GenerateImplementation):

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

(WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetterCallback):
(TestInterfaceV8Internal):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetterCallback):
(WebCore::TestInterfaceV8Internal::supplementalStr3AttrSetterCallback):
(WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetterCallback):
(WebCore):

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

(WebCore::TestObjV8Internal::staticStringAttrAttrSetterCallback):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::enumAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::shortAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::unsignedShortAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::longAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::longLongAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::unsignedLongLongAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::stringAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::testObjAttrAttrSetter):
(WebCore::TestObjV8Internal::testObjAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::XMLObjAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::createAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedIntegralAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedBooleanAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomBooleanAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::typedArrayAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::attrWithGetterExceptionAttrSetterCallback):
(WebCore::TestObjV8Internal::attrWithSetterExceptionAttrSetterCallback):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetterCallback):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetterCallback):
(WebCore::TestObjV8Internal::customAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptStateAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr1AttrSetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr2AttrSetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr3AttrSetterCallback):
(WebCore::TestObjV8Internal::anyAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrSetterCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrSetterCallback):
(WebCore::TestObjV8Internal::enabledPerContextAttr1AttrSetterCallback):
(WebCore::TestObjV8Internal::enabledPerContextAttr2AttrSetterCallback):
(WebCore::TestObjV8Internal::floatArrayAttrSetterCallback):
(WebCore::TestObjV8Internal::doubleArrayAttrSetterCallback):
(WebCore::TestObjV8Internal::mutablePointAttrSetterCallback):
(WebCore::TestObjV8Internal::immutablePointAttrSetterCallback):
(WebCore::TestObjV8Internal::strawberryAttrSetterCallback):
(WebCore::TestObjV8Internal::strictFloatAttrSetterCallback):
(WebCore::TestObjV8Internal::idAttrSetterCallback):
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextProperties):

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

(WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrSetterCallback):
(TestSerializedScriptValueInterfaceV8Internal):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetterCallback):
(WebCore):

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

(WebCore::TestTypedefsV8Internal::unsignedLongLongAttrAttrSetterCallback):
(TestTypedefsV8Internal):
(WebCore::TestTypedefsV8Internal::immutableSerializedScriptValueAttrSetterCallback):
(WebCore::TestTypedefsV8Internal::attrWithGetterExceptionAttrSetterCallback):
(WebCore::TestTypedefsV8Internal::attrWithSetterExceptionAttrSetterCallback):
(WebCore::TestTypedefsV8Internal::stringAttrWithGetterExceptionAttrSetterCallback):
(WebCore::TestTypedefsV8Internal::stringAttrWithSetterExceptionAttrSetterCallback):
(WebCore):

1:24 PM Changeset in webkit [143963] by pdr@google.com
  • 16 edits in trunk/LayoutTests

Rebaseline 3 svg/as-image/ tests

Unreviewed rebaseline of test expectations.

  • platform/chromium-linux/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-linux/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-linux/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac-lion/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-mac-lion/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-mac-lion/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac-snowleopard/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-mac-snowleopard/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-mac-snowleopard/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-mac/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-mac/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-win/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-win/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-win/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
1:16 PM Changeset in webkit [143962] by timothy_horton@apple.com
  • 8 edits in trunk/Source/WebKit2

PDFPlugin: Tab between text annotations
https://bugs.webkit.org/show_bug.cgi?id=106539
<rdar://problem/12751789>

Reviewed by Darin Adler.

Use [PDFLayerController activateNextAnnotation:] to advance focus when the tab key is hit while inside a PDF form.

Also, a drive-by fix to make the lifetime of PDFPluginAnnotationEventListener's m_annotation pointer more explicit.

  • WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add activateNextAnnotation: SPI.
  • WebProcess/Plugins/PDF/PDFPlugin.h:

(PDFPlugin): Add focus(Next|Previous)Annotation.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::focusNextAnnotation): Ask PDFLayerController to focus the next annotation.
(WebKit::PDFPlugin::focusPreviousAnnotation): Ask PDFLayerController to focus the next annotation.

  • WebProcess/Plugins/PDF/PDFPluginAnnotation.h: Drive-by, initialize m_parent to 0.

(WebKit::PDFPluginAnnotation::PDFPluginAnnotationEventListener::setAnnotation): Added.

  • WebProcess/Plugins/PDF/PDFPluginAnnotation.mm:

(WebKit::PDFPluginAnnotation::attach): Use eventNames() instead of string literals.
(WebKit::PDFPluginAnnotation::~PDFPluginAnnotation): Clear the event listener's reference to its annotation.
(WebKit::PDFPluginAnnotation::PDFPluginAnnotationEventListener::handleEvent): Null-check the event listener's annotation.

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.h:

(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotation): Create our PDFPluginTextAnnotationEventListener.
(PDFPluginTextAnnotationEventListener): Added an event listener (for keydown events in form fields).
(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::create):
(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::setTextAnnotation):
(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::PDFPluginTextAnnotationEventListener):

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:

(WebKit::PDFPluginTextAnnotation::~PDFPluginTextAnnotation): Unregister our keydown event listener.
(WebKit::PDFPluginTextAnnotation::createAnnotationElement): Register our keydown event listener.
(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::handleEvent): Ask PDFPlugin to focus
the next/previous annotation when the tab key is pressed (Shift-Tab goes backwards).

1:13 PM Changeset in webkit [143961] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix for Debug.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::startBackgroundParser):

12:58 PM Changeset in webkit [143960] by abarth@webkit.org
  • 6 edits in trunk/Source/WebCore

6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Reviewed by Eric Seidel.

This patch attempts to heal the regression by reverting all the changes
to the preload scanner up to (and including)
http://trac.webkit.org/changeset/143020/.

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::resumeFrom):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):

  • html/parser/CSSPreloadScanner.cpp:

(WebCore::CSSPreloadScanner::scan):
(WebCore::CSSPreloadScanner::emitRule):

  • html/parser/CSSPreloadScanner.h:

(CSSPreloadScanner):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::isStartTag):
(WebCore):
(WebCore::isStartOrEndTag):
(WebCore::TokenPreloadScanner::identifierFor):
(WebCore::TokenPreloadScanner::inititatorFor):
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
(WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
(WebCore::TokenPreloadScanner::processPossibleTemplateTag):
(WebCore::TokenPreloadScanner::processPossibleStyleTag):
(WebCore::TokenPreloadScanner::processPossibleBaseTag):
(WebCore::TokenPreloadScanner::scan):
(WebCore::HTMLPreloadScanner::scan):

  • html/parser/HTMLPreloadScanner.h:

(TokenPreloadScanner):

12:54 PM Changeset in webkit [143959] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/12976385> Remove rule to silence attempts to create the ~/Library/Caches/com.apple.WebKit2.WebProcessService directory

Reviewed by Anders Carlsson.

  • WebProcess/com.apple.WebProcess.sb.in: Remove the obsolete rule. We no longer have a "WebProcessService".
12:48 PM Changeset in webkit [143958] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

DFG::Edge should have more bits for UseKind, and DFG::Allocator should be simpler
https://bugs.webkit.org/show_bug.cgi?id=110722

Reviewed by Oliver Hunt.

This rolls out the DFG::Allocator part of http://trac.webkit.org/changeset/143654,
and changes Edge to have more room for UseKinds and possibly other things.

This is performance-neutral on both 32-bit and 64-bit. It reduces the size of
DFG::Node on 64-bit (by virtue of getting rid of the 16-byte alignment of Node)
and increases it slightly on 32-bit (by 4 bytes total - 16-byte alignment led to
80 bytes, but the base size of Node plus the 12 bytes of new m_encodedWords in
Edge gets 84 bytes). But, it will mean that we don't have to increase Node by
another 16 bytes if we ever want to add more UseKinds or other things to Edge.

  • dfg/DFGAllocator.h:

(DFG):
(Allocator):
(JSC::DFG::Allocator::Region::headerSize):
(JSC::DFG::Allocator::Region::numberOfThingsPerRegion):
(JSC::DFG::Allocator::Region::data):
(JSC::DFG::Allocator::Region::isInThisRegion):
(JSC::DFG::::Allocator):
(JSC::DFG::::~Allocator):
(JSC::DFG::::allocate):
(JSC::DFG::::free):
(JSC::DFG::::freeAll):
(JSC::DFG::::reset):
(JSC::DFG::::indexOf):
(JSC::DFG::::allocatorOf):
(JSC::DFG::::bumpAllocate):
(JSC::DFG::::freeListAllocate):
(JSC::DFG::::allocateSlow):
(JSC::DFG::::freeRegionsStartingAt):
(JSC::DFG::::startBumpingIn):

  • dfg/DFGEdge.h:

(JSC::DFG::Edge::Edge):
(Edge):
(JSC::DFG::Edge::node):
(JSC::DFG::Edge::setNode):
(JSC::DFG::Edge::useKindUnchecked):
(JSC::DFG::Edge::setUseKind):
(JSC::DFG::Edge::operator==):
(JSC::DFG::Edge::operator!=):
(JSC::DFG::Edge::makeWord):

  • dfg/DFGNodeAllocator.h:

(DFG):

12:27 PM Changeset in webkit [143957] by pdr@google.com
  • 2 edits
    2 copies in branches/chromium/1410

Merge 143640

Stop starting animations when leaving a page
https://bugs.webkit.org/show_bug.cgi?id=110257

Reviewed by Stephen Chenney.

Source/WebCore:

SVGImage::resetAnimation() incorrectly started animations which could cause a crash
when leaving the page. This patch fixes resetAnimation to only stop the animation,
similar to BitmapImage::resetAnimation().

Additionally, this patch removes an unneeded call to Document::updateStyleForAllDocuments()
that was present in the animation loop. This makes the animation code more resistant to
similar bugs in the future.

Both of these changes are functionally covered with existing tests.

Test: svg/animations/reset-animation-crash.html

  • svg/animation/SMILTimeContainer.cpp:

(WebCore::SMILTimeContainer::updateAnimations):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::resetAnimation):

LayoutTests:

  • svg/animations/reset-animation-crash-expected.html: Added.
  • svg/animations/reset-animation-crash.html: Added.

TBR=pdr@google.com
Review URL: https://codereview.chromium.org/12310113

12:23 PM Changeset in webkit [143956] by pdr@google.com
  • 12 edits
    6 copies in branches/chromium/1410

Merge 142765

Replace SVG bitmap cache with directly-rendered SVG
https://bugs.webkit.org/show_bug.cgi?id=106159

Reviewed by Tim Horton.

Source/WebCore:

This patch removes the caching of SVG bitmaps so SVG images are rendered directly. This
enables WebKit to pass the IE Chalkboard demo in 10s on a Z620:
http://ie.microsoft.com/testdrive/Performance/Chalkboard/

On a simple scaled SVG benchmark similar to the IE10 Chalkboard demo
(http://philbit.com/SvgImagePerformance/viewport.html):

without patch: ~20FPS
with patch: ~55FPS

The bitmap SVG image cache had several shortcomings:

  • The bitmap cache prevented viewport rendering. (WK104693)
  • Bitmap memory usage was high. (WK106484)
  • Caching animating images was expensive.

This change removes almost all of the SVGImageCache implementation, replacing it with
directly-rendered SVG. Instead of caching bitmaps, an SVGImageForContainer is cached which
is a thin wrapper around an SVG image with the associated container size and scale.
When rendering patterns (e.g., tiled backgrounds), a temporary bitmap is used for
performance. This change also removes the redraw timer of the old cache, instead relying
on the SVG image to notify clients if the image changes (e.g., during animations).

This patch fixes two existing bugs (WK99481 and WK104189) that were due to caching bitmaps
at a fixed size. A test has been added for each of these bugs.

Tests: svg/as-image/svg-image-scaled.html

svg/as-image/svg-image-viewbox.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::lookupOrCreateImageForRenderer):
(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::clear):
(WebCore::CachedImage::changedInRect):

SVG images are no longer special-cased here. When the SVG image changes, users are
notified through this function, and users can then request their content to be redrawn.

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::setContainerSize):
(WebCore::SVGImage::drawForContainer):

drawForContainer lays out the SVG content for a specific container size and renders it.
The logic is fairly straightforward but a note about the scales and zooms here:

the destination rect parameter is zoomed but not scaled
the source rect parameter is zoomed but not scaled
the context is scaled but not zoomed

SVGImage::draw(...) only accepts a source and destination rect but does not consider
scale or zoom. Therefore, drawForContainer removes the zoom component from the source
so SVGImage::draw(...) will draw from the pre-zoom source to the post-zoom destination.

(WebCore::SVGImage::drawPatternForContainer):

For performance, drawPatternForContainer renders the SVG content onto a bitmap, then
has the bitmap image draw the pattern. This is necessary because drawPattern is used
for tiling.

(WebCore):
(WebCore::SVGImage::startAnimation):
(WebCore::SVGImage::stopAnimation):
(WebCore::SVGImage::resetAnimation):
(WebCore::SVGImage::reportMemoryUsage):

  • svg/graphics/SVGImage.h:

(WebCore):
(SVGImage):

  • svg/graphics/SVGImageCache.cpp:

Instead of storing a SizeAndScales values for each renderer, a SVGImageForContainer
is stored which is just a thin wrapper around an SVG image that contains container
sizing information. By combining the image and size information, the two maps of
SVGImageCache have been merged into one.

To make this patch easier to review, SVGImageCache still exists and works similar to
how it did before the patch. Now, SVGImageCache simply stores the SVGImageForContainers.
In a followup patch it will be removed.

Note: the redraw timer of SVGImageCache has been removed because animation
invalidation is now properly propagated back to the image clients.

(WebCore):
(WebCore::SVGImageCache::SVGImageCache):
(WebCore::SVGImageCache::~SVGImageCache):
(WebCore::SVGImageCache::removeClientFromCache):
(WebCore::SVGImageCache::setContainerSizeForRenderer):
(WebCore::SVGImageCache::imageSizeForRenderer):

Previously, this function returned the scaled image size which was incorrect. The image
size is used by clients such as GraphicsContext2D to determine the source size
for drawing the image. draw() accepts zoomed but not scaled values, so this has been
changed.

(WebCore::SVGImageCache::imageForRenderer):

A FIXME has been added here to not set the scale on every lookup. This can be improved
by setting the page scale factor in setContainerSizeForRenderer() in a future patch.

  • svg/graphics/SVGImageCache.h:

(WebCore):
(SVGImageCache):

  • svg/graphics/SVGImageForContainer.cpp: Added.

(WebCore):

SVGImageForContainer is a thin wrapper around an SVG image. The lifetime of the
SVGImage will be longer than the image cache.

(WebCore::SVGImageForContainer::size):

This is the only logic in SVGImageForContainer. The size returned needs to be zoomed
but not scaled because it is used (e.g., by RenderImage) to pass back into draw() which
takes zoomed but not scaled values.

(WebCore::SVGImageForContainer::draw):
(WebCore::SVGImageForContainer::drawPattern):

  • svg/graphics/SVGImageForContainer.h: Added.

(WebCore):
(SVGImageForContainer):

In a future patch SVGImageForContainer can be made immutable but without a refactoring
for not setting the page scale factor in SVGImageCache::lookupOrCreateImageForRenderer,
setters are needed.

(WebCore::SVGImageForContainer::create):
(WebCore::SVGImageForContainer::containerSize):
(WebCore::SVGImageForContainer::pageScale):
(WebCore::SVGImageForContainer::zoom):
(WebCore::SVGImageForContainer::setSize):
(WebCore::SVGImageForContainer::setZoom):
(WebCore::SVGImageForContainer::setPageScale):
(WebCore::SVGImageForContainer::SVGImageForContainer):
(WebCore::SVGImageForContainer::destroyDecodedData):
(WebCore::SVGImageForContainer::decodedSize):

LayoutTests:

This patch fixes two existing bugs (WK99481 and WK104189) that were due to caching bitmaps
at a fixed size. A test has been added for each of these bugs.

  • platform/chromium/TestExpectations:
  • svg/as-image/svg-image-scaled-expected.html: Added.
  • svg/as-image/svg-image-scaled.html: Added.
  • svg/as-image/svg-image-viewbox-expected.html: Added.
  • svg/as-image/svg-image-viewbox.html: Added.

TBR=pdr@google.com
Review URL: https://codereview.chromium.org/12319101

12:23 PM Changeset in webkit [143955] by fpizlo@apple.com
  • 14 edits in trunk/Source/JavaScriptCore

The DFG special case checks for isCreatedThisArgument are fragile
https://bugs.webkit.org/show_bug.cgi?id=110535

Reviewed by Oliver Hunt.

There may be many situations in which we want to force a variable to never be
unboxed. Capturing is one such case, and the created this argument is another.
Previously all code that dealt with this issue had to query both scenarios.

Now DFG::VariableAccessData knows these things. You just have to ask
VariableAccessData for whether a variable should be unboxed. Anyone wishing to
force a variable to never be unboxed just tells VariableAccessData.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::initialize):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCFGSimplificationPhase.cpp:

(CFGSimplificationPhase):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGGraph.h:

(Graph):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::doRoundOfDoubleVoting):

  • dfg/DFGSpeculativeJIT.cpp:

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

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • dfg/DFGUnificationPhase.cpp:

(JSC::DFG::UnificationPhase::run):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::mergeIsCaptured):
(JSC::DFG::VariableAccessData::mergeShouldNeverUnbox):
(VariableAccessData):
(JSC::DFG::VariableAccessData::shouldNeverUnbox):
(JSC::DFG::VariableAccessData::shouldUnboxIfPossible):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormat):
(JSC::DFG::VariableAccessData::tallyVotesForShouldUseDoubleFormat):

11:50 AM FeatureFlags edited by Laszlo Gombos
CSS_REGIONS - see r88148 (diff)
11:36 AM Changeset in webkit [143954] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebCore

Changed DatabaseTracker::getMaxSizeForDatabase() to return the previous
database size instead of 0 when the quota limit has been reached.
https://bugs.webkit.org/show_bug.cgi?id=110557.

Reviewed by Geoffrey Garen.

Testing of concurrent multi-process consumption of database quota shows that
returning a value of 0 when the quota is exceeded still allows some databases
to run away with unbounded growth. However, if getMaxSizeForDatabase() returns
the existing database size, the underlying sqlite3 database will successfully
reject new growth.

The value returned by DatabaseTracker::getMaxSizeForDatabase() is used to set
the SQLite3 database size using a sql command "PRAGMA max_page_count = <size>".
The SQLite3 documentation on this pragma says, "The maximum page count cannot
be reduced below the current database size."

It is undefined what setting it to a reduced size will do. So, we're changing
getMaxSizeForDatabase() to return the existing size instead.

No new tests.

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::getMaxSizeForDatabase):

11:29 AM Changeset in webkit [143953] by thakis@chromium.org
  • 2 edits in trunk/Tools

Fix python unit tests after yoli's email address update in http://trac.webkit.org/changeset/143922
https://bugs.webkit.org/show_bug.cgi?id=110775

Unreviewed, basically a rebaseline.

  • Scripts/webkitpy/common/config/watchlist:
11:28 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
11:27 AM Changeset in webkit [143952] by Carlos Garcia Campos
  • 3 edits
    3 adds in releases/WebKitGTK/webkit-2.0

Merge r143931 - [soup] "Too many redirects" error loading chat in plus.google.com
https://bugs.webkit.org/show_bug.cgi?id=64575

Reviewed by Martin Robinson.

Source/WebCore:

Set the firstPartyForCookies for the new request on redirects to
the URL used for redirection.

Test: http/tests/cookies/set-cookie-on-redirect.html

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::doRedirect):

LayoutTests:

This new test checks firstPartyForCookies is properly set to the
new URL on redirects.

  • http/tests/cookies/resources/set-cookie-on-redirect.php: Added.
  • http/tests/cookies/set-cookie-on-redirect-expected.txt: Added.
  • http/tests/cookies/set-cookie-on-redirect.html: Added.
11:23 AM Changeset in webkit [143951] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] Try to get the webkit builder to use msvs again
https://bugs.webkit.org/show_bug.cgi?id=110771

Reviewed by Eric Seidel.

The msvs gyp generator apparently doesn't write the sln file on every
run, so check the vcxproj file instead.

  • Scripts/webkitdirs.pm:

(determineIsChromiumNinja):

11:14 AM Changeset in webkit [143950] by tony@chromium.org
  • 3 edits in trunk/Source/WebCore

Refactor logic for relaying out children out of RenderBlock::styleDidChange
https://bugs.webkit.org/show_bug.cgi?id=110661

Reviewed by David Hyatt.

Instead of having styleDidChange need to know which children to mark as needing layout,
use a bool to keep track of border and padding width changes so at layout time, we know
we need to set relayoutChildren=true.

We steal a bit from m_lineHeight reducing the possible line height from around 500 million pixels
to 250 million pixels.

No new tests, this should be covered by fast/block/positioning/border-change-relayout-test.html and
fast/block/dynamic-padding-border.html.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::RenderBlock): Fix indent and initialize m_hasBorderOrPaddingLogicalWidthChanged.
(WebCore::RenderBlock::styleDidChange): Remove logic for setting children as needing layout.
(WebCore::RenderBlock::updateLogicalWidthAndColumnWidth): Return true if border or padding width changed.

  • rendering/RenderBlock.h:

(RenderBlock): Steal a bit from m_lineHeight and give it to m_hasBorderOrPaddingLogicalWidthChanged.

10:56 AM Changeset in webkit [143949] by ggaren@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Do one lookup per code cache insertion instead of two
https://bugs.webkit.org/show_bug.cgi?id=110674

Reviewed by Sam Weinig.

Deployed the idiomatic "add null value" trick to avoid a second hash
lookup when inserting an item.

  • runtime/CodeCache.cpp:

(JSC::CodeCacheMap::pruneSlowCase): Factored this into a helper function
to improve clarity and get some code off the hot path.

(JSC::CodeCache::getCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode): Use the add() API
to avoid two hash lookups. Be sure to remove items if parsing fails,
otherwise we'll leave nulls in the table. (I'm guessing that caching parse
errors is not a win.)

  • runtime/CodeCache.h:

(JSC::SourceCodeValue::SourceCodeValue):
(CodeCacheMap):
(JSC::CodeCacheMap::add): Combined find() and set() into add().

(JSC::CodeCacheMap::remove):
(JSC::CodeCacheMap::age):
(JSC::CodeCacheMap::prune): Refactored to support above changes.

10:56 AM Changeset in webkit [143948] by alexis@webkit.org
  • 5 edits in trunk

transition-property property doesn't accept "all, <IDENT>".
https://bugs.webkit.org/show_bug.cgi?id=110074

Reviewed by Dean Jackson.

Source/WebCore:

http://dev.w3.org/csswg/css3-transitions/#transition-property-property
allows all, <IDENT> as a value for the transition-property property. In
fact thanks to http://trac.webkit.org/changeset/143019 we correctly
implemented that behavior for transition shorthand property while
fixing bugs on the previous implementation. We did introduce a
AnimationParseContext to track whether the parsing of the
transition-property was finished or not in relation to the keyword.
This patch extend that mechanism to the longhand by renaming the
boolean and the functions to use it in the context class and set it
correctly while parsing the longhand property.

Test: LayoutTests/transitions/transitions-parsing.html

  • css/CSSParser.cpp:

(WebCore::AnimationParseContext::AnimationParseContext):
(WebCore::AnimationParseContext::commitAnimationPropertyKeyword):
(WebCore::AnimationParseContext::animationPropertyKeywordAllowed):
(AnimationParseContext):
(WebCore::CSSParser::parseAnimationShorthand):
(WebCore::CSSParser::parseTransitionShorthand):
(WebCore::CSSParser::parseAnimationProperty): We can remove the
condition inShorthand() here, if 'none' is parsed then no more keyword
can appear, if 'all' is parsed then we can continue the parsing but
invalidate the property if another keyword is encountered. These
conditions are valid for the shorthand and the longhand.

LayoutTests:

Extend exising test to cover the bug.

  • transitions/transitions-parsing-expected.txt:
  • transitions/transitions-parsing.html:
10:39 AM Changeset in webkit [143947] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Texmap] LayoutTests/compositing/animation/state-at-end-event-transform-layer.html shows a red square where it shouldn't
https://bugs.webkit.org/show_bug.cgi?id=110685

Patch by No'am Rosenthal <noam@webkit.org> on 2013-02-25
Reviewed by Martin Robinson.

Removed m_shouldUpdateCurrentTransformFromGraphicsLayer etc., as they don't do
what they're supposed to do. No flickers observed.

LayoutTests/compositing/animation/state-at-end-event-transform-layer.html now works correctly.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::setAnimatedTransform):
(WebCore::TextureMapperLayer::setAnimatedOpacity):
(WebCore::TextureMapperLayer::setAnimatedFilters):
(WebCore::TextureMapperLayer::syncAnimations):

  • platform/graphics/texmap/TextureMapperLayer.h:

(WebCore::TextureMapperLayer::TextureMapperLayer):
(TextureMapperLayer):

10:27 AM Changeset in webkit [143946] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] try to unbreak run-chromium-webkit-unit-tests on the mac bots
https://bugs.webkit.org/show_bug.cgi?id=110767

Reviewed by Eric Seidel.

The tester runs gyp, which generates out/Release/build.ninja. The bot
scripts use existence (and timestamp) of that file to decide if the
current build is supposed to be ninja or xcodebuild. The file exists,
so the snapshot is extracted to out/Release. The snapshot doesn't
contain build.ninja however due to
http://trac.webkit.org/changeset/140375 , so after extracting the
snapshot the scripts think that this is an xcodebuild build. So remove
the part of that revision that removed ninja files from the archive,
and the bots should be happy again.

  • BuildSlaveSupport/built-product-archive:

(archiveBuiltProduct):

10:24 AM Changeset in webkit [143945] by jer.noble@apple.com
  • 6 edits in trunk/Source/WebCore

AVFoundation.framework and QTKit.framework are lazy-loaded on every WebProcess launch
https://bugs.webkit.org/show_bug.cgi?id=110725

Reviewed by Eric Carlson.

When settings are changed, do not re-query the media engines (which causes their respective
frameworks to load). Instead, merely clear any previously loaded media engines so that
the media engine list will be re-queried the next time installedMediaEngines() is called.

(WebCore::MediaPlayer::resetMediaEngines): Renamed from requeryMediaEngines.

  • platform/graphics/MediaPlayer.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::resetMediaEngines): Ditto.

  • html/HTMLMediaElement.h:
  • page/Settings.cpp:

(WebCore::Settings::setAVFoundationEnabled): Call renamed method.
(WebCore::Settings::setQTKitEnabled): Ditto.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::installedMediaEngines): Only clear out previously queried engines.

10:21 AM Changeset in webkit [143944] by mrobinson@webkit.org
  • 2 edits in trunk/Source/WebCore

Try to fix the Windows gyp build after r143937

  • WebCore.gypi: Update the filename in the source list.
10:13 AM Changeset in webkit [143943] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Add isInputMode() method to WebPage class.
https://bugs.webkit.org/show_bug.cgi?id=110754

Patch by Yongxin Dai <yodai@rim.com> on 2013-02-25
Reviewed by Rob Buis.

PR #262569.

There is a case we need to know if the active node is content editable
from TouchHandlerWebKitThread class. WebPage::isInputMode() just delegates
InputHandler::isInputMode().

Reviewed Internally by Mike Fenton.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::isInputMode):
(WebKit):

  • Api/WebPage.h:
10:10 AM Changeset in webkit [143942] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Force form submission when implicit submission fails.
https://bugs.webkit.org/show_bug.cgi?id=110627

Reviewed by Rob Buis.

PR 286023.

When implicit form submission does not submit the form
do a direct submission of the form.

Reviewed Internally by Nima Ghanavatian.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::updateFormState):

10:08 AM Changeset in webkit [143941] by jchaffraix@webkit.org
  • 8 edits in trunk/Source/WebCore

[CSS Grid Layout] Refactor RenderStyle's grid position storage in preparation to supporting spanning
https://bugs.webkit.org/show_bug.cgi?id=110651

Reviewed by Ojan Vafai.

The current code stores grid-{row|column} as a single GridPosition value. While this works well currently,
we want to be able to handle 2 GridPosition as this enables row / column spanning.

That's what this refactoring achieves: it replaces the internal storage by a GridPositions that contains a
single GridPosition for now. The rest is mechanical updates.

Refactoring covered by existing tests.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForGridPositions):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
Added the simple wrapper valueForGridPositions and updated the rest of the code.

  • css/StyleResolver.cpp:

(WebCore::createGridPositions):
(WebCore::StyleResolver::applyProperty):
Ditto with createGridPositions.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::maximumIndexInDirection):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::autoPlacementMajorAxisPositionsForChild):
(WebCore::RenderGrid::autoPlacementMinorAxisPositionsForChild):
Updated the code after adding the indirection: s/GridPosition/GridPositions/ and
use the firstPosition helper.

  • rendering/RenderGrid.h:
  • rendering/style/GridPosition.h:

(WebCore::GridPositions::GridPositions):
(WebCore::GridPositions::firstPosition):
(WebCore::GridPositions::operator==):
Added this class to add the indirection. For now, it only wraps the single GridPosition.

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleGridItemData.h:

Updated to store / take / return a GridPositions.

10:02 AM Changeset in webkit [143940] by Dimitri Glazkov
  • 13 edits in trunk/Source/WebCore

Revert r143840 because it caused flaky crashes.
https://bugs.webkit.org/show_bug.cgi?id=110766

9:57 AM Changeset in webkit [143939] by ap@apple.com
  • 4 edits in trunk/Source/WebCore

Remove an obsolete workaround for relaxing 3rd party cookie policy
https://bugs.webkit.org/show_bug.cgi?id=110664

Reviewed by Benjamin Poulain.

Removed shouldRelaxThirdPartyCookiePolicy(). This workaround is no longer needed,
because CFNetwork performs the same check starting with 10.6.8.

Also, the workaround was not quite correct and harmful for performance, as it
was always changing main document URL to an untrue value, which caused ResourceRequest
regeneration.

  • platform/network/ResourceHandle.h:
  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::createCFURLConnection):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::createNSURLConnection):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):

9:47 AM Changeset in webkit [143938] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

WebInspector: Do not keep track of resources unless they have a valid loader identifier.
https://bugs.webkit.org/show_bug.cgi?id=110761

Reviewed by Pavel Feldman.

  • inspector/NetworkResourcesData.cpp:

(WebCore::NetworkResourcesData::responseReceived):
(WebCore::NetworkResourcesData::setResourceType):
(WebCore::NetworkResourcesData::resourceType):
(WebCore::NetworkResourcesData::setResourceContent):
(WebCore::NetworkResourcesData::maybeAddResourceData):
(WebCore::NetworkResourcesData::maybeDecodeDataToContent):
(WebCore::NetworkResourcesData::addCachedResource):
(WebCore::NetworkResourcesData::addResourceSharedBuffer):
(WebCore::NetworkResourcesData::data):
(WebCore::NetworkResourcesData::xhrReplayData):
(WebCore::NetworkResourcesData::setXHRReplayData):
(WebCore::NetworkResourcesData::reuseXHRReplayData):
(WebCore::NetworkResourcesData::resourceDataForRequestId):
(WebCore::NetworkResourcesData::ensureNoDataForRequestId):
(WebCore::NetworkResourcesData::ensureFreeSpace):

  • inspector/NetworkResourcesData.h:

(NetworkResourcesData):

9:30 AM Changeset in webkit [143937] by commit-queue@webkit.org
  • 4 edits
    1 move
    1 add in trunk/Source/WebCore

[EFL][GTK] Move text selection/focus notification for a11y from gtk to atk directory
https://bugs.webkit.org/show_bug.cgi?id=110221

Patch by Mariusz Grzegorczyk <mariusz.g@samsung.com> on 2013-02-25
Reviewed by Martin Robinson.

Share implementation between efl and gtk.
Update build with changes made.

  • GNUmakefile.list.am: Change WebCore/editing/gtk/FrameSelectionGtk.cpp to WebCore/editing/atk/FrameSelectionAtk.cpp to build.
  • PlatformEfl.cmake: Add WebCore/editing/atk to include directories, add Webcore/editing/atk/FrameSelectionAtk.cpp to build.
  • editing/FrameSelection.h: Omit notifyAccessibilityForSelectionChange() stub for EFL port.

(WebCore):

  • editing/atk/FrameSelectionAtk.cpp: Renamed from Source/WebCore/editing/gtk/FrameSelectionGtk.cpp.

(WebCore):
(WebCore::emitTextSelectionChange):
(WebCore::maybeEmitTextFocusChange):
(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):

9:27 AM Changeset in webkit [143936] by hclam@chromium.org
  • 8 edits
    2 adds in trunk/Source

GIFImageReader to read from source data directly
https://bugs.webkit.org/show_bug.cgi?id=109662

Reviewed by Stephen White.

Source/WebCore:

This is the first patch to improve GIF image decoding.

GIFImageReader has an internal 256 bytes buffer to saving incoming
bytes. This mechanism is out-dated because WebKit holds the entire
file in memory and it is not necessary to hold data in an intermediate
buffer.

This is also a blocker for later work to parse and decode GIF
incrementally.

This change removed the imtermediate 'hold' buffer and uses an index
for data position to keep track of parsing of the GIF file. Buffer for
global colormap and local colormap are also removed because they can be
referenced from the data stream.

This change is tested by:

Layout tests
All tests passed under fast/images.

Unit tests
Added GIFImageDecoderTest for Chromium.

Local testing
I tested this implementation against a set of 50k GIF images and
there's no crashes and produces bit-exact results as previous code.

  • platform/image-decoders/gif/GIFImageDecoder.cpp:

(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):

  • platform/image-decoders/gif/GIFImageReader.cpp:

(GIFImageReader::doLZW):
(GIFImageReader::decode):
(GIFImageReader::decodeInternal):
(GIFImageReader::setRemainingBytes):

  • platform/image-decoders/gif/GIFImageReader.h:

(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader::setData):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::localColormap):
(GIFImageReader::localColormapSize):
(GIFImageReader::data):
(GIFImageReader::colormap):

Source/WebKit/chromium:

Added the following unit tests to test new logic in GIFImageDecoder:

GIFImageDecoderTest.decodeTwoFrames
Test that it can decode a multi-frame GIF image correctly.

GIFImageDecoderTest.parseAndDecode
First perform a parse operation and then a decode operation. Expect
that parse and decode operates correctly.

GIFImageDecoderTest.parseByteByByte
Test that multi-frame GIF image can be parsed correctly byte by byte.

GIFImageDecoderTest.parseAndDecodeByteByByte
Run a loop to feed decoder byte by byte, perform a parse and then
decode operation and make sure frames are decoded correctly.

GIFImageDecoderTest.brokenSecondFrame
Decode a GIF image with second frame broken. Expect that the first
frame can be decoded correctly.

  • WebKit.gyp:
  • WebKit.gypi:
  • tests/GIFImageDecoderTest.cpp: Added.

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

  • tests/data/broken.gif: Added.
9:14 AM Changeset in webkit [143935] by abecsi@webkit.org
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Remove unneeded method didResumeContent from PageViewportController clients
https://bugs.webkit.org/show_bug.cgi?id=110751

Reviewed by Jocelyn Turcotte.

This is a clean-up in the PageViewportController clients that removes leftover
code from previous design that is partially unused and unnecessary, to simplify
the interaction between PageViewportController and clients.

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::resumeContent):

  • UIProcess/PageViewportControllerClient.h:

(PageViewportControllerClient):

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:
  • UIProcess/efl/PageViewportControllerClientEfl.h:

(PageViewportControllerClientEfl):

  • UIProcess/qt/PageViewportControllerClientQt.cpp:

(WebKit::PageViewportControllerClientQt::animateContentRectVisible):
(WebKit::PageViewportControllerClientQt::flickMoveEnded):
(WebKit::PageViewportControllerClientQt::resumeAndUpdateContent):
(WebKit::PageViewportControllerClientQt::pinchGestureCancelled):

  • UIProcess/qt/PageViewportControllerClientQt.h:

(PageViewportControllerClientQt):

9:05 AM Changeset in webkit [143934] by peter@chromium.org
  • 20 edits
    2 copies in branches/chromium/1410

Merge 143356

Text Autosizing: prevent oscillation of font sizes during autosizing
https://bugs.webkit.org/show_bug.cgi?id=108205

Patch by Tim Volodine <timvolodine@chromium.org> on 2013-02-19
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

On some websites autosized font-sizes oscillate due to layouts caused by
hovering or incremental page loading (and on other sites font sizes do
eventually stabilize, but it takes many layouts before they reach a steady
size). To prevent all these cases, we no longer allow the autosizing
multiplier to change after it has been set (to a value other than 1).

This won't always give exactly the same results, but testing on 2000 top
sites shows that this makes little difference in practice, and it prevents
these very jarring cases. As a happy side-effect, this speeds up layouts
as font sizes change less.

Test: fast/text-autosizing/oscillation-javascript-fontsize-change.html

  • page/FrameView.cpp:

(WebCore::FrameView::setFrameRect):

  • page/Settings.cpp:

(WebCore::Settings::setTextAutosizingFontScaleFactor):

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::recalculateMultipliers):
(WebCore):
(WebCore::TextAutosizer::processContainer):

  • rendering/TextAutosizer.h:

(TextAutosizer):

LayoutTests:

Added overflow-y:hidden to some existing tests, since previously those tests
would start off with incorrect multipliers (because mainFrame->view()-layoutSize()
is initially 785 instead of 800 as ScrollView wrongly guesses a scrollbar will
be needed), and then the multipliers would get corrected on a subsequent layout.
Now that we don't allow the multiplier to change after being set, it needs to be
right first time.
Also added specific oscillation test triggered by javascript.

  • fast/text-autosizing/constrained-height-body-expected.html:
  • fast/text-autosizing/constrained-height-body.html:
  • fast/text-autosizing/constrained-then-float-ancestors-expected.html:
  • fast/text-autosizing/constrained-then-float-ancestors.html:
  • fast/text-autosizing/constrained-then-position-fixed-ancestors-expected.html:
  • fast/text-autosizing/constrained-then-position-fixed-ancestors.html:
  • fast/text-autosizing/nested-em-line-height-expected.html:
  • fast/text-autosizing/nested-em-line-height.html:
  • fast/text-autosizing/oscillation-javascript-fontsize-change-expected.html: Added.
  • fast/text-autosizing/oscillation-javascript-fontsize-change.html: Added.
  • fast/text-autosizing/simple-paragraph-expected.html:
  • fast/text-autosizing/simple-paragraph.html:
  • fast/text-autosizing/span-child-expected.html:
  • fast/text-autosizing/span-child.html:
  • fast/text-autosizing/unwrappable-blocks-expected.html:
  • fast/text-autosizing/unwrappable-blocks.html:
  • fast/text-autosizing/unwrappable-inlines-expected.html:
  • fast/text-autosizing/unwrappable-inlines.html:

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12310107

8:59 AM Changeset in webkit [143933] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry]Adjust fatfinger detection rect size.
https://bugs.webkit.org/show_bug.cgi?id=108678

Patch by Tiancheng Jiang <tijiang@rim.com> on 2013-02-25
Reviewed by Rob Buis.

Fix a typo in function names.

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::getNodesFromRect):

8:56 AM Changeset in webkit [143932] by peter@chromium.org
  • 4 edits in branches/chromium/1410

Merge 143318

[Text Autosizing] Combine narrow descendants of a cluster into groups that should be autosized with the same multiplier.
https://bugs.webkit.org/show_bug.cgi?id=109825

Source/WebCore:

Enhancement of the approach introduced in https://bugs.webkit.org/show_bug.cgi?id=109573.
Instead of using the same text size multiplier for all narrow descendants of any autosizing
cluster, group the descendants by how much narrower they are than the cluster's
|blockContainingAllText| and process each group separately with a different multiplier for
each one.
For example, we want nested comments on the page to be autosized as a group but separately
from a sidebar on the same page.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-19
Reviewed by Kenneth Rohde Christiansen.

Updated the existing test to verify the patch.

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processClusterInternal):

Splits the narrow descendants of the autosizing cluster into groups before processing
each group individually.

(WebCore::TextAutosizer::getNarrowDescendantsGroupedByWidth):

Sorts the narrow descendants of the given cluster into groups, combining them by the
difference between their content widths. If sorted by width, two consecutive nodes
belong to the same group if their width difference is no greater than 100 CSS units.

  • rendering/TextAutosizer.h:

New method definitions.

LayoutTests:

Verify that narrow descendants are grouped and autosized separately according to the
difference between the descendant's width and the width of its enclosing cluster's
|blockContainingAllText|.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-19
Reviewed by Kenneth Rohde Christiansen.

  • fast/text-autosizing/narrow-descendants-combined-expected.html:
  • fast/text-autosizing/narrow-descendants-combined.html:

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12317102

8:56 AM Changeset in webkit [143931] by sergio@webkit.org
  • 3 edits
    3 adds in trunk

[soup] "Too many redirects" error loading chat in plus.google.com
https://bugs.webkit.org/show_bug.cgi?id=64575

Reviewed by Martin Robinson.

Source/WebCore:

Set the firstPartyForCookies for the new request on redirects to
the URL used for redirection.

Test: http/tests/cookies/set-cookie-on-redirect.html

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::doRedirect):

LayoutTests:

This new test checks firstPartyForCookies is properly set to the
new URL on redirects.

  • http/tests/cookies/resources/set-cookie-on-redirect.php: Added.
  • http/tests/cookies/set-cookie-on-redirect-expected.txt: Added.
  • http/tests/cookies/set-cookie-on-redirect.html: Added.
8:52 AM Changeset in webkit [143930] by peter@chromium.org
  • 2 edits
    2 copies in branches/chromium/1410

Merge 142866

[Text Autosizing] Process narrow descendants with the same multiplier for the font size.
https://bugs.webkit.org/show_bug.cgi?id=109573

Source/WebCore:

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-14
Reviewed by Julien Chaffraix.

Combine narrow descendants of the same autosizing cluster into a group that is autosized
with the same multiplier.

For example, on sites with a sidebar, sometimes the paragraphs next to the sidebar will have
a large margin individually applied (via a CSS selector), causing them all to individually
appear narrower than their enclosing blockContainingAllText. Rather than making each of
these paragraphs into a separate cluster, we want them all to share the same multiplier, as
if they were a single cluster.

Test: fast/text-autosizing/narrow-descendants-combined.html

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processClusterInternal):

Common implementation for processCluster() and processCompositeCluster that accepts the
text width and whether the cluster should be autosized as parameters instead of
calculating it inline.

(WebCore::TextAutosizer::processCluster):

Calculates the text width for a single cluster and whether it should be autosized, then
calls processClusterInternal() to apply the multiplier and process the cluster's
descendants.

(WebCore::TextAutosizer::processCompositeCluster):

Calculates the text width for a group of renderers and if the group should be autosized,
then calls processClusterInternal() repeatedly with the same multiplier to apply it and
process all the descendants of the group.

(WebCore::TextAutosizer::clusterShouldBeAutosized):

Calls the multiple renderers version to avoid code duplication.

(WebCore::TextAutosizer::compositeClusterShouldBeAutosized):

The multiple renderers version of clusterShouldBeAutosized.

  • rendering/TextAutosizer.h:

Updated method declarations.

LayoutTests:

Test to verify that all narrow descendants of a cluster are autosized with the same
multiplier.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-14
Reviewed by Julien Chaffraix.

  • fast/text-autosizing/narrow-descendants-combined-expected.html: Added.
  • fast/text-autosizing/narrow-descendants-combined.html: Added.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12326104

8:51 AM Changeset in webkit [143929] by thakis@chromium.org
  • 2 edits in trunk/Tools

Fix tests after r143910
https://bugs.webkit.org/show_bug.cgi?id=110757

Reviewed by Andreas Kling.

While here, also add a test for the bug r143910 fixed.

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

(ScriptErrorTest.test_message_with_output):
(ScriptErrorTest):
(ScriptErrorTest.test_message_with_tuple):

8:46 AM Changeset in webkit [143928] by peter@chromium.org
  • 1 edit in branches/chromium/1410/Source/WebCore/rendering/TextAutosizer.cpp

Merge 142534

[Text Autosizing] Collect narrow descendants and process them separately. Refactoring for
a change to follow.
https://bugs.webkit.org/show_bug.cgi?id=109054

Preparational change to combine narrow descendants of the same autosizing cluster into
groups by the width difference between the descendant and the block containing all text of
the parent autosizing cluster. The groups will be autosized with the same multiplier.

For example, on sites with a sidebar, sometimes the paragraphs next to the sidebar will have
a large margin individually applied (via a CSS selector), causing them all to individually
appear narrower than their enclosing blockContainingAllText. Rather than making each of
these paragraphs into a separate cluster, we eventually want to be able to merge them back
together into one (or a few) descendant clusters.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-11
Reviewed by Julien Chaffraix.

No behavioral changes thus no new tests or test changes.

  • rendering/TextAutosizer.cpp:

(TextAutosizingClusterInfo): Vector of narrow descendants.
(WebCore::TextAutosizer::processCluster): Process narrow descendants separately.
(WebCore::TextAutosizer::processContainer):

Remember narrow descendants of the parent cluster for later processing.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12315083

8:09 AM Changeset in webkit [143927] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] Apparently built-product-archive is written in Python, not Perl :-/
https://bugs.webkit.org/show_bug.cgi?id=110755

Reviewed by Jochen Eisinger.

  • BuildSlaveSupport/built-product-archive:

(archiveBuiltProduct):
(extractBuiltProduct):

7:51 AM WebKitGTK/2.0.x edited by mrobinson@webkit.org
(diff)
7:50 AM WebKitGTK/2.0.x edited by mrobinson@webkit.org
(diff)
7:49 AM Changeset in webkit [143926] by akling@apple.com
  • 52 edits in trunk/Source

Reduce amount of code that includes StylePropertySet.h
<http://webkit.org/b/101149>

Reviewed by Antti Koivisto.

Source/WebCore:

StylePropertySet.h and dependents were getting included by the majority of WebKit
through either StyledElement.h or CSSStyleDeclaration.h. This change removes those includes
and moves inclusion to .cpp files instead. After this change, it's possible to hack most
of WebCore/css/ and rebuild <100 files instead of >1000.

The only real code change in here is changing CSSStyleDeclaration::cssPropertyMatches()
to take a CSSPropertyID/CSSValue* combo instead of a StylePropertySet::Reference.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):

  • css/CSSComputedStyleDeclaration.h:

(CSSComputedStyleDeclaration):

  • css/CSSStyleDeclaration.h:

(CSSStyleDeclaration):

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::PropertySetCSSStyleDeclaration::cssPropertyMatches):

  • css/PropertySetCSSStyleDeclaration.h:
  • css/SelectorChecker.h:
  • css/SelectorCheckerFastPath.cpp:
  • css/SelectorFilter.cpp:
  • css/SelectorFilter.h:
  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::propertyMatches):
(WebCore::StylePropertySet::removeEquivalentProperties):

  • css/StylePropertySet.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::MatchedProperties::MatchedProperties):
(WebCore::StyleResolver::MatchedProperties::~MatchedProperties):

  • css/StyleResolver.h:

(MatchedProperties):

  • css/StyleRule.cpp:
  • css/ViewportStyleResolver.cpp:

(WebCore::ViewportStyleResolver::~ViewportStyleResolver):

  • css/ViewportStyleResolver.h:

(ViewportStyleResolver):

  • css/WebKitCSSKeyframeRule.cpp:

(WebCore::StyleKeyframe::StyleKeyframe):
(WebCore::StyleKeyframe::~StyleKeyframe):

  • css/WebKitCSSKeyframeRule.h:

(StyleKeyframe):

  • dom/Attr.cpp:
  • dom/Document.cpp:
  • dom/Element.cpp:
  • dom/StyledElement.cpp:

(WebCore::StyledElement::addPropertyToPresentationAttributeStyle):

  • dom/StyledElement.h:

(StyledElement):

  • editing/FrameSelection.cpp:
  • editing/RemoveCSSPropertyCommand.cpp:

(WebCore::RemoveCSSPropertyCommand::~RemoveCSSPropertyCommand):

  • editing/RemoveCSSPropertyCommand.h:

(RemoveCSSPropertyCommand):

  • editing/RemoveFormatCommand.cpp:
  • html/HTMLBodyElement.cpp:
  • html/HTMLElement.cpp:

(WebCore::HTMLElement::addHTMLLengthToStyle):
(WebCore::HTMLElement::addHTMLColorToStyle):

  • html/HTMLElement.h:

(HTMLElement):

  • html/HTMLFontElement.cpp:
  • html/HTMLHRElement.cpp:
  • html/HTMLPreElement.cpp:
  • html/HTMLTableElement.cpp:
  • html/HTMLTablePartElement.cpp:
  • html/canvas/CanvasStyle.cpp:
  • html/shadow/MediaControlElementTypes.cpp:
  • inspector/InspectorStyleSheet.cpp:
  • page/PageSerializer.cpp:
  • rendering/RenderTableCell.cpp:
  • svg/SVGAnimateElement.cpp:
  • svg/SVGElementRareData.h:
  • svg/SVGFontFaceElement.cpp:

Source/WebKit/gtk:

  • WebCoreSupport/EditorClientGtk.cpp:

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.mm:
  • WebView/WebFrame.mm:
  • WebView/WebView.mm:

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:
7:46 AM Changeset in webkit [143925] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip asserting tests.
https://bugs.webkit.org/show_bug.cgi?id=110756

  • platform/qt/TestExpectations:
7:42 AM Changeset in webkit [143924] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r143895.
http://trac.webkit.org/changeset/143895
https://bugs.webkit.org/show_bug.cgi?id=110758

broke a bunch of tests (Requested by thakis on #webkit).

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

  • Scripts/update-webkit-chromium:
7:22 AM Changeset in webkit [143923] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Web Inspector: Remove CPU profile from a group causes exception
https://bugs.webkit.org/show_bug.cgi?id=110466

Patch by Alexei Filippov <alph@chromium.org> on 2013-02-25
Reviewed by Yury Semikhatsky.

WebInspector.ProfilesPanel._removeProfileHandle did not handle
profile removal from a group. The fix takes care of this case.

Test: inspector/profiler/cpu-profiler-profile-removal.html

Source/WebCore:

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfilesPanel.prototype.addProfileHeader):
(WebInspector.ProfilesPanel.prototype._removeProfileHeader):

LayoutTests:

  • inspector/profiler/cpu-profiler-profile-removal-expected.txt: Added.
  • inspector/profiler/cpu-profiler-profile-removal.html: Added.
7:15 AM Changeset in webkit [143922] by yoli@rim.com
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/committers.py

Unreviewed. Edit my personal info.

  • Scripts/webkitpy/common/config/committers.py:
7:10 AM Changeset in webkit [143921] by caseq@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed follow-up to r143725, reduce chances test flakes on a slow box.

  • src/js/Tests.js:

(.TestSuite.prototype.testPageOverlayUpdate.step2):

6:53 AM Changeset in webkit [143920] by mkwst@chromium.org
  • 3 edits
    1 copy
    1 move
    40 adds
    13 deletes in trunk/LayoutTests

XSSAuditor tests shouldn't depend on IFrames's load order.
https://bugs.webkit.org/show_bug.cgi?id=110737

Reviewed by Jochen Eisinger.

Various tests under http/tests/security/xssAuditor actually wrap up
multiple test cases under a single HTML file by loading a variety of
IFrames. Currently, the error messages that these tests expect aren't
detailed enough to distinguish between the order in which the IFrames
load: they all generate the same error, so the ordering is irrelevant.

Before we increase the error message detail in webkit.org/b/110733, we
need to ensure that these tests don't rely on load order. One option
is to serialize the IFrame loading by chaining onload events, but that
seems like a slow way of doing things. This patch takes a different
approach, breaking the multiple-IFrame tests into many single-IFrame
tests (which should be more shardable, and actually execute more quickly
in the long run).

  • http/tests/security/xssAuditor/open-iframe-src-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-iframe-src.html: Removed.
  • http/tests/security/xssAuditor/open-script-src-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-script-src.html: Removed.
  • http/tests/security/xssAuditor/property-escape-comment-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-comment.html: Removed.
  • http/tests/security/xssAuditor/property-escape-entity-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-entity.html: Removed.
  • http/tests/security/xssAuditor/property-escape-quote-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-quote.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-comma-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-comma.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated.html: Removed.

Removed these tests, breaking them into multiple single-IFrame HTML files.

  • http/tests/security/xssAuditor/open-iframe-src-01.html: Added.
  • http/tests/security/xssAuditor/open-iframe-src-02.html: Added.
  • http/tests/security/xssAuditor/open-script-src-01-expected.txt: Added.
  • http/tests/security/xssAuditor/open-script-src-01.html: Added.
  • http/tests/security/xssAuditor/open-script-src-02-expected.txt: Added.
  • http/tests/security/xssAuditor/open-script-src-02.html: Added.
  • http/tests/security/xssAuditor/open-script-src-03-expected.txt: Added.
  • http/tests/security/xssAuditor/open-script-src-03.html: Added.
  • http/tests/security/xssAuditor/open-script-src-04-expected.txt: Added.
  • http/tests/security/xssAuditor/open-script-src-04.html: Added.
  • http/tests/security/xssAuditor/property-escape-comment-01-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-comment-01.html: Added.
  • http/tests/security/xssAuditor/property-escape-comment-02-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-comment-02.html: Added.
  • http/tests/security/xssAuditor/property-escape-comment-03-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-comment-03.html: Added.
  • http/tests/security/xssAuditor/property-escape-entity-01-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-entity-01.html: Added.
  • http/tests/security/xssAuditor/property-escape-entity-02-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-entity-02.html: Added.
  • http/tests/security/xssAuditor/property-escape-entity-03-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-entity-03.html: Added.
  • http/tests/security/xssAuditor/property-escape-quote-01.html: Added.
  • http/tests/security/xssAuditor/property-escape-quote-02.html: Added.
  • http/tests/security/xssAuditor/property-escape-quote-03.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-comma-01-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-comma-01.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-comma-02-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-comma-02.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-01-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-01.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-02-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-02.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-03-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-03.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment5.html: Added.

These tests perform the same validation as the combined tests, they
simply do it without introducing load-order dependencies.

6:38 AM Changeset in webkit [143919] by tommyw@google.com
  • 6 edits in branches/chromium/1410/Source

Merge 142773

MediaStream API: Use the source id when creating new tracks
https://bugs.webkit.org/show_bug.cgi?id=109688

Reviewed by Adam Barth.

Source/Platform:

Added id to initialize and renamed audio/videoSources to audio/videoTracks.

  • chromium/public/WebMediaStream.h:

(WebKit):
(WebMediaStream):
(WebKit::WebMediaStream::audioSources):
(WebKit::WebMediaStream::videoSources):

  • chromium/public/WebMediaStreamTrack.h:

(WebMediaStreamTrack):

Source/WebCore:

This patch reuses the ids from the source when creating tracks instead of creating a new one.
This was requested by the chromium port to greatly simplify their implementation.
In the longer run the API should be rewritten to only use tracks instead of sources.

Covered by existing tests.

  • platform/chromium/support/WebMediaStream.cpp:

(WebKit::WebMediaStream::audioTracks):
(WebKit::WebMediaStream::videoTracks):
(WebKit::WebMediaStream::initialize):
(WebKit):

  • platform/chromium/support/WebMediaStreamTrack.cpp:

(WebKit::WebMediaStreamTrack::initialize):
(WebKit):

  • platform/mediastream/MediaStreamComponent.h:

(WebCore::MediaStreamComponent::create):
(MediaStreamComponent):
(WebCore::MediaStreamComponent::MediaStreamComponent):
(WebCore):

  • platform/mediastream/MediaStreamDescriptor.h:

(WebCore::MediaStreamDescriptor::create):
(MediaStreamDescriptor):
(WebCore::MediaStreamDescriptor::MediaStreamDescriptor):

Tools:

Switching mock to new API.

  • DumpRenderTree/chromium/TestRunner/src/WebUserMediaClientMock.cpp:

(WebTestRunner::WebUserMediaClientMock::requestUserMedia):

TBR=dharani@google.com
Review URL: https://codereview.chromium.org/12326102

6:14 AM Changeset in webkit [143918] by akling@apple.com
  • 2 edits in trunk/Tools

Unreviewed, fix simple mistake in r143903.
<http://webkit.org/b/110746>

Reviewed by Andreas Kling.

Pass git revision, not svn revision, to git shell command.

  • Scripts/webkitpy/common/checkout/scm/git.py:

(Git.timestamp_of_latest_commit):

6:06 AM Changeset in webkit [143917] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Disable registerProtocolHandler on Android
https://bugs.webkit.org/show_bug.cgi?id=110481

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-25
Reviewed by Julien Chaffraix.

Chromium for Android has been exposing registerProtocolHandler, but the feature wasn't
actually wired up internally. Disable the feature to avoid breaking feature detection until
we can implement it properly. Previous attempt is at http://trac.webkit.org/changeset/133465
See the discussion of the future implementation at http://crbug.com/156386

  • features.gypi: Disable the flag for Android, enable it only for non-Android platforms.
  • src/ChromeClientImpl.h: Declaration is now guarded by the flag, not to break Android.
6:06 AM Changeset in webkit [143916] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:59 AM Changeset in webkit [143915] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] Let built-product-archive log which directory it's archiving from and extracting to
https://bugs.webkit.org/show_bug.cgi?id=110748

Reviewed by Jochen Eisinger.

One of the mac testers runs DRT from out/ but WebKitUnitTests from
xcodebuild. I'm trying to understand what's going on.

  • BuildSlaveSupport/built-product-archive:

(archiveBuiltProduct):
(extractBuiltProduct):

5:50 AM Changeset in webkit [143914] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:37 AM Changeset in webkit [143913] by loislo@chromium.org
  • 13 edits in trunk

Web Inspector: Native Memory Instrumentation: replace String with const char* in MemoryObjectInfo
https://bugs.webkit.org/show_bug.cgi?id=110599

Reviewed by Yury Semikhatsky.

Due to potentially dynamic nature of names and classNames we need to make a copy of the strings
that were given us via MemoryInstrumentation calls.
So I extended client api with registerString method that pushes the strings
down to the serializer.

Source/WebCore:

  • css/InspectorCSSOMWrappers.h:
  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphSerializer::HeapGraphSerializer):
(WebCore::HeapGraphSerializer::reportNodeImpl):
(WebCore::HeapGraphSerializer::reportEdgeImpl):
(WebCore::HeapGraphSerializer::registerString):
(WebCore::HeapGraphSerializer::registerTypeString):
(WebCore::HeapGraphSerializer::addRootNode):

  • inspector/HeapGraphSerializer.h:

(HeapGraphSerializer):

  • inspector/MemoryInstrumentationImpl.cpp:

(WebCore::MemoryInstrumentationClientImpl::registerString):
(WebCore):

  • inspector/MemoryInstrumentationImpl.h:

(MemoryInstrumentationClientImpl):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::reportMemoryUsage):

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(MemoryInstrumentationClient):

  • wtf/MemoryObjectInfo.h:

(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::setClassName):
(WTF::MemoryObjectInfo::classNameId):
(WTF::MemoryObjectInfo::setName):
(WTF::MemoryObjectInfo::nameId):
(MemoryObjectInfo):

Tools:

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
  • TestWebKitAPI/Tests/WebCore/HeapGraphSerializerTest.cpp:

(TestWebKitAPI::Helper::Helper):
(Helper):
(TestWebKitAPI::Helper::addNode):
(TestWebKitAPI::TEST):

5:21 AM Changeset in webkit [143912] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:20 AM Changeset in webkit [143911] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Add a scrollbar class for the new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110589

Reviewed by Kent Tamura.

Adding a scrollbar to be used in the new calendar picker (Bug 109439).

No new tests. Code is not used yet.

  • Resources/pagepopups/calendarPicker.js:

(ScrubbyScrollBar):
(ScrubbyScrollBar.prototype.height):
(ScrubbyScrollBar.prototype.setHeight):
(ScrubbyScrollBar.prototype.setThumbHeight): Sets the height of the scroll bar thumb.
(ScrubbyScrollBar.prototype._setThumbPositionFromEvent): Sets the thumb position from a mouse event.
(ScrubbyScrollBar.prototype.onMouseDown):
(ScrubbyScrollBar.prototype.onWindowMouseMove):
(ScrubbyScrollBar.prototype.onWindowMouseUp):
(ScrubbyScrollBar.prototype.onThumbStyleTopAnimationStep): Animates the thumb back to the center position.
(ScrubbyScrollBar.prototype.onScrollTimer): Fires repeatedly while the thumb is being dragged.

5:16 AM Changeset in webkit [143910] by thakis@chromium.org
  • 2 edits in trunk/Tools

Make ScriptError not crash when args is a tuple
https://bugs.webkit.org/show_bug.cgi?id=110747

Reviewed by Jochen Eisinger.

I'm trying to understand the error on
http://build.webkit.org/builders/Chromium%20Win%20Release%20%28Tests%29/builds/34563/steps/layout-test/logs/stdio
better. I'll likely have to revert the ninja switch on windows, but
having error reporting code that doesn't itself crash sounds like a
good thing to have anyways.

The problem is that '%s' % (1, 2) errors out, and args is sometimes a
tuple not a list.

  • Scripts/run-chromium-webkit-unit-tests:
  • Scripts/webkitpy/common/system/executive.py:

(ScriptError.init):

5:13 AM Changeset in webkit [143909] by commit-queue@webkit.org
  • 11 edits in trunk/Source/JavaScriptCore

[BlackBerry][ARM] Fix cast-align warnings in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=110738

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-02-25
Reviewed by Rob Buis.

Use reinterpret_cast_ptr instead of reinterpret_cast for
pointers.

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

(JSC::CopiedBlock::zeroFillWilderness):

  • heap/WeakBlock.h:

(JSC::WeakBlock::asWeakImpl):
(JSC::WeakBlock::asFreeCell):
(JSC::WeakBlock::weakImpls):

  • heap/WeakImpl.h:

(JSC::WeakImpl::asWeakImpl):

  • interpreter/JSStack.cpp:

(JSC::JSStack::disableErrorStackReserve):

  • interpreter/JSStack.h:

(JSC::JSStack::reservationEnd):

  • runtime/ArrayStorage.h:

(JSC::ArrayStorage::from):

  • runtime/Butterfly.h:

(JSC::Butterfly::indexingPayload):

  • runtime/IndexingHeader.h:

(JSC::IndexingHeader::propertyStorage):

  • runtime/JSActivation.h:

(JSC::JSActivation::tearOff):
(JSC::JSActivation::isTornOff):
(JSC::JSActivation::storage):

5:10 AM Changeset in webkit [143908] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:02 AM Changeset in webkit [143907] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
4:56 AM Changeset in webkit [143906] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
4:47 AM FeatureFlags edited by tkent@chromium.org
CUSTOM_ELEMENTS (diff)
4:36 AM Changeset in webkit [143905] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Align feature defaults
https://bugs.webkit.org/show_bug.cgi?id=110715

Enable 3D_RENDERING in FeatureList.pm as it is enabled by default in
OptionsEfl.cmake.

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-02-25
Reviewed by Gyuyoung Kim.

  • Scripts/webkitperl/FeatureList.pm:
4:31 AM Changeset in webkit [143904] by loislo@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed. Fix of closure type annotations.

  • inspector/front-end/UISourceCode.js:
  • inspector/front-end/utilities.js:
4:26 AM Changeset in webkit [143903] by rniwa@webkit.org
  • 7 edits in trunk/Tools

run-perf-tests reports wrong commit time
https://bugs.webkit.org/show_bug.cgi?id=110746

Reviewed by Andreas Kling.

The bug was caused by running "svn info" on a subdirectory, which returns a timestamp
of when the subdirectory was last modified.

Run "svn info -r <revision> <repository root>" instead. Specifying revision number is
insufficient since running "svn log -r <revision>" on a partial checkout only returns
an empty result if the revision didn't modify the subdirectory.

For git, there is no partial checkout, so we just need to pass in "-r" option to keep
the interface compatible with svn.

  • Scripts/webkitpy/common/checkout/scm/git.py:

(Git.timestamp_of_latest_commit):

  • Scripts/webkitpy/common/checkout/scm/scm.py:

(SCM.timestamp_of_latest_commit):

  • Scripts/webkitpy/common/checkout/scm/scm_mock.py:

(MockSCM.timestamp_of_latest_commit):

  • Scripts/webkitpy/common/checkout/scm/scm_unittest.py:

(test_timestamp_of_latest_commit):

  • Scripts/webkitpy/common/checkout/scm/svn.py:

(SVN.timestamp_of_latest_commit):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._generate_results_dict):

3:45 AM Changeset in webkit [143902] by eustas@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: [Network] Timeline bars and dividers are positioned in different coordinate systems.
https://bugs.webkit.org/show_bug.cgi?id=109943

Reviewed by Pavel Feldman.

Look at network log: red bar (on load) is positioned to the right of
the last required load.

This is incorrect. For exmaple, in case of short event it should be
positioned in the center of the bar.

  • inspector/front-end/DataGrid.js:

Fix - hidden columns can have non-zero width.

  • inspector/front-end/NetworkPanel.js: Use correct width for calculator.
  • inspector/front-end/networkLogView.css: Removed parasite paddinds.

Extracted common absolute "paddings".

3:31 AM Changeset in webkit [143901] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Add list view for new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110140

Reviewed by Kent Tamura.

Adding list view class to be used in the new calendar picker (Bug 109439).

No new tests. Code is not yet used.

  • Resources/pagepopups/calendarPicker.js:

(ListCell): One row inside the list view. We reuse
list cells to avoid animation hiccups caused by memory allocation.
(ListCell.prototype._recycleBin): Returns array to
store thrown away list cells so we can reuse them.
(ListCell.prototype.throwAway): Hides the cell and puts it in the recycle bin.
(ListCell.prototype.show):
(ListCell.prototype.hide): Hide the cell when we don't need the cell any more.
(ListCell.prototype.width):
(ListCell.prototype.setWidth):
(ListCell.prototype.position):
(ListCell.prototype.setPosition): Sets the CSS transform to position the cell.
(ListCell.prototype.setSelected): Adds selected CSS class.
(ListView): Shows a scrolling list.
(ListView.prototype.onAnimationFrameWillFinish): Calls updateCells if the cells need to be updated.
(ListView.prototype.setNeedsUpdateCells): Mark the cells as need to be updated.
(ListView.prototype.cellAtRow): Returns the cell at a given row. If the cell is not visible and doesn't exist, returns undefined.
(ListView.prototype.rowAtScrollOffset): The row that is displayed at the given scroll offset.
(ListView.prototype.scrollOffsetForRow): The scroll offset for the top of a given row.
(ListView.prototype.addCellIfNecessary): Adds the cell for a given row.
(ListView.prototype.prepareNewCell): Prepares a new or recycled cell for a given row.
(ListView.prototype.throwAwayCell): Throws a way a cell.
(ListView.prototype.firstVisibleRow): The first visible row at the top of the view.
(ListView.prototype.lastVisibleRow): The last visible row at the bottom of the view.
(ListView.prototype.scrollViewDidChangeContentOffset):
(ListView.prototype.scrollViewDidChangeHeight):
(ListView.prototype.scrollViewDidChangePartition):
(ListView.prototype.updateCells): Updates all the cells that are visible.
(ListView.prototype.width):
(ListView.prototype.setWidth):
(ListView.prototype.height):
(ListView.prototype.setHeight):
(ListView.prototype.onClick): Clicking on a row selects it.
(ListView.prototype.select):
(ListView.prototype.deselect):
(ListView.prototype.scrollToRow): Scrolls to a given row.

2:53 AM Changeset in webkit [143900] by commit-queue@webkit.org
  • 15 edits in trunk

Web Inspector: move profile type specific code out of ProfilesPanel (refactor)
https://bugs.webkit.org/show_bug.cgi?id=110597

Patch by Alexei Filippov <alph@chromium.org> on 2013-02-25
Reviewed by Yury Semikhatsky.

Move profile type specific functionality out of ProfilesPanel class.
This is a first part of WebInspector.ProfilesPanel refactoring.

No new tests as the functionality isn't changed.

Source/WebCore:

  • English.lproj/localizedStrings.js:
  • inspector/front-end/CPUProfileView.js:

(WebInspector.CPUProfileType):
(WebInspector.CPUProfileType.prototype.addProfileHeader):
(WebInspector.CPUProfileType.prototype.removeProfile):
(WebInspector.CPUProfileType.prototype._requestProfilesFromBackend):
(WebInspector.CPUProfileType.prototype.resetProfiles):
(WebInspector.CPUProfileType.prototype.addHeapSnapshotChunk):
(WebInspector.CPUProfileType.prototype.finishHeapSnapshot):
(WebInspector.CPUProfileType.prototype.reportHeapSnapshotProgress):

  • inspector/front-end/CSSSelectorProfileView.js:

(WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
(WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile):
(WebInspector.CSSSelectorProfileType.prototype._stopRecordingProfile):

  • inspector/front-end/CanvasProfileView.js:

(WebInspector.CanvasProfileType.prototype.buttonClicked):
(WebInspector.CanvasProfileType.prototype._runSingleFrameCapturing):
(WebInspector.CanvasProfileType.prototype._startFrameCapturing):
(WebInspector.CanvasProfileType.prototype._didStartCapturingFrame):
(WebInspector.CanvasProfileType.prototype._reset):
(WebInspector.CanvasProfileType.prototype.removeProfile):
(WebInspector.CanvasProfileHeader.prototype.dispose):

  • inspector/front-end/HeapSnapshotView.js:

(WebInspector.HeapSnapshotView.prototype._profiles):
(WebInspector.HeapSnapshotProfileType):
(WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
(WebInspector.HeapSnapshotProfileType.prototype.addProfileHeader):
(WebInspector.HeapSnapshotProfileType.prototype.addHeapSnapshotChunk):
(WebInspector.HeapSnapshotProfileType.prototype.finishHeapSnapshot):
(WebInspector.HeapSnapshotProfileType.prototype.reportHeapSnapshotProgress):
(WebInspector.HeapSnapshotProfileType.prototype.resetProfiles):
(WebInspector.HeapSnapshotProfileType.prototype.removeProfile):
(WebInspector.HeapSnapshotProfileType.prototype._requestProfilesFromBackend):
(WebInspector.HeapProfileHeader.prototype._updateTransferProgress):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeSnapshotProfileType):
(WebInspector.NativeSnapshotProfileType.prototype.addNativeSnapshotChunk):

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfileType):
(WebInspector.ProfileType.prototype.buttonClicked):
(WebInspector.ProfileType.prototype.get description):
(WebInspector.ProfileType.prototype.getProfiles):
(WebInspector.ProfileType.prototype.getProfile):
(WebInspector.ProfileType.prototype._makeKey):
(WebInspector.ProfileType.prototype.addProfile):
(WebInspector.ProfileType.prototype.removeProfile):
(WebInspector.ProfileType.prototype.findTemporaryProfile):
(WebInspector.ProfileType.prototype._reset):
(WebInspector.ProfileType.prototype._requestProfilesFromBackend):
(WebInspector.ProfileHeader):
(WebInspector.ProfileHeader.prototype.dispose):
(WebInspector.ProfilesPanel):
(WebInspector.ProfilesPanel.prototype._loadFromFile):
(WebInspector.ProfilesPanel.prototype.toggleRecordButton):
(WebInspector.ProfilesPanel.prototype._populateAllProfiles):
(WebInspector.ProfilesPanel.prototype.wasShown):
(WebInspector.ProfilesPanel.prototype._profilerWasEnabled):
(WebInspector.ProfilesPanel.prototype._reset):
(WebInspector.ProfilesPanel.prototype._registerProfileType.onAddProfileHeader):
(WebInspector.ProfilesPanel.prototype._registerProfileType.onRemoveProfileHeader):
(WebInspector.ProfilesPanel.prototype._registerProfileType.onProgressUpdated):
(WebInspector.ProfilesPanel.prototype._registerProfileType):
(WebInspector.ProfilesPanel.prototype._addProfileHeader):
(WebInspector.ProfilesPanel.prototype._removeProfileHeader):
(WebInspector.ProfilesPanel.prototype._createTemporaryProfile):
(WebInspector.ProfilesPanel.prototype._removeTemporaryProfile):
(WebInspector.ProfilesPanel.prototype.getProfile):
(WebInspector.ProfilesPanel.prototype.showProfile):
(WebInspector.ProfilesPanel.prototype._getAllProfiles):
(WebInspector.ProfilesPanel.prototype._searchableViews):
(WebInspector.ProfilesPanel.prototype.searchCanceled):
(WebInspector.ProfilesPanel.prototype.setRecordingProfile):
(WebInspector.ProfilesPanel.prototype._reportProfileProgress):

LayoutTests:

  • inspector/profiler/canvas2d/canvas-replay-log-grid.html:
  • inspector/profiler/heap-snapshot-inspect-dom-wrapper-expected.txt:
  • inspector/profiler/heap-snapshot-inspect-dom-wrapper.html:
  • inspector/profiler/heap-snapshot-loader.html:
  • inspector/profiler/heap-snapshot-test.js:

(initialize_HeapSnapshotTest.):
(initialize_HeapSnapshotTest):

  • inspector/profiler/profiler-test.js:

(initialize_ProfilerTest.InspectorTest.startProfilerTest.startTest):
(initialize_ProfilerTest.InspectorTest.startProfilerTest):

2:40 AM Changeset in webkit [143899] by kadam@inf.u-szeged.hu
  • 4 edits
    4 deletes in trunk/LayoutTests

[Qt] Unreviewed gardening. Skipped failing tests.

  • platform/qt-5.0-wk2/fast/forms/select-baseline-expected.png: Removed.
  • platform/qt-5.0-wk2/fast/forms/select-baseline-expected.txt: Removed.
  • platform/qt-5.0/fast/forms/select-baseline-expected.png: Removed.
  • platform/qt-5.0/fast/forms/select-baseline-expected.txt: Removed.
  • platform/qt/TestExpectations:
  • platform/qt/fast/forms/select-baseline-expected.png: Update after r143836.
  • platform/qt/fast/forms/select-baseline-expected.txt: Update after r143836.
2:33 AM Changeset in webkit [143898] by jochen@chromium.org
  • 3 edits in trunk/Tools

[chromium] move WebRuntimeFeatures configuration to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=110712

Reviewed by Nico Weber.

  • DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp:

(WebTestRunner::TestInterfaces::TestInterfaces):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

2:04 AM Changeset in webkit [143897] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
1:56 AM Changeset in webkit [143896] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskip tests after r143800.

  • platform/qt/TestExpectations:
1:48 AM Changeset in webkit [143895] by thakis@chromium.org
  • 2 edits in trunk/Tools

Make ninja the default build system for build-webkit --chromium on windows
https://bugs.webkit.org/show_bug.cgi?id=110731

Reviewed by Jochen Eisinger.

With http://crbug.com/169945 fixed, this should now work.

  • Scripts/update-webkit-chromium:
1:48 AM Changeset in webkit [143894] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed fix of type annotation for this._liveLocations.

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode):

1:42 AM Changeset in webkit [143893] by tkent@chromium.org
  • 6 edits in trunk/Source/WebCore

Fix style errors in WebCore/editing/{htmlediting,markup,visible_units}.*
https://bugs.webkit.org/show_bug.cgi?id=110721

Reviewed by Ryosuke Niwa.

No new tests. This should not make any bahevior changes.

  • editing/htmlediting.cpp:

(WebCore::lowestEditableAncestor):
(WebCore):
(WebCore::isSpecialElement):
(WebCore::enclosingListChild):
(WebCore::canMergeLists):
(WebCore::tabSpanNode):
(WebCore::isNodeRendered):
(WebCore::caretMaxOffset):

  • editing/htmlediting.h:

(WebCore):

  • editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::appendElement):

  • editing/markup.h:

(WebCore):

  • editing/visible_units.cpp:

(WebCore::previousRootInlineBoxCandidatePosition):
(WebCore::nextRootInlineBoxCandidatePosition):
(WebCore::wordBreakIteratorForMinOffsetBoundary):
(WebCore::previousBoundary):
(WebCore::endOfLine):
(WebCore::previousLinePosition):
(WebCore::nextLinePosition):
(WebCore::nextSentencePositionBoundary):
(WebCore::startOfParagraph):
(WebCore::endOfParagraph):

1:41 AM Changeset in webkit [143892] by zandobersek@gmail.com
  • 3 edits
    2 deletes in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Giving up on individually listing slow sputnik tests, replaced all

the expectations with a single one covering the whole directory in both release and debug builds.
Also removing duplicate expectations and adding an expectation for tests that require custom elements support.

  • platform/gtk/editing/selection/extend-by-sentence-001-expected.txt: Rebaselining.
  • platform/gtk/media/audio-controls-rendering-expected.png: Removed. Requires a new baseline.
  • platform/gtk/media/audio-controls-rendering-expected.txt: Removed. Ditto.
1:29 AM Changeset in webkit [143891] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
1:11 AM Changeset in webkit [143890] by keishi@webkit.org
  • 6 edits
    3 copies in branches/chromium/1410

Merge 142572

REGRESSION (r140778):Calendar Picker buttons are wrong when rtl
https://bugs.webkit.org/show_bug.cgi?id=109158

Reviewed by Kent Tamura.

Source/WebCore:

The calendar picker button's icon and position where wrong when rtl.

Test: platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar.html

  • Resources/pagepopups/calendarPicker.css:

(.year-month-button-left .year-month-button): Use -webkit-margin-end so the margin is applide to the right side.
(.year-month-button-right .year-month-button): Use -webkit-margin-start so the margin is applide to the right side.
(.today-clear-area .today-button): Use -webkit-margin-end so the margin is applide to the right side.

  • Resources/pagepopups/calendarPicker.js:

(YearMonthController.prototype._attachLeftButtonsTo): Flip icon image when rtl.
(YearMonthController.prototype._attachRightButtonsTo): Ditto.

LayoutTests:

  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-required-ar-expected.png:
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar-expected.txt: Added.
  • platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar.html: Added.

TBR=keishi@webkit.org

1:10 AM Changeset in webkit [143889] by loislo@chromium.org
  • 7 edits in trunk

Web Inspector: Improve speed of Linkifier.reset operation.
https://bugs.webkit.org/show_bug.cgi?id=110696

Reviewed by Yury Semikhatsky.

Linkifier calls Location.dispose N times and each dispose method calls Array.remove
which scans entire array and does splice. So the complexity of Linkifier.reset
is O(N2). I replaced the arrays with Set and got O(N) complexity.

Drive by fix: The identifier generator was slightly changed.
Now it produces identifiers that couldn't be converted into a number.
So the engine will never convert Set/Map object into an array.

Source/WebCore:

  • inspector/front-end/Script.js:

(WebInspector.Script):
(WebInspector.Script.prototype.updateLocations):
(WebInspector.Script.prototype.createLiveLocation):

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode):
(WebInspector.UISourceCode.prototype.addLiveLocation):
(WebInspector.UISourceCode.prototype.updateLiveLocations):

  • inspector/front-end/utilities.js:

LayoutTests:

  • inspector/debugger/callstack-placards-discarded.html:
  • inspector/debugger/linkifier.html:
12:49 AM WebKitGTK/2.0.x edited by sergio@webkit.org
(diff)
12:09 AM Changeset in webkit [143888] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] ChromeClientBlackBerry: fix variable names
https://bugs.webkit.org/show_bug.cgi?id=110562

Patch by Alberto Garcia <albgarcia@rim.com> on 2013-02-25
Reviewed by Rob Buis.

manager was incorrectly renamed back to tracker in r138696:
http://trac.webkit.org/changeset/138696/trunk/Source/WebKit/blackberry/WebCoreSupport/ChromeClientBlackBerry.cpp

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::exceededDatabaseQuota):

Feb 24, 2013:

11:35 PM Changeset in webkit [143887] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] GeolocationClientBlackBerry: add missing headers
https://bugs.webkit.org/show_bug.cgi?id=110563

Patch by Alberto Garcia <albgarcia@rim.com> on 2013-02-24
Reviewed by Benjamin Poulain.

Frame.h and SecurityOrigin.h are necessary since r136969.
GeolocationPosition.h since r132360.

  • WebCoreSupport/GeolocationClientBlackBerry.cpp:
11:27 PM Changeset in webkit [143886] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Unreviewed, rolling out r143797.
http://trac.webkit.org/changeset/143797
https://bugs.webkit.org/show_bug.cgi?id=110724

Causes assertion failures in multiple tests. (Requested by
vsevik on #webkit).

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

  • dom/DocumentParser.h:

(DocumentParser):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):
(WebCore::HTMLDocumentParser::shouldUseThreading):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::replaceDocument):

11:00 PM Changeset in webkit [143885] by morrita@google.com
  • 13 edits in trunk/Source/WebCore

Rollout r143556, it regressed html5-full-render perf.
https://bugs.webkit.org/show_bug.cgi?id=110719

Unreviewed rollout.

  • css/BasicShapeFunctions.cpp:

(WebCore::convertToLength):
(WebCore::basicShapeForValue):

  • css/BasicShapeFunctions.h:

(WebCore):

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::gradientWithStylesResolved):

  • css/CSSGradientValue.h:

(CSSGradientValue):

  • css/CSSToStyleMap.cpp:

(WebCore::CSSToStyleMap::style):
(WebCore::CSSToStyleMap::rootElementStyle):
(WebCore::CSSToStyleMap::useSVGZoomRules):
(WebCore::CSSToStyleMap::styleImage):

  • css/CSSToStyleMap.h:

(WebCore):
(WebCore::CSSToStyleMap::CSSToStyleMap):
(CSSToStyleMap):

  • css/SVGCSSStyleSelector.cpp:

(WebCore::StyleResolver::applySVGProperty):

  • css/StyleBuilder.cpp:

(WebCore::ApplyPropertyExpanding::applyInheritValue):
(WebCore::ApplyPropertyExpanding::applyInitialValue):
(WebCore::ApplyPropertyExpanding::applyValue):
(WebCore::ApplyPropertyDefaultBase::applyInheritValue):
(WebCore::ApplyPropertyDefaultBase::applyInitialValue):
(WebCore::ApplyPropertyDefaultBase::applyValue):
(WebCore::ApplyPropertyDefault::applyValue):
(WebCore::ApplyPropertyNumber::applyValue):
(WebCore::ApplyPropertyStyleImage::applyValue):
(WebCore::ApplyPropertyAuto::applyInheritValue):
(WebCore::ApplyPropertyAuto::applyInitialValue):
(WebCore::ApplyPropertyAuto::applyValue):
(WebCore::ApplyPropertyClip::convertToLength):
(WebCore::ApplyPropertyClip::applyInheritValue):
(WebCore::ApplyPropertyClip::applyInitialValue):
(WebCore::ApplyPropertyClip::applyValue):
(WebCore::ApplyPropertyColor::applyInheritValue):
(WebCore::ApplyPropertyColor::applyInitialValue):
(WebCore::ApplyPropertyColor::applyValue):
(WebCore::ApplyPropertyColor::applyColorValue):
(WebCore::ApplyPropertyDirection::applyValue):
(WebCore::ApplyPropertyLength::applyValue):
(WebCore::ApplyPropertyString::applyValue):
(WebCore::ApplyPropertyBorderRadius::applyValue):
(WebCore::ApplyPropertyFillLayer::applyInheritValue):
(WebCore::ApplyPropertyFillLayer::applyInitialValue):
(WebCore::ApplyPropertyFillLayer::applyValue):
(WebCore::ApplyPropertyComputeLength::applyValue):
(WebCore::ApplyPropertyFont::applyInheritValue):
(WebCore::ApplyPropertyFont::applyInitialValue):
(WebCore::ApplyPropertyFont::applyValue):
(WebCore::ApplyPropertyFontSize::applyInheritValue):
(WebCore::ApplyPropertyFontSize::applyInitialValue):
(WebCore::ApplyPropertyFontSize::applyValue):
(WebCore::ApplyPropertyFontWeight::applyValue):
(WebCore::ApplyPropertyFontVariantLigatures::applyInheritValue):
(WebCore::ApplyPropertyFontVariantLigatures::applyInitialValue):
(WebCore::ApplyPropertyFontVariantLigatures::applyValue):
(WebCore::ApplyPropertyBorderImage::applyValue):
(WebCore::ApplyPropertyBorderImageModifier::applyInheritValue):
(WebCore::ApplyPropertyBorderImageModifier::applyInitialValue):
(WebCore::ApplyPropertyBorderImageModifier::applyValue):
(WebCore::ApplyPropertyBorderImageSource::applyValue):
(WebCore::ApplyPropertyCounter::emptyFunction):
(WebCore::ApplyPropertyCounter::applyInheritValue):
(WebCore::ApplyPropertyCounter::applyValue):
(WebCore::ApplyPropertyCursor::applyInheritValue):
(WebCore::ApplyPropertyCursor::applyInitialValue):
(WebCore::ApplyPropertyCursor::applyValue):
(WebCore::ApplyPropertyTextAlign::applyValue):
(WebCore::ApplyPropertyTextDecoration::applyValue):
(WebCore::ApplyPropertyLineHeight::applyValue):
(WebCore::ApplyPropertyPageSize::applyInheritValue):
(WebCore::ApplyPropertyPageSize::applyInitialValue):
(WebCore::ApplyPropertyPageSize::applyValue):
(WebCore::ApplyPropertyTextEmphasisStyle::applyInheritValue):
(WebCore::ApplyPropertyTextEmphasisStyle::applyInitialValue):
(WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
(WebCore::ApplyPropertyAnimation::map):
(WebCore::ApplyPropertyAnimation::applyInheritValue):
(WebCore::ApplyPropertyAnimation::applyInitialValue):
(WebCore::ApplyPropertyAnimation::applyValue):
(WebCore::ApplyPropertyOutlineStyle::applyInheritValue):
(WebCore::ApplyPropertyOutlineStyle::applyInitialValue):
(WebCore::ApplyPropertyOutlineStyle::applyValue):
(WebCore::ApplyPropertyResize::applyValue):
(WebCore::ApplyPropertyVerticalAlign::applyValue):
(WebCore::ApplyPropertyAspectRatio::applyInheritValue):
(WebCore::ApplyPropertyAspectRatio::applyInitialValue):
(WebCore::ApplyPropertyAspectRatio::applyValue):
(WebCore::ApplyPropertyZoom::resetEffectiveZoom):
(WebCore::ApplyPropertyZoom::applyInheritValue):
(WebCore::ApplyPropertyZoom::applyInitialValue):
(WebCore::ApplyPropertyZoom::applyValue):
(WebCore::ApplyPropertyDisplay::isValidDisplayValue):
(WebCore::ApplyPropertyDisplay::applyInheritValue):
(WebCore::ApplyPropertyDisplay::applyInitialValue):
(WebCore::ApplyPropertyDisplay::applyValue):
(WebCore::ApplyPropertyClipPath::applyValue):
(WebCore::ApplyPropertyExclusionShape::applyValue):
(WebCore::ApplyPropertyImageResolution::applyInheritValue):
(WebCore::ApplyPropertyImageResolution::applyInitialValue):
(WebCore::ApplyPropertyImageResolution::applyValue):

  • css/StyleBuilder.h:

(WebCore):
(PropertyHandler):
(WebCore::PropertyHandler::applyInheritValue):
(WebCore::PropertyHandler::applyInitialValue):
(WebCore::PropertyHandler::applyValue):

  • css/StyleResolver.cpp:

(WebCore):
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::collectMatchingRules):
(WebCore::StyleResolver::collectMatchingRulesForRegion):
(WebCore::StyleResolver::sortAndTransferMatchedRules):
(WebCore::StyleResolver::matchScopedAuthorRules):
(WebCore::StyleResolver::styleSharingCandidateMatchesHostRules):
(WebCore::StyleResolver::matchHostRules):
(WebCore::StyleResolver::matchAuthorRules):
(WebCore::StyleResolver::matchUserRules):
(WebCore::StyleResolver::matchUARules):
(WebCore::StyleResolver::collectMatchingRulesForList):
(WebCore::StyleResolver::sortMatchedRules):
(WebCore::StyleResolver::matchAllRules):
(WebCore::StyleResolver::initElement):
(WebCore::StyleResolver::styleSharingCandidateMatchesRuleSet):
(WebCore::StyleResolver::canShareStyleWithControl):
(WebCore::StyleResolver::sharingCandidateHasIdenticalStyleAffectingAttributes):
(WebCore::StyleResolver::canShareStyleWithElement):
(WebCore::StyleResolver::findSiblingForStyleSharing):
(WebCore::StyleResolver::locateSharedStyle):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::keyframeStylesForAnimation):
(WebCore::StyleResolver::pseudoStyleForElement):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::defaultStyleForElement):
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::StyleResolver::updateFont):
(WebCore::StyleResolver::pseudoStyleRulesForElement):
(WebCore::StyleResolver::ruleMatches):
(WebCore::StyleResolver::checkRegionSelector):
(WebCore::StyleResolver::applyProperties):
(WebCore::StyleResolver::applyMatchedProperties):
(WebCore::StyleResolver::isLeftPage):
(WebCore::StyleResolver::applyPropertyToStyle):
(WebCore::StyleResolver::applyPropertyToCurrentStyle):
(WebCore::StyleResolver::useSVGZoomRules):
(WebCore::StyleResolver::resolveVariables):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::styleImage):
(WebCore::StyleResolver::cachedOrPendingFromValue):
(WebCore::StyleResolver::generatedOrPendingFromValue):
(WebCore::StyleResolver::setOrPendingFromValue):
(WebCore::StyleResolver::cursorOrPendingFromValue):
(WebCore::StyleResolver::checkForTextSizeAdjust):
(WebCore::StyleResolver::checkForZoomChange):
(WebCore::StyleResolver::checkForGenericFamilyChange):
(WebCore::StyleResolver::initializeFontStyle):
(WebCore::StyleResolver::setFontSize):
(WebCore::StyleResolver::colorFromPrimitiveValue):
(WebCore::StyleResolver::loadPendingSVGDocuments):
(WebCore::StyleResolver::styleShader):
(WebCore::StyleResolver::cachedOrPendingStyleShaderFromValue):
(WebCore::StyleResolver::loadPendingShaders):
(WebCore::StyleResolver::parseCustomFilterTransformParameter):
(WebCore::StyleResolver::parseCustomFilterParameter):
(WebCore::StyleResolver::parseCustomFilterParameterList):
(WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
(WebCore::StyleResolver::createCustomFilterOperation):
(WebCore::StyleResolver::createFilterOperations):
(WebCore::StyleResolver::loadPendingImage):
(WebCore::StyleResolver::loadPendingImages):
(WebCore::StyleResolver::loadPendingResources):
(WebCore::StyleResolver::reportMemoryUsage):

  • css/StyleResolver.h:

(WebCore::StyleResolver::style):
(WebCore::StyleResolver::parentStyle):
(WebCore::StyleResolver::rootElementStyle):
(WebCore::StyleResolver::element):
(WebCore::StyleResolver::hasParentNode):
(StyleResolver):
(WebCore::StyleResolver::isRightPage):
(WebCore::StyleResolver::State::State):
(WebCore::StyleResolver::State::document):
(State):
(WebCore::StyleResolver::applyPropertyToRegularStyle):
(WebCore::StyleResolver::applyPropertyToVisitedLinkStyle):
(WebCore::StyleResolver::styleMap):
(WebCore::StyleResolver::fontDescription):
(WebCore::StyleResolver::parentFontDescription):
(WebCore::StyleResolver::setFontDescription):
(WebCore::StyleResolver::setZoom):
(WebCore::StyleResolver::setEffectiveZoom):
(WebCore::StyleResolver::setTextSizeAdjust):
(WebCore::StyleResolver::setWritingMode):
(WebCore::StyleResolver::setTextOrientation):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::setFont):

7:57 PM Changeset in webkit [143884] by eric.carlson@apple.com
  • 6 edits in trunk/Source/WebCore

[Mac] cleanup MediaPlayerPrivateAVFoundation and InbandTextTrackPrivateAVF
https://bugs.webkit.org/show_bug.cgi?id=110716

Reviewed by Alexey Proskuryakov.

No new tests, no functionality changed.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::InbandTextTrackPrivateAVF): Take AVFInbandTrackParent*

instead of MediaPlayerPrivateAVFoundation*.

(WebCore::InbandTextTrackPrivateAVF::processCue): Pass new cues directly to the client.
(WebCore::InbandTextTrackPrivateAVF::disconnect): m_player -> m_owner.
(WebCore::InbandTextTrackPrivateAVF::setMode): m_player -> m_owner.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::addGenericCue): Delete, no longer needed.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h: Don't include

CachedResourceClient.h, it isn't needed.

7:38 PM Changeset in webkit [143883] by noel.gordon@gmail.com
  • 3 edits in branches/chromium/1410/Source/WebCore

Merge 143363

Update FeatureObserver on top level navigation in addition to page destruction.
https://bugs.webkit.org/show_bug.cgi?id=109874

Patch by Kassy Coan <kassycoan@chromium.org> on 2013-02-19
Reviewed by Adam Barth.

No new tests. Only effect is to histogram more frequently.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::dispatchDidCommitLoad):

  • page/FeatureObserver.cpp:

(WebCore::FeatureObserver::~FeatureObserver):
(WebCore):
(WebCore::FeatureObserver::updateMeasurements):
(WebCore::FeatureObserver::didCommitLoad):

  • page/FeatureObserver.h:

(FeatureObserver):

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12340046

6:02 PM Changeset in webkit [143882] by kihong.kwon@samsung.com
  • 6 edits in trunk

Add an ASSERT to didChangeDeviceProximity
https://bugs.webkit.org/show_bug.cgi?id=110317

Reviewed by Hajime Morrita.

Source/WebCore:

Add An ASSERT to didChangeDeviceProximity function to check range of value.

Change exist test cases.

  • Modules/proximity/DeviceProximityController.cpp:

(WebCore::DeviceProximityController::didChangeDeviceProximity):

LayoutTests:

Fix wrong test cases which are found by ASSERT insertion.

  • proximity/basic-operation-expected.txt:
  • proximity/basic-operation.html:
  • proximity/resources/event-after-navigation-new.html:
4:14 PM Changeset in webkit [143881] by ap@apple.com
  • 4 edits in trunk/Source

Clarify meaning of default default encoding localizable string
https://bugs.webkit.org/show_bug.cgi?id=110714

Reviewed by Eric Carlson.

  • English.lproj/Localizable.strings: This string is only used on Windows, and it's very confusing to everyone involved.
2:40 PM Changeset in webkit [143880] by mkwst@chromium.org
  • 9 edits
    63 adds in trunk

CSP 1.1: Experiment with 'reflected-xss' directive.
https://bugs.webkit.org/show_bug.cgi?id=104479

Reviewed by Adam Barth.

Source/WebCore:

Content Security Policy 1.1 defines a 'reflected-xss' directive that
works in much the same way as WebKit's current 'X-XSS-Protection'
header[1]. This patch implements the new directive by parsing it
inside ContentSecurityPolicy, and exposing that state to XSSAuditor.

XSSAuditor now grabs the CSP directive's state, and mixes it with the
X-XSS-Protection header's state to determine how the page should be
handled. Moreover, both headers' states are now expressed in terms of
ContentSecurityPolicy::ReflectedXSSDisposition.

[1]: https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#reflected-xss--experimental

Tests: http/tests/security/contentSecurityPolicy/1.1/reflected-xss-allow.html

http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-allow.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-block.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-filter.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-invalid.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-unset.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-allow.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-block.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-filter.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-invalid.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-unset.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-allow.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-block.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-filter.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-invalid.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-unset.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-allow.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-block.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-filter.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-invalid.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-unset.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-allow.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-block.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-filter.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-invalid.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-unset.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-block.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-empty.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-filter.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-invalid.html
http/tests/security/contentSecurityPolicy/1.1/reflected-xss-parsing.html

  • html/parser/XSSAuditor.cpp:

(WebCore::combineXSSProtectionHeaderAndCSP):

Given both headers' states, return the state which the XSSAuditor
should use when parsing a page. Blocking overrides filtering, which
overrides disabling.

(WebCore):
(WebCore::XSSAuditor::init):

Process the 'X-XSS-Protection' header before grabbing the CSP
header's state. Both are passed into the new
combineXSSProtectionHeaderAndCSP method to generate the final
state that ought to be used.

(WebCore::XSSAuditor::XSSAuditor):
(WebCore::XSSAuditor::filterToken):

  • html/parser/XSSAuditor.h:

Switch to ContentSecurityPolicy::ReflectedXSSDisposition internally
in XSSAuditor.

  • page/ContentSecurityPolicy.cpp:

(WebCore::CSPDirectiveList::reflectedXSSDisposition):

Enum defining the possible state of the 'reflected-xss' CSP directive.

(CSPDirectiveList):
(WebCore::CSPDirectiveList::CSPDirectiveList):
(WebCore::CSPDirectiveList::parseReflectedXSS):

Given a 'reflected-xss' directive's value, set the
ReflectedXSSDisposition into a new property on the CSPDirectiveList.

(WebCore):
(WebCore::CSPDirectiveList::addDirective):

Accept 'reflected-xss' as a valid directive if we're in
experimental mode.

(WebCore::ContentSecurityPolicy::reflectedXSSDisposition):

Expose the directive's state via the public API.

(WebCore::ContentSecurityPolicy::reportInvalidReflectedXSS):

Generate console errors when invalid reflected-xss directive values
are encounted during parsing.

  • page/ContentSecurityPolicy.h:
  • platform/network/HTTPParsers.cpp:

(WebCore::parseXSSProtectionHeader):

  • platform/network/HTTPParsers.h:

(WebCore):

Start using ContentSecurityPolicy::ReflectedXSSDisposition rather
than the XSSProtectionDisposition enum.

LayoutTests:

  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-allow-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-allow.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-allow-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-allow.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-block-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-block.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-filter-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-filter.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-invalid-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-invalid.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-unset-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-unset.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-allow-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-allow.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-block-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-block.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-filter-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-filter.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-invalid-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-invalid.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-unset-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-unset.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-allow-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-allow.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-block-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-block.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-filter-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-filter.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-invalid-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-invalid.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-unset-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-unset.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-allow-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-allow.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-block-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-block.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-filter-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-filter.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-invalid-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-invalid.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-unset-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-unset.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-allow-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-allow.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-block-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-block.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-filter-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-filter.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-invalid-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-invalid.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-unset-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-unset.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-block-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-block.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-empty-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-empty.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-filter-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-filter.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-invalid-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-invalid.html: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-parsing-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/1.1/reflected-xss-parsing.html: Added.
  • http/tests/security/contentSecurityPolicy/resources/reflected-xss-and-xss-protection.js: Added.

(testMixedHeader):
(frameLoaded):
(frameErrored):

  • http/tests/security/xssAuditor/resources/echo-intertag.pl:

Added the ability to send an 'X-WebKit-CSP' header to test 'reflected-xss' behavior.

1:11 PM Changeset in webkit [143879] by commit-queue@webkit.org
  • 2 edits in trunk

[EFL] Rename ENABLE_REGIONS to ENABLE_CSS_REGIONS
https://bugs.webkit.org/show_bug.cgi?id=110699

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-02-24
Reviewed by Andreas Kling.

Fix a typo. ENABLE_REGIONS is called ENABLE_CSS_REGIONS
throughout the project.

  • Source/cmake/OptionsEfl.cmake:
12:33 PM Changeset in webkit [143878] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit/win

REGRESSION(r143837): Broke build on AppleWin http://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29.
https://bugs.webkit.org/show_bug.cgi?id=110713

Unreviewed.

  • WebKit.vcproj/WebKitExports.def.in: Add the missing symbol after r143837.
12:31 PM Changeset in webkit [143877] by zandobersek@gmail.com
  • 16 edits in trunk/Source/WebCore

Updating GObject bindings baselines after r143863.

Unreviewed.

  • bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
11:51 AM Changeset in webkit [143876] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.8/Source/WebCore

Merged r143656. 13281269

11:01 AM Changeset in webkit [143875] by zandobersek@gmail.com
  • 5 edits
    1 add
    1 delete in trunk

[GTK] Stop generating UserAgentGtk.h
https://bugs.webkit.org/show_bug.cgi?id=110582

Reviewed by Martin Robinson.

.:

  • configure.ac: Provide the USER_AGENT_GTK_(MAJOR|MINOR)_VERSION defines in the autotoolsconfig.h

header, containing the user agent versions that are to be used in the user agent string. The
WEBKIT_USER_AGENT_(MAJOR|MINOR)_VERSION name is avoided as the same defines are specified in the
webkitversion.h API header (but are not accessible from the WebCore layer). The UserAgentGtk.h
header is also not generated anymore from the input file.

Source/WebCore:

No new tests - no new functionality.

  • GNUmakefile.list.am: Move the UserAgentGtk.h build target from the derived sources list to

the list of the WebCore platform sources.

  • platform/gtk/UserAgentGtk.cpp:

(WebCore::standardUserAgent): Rename WEBKIT_USER_AGENT_(MAJOR|MINOR)_VERSION to
USER_AGENT_GTK_(MAJOR|MINOR)_VERSION.

  • platform/gtk/UserAgentGtk.h: Renamed from Source/WebCore/platform/gtk/UserAgentGtk.h.in.

Same as the input file expect for removed WEBKIT_USER_AGENT_(MAJOR|MINOR)_VERSION defines that
are now replaced by using the USER_AGENT_GTK_(MAJOR|MINOR)_VERSION defines placed in autotoolsconfig.h.

10:19 AM Changeset in webkit [143874] by Lucas Forschler
  • 2 edits in tags/Safari-537.31.8/Source/WebCore

Merged r143825. <rdar://problem/13258596>

10:16 AM Changeset in webkit [143873] by Lucas Forschler
  • 11 edits
    4 copies in tags/Safari-537.31.8

Merged r143821. <rdar://problem/12944761>

10:13 AM Changeset in webkit [143872] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.8/Source

Merged r143816. <rdar://problem/13096456>

10:09 AM Changeset in webkit [143871] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.8/Source

Versioning.

10:06 AM Changeset in webkit [143870] by Lucas Forschler
  • 1 copy in tags/Safari-537.31.8

New Tag.

9:42 AM Changeset in webkit [143869] by kov@webkit.org
  • 34 edits in trunk

[GTK] GTK+ 2 build broken since GTK_API_VERSION_2 moved to autoconfig.h
https://bugs.webkit.org/show_bug.cgi?id=110702

Reviewed by Martin Robinson.

Source/WebCore:

No tests. Build fix, no behaviour change.

  • platform/gtk/GtkVersioning.h: include the autotoolsconfig.h header,

which contains the GTK_API_VERSION_2 define now.

Source/WebKit/gtk:

  • tests/testapplicationcache.c: include autotoolsconfig.h.
  • tests/testatk.c: ditto.
  • tests/testatkroles.c: ditto.
  • tests/testcontextmenu.c: ditto.
  • tests/testcopyandpaste.c: ditto.
  • tests/testdomdocument.c: ditto.
  • tests/testdomdomwindow.c: ditto.
  • tests/testdomnode.c: ditto.
  • tests/testdownload.c: ditto.
  • tests/testfavicondatabase.c: ditto.
  • tests/testglobals.c: ditto.
  • tests/testhittestresult.c: ditto.
  • tests/testhttpbackend.c: ditto.
  • tests/testkeyevents.c: ditto.
  • tests/testloading.c: ditto.
  • tests/testmimehandling.c: ditto.
  • tests/testnetworkrequest.c: ditto.
  • tests/testnetworkresponse.c: ditto.
  • tests/testwebbackforwardlist.c: ditto.
  • tests/testwebdatasource.c: ditto.
  • tests/testwebframe.c: ditto.
  • tests/testwebhistoryitem.c: ditto.
  • tests/testwebinspector.c: ditto.
  • tests/testwebplugindatabase.c: ditto.
  • tests/testwebresource.c: ditto.
  • tests/testwebsettings.c: ditto.
  • tests/testwebview.c: ditto.
  • tests/testwindow.c: ditto.

Tools:

  • GtkLauncher/main.c: include autotoolsconfig.h.
  • Scripts/webkitpy/style/checker.py: make GtkLauncher/main.c exempt of

the include ordering check, since it uses autotoolsconfig.h which needs to
come first.

8:45 AM Changeset in webkit [143868] by akling@apple.com
  • 8 edits in trunk/Source

StyledElement: Don't expose a mutable direct interface to the inline style.
<http://webkit.org/b/110711>

Reviewed by Antti Koivisto.

Source/WebCore:

Remove the ability to grab at a mutable StylePropertySet* for a StyledElement's inline style
from the outside world. It's now private and returns MutableStylePropertySet* for future convenience.

Three paths to changing the inline style remain:

  • Setting the "style" attribute
  • Via CSSOM (element.style)
  • setInlineStyleProperty/removeInlineStyleProperty helpers
  • dom/StyledElement.cpp:

(WebCore::StyledElement::ensureMutableInlineStyle):

  • dom/StyledElement.h:

(StyledElement):

  • editing/ApplyStyleCommand.cpp:

(WebCore::copyStyleOrCreateEmpty):
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::handleStyleSpans):

  • html/canvas/CanvasStyle.cpp:

(WebCore::currentColor):

Source/WebKit/qt:

QWebElement::styleProperty() is a read-only method, so rewrite it to use StyledElement::inlineStyle().

  • Api/qwebelement.cpp:

(QWebElement::styleProperty):

8:42 AM Changeset in webkit [143867] by keishi@webkit.org
  • 3 edits
    2 adds in trunk

Add methods to date types for new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110454

Reviewed by Kent Tamura.

Source/WebCore:

Adding some methods to date types as part of the calendar picker redesign (Bug 109439).

Test: platform/chromium/fast/forms/calendar-picker/calendar-picker-date-types.html

  • Resources/pagepopups/calendarPicker.js:

(createUTCDate):
(DateType): Base class for Day, Week and Month.
(Day): Simplified constructor to only accept year, month, date.
(Day.createFromValue): Creates a new Day from a value.
(Day.createFromDate): Throw an error if the given date is invalid.
(Day.createFromDay):
(Day.prototype.equals): Accept non Day objects.
(Day.prototype.previous): Modified to take an offset value.
(Day.prototype.next): Ditto.
(Day.prototype.firstDay): Returns the first day in the range. For Day's case, returns itself.
(Day.prototype.middleDay): Returns the middle day in the range. For Day's case, returns itself.
(Day.prototype.lastDay): Returns the middle day in the range. For Day's case, returns itself.
(Day.prototype.valueOf):
(Day.prototype.weekDay): Returns the week day.
(Week): Simplified constructor to only accept year, month, date.
(Week.createFromValue):
(Week.createFromDate):
(Week.createFromDay):
(Week.weekOneStartDateForYear):
(Week.weekOneStartDayForYear):
(Week._numberOfWeeksSinceDate):
(Week.prototype.equals):
(Week.prototype.previous):
(Week.prototype.next):
(Week.prototype.firstDay): Returns the first day in the week.
(Week.prototype.middleDay): Returns the the day for Thursday.
(Week.prototype.lastDay): Returns the last day in the week.
(Week.prototype.valueOf):
(Month):
(Month.createFromValue):
(Month.createFromDate):
(Month.createFromDay):
(Month.prototype.containsDay):
(Month.prototype.equals):
(Month.prototype.previous):
(Month.prototype.next):
(Month.prototype.firstDay): Returns the first day in the month.
(Month.prototype.middleDay): Returns the middle day in the month.
(Month.prototype.lastDay): Returns the last day in the month.
(Month.prototype.valueOf):
(Month.prototype.toLocaleString): Moved location.
(Month.prototype.toShortLocaleString): Returns the month string in short format.
(CalendarPicker): Use createFromValue.
(YearMonthController.prototype.setMonth): Ditto.
(YearMonthController.prototype.moveRelatively): Ditto.

LayoutTests:

  • platform/chromium/fast/forms/calendar-picker/calendar-picker-date-types-expected.txt: Added.
  • platform/chromium/fast/forms/calendar-picker/calendar-picker-date-types.html: Added. Unit tests for date types.
7:23 AM Changeset in webkit [143866] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] FatFingers: move rectForPoint() from HitTestResult to HitTestLocation
https://bugs.webkit.org/show_bug.cgi?id=110570

Patch by Alberto Garcia <albgarcia@rim.com> on 2013-02-24
Reviewed by Allan Sandfeld Jensen.

HitTestResult is no longer a HitTestLocation:
http://trac.webkit.org/changeset/135710/trunk/Source/WebCore/rendering/HitTestResult.h

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::fingerRectForPoint):

5:21 AM Changeset in webkit [143865] by morrita@google.com
  • 23 edits
    3 copies
    20 adds in trunk

[Custom Elements] Implement bare-bone document.register()
https://bugs.webkit.org/show_bug.cgi?id=100229

Reviewed by Adam Barth.

Source/WebCore:

This change implements a prefixed version of document.register(), with minimal feature support.

  • The feature is guarded by ENABLE(CUSTOM_ELEMENTS) and RuntimeEnabledFeatures::customDOMElementsEnabled().
  • This bare-bone version only recognizes "name" and "prototype" parameters. It doesn't support default value of "prototype" parameter.
  • Currently only V8 is supported. JSC binding needs its own binding implementation.

Major new classes under dom/:

The dom module gets two new classes:

  • CustomElementConstructor: A return value of document.register() which holds the custom element definition.
  • CustomElementRegistry: A collection of CustomElementConstructor objects. CustomElementRegistry instance is created per Document and is owned by the Document.

CustomElementConstructor knows the definition of each custom
element, which is registered by document.register(). The name and
other options are held by this object. CustomElementRegistry owns a set
of the registered constructors. The registry guarantees invariants
like validity and uniqueness of the element names.

A change on make_names.pl

This change tweaks make_names.pl (or generated HTMLElementFactory)
to hook the creations of unknown elements. Some of element names
which come to the fallback path can be one of registered custom
element.

[V8WrapAsFunction] extended attribute:

The document.register() API returns a constructor
function. However, the V8 binding currently doesn't support it. To
make it possible, this change introduces "V8WrapAsFunction"
extended attribute for annotating CustomElementConstructor IDL
interface.

V8WrapAsFunction wraps the annotated interface with a JavaScript
function, which calls the original object as a function, or as a
constructor depends on the context.

With this wrapper function, there are two levels of indirection
between native C++ object and author-visible JS function:

[JS Adaptor Function] <-(hidden property)-> [JS Wrapper Object] -(internal field)-> [C++ Native object]

The code generator generates the binding code which deals with
this indirection. Also, there is a set of helper functions in
V8AdaptorFunction.h/cpp which takes care of this indirection.
V8DOMWrapper.cpp/h works as a facade for these APIs and is used from
the generated code.

This redundancy comes from limitations of both V8 bindings and V8
embedding API. See bug 108138 for details.

V8HTMLCustomElement

Unlike built-in HTML elements, any custom element has no
corresponding C++ class. Instead, document.register() should allow
passing a prototype object for the elements being registered.

V8HTMLCustomElement handles this lack of native class. It behaves
like a native side proxy of non-native HTMLElement subclasses. It
connects each custom element to an appropriate native element,
which is HTMLElement at this time. This restriction will be
relaxed later. See Bug 110436 for details.

Custom DOM elements and multiple worlds

In this patch, custom element registration and instantiation is not allowed
in non-main world and document.register() API just fails there.

Reviewed by Adam Barth.

Tests: fast/dom/custom/document-register-basic.html

fast/dom/custom/document-register-reentrant-null-constructor.html
fast/dom/custom/document-register-reentrant-returning-fake.html
fast/dom/custom/document-register-reentrant-throwing-constructor.html

  • DerivedSources.make:
  • WebCore.gypi:
  • bindings/generic/RuntimeEnabledFeatures.cpp:
  • bindings/generic/RuntimeEnabledFeatures.h:

(RuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::customDOMElementsEnabled):
(WebCore::RuntimeEnabledFeatures::setCustomDOMElements):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/v8/CustomElementHelpers.cpp: Added.

(WebCore::CustomElementHelpers::initializeConstructorWrapper):
(WebCore::hasNoBuiltinsInPrototype):
(WebCore::CustomElementHelpers::isValidPrototypeParameter):
(WebCore::CustomElementHelpers::isFeatureAllowed):

  • bindings/v8/CustomElementHelpers.h: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.

(CustomElementHelpers):

  • bindings/v8/V8AdaptorFunction.cpp: Added.

(WebCore::V8AdaptorFunction::getTemplate):
(WebCore::V8AdaptorFunction::configureTemplate):
(WebCore::V8AdaptorFunction::invocationCallback):
(WebCore::V8AdaptorFunction::wrap):

  • bindings/v8/V8AdaptorFunction.h: Added.

(V8AdaptorFunction):
(WebCore::V8AdaptorFunction::unwrap):
(WebCore::V8AdaptorFunction::get):

  • bindings/v8/V8DOMConfiguration.cpp:

(WebCore::V8DOMConfiguration::configureTemplate):

  • bindings/v8/V8DOMWrapper.cpp:

(WebCore::V8DOMWrapper::toFunction):
(WebCore::V8DOMWrapper::fromFunction):

  • bindings/v8/V8DOMWrapper.h:

(V8DOMWrapper):

  • bindings/v8/V8HTMLCustomElement.cpp: Added.

(WebCore::V8HTMLCustomElement::createWrapper):

  • bindings/v8/V8HTMLCustomElement.h: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.

(V8HTMLCustomElement):
(WebCore::V8HTMLCustomElement::toV8):
(WebCore::HTMLCustomElement::toV8):

  • bindings/v8/V8HiddenPropertyName.h:
  • bindings/v8/custom/V8CustomElementConstructorCustom.cpp: Added.

(WebCore::V8CustomElementConstructor::callAsFunctionCallback):

  • dom/CustomElementConstructor.cpp: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.

(WebCore::CustomElementConstructor::create):
(WebCore::CustomElementConstructor::CustomElementConstructor):
(WebCore::CustomElementConstructor::~CustomElementConstructor):
(WebCore::CustomElementConstructor::createElement):

  • dom/CustomElementConstructor.h: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.

(CustomElementConstructor):
(WebCore::CustomElementConstructor::document):
(WebCore::CustomElementConstructor::tagName):
(WebCore::CustomElementConstructor::name):

  • dom/CustomElementConstructor.idl: Added.
  • dom/CustomElementRegistry.cpp: Added.

(WebCore::CustomElementRegistry::CustomElementRegistry):
(WebCore::CustomElementRegistry::~CustomElementRegistry):
(WebCore::CustomElementRegistry::constructorOf):
(WebCore::CustomElementRegistry::isValidName):
(WebCore::CustomElementRegistry::registerElement):
(WebCore::CustomElementRegistry::find):
(WebCore::CustomElementRegistry::createElement):
(WebCore::CustomElementRegistry::document):

  • dom/CustomElementRegistry.h: Added.

(CustomElementRegistry):

  • dom/Document.cpp:

(WebCore::Document::removedLastRef):
(WebCore::Document::registerElement):
(WebCore::Document::registry):

  • dom/Document.h:

(Document):

  • dom/make_names.pl:

(printWrapperFactoryCppFile):

  • html/HTMLDocument.idl:

Source/WebKit/chromium:

Added enableCustomDOMElements flag.

  • features.gypi:
  • public/WebRuntimeFeatures.h:

(WebRuntimeFeatures):

  • src/WebRuntimeFeatures.cpp:

(WebKit::WebRuntimeFeatures::enableCustomDOMElements):
(WebKit):
(WebKit::WebRuntimeFeatures::isCustomDOMElementsEnabled):

Tools:

Added enableCustomDOMElements flag.

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

  • fast/dom/custom/document-register-basic-expected.txt: Added.
  • fast/dom/custom/document-register-basic.html: Added.
  • fast/dom/custom/document-register-reentrant-null-constructor-expected.txt: Added.
  • fast/dom/custom/document-register-reentrant-null-constructor.html: Added.
  • fast/dom/custom/document-register-reentrant-returning-fake-expected.txt: Added.
  • fast/dom/custom/document-register-reentrant-returning-fake.html: Added.
  • fast/dom/custom/document-register-reentrant-throwing-constructor-expected.txt: Added.
  • fast/dom/custom/document-register-reentrant-throwing-constructor.html: Added.
  • fast/dom/custom/resources/document-register-fuzz.js: Added.
  • platform/mac/TestExpectations:
5:18 AM Changeset in webkit [143864] by eustas@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Timeline] Shrink CPU bars to make it easier to see frame information popup.
https://bugs.webkit.org/show_bug.cgi?id=110561

Reviewed by Pavel Feldman.

Area that causes frame information popup is overly "shaded" by CPU bars.

  • inspector/front-end/timelinePanel.css:

(.timeline-cpu-bars .timeline-graph-bar): Reduce height and opacity.

5:01 AM Changeset in webkit [143863] by akling@apple.com
  • 26 edits
    3 copies in trunk/Source

Reduce include graph of JSDOMBinding.h
<http://webkit.org/b/110709>

Reviewed by Antti Koivisto.

Source/WebCore:

Move WebCore::root(Foo*) to the custom JSFooCustom.h headers.
This reduces the number of headers pulled in by JSDOMBinding.h.

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSRuleCustom.cpp:
  • bindings/js/JSCSSRuleCustom.h: Added.

(WebCore::root):

  • bindings/js/JSCSSRuleListCustom.cpp:
  • bindings/js/JSCSSStyleDeclarationCustom.h:

(WebCore::root):

  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSMediaListCustom.h: Added.

(WebCore::root):

  • bindings/js/JSMutationObserverCustom.cpp:
  • bindings/js/JSNodeCustom.h:

(WebCore::root):

  • bindings/js/JSSVGElementInstanceCustom.cpp:
  • bindings/js/JSStyleSheetCustom.h: Added.

(WebCore::root):

  • bindings/js/JSTextTrackCustom.h:
  • bindings/js/JSTextTrackListCustom.cpp:
  • bindings/js/JSXPathResultCustom.cpp:
  • bindings/js/SerializedScriptValue.cpp:
  • bindings/scripts/CodeGeneratorGObject.pm:

(Generate):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/CodeGeneratorObjC.pm:

(AddIncludesForType):

  • css/CSSRule.idl:
  • css/CSSStyleDeclaration.idl:
  • css/MediaList.idl:
  • css/StyleSheet.idl:
  • editing/mac/EditorMac.mm:

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

Source/WebKit2:

  • Shared/WebRenderObject.cpp:

(WebKit::WebRenderObject::WebRenderObject):

  • WebProcess/Storage/StorageAreaProxy.cpp:
12:39 AM Changeset in webkit [143862] by benjamin@webkit.org
  • 2 edits in trunk/LayoutTests

Add timeout to the Chromium expectation of state-url-sets-links-visited.html

Unreviewed.

  • platform/chromium/TestExpectations: Since Chromium's DRT does not support

computedStyleIncludingVisitedInfo, the test can also timeout as it will
raise an exception before invoking finishJSTest.

Feb 23, 2013:

11:29 PM Changeset in webkit [143861] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

ResourceRequestBase unnecessarily updates when nothing changes
https://bugs.webkit.org/show_bug.cgi?id=110665

Reviewed by Dan Bernstein.

Don't mark platform data for update if nothing really changed. This avoids ever doing
doUpdatePlatformRequest() in NetworkProcess during normal browsing for me, which is
good for performance.

  • platform/network/ResourceRequestBase.cpp:

(WebCore::ResourceRequestBase::removeCredentials):
(WebCore::ResourceRequestBase::setCachePolicy):
(WebCore::ResourceRequestBase::setTimeoutInterval):
(WebCore::ResourceRequestBase::setFirstPartyForCookies):
(WebCore::ResourceRequestBase::setHTTPMethod):
(WebCore::ResourceRequestBase::clearHTTPAuthorization):
(WebCore::ResourceRequestBase::setAllowCookies):
(WebCore::ResourceRequestBase::setPriority):

11:24 PM Changeset in webkit [143860] by benjamin@webkit.org
  • 6 edits
    2 deletes in trunk/LayoutTests

Add support for testing states changing asynchronously. Apply it to state-url-sets-links-visited.html.
https://bugs.webkit.org/show_bug.cgi?id=109883

Reviewed by Antti Koivisto.

Some tests depends on state change happening asynchronously. This is typically solved by using
timers with a long enough interval.

Timers have the general pitfalls of causing unreliable tests, and forcing unnecessary delays
in the tests.

This patch introduces new testing helpers, shouldBecomeEqual and shouldBecomeEqualToString, to
test a change of state repetively until it succeed (or timeout). Those test functions execute
the condition every 5ms until the test succeed.

The helper shouldBecomeEqualToString is applied on state-url-sets-links-visited.html to illustrate
the concept.

  • fast/js/resources/js-test-pre.js:

(_waitForCondition): Generic helper function for the familly shouldBecomeXXX.
(.condition):
(.failureHandler):
(shouldBecomeEqual):
(shouldBecomeEqualToString):

  • fast/loader/stateobjects/state-url-sets-links-visited.html:
  • platform/wk2/TestExpectations:

state-url-sets-links-visited.html failed on WebKit2 because the visited links table is updated
asynchronously, and the style is only updated after 1 IPC message + 1 timer + 1 IPC message.

The test is changed to use shouldBecomeEqualToString in order to become reliable. If the UIProcess
does not update the style in a reasonable amount of time, the test fails.

  • platform/chromium/TestExpectations: Make the test as failing on Chromium until proper test support is added

to DRT or Internals.

10:35 PM Changeset in webkit [143859] by pdr@google.com
  • 3 edits
    2 adds in trunk

Prevent crash in animated transform lists
https://bugs.webkit.org/show_bug.cgi?id=110704

Reviewed by Abhishek Arya.

Source/WebCore:

This change prevents accessing values off the end of toAtEndOfDuration by adding a check
for this case. Similar checks were added in r116458 but the author failed to catch this
case. WK110706 has been filed to handle this case in general.

This change also makes a trivial change that marks effectiveFrom as const.

Test: svg/animations/animateTransform-list-crash.html

  • svg/SVGAnimatedTransformList.cpp:

(WebCore::SVGAnimatedTransformListAnimator::calculateAnimatedValue):

LayoutTests:

  • svg/animations/animateTransform-list-crash-expected.txt: Added.
  • svg/animations/animateTransform-list-crash.html: Added.
10:18 PM Changeset in webkit [143858] by Dimitri Glazkov
  • 6 edits in trunk/Source/WebCore

SelectorChecker should not know about SelectorCheckerFastPath.
https://bugs.webkit.org/show_bug.cgi?id=110663

Both SelectorChecker and it's speedy cousin unfortunately include each other.
Luckily, the particular way in which SelectorQuery uses SelectorChecker yields
to a fairly simple decoupling. Now only the cousin knows of SelectorChecker.

Reviewed by Antti Koivisto.

No new functionality, covered by existing tests.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::matches): Removed.

  • css/SelectorChecker.h:

(SelectorChecker): Updated the decls to remove fast-path flag.

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::selectorMatches): Added a helper just for SelectorQuery.
(WebCore::SelectorDataList::matches): Changed the callsite to use new helper.
(WebCore::SelectorDataList::execute): Ditto.

  • dom/SelectorQuery.h:

(SelectorDataList): Updated decls.

9:31 PM Changeset in webkit [143857] by eric.carlson@apple.com
  • 4 edits in trunk/Source/WebCore

[Mac] user preference caption style applied incorrectly
https://bugs.webkit.org/show_bug.cgi?id=110707
<rdar://problem/13281096>

Reviewed by Maciej Stachowiak.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlTextTrackContainerElement::textTrackContainerElementShadowPseudoId): New

static function so the pseudo ID is available.

(WebCore::MediaControlTextTrackContainerElement::shadowPseudoId): Call textTrackContainerElementShadowPseudoId.

  • html/shadow/MediaControlElements.h:
  • page/CaptionUserPreferencesMac.mm:

(WebCore::CaptionUserPreferencesMac::captionsStyleSheetOverride): Style the text track container

element for cue color, edge style, and font name.

6:54 PM Changeset in webkit [143856] by haraken@chromium.org
  • 9 edits in trunk/Source/WebCore

[V8] Generate xxxAttrGetterCallback()
https://bugs.webkit.org/show_bug.cgi?id=110676

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection
function for xxxAttrGetter(), like this:

For non-custom getters
Handle<Value> xxxAttrGetterCallback(...) {

return xxxAttrGetter(...);

}

For custom getters.
Handle<Value> xxxAttrGetterCallback(...) {

return xxxAttrGetterCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):
(GenerateNormalAttrGetterCallback):
(GenerateNormalAttrGetter):
(GenerateSingleBatchedAttribute):
(GenerateNonStandardFunction):
(GenerateImplementation):

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

(WebCore::TestActiveDOMObjectV8Internal::excitingAttrAttrGetterCallback):
(TestActiveDOMObjectV8Internal):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetterCallback):
(WebCore):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):

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

(WebCore::TestEventConstructorV8Internal::attr1AttrGetterCallback):
(TestEventConstructorV8Internal):
(WebCore::TestEventConstructorV8Internal::attr2AttrGetterCallback):
(WebCore):

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

(WebCore::TestExceptionV8Internal::nameAttrGetterCallback):
(TestExceptionV8Internal):
(WebCore):

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

(WebCore::TestInterfaceV8Internal::supplementalStaticReadOnlyAttrAttrGetterCallback):
(TestInterfaceV8Internal):
(WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrGetterCallback):
(WebCore::TestInterfaceV8Internal::supplementalStr1AttrGetterCallback):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrGetterCallback):
(WebCore::TestInterfaceV8Internal::supplementalStr3AttrGetterCallback):
(WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetterCallback):
(WebCore):

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

(WebCore::TestObjV8Internal::readOnlyLongAttrAttrGetterCallback):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::readOnlyStringAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::readOnlyTestObjAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::staticReadOnlyLongAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::staticStringAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::enumAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::shortAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::unsignedShortAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::longAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::longLongAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::unsignedLongLongAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::stringAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::testObjAttrAttrGetter):
(WebCore::TestObjV8Internal::testObjAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::XMLObjAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::createAttrGetterCallback):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::reflectedIntegralAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::reflectedBooleanAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomBooleanAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::typedArrayAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::attrWithGetterExceptionAttrGetterCallback):
(WebCore::TestObjV8Internal::attrWithSetterExceptionAttrGetterCallback):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrGetterCallback):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrGetterCallback):
(WebCore::TestObjV8Internal::customAttrAttrGetterCallback):
(WebCore::TestObjV8Internal::withScriptStateAttributeAttrGetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrGetterCallback):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrGetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrGetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetterCallback):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr1AttrGetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr2AttrGetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr3AttrGetterCallback):
(WebCore::TestObjV8Internal::cachedAttribute1AttrGetterCallback):
(WebCore::TestObjV8Internal::cachedAttribute2AttrGetterCallback):
(WebCore::TestObjV8Internal::anyAttributeAttrGetterCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrGetterCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrGetterCallback):
(WebCore::TestObjV8Internal::enabledPerContextAttr1AttrGetterCallback):
(WebCore::TestObjV8Internal::enabledPerContextAttr2AttrGetterCallback):
(WebCore::TestObjV8Internal::floatArrayAttrGetterCallback):
(WebCore::TestObjV8Internal::doubleArrayAttrGetterCallback):
(WebCore::TestObjV8Internal::contentDocumentAttrGetterCallback):
(WebCore::TestObjV8Internal::mutablePointAttrGetterCallback):
(WebCore::TestObjV8Internal::immutablePointAttrGetterCallback):
(WebCore::TestObjV8Internal::strawberryAttrGetterCallback):
(WebCore::TestObjV8Internal::strictFloatAttrGetterCallback):
(WebCore::TestObjV8Internal::descriptionAttrGetterCallback):
(WebCore::TestObjV8Internal::idAttrGetterCallback):
(WebCore::TestObjV8Internal::hashAttrGetterCallback):
(WebCore::TestObjV8Internal::replaceableAttributeAttrGetterCallback):
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextProperties):

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

(WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrGetterCallback):
(TestSerializedScriptValueInterfaceV8Internal):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::readonlyValueAttrGetterCallback):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetterCallback):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::portsAttrGetterCallback):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetterCallback):
(WebCore):

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

(WebCore::TestTypedefsV8Internal::unsignedLongLongAttrAttrGetterCallback):
(TestTypedefsV8Internal):
(WebCore::TestTypedefsV8Internal::immutableSerializedScriptValueAttrGetterCallback):
(WebCore::TestTypedefsV8Internal::attrWithGetterExceptionAttrGetterCallback):
(WebCore::TestTypedefsV8Internal::attrWithSetterExceptionAttrGetterCallback):
(WebCore::TestTypedefsV8Internal::stringAttrWithGetterExceptionAttrGetterCallback):
(WebCore::TestTypedefsV8Internal::stringAttrWithSetterExceptionAttrGetterCallback):
(WebCore):

5:38 PM Changeset in webkit [143855] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

WebCore fails to link in Chromium official build
https://bugs.webkit.org/show_bug.cgi?id=110701

Reviewed by Abhishek Arya.

This is a follow-up fix for r143853. In WebCore.gyp, we need to
increase the shard of 'webcore_rendering' as well.

No tests. No change in behavior.

  • WebCore.gyp/WebCore.gyp:
4:17 PM Changeset in webkit [143854] by haraken@chromium.org
  • 3 edits
    1 delete in trunk/Source/WebCore

Unreviewed, rolling out r143844.
http://trac.webkit.org/changeset/143844
https://bugs.webkit.org/show_bug.cgi?id=110241

It broke Chromium Mac Release Build

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gyp/WebCoreGTK.gyp: Removed.
  • WebCore.gypi:
3:33 PM Changeset in webkit [143853] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

WebCore fails to link in Chromium official build
https://bugs.webkit.org/show_bug.cgi?id=110697

Reviewed by Eric Seidel.

Apparently we need to use more shards to work around linker limitations
on Windows again.

  • WebCore.gyp/WebCore.gyp:
3:31 PM Changeset in webkit [143852] by pilgrim@chromium.org
  • 6 edits
    2 moves in trunk/Tools

[Chromium] DumpRenderTree TestShell::initialize should take Platform* now that WebKitPlatformSupport is empty
https://bugs.webkit.org/show_bug.cgi?id=110606

Reviewed by Adam Barth.

Part of a larger refactoring series; see tracking bug 82948.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(WebKitSupportTestEnvironment::WebKitSupportTestEnvironment):
(WebKitSupportTestEnvironment::mockPlatform):
(WebKitSupportTestEnvironment):

  • DumpRenderTree/chromium/MockPlatform.cpp: Copied from Tools/DumpRenderTree/chromium/MockWebKitPlatformSupport.cpp.

(MockPlatform::create):
(MockPlatform::MockPlatform):
(MockPlatform::~MockPlatform):
(MockPlatform::setInterfaces):
(MockPlatform::cryptographicallyRandomValues):
(MockPlatform::createMediaStreamCenter):
(MockPlatform::createRTCPeerConnectionHandler):

  • DumpRenderTree/chromium/MockPlatform.h: Copied from Tools/DumpRenderTree/chromium/MockWebKitPlatformSupport.h.

(MockPlatform):

  • DumpRenderTree/chromium/MockWebKitPlatformSupport.cpp: Removed.
  • DumpRenderTree/chromium/MockWebKitPlatformSupport.h: Removed.
  • DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:

(WebTestDelegate):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::initialize):

  • DumpRenderTree/chromium/TestShell.h:

(TestShell):

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

[V8] Rename constructorCallbackCustom() to constructorCustom()
https://bugs.webkit.org/show_bug.cgi?id=110671

Reviewed by Adam Barth.

his is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings.
See https://bugs.webkit.org/show_bug.cgi?id=110667#c0

In the new world, "Callback" is used to indicate that it
is a function called back by V8. Currently "Callback" is
used for both V8 callbacks, DOM methods and DOM constructors.
This patch fixes the inconsistency.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateCustomConstructorCallback):

  • bindings/v8/custom/V8ArrayBufferCustom.cpp:

(WebCore::V8ArrayBuffer::constructorCustom):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCustom):

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCustom):

  • bindings/v8/custom/V8DOMFormDataCustom.cpp:

(WebCore::V8DOMFormData::constructorCustom):

  • bindings/v8/custom/V8DataViewCustom.cpp:

(WebCore::V8DataView::constructorCustom):

  • bindings/v8/custom/V8MessageChannelCustom.cpp:

(WebCore::V8MessageChannel::constructorCustom):

  • bindings/v8/custom/V8MutationObserverCustom.cpp:

(WebCore::V8MutationObserver::constructorCustom):

  • bindings/v8/custom/V8WebKitPointCustom.cpp:

(WebCore::V8WebKitPoint::constructorCustom):

  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::V8XMLHttpRequest::constructorCustom):

2:23 PM Changeset in webkit [143850] by haraken@chromium.org
  • 50 edits in trunk/Source/WebCore

[V8] Rename xxxCallback() to xxxMethod(), and xxxCallbackCustom() to xxxMethodCustom()
https://bugs.webkit.org/show_bug.cgi?id=110669

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE()
macros into DOM bindings.
See https://bugs.webkit.org/show_bug.cgi?id=110667#c0

In the new world, "Callback" is used to refer that it
is a function called back by V8. Currently "Callback" is
used for both V8 callbacks, DOM methods and DOM constructors.
This patch fixes the inconsistency.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateDomainSafeFunctionGetter):
(GenerateOverloadedFunctionCallback):
(GenerateFunctionCallback):
(GenerateNonStandardFunction):
(GenerateImplementation):

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

(WebCore::Float64ArrayV8Internal::fooMethod):
(WebCore::Float64ArrayV8Internal::setMethod):
(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):

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

(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethod):
(WebCore::TestActiveDOMObjectV8Internal::postMessageMethod):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):

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

(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionMethod):
(WebCore):

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

(WebCore::TestEventTargetV8Internal::itemMethod):
(WebCore::TestEventTargetV8Internal::addEventListenerMethod):
(WebCore::TestEventTargetV8Internal::removeEventListenerMethod):
(WebCore::TestEventTargetV8Internal::dispatchEventMethod):
(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):

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

(WebCore::TestInterfaceV8Internal::supplementalMethod1Method):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Method):
(WebCore::TestInterfaceV8Internal::supplementalMethod3Method):
(WebCore::TestInterfaceV8Internal::supplementalMethod4Method):
(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):

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

(WebCore::TestMediaQueryListListenerV8Internal::methodMethod):
(WebCore):

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

(WebCore::TestObjV8Internal::voidMethodMethod):
(WebCore::TestObjV8Internal::voidMethodWithArgsMethod):
(WebCore::TestObjV8Internal::longMethodMethod):
(WebCore::TestObjV8Internal::longMethodWithArgsMethod):
(WebCore::TestObjV8Internal::objMethodMethod):
(WebCore::TestObjV8Internal::objMethodWithArgsMethod):
(WebCore::TestObjV8Internal::methodWithSequenceArgMethod):
(WebCore::TestObjV8Internal::methodReturningSequenceMethod):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethod):
(WebCore::TestObjV8Internal::serializedValueMethod):
(WebCore::TestObjV8Internal::optionsObjectMethod):
(WebCore::TestObjV8Internal::methodWithExceptionMethod):
(WebCore::TestObjV8Internal::customMethodMethod):
(WebCore::TestObjV8Internal::customMethodWithArgsMethod):
(WebCore::TestObjV8Internal::addEventListenerMethod):
(WebCore::TestObjV8Internal::removeEventListenerMethod):
(WebCore::TestObjV8Internal::withScriptStateVoidMethod):
(WebCore::TestObjV8Internal::withScriptStateObjMethod):
(WebCore::TestObjV8Internal::withScriptStateVoidExceptionMethod):
(WebCore::TestObjV8Internal::withScriptStateObjExceptionMethod):
(WebCore::TestObjV8Internal::withScriptExecutionContextMethod):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateMethod):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionMethod):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesMethod):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackMethod):
(WebCore::TestObjV8Internal::methodWithOptionalArgMethod):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgMethod):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsMethod):
(WebCore::TestObjV8Internal::methodWithOptionalStringMethod):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedMethod):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringMethod):
(WebCore::TestObjV8Internal::methodWithCallbackArgMethod):
(WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgMethod):
(WebCore::TestObjV8Internal::methodWithCallbackAndOptionalArgMethod):
(WebCore::TestObjV8Internal::conditionalMethod1Method):
(WebCore::TestObjV8Internal::conditionalMethod2Method):
(WebCore::TestObjV8Internal::conditionalMethod3Method):
(WebCore::TestObjV8Internal::overloadedMethod1Method):
(WebCore::TestObjV8Internal::overloadedMethod2Method):
(WebCore::TestObjV8Internal::overloadedMethod3Method):
(WebCore::TestObjV8Internal::overloadedMethod4Method):
(WebCore::TestObjV8Internal::overloadedMethod5Method):
(WebCore::TestObjV8Internal::overloadedMethod6Method):
(WebCore::TestObjV8Internal::overloadedMethod7Method):
(WebCore::TestObjV8Internal::overloadedMethod8Method):
(WebCore::TestObjV8Internal::overloadedMethod9Method):
(WebCore::TestObjV8Internal::overloadedMethod10Method):
(WebCore::TestObjV8Internal::overloadedMethod11Method):
(WebCore::TestObjV8Internal::overloadedMethodMethod):
(WebCore::TestObjV8Internal::classMethodMethod):
(WebCore::TestObjV8Internal::classMethodWithOptionalMethod):
(WebCore::TestObjV8Internal::classMethod2Method):
(WebCore::TestObjV8Internal::overloadedMethod12Method):
(WebCore::TestObjV8Internal::classMethodWithClampMethod):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod1Method):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod2Method):
(WebCore::TestObjV8Internal::enabledPerContextMethod1Method):
(WebCore::TestObjV8Internal::enabledPerContextMethod2Method):
(WebCore::TestObjV8Internal::stringArrayFunctionMethod):
(WebCore::TestObjV8Internal::domStringListFunctionMethod):
(WebCore::TestObjV8Internal::getSVGDocumentMethod):
(WebCore::TestObjV8Internal::convert1Method):
(WebCore::TestObjV8Internal::convert2Method):
(WebCore::TestObjV8Internal::convert4Method):
(WebCore::TestObjV8Internal::convert5Method):
(WebCore::TestObjV8Internal::mutablePointFunctionMethod):
(WebCore::TestObjV8Internal::immutablePointFunctionMethod):
(WebCore::TestObjV8Internal::orangeMethod):
(WebCore::TestObjV8Internal::strictFunctionMethod):
(WebCore::TestObjV8Internal::variadicStringMethodMethod):
(WebCore::TestObjV8Internal::variadicDoubleMethodMethod):
(WebCore::TestObjV8Internal::variadicNodeMethodMethod):
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextPrototypeProperties):

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

(V8TestObj):

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

(WebCore::TestSerializedScriptValueInterfaceV8Internal::acceptTransferListMethod):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::multiTransferListMethod):
(WebCore):

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

(WebCore::TestTypedefsV8Internal::funcMethod):
(WebCore::TestTypedefsV8Internal::multiTransferListMethod):
(WebCore::TestTypedefsV8Internal::setShadowMethod):
(WebCore::TestTypedefsV8Internal::methodWithSequenceArgMethod):
(WebCore::TestTypedefsV8Internal::nullableArrayArgMethod):
(WebCore::TestTypedefsV8Internal::funcWithClampMethod):
(WebCore::TestTypedefsV8Internal::immutablePointFunctionMethod):
(WebCore::TestTypedefsV8Internal::stringArrayFunctionMethod):
(WebCore::TestTypedefsV8Internal::stringArrayFunction2Method):
(WebCore::TestTypedefsV8Internal::methodWithExceptionMethod):
(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):

  • bindings/v8/custom/V8ClipboardCustom.cpp:

(WebCore::V8Clipboard::clearDataMethodCustom):
(WebCore::V8Clipboard::setDragImageMethodCustom):

  • bindings/v8/custom/V8ConsoleCustom.cpp:

(WebCore::V8Console::traceMethodCustom):
(WebCore::V8Console::assertMethodCustom):
(WebCore::V8Console::profileMethodCustom):
(WebCore::V8Console::profileEndMethodCustom):

  • bindings/v8/custom/V8CryptoCustom.cpp:

(WebCore::V8Crypto::getRandomValuesMethodCustom):

  • bindings/v8/custom/V8DOMFormDataCustom.cpp:

(WebCore::V8DOMFormData::appendMethodCustom):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::V8DOMWindow::addEventListenerMethodCustom):
(WebCore::V8DOMWindow::removeEventListenerMethodCustom):
(WebCore::V8DOMWindow::postMessageMethodCustom):
(WebCore::V8DOMWindow::toStringMethodCustom):
(WebCore::V8DOMWindow::releaseEventsMethodCustom):
(WebCore::V8DOMWindow::captureEventsMethodCustom):
(WebCore::V8DOMWindow::showModalDialogMethodCustom):
(WebCore::V8DOMWindow::openMethodCustom):
(WebCore::V8DOMWindow::setTimeoutMethodCustom):
(WebCore::V8DOMWindow::setIntervalMethodCustom):

  • bindings/v8/custom/V8DataViewCustom.cpp:

(WebCore::V8DataView::getInt8MethodCustom):
(WebCore::V8DataView::getUint8MethodCustom):
(WebCore::V8DataView::setInt8MethodCustom):
(WebCore::V8DataView::setUint8MethodCustom):

  • bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:

(WebCore::V8DedicatedWorkerContext::postMessageMethodCustom):

  • bindings/v8/custom/V8DeviceMotionEventCustom.cpp:

(WebCore::V8DeviceMotionEvent::initDeviceMotionEventMethodCustom):

  • bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:

(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventMethodCustom):

  • bindings/v8/custom/V8DocumentCustom.cpp:

(WebCore::V8Document::evaluateMethodCustom):
(WebCore::V8Document::createTouchListMethodCustom):

  • bindings/v8/custom/V8GeolocationCustom.cpp:

(WebCore::V8Geolocation::getCurrentPositionMethodCustom):
(WebCore::V8Geolocation::watchPositionMethodCustom):

  • bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:

(WebCore::V8HTMLAllCollection::itemMethodCustom):
(WebCore::V8HTMLAllCollection::namedItemMethodCustom):

  • bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:

(WebCore::V8HTMLCanvasElement::getContextMethodCustom):
(WebCore::V8HTMLCanvasElement::toDataURLMethodCustom):

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::V8HTMLDocument::writeMethodCustom):
(WebCore::V8HTMLDocument::writelnMethodCustom):
(WebCore::V8HTMLDocument::openMethodCustom):

  • bindings/v8/custom/V8HTMLFormControlsCollectionCustom.cpp:

(WebCore::V8HTMLFormControlsCollection::namedItemMethodCustom):

  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp:

(WebCore::v8HTMLImageElementConstructorMethodCustom):
(WebCore::V8HTMLImageElementConstructor::GetTemplate):

  • bindings/v8/custom/V8HTMLInputElementCustom.cpp:

(WebCore::V8HTMLInputElement::setSelectionRangeMethodCustom):

  • bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:

(WebCore::V8HTMLOptionsCollection::namedItemMethodCustom):
(WebCore::V8HTMLOptionsCollection::removeMethodCustom):
(WebCore::V8HTMLOptionsCollection::addMethodCustom):

  • bindings/v8/custom/V8HTMLSelectElementCustom.cpp:

(WebCore::V8HTMLSelectElement::removeMethodCustom):

  • bindings/v8/custom/V8HistoryCustom.cpp:

(WebCore::V8History::pushStateMethodCustom):
(WebCore::V8History::replaceStateMethodCustom):

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::V8InjectedScriptHost::inspectedObjectMethodCustom):
(WebCore::V8InjectedScriptHost::internalConstructorNameMethodCustom):
(WebCore::V8InjectedScriptHost::isHTMLAllCollectionMethodCustom):
(WebCore::V8InjectedScriptHost::typeMethodCustom):
(WebCore::V8InjectedScriptHost::functionDetailsMethodCustom):
(WebCore::V8InjectedScriptHost::getInternalPropertiesMethodCustom):
(WebCore::V8InjectedScriptHost::getEventListenersMethodCustom):
(WebCore::V8InjectedScriptHost::inspectMethodCustom):
(WebCore::V8InjectedScriptHost::databaseIdMethodCustom):
(WebCore::V8InjectedScriptHost::storageIdMethodCustom):
(WebCore::V8InjectedScriptHost::evaluateMethodCustom):
(WebCore::V8InjectedScriptHost::setFunctionVariableValueMethodCustom):

  • bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:

(WebCore::V8InspectorFrontendHost::platformMethodCustom):
(WebCore::V8InspectorFrontendHost::portMethodCustom):
(WebCore::V8InspectorFrontendHost::showContextMenuMethodCustom):
(WebCore::V8InspectorFrontendHost::recordActionTakenMethodCustom):
(WebCore::V8InspectorFrontendHost::recordPanelShownMethodCustom):
(WebCore::V8InspectorFrontendHost::recordSettingChangedMethodCustom):

  • bindings/v8/custom/V8JavaScriptCallFrameCustom.cpp:

(WebCore::V8JavaScriptCallFrame::evaluateMethodCustom):
(WebCore::V8JavaScriptCallFrame::restartMethodCustom):
(WebCore::V8JavaScriptCallFrame::setVariableValueMethodCustom):
(WebCore::V8JavaScriptCallFrame::scopeTypeMethodCustom):

  • bindings/v8/custom/V8LocationCustom.cpp:

(WebCore::V8Location::reloadAttrGetterCustom):
(WebCore::V8Location::replaceAttrGetterCustom):
(WebCore::V8Location::assignAttrGetterCustom):
(WebCore::V8Location::reloadMethodCustom):
(WebCore::V8Location::replaceMethodCustom):
(WebCore::V8Location::assignMethodCustom):
(WebCore::V8Location::valueOfMethodCustom):
(WebCore::V8Location::toStringMethodCustom):

  • bindings/v8/custom/V8MessageEventCustom.cpp:

(WebCore::V8MessageEvent::initMessageEventMethodCustom):
(WebCore::V8MessageEvent::webkitInitMessageEventMethodCustom):

  • bindings/v8/custom/V8MessagePortCustom.cpp:

(WebCore::V8MessagePort::postMessageMethodCustom):

  • bindings/v8/custom/V8NodeCustom.cpp:

(WebCore::V8Node::insertBeforeMethodCustom):
(WebCore::V8Node::replaceChildMethodCustom):
(WebCore::V8Node::removeChildMethodCustom):
(WebCore::V8Node::appendChildMethodCustom):

  • bindings/v8/custom/V8NotificationCenterCustom.cpp:

(WebCore::V8NotificationCenter::requestPermissionMethodCustom):

  • bindings/v8/custom/V8NotificationCustom.cpp:

(WebCore::V8Notification::requestPermissionMethodCustom):

  • bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:

(WebCore::V8SQLResultSetRowList::itemMethodCustom):

  • bindings/v8/custom/V8SQLTransactionCustom.cpp:

(WebCore::V8SQLTransaction::executeSqlMethodCustom):

  • bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:

(WebCore::V8SQLTransactionSync::executeSqlMethodCustom):

  • bindings/v8/custom/V8SVGLengthCustom.cpp:

(WebCore::V8SVGLength::convertToSpecifiedUnitsMethodCustom):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::V8WebGLRenderingContext::getAttachedShadersMethodCustom):
(WebCore::V8WebGLRenderingContext::getBufferParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getExtensionMethodCustom):
(WebCore::V8WebGLRenderingContext::getFramebufferAttachmentParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getProgramParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getRenderbufferParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getShaderParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getSupportedExtensionsMethodCustom):
(WebCore::V8WebGLRenderingContext::getTexParameterMethodCustom):
(WebCore::V8WebGLRenderingContext::getUniformMethodCustom):
(WebCore::V8WebGLRenderingContext::getVertexAttribMethodCustom):
(WebCore::V8WebGLRenderingContext::uniform1fvMethodCustom):
(WebCore::V8WebGLRenderingContext::uniform1ivMethodCustom):
(WebCore::V8WebGLRenderingContext::uniform2fvMethodCustom):
(WebCore::V8WebGLRenderingContext::uniform2ivMethodCustom):
(WebCore::V8WebGLRenderingContext::uniform3fvMethodCustom):
(WebCore::V8WebGLRenderingContext::uniform3ivMethodCustom):
(WebCore::V8WebGLRenderingContext::uniform4fvMethodCustom):
(WebCore::V8WebGLRenderingContext::uniform4ivMethodCustom):
(WebCore::V8WebGLRenderingContext::uniformMatrix2fvMethodCustom):
(WebCore::V8WebGLRenderingContext::uniformMatrix3fvMethodCustom):
(WebCore::V8WebGLRenderingContext::uniformMatrix4fvMethodCustom):
(WebCore::V8WebGLRenderingContext::vertexAttrib1fvMethodCustom):
(WebCore::V8WebGLRenderingContext::vertexAttrib2fvMethodCustom):
(WebCore::V8WebGLRenderingContext::vertexAttrib3fvMethodCustom):
(WebCore::V8WebGLRenderingContext::vertexAttrib4fvMethodCustom):

  • bindings/v8/custom/V8WorkerContextCustom.cpp:

(WebCore::V8WorkerContext::importScriptsMethodCustom):
(WebCore::V8WorkerContext::setTimeoutMethodCustom):
(WebCore::V8WorkerContext::setIntervalMethodCustom):

  • bindings/v8/custom/V8WorkerCustom.cpp:

(WebCore::V8Worker::postMessageMethodCustom):

  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::V8XMLHttpRequest::openMethodCustom):
(WebCore::V8XMLHttpRequest::sendMethodCustom):

  • bindings/v8/custom/V8XSLTProcessorCustom.cpp:

(WebCore::V8XSLTProcessor::setParameterMethodCustom):
(WebCore::V8XSLTProcessor::getParameterMethodCustom):
(WebCore::V8XSLTProcessor::removeParameterMethodCustom):

12:44 PM Changeset in webkit [143849] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Skip javascriptDialogEvents.html since its result bleed into other tests non-deterministically per bug 110186.

  • platform/mac/TestExpectations:
12:41 PM Changeset in webkit [143848] by Dimitri Glazkov
  • 12 edits in trunk/Source/WebCore

Scrollbar style resolution arguments should not passed via statics.
https://bugs.webkit.org/show_bug.cgi?id=110690

Use PseudoStyleRequest to pass scrollbar params for style resolve.

Reviewed by Eric Seidel.

No change in functionality, covered by existing tests.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::match): Changed to use context params, rather than statics.
(WebCore::SelectorChecker::checkOne): Changed to pass context to checkScrollbarPseudoClass.
(WebCore::SelectorChecker::checkScrollbarPseudoClass): Changed to use context params, rather than statics.

  • css/SelectorChecker.h:

(WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext): Added scrollbar style args.
(SelectorCheckingContext): Ditto.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList): Changed to use PseudoStyleRequest.
(WebCore::StyleResolver::State::initForStyleResolve): Ditto.
(WebCore::StyleResolver::pseudoStyleForElement): Ditto.
(WebCore::StyleResolver::ruleMatches): Ditto and added stuffing scrollbar style resolve args into SelectorCheckingContext.

  • css/StyleResolver.h:

(PseudoStyleRequest): Added.
(State): Changed to hold and use PseudoStyleRequest instead of just PseudoId

  • dom/Element.cpp:

(WebCore::Element::pseudoStyleCacheIsInvalid): Changed to use PseudoStyleRequest.

  • page/FrameView.cpp: Ditto.

(WebCore::FrameView::updateScrollCorner): Ditto.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateScrollCornerStyle): Ditto.
(WebCore::RenderLayer::updateResizerStyle): Ditto.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::selectionBackgroundColor): Ditto.
(WebCore::RenderObject::selectionColor): Ditto.
(WebCore::firstLineStyleForCachedUncachedType): Ditto.
(WebCore::RenderObject::getCachedPseudoStyle): Ditto.
(WebCore::RenderObject::getUncachedPseudoStyle): Ditto.

  • rendering/RenderObject.h:

(RenderObject): Ditto.

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::getScrollbarPseudoStyle): Ditto.

  • rendering/RenderScrollbar.h:

(RenderScrollbar): Removed static members that are now obsolete.

12:00 PM Changeset in webkit [143847] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/efl/TestExpectations: Adding a failure expectation for the html5lib/runner.html test

that started failing with r143804.

  • platform/gtk/TestExpectations: Ditto. Also adding flaky crasher expectations for two http tests,

crashes are originating from IDB code and starter appearing with r143694.

11:57 AM Changeset in webkit [143846] by pilgrim@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] WebKit::initialize should take a Platform* now that WebKitPlatformSupport is empty
https://bugs.webkit.org/show_bug.cgi?id=110605

Reviewed by Adam Barth.

Part of a larger refactoring series; see tracking bug 82948.

  • public/WebKit.h:

(WebKit):

  • src/WebKit.cpp:

(WebKit::initialize):
(WebKit::initializeWithoutV8):
(WebKit::webKitPlatformSupport):

10:37 AM Changeset in webkit [143845] by abarth@webkit.org
  • 4 edits in trunk/Source/WebCore

Threaded HTML parser should pass fast/parser/parser-yield-timing.html
https://bugs.webkit.org/show_bug.cgi?id=110647

Reviewed by Eric Seidel.

Previously, the threaded HTML parser would run for an arbitrary amount
of time without yielding after speculation succeeded. This might be the
cause of the good DOMContentLoaded numbers.

Note: This patch also demonstrates that the ParseHTML_max numbers
aren't correct currently because they're measuring the interior of this
loop instead of all the time spent in the loop. We should move the
instrumentation in a followup patch.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::resumeParsingAfterYield):
(WebCore::HTMLDocumentParser::pumpPendingSpeculations):
(WebCore):
(WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):

  • html/parser/HTMLParserScheduler.cpp:
10:22 AM Changeset in webkit [143844] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk/Source/WebCore

[GTK] Allow sharing the WebCore include list with the Chromium build
https://bugs.webkit.org/show_bug.cgi?id=110241

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-23
Reviewed by Dirk Pranke.

  • WebCore.gyp/WebCore.gyp: Moved shared include directories to

WebCore.gypi.

  • WebCore.gyp/WebCoreGTK.gyp: Added. A skeleton gyp file for WebCoreGTK+.
  • WebCore.gypi: Added shared include directories.
9:57 AM Changeset in webkit [143843] by akling@apple.com
  • 64 edits in trunk/Source/WebCore

StyledElement: Tweak signature of collectStyleForPresentationAttribute().
<http://webkit.org/b/110687>

Reviewed by Antti Koivisto.

Out with the old:

collectStyleForPresentationAttribute(const Attribute&, StylePropertySet*)

In with the new:

collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*)

This is primarily about switching to using MutableStylePropertySet* in preparation for
removing mutating functions from the StylePropertySet base class.

8:55 AM Changeset in webkit [143842] by commit-queue@webkit.org
  • 9 edits
    1 copy
    1 add in trunk/Source/WebCore

[EFL][WebGL] Refactor GLPlatformSurface.
https://bugs.webkit.org/show_bug.cgi?id=110616

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2013-02-23
Reviewed by Kenneth Rohde Christiansen.

Covered by existing WebGL tests.

With recent changes, there is a clear separation between
transport surface and off-screen surface. PlatformSurface
has the logic to render content to transport surface.
We currently rely on EXT_framebuffer_blit for this. This
extension is not exposed on GLES2.0. PlatformSurface was
supposed to be an abstraction layer without any knowledge
of the type of surface. This patch addresses the issues
in PlatformSurface class. We use shaders to draw texture
content to the surface. Any transport surface related
code in PlatformSurface is moved to GLTransportSurface class.

  • PlatformEfl.cmake:
  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::didResizeCanvas):

  • platform/graphics/surfaces/GLTransportSurface.cpp: Added.

(WebCore):
(WebCore::GLTransportSurface::GLTransportSurface):
(WebCore::GLTransportSurface::~GLTransportSurface):
(WebCore::GLTransportSurface::updateContents):
(WebCore::GLTransportSurface::setGeometry):
(WebCore::GLTransportSurface::destroy):
(WebCore::GLTransportSurface::draw):
(WebCore::GLTransportSurface::bindArrayBuffer):
(WebCore::GLTransportSurface::updateTransformationMatrix):
(WebCore::GLTransportSurface::initializeShaderProgram):

  • platform/graphics/surfaces/GLTransportSurface.h:

(WebCore):
(GLTransportSurface):

  • platform/graphics/surfaces/egl/EGLSurface.cpp:

(WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface):
(WebCore::EGLWindowTransportSurface::destroy):
(WebCore::EGLWindowTransportSurface::setGeometry):

  • platform/graphics/surfaces/egl/EGLSurface.h:
  • platform/graphics/surfaces/glx/GLXSurface.cpp:

(WebCore::GLXTransportSurface::GLXTransportSurface):
(WebCore::GLXTransportSurface::setGeometry):
(WebCore::GLXTransportSurface::destroy):
(WebCore::GLXOffScreenSurface::freeResources):

  • platform/graphics/surfaces/glx/GLXSurface.h:
8:16 AM Changeset in webkit [143841] by mrobinson@webkit.org
  • 41 edits
    25 adds in trunk/LayoutTests

Remove some tests needing to be rebaselined from TestExpectations

  • platform/gtk/TestExpectations: Update the list of tests needing new baselines

and skip some that are timing out on my machine.

  • platform/gtk/accessibility/color-well-expected.txt: Added.
  • platform/gtk/accessibility/image-link-expected.txt: Added.
  • platform/gtk/accessibility/image-map1-expected.txt: Added.
  • platform/gtk/accessibility/image-map2-expected.txt: Added.
  • platform/gtk/accessibility/menu-list-sends-change-notification-expected.txt: Added.
  • platform/gtk/accessibility/multiselect-list-reports-active-option-expected.txt: Added.
  • platform/gtk/accessibility/notification-listeners-expected.txt: Added.
  • platform/gtk/css2.1/t0505-c16-descendant-01-e-expected.png:
  • platform/gtk/css2.1/t0505-c16-descendant-01-e-expected.txt:
  • platform/gtk/editing/selection/extend-by-sentence-001-expected.png:
  • platform/gtk/editing/selection/extend-by-sentence-001-expected.txt: Added.
  • platform/gtk/fast/block/float/024-expected.png:
  • platform/gtk/fast/block/float/024-expected.txt: Added.
  • platform/gtk/fast/block/margin-collapse/empty-clear-blocks-expected.png:
  • platform/gtk/fast/block/margin-collapse/empty-clear-blocks-expected.txt: Added.
  • platform/gtk/fast/css/resize-corner-tracking-expected.png:
  • platform/gtk/fast/css/resize-corner-tracking-expected.txt:
  • platform/gtk/fast/css/resize-corner-tracking-transformed-iframe-expected.png: Added.
  • platform/gtk/fast/css/resize-corner-tracking-transformed-iframe-expected.txt: Added.
  • platform/gtk/fast/inline/drawStyledEmptyInlines-expected.png:
  • platform/gtk/fast/inline/drawStyledEmptyInlines-expected.txt:
  • platform/gtk/fast/inline/drawStyledEmptyInlinesWithWS-expected.png:
  • platform/gtk/fast/inline/drawStyledEmptyInlinesWithWS-expected.txt:
  • platform/gtk/fast/inline/justify-emphasis-inline-box-expected.png: Added.
  • platform/gtk/fast/inline/justify-emphasis-inline-box-expected.txt: Added.
  • platform/gtk/fast/repaint/caret-with-transformation-expected.png: Added.
  • platform/gtk/fast/repaint/caret-with-transformation-expected.txt: Added.
  • platform/gtk/fast/text/capitalize-empty-generated-string-expected.png:
  • platform/gtk/fast/text/capitalize-empty-generated-string-expected.txt:
  • platform/gtk/fast/text/international/bidi-ignored-for-first-child-inline-expected.png:
  • platform/gtk/fast/text/international/bidi-ignored-for-first-child-inline-expected.txt:
  • platform/gtk/fast/text/whitespace/006-expected.png:
  • platform/gtk/fast/text/whitespace/006-expected.txt:
  • platform/gtk/fast/text/whitespace/007-expected.png:
  • platform/gtk/fast/text/whitespace/007-expected.txt:
  • platform/gtk/media/audio-controls-rendering-expected.png: Added.
  • platform/gtk/media/audio-controls-rendering-expected.txt:
  • platform/gtk/media/controls-after-reload-expected.txt:
  • platform/gtk/media/controls-strict-expected.txt:
  • platform/gtk/media/controls-styling-strict-expected.txt:
  • platform/gtk/media/controls-without-preload-expected.txt:
  • platform/gtk/media/video-controls-rendering-expected.txt:
  • platform/gtk/media/video-display-toggle-expected.txt:
  • platform/gtk/media/video-playing-and-pause-expected.txt:
  • platform/gtk/svg/as-image/image-preserveAspectRatio-all-expected.png: Added.
  • platform/gtk/svg/as-image/image-preserveAspectRatio-all-expected.txt: Added.
  • platform/gtk/svg/batik/text/xmlSpace-expected.png:
  • platform/gtk/svg/batik/text/xmlSpace-expected.txt:
  • platform/gtk/svg/carto.net/combobox-expected.png:
  • platform/gtk/svg/carto.net/combobox-expected.txt:
  • platform/gtk/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
  • platform/gtk/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.txt: Added.
  • platform/gtk/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
  • platform/gtk/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.txt: Added.
  • platform/gtk/svg/filters/feImage-preserveAspectRatio-all-expected.png: Added.
  • platform/gtk/svg/filters/feImage-preserveAspectRatio-all-expected.txt: Added.
  • platform/gtk/svg/filters/filter-hidden-content-expected.png: Added.
  • platform/gtk/svg/filters/filter-hidden-content-expected.txt: Added.
  • platform/gtk/tables/mozilla/bugs/bug113235-3-expected.png:
  • platform/gtk/tables/mozilla/bugs/bug113235-3-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug1188-expected.png:
  • platform/gtk/tables/mozilla/bugs/bug1188-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug1318-expected.png:
  • platform/gtk/tables/mozilla/bugs/bug1318-expected.txt:
3:26 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
Add bug #110614 to proposed merges for 1.11.91 (diff)
2:49 AM Changeset in webkit [143840] by morrita@google.com
  • 13 edits in trunk/Source/WebCore

ShadowRoot needs guardRef() and guardDeref()
https://bugs.webkit.org/show_bug.cgi?id=109777

Reviewed by Dimitri Glazkov.

This change moves m_guardRefCount from Document to TreeScope,
which allows ShadowRoot to be guarded by guardRef() mechanism as
Document. After r137524, Node referes TreeScope instead of
Document. This is natural consequence of the change: It no longer
makes sense to guardRef() Document pointer from Node.

Detail:

  • Document::m_guardRefCount and related funcdtions are moved to TreeScope
  • Document::removedLastRef is factored out into TreeScope::removedLastRefToScope(), TreeScope::dispose() and Docuent::dispose(). ShadowRoot also got its own dispose() implementation.
  • Moved guardRef() and guardDeref() calls to TreeScope and Node. Note that there are two "guarded" TreeScope references. One is Node::m_treeScope and another is TreeScope::m_parentTreeScope. The guarded-ref management is now encapsulated in these two classes.

No new tests. Covered by existing tests.

  • WebCore.exp.in:
  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::~Document):
(WebCore::Document::dispose): Extracted from removedLastRef()

  • dom/Document.h:

(WebCore::Node::isTreeScope):
(WebCore::Node::Node):

  • dom/DocumentFragment.cpp:

(WebCore::DocumentFragment::DocumentFragment): Remove ASSERT() and move it to ...
(WebCore::DocumentFragment::create): ... here, to allow NULL document from ShadowRoot.

  • dom/Node.cpp:

(WebCore::Node::~Node):
(WebCore::Node::removedLastRef):

  • dom/Node.h:

(WebCore::Node::setTreeScope):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::ShadowRoot): Passed NULL document to superclass. This aligns what Document is doing.
(WebCore::ShadowRoot::dispose): Added.

  • dom/ShadowRoot.h:

(ShadowRoot):

  • dom/TreeScope.cpp:

(SameSizeAsTreeScope):
(WebCore::TreeScope::TreeScope):
(WebCore::TreeScope::~TreeScope):
(WebCore::TreeScope::dispose): Added.
(WebCore::TreeScope::setParentTreeScope):
(WebCore::TreeScope::deletionHasBegun):
(WebCore::TreeScope::beginDeletion):
(WebCore::TreeScope::refCount): Added.

  • dom/TreeScope.h: Turned m_rootNode to Node* from ContainerNode* for Node::isTreeScope to be inlined.

(WebCore::TreeScope::guardRef): Pulled up from Document.
(WebCore::TreeScope::guardDeref): Ditto.
(WebCore::TreeScope::hasGuardRefCount): Added to hide m_guardRefCount.
(WebCore::TreeScope::deletionHasBegun): Added.
(WebCore::TreeScope::beginDeletion): Added.
(WebCore::TreeScope::removedLastRefToScope): Pulled up from Document.

  • dom/TreeScopeAdopter.cpp:

(WebCore::TreeScopeAdopter::moveTreeToNewScope):
(WebCore::TreeScopeAdopter::moveNodeToNewDocument):

1:03 AM Changeset in webkit [143839] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Chromium Windows Perf bot fix. Tolerate CR at the end of the line that contains the timestamp.

  • Scripts/webkitpy/common/checkout/scm/svn.py:

(SVN.timestamp_of_latest_commit):

12:54 AM Changeset in webkit [143838] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Don't include ResourceHandle.h in ResourceLoaderOptions.h
https://bugs.webkit.org/show_bug.cgi?id=110662

Reviewed by Tim Horton.

  • loader/ResourceLoaderOptions.h: Include ResourceHandleTypes.h instead.
12:14 AM Changeset in webkit [143837] by commit-queue@webkit.org
  • 31 edits in trunk

Source/WebCore: Move setAutofilled from TestRunner to WebCore
https://bugs.webkit.org/show_bug.cgi?id=110521

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-02-23
Reviewed by Benjamin Poulain.

  • testing/Internals.cpp:

(WebCore):
(WebCore::Internals::setAutofilled):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/efl: Move setAutofilled from TestRunner to WebCore
https://bugs.webkit.org/show_bug.cgi?id=110521

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-02-23
Reviewed by Benjamin Poulain.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
  • WebCoreSupport/DumpRenderTreeSupportEfl.h:

Source/WebKit/gtk: Move setAutofilled from TestRunner to WebCore
https://bugs.webkit.org/show_bug.cgi?id=110521

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-02-23
Reviewed by Benjamin Poulain.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

Source/WebKit/qt: Move setAutofilled from TestRunner to WebCore
https://bugs.webkit.org/show_bug.cgi?id=110521

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-02-23
Reviewed by Benjamin Poulain.

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

Tools: Move setAutofilled from TestRunner to WebCore
https://bugs.webkit.org/show_bug.cgi?id=110521

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-02-23
Reviewed by Benjamin Poulain.

  • DumpRenderTree/TestRunner.cpp:

(TestRunner::staticFunctions):

  • DumpRenderTree/TestRunner.h:

(TestRunner):

  • DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:
  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::TestRunner):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

  • DumpRenderTree/efl/TestRunnerEfl.cpp:
  • DumpRenderTree/gtk/TestRunnerGtk.cpp:
  • DumpRenderTree/mac/TestRunnerMac.mm:
  • DumpRenderTree/qt/TestRunnerQt.cpp:
  • DumpRenderTree/qt/TestRunnerQt.h:

(TestRunnerQt):

  • DumpRenderTree/win/TestRunnerWin.cpp:
  • DumpRenderTree/wx/TestRunnerWx.cpp:

LayoutTests: Moved setAutofilled from TestRunner to WebCore
https://bugs.webkit.org/show_bug.cgi?id=110521

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-02-23
Reviewed by Benjamin Poulain.

  • fast/forms/input-autofilled.html:
  • fast/forms/reset-autofilled.html:
  • platform/wk2/TestExpectations:
Note: See TracTimeline for information about the timeline view.