profile/ivi/webkit-efl.git
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

12 years agoUnreviewed gardening.
mikelawther@chromium.org [Fri, 29 Jun 2012 02:09:54 +0000 (02:09 +0000)]
Unreviewed gardening.

Mark css3/calc/transitions.html flaky (http://webkit.org/b/90234)

* platform/chromium/TestExpectations:
* platform/mac/TestExpectations:

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

12 years agonrwt: clean up passing of log messages between processes
dpranke@chromium.org [Fri, 29 Jun 2012 01:59:40 +0000 (01:59 +0000)]
nrwt: clean up passing of log messages between processes
https://bugs.webkit.org/show_bug.cgi?id=90123

Reviewed by Ojan Vafai.

It turns out log messages are perfectly picklable by themselves
and contain the process id of the process that generated the
message, so if we just pass the record from the worker to the
manager and call logger.handle() in the manager, everything just
works :).

The change is covered by existing tests.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._log_messages):
* Scripts/webkitpy/layout_tests/controllers/worker.py:
(_WorkerLogHandler.emit):
* Scripts/webkitpy/layout_tests/views/metered_stream.py:
(MeteredStream.__init__):
(_LogHandler.emit):

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

12 years agoMake sure master umask is set correctly
wsiegrist@apple.com [Fri, 29 Jun 2012 01:56:41 +0000 (01:56 +0000)]
Make sure master umask is set correctly

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

12 years ago[Qt] Remove unnecessary AffineTransform calls
commit-queue@webkit.org [Fri, 29 Jun 2012 01:45:34 +0000 (01:45 +0000)]
[Qt] Remove unnecessary AffineTransform calls
https://bugs.webkit.org/show_bug.cgi?id=90178

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

Qt currently ignores the const AffineTransform& parameter on
Pattern::createPlatformPattern, so removing it from all its Qt calls and
changing the function signature if platform is Qt.

* platform/graphics/Pattern.h:
(Pattern):
* platform/graphics/qt/FontQt.cpp:
(WebCore::fillPenForContext):
(WebCore::strokePenForContext):
* platform/graphics/qt/FontQt4.cpp:
(WebCore::fillPenForContext):
(WebCore::strokePenForContext):
* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::strokePath):
(WebCore::drawRepeatPattern):
* platform/graphics/qt/PatternQt.cpp:
(WebCore::Pattern::createPlatformPattern):

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

12 years agoadd a pylint wrapper for linting python code
dpranke@chromium.org [Fri, 29 Jun 2012 01:45:20 +0000 (01:45 +0000)]
add a pylint wrapper for linting python code
https://bugs.webkit.org/show_bug.cgi?id=90232

Reviewed by Adam Barth.

Currently we use 'pep8' to check python code in
check-webkit-style. pep8 is fast but simple; pylint is slower
but has much more robust linting capabilities and will catch
variable typos and all sorts of other things. Eventually we
should switch check-webkit-style to use this, but our code is
far from linting now so it needs to be cleaned up first.

This change adds the infrastructure and a wrapper so we can
start doing that.

* Scripts/lint-webkitpy: Added.
* Scripts/webkitpy/pylintrc: Added.
* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook.find_module):
(AutoinstallImportHook._install_pylint):

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

12 years ago[Qt] When uploading an opaque image to a texture for TextureMapper, unnecessary alpha...
noam.rosenthal@nokia.com [Fri, 29 Jun 2012 01:42:32 +0000 (01:42 +0000)]
[Qt] When uploading an opaque image to a texture for TextureMapper, unnecessary alpha operations take place
https://bugs.webkit.org/show_bug.cgi?id=90229

Reviewed by Luiz Agostini.

For opaque web content in WebKit2, we use the RGB32 image format. When we special-case
it in GraphicsContext3DQt, we can avoid any alpha operations and perform a regular copy.

Covered existing API tests, as this code path is always used when rendering.

* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3D::getImageData):

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

12 years ago[chromium] Compile chromium compositor implementation files into separate .lib
jamesr@google.com [Fri, 29 Jun 2012 01:30:33 +0000 (01:30 +0000)]
[chromium] Compile chromium compositor implementation files into separate .lib
https://bugs.webkit.org/show_bug.cgi?id=90233

Reviewed by Adam Barth.

* WebCore.gyp/WebCore.gyp:

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

12 years ago[GTK] Use WEBKITOUTPUTDIR to find fonts in DumpRenderTree
tony@chromium.org [Fri, 29 Jun 2012 01:18:34 +0000 (01:18 +0000)]
[GTK] Use WEBKITOUTPUTDIR to find fonts in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=90215

Reviewed by Martin Robinson.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(initializeFonts): Check for WEBKITOUTPUTDIR first.
* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkPort.setup_environ_for_server): Copy the environment variable to the child process.
* WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
(WTR::inititializeFontConfigSetting): Check for WEBKITOUTPUTDIR first.

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

12 years agoSwitch master ditto command to unzip since the new master does not have ditto.
wsiegrist@apple.com [Fri, 29 Jun 2012 01:18:18 +0000 (01:18 +0000)]
Switch master ditto command to unzip since the new master does not have ditto.

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

12 years agoderive ChromiumPort from WebKitPort in NRWT in order to support skipping tests if...
dpranke@chromium.org [Fri, 29 Jun 2012 01:14:24 +0000 (01:14 +0000)]
derive ChromiumPort from WebKitPort in NRWT in order to support skipping tests if symbols are missing
https://bugs.webkit.org/show_bug.cgi?id=89706

Reviewed by Ojan Vafai.

