WebKit.git
9 years ago[Qt][WK2] Setting Download as action for navigation request crashes WebProcess
jesus@webkit.org [Thu, 15 Dec 2011 13:18:44 +0000 (13:18 +0000)]
[Qt][WK2] Setting Download as action for navigation request crashes WebProcess
https://bugs.webkit.org/show_bug.cgi?id=74526

Reviewed by Simon Hausmann.

Adding checks for networkcontext and networkAccessManager
and return true in case they don't exist, following the same
logic as if the CookieJar doesn't exist.

* platform/qt/ThirdPartyCookiesQt.cpp:
(WebCore::thirdPartyCookiePolicyPermits):

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

9 years ago[Qt] Don't add WebCoreSupport and WebKit APIs to include WebCore's include path
vestbo@webkit.org [Thu, 15 Dec 2011 13:16:08 +0000 (13:16 +0000)]
[Qt] Don't add WebCoreSupport and WebKit APIs to include WebCore's include path

Reviewed Simon Hausmann.

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

9 years ago[Qt] Cleanup: Remove unnecessary const_cast
hausmann@webkit.org [Thu, 15 Dec 2011 13:04:53 +0000 (13:04 +0000)]
[Qt] Cleanup: Remove unnecessary const_cast

Reviewed by Kenneth Christiansen.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebView::preferences):

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

9 years ago[Qt] Get rid of layering violation in PluginViewQt
vestbo@webkit.org [Thu, 15 Dec 2011 12:40:47 +0000 (12:40 +0000)]
[Qt] Get rid of layering violation in PluginViewQt

PluginViewQt has a layering violation in relying on QWebPagePrivate for
the check if running under DRT. We remove this and add a specific flag
in the PluginView for this check, enabled from DRTSupport. This isn't
pretty, but an improvement over what's currently there.

Reviewed by Simon Hausmann.

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

9 years ago[QT][WK2]Add (experimental) viewport info view to Minibrowser/qt.
commit-queue@webkit.org [Thu, 15 Dec 2011 12:38:42 +0000 (12:38 +0000)]
[QT][WK2]Add (experimental) viewport info view to Minibrowser/qt.
https://bugs.webkit.org/show_bug.cgi?id=72893

Patch by Michael Brüning <michael.bruning@nokia.com> on 2011-12-15
Reviewed by Kenneth Rohde Christiansen.

This patch extends QQuickWebViewExperimental by a property named
viewportInfo, which contains the viewport scalability and
layout and contents size information. This property is exposed to
QML through the experimental extension for QQuickWebView.

.:

* Source/qtwebkit-export.map:

Source/WebKit/qt:

* declarative/experimental/plugin.cpp:

Source/WebKit2:

* Target.pri:
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::didChangeContentsSize):
(QQuickWebViewPrivate::computeViewportConstraints):
(QQuickWebViewPrivate::PostTransitionState::apply): Added applying
contentsSize to viewportInfo.
(QQuickWebViewExperimental::QQuickWebViewExperimental):
(QQuickWebViewExperimental::viewportInfo):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h: Moved PostTransitionState::apply
to qquickwebview.cpp. Added friend QWebViewportInfo.
* UIProcess/API/qt/qwebviewportinfo.cpp: Added.
(QWebViewportInfo::QWebViewportInfo):
(QWebViewportInfo::~QWebViewportInfo):
(QWebViewportInfo::contentsSize):
(QWebViewportInfo::currentScale):
(QWebViewportInfo::devicePixelRatio):
(QWebViewportInfo::initialScale):
(QWebViewportInfo::minimumScale):
(QWebViewportInfo::maximumScale):
(QWebViewportInfo::isScalable):
(QWebViewportInfo::layoutSize):
(QWebViewportInfo::didUpdateContentsSize):
(QWebViewportInfo::didUpdateCurrentScale):
(QWebViewportInfo::didUpdateViewportConstraints):
* UIProcess/API/qt/qwebviewportinfo_p.h: Added.
* UIProcess/qt/QtViewportInteractionEngine.h:
(WebKit::QtViewportInteractionEngine::Constraints::Constraints): Added layoutSize.
(WebKit::QtViewportInteractionEngine::constraints): Added property to access m_contraints.

Tools:

* MiniBrowser/qt/MiniBrowser.pro:
* MiniBrowser/qt/MiniBrowser.qrc:
* MiniBrowser/qt/icons/info.png: Added.
* MiniBrowser/qt/qml/BrowserWindow.qml:
* MiniBrowser/qt/qml/ViewportInfoItem.qml: Added.

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

9 years ago[Chromium] Enable TestNetscapePlugIn to link for Android
peter@chromium.org [Thu, 15 Dec 2011 12:35:27 +0000 (12:35 +0000)]
[Chromium] Enable TestNetscapePlugIn to link for Android
https://bugs.webkit.org/show_bug.cgi?id=74597

Reviewed by Tony Gentilcore.

The -nostdlib linker flag is being passed to all targets being build
for Android, which conflicts with the shared library the
TestNetscapePlugIn target created. Explicitly exclude the flag.

* WebKit.gyp:

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

9 years ago[WK2] WebPage::m_useFixedLayout variable unininitialized
commit-queue@webkit.org [Thu, 15 Dec 2011 12:31:48 +0000 (12:31 +0000)]
[WK2] WebPage::m_useFixedLayout variable unininitialized
https://bugs.webkit.org/show_bug.cgi?id=74596

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2011-12-15
Reviewed by Kenneth Rohde Christiansen.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage): Avoid uninitialized use through
initialization in the constructor.

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

9 years agoWeb Inspector: Console should show network messages origins.
vsevik@chromium.org [Thu, 15 Dec 2011 12:16:04 +0000 (12:16 +0000)]
Web Inspector: Console should show network messages origins.
https://bugs.webkit.org/show_bug.cgi?id=74521

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl.prototype._formatMessage):

LayoutTests:

* http/tests/inspector/console-resource-errors-expected.txt:
* http/tests/inspector/console-xhr-logging-expected.txt:
* platform/chromium/http/tests/inspector/console-resource-errors-expected.txt:

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

9 years ago"user-select none" causes selection to incorrectly escape from clicked container
commit-queue@webkit.org [Thu, 15 Dec 2011 12:02:55 +0000 (12:02 +0000)]
"user-select none" causes selection to incorrectly escape from clicked container
https://bugs.webkit.org/show_bug.cgi?id=57289

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2011-12-15
Reviewed by Ryosuke Niwa.

Source/WebCore:

Not selecting the nearest word from the target node if target node has -webkit-user-select:none

Test: fast/events/mouse-double-triple-click-should-not-select-next-node-for-user-select-none.html

* page/EventHandler.cpp:
(WebCore::EventHandler::updateSelectionForMouseDownDispatchingSelectStart):
If target node has webkit-user-select:none style then do not update the selection.

LayoutTests:

* fast/events/mouse-double-triple-click-should-not-select-next-node-for-user-select-none-expected.txt: Added.
* fast/events/mouse-double-triple-click-should-not-select-next-node-for-user-select-none.html: Added.
* fast/js/resources/js-test-pre.js:
(shouldNotBe):
Added new helper function to check for inequality.

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

9 years agoRename JSC::Heuristics to JSC::Options
commit-queue@webkit.org [Thu, 15 Dec 2011 12:01:30 +0000 (12:01 +0000)]
Rename JSC::Heuristics to JSC::Options
https://bugs.webkit.org/show_bug.cgi?id=72889

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-15
Reviewed by Filip Pizlo.

* runtime/Options.cpp: Renamed from Source/JavaScriptCore/runtime/Heuristics.cpp.
* runtime/Options.h: Renamed from Source/JavaScriptCore/runtime/Heuristics.h.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::shouldOptimizeNow):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::likelyToTakeSlowCase):
(JSC::CodeBlock::couldTakeSlowCase):
(JSC::CodeBlock::likelyToTakeSpecialFastCase):
(JSC::CodeBlock::likelyToTakeDeepestSlowCase):
(JSC::CodeBlock::likelyToTakeAnySlowCase):
(JSC::CodeBlock::reoptimizationRetryCounter):
(JSC::CodeBlock::countReoptimization):
(JSC::CodeBlock::counterValueForOptimizeAfterWarmUp):
(JSC::CodeBlock::counterValueForOptimizeAfterLongWarmUp):
(JSC::CodeBlock::optimizeNextInvocation):
(JSC::CodeBlock::dontOptimizeAnytimeSoon):
(JSC::CodeBlock::optimizeSoon):
(JSC::CodeBlock::largeFailCountThreshold):
(JSC::CodeBlock::largeFailCountThresholdForLoop):
(JSC::CodeBlock::shouldReoptimizeNow):
(JSC::CodeBlock::shouldReoptimizeFromLoopNow):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleInlining):
* dfg/DFGCapabilities.h:
(JSC::DFG::mightCompileEval):
(JSC::DFG::mightCompileProgram):
(JSC::DFG::mightCompileFunctionForCall):
(JSC::DFG::mightCompileFunctionForConstruct):
(JSC::DFG::mightInlineFunctionForCall):
(JSC::DFG::mightInlineFunctionForConstruct):
* dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::considerAddingAsFrequentExitSiteSlow):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGVariableAccessData.h:
(JSC::DFG::VariableAccessData::shouldUseDoubleFormatAccordingToVote):
* heap/MarkStack.cpp:
(JSC::MarkStackSegmentAllocator::allocate):
(JSC::MarkStackSegmentAllocator::shrinkReserve):
(JSC::MarkStackArray::MarkStackArray):
(JSC::MarkStackArray::donateSomeCellsTo):
(JSC::MarkStackArray::stealSomeCellsFrom):
(JSC::MarkStackThreadSharedData::MarkStackThreadSharedData):
(JSC::SlotVisitor::donateSlow):
(JSC::SlotVisitor::drain):
(JSC::SlotVisitor::drainFromShared):
* heap/MarkStack.h:
(JSC::MarkStack::mergeOpaqueRootsIfProfitable):
(JSC::MarkStack::addOpaqueRoot):
(JSC::MarkStackArray::canDonateSomeCells):
* heap/SlotVisitor.h:
(JSC::SlotVisitor::donate):
* jit/JIT.cpp:
(JSC::JIT::emitOptimizationCheck):
* runtime/InitializeThreading.cpp:
(JSC::initializeThreadingOnce): Adapt callers and build systems.

* testRegExp.cpp:
(CommandLine::CommandLine):
* jsc.cpp:
(CommandLine::CommandLine):
Rename from Options, to avoid name conflict.

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

9 years agoWeb Inspector: Generated HAR is missing pages.startedDateTime
caseq@chromium.org [Thu, 15 Dec 2011 11:58:46 +0000 (11:58 +0000)]
Web Inspector: Generated HAR is missing pages.startedDateTime
https://bugs.webkit.org/show_bug.cgi?id=74188

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/front-end/HAREntry.js:
(WebInspector.HARLog.prototype._buildPages):
* inspector/front-end/NetworkLog.js:
(WebInspector.NetworkLog):
(WebInspector.NetworkLog.prototype.get mainResourceStartTime):
(WebInspector.NetworkLog.prototype._mainFrameNavigated):
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView.prototype._updateSummaryBar):

LayoutTests:

* http/tests/inspector/inspector-test.js:
(initialize_InspectorTest.InspectorTest.formatRecentTime):
(initialize_InspectorTest.InspectorTest.addObject):
* http/tests/inspector/resource-har-conversion-expected.txt:
* http/tests/inspector/resource-parameters-expected.txt:
* http/tests/inspector/resources-test.js:
* platform/chromium/http/tests/inspector/resource-har-conversion-expected.txt:
* platform/mac-snowleopard/http/tests/inspector/resource-har-conversion-expected.txt:

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

9 years agoSupports Unicode variation selector
bashi@chromium.org [Thu, 15 Dec 2011 11:57:05 +0000 (11:57 +0000)]
Supports Unicode variation selector
https://bugs.webkit.org/show_bug.cgi?id=50999

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Adds SimpleFontData::updateGlyphWithVariationSelector() which substitutes the
glyph in question based on the selector. WidthIterator::advance() calls it
when an unicode variation selector follows the character.

Test: fast/text/unicode-variation-selector.html

* platform/graphics/SimpleFontData.h: Added updateGlyphWithVariationSelector().
* platform/graphics/SurrogatePairAwareTextIterator.cpp:
(WebCore::isUnicodeBMPVariationSelector): Added.
(WebCore::isUnicodeSupplementaryVariationSelector): Added.
(WebCore::SurrogatePairAwareTextIterator::hasTrailingVariationSelector): Added.
* platform/graphics/SurrogatePairAwareTextIterator.h:
* platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::advance): Changed to detect variation selectors.
* platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Added.
* platform/graphics/chromium/SimpleFontDataLinux.cpp:
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.
* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.
* platform/graphics/mac/SimpleFontDataMac.mm:
(WebCore::decomposeToUTF16): Ditto.
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.
* platform/graphics/pango/SimpleFontDataPango.cpp:
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.
* platform/graphics/qt/SimpleFontDataQt.cpp:
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.
* platform/graphics/win/SimpleFontDataWin.cpp:
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.
* platform/graphics/wince/SimpleFontDataWinCE.cpp:
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.
* platform/graphics/wx/SimpleFontDataWx.cpp:
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

LayoutTests:

Add test for unicode variation selector support.
A tiny font (gw432047.ttf), which comes from glyphwiki.org and is used by Mozilla, is added for the test.

