WebKit-https.git
8 years ago[chromium] Convert screen space scroll gestures to layer space
commit-queue@webkit.org [Mon, 20 Aug 2012 11:01:41 +0000 (11:01 +0000)]
[chromium] Convert screen space scroll gestures to layer space
https://bugs.webkit.org/show_bug.cgi?id=92499

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-08-20
Reviewed by James Robinson.

Source/WebCore:

Scroll gestures should be converted from screen space to local layer space to
correctly apply the scroll delta to page scaled and/or transformed layers.
Visually this means that the scrolled content will always follow the user's
finger for any "well-formed" layer transform.

Wheel scroll deltas will still be directly interpreted as local layer scroll
coordinates.

We also adjust the logic for propagating ("bubbling") scroll events to parent
layers. Previously a parent layer was allowed to scroll in the screen-space
axis orthogonal to the direction the starting layer scrolled toward. For
example if a vertically scrolling layer is scrolled diagonally down and right,
the layer moves down and its parent to the right.

This patch generalizes this behavior to non-axis aligned transformed layers so
that the scrolling direction of any parent is constrained to be perpendicular
direction of movement of the starting layer. This makes the scrolling behavior
of transformed layers physically plausible. For instance, assume a 45 degree
rotated, vertically scrollable layer. Dragging your finger vertically
(relative to the layer) scrolls the layer up and down, while horizontal
movement results in the parent of the layer moving in a corresponding way.

Since generally users want to scroll a single layer in one direction, this
patch also introduces a rule that if the resulting movement of a layer is
within 45 degrees of the original scroll input, the bubbling process is
stopped. This makes it possible to reliably scroll a single layer without
affecting any of its parents.

Added new unit tests:
    CCLayerTreeHostImplTest.scrollAxisAlignedRotatedLayer
    CCLayerTreeHostImplTest.scrollNonAxisAlignedRotatedLayer
    CCLayerTreeHostImplTest.scrollScaledLayer
    CCMathUtilTest.smallestAngleBetweenVectors
    CCMathUtilTest.vectorProjection

* platform/graphics/chromium/cc/CCInputHandler.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::scrollBegin):
(WebCore::scrollLayerWithScreenSpaceDelta):
(WebCore):
(WebCore::scrollLayerWithLocalDelta):
(WebCore::CCLayerTreeHostImpl::scrollBy):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCMathUtil.cpp:
(WebCore::CCMathUtil::smallestAngleBetweenVectors):
(WebCore):
(WebCore::CCMathUtil::projectVector):
* platform/graphics/chromium/cc/CCMathUtil.h:
(CCMathUtil):

Source/WebKit/chromium:

Added new tests for verifying transformed layer scrolling:

    CCLayerTreeHostImplTest.scrollAxisAlignedRotatedLayer
    CCLayerTreeHostImplTest.scrollNonAxisAlignedRotatedLayer
    CCLayerTreeHostImplTest.scrollScaledLayer

Also some tests for the introduced math utilities:

    CCMathUtilTest.smallestAngleBetweenVectors
    CCMathUtilTest.vectorProjection

* src/WebCompositorInputHandlerImpl.cpp:
(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):
(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):
* tests/CCLayerTreeHostImplTest.cpp: Adjusted scroll delta in scrollChildBeyondLimit to avoid triggering the 45 degree rule.
* tests/CCLayerTreeHostTest.cpp:
* tests/CCMathUtilTest.cpp:
* tests/WebCompositorInputHandlerImplTest.cpp:
(MockCCInputHandlerClient):
(WebKit::TEST_F):

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

8 years ago[GTK] Add API to set preferred languages to WebKit2 GTK+
carlosgc@webkit.org [Mon, 20 Aug 2012 10:27:21 +0000 (10:27 +0000)]
[GTK] Add API to set preferred languages to WebKit2 GTK+
https://bugs.webkit.org/show_bug.cgi?id=90878

Source/WebCore:

Unreviewed. Fix mac build.

* WebCore.exp.in: Export WebCore::languageDidChange().

Source/WebKit2:

Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitWebContext.cpp:
(webkit_web_context_set_preferred_languages): Public API to set a
list of preferred languages sorted from most desirable to least
desirable.
* UIProcess/API/gtk/WebKitWebContext.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
* UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
(testWebContextLanguages):
(serverCallback):
(beforeAll):
(afterAll):
* UIProcess/API/gtk/tests/WebViewTest.cpp:
(resourceGetDataCallback):
(WebViewTest::mainResourceData): Moved from TestWebKitWebContext
to make it available to all WebViewTests.
* UIProcess/API/gtk/tests/WebViewTest.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::userPreferredLanguagesChanged): Notify our
observer that the languages have been overriden.
* WebProcess/gtk/WebProcessGtk.cpp:
(WebKit::buildAcceptLanguages): Helper function to build the
accept languages as specified in RFC 2616.
(WebKit::setSoupSessionAcceptLanguage): Set the accept-language
property of the default SoupSession.
(WebKit::languageChanged): Update the preferred languages in
SoupSession.
(WebKit::WebProcess::platformInitializeWebProcess): Add an
observer to be notified when the list of preferred languages is
updated.
(WebKit::WebProcess::platformTerminate): Remove the observer added
in platformInitializeWebProcess().

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

8 years agoWeb Inspector: improve standalone test harness to allow attaching to inspector before...
pfeldman@chromium.org [Mon, 20 Aug 2012 10:05:56 +0000 (10:05 +0000)]
Web Inspector: improve standalone test harness to allow attaching to inspector before test.
https://bugs.webkit.org/show_bug.cgi?id=94426

Reviewed by Vsevolod Vlasov.

- User can not "Debug", attach inspector to the front-end and "Continue" test execution.
- You can also assign filter from the query parameter.

* inspector/front-end/test-runner.html:

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

8 years ago[EFL] Mark several inspector tests as flaky
commit-queue@webkit.org [Mon, 20 Aug 2012 09:38:47 +0000 (09:38 +0000)]
[EFL] Mark several inspector tests as flaky
https://bugs.webkit.org/show_bug.cgi?id=94452

Unreviewed EFL gardening. Mark several inspector
tests as flaky to make the bots green.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-20

* platform/efl/TestExpectations:

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

8 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Mon, 20 Aug 2012 09:33:48 +0000 (09:33 +0000)]
Unreviewed GTK gardening.

Moving a couple of WONTFIX accessibility tests into the appropriate
section.

Removing crash expectations for a few accessibility tests that were fixed
in r125920.

Adding a flaky crash expectation for a XFrameOptions http test.

Adding platform-specific baselines for a few css3 compositing tests that fail
differently because of using JavaScriptCore instead of V8.

* platform/gtk/TestExpectations:
* platform/gtk/css3/compositing: Added.
* platform/gtk/css3/compositing/blend-mode-property-expected.txt: Added.
* platform/gtk/css3/compositing/blend-mode-property-parsing-expected.txt: Added.

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

8 years agoAdd mountain lion to build config.
slewis@apple.com [Mon, 20 Aug 2012 09:29:16 +0000 (09:29 +0000)]
Add mountain lion to build config.
https://bugs.webkit.org/show_bug.cgi?id=94441

Reviewed by Adam Barth.

Add Mountain Lion to the build trigger configurations.

* Scripts/webkitpy/common/config/build.py:
(_should_file_trigger_build):
* Scripts/webkitpy/common/config/build_unittest.py:
(ShouldBuildTest):
(ShouldBuildTest.test_should_build):

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

8 years agoWeb Inspector: load scripts panel lazily
pfeldman@chromium.org [Mon, 20 Aug 2012 09:27:22 +0000 (09:27 +0000)]
Web Inspector: load scripts panel lazily
https://bugs.webkit.org/show_bug.cgi?id=94416

Reviewed by Vsevolod Vlasov.

Source/WebCore:

- removes access to WebInspector.panels.scripts and loads it lazily.
- extracts classes to their own files when classes residing in one file belong to different modules
- removes StylesPanel.js in favor of the actual classes it contains

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/compile-front-end.py:
* inspector/front-end/AdvancedSearchController.js:
(WebInspector.AdvancedSearchController.prototype.handleShortcut):
* inspector/front-end/BreakpointsSidebarPane.js:
* inspector/front-end/FilteredItemSelectionDialog.js:
* inspector/front-end/InspectorFrontendAPI.js:
(InspectorFrontendAPI._pendingCommands.isDebuggingEnabled):
(InspectorFrontendAPI.setDebuggingEnabled):
* inspector/front-end/NativeBreakpointsSidebarPane.js: Added.
(WebInspector.NativeBreakpointsSidebarPane):
(WebInspector.NativeBreakpointsSidebarPane.prototype._addListElement):
(WebInspector.NativeBreakpointsSidebarPane.prototype._removeListElement):
(WebInspector.NativeBreakpointsSidebarPane.prototype._reset):
* inspector/front-end/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertyTreeElement.prototype._functionContextMenuEventFired):
* inspector/front-end/ScriptSnippetModel.js:
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.showGoToSourceDialog):
* inspector/front-end/SnippetJavaScriptSourceFrame.js: Added.
(WebInspector.SnippetJavaScriptSourceFrame):
(WebInspector.SnippetJavaScriptSourceFrame.prototype.statusBarItems):
(WebInspector.SnippetJavaScriptSourceFrame.prototype._runButtonClicked):
* inspector/front-end/StyleSheetOutlineDialog.js: Added.
(WebInspector.StyleSheetOutlineDialog):
(WebInspector.StyleSheetOutlineDialog.show):
(WebInspector.StyleSheetOutlineDialog.prototype.itemTitleAt):
(WebInspector.StyleSheetOutlineDialog.prototype.itemSubtitleAt):
(WebInspector.StyleSheetOutlineDialog.prototype.itemKeyAt):
(WebInspector.StyleSheetOutlineDialog.prototype.itemsCount):
(WebInspector.StyleSheetOutlineDialog.prototype.requestItems):
(WebInspector.StyleSheetOutlineDialog.prototype.requestItems.didGetStyleSheet):
(WebInspector.StyleSheetOutlineDialog.prototype.selectItem):
(WebInspector.StyleSheetOutlineDialog.prototype.rewriteQuery):
* inspector/front-end/StyleSource.js: Renamed from Source/WebCore/inspector/front-end/StylesPanel.js.
(WebInspector.StylesUISourceCodeProvider):
(WebInspector.StylesUISourceCodeProvider.prototype.uiSourceCodes):
(WebInspector.StylesUISourceCodeProvider.prototype.rawLocationToUILocation):
(WebInspector.StylesUISourceCodeProvider.prototype.uiLocationToRawLocation):
(WebInspector.StylesUISourceCodeProvider.prototype._populate):
(WebInspector.StylesUISourceCodeProvider.prototype._resourceAdded):
(WebInspector.StylesUISourceCodeProvider.prototype.reset):
(WebInspector.StyleSource):
(WebInspector.StyleSource.prototype.isEditable):
(WebInspector.StyleSource.prototype.workingCopyCommitted):
(WebInspector.StyleSource.prototype.workingCopyChanged):
(WebInspector.StyleSource.prototype._callOrSetTimeout):
(WebInspector.StyleSource.prototype._commitIncrementalEdit):
(WebInspector.StyleSource.prototype._clearIncrementalUpdateTimer):
(WebInspector.InspectorStyleSource):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._panelDescriptors):
(WebInspector._registerShortcuts):
(WebInspector.documentKeyDown):
(WebInspector._showAnchorLocation):

Source/WebKit/chromium:

* WebKit.gyp:

LayoutTests:

This change removes access to WebInspector.panels.scripts and loads it lazily.

* http/tests/inspector/debugger-test.js:
(initialize_DebuggerTest):
* inspector/debugger/scripts-panel.html:
* inspector/debugger/scripts-sorting.html:
* inspector/filtered-item-selection-dialog-filtering.html:
* inspector/styles/edit-inspector-stylesheet.html:
* inspector/tabbed-editors-history.html:

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

8 years ago[EFL] Move CSS 3 compositing tests to TestExpectations
commit-queue@webkit.org [Mon, 20 Aug 2012 09:16:41 +0000 (09:16 +0000)]
[EFL] Move CSS 3 compositing tests to TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=94451

Unreviewed EFL gardening. Skip css3/compositing test
cases for EFL port until we turn on CSS_COMPOSITING
compile flag.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-20

* platform/efl/TestExpectations:

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

8 years ago[EFL] Get rid of pango backend support once harfbuzz-ng is working
commit-queue@webkit.org [Mon, 20 Aug 2012 09:09:26 +0000 (09:09 +0000)]
[EFL] Get rid of pango backend support once harfbuzz-ng is working
https://bugs.webkit.org/show_bug.cgi?id=92102

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-08-20
Reviewed by Kenneth Rohde Christiansen.

.:

Removing choice of font backend, Pango detection not required any more.

* Source/cmake/FindPango.cmake: Removed.
* Source/cmake/LibFindMacros.cmake: Removed.
* Source/cmake/OptionsEfl.cmake: Removing choice of font backend.

Source/WebCore:

Removing support for Pango complex font rendering now that we HarfBuzz.

No new tests, no change in behavior.

* PlatformEfl.cmake: Removing Pango specific includes and libraries.

Source/WebKit:

Removing pango-specific includes and libraries.

* PlatformEfl.cmake: Pango sections removed.

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

8 years agoWeb Inspector: prepare scripts panel to be lazily loaded
pfeldman@chromium.org [Mon, 20 Aug 2012 09:00:16 +0000 (09:00 +0000)]
Web Inspector: prepare scripts panel to be lazily loaded
https://bugs.webkit.org/show_bug.cgi?id=94423

Reviewed by Vsevolod Vlasov.

Source/WebCore:

- makes scripts panel read workspace data upon creation
- moves pause on script state management into the debugger model
- updates frontend API to use debugger model, not scripts panel

* inspector/front-end/DebuggerModel.js:
(WebInspector.DebuggerModel.prototype.debuggerEnabled):
(WebInspector.DebuggerModel.prototype.disableDebugger):
(WebInspector.DebuggerModel.prototype._debuggerWasEnabled):
(WebInspector.DebuggerModel.prototype._pauseOnExceptionStateChanged):
(WebInspector.DebuggerModel.prototype.get _debuggerWasDisabled):
* inspector/front-end/InspectorFrontendAPI.js:
(InspectorFrontendAPI._pendingCommands.isDebuggingEnabled):
(InspectorFrontendAPI.setDebuggingEnabled):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel):
(WebInspector.ScriptsPanel.prototype._debuggerWasEnabled):
(WebInspector.ScriptsPanel.prototype._debuggerWasDisabled):
(WebInspector.ScriptsPanel.prototype._reset):
(WebInspector.ScriptsPanel.prototype.canShowAnchorLocation):
(WebInspector.ScriptsPanel.prototype._updateDebuggerButtons):
(WebInspector.ScriptsPanel.prototype._enableDebugging):
(WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions):
(WebInspector.ScriptsPanel.prototype.showGoToSourceDialog):
* inspector/front-end/inspector.js:
(WebInspector.documentKeyDown):

LayoutTests:

* http/tests/inspector/debugger-test.js:
(initialize_DebuggerTest.InspectorTest.finishDebuggerTest.disableDebugger):
* inspector/debugger/debugger-autocontinue-on-syntax-error.html:
* inspector/debugger/debugger-pause-in-internal.html:
* inspector/debugger/debugger-pause-on-exception.html:
* inspector/debugger/scripts-panel-expected.txt:

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

8 years ago[BlackBerry] Adapt to changes in the platform media player API
commit-queue@webkit.org [Mon, 20 Aug 2012 08:47:04 +0000 (08:47 +0000)]
[BlackBerry] Adapt to changes in the platform media player API
https://bugs.webkit.org/show_bug.cgi?id=94329
PR #194237

Patch by Robin Cao <robin.cao@torchmobile.com.cn> on 2012-08-20
Reviewed by Antonio Gomes.

The interface to platform's media player has changed from MMRPlayer
to PlatformPlayer. This patch adapts to this change.

And we also decided to postpone the creation of PlatformPlayer until
the loading started. This is needed because we may create different
types of player for different media sources.

