profile/ivi/webkit-efl.git
12 years agowebkitpy: make PortFactory.get() be fully data-driven
dpranke@chromium.org [Tue, 17 Jan 2012 20:32:59 +0000 (20:32 +0000)]
webkitpy: make PortFactory.get() be fully data-driven
https://bugs.webkit.org/show_bug.cgi?id=76360

Reviewed by Eric Seidel.

Refactor PortFactory.get() to be fully data-driven.

* Scripts/webkitpy/layout_tests/port/factory.py:
(PortFactory):
(PortFactory._default_port):
(PortFactory.get):
(PortFactory.get.in):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest.assert_port):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105184 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agowebkitpy: add determine_full_port_name(), clean up port.__init__()
dpranke@chromium.org [Tue, 17 Jan 2012 20:27:35 +0000 (20:27 +0000)]
webkitpy: add determine_full_port_name(), clean up port.__init__()
https://bugs.webkit.org/show_bug.cgi?id=76357

Reviewed by Adam Barth.

Each Port class is now required to implement a 'port_name' field
that will match the start of all ports constructed by this class and
a 'determine_full_port_name' field that will make the port
fully-qualified.

* Scripts/webkitpy/layout_tests/port/apple.py:
(ApplePort.__init__):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port):
(Port.determine_port_name):
(Port.__init__):
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort.for):
(ChromiumPort.__init__):
(ChromiumPort):
(ChromiumPort._chromium_base_dir):
(ChromiumPort.path_from_chromium_base):
* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
(ChromiumGpuLinuxPort):
(ChromiumGpuLinuxPort.__init__):
(ChromiumGpuMacPort):
(ChromiumGpuMacPort.__init__):
(ChromiumGpuWinPort):
(ChromiumGpuWinPort.__init__):
* Scripts/webkitpy/layout_tests/port/chromium_linux.py:
(ChromiumLinuxPort):
(ChromiumLinuxPort.determine_port_name):
(ChromiumLinuxPort.__init__):
* Scripts/webkitpy/layout_tests/port/chromium_mac.py:
(ChromiumMacPort):
(ChromiumMacPort.determine_port_name):
(ChromiumMacPort.__init__):
* Scripts/webkitpy/layout_tests/port/chromium_win.py:
(ChromiumWinPort):
(ChromiumWinPort.determine_port_name):
(ChromiumWinPort.__init__):
* Scripts/webkitpy/layout_tests/port/dryrun.py:
(DryRunPort):
(DryRunPort.determine_port_name):
(DryRunPort.__init__):
* Scripts/webkitpy/layout_tests/port/efl.py:
(EflPort):
* Scripts/webkitpy/layout_tests/port/factory.py:
(PortFactory):
(PortFactory._default_port):
(PortFactory.get):
(PortFactory.get.in):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest.assert_port):
* Scripts/webkitpy/layout_tests/port/google_chrome.py:
(GoogleChromeLinux32Port):
(GoogleChromeLinux32Port.determine_port_name):
(GoogleChromeLinux64Port):
(GoogleChromeLinux64Port.determine_port_name):
(GoogleChromeMacPort):
(GoogleChromeMacPort.determine_port_name):
(GoogleChromeWinPort):
(GoogleChromeWinPort.determine_port_name):
* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkPort):
* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort):
(MacPort.determine_port_name):
(MacPort.__init__):
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
(test_versions):
* Scripts/webkitpy/layout_tests/port/mock_drt.py:
(MockDRTPort):
(MockDRTPort.determine_port_name):
(MockDRTPort.__init__):
(MockDRT):
(MockDRT.determine_port_name):
* Scripts/webkitpy/layout_tests/port/port_testcase.py:
(PortTestCase.make_port):
* Scripts/webkitpy/layout_tests/port/qt.py:
(QtPort):
(QtPort.determine_port_name):
(QtPort.__init__):
* Scripts/webkitpy/layout_tests/port/test.py:
(TestPort):
(TestPort.determine_port_name):
(TestPort.__init__):
* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitPort.__init__):
* Scripts/webkitpy/layout_tests/port/win.py:
(WinPort):
(WinPort.determine_port_name):
* Scripts/webkitpy/tool/servers/rebaselineserver.py:
(get_test_baselines.AllPlatformsPort.__init__):
* Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
(get_test_config.TestMacPort):
(get_test_config):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105183 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agowebkitpy: clean up port code in preparation for static port names
dpranke@chromium.org [Tue, 17 Jan 2012 19:25:01 +0000 (19:25 +0000)]
webkitpy: clean up port code in preparation for static port names
https://bugs.webkit.org/show_bug.cgi?id=76356

Reviewed by Adam Barth.

To fix bug 76215 and be able to determine appropriate port names
in webkitpy without actually constructing Port objects, we need
to shuffle some logic in the chromium ports to be able to figure
out whether we built DRT in 32 or 64-bit mode.

* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort):
(ChromiumPort._chromium_base_dir):
(ChromiumPort.__init__):
(ChromiumPort.path_from_chromium_base):
* Scripts/webkitpy/layout_tests/port/chromium_linux.py:
(ChromiumLinuxPort):
(ChromiumLinuxPort._determine_driver_path_statically):
(ChromiumLinuxPort._static_build_path):
(ChromiumLinuxPort._determine_architecture):
(ChromiumLinuxPort.__init__):
(ChromiumLinuxPort._build_path):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105177 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoSource/WebCore: https://bugs.webkit.org/show_bug.cgi?id=76197
hyatt@apple.com [Tue, 17 Jan 2012 19:16:24 +0000 (19:16 +0000)]
Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=76197

Implementation of baseline grid alignment. This patch implements line grid tracking in the layout state,
and also implements the snapping of lines to baselines. It works with normal flow, positioning and floats and
with pagination, as long as the grid is inside the pagination context and not outside.

Reviewed by Simon Fraser.

Added a bunch of new tests in fast/line-grid.

* WebCore.xcodeproj/project.pbxproj:
* rendering/InlineFlowBox.h:
(WebCore::InlineFlowBox::setHasTextChildren):
* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::propagateLineGridInfo):
(WebCore::LayoutState::establishLineGrid):
* rendering/LayoutState.h:
(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::pageLogicalHeight):
(WebCore::LayoutState::currentLineGrid):
(WebCore::LayoutState::currentLineGridOffset):
(WebCore::LayoutState::layoutOffset):
(WebCore::LayoutState::needsBlockDirectionLocationSetBeforeLayout):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::pageLogicalTopForOffset):
(WebCore::RenderBlock::adjustLinePositionForPagination):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::lineGridBox):
(WebCore::RenderBlock::setLineGridBox):
(WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutInlineChildren):
(WebCore::RenderBlock::layoutLineGridBox):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::regionLogicalTopForLine):
* rendering/RenderFlowThread.h:
* rendering/RenderView.h:
(WebCore::RenderView::pushLayoutState):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::alignBoxesInBlockDirection):
(WebCore::RootInlineBox::lineGridSnapAdjustment):
* rendering/RootInlineBox.h:

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

Add tests for baseline line grid alignment.

Reviewed by Simon Fraser.

* fast/line-grid/line-grid-floating.html: Added.
* fast/line-grid/line-grid-inside-columns.html: Added.
* fast/line-grid/line-grid-into-floats.html: Added.
* fast/line-grid/line-grid-positioned.html: Added.
* platform/mac/fast/line-grid: Added.
* platform/mac/fast/line-grid/line-grid-floating-expected.png: Added.
* platform/mac/fast/line-grid/line-grid-floating-expected.txt: Added.
* platform/mac/fast/line-grid/line-grid-inside-columns-expected.png: Added.
* platform/mac/fast/line-grid/line-grid-inside-columns-expected.txt: Added.
* platform/mac/fast/line-grid/line-grid-into-floats-expected.png: Added.
* platform/mac/fast/line-grid/line-grid-into-floats-expected.txt: Added.
* platform/mac/fast/line-grid/line-grid-positioned-expected.png: Added.
* platform/mac/fast/line-grid/line-grid-positioned-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105176 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago-webkit-cross-fade doesn't respect background-size
timothy_horton@apple.com [Tue, 17 Jan 2012 19:02:39 +0000 (19:02 +0000)]
-webkit-cross-fade doesn't respect background-size
https://bugs.webkit.org/show_bug.cgi?id=74902
<rdar://problem/10605289>

Reviewed by Simon Fraser.

CrossfadeGeneratedImage should report its intrinsic size, instead of
improperly conforming to the size of its container.

Test: css3/images/cross-fade-background-size.html

* platform/graphics/CrossfadeGeneratedImage.h:
(WebCore::CrossfadeGeneratedImage::setContainerSize):
(WebCore::CrossfadeGeneratedImage::usesContainerSize):
(WebCore::CrossfadeGeneratedImage::hasRelativeWidth):
(WebCore::CrossfadeGeneratedImage::hasRelativeHeight):
(WebCore::CrossfadeGeneratedImage::size):

Add a test (cross-fade-background-size.html) which ensures that the
background-size CSS property interacts reasonably with -webkit-cross-fade.

Modify cross-fade-overflow-position to hit both the tiled and non-tiled codepaths.

* css3/images/cross-fade-background-size.html: Added.
* css3/images/cross-fade-overflow-position.html:
* css3/images/resources/stripes-large.png: Added.
* css3/images/resources/stripes-small.png: Added.
* platform/mac/css3/images/cross-fade-background-size-expected.png: Added.
* platform/mac/css3/images/cross-fade-background-size-expected.txt: Added.
* platform/mac/css3/images/cross-fade-overflow-position-expected.png:
* platform/mac/css3/images/cross-fade-overflow-position-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105172 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: Refactor JavaScriptOutlineDialog: extract FilteredItemSelectionDialog...
vsevik@chromium.org [Tue, 17 Jan 2012 19:00:12 +0000 (19:00 +0000)]
Web Inspector: Refactor JavaScriptOutlineDialog: extract FilteredItemSelectionDialog and reuse DialogDelegate.
https://bugs.webkit.org/show_bug.cgi?id=76455

Reviewed by Yury Semikhatsky.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.sh:
* inspector/front-end/Dialog.js:
(WebInspector.Dialog):
(WebInspector.Dialog.prototype._hide):
* inspector/front-end/FilteredItemSelectionDialog.js: Added.
(WebInspector.FilteredItemSelectionDialog):
(WebInspector.FilteredItemSelectionDialog.prototype.position):
(WebInspector.FilteredItemSelectionDialog.prototype.focus):
(WebInspector.FilteredItemSelectionDialog.prototype.willHide):
(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.FilteredItemSelectionDialog.prototype.get _itemsLoaded):
(WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._hideItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._itemElementVisible):
(WebInspector.FilteredItemSelectionDialog.prototype._showItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._checkItemAt):
(WebInspector.FilteredItemSelectionDialog.prototype._createSearchRegExp):
(WebInspector.FilteredItemSelectionDialog.prototype._filterItems):
(WebInspector.FilteredItemSelectionDialog.prototype._onKeyDown):
(WebInspector.FilteredItemSelectionDialog.prototype._scheduleFilter):
(WebInspector.FilteredItemSelectionDialog.prototype._updateSelection):
(WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
(WebInspector.FilteredItemSelectionDialog.prototype._onScroll):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItems):
(WebInspector.FilteredItemSelectionDialog.prototype._clearHighlight):
(WebInspector.FilteredItemSelectionDialog.prototype._clearElementHighlight.changes.this._elementHighlightChanges.get if):
(WebInspector.FilteredItemSelectionDialog.prototype._clearElementHighlight):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItem.get var):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItem):
(WebInspector.FilteredItemSelectionDialog.prototype._itemElementInViewport):
(WebInspector.SelectionDialogContentProvider):
(WebInspector.SelectionDialogContentProvider.prototype.itemTitleAt):
(WebInspector.SelectionDialogContentProvider.prototype.itemKeyAt):
(WebInspector.SelectionDialogContentProvider.prototype.itemsCount):
(WebInspector.SelectionDialogContentProvider.prototype.requestItems):
(WebInspector.SelectionDialogContentProvider.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog):
(WebInspector.JavaScriptOutlineDialog.didAddChunk):
(WebInspector.JavaScriptOutlineDialog.install):
(WebInspector.JavaScriptOutlineDialog._show):
(WebInspector.JavaScriptOutlineDialog.createShortcut):
(WebInspector.JavaScriptOutlineDialog.prototype.itemTitleAt):
(WebInspector.JavaScriptOutlineDialog.prototype.itemKeyAt):
(WebInspector.JavaScriptOutlineDialog.prototype.itemsCount):
(WebInspector.JavaScriptOutlineDialog.prototype.requestItems):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):
* inspector/front-end/JavaScriptOutlineDialog.js: Removed.
* inspector/front-end/WebKit.qrc:
* inspector/front-end/filteredItemSelectionDialog.css: Renamed from Source/WebCore/inspector/front-end/javaScriptOutlineDialog.css.
(.js-outline-dialog > input):
(.js-outline-dialog > div.progress):
(.js-outline-dialog > div.container):
(.js-outline-dialog > .container > div.item):
(.js-outline-dialog > .container > div.item.selected):
(.js-outline-dialog > .container > div.item > span.highlight):
* inspector/front-end/inspector.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105171 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoDo not remove pixel failures for ref tests.
commit-queue@webkit.org [Tue, 17 Jan 2012 18:55:53 +0000 (18:55 +0000)]
Do not remove pixel failures for ref tests.
https://bugs.webkit.org/show_bug.cgi?id=76243