* fast/text/resources/gw432047-license.txt: Added.
* fast/text/resources/gw432047.ttf: Added.
* fast/text/unicode-variation-selector.html: Added.
* platform/chromium/test_expectations.txt: Added fast/text/unicode-variation-selector.html. This test need rebaseline.

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

9 years ago[chromium] WebViewHost::requestCheckingOfText should return immediately if text is...
commit-queue@webkit.org [Thu, 15 Dec 2011 11:44:03 +0000 (11:44 +0000)]
[chromium] WebViewHost::requestCheckingOfText should return immediately if text is empty.
https://bugs.webkit.org/show_bug.cgi?id=74586

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-12-15
Reviewed by Hajime Morita.

No new tests. Covered by existing tests.

* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::requestCheckingOfText):
  Returns immediately if text is empty.

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

9 years ago[v8] Expose the "filter" property in V8CSSStyleDeclaration
apavlov@chromium.org [Thu, 15 Dec 2011 11:21:48 +0000 (11:21 +0000)]
[v8] Expose the "filter" property in V8CSSStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=73426

Source/WebCore:

Reviewed by Adam Barth.

Test: fast/css/style-enumerate-properties.html

The "filter" CSS property used to be masked to be compliant with JSC, but JSC has supported
this property for quite a while.

* bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
(WebCore::hasCSSPropertyNamePrefix): clean up WTF prefixes
(WebCore::cssPropertyInfo): remove the "wasFilter" flag
(WebCore::V8CSSStyleDeclaration::namedPropertyEnumerator): remove the "filter" check
(WebCore::V8CSSStyleDeclaration::namedPropertyGetter): return the "filter" value as v8String

LayoutTests:

The original version of this test should have landed in r102578 but was lost
during the "revert-reland" cycle.

Reviewed by Adam Barth.

* fast/css/style-enumerate-properties-expected.txt: Added.
* fast/css/style-enumerate-properties.html: Added.

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

9 years ago[Qt] Remove unnecessary methods and members from DeviceOrientationClientQt
commit-queue@webkit.org [Thu, 15 Dec 2011 10:58:13 +0000 (10:58 +0000)]
[Qt] Remove unnecessary methods and members from DeviceOrientationClientQt
https://bugs.webkit.org/show_bug.cgi?id=74588

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-15
Reviewed by Simon Hausmann.

Remove the unused method changeDeviceOrientation() from
DeviceOrientationClientQt and remove the DeviceOrientationController
member since it is unused.

* WebCoreSupport/DeviceOrientationClientQt.cpp:
(WebCore::DeviceOrientationClientQt::DeviceOrientationClientQt):
(WebCore::DeviceOrientationClientQt::setController):
* WebCoreSupport/DeviceOrientationClientQt.h:

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

9 years agoUnreviewed build fix attempt for Chromium Mac.
morrita@google.com [Thu, 15 Dec 2011 10:58:07 +0000 (10:58 +0000)]
Unreviewed build fix attempt for Chromium Mac.

* page/PerformanceTiming.h:

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

9 years agoUnreviewed, build fix after r102906 (poor merge).
apavlov@chromium.org [Thu, 15 Dec 2011 10:09:51 +0000 (10:09 +0000)]
Unreviewed, build fix after r102906 (poor merge).

* inspector/front-end/ProfileView.js:
(WebInspector.CPUProfileType.prototype.buttonClicked):

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

9 years ago[Qt] r102849 broke the Qt build on Mac OS X.
commit-queue@webkit.org [Thu, 15 Dec 2011 10:06:22 +0000 (10:06 +0000)]
[Qt] r102849 broke the Qt build on Mac OS X.
https://bugs.webkit.org/show_bug.cgi?id=74594

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-15
Reviewed by Simon Hausmann.

The __APPLE__ macro is defined on all standard OS X compilers, which
leads to various CoreGraphics headers to be included in the Qt build.

* config.h:

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

9 years agoUnreviewed revert of r102696 ([Navigation Timing] Use monotonicallyIncreasingTime...
vsevik@chromium.org [Thu, 15 Dec 2011 09:59:23 +0000 (09:59 +0000)]
Unreviewed revert of r102696 ([Navigation Timing] Use monotonicallyIncreasingTime() instead of currentTime()).
Breaks inspector's network panel timeline on chromium.

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* dom/Document.cpp:
(WebCore::Document::setReadyState):
(WebCore::Document::finishedParsing):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didFinishLoadingImpl):
* inspector/InspectorResourceAgent.cpp:
(WebCore::buildObjectForTiming):
(WebCore::buildObjectForResourceResponse):
(WebCore::buildObjectForCachedResource):
(WebCore::InspectorResourceAgent::willSendRequest):
(WebCore::InspectorResourceAgent::didReceiveResponse):
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
* loader/DocumentLoadTiming.cpp: Removed.
* loader/DocumentLoadTiming.h:
(WebCore::DocumentLoadTiming::DocumentLoadTiming):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopLoading):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
(WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::didReceiveData):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::load):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::dispatchLoadEvent):
(WebCore::DOMWindow::dispatchTimedEvent):
* page/DOMWindow.h:
* page/PerformanceNavigation.cpp:
(WebCore::PerformanceNavigation::redirectCount):
* page/PerformanceTiming.cpp:
(WebCore::getPossiblySkewedTimeInKnownRange):
(WebCore::PerformanceTiming::navigationStart):
(WebCore::PerformanceTiming::unloadEventStart):
(WebCore::PerformanceTiming::unloadEventEnd):
(WebCore::PerformanceTiming::redirectStart):
(WebCore::PerformanceTiming::redirectEnd):
(WebCore::PerformanceTiming::fetchStart):
(WebCore::PerformanceTiming::responseEnd):
(WebCore::PerformanceTiming::domLoading):
(WebCore::PerformanceTiming::domInteractive):
(WebCore::PerformanceTiming::domContentLoadedEventStart):
(WebCore::PerformanceTiming::domContentLoadedEventEnd):
(WebCore::PerformanceTiming::domComplete):
(WebCore::PerformanceTiming::loadEventStart):
(WebCore::PerformanceTiming::loadEventEnd):
(WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute):
* page/PerformanceTiming.h:
* platform/network/ResourceLoadTiming.cpp: Removed.
* platform/network/ResourceLoadTiming.h:

LayoutTests:

* fast/dom/script-tests/webtiming.js:

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

9 years agoUnreviewed, fix Closure compiler warnings after r102905.
apavlov@chromium.org [Thu, 15 Dec 2011 09:45:58 +0000 (09:45 +0000)]
Unreviewed, fix Closure compiler warnings after r102905.

* inspector/front-end/CSSStyleModel.js: Add JSDoc annotations

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

9 years agoWeb Inspector: make ProfilesPanel scale as the number of ProfileTypes grows
apavlov@chromium.org [Thu, 15 Dec 2011 09:37:32 +0000 (09:37 +0000)]
Web Inspector: make ProfilesPanel scale as the number of ProfileTypes grows
https://bugs.webkit.org/show_bug.cgi?id=74391

Reviewed by Pavel Feldman.

Whenever a profile is started, this change disables all profile recording buttons, except the one
that correponds to the running profile. Once the profiling is finished, all buttons get enabled back again.

* English.lproj/localizedStrings.js:
* inspector/front-end/ProfileView.js:
(WebInspector.CPUProfileView.profileCallback):
(WebInspector.CPUProfileType.prototype.get buttonTooltip):
(WebInspector.CPUProfileType.prototype.get buttonStyle):
(WebInspector.CPUProfileType.prototype.buttonClicked):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfilesPanel.prototype.get statusBarItems.clickHandler):
(WebInspector.ProfilesPanel.prototype.get statusBarItems):
(WebInspector.ProfilesPanel.prototype._addProfileHeader):
(WebInspector.ProfilesPanel.prototype.updateProfileTypeButtons):
(WebInspector.ProfilesPanel.prototype._updateInterface):
(WebInspector.ProfilesPanel.prototype.setRecordingProfile):
(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
(WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
(WebInspector.ProfilerDispatcher.prototype.setRecordingProfile):
* inspector/front-end/inspector.css:
(.record-cpu-profile-status-bar-item .glyph):
(.record-cpu-profile-status-bar-item.toggled-on .glyph):

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

9 years ago[Qt] QtWebKit fails to build on Mac OS X after r102776
commit-queue@webkit.org [Thu, 15 Dec 2011 09:33:24 +0000 (09:33 +0000)]
[Qt] QtWebKit fails to build on Mac OS X after r102776
https://bugs.webkit.org/show_bug.cgi?id=74593

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-15
Reviewed by Simon Hausmann.

CONFIG =+ link_pkgconfig is needed such that the correct parameters
are passed to the compiler.

* DumpRenderTree/qt/DumpRenderTree.pro:

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

9 years agoUnreviewed, Qt rebaseline after r102149 and r102846.
zherczeg@webkit.org [Thu, 15 Dec 2011 09:29:56 +0000 (09:29 +0000)]
Unreviewed, Qt rebaseline after r102149 and r102846.

* platform/qt/editing/pasteboard/paste-text-013-expected.txt:
* platform/qt/editing/pasteboard/paste-text-014-expected.txt:
* platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Added.

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

9 years agoWeb Inspector: [Styles] Update selected DOM element styles whenever applicable media...
apavlov@chromium.org [Thu, 15 Dec 2011 09:23:19 +0000 (09:23 +0000)]
Web Inspector: [Styles] Update selected DOM element styles whenever applicable media queries change
https://bugs.webkit.org/show_bug.cgi?id=74292

The change introduces and handles in the frontend a new event type for the CSS domain,
"mediaQueryResultChanged", which gets fired every time a viewport-dependent media feature
changes its value. This allows users to see live changes of the (media-dependent) matched
rules for inspected elements.

Reviewed by Pavel Feldman.

* inspector/CodeGeneratorInspector.py:
(DomainNameFixes):
* inspector/Inspector.json:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::InspectorCSSAgent):
(WebCore::InspectorCSSAgent::setFrontend):
(WebCore::InspectorCSSAgent::clearFrontend):
(WebCore::InspectorCSSAgent::restore):
(WebCore::InspectorCSSAgent::enable):
(WebCore::InspectorCSSAgent::disable):
(WebCore::InspectorCSSAgent::mediaQueryResultChanged):
* inspector/InspectorCSSAgent.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::mediaQueryResultChangedImpl):
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::mediaQueryResultChanged):
* inspector/front-end/CSSStyleModel.js:
(WebInspector.CSSStyleModel):
(WebInspector.CSSStyleModel.prototype.mediaQueryResultChanged):
(WebInspector.CSSDispatcher):
(WebInspector.CSSDispatcher.prototype.mediaQueryResultChanged):
* inspector/front-end/MetricsSidebarPane.js:
(WebInspector.MetricsSidebarPane):
(WebInspector.MetricsSidebarPane.prototype._styleSheetOrMediaQueryResultChanged):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane):
(WebInspector.StylesSidebarPane.prototype._styleSheetOrMediaQueryResultChanged):
* page/FrameView.cpp:
(WebCore::FrameView::layout):

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

9 years agoUnreviewed, removing incorrect expectaions.
morrita@google.com [Thu, 15 Dec 2011 09:21:41 +0000 (09:21 +0000)]
Unreviewed, removing incorrect expectaions.

* platform/chromium-cg-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
* platform/chromium-cg-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
* platform/chromium-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
* platform/chromium-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
* platform/chromium-win-xp/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.

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

9 years agoUnreviewed, add fast/images/move-image-to-new-document.html in GTK
philn@webkit.org [Thu, 15 Dec 2011 09:09:35 +0000 (09:09 +0000)]
Unreviewed, add fast/images/move-image-to-new-document.html in GTK
test_expectations.

* platform/gtk/test_expectations.txt:

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

9 years agoWeb Inspector: [Regression] Network manager fails to show resource type and MIME...
vsevik@chromium.org [Thu, 15 Dec 2011 08:52:28 +0000 (08:52 +0000)]
Web Inspector: [Regression] Network manager fails to show resource type and MIME type in incorrect MIME type console message.
https://bugs.webkit.org/show_bug.cgi?id=74516

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/network/script-as-text-loading.html

* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl.prototype._formatMessage):
* inspector/front-end/NetworkManager.js:
(WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):

LayoutTests:

* http/tests/inspector/network/resources/script-as-text.php: Added.
* http/tests/inspector/network/script-as-text-loading-expected.txt: Added.
* http/tests/inspector/network/script-as-text-loading.html: Added.

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

9 years agoUnreviewed, GTK rebaseline after r102149 and r102846.
philn@webkit.org [Thu, 15 Dec 2011 08:10:08 +0000 (08:10 +0000)]
Unreviewed, GTK rebaseline after r102149 and r102846.

* platform/gtk/editing/pasteboard/paste-text-013-expected.txt:
* platform/gtk/editing/pasteboard/paste-text-014-expected.txt:
* platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Added.

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

9 years agoA spin button changes the value incorrectly if it is clicked after touch events.
tkent@chromium.org [Thu, 15 Dec 2011 07:00:50 +0000 (07:00 +0000)]
A spin button changes the value incorrectly if it is clicked after touch events.
https://bugs.webkit.org/show_bug.cgi?id=71181

Reviewed by Ryosuke Niwa.

Source/WebCore:

SpinButtonElement assumed setHovered(true) was always called before a
mousemove event in the element. It is not true for touch events.

We should not reset m_upDownState to Indetermiante in setHovered(true),
and should reset it when the mouse pointer moves out.

This change fixes the flakiness of fast/forms/input-step-as-double.html.

Test: fast/events/touch/touch-before-pressing-spin-button.html

