profile/ivi/webkit-efl.git
12 years agoSource/WebKit: [EFL] Add support for Unit Tests, based on the gtest library.
commit-queue@webkit.org [Sat, 30 Jun 2012 01:20:20 +0000 (01:20 +0000)]
Source/WebKit: [EFL] Add support for Unit Tests, based on the gtest library.
https://bugs.webkit.org/show_bug.cgi?id=68509

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-06-29
Reviewed by Chang Shu.

Add configuration for building gtest library, testing framework and unit tests.

* PlatformEfl.cmake:

Source/WebKit/efl: [EFL] Implementation of testing framework and unit tests for WebKit-EFL port.
https://bugs.webkit.org/show_bug.cgi?id=68509

Patch by Krzysztof Czech  <k.czech@samsung.com>, Tomasz Morawski <t.morawski@samsung.com> on 2012-06-29
Reviewed by Chang Shu.

Testing framework is based on gtest library. Gtest library is part of the WebKit project. Framework is devided into base part and view part.
Base part takes care of efl initialization, defines test macros and prepares test to run. View part is a context of each test.

* tests/UnitTestUtils/EWKTestBase.cpp: Added.
(EWKUnitTests):
(EWKUnitTests::EWKTestBase::init):
(EWKUnitTests::EWKTestBase::shutdown):
(EWKUnitTests::EWKTestBase::shutdownAll):
(EWKUnitTests::EWKTestBase::startTest):
(EWKUnitTests::EWKTestBase::endTest):
(EWKUnitTests::EWKTestBase::createTest):
(EWKUnitTests::EWKTestBase::runTest):
* tests/UnitTestUtils/EWKTestBase.h: Added.
(EWKUnitTests):
(EWKTestBase):
* tests/UnitTestUtils/EWKTestConfig.h: Added.
(Config):
* tests/UnitTestUtils/EWKTestView.cpp: Added.
(EWKUnitTests):
(EWKUnitTests::EWKTestEcoreEvas::EWKTestEcoreEvas):
(EWKUnitTests::EWKTestEcoreEvas::evas):
(EWKUnitTests::EWKTestEcoreEvas::show):
(EWKUnitTests::EWKTestView::EWKTestView):
(EWKUnitTests::EWKTestView::init):
(EWKUnitTests::EWKTestView::show):
(EWKUnitTests::EWKTestView::mainFrame):
(EWKUnitTests::EWKTestView::evas):
(EWKUnitTests::EWKTestView::bindEvents):
* tests/UnitTestUtils/EWKTestView.h: Added.
(EWKUnitTests):
(EWKTestEcoreEvas):
(EWKTestView):
(EWKUnitTests::EWKTestView::webView):
* tests/resources/default_test_page.html: Added.
* tests/test_ewk_view.cpp: Added.
(ewkViewEditableGetCb):
(TEST):
(ewkViewUriGetCb):
* tests/test_runner.cpp: Added.
(parseCustomArguments):
(main):

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

12 years agoRemove warning about protected values when the Heap is being destroyed
mhahnenberg@apple.com [Sat, 30 Jun 2012 01:14:09 +0000 (01:14 +0000)]
Remove warning about protected values when the Heap is being destroyed
https://bugs.webkit.org/show_bug.cgi?id=90302

Reviewed by Geoffrey Garen.

Having to do book-keeping about whether values allocated from a certain
VM are or are not protected makes the JSC API much more difficult to use
correctly. Clients should be able to throw an entire VM away and not have
to worry about unprotecting all of the values that they protected earlier.

* heap/Heap.cpp:
(JSC::Heap::lastChanceToFinalize):

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

12 years agoUnreviewed chromium windows rebaselines for r121599.
eae@chromium.org [Sat, 30 Jun 2012 00:58:24 +0000 (00:58 +0000)]
Unreviewed chromium windows rebaselines for r121599.

* platform/chromium-win/fast/reflections/reflection-with-zoom-expected.png:
* platform/chromium-win/fast/transforms/bounding-rect-zoom-expected.png:
* platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
* platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:

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

12 years agoJSObject wastes too much memory on unused property slots
fpizlo@apple.com [Sat, 30 Jun 2012 00:25:01 +0000 (00:25 +0000)]
JSObject wastes too much memory on unused property slots
https://bugs.webkit.org/show_bug.cgi?id=90255

Reviewed by Mark Hahnenberg.

This does a few things:

- JSNonFinalObject no longer has inline property storage.

- Initial out-of-line property storage size is 4 slots for JSNonFinalObject,
  or 2x the inline storage for JSFinalObject.

- Property storage is only reallocated if it needs to be. Previously, we
  would reallocate the property storage on any transition where the original
  structure said shouldGrowProperyStorage(), but this led to spurious
  reallocations when doing transitionless property adds and there are
  deleted property slots available. That in turn led to crashes, because we
  would switch to out-of-line storage even if the capacity matched the
  criteria for inline storage.

- Inline JSFunction allocation is killed off because we don't have a good
  way of inlining property storage allocation. This didn't hurt performance.
  Killing off code is better than fixing it if that code wasn't doing any
  good.

This looks like a 1% progression on V8.

* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases):
* jit/JIT.h:
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):
(JSC):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_func):
(JSC):
(JSC::JIT::emit_op_new_func_exp):
* runtime/JSFunction.cpp:
(JSC::JSFunction::finishCreation):
* runtime/JSObject.h:
(JSC::JSObject::isUsingInlineStorage):
(JSObject):
(JSC::JSObject::finishCreation):
(JSC):
(JSC::JSNonFinalObject::hasInlineStorage):
(JSNonFinalObject):
(JSC::JSNonFinalObject::JSNonFinalObject):
(JSC::JSNonFinalObject::finishCreation):
(JSC::JSFinalObject::hasInlineStorage):
(JSC::JSFinalObject::finishCreation):
(JSC::JSObject::offsetOfInlineStorage):
(JSC::JSObject::setPropertyStorage):
(JSC::Structure::inlineStorageCapacity):
(JSC::Structure::isUsingInlineStorage):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
(JSC::JSObject::putDirectWithoutTransition):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::nextPropertyStorageCapacity):
(JSC):
(JSC::Structure::growPropertyStorageCapacity):
(JSC::Structure::suggestedNewPropertyStorageSize):
* runtime/Structure.h:
(JSC::Structure::putWillGrowPropertyStorage):
(Structure):

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

12 years agoUnreviewed chromium rebaselines for r121599.
eae@chromium.org [Sat, 30 Jun 2012 00:20:21 +0000 (00:20 +0000)]
Unreviewed chromium rebaselines for r121599.

* platform/chromium-mac-snowleopard/fast/reflections/reflection-with-zoom-expected.png:
* platform/chromium-mac-snowleopard/fast/transforms/bounding-rect-zoom-expected.png:
* platform/chromium-mac-snowleopard/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-mac-snowleopard/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
* platform/chromium-mac/fast/reflections/reflection-with-zoom-expected.png:
* platform/chromium-mac/fast/transforms/bounding-rect-zoom-expected.png:
* platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:

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

12 years agoHTMLCollection's caches should be owned by either ElementRareData or Document
rniwa@webkit.org [Fri, 29 Jun 2012 23:56:42 +0000 (23:56 +0000)]
HTMLCollection's caches should be owned by either ElementRareData or Document
https://bugs.webkit.org/show_bug.cgi?id=90322

Reviewed by Anders Carlsson.

Removed all instances of OwnPtr<HTMLCollection> except ones on ElementRareData and Document.
ElementRareData::ensureCachedHTMLCollection then polymorphically creates HTMLCollection or
its subclass as deemed necessary.

This refactoring allows us to move HTMLCollection to use the same invalidation model as
DynamicNodeList (invalidated during DOM mutations) in a follow up.

* dom/Document.cpp:
(WebCore::Document::all):
* dom/Document.h:
(Document):
* dom/Element.cpp:
(WebCore::ElementRareData::ensureCachedHTMLCollection):
(WebCore):
(WebCore::Element::cachedHTMLCollection):
* dom/Element.h:
(Element):
* dom/ElementRareData.h:
(WebCore):
(ElementRareData):
(WebCore::ElementRareData::cachedHTMLCollection):
* dom/Node.cpp:
(WebCore):
* dom/Node.h:
(Node):
* dom/NodeRareData.h:
(WebCore::NodeRareData::setItemType):
(NodeRareData):
* html/CollectionType.h:
* html/HTMLCollection.cpp:
(WebCore::shouldIncludeChildren):
(WebCore::HTMLCollection::isAcceptableElement):
* html/HTMLElement.cpp:
(WebCore):
(WebCore::HTMLElement::properties):
* html/HTMLElement.h:
(HTMLElement):
* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::elements):
* html/HTMLFieldSetElement.h:
(HTMLFieldSetElement):
* html/HTMLFormCollection.cpp:
(WebCore::HTMLFormCollection::HTMLFormCollection):
(WebCore::HTMLFormCollection::create):
* html/HTMLFormCollection.h:
(HTMLFormCollection):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::elements):
* html/HTMLFormElement.h:
* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
(WebCore::HTMLOptionsCollection::create):
* html/HTMLOptionsCollection.h:
(HTMLOptionsCollection):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::selectedOptions):
(WebCore::HTMLSelectElement::options):
(WebCore::HTMLSelectElement::invalidateSelectedItems):
(WebCore::HTMLSelectElement::setRecalcListItems):
* html/HTMLSelectElement.h:
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::rows):
* html/HTMLTableElement.h:
* html/HTMLTableRowsCollection.cpp:
(WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
(WebCore::HTMLTableRowsCollection::create):
* html/HTMLTableRowsCollection.h:
(HTMLTableRowsCollection):

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

12 years agoAdd FIXMEs for vertical writing mode and override sizes.
ojan@chromium.org [Fri, 29 Jun 2012 23:49:22 +0000 (23:49 +0000)]
Add FIXMEs for vertical writing mode and override sizes.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::overrideLogicalContentWidth):
(WebCore::RenderBox::overrideLogicalContentHeight):

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

12 years ago[chromium] Use CCThread::Task in compositor's RateLimiter instead of Timer
jamesr@google.com [Fri, 29 Jun 2012 23:45:38 +0000 (23:45 +0000)]
[chromium] Use CCThread::Task in compositor's RateLimiter instead of Timer
https://bugs.webkit.org/show_bug.cgi?id=90300

Reviewed by Adrienne Walker.

* platform/graphics/chromium/RateLimiter.cpp:
(RateLimiter::Task):
(WebCore::RateLimiter::Task::create):
(WebCore::RateLimiter::Task::~Task):
(WebCore::RateLimiter::Task::Task):
(WebCore):
(WebCore::RateLimiter::RateLimiter):
(WebCore::RateLimiter::start):
(WebCore::RateLimiter::stop):
(WebCore::RateLimiter::rateLimitContext):
* platform/graphics/chromium/RateLimiter.h:
(WebCore):
(RateLimiter):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::~CCLayerTreeHost):

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

12 years agoRemove type from screenColorProfile API
commit-queue@webkit.org [Fri, 29 Jun 2012 23:40:35 +0000 (23:40 +0000)]
Remove type from screenColorProfile API
https://bugs.webkit.org/show_bug.cgi?id=90299

Patch by Tony Payne <tpayne@chromium.org> on 2012-06-29
Reviewed by Adam Barth.

Source/Platform:

* chromium/public/Platform.h:
(WebKit::Platform::screenColorProfile): Removed type from chromium
public API's version of screenColorProfile().

Source/WebCore:

Covered by existing tests.

* platform/PlatformScreen.h:
(WebCore): Removed type from screenColorProfile().
* platform/blackberry/PlatformScreenBlackBerry.cpp:
(WebCore::screenColorProfile):
* platform/chromium/PlatformScreenChromium.cpp:
(WebCore::screenColorProfile):
* platform/efl/PlatformScreenEfl.cpp:
(WebCore::screenColorProfile):
* platform/gtk/PlatformScreenGtk.cpp:
(WebCore::screenColorProfile):
* platform/image-decoders/ImageDecoder.h:
(WebCore::ImageDecoder::qcmsOutputDeviceProfile): Updated call to
screenColorProfile() to not pass type param.
* platform/mac/PlatformScreenMac.mm:
(WebCore::screenColorProfile):
* platform/qt/PlatformScreenQt.cpp:
(WebCore::screenColorProfile):
* platform/win/PlatformScreenWin.cpp:
(WebCore::screenColorProfile):

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

12 years agoAllow non-borders to be adjusted to less than 1 when zoomed out
eae@chromium.org [Fri, 29 Jun 2012 23:26:06 +0000 (23:26 +0000)]
Allow non-borders to be adjusted to less than 1 when zoomed out
https://bugs.webkit.org/show_bug.cgi?id=90104

Reviewed by Eric Seidel.

Source/WebCore:

Change CSSPrimitiveValue::computeLengthDouble to allow values to be
adjusted to less than 1.0 when zoomed out. This avoids an off by one
error for floats with margins when zoomed out that can cause floats to
wrap and break pages.

The logic that prevents the value from being adjusted to less than 1 was
added to ensure that borders are still painted even when zoomed out.
By moving the logic to ApplyPropertyComputeLength::applyValue, which is
used for borders and outlines, that functionality is preserved.

Test: fast/sub-pixel/float-with-margin-in-container.html

* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::computeLengthDouble):
* css/StyleBuilder.cpp:
(WebCore::ApplyPropertyComputeLength::applyValue):

LayoutTests:

Add test ensuring that floats with margins do not wrap in fixed sized
containers and update existing results as needed.

* fast/css/zoom-background-repeat-x.html:
* fast/sub-pixel/float-with-margin-in-container-expected.txt: Added.
* fast/sub-pixel/float-with-margin-in-container.html: Added.
* platform/chromium-linux/fast/reflections/reflection-with-zoom-expected.png:
* platform/chromium-linux/fast/transforms/bounding-rect-zoom-expected.png:
* platform/chromium-linux/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-linux/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png:
* platform/chromium-mac/fast/transforms/bounding-rect-zoom-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
* platform/chromium-win/fast/transforms/bounding-rect-zoom-expected.txt:
* platform/chromium-win/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
* platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
* platform/mac/fast/transforms/bounding-rect-zoom-expected.txt:
* platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
* platform/mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
* platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:

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

12 years agoLet Xcode have its own way after r121513.
rniwa@webkit.org [Fri, 29 Jun 2012 22:55:07 +0000 (22:55 +0000)]
Let Xcode have its own way after r121513.

* WebCore.xcodeproj/project.pbxproj:

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

12 years ago[CSS Regions] Adding feature defines for CSS Regions for Windows
commit-queue@webkit.org [Fri, 29 Jun 2012 22:51:09 +0000 (22:51 +0000)]
[CSS Regions] Adding feature defines for CSS Regions for Windows
https://bugs.webkit.org/show_bug.cgi?id=88645

Patch by Mihai Balan <mibalan@adobe.com> on 2012-06-29
Reviewed by Tony Chang.

Source/WebCore:

Re-trying to enable CSS regions on Windows. This time only enabling
regions (not exclusions) because of some strange compilation/linking
issues.

* css/CSSPropertyNames.in: Touched file to make sure property names get properly rebuilt.

Source/WebKit/win:

Re-trying to enable CSS regions on Windows. This time only enabling
regions since exclusions lead to some very strange compiling/linking
problems. This time adding preferences code to make sure the settings
get propagated to DRT (previous experiments by abucur showed they
didn't.).

* WebPreferenceKeysPrivate.h: Added preference key for CSS regions
* Interfaces/IWebPreferences.idl: Added getters and setters for CSS regions settings
* WebPreferences.cpp: ditto
(WebPreferences::initializeDefaultSettings):
(WebPreferences::isCSSRegionsEnabled):
(WebPreferences::setCSSRegionsEnabled):
* WebPreferences.h: ditto
(WebPreferences):
* WebView.cpp: Added settings code to handle CSS regions, too
(WebView::notifyPreferencesChanged):

WebKitLibraries:

Re-trying to enable CSS regions on Windows. This time only enabling
regions since exclusions lead to some very strange compiling/linking
problems.

* win/tools/vsprops/FeatureDefines.vsprops: Added default value for ENABLE_CSS_REGIONS
* win/tools/vsprops/FeatureDefinesCairo.vsprops: ditto

LayoutTests:

Re-trying to enable CSS regions on Windows. This time only enabling
regions (not exclusions) because of some strange compilation/linking
issues. Fixing a couple of non-regions related tests that get different
results once regions are enabled.

* platform/win/fast/js/global-constructors-expected.txt: Added WebKitCSSRule to expected

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

12 years agowebkitpy: add comment about how determine_full_port_name() works for apple ports...
dpranke@chromium.org [Fri, 29 Jun 2012 22:25:24 +0000 (22:25 +0000)]
webkitpy: add comment about how determine_full_port_name() works for apple ports, fix -wk2 bug
https://bugs.webkit.org/show_bug.cgi?id=90314

Reviewed by Ojan Vafai.

Add comments and fix a bug in how we would handle the mac-wk2
and win-wk2 port names after confusion around in bug 90312 :).

* Scripts/webkitpy/layout_tests/port/apple.py:
(ApplePort.determine_full_port_name):

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