Try again to land the change first landed in r121363. This patch
adds a bunch more tests and reworks the handling of
port-specific default values for --pixel-tests and --time-out-ms
to be more consistent (adding a default_pixel_tests() method,
pushing the webkit default_timeout_ms() value up into base.py,
and overriding it properly in the chromium and apple mac ports.

Also change the logic in
run_webkit_tests._setup_derived_options() to not second-guess
what the port wants the timeout value to be for debug builds;
computing this in two different places led to several bugs.

This change also changes the Chromium unittest ports to derive
from ChromiumPortTestCase instead of PortTestCase, so that we
ensure that we're running the same tests on all port variants
more easily. There's more cleanup that can be done here, but
this is good enough for now

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.default_pixel_tests):
(Port):
(Port.default_timeout_ms):
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort):
(ChromiumPort.__init__):
(ChromiumPort.default_pixel_tests):
(ChromiumPort.default_timeout_ms):
(ChromiumPort.driver_name):
(ChromiumPort._driver_class):
(ChromiumPort._missing_symbol_to_skipped_tests):
(ChromiumPort.skipped_layout_tests):
(ChromiumPort.setup_test_run):
(ChromiumPort._path_to_image_diff):
(ChromiumPort._convert_path):
* Scripts/webkitpy/layout_tests/port/chromium_android_unittest.py:
(ChromiumAndroidPortTest):
(ChromiumAndroidPortTest.test_expectations_files):
* Scripts/webkitpy/layout_tests/port/chromium_linux.py:
(ChromiumLinuxPort._modules_to_search_for_symbols):
* Scripts/webkitpy/layout_tests/port/chromium_linux_unittest.py:
(ChromiumLinuxPortTest):
* Scripts/webkitpy/layout_tests/port/chromium_mac.py:
(ChromiumMacPort._modules_to_search_for_symbols):
* Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
(ChromiumMacPortTest):
* Scripts/webkitpy/layout_tests/port/chromium_port_testcase.py:
split off from chromium_unittest.
* Scripts/webkitpy/layout_tests/port/chromium_win.py:
(ChromiumWinPort._modules_to_search_for_symbols):
* Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
(ChromiumWinTest):
* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort.default_timeout_ms):
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
(MacTest.test_default_timeout_ms):
* Scripts/webkitpy/layout_tests/port/mock_drt.py:
(MockDRTPort.start_http_server):
* Scripts/webkitpy/layout_tests/port/port_testcase.py:
(PortTestCase.test_default_timeout_ms):
(PortTestCase):
(PortTestCase.test_default_pixel_tests):
* Scripts/webkitpy/layout_tests/port/test.py:
(TestPort.default_pixel_tests):
* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitPort._modules_to_search_for_symbols):
(WebKitPort):
(WebKitPort._symbols_string):
(WebKitPort._skipped_tests_for_unsupported_features):
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
(TestWebKitPort._symbols_string):
(TestWebKitPort._tests_for_disabled_features):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options):

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

12 years ago[V8] NodeList wrappers are not kept alive as needed
arv@chromium.org [Fri, 29 Jun 2012 01:13:44 +0000 (01:13 +0000)]
[V8] NodeList wrappers are not kept alive as needed
https://bugs.webkit.org/show_bug.cgi?id=90194

Reviewed by Ojan Vafai.

Source/WebCore:

We need to add custom reachability code for DynamicNodeLists. If the owner of
a DynamicNodeList is reachable then the DynamicNodeList must also be reachable.

Test: fast/dom/NodeList/nodelist-reachable.html

* bindings/v8/custom/V8NodeListCustom.cpp:
(WebCore::V8NodeList::visitDOMWrapper): AddImplicitReferences from the owner wrapper.
(WebCore):
* dom/NodeList.idl:

LayoutTests:

* fast/dom/NodeList/nodelist-reachable-expected.txt: Added.
* fast/dom/NodeList/nodelist-reachable.html: Added.
* platform/chromium/fast/dom/NodeList/nodelist-reachable-expected.txt: Added.

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

12 years agoAdd a test for a 'user-modify' css property of distributed nodes.
hayato@chromium.org [Fri, 29 Jun 2012 00:59:37 +0000 (00:59 +0000)]
Add a test for a 'user-modify' css property of distributed nodes.
https://bugs.webkit.org/show_bug.cgi?id=90197

Reviewed by Ryosuke Niwa.

* fast/dom/shadow/user-modify-inheritance-expected.txt:
* fast/dom/shadow/user-modify-inheritance.html:

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

12 years agoframeborder="no" on frameset is ignored if border attribute set
commit-queue@webkit.org [Fri, 29 Jun 2012 00:55:47 +0000 (00:55 +0000)]
frameborder="no" on frameset is ignored if border attribute set
https://bugs.webkit.org/show_bug.cgi?id=17767

Patch by Elliott Sprehn <esprehn@gmail.com> on 2012-06-28
Reviewed by Tony Chang.

Source/WebCore:

Fixes <frameset> frameborder and border handling. Previously we'd
override the frameborder=no setting if border was set. We also
treated frameborder="anything" the same as frameborder=0 since we
we just converted it to a number so frameborder=yes was incorrectly
treated the same as frameborder=no.

Tests: fast/frames/frameset-frameborder-boolean-values.html
       fast/frames/frameset-frameborder-inheritance.html
       fast/frames/frameset-frameborder-overrides-border.html

* html/HTMLFrameSetElement.cpp: Proper parsing of yes,no,1,0 values.
(WebCore::HTMLFrameSetElement::parseAttribute):
* html/HTMLFrameSetElement.h:
(WebCore::HTMLFrameSetElement::border): Border should be 0 if frameborder=no.

LayoutTests:

Add lots of tests for <frameset> frameborder and border handling.

* fast/frames/frameset-frameborder-boolean-values-expected.txt: Added.
* fast/frames/frameset-frameborder-boolean-values.html: Added.
* fast/frames/frameset-frameborder-inheritance-expected.txt: Added.
* fast/frames/frameset-frameborder-inheritance.html: Added.
* fast/frames/frameset-frameborder-overrides-border-expected.txt: Added.
* fast/frames/frameset-frameborder-overrides-border.html: Added.

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

12 years agorun-bindings-tests should return non-zero exit code on test failure
jsbell@chromium.org [Fri, 29 Jun 2012 00:47:49 +0000 (00:47 +0000)]
run-bindings-tests should return non-zero exit code on test failure
https://bugs.webkit.org/show_bug.cgi?id=90205

Reviewed by Adam Barth.

* Scripts/run-bindings-tests:
(main):

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

12 years agoIndexedDB: Implement IDBTransaction internal active flag
jsbell@chromium.org [Fri, 29 Jun 2012 00:38:08 +0000 (00:38 +0000)]
IndexedDB: Implement IDBTransaction internal active flag
https://bugs.webkit.org/show_bug.cgi?id=89379