This is a refactor, no new tests.

* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::getSupportedTypes):
(WebCore::MediaPlayerPrivate::supportsType):
(WebCore::MediaPlayerPrivate::notifyAppActivatedEvent):
(WebCore::MediaPlayerPrivate::setCertificatePath):
(WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::load):
(WebCore::MediaPlayerPrivate::cancelLoad):
(WebCore::MediaPlayerPrivate::prepareToPlay):
(WebCore::MediaPlayerPrivate::play):
(WebCore::MediaPlayerPrivate::pause):
(WebCore::MediaPlayerPrivate::naturalSize):
(WebCore::MediaPlayerPrivate::hasVideo):
(WebCore::MediaPlayerPrivate::hasAudio):
(WebCore::MediaPlayerPrivate::duration):
(WebCore::MediaPlayerPrivate::currentTime):
(WebCore::MediaPlayerPrivate::seek):
(WebCore::MediaPlayerPrivate::setRate):
(WebCore::MediaPlayerPrivate::paused):
(WebCore::MediaPlayerPrivate::setVolume):
(WebCore::MediaPlayerPrivate::maxTimeSeekable):
(WebCore::MediaPlayerPrivate::buffered):
(WebCore::MediaPlayerPrivate::paint):
(WebCore::MediaPlayerPrivate::hasAvailableVideoFrame):
(WebCore::MediaPlayerPrivate::movieLoadType):
(WebCore::MediaPlayerPrivate::setAllowPPSVolumeUpdates):
(WebCore::MediaPlayerPrivate::updateStates):
(WebCore):
(WebCore::MediaPlayerPrivate::onStateChanged):
(WebCore::MediaPlayerPrivate::onMediaStatusChanged):
(WebCore::MediaPlayerPrivate::onError):
(WebCore::MediaPlayerPrivate::waitMetadataTimerFired):
(WebCore::MediaPlayerPrivate::showErrorDialog):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
(MediaPlayerPrivate):

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

8 years agoUnreviewed gardening, remove FAIL expectation fixed by r126006
allan.jensen@nokia.com [Mon, 20 Aug 2012 08:23:56 +0000 (08:23 +0000)]
Unreviewed gardening, remove FAIL expectation fixed by r126006

* platform/chromium/TestExpectations:

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

8 years ago[chromium] context-menu.html fails on Chromium Mac
allan.jensen@nokia.com [Mon, 20 Aug 2012 08:14:34 +0000 (08:14 +0000)]
[chromium] context-menu.html fails on Chromium Mac
https://bugs.webkit.org/show_bug.cgi?id=94367

Reviewed by Kenneth Rohde Christiansen.

Set editing behaviour explicitly so the test behaves the same independent of host OS.

* touchadjustment/context-menu.html:

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

8 years ago[V8] Move contextDebugId() and setContextDebugId() from V8Proxy to ScriptController
haraken@chromium.org [Mon, 20 Aug 2012 07:53:33 +0000 (07:53 +0000)]
[V8] Move contextDebugId() and setContextDebugId() from V8Proxy to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=94446

Reviewed by Adam Barth.

To kill V8Proxy, we can move contextDebugId() and setContextDebugId()
from V8Proxy to ScriptController.

No tests. No change in behavior.

Source/WebCore:

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::setContextDebugId):
(WebCore):
(WebCore::ScriptController::contextDebugId):
* bindings/v8/ScriptController.h:
(ScriptController):
* bindings/v8/V8IsolatedContext.cpp:
(WebCore::V8IsolatedContext::V8IsolatedContext):
* bindings/v8/V8Proxy.cpp:
* bindings/v8/V8Proxy.h:
(V8Proxy):

Source/WebKit/chromium:

* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::didCreateScriptContext):

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

8 years ago[V8] Move V8Proxy::newInstance() to V8ObjectConstructor
haraken@chromium.org [Mon, 20 Aug 2012 07:47:27 +0000 (07:47 +0000)]
[V8] Move V8Proxy::newInstance() to V8ObjectConstructor
https://bugs.webkit.org/show_bug.cgi?id=94443

Reviewed by Adam Barth.

To kill V8Proxy, this patch moves V8Proxy::newInstance() to
V8ObjectConstructor::newInstanceInFrame().
In addition, this patch does the following things:

- For consistency with V8ObjectConstructor::newInstanceInFrame(),
this patch inserts an if(v8::V8::IsDead()) check to just after
Function::NewInstance(). The check is done by V8Binding::assertIfV8IsDead().

- To avoid #include circular dependency, this patch de-inline
V8ObjectConstructor::newInstance()s. I didn't observe any perf regression.
I don't think these methods are worth being inlined, because
these methods call Function::NewInstance(), which is not inlined
and calls a bunch of heavy mehtods in V8.

No tests. No change in behavior.

* bindings/v8/NPV8Object.cpp:
(_NPN_Construct):
* bindings/v8/V8Binding.cpp:
(WebCore::assertIfV8IsDead):
(WebCore):
* bindings/v8/V8Binding.h:
(WebCore):
* bindings/v8/V8ObjectConstructor.cpp:
(WebCore::V8ObjectConstructor::newInstance):
(WebCore):
(WebCore::V8ObjectConstructor::newInstanceInFrame):
* bindings/v8/V8ObjectConstructor.h:
(WebCore):
(V8ObjectConstructor):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::runScript):
(WebCore::V8Proxy::instrumentedCallFunction):

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

8 years ago[Tests] time-multiple-fields-appearance-basic.html and time-multiple-fields-appearanc...
yosin@chromium.org [Mon, 20 Aug 2012 07:38:54 +0000 (07:38 +0000)]
[Tests] time-multiple-fields-appearance-basic.html and time-multiple-fields-appearance-pseudo-elements.html are failed on Chromium Mac
https://bugs.webkit.org/show_bug.cgi?id=94439

Unreviewed. Temporary disabled these tests.

* platform/chromium/TestExpectations: Add entries for these tests.

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

8 years ago[V8] Move V8Proxy::m_extensions to ScriptController
haraken@chromium.org [Mon, 20 Aug 2012 07:33:10 +0000 (07:33 +0000)]
[V8] Move V8Proxy::m_extensions to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=94444

Reviewed by Adam Barth.

Source/WebCore:

To kill V8Proxy, this patch moves V8Proxy::m_extensions to ScriptController.
This patch also renames extensions() to registeredExtensions() for clarification.

No tests. No change in behavior.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::registeredExtensions):
(WebCore):
(WebCore::ScriptController::registerExtensionIfNeeded):
* bindings/v8/ScriptController.h:
(WebCore):
(ScriptController):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::createNewContext):
* bindings/v8/V8Proxy.cpp:
* bindings/v8/V8Proxy.h:
(WebCore):
(V8Proxy):

Source/WebKit/chromium:

To kill V8Proxy, this patch moves V8Proxy::m_extensions to ScriptController.

No tests. No change in behavior.

* src/WebScriptController.cpp:
(WebKit::WebScriptController::registerExtension):

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

8 years agoWeb Inspector: toolbar causes 8 reflows upon opening
pfeldman@chromium.org [Mon, 20 Aug 2012 07:21:16 +0000 (07:21 +0000)]
Web Inspector: toolbar causes 8 reflows upon opening
https://bugs.webkit.org/show_bug.cgi?id=94422

Reviewed by Yury Semikhatsky.

Toolbar's overflow code causes inspector to do 8 reflows upon opening.
Fixing it via introducing batch toolbar update.

* inspector/front-end/Toolbar.js:
(WebInspector.Toolbar):
(WebInspector.Toolbar.prototype.setCoalescingUpdate):
(WebInspector.Toolbar.prototype._updateDropdownButtonAndHideDropdown):
* inspector/front-end/inspector.css:
(body.compact .toolbar-icon):
(body.compact .toolbar-icon.custom-toolbar-icon):
(body.compact .toolbar-item:active .toolbar-icon):
(body.compact .toolbar-label):
(body.compact .toolbar-item.resources .toolbar-icon):
(body.compact .toolbar-item.network .toolbar-icon):
(body.compact .toolbar-item.scripts .toolbar-icon):
(body.compact .toolbar-item.timeline .toolbar-icon):
(body.compact .toolbar-item.profiles .toolbar-icon):
(body.compact .toolbar-item.audits .toolbar-icon):
(body.compact .toolbar-item.console .toolbar-icon):
* inspector/front-end/inspector.js:
(WebInspector.get _setCompactMode):
(WebInspector.windowResize):

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

8 years ago[V8] Replace proxy()->windowShell() in ScriptController with windowShell()
haraken@chromium.org [Mon, 20 Aug 2012 06:51:59 +0000 (06:51 +0000)]
[V8] Replace proxy()->windowShell() in ScriptController with windowShell()
https://bugs.webkit.org/show_bug.cgi?id=94445

Reviewed by Adam Barth.

Now ScriptController owns windowShell. So ScriptController doesn't
need to get windowShell through V8Proxy.

No tests. No change in behavior.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::updateSecurityOrigin):
(WebCore::ScriptController::haveInterpreter):
(WebCore::ScriptController::enableEval):
(WebCore::ScriptController::disableEval):
(WebCore::ScriptController::updateDocument):
(WebCore::ScriptController::namedItemAdded):
(WebCore::ScriptController::namedItemRemoved):

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

8 years agoThe relationship between abstract values and structure transition watchpoints should...
fpizlo@apple.com [Mon, 20 Aug 2012 06:11:24 +0000 (06:11 +0000)]
The relationship between abstract values and structure transition watchpoints should be rationalized
https://bugs.webkit.org/show_bug.cgi?id=94205

Reviewed by Geoffrey Garen.

This patch does a number of things related to the handling of the abstract values
arrising from values with structures known to be watchpointable:

- This rationalizes the relationship between the structure that we know an object
  to have *right now* based on having executed a check against that structure, and
  the structure that we know the object could have *in the future* based on a type
  check executed in the past over a structure that was watchpointable.

- We use the above to assert that structure transition watchpoints are being used
  soundly.

- We use the above to strength reduce CheckStructure into StructureTransitionWatchpoint
  whenever possible.

- This rationalizes the handling of CFA over constants that appeared in the bytecode.
  If at compile-time the constant has a watchpointable structure, then we can prove
  what structures it may have in the future. The analysis uses this to both assert
  that structure transition watchpoints are being used correctly, and to find
  opportunities for using them more aggressively.

The net effect of all of these changes is that OSR entry should work more smoothly.
It may also be a slight win due to strength reductions, though most of those strength
reductions would have already been done by the parser and the structure check hoister.

* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::beginBasicBlock):
(JSC::DFG::AbstractState::execute):
* dfg/DFGAbstractValue.h:
(DFG):
(JSC::DFG::AbstractValue::clear):
(JSC::DFG::AbstractValue::isClear):
(JSC::DFG::AbstractValue::makeTop):
(JSC::DFG::AbstractValue::clobberStructures):
(JSC::DFG::AbstractValue::isTop):
(JSC::DFG::AbstractValue::setFuturePossibleStructure):
(AbstractValue):
(JSC::DFG::AbstractValue::filterFuturePossibleStructure):
(JSC::DFG::AbstractValue::setMostSpecific):
(JSC::DFG::AbstractValue::set):
(JSC::DFG::AbstractValue::operator==):
(JSC::DFG::AbstractValue::merge):
(JSC::DFG::AbstractValue::filter):
(JSC::DFG::AbstractValue::filterValueByType):
(JSC::DFG::AbstractValue::validateType):
(JSC::DFG::AbstractValue::validate):
(JSC::DFG::AbstractValue::checkConsistency):
(JSC::DFG::AbstractValue::dump):
* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::checkStructureLoadElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
* dfg/DFGNode.h:
(JSC::DFG::Node::convertToStructureTransitionWatchpoint):
(Node):
(JSC::DFG::Node::hasStructure):
* dfg/DFGNodeType.h:
(DFG):
* dfg/DFGOSREntry.cpp:
(JSC::DFG::prepareOSREntry):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::convertLastOSRExitToForward):
(JSC::DFG::SpeculativeJIT::forwardSpeculationWatchpoint):
(DFG):
(JSC::DFG::SpeculativeJIT::speculationWatchpointWithConditionalDirection):
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):
(JSC::DFG::SpeculativeJIT::speculateArray):
* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureAbstractValue.h: Added.
(DFG):
(StructureAbstractValue):
(JSC::DFG::StructureAbstractValue::StructureAbstractValue):
(JSC::DFG::StructureAbstractValue::clear):
(JSC::DFG::StructureAbstractValue::makeTop):
(JSC::DFG::StructureAbstractValue::top):
(JSC::DFG::StructureAbstractValue::add):
(JSC::DFG::StructureAbstractValue::addAll):
(JSC::DFG::StructureAbstractValue::contains):
(JSC::DFG::StructureAbstractValue::isSubsetOf):
(JSC::DFG::StructureAbstractValue::doesNotContainAnyOtherThan):
(JSC::DFG::StructureAbstractValue::isSupersetOf):
(JSC::DFG::StructureAbstractValue::filter):
(JSC::DFG::StructureAbstractValue::isClear):
(JSC::DFG::StructureAbstractValue::isTop):
(JSC::DFG::StructureAbstractValue::isClearOrTop):
(JSC::DFG::StructureAbstractValue::isNeitherClearNorTop):
(JSC::DFG::StructureAbstractValue::size):
(JSC::DFG::StructureAbstractValue::at):
(JSC::DFG::StructureAbstractValue::operator[]):
(JSC::DFG::StructureAbstractValue::last):
(JSC::DFG::StructureAbstractValue::speculationFromStructures):
(JSC::DFG::StructureAbstractValue::hasSingleton):
(JSC::DFG::StructureAbstractValue::singleton):
(JSC::DFG::StructureAbstractValue::operator==):
(JSC::DFG::StructureAbstractValue::dump):
(JSC::DFG::StructureAbstractValue::topValue):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):

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

8 years ago[V8] Move V8Proxy::callFunction() to ScriptController
haraken@chromium.org [Mon, 20 Aug 2012 05:18:56 +0000 (05:18 +0000)]
[V8] Move V8Proxy::callFunction() to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=94437

Reviewed by Adam Barth.

To kill V8Proxy, this patch moves callFunction() from V8Proxy to ScriptController.

No tests. No change in behavior.

* bindings/v8/DOMTransaction.cpp:
(WebCore::DOMTransaction::callFunction):
* bindings/v8/NPV8Object.cpp:
(_NPN_Invoke):
(_NPN_InvokeDefault):
* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/v8/ScheduledAction.h:
(WebCore):
(ScheduledAction):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::callFunction):
(WebCore):
(WebCore::ScriptController::callFunctionEvenIfScriptDisabled):
* bindings/v8/ScriptController.h:
(ScriptController):
* bindings/v8/V8EventListener.cpp:
(WebCore::V8EventListener::callListenerFunction):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::callListenerFunction):
* bindings/v8/V8Proxy.cpp:
* bindings/v8/V8Proxy.h:
(V8Proxy):
* bindings/v8/custom/V8HTMLDocumentCustom.cpp:
(WebCore::V8HTMLDocument::openCallback):

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

8 years ago[Forms] Set SpinButtonElement free from HTMLInputElement
yosin@chromium.org [Mon, 20 Aug 2012 05:11:05 +0000 (05:11 +0000)]
[Forms] Set SpinButtonElement free from HTMLInputElement
https://bugs.webkit.org/show_bug.cgi?id=93941

Reviewed by Kent Tamura.

This patch removes dependency to HTMLInputElement from SpinButtonElement.

Functionalities used to be calling HTMLInputElement functions are
replaced to calling functions SpinButtonOwner class.

* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::focusAndSelectSpinButtonOwner): Moved functionality from SpinButtonElement::defaultEventHandler.
(WebCore::TextFieldInputType::shouldSpinButtonRespondToMouseEvents): Moved code from SpinButtonElement::willRespondToMouseClickEvents
(WebCore::TextFieldInputType::shouldSpinButtonRespondToWheelEvents): Moved code from SpinButtonElement::forwardEvent
* html/TextFieldInputType.h:
(TextFieldInputType):
* html/TimeInputType.cpp:
(WebCore::TimeInputType::DateTimeEditControlOwnerImpl::focusAndSelectEditControlOwner): Moved functionality from SpinButtonElement::defaultEventHandler.
(WebCore::TimeInputType::DateTimeEditControlOwnerImpl::isEditControlOwnerFocused): Added for DateTimeEditElement::shouldSpinButtonRespondToWheelEvents.
* html/TimeInputType.h:
* html/shadow/DateTimeEditElement.cpp:
(WebCore::DateTimeEditElement::focusAndSelectSpinButtonOwner): Added for SpinButtonElementOwner class change.
(WebCore::DateTimeEditElement::shouldSpinButtonRespondToMouseEvents): ditto
(WebCore::DateTimeEditElement::shouldSpinButtonRespondToWheelEvents): ditto
* html/shadow/DateTimeEditElement.h:
(EditControlOwner): Added new virtual function declarations for SpinButtonElementOwner class change.
(DateTimeEditElement): Added new function declarations for SpinButtonElementOwner.
* html/shadow/SpinButtonElement.cpp:
(WebCore::SpinButtonElement::defaultEventHandler): Changed to use SpinButtonElementOwner instead of HTMLInputElement.
(WebCore::SpinButtonElement::forwardEvent): ditto
(WebCore::SpinButtonElement::willRespondToMouseMoveEvents): ditto
(WebCore::SpinButtonElement::willRespondToMouseClickEvents): ditto
(WebCore::SpinButtonElement::step): ditto
(WebCore::SpinButtonElement::shouldRespondToMouseEvents): Added helper function for calling SpinButtonOwner instance.
* html/shadow/SpinButtonElement.h:
(SpinButtonOwner): Added new virtual function declarations.
(SpinButtonElement):

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

8 years ago[Tests] time-multiple-fields-appearance-basic.html and time-multiple-fields-appearanc...
yosin@chromium.org [Mon, 20 Aug 2012 04:52:56 +0000 (04:52 +0000)]
[Tests] time-multiple-fields-appearance-basic.html and time-multiple-fields-appearance-pseudo-elements.html are failed on Chromium Mac
https://bugs.webkit.org/show_bug.cgi?id=94439

Reviewed by Kent Tamura.

Source/WebCore:

This patch disabled CSS selector for Firefox compatibility applied to
multiple fields time input UI, because it is supposed to apply text
field rather than multiple fields.

This patch allows us to have same appearance among Chromium-Linux,
Mac and Win.

No new tests. Following existing tests cover this change:
  fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic.html
  fast/forms/time-multiple-fields/time-multiple-fields-appearance-disabled-readonly.html
  fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-classes.html
  fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements.html
  fast/forms/time-multiple-fields/time-multiple-fields-appearance-style.html

* css/themeWin.css: Exclude input[type="time"] selector if ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS
enabled.

LayoutTests:

This patch updates expected images of multiple fields time input UI for
Chromium-Linux and CSS selectors for expected HTML file for changing
of Source/WebCore/css/themeWin.css.

* fast/forms/time-multiple-fields/resources/time-multiple-fields-appearance.css:
(.host): Changed padding property.
(.ampmField): Remove wrong property.
(.hourField): ditto
(.millisecondField): ditto
(.minuteField): ditto
(.secondField): ditto
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-disabled-readonly-expected.png:
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-disabled-readonly-expected.txt:
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-classes-expected.png:
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-classes-expected.txt:
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-style-expected.png:
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-style-expected.txt:
* platform/chromium/TestExpectations: Remove Chromium-Mac disabled entries.

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

8 years ago[V8] Rename SafeAllocation to V8ObjectConstructor
haraken@chromium.org [Mon, 20 Aug 2012 04:39:48 +0000 (04:39 +0000)]
[V8] Rename SafeAllocation to V8ObjectConstructor
https://bugs.webkit.org/show_bug.cgi?id=94436

Reviewed by Adam Barth.

For clarification.

No tests. No change in behavior.

* UseV8.cmake:
* WebCore.gypi:
* bindings/v8/ScriptFunctionCall.cpp:
(WebCore::ScriptFunctionCall::construct):
* bindings/v8/V8Binding.cpp:
(WebCore::createRawTemplate):
* bindings/v8/V8Binding.h:
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::installDOMWindow):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::instantiateV8Object):
* bindings/v8/V8NPObject.cpp:
(WebCore::createV8ObjectForNPObject):
* bindings/v8/V8ObjectConstructor.cpp: Renamed from Source/WebCore/bindings/v8/SafeAllocation.cpp.
(WebCore):
(WebCore::V8ObjectConstructor::isValidConstructorMode):
* bindings/v8/V8ObjectConstructor.h: Renamed from Source/WebCore/bindings/v8/SafeAllocation.h.
(WebCore):
(ConstructorMode):
(WebCore::ConstructorMode::ConstructorMode):
(WebCore::ConstructorMode::~ConstructorMode):
(WebCore::ConstructorMode::current):
(V8ObjectConstructor):
(WebCore::V8ObjectConstructor::newInstance):
* bindings/v8/V8PerContextData.cpp:
(WebCore::V8PerContextData::createWrapperFromCacheSlowCase):
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
* bindings/v8/custom/V8InjectedScriptManager.cpp:
(WebCore::createInjectedScriptHostV8Wrapper):
* bindings/v8/custom/V8ScriptProfileCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8ScriptProfileNodeCustom.cpp:
(WebCore::toV8):

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

8 years ago[chromium] Put webkit compositor binding files in separate conditionally included...
commit-queue@webkit.org [Mon, 20 Aug 2012 04:32:37 +0000 (04:32 +0000)]
[chromium] Put webkit compositor binding files in separate conditionally included gyp section
https://bugs.webkit.org/show_bug.cgi?id=94392

Patch by James Robinson <jamesr@chromium.org> on 2012-08-19
Reviewed by Dirk Pranke.

This allows the use_libcc_for_compositor gyp variable to control whether the webkit bindings are pulled from the
WebKit repository or an external target.

* WebKit.gyp:
* WebKit.gypi:

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

8 years ago[V8] Move m_windowShell from V8Proxy to ScriptController
haraken@chromium.org [Mon, 20 Aug 2012 04:32:15 +0000 (04:32 +0000)]
[V8] Move m_windowShell from V8Proxy to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=94438

Reviewed by Adam Barth.

m_windowShell should be owned by ScriptController.
After this change, I can move a bunch of V8Proxy methods
that access windowShell() from V8Proxy to ScriptController.

No tests. No change in behavior.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::ScriptController):
* bindings/v8/ScriptController.h:
(WebCore):
(WebCore::ScriptController::windowShell):
(ScriptController):
* bindings/v8/V8Binding.h:
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::V8Proxy):
(WebCore::V8Proxy::windowShell):
(WebCore):
* bindings/v8/V8Proxy.h:
(WebCore):
(WebCore::V8Proxy::frame):
(V8Proxy):

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

8 years agoDo not allocate SQLiteDatabase's m_openErrorMessage until its needed
benjamin@webkit.org [Mon, 20 Aug 2012 04:03:24 +0000 (04:03 +0000)]
Do not allocate SQLiteDatabase's m_openErrorMessage until its needed
https://bugs.webkit.org/show_bug.cgi?id=94434

Reviewed by Andreas Kling.

Previously, m_openErrorMessage was initialized from a static literal string whenever
the database is not open.

This patch changes the way we use m_openErrorMessage to only allocate a string in the
few cases where we need it. If there is no error message, we fallback to the previous
default string.

The goal is to prevent allocating the string unless needed. That saves initialization time
and memory.

* platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::SQLiteDatabase):
(WebCore::SQLiteDatabase::close):
(WebCore::SQLiteDatabase::lastErrorMsg):

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

8 years agoUse initialization from literal for HTML Input type names
benjamin@webkit.org [Mon, 20 Aug 2012 03:44:23 +0000 (03:44 +0000)]
Use initialization from literal for HTML Input type names
https://bugs.webkit.org/show_bug.cgi?id=94421

Reviewed by Kent Tamura.

AtomicString's initialization from literal is faster and use less memory.

* html/InputType.cpp:
(WebCore::InputTypeNames::button):
(WebCore::InputTypeNames::checkbox):
(WebCore::InputTypeNames::color):
(WebCore::InputTypeNames::date):
(WebCore::InputTypeNames::datetime):
(WebCore::InputTypeNames::datetimelocal):
(WebCore::InputTypeNames::email):
(WebCore::InputTypeNames::file):
(WebCore::InputTypeNames::hidden):
(WebCore::InputTypeNames::image):
(WebCore::InputTypeNames::month):
(WebCore::InputTypeNames::number):
(WebCore::InputTypeNames::password):
(WebCore::InputTypeNames::radio):
(WebCore::InputTypeNames::range):
(WebCore::InputTypeNames::reset):
(WebCore::InputTypeNames::search):
(WebCore::InputTypeNames::submit):
(WebCore::InputTypeNames::telephone):
(WebCore::InputTypeNames::text):
(WebCore::InputTypeNames::time):
(WebCore::InputTypeNames::url):
(WebCore::InputTypeNames::week):

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

8 years agoRemove the static Strings used for outputting values of CSS_ATTR, CSS_COUNTER, CSS_RECT
benjamin@webkit.org [Mon, 20 Aug 2012 03:39:59 +0000 (03:39 +0000)]
Remove the static Strings used for outputting values of CSS_ATTR, CSS_COUNTER, CSS_RECT
https://bugs.webkit.org/show_bug.cgi?id=94420

Reviewed by Kentaro Hara.

Use the new StringBuilder::appendLiteral() instead of keeping some WTF::String in
memory.

The patch reduces memory usage.
It also reduces the binary size (-1672 bytes on x86_64).
I did not measure any difference in performance.

* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::customCssText):

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

8 years agoSource/WebCore: parse CSS attribute -webkit-blend-mode
commit-queue@webkit.org [Mon, 20 Aug 2012 03:33:41 +0000 (03:33 +0000)]
Source/WebCore: parse CSS attribute -webkit-blend-mode
https://bugs.webkit.org/show_bug.cgi?id=94024

Patch by Rik Cabanier <cabanier@adobe.com> on 2012-08-19
Reviewed by Dirk Schulze.

Added parsing and general CSS handling of -webkit-blend-mode per http://www.w3.org/TR/2012/WD-compositing-20120816/

Tests: css3/compositing/blend-mode-property-parsing-invalid.html
       css3/compositing/blend-mode-property-parsing.html
       css3/compositing/blend-mode-property.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/CSSValueKeywords.in:
* css/StyleBuilder.cpp:
(WebCore::StyleBuilder::StyleBuilder):
* rendering/RenderLayer.h:
(RenderLayer):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore):
(WebCore::RenderLayerBacking::updateLayerBlendMode):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::setBlendMode):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff):
* rendering/style/RenderStyle.h:
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
* rendering/style/StyleRareNonInheritedData.h:
(StyleRareNonInheritedData):

LayoutTests: parse CSS attribute -webkit-blend-mode
https://bugs.webkit.org/show_bug.cgi?id=94024

Patch by Rik Cabanier <cabanier@adobe.com> on 2012-08-19
Reviewed by Dirk Schulze.

Added parsing and general CSS handling of -webkit-blend-mode per http://www.w3.org/TR/2012/WD-compositing-20120816/

* css3/compositing: Added.
* css3/compositing/blend-mode-property-expected.txt: Added.
* css3/compositing/blend-mode-property-parsing-expected.txt: Added.
* css3/compositing/blend-mode-property-parsing-invalid-expected.txt: Added.
* css3/compositing/blend-mode-property-parsing-invalid.html: Added.
* css3/compositing/blend-mode-property-parsing.html: Added.
* css3/compositing/blend-mode-property.html: Added.
* css3/compositing/script-tests: Added.
* css3/compositing/script-tests/blend-mode-property-parsing-invalid.js: Added.
(testInvalidFilterRule):
* css3/compositing/script-tests/blend-mode-property-parsing.js: Added.
(jsWrapperClass):
(shouldBeType):
(testFilterRule):
* css3/compositing/script-tests/blend-mode-property.js: Added.

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

8 years agoDOM mutation against including <link> shouldn't trigger pending HTML parser.
morrita@google.com [Mon, 20 Aug 2012 02:56:18 +0000 (02:56 +0000)]
DOM mutation against including <link> shouldn't trigger pending HTML parser.
https://bugs.webkit.org/show_bug.cgi?id=93641

Reviewed by Ryosuke Niwa.

Source/WebCore:

HTMLLinkElement::removedFrom() invoked Document::removePendingSheet(), which can trigger
HTMLParser that can mutate DOM tree. DOM mutation reentrancy on like this is problematic and
should be prohibited.

This change add an variation of Document::removePendingSheet() which postpones the notification
which triggers DOM mutation, and flush such pending notifications at the end of ongoing mutation.

Test: http/tests/loading/remove-child-triggers-parser.html

* dom/ContainerNodeAlgorithms.h:
(WebCore::ChildNodeRemovalNotifier::notify): Flushed pending notifications at the end.
* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::removePendingSheet): Added RemovePendingSheetNotificationType parameter.
(WebCore):
(WebCore::Document::didRemoveAllPendingStylesheet): Extracted from removePendingSheet()
* dom/Document.h:
(Document):
(WebCore::Document::setNeedsNotifyRemoveAllPendingStylesheet): A flag setter.
(WebCore::Document::notifyRemovePendingSheetIfNeeded):
(WebCore):
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::removedFrom): Switched to use "notification later" version of removePendingSheet()
(WebCore::HTMLLinkElement::removePendingSheet): Added RemovePendingSheetNotificationType parameter.
* html/HTMLLinkElement.h:

LayoutTests:

Note that the test content need to be such cryptic because HTML parser is involving the
captured bug and adding explanations can affect the behavior then mask the bug.

* http/tests/loading/remove-child-triggers-parser-expected.txt: Added.
* http/tests/loading/remove-child-triggers-parser.html: Added.

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

8 years ago[EFL] Gardening for fast/forms/range/thumbslider-no-parent-slider.html
commit-queue@webkit.org [Mon, 20 Aug 2012 02:30:04 +0000 (02:30 +0000)]
[EFL] Gardening for fast/forms/range/thumbslider-no-parent-slider.html
https://bugs.webkit.org/show_bug.cgi?id=94334

Unreviewed gardening.

Slider thumb can not be displayed without parent slider because
current theme of EFL does not display slider thumb separately.

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-08-19

* platform/efl/TestExpectations:
* platform/efl/fast/forms/range/thumbslider-no-parent-slider-expected.png: Removed.
* platform/efl/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Removed.

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

8 years ago[Tests] time-multiple-fields-appearance-basic.html and time-multiple-fields-appearanc...
yosin@chromium.org [Mon, 20 Aug 2012 02:25:03 +0000 (02:25 +0000)]
[Tests] time-multiple-fields-appearance-basic.html and time-multiple-fields-appearance-pseudo-elements.html are failed on Chromium Windows
https://bugs.webkit.org/show_bug.cgi?id=94297

Reviewed by Kent Tamura.

This patch updates a logic for detcting multiple fields time input UI
has second field or not.

* fast/forms/time-multiple-fields/resources/time-multiple-fields-appearance.js:
(checkHasShortFormat): Added "<br>" between input elements to avoid rounding error
on calculating rendering width of input elements. When input elements are rendered on
same baseline, width of first one is 126px and second is 125px.
* platform/chromium/TestExpectations: Changed bug id of entries Chromium-Mac specific bug entry, bug 94339.

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

8 years agoRemove RefPtr from HTMLProgressElement::m_value
haraken@chromium.org [Mon, 20 Aug 2012 01:31:23 +0000 (01:31 +0000)]
Remove RefPtr from HTMLProgressElement::m_value
https://bugs.webkit.org/show_bug.cgi?id=94336

Reviewed by Kent Tamura.

To avoid reference cycles of RefPtr<Node>s, we want to remove
unnecessary RefPtr<Node>s. The rationale is described in bug 94324.