12 years agowebkitpy: remove support for mac leopard from chromium configurations
dpranke@chromium.org [Fri, 29 Jun 2012 22:16:56 +0000 (22:16 +0000)]
webkitpy: remove support for mac leopard from chromium configurations
https://bugs.webkit.org/show_bug.cgi?id=90313

Reviewed by Tony Chang.

Google has shipped the last version of Chrome that will support
Mac OS 10.5 (Leopard), and we no longer have bots that run this
configuration, so we're removing support for it.

A subsequent change will remove the baselines in platform/chromium-mac-leopard.

* Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:
(BaselineOptimizerTest.test_complex_shadowing):
* Scripts/webkitpy/layout_tests/port/builders.py:
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort):
* Scripts/webkitpy/layout_tests/port/chromium_mac.py:
(ChromiumMacPort):
* Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
(ChromiumMacPortTest.test_versions):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest.test_mac):
(FactoryTest.test_chromium_mac):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(test_rebaseline_and_copy_test_with_lion_result):

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

12 years ago[Chromium] WebFontRendering.cpp requires some OS(ANDROID) ifdefs to build downstream
abarth@webkit.org [Fri, 29 Jun 2012 22:10:43 +0000 (22:10 +0000)]
[Chromium] WebFontRendering.cpp requires some OS(ANDROID) ifdefs to build downstream
https://bugs.webkit.org/show_bug.cgi?id=90292

Reviewed by Nate Chapin.

These ifdefs are required to build this file downstream. There's some
sublte difference between how the OS flags are set upstream and
downstream. This is on our list of issues to resolve, but in the
meantime, this patch makes these files identical upstream and
downstream to reduce noise in the upstreaming queue.

* src/linux/WebFontRendering.cpp:
(WebKit::WebFontRendering::setSubpixelPositioning):

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

12 years ago[Qt][WK2] Unskip/rebaseline some compositing tests.
noam.rosenthal@nokia.com [Fri, 29 Jun 2012 22:02:37 +0000 (22:02 +0000)]
[Qt][WK2] Unskip/rebaseline some compositing tests.
https://bugs.webkit.org/show_bug.cgi?id=90290

Reviewed by Laszlo Gombos.

Rebaseline compositing tests that have good results that are slightly different than the
generic results, and unskipping several tests that should not be skipped.

* platform/qt-5.0-wk2/Skipped:
* platform/qt-5.0-wk2/compositing/iframes/composited-iframe-scroll-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/fixed-position-iframe-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/iframe-content-flipping-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/iframe-size-to-zero-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/invisible-iframe-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/invisible-nested-iframe-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/invisible-nested-iframe-hide-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/layout-on-compositing-change-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/leave-compositing-iframe-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/nested-composited-iframe-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/nested-iframe-scrolling-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/overlapped-iframe-iframe-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/remove-iframe-crash-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/repaint-after-losing-scrollbars-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/scroll-fixed-transformed-element-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/iframes/scroll-grandchild-iframe-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/masks/direct-image-mask-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/masks/masked-ancestor-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/masks/multiple-masks-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/masks/simple-composited-mask-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/become-simple-composited-reflection-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/compositing-change-inside-reflection-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/empty-reflection-with-mask-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/masked-reflection-on-composited-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/nested-reflection-mask-change-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/nested-reflection-transformed-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/nested-reflection-transformed2-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/reflection-in-composited-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/reflection-on-composited-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/reflection-opacity-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/reflection-ordering-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/reflection-positioning-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/reflection-positioning2-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/remove-add-reflection-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/remove-reflection-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/reflections/simple-composited-reflections-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-absolute-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-absolute-overflow-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-relative-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/rtl/rtl-relative-expected.txt: Added.

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

12 years agoSource/WebCore: Web Inspector: Add data length to resource events on timeline to
commit-queue@webkit.org [Fri, 29 Jun 2012 21:57:24 +0000 (21:57 +0000)]
Source/WebCore: Web Inspector: Add data length to resource events on timeline to
keep track of the amount of data loaded and the total data length
https://bugs.webkit.org/show_bug.cgi?id=89244

Patch by Hanna Ma <Hanma@rim.com> on 2012-06-29
Reviewed by Pavel Feldman.

Added data length to inspector timeline popup
content for resources to keep track of the amount of data loaded.
Tests: inspector/timeline/timeline-network-received-data.html

* English.lproj/localizedStrings.js:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willReceiveResourceDataImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willReceiveResourceData):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::willReceiveResourceData):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
* inspector/TimelineRecordFactory.cpp:
(WebCore::TimelineRecordFactory::createReceiveResourceData):
* inspector/TimelineRecordFactory.h:
(TimelineRecordFactory):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._showPopover):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.prototype.reset):
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.Record.prototype.generatePopupContent):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::didReceiveData):
* inspector/timeline/timeline-network-received-data.html: Added.
* inspector/timeline/timeline-network-received-data-expected.txt: Added.
* inspector/timeline/timeline-test.js:

LayoutTests: Web Inspector: Add data length to resource events on timeline to
keep track of the amount of data loaded and the total data length.
https://bugs.webkit.org/show_bug.cgi?id=89244

Patch by Hanna Ma <Hanma@rim.com> on 2012-06-29
Reviewed by Pavel Feldman.

Added tests for resource receive data events.

* inspector/timeline/timeline-network-received-data-expected.txt: Added.
* inspector/timeline/timeline-network-received-data.html: Added.
* inspector/timeline/timeline-test.js:

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

12 years agoFix optimize-baselines to not move baselines from win to win-7sp0
ojan@chromium.org [Fri, 29 Jun 2012 21:53:42 +0000 (21:53 +0000)]
Fix optimize-baselines to not move baselines from win to win-7sp0
https://bugs.webkit.org/show_bug.cgi?id=90312

Reviewed by Dirk Pranke.

It used to consider win-7sp0 as the common directory for all the Apple
windows ports and incorrectly move results out of win.

* Scripts/webkitpy/common/checkout/baselineoptimizer.py:
* Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:
(BaselineOptimizerTest.test_win_does_not_drop_to_win_7sp0):
(BaselineOptimizerTest.test_common_directory_includes_root):

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

12 years ago[WK2] Move intent delivery code from the frame to the page
commit-queue@webkit.org [Fri, 29 Jun 2012 21:43:31 +0000 (21:43 +0000)]
[WK2] Move intent delivery code from the frame to the page
https://bugs.webkit.org/show_bug.cgi?id=89974

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-29
Reviewed by Anders Carlsson.

Move the intent delivery code from the frame to the page
and add the corresponding C API for WKPage.

* UIProcess/API/C/WKPage.cpp:
(WKPageDeliverIntentToFrame):
* UIProcess/API/C/WKPage.h:
* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::stopLoading):
* UIProcess/WebFrameProxy.h:
(WebKit):
* UIProcess/WebPageProxy.cpp:
(WebKit):
(WebKit::WebPageProxy::deliverIntentToFrame):
* UIProcess/WebPageProxy.h:
(WebPageProxy):

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

12 years agoUnreviewed build fix after 121580.
shawnsingh@chromium.org [Fri, 29 Jun 2012 21:25:55 +0000 (21:25 +0000)]
Unreviewed build fix after 121580.

WebKit Linux debug bots was complaining about signed vs unsigned integer comparison.

* html/HTMLCollection.h:
(WebCore::HTMLCollectionCacheBase::HTMLCollectionCacheBase):

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

12 years agoUnreviewed chromium xp rebaseline.
eae@chromium.org [Fri, 29 Jun 2012 21:23:14 +0000 (21:23 +0000)]
Unreviewed chromium xp rebaseline.

* platform/chromium-win-xp/http/tests/inspector: Added.
* platform/chromium-win-xp/http/tests/inspector/resource-tree: Added.
* platform/chromium-win-xp/http/tests/inspector/resource-tree/resource-request-content-while-loading-expected.txt: Added.

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

12 years ago[BlackBerry] Page jumps after post-pinch-zoom re-render
zhajiang@rim.com [Fri, 29 Jun 2012 21:11:39 +0000 (21:11 +0000)]
[BlackBerry] Page jumps after post-pinch-zoom re-render
https://bugs.webkit.org/show_bug.cgi?id=90282

Reviewed by Antonio Gomes.
Patch by Jacky Jiang <zhajiang@rim.com>

PR: 170255
In r120622, we moved ScrollableArea::setConstrainsScrollingToContentEdge(false|true)
from WebPage::setScrollPosition() to BackingStorePrivate::setScrollingOrZooming()
to address an overscroll reset issue.
However, when we are ending bitmap zooming, UI thread can call
BackingStorePrivate::setScrollingOrZooming(false) before WebKit thread
calls WebPage::setScrollPosition(), in which case it will set
ScrollableArea::m_constrainsScrollingToContentEdge to true earlier.
To fix this, we can cache ScrollableArea::m_constrainsScrollingToContentEdge
and always set it to false before we set scroll position in WebKit
thread to avoid scroll position clamping during scrolling, and restore
it to what it was after that.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::setScrollPosition):

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

12 years agoRebaseline some tests where Chrome differs due to V8's different toString implementation
ojan@chromium.org [Fri, 29 Jun 2012 20:32:45 +0000 (20:32 +0000)]
Rebaseline some tests where Chrome differs due to V8's different toString implementation
for some built-ins. We should probably get V8 and JSC to agree here, but that's not terribly
pressing since the web clearly doesn't depend on the specifics here.

* platform/chromium-win/fast/js/global-constructors-expected.txt: Removed.
* platform/chromium/TestExpectations:
* platform/chromium/fast/js/function-names-expected.txt: Added.
* platform/chromium/fast/js/global-constructors-expected.txt: Added.

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

12 years agoCan’t get basic element info from a WKRenderObject
mitz@apple.com [Fri, 29 Jun 2012 20:26:25 +0000 (20:26 +0000)]
Can’t get basic element info from a WKRenderObject
https://bugs.webkit.org/show_bug.cgi?id=90301

Reviewed by Anders Carlsson.

Moved the element info (tag name, id and class names) from WebRenderLayer to WebRenderObject,
and gave WebRenderLayer a reference to a (shallow) WebRenderObject. Added WKRenderObject API
for getting element info, while leaving the WKRenderLayer API in place for now for Safari.

* Shared/API/c/WKRenderLayer.cpp:
(WKRenderLayerGetRenderer): Added this wrapper.
(WKRenderLayerCopyRendererName): Changed to get the name from the renderer.
(WKRenderLayerCopyElementTagName): Changed to go through the renderer.
(WKRenderLayerCopyElementID): Ditto.
(WKRenderLayerGetElementClassNames): Ditto.
* Shared/API/c/WKRenderLayer.h: Added declaration of WKRenderLayerGetRenderer() and comments
about removing older API.
* Shared/API/c/WKRenderObject.cpp:
(WKRenderObjectCopyElementTagName): Added this wrapper.
(WKRenderObjectCopyElementID): Ditto.
(WKRenderObjectGetElementClassNames): Ditto.
* Shared/API/c/WKRenderObject.h:
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode): Removed the element info from the encoding of
WebRenderLayer, and added the renderer. Added the element info to the encoding of
WebRenderObject.
(WebKit::UserMessageDecoder::baseDecode): Updated to match the encoding changes.
* Shared/WebRenderLayer.cpp:
(WebKit::WebRenderLayer::WebRenderLayer): Changed to initialize the m_renderer member
variable with a WebRenderObject for the layer’s renderer, and removed the initialization of
the element-related member variables that were removed.
* Shared/WebRenderLayer.h:
(WebKit::WebRenderLayer::create): Changed to take a renderer instead of renderer and element
info.
(WebKit::WebRenderLayer::renderer): Added this getter.
(WebKit::WebRenderLayer::WebRenderLayer): Changed to take a renderer instead of renderer and
element info.
* Shared/WebRenderObject.cpp:
(WebKit::WebRenderObject::create): Changed to pass true for the shouldIncludeDescendants
parameter.
(WebKit::WebRenderObject::WebRenderObject): Added a shouldIncludeDescdendants boolean
parameter. When it is false, the m_children array remains null. Added initialization of
member variables with the element’s tag name, id and class list.
* Shared/WebRenderObject.h:
(WebKit::WebRenderObject::create): Added an overload that takes a RenderObject and creates
a shallow WebRenderObject.
(WebRenderObject): Changed to take element tag name, id and class list.
(WebKit::WebRenderObject::elementTagName): Added this getter.
(WebKit::WebRenderObject::elementID): Ditto.
(WebKit::WebRenderObject::elementClassNames): Ditto.
(WebKit::WebRenderObject::WebRenderObject):

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

12 years ago[chromium] Remove mapRect and mapQuad from WebTransformationMatrix
jamesr@google.com [Fri, 29 Jun 2012 19:57:29 +0000 (19:57 +0000)]
[chromium] Remove mapRect and mapQuad from WebTransformationMatrix
https://bugs.webkit.org/show_bug.cgi?id=90230

Reviewed by Adrienne Walker.

Source/Platform:

Removes clipping-unaware mapRect, mapQuad and projectPoint functions from the WebTransformationMatrix interface.

* chromium/public/WebTransformationMatrix.h:
(WebTransformationMatrix):

Source/WebCore:

Replaces calls to WebTransformationMatrix::mapRect/mapQuad with clipping-aware calls to CCMathUtils. In most
cases, we do not expect clipping to happen. For others (such as area calculations in CCOverdrawMetrics) we can
handle a clipped quad easily.

* platform/chromium/support/WebTransformationMatrix.cpp:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawRenderPassQuad):
(WebCore::LayerRendererChromium::drawTileQuad):
* platform/graphics/chromium/RenderSurfaceChromium.cpp:
(WebCore::RenderSurfaceChromium::drawableContentRect):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::getDrawRect):
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
(WebCore::transformSurfaceOpaqueRegion):
(WebCore::addOcclusionBehindLayer):
* platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:
(WebCore):
(WebCore::polygonArea):
(WebCore::areaOfMappedQuad):
(WebCore::CCOverdrawMetrics::didUpload):
(WebCore::CCOverdrawMetrics::didCullForDrawing):
(WebCore::CCOverdrawMetrics::didDraw):
* platform/graphics/chromium/cc/CCRenderPass.cpp:
(WebCore::CCRenderPass::appendQuadsToFillScreen):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::drawableContentRect):
* platform/graphics/chromium/cc/CCSharedQuadState.cpp:
(WebCore::CCSharedQuadState::isLayerAxisAlignedIntRect):

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

12 years agoMac build fix after r121575. It rolls out r121547 but didn't roll out the follow...
rniwa@webkit.org [Fri, 29 Jun 2012 19:05:18 +0000 (19:05 +0000)]
Mac build fix after r121575. It rolls out r121547 but didn't roll out the follow up build fix r121553.

* platform/graphics/mac/FontCustomPlatformData.h:
(FontCustomPlatformData):

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

12 years agoUnreviewed GTK gardening, adding a new baseline required after r121555.
zandobersek@gmail.com [Fri, 29 Jun 2012 19:03:09 +0000 (19:03 +0000)]
Unreviewed GTK gardening, adding a new baseline required after r121555.

* platform/gtk/fast/viewport/viewport-91-expected.txt: Added.

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

12 years agoShare the same cache in HTMLCollection and DynamicNodeLists
rniwa@webkit.org [Fri, 29 Jun 2012 18:58:31 +0000 (18:58 +0000)]
Share the same cache in HTMLCollection and DynamicNodeLists
https://bugs.webkit.org/show_bug.cgi?id=90118

Reviewed by Anders Carlsson.

This patch introduces two new base classes DynamicNodeListCacheBase and HTMLCollectionCacheBase to share
the cache object between DynamicNodeList and HTMLCollection. HTMLCollectionCacheBase inherits from
DynamicNodeListCacheBase and contains extra caches and bit flags for HTMLCollection. DynamicNodeList::Cache
and HTMLCollection::Cache had been removed and flattened into these two classes for the easy inheritance.

In DynamicNodeList, we have a very straight forward one-to-one mapping from old Caches member variables:

m_caches.lastItem -> cachedItem()
m_caches.lastItemOffset -> cachedItemOffset()
m_caches.cachedLength -> cachedLength()
m_caches.isItemCacheValid -> isItemCacheValid()
m_caches.isLengthCacheValid -> isLengthCacheValid()
m_caches.type -> removed because it was never used.
m_caches.rootedAtDocument -> isRootedAtDocument()
m_caches.shouldInvalidateOnAttributeChange -> shouldInvalidateOnAttributeChange()

In HTMLCollection, there is one semantic change in the way item cache is managed. Previously, we only had
m_cache.current which was used as both cachedItem() and isItemCacheValid() (not valid when current is null).
There are some asymmetric code changes due to one-to-many relationship. Also, all method names have been updated
to use that of DynamicNodeList terminology. Thus we have the following correspondence:

m_cache.current -> cachedItem() / isItemCacheValid()
m_cache.position -> cachedItemOffset()
m_cache.length -> cachedLength()
m_cache.elementsArrayPosition -> cachedElementsArrayOffset()
m_cache.hasLength -> isLengthCacheValid()
m_cache.hasNameCache -> hasNameCache() / setHasNameCache()
m_cache.idCache -> idCache() / addIdCache()
m_cache.nameCache -> idCache() / addNameCache()

In addition, we had to rename HTMLCollection::clearCache to invalidateCache to avoid the name collision with
HTMLCollectionCacheBase::clearCache.