Reviewed by Tony Chang.

Source/WebCore:

IDB transactions should only be "active" during IDB success/error callbacks;
attempts to make new requests otherwise (e.g. in a setTimeout callback)
should fail even if the transaction has not yet finished. Implement this logic,
and the closely related requirement that transactions are deactivated when
the context they were created in returns to the event loop, and finally that
when so deactivated they should commit rather than abort (as previously
implemented) if no requests have been filed.

Tests: storage/indexeddb/transaction-active-flag.html
       storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html
       storage/indexeddb/transaction-complete-with-js-recursion.html
       storage/indexeddb/transaction-complete-workers.html

* Modules/indexeddb/IDBPendingTransactionMonitor.cpp: Simplify API.
(WebCore::transactions):
(WebCore::IDBPendingTransactionMonitor::addNewTransaction):
(WebCore::IDBPendingTransactionMonitor::deactivateNewTransactions):
* Modules/indexeddb/IDBPendingTransactionMonitor.h:
(WebCore):
(IDBPendingTransactionMonitor):
* Modules/indexeddb/IDBRequest.cpp: Unregisters from transaction when done,
not on destruction. No longer responsible for working with the pending monitor.
(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::~IDBRequest):
(WebCore::IDBRequest::markEarlyDeath):
(WebCore::IDBRequest::resetReadyState):
(WebCore::IDBRequest::onSuccess):
(WebCore::IDBRequest::dispatchEvent): Set active flag on transaction during callback.
* Modules/indexeddb/IDBTransaction.cpp: Use state enum to better track lifecycle, and
take ownership of relationship with pending monitor.
(WebCore::IDBTransaction::IDBTransaction): Special cases for version change
transactions.
(WebCore::IDBTransaction::~IDBTransaction):
(WebCore::IDBTransaction::error):
(WebCore::IDBTransaction::setError):
(WebCore::IDBTransaction::objectStore):
(WebCore::IDBTransaction::objectStoreCreated):
(WebCore::IDBTransaction::objectStoreDeleted):
(WebCore::IDBTransaction::setActive): Let IDBRequest and IDBPendingTransactionMonitor
toggle the active state. Needs some smarts because (1) state may move to Finishing during
the request's dispatch phase due to an implicit/explicit abort, and (2) a monitor call
will only trigger a commit if the transaction hasn't had any requests filed.
(WebCore):
(WebCore::IDBTransaction::abort):
(WebCore::IDBTransaction::registerRequest):
(WebCore::IDBTransaction::unregisterRequest):
(WebCore::IDBTransaction::onAbort):
(WebCore::IDBTransaction::onComplete):
(WebCore::IDBTransaction::hasPendingActivity):
(WebCore::IDBTransaction::dispatchEvent):
(WebCore::IDBTransaction::canSuspend):
(WebCore::IDBTransaction::enqueueEvent):
* Modules/indexeddb/IDBTransaction.h:
(WebCore::IDBTransaction::isFinished):
(IDBTransaction):
* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::commit): Allow explicit commit() calls from the front end
if no requests have been filed.
* Modules/indexeddb/IDBTransactionBackendInterface.h:
(IDBTransactionBackendInterface): Expose commit() method.
* bindings/js/JSMainThreadExecState.cpp:
(WebCore::JSMainThreadExecState::didLeaveScriptContext): Change target function name.
* bindings/v8/V8RecursionScope.cpp:
(WebCore::V8RecursionScope::didLeaveScriptContext): Change target function name.

Source/WebKit/chromium:

To match the IDB spec, transactions that have had no requests
filed against them should commit, not abort. This requires plumbing
through the commit() call from front-end to back-end.

* src/IDBTransactionBackendProxy.cpp:
(WebKit::IDBTransactionBackendProxy::commit):
(WebKit):
* src/IDBTransactionBackendProxy.h:
(IDBTransactionBackendProxy):
* src/WebIDBTransactionImpl.cpp:
(WebKit::WebIDBTransactionImpl::commit):
(WebKit):
* src/WebIDBTransactionImpl.h:

LayoutTests:

* storage/indexeddb/resources/transaction-active-flag.js: Added.
* storage/indexeddb/resources/transaction-basics.js:
(completeCallback): Empty transactions now commit rather than abort.
(emptyCompleteCallback):
* storage/indexeddb/resources/transaction-complete-workers.js: Renamed from LayoutTests/storage/indexeddb/resources/transaction-abort-workers.js.
* storage/indexeddb/structured-clone.html: Assumed empty transactions aborted.
* storage/indexeddb/transaction-active-flag-expected.txt: Added.
* storage/indexeddb/transaction-active-flag.html: Added.
* storage/indexeddb/transaction-basics-expected.txt:
* storage/indexeddb/transaction-complete-with-js-recursion-cross-frame-expected.txt: Renamed from LayoutTests/storage/indexeddb/transaction-abort-with-js-recursion-cross-frame-expected.txt.
* storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html: Renamed from LayoutTests/storage/indexeddb/transaction-abort-with-js-recursion-cross-frame.html.
* storage/indexeddb/transaction-complete-with-js-recursion-expected.txt: Renamed from LayoutTests/storage/indexeddb/transaction-abort-with-js-recursion-expected.txt.
* storage/indexeddb/transaction-complete-with-js-recursion.html: Renamed from LayoutTests/storage/indexeddb/transaction-abort-with-js-recursion.html.
* storage/indexeddb/transaction-complete-workers-expected.txt: Renamed from LayoutTests/storage/indexeddb/transaction-abort-workers-expected.txt.
* storage/indexeddb/transaction-complete-workers.html: Renamed from LayoutTests/storage/indexeddb/transaction-abort-workers.html.
* storage/indexeddb/tutorial.html: Assumed empty transactions aborted.

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

12 years agoPrevent crash in animate resource handling
pdr@google.com [Fri, 29 Jun 2012 00:13:07 +0000 (00:13 +0000)]
Prevent crash in animate resource handling
https://bugs.webkit.org/show_bug.cgi?id=90042

Reviewed by Abhishek Arya.

Source/WebCore:

This patch adds a check that we are in a document before registering animation
resources and creating a target element in SVGSMILElement. This prevents a crash where
we would register resources and create the target when we were not in a document
but fail to deregister / reset the target when we were removed from a document.
In failing to reset the target, we can crash when trying to deregister resources that
were not created after being inserted into a document and then removed.

The existence of m_targetResources and registered animation resources is now
tied to being in a document.

Test: svg/custom/animate-reference-crash.html

* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::targetElement):

LayoutTests:

* svg/custom/animate-reference-crash-expected.txt: Added.
* svg/custom/animate-reference-crash.html: Added.

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

12 years agoUpdate buildbot config for new hardware.
wsiegrist@apple.com [Fri, 29 Jun 2012 00:06:01 +0000 (00:06 +0000)]
Update buildbot config for new hardware.

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

12 years ago[chromium] Reset the device scale factor to 1 before each test is run
abarth@webkit.org [Fri, 29 Jun 2012 00:01:46 +0000 (00:01 +0000)]
[chromium] Reset the device scale factor to 1 before each test is run
https://bugs.webkit.org/show_bug.cgi?id=90212

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

Some tests change the device scale factor, so this needs to be reset to
1.0 at the start of each test to avoid test flakiness.

* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::reset):

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

12 years agoIndexedDB: IDBDatabase should have a close pending field.
jsbell@chromium.org [Thu, 28 Jun 2012 23:48:31 +0000 (23:48 +0000)]
IndexedDB: IDBDatabase should have a close pending field.
https://bugs.webkit.org/show_bug.cgi?id=71129

Reviewed by Tony Chang.

Source/WebCore:

Handle the IDB spec case that "versionchange" events should not be fired
against connections that have the internal "closePending" flag set but
are not yet closed due to running transactions.

Test: storage/indexeddb/database-closepending-flag.html

* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::onVersionChange):

LayoutTests:

* storage/indexeddb/database-closepending-flag-expected.txt: Added.
* storage/indexeddb/database-closepending-flag.html: Added.
* storage/indexeddb/resources/database-closepending-flag.js: Added.
(test):
(openConnection.request.onsuccess.request.onsuccess):
(openConnection.request.onsuccess):
(openConnection):
(testIDBDatabaseName):
(testIDBDatabaseObjectStoreNames.request.onsuccess.request.onsuccess.transaction.oncomplete):
(testIDBDatabaseObjectStoreNames.request.onsuccess.request.onsuccess):
(testIDBDatabaseObjectStoreNames.request.onsuccess):
(testIDBDatabaseObjectStoreNames):
(testIDBDatabaseTransaction):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onblocked):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onsuccess.transaction.oncomplete):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onsuccess):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess):
(testDatabaseDeletion.request.onsuccess.request.onblocked):
(testDatabaseDeletion.request.onsuccess.request.onsuccess):

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

12 years agoReplace a BUG_OJAN with a proper tracking bug and unskip two
ojan@chromium.org [Thu, 28 Jun 2012 23:38:59 +0000 (23:38 +0000)]
Replace a BUG_OJAN with a proper tracking bug and unskip two
tests in preparation for rebaselining them.
* platform/chromium/TestExpectations:

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

12 years ago[chromium] Split WebScrollbar into WebPluginScrollbar and WebScrollbar
enne@google.com [Thu, 28 Jun 2012 23:27:45 +0000 (23:27 +0000)]
[chromium] Split WebScrollbar into WebPluginScrollbar and WebScrollbar
https://bugs.webkit.org/show_bug.cgi?id=90117

Reviewed by James Robinson.

Source/Platform:

Move WebScrollbar from client API to Platform.

* Platform.gypi:
* chromium/public/WebScrollbar.h: Copied from Source/WebKit/chromium/public/WebPluginScrollbarClient.h.
(WebKit):
(WebScrollbar):
(WebKit::WebScrollbar::~WebScrollbar):

Source/WebCore:

Make WebCore also depend on Platform.

* WebCore.gyp/WebCore.gyp:

Source/WebKit/chromium:

Convert WebScrollbar/WebScrollbarClient/WebScrollbarImpl to be
WebPluginScrollbar, WebPluginScrollbarClient, and
WebPluginScrollbarImpl. Modify ScrollbarGroup
to use this instead.

WebScrollbar is now the base interface for a pre-existing scrollbar
that is accessed in a const manner. It also provides all of the common
WebKit ScrollTypes.h enums. WebPluginScrollbar is now a scrollbar that
has been externally created and is externally modified in terms of its
position, invalidation, and painting.

This is a pre-refactoring for adding Web versions of ScrollbarTheme
into the Platform directory which will operate on WebScrollbar, but
that don't need all of what WebPluginScrollbar provides.

As WebScrollbar is moved to Platform, WebKit.gyp now must depend on
Platform as well.

* WebKit.gyp:
* public/WebPluginScrollbar.h:
(WebKit):
(WebPluginScrollbar):
(WebKit::WebPluginScrollbar::~WebPluginScrollbar):
* public/WebPluginScrollbarClient.h:
(WebKit):
(WebPluginScrollbarClient):
* public/WebScrollbar.h: Removed.
* public/WebScrollbarClient.h: Removed.
* src/AssertMatchingEnums.cpp:
* src/ScrollbarGroup.cpp:
(WebKit::ScrollbarGroup::scrollbarCreated):
(WebKit::ScrollbarGroup::scrollbarDestroyed):
(WebKit::ScrollbarGroup::scrollSize):
(WebKit::ScrollbarGroup::scrollPosition):
(WebKit::ScrollbarGroup::contentsSize):
* src/ScrollbarGroup.h:
(WebKit):
(ScrollbarGroup):
* src/WebPluginScrollbarImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarImpl.cpp.
(WebKit):
(WebKit::WebPluginScrollbar::createForPlugin):
(WebKit::WebPluginScrollbar::defaultThickness):
(WebKit::WebPluginScrollbarImpl::WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::~WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::setScrollOffset):
(WebKit::WebPluginScrollbarImpl::invalidateScrollbarRect):
(WebKit::WebPluginScrollbarImpl::getTickmarks):
(WebKit::WebPluginScrollbarImpl::convertFromContainingViewToScrollbar):
(WebKit::WebPluginScrollbarImpl::scrollbarStyleChanged):
(WebKit::WebPluginScrollbarImpl::isOverlay):
(WebKit::WebPluginScrollbarImpl::value):
(WebKit::WebPluginScrollbarImpl::setLocation):
(WebKit::WebPluginScrollbarImpl::setValue):
(WebKit::WebPluginScrollbarImpl::setDocumentSize):
(WebKit::WebPluginScrollbarImpl::scroll):
(WebKit::WebPluginScrollbarImpl::paint):
(WebKit::WebPluginScrollbarImpl::handleInputEvent):
(WebKit::WebPluginScrollbarImpl::onMouseDown):
(WebKit::WebPluginScrollbarImpl::onMouseUp):
(WebKit::WebPluginScrollbarImpl::onMouseMove):
(WebKit::WebPluginScrollbarImpl::onMouseLeave):
(WebKit::WebPluginScrollbarImpl::onMouseWheel):
(WebKit::WebPluginScrollbarImpl::onKeyDown):
* src/WebPluginScrollbarImpl.h: Added.
(WebCore):
(WebKit):
(WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::scrollOffset):
(WebKit::WebPluginScrollbarImpl::scrollbar):
* src/WebScrollbarImpl.h: Removed.

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