HTMLProgressElement::m_value does not need to be a RefPtr<Node>, because
it is guaranteed to point to a shadow DOM tree of the HTMLProgressElement
node, which is guaranteed to exist in the subtree of the HTMLProgressElement node.

No tests. No change in behavior.

* html/HTMLProgressElement.cpp:
(WebCore::HTMLProgressElement::HTMLProgressElement):
(WebCore::HTMLProgressElement::createShadowSubtree):
* html/HTMLProgressElement.h:

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

8 years agoRemove RefPtr from SearchInputType::m_resultsButton and SearchInputType::m_cancelButton
haraken@chromium.org [Mon, 20 Aug 2012 01:08:05 +0000 (01:08 +0000)]
Remove RefPtr from SearchInputType::m_resultsButton and SearchInputType::m_cancelButton
https://bugs.webkit.org/show_bug.cgi?id=94339

Reviewed by Kent Tamura.

To avoid reference cycles of RefPtr<Node>s, we want to remove unnecessary
RefPtr<Node>s. The rationale is described in bug 94324.

SearchInputType::m_resultsButton and SearchInputType::m_cancelButton do not
need to be RefPtr<Node>s, because they are guaranteed to point to the shadow
DOM tree of the SearchInputType node, which is guaranteed to exist in the
subtree of the SearchInputType node.

No tests. No change in behavior.

* html/SearchInputType.cpp:
(WebCore::SearchInputType::SearchInputType):
(WebCore::SearchInputType::createShadowSubtree):
(WebCore::SearchInputType::resultsButtonElement):
(WebCore::SearchInputType::cancelButtonElement):
(WebCore::SearchInputType::destroyShadowSubtree):
(WebCore::SearchInputType::subtreeHasChanged):
* html/SearchInputType.h:
(SearchInputType):

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

8 years agoCSP 1.1: Add 'plugin-types' and 'form-action' DOM API.
commit-queue@webkit.org [Sun, 19 Aug 2012 22:39:54 +0000 (22:39 +0000)]
CSP 1.1: Add 'plugin-types' and 'form-action' DOM API.
https://bugs.webkit.org/show_bug.cgi?id=94415

Patch by Mike West <mkwst@chromium.org> on 2012-08-19
Reviewed by Adam Barth.

Source/WebCore:

Experimental implementations of the new 'plugin-types' and 'form-action'
directives recently landed, but we neglected to add DOM API endpoints to
query their state. Those APIs have been added to the specification[1],
and this patch brings our implementation up to date.

Tests: http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowformaction.html
       http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowplugintype.html

* page/DOMSecurityPolicy.cpp:
(isAllowed):
    As a drive-by, change a parameter from a KURL to a String to match
    the actual template. There's no reason to stringify an empty URL
    when we can just use an empty string instead.
(isAllowedWithType):
    Call out to the ContentSecurityPolicy object to check the protected
    resource's ability to load a given media type.
(WebCore::DOMSecurityPolicy::allowsFormAction):
    Call out to the ContentSecurityPolicy object to check the protected
    resource's ability to submit a form to the given URL.
(WebCore):
(WebCore::DOMSecurityPolicy::allowsPluginType):
    Pipes the plugin type through 'isAllowedWithType' for resolution.
* page/DOMSecurityPolicy.h:
    Add the 'allowsPluginType' and 'allowsFormAction' methods.
(DOMSecurityPolicy):
* page/DOMSecurityPolicy.idl:
    Add the 'allowsPluginType' and 'allowsFormAction' methods.

LayoutTests:

* http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowformaction-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowformaction.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowplugintype-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowplugintype.html: Added.

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

8 years agoThe current state of the call frame should be taken into account in the DFG for both...
fpizlo@apple.com [Sun, 19 Aug 2012 21:59:12 +0000 (21:59 +0000)]
The current state of the call frame should be taken into account in the DFG for both predictions and proofs
https://bugs.webkit.org/show_bug.cgi?id=94412

Reviewed by Geoffrey Garen.

This ensures that no matter how smart the DFG gets, it'll always know through
which entrypoint OSR will try to enter, and with which values it will attempt
to do so. For prologue OSR, this has no effect other than adding the current
arguments to the argument predictions. For loop OSR, this makes our treatment
of the loop slightly more conservative - just conservative enough to ensure
that OSR succeeds.

* bytecode/CodeBlock.cpp:
(JSC::ProgramCodeBlock::compileOptimized):
(JSC::EvalCodeBlock::compileOptimized):
(JSC::FunctionCodeBlock::compileOptimized):
* bytecode/CodeBlock.h:
(CodeBlock):
(ProgramCodeBlock):
(EvalCodeBlock):
(FunctionCodeBlock):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::initialize):
* dfg/DFGAbstractValue.h:
(JSC::DFG::AbstractValue::setMostSpecific):
(AbstractValue):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::fixVariableAccessPredictions):
(JSC::DFG::ByteCodeParser::parse):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):
* dfg/DFGDriver.h:
(DFG):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::Graph):
(Graph):
* jit/JITDriver.h:
(JSC::jitCompileIfAppropriate):
(JSC::jitCompileFunctionIfAppropriate):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/Executable.cpp:
(JSC::EvalExecutable::compileOptimized):
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileOptimized):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileOptimizedForCall):
(JSC::FunctionExecutable::compileOptimizedForConstruct):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):
* runtime/Executable.h:
(EvalExecutable):
(ProgramExecutable):
(FunctionExecutable):
(JSC::FunctionExecutable::compileOptimizedFor):
* runtime/ExecutionHarness.h:
(JSC::prepareForExecution):
(JSC::prepareFunctionForExecution):

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

8 years ago[chromium] Add additional fields to WebGestureEvent
commit-queue@webkit.org [Sun, 19 Aug 2012 19:49:17 +0000 (19:49 +0000)]
[chromium] Add additional fields to WebGestureEvent
https://bugs.webkit.org/show_bug.cgi?id=94238

Patch by Rick Byers <rbyers@chromium.org> on 2012-08-19
Reviewed by James Robinson.

Add a union to WebGestureEvent with per-event-type data, as a first
step to eliminating the overloaded delta fields.

* public/WebInputEvent.h:
(WebGestureEvent):
(WebKit::WebGestureEvent::WebGestureEvent):
* src/WebInputEvent.cpp:
(SameSizeAsWebGestureEvent):

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

8 years agoWeb Inspector: load network panel lazily
pfeldman@chromium.org [Sun, 19 Aug 2012 19:34:18 +0000 (19:34 +0000)]
Web Inspector: load network panel lazily
https://bugs.webkit.org/show_bug.cgi?id=94414

Reviewed by Vsevolod Vlasov.

Source/WebCore:

This change removes access to WebInspector.panels.network and loads it lazily.

* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl):
(WebInspector.ConsoleMessageImpl.prototype.clone):
* inspector/front-end/ConsoleModel.js:
(WebInspector.ConsoleMessage.create):
(WebInspector.ConsoleDispatcher.prototype.messageAdded):
* inspector/front-end/ConsoleView.js:
(WebInspector.ConsoleMessage.create):
* inspector/front-end/NetworkLog.js:
(WebInspector.NetworkLog):
(WebInspector.NetworkLog.prototype._onRequestStarted):
(WebInspector.NetworkLog.prototype._onLoad):
(WebInspector.NetworkLog.prototype.requestForId):
* inspector/front-end/NetworkManager.js:
(WebInspector.NetworkDispatcher.prototype._updateNetworkRequestWithResponse):
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView):
* inspector/front-end/ScriptSnippetModel.js:
(WebInspector.ScriptSnippetModel.prototype.evaluateScriptSnippet.compileCallback):
(WebInspector.ScriptSnippetModel.prototype.evaluateScriptSnippet):
* inspector/front-end/externs.js:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._panelDescriptors):
(WebInspector._showAnchorLocation):

Source/WebKit/chromium:

* WebKit.gyp:

LayoutTests:

* http/tests/inspector/inspector-test.js:
(initialize_InspectorTest.InspectorTest.navigate):
(initialize_InspectorTest.InspectorTest._innerReloadPage):
* http/tests/inspector/network-test.js:
* http/tests/inspector/network/async-xhr-json-mime-type.html:
* http/tests/inspector/network/cached-resource-destroyed-moved-to-storage.html:
* http/tests/inspector/network/cached-resource-destroyed-too-big-discarded.html:
* http/tests/inspector/network/download.html:
* http/tests/inspector/network/network-cachedresources-with-same-urls.html:
* http/tests/inspector/network/network-clear-cache.html-disabled:
* http/tests/inspector/network/network-clear-cookies.html-disabled:
* http/tests/inspector/network/network-content-replacement-embed.html:
* http/tests/inspector/network/network-content-replacement-xhr.html:
* http/tests/inspector/network/network-cyrillic-xhr.html:
* http/tests/inspector/network/network-disable-cache-memory.html:
* http/tests/inspector/network/network-disable-cache-xhrs.html:
* http/tests/inspector/network/network-disabling-check-no-memory-leak.html:
* http/tests/inspector/network/network-embed.html:
* http/tests/inspector/network/network-empty-xhr.html:
* http/tests/inspector/network/network-iframe-load-and-delete.html:
* http/tests/inspector/network/network-image-404.html:
* http/tests/inspector/network/network-initiator-from-console.html:
* http/tests/inspector/network/network-preview-json.html:
* http/tests/inspector/network/network-request-revision-content.html:
* http/tests/inspector/network/network-shared-worker.html:
* http/tests/inspector/network/network-sidebar-width.html:
* http/tests/inspector/network/network-size-chunked.html:
* http/tests/inspector/network/network-size-sync.html:
* http/tests/inspector/network/network-size.html:
* http/tests/inspector/network/network-worker.html:
* http/tests/inspector/network/network-xhr-async-double.html:
* http/tests/inspector/network/network-xhr-async.html:
* http/tests/inspector/network/network-xhr-same-url-as-main-resource.html:
* http/tests/inspector/network/network-xhr-sync.html:
* http/tests/inspector/network/request-parameters-decoding.html:
* http/tests/inspector/network/x-frame-options-deny.html:
* http/tests/inspector/resource-har-pages.html:
* http/tests/inspector/resource-tree/resource-tree-mimetype.html:

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

8 years agoWebPageProxy::setCursor does not check that the view is still in an active window
mitz@apple.com [Sun, 19 Aug 2012 19:12:28 +0000 (19:12 +0000)]
WebPageProxy::setCursor does not check that the view is still in an active window
https://bugs.webkit.org/show_bug.cgi?id=94427

Reviewed by Alexey Proskuryakov.

The Web process may ask to change the cursor when the view is in an active window, but
if by the time the UI process receives the message, the view is no longer in a window or the
window is not active , then the cursor should not change.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setCursor): Added a check that the view is in an active window before
allowing the page to change the cursor.

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

8 years agoUnreviewed, rolling out r125972.
commit-queue@webkit.org [Sun, 19 Aug 2012 18:34:24 +0000 (18:34 +0000)]
Unreviewed, rolling out r125972.
http://trac.webkit.org/changeset/125972
https://bugs.webkit.org/show_bug.cgi?id=94431

Breaks AppleMac builds (Requested by pfeldman on #webkit).

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

* UIProcess/API/gtk/WebKitWebContext.cpp:
* UIProcess/API/gtk/WebKitWebContext.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
* UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
(beforeAll):
(afterAll):
* UIProcess/API/gtk/tests/WebViewTest.cpp:
(WebViewTest::WebViewTest):
* UIProcess/API/gtk/tests/WebViewTest.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::userPreferredLanguagesChanged):
* WebProcess/gtk/WebProcessGtk.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):
(WebKit::WebProcess::platformTerminate):

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

8 years agoUnreviewed, rolling out r125976.
commit-queue@webkit.org [Sun, 19 Aug 2012 18:30:41 +0000 (18:30 +0000)]
Unreviewed, rolling out r125976.
http://trac.webkit.org/changeset/125976
https://bugs.webkit.org/show_bug.cgi?id=94430

it does not fix build. (Requested by pfeldman on #webkit).

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

* GNUmakefile.am:
* GNUmakefile.list.am:

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

8 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Sun, 19 Aug 2012 17:15:31 +0000 (17:15 +0000)]
Unreviewed. Fix make distcheck.

* GNUmakefile.am: Add idl files in Modules/quota to EXTRA_DIST.
* GNUmakefile.list.am: Add missing files to compilation.

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

8 years agoREGRESSION (r125280-r125284): inspector/console/console-format-collections.html faili...
pfeldman@chromium.org [Sun, 19 Aug 2012 16:24:29 +0000 (16:24 +0000)]
REGRESSION (r125280-r125284): inspector/console/console-format-collections.html failing on Apple Lion Debug WK1 (Tests)
https://bugs.webkit.org/show_bug.cgi?id=93748

Reviewed by Pavel Feldman.

Not reviewed - simple test fix.

* inspector/console/console-format-collections-expected.txt:
* inspector/console/console-format-collections.html:

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

8 years ago[EFL][WK2] Add API unit tests for Web Intents
commit-queue@webkit.org [Sun, 19 Aug 2012 12:29:18 +0000 (12:29 +0000)]
[EFL][WK2] Add API unit tests for Web Intents
https://bugs.webkit.org/show_bug.cgi?id=90454

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-19
Reviewed by Kenneth Rohde Christiansen.

Add unit testing for Web intent requests,
including the "intent,request,new" signal on
the Ewk_View and the Ewk_Intent API.

* UIProcess/API/efl/ewk_view.h: Fix documentation for argument type of "intent,request,new" signal.
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::EWK2UnitTestBase::mouseClick): Add utility method to simulate a click at given
coordinates. This is needed for testing functionality that requires a user gesture.
(EWK2UnitTest):
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
(EWK2UnitTestBase):
* UIProcess/API/efl/tests/resources/intent-request.html: Added.
* UIProcess/API/efl/tests/test_ewk2_intents.cpp:
(stringSortCb):
(onIntentReceived):
(TEST_F):

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

8 years agoRemove unused ElementAttributeData::removeAttribute() overload.
kling@webkit.org [Sun, 19 Aug 2012 12:02:38 +0000 (12:02 +0000)]
Remove unused ElementAttributeData::removeAttribute() overload.
<http://webkit.org/b/94425>

Reviewed by Antti Koivisto.

* dom/ElementAttributeData.h:
(ElementAttributeData):

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

8 years ago[GTK] Add API to set preferred languages to WebKit2 GTK+
carlosgc@webkit.org [Sun, 19 Aug 2012 09:24:01 +0000 (09:24 +0000)]
[GTK] Add API to set preferred languages to WebKit2 GTK+
https://bugs.webkit.org/show_bug.cgi?id=90878

Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitWebContext.cpp:
(webkit_web_context_set_preferred_languages): Public API to set a
list of preferred languages sorted from most desirable to least
desirable.
* UIProcess/API/gtk/WebKitWebContext.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
* UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
(testWebContextLanguages):
(serverCallback):
(beforeAll):
(afterAll):
* UIProcess/API/gtk/tests/WebViewTest.cpp:
(resourceGetDataCallback):
(WebViewTest::mainResourceData): Moved from TestWebKitWebContext
to make it available to all WebViewTests.
* UIProcess/API/gtk/tests/WebViewTest.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::userPreferredLanguagesChanged): Notify our
observer that the languages have been overriden.
* WebProcess/gtk/WebProcessGtk.cpp:
(WebKit::buildAcceptLanguages): Helper function to build the
accept languages as specified in RFC 2616.
(WebKit::setSoupSessionAcceptLanguage): Set the accept-language
property of the default SoupSession.
(WebKit::languageChanged): Update the preferred languages in
SoupSession.
(WebKit::WebProcess::platformInitializeWebProcess): Add an
observer to be notified when the list of preferred languages is
updated.
(WebKit::WebProcess::platformTerminate): Remove the observer added
in platformInitializeWebProcess().

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

8 years agoRefactor SVGMaskElement to inherit from StyledElement
pdr@google.com [Sun, 19 Aug 2012 00:57:38 +0000 (00:57 +0000)]
Refactor SVGMaskElement to inherit from StyledElement
https://bugs.webkit.org/show_bug.cgi?id=94418

Reviewed by Dirk Schulze.