Patch by Hao Zheng <zhenghao@chromium.org> on 2012-01-17
Reviewed by Tony Chang.

'NRWT --no-pixel-tests' complains when reftests are expected to
be image mismatch.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._update_summary_with_result):
* Scripts/webkitpy/layout_tests/models/test_failures.py:
(is_reftest_failure):
(determine_result_type):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105169 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoImport some NodeIterator tests from mozilla
abarth@webkit.org [Tue, 17 Jan 2012 18:28:31 +0000 (18:28 +0000)]
Import some NodeIterator tests from mozilla
https://bugs.webkit.org/show_bug.cgi?id=76442

Reviewed by Daniel Bates.

These tests are imported from mozilla-central.  I tried to make the
minimal changes when importing them rather than rewire them into
script-tests.  They appear to have uncovered a bug, which I will
investigate in a followup patch.

* traversal/moz-bug559526-expected.txt: Added.
* traversal/moz-bug559526.html: Added.
* traversal/moz-bug590771-expected.txt: Added.
* traversal/moz-bug590771.html: Added.
* traversal/moz-mutations-3-expected.txt: Added.
* traversal/moz-mutations-3.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105168 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/10703228> ASSERTION FAILED: Uncaught exception - Cannot lock focus...
simon.fraser@apple.com [Tue, 17 Jan 2012 18:26:09 +0000 (18:26 +0000)]
<rdar://problem/10703228> ASSERTION FAILED: Uncaught exception - Cannot lock focus on image <NSImage 0x1206572a0 Size={0, 0} Reps=( )>, because it is size zero loading techcrunch.com

Reviewed by Anders Carlsson.

Avoid trying to create image snapshots for zero-sized plugins, because
it causes -[NSView lockFocus] to throw an exception.

* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView cacheSnapshot]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105167 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMove tests out of WebCore/manual-tests to toplevel ManualTests.
commit-queue@webkit.org [Tue, 17 Jan 2012 18:11:24 +0000 (18:11 +0000)]
Move tests out of WebCore/manual-tests to toplevel ManualTests.
It looks like the manual-tests folder wasn't noticed by git (or me :).

Move some SVG manual tests from deprecated WebCore/manual-tests to toplevel ManualTests
https://bugs.webkit.org/show_bug.cgi?id=76437

Patch by Raul Hudea <rhudea@adobe.com> on 2012-01-17
Reviewed by Daniel Bates.

* ManualTests/svg-animation-css-transform.html: Renamed from Source/WebCore/manual-tests/svg-animation-css-transform.html.
* ManualTests/svg-css-animate-compound.html: Renamed from Source/WebCore/manual-tests/svg-css-animate-compound.html.
* ManualTests/svg-css-transition-compound.html: Renamed from Source/WebCore/manual-tests/svg-css-transition-compound.html.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105166 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Chromium] Unreviewed, avoid webkit_tests aborts due to clashing SVG test expectations.
apavlov@chromium.org [Tue, 17 Jan 2012 17:35:03 +0000 (17:35 +0000)]
[Chromium] Unreviewed, avoid webkit_tests aborts due to clashing SVG test expectations.

* platform/chromium/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105164 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt][WK2] Unskip now passing tests.
ossy@webkit.org [Tue, 17 Jan 2012 17:06:05 +0000 (17:06 +0000)]
[Qt][WK2] Unskip now passing tests.

Patch by Ádám Kallai <Kallai.Adam@stud.u-szeged.hu> on 2012-01-17
Reviewed by Csaba Osztrogonác.

* platform/qt-wk2/Skipped:
    - Support layoutTestController.layerTreeAsText in WebKitTestRunner
      https://bugs.webkit.org/show_bug.cgi?id=42145
      It is fixed. These tests have been unskipped.

    - WebKitTestRunner needs an implementation of eventSender
      https://bugs.webkit.org/show_bug.cgi?id=42194
      Some passing tests have been unskipped.

    - WebKitTestRunner needs to support layoutTestController.evaluateScriptInIsolatedWorld
      https://bugs.webkit.org/show_bug.cgi?id=42327
      It is fixed. These tests have been unskipped.

    - WebKitTestRunner needs layoutTestController.setWillSendRequestReturnsNull
      https://bugs.webkit.org/show_bug.cgi?id=42690
      It is fixed. This test have been unskipped.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105163 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoREGRESSION(r81225): ORWT should ignore reftests
ossy@webkit.org [Tue, 17 Jan 2012 16:11:50 +0000 (16:11 +0000)]
REGRESSION(r81225): ORWT should ignore reftests
https://bugs.webkit.org/show_bug.cgi?id=67936

Patch by Balazs Ankes <Ankes.Balazs@stud.u-szeged.hu> on 2012-01-17
Reviewed by Csaba Osztrogonác.

* Scripts/old-run-webkit-tests:
(isUsedInReftest): $filename should be the first parameter
(findTestsToRun): run test if it isn't reftest

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105162 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Gtk] Input text field not repainted when value is changed
commit-queue@webkit.org [Tue, 17 Jan 2012 16:03:12 +0000 (16:03 +0000)]
[Gtk] Input text field not repainted when value is changed
https://bugs.webkit.org/show_bug.cgi?id=76279

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-01-17
Reviewed by Gustavo Noronha Silva.

Force pending relayouts before freezing the dirty region in a temporary.
This prevents the following code from throwing the dirty updates away
after the original paint is finished.

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::paintWebView): Remove the relayout.
(WebKit::ChromeClient::paint): Move the relayout here, before the
dirty region is frozen.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105161 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: CodeGeneratorInspector.py: start using typedefs
commit-queue@webkit.org [Tue, 17 Jan 2012 15:45:47 +0000 (15:45 +0000)]
Web Inspector: CodeGeneratorInspector.py: start using typedefs
https://bugs.webkit.org/show_bug.cgi?id=76382

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-17
Reviewed by Yury Semikhatsky.

Generator is patched accordingly.

* inspector/CodeGeneratorInspector.py:
(EnumConstants.get_enum_constant_code):
(TypeBuilderPass):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(TypeBindings.create_type_declaration_):
(TypeBindings.create_type_declaration_.PlainString):
(TypeBindings.create_type_declaration_.PlainString.get_code_generator):
(TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.PlainString.get_in_c_type_text):
(TypeBindings.create_type_declaration_.TypedefString):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder.String):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.register_use):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.get_generate_pass_id):
(TypeBindings.create_type_declaration_.TypedefString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.TypedefString.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.TypedefString.get_in_c_type_text):
(get_generate_pass_id):
(ArrayBinding.get_code_generator.CodeGenerator):
(ArrayBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(Generator.process_types.create_type_builder_caller):
(Generator.process_types.create_type_builder_caller.call_type_builder):
(Generator.process_types):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105160 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed. Fix python unit test I broke with r105142
kov@webkit.org [Tue, 17 Jan 2012 15:42:19 +0000 (15:42 +0000)]
Unreviewed. Fix python unit test I broke with r105142

* Scripts/webkitpy/common/config/ports_unittest.py:
(WebKitPortTest.test_gtk_port):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105159 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] [WK2] WebKitPrivate should include the entire WebKit2 C API
commit-queue@webkit.org [Tue, 17 Jan 2012 15:37:43 +0000 (15:37 +0000)]
[GTK] [WK2] WebKitPrivate should include the entire WebKit2 C API
https://bugs.webkit.org/show_bug.cgi?id=76345

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-01-17
Reviewed by Gustavo Noronha Silva.

Isolate all of the WebKit2 C API includes into WebKitPrivate.h and no longer
include anything other than WebKit2.h for the C API.

* UIProcess/API/gtk/WebKitBackForwardList.cpp: Use WebKitPrivate.h now.
* UIProcess/API/gtk/WebKitBackForwardListItem.cpp: Ditto.
* UIProcess/API/gtk/WebKitPrivate.h: Add WebKit2.h, WKAPICast.h and WKRetainPtr.h includes.
* UIProcess/API/gtk/WebKitSettings.cpp: Use WebKitPrivate.h.
* UIProcess/API/gtk/WebKitUIClient.cpp: Ditto.
* UIProcess/API/gtk/WebKitWebContext.cpp: Ditto.
* UIProcess/API/gtk/WebKitWebView.cpp: Ditto.
* UIProcess/API/gtk/WebKitWebViewBase.cpp: Ditto.
* UIProcess/API/gtk/WebKitWindowProperties.cpp: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105158 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: provide basic information about DOM character data size
yurys@chromium.org [Tue, 17 Jan 2012 15:37:06 +0000 (15:37 +0000)]
Web Inspector: provide basic information about DOM character data size
https://bugs.webkit.org/show_bug.cgi?id=76059

Memory agent allows to estimate size of DOM character data and size of WebCore
strings held by JavaScript objects.

Reviewed by Pavel Feldman.

* bindings/js/ScriptProfiler.h:
(WebCore::ScriptProfiler::visitExternalJSStrings):
* bindings/v8/ScriptProfiler.cpp:
(WebCore::ScriptProfiler::visitExternalJSStrings):
* bindings/v8/ScriptProfiler.h:
* bindings/v8/V8Binding.cpp:
(WebCore::WebCoreStringResource::visitStrings):
(WebCore::V8BindingPerIsolateData::visitJSExternalStrings):
* bindings/v8/V8Binding.h:
* inspector/DOMWrapperVisitor.h:
* inspector/Inspector.json:
* inspector/InspectorMemoryAgent.cpp:
(WebCore::CharacterDataStatistics::DOMTreeStatistics::DOMTreeStatistics):
(WebCore::CharacterDataStatistics::DOMTreeStatistics::collectNodeStatistics):
(WebCore::CharacterDataStatistics::CounterVisitor::CounterVisitor):
(WebCore::CharacterDataStatistics::CounterVisitor::domGroups):
(WebCore::CharacterDataStatistics::CounterVisitor::strings):
(WebCore::CharacterDataStatistics::CounterVisitor::visitNode):
(WebCore::CharacterDataStatistics::CounterVisitor::visitJSExternalString):
(WebCore::InspectorMemoryAgent::getDOMNodeCount):
* inspector/InspectorMemoryAgent.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105157 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: Dialogs style and DialogDelegate interface fixes.
vsevik@chromium.org [Tue, 17 Jan 2012 15:34:35 +0000 (15:34 +0000)]
Web Inspector: Dialogs style and DialogDelegate interface fixes.
https://bugs.webkit.org/show_bug.cgi?id=76449

Reviewed by Pavel Feldman.

* inspector/front-end/Dialog.js:
(WebInspector.Dialog):
(WebInspector.Dialog.currentInstance):
(WebInspector.Dialog.show):
(WebInspector.Dialog.hide):
(WebInspector.Dialog.prototype._hide):
(WebInspector.Dialog.prototype._onGlassPaneFocus):
(WebInspector.Dialog.prototype._onFocus):
(WebInspector.Dialog.prototype._position):
(WebInspector.Dialog.prototype._onKeyDown):
(WebInspector.DialogDelegate.prototype.wasShown):
(WebInspector.DialogDelegate.prototype.position):
(WebInspector.DialogDelegate.prototype.focus):
(WebInspector.DialogDelegate.prototype.onEnter):
(WebInspector.DialogDelegate.prototype.willHide):
* inspector/front-end/GoToLineDialog.js:
(WebInspector.GoToLineDialog):
(WebInspector.GoToLineDialog.prototype.focus):
(WebInspector.GoToLineDialog.prototype._onGoClick):
(WebInspector.GoToLineDialog.prototype._applyLineNumber):
(WebInspector.GoToLineDialog.prototype.onEnter):
* inspector/front-end/dialog.css:
(.dialog):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105156 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Don't set the 'primary' flag when mocking touch-points in MiniBrowser
vestbo@webkit.org [Tue, 17 Jan 2012 15:30:34 +0000 (15:30 +0000)]
[Qt] Don't set the 'primary' flag when mocking touch-points in MiniBrowser