12 years ago[chromium] Mark a test as failing on Linux debug
hclam@chromium.org [Thu, 28 Jun 2012 23:25:35 +0000 (23:25 +0000)]
[chromium] Mark a test as failing on Linux debug

fast/forms/select/select-state-restore.html is failing on Linux debug because of timeout.

Not reviewed.

* platform/chromium/TestExpectations:

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

12 years agoRebaselines after http://trac.webkit.org/changeset/119507.
ojan@chromium.org [Thu, 28 Jun 2012 23:21:56 +0000 (23:21 +0000)]
Rebaselines after trac.webkit.org/changeset/119507.
These were all done using "webkit-patch rebaseline-expectations".

* platform/chromium-mac-leopard/tables/mozilla/bugs/bug131020-expected.png:
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug131020-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug131020-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug131020-expected.txt:
* platform/chromium-win/tables/mozilla/bugs/bug131020-expected.png:
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/efl/tables/mozilla/bugs/bug131020-expected.txt: Copied from LayoutTests/tables/mozilla/bugs/bug131020-expected.txt.
* platform/gtk/TestExpectations:
* platform/gtk/tables/mozilla/bugs/bug131020-expected.txt: Renamed from LayoutTests/tables/mozilla/bugs/bug131020-expected.txt.
* platform/mac/TestExpectations:
* platform/mac/tables/mozilla/bugs/bug131020-expected.txt:
* platform/qt/TestExpectations:
* platform/qt/tables/mozilla/bugs/bug131020-expected.txt:
* platform/win/TestExpectations:

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

12 years ago[Chromium] On Android, we should be able to ask the embedder what intents exist in...
abarth@webkit.org [Thu, 28 Jun 2012 23:20:52 +0000 (23:20 +0000)]
[Chromium] On Android, we should be able to ask the embedder what intents exist in a region of the page
https://bugs.webkit.org/show_bug.cgi?id=90210

Reviewed by Dimitri Glazkov.

This patch introduces a function that asks the embedder to analyze the
region around a hit test result for interesting content, like phone
numbers, email addresses, or physical addresses. The embedder then
responds with the "most interesting" content, together with an intent
URL for enacting the intent embodied by that content.

This function will be used in a subsequent patch to detect content
after touch events.

* WebKit.gyp:
* public/WebContentDetectionResult.h: Added.
(WebKit):
(WebContentDetectionResult):
(WebKit::WebContentDetectionResult::WebContentDetectionResult):
(WebKit::WebContentDetectionResult::isValid):
(WebKit::WebContentDetectionResult::range):
(WebKit::WebContentDetectionResult::string):
(WebKit::WebContentDetectionResult::intent):
* public/WebViewClient.h:
(WebViewClient):
(WebKit::WebViewClient::detechContentAround):

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

12 years ago<https://bugs.webkit.org/show_bug.cgi?id=90216>
sullivan@apple.com [Thu, 28 Jun 2012 23:12:48 +0000 (23:12 +0000)]
<https://bugs.webkit.org/show_bug.cgi?id=90216>
<rdar://problem/11766518>
Undo handling in WebKit2 is not robust against some page-closing code paths

Reviewed by Enrica Casucci.

* UIProcess/API/mac/PageClientImpl.h:
Declared public function viewWillMoveToAnotherWindow().

* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
New function, calls clearAllEditCommands() to remove any Undo actions from the stack.
This guarantees that no Undo actions will be abandoned when the PageClientImpl is dealloc'ed.

* UIProcess/API/mac/WKView.mm:
(-[WKView viewWillMoveToWindow:]):
Now informs PageClientImpl via new function PageClientImpl::viewWillMoveToAnotherWindow().

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

12 years agoCompositeShadowTreeWalker should use InsertionPoint::hasDistribution() instead of...
hayato@chromium.org [Thu, 28 Jun 2012 23:05:59 +0000 (23:05 +0000)]
CompositeShadowTreeWalker should use InsertionPoint::hasDistribution() instead of InsertionPoint::isActive().
https://bugs.webkit.org/show_bug.cgi?id=89177

Reviewed by Dimitri Glazkov.

Source/WebCore:

Prevents ComposedShadowTreeWalker from escaping out of an
insertion point (which has distributed nodes) from a non-used
fallback element in the insertion point.  Such a fallback element
should be treated as in an orphaned subtree.

ComposedShadowTreeParentWalker will be also fixed in a follow-up patch.

Test: fast/dom/shadow/composed-shadow-tree-walker.html

* dom/ComposedShadowTreeWalker.cpp:
(WebCore::ComposedShadowTreeWalker::traverseNodeEscapingFallbackContents):

LayoutTests:

* fast/dom/shadow/composed-shadow-tree-walker-expected.txt:
* fast/dom/shadow/composed-shadow-tree-walker.html:

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

12 years agoAdding a commenting utility to record BytecodeGenerator comments
commit-queue@webkit.org [Thu, 28 Jun 2012 23:03:07 +0000 (23:03 +0000)]
Adding a commenting utility to record BytecodeGenerator comments
with opcodes that are emitted.  Presently, the comments can only
be constant strings.  Adding comments for opcodes is optional.
If a comment is added, the comment will be printed following the
opcode when CodeBlock::dump() is called.