* html/shadow/TextControlInnerElements.cpp:
(WebCore::SpinButtonElement::defaultEventHandler):
Add an assertion that m_upDownState should not be Indetermiante.
Reset m_upDownState to Indeterminate when the mouse pointer moves out
from the element.
(WebCore::SpinButtonElement::setHovered):
Reset m_upDownState to Indeterminate when the element becomes unhovered.

LayoutTests:

* fast/events/touch/touch-before-pressing-spin-button-expected.txt: Added.
* fast/events/touch/touch-before-pressing-spin-button.html: Added.
* platform/chromium/test_expectations.txt:
  Remove the flakiness of fast/forms/input-step-as-double.html.
* platform/qt/Skipped: ditto.

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=74543
lforschler@apple.com [Thu, 15 Dec 2011 06:57:29 +0000 (06:57 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=74543
Add CSS*.cpp to a new CSSAllInOne.cpp file with two exceptions:
    CSSProperty.cpp
    CSSPrimitiveValue.cpp
Adding these two broke things with a templates problem that was not easily fixable.

Reviewed by Steve Falkenburg.

* WebCore.vcproj/WebCore.vcproj:
* css/CSSAllInOne.cpp: Added.

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

9 years ago[chromium] DatabaseObserver needs threadsafe fixes and other clean-up.
levin@chromium.org [Thu, 15 Dec 2011 06:51:20 +0000 (06:51 +0000)]
[chromium] DatabaseObserver needs threadsafe fixes and other clean-up.
https://bugs.webkit.org/show_bug.cgi?id=74558

Reviewed by Dmitry Titov.

Source/WebKit/chromium:

The important part of this fix is the removal of AllowCrossThreadAccess so
that ref counting happens appropriately.

Minor clean up throughout: Removed unnecessary WTF prefix in many
of these places and unnecessary String().

* src/DatabaseObserver.cpp:
(WebKit::AllowDatabaseMainThreadBridge::create):
(WebKit::AllowDatabaseMainThreadBridge::signalCompleted): Get rid of
AllowCrossThreadAccess so that "this" get ref counted and remove mode from being
a member variable since a String in a ThreadSafeRefCounted class is bad.
(WebKit::AllowDatabaseMainThreadBridge::AllowDatabaseMainThreadBridge): Ditto.
(WebKit::AllowDatabaseMainThreadBridge::allowDatabaseTask): Pass through mode
and minor code cleaning to do only one call to signalCompleted.
(WebKit::allowDatabaseForWorker): Just removed unnecessary String()'s.

LayoutTests:

Added a test which would fail without some of these fixes.

* http/tests/workers/interrupt-database-sync-open-crash.html: Added.
* http/tests/workers/resources/open-database-sync.js: Added.
(onmessage):

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

9 years agoGenerated images should respect the accelerated state of the context they're going...
timothy_horton@apple.com [Thu, 15 Dec 2011 06:48:32 +0000 (06:48 +0000)]
Generated images should respect the accelerated state of the context they're going to be drawn into
https://bugs.webkit.org/show_bug.cgi?id=74577
<rdar://problem/10584392>

Reviewed by Simon Fraser.

The tiled code path for GeneratorGeneratedImage and CrossfadeGeneratedImage blindly creates
an unaccelerated ImageBuffer. Instead, take into account the accelerated state of the destination context.

No new tests, as this is a simple performance improvement.

* platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::CrossfadeGeneratedImage::drawPattern):
* platform/graphics/GeneratorGeneratedImage.cpp:
(WebCore::GeneratorGeneratedImage::drawPattern):

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

9 years ago[EFL] Change efl style variable name with WebKit style for internal functions.
gyuyoung.kim@samsung.com [Thu, 15 Dec 2011 06:36:25 +0000 (06:36 +0000)]
[EFL] Change efl style variable name with WebKit style for internal functions.
https://bugs.webkit.org/show_bug.cgi?id=74474

Reviewed by Ryosuke Niwa.

In order to be more compliant with WebKit coding style, variable names of internal functions
should be changed with WebKit coding style.

* ewk/ewk_private.h:
* ewk/ewk_view.cpp:
(ewk_view_scroll):

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

9 years ago[chromium] Remove redundant third_party entries from chromium DEPS
tony@chromium.org [Thu, 15 Dec 2011 06:34:22 +0000 (06:34 +0000)]
[chromium] Remove redundant third_party entries from chromium DEPS
https://bugs.webkit.org/show_bug.cgi?id=74472

Reviewed by Kenneth Russell.

Source/WebKit/chromium:

Removed redundant DEPS entries for third_party subdirectories
coming from chromium_svn, which were causing intermittent gclient
failures on the bots.

* DEPS:

Tools:

* Scripts/update-webkit-chromium: Temporarily keep unversioned trees.

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

9 years ago[Refactoring] In prepare-ChangeLog, replace $isGit and $isSVN with
haraken@chromium.org [Thu, 15 Dec 2011 06:32:27 +0000 (06:32 +0000)]
[Refactoring] In prepare-ChangeLog, replace $isGit and $isSVN with
VCSUtils::isGit() and VCSUtils::isSVN().
https://bugs.webkit.org/show_bug.cgi?id=74485

Reviewed by David Kilzer.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. This patch replaces $isGit and $isSVN
with VCSUtils::isGit() and VCSUtils::isSVN(). This patch also removes firstDirectoryOrCwd(),
assuming that no user will mix Git/SVN checkouts and thus we can judge SVN or Git
just by looking at the current working directory.

* Scripts/prepare-ChangeLog: Removed firstDirectoryOrCwd().
(diffFromToString):
(diffCommand):
(statusCommand):
(createPatchCommand):
(diffHeaderFormat):
(generateFileList):
(isAddedStatus):
(isConflictStatus):
(statusDescription):
(extractLineRange):

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

9 years agoWeb Inspector: cleanup unused variable introduced at r102803
loislo@chromium.org [Thu, 15 Dec 2011 06:25:05 +0000 (06:25 +0000)]
Web Inspector: cleanup unused variable introduced at r102803

* inspector/front-end/NetworkManager.js:
(WebInspector.NetworkManager.prototype.enableResourceTracking):
(WebInspector.NetworkManager.prototype.disableResourceTracking):

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

9 years agofast path to accelerate processing in AudioBus::processWithGainFromMonoStereo
commit-queue@webkit.org [Thu, 15 Dec 2011 06:14:11 +0000 (06:14 +0000)]
fast path to accelerate processing in AudioBus::processWithGainFromMonoStereo
https://bugs.webkit.org/show_bug.cgi?id=74054

Patch by Wei James <james.wei@intel.com> on 2011-12-14
Reviewed by Kenneth Russell.

Avoid de-zippering when the gain has converged on the targetGain.
It can get about 75% performance gain at most when all frames don't need
de-zippering.

* platform/audio/AudioBus.cpp:
(WebCore::AudioBus::processWithGainFromMonoStereo):

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

9 years agoIncrease maximum number of gamepad buttons in Chromium port interface
commit-queue@webkit.org [Thu, 15 Dec 2011 06:14:08 +0000 (06:14 +0000)]
Increase maximum number of gamepad buttons in Chromium port interface
https://bugs.webkit.org/show_bug.cgi?id=74559

Patch by Scott Graham <scottmg@chromium.org> on 2011-12-14
Reviewed by Darin Fisher.

* public/platform/WebGamepad.h:

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

9 years ago[Chromium] Test expectatino update.
tkent@chromium.org [Thu, 15 Dec 2011 05:55:52 +0000 (05:55 +0000)]
[Chromium] Test expectatino update.
- Rebaseline for basic-selects.html.
- Move menulist-onchange-fired-with-key-up-down.html to the WONTFIX section.
- Remove a duplicated entry.

* platform/chromium-cg-mac-leopard/fast/forms/basic-selects-expected.png:
* platform/chromium-cg-mac-leopard/fast/forms/basic-selects-expected.txt: Added.
* platform/chromium-cg-mac-snowleopard/fast/forms/basic-selects-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/fast/forms/basic-selects-expected.txt: Added.
* platform/chromium-cg-mac/fast/forms/basic-selects-expected.png: Removed.
* platform/chromium-linux-x86/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/forms/basic-selects-expected.txt.
* platform/chromium-linux/fast/forms/basic-selects-expected.png:
* platform/chromium-linux/fast/forms/basic-selects-expected.txt:
* platform/chromium-mac-leopard/fast/forms/basic-selects-expected.png: Added.
* platform/chromium-mac-leopard/fast/forms/basic-selects-expected.txt: Added.
* platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.txt: Added.
* platform/chromium-mac/fast/forms/basic-selects-expected.png: Removed.
* platform/chromium-win-vista/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/basic-selects-expected.txt.
* platform/chromium-win-xp/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/basic-selects-expected.txt.
* platform/chromium-win/fast/forms/basic-selects-expected.png:
* platform/chromium-win/fast/forms/basic-selects-expected.txt:
* platform/chromium/test_expectations.txt:

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

9 years agoRevert unintentional change to JavaScriptCore.def
weinig@apple.com [Thu, 15 Dec 2011 05:48:14 +0000 (05:48 +0000)]
Revert unintentional change to JavaScriptCore.def

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

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

9 years ago[Mac] Skip menulist-popup-crash.html because of timeout.
tkent@chromium.org [Thu, 15 Dec 2011 05:47:53 +0000 (05:47 +0000)]
[Mac] Skip menulist-popup-crash.html because of timeout.
https://bugs.webkit.org/show_bug.cgi?id=73304

* platform/mac/Skipped:

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

9 years agoOpening two popup menus by dispatchEvent() makes problems.
tkent@chromium.org [Thu, 15 Dec 2011 05:40:45 +0000 (05:40 +0000)]
Opening two popup menus by dispatchEvent() makes problems.
https://bugs.webkit.org/show_bug.cgi?id=73304

Patch by Jing Zhao <jingzhao@chromium.org> on 2011-12-14
Reviewed by Ryosuke Niwa.

* WebCoreSupport/ChromeClientWinCE.cpp:
(WebKit::ChromeClientWinCE::hasOpenedPopup): Not implemented.
* WebCoreSupport/ChromeClientWinCE.h: Overrides hasOpenedPopup().

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

9 years agoOptimize MutationObserverInterestGroup construction
adamk@chromium.org [Thu, 15 Dec 2011 05:26:55 +0000 (05:26 +0000)]
Optimize MutationObserverInterestGroup construction
https://bugs.webkit.org/show_bug.cgi?id=74563

Reviewed by Ojan Vafai.

Inline MutationObserverInterestGroup's creation methods and fix an
accidental pass-by-value in an attempt to further reduce the CPU
footprint of MutationObservers.

No new tests, refactor only.

* dom/WebKitMutationObserver.cpp:
(WebCore::MutationObserverInterestGroup::MutationObserverInterestGroup): Pass observers HashMap by reference.
* dom/WebKitMutationObserver.h:
(WebCore::MutationObserverInterestGroup::createForChildListMutation): Inline.
(WebCore::MutationObserverInterestGroup::createForCharacterDataMutation): Inline.
(WebCore::MutationObserverInterestGroup::createForAttributesMutation): Inline.
(WebCore::MutationObserverInterestGroup::hasOldValue): Remove spurious inline keyword.

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

9 years agoUnreviewed, rolling out r102873.
bashi@chromium.org [Thu, 15 Dec 2011 05:22:19 +0000 (05:22 +0000)]
Unreviewed, rolling out r102873.
http://trac.webkit.org/changeset/102873
https://bugs.webkit.org/show_bug.cgi?id=64434

Break the build

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-14

* public/WebPlugin.h:
* src/WebPluginContainerImpl.cpp:
* src/WebPluginContainerImpl.h:

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

9 years agoUnreviewed test_expectations.txt update.
morrita@google.com [Thu, 15 Dec 2011 05:20:25 +0000 (05:20 +0000)]
Unreviewed test_expectations.txt update.

* platform/chromium/test_expectations.txt:

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

9 years agoMac build fix after r102874.
rniwa@webkit.org [Thu, 15 Dec 2011 05:08:57 +0000 (05:08 +0000)]
Mac build fix after r102874.

* WebCoreSupport/WebChromeClient.mm:

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

9 years agoUnreviewed expectation update.
morrita@google.com [Thu, 15 Dec 2011 04:52:09 +0000 (04:52 +0000)]
Unreviewed expectation update.

* platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt: Removed.

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

9 years agoSeeing crash in DRT after loading-iframe-sends-notification.html land
dmazzoni@google.com [Thu, 15 Dec 2011 04:40:50 +0000 (04:40 +0000)]
Seeing crash in DRT after loading-iframe-sends-notification.html land
https://bugs.webkit.org/show_bug.cgi?id=72624

Source/WebCore:

When an iframe finishes loading, send an accessibility notification
on the renderer, rather than on a parent node. The only reason it was
being posted on a parent before was because there was no way to detect
that in a test. This is simpler and now covered by the test.

Reviewed by Chris Fleizach.

Updates existing test:
accessibility/loading-iframe-sends-notification.html

* dom/Document.cpp:
(WebCore::Document::implicitClose):

LayoutTests:

Rewrite test to use a global addNotificationListener, which makes it
more robust and cross-platform.

Reviewed by Chris Fleizach.

* accessibility/loading-iframe-sends-notification-expected.txt: Added.
* accessibility/loading-iframe-sends-notification.html:
* platform/chromium/accessibility/loading-iframe-sends-notification-expected.txt: Removed.
* platform/chromium/test_expectations.txt:
* platform/gtk/Skipped:
* platform/gtk/accessibility/loading-iframe-sends-notification-expected.txt: Removed.
* platform/mac/Skipped:
* platform/win/Skipped:

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

9 years ago[chromium] Add inhibitDraw to CCScheduler and drop root impl to prevent background...
nduca@chromium.org [Thu, 15 Dec 2011 04:37:54 +0000 (04:37 +0000)]
[chromium] Add inhibitDraw to CCScheduler and drop root impl to prevent background flash on tab restore
https://bugs.webkit.org/show_bug.cgi?id=74351

Reviewed by James Robinson.

Source/WebCore:

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::setNeedsCommit):
(WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):
* platform/graphics/chromium/cc/CCScheduler.cpp:
(WebCore::CCScheduler::getNextAction):
(WebCore::CCScheduler::processScheduledActions):
* platform/graphics/chromium/cc/CCScheduler.h:
* platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
(WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
(WebCore::CCSchedulerStateMachine::nextAction):
* platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
(WebCore::CCSchedulerStateMachine::setInhibitDraw):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::setVisibleOnImplThread):
(WebCore::CCThreadProxy::inhibitDraw):
* platform/graphics/chromium/cc/CCThreadProxy.h:

Source/WebKit/chromium:

* tests/CCSchedulerStateMachineTest.cpp:
(WebCore::StateMachine::inhibitDraw):
(WebCore::TEST):
* tests/CCSchedulerTest.cpp:
(WebKitTests::FakeCCSchedulerClient::setInhibitDraw):
(WebKitTests::FakeCCSchedulerClient::inhibitDraw):
(WebKitTests::SchedulerClientThatSetNeedsDrawInsideDraw::inhibitDraw):
(WebKitTests::SchedulerClientThatSetNeedsCommitInsideDraw::inhibitDraw):

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

9 years agoCrash due to incorrect parsing of isolates
commit-queue@webkit.org [Thu, 15 Dec 2011 04:19:24 +0000 (04:19 +0000)]
Crash due to incorrect parsing of isolates
https://bugs.webkit.org/show_bug.cgi?id=74311
When <bdi> content is wrapped, all hell breaks loose
https://bugs.webkit.org/show_bug.cgi?id=74396

Patch by Ken Buchanan <kenrb@chromium.org> on 2011-12-14
Reviewed by Eric Seidel.

Source/WebCore:

When an isolate was encountered during run layout, the entire isolate
would be parsed, even if the run started in the middle of the isolate.
This would sometimes cause parts of the isolate to be added multiple
times as runs. This patch marks the starting position within the
isolate so nothing is parsed twice.

This patch changes appendRun() so that when a run is added that is
inside an isolate, it saves the start position of the run rather than
the root. This allows constructBidiRuns() to resume parsing the
isolate from the correct position.

The change to RenderBox partially reverts a previous change I had
done. It makes sense to screen for the condition, as was previously
the case.

This patch does not add the test case from 74396 because a separate
bug is preventing it from rendering correctly.

* rendering/InlineIterator.h:
(WebCore::addPlaceholderRunForIsolatedInline)
(WebCore::IsolateTracker::addFakeRunIfNecessary)
(WebCore::InlineBidiResolver::appendRun)
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockLineLayout::constructBidiRuns)
* rendering/RenderBox.cpp:
(WebCore::RenderBox::positionLineBox)

LayoutTests:

Layout test has multiple lines inside an isolate to ensure each run
is created only once.

The test that is in bug 74396 will have to be added once bug 74489 is
fixed.

* LayoutTests/fast/text/international/multiline-and-object-inside-isolate-crash-expected.txt: Added
* LayoutTests/fast/text/international/multiline-and-object-inside-isolate-crash.html: Added

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

9 years agoOpening two popup menus by dispatchEvent() makes problems.
commit-queue@webkit.org [Thu, 15 Dec 2011 04:16:25 +0000 (04:16 +0000)]
Opening two popup menus by dispatchEvent() makes problems.
https://bugs.webkit.org/show_bug.cgi?id=73304

Patch by Jing Zhao <jingzhao@chromium.org> on 2011-12-14
Reviewed by Kent Tamura.

Source/WebCore:

By using element.dispatchEvent(), a user written script can open two
popup menus, which causes various problems in different platforms.

Add a hasOpenedPopup() method in ChromeClient and a wrapper in Chrome.
In RenderMenuList::showPopup(), check if there is an opened popup menu
before opening a new popup menu.

Test: fast/forms/select-popup-crash.html

* loader/EmptyClients.h: Overrides hasOpenedPopup().
(WebCore::EmptyChromeClient::hasOpenedPopup): Returns false as a default case.
* page/Chrome.cpp:
(WebCore::Chrome::hasOpenedPopup): Calls ChromeClient::hasOpenedPopup().
* page/Chrome.h: Declares hasOpenedPopup().
* page/ChromeClient.h: Declares hasOpenedPopup() as a pure virtual function.
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::showPopup): Calls Chrome::hasOpenedPopup() before opening a new popup menu.

Source/WebKit/chromium:

By using element.dispatchEvent(), a user written script can open two
popup menus, which causes the assertion in WebViewImpl::popupOpened()
fail.

ChromeClientImpl::hasOpenedPopup() is called by Chrome::hasOpenedPopup()
in RenderMenuList::showPopup(), to check if there is an opened popup
menu before opening a new popup menu.

* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::hasOpenedPopup): Checks the popup in WebViewImpl.
* src/ChromeClientImpl.h: Overrides hasOpenedPopup().

Source/WebKit/efl:

* WebCoreSupport/ChromeClientEfl.cpp:
(WebCore::ChromeClientEfl::hasOpenedPopup): Not implemented.
* WebCoreSupport/ChromeClientEfl.h: Overrides hasOpenedPopup().

Source/WebKit/gtk:

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::hasOpenedPopup): Not implemented.
* WebCoreSupport/ChromeClientGtk.h: Overrides hasOpenedPopup().

Source/WebKit/mac:

* WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::hasOpenedPopup): Not implemented.

Source/WebKit/qt:

* WebCoreSupport/ChromeClientQt.cpp:
(WebCore::ChromeClientQt::hasOpenedPopup): Not implemented.
* WebCoreSupport/ChromeClientQt.h: Overrides hasOpenedPopup().

Source/WebKit/win:

* WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::hasOpenedPopup): Not implemented.
* WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().

Source/WebKit2:

* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::hasOpenedPopup): Not implemented.
* WebProcess/WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().

LayoutTests:

* fast/forms/select/menulist-popup-crash-expected.txt: Added.
* fast/forms/select/menulist-popup-crash.html: Added.

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

9 years ago[Chromium] Implement PluginViewBase::getFormValue
bashi@chromium.org [Thu, 15 Dec 2011 03:39:51 +0000 (03:39 +0000)]
[Chromium] Implement PluginViewBase::getFormValue
https://bugs.webkit.org/show_bug.cgi?id=64434

Adds getFormValue() to WebPluginContainerImpl as an implementation of PluginViewBase::getFormValue().

Reviewed by Darin Fisher.

No new tests. No behavior change at this time. We should add a test for PPAPI after chromium supports the feature.

* public/WebPlugin.h: Added getFormValue().
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::getFormValue): Added.
* src/WebPluginContainerImpl.h: Added getFormValue().

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

9 years agoClean up style in CSSStyleSelector.cpp
tony@chromium.org [Thu, 15 Dec 2011 03:24:55 +0000 (03:24 +0000)]
Clean up style in CSSStyleSelector.cpp
https://bugs.webkit.org/show_bug.cgi?id=74548

Reviewed by Ojan Vafai.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

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

9 years agoUnreviewed, rolling out r102794.
kbr@google.com [Thu, 15 Dec 2011 03:22:03 +0000 (03:22 +0000)]
Unreviewed, rolling out r102794.
http://trac.webkit.org/changeset/102794
https://bugs.webkit.org/show_bug.cgi?id=74220

Reapplying patch since it is not the cause of the problems
described in bug 74220.

* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::reportUnsafeAccessTo):
* bindings/v8/V8Proxy.h:
* bindings/v8/custom/V8CustomXPathNSResolver.cpp:
(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

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

9 years agoUnreviewed expectation update.
morrita@google.com [Thu, 15 Dec 2011 02:30:45 +0000 (02:30 +0000)]
Unreviewed expectation update.

* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-cg-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
* platform/chromium-cg-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
* platform/chromium-cg-mac-snowleopard/platform/chromium/compositing/huge-layer-rotated-expected.png:
* platform/chromium-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
* platform/chromium-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
* platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt: Renamed from LayoutTests/platform/chromium/svg/css/getComputedStyle-basic-expected.txt.
* platform/chromium-win-xp/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
* platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
* platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
* platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Copied from LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
* platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.

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

9 years agoBuild fix.
mrowe@apple.com [Thu, 15 Dec 2011 02:28:19 +0000 (02:28 +0000)]
Build fix.

Clear the executable bit from header files. They don't need it.

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

9 years agoRemove whitespace from InheritedPropertySheets attributes in
weinig@apple.com [Thu, 15 Dec 2011 02:14:24 +0000 (02:14 +0000)]
Remove whitespace from InheritedPropertySheets attributes in
vsprops files to appease the Visual Studio project migrator.

Patch by Sam Weinig <weinig@apple.com> on 2011-12-14
Reviewed by Adam Roben.

Source/JavaScriptCore:

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreDebug.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreDebugAll.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreDebugCairoCFLite.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGeneratedDebug.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGeneratedDebugAll.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGeneratedDebugCairoCFLite.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGeneratedProduction.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGeneratedRelease.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGeneratedReleaseCairoCFLite.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGeneratedReleasePGO.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreProduction.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreRelease.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreReleaseCairoCFLite.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreReleasePGO.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreReleasePGOOptimize.vsprops:
* JavaScriptCore.vcproj/WTF/WTFDebug.vsprops:
* JavaScriptCore.vcproj/WTF/WTFDebugAll.vsprops:
* JavaScriptCore.vcproj/WTF/WTFDebugCairoCFLite.vsprops:
* JavaScriptCore.vcproj/WTF/WTFProduction.vsprops:
* JavaScriptCore.vcproj/WTF/WTFRelease.vsprops:
* JavaScriptCore.vcproj/WTF/WTFReleaseCairoCFLite.vsprops:
* JavaScriptCore.vcproj/WTF/WTFReleasePGO.vsprops:
* JavaScriptCore.vcproj/jsc/jscDebug.vsprops:
* JavaScriptCore.vcproj/jsc/jscDebugAll.vsprops:
* JavaScriptCore.vcproj/jsc/jscDebugCairoCFLite.vsprops:
* JavaScriptCore.vcproj/jsc/jscProduction.vsprops:
* JavaScriptCore.vcproj/jsc/jscRelease.vsprops:
* JavaScriptCore.vcproj/jsc/jscReleaseCairoCFLite.vsprops:
* JavaScriptCore.vcproj/jsc/jscReleasePGO.vsprops:
* JavaScriptCore.vcproj/testRegExp/testRegExpDebug.vsprops:
* JavaScriptCore.vcproj/testRegExp/testRegExpDebugAll.vsprops:
* JavaScriptCore.vcproj/testRegExp/testRegExpDebugCairoCFLite.vsprops:
* JavaScriptCore.vcproj/testRegExp/testRegExpProduction.vsprops:
* JavaScriptCore.vcproj/testRegExp/testRegExpRelease.vsprops:
* JavaScriptCore.vcproj/testRegExp/testRegExpReleaseCairoCFLite.vsprops:
* JavaScriptCore.vcproj/testRegExp/testRegExpReleasePGO.vsprops:
* JavaScriptCore.vcproj/testapi/testapiDebug.vsprops:
* JavaScriptCore.vcproj/testapi/testapiDebugAll.vsprops:
* JavaScriptCore.vcproj/testapi/testapiDebugCairoCFLite.vsprops:
* JavaScriptCore.vcproj/testapi/testapiProduction.vsprops:
* JavaScriptCore.vcproj/testapi/testapiRelease.vsprops:
* JavaScriptCore.vcproj/testapi/testapiReleaseCairoCFLite.vsprops:

Source/WebCore:

* WebCore.vcproj/QTMovieWinDebug.vsprops:
* WebCore.vcproj/QTMovieWinDebugAll.vsprops:
* WebCore.vcproj/QTMovieWinDebugCairoCFLite.vsprops:
* WebCore.vcproj/QTMovieWinProduction.vsprops:
* WebCore.vcproj/QTMovieWinRelease.vsprops:
* WebCore.vcproj/QTMovieWinReleaseCairoCFLite.vsprops:
* WebCore.vcproj/WebCoreDebug.vsprops:
* WebCore.vcproj/WebCoreDebugAll.vsprops:
* WebCore.vcproj/WebCoreDebugCairoCFLite.vsprops:
* WebCore.vcproj/WebCoreProduction.vsprops:
* WebCore.vcproj/WebCoreRelease.vsprops:
* WebCore.vcproj/WebCoreReleaseCairoCFLite.vsprops:

Source/WebKit/win:

* WebKit.vcproj/InterfacesDebug.vsprops:
* WebKit.vcproj/InterfacesDebugAll.vsprops:
* WebKit.vcproj/InterfacesDebugCairoCFLite.vsprops:
* WebKit.vcproj/InterfacesProduction.vsprops:
* WebKit.vcproj/InterfacesRelease.vsprops:
* WebKit.vcproj/InterfacesReleaseCairoCFLite.vsprops:
* WebKit.vcproj/WebKitGUIDDebug.vsprops:
* WebKit.vcproj/WebKitGUIDDebugAll.vsprops:
* WebKit.vcproj/WebKitGUIDDebugCairoCFLite.vsprops:
* WebKit.vcproj/WebKitGUIDProduction.vsprops:
* WebKit.vcproj/WebKitGUIDRelease.vsprops:
* WebKit.vcproj/WebKitGUIDReleaseCairoCFLite.vsprops:
* WebKit.vcproj/WebKitLibDebug.vsprops:
* WebKit.vcproj/WebKitLibDebugAll.vsprops:
* WebKit.vcproj/WebKitLibDebugCairoCFLite.vsprops:
* WebKit.vcproj/WebKitLibProduction.vsprops:
* WebKit.vcproj/WebKitLibRelease.vsprops:
* WebKit.vcproj/WebKitLibReleaseCairoCFLite.vsprops:

Source/WebKit2:

* win/WebKit2Debug.vsprops:
* win/WebKit2DebugAll.vsprops:
* win/WebKit2DebugCairoCFLite.vsprops:
* win/WebKit2Production.vsprops:
* win/WebKit2Release.vsprops:
* win/WebKit2ReleaseCairoCFLite.vsprops:
* win/WebKit2WebProcessDebug.vsprops:
* win/WebKit2WebProcessDebugAll.vsprops:
* win/WebKit2WebProcessDebugCairoCFLite.vsprops:
* win/WebKit2WebProcessProduction.vsprops:
* win/WebKit2WebProcessRelease.vsprops:
* win/WebKit2WebProcessReleaseCairoCFLite.vsprops:

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

9 years agoAdd WorkQueue::dispatch and RunLoop::dispatch which both take WTF::Function objects
andersca@apple.com [Thu, 15 Dec 2011 02:10:51 +0000 (02:10 +0000)]
Add WorkQueue::dispatch and RunLoop::dispatch which both take WTF::Function objects
https://bugs.webkit.org/show_bug.cgi?id=74574

Reviewed by Sam Weinig.

* Platform/CoreIPC/Connection.cpp:
(CoreIPC::Connection::SyncMessageState::processIncomingMessage):
(CoreIPC::Connection::addQueueClient):
(CoreIPC::Connection::removeQueueClient):
(CoreIPC::Connection::invalidate):
(CoreIPC::Connection::sendMessage):
(CoreIPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
(CoreIPC::Connection::connectionDidClose):
(CoreIPC::Connection::enqueueIncomingMessage):
Switch over to dispatch.

* Platform/RunLoop.cpp:
(RunLoop::dispatch):
Create a FunctionWorkItem and call scheduleWork.

* Platform/RunLoop.h:
Add dispatch.

* Platform/WorkItem.h:
(FunctionWorkItem::FunctionWorkItem):
(FunctionWorkItem::execute):
(WorkItem::create):
Add a helper work item that wraps a WTF::Function.

* Platform/WorkQueue.cpp:
(WorkQueue::dispatch):
Create a FunctionWorkItem and call scheduleWork.

* Platform/WorkQueue.h:
Add dispatch.

* UIProcess/Launcher/ProcessLauncher.cpp:
(WebKit::ProcessLauncher::ProcessLauncher):
Switch over to dispatch.

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

9 years agoOne more attempt to fix the release build (hopefully the last)
enrica@apple.com [Thu, 15 Dec 2011 02:04:54 +0000 (02:04 +0000)]
One more attempt to fix the release build (hopefully the last)

Unreviewed.

* editing/ReplaceSelectionCommand.cpp: Added NodeRenderStyle.h

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

9 years ago[chromium] Fix CCLayerTreeHostTest shutdown race
commit-queue@webkit.org [Thu, 15 Dec 2011 02:02:59 +0000 (02:02 +0000)]
[chromium] Fix CCLayerTreeHostTest shutdown race
https://bugs.webkit.org/show_bug.cgi?id=73926

This patch fixes a shutdown race condition in CCLayerTreeHostTest which
may happen if endTest() is called from within the drawLayersOnCCThread()
test hook. The sequence of events leading to the problem is:

  1. CCThreadProxy::scheduledActionDrawAndSwap() is called when a frame
     begins.
  2. CCThreadProxy calls drawLayersOnCCThread(), which in turn calls
     endTest().
  3. Seeing it's not running in the main thread, endTest() posts a task
     calling itself in the main thread.
  4. CCThreadProxy posts a task for calling didCommitAndDrawFrame() in
     the main thread.

The race is between the task posted in step #3 and the CC thread running
in scheduledActionDrawAndSwap(). If the endTask() task is scheduled
before the CC thread reaches step #4, it drains the pending message
queue (CCLayerTreeHostTest.cpp:369) before the task in step #4 is
posted.

The result is that the didCommitAndDrawFrame() task is executed after
the test fixture has been torn down, causing a read of unallocated
memory in CCScopedThreadProxy::runTaskIfNotShutdown (as m_targetThread
is no longer valid).

The fix is check m_shutdown before touching m_targetThread in
CCScopedThreadProxy. That is, events will still be queued after shutdown
but they will not be processed.

Patch by Sami Kyostila <skyostil@chromium.org> on 2011-12-14
Reviewed by James Robinson.

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

9 years agoRemove whitespace from InheritedPropertySheets attributes in
weinig@apple.com [Thu, 15 Dec 2011 02:01:21 +0000 (02:01 +0000)]
Remove whitespace from InheritedPropertySheets attributes in
vsprops files to appease the Visual Studio project migrator.

Patch by Sam Weinig <weinig@apple.com> on 2011-12-14
Reviewed by Adam Roben.

* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebug.vsprops:
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebugAll.vsprops:
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebugCairoCFLite.vsprops:
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginProduction.vsprops:
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginRelease.vsprops:
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginReleaseCairoCFLite.vsprops:
* DumpRenderTree/win/DumpRenderTreeDebug.vsprops:
* DumpRenderTree/win/DumpRenderTreeDebugAll.vsprops:
* DumpRenderTree/win/DumpRenderTreeDebugCairoCFLite.vsprops:
* DumpRenderTree/win/DumpRenderTreeProduction.vsprops:
* DumpRenderTree/win/DumpRenderTreeRelease.vsprops:
* DumpRenderTree/win/DumpRenderTreeReleaseCairoCFLite.vsprops:
* DumpRenderTree/win/ImageDiffDebug.vsprops:
* DumpRenderTree/win/ImageDiffDebugAll.vsprops:
* DumpRenderTree/win/ImageDiffDebugCairoCFLite.vsprops:
* DumpRenderTree/win/ImageDiffProduction.vsprops:
* DumpRenderTree/win/ImageDiffRelease.vsprops:
* DumpRenderTree/win/ImageDiffReleaseCairoCFLite.vsprops:
* MiniBrowser/Configurations/MiniBrowserDebug.vsprops:
* MiniBrowser/Configurations/MiniBrowserDebugAll.vsprops:
* MiniBrowser/Configurations/MiniBrowserDebugCairoCFLite.vsprops:
* MiniBrowser/Configurations/MiniBrowserProduction.vsprops:
* MiniBrowser/Configurations/MiniBrowserRelease.vsprops:
* MiniBrowser/Configurations/MiniBrowserReleaseCairoCFLite.vsprops:
* TestWebKitAPI/Configurations/TestWebKitAPIRelease.vsprops:
* TestWebKitAPI/Configurations/TestWebKitAPIReleaseCairoCFLite.vsprops:
* WebKitLauncherWin/WebKitLauncherWinDebug.vsprops:
* WebKitLauncherWin/WebKitLauncherWinDebugAll.vsprops:
* WebKitLauncherWin/WebKitLauncherWinDebugCairoCFLite.vsprops:
* WebKitLauncherWin/WebKitLauncherWinProduction.vsprops:
* WebKitLauncherWin/WebKitLauncherWinRelease.vsprops:
* WebKitLauncherWin/WebKitLauncherWinReleaseCairoCFLite.vsprops:
* WebKitTestRunner/win/InjectedBundleDebug.vsprops:
* WebKitTestRunner/win/InjectedBundleDebugAll.vsprops:
* WebKitTestRunner/win/InjectedBundleDebugCairoCFLite.vsprops:
* WebKitTestRunner/win/InjectedBundleProduction.vsprops:
* WebKitTestRunner/win/InjectedBundleRelease.vsprops:
* WebKitTestRunner/win/InjectedBundleReleaseCairoCFLite.vsprops:
* WebKitTestRunner/win/WebKitTestRunnerDebug.vsprops:
* WebKitTestRunner/win/WebKitTestRunnerDebugAll.vsprops:
* WebKitTestRunner/win/WebKitTestRunnerDebugCairoCFLite.vsprops:
* WebKitTestRunner/win/WebKitTestRunnerProduction.vsprops:
* WebKitTestRunner/win/WebKitTestRunnerRelease.vsprops:
* WebKitTestRunner/win/WebKitTestRunnerReleaseCairoCFLite.vsprops:
* WinLauncher/WinLauncherDebug.vsprops:
* WinLauncher/WinLauncherDebugAll.vsprops:
* WinLauncher/WinLauncherDebugCairoCFLite.vsprops:
* WinLauncher/WinLauncherProduction.vsprops:
* WinLauncher/WinLauncherRelease.vsprops:
* WinLauncher/WinLauncherReleaseCairoCFLite.vsprops:
* record-memory-win/record-memory-winDebug.vsprops:
* record-memory-win/record-memory-winDebugAll.vsprops:
* record-memory-win/record-memory-winDebugCairoCFLite.vsprops:
* record-memory-win/record-memory-winProduction.vsprops:
* record-memory-win/record-memory-winRelease.vsprops:
* record-memory-win/record-memory-winReleaseCairoCFLite.vsprops:

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

9 years agoWindows build fix.
andersca@apple.com [Thu, 15 Dec 2011 01:57:25 +0000 (01:57 +0000)]
Windows build fix.

Move CHECKs out of the destructor.

* TestWebKitAPI/Tests/WTF/Functional.cpp:
(TestWebKitAPI::B::~B):
(TestWebKitAPI::TEST):

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

9 years agoUnreviewed, rolling out r102816.
kbr@google.com [Thu, 15 Dec 2011 01:38:59 +0000 (01:38 +0000)]
Unreviewed, rolling out r102816.
http://trac.webkit.org/changeset/102816
https://bugs.webkit.org/show_bug.cgi?id=74415

Implicated in font-related crashes on Chromium canaries.

* platform/graphics/chromium/FontChromiumWin.cpp:
(WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
(WebCore::Font::drawGlyphs):
* platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::~FontPlatformData):
* platform/graphics/chromium/FontPlatformDataChromiumWin.h:
(WebCore::FontPlatformData::size):
(WebCore::FontPlatformData::hash):
* platform/graphics/skia/SkiaFontWin.cpp:
(WebCore::setupPaintForFont):
(WebCore::paintSkiaText):
* platform/graphics/skia/SkiaFontWin.h:

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

9 years agobinding a member function should ref/deref the object pointer if needed
andersca@apple.com [Thu, 15 Dec 2011 01:37:50 +0000 (01:37 +0000)]
binding a member function should ref/deref the object pointer if needed
https://bugs.webkit.org/show_bug.cgi?id=74552

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add a HasRefAndDeref helper class template which checks if a given class type has ref and deref
member functions which the right type. Use this to determine if we should ref/deref the first parameter.

* wtf/Functional.h:
(WTF::R):
(WTF::C::):
(WTF::RefAndDeref::ref):
(WTF::RefAndDeref::deref):

Tools:

Add new tests.

* TestWebKitAPI/Tests/WTF/Functional.cpp:
(TestWebKitAPI::B::B):
(TestWebKitAPI::B::~B):
(TestWebKitAPI::B::ref):
(TestWebKitAPI::B::deref):
(TestWebKitAPI::B::f):
(TestWebKitAPI::B::g):
(TestWebKitAPI::TEST):

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

9 years agogit-svn-id: http://svn.webkit.org/repository/webkit/trunk@102856 268f45cc-cd09-0410...
msaboff@apple.com [Thu, 15 Dec 2011 01:30:40 +0000 (01:30 +0000)]
git-svn-id: svn.webkit.org/repository/webkit/trunk@102856 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoFilter amounts should accept percentages
simon.fraser@apple.com [Thu, 15 Dec 2011 01:30:35 +0000 (01:30 +0000)]
Filter amounts should accept percentages
https://bugs.webkit.org/show_bug.cgi?id=74531

Source/WebCore:

Reviewed by Chris Marrin.

Support percentage arguments for some filter functions, using the FPercent flag
to validUnit(). Fix CSSStyleSelector::createFilterOperations() to do the divide by 100
for percentages.

Replaced isValidFilterArgument(), which just tested arguments one by one for validity, with
parseBuiltinFilterArguments() which tests and creates the CSSValues at the same time, which
is a little more efficient. It also allows filter-specific behavior to be more localized in this
method.

Covered by existing tests.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseBuiltinFilterArguments):
(WebCore::CSSParser::parseFilter):
* css/CSSParser.h:
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::createFilterOperations):

LayoutTests:

Reviewed by Chris Marrin.

Adjust test results now that percentages are allowed for some
filter arguments, and add testing of percentage arguments to filter-property-computed-style.js

* css3/filters/filter-property-computed-style-expected.txt:
* css3/filters/filter-property-parsing-invalid-expected.txt:
* css3/filters/script-tests/filter-property-computed-style.js:
* css3/filters/script-tests/filter-property-parsing-invalid.js:

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

9 years agoBuild fix.
enrica@apple.com [Thu, 15 Dec 2011 01:24:18 +0000 (01:24 +0000)]
Build fix.