* dom/ChildNodeList.cpp:
(WebCore::ChildNodeList::length):
(WebCore::ChildNodeList::item):
* dom/DynamicNodeList.cpp:
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):
* dom/DynamicNodeList.h:
(DynamicNodeListCacheBase):
(WebCore::DynamicNodeListCacheBase::DynamicNodeListCacheBase):
(WebCore::DynamicNodeListCacheBase::isRootedAtDocument):
(WebCore::DynamicNodeListCacheBase::shouldInvalidateOnAttributeChange):
(WebCore::DynamicNodeListCacheBase::isItemCacheValid):
(WebCore::DynamicNodeListCacheBase::cachedItem):
(WebCore::DynamicNodeListCacheBase::cachedItemOffset):
(WebCore::DynamicNodeListCacheBase::isLengthCacheValid):
(WebCore::DynamicNodeListCacheBase::cachedLength):
(WebCore::DynamicNodeListCacheBase::setLengthCache):
(WebCore::DynamicNodeListCacheBase::setItemCache):
(WebCore::DynamicNodeListCacheBase::clearCache):
(WebCore):
(WebCore::DynamicNodeList::DynamicNodeList):
(WebCore::DynamicNodeList::invalidateCache):
(WebCore::DynamicNodeList::rootNode):
(DynamicNodeList):
* html/HTMLAllCollection.cpp:
(WebCore::HTMLAllCollection::namedItemWithIndex):
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::invalidateCacheIfNeeded):
(WebCore::HTMLCollection::invalidateCache):
(WebCore::HTMLCollection::isAcceptableElement):
(WebCore::HTMLCollection::itemAfter):
(WebCore::HTMLCollection::length):
(WebCore::HTMLCollection::item):
(WebCore::HTMLCollection::checkForNameMatch):
(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNameCache):
(WebCore::HTMLCollection::hasNamedItem):
(WebCore::HTMLCollection::namedItems):
(WebCore::HTMLCollectionCacheBase::append):
* html/HTMLCollection.h:
(HTMLCollectionCacheBase):
(WebCore::HTMLCollectionCacheBase::HTMLCollectionCacheBase):
(WebCore::HTMLCollectionCacheBase::type):
(WebCore::HTMLCollectionCacheBase::clearCache):
(WebCore::HTMLCollectionCacheBase::setItemCache):
(WebCore::HTMLCollectionCacheBase::cachedElementsArrayOffset):
(WebCore::HTMLCollectionCacheBase::includeChildren):
(WebCore::HTMLCollectionCacheBase::cacheTreeVersion):
(WebCore::HTMLCollectionCacheBase::idCache):
(WebCore::HTMLCollectionCacheBase::nameCache):
(WebCore::HTMLCollectionCacheBase::appendIdCache):
(WebCore::HTMLCollectionCacheBase::appendNameCache):
(WebCore::HTMLCollectionCacheBase::hasNameCache):
(WebCore::HTMLCollectionCacheBase::setHasNameCache):
(WebCore):
(WebCore::HTMLCollection::isEmpty):
(WebCore::HTMLCollection::hasExactlyOneItem):
(WebCore::HTMLCollection::base):
(HTMLCollection):
* html/HTMLFormCollection.cpp:
(WebCore::HTMLFormCollection::item):
(WebCore::HTMLFormCollection::updateNameCache):
* html/HTMLNameCollection.cpp:
(WebCore::HTMLNameCollection::itemAfter):
* html/HTMLNameCollection.h:
(HTMLNameCollection):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::invalidateSelectedItems):
* html/HTMLTableRowsCollection.cpp:
(WebCore::HTMLTableRowsCollection::itemAfter):
* html/HTMLTableRowsCollection.h:
(HTMLTableRowsCollection):

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

12 years ago[EFL] [GTK] [QT] fast/viewport/viewport-91.html is failing after r121555
commit-queue@webkit.org [Fri, 29 Jun 2012 18:52:24 +0000 (18:52 +0000)]
[EFL] [GTK] [QT] fast/viewport/viewport-91.html is failing after r121555
https://bugs.webkit.org/show_bug.cgi?id=90287

Unreviewed gardening. Skip fast/viewport/viewport-91.html
for EFL, GTK and QT ports. The test is failing after r121555.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-29

* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/qt/TestExpectations:

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

12 years agoUnreviewed, rolling out r121572.
tony@chromium.org [Fri, 29 Jun 2012 18:43:33 +0000 (18:43 +0000)]
Unreviewed, rolling out r121572.
http://trac.webkit.org/changeset/121572
https://bugs.webkit.org/show_bug.cgi?id=90249

Breaks Mac build since it depends on r121547, which was rolled
out

Source/WebCore:

* WebCore.exp.in:
* page/AlternativeTextClient.h:
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::populate):
* platform/graphics/cg/ImageBufferDataCG.h:
* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContext::drawLineForDocumentMarker):
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible):
* platform/mac/WebCoreSystemInterface.h:
* platform/network/Credential.h:
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore):
(WebCore::initializeMaximumHTTPConnectionCountPerHost):
* platform/text/TextChecking.h:
(WebCore):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::containsPaintedContent):

Source/WebKit2:

* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_GetValue):
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):
* WebProcess/WebCoreSupport/WebEditorClient.h:

Source/WTF:

* wtf/ThreadingPthreads.cpp:
(WTF::initializeCurrentThreadInternal):

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

12 years agoFix rebaselining for Qt and Apple ports
ojan@chromium.org [Fri, 29 Jun 2012 18:28:36 +0000 (18:28 +0000)]
Fix rebaselining for Qt and Apple ports
https://bugs.webkit.org/show_bug.cgi?id=90204

Reviewed by Dirk Pranke.

-Apporpriately put wk2 results in the -wk2 directories.
-Since Qt and Apple-Win don't have bots that correspond to the
platform/qt and platform/win directories, we need to fudge it
and always put the results in those directories for those ports.

* Scripts/webkitpy/layout_tests/port/builders.py:
(rebaseline_override_dir):
* Scripts/webkitpy/layout_tests/port/factory.py:
(_builder_options):
Identify webkit2 builders by the WK2 in the builder name.
* Scripts/webkitpy/tool/commands/rebaseline.py:
(RebaselineTest._baseline_directory):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(TestRebaseline.test_baseline_directory):

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

12 years agoAdd blitVisibleContents() as public API.
jpetsovits@rim.com [Fri, 29 Jun 2012 18:27:21 +0000 (18:27 +0000)]
Add blitVisibleContents() as public API.
https://bugs.webkit.org/show_bug.cgi?id=90211

Reviewed by Adam Treat.

We keep blitContents() (with src/dst rectangles)
for compatibility with older Cascades sprints for now,
but want to switch to always blitting the full viewport
and this is a good first step.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStore::blitVisibleContents):
(WebKit):
* Api/BackingStore.h:

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

12 years agoUnreviewed, rolling out r121547.
tony@chromium.org [Fri, 29 Jun 2012 18:14:47 +0000 (18:14 +0000)]
Unreviewed, rolling out r121547.
http://trac.webkit.org/changeset/121547
https://bugs.webkit.org/show_bug.cgi?id=90256

Breaks Chromium Mac build

* platform/LocalizedStrings.cpp:
(WebCore::imageTitle):
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setAllowsFontSmoothing):
* platform/graphics/cg/ImageCG.cpp:
(WebCore::Image::drawPattern):
* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::ImageSource::clear):
* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::boundingRect):
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore):
(WebCore::canSetCascadeListForCustomFont):
(WebCore::FontPlatformData::ctFont):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
* platform/graphics/mac/ComplexTextController.cpp:
* platform/graphics/mac/FontCacheMac.mm:
(WebCore):
(WebCore::fontCacheATSNotificationCallback):
(WebCore::FontCache::platformInit):
* platform/graphics/mac/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::createFontCustomPlatformData):
* platform/graphics/mac/FontCustomPlatformData.h:
(WebCore::FontCustomPlatformData::FontCustomPlatformData):
* platform/graphics/mac/SimpleFontDataMac.mm:
(WebCore::SimpleFontData::platformInit):
* platform/graphics/mac/WebLayer.h:
* platform/mac/CursorMac.mm:
(WebCore::Cursor::ensurePlatformCursor):
* platform/mac/DisplaySleepDisabler.cpp:
(WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
(WebCore):
(WebCore::DisplaySleepDisabler::systemActivityTimerFired):
* platform/mac/DisplaySleepDisabler.h:
(DisplaySleepDisabler):
* platform/mac/HTMLConverter.h:
* platform/mac/HTMLConverter.mm:
* platform/mac/PopupMenuMac.mm:
(WebCore::PopupMenuMac::populate):
* platform/mac/ScrollElasticityController.mm:

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

12 years ago[chromium] Adding PrioritizedTexture and replacing ContentsTextureManager
commit-queue@webkit.org [Fri, 29 Jun 2012 17:55:46 +0000 (17:55 +0000)]
[chromium] Adding PrioritizedTexture and replacing ContentsTextureManager
https://bugs.webkit.org/show_bug.cgi?id=84308

Patch by Eric Penner <epenner@google.com> on 2012-06-29
Reviewed by Adrienne Walker.

Source/WebCore:

PrioritizedTextures have a priority such that all texture requests can be
prioritized. There are three steps involved:
    - Call setRequestPriority()
    - Check if the request succeeded with canAcquireBackingTexture()
    - Call acquireBackingTexture() when uploading a new texture.

Internally both the texture requests and the backing textures get sorted.
Requests are sorted so they can be prioritized. Backing textures are sorted
so that they can be recycled/evicted in the right order (lowest priority first).

Prioritizing textures doesn't assign backing textures to texture requests but
rather just marks which textures can have a backing texture "when needed". This
allows us to keep the old textures in use as long as possible.

The unit tests support all the use cases from the original texture manager
but also adds assumptions about priority order throughout all the tests. The
function assertInvariants() is added to test the validity of the manager
and all textures/allocations within it.

The TiledLayerChromium tests are updated to request textures first with
prioritizeTextures(), and update them with the updater (such that allocate
gets called) before pushPropertiesTo is called (when they need to be valid).

* WebCore.gypi:
* platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:
(WebCore::BitmapCanvasLayerTextureUpdater::Texture::Texture):
(WebCore::BitmapCanvasLayerTextureUpdater::createTexture):
(WebCore::BitmapCanvasLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
(WebCore):
(Texture):
(BitmapCanvasLayerTextureUpdater):
* platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::Texture::Texture):
(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::createTexture):
* platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:
(Texture):
(BitmapSkPictureCanvasLayerTextureUpdater):
* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::setTexturePriorities):
(WebCore):
(WebCore::ContentLayerChromium::update):
* platform/graphics/chromium/ContentLayerChromium.h:
(ContentLayerChromium):
* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::createAcceleratedCanvas):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::Texture):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::createTexture):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:
(Texture):
(FrameBufferSkPictureCanvasLayerTextureUpdater):
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerTextureUpdater::Texture::Texture):
(WebCore::ImageLayerTextureUpdater::createTexture):
(WebCore::ImageLayerTextureUpdater::updateTextureRect):
(WebCore::ImageLayerChromium::setTexturePriorities):
(WebCore):
* platform/graphics/chromium/ImageLayerChromium.h:
(ImageLayerChromium):
* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
(WebCore::LayerChromium::setTexturePriorities):
* platform/graphics/chromium/LayerTextureUpdater.h:
(WebCore::LayerTextureUpdater::Texture::texture):
(WebCore::LayerTextureUpdater::Texture::swapTextureWith):
(WebCore::LayerTextureUpdater::Texture::Texture):
(Texture):
* platform/graphics/chromium/ScrollbarLayerChromium.cpp:
(WebCore::ScrollbarLayerChromium::pushPropertiesTo):
(WebCore::ScrollbarLayerChromium::createTextureUpdaterIfNeeded):
(WebCore::ScrollbarLayerChromium::updatePart):
(WebCore):
(WebCore::ScrollbarLayerChromium::setTexturePriorities):
* platform/graphics/chromium/ScrollbarLayerChromium.h:
(ScrollbarLayerChromium):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::UpdatableTile::managedTexture):
(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::textureManager):
(WebCore::TiledLayerChromium::createTile):
(WebCore::TiledLayerChromium::tileNeedsBufferedUpdate):
(WebCore::TiledLayerChromium::updateTiles):
(WebCore::TiledLayerChromium::setTexturePriorities):
(WebCore):
(WebCore::TiledLayerChromium::setTexturePrioritiesInRect):
(WebCore::TiledLayerChromium::resetUpdateState):
(WebCore::TiledLayerChromium::updateLayerRect):
(WebCore::TiledLayerChromium::idleUpdateLayerRect):
(WebCore::TiledLayerChromium::needsIdlePaint):
(WebCore::TiledLayerChromium::idlePaintRect):
* platform/graphics/chromium/TiledLayerChromium.h:
(TiledLayerChromium):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::initializeLayerRenderer):
(WebCore::CCLayerTreeHost::deleteContentsTexturesOnImplThread):
(WebCore::CCLayerTreeHost::beginCommitOnImplThread):
(WebCore::CCLayerTreeHost::commitComplete):
(WebCore::CCLayerTreeHost::evictAllContentTextures):
(WebCore::CCLayerTreeHost::contentsTextureManager):
(WebCore::CCLayerTreeHost::updateLayers):
(WebCore::CCLayerTreeHost::prioritizeTextures):
(WebCore::CCLayerTreeHost::deleteTextureAfterCommit):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore):
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCPrioritizedTexture.cpp: Added.
(WebCore):
(WebCore::CCPrioritizedTexture::CCPrioritizedTexture):
(WebCore::CCPrioritizedTexture::~CCPrioritizedTexture):
(WebCore::CCPrioritizedTexture::setTextureManager):
(WebCore::CCPrioritizedTexture::setDimensions):
(WebCore::CCPrioritizedTexture::requestLate):
(WebCore::CCPrioritizedTexture::acquireBackingTexture):
(WebCore::CCPrioritizedTexture::textureId):
(WebCore::CCPrioritizedTexture::bindTexture):
(WebCore::CCPrioritizedTexture::framebufferTexture2D):
(WebCore::CCPrioritizedTexture::setCurrentBacking):
* platform/graphics/chromium/cc/CCPrioritizedTexture.h: Added.
(WebCore):
(CCPrioritizedTexture):
(WebCore::CCPrioritizedTexture::create):
(WebCore::CCPrioritizedTexture::textureManager):
(WebCore::CCPrioritizedTexture::format):
(WebCore::CCPrioritizedTexture::size):
(WebCore::CCPrioritizedTexture::memorySizeBytes):
(WebCore::CCPrioritizedTexture::setRequestPriority):
(WebCore::CCPrioritizedTexture::requestPriority):
(WebCore::CCPrioritizedTexture::canAcquireBackingTexture):
(WebCore::CCPrioritizedTexture::haveBackingTexture):
(Backing):
(WebCore::CCPrioritizedTexture::Backing::size):
(WebCore::CCPrioritizedTexture::Backing::format):
(WebCore::CCPrioritizedTexture::Backing::memorySizeBytes):
(WebCore::CCPrioritizedTexture::Backing::textureId):
(WebCore::CCPrioritizedTexture::Backing::currentTexture):
(WebCore::CCPrioritizedTexture::Backing::setCurrentTexture):
(WebCore::CCPrioritizedTexture::Backing::Backing):
(WebCore::CCPrioritizedTexture::Backing::~Backing):
(WebCore::CCPrioritizedTexture::isAbovePriorityCutoff):
(WebCore::CCPrioritizedTexture::setAbovePriorityCutoff):
(WebCore::CCPrioritizedTexture::setManagerInternal):
(WebCore::CCPrioritizedTexture::currentBacking):
* platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp: Added.
(WebCore):
(WebCore::CCPrioritizedTextureManager::CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::~CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::setMemoryAllocationLimitBytes):
(WebCore::CCPrioritizedTextureManager::prioritizeTextures):
(WebCore::CCPrioritizedTextureManager::clearPriorities):
(WebCore::CCPrioritizedTextureManager::requestLate):
(WebCore::CCPrioritizedTextureManager::acquireBackingTextureIfNeeded):
(WebCore::CCPrioritizedTextureManager::reduceMemory):
(WebCore::CCPrioritizedTextureManager::clearAllMemory):
(WebCore::CCPrioritizedTextureManager::allBackingTexturesWereDeleted):
(WebCore::CCPrioritizedTextureManager::unlink):
(WebCore::CCPrioritizedTextureManager::link):
(WebCore::CCPrioritizedTextureManager::registerTexture):
(WebCore::CCPrioritizedTextureManager::unregisterTexture):
(WebCore::CCPrioritizedTextureManager::returnBackingTexture):
(WebCore::CCPrioritizedTextureManager::createBacking):
(WebCore::CCPrioritizedTextureManager::destroyBacking):
(WebCore::CCPrioritizedTextureManager::assertInvariants):
* platform/graphics/chromium/cc/CCPrioritizedTextureManager.h: Added.
(WebCore):
(CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::create):
(WebCore::CCPrioritizedTextureManager::createTexture):
(WebCore::CCPrioritizedTextureManager::memoryUseBytes):
(WebCore::CCPrioritizedTextureManager::memoryAboveCutoffBytes):
(WebCore::CCPrioritizedTextureManager::setMaxMemoryLimitBytes):
(WebCore::CCPrioritizedTextureManager::maxMemoryLimitBytes):
(WebCore::CCPrioritizedTextureManager::setPreferredMemoryLimitBytes):
(WebCore::CCPrioritizedTextureManager::preferredMemoryLimitBytes):
(WebCore::CCPrioritizedTextureManager::setMaxMemoryPriorityCutoff):
(WebCore::CCPrioritizedTextureManager::maxMemoryPriorityCutoff):
(WebCore::CCPrioritizedTextureManager::compareTextures):
(WebCore::CCPrioritizedTextureManager::compareBackings):
* platform/graphics/chromium/cc/CCPriorityCalculator.cpp: Added.
(WebCore):
(WebCore::CCPriorityCalculator::uiPriority):
(WebCore::CCPriorityCalculator::visiblePriority):
(WebCore::CCPriorityCalculator::lingeringPriority):
(WebCore::CCPriorityCalculator::priorityFromDistance):
(WebCore::CCPriorityCalculator::priorityFromVisibility):
* platform/graphics/chromium/cc/CCPriorityCalculator.h: Added.
(WebCore):
(CCPriorityCalculator):
(WebCore::CCPriorityCalculator::highestPriority):
(WebCore::CCPriorityCalculator::lowestPriority):
(WebCore::CCPriorityCalculator::priorityIsLower):
(WebCore::CCPriorityCalculator::priorityIsHigher):
* platform/graphics/chromium/cc/CCTextureUpdater.cpp:

Source/WebKit/chromium:

* WebKit.gypi:
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::commitCompleteOnCCThread):
* tests/CCPrioritizedTextureTest.cpp: Added.
(WTF):
(CCPrioritizedTextureTest):
(WTF::CCPrioritizedTextureTest::CCPrioritizedTextureTest):
(WTF::CCPrioritizedTextureTest::~CCPrioritizedTextureTest):
(WTF::CCPrioritizedTextureTest::texturesMemorySize):
(WTF::CCPrioritizedTextureTest::createManager):
(WTF::CCPrioritizedTextureTest::validateTexture):
(WTF::CCPrioritizedTextureTest::allocator):
(WTF::TEST_F):
* tests/CCTiledLayerTestCommon.cpp:
(WebKitTests::FakeLayerTextureUpdater::Texture::Texture):
(WebKitTests::FakeLayerTextureUpdater::Texture::updateRect):
(WebKitTests::FakeLayerTextureUpdater::createTexture):
(WebKitTests::FakeTiledLayerChromium::FakeTiledLayerChromium):
(WebKitTests::FakeTiledLayerWithScaledBounds::FakeTiledLayerWithScaledBounds):
* tests/CCTiledLayerTestCommon.h:
(Texture):
(FakeLayerTextureUpdater):
(FakeTiledLayerChromium):
(FakeTiledLayerWithScaledBounds):
* tests/TiledLayerChromiumTest.cpp:

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

12 years agoRemove BUILDING_ON_LEOPARD now that no ports build on Leopard
eric@webkit.org [Fri, 29 Jun 2012 17:36:26 +0000 (17:36 +0000)]
Remove BUILDING_ON_LEOPARD now that no ports build on Leopard
https://bugs.webkit.org/show_bug.cgi?id=90249

Reviewed by Ryosuke Niwa.

Source/WebCore:

I don't think I quite got it all yet, but this is another step towards
removing Leopard support in WebCore.

* WebCore.exp.in:
* page/AlternativeTextClient.h:
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::populate):
* platform/graphics/cg/ImageBufferDataCG.h:
* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContext::drawLineForDocumentMarker):
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible):
* platform/mac/WebCoreSystemInterface.h:
* platform/network/Credential.h:
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore):
(WebCore::initializeMaximumHTTPConnectionCountPerHost):
* platform/text/TextChecking.h:
(WebCore):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::containsPaintedContent):

Source/WebKit2:

* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_GetValue):
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):
* WebProcess/WebCoreSupport/WebEditorClient.h:

Source/WTF:

* wtf/ThreadingPthreads.cpp:
(WTF::initializeCurrentThreadInternal):

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

12 years agoAdd support for --force parameter to run-performance-tests
zoltan@webkit.org [Fri, 29 Jun 2012 17:29:42 +0000 (17:29 +0000)]
Add support for --force parameter to run-performance-tests
https://bugs.webkit.org/show_bug.cgi?id=90279

Reviewed by Dirk Pranke.

It's helpful to be able to run tests from the Skipped list of the performance tests.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._parse_args):
(PerfTestsRunner._collect_tests):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py: Add test.
(test_collect_tests_with_skipped_list):

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

12 years agoUnreviewed, rolling out r121562.
kling@webkit.org [Fri, 29 Jun 2012 17:20:19 +0000 (17:20 +0000)]
Unreviewed, rolling out r121562.
http://trac.webkit.org/changeset/121562
https://bugs.webkit.org/show_bug.cgi?id=89945

Broke a couple of editing/pasteboard tests.

* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::length):
(WebCore::PropertySetCSSStyleDeclaration::item):
(WebCore::PropertySetCSSStyleDeclaration::cssText):
(WebCore::PropertySetCSSStyleDeclaration::setCssText):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyPriority):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyShorthand):
(WebCore::PropertySetCSSStyleDeclaration::isPropertyImplicit):
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::removeProperty):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
(WebCore::PropertySetCSSStyleDeclaration::copy):
(WebCore::PropertySetCSSStyleDeclaration::makeMutable):
(WebCore::PropertySetCSSStyleDeclaration::cssPropertyMatches):
(WebCore::InlineCSSStyleDeclaration::didMutate):
(WebCore::InlineCSSStyleDeclaration::parentStyleSheet):
* css/PropertySetCSSStyleDeclaration.h:
(WebCore::PropertySetCSSStyleDeclaration::clearParentElement):
(PropertySetCSSStyleDeclaration):
(WebCore::InlineCSSStyleDeclaration::InlineCSSStyleDeclaration):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::ensureInlineCSSStyleDeclaration):
(WebCore::StylePropertySet::clearParentElement):
(WebCore):
* css/StylePropertySet.h:
(StylePropertySet):
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::destroyInlineStyle):
(WebCore):
* dom/ElementAttributeData.h:
(ElementAttributeData):
* dom/StyledElement.cpp:
(WebCore::StyledElement::~StyledElement):
(WebCore):
(WebCore::StyledElement::styleAttributeChanged):
* dom/StyledElement.h:
(StyledElement):
(WebCore::StyledElement::destroyInlineStyle):

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

12 years ago[Qt] Add missing support for tiled shadow blur on fillRect
commit-queue@webkit.org [Fri, 29 Jun 2012 17:17:02 +0000 (17:17 +0000)]
[Qt] Add missing support for tiled shadow blur on fillRect
https://bugs.webkit.org/show_bug.cgi?id=90082

Patch by Bruno de Oliveira Abinader <bruno.abinader@basyskom.com> on 2012-06-29
Reviewed by Noam Rosenthal.

This overloaded fillRect implementation also supports this optimization in
certain situations.

* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore::GraphicsContext::fillRect):

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

12 years ago[GTK] Enable CSS grid layout LayoutTests on GTK+
tony@chromium.org [Fri, 29 Jun 2012 16:48:06 +0000 (16:48 +0000)]
[GTK] Enable CSS grid layout LayoutTests on GTK+
https://bugs.webkit.org/show_bug.cgi?id=90226

Reviewed by Martin Robinson.

Source/WebKit/gtk:

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::setCSSGridLayoutEnabled): Pass through to Settings object.
* WebCoreSupport/DumpRenderTreeSupportGtk.h:
(DumpRenderTreeSupportGtk):

Tools:

This feature is disabled via Settings by default, but for testing,
we enable it using layoutTestController.overridePreferences. Add the
necessary plumbing for DRT.

WTR already works because support was added for Apple Mac earlier.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(resetDefaultsToConsistentValues): Feature is off by default.
* DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
(LayoutTestController::overridePreference): Add handling of WebKitCSSGridLayoutEnabled.

LayoutTests:

* platform/gtk/TestExpectations: Tests should pass.

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

12 years agoUnreviewed gardening.
senorblanco@chromium.org [Fri, 29 Jun 2012 16:01:12 +0000 (16:01 +0000)]
Unreviewed gardening.

Rebaseline tests affected by r121452.

* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
* platform/chromium-linux/svg/W3C-I18N/text-anchor-no-markup-expected.png:
* platform/chromium-linux/svg/carto.net/scrollbar-expected.png:
* platform/chromium-mac-snowleopard/fast/borders/border-image-scale-transform-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-I18N/text-anchor-no-markup-expected.png:
* platform/chromium-mac-snowleopard/svg/carto.net/scrollbar-expected.png:
* platform/chromium-mac-snowleopard/svg/custom/image-small-width-height-expected.png:
* platform/chromium-mac-snowleopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
* platform/chromium-mac-snowleopard/transitions/cross-fade-background-image-expected.png:
* platform/chromium-mac/fast/borders/border-image-scale-transform-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
* platform/chromium-mac/svg/W3C-I18N/text-anchor-no-markup-expected.png:
* platform/chromium-mac/svg/W3C-SVG-1.1/render-groups-01-b-expected.png:
* platform/chromium-mac/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
* platform/chromium-mac/svg/W3C-SVG-1.1/struct-symbol-01-b-expected.png:
* platform/chromium-mac/svg/carto.net/scrollbar-expected.png:
* platform/chromium-mac/svg/custom/image-small-width-height-expected.png:
* platform/chromium-mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
* platform/chromium-mac/transitions/cross-fade-background-image-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
* platform/chromium-win-xp/svg/W3C-I18N/text-anchor-no-markup-expected.png:
* platform/chromium-win-xp/svg/carto.net: Removed.
* platform/chromium-win/fast/borders/border-image-scale-transform-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
* platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.png:
* platform/chromium-win/svg/W3C-SVG-1.1/render-groups-01-b-expected.png:
* platform/chromium-win/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
* platform/chromium-win/svg/W3C-SVG-1.1/struct-symbol-01-b-expected.png:
* platform/chromium-win/svg/carto.net/scrollbar-expected.png:
* platform/chromium-win/svg/custom/image-small-width-height-expected.png:
* platform/chromium-win/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
* platform/chromium-win/transitions/cross-fade-background-image-expected.png:
* platform/chromium/TestExpectations:
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Added.
* platform/win-7sp0/svg/W3C-I18N/text-anchor-no-markup-expected.png: Added.
* platform/win-7sp0/svg/carto.net: Added.
* platform/win-7sp0/svg/carto.net/scrollbar-expected.png: Added.
* platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Removed.
* platform/win/svg/W3C-I18N/text-anchor-no-markup-expected.png: Removed.
* platform/win/svg/carto.net: Removed.
* platform/win/svg/carto.net/scrollbar-expected.png: Removed.

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

12 years agoBuild fix - These should not be executable!
beidson@apple.com [Fri, 29 Jun 2012 15:57:01 +0000 (15:57 +0000)]
Build fix - These should not be executable!

Rubberstamped by Jessie Berlin.

* loader/cache/CachedSVGDocument.cpp: Removed property svn:executable.
* loader/cache/CachedSVGDocument.h: Removed property svn:executable.

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

12 years ago[chromium] Layout Test inspector/debugger/debugger-compile-and-run.html is failing
vsevik@chromium.org [Fri, 29 Jun 2012 15:30:54 +0000 (15:30 +0000)]
[chromium] Layout Test inspector/debugger/debugger-compile-and-run.html is failing
https://bugs.webkit.org/show_bug.cgi?id=90285

Reviewed by Pavel Feldman.

* inspector/debugger/debugger-compile-and-run.html:

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

12 years agoUpdate FIXME comment in XMLDocumentParser::wellFormed
commit-queue@webkit.org [Fri, 29 Jun 2012 15:27:45 +0000 (15:27 +0000)]
Update FIXME comment in XMLDocumentParser::wellFormed
https://bugs.webkit.org/show_bug.cgi?id=90223

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-29
Reviewed by Adam Barth.

XMLDocumentParser::wellFormed is still used by the XMLHttpRequest to check if the responseXML was well formed.
So it can't be removed.

* xml/parser/XMLDocumentParser.h:
(XMLDocumentParser):

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

12 years ago[Qt] Added Qt port for garden-o-matic.
commit-queue@webkit.org [Fri, 29 Jun 2012 15:23:40 +0000 (15:23 +0000)]
[Qt] Added Qt port for garden-o-matic.
https://bugs.webkit.org/show_bug.cgi?id=82719

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-06-29
Reviewed by Adam Barth.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
(.):

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

12 years agoSeparate mutating CSSStyleDeclaration operations.
kling@webkit.org [Fri, 29 Jun 2012 15:21:02 +0000 (15:21 +0000)]
Separate mutating CSSStyleDeclaration operations.
<http://webkit.org/b/89945>

Reviewed by Antti Koivisto.

Use separate paths for mutating the StylePropertySet wrapped by a CSSStyleDeclaration.
PropertySetCSSStyleDeclaration now has:

    - propertySet() const
    - ensureMutablePropertySet()

This is prep work for supporting immutable ElementAttributeData objects, the idea being
that calling ensureMutablePropertySet() may cause the element to convert its internal
attribute storage (which also holds the inline StylePropertySet.)

To that end, also removed the weird logic that allowed you to kill the inline style object
by removing the 'style' attribute. We now simply clear out all the properties in that case
which saves us a bunch of hassle (no need for a ~StyledElement anymore.)
Note that InlineCSSStyleDeclaration now refs the element rather than the inline style.

There should be no web-facing behavior change from any of this.

* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::length):
(WebCore::PropertySetCSSStyleDeclaration::item):
(WebCore::PropertySetCSSStyleDeclaration::cssText):
(WebCore::PropertySetCSSStyleDeclaration::setCssText):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyPriority):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyShorthand):
(WebCore::PropertySetCSSStyleDeclaration::isPropertyImplicit):
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::removeProperty):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
(WebCore::PropertySetCSSStyleDeclaration::copy):
(WebCore::PropertySetCSSStyleDeclaration::makeMutable):
(WebCore::PropertySetCSSStyleDeclaration::cssPropertyMatches):
(WebCore::InlineCSSStyleDeclaration::InlineCSSStyleDeclaration):
(WebCore::InlineCSSStyleDeclaration::ref):
(WebCore::InlineCSSStyleDeclaration::deref):
(WebCore::InlineCSSStyleDeclaration::didMutate):
(WebCore::InlineCSSStyleDeclaration::parentStyleSheet):
(WebCore::InlineCSSStyleDeclaration::ensureMutablePropertySet):
* css/PropertySetCSSStyleDeclaration.h:
(PropertySetCSSStyleDeclaration):
(WebCore::PropertySetCSSStyleDeclaration::propertySet):
(WebCore::PropertySetCSSStyleDeclaration::ensureMutablePropertySet):
(InlineCSSStyleDeclaration):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::ensureInlineCSSStyleDeclaration):
* css/StylePropertySet.h:
(StylePropertySet):
* dom/ElementAttributeData.cpp:
* dom/ElementAttributeData.h:
(ElementAttributeData):
* dom/StyledElement.cpp:
(WebCore::StyledElement::styleAttributeChanged):
* dom/StyledElement.h:
(WebCore::StyledElement::~StyledElement):
(StyledElement):

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

12 years ago[chromium] Roll chromium rev to 144906
commit-queue@webkit.org [Fri, 29 Jun 2012 15:19:32 +0000 (15:19 +0000)]
[chromium] Roll chromium rev to 144906
https://bugs.webkit.org/show_bug.cgi?id=90278

Unreviewed. Deps roll.

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-29

* DEPS:

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

12 years agoDon't call SegmentedString::toString() twice in XMLDocumentParser::append(const Segme...
commit-queue@webkit.org [Fri, 29 Jun 2012 15:16:21 +0000 (15:16 +0000)]
Don't call SegmentedString::toString() twice in XMLDocumentParser::append(const SegmentedString&)
https://bugs.webkit.org/show_bug.cgi?id=90254

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-29
Reviewed by Adam Barth.

We can reuse the local variable parseString instead of calling s.toString() again.
No behavior change, so no new tests.

* xml/parser/XMLDocumentParser.cpp:
(WebCore::XMLDocumentParser::append):

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

12 years agoUnreviewed build fix after r121518, adding a missing symbol to symbols.filter.
zandobersek@gmail.com [Fri, 29 Jun 2012 14:38:23 +0000 (14:38 +0000)]
Unreviewed build fix after r121518, adding a missing symbol to symbols.filter.

* Source/autotools/symbols.filter:

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

12 years ago[chromium] Unreviewed gardening.
senorblanco@chromium.org [Fri, 29 Jun 2012 14:35:46 +0000 (14:35 +0000)]
[chromium] Unreviewed gardening.

New baselines for tests added in r121513.