Qt 5 no longer has that flag.

Reviewed by Simon Hausmann.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105155 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: ConsoleMessage.cpp and InspectorResourceAgent.cpp doesn't conform...
yurys@chromium.org [Tue, 17 Jan 2012 15:29:37 +0000 (15:29 +0000)]
Web Inspector: ConsoleMessage.cpp and InspectorResourceAgent.cpp doesn't conform to Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=76403

A couple of protocol fixes.

Reviewed by Pavel Feldman.

* inspector/ConsoleMessage.cpp: return 'log' in case some unsupported value is passed.
We cannot omit that return statement as GCC would complain on missing return statement
despite all enum values are listed.
(WebCore::messageTypeValue):
* inspector/Inspector-0.1.json: fixed v0.1 protocol definition.
* inspector/Inspector.json: made CachedResource.response field optional.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105154 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Chromium] Web Inspector: remove "Document DOM tree" class and "Detached DOM tree...
loislo@chromium.org [Tue, 17 Jan 2012 15:03:35 +0000 (15:03 +0000)]
[Chromium] Web Inspector: remove "Document DOM tree" class and "Detached DOM tree" from the Summary view.
https://bugs.webkit.org/show_bug.cgi?id=76450

Reviewed by Yury Semikhatsky.

* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype._buildAggregates):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105153 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[EFL] Emit "resource,request,willsend" from ewk_view.
kubo@profusion.mobi [Tue, 17 Jan 2012 15:02:37 +0000 (15:02 +0000)]
[EFL] Emit "resource,request,willsend" from ewk_view.
https://bugs.webkit.org/show_bug.cgi?id=76292

Reviewed by Andreas Kling.

Make ewk_view dispatch the "resource,request,willsend" signal as well,
so that it is possible to know whether the request is for the main
frame itself or for anything else.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::dispatchWillSendRequest):
* ewk/ewk_view.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105152 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt][WK2] Crash in fast/text/regional-indicator-symobls.html
ossy@webkit.org [Tue, 17 Jan 2012 14:35:29 +0000 (14:35 +0000)]
[Qt][WK2] Crash in fast/text/regional-indicator-symobls.html
https://bugs.webkit.org/show_bug.cgi?id=69419

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-17
Reviewed by Csaba Osztrogonác.

* platform/qt-5.0/Skipped: Removing it from skipped list as it is working now.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105151 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] fast/canvas/2d.text.draw.fill.maxWidth.gradient.html fails with newer Qt5
ossy@webkit.org [Tue, 17 Jan 2012 14:34:05 +0000 (14:34 +0000)]
[Qt] fast/canvas/2d.text.draw.fill.maxWidth.gradient.html fails with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=74785

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-01-17
Reviewed by Csaba Osztrogonác.

Upstream bug in Qt 5 is fixed, so we can unskip the test now.

* platform/qt-5.0/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105150 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] editing/selection/regional-indicators.html fails
ossy@webkit.org [Tue, 17 Jan 2012 14:31:30 +0000 (14:31 +0000)]
[Qt] editing/selection/regional-indicators.html fails
https://bugs.webkit.org/show_bug.cgi?id=66500

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-17
Reviewed by Csaba Osztrogonác.

* platform/qt-5.0/Skipped: This test is not failing anymore,
removing it from skipped list.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105149 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] fast/canvas/canvas-largedraws.html crashes with newer Qt5
ossy@webkit.org [Tue, 17 Jan 2012 14:28:52 +0000 (14:28 +0000)]
[Qt] fast/canvas/canvas-largedraws.html crashes with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=75167

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-01-17
Reviewed by Csaba Osztrogonác.

Bug is fixed upstream, so it should be safe to unskip it now.

* platform/qt-5.0/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105148 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2012-01-17 Yury Semikhatsky <yurys@chromium.org>
yurys@chromium.org [Tue, 17 Jan 2012 13:22:05 +0000 (13:22 +0000)]
2012-01-17  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium dependency 117616:117882

        * DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105147 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Implement HTTP authentication QML API
commit-queue@webkit.org [Tue, 17 Jan 2012 13:17:51 +0000 (13:17 +0000)]
[Qt] Implement HTTP authentication QML API
https://bugs.webkit.org/show_bug.cgi?id=75535

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-17
Reviewed by Kenneth Rohde Christiansen.

This patch implements the QML API for handling HTTP authentication.
The implementation uses a syncronous message between the WebProcess
and the UIProcess which is called when the authenticationRequired
signal is emitted from QNAM.

Based in part upon patch by Peter Hartmann.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::handleAuthenticationRequiredRequest):
(QQuickWebViewExperimental::authenticationDialog):
(QQuickWebViewExperimental::setAuthenticationDialog):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::authenticationRequiredRequest):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/qt/QtDialogRunner.cpp:
(AuthenticationDialogContextObject::AuthenticationDialogContextObject):
(AuthenticationDialogContextObject::hostname):
(AuthenticationDialogContextObject::realm):
(AuthenticationDialogContextObject::prefilledUsername):
(AuthenticationDialogContextObject::accept):
(AuthenticationDialogContextObject::reject):
(QtDialogRunner::initForAuthentication):
* UIProcess/qt/QtDialogRunner.h:
(QtDialogRunner::username):
(QtDialogRunner::password):
(QtDialogRunner::onAuthenticationAccepted):
* UIProcess/qt/QtPageClient.cpp:
(QtPageClient::handleAuthenticationRequiredRequest):
* UIProcess/qt/QtPageClient.h:
* WebProcess/qt/QtNetworkAccessManager.cpp:
(WebKit::QtNetworkAccessManager::QtNetworkAccessManager):
(WebKit::QtNetworkAccessManager::onAuthenticationRequired):
* WebProcess/qt/QtNetworkAccessManager.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105146 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2012-01-17 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Tue, 17 Jan 2012 13:09:02 +0000 (13:09 +0000)]
2012-01-17  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Update Qt results after r105143..

        * platform/qt/svg/carto.net/window-expected.txt:
        * platform/qt/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
        * platform/qt/svg/custom/js-late-gradient-and-object-creation-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105145 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2012-01-17 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Tue, 17 Jan 2012 13:03:17 +0000 (13:03 +0000)]
2012-01-17  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Update Gtk results after r105143..

        * platform/gtk/svg/carto.net/window-expected.txt:
        * platform/gtk/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
        * platform/gtk/svg/custom/js-late-gradient-and-object-creation-expected.txt:
        * platform/gtk/svg/custom/js-late-pattern-and-object-creation-expected.txt:
        * platform/gtk/svg/custom/use-detach-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105144 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLarge SVG text layout performance regression in r81168
zimmermann@webkit.org [Tue, 17 Jan 2012 12:42:25 +0000 (12:42 +0000)]
Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Source/WebCore:

Final patch fixing the performance regression from r81168 plus giving us more performance we ever had.
The testcase attached to bug 65711 creates 200 tspans as <text> children, and modifies just the first <tspan>s
content periodically using a timer. It ran with <3 FPS in release builds before, and now at around 60 FPS,
where the most dominant code path remaining is CG painting text. Still theres room to optimize further, as
Intruments shows.

Historically we rebuilt all SVGTextLayoutAttributes stored in the RenderSVGInlineText, whenever any
children of the <text> subtree changed, in any way. This lead to a recomputation of the x/y/dx/dy/rotate
value lists, for the whole tree, a recreation of the line box tree and finally a measurement of all characters
in the subtree.

This patch, and its previous patches preparing this, introduces progressive relayout for the SVG text subtree.
DOM tree mutations, x/y/dx/dy/rotate value lists changes, and measuring-all-characters are now strictly decoupled.

#1) x/y/dx/dy/rotate list changes:
The x/y/dx/dy/rotate lists are only ever rebuilt, if they change or upon the initial RenderSVGText layout.
This information is now cached in the so-called SVGCharacterDataMap, in each of the SVGTextLayoutAttributes,
associated with a specific RenderSVGInlineText.

#2) DOM tree mutations:
If a new RenderSVGInlineText gets added to the tree, we have to create SVGTextLayoutAttributes for the new
renderer, measure its characters, and cache the information in the attributes. Adding a new renderer to
a SVG <text> subtree can affect the positioning of the previous and next sibling in the tree, due the
whitespace merging logic. Example:

<text y="50" x="50 100 150">A<tspan></tspan> C</text>:
RenderSVGText {text} at (50,36) size 111x18 contains 1 chunk(s)
  RenderSVGInlineText {#text} at (0,0) size 12x18
    chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 12.00: "A"
  RenderSVGTSpan {tspan} at (0,0) size 0x0
  RenderSVGInlineText {#text} at (50,0) size 61x18
    chunk 1 text run 1 at (100.00,50.00) startOffset 0 endOffset 1 width 4.00: " "
    chunk 1 text run 1 at (150.00,50.00) startOffset 0 endOffset 1 width 11.00: "C"

<text y="50" x="50 100 150">A<tspan>B</tspan> C</text>:
RenderSVGText {text} at (50,36) size 115x18 contains 1 chunk(s)
  RenderSVGInlineText {#text} at (0,0) size 12x18
    chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 12.00: "A"
  RenderSVGTSpan {tspan} at (0,0) size 11x18
    RenderSVGInlineText {#text} at (50,0) size 11x18
      chunk 1 text run 1 at (100.00,50.00) startOffset 0 endOffset 1 width 11.00: "B"
  RenderSVGInlineText {#text} at (100,0) size 15x18
    chunk 1 text run 1 at (150.00,50.00) startOffset 0 endOffset 2 width 15.00: " C"

Its obvious that adding a #text node as child to the <tspan> potentially affects the next & previous
siblings in the DOM tree. Take extra care of these possibilities, by properly remeasuring not only
the newly added renderer, but also the previous & next siblings layout attributes.

Mutation of text nodes, or removal of text/tspan elements from the tree is handled in the same way.

#3) Measuring the text subtree:
Don't cache the metrics information in the SVGRootInlineBox, as it doesn't survive relayouts (RenderSVGText::layout).
They're stored in the SVGTextLayoutAttributes, and will be updated if the underlying text content changes.

Tests: svg/text/append-text-node-to-tspan.html
       svg/text/modify-text-node-in-tspan.html
       svg/text/remove-text-node-from-tspan.html

* rendering/svg/RenderSVGInline.cpp:
(WebCore::RenderSVGInline::addChild):
* rendering/svg/RenderSVGInline.h:
* rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::willBeDestroyed):
(WebCore::RenderSVGInlineText::setTextInternal):
(WebCore::RenderSVGInlineText::styleDidChange):
* rendering/svg/RenderSVGInlineText.h:
(WebCore::RenderSVGInlineText::layoutAttributes):
* rendering/svg/RenderSVGText.cpp:
(WebCore::recursiveUpdateLayoutAttributes):
(WebCore::RenderSVGText::layoutAttributesChanged):
(WebCore::findPreviousAndNextAttributes):
(WebCore::RenderSVGText::layoutAttributesWillBeDestroyed):
(WebCore::RenderSVGText::textDOMChanged):
(WebCore::RenderSVGText::layout):
(WebCore::RenderSVGText::addChild):
(WebCore::recursiveCollectLayoutAttributes):
(WebCore::RenderSVGText::rebuildLayoutAttributes):
* rendering/svg/RenderSVGText.h:
(WebCore::RenderSVGText::layoutAttributes):
* rendering/svg/SVGRootInlineBox.cpp:
(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
(WebCore::findFirstAndLastAttributesInVector):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
(WebCore::SVGRootInlineBox::reorderValueLists):
* rendering/svg/SVGRootInlineBox.h:
* rendering/svg/SVGTextLayoutAttributes.h:
* rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForWholeTree):
* rendering/svg/SVGTextLayoutEngine.cpp:
(WebCore::SVGTextLayoutEngine::SVGTextLayoutEngine):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
(WebCore::SVGTextLayoutEngine::currentVisualCharacterMetrics):
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
* rendering/svg/SVGTextLayoutEngine.h:
(WebCore::SVGTextLayoutEngine::layoutAttributes):
* rendering/svg/SVGTextMetrics.h:
* rendering/svg/SVGTextMetricsBuilder.cpp:
(WebCore::SVGTextMetricsBuilder::measureTextRenderer):
* rendering/svg/SVGTextQuery.cpp:
(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):
* svg/SVGTextContentElement.cpp:
(WebCore::SVGTextContentElement::childrenChanged):

LayoutTests:

Update some results, that changed again slightly. Land new tests covering partial SVG <text> subtree updating.

* platform/chromium/test_expectations.txt:
* platform/mac/svg/carto.net/window-expected.png:
* platform/mac/svg/carto.net/window-expected.txt:
* platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.png:
* platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
* platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png:
* platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.txt:
* platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.png:
* platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.txt:
* platform/mac/svg/custom/use-detach-expected.png:
* platform/mac/svg/custom/use-detach-expected.txt:
* platform/mac/svg/text/append-text-node-to-tspan-expected.png: Added.
* platform/mac/svg/text/append-text-node-to-tspan-expected.txt: Added.
* platform/mac/svg/text/modify-text-node-in-tspan-expected.png: Added.
* platform/mac/svg/text/modify-text-node-in-tspan-expected.txt: Added.
* platform/mac/svg/text/remove-text-node-from-tspan-expected.png: Added.
* platform/mac/svg/text/remove-text-node-from-tspan-expected.txt: Added.
* svg/text/append-text-node-to-tspan.html: Added.
* svg/text/modify-text-node-in-tspan.html: Added.
* svg/text/remove-text-node-from-tspan.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105143 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoGTK+ EWS needs to run update-webkitgtk-libs after applying a patch
kov@webkit.org [Tue, 17 Jan 2012 12:29:38 +0000 (12:29 +0000)]
GTK+ EWS needs to run update-webkitgtk-libs after applying a patch
https://bugs.webkit.org/show_bug.cgi?id=75857

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-01-16
Reviewed by Adam Barth.

* Scripts/webkitdirs.pm:
(buildAutotoolsProject): move cleaning the build to happen early,
and handle --update-gtk right after that
* Scripts/webkitpy/common/config/ports.py:
(GtkPort.build_webkit_command): pass --update-gtk as an option to
build-webkit, so that it is used in the EWS

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105142 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Chromium] Unreviewed, fix Linux image expectations for two SVG tests.
apavlov@chromium.org [Tue, 17 Jan 2012 12:20:27 +0000 (12:20 +0000)]
[Chromium] Unreviewed, fix Linux image expectations for two SVG tests.

* platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
* platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105141 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
apavlov@chromium.org [Tue, 17 Jan 2012 12:13:51 +0000 (12:13 +0000)]
Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:
- Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
- Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
- Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
- Grayed autocompletion can only be accepted with the End or Right keys.
- Enter can accept a selected suggestion item from the list, without committing the input.
- Retain the CSS model editing behavior as close to the existing one as possible.
- Enable PageUp/PageDown to navigate the suggest box items.

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertyTreeElement.prototype):
():
* inspector/front-end/TextPrompt.js:
(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105140 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: CSS backend doesn't conform to Inspector.json
apavlov@chromium.org [Tue, 17 Jan 2012 11:57:31 +0000 (11:57 +0000)]
Web Inspector: CSS backend doesn't conform to Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=76402

Reviewed by Yury Semikhatsky.

* inspector/Inspector.json:
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::buildObjectForStyle):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105139 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMediaStream API: Add the mediaStream constructor
tommyw@google.com [Tue, 17 Jan 2012 11:13:00 +0000 (11:13 +0000)]
MediaStream API: Add the mediaStream constructor
https://bugs.webkit.org/show_bug.cgi?id=76436

Adding support for creating a MediaStream using a collection of MediaStreamTracks.

Reviewed by Adam Barth.

Tests for the Media Stream API will be provided by the bug 56587, pending enough landed code.

* mediastream/MediaStream.cpp:
(WebCore::MediaStream::create):
* mediastream/MediaStream.h:
* mediastream/MediaStream.idl:
* mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::component):
* mediastream/MediaStreamTrack.h:
* platform/mediastream/MediaStreamCenter.cpp:
(WebCore::MediaStreamCenter::didConstructMediaStream):
* platform/mediastream/MediaStreamCenter.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105138 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoIndexedDB: IDBIndex.get/getKey should yield undefined, not an error
jsbell@chromium.org [Tue, 17 Jan 2012 10:51:55 +0000 (10:51 +0000)]
IndexedDB: IDBIndex.get/getKey should yield undefined, not an error
https://bugs.webkit.org/show_bug.cgi?id=76116

Source/WebCore:

Pass an undefined value (for IDBIndex.get()) or a null key
(for IDBIndex.getKey()) back as the result, rather than raising
an exception.

Reviewed by Adam Barth.

Tests: storage/indexeddb/index-basics.html
       storage/indexeddb/cursor-index-delete.html
       storage/indexeddb/duplicates.html

* storage/IDBIndexBackendImpl.cpp:
(WebCore::IDBIndexBackendImpl::getInternal):
* storage/IDBRequest.cpp:
(WebCore::IDBRequest::onSuccess):

LayoutTests:

Reviewed by Adam Barth.

* storage/indexeddb/cursor-index-delete-expected.txt:
* storage/indexeddb/cursor-index-delete.html:
* storage/indexeddb/duplicates-expected.txt:
* storage/indexeddb/duplicates.html:
* storage/indexeddb/index-basics-expected.txt:
* storage/indexeddb/index-basics.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105137 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed, GTK rebaseline after r105129.
philn@webkit.org [Tue, 17 Jan 2012 10:49:20 +0000 (10:49 +0000)]
Unreviewed, GTK rebaseline after r105129.

* platform/gtk/fast/dom/Window/window-properties-expected.txt:
* platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
* platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105136 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove references to CSSPrimitiveValue::primitiveType().
macpherson@chromium.org [Tue, 17 Jan 2012 10:26:49 +0000 (10:26 +0000)]
Remove references to CSSPrimitiveValue::primitiveType().
https://bugs.webkit.org/show_bug.cgi?id=76363

Reviewed by Hajime Morita.

No new tests / refactoring only.

Goal is to remove primitiveType() completely. Only code left using it after this patch is in SVG.
I've introduced some abstractions in CSSPrimitiveValue for time and angles to reduce duplicated code elsewhere.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseColor):
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::computeDegrees):
* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::isAngle):
(WebCore::CSSPrimitiveValue::isAttr):
(WebCore::CSSPrimitiveValue::isCounter):
(WebCore::CSSPrimitiveValue::isFontIndependentLength):
(WebCore::CSSPrimitiveValue::isLength):
(WebCore::CSSPrimitiveValue::isPx):
(WebCore::CSSPrimitiveValue::isRect):
(WebCore::CSSPrimitiveValue::isRGBColor):
(WebCore::CSSPrimitiveValue::isShape):
(WebCore::CSSPrimitiveValue::isTime):
(WebCore::CSSPrimitiveValue::computeTime):
* css/CSSStyleSelector.cpp:
(WebCore::convertToLength):
(WebCore::createGridTrackBreadth):
(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapFillSize):
(WebCore::CSSStyleSelector::mapFillXPosition):
(WebCore::CSSStyleSelector::mapFillYPosition):
(WebCore::CSSStyleSelector::mapAnimationDelay):
(WebCore::CSSStyleSelector::mapAnimationDuration):
(WebCore::CSSStyleSelector::mapNinePieceImageSlice):
(WebCore::CSSStyleSelector::mapNinePieceImageQuad):
(WebCore::CSSStyleSelector::colorFromPrimitiveValue):
(WebCore::CSSStyleSelector::createTransformOperations):
(WebCore::CSSStyleSelector::createCustomFilterOperation):
(WebCore::CSSStyleSelector::createFilterOperations):
* css/MediaQueryEvaluator.cpp:
(WebCore::parseAspectRatio):
(WebCore::numberValue):
(WebCore::computeLength):
* editing/EditingStyle.cpp:
(WebCore::cssValueToRGBA):
(WebCore::EditingStyle::extractFontSizeDelta):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
(WebCore::isCSSValueLength):
(WebCore::hasTransparentBackgroundColor):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105135 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAssociatedURLLoader adds support for the HTTP response header Access-Control-Expose...
bbudge@chromium.org [Tue, 17 Jan 2012 10:26:31 +0000 (10:26 +0000)]
AssociatedURLLoader adds support for the HTTP response header Access-Control-Expose-Header.
https://bugs.webkit.org/show_bug.cgi?id=76419

Reviewed by Adam Barth.

* src/AssociatedURLLoader.cpp:
(WebKit::AssociatedURLLoader::ClientAdapter::didReceiveResponse):
* tests/AssociatedURLLoaderTest.cpp:
(WebKit::AssociatedURLLoaderTest::CheckAccessControlHeaders):
(WebKit::TEST_F):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105134 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Don't add _debug postfix to targets when building debug only
vestbo@webkit.org [Tue, 17 Jan 2012 09:28:03 +0000 (09:28 +0000)]
[Qt] Don't add _debug postfix to targets when building debug only

Reviewed by Simon Hausmann.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105133 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Add more files to project-files for easier navigation in Qt Creator
vestbo@webkit.org [Tue, 17 Jan 2012 09:27:43 +0000 (09:27 +0000)]
[Qt] Add more files to project-files for easier navigation in Qt Creator

Reviewed by Simon Hausmann.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105132 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoDFG should be able to do JS and custom getter caching
fpizlo@apple.com [Tue, 17 Jan 2012 08:36:42 +0000 (08:36 +0000)]
DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361

Reviewed by Csaba Osztrogonác.

Fix for 32-bit.

* dfg/DFGRepatch.cpp:
(JSC::DFG::tryBuildGetByIDList):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105131 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Unreviewed morning gardening.
ossy@webkit.org [Tue, 17 Jan 2012 08:25:17 +0000 (08:25 +0000)]
[Qt] Unreviewed morning gardening.

* platform/qt/Skipped: Skip a failing test.
* platform/qt/fast/dom/Window/window-properties-expected.txt: Updated.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105130 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] fast/dom/constructed-objects-prototypes.html fails
philn@webkit.org [Tue, 17 Jan 2012 08:23:56 +0000 (08:23 +0000)]
[GTK] fast/dom/constructed-objects-prototypes.html fails
https://bugs.webkit.org/show_bug.cgi?id=75432

Reviewed by Martin Robinson.

Tools:

* Scripts/build-webkit: Enable video-track in GTK.

LayoutTests:

* platform/gtk/test_expectations.txt: Test now passing no longer
needs to be skipped.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105129 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed, GTK rebaseline after r105075 and r105085.
philn@webkit.org [Tue, 17 Jan 2012 08:18:15 +0000 (08:18 +0000)]
Unreviewed, GTK rebaseline after r105075 and r105085.

* platform/gtk/editing/execCommand/insertImage-expected.txt:
* platform/gtk/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt:
* platform/gtk/fast/block/float/015-expected.txt:
* platform/gtk/fast/borders/rtl-border-05-expected.txt:
* platform/gtk/fast/dom/34176-expected.txt:
* platform/gtk/fast/dom/Window/window-properties-expected.txt:
* platform/gtk/fast/dom/inner-text-expected.txt:
* platform/gtk/fast/encoding/utf-16-big-endian-expected.txt:
* platform/gtk/fast/encoding/utf-16-little-endian-expected.txt:
* platform/gtk/fast/hidpi/broken-image-icon-hidpi-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug2962-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug56201-expected.txt:
* platform/gtk/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105128 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed:more Chromium Linux rebaselining
rolandsteiner@chromium.org [Tue, 17 Jan 2012 07:08:29 +0000 (07:08 +0000)]
Unreviewed:more Chromium Linux rebaselining

* platform/chromium-linux-x86/svg/text/text-align-03-b-expected.png: Removed.
* platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
* platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
* platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
* platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
* platform/chromium-linux/svg/text/text-align-03-b-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105127 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Internals] member varaibles should follow naming convention.
commit-queue@webkit.org [Tue, 17 Jan 2012 06:44:52 +0000 (06:44 +0000)]
[Internals] member varaibles should follow naming convention.
https://bugs.webkit.org/show_bug.cgi?id=76426

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-16
Reviewed by Kent Tamura.

No new tests. Just a rename.

* testing/Internals.cpp:
(WebCore::Internals::Internals):
(WebCore::Internals::setPasswordEchoEnabled):
(WebCore::Internals::setPasswordEchoDurationInSeconds):
(WebCore::Internals::reset):
* testing/Internals.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105126 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed: updated baselines for Chromium Linux
rolandsteiner@chromium.org [Tue, 17 Jan 2012 06:02:29 +0000 (06:02 +0000)]
Unreviewed: updated baselines for Chromium Linux

* platform/chromium-linux-x86/svg/W3C-SVG-1.1/text-text-01-b-expected.png: Removed.
* platform/chromium-linux-x86/svg/foreignObject/text-tref-02-b-expected.png: Removed.
* platform/chromium-linux-x86/svg/text/text-align-02-b-expected.png: Removed.
* platform/chromium-linux-x86/svg/text/text-spacing-01-b-expected.png: Removed.
* platform/chromium-linux-x86/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt: Removed.
* platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: Removed.
* platform/chromium-linux/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
* platform/chromium-linux/svg/foreignObject/text-tref-02-b-expected.png:
* platform/chromium-linux/svg/text/text-align-02-b-expected.png:
* platform/chromium-linux/svg/text/text-spacing-01-b-expected.png:
* platform/chromium-linux/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
* platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
* platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105125 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed: rebaselining fast/backgrounds/mask-box-image
rolandsteiner@chromium.org [Tue, 17 Jan 2012 05:24:50 +0000 (05:24 +0000)]
Unreviewed: rebaselining fast/backgrounds/mask-box-image