Unreviewed.

* editing/ReplaceSelectionCommand.cpp: Added include RenderStyle.h

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

9 years agoUpdating test results after r102846
enrica@apple.com [Thu, 15 Dec 2011 01:17:11 +0000 (01:17 +0000)]
Updating test results after r102846

Unreviewed.

* platform/chromium-win/editing/pasteboard/paste-text-013-expected.txt:
* platform/chromium-win/editing/pasteboard/paste-text-014-expected.txt:

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

9 years agoJS_INLINE and WTF_INLINE should be visible from WebCore
commit-queue@webkit.org [Thu, 15 Dec 2011 00:51:42 +0000 (00:51 +0000)]
JS_INLINE and WTF_INLINE should be visible from WebCore
https://bugs.webkit.org/show_bug.cgi?id=73191

Source/JavaScriptCore:

- Moved Export related macro definitions from config.h to ExportMacros.h and JSExportMacros.h.
- Moved WTF_USE_JSC and WTF_USE_V8 from various config.h family to Platform.h.
- Replaced JS_EXPORTDATA in wtf moudule with newly introduced WTF_EXPORTDATA.

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

* JavaScriptCore.xcodeproj/project.pbxproj:
* config.h:
* runtime/JSExportMacros.h: Added.
* wtf/ExportMacros.h:
* wtf/Platform.h:
* wtf/WTFThreadData.h:
* wtf/text/AtomicString.h:
* wtf/text/StringStatics.cpp:

Source/JavaScriptGlue:

- Extracted export related macro definitions to ExportMacros.h and JSExportMacros.h
- Added forwarding headers which used in config.h

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

* ForwardingHeaders/runtime/JSExportMacros.h: Added.
* ForwardingHeaders/wtf/ExportMacros.h: Added.
* config.h:

Source/WebCore:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

- Moved export related definitions from config.h
  to ExportMacros.h, JSExportMacros.h and PlatformExportMacros.h
- Added forwarding headers which are referred from config.h

No new tests. Only build related changes.

* ForwardingHeaders/runtime/JSExportMacros.h: Added.
* ForwardingHeaders/wtf/ExportMacros.h: Added.
* WebCore.xcodeproj/project.pbxproj:
* config.h:
* platform/PlatformExportMacros.h: Copied from Source/JavaScriptCore/wtf/ExportMacros.h.

Source/WebKit/cf:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* WebCoreSupport/WebInspectorClientCF.cpp:

Source/WebKit/mac:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* WebKitPrefix.h:

Source/WebKit/qt:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Added a INCLUDEPATH to make JSExportMacros.h visible.

* tests/MIMESniffing/MIMESniffing.pro

Source/WebKit2:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* config.h:

Tools:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* DumpRenderTree/chromium/config.h:
* DumpRenderTree/config.h:
* DumpRenderTree/ForwardingHeaders/runtime/JSExportMacros.h: Added.
* DumpRenderTree/ForwardingHeaders/wtf/ExportMacros.h: Added.
* DumpRenderTree/win/DumpRenderTreePreBuild.cmd: Add new ForwardingHeaders.
* TestWebKitAPI/config.h:
* WebKitTestRunner/config.h:

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

9 years ago [Mac] Sandbox violation opening AppleSNBFBUserClient
ap@apple.com [Thu, 15 Dec 2011 00:44:40 +0000 (00:44 +0000)]
    [Mac] Sandbox violation opening AppleSNBFBUserClient
        https://bugs.webkit.org/show_bug.cgi?id=74560
        <rdar://problem/10410896>

        Reviewed by Darin Adler.

        * WebProcess/com.apple.WebProcess.sb: Just allow it.

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

9 years agoUnreviewed: more specific bug for suppression of fast/workers/storage.
dslomov@google.com [Thu, 15 Dec 2011 00:41:40 +0000 (00:41 +0000)]
Unreviewed: more specific bug for suppression of fast/workers/storage.
Bug https://bugs.webkit.org/show_bug.cgi?id=74554 with investigation results filed.

* platform/chromium/test_expectations.txt:

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

9 years agoNeed a way to produce leaner markup when pasting a fragment containing verbose markup
enrica@apple.com [Thu, 15 Dec 2011 00:32:27 +0000 (00:32 +0000)]
Need a way to produce leaner markup when pasting a fragment containing verbose markup
https://bugs.webkit.org/show_bug.cgi?id=74514
<rdar://problem/10208653>

Reviewed by Ryosuke Niwa.

Source/WebCore:

This patch is another step in the direction of reducing the verbosity of the markup
produced with editing operations.
After the copied fragment is inserted in the document, it is analyzed to remove all
the elements that don't contribute to the style. The decision is made comparing the
render styles. As part of the cleanup, unstyled divs with single child element are
removed. The logic to determine the blocks that can be removed is the same used in
DeleteSelectionCommand and has been moved in CompositeEditCommand.

Test: editing/pasteboard/paste-and-sanitize.html

* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::isRemovableBlock): Implements logic to determine
if a block can be removed.
* editing/CompositeEditCommand.h: Added isRemovableBlock declaration.
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::removeRedundantBlocks): Implemented using
isRemovableBlock from CompositeEditCommand.
* editing/Editor.cpp:
(WebCore::Editor::replaceSelectionWithFragment): Added SanitizeFragment option.
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Added initialization
of m_sanitizeFragment member.
(WebCore::ReplaceSelectionCommand::removeRedundantMarkup): New method implementing
the cleanup logic.
(WebCore::ReplaceSelectionCommand::doApply): Added call to removeRedundantMarkup
after the fragment is inserted in the document.
* editing/ReplaceSelectionCommand.h: Added new value to the enum CommandOption,
a new member variable and the new method declaration.

LayoutTests:

* editing/pasteboard/paste-and-sanitize-expected.txt: Added.
* editing/pasteboard/paste-and-sanitize.html: Added.
* editing/pasteboard/paste-text-012-expected.txt: Updated to reflect cleanup.
* editing/pasteboard/testcase-9507-expected.txt: Updated to reflect cleanup.
* platform/mac/editing/pasteboard/paste-text-013-expected.txt: Updated to reflect cleanup.
* platform/mac/editing/pasteboard/paste-text-014-expected.txt: Updated to reflect cleanup.

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

9 years agoUnreviewed Chromium test expectations update. Skip a problematic
kbr@google.com [Thu, 15 Dec 2011 00:28:50 +0000 (00:28 +0000)]
Unreviewed Chromium test expectations update. Skip a problematic
test which will be fixed with the fix for an existing bug, and
mark another failure; the latter seems serious and a high-priority
bug has been filed.

* platform/chromium/test_expectations.txt:

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

9 years ago[BlackBerry] Refactor code and add some debug messages in backing store
commit-queue@webkit.org [Thu, 15 Dec 2011 00:16:33 +0000 (00:16 +0000)]
[BlackBerry] Refactor code and add some debug messages in backing store
https://bugs.webkit.org/show_bug.cgi?id=74539

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Antonio Gomes.

Refactor and get rid of the confusing and unnecessary
'renderContentOnly' flag from the family of render methods in the
backing store.
Remove the overload of the render method that takes a list of rects from
the backing store since it is just a for loop and only one place calls it.
Add a debug message to illustrate when we start showing checkerboard and
when we stop.
Fix the debug messages in the DEBUG_BACKINGSTORE so that they actually compile
and add a new message for debugging WebCore invalidation requests.
The original author is Adam Treat <atreat@rim.com>

* blackberry/Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::resumeScreenAndBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):
(BlackBerry::WebKit::BackingStorePrivate::renderDirectToWindow):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::renderVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::renderBackingStore):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::blitContents):
(BlackBerry::WebKit::BackingStorePrivate::updateTile):
(BlackBerry::WebKit::BackingStorePrivate::invalidateWindow):
* blackberry/Api/BackingStore_p.h:

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

9 years agoAdd new expected results that were missed in r102837.
ojan@chromium.org [Thu, 15 Dec 2011 00:15:29 +0000 (00:15 +0000)]
Add new expected results that were missed in r102837.

* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

9 years agoUnreviewed, rolling out r102761.
haraken@chromium.org [Thu, 15 Dec 2011 00:12:23 +0000 (00:12 +0000)]
Unreviewed, rolling out r102761.
http://trac.webkit.org/changeset/102761
https://bugs.webkit.org/show_bug.cgi?id=74485

we came up with a better fix than this (see comments in bug
74485)

* Scripts/prepare-ChangeLog:
(generateFunctionLists):
(printDiff):
(diffCommand):
(statusCommand):
(createPatchCommand):
(generateFileList):
(isAddedStatus):
(isConflictStatus):
(statusDescription):
(extractLineRange):

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

9 years agoWork around a bug in the MSVC2005 compiler
andersca@apple.com [Wed, 14 Dec 2011 23:55:12 +0000 (23:55 +0000)]
Work around a bug in the MSVC2005 compiler
https://bugs.webkit.org/show_bug.cgi?id=74550

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add template parameters for the return types of the partial specializations of BoundFunctionImpl.

* wtf/Functional.h:
(WTF::R):

Tools:

Re-enable tests.

* TestWebKitAPI/Tests/WTF/Functional.cpp:

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

9 years ago[chromium] Refactor tile drawing to be more data-driven
enne@google.com [Wed, 14 Dec 2011 23:50:35 +0000 (23:50 +0000)]
[chromium] Refactor tile drawing to be more data-driven
https://bugs.webkit.org/show_bug.cgi?id=73059

Reviewed by James Robinson.

Source/WebCore:

Partially tested by compositor layout tests. Debug borders and
checkerboarding tested manually.

This is the first part of a move towards rendering quads on screen
from a bag of data rather than in virtual CCLayerImpl::draw functions.

CCDrawQuad-derived classes store material-specific pieces of data to
use when rendering. CCLayerImpl classes now create these CCDrawQuad
objects rather than issuing direct GL commands. Where this data is
shared between quads that come from the same layer, that data is
stored in a CCSharedQuadState object rather than duplicated.

CCRenderPass is the class that holds the list of quads and the target
surface that they draw into. Drawing a frame consists of drawing a
series of render passes onto their respective surfaces.

CCLayerTreeHostImpl constructs these render passes from the output of
calculateDrawTransformsAndVisibility by asking each layer to insert
quads into a list and hands them off to LayerRendererChromium for
rendering.