* platform/chromium-linux/css3/filters/effect-reference-expected.png: Removed.
* platform/chromium-linux/css3/filters/effect-reference-expected.txt: Removed.
* platform/chromium-linux/css3/filters/effect-reference-external-expected.png: Removed.
* platform/chromium-linux/css3/filters/effect-reference-external-expected.txt: Removed.
* platform/chromium-linux/css3/filters/effect-reference-hw-expected.png: Removed.
* platform/chromium-linux/css3/filters/effect-reference-hw-expected.txt: Removed.
* platform/chromium-linux/css3/filters/effect-reference-ordering-expected.png: Removed.
* platform/chromium-linux/css3/filters/effect-reference-ordering-expected.txt: Removed.
* platform/chromium-mac/css3/filters/effect-reference-expected.png: Added.
* platform/chromium-mac/css3/filters/effect-reference-expected.txt: Added.
* platform/chromium-mac/css3/filters/effect-reference-external-expected.png: Added.
* platform/chromium-mac/css3/filters/effect-reference-hw-expected.png: Added.
* platform/chromium-mac/css3/filters/effect-reference-hw-expected.txt: Added.
* platform/chromium-mac/css3/filters/effect-reference-ordering-expected.png: Added.
* platform/chromium-mac/css3/filters/effect-reference-ordering-expected.txt: Added.
* platform/chromium-win/css3/filters/effect-reference-expected.png: Added.
* platform/chromium-win/css3/filters/effect-reference-expected.txt: Added.
* platform/chromium-win/css3/filters/effect-reference-external-expected.png: Added.
* platform/chromium-win/css3/filters/effect-reference-hw-expected.png: Added.
* platform/chromium-win/css3/filters/effect-reference-hw-expected.txt: Added.
* platform/chromium-win/css3/filters/effect-reference-ordering-expected.png: Added.
* platform/chromium-win/css3/filters/effect-reference-ordering-expected.txt: Added.
* platform/chromium/TestExpectations:
* platform/chromium/css3/filters/effect-reference-external-expected.txt: Added.

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

12 years agoCrash when flowing a fixed positioned element into a region.
mihnea@adobe.com [Fri, 29 Jun 2012 14:31:19 +0000 (14:31 +0000)]
Crash when flowing a fixed positioned element into a region.
https://bugs.webkit.org/show_bug.cgi?id=88133

Reviewed by Julien Chaffraix and Abhishek Arya.

Source/WebCore:

When a fixed positioned element is collected into a named flow, we have to make sure
that such element has the RenderFlowThread as containing block instead of RenderView,
so that the fixed positioned element is laid out properly.
Making the RenderFlowThread the top most containing block for named flow elements required the
modification of RenderLayer::convertToLayerCoords so that the fixed positioned elements inside the
named flow take the same code path as the absolute positioned elements inside the named flow.
I also added a method, checkBlockPositionedObjectsNeedLayout, in order to verify that a block
that is ending its layout, setNeedsLayout(false), has all the positioned children laid out.
This way, we will hit an assertion if an out-of-flow positioned child inside a RenderFlowThread
is not laid out after the RenderFlowThread is laid out.

Tests: fast/regions/absolute-pos-elem-in-named-flow.html
       fast/regions/absolute-pos-elem-in-region.html
       fast/regions/fixed-pos-elem-in-named-flow.html
       fast/regions/fixed-pos-elem-in-named-flow2.html
       fast/regions/fixed-pos-elem-in-region.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::checkPositionedObjectsNeedLayout):
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::convertToLayerCoords):
* rendering/RenderObject.cpp:
(WebCore):
(WebCore::RenderObject::checkBlockPositionedObjectsNeedLayout):
(WebCore::RenderObject::containingBlock):
(WebCore::RenderObject::container):
* rendering/RenderObject.h:
(RenderObject):
(WebCore::RenderObject::setNeedsLayout):

LayoutTests:

When a fixed positioned element is collected into a named flow, we have to make sure
that such element has the RenderFlowThread as containing block instead of RenderView,
so that the fixed positioned element is laid out properly.

* fast/regions/absolute-pos-elem-in-named-flow-expected.txt: Added.
* fast/regions/absolute-pos-elem-in-named-flow.html: Added.
* fast/regions/absolute-pos-elem-in-region-expected.html: Added.
* fast/regions/absolute-pos-elem-in-region.html: Added.
* fast/regions/fixed-pos-elem-in-named-flow-expected.txt: Added.
* fast/regions/fixed-pos-elem-in-named-flow.html: Added.
* fast/regions/fixed-pos-elem-in-named-flow2-expected.txt: Added.
* fast/regions/fixed-pos-elem-in-named-flow2.html: Added.
* fast/regions/fixed-pos-elem-in-region-expected.html: Added.
* fast/regions/fixed-pos-elem-in-region.html: Added.

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

12 years agoWeb Inspector: [Device Metrics] "Fit window" option inhibits adjusting the page zoom...
apavlov@chromium.org [Fri, 29 Jun 2012 13:52:10 +0000 (13:52 +0000)]
Web Inspector: [Device Metrics] "Fit window" option inhibits adjusting the page zoom factor
https://bugs.webkit.org/show_bug.cgi?id=90187

Reviewed by Vsevolod Vlasov.

Source/WebKit/chromium:

This change fixes the stale zoom factor, which does not get updated upon browser window resize in the "Fit window" mode.
The expected test results have little to do with actual dimensions of the test page in Chrome on a real mobile device,
since Chrome on the mobile uses a different zooming technique (pageScaleFactor-based viewport using layout width
rather than plain pageZoomFactor) and font boosting, which has not been upstreamed yet.

* src/WebDevToolsAgentImpl.cpp:
(WebKit::DeviceMetricsSupport::autoZoomPageToFitWidth):
(WebKit::DeviceMetricsSupport::ensureOriginalZoomFactor):

LayoutTests:

* inspector/styles/override-screen-size-expected.txt:
* platform/chromium/inspector/styles/device-metrics-fit-window-expected.txt:

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

12 years agoDon't hardcode target dpi of 160 (it should be 96 on desktop)
commit-queue@webkit.org [Fri, 29 Jun 2012 12:51:57 +0000 (12:51 +0000)]
Don't hardcode target dpi of 160 (it should be 96 on desktop)
https://bugs.webkit.org/show_bug.cgi?id=88114

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-06-29
Reviewed by Adam Barth.

Source/WebCore:

No behavioural change, current tests in fast/viewport cover all
functionality.

* WebCore.exp.in: Updated symbol for computeViewportAttributes.
* dom/ViewportArguments.cpp: Use new parameter for devicePixelRatio
                             and don't calculate it anymore.
(WebCore::computeViewportAttributes):
* dom/ViewportArguments.h: Change the deviceDPI parameter to
                           devicePixelRatio and put the onus
                           on the embedder to supply the
                           correct value.  Add temporary constant.
(WebCore):

Source/WebKit/blackberry:

Added new WebSetting to specify what the devicePixelRatio should be.
Updated the call to computeViewportAttributes.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):
* Api/WebSettings.cpp:
(WebKit):
(BlackBerry::WebKit::WebSettings::standardSettings):
(BlackBerry::WebKit::WebSettings::devicePixelRatio):
(BlackBerry::WebKit::WebSettings::setDevicePixelRatio):
* Api/WebSettings.h:
* WebKitSupport/DumpRenderTreeSupport.cpp:
(DumpRenderTreeSupport::dumpConfigurationForViewport):

Source/WebKit/chromium:

Updated the call to computeViewportAttributes.

* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):

Source/WebKit/efl:

Updated the call to computeViewportAttributes.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::dumpConfigurationForViewport):
* ewk/ewk_view.cpp:
(_ewk_view_viewport_attributes_compute):

Source/WebKit/gtk:

Updated the call to computeViewportAttributes.

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::dumpConfigurationForViewport):
* webkit/webkitviewportattributes.cpp:
(webkitViewportAttributesRecompute):

Source/WebKit/qt:

Updated the call to computeViewportAttributes.

* Api/qwebpage.cpp:
(QWebPage::viewportAttributesForSize):
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::viewportAsText):

Source/WebKit2:

Updated the call to computeViewportAttributes.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::sendViewportAttributesChanged):
(WebKit::WebPage::viewportConfigurationAsText):

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

12 years agoJS binding code generator doesn't handle "attribute unsigned long[]" well.
commit-queue@webkit.org [Fri, 29 Jun 2012 12:25:52 +0000 (12:25 +0000)]
JS binding code generator doesn't handle "attribute unsigned long[]" well.
https://bugs.webkit.org/show_bug.cgi?id=84540

Patch by Vineet Chaudhary <rgf748@motorola.com> on 2012-06-29
Reviewed by Kentaro Hara.

In JS/V8 Bindings using traits instead of specialised functions.
Also added support for "unsigned long" in JSDOMBinding and V8Binding.

No new tests, as no behavioural changes.

* bindings/js/JSDOMBinding.h:
(WebCore::Traits::arrayJSValue):
(WebCore::jsArray):
* bindings/v8/V8Binding.h:
(WebCore::Traits::arrayV8Value):
(WebCore::v8Array):

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

12 years agoUnreviewed mac build fix after r121547.
kling@webkit.org [Fri, 29 Jun 2012 12:23:48 +0000 (12:23 +0000)]
Unreviewed mac build fix after r121547.
Remove the now-unused FontCustomPlatformData::m_atsContainer.

* platform/graphics/mac/FontCustomPlatformData.h:
(FontCustomPlatformData):

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

12 years ago<textarea> unnecessarily saves the value in some cases
tkent@chromium.org [Fri, 29 Jun 2012 12:08:52 +0000 (12:08 +0000)]
<textarea> unnecessarily saves the value in some cases
https://bugs.webkit.org/show_bug.cgi?id=90259

Reviewed by Hajime Morita.

Source/WebCore:

Test: fast/forms/textarea/textarea-state-restore.html

* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::saveFormControlState):
We apply EOL normalization to value(), but don't apply it to
defaultValue(). Also value() can return a null string, which never
equals to any strings. To check m_isDirty is what we need..

LayoutTests:

* fast/forms/textarea/textarea-state-restore-expected.txt: Added.
* fast/forms/textarea/textarea-state-restore.html: Added.

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

12 years agoWeb Inspector: Provide source data for all known rule types in CSSParser, except...
apavlov@chromium.org [Fri, 29 Jun 2012 12:06:11 +0000 (12:06 +0000)]
Web Inspector: Provide source data for all known rule types in CSSParser, except "keyframe" and "region"
https://bugs.webkit.org/show_bug.cgi?id=88420

Reviewed by Antti Koivisto.

This change transitions the CSS source code model from a flat list of style rules to a tree of all types of CSS rules
(some of them lack actual source code data), which is crucial to model-based CSS stylesheet source editing
(add/remove CSS rule) and navigation.
As a side effect, the CSS parsing performance on PerformanceTests/Parser/css-parser-yui.html is improved roughly by 2%:
- originally: median= 282.051282051 runs/s, stdev= 1.51236798322 runs/s, min= 278.481012658 runs/s, max= 283.870967742 runs/s
- with patch applied: median= 287.206266319 runs/s, stdev= 1.31518320219 runs/s, min= 282.051282051 runs/s, max= 288.713910761 runs/s

No new tests, as there is no client-visible behavior change. Existing Inspector tests will be modified
to test the new data provided, along with the necessary Inspector plumbing.

* css/CSSGrammar.y:
* css/CSSMediaRule.cpp:
(WebCore::CSSMediaRule::reattach): Check for mediaQueries() validity before reattaching.
* css/CSSParser.cpp: Unless explicitly specified below, the method changes are related to the extension of the
source-based CSS model provided by the parser.
(WebCore::CSSParser::CSSParser):
(WebCore::CSSParser::setupParser):
(WebCore::CSSParser::parseDeclaration): Accept a CSSRuleSourceData for filling, since it now contains
the related style source range.
(WebCore::CSSParser::createImportRule):
(WebCore::CSSParser::createMediaRule): Create CSSMediaRule even if media and rules are empty,
which is consistent with Mozilla.
(WebCore::CSSParser::processAndAddNewRuleToSourceTreeIfNeeded):
(WebCore):
(WebCore::CSSParser::addNewRuleToSourceTree):
(WebCore::CSSParser::createKeyframesRule):
(WebCore::CSSParser::createStyleRule):
(WebCore::CSSParser::createFontFaceRule):
(WebCore::CSSParser::createPageRule):
(WebCore::CSSParser::createRegionRule):
(WebCore::CSSParser::fixUnparsedPropertyRanges):
(WebCore::CSSParser::markRuleHeaderStart):
(WebCore::CSSParser::markRuleHeaderEnd):
(WebCore::CSSParser::markRuleBodyStart):
(WebCore::CSSParser::markRuleBodyEnd):
(WebCore::CSSParser::markPropertyStart):
(WebCore::CSSParser::markPropertyEnd):
* css/CSSParser.h:
(CSSParser):
* css/CSSPropertySourceData.h: Extend the model to handle more types of rules and their containments.
(WebCore):
(WebCore::CSSRuleSourceData::create):
(WebCore::CSSRuleSourceData::createUnknown):
(CSSRuleSourceData):
(WebCore::CSSRuleSourceData::CSSRuleSourceData):
* inspector/InspectorStyleSheet.cpp: Follow the CSSParser API changes but retain the flat stored CSS rules structure.
(ParsedStyleSheet):
(flattenSourceData): Flatten the rule tree to retain the existing rule-handling code intact.
(ParsedStyleSheet::setSourceData):
(ParsedStyleSheet::ruleSourceDataAt):
(WebCore::InspectorStyle::buildObjectForStyle):
(WebCore::InspectorStyle::setPropertyText):
(WebCore::InspectorStyle::styleText):
(WebCore::InspectorStyleSheet::setRuleSelector):
(WebCore::InspectorStyleSheet::deleteRule):
(WebCore::InspectorStyleSheet::buildObjectForRule):
(WebCore::InspectorStyleSheet::buildObjectForStyle):
(WebCore::InspectorStyleSheet::ensureSourceData):
(WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle):
(WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
(WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
* inspector/InspectorStyleSheet.h:

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

12 years ago[Qt][WTR] Get rid of using DumpRenderTreeSupportQt
kbalazs@webkit.org [Fri, 29 Jun 2012 12:05:29 +0000 (12:05 +0000)]
[Qt][WTR] Get rid of using DumpRenderTreeSupportQt
https://bugs.webkit.org/show_bug.cgi?id=90262

Reviewed by Alexey Proskuryakov.

Now that we decided to not support v8 in WebKit2
we can get rid of using DumpRenderTreeSupportQt
in WebKitTestRunner.

* Tools.pro:
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::resetAfterTest):
(WTR::InjectedBundlePage::didClearWindowForFrame):
* WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:

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

12 years agoWeb Inspector: Annotate TextViewer.js
vsevik@chromium.org [Fri, 29 Jun 2012 11:22:37 +0000 (11:22 +0000)]
Web Inspector: Annotate TextViewer.js
https://bugs.webkit.org/show_bug.cgi?id=90266

Reviewed by Yury Semikhatsky.

Annotated TextViewer.js and fixed found errors.
Drive-by: Fixed NativeMemorySnapshotView.js compilation.
Drive-by: Fixed protocol-externs.js compilation.
Drive-by: Removed unused platform parameter from TextViewer constructor.
* inspector/Inspector.json:
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::runScript):
* inspector/InspectorDebuggerAgent.h:
(InspectorDebuggerAgent):
* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.NativeMemoryBarChart.prototype._updateView):
* inspector/front-end/SourceFrame.js:
(WebInspector.SourceFrame):
* inspector/front-end/TextViewer.js:
(WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange):

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

12 years ago[EFL] Gardening after r121468
commit-queue@webkit.org [Fri, 29 Jun 2012 11:21:49 +0000 (11:21 +0000)]
[EFL] Gardening after r121468
https://bugs.webkit.org/show_bug.cgi?id=90257

Unreviewed EFL gardening after r121468.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-29

* platform/efl/fast/dom/Window/window-lookup-precedence-expected.txt: Removed.
* platform/efl/fast/forms/label/labelable-elements-expected.txt: Added.

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

12 years agoRemove still more BUILDING_ON_LEOPARD branches now that no port supports leopard
eric@webkit.org [Fri, 29 Jun 2012 10:44:08 +0000 (10:44 +0000)]
Remove still more BUILDING_ON_LEOPARD branches now that no port supports leopard
https://bugs.webkit.org/show_bug.cgi?id=90256

Reviewed by Ryosuke Niwa.