This utility is disabled by default, and is only meant for VM
development purposes.  It should not be enabled for product builds.

To enable this utility, set ENABLE_BYTECODE_COMMENTS in CodeBlock.h
to 1.

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

Patch by Mark Lam <mark.lam@apple.com> on 2012-06-28
Reviewed by Geoffrey Garen.

* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecodeCommentAndNewLine): Dumps the comment.
(JSC):
(JSC::CodeBlock::printUnaryOp): Add comment dumps.
(JSC::CodeBlock::printBinaryOp): Add comment dumps.
(JSC::CodeBlock::printConditionalJump): Add comment dumps.
(JSC::CodeBlock::printCallOp): Add comment dumps.
(JSC::CodeBlock::printPutByIdOp): Add comment dumps.
(JSC::CodeBlock::dump): Add comment dumps.
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::commentForBytecodeOffset):
    Finds the comment for an opcode if available.
(JSC::CodeBlock::dumpBytecodeComments):
    For debugging whether comments are collected.
    It is not being called anywhere.
* bytecode/CodeBlock.h:
(CodeBlock):
(JSC::CodeBlock::bytecodeComments):
* bytecode/Comment.h: Added.
(JSC):
(Comment):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitOpcode): Calls emitComment().
(JSC):
(JSC::BytecodeGenerator::emitComment): Adds comment to CodeBlock.
(JSC::BytecodeGenerator::prependComment):
    Registers a comment for emitComemnt() to use later.
* bytecompiler/BytecodeGenerator.h:
(BytecodeGenerator):
(JSC::BytecodeGenerator::emitComment):
(JSC::BytecodeGenerator::prependComment):
    These are inlined versions of these functions that nullify them
    when ENABLE_BYTECODE_COMMENTS is 0.
(JSC::BytecodeGenerator::comments):

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

12 years agoFix a typo in the change log per review comment.
rniwa@webkit.org [Thu, 28 Jun 2012 23:02:23 +0000 (23:02 +0000)]
Fix a typo in the change log per review comment.

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

12 years agoCleanup HTMLFormCollection
rniwa@webkit.org [Thu, 28 Jun 2012 23:01:06 +0000 (23:01 +0000)]
Cleanup HTMLFormCollection
https://bugs.webkit.org/show_bug.cgi?id=90111

Reviewed by Andreas Kling.

Source/WebCore:

Got rid of getNamedItem and enamed getNamedFormItem to firstNamedItem and got rid of duplicateNumber argument since
it's always 0. Also made it a static local function. In addition, removed nextItem() since it's not used anywhere.

WebKit API Test: WebKit1.HTMLFormCollectionNamedItemTest

* html/HTMLFormCollection.cpp:
(WebCore::firstNamedItem):
(WebCore):
(WebCore::HTMLFormCollection::namedItem):
* html/HTMLFormCollection.h:
(HTMLFormCollection):

Tools:

Add a WebKit API test using copy-paste design pattern per kling's request.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.html: Added.
* TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.mm: Added.
(-[HTMLFormCollectionNamedItemTest webView:didFinishLoadForFrame:]):
(TestWebKitAPI):
(TestWebKitAPI::TEST):

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

12 years agoIndexedDB: Hook up render-side key ASSERTing for get()
commit-queue@webkit.org [Thu, 28 Jun 2012 22:57:08 +0000 (22:57 +0000)]
IndexedDB: Hook up render-side key ASSERTing for get()
https://bugs.webkit.org/show_bug.cgi?id=90001

Patch by Alec Flett <alecflett@chromium.org> on 2012-06-28
Reviewed by Tony Chang.

Source/WebCore:

Hook up the new onSuccess and add it to the interface. For now,
simply assert that the right value is set. Add the same assertion
logic in the value-construction logic when the cursor advances.

No new tests, existing tests verify this refactor is correct.

* Modules/indexeddb/IDBCallbacks.h:
(IDBCallbacks):
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::getInternal):
* Modules/indexeddb/IDBRequest.cpp:
(WebCore):
(WebCore::IDBRequest::onSuccess):
* Modules/indexeddb/IDBRequest.h:
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore::createIDBKeyFromSerializedValueAndKeyPath):
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):

Source/WebKit/chromium:

Hook up Chromium WebKit API to new onSuccess handler.

* src/WebIDBCallbacksImpl.cpp:
(WebKit::WebIDBCallbacksImpl::onSuccess):
* tests/IDBAbortOnCorruptTest.cpp:
(WebCore::MockIDBCallbacks::onSuccess):
* tests/IDBDatabaseBackendTest.cpp:

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

12 years ago[mac] WKTR windows still don't stay off screen sometimes
timothy_horton@apple.com [Thu, 28 Jun 2012 22:45:18 +0000 (22:45 +0000)]
[mac] WKTR windows still don't stay off screen sometimes
https://bugs.webkit.org/show_bug.cgi?id=90214
<rdar://problem/11760263>

Reviewed by Simon Fraser.

In some cases, the system itself will consult [WebKitTestRunnerWindow frame], so we should refrain from
overriding it and instead provide a different method to use when we want the web-facing "fake" window origin
(for PlatformWebView::windowFrame()).

* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(-[WebKitTestRunnerWindow frameRespectingFakeOrigin]):
(WTR::PlatformWebView::windowFrame):

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

12 years ago[GTK] Add unit tests for GtkInputMethodFilter
mrobinson@webkit.org [Thu, 28 Jun 2012 22:34:25 +0000 (22:34 +0000)]
[GTK] Add unit tests for GtkInputMethodFilter
https://bugs.webkit.org/show_bug.cgi?id=88698

Reviewed by Carlos Garcia Campos.

Add unit tests for GtkInputMethodFilter in the WebCore platform layer.
This change adds the TestGtk test suite which will be used for all non-API
layer GTK unit tests.