* WebCore.gypi:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::clearSurfaceForDebug):
(WebCore::LayerRendererChromium::beginDrawingFrame):
(WebCore::LayerRendererChromium::drawRenderPass):
(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawDebugBorderQuad):
(WebCore::LayerRendererChromium::drawRenderSurfaceQuad):
(WebCore::LayerRendererChromium::drawSolidColorQuad):
(WebCore::tileUniformLocation):
(WebCore::findTileProgramUniforms):
(WebCore::LayerRendererChromium::drawTileQuad):
(WebCore::LayerRendererChromium::drawCustomLayerQuad):
(WebCore::LayerRendererChromium::finishDrawingFrame):
(WebCore::LayerRendererChromium::useRenderSurface):
* platform/graphics/chromium/LayerRendererChromium.h:
* platform/graphics/chromium/ShaderChromium.h:
(WebCore::FragmentTexAlphaBinding::edgeLocation):
(WebCore::FragmentTexAlphaBinding::fragmentTexTransformLocation):
(WebCore::FragmentTexOpaqueBinding::edgeLocation):
(WebCore::FragmentTexOpaqueBinding::fragmentTexTransformLocation):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::pushPropertiesTo):
* platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp: Added.
(WebCore::CCCustomLayerDrawQuad::create):
(WebCore::CCCustomLayerDrawQuad::CCCustomLayerDrawQuad):
* platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h: Added.
(WebCore::CCCustomLayerDrawQuad::layer):
* platform/graphics/chromium/cc/CCDebugBorderDrawQuad.cpp: Added.
(WebCore::CCDebugBorderDrawQuad::create):
(WebCore::CCDebugBorderDrawQuad::CCDebugBorderDrawQuad):
* platform/graphics/chromium/cc/CCDebugBorderDrawQuad.h: Added.
(WebCore::CCDebugBorderDrawQuad::color):
(WebCore::CCDebugBorderDrawQuad::width):
* platform/graphics/chromium/cc/CCDrawQuad.cpp: Added.
(WebCore::CCDrawQuad::CCDrawQuad):
(WebCore::CCDrawQuad::toDebugBorderDrawQuad):
(WebCore::CCDrawQuad::toRenderSurfaceDrawQuad):
(WebCore::CCDrawQuad::toSolidColorDrawQuad):
(WebCore::CCDrawQuad::toTileDrawQuad):
(WebCore::CCDrawQuad::toCustomLayerDrawQuad):
* platform/graphics/chromium/cc/CCDrawQuad.h: Added.
(WebCore::CCDrawQuad::quadRect):
(WebCore::CCDrawQuad::quadTransform):
(WebCore::CCDrawQuad::layerTransform):
(WebCore::CCDrawQuad::layerRect):
(WebCore::CCDrawQuad::clipRect):
(WebCore::CCDrawQuad::opacity):
(WebCore::CCDrawQuad::drawsOpaque):
(WebCore::CCDrawQuad::needsBlending):
(WebCore::CCDrawQuad::isLayerAxisAlignedIntRect):
(WebCore::CCDrawQuad::material):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::createSharedQuadState):
(WebCore::CCLayerImpl::appendQuads):
(WebCore::CCLayerImpl::appendDebugBorderQuad):
(WebCore::CCLayerImpl::quadTransform):
* platform/graphics/chromium/cc/CCLayerImpl.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::trackDamageForAllSurfaces):
(WebCore::computeScreenSpaceTransformForSurface):
(WebCore::damageInSurfaceSpace):
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore::CCLayerTreeHostImpl::drawLayers):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
* platform/graphics/chromium/cc/CCRenderPass.cpp: Added.
(WebCore::CCRenderPass::create):
(WebCore::CCRenderPass::CCRenderPass):
(WebCore::CCRenderPass::appendQuadsForLayer):
(WebCore::CCRenderPass::appendQuadsForRenderSurfaceLayer):
* platform/graphics/chromium/cc/CCRenderPass.h: Added.
(WebCore::CCRenderPass::quadList):
(WebCore::CCRenderPass::targetSurface):
(WebCore::CCRenderPass::setSurfaceDamageRect):
(WebCore::CCRenderPass::surfaceDamageRect):
* platform/graphics/chromium/cc/CCRenderSurfaceDrawQuad.cpp: Added.
(WebCore::CCRenderSurfaceDrawQuad::create):
(WebCore::CCRenderSurfaceDrawQuad::CCRenderSurfaceDrawQuad):
* platform/graphics/chromium/cc/CCRenderSurfaceDrawQuad.h: Added.
(WebCore::CCRenderSurfaceDrawQuad::layer):
(WebCore::CCRenderSurfaceDrawQuad::surfaceDamageRect):
* platform/graphics/chromium/cc/CCSharedQuadState.cpp: Added.
(WebCore::CCSharedQuadState::create):
(WebCore::CCSharedQuadState::CCSharedQuadState):
(WebCore::CCSharedQuadState::isLayerAxisAlignedIntRect):
* platform/graphics/chromium/cc/CCSharedQuadState.h: Added.
(WebCore::CCSharedQuadState::quadTransform):
(WebCore::CCSharedQuadState::layerTransform):
(WebCore::CCSharedQuadState::layerRect):
(WebCore::CCSharedQuadState::clipRect):
(WebCore::CCSharedQuadState::opacity):
(WebCore::CCSharedQuadState::isOpaque):
* platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp: Added.
(WebCore::CCSolidColorDrawQuad::create):
(WebCore::CCSolidColorDrawQuad::CCSolidColorDrawQuad):
* platform/graphics/chromium/cc/CCSolidColorDrawQuad.h: Added.
(WebCore::CCSolidColorDrawQuad::color):
* platform/graphics/chromium/cc/CCTileDrawQuad.cpp: Added.
(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):
* platform/graphics/chromium/cc/CCTileDrawQuad.h: Added.
(WebCore::CCTileDrawQuad::textureId):
(WebCore::CCTileDrawQuad::textureOffset):
(WebCore::CCTileDrawQuad::textureSize):
(WebCore::CCTileDrawQuad::textureFilter):
(WebCore::CCTileDrawQuad::swizzleContents):
(WebCore::CCTileDrawQuad::leftEdgeAA):
(WebCore::CCTileDrawQuad::topEdgeAA):
(WebCore::CCTileDrawQuad::rightEdgeAA):
(WebCore::CCTileDrawQuad::bottomEdgeAA):
(WebCore::CCTileDrawQuad::isAntialiased):
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
(WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
(WebCore::CCTiledLayerImpl::quadTransform):
(WebCore::CCTiledLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCTiledLayerImpl.h:
(WebCore::CCTiledLayerImpl::setContentsSwizzled):
(WebCore::CCTiledLayerImpl::contentsSwizzled):

LayoutTests:

Mark three tests as failing with small pixel differences. These just
need rebaselining.

* platform/chromium/test_expectations.txt:

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

9 years agoImplement flexDirection and flexWrap and make flexFlow a proper shorthand.
ojan@chromium.org [Wed, 14 Dec 2011 23:39:24 +0000 (23:39 +0000)]
Implement flexDirection and flexWrap and make flexFlow a proper shorthand.
https://bugs.webkit.org/show_bug.cgi?id=74542

Reviewed by Tony Chang.

Source/WebCore:

In a followup patch, I'll cleanup all the *Flow methods in RenderFlexibleBox.

Existing tests cover all the rendering behaviors, so only need to test
the css property parsing.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::getPropertyValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFlexDirection):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyLonghand.cpp:
(WebCore::initShorthandMap):
* css/CSSPropertyNames.in:
* css/CSSStyleApplyProperty.cpp:
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::isColumnFlow):
(WebCore::RenderFlexibleBox::isLeftToRightFlow):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::alignChildren):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::flexDirection):
(WebCore::InheritedFlags::isColumnFlexDirection):
(WebCore::InheritedFlags::setFlexDirection):
(WebCore::InheritedFlags::initialFlexDirection):
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleFlexibleBoxData.cpp:
(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):
* rendering/style/StyleFlexibleBoxData.h:

LayoutTests:

* css3/flexbox/css-properties-expected.txt:
* css3/flexbox/script-tests/css-properties.js:
(testFlexFlowValue):

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

9 years agoEnable notifications on Mac.
jonlee@apple.com [Wed, 14 Dec 2011 23:32:57 +0000 (23:32 +0000)]
Enable notifications on Mac.

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

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

9 years agoCOMPILE_ASSERT in CSSStyleSelector.cpp doesn't compile on Windows
rniwa@webkit.org [Wed, 14 Dec 2011 23:21:35 +0000 (23:21 +0000)]
COMPILE_ASSERT in CSSStyleSelector.cpp doesn't compile on Windows
https://bugs.webkit.org/show_bug.cgi?id=74327

Reviewed by Darin Adler.

Always use unsigned instead of bool and unsigned in the bitfields of RuleData to shrink
its size under MSVC.

Unlike gcc and clang, MSVC pads each consecutive member variables of the same type
in bitfields. e.g. if you have:
sturct AB {
    unsigned m_1 : 31;
    bool m_2 : 1;
}
then MSVC pads m_1 and allocates sizeof(unsigned) * 2 for AB whereas gcc and clang
only allocate sizeof(unsigned) * 1 for AB.

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

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

9 years agoNodeChildList shouldn't be in NodeListNodeData
rniwa@webkit.org [Wed, 14 Dec 2011 23:18:26 +0000 (23:18 +0000)]
NodeChildList shouldn't be in NodeListNodeData
https://bugs.webkit.org/show_bug.cgi?id=73969

Source/WebCore:

Reviewed by Sam Weinig.

Move NodeChildList out of NodeListNodeData to separate it from the other node lists in order to
resolve the bug 73853. Unlike other DynamicNodeList, we don't need to invalidate NodeChildList
on ancestors when children change. Moving ChildNodeList out of NodeListNodeData makes this difference
apparent and makes DynamicNodeList::Caches in NodeListNodeData always held by a DynamicSubtreeNodeList,
eliminating the need for hasOwnCaches() checks in various places.

Also renamed the existing DynamicNodeList to DynamicSubtreeNodeList and re-introduced DynamicNodeList
from which DynamicSubtreeNodeList and ChildNodeList both inherit to share the code for itemWithName.

In addition, renamed registerDynamicNodeList and unregisterDynamicNodeList, which updates a counter for
TreeScope::hasNodeListCaches, to registerDynamicSubtreeNodeList and unregisterDynamicSubtreeNodeList
respectively. They are no longer called by ChildNodeList in order to avoid walking up the DOM tree
inside invalidateNodeListsCacheAfterAttributeChanged and invalidateNodeListsCacheAfterChildrenChanged.

Test: fast/dom/childnode-item-after-itemname.html

* bindings/js/JSNodeListCustom.cpp:
(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):
* dom/ChildNodeList.cpp:
(WebCore::ChildNodeList::ChildNodeList):
(WebCore::ChildNodeList::length):
(WebCore::ChildNodeList::item):
(WebCore::ChildNodeList::nodeMatches):
* dom/ChildNodeList.h:
* dom/ClassNodeList.cpp:
(WebCore::ClassNodeList::ClassNodeList):
(WebCore::ClassNodeList::~ClassNodeList):
* dom/ClassNodeList.h:
* dom/ContainerNode.cpp:
(WebCore::ContainerNode::childrenChanged):
* dom/DynamicNodeList.cpp:
(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::~DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):
(WebCore::DynamicNodeList::itemWithName):
(WebCore::DynamicSubtreeNodeList::isDynamicNodeList):
(WebCore::DynamicSubtreeNodeList::invalidateCache):
(WebCore::DynamicSubtreeNodeList::Caches::Caches):
(WebCore::DynamicSubtreeNodeList::Caches::create):
(WebCore::DynamicSubtreeNodeList::Caches::reset):
* dom/DynamicNodeList.h:
(WebCore::DynamicNodeList::DynamicNodeList):
(WebCore::DynamicNodeList::~DynamicNodeList):
(WebCore::DynamicNodeList::node):
(WebCore::DynamicSubtreeNodeList::rootNode):
* dom/NameNodeList.cpp:
(WebCore::NameNodeList::NameNodeList):
(WebCore::NameNodeList::~NameNodeList):
* dom/NameNodeList.h:
* dom/Node.cpp:
(WebCore::Node::childNodes):
(WebCore::Node::registerDynamicSubtreeNodeList):
(WebCore::Node::unregisterDynamicSubtreeNodeList):
(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged):
(WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged):
(WebCore::Node::removeCachedClassNodeList):
(WebCore::Node::removeCachedNameNodeList):
(WebCore::Node::removeCachedTagNodeList):
(WebCore::Node::removeCachedLabelsNodeList):
(WebCore::NodeListsNodeData::invalidateCaches):
(WebCore::NodeListsNodeData::isEmpty):
(WebCore::NodeRareData::clearChildNodeListCache):
* dom/Node.h:
* dom/NodeRareData.h:
(WebCore::NodeRareData::nodeLists):
(WebCore::NodeRareData::ensureChildNodeListCache):
* dom/TagNodeList.cpp:
(WebCore::TagNodeList::TagNodeList):
(WebCore::TagNodeList::~TagNodeList):
* dom/TagNodeList.h:
* html/LabelsNodeList.cpp:
(WebCore::LabelsNodeList::LabelsNodeList):
* html/LabelsNodeList.h:

LayoutTests:

Added a regression test for ChildNodeList; it catches a bug caught in the review process.

* fast/dom/childnode-item-after-itemname-expected.txt: Added.
* fast/dom/childnode-item-after-itemname.html: Added.

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

9 years agoPush more member functions from EditCommand to CompositeEditCommand
rniwa@webkit.org [Wed, 14 Dec 2011 23:16:06 +0000 (23:16 +0000)]
Push more member functions from EditCommand to CompositeEditCommand
https://bugs.webkit.org/show_bug.cgi?id=74249

Reviewed by Enrica Casucci.

Moved startingRootEditableElement and endingRootEditableElement from EditCommand to EditCommandComposition,
and isTypingCommand, preservesTypingStyle, shouldRetainAutocorrectionIndicator,
setShouldRetainAutocorrectionIndicator, and shouldStopCaretBlinking from EditCommand to CompositeEditCommand.
Also removed EditCommand::updateLayout().

* editing/ApplyBlockElementCommand.cpp:
(WebCore::ApplyBlockElementCommand::doApply):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyBlockStyle):
(WebCore::ApplyStyleCommand::applyInlineStyle):
* editing/CompositeEditCommand.cpp:
(WebCore::EditCommandComposition::EditCommandComposition):
(WebCore::EditCommandComposition::setStartingSelection):
(WebCore::EditCommandComposition::setEndingSelection):
(WebCore::CompositeEditCommand::preservesTypingStyle):
(WebCore::CompositeEditCommand::isTypingCommand):
(WebCore::CompositeEditCommand::shouldRetainAutocorrectionIndicator):
(WebCore::CompositeEditCommand::setShouldRetainAutocorrectionIndicator):
(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
(WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
(WebCore::CompositeEditCommand::moveParagraphs):
* editing/CompositeEditCommand.h:
(WebCore::EditCommandComposition::startingRootEditableElement):
(WebCore::EditCommandComposition::endingRootEditableElement):
(WebCore::CompositeEditCommand::shouldStopCaretBlinking):
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::removeNode):
(WebCore::DeleteSelectionCommand::fixupWhitespace):
* editing/EditCommand.cpp:
(WebCore::EditCommand::apply):
(WebCore::EditCommand::unapply):
(WebCore::EditCommand::reapply):
(WebCore::EditCommand::setStartingSelection):
(WebCore::EditCommand::setEndingSelection):
(WebCore::EditCommand::setParent):
* editing/EditCommand.h:
(WebCore::EditCommand::isEditCommandComposition):
* editing/Editor.cpp:
(WebCore::dispatchEditableContentChangedEvents):
(WebCore::Editor::appliedEditing):
(WebCore::Editor::unappliedEditing):
(WebCore::Editor::reappliedEditing):
* editing/Editor.h:
(WebCore::Editor::lastEditCommand):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::updateAppearance):
* editing/IndentOutdentCommand.cpp:
(WebCore::IndentOutdentCommand::outdentParagraph):
* editing/InsertLineBreakCommand.cpp:
(WebCore::InsertLineBreakCommand::doApply):
* editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::InsertParagraphSeparatorCommand::doApply):
* editing/TypingCommand.cpp:
(WebCore::TypingCommand::lastTypingCommandIfStillOpenForTyping):
* editing/TypingCommand.h:
(WebCore::TypingCommand::shouldRetainAutocorrectionIndicator):

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

9 years agoFix compile on gcc on Mac.
tony@chromium.org [Wed, 14 Dec 2011 23:08:08 +0000 (23:08 +0000)]
Fix compile on gcc on Mac.