Previously, SVGMaskElement inherited from SVGStyledLocatableElement which includes
several unnecessary functions (e.g., getBBox()). This patch refactors SVGMaskElement
to inherit from SVGStyledElement which matches the spec:
http://www.w3.org/TR/SVG/single-page.html#masking-InterfaceSVGMaskElement

No new tests as this is just a refactoring.

* svg/SVGMaskElement.cpp:
(WebCore):
(WebCore::SVGMaskElement::SVGMaskElement):
* svg/SVGMaskElement.h:

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

8 years ago[EFL][WK2] ewk_back_forward_list_item properties should be in sync with WebProcessPro...
commit-queue@webkit.org [Sat, 18 Aug 2012 21:47:06 +0000 (21:47 +0000)]
[EFL][WK2] ewk_back_forward_list_item properties should be in sync with WebProcessProxy::m_backForwardListItemMap
https://bugs.webkit.org/show_bug.cgi?id=94248

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-18
Reviewed by Kenneth Rohde Christiansen.

Currently ewk_back_forward_list_item properties are initialized from
WKBackForwardListItemRef once in the constructor and then just stored.
This is erroneous approach as back forward items can be initialized within
several iterations, meaning several ipc calls to UI process and several updates
of WebProcessProxy::m_backForwardListItemMap where the items are stored.
Hence the values of ewk_back_forward_list_item properties should be updated
with the corresponding WKBackForwardListItem function invokes every time
they are called.

* UIProcess/API/efl/ewk_back_forward_list_item.cpp:
(_Ewk_Back_Forward_List_Item): Data members have to be mutable as assigned being const pointers.
(_Ewk_Back_Forward_List_Item::_Ewk_Back_Forward_List_Item):
(ewk_back_forward_list_item_uri_get):
(ewk_back_forward_list_item_title_get):
(ewk_back_forward_list_item_original_uri_get):

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

8 years agoCSSValueList: Reserve the exact amount of space needed when constructing from CSS...
kling@webkit.org [Sat, 18 Aug 2012 17:43:58 +0000 (17:43 +0000)]
CSSValueList: Reserve the exact amount of space needed when constructing from CSS parser.
(No bug URL as Bugzilla is down today.)

Reviewed by Antti Koivisto.

Use Vector::reserveInitialCapacity() when constructing a CSSValueList from a CSSParserValueList
since we have the final length available. Also inlined the trivial append() and prepend().

* css/CSSValueList.cpp:
(WebCore::CSSValueList::CSSValueList):
* css/CSSValueList.h:
(WebCore::CSSValueList::append):
(WebCore::CSSValueList::prepend):

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

8 years agoFollow up to r125966, fixing flaky tests.
pfeldman@chromium.org [Sat, 18 Aug 2012 14:21:38 +0000 (14:21 +0000)]
Follow up to r125966, fixing flaky tests.

* inspector/elements/event-listeners-about-blank.html:

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

8 years ago2012-08-18 Pavel Feldman <pfeldman@chromium.org>
pfeldman@chromium.org [Sat, 18 Aug 2012 09:32:33 +0000 (09:32 +0000)]
2012-08-18  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: make profiles panel a lazily loaded module.
        https://bugs.webkit.org/show_bug.cgi?id=94351

        Reviewed by Yury Semikhatsky.

        - removed usages of WebInspector.panels.profiles.
        - made panel lazily loaded

        * WebCore.gypi:
        * WebCore.xcodeproj/project.pbxproj:
        * inspector/front-end/CPUProfileView.js:
        (WebInspector.CPUProfileHeader.prototype.createView):
        * inspector/front-end/CSSSelectorProfileView.js:
        (WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
        (WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile):
        (WebInspector.CSSSelectorProfileType.prototype._stopRecordingProfile):
        (WebInspector.CSSProfileHeader.prototype.createView):
        * inspector/front-end/HeapSnapshotDataGrids.js:
        (WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu.revealInDominatorsView):
        (WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu.else.revealInSummaryView):
        (WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu):
        * inspector/front-end/HeapSnapshotView.js:
        (WebInspector.HeapSnapshotView.prototype._profiles):
        (WebInspector.HeapSnapshotView.prototype.populateContextMenu):
        (WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
        (WebInspector.HeapProfileHeader.prototype.createView):
        * inspector/front-end/InspectorFrontendAPI.js:
        (InspectorFrontendAPI.isProfilingJavaScript):
        (InspectorFrontendAPI.startProfilingJavaScript):
        (InspectorFrontendAPI.stopProfilingJavaScript):
        * inspector/front-end/NativeMemorySnapshotView.js:
        (WebInspector.NativeMemoryProfileHeader.prototype.createView):
        * inspector/front-end/ProfilesPanel.js:
        (WebInspector.ProfileType.prototype.buttonClicked):
        (WebInspector.ProfileHeader.prototype.view):
        (WebInspector.ProfileHeader.prototype.createView):
        (WebInspector.ProfilesPanel.prototype.toggleRecordButton):
        (WebInspector.ProfilesPanel.prototype.showProfileForURL):
        (WebInspector.RevealInHeapSnapshotContextMenuProvider.prototype.populateContextMenu.didReceiveHeapObjectId):
        (WebInspector.RevealInHeapSnapshotContextMenuProvider.prototype.populateContextMenu):
        (WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent):
        (WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect):
        * inspector/front-end/Settings.js:
        * inspector/front-end/externs.js:
        * inspector/front-end/inspector.html:
        * inspector/front-end/inspector.js:
        (WebInspector._panelDescriptors):
        (WebInspector._toggleSearchingForNode):
        (WebInspector._profilesLinkifier):
        (WebInspector._requestZoom.set InspectorFrontendHost):
        (WebInspector._requestZoom):
        (WebInspector.documentClick.followLink):
        (WebInspector.documentClick):

2012-08-18  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: make profiles panel a lazily loaded module.
        https://bugs.webkit.org/show_bug.cgi?id=94351

        Reviewed by Yury Semikhatsky.

        * WebKit.gyp:

2012-08-18  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: make profiles panel a lazily loaded module.
        https://bugs.webkit.org/show_bug.cgi?id=94351

        Reviewed by Yury Semikhatsky.

        * inspector/profiler/heap-snapshot-inspect-dom-wrapper.html:
        * inspector/profiler/heap-snapshot-loader.html:
        * inspector/profiler/heap-snapshot-summary-show-ranges.html:
        * inspector/profiler/heap-snapshot-summary-shown-node-count-preserved-when-sorting.html:

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

8 years ago2012-08-18 Pavel Feldman <pfeldman@chromium.org>
pfeldman@chromium.org [Sat, 18 Aug 2012 07:20:09 +0000 (07:20 +0000)]
2012-08-18  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: load panels code on demand
        https://bugs.webkit.org/show_bug.cgi?id=94326

        Reviewed by Vsevolod Vlasov.

        - Introduces importScript that evals in debug mode and inlines for release
        - Loads Element, Resources, Timeline, Audits panels lazily.

        * WebCore.gypi:
        * WebCore.xcodeproj/project.pbxproj:
        * inspector/compile-front-end.py:
        * inspector/front-end/AuditsPanel.js:
        * inspector/front-end/CodeMirrorTextEditor.js:
        (WebInspector.CodeMirrorTextEditor):
        (WebInspector.CodeMirrorTextEditor.prototype._toRange):
        * inspector/front-end/Color.js:
        * inspector/front-end/ElementsPanel.js:
        * inspector/front-end/ExtensionServer.js:
        (WebInspector.ExtensionServer.prototype._onCreatePanel):
        * inspector/front-end/Panel.js:
        (WebInspector.Panel):
        (WebInspector.PanelDescriptor):
        (WebInspector.PanelDescriptor.prototype.panel):
        * inspector/front-end/ResourcesPanel.js:
        * inspector/front-end/SettingsScreen.js:
        (WebInspector.GenericSettingsTab):
        * inspector/front-end/SourceFrame.js:
        (WebInspector.SourceFrame):
        * inspector/front-end/Spectrum.js:
        (WebInspector.Spectrum.prototype.get outputColorFormat):
        * inspector/front-end/StylesSidebarPane.js:
        * inspector/front-end/TimelinePanel.js:
        * inspector/front-end/inspector.html:
        * inspector/front-end/inspector.js:
        (WebInspector._panelDescriptors):
        (WebInspector.doLoadedDone):
        * inspector/front-end/utilities.js:
        * inspector/inline-javascript-imports.py:
        (main):

2012-08-18  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: load panels code on demand
        https://bugs.webkit.org/show_bug.cgi?id=94326

        Reviewed by Vsevolod Vlasov.

        * WebKit.gyp:
        * scripts/concatenate_js_files.py:
        (OrderedJSFilesExtractor.handle_starttag):
        * scripts/inline_js_imports.py:
        (main):

2012-08-18  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: load panels code on demand
        https://bugs.webkit.org/show_bug.cgi?id=94326

        Reviewed by Vsevolod Vlasov.

        Showing panels prior to running tests in order to load the code for them.

        * http/tests/inspector/resource-tree/resource-tree-non-unique-url.html:
        * inspector/database-table-name-excaping.html:
        * inspector/styles/styles-invalid-color-values.html:
        * inspector/timeline-dfs.html:

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

8 years agoDFG CSE should be more honest about when it changed the IR
fpizlo@apple.com [Sat, 18 Aug 2012 06:01:33 +0000 (06:01 +0000)]
DFG CSE should be more honest about when it changed the IR
https://bugs.webkit.org/show_bug.cgi?id=94408

Reviewed by Geoffrey Garen.

The CSE phase now always returns true if it changed the IR.

* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::setReplacement):
(JSC::DFG::CSEPhase::eliminate):
(JSC::DFG::CSEPhase::performNodeCSE):

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

8 years agoAdd self to webkit contributors list
commit-queue@webkit.org [Sat, 18 Aug 2012 03:46:20 +0000 (03:46 +0000)]
Add self to webkit contributors list
https://bugs.webkit.org/show_bug.cgi?id=94409

Patch by Kiran Muppala <cmuppala@apple.com> on 2012-08-17
Reviewed by Dirk Pranke.

Add name, email and irc handle to webkit contributors list.

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

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

8 years agoCalendar picker shows wrong date when input element has year earlier than 100
keishi@webkit.org [Sat, 18 Aug 2012 02:51:47 +0000 (02:51 +0000)]
Calendar picker shows wrong date when input element has year earlier than 100
https://bugs.webkit.org/show_bug.cgi?id=94100

Reviewed by Kent Tamura.

Source/WebCore:

Date.UTC can't set an year earlier than 100. So when the input has a value earlier than 100, calendar picker shows the wrong date.

Test: fast/forms/date/calendar-picker-appearance-pre-100.html

* Resources/pagepopups/calendarPicker.js:
(createUTCDate): Uses setUTCFullYear when the year is pre 100.
(parseDateString):
(DaysTable.prototype._renderMonth):
(DaysTable.prototype._maybeSetPreviousMonth):
(DaysTable.prototype._maybeSetNextMonth):

LayoutTests:

* fast/forms/date/calendar-picker-appearance-pre-100-expected.txt: Added.
* fast/forms/date/calendar-picker-appearance-pre-100.html: Added.

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

8 years ago[chromium] Fix random noise around text in FPS HUD.
vangelis@chromium.org [Sat, 18 Aug 2012 02:06:57 +0000 (02:06 +0000)]
[chromium] Fix random noise around text in FPS HUD.
https://bugs.webkit.org/show_bug.cgi?id=94400

Reviewed by James Robinson.

This was the result of an incorrect clear operation on the canvas
that stores the font atlas used by the HUD.

* platform/graphics/chromium/CompositorHUDFontAtlas.cpp:
(WebCore::CompositorHUDFontAtlas::generateFontAtlas):

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

8 years agoUnreviewed, rolling out r125897.
dpranke@chromium.org [Sat, 18 Aug 2012 02:00:40 +0000 (02:00 +0000)]
Unreviewed, rolling out r125897.
http://trac.webkit.org/changeset/125897
https://bugs.webkit.org/show_bug.cgi?id=94326

Source/WebCore:

This patch seems to have broken the inspector on the apple mac bots.

* WebCore.gypi:
* inspector/compile-front-end.py:
* inspector/front-end/AuditsPanel.js:
* inspector/front-end/CodeMirrorTextEditor.js:
(WebInspector.CodeMirrorTextEditor):
(WebInspector.CodeMirrorTextEditor.prototype._toRange):
(WebInspector.CodeMirrorTextEditor.prototype._loadLibraries.loadLibrary):
(WebInspector.CodeMirrorTextEditor.prototype._loadLibraries):
* inspector/front-end/Color.js:
* inspector/front-end/ElementsPanel.js:
* inspector/front-end/ExtensionServer.js:
(WebInspector.ExtensionServer.prototype._onCreatePanel):
* inspector/front-end/Panel.js:
(WebInspector.Panel):
(WebInspector.PanelDescriptor):
(WebInspector.PanelDescriptor.prototype.panel):
* inspector/front-end/ResourcesPanel.js:
* inspector/front-end/SettingsScreen.js:
(WebInspector.GenericSettingsTab):
* inspector/front-end/SourceFrame.js:
(WebInspector.SourceFrame):
* inspector/front-end/Spectrum.js:
(WebInspector.Spectrum.prototype.get outputColorFormat):
* inspector/front-end/StylesSidebarPane.js:
* inspector/front-end/TimelinePanel.js:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._panelDescriptors):
(WebInspector.doLoadedDone):
* inspector/front-end/utilities.js:

Source/WebKit/chromium:

this patch seems to have broken the inspector on the apple mac bots.

* WebKit.gyp:
* scripts/concatenate_js_files.py:
(OrderedJSFilesExtractor.handle_starttag):
* scripts/inline_js_imports.py:
(main):

LayoutTests:

This patch seems to have broken the inspector on the apple mac bots.

* http/tests/inspector/resource-tree/resource-tree-non-unique-url.html:
* inspector/database-table-name-excaping.html:
* inspector/styles/styles-invalid-color-values.html:
* inspector/timeline-dfs.html:

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

8 years agoDFG is still too pessimistic about what constitutes a side-effect on array accesses
fpizlo@apple.com [Sat, 18 Aug 2012 00:48:38 +0000 (00:48 +0000)]
DFG is still too pessimistic about what constitutes a side-effect on array accesses
https://bugs.webkit.org/show_bug.cgi?id=94309

Reviewed by Geoffrey Garen.

This change means that even if structure transition watchpoints are not used for
hoisting of clobbered structure checks, we still retain good performance on the
benchmarks we care about. That's important, since butterflies will likely make
most array structures not watchpointable.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):

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

8 years agoAdd ability to create AtomicString using LChar* buffer and length
msaboff@apple.com [Sat, 18 Aug 2012 00:43:25 +0000 (00:43 +0000)]
Add ability to create AtomicString using LChar* buffer and length
https://bugs.webkit.org/show_bug.cgi?id=94381

Reviewed by Geoffrey Garen.

Allows the use of 8 bit string data directly without converting to 16 bits first.

* wtf/text/AtomicString.cpp:
(WTF::LCharBufferTranslator::hash):
(LCharBufferTranslator):
(WTF::LCharBufferTranslator::equal):
(WTF::LCharBufferTranslator::translate):
(WTF::AtomicString::add):
* wtf/text/AtomicString.h:
(WTF::AtomicString::AtomicString):
(AtomicString):
* wtf/text/StringImpl.h:
(StringImpl):

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

8 years agoAudioParam must support k-rate processing with audio-rate connections
crogers@google.com [Sat, 18 Aug 2012 00:42:26 +0000 (00:42 +0000)]
AudioParam must support k-rate processing with audio-rate connections
https://bugs.webkit.org/show_bug.cgi?id=94385

Reviewed by Kenneth Russell.

Fully implement AudioParam *final* value calculation according to spec:
https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#AudioParam

In particular, this covers the case where the parameter is k-rate, and we also
have audio-rate connections to the AudioParam.