* platform/LocalizedStrings.cpp:
(WebCore::imageTitle):
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setAllowsFontSmoothing):
* platform/graphics/cg/ImageCG.cpp:
(WebCore::Image::drawPattern):
* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::ImageSource::clear):
* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::boundingRect):
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::ctFont):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
* platform/graphics/mac/ComplexTextController.cpp:
* platform/graphics/mac/FontCacheMac.mm:
(WebCore::fontCacheRegisteredFontsChangedNotificationCallback):
(WebCore::FontCache::platformInit):
* platform/graphics/mac/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::createFontCustomPlatformData):
* platform/graphics/mac/FontCustomPlatformData.h:
(WebCore::FontCustomPlatformData::FontCustomPlatformData):
* platform/graphics/mac/SimpleFontDataMac.mm:
(WebCore::SimpleFontData::platformInit):
* platform/graphics/mac/WebLayer.h:
* platform/mac/CursorMac.mm:
(WebCore::Cursor::ensurePlatformCursor):
* platform/mac/DisplaySleepDisabler.cpp:
(WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
(WebCore::DisplaySleepDisabler::~DisplaySleepDisabler):
* platform/mac/DisplaySleepDisabler.h:
(DisplaySleepDisabler):
* platform/mac/HTMLConverter.h:
* platform/mac/HTMLConverter.mm:
* platform/mac/PopupMenuMac.mm:
(WebCore::PopupMenuMac::populate):
* platform/mac/ScrollElasticityController.mm:

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

12 years agoUnreviewed attempt at a build fix for 64-bit debug build,
zandobersek@gmail.com [Fri, 29 Jun 2012 10:31:14 +0000 (10:31 +0000)]
Unreviewed attempt at a build fix for 64-bit debug build,
touch InsertionPoint.cpp to try to get it rebuilt.

* html/shadow/InsertionPoint.cpp:
(WebCore):

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

12 years agoRevert r121540, it broke most Qt builds
vestbo@webkit.org [Fri, 29 Jun 2012 10:15:22 +0000 (10:15 +0000)]
Revert r121540, it broke most Qt builds

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

12 years ago[Qt] Make build-webkit reject uknown configurations, eg. --profile
vestbo@webkit.org [Fri, 29 Jun 2012 10:09:59 +0000 (10:09 +0000)]
[Qt] Make build-webkit reject uknown configurations, eg. --profile

The qmake-based buildsystem doesn't support it.

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-06-29
Reviewed by Tor Arne Vestbø.

* Scripts/webkitdirs.pm:
(buildQMakeProjects):

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

12 years ago[Qt] Don't add Qt module dependencies in features.prf
vestbo@webkit.org [Fri, 29 Jun 2012 10:03:14 +0000 (10:03 +0000)]
[Qt] Don't add Qt module dependencies in features.prf

The required dependencies are already added in WebCore.pri.

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-06-29
Reviewed by Tor Arne Vestbø.

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

12 years agoWeb Inspector: Add FileSystemView
commit-queue@webkit.org [Fri, 29 Jun 2012 09:54:00 +0000 (09:54 +0000)]
Web Inspector: Add FileSystemView
https://bugs.webkit.org/show_bug.cgi?id=73301

This patch introduce a split view as FileSystemView. Including directory tree as sidebar tree.

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-06-29
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: http/tests/inspector/filesystem/directory-tree.html

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/FileSystemModel.js:
(WebInspector.FileSystemModel.Entry.compare):
* inspector/front-end/FileSystemView.js: Added.
* inspector/front-end/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype.showFileSystem):
(WebInspector.FileSystemTreeElement.prototype.get itemURL):
(WebInspector.FileSystemTreeElement.prototype.onattach):
(WebInspector.FileSystemTreeElement.prototype._handleContextMenuEvent):
(WebInspector.FileSystemTreeElement.prototype._refreshFileSystem):
(WebInspector.FileSystemTreeElement.prototype.onselect):
(WebInspector.FileSystemTreeElement.prototype.clear):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:

LayoutTests:

* http/tests/inspector/filesystem/directory-tree-expected.txt: Added.
* http/tests/inspector/filesystem/directory-tree.html: Added.
* http/tests/inspector/filesystem/filesystem-test.js:
(initialize_FileSystemTest.incrementRequestCount):
(initialize_FileSystemTest.decrementRequestCount):
(initialize_FileSystemTest.InspectorTest.callOnRequestCompleted):

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

12 years ago[V8] Replace v8::Integer::New() with v8Integer() in custom bindings
haraken@chromium.org [Fri, 29 Jun 2012 09:50:26 +0000 (09:50 +0000)]
[V8] Replace v8::Integer::New() with v8Integer() in custom bindings
https://bugs.webkit.org/show_bug.cgi?id=90242

Reviewed by Yury Semikhatsky.

v8Integer() is a fast wrapper of v8::Integer::New().
This patch replaces v8::Integer::New() with v8Integer() in custom bindings,
and pass isolates.

No tests. No change in behavior.

* bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
(WebCore::V8CSSStyleDeclaration::namedPropertyEnumerator):
(WebCore::V8CSSStyleDeclaration::namedPropertyQuery):
* bindings/v8/custom/V8ClipboardCustom.cpp:
(WebCore::V8Clipboard::typesAccessorGetter):
* bindings/v8/custom/V8DOMStringMapCustom.cpp:
(WebCore::V8DOMStringMap::namedPropertyQuery):
(WebCore::V8DOMStringMap::namedPropertyEnumerator):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::WindowSetTimeoutImpl):
* bindings/v8/custom/V8DataViewCustom.cpp:
(WebCore::V8DataView::getInt8Callback):
(WebCore::V8DataView::getUint8Callback):
* bindings/v8/custom/V8HTMLInputElementCustom.cpp:
(WebCore::V8HTMLInputElement::selectionStartAccessorGetter):
(WebCore::V8HTMLInputElement::selectionEndAccessorGetter):
* bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
(WebCore::V8HTMLOptionsCollection::lengthAccessorGetter):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
(WebCore::V8InjectedScriptHost::functionDetailsCallback):
* bindings/v8/custom/V8MessageEventCustom.cpp:
(WebCore::V8MessageEvent::portsAccessorGetter):
* bindings/v8/custom/V8MutationCallbackCustom.cpp:
(WebCore::V8MutationCallback::handleEvent):
* bindings/v8/custom/V8NodeListCustom.cpp:
(WebCore::V8NodeList::namedPropertyGetter):
* bindings/v8/custom/V8SQLTransactionCustom.cpp:
(WebCore::V8SQLTransaction::executeSqlCallback):
* bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
(WebCore::V8SQLTransactionSync::executeSqlCallback):
* bindings/v8/custom/V8StorageCustom.cpp:
(WebCore::V8Storage::namedPropertyEnumerator):
(WebCore::V8Storage::indexedPropertyGetter):
(WebCore::V8Storage::namedPropertyQuery):
(WebCore::V8Storage::indexedPropertySetter):
(WebCore::V8Storage::indexedPropertyDeleter):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::toV8Object):
(WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
(WebCore::V8WebGLRenderingContext::getSupportedExtensionsCallback):
* bindings/v8/custom/V8WorkerContextCustom.cpp:
(WebCore::SetTimeoutOrInterval):

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

12 years ago[Qt] Use LIBS_PRIVATE instead of putting dependencies into LIBS
vestbo@webkit.org [Fri, 29 Jun 2012 09:49:10 +0000 (09:49 +0000)]
[Qt] Use LIBS_PRIVATE instead of putting dependencies into LIBS

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-06-27
Reviewed by Tor Arne Vestbø..

* qmake/mkspecs/features/default_post.prf:
* qmake/mkspecs/features/functions.prf:

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

12 years agoUnreviewed, rolling out r121520.
haraken@chromium.org [Fri, 29 Jun 2012 09:44:11 +0000 (09:44 +0000)]
Unreviewed, rolling out r121520.
http://trac.webkit.org/changeset/121520
https://bugs.webkit.org/show_bug.cgi?id=90246

the performance optimization needs more investigation

* dom/DatasetDOMStringMap.cpp:
(WebCore::convertPropertyNameToAttributeName):
* dom/Element.cpp:
(WebCore::Element::getAttributeNS):
(WebCore::Element::removeAttribute):
(WebCore::Element::removeAttributeNS):
(WebCore::Element::getAttributeNode):
(WebCore::Element::getAttributeNodeNS):
(WebCore::Element::hasAttribute):
(WebCore::Element::hasAttributeNS):
* dom/Element.h:
(Element):
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::getAttributeNode):
* dom/ElementAttributeData.h:
(ElementAttributeData):

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