css/CSSStyleSelector.cpp:1254:166: error: unused parameter 'regionForStyling' [-Werror,-Wunused-parameter,3]
css/CSSStyleSelector.cpp:1425:134: error: unused parameter 'regionForStyling' [-Werror,-Wunused-parameter,3]

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

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

9 years agoRemove definition of old ENABLE(YARR) macro
ddkilzer@apple.com [Wed, 14 Dec 2011 23:03:51 +0000 (23:03 +0000)]
Remove definition of old ENABLE(YARR) macro
<http://webkit.org/b/74532>

Reviewed by Darin Adler.

* wtf/Platform.h: Removed ENABLE_YARR macros.

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

9 years agoCreate reftest for outline-sides-in-region
commit-queue@webkit.org [Wed, 14 Dec 2011 22:57:20 +0000 (22:57 +0000)]
Create reftest for outline-sides-in-region
https://bugs.webkit.org/show_bug.cgi?id=74428

Patch by Ethan Malasky <emalasky@adobe.com> on 2011-12-14
Reviewed by Darin Adler.

* fast/regions/outline-sides-in-region-expected.html: Added.
* fast/regions/outline-sides-in-region.html:
* platform/chromium/test_expectations.txt:
* platform/efl/fast/regions/outline-sides-in-region-expected.png: Removed.
* platform/efl/fast/regions/outline-sides-in-region-expected.txt: Removed.
* platform/mac/fast/regions/outline-sides-in-region-expected.png: Removed.
* platform/mac/fast/regions/outline-sides-in-region-expected.txt: Removed.

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

9 years ago<rdar://problem/10576732> and https://bugs.webkit.org/show_bug.cgi?id=74533
beidson@apple.com [Wed, 14 Dec 2011 22:52:08 +0000 (22:52 +0000)]
<rdar://problem/10576732> and https://bugs.webkit.org/show_bug.cgi?id=74533
REGRESSION(r102619): Reproducible crash closing window with video + poster image inside an object element

Reviewed by Darin Adler.

Source/WebCore:

Test: media/crash-closing-page-with-media-as-plugin-fallback.html

Switch HTMLPlugInImageElement from using document activation callbacks to using the ActiveDOMObject
mechanism which will prevent the unnecessary (and crashy) work at Document teardown:
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::canSuspend):
(WebCore::HTMLPlugInImageElement::suspend):
(WebCore::HTMLPlugInImageElement::resume):
* html/HTMLPlugInImageElement.h:

LayoutTests:

* media/crash-closing-page-with-media-as-plugin-fallback-expected.txt: Added.
* media/crash-closing-page-with-media-as-plugin-fallback.html: Added.
* media/resources/video-with-poster-as-object-fallback.html: Added.

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

9 years ago[chromium] Compositor needs to set texture filtering on canvas layers
enne@google.com [Wed, 14 Dec 2011 22:38:06 +0000 (22:38 +0000)]
[chromium] Compositor needs to set texture filtering on canvas layers
https://bugs.webkit.org/show_bug.cgi?id=74530

Reviewed by James Robinson.

* platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
(WebCore::CCCanvasLayerImpl::draw):

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

9 years agoRemove added calls to CSSStyleSelector to gain back another 2% in page cyclers
tony@chromium.org [Wed, 14 Dec 2011 22:19:58 +0000 (22:19 +0000)]
Remove added calls to CSSStyleSelector to gain back another 2% in page cyclers
https://bugs.webkit.org/show_bug.cgi?id=74537

Reviewed by Ojan Vafai.

In r102234, calls to initForRegionStyling() were added in CSSStyleSelector.
There's still a 2% perf regression in chromium page cyclers, so try removing
these calls.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

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

9 years ago[Qt] Test fonts are not used with Qt5
ossy@webkit.org [Wed, 14 Dec 2011 22:13:24 +0000 (22:13 +0000)]
[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

My last unreviewed buildfix for this crazy bug.

* qmake/mkspecs/features/features.prf:

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

9 years ago[Qt] DeviceOrientationClientQt should initialize m_controller to zero.
commit-queue@webkit.org [Wed, 14 Dec 2011 22:09:48 +0000 (22:09 +0000)]
[Qt] DeviceOrientationClientQt should initialize m_controller to zero.
https://bugs.webkit.org/show_bug.cgi?id=74522

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-14
Reviewed by Kenneth Rohde Christiansen.

* WebCoreSupport/DeviceOrientationProviderQt.cpp:
(WebCore::DeviceOrientationProviderQt::DeviceOrientationProviderQt):

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

9 years agoAnother attempt at fixing the Windows build.
andersca@apple.com [Wed, 14 Dec 2011 22:00:27 +0000 (22:00 +0000)]
Another attempt at fixing the Windows build.

Disable all the tests until I can figure out what's going on here.

* TestWebKitAPI/Tests/WTF/Functional.cpp:

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

9 years agoSkip fast/forms/select/menulist-onchange-fired-with-key-up-down.html on Mac since
rniwa@webkit.org [Wed, 14 Dec 2011 21:53:43 +0000 (21:53 +0000)]
Skip fast/forms/select/menulist-onchange-fired-with-key-up-down.html on Mac since
it has been failing since it was introduced. The failure is tracked by the bug 74384.

* platform/mac/Skipped:

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

9 years ago<rdar://problem/10573872> NPN_GetValueForURL returns wrong value for NPNURLVProxy
mrowe@apple.com [Wed, 14 Dec 2011 21:30:38 +0000 (21:30 +0000)]
<rdar://problem/10573872> NPN_GetValueForURL returns wrong value for NPNURLVProxy

Reviewed by Anders Carlsson.

* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::proxiesForURL): Fix a copy-paste error.

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

9 years agoFix the Windows build.
andersca@apple.com [Wed, 14 Dec 2011 21:27:56 +0000 (21:27 +0000)]
Fix the Windows build.

Disable some of the tests for now.

* TestWebKitAPI/Tests/WTF/Functional.cpp:

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

9 years ago[chromium] Plumb through flag for enabling partial swap
commit-queue@webkit.org [Wed, 14 Dec 2011 21:25:01 +0000 (21:25 +0000)]
[chromium] Plumb through flag for enabling partial swap
https://bugs.webkit.org/show_bug.cgi?id=74513

Patch by Jonathan Backer <backer@chromium.org> on 2011-12-14
Reviewed by James Robinson.

Source/WebCore:

* page/Settings.h:
(WebCore::Settings::setPartialSwapEnabled):
(WebCore::Settings::partialSwapEnabled):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::initialize):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore::CCSettings::CCSettings):

Source/WebKit/chromium:

* public/WebSettings.h:
* public/platform/WebLayerTreeView.h:
(WebKit::WebLayerTreeView::Settings::Settings):
* src/WebLayerTreeView.cpp:
(WebKit::WebLayerTreeView::Settings::operator CCSettings):
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setPartialSwapEnabled):
* src/WebSettingsImpl.h:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

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

9 years ago[skia] cache typeface in FontPlatformData
reed@google.com [Wed, 14 Dec 2011 21:21:38 +0000 (21:21 +0000)]
[skia] cache typeface in FontPlatformData
https://bugs.webkit.org/show_bug.cgi?id=74415

Reviewed by Stephen White.

No new tests. Existing tests apply, this is just an optimization
to avoid looking up the typeface on each drawText call.

* platform/graphics/chromium/FontChromiumWin.cpp:
(WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
(WebCore::Font::drawGlyphs):
* platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
(WebCore::createTypefaceFromHFont):
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::~FontPlatformData):
* platform/graphics/chromium/FontPlatformDataChromiumWin.h:
(WebCore::FontPlatformData::typeface):
(WebCore::FontPlatformData::lfQuality):
(WebCore::FontPlatformData::hash):
(WebCore::FontPlatformData::operator==):
* platform/graphics/skia/SkiaFontWin.cpp:
(WebCore::setupPaintForFont):
(WebCore::paintSkiaText):
* platform/graphics/skia/SkiaFontWin.h:

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

9 years agoMake -webkit-filter animatable
simon.fraser@apple.com [Wed, 14 Dec 2011 21:16:07 +0000 (21:16 +0000)]
Make -webkit-filter animatable
https://bugs.webkit.org/show_bug.cgi?id=68476

Source/WebCore:

Reviewed by Chris Marrin.

Add -webkit-filter to the list of CSS properties that are animatable. Animate
it like we do transforms, by looking for matching lists of filter functions.
Each kind of filter operation has a blend() method that handles blending
for that filter.

Test: css3/filters/filter-animation.html

* GNUmakefile.list.am: Add FilterOperation.cpp to the build.
* Target.pri: Ditto
* WebCore.gypi: Ditto
* WebCore.vcproj/WebCore.vcproj: Ditto
* WebCore.xcodeproj/project.pbxproj: Ditto
* page/animation/AnimationBase.cpp:
(WebCore::blendFunc): New blendFunc() for FilterOperations, which does per-filter blending.
(WebCore::AnimationBase::ensurePropertyMap): Make PropertyWrapper for filters.
(WebCore::AnimationBase::AnimationBase): Adjust initialization order.
* page/animation/AnimationBase.h: Adjusted the member variable order to minimize padding.
(WebCore::AnimationBase::filterFunctionListsMatch): Accessor for the flag.
* page/animation/ImplicitAnimation.cpp:
(WebCore::ImplicitAnimation::reset):
(WebCore::ImplicitAnimation::validateTransformFunctionList): Adjust comment. The "is valid" terminology is confusing.
(WebCore::ImplicitAnimation::checkForMatchingFilterFunctionLists): New method to check for matching lists
of filter functions.
* page/animation/ImplicitAnimation.h:
* page/animation/KeyframeAnimation.cpp:
(WebCore::KeyframeAnimation::KeyframeAnimation):
(WebCore::KeyframeAnimation::checkForMatchingFilterFunctionLists): New method to check for matching lists
of filter functions.
* page/animation/KeyframeAnimation.h:
* rendering/style/FilterOperation.cpp: Added.
(WebCore::BasicColorMatrixFilterOperation::blend):
(WebCore::BasicColorMatrixFilterOperation::passthroughAmount):
(WebCore::BasicComponentTransferFilterOperation::blend):
(WebCore::BasicComponentTransferFilterOperation::passthroughAmount): Different filters have
different values for m_amount for the "passthrough" behavior. This method returns the appropriate value.
(WebCore::GammaFilterOperation::blend):
(WebCore::BlurFilterOperation::blend):
(WebCore::DropShadowFilterOperation::blend):
* rendering/style/FilterOperation.h:
(WebCore::FilterOperation::blend):
(WebCore::PassthroughFilterOperation::create): New "no-op" filter.
(WebCore::PassthroughFilterOperation::operator==):
(WebCore::PassthroughFilterOperation::PassthroughFilterOperation):
* rendering/style/FilterOperations.cpp:
(WebCore::FilterOperations::operationsMatch):
* rendering/style/FilterOperations.h:

LayoutTests:

Reviewed by Chris Marrin.

New test for filter animation, and enhancements to animation-test-helpers.js
for filters.

* animations/resources/animation-test-helpers.js:
(getFilterParameters):
(filterParametersMatch):
(checkExpectedValue):
* css3/filters/filter-animation.html: Added.

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

9 years agoBroaden support for mutation observation of attributes
adamk@chromium.org [Wed, 14 Dec 2011 21:14:15 +0000 (21:14 +0000)]
Broaden support for mutation observation of attributes
https://bugs.webkit.org/show_bug.cgi?id=74448

Reviewed by Ryosuke Niwa.

Source/WebCore:

The previously-landed MutationObserver support for attributes was incomplete:
it didn't support mutations related to Attr nodes (methods on Attrs,
setAttributeNode/removeAttributeNode on Element, or methods on NamedNodeMap).

This patch adds full support of mutation observation for all these cases,
and adds test cases for all these situations.

* dom/Attr.cpp:
(WebCore::Attr::setValue): Enqueue a mutation record when Attr.value is set from JS.
(WebCore::Attr::childrenChanged): Enqueue a mutation record when an Attr's value
changes to due additions/removals of Text children.
* dom/Element.cpp:
(WebCore::Element::enqueueAttributesMutationRecordIfRequested): Previously a static,
expose as part of Element's interface to allow it to be re-used by NamedNodeMap and Attr.
(WebCore::Element::removeAttribute): Remove enqueue call now handled by NamedNodeMap.
(WebCore::Element::setAttributeInternal): Fixup call of enqueueAttributesMutationRecordIfRequested.
* dom/Element.h:
* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::setNamedItem): Enqueue a mutation record when an attribute
is changed via Element.attributes.setNamedItem from JS.
(WebCore::NamedNodeMap::removeNamedItem): Enqueue a mutation record when an
attribute is removed, either via Element.attributes.removeNamedItem or Element.removeAttribute.

LayoutTests:

Add tests covering attribute mutation via Attr nodes.

* fast/mutation/observe-attributes-expected.txt:
* fast/mutation/observe-attributes.html:

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

9 years agobind should handle member functions
andersca@apple.com [Wed, 14 Dec 2011 20:59:53 +0000 (20:59 +0000)]
bind should handle member functions
https://bugs.webkit.org/show_bug.cgi?id=74529

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add FunctionWrapper partial specializations for member function pointers.

* wtf/Functional.h:
(WTF::C::):

Tools:

Add tests.

* TestWebKitAPI/Tests/WTF/Functional.cpp:
(TestWebKitAPI::A::A):
(TestWebKitAPI::A::f):
(TestWebKitAPI::A::addF):
(TestWebKitAPI::TEST):

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