* Modules/webaudio/AudioParam.cpp:
(WebCore::AudioParam::finalValue):
(WebCore):
(WebCore::AudioParam::calculateSampleAccurateValues):
(WebCore::AudioParam::calculateFinalValues):
* Modules/webaudio/AudioParam.h:
(AudioParam):
* Modules/webaudio/DelayDSPKernel.cpp:
(WebCore::DelayDSPKernel::process):

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

8 years agoPerfalizer should differentiate results with and without the patch
rniwa@webkit.org [Sat, 18 Aug 2012 00:36:06 +0000 (00:36 +0000)]
Perfalizer should differentiate results with and without the patch
https://bugs.webkit.org/show_bug.cgi?id=94399

Reviewed by Dirk Pranke.

Add "with 12345" and "without 12345" descriptions in results JSON so that graphs in
the results page are labled accordingly.

Also use _build_without_patch when building without a patch so that we get the right error message.

* Scripts/webkitpy/tool/commands/perfalizer.py:
(PerfalizerTask.run):
(PerfalizerTask._run_perf_test):
* Scripts/webkitpy/tool/commands/perfalizer_unittest.py:
(PerfalizerTaskTest._create_and_run_perfalizer.run_perf_test):

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

8 years agoPreserve styling elements in DeleteSelectionCommand
commit-queue@webkit.org [Sat, 18 Aug 2012 00:31:00 +0000 (00:31 +0000)]
Preserve styling elements in DeleteSelectionCommand
<rdar://problem/12040676>
https://bugs.webkit.org/show_bug.cgi?id=93643

Patch by Alice Cheng <alice_cheng@apple.com> on 2012-08-17
Reviewed by Ryosuke Niwa.

Source/WebCore:

Styling elements (<link> and <style>) can appear inside editable content. To
prevent accidental deletion, we move styling elements to rootEditableElement in
DeleteSelectionCommand undoably.

Test: editing/execCommand/delete-selection-has-style.html

* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss): Added to preserve styling elements during the command
(WebCore::DeleteSelectionCommand::handleGeneralDelete):  Modified to preserve styling elements during the command
* editing/DeleteSelectionCommand.h:
(DeleteSelectionCommand):

LayoutTests:

Test if delete selection command does move styling elements to
rootEditableElement, when the selection contains some. Also test command's
undoness.

* editing/execCommand/delete-selection-has-style-expected.txt: Added.
* editing/execCommand/delete-selection-has-style.html: Added.

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

8 years agonrwt: don't fail tests if ImageDiff fails on the wk2 ports
dpranke@chromium.org [Sat, 18 Aug 2012 00:25:44 +0000 (00:25 +0000)]
nrwt: don't fail tests if ImageDiff fails on the wk2 ports
https://bugs.webkit.org/show_bug.cgi?id=94396

Reviewed by Ryosuke Niwa.

It appears that WTR is generating PNGs that ImageDiff doesn't
like, and so we're getting lots of "can not get ImageDiff"
errors (see bug 81962). The change in r124581 made this a test
failure, and this is causing the WK2 bots to frequently abort
with 500+ failures.

This change makes ImageDiff errors not be test failures just for
WK2 for now until we can better triage what's going on.

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._compare_image):

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

8 years agoUnreviewed, rolling out r125940.
commit-queue@webkit.org [Sat, 18 Aug 2012 00:10:11 +0000 (00:10 +0000)]
Unreviewed, rolling out r125940.
http://trac.webkit.org/changeset/125940
https://bugs.webkit.org/show_bug.cgi?id=94398

"Causes crashes on the bots
http://build.webkit.org/results/Apple%20Lion%20Debug%20WK2%20(Tests)/r125944%20(2626)/fast/css
/first-letter-removed-added-crash-log.txt" (Requested by
bradee-oh on #webkit).

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

* rendering/RenderListItem.cpp:
* rendering/RenderListItem.h:
(RenderListItem):
* rendering/RenderObject.cpp:
* rendering/RenderObject.h:
(RenderObject):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::removeChildNode):
* rendering/RenderObjectChildList.h:
(RenderObjectChildList):
* rendering/RenderQuote.cpp:
* rendering/RenderQuote.h:
* rendering/RenderRegion.cpp:
* rendering/RenderRegion.h:
(RenderRegion):

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

8 years ago[chromium] Add a style check for #include "cc/..." in chromium files
commit-queue@webkit.org [Sat, 18 Aug 2012 00:08:21 +0000 (00:08 +0000)]
[chromium] Add a style check for #include "cc/..." in chromium files
https://bugs.webkit.org/show_bug.cgi?id=94382

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

Adds a style check to make sure new chromium code follows the correct convention for including cc files.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_include_line):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(OrderOfIncludesTest.test_check_cc_includes):

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

8 years agoDisconnect UndoManager when its undo scope host is destroyed
commit-queue@webkit.org [Sat, 18 Aug 2012 00:06:39 +0000 (00:06 +0000)]
Disconnect UndoManager when its undo scope host is destroyed
https://bugs.webkit.org/show_bug.cgi?id=94388

Patch by Sukolsak Sakshuwong <sukolsak@google.com> on 2012-08-17
Reviewed by Ryosuke Niwa.

Source/WebCore:

Disconnect UndoManager in Element's destructor to prevent
use-after-free vulnerabilities.

Test: editing/undomanager/undoscopehost-use-after-free.html

* dom/Element.cpp:
(WebCore::Element::~Element):

LayoutTests:

* editing/undomanager/undoscopehost-use-after-free-expected.txt: Added.
* editing/undomanager/undoscopehost-use-after-free.html: Added.

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

8 years agoFixed incorrect references to JSVoidCallback.{cpp,h} in the project file.
mitz@apple.com [Fri, 17 Aug 2012 23:57:47 +0000 (23:57 +0000)]
Fixed incorrect references to JSVoidCallback.{cpp,h} in the project file.

* WebCore.xcodeproj/project.pbxproj:

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

8 years agoFix XCode project file.
rniwa@webkit.org [Fri, 17 Aug 2012 23:51:25 +0000 (23:51 +0000)]
Fix XCode project file.

* WebCore.xcodeproj/project.pbxproj:

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

8 years ago[BlackBerry][EFL] Remove compile warning in WebCore
commit-queue@webkit.org [Fri, 17 Aug 2012 23:36:46 +0000 (23:36 +0000)]
[BlackBerry][EFL] Remove compile warning in WebCore
https://bugs.webkit.org/show_bug.cgi?id=94328

Patch by Kangil Han <kangil.han@samsung.com> on 2012-08-17
Reviewed by Rob Buis.

Fixed compile time warning in WebCore.

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::createEdje): unused variable ‘errmsg’ [-Wunused-variable]
* platform/graphics/harfbuzz/ng/HarfBuzzShaper.cpp:
(WebCore::HarfBuzzShaper::selectionRect): ‘toX’ may be used uninitialized in this function [-Wuninitialized], ‘fromX’ may be used uniniti

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

8 years ago[V8] use checkInboundData in setWebGLArrayHelper
commit-queue@webkit.org [Fri, 17 Aug 2012 23:35:22 +0000 (23:35 +0000)]
[V8] use checkInboundData in setWebGLArrayHelper
https://bugs.webkit.org/show_bug.cgi?id=93051

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-08-17
Reviewed by Kenneth Russell.

Use TypedArray method checkInboundData in setWebGLArrayHelper instead
of performing the computation manually.

No new tests. This patch doesn't change behavior.

* bindings/v8/custom/V8ArrayBufferViewCustom.h:
(WebCore::setWebGLArrayHelper):

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

8 years ago REGRESSION (r125912): Crashes in worker tests
ap@apple.com [Fri, 17 Aug 2012 23:27:45 +0000 (23:27 +0000)]
    REGRESSION (r125912): Crashes in worker tests
        https://bugs.webkit.org/show_bug.cgi?id=94390

        Reviewed by Brady Eidson and Sam Weinig.

        * bindings/js/JSDOMBinding.cpp: (WebCore::reportException): It's always fine
        to report an exception on a worker context, but it's not fine to treat those as windows.

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

8 years ago[chromium] Add missing header files to .gypi and missing include to CCTiledLayerImpl.cpp
jamesr@google.com [Fri, 17 Aug 2012 23:14:20 +0000 (23:14 +0000)]
[chromium] Add missing header files to .gypi and missing include to CCTiledLayerImpl.cpp
https://bugs.webkit.org/show_bug.cgi?id=94391

Reviewed by Adrienne Walker.

* WebCore.gypi:
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

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

8 years agoAdding back the first statement of WebProcessMain accidentally
enrica@apple.com [Fri, 17 Aug 2012 23:11:58 +0000 (23:11 +0000)]
Adding back the first statement of WebProcessMain accidentally
removed in r125358.

Reviewed by Sam Weinig.

* WebProcess/mac/WebProcessMainMac.mm: Adding back the stripping
of DYLD_INSERT_LIBRARIES.

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

8 years agoIndexedDB: Test if getting a TRANSACTION_INACTIVE_ERR is possible when setting version
dgrogan@chromium.org [Fri, 17 Aug 2012 23:11:22 +0000 (23:11 +0000)]
IndexedDB: Test if getting a TRANSACTION_INACTIVE_ERR is possible when setting version
https://bugs.webkit.org/show_bug.cgi?id=94269

Reviewed by Ojan Vafai.

I don't see a path through which this code is exercised.
ASSERT_NOT_REACHED doesn't cause any of our tests to fail. It might be
timing-related, in which case this ASSERT should be sporadically hit.
If this ASSERT is hit, see if we can write a test that exercises it or
at least add comments explaining how it gets exercised. If this ASSERT
is not hit after a while, change it to
ASSERT(transaction.scheduleTask(...)).

No new tests, we're looking for existing tests to fail.

* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::setVersion):
(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):

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

8 years agoUnreviewed, rolling out r125922.
commit-queue@webkit.org [Fri, 17 Aug 2012 23:07:19 +0000 (23:07 +0000)]
Unreviewed, rolling out r125922.
http://trac.webkit.org/changeset/125922
https://bugs.webkit.org/show_bug.cgi?id=94389

"Causing failing/crashing tests on Mac bots" (Requested by
bradee-oh on #webkit).

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

Source/WebCore:

* WebCore.gypi:
* inspector/front-end/CPUProfileView.js:
(WebInspector.CPUProfileHeader.prototype.createView):
* inspector/front-end/CSSSelectorProfileView.js:
(WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
(WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile):
(WebInspector.CSSSelectorProfileType.prototype._stopRecordingProfile):
(WebInspector.CSSProfileHeader.prototype.createView):
* inspector/front-end/HeapSnapshotDataGrids.js:
(WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu.revealInDominatorsView):
(WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu.else.revealInSummaryView):
(WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu):
* inspector/front-end/HeapSnapshotView.js:
(WebInspector.HeapSnapshotView.prototype._profiles):
(WebInspector.HeapSnapshotView.prototype.populateContextMenu):
(WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
(WebInspector.HeapProfileHeader.prototype.createView):
* inspector/front-end/InspectorFrontendAPI.js:
(InspectorFrontendAPI.isProfilingJavaScript):
(InspectorFrontendAPI.startProfilingJavaScript):
(InspectorFrontendAPI.stopProfilingJavaScript):
* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.NativeMemoryProfileHeader.prototype.createView):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfileType.prototype.buttonClicked):
(WebInspector.ProfileHeader.prototype.view):
(WebInspector.ProfileHeader.prototype.createView):
(WebInspector.ProfilesPanel.prototype.toggleRecordButton):
(WebInspector.ProfilesPanel.prototype.showProfileForURL):
(WebInspector.RevealInHeapSnapshotContextMenuProvider.prototype.populateContextMenu.didReceiveHeapObjectId):
(WebInspector.RevealInHeapSnapshotContextMenuProvider.prototype.populateContextMenu):
(WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent):
(WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect):
* inspector/front-end/Settings.js:
* inspector/front-end/externs.js:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._panelDescriptors):
(WebInspector._toggleSearchingForNode):
(WebInspector._requestZoom.set InspectorFrontendHost):
(WebInspector._requestZoom):
(WebInspector.documentClick.followLink):
(WebInspector.documentClick):
(WebInspector.frontendReused):

Source/WebKit/chromium:

* WebKit.gyp:

LayoutTests:

* inspector/profiler/heap-snapshot-inspect-dom-wrapper.html:
* inspector/profiler/heap-snapshot-loader.html:
* inspector/profiler/heap-snapshot-summary-show-ranges.html:
* inspector/profiler/heap-snapshot-summary-shown-node-count-preserved-when-sorting.html:

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

8 years agoIntroduce a will-be-removed-from-tree notification in RenderObject
jchaffraix@webkit.org [Fri, 17 Aug 2012 21:59:08 +0000 (21:59 +0000)]
Introduce a will-be-removed-from-tree notification in RenderObject
https://bugs.webkit.org/show_bug.cgi?id=94271

Reviewed by Abhishek Arya.

Following bug 93874, we have an insertion notification. This change adds the
matching removal notification (willBeRemovedFromTree).

Refactoring covered by existing tests.

* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::removeChildNode):
Removed the code from here and moved it below.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::willBeRemovedFromTree):
* rendering/RenderObject.h:
This is the base function that should be called by every instance.

* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::willBeRemovedFromTree):
* rendering/RenderListItem.h:
* rendering/RenderQuote.cpp:
(WebCore::RenderQuote::willBeRemovedFromTree):
* rendering/RenderQuote.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::willBeRemovedFromTree):
* rendering/RenderRegion.h:
Overriden functions.

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

8 years agoFix vsyncTick drought when vsync throttling is disabled
commit-queue@webkit.org [Fri, 17 Aug 2012 21:50:22 +0000 (21:50 +0000)]
Fix vsyncTick drought when vsync throttling is disabled
https://bugs.webkit.org/show_bug.cgi?id=94012

Patch by Brian Anderson <brianderson@chromium.org> on 2012-08-17
Reviewed by James Robinson.

CCFrameRateController made an assumption that every vsyncTick results
in a call to didBeginFrame, which is not necessarily true and causes
the CCFrameRateController to stop ticking when vsync is disabled. We
move the manual ticks out of didBeginFrame and manually tick in the
proper place.

CCFrameRateControllerTest updated with use cases that should tick
without a didBeginFrame and will fail without this patch.

* platform/graphics/chromium/cc/CCFrameRateController.cpp:
(WebCore::CCFrameRateController::setActive):
(WebCore::CCFrameRateController::onTimerTick):
(WebCore::CCFrameRateController::didBeginFrame):

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

8 years agoDelete some dead code in RenderBox::computePercentageLogicalHeight
ojan@chromium.org [Fri, 17 Aug 2012 21:46:26 +0000 (21:46 +0000)]
Delete some dead code in RenderBox::computePercentageLogicalHeight
https://bugs.webkit.org/show_bug.cgi?id=94262

Reviewed by Tony Chang.

I'm pretty sure this is dead code. None of the layout tests hit this code,
including the ones added in the original patch http://trac.webkit.org/changeset/10983.
I spent a good while and could not concoct a test that hits this code.

The test-cases added in that file, as well as the test-cases I came up with that should
go through this codepath, instead go through computePositionedLogicalHeight and never
hit computePercentageLogicalHeight.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computePercentageLogicalHeight):

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

8 years ago2012-08-17 Nate Chapin <japhet@chromium.org>
japhet@chromium.org [Fri, 17 Aug 2012 21:38:51 +0000 (21:38 +0000)]
2012-08-17  Nate Chapin  <japhet@chromium.org>

        Add missing CR in bug identifiers in TextExpectations

        * platform/chromium/TestExpectations:

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

8 years agoMake it easier to append a literal to StringBuilder
benjamin@webkit.org [Fri, 17 Aug 2012 21:36:01 +0000 (21:36 +0000)]
Make it easier to append a literal to StringBuilder
https://bugs.webkit.org/show_bug.cgi?id=94273

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-08-17
Reviewed by Kentaro Hara.

Source/WebCore:

Use StringBuilder::appendLiteral() in MarkupAccumulator instead of computing every
value individually.

* editing/MarkupAccumulator.cpp:
(WebCore::MarkupAccumulator::appendComment):
(WebCore::MarkupAccumulator::appendXMLDeclaration):
(WebCore::MarkupAccumulator::appendDocumentType):
(WebCore::MarkupAccumulator::appendCDATASection):