* TestWebKitAPI/GNUmakefile.am: Update the build to include the new tests.
* TestWebKitAPI/Tests/gtk/InputMethodFilter.cpp: Added.
(TestWebKitAPI::PlatformWebView::PlatformWebView): Remove the call to gtk_init here
as it's now in main.cpp.
* TestWebKitAPI/gtk/main.cpp: Change the g_type_init call to gtk_init, because now
a majority of all unit tests depend on GTK+ being initialized.

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

12 years agoAdd support for DEPTH_STENCIL to WEBGL_depth_texture
commit-queue@webkit.org [Thu, 28 Jun 2012 21:55:12 +0000 (21:55 +0000)]
Add support for DEPTH_STENCIL to WEBGL_depth_texture
https://bugs.webkit.org/show_bug.cgi?id=90109

Patch by Gregg Tavares <gman@google.com> on 2012-06-28
Reviewed by Kenneth Russell.

Source/WebCore:

* html/canvas/WebGLDepthTexture.idl:
* html/canvas/WebGLFramebuffer.cpp:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):

LayoutTests:

* fast/canvas/webgl/webgl-depth-texture-expected.txt:
* fast/canvas/webgl/webgl-depth-texture.html:

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

12 years ago[chromium] Move chromium compositor implementation files into separate section in...
commit-queue@webkit.org [Thu, 28 Jun 2012 21:51:36 +0000 (21:51 +0000)]
[chromium] Move chromium compositor implementation files into separate section in WebCore.gypi
https://bugs.webkit.org/show_bug.cgi?id=90201

Patch by James Robinson <jamesr@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

This moves the chromium compositor implementation files to a separate gyp variable to make future changes
easier. The files still all link into webcore_platform.lib, as before.

* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:

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