* platform/chromium-mac-snowleopard/fast/backgrounds/mask-box-image-expected.png: Added.
* platform/chromium-win/fast/backgrounds/mask-box-image-expected.png: Added.
* platform/chromium-win/fast/backgrounds/mask-box-image-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105124 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoImplement multiple AT_TARGET event dispatching in regard to shadow tree.
hayato@chromium.org [Tue, 17 Jan 2012 03:56:16 +0000 (03:56 +0000)]
Implement multiple AT_TARGET event dispatching in regard to shadow tree.
https://bugs.webkit.org/show_bug.cgi?id=76217

Reviewed by Dimitri Glazkov.

The original motivation is to fix the regression: Event.eventPhase is not set to 2
(at target) when handling dblclick event in <input> element.
Since the issue is not specific to <input> element, but general one, this patch fixes
the regression by adapting a living draft spec of shadow DOM.
This won't break a compatibility if there is no shadow boundaries in event dispatching.
See the following shadow dom spec how multiple AT_TARGET events work.
http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#event-dispatch

Source/WebCore:

* dom/EventContext.cpp:
(WebCore::EventContext::handleLocalEvents):

LayoutTests:

* fast/dom/shadow/shadow-boundary-events-expected.txt:
* fast/dom/shadow/shadow-boundary-events.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105123 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd toyoshim as a committer.
toyoshim@chromium.org [Tue, 17 Jan 2012 03:47:09 +0000 (03:47 +0000)]
Add toyoshim as a committer.
https://bugs.webkit.org/show_bug.cgi?id=76390

Reviewed by Hajime Morita.

* Scripts/webkitpy/common/config/committers.py:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105122 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoplatformRequest(QNX) need to get the conditional information from ResourceRequest.
commit-queue@webkit.org [Tue, 17 Jan 2012 03:35:24 +0000 (03:35 +0000)]
platformRequest(QNX) need to get the conditional information from ResourceRequest.
https://bugs.webkit.org/show_bug.cgi?id=75216

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-01-16
Reviewed by George Staikos.

Pass the isConditional() flag in ResourceRequest to the QNX platform's network request.
QNX platform's network needs this flag to determine whether to use disk-cache.

* platform/network/blackberry/ResourceRequestBlackBerry.cpp:
(ResourceRequest::initializePlatformRequest):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105121 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoHeap-use-after-free in WebCore::RenderBlock::selectionGaps
robert@webkit.org [Tue, 17 Jan 2012 02:25:52 +0000 (02:25 +0000)]
Heap-use-after-free in WebCore::RenderBlock::selectionGaps
https://bugs.webkit.org/show_bug.cgi?id=75013

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/table/multiple-captions-crash3.html
      fast/table/multiple-captions-crash4.html
      fast/table/multiple-captions-crash5.html

When a child float is removed, the parent needs to ensure any reference to the
child is also removed from the floating objects list in any sibling block that
it intruded into.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::markSiblingsWithFloatsForLayout):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):

LayoutTests:

In multiple-captions-crash3.html a floating object is added as a child to a caption element, then removed and
added as a child to another caption element. When added to the first caption element it is added
to the floating objects list of both the parent tbody element and the keygen element, as it intrudes
into the latter. When removed, a stale reference to the floating object remains in the keygen element.
When the keygen element is in layout it attempts to access the stale reference to the floating object and
crashes. The fix is to ensure that any floats added as intruding floats to sibling blocks are removed
when the child is removed from the tree.

multiple-captions-crash4.html and multiple-captions-crash5.html are variants of this scenario.

* fast/table/multiple-captions-crash3-expected.html: Added.
* fast/table/multiple-captions-crash3.html: Added.
* fast/table/multiple-captions-crash4-expected.html: Added.
* fast/table/multiple-captions-crash4.html: Added.
* fast/table/multiple-captions-crash5-expected.html: Added.
* fast/table/multiple-captions-crash5.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105120 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/10702758> REGRESSION: Every Safari Reader WKView leaks
mitz@apple.com [Tue, 17 Jan 2012 01:17:48 +0000 (01:17 +0000)]
<rdar://problem/10702758> REGRESSION: Every Safari Reader WKView leaks

Reviewed by John Sullivan and Ada Chan.

* UIProcess/API/mac/WKView.mm:
(-[WKView viewDidMoveToWindow]): Since this method can be called multiple times in a row
while [self window] is non-nil, check if there isn’t already an event monitor before adding
a new one.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105112 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoREGRESSION: r102553 Autocorrection bubble doesn't show up
enrica@apple.com [Tue, 17 Jan 2012 01:12:51 +0000 (01:12 +0000)]
REGRESSION: r102553 Autocorrection bubble doesn't show up
https://bugs.webkit.org/show_bug.cgi?id=76408
<rdar://problem/10644746>

Prior to r102553 Editor::markAllMisspellingsAndBadGrammarInRanges() used to pass its
textCheckingOptions directly to markAndReplaceFor(). Now a request object is used,
but, when the object is created, the TextCheckingTypeShowCorrectionPanel flag is dropped.

Reviewed by Darin Adler.

* editing/Editor.cpp:
(WebCore::Editor::resolveTextCheckingTypeMask): Add TextCheckingTypeShowCorrectionPanel to
the returned checkingTypes when appropriate.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105111 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoDFG should be able to do JS and custom getter caching
fpizlo@apple.com [Tue, 17 Jan 2012 00:53:40 +0000 (00:53 +0000)]
DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>

Source/JavaScriptCore:

Reviewed by Geoff Garen.

Added the ability to cache JS getter calls and custom getter calls in the DFG.
Most of this is pretty mundane, since the old JIT supported this functionality
as well. But a couple interesting things had to happen:

- There are now two variants of GetById: GetById, which works as before, and
  GetByIdFlush, which flushes registers prior to doing the GetById. Only
  GetByIdFlush can be used for caching getters. We detect which GetById style
  to use by looking at the inline caches of the old JIT.

- Exception handling for getter calls planted in stubs uses a separate lookup
  handler routine, which uses the CodeOrigin stored in the StructureStubInfo.

This is a 40% speed-up in the Dromaeo DOM Traversal average. It removes all of
the DFG regressions we saw in Dromaeo. This is neutral on SunSpider, V8, and
Kraken.

* bytecode/StructureStubInfo.h:
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGAssemblyHelpers.h:
(JSC::DFG::AssemblyHelpers::emitExceptionCheck):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::willNeedFlush):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCCallHelpers.h:
(JSC::DFG::CCallHelpers::setupResults):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGJITCompiler.h:
(JSC::DFG::PropertyAccessRecord::PropertyAccessRecord):
(JSC::DFG::JITCompiler::addExceptionCheck):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasHeapPrediction):
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):
* dfg/DFGRepatch.cpp:
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

Reviewed by Geoff Garen.

* fast/js/dfg-custom-getter-expected.txt: Added.
* fast/js/dfg-custom-getter-throw-expected.txt: Added.
* fast/js/dfg-custom-getter-throw-inlined-expected.txt: Added.
* fast/js/dfg-custom-getter-throw-inlined.html: Added.
* fast/js/dfg-custom-getter-throw.html: Added.
* fast/js/dfg-custom-getter.html: Added.
* fast/js/dfg-getter-expected.txt: Added.
* fast/js/dfg-getter-throw-expected.txt: Added.
* fast/js/dfg-getter-throw.html: Added.
* fast/js/dfg-getter.html: Added.
* fast/js/script-tests/dfg-custom-getter-throw-inlined.js: Added.
(foo):
(baz):
(bar):
* fast/js/script-tests/dfg-custom-getter-throw.js: Added.
(foo):
(bar):
* fast/js/script-tests/dfg-custom-getter.js: Added.
(foo):
* fast/js/script-tests/dfg-getter-throw.js: Added.
(foo):
(bar):
* fast/js/script-tests/dfg-getter.js: Added.
(foo):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105107 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoCrash when calling SecItemAdd with a null result pointer
andersca@apple.com [Tue, 17 Jan 2012 00:25:44 +0000 (00:25 +0000)]
Crash when calling SecItemAdd with a null result pointer
https://bugs.webkit.org/show_bug.cgi?id=76407
<rdar://problem/10696087>

Reviewed by Brady Eidson.

Add null check.

* WebProcess/mac/SecItemShimMethods.mm:
(WebKit::webSecItemAdd):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105105 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[WinCairo] Build correction. Switch to Apple style builds without
bfulgham@webkit.org [Tue, 17 Jan 2012 00:16:48 +0000 (00:16 +0000)]
[WinCairo] Build correction. Switch to Apple style builds without
the _debug postfix so that launching tools, etc., will work properly.

* win/tools/vsprops/debug_wincairo.vsprops: Remove use of _debug in
output files to be consistent with WebKit build/test tools.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105103 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago A follow-up fix for:
ap@apple.com [Tue, 17 Jan 2012 00:04:56 +0000 (00:04 +0000)]
    A follow-up fix for:
        A warning is logged to console when typing a bare "/" in Safari address bar
        https://bugs.webkit.org/show_bug.cgi?id=76236

        <rdar://problem/10702986>

        Reviewed by John Sullivan.

        * Misc/WebNSURLExtras.mm: (+[NSURL _web_URLWithData:relativeToURL:]): It's OK to have a
        path when there is a base URL.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105101 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoBuild fix for r105086.
jonlee@apple.com [Mon, 16 Jan 2012 23:46:32 +0000 (23:46 +0000)]
Build fix for r105086.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:
* wtf/Platform.h:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* notifications/NotificationCenter.idl: change to use ENABLE_TEXT_NOTIFICATIONS_ONLY, which is only defined on Mac platform.

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105098 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix typo in StyledElement::mappedAttributeCount().
kling@webkit.org [Mon, 16 Jan 2012 23:38:12 +0000 (23:38 +0000)]
Fix typo in StyledElement::mappedAttributeCount().
<http://webkit.org/b/76393>

Rubber-stamped by Antti Koivisto.

* dom/StyledElement.h:
(WebCore::StyledElement::mappedAttributeCount): Less &&, more ?:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105095 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoBuild fix for r105086.
jonlee@apple.com [Mon, 16 Jan 2012 22:49:57 +0000 (22:49 +0000)]
Build fix for r105086.

* notifications/NotificationCenter.idl: expand ENABLE macro for .idl.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105094 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoCache CSSStyleSelector::Features in RuleSets
antti@apple.com [Mon, 16 Jan 2012 22:39:51 +0000 (22:39 +0000)]
Cache CSSStyleSelector::Features in RuleSets
https://bugs.webkit.org/show_bug.cgi?id=76337

Reviewed by Andreas Kling.

Currently whenever the style selector is updated we go through all the applicable rules and
collect the used features again. We should keep the features around as part of the RuleSets
and update them incrementally. Collecting the features will then be just a matter of taking
the union of all features used by the RuleSets.

This is 1-2% CPU time reduction (engadget, nytimes) due less time spent in feature collection.

This also simplifies the code by removing the need to cache the default style sheet features
separately.

* css/CSSStyleSelector.cpp:

    Remove the global siblingRulesInDefaultStyle and uncommonAttributeRulesInDefaultStyle RuleSets.
    These are now part of the cached features of the defaultStyle.

(WebCore::RuleSet::features):

    Add a field for caching the features.

(WebCore::makeRuleSet):
(WebCore::CSSStyleSelector::collectFeatures):

    Unify the features of all RuleSets.
    Create RuleSets for sibling and uncommon attribute lookups at the end.

(WebCore::CSSStyleSelector::appendAuthorStylesheets):
(WebCore::CSSStyleSelector::Features::add):
(WebCore::ensureDefaultStyleSheetsForElement):
(WebCore::CSSStyleSelector::locateSharedStyle):
(WebCore::collectFeaturesFromSelector):
(WebCore::collectFeaturesFromRuleData):
(WebCore::RuleSet::addToRuleSet):
(WebCore::RuleSet::addRule):

    Collect the features when adding the rules rather than as a separate pass through all the rules.

* css/CSSStyleSelector.h:
(WebCore::CSSStyleSelector::usesSiblingRules):
(WebCore::CSSStyleSelector::RuleSelectorPair::RuleSelectorPair):

    Use Vector instead of a RuleSet for sibling and uncommon attribute selectors so unifying
    Features is simpler.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105093 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoHuge filter area cause hangs and malloc failures