Source/WTF:

* wtf/text/StringBuilder.h:
(WTF::StringBuilder::appendLiteral): Add the method StringBuilder::appendLiteral() for efficiently
adding a string literal to the StringBuilder.

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

8 years ago2012-08-17 Nate Chapin <japhet@chromium.org>
japhet@chromium.org [Fri, 17 Aug 2012 21:29:46 +0000 (21:29 +0000)]
2012-08-17  Nate Chapin  <japhet@chromium.org>

        Update BUGJAPHET TextExpectations entries to point to bugs.

        * platform/chromium/TestExpectations:

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

8 years agoShare the StringImpl the CSS property names
benjamin@webkit.org [Fri, 17 Aug 2012 21:24:15 +0000 (21:24 +0000)]
Share the StringImpl the CSS property names
https://bugs.webkit.org/show_bug.cgi?id=94187

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-08-17
Reviewed by Alexey Proskuryakov.

Previously, we would instanciate a new String every time a CSS property name was needed.

This patches moves the creation of the AtomicString to CSSPropertyNames and reuse that
StringImpl whenever needed.

With the patch, accessing CSS property names from JavaScript gets about 2.1 times faster.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
(WebCore::CSSComputedStyleDeclaration::item):
* css/CSSPrimitiveValue.cpp:
(WebCore::valueOrPropertyName):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::cssName):
* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::item):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyShorthand):
* css/makeprop.pl:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getSupportedCSSProperties):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyle::styleWithProperties):
* page/animation/ImplicitAnimation.cpp:
(WebCore::ImplicitAnimation::sendTransitionEvent):

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

8 years ago[BlackBerry] Allow in-region accelerated scrolling take advantage of defer_blits
tonikitoo@webkit.org [Fri, 17 Aug 2012 21:16:44 +0000 (21:16 +0000)]
[BlackBerry] Allow in-region accelerated scrolling take advantage of defer_blits
https://bugs.webkit.org/show_bug.cgi?id=94379
PR #194595

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>
Internally reviewed by Jakob Petsovits.

Client does the blitting now.

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScrollerPrivate::setScrollPositionCompositingThread):

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

8 years ago[chromium] Add Source/WebCore/platform/graphics/chromium/cc/ to include path and...
jamesr@google.com [Fri, 17 Aug 2012 20:58:46 +0000 (20:58 +0000)]
[chromium] Add Source/WebCore/platform/graphics/chromium/cc/ to include path and remove cc/ prefix from includes
https://bugs.webkit.org/show_bug.cgi?id=94279

Reviewed by Adam Barth.

Source/WebCore:

This brings us more in line with the rest of the WebKit repo and avoids potential header collisions during
transition.

* WebCore.gyp/WebCore.gyp:
* platform/chromium/support/CCThreadImpl.cpp:
* platform/chromium/support/CCThreadImpl.h:
* platform/chromium/support/WebCompositorImpl.cpp:
* platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:
* platform/graphics/chromium/CanvasLayerTextureUpdater.cpp:
* platform/graphics/chromium/ContentLayerChromium.cpp:
* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
* platform/graphics/chromium/HeadsUpDisplayLayerChromium.cpp:
* platform/graphics/chromium/HeadsUpDisplayLayerChromium.h:
* platform/graphics/chromium/IOSurfaceLayerChromium.cpp:
* platform/graphics/chromium/ImageLayerChromium.cpp:
* platform/graphics/chromium/LayerChromium.cpp:
* platform/graphics/chromium/LayerChromium.h:
* platform/graphics/chromium/LayerRendererChromium.cpp:
* platform/graphics/chromium/LayerRendererChromium.h:
* platform/graphics/chromium/LayerTextureUpdater.h:
* platform/graphics/chromium/LinkHighlight.cpp:
* platform/graphics/chromium/RateLimiter.cpp:
* platform/graphics/chromium/RenderSurfaceChromium.cpp:
* platform/graphics/chromium/ScrollbarLayerChromium.cpp:
* platform/graphics/chromium/SolidColorLayerChromium.cpp:
* platform/graphics/chromium/TextureLayerChromium.cpp:
* platform/graphics/chromium/TiledLayerChromium.cpp:
* platform/graphics/chromium/TiledLayerChromium.h:
* platform/graphics/chromium/TreeSynchronizer.cpp:
* platform/graphics/chromium/VideoLayerChromium.cpp:
* platform/graphics/chromium/cc/CCActiveAnimation.cpp:
* platform/graphics/chromium/cc/CCActiveGestureAnimation.cpp:
* platform/graphics/chromium/cc/CCAnimationCurve.cpp:
* platform/graphics/chromium/cc/CCAnimationEvents.h:
* platform/graphics/chromium/cc/CCCheckerboardDrawQuad.cpp:
* platform/graphics/chromium/cc/CCCheckerboardDrawQuad.h:
* platform/graphics/chromium/cc/CCDamageTracker.cpp:
* platform/graphics/chromium/cc/CCDebugBorderDrawQuad.cpp:
* platform/graphics/chromium/cc/CCDebugBorderDrawQuad.h:
* platform/graphics/chromium/cc/CCDelayBasedTimeSource.cpp:
* platform/graphics/chromium/cc/CCDelayBasedTimeSource.h:
* platform/graphics/chromium/cc/CCDrawQuad.cpp:
* platform/graphics/chromium/cc/CCDrawQuad.h:
* platform/graphics/chromium/cc/CCFontAtlas.cpp:
* platform/graphics/chromium/cc/CCFrameRateController.cpp:
* platform/graphics/chromium/cc/CCFrameRateController.h:
* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:
* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h:
* platform/graphics/chromium/cc/CCIOSurfaceDrawQuad.cpp:
* platform/graphics/chromium/cc/CCIOSurfaceDrawQuad.h:
* platform/graphics/chromium/cc/CCIOSurfaceLayerImpl.cpp:
* platform/graphics/chromium/cc/CCIOSurfaceLayerImpl.h:
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp:
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h:
* platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
* platform/graphics/chromium/cc/CCLayerAnimationController.h:
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
* platform/graphics/chromium/cc/CCLayerImpl.h:
* platform/graphics/chromium/cc/CCLayerIterator.cpp:
* platform/graphics/chromium/cc/CCLayerIterator.h:
* platform/graphics/chromium/cc/CCLayerQuad.cpp:
* platform/graphics/chromium/cc/CCLayerSorter.cpp:
* platform/graphics/chromium/cc/CCLayerSorter.h:
* platform/graphics/chromium/cc/CCLayerTilingData.cpp:
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
* platform/graphics/chromium/cc/CCMathUtil.cpp:
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
* platform/graphics/chromium/cc/CCOcclusionTracker.h:
* platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:
* platform/graphics/chromium/cc/CCPageScaleAnimation.cpp:
* platform/graphics/chromium/cc/CCPrioritizedTexture.h:
* platform/graphics/chromium/cc/CCProxy.cpp:
* platform/graphics/chromium/cc/CCQuadCuller.cpp:
* platform/graphics/chromium/cc/CCRenderPass.cpp:
* platform/graphics/chromium/cc/CCRenderPass.h:
* platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp:
* platform/graphics/chromium/cc/CCRenderPassDrawQuad.h:
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
* platform/graphics/chromium/cc/CCRenderSurface.h:
* platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:
* platform/graphics/chromium/cc/CCRenderer.h:
* platform/graphics/chromium/cc/CCResourceProvider.cpp:
* platform/graphics/chromium/cc/CCResourceProvider.h:
* platform/graphics/chromium/cc/CCScheduler.cpp:
* platform/graphics/chromium/cc/CCScheduler.h:
* platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
* platform/graphics/chromium/cc/CCScopedTexture.cpp:
* platform/graphics/chromium/cc/CCScopedTexture.h:
* platform/graphics/chromium/cc/CCScopedThreadProxy.h:
* platform/graphics/chromium/cc/CCScrollbarAnimationController.cpp:
* platform/graphics/chromium/cc/CCScrollbarAnimationControllerLinearFade.cpp:
* platform/graphics/chromium/cc/CCScrollbarAnimationControllerLinearFade.h:
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
* platform/graphics/chromium/cc/CCSettings.cpp:
* platform/graphics/chromium/cc/CCSharedQuadState.cpp:
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
* platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp:
* platform/graphics/chromium/cc/CCSolidColorDrawQuad.h:
* platform/graphics/chromium/cc/CCSolidColorLayerImpl.cpp:
* platform/graphics/chromium/cc/CCSolidColorLayerImpl.h:
* platform/graphics/chromium/cc/CCStreamVideoDrawQuad.cpp:
* platform/graphics/chromium/cc/CCStreamVideoDrawQuad.h:
* platform/graphics/chromium/cc/CCTexture.cpp:
* platform/graphics/chromium/cc/CCTexture.h:
* platform/graphics/chromium/cc/CCTextureDrawQuad.cpp:
* platform/graphics/chromium/cc/CCTextureDrawQuad.h:
* platform/graphics/chromium/cc/CCTextureLayerImpl.cpp:
* platform/graphics/chromium/cc/CCTextureLayerImpl.h:
* platform/graphics/chromium/cc/CCTextureUpdateController.cpp:
* platform/graphics/chromium/cc/CCTextureUpdateController.h:
* platform/graphics/chromium/cc/CCTextureUpdateQueue.cpp:
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
* platform/graphics/chromium/cc/CCThreadProxy.h:
* platform/graphics/chromium/cc/CCThreadTask.h:
* platform/graphics/chromium/cc/CCTileDrawQuad.cpp:
* platform/graphics/chromium/cc/CCTileDrawQuad.h:
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
* platform/graphics/chromium/cc/CCTiledLayerImpl.h:
* platform/graphics/chromium/cc/CCTimer.cpp:
* platform/graphics/chromium/cc/CCTimingFunction.cpp:
* platform/graphics/chromium/cc/CCTimingFunction.h:
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
* platform/graphics/chromium/cc/CCYUVVideoDrawQuad.cpp:
* platform/graphics/chromium/cc/CCYUVVideoDrawQuad.h:
* platform/graphics/gpu/SharedGraphicsContext3D.cpp:

Source/WebKit/chromium:

* src/WebAnimationCurveCommon.cpp:
* src/WebAnimationImpl.cpp:
* src/WebCompositorInputHandlerImpl.cpp:
* src/WebCompositorInputHandlerImpl.h:
* src/WebExternalTextureLayer.cpp:
* src/WebFloatAnimationCurve.cpp:
* src/WebLayerTreeView.cpp:
* src/WebLayerTreeViewImpl.cpp:
* src/WebTransformAnimationCurve.cpp:
* tests/CCActiveAnimationTest.cpp:
* tests/CCAnimationTestCommon.cpp:
* tests/CCAnimationTestCommon.h:
* tests/CCDamageTrackerTest.cpp:
* tests/CCDelayBasedTimeSourceTest.cpp:
* tests/CCFrameRateControllerTest.cpp:
* tests/CCKeyframedAnimationCurveTest.cpp:
* tests/CCLayerAnimationControllerTest.cpp:
* tests/CCLayerImplTest.cpp:
* tests/CCLayerIteratorTest.cpp:
* tests/CCLayerQuadTest.cpp:
* tests/CCLayerSorterTest.cpp:
* tests/CCLayerTestCommon.cpp:
* tests/CCLayerTestCommon.h:
* tests/CCLayerTreeHostCommonTest.cpp:
* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
* tests/CCMathUtilTest.cpp:
* tests/CCOcclusionTrackerTest.cpp:
* tests/CCOcclusionTrackerTestCommon.h:
* tests/CCPrioritizedTextureTest.cpp:
* tests/CCQuadCullerTest.cpp:
* tests/CCRenderSurfaceFiltersTest.cpp:
* tests/CCRenderSurfaceTest.cpp:
* tests/CCResourceProviderTest.cpp:
* tests/CCSchedulerStateMachineTest.cpp:
* tests/CCSchedulerTest.cpp:
* tests/CCSchedulerTestCommon.h:
* tests/CCScopedTextureTest.cpp:
* tests/CCScrollbarAnimationControllerLinearFadeTest.cpp:
* tests/CCSolidColorLayerImplTest.cpp:
* tests/CCTestCommon.h:
* tests/CCTextureUpdateControllerTest.cpp:
* tests/CCThreadTaskTest.cpp:
* tests/CCThreadedTest.cpp:
* tests/CCThreadedTest.h:
* tests/CCTiledLayerImplTest.cpp:
* tests/CCTiledLayerTestCommon.h:
* tests/CCTimerTest.cpp:
* tests/ContentLayerChromiumTest.cpp:
* tests/FakeCCGraphicsContext.h:
* tests/FakeCCLayerTreeHostClient.h:
* tests/FloatQuadTest.cpp:
* tests/GraphicsLayerChromiumTest.cpp:
* tests/LayerChromiumTest.cpp:
* tests/LayerRendererChromiumTest.cpp:
* tests/MockCCQuadCuller.h:
* tests/PlatformGestureCurveTest.cpp:
* tests/ScrollbarLayerChromiumTest.cpp:
* tests/TextureLayerChromiumTest.cpp:
* tests/TiledLayerChromiumTest.cpp:
* tests/TreeSynchronizerTest.cpp:
* tests/WebCompositorInputHandlerImplTest.cpp:
* tests/WebFloatAnimationCurveTest.cpp:
* tests/WebTransformAnimationCurveTest.cpp:

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

8 years agoDelete some dead code from the flakiness dashboard
ojan@chromium.org [Fri, 17 Aug 2012 20:55:27 +0000 (20:55 +0000)]
Delete some dead code from the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=94380

Reviewed by Dirk Pranke.

This code became dead in one of the refactors of how we handle BuilderGroups.
There's no bug here, it's just dead code.
* TestResultServer/static-dashboards/builders.js:
(requestBuilderList):
(loadBuildersList):

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

8 years ago[EFL] REGRESSION(r125923): Breaks EFL build
commit-queue@webkit.org [Fri, 17 Aug 2012 20:43:34 +0000 (20:43 +0000)]
[EFL] REGRESSION(r125923): Breaks EFL build
https://bugs.webkit.org/show_bug.cgi?id=94376

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-08-17
Reviewed by Alexey Proskuryakov.

Fix EFL build break after r125923.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveIntentForFrame):

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

8 years agoDelete dead code in deprecated flexbox for RTL line-clamp
ojan@chromium.org [Fri, 17 Aug 2012 20:42:22 +0000 (20:42 +0000)]
Delete dead code in deprecated flexbox for RTL line-clamp
https://bugs.webkit.org/show_bug.cgi?id=94282

Reviewed by Tony Chang.

-webkit-line-clamp and direction:rtl is not supported. Delete some
obviously dead code that half-tries to support it.
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):

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

8 years agoUpdate test expectations for inspector/timeline/timeline-decode-resize.html on mac
commit-queue@webkit.org [Fri, 17 Aug 2012 20:22:20 +0000 (20:22 +0000)]
Update test expectations for inspector/timeline/timeline-decode-resize.html on mac
https://bugs.webkit.org/show_bug.cgi?id=94375

Patch by Kiran Muppala <cmuppala@apple.com> on 2012-08-17
Reviewed by Brady Eidson.

Mark inspector/timeline/timeline-decode-resize.html as an expected
failure on mac until https://bugs.webkit.org/show_bug.cgi?id=94374
is resolved.

* platform/mac/TestExpectations:

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

8 years agoWeb Inspector: Refactor InspectorTest to split evals for initialization from runTest
commit-queue@webkit.org [Fri, 17 Aug 2012 20:10:39 +0000 (20:10 +0000)]
Web Inspector: Refactor InspectorTest to split evals for initialization from runTest
https://bugs.webkit.org/show_bug.cgi?id=93520

Patch by John J. Barton <johnjbarton@chromium.org> on 2012-08-17
Reviewed by Pavel Feldman.

 Split function runTestInFrontend() into initialization and runTestInFrontEnd parts;
 send them to the front-end in two different evaluateInFrontEnd calls, resulting in
 two different eval() calls. In debug setup, we'll get two different UISourceCodes,
 much easier to debug with.