12 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Thu, 28 Jun 2012 21:43:49 +0000 (21:43 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

12 years ago[chromium] rebaseline svg text layouts?
schenney@chromium.org [Thu, 28 Jun 2012 21:30:44 +0000 (21:30 +0000)]
[chromium] rebaseline svg text layouts?
https://bugs.webkit.org/show_bug.cgi?id=89936

Unreviewed Chromium test expectations update.

The SVG tests for this bug all seem OK, so they are being rebaselined.
The other content is less clear, so it is being left for an expert.

* platform/chromium-win-xp/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt: Added.
* platform/chromium-win-xp/svg/custom/js-late-gradient-and-object-creation-expected.png: Added.
* platform/chromium-win-xp/svg/text/text-intro-05-t-expected.txt: Added.
* platform/chromium-win-xp/svg/zoom/page/zoom-foreignObject-expected.png: Added.
* platform/chromium/TestExpectations:

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

12 years ago[chromium] Mark a test as slow.
hclam@chromium.org [Thu, 28 Jun 2012 21:26:31 +0000 (21:26 +0000)]
[chromium] Mark a test as slow.
https://bugs.webkit.org/show_bug.cgi?id=90207

fast/forms/select/select-state-restore.html is a slow test on debug builds.
Not reviewed.

* platform/chromium/TestExpectations:

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

12 years agoUnreviewed, rolling out r121463.
hclam@chromium.org [Thu, 28 Jun 2012 21:10:12 +0000 (21:10 +0000)]
Unreviewed, rolling out r121463.
http://trac.webkit.org/changeset/121463
https://bugs.webkit.org/show_bug.cgi?id=90094

Broke Windows build.

* WebKit.gypi:
* WebKitUnitTests.gyp:
* public/WebDOMMessageEvent.h:
* tests/AssociatedURLLoaderTest.cpp:
(WebKit::AssociatedURLLoaderTest::AssociatedURLLoaderTest):
(WebKit::AssociatedURLLoaderTest::SetUp):
(WebKit::AssociatedURLLoaderTest::CheckMethodFails):
(WebKit::AssociatedURLLoaderTest::CheckHeaderFails):
(WebKit::AssociatedURLLoaderTest::CheckAccessControlHeaders):
(WebKit::TEST_F):
* tests/EventListenerTest.cpp:
* tests/FrameTestHelpers.cpp:
(WebKit::FrameTestHelpers::registerMockedURLLoad):
(FrameTestHelpers):
(WebKit::FrameTestHelpers::loadFrame):
* tests/FrameTestHelpers.h:
(FrameTestHelpers):
* tests/ListenerLeakTest.cpp:
(WebKit::ListenerLeakTest::RunTest):
* tests/PopupMenuTest.cpp:
(WebKit::SelectPopupMenuTest::registerMockedURLLoad):
(WebKit::SelectPopupMenuTest::loadFrame):
(WebKit::TEST_F):
* tests/RunAllTests.cpp:
* tests/URLTestHelpers.cpp: Removed.
* tests/URLTestHelpers.h: Removed.
* tests/WebFrameTest.cpp:
(WebKit::WebFrameTest::registerMockedHttpURLLoad):
(WebKit::WebFrameTest::registerMockedChromeURLLoad):
(WebKit::TEST_F):
* tests/WebPageNewSerializerTest.cpp:
(WebKit::WebPageNewSerializeTest::registerMockedURLLoad):
(WebPageNewSerializeTest):
(WebKit::WebPageNewSerializeTest::setUpCSSTestPage):
(WebKit::WebPageNewSerializeTest::loadURLInTopFrame):
(WebKit::WebPageNewSerializeTest::resourceVectorContains):
(WebKit::TEST_F):
* tests/WebPageSerializerTest.cpp:
(WebKit::WebPageSerializerTest::registerMockedURLLoad):
(WebKit::WebPageSerializerTest::loadURLInTopFrame):
(WebKit::WebPageSerializerTest::webVectorContains):
(WebKit::TEST_F):
* tests/WebViewTest.cpp:
(WebKit::TEST_F):
(WebKit::WebViewTest::testAutoResize):
(WebKit::WebViewTest::testTextInputType):

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

12 years ago[EFL] Enable support for HTML5 datalist
commit-queue@webkit.org [Thu, 28 Jun 2012 21:02:30 +0000 (21:02 +0000)]
[EFL] Enable support for HTML5 datalist
https://bugs.webkit.org/show_bug.cgi?id=90157

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-28
Reviewed by Martin Robinson.

.:

Turn on DATALIST flag by default on EFL port to
support HTML5 datalist tag.

* Source/cmake/OptionsEfl.cmake:

Tools:

Turn on DATALIST flag by default on EFL port to
support HTML5 datalist tag.

* Scripts/webkitperl/FeatureList.pm:

LayoutTests:

* platform/efl/Skipped: Unskip fast/forms/datalist tests now that
the DATALIST flag is turned on by default on EFL port.
* platform/efl/fast/forms/datalist/input-list-expected.txt: Added.
We need platform-specific result because we don't support datalist
UI for any element yet. This should be progressively added later
on and the expected result will evolve.

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

12 years ago[EFL] Use Eina_Module API instead of dlopen in PluginPackageEfl
commit-queue@webkit.org [Thu, 28 Jun 2012 20:56:29 +0000 (20:56 +0000)]
[EFL] Use Eina_Module API instead of dlopen in PluginPackageEfl
https://bugs.webkit.org/show_bug.cgi?id=89972

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-28
Reviewed by Antonio Gomes.

Use convenience helpers in Eina_Module to load plugins instead
of POSIX dlopen().

No new tests, behavior has not changed.

* platform/FileSystem.h:
(WebCore):
* platform/efl/FileSystemEfl.cpp:
(WebCore::unloadModule):
* plugins/efl/PluginPackageEfl.cpp:
(WebCore::PluginPackage::load):

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

12 years ago32bit DFG incorrectly claims an fpr is fillable even if it has not been proven double
oliver@apple.com [Thu, 28 Jun 2012 20:54:06 +0000 (20:54 +0000)]
32bit DFG incorrectly claims an fpr is fillable even if it has not been proven double
https://bugs.webkit.org/show_bug.cgi?id=90127

Reviewed by Filip Pizlo.

The 32-bit version of fillSpeculateDouble doesn't handle Number->fpr loads
correctly.  This patch fixes this by killing the fill info in the GenerationInfo
when the spillFormat doesn't guarantee the value is a double.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):

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

12 years ago[WinCairo] Unreviewed build correction. Add two missing macro
bfulgham@webkit.org [Thu, 28 Jun 2012 20:47:17 +0000 (20:47 +0000)]
[WinCairo] Unreviewed build correction.  Add two missing macro
declarations to vsprops file.

* win/tools/vsprops/FeatureDefinesCairo.vsprops: Add missing
ENABLE_HIGH_DPI_CANVAS and ENABLE_REQUEST_ANIMATION_FRAME macros.

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

12 years agoEnable CSS grid layout LayoutTests on platform Mac
tony@chromium.org [Thu, 28 Jun 2012 20:37:36 +0000 (20:37 +0000)]
Enable CSS grid layout LayoutTests on platform Mac
https://bugs.webkit.org/show_bug.cgi?id=90113

Reviewed by Ojan Vafai.

Tools:

* DumpRenderTree/mac/DumpRenderTree.mm:
(resetDefaultsToConsistentValues): Reset the value to NO between tests.

LayoutTests:

Use 1 instead of true, since that's what WebView.mm expects.

* fast/css-grid-layout/containing-block-grids.html:
* fast/css-grid-layout/display-grid-set-get.html:
* fast/css-grid-layout/floating-empty-grids.html:
* fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:
* fast/css-grid-layout/grid-columns-rows-get-set.html:
* fast/css-grid-layout/grid-item-column-row-get-set.html:
* platform/mac/Skipped: Unskip tests.

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

12 years ago[chromium] Use WEBKIT_IMPLEMENTATION == 1 for webkit_unit_tests
shawnsingh@chromium.org [Thu, 28 Jun 2012 20:34:47 +0000 (20:34 +0000)]
[chromium] Use WEBKIT_IMPLEMENTATION == 1 for webkit_unit_tests
https://bugs.webkit.org/show_bug.cgi?id=90094

Reviewed by Adam Barth.

This patch adds the WEBKIT_IMPLEMENTATION = 1 define to
WebKitUnitTests.gyp. To get it to compile correctly, some string
and URL code was refactored and fixed.

* WebKit.gypi:
* WebKitUnitTests.gyp:
* public/WebDOMMessageEvent.h:
(WebKit::WebDOMMessageEvent::WebDOMMessageEvent):
* tests/AssociatedURLLoaderTest.cpp:
* tests/EventListenerTest.cpp:
* tests/FrameTestHelpers.cpp:
(WebKit::FrameTestHelpers::loadFrame):
* tests/FrameTestHelpers.h:
* tests/ListenerLeakTest.cpp:
(WebKit::ListenerLeakTest::RunTest):
* tests/PopupMenuTest.cpp:
* tests/RunAllTests.cpp:
* tests/URLTestHelpers.cpp: Added.
(URLTestHelpers):
(WebKit::URLTestHelpers::registerMockedURLFromBaseURL):
(WebKit::URLTestHelpers::registerMockedURLLoad):
* tests/URLTestHelpers.h: Copied from Source/WebKit/chromium/public/WebDOMMessageEvent.h.
(WebKit):
(URLTestHelpers):
(WebKit::URLTestHelpers::toKURL):
* tests/WebFrameTest.cpp:
* tests/WebPageNewSerializerTest.cpp:
* tests/WebPageSerializerTest.cpp:
* tests/WebViewTest.cpp:

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

12 years ago[Qt] Fix TextureMapper rendering of GraphicsSurface on Mac
commit-queue@webkit.org [Thu, 28 Jun 2012 20:33:59 +0000 (20:33 +0000)]
[Qt] Fix TextureMapper rendering of GraphicsSurface on Mac
https://bugs.webkit.org/show_bug.cgi?id=90154

Patch by Jocelyn Turcotte <turcotte.j@gmail.com> on 2012-06-28
Reviewed by Noam Rosenthal.

Fix a regression introduced in r120608.
texture2DRect takes texel coordinates, unlike texture2D which needs normalized coordinates.

Pass an additional textureSize uniform and multiply it by the normalized coordinates.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::drawTextureRectangleARB):
* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore::TextureMapperShaderProgram::TextureMapperShaderProgram):
(WebCore::TextureMapperShaderProgramRectSimple::TextureMapperShaderProgramRectSimple):
* platform/graphics/texmap/TextureMapperShaderManager.h:
(WebCore::TextureMapperShaderProgram::textureSizeLocation):
(TextureMapperShaderProgram):

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