simon.fraser@apple.com [Mon, 16 Jan 2012 22:37:13 +0000 (22:37 +0000)]
Huge filter area cause hangs and malloc failures
https://bugs.webkit.org/show_bug.cgi?id=75711

Reviewed by Dean Jackson.

Filtering an element with a child that had a huge negative text-indent
was extremely slow, because transparencyClipBox() returned a huge rect.

Add a method, paintingExtent(), that wraps transparencyClipBox()
and intersects it with the paintDirtyRect to constrain the size
of the rect used for filters and transparency layers.

Transparency layer extent is not testable in layout tests.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintingExtent):
(WebCore::RenderLayer::beginTransparencyLayers): Floating point literals are required
to avoid ambiguous constructor call.
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
* rendering/RenderLayer.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105092 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoBorders and box masks behave incorrectly with overlapping offsets
simon.fraser@apple.com [Mon, 16 Jan 2012 22:21:48 +0000 (22:21 +0000)]
Borders and box masks behave incorrectly with overlapping offsets
https://bugs.webkit.org/show_bug.cgi?id=76137

Source/WebCore:

Reviewed by Dean Jackson.

There are some correct behaviors for -webkit-mask-box-image where
parts of the mask are missing (when the sum of the slice sizes is
greater than one dimension of the image). To render correctly
in these cases, always use a transparency layer when rendering
the mask.

Test: fast/backgrounds/mask-box-image.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintMaskImages):

LayoutTests:

Reviewed by Dean Jackson.

Test -webkit-mask-box-image with large slice sizes, with and
without a transform.

* fast/backgrounds/mask-box-image.html: Added.
* fast/backgrounds/resources/dot.png: Added.
* platform/mac/fast/backgrounds/mask-box-image-expected.png: Added.
* platform/mac/fast/backgrounds/mask-box-image-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105091 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFiltered element with composited content beneath it must be composited
simon.fraser@apple.com [Mon, 16 Jan 2012 22:19:36 +0000 (22:19 +0000)]
Filtered element with composited content beneath it must be composited
https://bugs.webkit.org/show_bug.cgi?id=76322

Source/WebCore:

Reviewed by Dean Jackson.

If a RenderLayer has a filter effect, and a composited descendant, then
that layer must also be composited so that the filter is applied via
the compositing system, rather than via painting (otherwise the filter
will not affect the descendant).

Test: css3/filters/filtered-compositing-descendant.html

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingWhenDescendantsAreCompositing):

LayoutTests:

Reviewed by Dean Jackson.

Testcase with a filtered element having a composited child.

* css3/filters/filtered-compositing-descendant-expected.png: Added.
* css3/filters/filtered-compositing-descendant-expected.txt: Added.
* css3/filters/filtered-compositing-descendant.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105090 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix assertion failure in mappedAttributesEquivalent().
kling@webkit.org [Mon, 16 Jan 2012 21:53:39 +0000 (21:53 +0000)]
Fix assertion failure in mappedAttributesEquivalent().
<http://webkit.org/b/76393>

Rubber-stamped by Antti Koivisto.

The assertion that two mapped attributes with matching name/value will always
have the exact same decl() was wrong, so make it a proper check once again.

* css/CSSStyleSelector.cpp:
(WebCore::mappedAttributesEquivalent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105089 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[WinCairo] Build fix after r104155. Several debug targets were not
bfulgham@webkit.org [Mon, 16 Jan 2012 21:31:03 +0000 (21:31 +0000)]
[WinCairo] Build fix after r104155. Several debug targets were not
properly including the '*Common' property sheets.

* DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops:
* DumpRenderTree/win/ImageDiffLauncherDebugCairoCFLite.vsprops:
* MiniBrowser/Configurations/MiniBrowserLauncherDebugCairoCFLite.vsprops:
* WebKitTestRunner/win/WebKitTestRunnerLauncherDebugCairoCFLite.vsprops:
* WinLauncher/WinLauncherLauncherDebugCairoCFLite.vsprops:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105088 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoChanges AssociatedURLLoader to remove non-whitelisted HTTP response headers for CORS...
bbudge@chromium.org [Mon, 16 Jan 2012 21:18:39 +0000 (21:18 +0000)]
Changes AssociatedURLLoader to remove non-whitelisted HTTP response headers for CORS requests,
and Set-Cookie and Set-Cookie2 response headers for all requests.
https://bugs.webkit.org/show_bug.cgi?id=76228

Reviewed by Adam Barth.

* src/AssociatedURLLoader.cpp:
(WebKit::AssociatedURLLoader::ClientAdapter::create):
(WebKit::AssociatedURLLoader::ClientAdapter::ClientAdapter):
(WebKit::AssociatedURLLoader::ClientAdapter::didReceiveResponse):
(WebKit::AssociatedURLLoader::loadAsynchronously):
* tests/AssociatedURLLoaderTest.cpp:
(WebKit::AssociatedURLLoaderTest::didReceiveResponse):
(WebKit::TEST_F):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105087 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove HTML notifications support on Mac
jonlee@apple.com [Mon, 16 Jan 2012 21:11:44 +0000 (21:11 +0000)]
Remove HTML notifications support on Mac
https://bugs.webkit.org/show_bug.cgi?id=76401
<rdar://problem/10589881>

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* wtf/Platform.h: Define ENABLE_HTML_NOTIFICATIONS macro.

Source/WebCore:

* notifications/NotificationCenter.idl:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105086 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd offline web applications API applicationCache.abort.
commit-queue@webkit.org [Mon, 16 Jan 2012 20:50:46 +0000 (20:50 +0000)]
Add offline web applications API applicationCache.abort.
https://bugs.webkit.org/show_bug.cgi?id=76270

Patch by xueqing huang <huangxueqing@baidu.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Tests:
http/tests/appcache/abort-cache-onchecking.html
http/tests/appcache/abort-cache-onchecking-manifest-404.html
http/tests/appcache/abort-cache-onchecking-resource-404.html
http/tests/appcache/abort-cache-ondownloading.html
http/tests/appcache/abort-cache-ondownloading-manifest-404.html
http/tests/appcache/abort-cache-ondownloading-resource-404.html
http/tests/appcache/abort-cache-onprogress.html

* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::abort):
* loader/appcache/ApplicationCacheGroup.h:
* loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::abort):
* loader/appcache/ApplicationCacheHost.h:
* loader/appcache/DOMApplicationCache.cpp:
(WebCore::DOMApplicationCache::abort):
* loader/appcache/DOMApplicationCache.h:
* loader/appcache/DOMApplicationCache.idl:

Source/WebKit/chromium:

* src/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::abort):

LayoutTests:

* http/tests/appcache/abort-cache-onchecking-expected.txt: Added.
* http/tests/appcache/abort-cache-onchecking-manifest-404-expected.txt: Added.
* http/tests/appcache/abort-cache-onchecking-manifest-404.html: Added.
* http/tests/appcache/abort-cache-onchecking-resource-404-expected.txt: Added.
* http/tests/appcache/abort-cache-onchecking-resource-404.html: Added.
* http/tests/appcache/abort-cache-onchecking.html: Added.
* http/tests/appcache/abort-cache-ondownloading-expected.txt: Added.
* http/tests/appcache/abort-cache-ondownloading-manifest-404-expected.txt: Added.
* http/tests/appcache/abort-cache-ondownloading-manifest-404.html: Added.
* http/tests/appcache/abort-cache-ondownloading-resource-404-expected.txt: Added.
* http/tests/appcache/abort-cache-ondownloading-resource-404.html: Added.
* http/tests/appcache/abort-cache-ondownloading.html: Added.
* http/tests/appcache/abort-cache-onprogress-expected.txt: Added.
* http/tests/appcache/abort-cache-onprogress.html: Added.
* http/tests/appcache/resources/abort-cache-onchecking-resource-404.manifest: Added.
* http/tests/appcache/resources/abort-cache-onchecking.manifest: Added.
* http/tests/appcache/resources/abort-cache-onchecking.text: Added.
* http/tests/appcache/resources/abort-cache-ondownloading-resource-404.manifest: Added.
* http/tests/appcache/resources/abort-cache-ondownloading.manifest: Added.
* http/tests/appcache/resources/abort-cache-ondownloading.text: Added.
* http/tests/appcache/resources/abort-cache-onprogress-1.text: Added.
* http/tests/appcache/resources/abort-cache-onprogress-2.text: Added.
* http/tests/appcache/resources/abort-cache-onprogress-3.text: Added.
* http/tests/appcache/resources/abort-cache-onprogress-4.text: Added.
* http/tests/appcache/resources/abort-cache-onprogress.manifest: Added.
* platform/chromium/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105085 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove caching of mapped attribute count on NamedNodeMap.
kling@webkit.org [Mon, 16 Jan 2012 20:28:30 +0000 (20:28 +0000)]
Remove caching of mapped attribute count on NamedNodeMap.
<http://webkit.org/b/76393>

Reviewed by Antti Koivisto.

Stop caching the mapped attribute count on Element's attribute map, effectively
shrinking NamedNodeMap by one CPU word. The price we pay is always walking over
the map in matchAllRules(), even if it has no mapped attribute styles.

This reduces memory consumption by 605 kB (on 64-bit) when viewing the full
HTML5 spec at <http://whatwg.org/c>

* css/CSSStyleSelector.cpp:
(WebCore::mappedAttributesEquivalent):

    Moved here from NamedNodeMap::mappedMapsEquivalent() to accomodate the only
    user under the added assumption that the two attribute maps have the same
    number of mapped attributes.

(WebCore::CSSStyleSelector::matchAllRules):

    We don't have NamedNodeMap::hasMappedAttributes() at our convenience any
    more so walk the attribute map (if there is one) looking for styles to add.

(WebCore::CSSStyleSelector::canShareStyleWithElement):

    Compare the elements' mapped attribute counts at an earlier time. This is
    slightly more expensive but we used to do it near the end anyway and this
    ends up rejecting elements that can't share style before doing a lot of
    semi-expensive checks.

* dom/StyledElement.h:
(WebCore::StyledElement::mappedAttributeCount):
* dom/NamedNodeMap.h:
(WebCore::NamedNodeMap::mappedAttributeCount):
* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::clearAttributes):

    Remove NamedNodeMap::m_mappedAttributeCount and add a function that walks
    the attribute map counting the attributes that have a decl().

* dom/NamedNodeMap.h:
* dom/StyledElement.cpp:
(WebCore::StyledElement::attributeChanged):

    Remove declAdded()/declRemoved() callbacks.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105084 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoREGRESSION(r105072): It broke committers_unittest.py
ossy@webkit.org [Mon, 16 Jan 2012 20:02:51 +0000 (20:02 +0000)]
REGRESSION(r105072): It broke committers_unittest.py
https://bugs.webkit.org/show_bug.cgi?id=76396

Reviewed by Adam Barth.

* Scripts/webkitpy/common/config/committers_unittest.py:
(CommittersTest._assert_fuzz_match): It should handle more names.
(CommittersTest.test_contributors_by_fuzzy_match_with_legacy_names): Fix the testcase.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105082 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed build fix.
jer.noble@apple.com [Mon, 16 Jan 2012 19:28:30 +0000 (19:28 +0000)]
Unreviewed build fix.

Added necessary header files to VectorMath.cpp to fix Chromium compile error.

* platform/audio/VectorMath.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105079 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebAudio: Optimize AudioChannel::maxAbsValue().
jer.noble@apple.com [Mon, 16 Jan 2012 18:53:11 +0000 (18:53 +0000)]
WebAudio: Optimize AudioChannel::maxAbsValue().
https://bugs.webkit.org/show_bug.cgi?id=74359

Reviewed by Eric Carlson.

No new tests; optimization of existing code, so covered by existing test cases.

* platform/audio/AudioChannel.cpp:
(WebCore::AudioChannel::maxAbsValue): Replace implementation with optimized vector math
    operation.
* platform/audio/VectorMath.cpp:
(WebCore::VectorMath::vmaxmgv): Vector math operation for determining maximum
    magnitude in a vector.
* platform/audio/VectorMath.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105078 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago A warning is logged to console when typing a bare "/" in Safari address bar
ap@apple.com [Mon, 16 Jan 2012 18:46:52 +0000 (18:46 +0000)]
    A warning is logged to console when typing a bare "/" in Safari address bar
        https://bugs.webkit.org/show_bug.cgi?id=76236

        Reviewed by John Sullivan.

        * Misc/WebNSURLExtras.mm: (+[NSURL _web_URLWithData:relativeToURL:]): Bail out early for paths.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105077 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agohttps://bugs.webkit.org/show_bug.cgi?id=41210