Refactoring, all inspector tests pass.

* http/tests/inspector/inspector-test.js:

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

8 years ago[chromium] Add content shell bots to the flakiness dashboard
jochen@chromium.org [Fri, 17 Aug 2012 19:57:19 +0000 (19:57 +0000)]
[chromium] Add content shell bots to the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=94369

Reviewed by Ojan Vafai.

The bots are named $OS (Content Shell).

* TestResultServer/static-dashboards/builders.js:
(isChromiumWebkitTipOfTreeTestRunner):
* TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

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

8 years agoText Autosizing: Increase line height in proportion to font size.
commit-queue@webkit.org [Fri, 17 Aug 2012 19:17:54 +0000 (19:17 +0000)]
Text Autosizing: Increase line height in proportion to font size.
https://bugs.webkit.org/show_bug.cgi?id=91660

Patch by John Mellor <johnme@chromium.org> on 2012-08-17
Reviewed by Julien Chaffraix.

Source/WebCore:

This patch causes line heights to be increased in proportion to font
size (so autosized text doesn't overlap itself). It does this by adding
a textAutosizingMultiplier() to RenderStyle, which the lineHeight()
getter multiplies its response by.

It also cleans up one or two things, for example treatAsInline is
renamed isNotAnAutosizingContainer to clarify that its purpose is to
discriminate autosizing containers (the smallest unit that we can turn
Text Autosizing on or off for; in particular these are not allowed to
be line participants, since multiple sizes on one line looks awful).

Tests: fast/text-autosizing/em-margin-border-padding.html
       fast/text-autosizing/narrow-child.html
       fast/text-autosizing/nested-em-line-height.html
       fast/text-autosizing/simple-paragraph.html
       fast/text-autosizing/span-child.html
       fast/text-autosizing/wide-child.html

* css/StyleBuilder.cpp:
(WebCore::ApplyPropertyLineHeight::applyValue):

    Replaced Length(-100.0, Percent) with RenderStyle::initialLineHeight(),
    which is equivalent but makes the intent clearer.

(WebCore::ApplyPropertyLineHeight::createHandler):

    Use specifiedLineHeight to match setLineHeight which takes a specified
    line height (and generally this avoids accidentally inheriting text
    autosizing).

* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):

    Similarly use specifiedLineHeight when inheriting line height.

* page/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimation::ensurePropertyMap):

    Get and set specified lineHeight/fontSize if Text Autosizing is
    enabled to avoid setting the specified value to the computed value
    (causing values to be multiplied more than once!).

* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::RenderThemeBlackBerry::adjustMediaControlStyle):

    Adjust for renamed setBlendedFontSize, and maintain cast to int.

* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::createInnerTextStyle):

    Replaced Length(-100.0, Percent) with RenderStyle::initialLineHeight(),
    which is equivalent but makes the intent clearer.

* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::processSubtree):

    Use nextInPreOrderMatchingFilter instead of traverseNext, and some
    other methods that got renamed.

(WebCore::TextAutosizer::processBox):

    Renamed from processBlock, since RenderBoxes are sufficient; use
    renamed nextInPreOrderMatchingFilter; make two calls to setMultiplier
    (one for parent for line height) instead of processText.

(WebCore::TextAutosizer::setMultiplier):

    Simplified from previous processText method; this just sets the
    style's textAutosizingMultiplier (and the style does the rest).

(WebCore::TextAutosizer::isNotAnAutosizingContainer):

    Renamed from treatAsInline; added explanatory comment; changed
    isRenderBlock to isBox as boxes still have logicalWidth; changed
    isInlineBlockOrInlineTable to isInline as it was an omission that
    other inlines were allowed.

(WebCore::TextAutosizer::nextInPreOrderMatchingFilter):

    Renamed from TextAutosizer::traverseNext.

(RenderObjectFilterFunctor):

    Renamed from RenderObjectFilter to clafiry that it's a function ptr.

* rendering/TextAutosizer.h:
(TextAutosizer): Previously mentioned renamings.

* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::fixScriptsStyle):

    Adjust for renamed setBlendedFontSize.

* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff):

    textAutosizingMultiplier is a StyleDifferenceLayout (we want
    setNeedsLayoutAndPrefWidthsRecalc to get called).

(WebCore::RenderStyle::setFontSize):

    Renamed from setBlendedFontSize; if Text Autosizing is enabled and a
    multiplier is set it auto-calculates the computedSize; float
    param instead of int as discussed on webkit.org/b/91660.

* rendering/style/RenderStyle.h:

    Added specifiedFontSize, computedFontSize and specifiedLineHeight
    getters; changed lineHeight to dynamically calculate autosized line
    height, and made computedLineHeight use this value instead of the
    specified line height; also added textAutosizingMultiplier
    getter/setter (the setter updated the font description's computed
    size, by calling setFontSize); also renamed the parameter to
    setLineHeight to explicitly note that it's setting the
    specifiedLineHeight (and can still be adjusted by autosizing).

* rendering/style/StyleVisualData.cpp/.h:

    Added m_textAutosizingMultiplier (this seems the best place to put a
    non-inherited non-rare presentational property).

LayoutTests:

Adjusted the expectation for simple-paragraph.html and
font-scale-factor.html now that line-height is correctly increased.
Also added 5 more tests making sure that autosized children of
non-autosized parents work correctly, and vice versa; that nested
inline elements behave correctly; and documenting the behavior of
margins, borders, and padding with em lengths.

* fast/text-autosizing/em-margin-border-padding-expected.html: Added.
* fast/text-autosizing/em-margin-border-padding.html: Copied from LayoutTests/fast/text-autosizing/simple-paragraph.html.
* fast/text-autosizing/font-scale-factor-expected.html:
* fast/text-autosizing/font-scale-factor.html:
* fast/text-autosizing/narrow-child-expected.html: Added.
* fast/text-autosizing/narrow-child.html: Copied from LayoutTests/fast/text-autosizing/simple-paragraph.html.
* fast/text-autosizing/nested-em-line-height-expected.html: Added.
* fast/text-autosizing/nested-em-line-height.html: Added.
* fast/text-autosizing/simple-paragraph-expected.html:
* fast/text-autosizing/simple-paragraph.html:
* fast/text-autosizing/span-child-expected.html: Added.
* fast/text-autosizing/span-child.html: Copied from LayoutTests/fast/text-autosizing/simple-paragraph.html.
* fast/text-autosizing/wide-child-expected.html: Added.
* fast/text-autosizing/wide-child.html: Copied from LayoutTests/fast/text-autosizing/simple-paragraph.html.

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

8 years ago[CMake] Add FindDBus.cmake and use it in the EFL port.
rakuco@webkit.org [Fri, 17 Aug 2012 19:12:16 +0000 (19:12 +0000)]
[CMake] Add FindDBus.cmake and use it in the EFL port.
https://bugs.webkit.org/show_bug.cgi?id=94319

Reviewed by Daniel Bates.

.:

Currently, the Battery Status-related code in the EFL port uses
libdbus but does not directly include its directories or link
against it, relying instead on the compiler flags coming via
EDbus's pkg-config information.

That will break once we stop obtaining EFL's include directories
and library paths from pkg-config, so write FindDBus.cmake to
prepare for that.

* Source/cmake/FindDBus.cmake: Added.
* Source/cmake/OptionsEfl.cmake: Look for D-Bus if BATTERY_STATUS
support is enabled.

Source/WebCore:

* PlatformEfl.cmake: Link against DBUS_LIBRARIES and add
DBUS_INCLUDE_DIRS to the include path list if BATTERY_STATUS
support is enabled.

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

8 years agoAccess m_process directly in WebPageProxy.cpp
ap@apple.com [Fri, 17 Aug 2012 19:01:38 +0000 (19:01 +0000)]
Access m_process directly in WebPageProxy.cpp
https://bugs.webkit.org/show_bug.cgi?id=94363

Reviewed by John Sullivan.

Consistency fix - we don't use accessors when we don't have to, and there is a mix in this file.

* UIProcess/WebPageProxy.cpp:

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

8 years agoWeb Inspector: make profiles panel a lazily loaded module.
pfeldman@chromium.org [Fri, 17 Aug 2012 18:57:24 +0000 (18:57 +0000)]
Web Inspector: make profiles panel a lazily loaded module.
https://bugs.webkit.org/show_bug.cgi?id=94351

Reviewed by Yury Semikhatsky.

Source/WebCore:

Moving files from .html to importScript.

* WebCore.gypi:
* inspector/front-end/CPUProfileView.js:
(WebInspector.CPUProfileHeader.prototype.createView):
* inspector/front-end/CSSSelectorProfileView.js:
(WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
(WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile):
(WebInspector.CSSSelectorProfileType.prototype._stopRecordingProfile):
(WebInspector.CSSProfileHeader.prototype.createView):
* inspector/front-end/HeapSnapshotDataGrids.js:
(WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu.revealInDominatorsView):
(WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu.else.revealInSummaryView):
(WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu):
* inspector/front-end/HeapSnapshotView.js:
(WebInspector.HeapSnapshotView.prototype._profiles):
(WebInspector.HeapSnapshotView.prototype.populateContextMenu):
(WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
(WebInspector.HeapProfileHeader.prototype.createView):
* inspector/front-end/InspectorFrontendAPI.js:
(InspectorFrontendAPI.isProfilingJavaScript):
(InspectorFrontendAPI.startProfilingJavaScript):
(InspectorFrontendAPI.stopProfilingJavaScript):
* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.NativeMemoryProfileHeader.prototype.createView):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfileType.prototype.buttonClicked):
(WebInspector.ProfileHeader.prototype.view):
(WebInspector.ProfileHeader.prototype.createView):
(WebInspector.ProfilesPanel.prototype.toggleRecordButton):
(WebInspector.ProfilesPanel.prototype.showProfileForURL):
(WebInspector.RevealInHeapSnapshotContextMenuProvider.prototype.populateContextMenu.didReceiveHeapObjectId):
(WebInspector.RevealInHeapSnapshotContextMenuProvider.prototype.populateContextMenu):
(WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent):
(WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect):
* inspector/front-end/externs.js:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._panelDescriptors):
(WebInspector._toggleSearchingForNode):
(WebInspector._profilesLinkifier):
(WebInspector._requestZoom.set InspectorFrontendHost):
(WebInspector._requestZoom):
(WebInspector.documentClick.followLink):
(WebInspector.documentClick):

Source/WebKit/chromium:

* WebKit.gyp:

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

8 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Fri, 17 Aug 2012 18:45:28 +0000 (18:45 +0000)]
Unreviewed GTK gardening.

Removing expectations for two flaky crashers that were fixed in r125181.

Skipping three tests of otherwise unsupported features as they time out
and just prolong the bot cycle in doing so.

* platform/gtk/TestExpectations:

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

8 years agoREGRESSION(r125710) - canvas-fallback-content tests asserting in Chromium
dmazzoni@google.com [Fri, 17 Aug 2012 18:42:49 +0000 (18:42 +0000)]
REGRESSION(r125710) - canvas-fallback-content tests asserting in Chromium
https://bugs.webkit.org/show_bug.cgi?id=94156

Reviewed by Chris Fleizach.

Source/WebCore:

When determining if a Node is focusable, check the canvas subtree
case first before encountering assertions that assume that anything
focusable must have an associated renderer.

Fixes existing tests so they don't assert.

* dom/Node.cpp:
(WebCore::Node::isFocusable):

LayoutTests:

Fixes two canvas tests that were asserting.

* platform/chromium/TestExpectations:

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

8 years agoUnreviewed gardening. Updating test expectations after r125794.
leviw@chromium.org [Fri, 17 Aug 2012 18:39:28 +0000 (18:39 +0000)]
Unreviewed gardening. Updating test expectations after r125794.

* fast/repaint/transform-absolute-child-expected.txt: Added.
* fast/repaint/transform-repaint-descendants-expected.txt: Added.
* platform/chromium-linux/compositing/shadows/shadow-drawing-expected.png:
* platform/chromium-linux/fast/repaint/transform-absolute-child-expected.png:
* platform/chromium-linux/fast/repaint/transform-repaint-descendants-expected.png:
* platform/chromium-linux/fast/repaint/transform-translate-expected.png:
* platform/chromium-linux/fast/sub-pixel/sub-pixel-accumulates-to-layers-expected.png: Added.
* platform/chromium-linux/fast/transforms/transformed-document-element-expected.png:
* platform/chromium-linux/media/audio-repaint-expected.png:
* platform/chromium-linux/svg/transforms/svg-css-transforms-expected.png:
* platform/chromium-linux/transforms/svg-vs-css-expected.png:
* platform/chromium-mac-snowleopard/compositing/shadows/shadow-drawing-expected.png:
* platform/chromium-mac-snowleopard/fast/sub-pixel/sub-pixel-accumulates-to-layers-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/sub-pixel/sub-pixel-accumulates-to-layers-expected.txt: Removed.
* platform/chromium-mac-snowleopard/media/audio-repaint-expected.png:
* platform/chromium-mac/fast/sub-pixel/sub-pixel-accumulates-to-layers-expected.txt: Removed.
* platform/chromium-win/fast/repaint/scroll-fixed-layer-with-transformed-parent-layer-expected.png:
* platform/chromium-win/fast/repaint/transform-absolute-child-expected.png:
* platform/chromium-win/fast/repaint/transform-repaint-descendants-expected.png:
* platform/chromium-win/fast/repaint/transform-translate-expected.png:
* platform/chromium-win/fast/sub-pixel/sub-pixel-accumulates-to-layers-expected.png: Added.
* platform/chromium-win/fast/transforms/transformed-document-element-expected.png:
* platform/chromium-win/media/audio-repaint-expected.png:
* platform/chromium-win/svg/transforms/svg-css-transforms-expected.png:
* platform/chromium-win/transforms/svg-vs-css-expected.png:
* platform/chromium/TestExpectations:
* platform/chromium/fast/sub-pixel: Added.
* platform/chromium/fast/sub-pixel/sub-pixel-accumulates-to-layers-expected.txt: Added.
* platform/efl/fast/repaint/transform-absolute-child-expected.txt: Removed.
* platform/efl/fast/repaint/transform-repaint-descendants-expected.txt: Removed.
* platform/gtk/fast/repaint/transform-absolute-child-expected.txt: Removed.
* platform/gtk/fast/repaint/transform-repaint-descendants-expected.txt: Removed.
* platform/mac/fast/repaint/transform-absolute-child-expected.txt: Removed.
* platform/qt/fast/repaint/transform-absolute-child-expected.txt: Removed.

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

8 years ago[chromium] Mark indexeddb/resources-panel as also timing out
enne@google.com [Fri, 17 Aug 2012 18:33:38 +0000 (18:33 +0000)]
[chromium] Mark indexeddb/resources-panel as also timing out

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

8 years agoASSERTION FAILED: allocatedMaxLogicalWidth <= cellMaxLogicalWidth : int WebCore:...
commit-queue@webkit.org [Fri, 17 Aug 2012 18:31:56 +0000 (18:31 +0000)]
ASSERTION FAILED: allocatedMaxLogicalWidth <= cellMaxLogicalWidth : int WebCore::AutoTableLayout::calcEffectiveLogicalWidth()
https://bugs.webkit.org/show_bug.cgi?id=92471

Patch by Arpita Bahuguna <arpitabahuguna@gmail.com> on 2012-08-17
Reviewed by Julien Chaffraix.

Source/WebCore:

The assert occurs due to the float based computations causing a floating
point rounding error between allocatedMaxLogicalWidth and cellMaxLogicalWidth.

Test: fast/table/assert-autotablelayout-maxlogicalwidth.html

* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
Converting float based calculations for computing max logical width to int based;
similar to the calculations for min logical width.

LayoutTests:

* fast/table/assert-autotablelayout-maxlogicalwidth-expected.txt: Added.
* fast/table/assert-autotablelayout-maxlogicalwidth.html: Added.
Added a testcase for verifying that the assert in AutoTableLayout::calcEffectiveLogicalWidth()
for allocatedMaxLogicalWidth coming greater than cellMaxLogicalWidth, does not occur.

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