12 years ago[V8] Replace v8::Integer::New() with v8Integer() in bindings/v8/*.{h,cpp}
haraken@chromium.org [Fri, 29 Jun 2012 09:35:11 +0000 (09:35 +0000)]
[V8] Replace v8::Integer::New() with v8Integer() in bindings/v8/*.{h,cpp}
https://bugs.webkit.org/show_bug.cgi?id=90238

Reviewed by Yury Semikhatsky.

v8Integer() is a fast wrapper of v8::Integer::New().
We can replace v8::Integer::New() with v8Integer()
in bindings/v8/*.{h,cpp}. In addition, we pass isolate
to v8Integer() where possible.

No tests. No change in behavior.

* bindings/v8/Dictionary.cpp:
(WebCore::Dictionary::get):
* bindings/v8/NPV8Object.cpp:
(_NPN_Enumerate): Changed v8::None to 0, for consistency with other code.
* bindings/v8/PageScriptDebugServer.cpp:
(WebCore::PageScriptDebugServer::addListener):
* bindings/v8/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::compileScript):
* bindings/v8/SerializedScriptValue.cpp:
* bindings/v8/V8Binding.cpp:
(WebCore::v8Array):
(WebCore::v8ValueToWebCoreDOMStringList):
* bindings/v8/V8Binding.h:
(WebCore::v8Array):
(WebCore::v8NumberArrayToVector):
* bindings/v8/V8Collection.h:
(WebCore::nodeCollectionIndexedPropertyEnumerator):
(WebCore::collectionIndexedPropertyEnumerator):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::prepareListenerObject):
* bindings/v8/V8NPObject.cpp:
(WebCore::npObjectQueryProperty):
(WebCore::npObjectPropertyEnumerator):
* bindings/v8/V8NPUtils.cpp:
(WebCore::convertNPVariantToV8Object):
* bindings/v8/V8Proxy.cpp:
(WebCore::batchConfigureConstants):
(WebCore::V8Proxy::compileScript):
* bindings/v8/V8Utilities.cpp:
(WebCore::createHiddenDependency):
(WebCore::removeHiddenDependency):
* bindings/v8/V8WindowErrorHandler.cpp:
(WebCore::V8WindowErrorHandler::callListenerFunction):
* bindings/v8/V8WorkerContextErrorHandler.cpp:
(WebCore::V8WorkerContextErrorHandler::callListenerFunction):
* bindings/v8/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::addListener):

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

12 years agoWeb Inspector: Resource content is not loaded if Resource.requestContent method is...
vsevik@chromium.org [Fri, 29 Jun 2012 09:32:59 +0000 (09:32 +0000)]
Web Inspector: Resource content is not loaded if Resource.requestContent method is called before network request is finished.
https://bugs.webkit.org/show_bug.cgi?id=90153

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: http/tests/inspector/resource-tree/resource-request-content-while-loading.html

* inspector/front-end/NetworkRequest.js:
* inspector/front-end/Resource.js:
(WebInspector.Resource):
(WebInspector.Resource.prototype.requestContent):
(WebInspector.Resource.prototype._requestFinished):

LayoutTests:

Resource.requestContent() now checks that request (if there is one) was already loaded before requesting content from PageAgent.
Drive-by: Removed unneeded legacy request._resource field.
* http/tests/inspector/network/network-request-revision-content.html:
* http/tests/inspector/resource-tree/resource-request-content-while-loading-expected.txt: Added.
* http/tests/inspector/resource-tree/resource-request-content-while-loading.html: Added.
* http/tests/inspector/resources-test.js:
(initialize_ResourceTest.InspectorTest.runAfterResourcesAreFinished.checkResources):
(initialize_ResourceTest.InspectorTest.runAfterResourcesAreFinished):
(initialize_ResourceTest.InspectorTest.showResource.showResourceCallback):
(initialize_ResourceTest.InspectorTest.showResource):
(initialize_ResourceTest.InspectorTest.resourceMatchingURL.visit):
(initialize_ResourceTest.InspectorTest.resourceMatchingURL):
(initialize_ResourceTest):
* inspector/debugger/raw-source-code.html:

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

12 years agoUnreviewed, rolling out r121529.
keishi@webkit.org [Fri, 29 Jun 2012 09:17:07 +0000 (09:17 +0000)]
Unreviewed, rolling out r121529.
http://trac.webkit.org/changeset/121529
https://bugs.webkit.org/show_bug.cgi?id=90260

Failed to compile on Chromium WebKitMacBuilder (Requested by
keishi on #webkit).

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

Source/WebCore:

* platform/LocalizedStrings.cpp:
(WebCore):
* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::platformAddPathForRoundedRect):
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::setFont):
* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
* platform/graphics/mac/FontMac.mm:
(WebCore::showGlyphsWithAdvances):
* platform/graphics/mac/SimpleFontDataMac.mm:
(WebCore):
* platform/mac/CursorMac.mm:
(WebCore::Cursor::ensurePlatformCursor):
* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore):
* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::momentumPhaseForEvent):
(WebCore::phaseForEvent):
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:
* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
* platform/text/cf/HyphenationCF.cpp:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):

Source/WebKit/mac:

* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
* Misc/WebNSControlExtras.m:
(-[NSControl sizeToFitAndAdjustWindowHeight]):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldEraseMarkersAfterChangeSelection):
(WebEditorClient::getGuessesForWord):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidFirstLayout):
(WebFrameLoaderClient::provisionalLoadStarted):
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController finishedEnterFullScreenAnimation:]):
(-[WebFullScreenController exitFullScreen]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
* WebView/WebView.mm:
(+[WebView initialize]):
(-[WebView _deviceScaleFactor]):

Source/WebKit2:

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]):
* WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

Source/WTF:

* wtf/FastMalloc.cpp:
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
* wtf/unicode/icu/CollatorICU.cpp:
(WTF::Collator::userDefault):

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

12 years agoWeb Inspector: Add toggle breakpoint shortcut.
vsevik@chromium.org [Fri, 29 Jun 2012 09:12:12 +0000 (09:12 +0000)]
Web Inspector: Add toggle breakpoint shortcut.
https://bugs.webkit.org/show_bug.cgi?id=90188

Reviewed by Yury Semikhatsky.

* inspector/front-end/JavaScriptSourceFrame.js:
(WebInspector.JavaScriptSourceFrame.prototype._onMouseDown):
(WebInspector.JavaScriptSourceFrame.prototype._toggleBreakpoint):
(WebInspector.JavaScriptSourceFrame.prototype.toggleBreakpointOnCurrentLine):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._toggleBreakpoint):
(WebInspector.ScriptsPanel.prototype._showOutlineDialog):
* inspector/front-end/TextViewer.js:
(WebInspector.TextViewer.prototype.selection):

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

12 years agoWeb Inspector: Cursor should follow execution line when debugging.
vsevik@chromium.org [Fri, 29 Jun 2012 09:09:02 +0000 (09:09 +0000)]
Web Inspector: Cursor should follow execution line when debugging.
https://bugs.webkit.org/show_bug.cgi?id=90184

Reviewed by Yury Semikhatsky.

Added TextViewer.setSelection public method to set cursor selection in the editor.
Added TextRange.createFromLocation method to create TextRanges with the same start and end points.
Drive-by: removed unused _setCaretLocation() method in TextViewer.js
* inspector/front-end/JavaScriptSourceFrame.js:
(WebInspector.JavaScriptSourceFrame.prototype.setExecutionLine):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._revealExecutionLine):
(WebInspector.ScriptsPanel.prototype._editorSelected):
* inspector/front-end/SourceFrame.js:
(WebInspector.SourceFrame.prototype.setSelection):
(WebInspector.SourceFrame.prototype.setContent):
* inspector/front-end/TextEditorModel.js:
(WebInspector.TextRange.createFromLocation):
* inspector/front-end/TextViewer.js:
(WebInspector.TextViewer.prototype.setSelection):
(WebInspector.TextEditorMainPanel.prototype.highlightLine):

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

12 years agoWeb Inspector: IDBObjectStore.autoIncrement flag not exposed
vsevik@chromium.org [Fri, 29 Jun 2012 09:05:58 +0000 (09:05 +0000)]
Web Inspector: IDBObjectStore.autoIncrement flag not exposed
https://bugs.webkit.org/show_bug.cgi?id=89701

Reviewed by Yury Semikhatsky.

Source/WebCore:

Plumbed objectStore.autoIncrement to inspector front-end and added it to tooltip.

* English.lproj/localizedStrings.js:
* inspector/Inspector.json:
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):
* inspector/front-end/IndexedDBModel.js:
(WebInspector.IndexedDBModel.prototype._loadDatabase.callback):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.ObjectStore):
* inspector/front-end/ResourcesPanel.js:
(WebInspector.IDBObjectStoreTreeElement.prototype._updateTooltip):

LayoutTests:

* http/tests/inspector/indexeddb/database-structure-expected.txt:
* http/tests/inspector/indexeddb/database-structure.html:

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

12 years agoDeleting unused function in WebDeviceOrientation
commit-queue@webkit.org [Fri, 29 Jun 2012 09:02:18 +0000 (09:02 +0000)]
Deleting unused function in WebDeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=90185

Patch by Amy Ousterhout <aousterh@chromium.org> on 2012-06-29
Reviewed by Adam Barth.

Deleting the unused copy assignment function in WebDeviceOrientation.

* public/WebDeviceOrientation.h:
(WebDeviceOrientation):
* src/WebDeviceOrientation.cpp:

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

12 years agoUse floating keyframe rule list when parsing @-webkit-keyframes and allow abrupt...
apavlov@chromium.org [Fri, 29 Jun 2012 08:55:47 +0000 (08:55 +0000)]
Use floating keyframe rule list when parsing @-webkit-keyframes and allow abrupt rule termination
https://bugs.webkit.org/show_bug.cgi?id=90073

Reviewed by Antti Koivisto.

Source/WebCore:

- The grammar is changed to allow abruptly terminated stylesheet in the @-webkit-keyframes (use closing_brace, not '}').
- A floating StyleKeyframe vector is introduced to separate the creation and filling of StyleRuleKeyframes, as other rules do.

Test: fast/css/css-keyframe-unexpected-end.html

* css/CSSGrammar.y:
* css/CSSParser.cpp:
(WebCore::CSSParser::createFloatingKeyframeVector):
(WebCore):
(WebCore::CSSParser::sinkFloatingKeyframeVector):
(WebCore::CSSParser::createKeyframesRule):
* css/CSSParser.h:

LayoutTests:

* fast/css/css-keyframe-unexpected-end-expected.txt: Added.
* fast/css/css-keyframe-unexpected-end.html: Added.

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

12 years agoWeb Inspector: add character data to the DOM section of native memory view
yurys@chromium.org [Fri, 29 Jun 2012 08:46:04 +0000 (08:46 +0000)]
Web Inspector: add character data to the DOM section of native memory view
https://bugs.webkit.org/show_bug.cgi?id=89968

Reviewed by Vsevolod Vlasov.

Count strings referenced from CharacterData node and its descendants
as part of the DOM tree structures in the native memory view.

* dom/CharacterData.cpp:
(WebCore::CharacterData::reportMemoryUsage):
(WebCore):
* dom/CharacterData.h:
(CharacterData):
* dom/MemoryInstrumentation.h:
(MemoryInstrumentation):
(WebCore::MemoryObjectInfo::reportString):
(MemoryObjectInfo):
* inspector/InspectorMemoryAgent.cpp:
(WebCore):
(WebCore::domTreeInfo):
(WebCore::jsExternalResourcesInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):
* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.MemoryBlockViewProperties._initialize):

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

12 years agoRemove more BUILDING_ON_LEOPARD branches now that no port builds on Leopard
eric@webkit.org [Fri, 29 Jun 2012 08:28:15 +0000 (08:28 +0000)]
Remove more BUILDING_ON_LEOPARD branches now that no port builds on Leopard
https://bugs.webkit.org/show_bug.cgi?id=90252

Reviewed by Ryosuke Niwa.

Source/WebCore:

* platform/LocalizedStrings.cpp:
(WebCore):
* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::platformAddPathForRoundedRect):
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::setFont):
* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
* platform/graphics/mac/FontMac.mm:
(WebCore::showGlyphsWithAdvances):
* platform/graphics/mac/SimpleFontDataMac.mm:
(WebCore):
* platform/mac/CursorMac.mm:
(WebCore::Cursor::ensurePlatformCursor):
* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore):
* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::momentumPhaseForEvent):
(WebCore::phaseForEvent):
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:
* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
* platform/text/cf/HyphenationCF.cpp:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):

Source/WebKit/mac:

* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
* Misc/WebNSControlExtras.m:
(-[NSControl sizeToFitAndAdjustWindowHeight]):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldEraseMarkersAfterChangeSelection):
(WebEditorClient::getGuessesForWord):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidFirstLayout):
(WebFrameLoaderClient::provisionalLoadStarted):
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController finishedEnterFullScreenAnimation:]):
(-[WebFullScreenController exitFullScreen]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
* WebView/WebView.mm:
(+[WebView initialize]):
(-[WebView _deviceScaleFactor]):

Source/WebKit2:

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]):
* WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

Source/WTF:

* wtf/FastMalloc.cpp:
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
* wtf/unicode/icu/CollatorICU.cpp:
(WTF::Collator::userDefault):

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

12 years agoWeb Inspector: showConsole() should close previous view in drawer.
vsevik@chromium.org [Fri, 29 Jun 2012 08:14:24 +0000 (08:14 +0000)]
Web Inspector: showConsole() should close previous view in drawer.
https://bugs.webkit.org/show_bug.cgi?id=90070

Reviewed by Yury Semikhatsky.

* inspector/front-end/inspector.js:
(WebInspector.showConsole):
(WebInspector.showPanel):

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

12 years ago[Qt] Unreviewed gardening after r121494. Added new baseline to
kkristof@inf.u-szeged.hu [Fri, 29 Jun 2012 07:46:47 +0000 (07:46 +0000)]
[Qt] Unreviewed gardening after r121494. Added new baseline to
fast/frames/flattening/frameset-flattening-advanced.html

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-06-29

* platform/qt/fast/frames/flattening/frameset-flattening-advanced-expected.png:
* platform/qt/fast/frames/flattening/frameset-flattening-advanced-expected.txt:

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

12 years agoRemove a #include erroneously added in r120896.
rniwa@webkit.org [Fri, 29 Jun 2012 07:44:26 +0000 (07:44 +0000)]
Remove a #include erroneously added in r120896.

* editing/VisibleSelection.h:

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

12 years ago[Platform] Implement Date Time format parser
yosin@chromium.org [Fri, 29 Jun 2012 07:26:55 +0000 (07:26 +0000)]
[Platform] Implement Date Time format parser
https://bugs.webkit.org/show_bug.cgi?id=89963

Reviewed by Kent Tamura.

Source/WebCore:

This patch introduces Unicode TR35 LDML date time format parser for
input type "time" if ENABLE(INPUT_TYPE_TIME_MULTIPLE_FIELDS) is true.

Test: WebKit/chromium/tests/DateTimeFormatTest.cpp

* CMakeLists.txt: Added DateTimeFormat.cpp
* GNUmakefile.list.am: Added DateTimeFormat.{cpp,h}
* Target.pri: ditto
* WebCore.gypi: ditto
* WebCore.vcproj/WebCore.vcproj: ditto
* WebCore.xcodeproj/product.pbxproj: ditto
* platform/text/DateTimeFormat.cpp: Added.
(WebCore::mapCharacterToFieldTypeInternal):
(WebCore::DateTimeFormat::DateTimeFormat):
(WebCore::DateTimeFormat::mapCharacterToFieldType):
(WebCore::DateTimeFormat::parse):
* platform/text/DateTimeFormat.h: Added.
(DateTimeFormat):
(TokenHandler):
(WebCore::DateTimeFormat::TokenHandler::~TokenHandler):

Source/WebKit/chromium:

This patch adds an unit test for date time format parser if
ENABLE(INPUT_TYPE_TIME_MULTIPLE_FIELDS) is true.

* tests/DateTimeFormatTest.cpp: Added.
(DateTimeFormatTest):
(Token):
(DateTimeFormatTest::Token::Token):
(DateTimeFormatTest::Token::operator==):
(DateTimeFormatTest::Token::toString):
(Tokens):
(DateTimeFormatTest::Tokens::Tokens):
(DateTimeFormatTest::Tokens::operator==):
(DateTimeFormatTest::Tokens::toString):
(DateTimeFormatTest::parse):
(DateTimeFormatTest::single):
(TokenHandler):
(DateTimeFormatTest::TokenHandler::~TokenHandler):
(DateTimeFormatTest::TokenHandler::fieldType):
(DateTimeFormatTest::TokenHandler::tokens):
(DateTimeFormatTest::TokenHandler::visitField):
(DateTimeFormatTest::TokenHandler::visitLiteral):
(operator<<):
(TEST_F):

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

12 years agoRemove more BUILDING_ON_LEOPARD usage in PLATFORM(MAC) code
eric@webkit.org [Fri, 29 Jun 2012 07:15:44 +0000 (07:15 +0000)]
Remove more BUILDING_ON_LEOPARD usage in PLATFORM(MAC) code
https://bugs.webkit.org/show_bug.cgi?id=85846

Reviewed by Adam Barth.

PLATFORM(MAC) has not supported Leopard for several months now.
This change removes about 1/3 of the remaining BUILDING_ON_LEOPARD
uses in the PLATFORM(MAC) codepaths.  PLATFORM(CHROMIUM) still
supports BUILDING_ON_LEOPARD for now.

Source/WebCore:

* WebCore.exp.in:
* dom/Document.cpp:
(WebCore::Document::updateRangesAfterChildrenChanged):
(WebCore::Document::nodeChildrenWillBeRemoved):
(WebCore::Document::nodeWillBeRemoved):
(WebCore::Document::textInserted):
(WebCore::Document::textRemoved):
(WebCore::Document::textNodesMerged):
(WebCore::Document::textNodeSplit):
* editing/Editor.cpp:
(WebCore::Editor::respondToChangedSelection):
* editing/TypingCommand.cpp:
(WebCore::TypingCommand::markMisspellingsAfterTyping):
(WebCore::TypingCommand::typingAddedToOpenCommand):
* editing/mac/EditorMac.mm:
(WebCore::Editor::pasteWithPasteboard):
* loader/EmptyClients.h:
(EmptyEditorClient):
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu):
(WebCore):
(WebCore::ContextMenuController::populate):
(WebCore::ContextMenuController::checkOrEnableIfNeeded):
* page/EditorClient.h:
(EditorClient):
* platform/LocalizedStrings.cpp:
(WebCore::contextMenuItemTagSearchWeb):
* platform/MemoryPressureHandler.cpp:
(WebCore):
* platform/SuddenTermination.h:
(WebCore):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateContentsImage):
(WebCore::GraphicsLayerCA::constrainedSize):
* platform/graphics/ca/PlatformCALayer.h:
(PlatformCALayer):
* platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
(fromCAValueFunctionType):
(PlatformCAAnimation::valueFunction):
(PlatformCAAnimation::setValueFunction):
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(toCAFilterType):
(PlatformCALayer::anchorPoint):
(PlatformCALayer::setAnchorPoint):
(PlatformCALayer::contentsTransform):
(PlatformCALayer::setContentsTransform):
(PlatformCALayer::isGeometryFlipped):
(PlatformCALayer::setGeometryFlipped):
(PlatformCALayer::acceleratesDrawing):
(PlatformCALayer::setAcceleratesDrawing):
(PlatformCALayer::setMinificationFilter):
(PlatformCALayer::setMagnificationFilter):
(PlatformCALayer::contentsScale):
(PlatformCALayer::setContentsScale):
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::setScale):
(WebCore::TileCache::setAcceleratesDrawing):
(WebCore::TileCache::createTileLayer):

Source/WTF:

* wtf/Platform.h:

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

12 years agoUse StringBuilder in SegmentedString::toString()
commit-queue@webkit.org [Fri, 29 Jun 2012 07:06:45 +0000 (07:06 +0000)]
Use StringBuilder in SegmentedString::toString()
https://bugs.webkit.org/show_bug.cgi?id=90247

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-29
Reviewed by Adam Barth.

Use a StringBuilder instead of String concatenation because StringBuilder is generally faster.
No new tests. Covered by existing tests.

* platform/text/SegmentedString.cpp:
(WebCore::SegmentedString::toString):
* platform/text/SegmentedString.h:
(WebCore::SegmentedSubstring::appendTo):

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

12 years agoMac build fix after r121518.
rniwa@webkit.org [Fri, 29 Jun 2012 06:54:37 +0000 (06:54 +0000)]
Mac build fix after r121518.

* WebCore.exp.in:

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

12 years agoDOMHTMLCollection::item may return a wrong element after namedItem is called
rniwa@webkit.org [Fri, 29 Jun 2012 06:38:42 +0000 (06:38 +0000)]
DOMHTMLCollection::item may return a wrong element after namedItem is called
https://bugs.webkit.org/show_bug.cgi?id=90240

Reviewed by Antti Koivisto.

Source/WebCore:

The bug was caused by namedItem updating m_cache.current without updating m_cache.position.
Fixed the bug by updating both. This is similar to the bug I fixed in r121478.

WebKit API Test: WebKit1.HTMLCollectionNamedItemTest

* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::namedItem):

Tools:

Add a WebKit API test since namedItem is not used in the JS/V8 binding code.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/HTMLCollectionNamedItem.html: Copied from Tools/TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.html.
* TestWebKitAPI/Tests/mac/HTMLCollectionNamedItem.mm: Copied from Tools/TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.mm.
(TestWebKitAPI::TEST):

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

12 years agoChange argument types of Element::getAttribute*() from String to AtomicString
haraken@chromium.org [Fri, 29 Jun 2012 06:20:34 +0000 (06:20 +0000)]
Change argument types of Element::getAttribute*() from String to AtomicString
https://bugs.webkit.org/show_bug.cgi?id=90246

Reviewed by Ryosuke Niwa.

This is a follow-up patch for r121439. r121439 changed an argument type of
Element::getAttribute() from String to AtomicString, which optimized
performance of Dromaeo/dom-attr.html. This patch changes other argument types
of Element::getAttribute*() from String to AtomicString. See the ChangeLog in
http://trac.webkit.org/changeset/121439 for more details about why this change
optimizes performance.

No tests. No change in behavior.

* dom/DatasetDOMStringMap.cpp:
(WebCore::convertPropertyNameToAttributeName):
* dom/Element.cpp:
(WebCore::Element::getAttributeNS):
(WebCore::Element::removeAttribute):
(WebCore::Element::removeAttributeNS):
(WebCore::Element::getAttributeNode):
(WebCore::Element::getAttributeNodeNS):
(WebCore::Element::hasAttribute):
(WebCore::Element::hasAttributeNS):
* dom/Element.h:
(Element):
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::getAttributeNode):
* dom/ElementAttributeData.h:
(ElementAttributeData):

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

12 years agoREGRESSION(r106388): Form hidden element values being restored
tkent@chromium.org [Fri, 29 Jun 2012 06:12:22 +0000 (06:12 +0000)]
REGRESSION(r106388): Form hidden element values being restored
incorrectly for dynamically generated content
https://bugs.webkit.org/show_bug.cgi?id=88685

Reviewed by Hajime Morita.

Source/WebCore:

We should not save value attribute updated during parsing.

Test: fast/forms/state-restore-to-non-edited-controls.html

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::HTMLInputElement):
Initialize m_valueAttributeWasUpdatedAfterParsing.
(WebCore::HTMLInputElement::parseAttribute):
Set true to m_valueAttributeWasUpdatedAfterParsing if value
attribute is updated and it's not in parsing.
* html/HTMLInputElement.h:
(WebCore::HTMLInputElement::valueAttributeWasUpdatedAfterParsing):
Added for HiddenInputType.
* html/HiddenInputType.cpp:
(WebCore::HiddenInputType::saveFormControlState):
Save the value only if valueAttributeWasUpdatedAfterParsing() is true.

LayoutTests:

* fast/forms/state-restore-to-non-edited-controls-expected.txt:
A failing test is fixed.

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

12 years ago[Refactoring] NodeRenderingContext ctor could be built on top of the ComposedShadowTr...
morrita@google.com [Fri, 29 Jun 2012 06:00:56 +0000 (06:00 +0000)]
[Refactoring] NodeRenderingContext ctor could be built on top of the ComposedShadowTreeWalker
https://bugs.webkit.org/show_bug.cgi?id=89732

Reviewed by Dimitri Glazkov.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

The constructor of NodeRenderingContext implements almost same
logic as ComposedShadowTreeWalker::parent().  This change
eliminates the duplication by employing ComposedShadowTreeWalker in the constructor.

ComposedShadowTreeWalker has same difference from
NodeRenderingContext though. So this change also extends
ComposedShadowTreeWalker to support these missing pieces, which
are encapsulated in newly introduced ParentTranversalDetails
class where:

- not only the parent, but also the insertion point of the child is returned,
- resetStyleInheritance from the child-parent traversal is computed and
- if the starting point is out of the composition, it returns null as a parent.

This change also inlines some ComposedShadowTreeWalker methods for speed.

No new tests. Covered by existing tests.

* WebCore.exp.in:
* dom/ComposedShadowTreeWalker.cpp:
(WebCore::shadowOfParent):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::didTraverseInsertionPoint):
(WebCore):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::didTraverseShadowRoot):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::didFindNode):
(WebCore::ComposedShadowTreeWalker::findParent):
(WebCore::ComposedShadowTreeWalker::escapeFallbackContentElement):
(WebCore::ComposedShadowTreeWalker::traverseNodeEscapingFallbackContents):
(WebCore::ComposedShadowTreeWalker::traverseParent):
(WebCore::ComposedShadowTreeWalker::traverseParentInCurrentTree):
(WebCore::ComposedShadowTreeWalker::traverseParentBackToYoungerShadowRootOrHost):
* dom/ComposedShadowTreeWalker.h:
(ParentTranversalDetails):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::ParentTranversalDetails):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::node):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::insertionPoint):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::resetStyleInheritance):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::outOfComposition):
(WebCore::ComposedShadowTreeWalker::ParentTranversalDetails::childWasOutOfComposition):
(ComposedShadowTreeWalker):
(WebCore::ComposedShadowTreeWalker::ComposedShadowTreeWalker):
(WebCore):
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::NodeRenderingContext):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::parentRenderer):
(WebCore::NodeRenderingContext::shouldCreateRenderer):
(WebCore::NodeRenderingContext::isOnEncapsulationBoundary):
* dom/NodeRenderingContext.h:
(NodeRenderingContext):
(WebCore::NodeRenderingContext::parentNodeForRenderingAndStyle):
(WebCore::NodeRenderingContext::resetStyleInheritance):
(WebCore::NodeRenderingContext::insertionPoint):

Source/WebKit2:

* win/WebKit2.def:
* win/WebKit2CFLite.def:

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

12 years ago[Chromium] unreviewed test expectations update after r121510.
bashi@chromium.org [Fri, 29 Jun 2012 04:45:11 +0000 (04:45 +0000)]
[Chromium] unreviewed test expectations update after r121510.

* platform/chromium-mac-leopard/css3/font-feature-settings-rendering-expected.png: Added.
* platform/chromium-mac-snowleopard/css3/font-feature-settings-rendering-expected.png: Added.
* platform/chromium-mac/css3/font-feature-settings-rendering-expected.png: Added.
* platform/chromium-mac/css3/font-feature-settings-rendering-expected.txt: Added.
* platform/chromium/TestExpectations:

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

12 years ago[BlackBerry] Selection items show as garbage for non-ascii characters.
commit-queue@webkit.org [Fri, 29 Jun 2012 04:20:18 +0000 (04:20 +0000)]
[BlackBerry] Selection items show as garbage for non-ascii characters.
https://bugs.webkit.org/show_bug.cgi?id=89969

Add charset utf-8 to the select popup's page.

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-06-28
Reviewed by Antonio Gomes.

.:

* ManualTests/blackberry/select-popup-items-unicode-display.html: Added.

Source/WebKit/blackberry:

* WebCoreSupport/SelectPopupClient.cpp:
(WebCore::SelectPopupClient::generateHTML):

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

12 years ago[Chromium] Mark 4 tests in css3/filters as MISSING. Caused by r121513.
keishi@webkit.org [Fri, 29 Jun 2012 03:59:05 +0000 (03:59 +0000)]
[Chromium] Mark 4 tests in css3/filters as MISSING. Caused by r121513.

Unreviewed.

* platform/chromium/TestExpectations:

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

12 years ago[BlackBerry] Checkerboard shown when clicking on error page buttons
leo.yang@torchmobile.com.cn [Fri, 29 Jun 2012 02:52:06 +0000 (02:52 +0000)]
[BlackBerry] Checkerboard shown when clicking on error page buttons
https://bugs.webkit.org/show_bug.cgi?id=90152
RIM PR #161867

Reviewed by George Staikos.

Reset m_hasBlitJobs when resetting tiles to prevent ui thread from drawing checkerboard unintentionally.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::resetTiles):

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

12 years agoSource/WebCore: Implement filter url() function.
senorblanco@chromium.org [Fri, 29 Jun 2012 02:50:27 +0000 (02:50 +0000)]
Source/WebCore: Implement filter url() function.
https://bugs.webkit.org/show_bug.cgi?id=72443

url() references can be internal, in which case the DOM nodes are
retrieved directly from the current document, or external, in which
case a CachedSVGDocument request is made, and the filter node build is
deferred until the document is loaded.  WebKitSVGDocumentValue
holds the CachedSVGDocument (if any) and the URL as a CSSValue,
and is stored in the CSSValue chain as the argument to the reference
filter.

One notable difference between internal and external references is
that internal references will automatically update on an SVG filter node
attribute change, while external references will not, since they live
in a separate document.  This is consistent with the Mozilla
implementation.  In order to make this work, the RenderLayer is made a
client of the RenderSVGResourceContainer, and calls
filterNeedsRepaint() when the SVG nodes are invalidated.

Some plumbing:  The CSS StyleResolver was refactored to load all
all external resources (images, shaders and (now) SVG filters) in a
single function, loadPendingResources().  The PlatformLayer typedef
was moved out into its own file, in order to break a cyclic
dependency.  SVGFilterBuilder was modified to accept the SourceGraphic
and SourceAlpha FilterEffects in its constructor and factory function,
rather than extracting them from the parent Filter.  (This is necessary
so that the url() filter can correctly hook up its inputs from
previous CSS filters.)

Reviewed by Dean Jackson.

Tests: css3/filters/effect-reference-external.html
       css3/filters/effect-reference-hw.html
       css3/filters/effect-reference-ordering.html
       css3/filters/effect-reference.html

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
Add WebKitCSSSVGDocumentValue to the various build files.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::valueForFilter):
Use the reference filter's url when getting the computed style for
a reference filter.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseFilter):
Create the referenceFilterValue's argument as a
WebKitCSSSVGDocumentValue instead of a CSS string.
* css/CSSValue.cpp:
(WebCore::CSSValue::cssText):
Add support for WebKitCSSSVGDocumentValue.
(WebCore::CSSValue::destroy):
Add support for WebKitCSSSVGDocumentValue.
* css/CSSValue.h:
(WebCore::CSSValue::isWebKitCSSSVGDocumentValue):
Add support for WebKitCSSSVGDocumentValue.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
Keep track of pending SVG document references, and load them when
necessary.
* css/StyleResolver.h:
* css/WebKitCSSSVGDocumentValue.cpp: Added.
New CSSValue subclass for holding SVG document references.
(WebCore::WebKitCSSSVGDocumentValue::WebKitCSSSVGDocumentValue):
(WebCore::WebKitCSSSVGDocumentValue::~WebKitCSSSVGDocumentValue):
(WebCore::WebKitCSSSVGDocumentValue::load):
(WebCore::WebKitCSSSVGDocumentValue::customCssText):
* css/WebKitCSSSVGDocumentValue.h: Added.
(WebCore::WebKitCSSSVGDocumentValue::create):
(WebCore::WebKitCSSSVGDocumentValue::cachedSVGDocument):
(WebCore::WebKitCSSSVGDocumentValue::url):
(WebCore::WebKitCSSSVGDocumentValue::loadRequested):
* platform/graphics/GraphicsLayer.h:
Refactor PlatformLayer out into its own file, to avoid circular
includes.
* platform/graphics/ImageBuffer.h:
Include PlatformLayer.h instead of GraphicsLayer.h.
* platform/graphics/PlatformLayer.h: Added.
Refactor PlatformLayer out into its own file, to avoid circular
includes.
* platform/graphics/filters/FilterOperation.h:
(WebCore::ReferenceFilterOperation::create):
(WebCore::ReferenceFilterOperation::clone):
(WebCore::ReferenceFilterOperation::url):
(WebCore::ReferenceFilterOperation::fragment):
(ReferenceFilterOperation):
(WebCore::ReferenceFilterOperation::data):
(WebCore::ReferenceFilterOperation::setData):
(WebCore::ReferenceFilterOperation::operator==):
(WebCore::ReferenceFilterOperation::ReferenceFilterOperation):
Augment ReferenceFilterOperation to maintain a data pointer,
in order to preserve context while loading external SVG documents.
Replace "reference" with "url" and "fragment" members, in order to
ease retrieval of the appropriate DOM objects.
* platform/graphics/filters/FilterOperations.cpp:
(WebCore::FilterOperations::hasReferenceFilter):
Convenience function for finding reference filters.
* platform/graphics/filters/FilterOperations.h:
(FilterOperations):
* platform/mac/ScrollbarThemeMac.mm:
Include GraphicsLayer.h explicitly, since ImageBuffer.h no longer
includes it (and only includes PlatformLayer.h).
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::buildReferenceFilter):
Utility function to build a FilterEffect node graph for a
ReferenceFilterOperation.
(WebCore::FilterEffectRenderer::build):
Call the above builder function for ReferenceFilterOperations.
* rendering/FilterEffectRenderer.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateOrRemoveFilterEffect):
If we have reference filters, update them along with other filters.
(WebCore::RenderLayer::filterNeedsRepaint):
* rendering/RenderLayerFilterInfo.cpp:
(WebCore::RenderLayerFilterInfo::~RenderLayerFilterInfo):
(WebCore::RenderLayerFilterInfo::notifyFinished):
Implement callback function when external SVGDocuments are loaded.
(WebCore::RenderLayerFilterInfo::updateReferenceFilterClients):
Add the FilterInfo as a client to be called when SVGDocuments are
loaded.
(WebCore::RenderLayerFilterInfo::removeReferenceFilterClients):
Remove this from the list of notified clients.
* rendering/RenderLayerFilterInfo.h:
Add new member vars for tracking internal and external SVG
references, so we can remove ourselves as a client when done.
* rendering/svg/RenderSVGResourceContainer.cpp:
(WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
When marking client DOM nodes for repaint, also mark any RenderLayers
referring to this DOM tree via filters as needing repaint.
(WebCore::RenderSVGResourceContainer::addClientRenderLayer):
(WebCore::RenderSVGResourceContainer::removeClientRenderLayer):
* rendering/svg/RenderSVGResourceContainer.h:
Maintain a list of RenderLayer clients on each SVG resource container,
and turn SVG DOM repaint notifications into filter repaint (CSS)
notifications.
* rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::buildPrimitives):
Construct a SourceGraphic and SourceAlpha node explicitly for the
SVG builder case.
* svg/graphics/filters/SVGFilterBuilder.cpp:
(WebCore::SVGFilterBuilder::SVGFilterBuilder):
* svg/graphics/filters/SVGFilterBuilder.h:
(WebCore::SVGFilterBuilder::create):
Add the SourceGraphic and SourceAlpha as parameters to the constructor
and create() methods, so they can be supplied by the caller.

LayoutTests: Add tests for the url() filter function.
https://bugs.webkit.org/show_bug.cgi?id=72443

Reviewed by Dean Jackson.

* css3/filters/effect-reference-external.html: Added.
* css3/filters/effect-reference-hw.html: Added.
* css3/filters/effect-reference-ordering.html: Added.
* css3/filters/effect-reference.html: Added.
* css3/filters/resources/hueRotate.svg: Added.
* platform/chromium-linux/css3/filters/effect-reference-expected.png: Added.
* platform/chromium-linux/css3/filters/effect-reference-expected.txt: Added.
* platform/chromium-linux/css3/filters/effect-reference-external-expected.png: Added.
* platform/chromium-linux/css3/filters/effect-reference-external-expected.txt: Added.
* platform/chromium-linux/css3/filters/effect-reference-hw-expected.png: Added.
* platform/chromium-linux/css3/filters/effect-reference-hw-expected.txt: Added.
* platform/chromium-linux/css3/filters/effect-reference-ordering-expected.png: Added.
* platform/chromium-linux/css3/filters/effect-reference-ordering-expected.txt: Added.
* platform/chromium/TestExpectations:

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

12 years agonrwt: remove the 'google-chrome' port code
dpranke@chromium.org [Fri, 29 Jun 2012 02:46:55 +0000 (02:46 +0000)]
nrwt: remove the 'google-chrome' port code
https://bugs.webkit.org/show_bug.cgi?id=88824

Reviewed by Ojan Vafai.

NRWT now supports passing additional baseline directories
and expectations files on the command line, so there's no need
to support the concept of a 'google-chrome' port directly.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.path_to_test_expectations_file):
* Scripts/webkitpy/layout_tests/port/builders.py:
* Scripts/webkitpy/layout_tests/port/chromium_mac.py:
(ChromiumMacPort.__init__):
* Scripts/webkitpy/layout_tests/port/chromium_win.py:
(ChromiumWinPort.__init__):
* Scripts/webkitpy/layout_tests/port/factory.py:
(PortFactory):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest.test_win):
* Scripts/webkitpy/layout_tests/port/google_chrome.py: Removed.
* Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py: Removed.

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

12 years agoDFG recompilation heuristics should be based on count, not rate
fpizlo@apple.com [Fri, 29 Jun 2012 02:40:14 +0000 (02:40 +0000)]
DFG recompilation heuristics should be based on count, not rate
https://bugs.webkit.org/show_bug.cgi?id=90146

Reviewed by Oliver Hunt.

This removes a bunch of code that was previously trying to prevent spurious
reoptimizations if a large enough majority of executions of a code block did
not result in OSR exit. It turns out that this code was purely harmful. This
patch removes all of that logic and replaces it with a dead-simple
heuristic: if you exit more than N times (where N is an exponential function
of the number of times the code block has already been recompiled) then we
will recompile.

This appears to be a broad ~1% win on many benchmarks large and small.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::osrExitCounter):
(JSC::CodeBlock::countOSRExit):
(CodeBlock):
(JSC::CodeBlock::addressOfOSRExitCounter):
(JSC::CodeBlock::offsetOfOSRExitCounter):
(JSC::CodeBlock::adjustedExitCountThreshold):
(JSC::CodeBlock::exitCountThresholdForReoptimization):
(JSC::CodeBlock::exitCountThresholdForReoptimizationFromLoop):
(JSC::CodeBlock::shouldReoptimizeNow):
(JSC::CodeBlock::shouldReoptimizeFromLoopNow):
* bytecode/ExecutionCounter.cpp:
(JSC::ExecutionCounter::setThreshold):
* bytecode/ExecutionCounter.h:
(ExecutionCounter):
(JSC::ExecutionCounter::clippedThreshold):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compileBody):
* dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::considerAddingAsFrequentExitSiteSlow):
* dfg/DFGOSRExitCompiler.cpp:
(JSC::DFG::OSRExitCompiler::handleExitCounts):
* dfg/DFGOperations.cpp:
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/Options.cpp:
(Options):
(JSC::Options::initializeOptions):
* runtime/Options.h:
(Options):

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

12 years ago[Chromium] CTFontCopyTable of MacOSX10.5 SDK doesn't work for layout tables
bashi@chromium.org [Fri, 29 Jun 2012 02:37:43 +0000 (02:37 +0000)]
[Chromium] CTFontCopyTable of MacOSX10.5 SDK doesn't work for layout tables
https://bugs.webkit.org/show_bug.cgi?id=90235

Reviewed by Kent Tamura.

Use CGFontCopyTableForTag instead.

No new tests. css3/font-feature-settings-rendering.html should pass. I'll rebase expectations once bots get the result.

* platform/graphics/harfbuzz/ng/HarfBuzzFaceCoreText.cpp:
(WebCore::harfbuzzCoreTextGetTable):

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

12 years agonrwt: clean up how arguments are passed to workers
dpranke@chromium.org [Fri, 29 Jun 2012 02:37:04 +0000 (02:37 +0000)]
nrwt: clean up how arguments are passed to workers
https://bugs.webkit.org/show_bug.cgi?id=90126

Reviewed by Ojan Vafai.

The way arguments are passed to workers has been crufty. It
turns out it can be a lot cleaner via two things:
1) using a factory method instead of instantiating objects
directly in manager_worker_broker removes the need for passing
'worker arguments' to the broker.
2) it turns out that since mock hosts and test ports are purely
in-memory constructions, they can be pickled and passed to child
workers, meaning that the worker no longer needs hacky code to
pass the port in a special case or to guess what to do if we
don't have a host - all of the test-specific logic can move to
the test file, where we can stub out the mock host's
port_factory to return the same already-created port when it
needs to be shared.

This change also moves WorkerException to manager_worker_broker.py
where it belongs, and removes several useless tests that were
just a maintenance burden (and would've needed rewriting when we
change the rest of the broker implementation).

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._run_tests.worker_factory):
(Manager._run_tests):
* Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
(get):
(WorkerException):
(AbstractWorker.__init__):
(_ManagerConnection.__init__):
(_ManagerConnection.start_worker):
(_InlineManager.__init__):
(_InlineManager.start_worker):
(_MultiProcessManager._can_pickle_host):
(_MultiProcessManager):
(_MultiProcessManager.start_worker):
(_WorkerConnection.__init__):
(_InlineWorkerConnection.__init__):
(_InlineWorkerConnection.join):
(_InlineWorkerConnection.run):
(_Process.run):
(_MultiProcessWorkerConnection.__init__):
(_MultiProcessWorkerConnection.start):
(_MultiProcessWorkerConnection):
(_MultiProcessWorkerConnection.run):
* Scripts/webkitpy/layout_tests/controllers/manager_worker_broker_unittest.py:
(_TestWorker.__init__):
(_TestWorker.run):
(_TestsMixin.test_name):
(_TestsMixin.test_cancel):
(_TestsMixin.test_done):
(_TestsMixin.test_unknown_message):
(InlineBrokerTests.setUp):
(MultiProcessBrokerTests.setUp):
* Scripts/webkitpy/layout_tests/controllers/worker.py:
(Worker.__init__):
(Worker.run):
* Scripts/webkitpy/layout_tests/controllers/worker_unittest.py: Removed.
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(passing_run):
(logging_run):
(run_and_capture):
(MainTest.test_child_processes_2):
(MainTest.test_child_processes_min):
(MainTest.test_exception_raised):
(MainTest.test_keyboard_interrupt):
(MainTest.test_retrying_and_flaky_tests):
(MainTest.test_run_order__inline):

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

12 years agoAdd preventative assert in SVGTRefElement
pdr@google.com [Fri, 29 Jun 2012 02:36:06 +0000 (02:36 +0000)]
Add preventative assert in SVGTRefElement
https://bugs.webkit.org/show_bug.cgi?id=90203

Reviewed by Abhishek Arya.

SVGTRefElement::detachTarget() adds a pending resource via addPendingResource.
Due to some recent bugs in this area, an assert is being added to prevent
users from calling detachTarget when not in a document. Doing
so would create a bug such as in WK90042.

This assert will not fire currently because detachTarget is only called after
a DOMNodeRemovedFromDocumentEvent event fires, which only comes from
dispatchChildRemovalEvents when the node is in a document.

* svg/SVGTRefElement.cpp:
(WebCore::SVGTRefElement::detachTarget):

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

12 years agonrwt: don't try to catch worker exceptions in run_webkit_tests.__main__
dpranke@chromium.org [Fri, 29 Jun 2012 02:13:39 +0000 (02:13 +0000)]
nrwt: don't try to catch worker exceptions in run_webkit_tests.__main__
https://bugs.webkit.org/show_bug.cgi?id=90125

Reviewed by Ojan Vafai.

It turns out run_webkit_tests.py wasn't really using
WorkerException and the catch we had for it was pointless. I've
removed the symbol import and moved it to the integration tests
where it is needed. Eventually the definition of the exception
moves to the broker module, and so minimizing the number of
users of it is a good thing.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_exception_raised):

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