commit-queue@webkit.org [Mon, 16 Jan 2012 18:42:03 +0000 (18:42 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=41210
Cross Origin XMLHttpRequest can not expose headers indicated in Access-Control-Expose-Headers HTTP Response Header

Source/WebCore:

Parsing the "Access-Control-Expose-Headers" in the XMLHTTPRequest response header.
If the custom response-header is part of Access-Control-Expose-Headers, then consider that custom response-header as a valid one.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

Test: http/tests/xmlhttprequest/access-control-response-with-expose-headers.html

* loader/CrossOriginAccessControl.cpp:
(WebCore::parseAccessControlExposeHeadersAllowList):  parsing logic of Access-Control-Expose-Headers
* loader/CrossOriginAccessControl.h:
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::getAllResponseHeaders): checking whether the custom response-header is part of "Access-Control-Expose-Headers"
(WebCore::XMLHttpRequest::getResponseHeader):  checking whether the custom response-header is part of "Access-Control-Expose-Headers"

LayoutTests:

Added test cases for Access-Control-Expose-Headers

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

* http/tests/xmlhttprequest/access-control-response-with-expose-headers-expected.txt: Added.
* http/tests/xmlhttprequest/access-control-response-with-expose-headers.html: Added.
* http/tests/xmlhttprequest/resources/access-control-response-with-expose-headers.php: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105076 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Include gtk+3 in the jhbuild modules
commit-queue@webkit.org [Mon, 16 Jan 2012 18:40:21 +0000 (18:40 +0000)]
[GTK] Include gtk+3 in the jhbuild modules
https://bugs.webkit.org/show_bug.cgi?id=76284

Patch by Mario Sanchez Prada <msanchez@igalia.com> on 2012-01-16
Reviewed by Philippe Normand.

* gtk/jhbuild.modules: Add some gtk+3 to the jhbuild moduleset.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105075 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Fix QT_VERSION related warnings when building on Mac OS X
zeno.albisser@nokia.com [Mon, 16 Jan 2012 18:17:35 +0000 (18:17 +0000)]
[Qt] Fix QT_VERSION related warnings when building on Mac OS X
https://bugs.webkit.org/show_bug.cgi?id=76340

Source/JavaScriptCore:

This bug was caused by r104826.
As already mentioned for https://bugs.webkit.org/show_bug.cgi?id=57239
we should not use "using namespace WebCore" in header files,
because it might cause ambiguous references.
This patch reverts the changes from r104826 and r104981
and removes the "using namespace WebCore" statement from
two header files.

Reviewed by Tor Arne Vestbø.

* wtf/Platform.h:

Source/WebKit2:

This bug was caused by r104826.
As was already mentioned for https://bugs.webkit.org/show_bug.cgi?id=57239
we should not use "using namespace WebCore" in header files,
because it might cause ambiguous references.
This patch reverts the changes from r104826 and r104981
and removes the "using namespace WebCore" statement from
two header files.

Reviewed by Tor Arne Vestbø.

* Shared/WebLayerTreeInfo.h:
(WebKit::WebLayerUpdateInfo::WebLayerUpdateInfo):
(WebKit::WebLayerAnimation::WebLayerAnimation):
* UIProcess/LayerTreeHostProxy.h:
(WebKit::LayerTreeHostProxy::layerByID):
(WebKit::LayerTreeHostProxy::rootLayer):
(WebKit::LayerTreeHostProxy::notifyAnimationStarted):
(WebKit::LayerTreeHostProxy::notifySyncRequired):
* UIProcess/qt/LayerTreeHostProxyQt.cpp:
* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
* WebProcess/WebPage/qt/LayerTreeHostQt.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105074 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Chromium] Unreviewed, rebaseline SVG tests after r105061.
apavlov@chromium.org [Mon, 16 Jan 2012 18:05:06 +0000 (18:05 +0000)]
[Chromium] Unreviewed, rebaseline SVG tests after r105061.

* platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
* platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
* platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
* platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
* platform/chromium-linux-x86/svg/W3C-SVG-1.1/text-text-01-b-expected.png: Added.
* platform/chromium-linux-x86/svg/foreignObject/text-tref-02-b-expected.png: Added.
* platform/chromium-linux-x86/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
* platform/chromium-linux-x86/svg/text/text-align-02-b-expected.png: Added.
* platform/chromium-linux-x86/svg/text/text-align-03-b-expected.png: Added.
* platform/chromium-linux-x86/svg/text/text-spacing-01-b-expected.png: Added.
* platform/chromium-linux-x86/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt.
* platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Added.
* platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.txt.
* platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
* platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
* platform/chromium-linux/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
* platform/chromium-linux/svg/text/select-textLength-spacing-squeeze-2-expected.txt: Removed.
* platform/chromium-linux/svg/text/text-path-01-b-expected.png:
* platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt:
* platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt:
* platform/chromium-mac-leopard/svg/batik/text/textAnchor-expected.png:
* platform/chromium-mac-leopard/svg/batik/text/textProperties2-expected.png:
* platform/chromium-mac-leopard/svg/text/text-align-01-b-expected.png:
* platform/chromium-mac-leopard/svg/text/text-align-03-b-expected.png:
* platform/chromium-mac-leopard/svg/text/text-tselect-02-f-expected.png:
* platform/chromium-mac-snowleopard/svg/batik/text/textAnchor-expected.png:
* platform/chromium-mac-snowleopard/svg/batik/text/textProperties2-expected.png:
* platform/chromium-mac-snowleopard/svg/foreignObject/text-tref-02-b-expected.png:
* platform/chromium-mac-snowleopard/svg/text/bidi-text-anchor-direction-expected.png:
* platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-1-expected.png:
* platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-2-expected.png:
* platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-3-expected.png:
* platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.png:
* platform/chromium-mac-snowleopard/svg/text/text-align-01-b-expected.png:
* platform/chromium-mac-snowleopard/svg/text/text-align-03-b-expected.png:
* platform/chromium-mac-snowleopard/svg/text/text-spacing-01-b-expected.png:
* platform/chromium-mac-snowleopard/svg/text/text-tselect-02-f-expected.png:
* platform/chromium-mac-snowleopard/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt: Renamed from LayoutTests/platform/chromium/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
* platform/chromium-win-vista/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
* platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
* platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
* platform/chromium-win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
* platform/chromium-win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
* platform/chromium-win-xp/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
* platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
* platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
* platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-04-t-expected.txt:
* platform/chromium-win/svg/W3C-SVG-1.1/coords-trans-04-t-expected.txt:
* platform/chromium-win/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt:
* platform/chromium-win/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
* platform/chromium-win/svg/W3C-SVG-1.1/text-text-01-b-expected.txt:
* platform/chromium-win/svg/batik/text/verticalTextOnPath-expected.txt:
* platform/chromium-win/svg/custom/js-late-pattern-and-object-creation-expected.txt:
* platform/chromium-win/svg/custom/tref-update-expected.txt:
* platform/chromium-win/svg/foreignObject/text-tref-02-b-expected.png:
* platform/chromium-win/svg/text/select-textLength-spacing-squeeze-2-expected.txt:
* platform/chromium-win/svg/text/select-textLength-spacing-squeeze-4-expected.png:
* platform/chromium-win/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.txt:
* platform/chromium-win/svg/text/text-align-02-b-expected.png:
* platform/chromium-win/svg/text/text-align-03-b-expected.png:
* platform/chromium-win/svg/text/text-align-04-b-expected.txt:
* platform/chromium-win/svg/text/text-align-06-b-expected.png:
* platform/chromium-win/svg/text/text-align-06-b-expected.txt:
* platform/chromium-win/svg/text/text-spacing-01-b-expected.png:
* platform/chromium-win/svg/text/text-text-01-b-expected.txt:
* platform/chromium-win/svg/text/text-tspan-01-b-expected.txt:
* platform/chromium-win/svg/text/text-ws-01-t-expected.txt:
* platform/chromium-win/svg/text/text-ws-02-t-expected.txt:
* platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
* platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:
* platform/chromium-win/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png:
* platform/chromium-win/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt:
* platform/chromium/svg/text/bidi-text-anchor-direction-expected.png: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105073 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd myself as a committer
danw@gnome.org [Mon, 16 Jan 2012 18:03:40 +0000 (18:03 +0000)]
Add myself as a committer

Unreviewed

* Scripts/webkitpy/common/config/committers.py:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105072 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: timeline record bars may overlap with the records column
pfeldman@chromium.org [Mon, 16 Jan 2012 17:31:36 +0000 (17:31 +0000)]
Web Inspector: timeline record bars may overlap with the records column
https://bugs.webkit.org/show_bug.cgi?id=76387

Reviewed by Yury Semikhatsky.

* inspector/front-end/timelinePanel.css:
(#timeline-container .split-view-sidebar-left):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105071 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: styles sidebar rendering is broken
apavlov@chromium.org [Mon, 16 Jan 2012 17:24:28 +0000 (17:24 +0000)]
Web Inspector: styles sidebar rendering is broken
https://bugs.webkit.org/show_bug.cgi?id=76065

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection):
* inspector/front-end/elementsPanel.css:
(.styles-section .header .subtitle):
(.styles-section .properties):

LayoutTests:

* http/tests/inspector/elements-test.js:
(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles): Fix dump output due to DOM changes.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105070 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed; fix the build when --as-needed and --no-copy-dt-needed-entries are passed...
kubo@profusion.mobi [Mon, 16 Jan 2012 17:18:21 +0000 (17:18 +0000)]
Unreviewed; fix the build when --as-needed and --no-copy-dt-needed-entries are passed to the linker.

Some recent versions of a few Linux distributions have started passing
--as-needed and --no-copy-dt-needed-entries by default to the linker,
which broke the build when SHARED_CORE was turned on, as libwtf_efl.so
needed a few symbols from libjavascriptcore_efl.so.

* DumpRenderTree/efl/CMakeLists.txt: Explicitly pass WTF_LIBRARY_NAME
before JavaScriptCore_LIBRARY_NAME in DumpRenderTree_LIBRARIES so the
libraries are searched in the right order by the linker.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105069 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Inremental build problem revealed by https://bugs.webkit.org/show_bug.cgi?id...
ossy@webkit.org [Mon, 16 Jan 2012 17:17:53 +0000 (17:17 +0000)]
[Qt] Inremental build problem revealed by https://bugs.webkit.org/show_bug.cgi?id=74455

Reviewed by Tor Arne Vestbø.

* DerivedSources.pri: supplemental_dependency.tmp must depends on idl files too.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105068 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: do not merge iframes into a single DOM hierarchy.
pfeldman@chromium.org [Mon, 16 Jan 2012 16:56:19 +0000 (16:56 +0000)]
Web Inspector: do not merge iframes into a single DOM hierarchy.
https://bugs.webkit.org/show_bug.cgi?id=76383

Reviewed by Timothy Hatcher.

Source/WebCore:

* inspector/DOMEditor.h:
* inspector/Inspector.json:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::unbind):
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::innerFirstChild):
(WebCore::InspectorDOMAgent::innerParentNode):
* inspector/front-end/CSSStyleModel.js:
(WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
(WebInspector.CSSStyleModel.prototype.setRuleSelector):
(WebInspector.CSSStyleModel.prototype.addRule.callback):
(WebInspector.CSSStyleModel.prototype.addRule):
(WebInspector.CSSStyleModel.prototype._ownerDocumentId):
* inspector/front-end/DOMAgent.js:
(WebInspector.DOMNode):
(WebInspector.DOMNode.prototype.getChildNodes):
(WebInspector.DOMNode.prototype._insertChild):
(WebInspector.DOMNode.prototype._setChildrenPayload):
(WebInspector.DOMDocument):
(WebInspector.DOMAgent.prototype._setDetachedRoot):
* inspector/front-end/ElementsTreeOutline.js:

LayoutTests:

* http/tests/inspector/elements-test.js:
(initialize_ElementTest.InspectorTest.findNode.processChildren):
* inspector/console/console-dirxml-expected.txt:
* inspector/console/console-tests-expected.txt:
* inspector/elements/set-outer-html-body.html:
* inspector/styles/styles-iframe.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105067 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: setCurrentFocusElement should not update selection when focus is moved...
vsevik@chromium.org [Mon, 16 Jan 2012 16:47:19 +0000 (16:47 +0000)]
Web Inspector: setCurrentFocusElement should not update selection when focus is moved to text field or text area.
https://bugs.webkit.org/show_bug.cgi?id=76384

Reviewed by Timothy Hatcher.

* inspector/front-end/JavaScriptOutlineDialog.js:
(WebInspector.JavaScriptOutlineDialog):
* inspector/front-end/UIUtils.js:
(WebInspector._isTextEditingElement):
(WebInspector.setCurrentFocusElement):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105066 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] set audio resources path in NRTW
philn@webkit.org [Mon, 16 Jan 2012 16:13:20 +0000 (16:13 +0000)]
[GTK] set audio resources path in NRTW
https://bugs.webkit.org/show_bug.cgi?id=76380

Reviewed by Martin Robinson.

* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkPort.setup_environ_for_server): Set $AUDIO_RESOURCES_PATH so
the uninstalled audio resources are used during webaudio tests.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105065 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed, GTK rebaseline after r105061.
philn@webkit.org [Mon, 16 Jan 2012 16:08:53 +0000 (16:08 +0000)]
Unreviewed, GTK rebaseline after r105061.

* platform/gtk/svg/carto.net/colourpicker-expected.txt:
* platform/gtk/svg/carto.net/combobox-expected.txt:
* platform/gtk/svg/carto.net/slider-expected.txt:
* platform/gtk/svg/carto.net/textbox-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105064 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed, GTK baselines for new tests.
philn@webkit.org [Mon, 16 Jan 2012 16:00:23 +0000 (16:00 +0000)]
Unreviewed, GTK baselines for new tests.

* platform/gtk/css2.1/20110323/border-collapse-offset-002-expected.txt: Added.
* platform/gtk/css2.1/20110323/outline-color-applies-to-008-expected.txt: Added.
* platform/gtk/fast/borders/border-image-slice-constrained-expected.txt: Added.
* platform/gtk/fast/text/unicode-variation-selector-expected.txt: Added.
* platform/gtk/http/tests/media/video-buffering-repaints-controls-expected.txt: Added.
* platform/gtk/media/video-colorspace-yuv420-expected.txt: Added.
* platform/gtk/media/video-colorspace-yuv422-expected.txt: Added.
* platform/gtk/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt: Added.
* platform/gtk/svg/filters/filter-refresh-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105063 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Remove references to PagePointer in the FrameNetworkingContext
commit-queue@webkit.org [Mon, 16 Jan 2012 14:28:27 +0000 (14:28 +0000)]
[Qt] Remove references to PagePointer in the FrameNetworkingContext
https://bugs.webkit.org/show_bug.cgi?id=76342

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-16
Reviewed by Simon Hausmann.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::createNetworkingContext):
* WebProcess/qt/QtNetworkAccessManager.cpp:
(WebKit::QtNetworkAccessManager::obtainOriginatingWebPage):
* WebProcess/qt/QtNetworkAccessManager.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105062 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLarge SVG text layout performance regression in r81168
zimmermann@webkit.org [Mon, 16 Jan 2012 14:04:25 +0000 (14:04 +0000)]
Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Source/WebCore:

Enable simple code path in SVGTextMetricsBuilder, allowing fast-measurement of simple text.
This affects the geometry of several <text> elements, thus several tests need rebaselining.

* rendering/svg/SVGTextMetricsBuilder.cpp:
(WebCore::SVGTextMetricsBuilder::advance):
(WebCore::SVGTextMetricsBuilder::advanceComplexText):

LayoutTests:

Update some test results after enabling the simple code path to measure SVG text.

* platform/mac/svg/W3C-SVG-1.1/animate-elem-06-t-expected.png:
* platform/mac/svg/W3C-SVG-1.1/animate-elem-06-t-expected.txt:
* platform/mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt:
* platform/mac/svg/W3C-SVG-1.1/text-text-01-b-expected.txt:
* platform/mac/svg/batik/text/smallFonts-expected.png:
* platform/mac/svg/batik/text/textAnchor-expected.txt:
* platform/mac/svg/carto.net/window-expected.png:
* platform/mac/svg/carto.net/window-expected.txt:
* platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.png:
* platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
* platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png:
* platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.txt:
* platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.png:
* platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.txt:
* platform/mac/svg/custom/text-repaint-including-stroke-expected.png:
* platform/mac/svg/custom/use-clipped-hit-expected.txt:
* platform/mac/svg/custom/use-detach-expected.png:
* platform/mac/svg/custom/use-detach-expected.txt:
* platform/mac/svg/foreignObject/text-tref-02-b-expected.png:
* platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-1-expected.png:
* platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-2-expected.png:
* platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-3-expected.png:
* platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.png:
* platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.txt:
* platform/mac/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.txt:
* platform/mac/svg/text/text-align-01-b-expected.png:
* platform/mac/svg/text/text-align-01-b-expected.txt:
* platform/mac/svg/text/text-align-02-b-expected.txt:
* platform/mac/svg/text/text-align-04-b-expected.txt:
* platform/mac/svg/text/text-align-06-b-expected.png:
* platform/mac/svg/text/text-align-06-b-expected.txt:
* platform/mac/svg/text/text-deco-01-b-expected.txt:
* platform/mac/svg/text/text-fonts-01-t-expected.txt:
* platform/mac/svg/text/text-spacing-01-b-expected.png:
* platform/mac/svg/text/text-text-04-t-expected.png:
* platform/mac/svg/text/text-text-05-t-expected.png:
* platform/mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
* platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
* platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105061 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: CodeGeneratorInspector.py: generate array types.
commit-queue@webkit.org [Mon, 16 Jan 2012 13:44:14 +0000 (13:44 +0000)]
Web Inspector: CodeGeneratorInspector.py: generate array types.
https://bugs.webkit.org/show_bug.cgi?id=75284

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-16
Reviewed by Yury Semikhatsky.

New classes are generated for ecah array type instance. Some includes
and ifdefs are fixed.

* inspector/CodeGeneratorInspector.py:
(ArrayBinding):
(ArrayBinding.get_code_generator):
(ArrayBinding.get_code_generator.CodeGenerator):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.call_generate_type_builder):
(ArrayBinding.get_code_generator.CodeGenerator.generate_forward_declaration):
(ArrayBinding.get_code_generator.CodeGenerator.register_use):
(ArrayBinding.get_in_c_type_text):
(ArrayBinding.get_setter_value_expression_pattern):
(ArrayBinding.reduce_to_raw_type):
(RawTypeBinding):
(RawTypeBinding.__init__):
(RawTypeBinding.get_code_generator):
(RawTypeBinding.get_in_c_type_text):
(RawTypeBinding.get_setter_value_expression_pattern):
(RawTypeBinding.reduce_to_raw_type):
(TypeData.__init__):
(TypeData.get_binding):
* inspector/ConsoleMessage.cpp:
* inspector/InspectorValues.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105060 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Update NEWS and configure.ac for 1.7.4 release
carlosgc@webkit.org [Mon, 16 Jan 2012 13:40:04 +0000 (13:40 +0000)]
[GTK] Update NEWS and configure.ac for 1.7.4 release
https://bugs.webkit.org/show_bug.cgi?id=76375

Reviewed by Philippe Normand.

.:

* configure.ac: Bumped version number.

Source/WebKit/gtk:

* NEWS: Added release notes for 1.7.4.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105059 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: editing body multiplies head
pfeldman@chromium.org [Mon, 16 Jan 2012 13:35:04 +0000 (13:35 +0000)]
Web Inspector: editing body multiplies head
https://bugs.webkit.org/show_bug.cgi?id=62272

Patch by Pavel Feldman <pfeldman@chromium.org> on 2012-01-15
Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/elements/set-outer-html-body.html

* inspector/DOMEditor.cpp:
(WebCore::DOMEditor::patchDocument):
(WebCore::DOMEditor::patchNode):
(WebCore::DOMEditor::innerPatchChildren):
(WebCore::DOMEditor::insertBefore):
* inspector/DOMEditor.h:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::setOuterHTML):

LayoutTests:

* inspector/elements/resources/set-outer-html-body-iframe.html: Added.
* inspector/elements/set-outer-html-body-expected.txt: Added.
* inspector/elements/set-outer-html-body.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105058 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLarge SVG text layout performance regression in r81168
zimmermann@webkit.org [Mon, 16 Jan 2012 13:08:29 +0000 (13:08 +0000)]
Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Change the way we store x/y/dx/dy/rotate values for a <text> element and its ancestors.

SVGTextLayoutAttributesBuilder used to hold a Vector<float> for x/y/dx/dy/rotate, each as big
as the whole text subtree length. For each character, that has an absolute position, or rotation
the value was stored in this list. For all other characters a special empty value marker was stored.

This is highly inefficient, and is now replaced with a HashMap<unsigned, SVGCharacterData> where
SVGCharacterData is a struct, holding float x/y/dx/dy/rotate. The code is now optimized for the
common case, where only a few characters actually specify such values, eg:
<text x="50" y="90">looooong text<tspan x="50" y="30">abc</tspan></text>.

NOTE: There are still some inefficiencies in this patch (especially the copying of SVGTextLayoutAttributes).
To keep the patch size smaller, I decided to fix this in another patch, and only fix the memory issue with this patch.

This reduces the memory consumption from 35MB to 10MB on the attached testcase in bug 65711.

Doesn't affect any test, yet. A follow-up commit will enable the usage of the simple code path, using WidthIterator,
in SVGTextMetricsBuilder, which will result in several layout test changes, because of geometry changes.

* rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::RenderSVGInlineText):
(WebCore::RenderSVGInlineText::characterStartsNewTextChunk):
* rendering/svg/RenderSVGInlineText.h:
(WebCore::RenderSVGInlineText::layoutAttributes):
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::layout):
(WebCore::recursiveCollectLayoutAttributes):
(WebCore::RenderSVGText::rebuildLayoutAttributes):
* rendering/svg/RenderSVGText.h:
* rendering/svg/SVGRootInlineBox.cpp:
(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
(WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
(WebCore::SVGRootInlineBox::closestLeafChildForPosition):
(WebCore::swapItemsInLayoutAttributes):
(WebCore::findFirstAndLastAttributesInVector):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
* rendering/svg/SVGTextLayoutAttributes.cpp:
(WebCore::SVGTextLayoutAttributes::clear):
(WebCore::dumpSVGCharacterDataMapValue):
(WebCore::SVGTextLayoutAttributes::dump):
* rendering/svg/SVGTextLayoutAttributes.h:
(WebCore::SVGTextLayoutAttributes::characterDataMap):
* rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
(WebCore::SVGTextLayoutAttributesBuilder::SVGTextLayoutAttributesBuilder):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextRenderer):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForWholeTree):
(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForTextRenderer):
(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForWholeTree):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesIfNeeded):
(WebCore::processRenderSVGInlineText):
(WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributes):
(WebCore::updateCharacterData):
(WebCore::SVGTextLayoutAttributesBuilder::fillCharacterDataMap):
* rendering/svg/SVGTextLayoutAttributesBuilder.h:
(WebCore::SVGTextLayoutAttributesBuilder::clearTextPositioningElements):
* rendering/svg/SVGTextLayoutEngine.cpp:
(WebCore::SVGTextLayoutEngine::updateRelativePositionAdjustmentsIfNeeded):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
* rendering/svg/SVGTextLayoutEngine.h:
(WebCore::SVGTextLayoutEngine::layoutAttributes):
* rendering/svg/SVGTextMetricsBuilder.cpp:
(WebCore::SVGTextMetricsBuilder::advance):
(WebCore::SVGTextMetricsBuilder::advanceComplexText):
(WebCore::SVGTextMetricsBuilder::measureTextRenderer):
* rendering/svg/SVGTextQuery.cpp:
(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105057 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoCSSCanvasValue can't be renamed, enforce this at compile-time.
kling@webkit.org [Mon, 16 Jan 2012 13:00:39 +0000 (13:00 +0000)]
CSSCanvasValue can't be renamed, enforce this at compile-time.
<http://webkit.org/b/76352>

Reviewed by Antti Koivisto.

Have the CSSCanvasValue constructor take the name as an argument instead of
having a setName() that's only called from one place in CSSParser.

* css/CSSCanvasValue.h:
(WebCore::CSSCanvasValue::create):
(WebCore::CSSCanvasValue::CSSCanvasValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseCanvas):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105056 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoCSSStyleSelector: Dodge parser when creating default LTR/RTL declarations.
kling@webkit.org [Mon, 16 Jan 2012 12:57:00 +0000 (12:57 +0000)]
CSSStyleSelector: Dodge parser when creating default LTR/RTL declarations.
<http://webkit.org/b/76374>

Reviewed by Antti Koivisto.

Pass CSSValueLtr/CSSValueRtl directly to setProperty() instead of parsing "ltr"/"rtl".

* css/CSSStyleSelector.cpp:
(WebCore::leftToRightDeclaration):
(WebCore::rightToLeftDeclaration):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105055 268f45cc-cd09-0410-ab3c-d52691b4dbfc