WebKit-https.git
9 years agoupdate-webkit-support-libraries is broken with the change from http to https on devel...
lforschler@apple.com [Sat, 4 Feb 2012 00:29:47 +0000 (00:29 +0000)]
update-webkit-support-libraries is broken with the change from http to https on developer.apple.com
https://bugs.webkit.org/show_bug.cgi?id=77785

Fix the build bots.

Pass the -k and --sslv3 keys to make curl work with https on https://developer.apple.com

* Scripts/update-webkit-support-libs:
(downloadExpectedVersionNumber):

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

9 years agoPrefix the typedef in WTF_MAKE_FAST_ALLOCATED with underscores
andersca@apple.com [Sat, 4 Feb 2012 00:24:02 +0000 (00:24 +0000)]
Prefix the typedef in WTF_MAKE_FAST_ALLOCATED with underscores
https://bugs.webkit.org/show_bug.cgi?id=77788

Reviewed by Andreas Kling.

The current typedef name, 'ThisIsHereToForceASemicolonAfterThisMacro', shows up when trying to
code-complete 'this' in Xcode. Prefix the typedef with two underscores to stop this from happening.

* wtf/FastAllocBase.h:

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

9 years ago2012-02-03 Brady Eidson <beidson@apple.com>
beidson@apple.com [Sat, 4 Feb 2012 00:22:32 +0000 (00:22 +0000)]
2012-02-03  Brady Eidson  <beidson@apple.com>

<rdar://problem/10742441> and https://bugs.webkit.org/show_bug.cgi?id=77766
Need a WK2 API to filter which subframes go into WebArchives as they are created.

Reviewed by Darin Adler.

Source/WebCore:

This adds a filter callback object that allows clients to get called back for each
subframe that might be added to a WebArchive.

API only, No new layout tests.

* WebCore.exp.in:
* loader/archive/cf/LegacyWebArchive.cpp:
(WebCore::LegacyWebArchive::create):
(WebCore::LegacyWebArchive::createFromSelection):
* loader/archive/cf/LegacyWebArchive.h:
(FrameFilter):
(WebCore:: FrameFilter::~ FrameFilter):
(LegacyWebArchive):

Source/WebKit2:

Add a new WKBundleFrame API that takes a filter callback object to allow or reject
subframes from a WebArchive:
* WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
(WKBundleFrameCopyWebArchive):
(WKBundleFrameCopyWebArchiveFilteringSubframes):
* WebProcess/InjectedBundle/API/c/WKBundleFrame.h:

Implement the above API by calling through to WebCore:
* WebProcess/WebPage/WebFrame.cpp:
(WebFrameFilter):
(WebKit::WebFrameFilter::WebFrameFilter):
(WebKit::WebFrameFilter::shouldIncludeSubframe):
(WebKit::WebFrame::webArchiveData):
* WebProcess/WebPage/WebFrame.h:
(WebFrame):

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::getWebArchiveOfFrame):

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

9 years agoIndexedDB: Key generators not rolled back if insertion fails or is aborted
jsbell@chromium.org [Sat, 4 Feb 2012 00:16:45 +0000 (00:16 +0000)]
IndexedDB: Key generators not rolled back if insertion fails or is aborted
https://bugs.webkit.org/show_bug.cgi?id=77060

Reviewed by Tony Chang.

Source/WebCore:

Test: storage/indexeddb/key-generator.html

* storage/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::put): Add abort task to reset cache.
(WebCore::IDBObjectStoreBackendImpl::revertAutoIncrementKeyCache):
(WebCore):
(WebCore::IDBObjectStoreBackendImpl::putInternal): Reset cache on error.
* storage/IDBObjectStoreBackendImpl.h:
(IDBObjectStoreBackendImpl):

LayoutTests:

* storage/indexeddb/key-generator-expected.txt: Added.
* storage/indexeddb/key-generator.html: Added.

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

9 years agopositive and negative flex values are not being cleared on style changes
tony@chromium.org [Sat, 4 Feb 2012 00:10:18 +0000 (00:10 +0000)]
positive and negative flex values are not being cleared on style changes
https://bugs.webkit.org/show_bug.cgi?id=77771

Reviewed by Ojan Vafai.

Source/WebCore:

If the width or height was a flex() value, but is no longer a flex
value, we weren't clearing the positive and negative flex values in
RenderStyle.

Test: css3/flexbox/flex-no-flex.html

* css/CSSStyleApplyProperty.cpp:
(WebCore::ApplyPropertyLength::applyValue):

LayoutTests:

* css3/flexbox/flex-no-flex-expected.txt: Added.
* css3/flexbox/flex-no-flex.html: Added.

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

9 years agoAdd a Mac Lion Performance bot.
lforschler@apple.com [Sat, 4 Feb 2012 00:01:12 +0000 (00:01 +0000)]
Add a Mac Lion Performance bot.
https://bugs.webkit.org/show_bug.cgi?id=77765

Reviewed by Adam Roben.

This will update the master configuration in the following ways:
    Add a new performance slave (apple-xseve-11)
    Add a new Factory to download a build and run perf tests.

* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(DownloadAndPerfTestFactory):
(DownloadAndPerfTestFactory.__init__):

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

9 years agoExtra TestWebKitAPI.gyp/TestWebKitAPI.target.chromium.mk in repository
dpranke@chromium.org [Fri, 3 Feb 2012 23:53:23 +0000 (23:53 +0000)]
Extra TestWebKitAPI.gyp/TestWebKitAPI.target.chromium.mk in repository
https://bugs.webkit.org/show_bug.cgi?id=77752

Reviewed by James Robinson.

Delete unneeded file accidentally checked in in r106481.

* TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.target.chromium.mk: Removed.

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

9 years ago[Mac WK2] Use a minimally invasive way to fake plug-in process name
ap@apple.com [Fri, 3 Feb 2012 23:47:55 +0000 (23:47 +0000)]
[Mac WK2] Use a minimally invasive way to fake plug-in process name
https://bugs.webkit.org/show_bug.cgi?id=77682

Reviewed by Darin Adler.

* PluginProcess/PluginProcess.cpp: (WebKit::PluginProcess::netscapePluginModule):
Only change the name as it's seen from within the process.

* Shared/Plugins/PluginQuirks.h: Fixed a typo.

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

9 years ago[chromium] Defer makeContextCurrent in compositor until first frame
jamesr@google.com [Fri, 3 Feb 2012 23:18:56 +0000 (23:18 +0000)]
[chromium] Defer makeContextCurrent in compositor until first frame
https://bugs.webkit.org/show_bug.cgi?id=77269

Reviewed by Kenneth Russell.

Source/WebCore:

There are situations where we need to instantiate a compositor, but can't call makeContextCurrent() until some
initialization work completes on another thread that we cannot block for. This defers the first
makeContextCurrent() call until we need to produce the first frame at which point we know the call can succeed,
assuming that the scheduler does the right thing.

This is accomplished by splitting up proxy initialization into two pieces:
*) initializeContext() which attempts to instantiate a GraphicsContext3D. This can fail if we can't make a
context at all, in which case we abort completely and return NULL from CCLayerTreeHost::create().

*) initializeLayerRenderer() which uses the previously-created context to instantiate our compositor objects and
    grab our renderer capabilities. This can fail if the context is not usable for compositing, which we report
    to the client as a lost context event.

Internally this introduces a new state to the CCLayerTreeHostImpl where it has a context but does not yet have a
LayerRendererChromium, which has fairly minimal impact. One other change is that we don't instantiate the
TextureManagers until we have the renderer capabilities, but this isn't necessary until we want to start
painting so it doesn't have any impact outside of some overly intrustive unit tests.

* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::paintContentsIfDirty):
(WebCore::ContentLayerChromium::createTextureUpdater):
* platform/graphics/chromium/ContentLayerChromium.h:
(ContentLayerChromium):
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/ImageLayerChromium.h:
(ImageLayerChromium):
* platform/graphics/chromium/TiledLayerChromium.cpp:
* platform/graphics/chromium/TiledLayerChromium.h:
(WebCore::TiledLayerChromium::setSampledTexelFormat):
(TiledLayerChromium):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::initializeLayerRenderer):
(WebCore):
(WebCore::CCLayerTreeHost::beginCommitOnImplThread):
(WebCore::CCLayerTreeHost::compositeAndReadback):
(WebCore::CCLayerTreeHost::finishAllRendering):
(WebCore::CCLayerTreeHost::setViewportSize):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::updateLayers):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
():
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::isContextLost):
* platform/graphics/chromium/cc/CCProxy.h:
(CCProxy):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
(WebCore::CCSingleThreadProxy::compositeAndReadback):
(WebCore::CCSingleThreadProxy::initializeContext):
(WebCore::CCSingleThreadProxy::initializeLayerRenderer):
(WebCore::CCSingleThreadProxy::layerRendererCapabilities):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
(CCSingleThreadProxy):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::CCThreadProxy):
(WebCore::CCThreadProxy::compositeAndReadback):
(WebCore::CCThreadProxy::initializeContext):
(WebCore):
(WebCore::CCThreadProxy::initializeLayerRenderer):
(WebCore::CCThreadProxy::layerRendererCapabilities):
(WebCore::CCThreadProxy::initializeImplOnImplThread):
(WebCore::CCThreadProxy::initializeContextOnImplThread):
(WebCore::CCThreadProxy::initializeLayerRendererOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):

Source/WebKit/chromium:

* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestSetViewportSize::beginTest):
* tests/TiledLayerChromiumTest.cpp:
(WTF::TEST):

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

9 years agoUnreviewed compile fix for chromium - add commas after entries in list in WebCore...
jamesr@google.com [Fri, 3 Feb 2012 23:13:41 +0000 (23:13 +0000)]
Unreviewed compile fix for chromium - add commas after entries in list in WebCore.gypi

* WebCore.gypi:

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

9 years agoUnreviewed build fix attempt after r106695.
kling@webkit.org [Fri, 3 Feb 2012 23:03:53 +0000 (23:03 +0000)]
Unreviewed build fix attempt after r106695.

CSSMutableStyleDeclaration was renamed to StylePropertySet.

* bindings/scripts/CodeGeneratorCPP.pm:
(AddIncludesForType):
* bindings/scripts/CodeGeneratorV8.pm:
(AddIncludesForType):
* bindings/v8/V8DOMWindowShell.cpp:
* bindings/v8/V8DOMWrapper.cpp:
* bindings/v8/V8Proxy.cpp:

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

9 years ago[BlackBerry] Let userIdleTime() return maximum number instead of 0 as
commit-queue@webkit.org [Fri, 3 Feb 2012 22:52:10 +0000 (22:52 +0000)]
[BlackBerry] Let userIdleTime() return maximum number instead of 0 as
most of other ports do.
https://bugs.webkit.org/show_bug.cgi?id=77769

Patch by Yong Li <yoli@rim.com> on 2012-02-03
Reviewed by Rob Buis.

userIdleTime() should return a big number so it won't block page cache
from releasing cached pages. See PageCache::releaseAutoreleasedPagesNowOrReschedule().

No new tests as no visible functional changes.

* platform/blackberry/SystemTimeBlackBerry.cpp:
(WebCore::userIdleTime):

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

9 years agoCommit scrolling tree state changes to the scrolling tree
andersca@apple.com [Fri, 3 Feb 2012 22:46:58 +0000 (22:46 +0000)]
Commit scrolling tree state changes to the scrolling tree
https://bugs.webkit.org/show_bug.cgi?id=77780

Reviewed by Darin Adler.

* WebCore.xcodeproj/project.pbxproj:
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::commitTreeState):
Send the new scrolling tree state over to the ScrollingTree on the scrolling thread.

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::ScrollingTree):
Create a root node.

(WebCore::ScrollingTree::commitNewTreeState):
Update the root node.

* page/scrolling/ScrollingTreeNode.cpp: Copied from Source/WebCore/page/scrolling/ScrollingTree.cpp.
* page/scrolling/ScrollingTreeNode.h: Copied from Source/WebCore/page/scrolling/ScrollingTree.cpp.
Stub out an abstract ScrollingTreeNode class.

* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinator::frameViewScrollLayerDidChange):
Update the scroll layer on the tree state.

* page/scrolling/mac/ScrollingTreeNodeMac.h: Copied from Source/WebCore/page/scrolling/ScrollingTree.cpp.
* page/scrolling/mac/ScrollingTreeNodeMac.mm: Copied from Source/WebCore/page/scrolling/ScrollingTree.cpp.
Stub out the concrete ScrollingTreeNodeMac subclass.

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

9 years agoRename CSSMutableStyleDeclaration.h/.cpp to StylePropertySet.h/.cpp
antti@apple.com [Fri, 3 Feb 2012 22:41:09 +0000 (22:41 +0000)]
Rename CSSMutableStyleDeclaration.h/.cpp to StylePropertySet.h/.cpp
https://bugs.webkit.org/show_bug.cgi?id=77779

Reviewed by Darin Adler.

Source/WebCore:

Match the new class name.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSCSSStyleDeclarationCustom.cpp:
* bindings/js/JSDOMBinding.h:
* bindings/scripts/CodeGeneratorJS.pm:
(NativeToJSValue):
* bindings/scripts/CodeGeneratorObjC.pm:
(AddIncludesForType):
* css/CSSAllInOne.cpp:
* css/CSSComputedStyleDeclaration.cpp:
* css/CSSFontFaceRule.cpp:
* css/CSSFontFaceRule.h:
* css/CSSFontSelector.cpp:
* css/CSSMutableStyleDeclaration.cpp: Removed.
* css/CSSMutableStyleDeclaration.h: Removed.
* css/CSSPageRule.cpp:
* css/CSSParser.cpp:
* css/CSSStyleRule.cpp:
* css/CSSStyleRule.h:
* css/StylePropertySet.cpp: Copied from Source/WebCore/css/CSSMutableStyleDeclaration.cpp.
* css/StylePropertySet.h: Copied from Source/WebCore/css/CSSMutableStyleDeclaration.h.
* css/WebKitCSSKeyframeRule.cpp:
* css/WebKitCSSKeyframeRule.h:
* css/WebKitCSSKeyframesRule.cpp:
* css/WebKitCSSMatrix.cpp:
* dom/CSSMappedAttributeDeclaration.h:
* dom/ElementAttributeData.h:
* dom/StyledElement.cpp:
* dom/StyledElement.h:
* editing/ApplyStyleCommand.cpp:
* editing/DeleteButtonController.cpp:
* editing/EditingStyle.cpp:
* editing/Editor.cpp:
* editing/EditorCommand.cpp:
* editing/RemoveCSSPropertyCommand.cpp:
* editing/ReplaceSelectionCommand.cpp:
* editing/markup.cpp:
* html/canvas/CanvasRenderingContext2D.cpp:
* html/shadow/MeterShadowElement.cpp:
* inspector/InspectorCSSAgent.cpp:
* inspector/InspectorDOMAgent.cpp:
* page/DragController.cpp:
* page/Frame.cpp:
* rendering/RenderLayer.cpp:
* rendering/RenderTreeAsText.cpp:
* svg/SVGFontFaceElement.h:
(WebCore):

Source/WebKit/mac:

* WebView/WebHTMLView.mm:

Source/WebKit/qt:

* Api/qwebelement.cpp:

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

9 years agoCrash in RenderFlowThread::setRegionBoxesRegionStyle
mihnea@adobe.com [Fri, 3 Feb 2012 22:23:48 +0000 (22:23 +0000)]
Crash in RenderFlowThread::setRegionBoxesRegionStyle
https://bugs.webkit.org/show_bug.cgi?id=77474

Reviewed by David Hyatt.

Source/WebCore:

Flexbox and deprecated flexible box should also compute their region range
when they are part of a named flow. Until now, only RenderBlock elements
were doing that. Flexbox and deprecated flexible box, while implementing
their own layoutBlock method, were not doing that.

Tests: fast/regions/flexbox-in-region-crash.html
       fast/regions/select-in-region-crash.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeInitialRegionRangeForBlock):
(WebCore):
(WebCore::RenderBlock::computeRegionRangeForBlock):
(WebCore::RenderBlock::layoutBlock):
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::removeRegionFromThread):
(WebCore::RenderFlowThread::removeRenderBoxRegionInfo):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::RenderRegion):
(WebCore::RenderRegion::paintReplaced):
* rendering/RenderRegion.h:
(RenderRegion):

LayoutTests:

* fast/regions/flexbox-in-region-crash-expected.txt: Added.
* fast/regions/flexbox-in-region-crash.html: Added.
* fast/regions/select-in-region-crash-expected.txt: Added.
* fast/regions/select-in-region-crash.html: Added.

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

9 years agoRef Tests should support plain SVG files
rniwa@webkit.org [Fri, 3 Feb 2012 21:48:35 +0000 (21:48 +0000)]
Ref Tests should support plain SVG files
https://bugs.webkit.org/show_bug.cgi?id=77685

Reviewed by Tony Chang.

Don't assume reference files always use .html as the extension.
Instead, use the list of supported extension to look for -expected.* and -mismatch.*

Also fix various bugs in MockFileSystem and TestPort.

* Scripts/webkitpy/common/system/filesystem_mock.py:
(MockFileSystem.isdir):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.reference_files):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_is_test_file):
(PortTest.test_reference_files):
* Scripts/webkitpy/layout_tests/port/test.py:
(TestInstance.__init__):

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

9 years agoUpdate the tree state after layout and add a way to commit it
andersca@apple.com [Fri, 3 Feb 2012 21:25:44 +0000 (21:25 +0000)]
Update the tree state after layout and add a way to commit it
https://bugs.webkit.org/show_bug.cgi?id=77767

Reviewed by Andreas Kling.

* page/FrameView.cpp:
(WebCore::FrameView::performPostLayoutTasks):
Call ScrollingCoordinator::frameViewLayoutUpdated if we have a scrolling coordinator.

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::ScrollingCoordinator):
Initialize m_scrollingTreeStateCommitterTimer.

(WebCore::ScrollingCoordinator::frameViewLayoutUpdated):
Update the viewport rect and contents size of the frame view.

(WebCore::ScrollingCoordinator::scheduleTreeStateCommit):
Schedule a tree state commit unless we've already scheduled one or there are no changed properties.

(WebCore::ScrollingCoordinator::scrollingTreeStateCommitterTimerFired):
Call commitTreeState().

(WebCore::ScrollingCoordinator::commitTreeStateIfNeeded):
Commit the tree state unless there are no changed properties.

(WebCore::ScrollingCoordinator::commitTreeState):
Commit the tree state. We currently don't do anything with the committed state yet.

* page/scrolling/ScrollingCoordinator.h:
Add new member functions and the timer member variable.

* page/scrolling/ScrollingTreeState.cpp:
(WebCore::ScrollingTreeState::commit):
Copy the current tree state and restore the changed properties on the original.

* page/scrolling/ScrollingTreeState.h:
(WebCore::ScrollingTreeState::hasChangedProperties):
Return whether there are any changed properties in the tree state.

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

9 years agocomplete rebaseline of box-shadow-clipped-slices
commit-queue@webkit.org [Fri, 3 Feb 2012 21:25:36 +0000 (21:25 +0000)]
complete rebaseline of box-shadow-clipped-slices
https://bugs.webkit.org/show_bug.cgi?id=77565

Patch by Elliot Poger <epoger@google.com> on 2012-02-03
Reviewed by Darin Adler.

* platform/chromium/test_expectations.txt:

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

9 years ago[GTK] configure: Print out the -Wno-c++0x-compat test result
commit-queue@webkit.org [Fri, 3 Feb 2012 21:13:17 +0000 (21:13 +0000)]
[GTK] configure: Print out the -Wno-c++0x-compat test result
https://bugs.webkit.org/show_bug.cgi?id=77757

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-02-03
Reviewed by Martin Robinson.

The check whether -Wno-c++0x-compat flag is needed didn't print out
the test result (and newline), which caused the following test to be
displayed on the same line.

checking if we have to disable C++0x compat warnings for GCC >= 4.6.0... checking pthread.h usability... yes

* configure.ac:

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

9 years agoperf-o-matic should store chromium svn revision
rniwa@webkit.org [Fri, 3 Feb 2012 21:10:22 +0000 (21:10 +0000)]
perf-o-matic should store chromium svn revision
https://bugs.webkit.org/show_bug.cgi?id=77725

Reviewed by Dirk Pranke.

.:

Store both WebKit and Chromium revisions when both are reported.

* Websites/webkit-perf.appspot.com/models.py:
(Build):
* Websites/webkit-perf.appspot.com/report_handler.py:
(ReportHandler.post):
(ReportHandler._create_build_if_possible):
(ReportHandler._create_build_if_possible.execute):
* Websites/webkit-perf.appspot.com/static/manual-submit.html:

Tools:

Report both WebKit and Chromium revisions to the graph server. Renamed test_repository_paths to
repository_paths since it's nothing to do with tests. Also refactored scm so that head_svn_revision
is implemented in terms of newly added svn_revision.

* Scripts/webkitpy/common/checkout/scm/git.py:
(Git.svn_revision):
* Scripts/webkitpy/common/checkout/scm/scm.py:
(SCM.head_svn_revision):
(SCM):
(SCM.svn_revision):
* Scripts/webkitpy/common/checkout/scm/scm_mock.py:
(MockSCM.svn_revision):
* Scripts/webkitpy/common/checkout/scm/svn.py:
(SVN.svn_revision):
* Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
(JSONLayoutResultsGenerator.__init__):
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
(JSONResultsGeneratorBase._insert_generic_metadata):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.repository_paths):
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort.repository_paths):
* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._generate_json):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(test_run_test_set_with_json_output):
(test_run_test_set_with_json_source):
(test_run_test_set_with_multiple_repositories):

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

9 years agoFix alignment warnings in ARMv7
commit-queue@webkit.org [Fri, 3 Feb 2012 20:59:00 +0000 (20:59 +0000)]
Fix alignment warnings in ARMv7
https://bugs.webkit.org/show_bug.cgi?id=55368

Patch by Rob Buis <rbuis@rim.com> on 2012-02-03
Reviewed by Filip Pizlo.

Use reinterpret_cast_ptr and static_cast to get rid of alignment issues in ARMv7 code.

* heap/HandleTypes.h:
(JSC::HandleTypes::getFromSlot):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::specializedSweep):
* heap/MarkedBlock.h:
(JSC::MarkedBlock::forEachCell):
* runtime/WriteBarrier.h:
(JSC::WriteBarrierBase::get):
(JSC::WriteBarrierBase::unvalidatedGet):

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

9 years agoHTMLElement: Clean up tabindex attribute parsing.
kling@webkit.org [Fri, 3 Feb 2012 20:57:08 +0000 (20:57 +0000)]
HTMLElement: Clean up tabindex attribute parsing.
<http://webkit.org/b/77763>

Reviewed by Antti Koivisto.

Remove an unnecessary getAttribute() call when parsing tabindexAttr.

* html/HTMLElement.cpp:
(WebCore::HTMLElement::parseMappedAttribute):

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

9 years agoMake js-test-pre.js more worker friendly
dgrogan@chromium.org [Fri, 3 Feb 2012 20:46:37 +0000 (20:46 +0000)]
Make js-test-pre.js more worker friendly
https://bugs.webkit.org/show_bug.cgi?id=77487

Replace uses of 'window' with 'self'.

Reviewed by Ojan Vafai.

* fast/js/resources/js-test-pre.js:
* storage/indexeddb/resources/basics.js:

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

9 years agoScrollingTreeState should keep track of the scroll layer
andersca@apple.com [Fri, 3 Feb 2012 20:22:21 +0000 (20:22 +0000)]
ScrollingTreeState should keep track of the scroll layer
https://bugs.webkit.org/show_bug.cgi?id=77762

Reviewed by Andreas Kling.

* WebCore.xcodeproj/project.pbxproj:
* page/scrolling/ScrollingTreeState.h:
(ScrollingTreeState):
* page/scrolling/mac/ScrollingTreeStateMac.mm: Copied from Source/WebCore/page/scrolling/ScrollingTreeState.h.
(WebCore):
(WebCore::ScrollingTreeState::platformScrollLayer):
(WebCore::ScrollingTreeState::setScrollLayer):

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=77740
antti@apple.com [Fri, 3 Feb 2012 19:46:48 +0000 (19:46 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=77740
Split CSSMutableStyleDeclaration into separate internal and CSSOM types

Reviewed by Andreas Kling and Darin Adler.

Source/WebCore:

Split the CSSMutableStyleDeclaration into an internal type (StylePropertySet) and a CSSOM implementation type (PropertySetCSSStyleDeclaration).

To keep things somewhat manageable, this patch does NOT

- rename or add any files (so files names won't match types)
- rename fields, methods or variables to match new type names (like CSSStyleRule::declaration() -> CSSStyleRule::propertySet())
- try to realize any memory or performance gains (StylePropertySet loses the vptr but gains PropertySetCSSStyleDeclaration*)

* WebCore.exp.in:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::copy):
(WebCore::CSSComputedStyleDeclaration::makeMutable):
(WebCore::CSSComputedStyleDeclaration::copyPropertiesInSet):
* css/CSSComputedStyleDeclaration.h:
(WebCore):
(CSSComputedStyleDeclaration):
* css/CSSFontFaceRule.h:
(WebCore::CSSFontFaceRule::style):
(WebCore::CSSFontFaceRule::declaration):
(WebCore::CSSFontFaceRule::setDeclaration):
(CSSFontFaceRule):
* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::addFontFaceRule):
* css/CSSMutableStyleDeclaration.cpp:
(PropertySetCSSStyleDeclaration):
(WebCore::PropertySetCSSStyleDeclaration::create):
(WebCore::PropertySetCSSStyleDeclaration::PropertySetCSSStyleDeclaration):
(WebCore):
(WebCore::StylePropertySet::StylePropertySet):
(WebCore::StylePropertySet::~StylePropertySet):
(WebCore::StylePropertySet::deref):
(WebCore::StylePropertySet::contextStyleSheet):
(WebCore::StylePropertySet::copyPropertiesFrom):
(WebCore::StylePropertySet::getPropertyValue):
(WebCore::StylePropertySet::borderSpacingValue):
(WebCore::StylePropertySet::appendFontLonghandValueIfExplicit):
(WebCore::StylePropertySet::fontValue):
(WebCore::StylePropertySet::get4Values):
(WebCore::StylePropertySet::getLayeredShorthandValue):
(WebCore::StylePropertySet::getShorthandValue):
(WebCore::StylePropertySet::getCommonValue):
(WebCore::StylePropertySet::getPropertyCSSValue):
(WebCore::StylePropertySet::removeShorthandProperty):
(WebCore::StylePropertySet::removeProperty):
(WebCore::StylePropertySet::setNeedsStyleRecalc):
(WebCore::StylePropertySet::propertyIsImportant):
(WebCore::StylePropertySet::getPropertyShorthand):
(WebCore::StylePropertySet::isPropertyImplicit):
(WebCore::StylePropertySet::setProperty):
(WebCore::StylePropertySet::parseDeclaration):
(WebCore::StylePropertySet::addParsedProperties):
(WebCore::StylePropertySet::addParsedProperty):
(WebCore::StylePropertySet::asText):
(WebCore::StylePropertySet::merge):
(WebCore::StylePropertySet::addSubresourceStyleURLs):
(WebCore::StylePropertySet::copyBlockProperties):
(WebCore::StylePropertySet::removeBlockProperties):
(WebCore::StylePropertySet::removePropertiesInSet):
(WebCore::StylePropertySet::findPropertyWithId):
(WebCore::StylePropertySet::propertyMatches):
(WebCore::StylePropertySet::removeEquivalentProperties):
(WebCore::StylePropertySet::copy):
(WebCore::StylePropertySet::copyPropertiesInSet):
(WebCore::StylePropertySet::ensureCSSStyleDeclaration):
(WebCore::PropertySetCSSStyleDeclaration::length):
(WebCore::PropertySetCSSStyleDeclaration::item):
(WebCore::PropertySetCSSStyleDeclaration::parentRule):
(WebCore::PropertySetCSSStyleDeclaration::cssText):
(WebCore::PropertySetCSSStyleDeclaration::setCssText):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValue):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyPriority):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyShorthand):
(WebCore::PropertySetCSSStyleDeclaration::isPropertyImplicit):
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::removeProperty):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValueInternal):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
(WebCore::PropertySetCSSStyleDeclaration::parentStyleSheet):
(WebCore::PropertySetCSSStyleDeclaration::copy):
(WebCore::PropertySetCSSStyleDeclaration::makeMutable):
(WebCore::PropertySetCSSStyleDeclaration::cssPropertyMatches):
* css/CSSMutableStyleDeclaration.h:
(WebCore):
(StylePropertySet):
(WebCore::StylePropertySet::create):
(WebCore::StylePropertySet::createInline):
* css/CSSPageRule.h:
(WebCore):
* css/CSSParser.cpp:
(WebCore::parseColorValue):
(WebCore::parseSimpleLengthValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseDeclaration):
(WebCore::CSSParser::createStyleRule):
(WebCore::CSSParser::createFontFaceRule):
(WebCore::CSSParser::createPageRule):
(WebCore::CSSParser::createKeyframeRule):
* css/CSSParser.h:
(WebCore):
(CSSParser):
* css/CSSStyleDeclaration.h:
(WebCore):
(CSSStyleDeclaration):
* css/CSSStyleRule.h:
(WebCore::CSSStyleRule::style):
(WebCore::CSSStyleRule::setDeclaration):
(WebCore::CSSStyleRule::declaration):
(CSSStyleRule):
* css/CSSStyleSelector.cpp:
(WebCore::leftToRightDeclaration):
(WebCore::rightToLeftDeclaration):
(WebCore::CSSStyleSelector::addMatchedDeclaration):
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
(WebCore::CSSStyleSelector::matchAllRules):
(WebCore::CSSStyleSelector::styleForKeyframe):
(WebCore::isInsideRegionRule):
(WebCore::CSSStyleSelector::applyDeclaration):
(WebCore::CSSStyleSelector::applyDeclarations):
(WebCore::CSSStyleSelector::matchPageRulesForList):
* css/CSSStyleSelector.h:
(CSSStyleSelector):
(MatchedStyleDeclaration):
* css/WebKitCSSKeyframeRule.cpp:
(WebCore::WebKitCSSKeyframeRule::setDeclaration):
* css/WebKitCSSKeyframeRule.h:
(WebCore::WebKitCSSKeyframeRule::style):
(WebCore::WebKitCSSKeyframeRule::declaration):
(WebKitCSSKeyframeRule):
* css/WebKitCSSMatrix.cpp:
(WebCore::WebKitCSSMatrix::setMatrixValue):
* dom/Attr.h:
(WebCore::Attr::style):
* dom/Attribute.h:
(WebCore::Attribute::decl):
* dom/CSSMappedAttributeDeclaration.h:
(WebCore::CSSMappedAttributeDeclaration::declaration):
(WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
(CSSMappedAttributeDeclaration):
* dom/Document.cpp:
(WebCore::Document::createCSSStyleDeclaration):
* dom/ElementAttributeData.h:
(ElementAttributeData):
* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::ensureInlineStyleDecl):
* dom/NamedNodeMap.h:
(WebCore::NamedNodeMap::inlineStyleDecl):
(NamedNodeMap):
* dom/StyledElement.cpp:
(WebCore::StyledElement::updateStyleAttribute):
(WebCore::StyledElement::copyNonAttributeProperties):
(WebCore::StyledElement::addSubresourceAttributeURLs):
* dom/StyledElement.h:
(WebCore::StyledElement::additionalAttributeStyle):
(WebCore::StyledElement::inlineStyleDecl):
(WebCore::StyledElement::ensureInlineStyleDecl):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::removeCSSStyle):
(WebCore::ApplyStyleCommand::addBlockStyle):
(WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
* editing/DeleteButtonController.cpp:
(WebCore::DeleteButtonController::createDeletionUI):
* editing/EditingStyle.cpp:
(WebCore::copyEditingProperties):
(WebCore::editingStyleFromComputedStyle):
(WebCore):
(WebCore::HTMLElementEquivalent::propertyExistsInStyle):
(HTMLElementEquivalent):
(WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
(HTMLTextDecorationEquivalent):
(WebCore::HTMLTextDecorationEquivalent::propertyExistsInStyle):
(WebCore::HTMLTextDecorationEquivalent::valueIsPresentInStyle):
(HTMLAttributeEquivalent):
(WebCore::HTMLAttributeEquivalent::valueIsPresentInStyle):
(WebCore::HTMLAttributeEquivalent::attributeValueAsCSSValue):
(WebCore::EditingStyle::EditingStyle):
(WebCore::getRGBAFontColor):
(WebCore::EditingStyle::setProperty):
(WebCore::EditingStyle::setStyle):
(WebCore::EditingStyle::overrideWithStyle):
(WebCore::EditingStyle::extractAndRemoveTextDirection):
(WebCore::EditingStyle::removeStyleAddedByNode):
(WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
(WebCore::EditingStyle::triStateOfStyle):
(WebCore::EditingStyle::conflictsWithInlineStyleOfElement):
(WebCore::EditingStyle::elementIsStyledSpanOrHTMLEquivalent):
(WebCore::elementMatchesAndPropertyIsNotInInlineStyleDecl):
(WebCore::EditingStyle::mergeStyle):
(WebCore::styleFromMatchedRulesForElement):
(WebCore::EditingStyle::mergeStyleFromRules):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
(WebCore::removePropertiesInStyle):
(WebCore::EditingStyle::removeStyleFromRulesAndContext):
(WebCore::EditingStyle::removePropertiesInElementDefaultStyle):
(WebCore::EditingStyle::forceInline):
(WebCore::reconcileTextDecorationProperties):
(WebCore::StyleChange::StyleChange):
(WebCore::setTextDecorationProperty):
(WebCore::StyleChange::extractTextStyles):
(WebCore::diffTextDecorations):
(WebCore::fontWeightIsBold):
(WebCore::getTextAlignment):
(WebCore::getPropertiesNotIn):
(WebCore::getIdentifierValue):
(WebCore::isTransparentColorValue):
(WebCore::hasTransparentBackgroundColor):
* editing/EditingStyle.h:
(WebCore):
(WebCore::EditingStyle::create):
(EditingStyle):
(WebCore::EditingStyle::style):
(StyleChange):
* editing/Editor.cpp:
(WebCore::Editor::setBaseWritingDirection):
(WebCore::Editor::applyEditingStyleToElement):
* editing/EditorCommand.cpp:
(WebCore::applyCommandToFrame):
(WebCore::executeApplyStyle):
(WebCore::executeToggleStyleInList):
(WebCore::executeApplyParagraphStyle):
(WebCore::executeMakeTextWritingDirectionLeftToRight):
(WebCore::executeMakeTextWritingDirectionNatural):
(WebCore::executeMakeTextWritingDirectionRightToLeft):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::copyTypingStyle):
* editing/FrameSelection.h:
(WebCore):
* editing/RemoveCSSPropertyCommand.cpp:
(WebCore::RemoveCSSPropertyCommand::doApply):
(WebCore::RemoveCSSPropertyCommand::doUnapply):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
* editing/ReplaceSelectionCommand.h:
(WebCore):
* editing/markup.cpp:
(WebCore):
(StyledMarkupAccumulator):
(WebCore::StyledMarkupAccumulator::wrapWithStyleNode):
(WebCore::StyledMarkupAccumulator::appendStyleNodeOpenTag):
(WebCore::propertyMissingOrEqualToNone):
* html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::additionalAttributeStyle):
* html/HTMLTableCellElement.h:
(HTMLTableCellElement):
* html/HTMLTableColElement.cpp:
(WebCore::HTMLTableColElement::additionalAttributeStyle):
* html/HTMLTableColElement.h:
(HTMLTableColElement):
* html/HTMLTableElement.cpp:
(WebCore::leakBorderStyle):
(WebCore::HTMLTableElement::additionalAttributeStyle):
(WebCore::HTMLTableElement::createSharedCellStyle):
(WebCore::HTMLTableElement::additionalCellStyle):
(WebCore::leakGroupBorderStyle):
(WebCore::HTMLTableElement::additionalGroupStyle):
* html/HTMLTableElement.h:
(HTMLTableElement):
* html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::additionalAttributeStyle):
* html/HTMLTableSectionElement.h:
(HTMLTableSectionElement):
* html/ValidationMessage.cpp:
(WebCore::adjustBubblePosition):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::setFont):
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlPanelElement::setPosition):
(WebCore::MediaControlPanelElement::resetPosition):
(WebCore::MediaControlPanelElement::makeOpaque):
(WebCore::MediaControlPanelElement::makeTransparent):
* html/shadow/SliderThumbElement.cpp:
(WebCore::TrackLimiterElement::create):
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::buildArrayForAttributeStyles):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyle::setPropertyText):
(WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
* page/DragController.cpp:
(WebCore::DragController::concludeEditDrag):
* page/PageSerializer.cpp:
(WebCore::PageSerializer::retrieveResourcesForCSSDeclaration):
* page/PageSerializer.h:
(WebCore):
(PageSerializer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::resize):
* rendering/RenderTreeAsText.cpp:
(WebCore::isEmptyOrUnstyledAppleStyleSpan):
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::SVGFontFaceElement):

Source/WebKit/mac:

* WebView/WebFrame.mm:
(-[WebFrame _typingStyle]):

Source/WebKit/qt:

* Api/qwebelement.cpp:
(QWebElement::styleProperty):

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

9 years agoRemove unneccesary canExecuteScripts check from v8 bindings, and correctly indeicate...
jochen@chromium.org [Fri, 3 Feb 2012 19:32:34 +0000 (19:32 +0000)]
Remove unneccesary canExecuteScripts check from v8 bindings, and correctly indeicate when we're about to execute a script
https://bugs.webkit.org/show_bug.cgi?id=76704

Reviewed by Adam Barth.

Source/WebCore:

Test: http/tests/security/isolatedWorld/sandboxed-iframe.html

* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/v8/V8EventListener.cpp:
(WebCore::V8EventListener::callListenerFunction):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::callListenerFunction):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::handleOutOfMemory):
(WebCore::toV8Context):

LayoutTests:

* http/tests/security/isolatedWorld/resources/fail.html:
* http/tests/security/isolatedWorld/sandboxed-iframe-expected.txt:
* http/tests/security/isolatedWorld/sandboxed-iframe.html:

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

9 years agoAdd ScrollingTreeState class
andersca@apple.com [Fri, 3 Feb 2012 19:30:19 +0000 (19:30 +0000)]
Add ScrollingTreeState class
https://bugs.webkit.org/show_bug.cgi?id=77756

Reviewed by Andreas Kling.

Add a new ScrollingTreeState whose intent is to be a data container for the current
scrolling tree state. the ScrollingCoordinator class will update it and periodically
send over the new state to the ScrollingTree object on the scrolling thread.

* WebCore.xcodeproj/project.pbxproj:
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::ScrollingCoordinator):
* page/scrolling/ScrollingCoordinator.h:
(WebCore):
(ScrollingCoordinator):
* page/scrolling/ScrollingTreeState.cpp: Added.
(WebCore):
(WebCore::ScrollingTreeState::create):
(WebCore::ScrollingTreeState::ScrollingTreeState):
(WebCore::ScrollingTreeState::~ScrollingTreeState):
(WebCore::ScrollingTreeState::setViewportRect):
(WebCore::ScrollingTreeState::setContentsSize):
* page/scrolling/ScrollingTreeState.h: Added.
(WebCore):
(ScrollingTreeState):
(WebCore::ScrollingTreeState::viewportRect):
(WebCore::ScrollingTreeState::contentsSize):

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=77691
bdakin@apple.com [Fri, 3 Feb 2012 19:29:13 +0000 (19:29 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=77691
Fix PlatformScreen layering violation and PlatformScreenMac's incorrect use
of device scale

Reviewed by Andy Estes.

Source/WebCore:

Make screenAvailableRect() and screenRect() take a Widget again instead of a
FrameView since taking a FrameView is a layering violation.
* WebCore.exp.in:
* platform/PlatformScreen.h:
(WebCore):
* platform/blackberry/PlatformScreenBlackBerry.cpp:
(WebCore::screenAvailableRect):
(WebCore::screenRect):
* platform/chromium/PlatformScreenChromium.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/chromium/PlatformSupport.h:
(WebCore):
(PlatformSupport):
* platform/efl/PlatformScreenEfl.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/gtk/PlatformScreenGtk.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/qt/PlatformScreenQt.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/win/PlatformScreenWin.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/wx/ScreenWx.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):

It's wrong for the deviceScaleFactor to be taken into consideration here at
all.
* platform/mac/PlatformScreenMac.mm:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
(WebCore::toUserSpace):
(WebCore::toDeviceSpace):

Source/WebKit/chromium:

These two functions now take a Widget again rather than a FrameView.
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::screenRect):
(WebCore::PlatformSupport::screenAvailableRect):

Source/WebKit/mac:

toUserSpace() and toDeviceSpace() don't need to take device scale. Also
restore a comment that I needlessly removed.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::setWindowRect):
(WebChromeClient::windowRect):

Source/WebKit2:

toUserSpace() and toDeviceSpace() don't need to take device scale.
* UIProcess/API/mac/WKView.mm:
(-[WKView _convertToDeviceSpace:]):
(-[WKView _convertToUserSpace:]):

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

9 years agoBuild fix
mhahnenberg@apple.com [Fri, 3 Feb 2012 19:27:57 +0000 (19:27 +0000)]
Build fix

Unreviewed build fix

Forgot to add a couple files.

* heap/MarkedAllocator.cpp: Added.
(JSC):
(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::tryAllocate):
(JSC::MarkedAllocator::allocateSlowCase):
(JSC::MarkedAllocator::allocateBlock):
(JSC::MarkedAllocator::addBlock):
(JSC::MarkedAllocator::removeBlock):
* heap/MarkedAllocator.h: Added.
(JSC):
(DFG):
(MarkedAllocator):
(JSC::MarkedAllocator::cellSize):
(JSC::MarkedAllocator::heap):
(JSC::MarkedAllocator::setHeap):
(JSC::MarkedAllocator::setCellSize):
(JSC::MarkedAllocator::setMarkedSpace):
(JSC::MarkedAllocator::MarkedAllocator):
(JSC::MarkedAllocator::allocate):
(JSC::MarkedAllocator::reset):
(JSC::MarkedAllocator::zapFreeList):
(JSC::MarkedAllocator::forEachBlock):

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

9 years agoRefactor MarkedBlock::SizeClass into a separate class
mhahnenberg@apple.com [Fri, 3 Feb 2012 19:21:28 +0000 (19:21 +0000)]
Refactor MarkedBlock::SizeClass into a separate class
https://bugs.webkit.org/show_bug.cgi?id=77600

Reviewed by Geoffrey Garen.

We pulled SizeClass out into its own class, named MarkedAllocator, and gave it
the responsibility of allocating objects from the collection of MarkedBlocks
that it manages. Also limited the amount of coupling to internal data fields
from other places, although it's mostly unavoidable in the JIT code.

Eventually MarkedAllocator will implement various policies to do with object
management, e.g. whether or not to run destructors on objects that it manages.
MarkedSpace will manage a collection of MarkedAllocators with varying policies,
as it does now but to a larger extent.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::emitAllocateJSFinalObject):
* heap/Heap.cpp:
(JSC::Heap::collect):
(JSC::Heap::resetAllocators):
* heap/Heap.h:
(JSC::Heap::allocatorForObject):
(Heap):
* heap/MarkedAllocator.cpp: Added.
(JSC):
(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::tryAllocate):
(JSC::MarkedAllocator::allocateSlowCase):
(JSC::MarkedAllocator::allocateBlock):
(JSC::MarkedAllocator::addBlock):
(JSC::MarkedAllocator::removeBlock):
* heap/MarkedAllocator.h: Added.
(JSC):
(DFG):
(MarkedAllocator):
(JSC::MarkedAllocator::cellSize):
(JSC::MarkedAllocator::heap):
(JSC::MarkedAllocator::setHeap):
(JSC::MarkedAllocator::setCellSize):
(JSC::MarkedAllocator::setMarkedSpace):
(JSC::MarkedAllocator::MarkedAllocator):
(JSC::MarkedAllocator::allocate):
(JSC::MarkedAllocator::reset):
(JSC::MarkedAllocator::zapFreeList):
(JSC::MarkedAllocator::forEachBlock):
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::MarkedSpace):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::canonicalizeCellLivenessData):
(JSC::TakeIfUnmarked::operator()):
* heap/MarkedSpace.h:
(MarkedSpace):
(JSC::MarkedSpace::allocatorFor):
(JSC::MarkedSpace::allocate):
(JSC::MarkedSpace::forEachBlock):
(JSC::MarkedSpace::didAddBlock):
(JSC::MarkedSpace::didConsumeFreeList):
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):

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

9 years agoAdded Radar links
mitz@apple.com [Fri, 3 Feb 2012 18:25:07 +0000 (18:25 +0000)]
Added Radar links

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

9 years agoFloating image leaves hole in previous column when wrapped to next column
mitz@apple.com [Fri, 3 Feb 2012 18:23:11 +0000 (18:23 +0000)]
Floating image leaves hole in previous column when wrapped to next column
https://bugs.webkit.org/show_bug.cgi?id=77694

Reviewed by Darin Adler.

Source/WebCore:

Tests: fast/dynamic/float-moved-downwards-for-pagination-expected.html
       fast/dynamic/float-moved-downwards-for-pagination.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::clearFloats): When determining which lines to dirty,
also check for changes to the top edge of the float, which can happen when
float gets pushed down by a pagination strut.

LayoutTests:

* fast/dynamic/float-moved-downwards-for-pagination-expected.html: Added.
* fast/dynamic/float-moved-downwards-for-pagination.html: Added.

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

9 years agoREGRESSION (r105401-105403): Blue flash on css border transition
alexis.menard@openbossa.org [Fri, 3 Feb 2012 18:21:22 +0000 (18:21 +0000)]
REGRESSION (r105401-105403): Blue flash on css border transition
https://bugs.webkit.org/show_bug.cgi?id=77491

Reviewed by Simon Fraser.

Source/WebCore:

The new blend function added with r105403 takes unsigned as parameters therefore
we have to be careful to not overflow in case the to is less than from (animating
from 400 to 0 for example).

Test: animations/animation-border-overflow.html

* platform/animation/AnimationUtilities.h:
(WebCore::blend):

LayoutTests:

* animations/animation-border-overflow-expected.txt: Added.
* animations/animation-border-overflow.html: Added.

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

9 years ago[Qt][WK2] Incorrect line number dumping
jesus@webkit.org [Fri, 3 Feb 2012 18:02:42 +0000 (18:02 +0000)]
[Qt][WK2] Incorrect line number dumping
https://bugs.webkit.org/show_bug.cgi?id=60074

Reviewed by Csaba Osztrogonác.

Test http/tests/security/contentSecurityPolicy/eval-blocked.html
is now passing, unskipping it.

* platform/qt-wk2/Skipped:

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

9 years ago[Chromium] ImageBufferSkia: remove unnecessary overload of flush in
commit-queue@webkit.org [Fri, 3 Feb 2012 17:38:15 +0000 (17:38 +0000)]
[Chromium] ImageBufferSkia: remove unnecessary overload of flush in
AcceleratedDeviceContext
https://bugs.webkit.org/show_bug.cgi?id=77741

Patch by Justin Novosad <junov@chromium.org> on 2012-02-03
Reviewed by Stephen White.

Removing dead code.

* platform/graphics/skia/ImageBufferSkia.cpp:
(AcceleratedDeviceContext):

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

9 years ago[skia] Fix unit test PlatformContextSkiaTest.trackOpaqueOvalTest
jknotten@chromium.org [Fri, 3 Feb 2012 17:31:20 +0000 (17:31 +0000)]
[skia] Fix unit test PlatformContextSkiaTest.trackOpaqueOvalTest
https://bugs.webkit.org/show_bug.cgi?id=77738

We need to clear the bitmap before the test runs, otherwise the
contents of the bitmap will be uninitialised. This causes an
unpredicatable result as the canvas draw operations blend the
destination bitmap with the source colour.

Similarly, valgrind discovered that
PlatformContextSkiaTest.trackOpaqueTest and
PlatformContextSkiaTest.trackOpaqueLineTest suffers from the same
problem.

Also, re-enable WebFrameTest.FindInPage which was falsely
blamed for making this test fail.

Reviewed by Stephen White.

* tests/PlatformContextSkiaTest.cpp:
(WebCore::TEST):
* tests/WebFrameTest.cpp:
(WebKit::TEST_F):

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

9 years agoSpeculative unreviewed build fix for Qt-Windows
kbalazs@webkit.org [Fri, 3 Feb 2012 17:02:57 +0000 (17:02 +0000)]
Speculative unreviewed build fix for Qt-Windows
after http://trac.webkit.org/changeset/106659.

* platform/graphics/texmap/TextureMapper.h:
(WebCore::TextureMapper::platformCreateAccelerated):

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

9 years agoUnreviewed, rolling out r106654.
commit-queue@webkit.org [Fri, 3 Feb 2012 16:56:08 +0000 (16:56 +0000)]
Unreviewed, rolling out r106654.
http://trac.webkit.org/changeset/106654
https://bugs.webkit.org/show_bug.cgi?id=77742

triggers asserts on mac, win, gtk, qt debug bots (Requested by
philn-tp on #webkit).

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

Source/WebCore:

* Modules/intents/IntentRequest.cpp:
(WebCore::IntentRequest::create):
* bindings/generic/ActiveDOMCallback.cpp:
(WebCore::ActiveDOMCallback::ActiveDOMCallback):
* dom/ActiveDOMObject.cpp:
(WebCore::ActiveDOMObject::ActiveDOMObject):
(WebCore::ActiveDOMObject::~ActiveDOMObject):
* dom/ActiveDOMObject.h:
(ActiveDOMObject):
* dom/DocumentEventQueue.cpp:
(WebCore::DocumentEventQueue::DocumentEventQueue):
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::ScriptExecutionContext):
(WebCore::ScriptExecutionContext::~ScriptExecutionContext):
(WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
(WebCore::ScriptExecutionContext::stopActiveDOMObjects):
* dom/ScriptExecutionContext.h:
(ScriptExecutionContext):
* fileapi/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::create):
* fileapi/FileReader.cpp:
(WebCore):
* fileapi/FileReader.h:
(WebCore::FileReader::create):
* fileapi/FileWriter.cpp:
(WebCore):
* fileapi/FileWriter.h:
(WebCore::FileWriter::create):
* history/CachedFrame.cpp:
(WebCore::CachedFrame::CachedFrame):
* html/HTMLAudioElement.cpp:
(WebCore::HTMLAudioElement::create):
* html/HTMLMarqueeElement.cpp:
(WebCore::HTMLMarqueeElement::create):
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::create):
* mediastream/PeerConnection.cpp:
(WebCore::PeerConnection::create):
* notifications/Notification.cpp:
(WebCore::Notification::create):
* notifications/NotificationCenter.cpp:
* notifications/NotificationCenter.h:
(WebCore::NotificationCenter::create):
* page/DOMTimer.cpp:
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::fired):
* page/EventSource.cpp:
(WebCore::EventSource::create):
* page/SuspendableTimer.cpp:
(WebCore::SuspendableTimer::SuspendableTimer):
* storage/IDBDatabase.cpp:
(WebCore::IDBDatabase::create):
* storage/IDBRequest.cpp:
(WebCore::IDBRequest::create):
* storage/IDBTransaction.cpp:
(WebCore::IDBTransaction::create):
* webaudio/AudioContext.cpp:
(WebCore::AudioContext::create):
* websockets/WebSocket.cpp:
* websockets/WebSocket.h:
(WebCore::WebSocket::create):
* workers/SharedWorker.cpp:
(WebCore::SharedWorker::create):
* workers/Worker.cpp:
(WebCore::Worker::create):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::create):

LayoutTests:

* fast/events/resources/suspend-subframe-1.html: Removed.
* fast/events/resources/suspend-subframe-2.html: Removed.
* fast/events/suspend-timers-expected.txt: Removed.
* fast/events/suspend-timers.html: Removed.
* platform/chromium/test_expectations.txt:

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

9 years agoAdd the "V8" prefix to V8 specific IDL attributes
haraken@chromium.org [Fri, 3 Feb 2012 16:53:10 +0000 (16:53 +0000)]
Add the "V8" prefix to V8 specific IDL attributes
https://bugs.webkit.org/show_bug.cgi?id=77713

Reviewed by Adam Barth.

This patch adds the "V8" prefix to a V8 specific IDL attribute:
[EnabledAtRuntime] => [V8EnabledAtRuntime]

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
(GenerateImplementation):
(GetRuntimeEnableFunctionName):

* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp: Updated the run-bindings-tests results.
(WebCore::ConfigureV8TestObjTemplate):

* Modules/gamepad/NavigatorGamepad.idl:
* dom/Clipboard.idl:
* dom/Document.idl:
* dom/Element.idl:
* dom/MouseEvent.idl:
* dom/ShadowRoot.idl:
* html/HTMLInputElement.idl:
* html/HTMLMediaElement.idl:
* html/HTMLTrackElement.idl:
* html/TextTrack.idl:
* html/TextTrackCue.idl:
* html/TextTrackCueList.idl:
* html/shadow/HTMLContentElement.idl:
* html/track/TextTrackList.idl:
* html/track/TrackEvent.idl:
* page/DOMWindow.idl:
* page/History.idl:
* page/Navigator.idl:
* storage/DOMWindowSQLDatabase.idl:
* webaudio/DOMWindowWebAudio.idl:
* websockets/DOMWindowWebSocket.idl:
* workers/WorkerContext.idl:
* xml/XMLHttpRequest.idl:

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

9 years agoWeb Inspector: Retained size for classes is too conservative in heap profiler
commit-queue@webkit.org [Fri, 3 Feb 2012 16:50:16 +0000 (16:50 +0000)]
Web Inspector: Retained size for classes is too conservative in heap profiler
https://bugs.webkit.org/show_bug.cgi?id=77726

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-02-03
Reviewed by Yury Semikhatsky.

Makes retained size of all objects of particular class show correct value
in Summary view of heap profiler.

* inspector/front-end/DetailedHeapshotGridNodes.js:
(WebInspector.HeapSnapshotConstructorNode.prototype.get data):
* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype._buildAggregates):
(WebInspector.HeapSnapshot.prototype._buildAggregates.forDominatedNodes):

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

9 years agoWeb Inspector: Introduce "Copy XPath" popup menu item for DOM elements
apavlov@chromium.org [Fri, 3 Feb 2012 16:43:26 +0000 (16:43 +0000)]
Web Inspector: Introduce "Copy XPath" popup menu item for DOM elements
https://bugs.webkit.org/show_bug.cgi?id=77619

Reviewed by Vsevolod Vlasov.

Source/WebCore:

XPath is optimized whenever an element has the "id" attribute.

Test: inspector/elements/node-xpath.xhtml

* English.lproj/localizedStrings.js:
* inspector/front-end/DOMAgent.js:
(WebInspector.DOMNode.XPathStep):
(WebInspector.DOMNode.XPathStep.prototype.toString):
(WebInspector.DOMNode.prototype.copyXPath):
(WebInspector.DOMNode.prototype.isXMLNode):
(WebInspector.DOMNode.prototype.xPath):
(WebInspector.DOMNode.prototype._xPathValue):
(WebInspector.DOMNode.prototype._xPathIndex):
* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype._populateNodeContextMenu):

LayoutTests:

* inspector/elements/node-xpath-expected.txt: Added.
* inspector/elements/node-xpath.xhtml: Added.

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

9 years ago[Chromium] Use the current clip when marking paints as opaque
commit-queue@webkit.org [Fri, 3 Feb 2012 16:28:02 +0000 (16:28 +0000)]
[Chromium] Use the current clip when marking paints as opaque
https://bugs.webkit.org/show_bug.cgi?id=77582

Patch by Dana Jansens <danakj@chromium.org> on 2012-02-03
Reviewed by Stephen White.

Source/WebCore:

New unit test in PlatformContextSkiaTest.cpp

* platform/graphics/skia/OpaqueRegionSkia.cpp:
(WebCore::OpaqueRegionSkia::markRectAsOpaque):
* platform/graphics/skia/PlatformContextSkia.h:
(WebCore::PlatformContextSkia::canvas):

Source/WebKit/chromium:

* tests/PlatformContextSkiaTest.cpp:
(WebCore::TEST):
(WebCore):

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

9 years agoinspector/debugger/pause-in-inline-script.html asserts in chromium debug
yurys@chromium.org [Fri, 3 Feb 2012 16:20:32 +0000 (16:20 +0000)]
inspector/debugger/pause-in-inline-script.html asserts in chromium debug
https://bugs.webkit.org/show_bug.cgi?id=77663

Source/WebCore:

Make ASSERT in MainResourceLoader not fail if debugger hits breakpoint
in the main resource inline script.

Reviewed by Pavel Feldman.

Test: inspector/debugger/pause-in-inline-script.html

* bindings/js/ScriptDebugServer.h:
(WebCore::ScriptDebugServer::isPaused):
(ScriptDebugServer):
* bindings/v8/ScriptDebugServer.h:
(ScriptDebugServer):
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::didClearMainFrameWindowObject):
(WebCore):
(WebCore::InspectorDebuggerAgent::isPaused):
* inspector/InspectorDebuggerAgent.h:
(InspectorDebuggerAgent):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::isDebuggerPausedImpl):
(WebCore):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::isDebuggerPaused):
(WebCore):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::didFinishLoading):

LayoutTests:

Reviewed by Pavel Feldman.

* platform/chromium/test_expectations.txt: assert was fixed, remove
  custom expectation for inspector/debugger/pause-in-inline-script.html

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

9 years agoFix typo
haraken@chromium.org [Fri, 3 Feb 2012 15:07:19 +0000 (15:07 +0000)]
Fix typo
https://bugs.webkit.org/show_bug.cgi?id=77708

Reviewed by Adam Roben.

This patch fixes typos: [ObjCLegacyUnamedParameters] => [ObjCLegacyUnnamedParameters]

No tests. No change in behavior.

* css/CSSMediaRule.idl:
* css/CSSPrimitiveValue.idl:
* css/CSSStyleDeclaration.idl:
* css/CSSStyleSheet.idl:
* dom/CharacterData.idl:
* dom/DOMImplementation.idl:
* dom/Document.idl:
* dom/Element.idl:
* dom/Event.idl:
* dom/EventTarget.idl:
* dom/MouseEvent.idl:
* dom/MutationEvent.idl:
* dom/NamedNodeMap.idl:
* dom/Node.idl:
* dom/Range.idl:
* dom/UIEvent.idl:
* html/HTMLSelectElement.idl:
* xml/XPathExpression.idl:

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

9 years ago[Qt][Texmap] Refactor TextureMapper API to use ImageBuffers when possible.
noam.rosenthal@nokia.com [Fri, 3 Feb 2012 14:59:31 +0000 (14:59 +0000)]
[Qt][Texmap] Refactor TextureMapper API to use ImageBuffers when possible.
https://bugs.webkit.org/show_bug.cgi?id=77148

Reviewed by Martin Robinson.

Source/WebCore:

Removed TextureMapperQt, and instead created a TextureMapperImageBuffer class,
which responds to an "Software" mode of TextureMapper, instead of creating subclasses
of TextureMapper directly. This allows using the software fallback of TextureMapper by any
sort.

To make the ImageBuffer backend easier, content updates to BitmapTexture can now use either
an image, or a raw data pointer. The raw data pointer is provided for performance reasons,
as converting data to/from Image references in Qt generates unnecessary deep copies of the
image data.

Also, functions that use TransformationMatrix were added to GraphicsContext, to allow for
3D transforms in cross platform code.
After this patch everything renders the same. An additional bug report was created to allow
ImageBuffer shallow image copies: https://bugs.webkit.org/show_bug.cgi?id=77689

Covered extensively by existing tests, no behavioral changes.

* Target.pri:
* platform/graphics/GraphicsContext.cpp:
* platform/graphics/GraphicsContext.h:
(WebCore):
(GraphicsContext):
* platform/graphics/cairo/TextureMapperCairo.cpp:
* platform/graphics/opengl/TextureMapperGL.cpp:
(TextureMapperGLData):
(BitmapTextureGL):
(WebCore::BitmapTextureGL::BitmapTextureGL):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::BitmapTextureGL::reset):
(WebCore):
(WebCore::swizzleBGRAToRGBA):
(WebCore::BitmapTextureGL::updateContents):
(WebCore::BitmapTextureGL::destroy):
(WebCore::TextureMapperGL::bindSurface):
(WebCore::TextureMapper::platformCreateAccelerated):
* platform/graphics/opengl/TextureMapperGL.h:
(TextureMapperGL):
(WebCore::TextureMapperGL::accelerationMode):
(WebCore):
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore):
(WebCore::GraphicsContext::get3DTransform):
(WebCore::GraphicsContext::concat3DTransform):
(WebCore::GraphicsContext::set3DTransform):
* platform/graphics/qt/TextureMapperQt.cpp: Removed.
* platform/graphics/qt/TextureMapperQt.h: Removed.
* platform/graphics/texmap/TextureMapper.cpp:
(WebCore):
(BitmapTextureImageBuffer):
(TextureMapperImageBuffer):
* platform/graphics/texmap/TextureMapper.h:
(WebCore::BitmapTexture::BitmapTexture):
(BitmapTexture):
(WebCore::BitmapTexture::bpp):
(WebCore::BitmapTexture::isOpaque):
(WebCore::TextureMapper::setGraphicsContext):
(WebCore::TextureMapper::graphicsContext):
(TextureMapper):
(WebCore::TextureMapper::TextureMapper):
(WebCore::TextureMapper::platformCreateAccelerated):
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::renderContent):
(WebCore::TextureMapperNode::setContentsTileBackBuffer):
* platform/graphics/texmap/TextureMapperNode.h:
(TextureMapperNode):

Source/WebKit/qt:

Use TextureMapper::create instead of creating TextureMapperGL/TextureMapperQt directly.

* Api/qwebframe.cpp:
(QWebFramePrivate::renderCompositedLayers):
* WebCoreSupport/PageClientQt.cpp:
(WebCore::PageClientQWidget::setRootGraphicsLayer):
(WebCore::PageClientQGraphicsWidget::setRootGraphicsLayer):

Source/WebKit2:

Use TextureMapper::create instead of creating TextureMapperGL/TextureMapperQt directly.
Remove calls to unused API.

* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
(WebKit::LayerTreeHostProxy::paintToGraphicsContext):
(WebKit::LayerTreeHostProxy::createImage):
(WebKit::LayerTreeHostProxy::ensureRootLayer):

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

9 years ago[Qt] Split QQuickWebViewPrivate in two classes, for desktop and touch behavior.
jocelyn.turcotte@nokia.com [Fri, 3 Feb 2012 14:47:50 +0000 (14:47 +0000)]
[Qt] Split QQuickWebViewPrivate in two classes, for desktop and touch behavior.
https://bugs.webkit.org/show_bug.cgi?id=77632

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Replace the runtime property setting the desktop behavior on each instance
by a static boolean controlling the behavior used by future created WebViews.

* UIProcess/API/qt/qquickwebpage.cpp:
Let only setContentsSize control the size of the drawing area instead of deferring
it until geometryChanged is called.
(QQuickWebPagePrivate::QQuickWebPagePrivate):
* UIProcess/API/qt/qquickwebpage_p.h:
* UIProcess/API/qt/qquickwebpage_p_p.h:
(QQuickWebPagePrivate):
* UIProcess/API/qt/qquickwebview.cpp:
(createPrivateObject):
(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::~QQuickWebViewPrivate):
(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::processDidCrash):
(QQuickWebViewLegacyPrivate::QQuickWebViewLegacyPrivate):
(QQuickWebViewLegacyPrivate::initialize):
(QQuickWebViewLegacyPrivate::updateViewportSize):
(QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
(QQuickWebViewFlickablePrivate::~QQuickWebViewFlickablePrivate):
(QQuickWebViewFlickablePrivate::initialize):
(QQuickWebViewFlickablePrivate::loadDidCommit):
(QQuickWebViewFlickablePrivate::didFinishFirstNonEmptyLayout):
(QQuickWebViewFlickablePrivate::didChangeViewportProperties):
(QQuickWebViewFlickablePrivate::updateViewportSize):
(QQuickWebViewFlickablePrivate::_q_updateVisibleContentRectAndScale):
(QQuickWebViewFlickablePrivate::_q_suspend):
(QQuickWebViewFlickablePrivate::_q_resume):
(QQuickWebViewFlickablePrivate::pageDidRequestScroll):
(QQuickWebViewFlickablePrivate::didChangeContentsSize):
(QQuickWebViewFlickablePrivate::computeViewportConstraints):
(QQuickWebViewFlickablePrivate::PostTransitionState::apply):
(QQuickWebViewExperimental::setFlickableViewportEnabled):
The switch is now a static function that has to be called before a WebView
is created. The switch can have it's default defined by the deploying platform.
(QQuickWebViewExperimental::flickableViewportEnabled):
(QQuickWebView::QQuickWebView):
On creation of QQuickWebView, the static boolean is read to know if we want
a QQuickWebViewTouchPrivate or a QQuickWebViewDesktopPrivate.
(QQuickWebView::geometryChanged):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
(QQuickWebViewPrivate::loadDidCommit):
(QQuickWebViewPrivate::didFinishFirstNonEmptyLayout):
(QQuickWebViewPrivate::didChangeViewportProperties):
(QQuickWebViewPrivate::viewportInteractionEngine):
(QQuickWebViewPrivate::updateViewportSize):
(QQuickWebViewPrivate::_q_updateVisibleContentRectAndScale):
(QQuickWebViewPrivate::_q_suspend):
(QQuickWebViewPrivate::_q_resume):
(QQuickWebViewPrivate::pageDidRequestScroll):
(QQuickWebViewPrivate::didChangeContentsSize):
(QQuickWebViewLegacyPrivate):
(QQuickWebViewFlickablePrivate):
(QQuickWebViewFlickablePrivate::viewportInteractionEngine):
(PostTransitionState):
(QQuickWebViewFlickablePrivate::PostTransitionState::PostTransitionState):
* UIProcess/API/qt/qwebviewportinfo.cpp:
(QWebViewportInfo::currentScale):
(QWebViewportInfo::devicePixelRatio):
(QWebViewportInfo::initialScale):
(QWebViewportInfo::minimumScale):
(QWebViewportInfo::maximumScale):
(QWebViewportInfo::isScalable):
(QWebViewportInfo::layoutSize):
* UIProcess/API/qt/tests/publicapi/publicapi.pro:
* UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro: Added.
* UIProcess/API/qt/tests/qmltests/DesktopBehavior/DesktopWebView.qml: Removed.
* UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_itemSelector.qml: Renamed
from Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_itemSelector.qml.
Moved to DesktopBehavior instead of using a DesktopWebView to workaround the touch event limitation.
* UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_linkHovered.qml:
* UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_loadHtml.qml:
* UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_messaging.qml:
* UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_navigationRequested.qml:
* UIProcess/API/qt/tests/qmltests/WebView.pro: Copied
from Source/WebKit2/UIProcess/API/qt/tests/qmltests/qmltests.pro.
* UIProcess/API/qt/tests/qmltests/qmltests.pro:
Split qmltests in two executables, tst_qmltests_DesktopBehavior and tst_qmltests_WebView.
The former runs without setFlickableViewportEnabled and the later does.
* UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
(main):
* UIProcess/API/qt/tests/qquickwebview/qquickwebview.pro:
* UIProcess/API/qt/tests/tests.pri:
* UIProcess/qt/QtWebPageEventHandler.cpp:
(QtWebPageEventHandler::QtWebPageEventHandler):

Tools:

* MiniBrowser/qt/BrowserWindow.cpp:
(BrowserWindow::BrowserWindow):
* MiniBrowser/qt/MiniBrowserApplication.cpp:
(MiniBrowserApplication::sendTouchEvent):
(MiniBrowserApplication::handleUserOptions):
* MiniBrowser/qt/MiniBrowserApplication.h:
(WindowOptions):
(WindowOptions::WindowOptions):
* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::PlatformWebView::PlatformWebView):
* WebKitTestRunner/qt/main.cpp:
(main):
* qmake/mkspecs/features/default_post.prf:

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

9 years agoWeb Inspector: console evaluation doesn't work on breakpoint in pages with CSP
yurys@chromium.org [Fri, 3 Feb 2012 14:47:31 +0000 (14:47 +0000)]
Web Inspector: console evaluation doesn't work on breakpoint in pages with CSP
https://bugs.webkit.org/show_bug.cgi?id=77203

Inspector console evaluation now works when debugger is paused in a page with
content-security-policy prohibiting evals.

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/debugger/eval-on-pause-blocked.html

* bindings/js/JSInjectedScriptHostCustom.cpp:
* bindings/js/ScriptState.cpp:
(WebCore::evalEnabled):
(WebCore):
(WebCore::setEvalEnabled):
* bindings/js/ScriptState.h:
(WebCore):
* bindings/v8/ScriptObject.h:
(WebCore::ScriptObject::ScriptObject):
* bindings/v8/ScriptState.cpp:
(WebCore::evalEnabled):
(WebCore):
(WebCore::setEvalEnabled):
* bindings/v8/ScriptState.h:
(WebCore):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
* inspector/InjectedScript.cpp:
(WebCore::InjectedScript::makeCall):
* inspector/InjectedScriptHost.idl:
* inspector/InjectedScriptSource.js:
(.):

LayoutTests:

* inspector/debugger/eval-on-pause-blocked-expected.txt: Added.
* inspector/debugger/eval-on-pause-blocked.html: Added.

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

9 years ago[Qt] Rename content* to contents* in QQuickWebPage.
jocelyn.turcotte@nokia.com [Fri, 3 Feb 2012 14:44:32 +0000 (14:44 +0000)]
[Qt] Rename content* to contents* in QQuickWebPage.
https://bugs.webkit.org/show_bug.cgi?id=77629

Reviewed by Kenneth Rohde Christiansen.

* UIProcess/API/qt/qquickwebpage.cpp:
(QQuickWebPagePrivate::QQuickWebPagePrivate):
(QQuickWebPagePrivate::paintToCurrentGLContext):
(QQuickWebPage::setContentsSize):
(QQuickWebPage::contentsSize):
(QQuickWebPage::setContentsScale):
(QQuickWebPage::contentsScale):
(QQuickWebPage::transformToItem):
(QQuickWebPagePrivate::updateSize):
* UIProcess/API/qt/qquickwebpage_p.h:
* UIProcess/API/qt/qquickwebpage_p_p.h:
(QQuickWebPagePrivate):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::didChangeContentsSize):
(QQuickWebViewPrivate::updateVisibleContentRectAndScale):
(QQuickWebViewPrivate::PostTransitionState::apply):
* UIProcess/API/qt/qwebviewportinfo.cpp:
(QWebViewportInfo::contentsSize):
* UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
(tst_QQuickWebView::scrollRequest):
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::setItemRectVisible):
(WebKit::QtViewportInteractionEngine::event):
(WebKit::QtViewportInteractionEngine::wheelEvent):
(WebKit::QtViewportInteractionEngine::pagePositionRequest):
(WebKit::QtViewportInteractionEngine::computePosRangeForItemAtScale):
(WebKit::QtViewportInteractionEngine::applyConstraints):
(WebKit::QtViewportInteractionEngine::currentCSSScale):
(WebKit::QtViewportInteractionEngine::pinchGestureStarted):
(WebKit::QtViewportInteractionEngine::scaleContent):

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

9 years ago2012-02-03 Rob Buis <rbuis@rim.com>
rwlbuis@webkit.org [Fri, 3 Feb 2012 14:05:32 +0000 (14:05 +0000)]
2012-02-03  Rob Buis  <rbuis@rim.com>

        Upstream targetType usage on ResourceRequest for BlackBerry port
        https://bugs.webkit.org/show_bug.cgi?id=77649

        Reviewed by Antonio Gomes.

        Upstream bits that make use of targetType enum.

        * loader/PingLoader.cpp:
        (WebCore::PingLoader::loadImage):
        (WebCore::PingLoader::sendPing):
        (WebCore::PingLoader::reportContentSecurityPolicyViolation):
        * platform/network/blackberry/ResourceRequest.h:
        (ResourceRequest):
        (WebCore::ResourceRequest::targetType):
        (WebCore::ResourceRequest::setTargetType):
        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::createRequest):

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

9 years agoSource/WebCore: Ensure timers and other active DOM objects do not fire in suspended...
commit-queue@webkit.org [Fri, 3 Feb 2012 13:42:20 +0000 (13:42 +0000)]
Source/WebCore: Ensure timers and other active DOM objects do not fire in suspended documents.
https://bugs.webkit.org/show_bug.cgi?id=53733

ScriptExecutionContext now remembers it has suspended active DOM objects
and suspends all newly installed active DOM objects as well.

All create-calls active DOM objects now calls the post constructor method
suspendIfNeeded that updates the suspend state. It is post constructor
because the suspend/resume functions are virtual and thus can not be called
from constructors.

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-02-03
Reviewed by Mihai Parparita.

Test: fast/events/suspend-timers.html

* Modules/intents/IntentRequest.cpp:
(WebCore::IntentRequest::create):
* bindings/generic/ActiveDOMCallback.cpp:
(WebCore::ActiveDOMCallback::ActiveDOMCallback):
* dom/ActiveDOMObject.cpp:
(WebCore::ActiveDOMObject::ActiveDOMObject):
(WebCore::ActiveDOMObject::~ActiveDOMObject):
(WebCore::ActiveDOMObject::suspendIfNeeded):
* dom/ActiveDOMObject.h:
(WebCore::ActiveDOMObject::suspendIfNeededCalled):
* dom/DocumentEventQueue.cpp:
(WebCore::DocumentEventQueue::DocumentEventQueue):
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::ScriptExecutionContext):
(WebCore::ScriptExecutionContext::~ScriptExecutionContext):
(WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
(WebCore::ScriptExecutionContext::stopActiveDOMObjects):
(WebCore::ScriptExecutionContext::suspendActiveDOMObjectIfNeeded):
* dom/ScriptExecutionContext.h:
(WebCore::ScriptExecutionContext::activeDOMObjectsAreSuspended):
* fileapi/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::create):
* fileapi/FileReader.cpp:
(WebCore::FileReader::create):
* fileapi/FileReader.h:
* fileapi/FileWriter.cpp:
(WebCore::FileWriter::create):
* fileapi/FileWriter.h:
* history/CachedFrame.cpp:
(WebCore::CachedFrame::CachedFrame):
* html/HTMLAudioElement.cpp:
(WebCore::HTMLAudioElement::create):
* html/HTMLMarqueeElement.cpp:
(WebCore::HTMLMarqueeElement::create):
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::create):
* mediastream/PeerConnection.cpp:
(WebCore::PeerConnection::create):
* notifications/Notification.cpp:
(WebCore::Notification::create):
* notifications/NotificationCenter.cpp:
(WebCore::NotificationCenter::create):
* notifications/NotificationCenter.h:
* page/DOMTimer.cpp:
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::fired):
* page/EventSource.cpp:
(WebCore::EventSource::create):
* page/SuspendableTimer.cpp:
(WebCore::SuspendableTimer::SuspendableTimer):
* storage/IDBDatabase.cpp:
(WebCore::IDBDatabase::create):
* storage/IDBRequest.cpp:
(WebCore::IDBRequest::create):
* storage/IDBTransaction.cpp:
(WebCore::IDBTransaction::create):
* webaudio/AudioContext.cpp:
(WebCore::AudioContext::create):
* websockets/WebSocket.cpp:
(WebCore::WebSocket::create):
* websockets/WebSocket.h:
* workers/SharedWorker.cpp:
(WebCore::SharedWorker::create):
* workers/Worker.cpp:
(WebCore::Worker::create):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::create):

LayoutTests: Test that timers do not fire from subframes of suspended documents.
https://bugs.webkit.org/show_bug.cgi?id=53733

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-02-03
Reviewed by Mihai Parparita.

* fast/events/resources/suspend-subframe-1.html: Added.
* fast/events/resources/suspend-subframe-2.html: Added.
* fast/events/suspend-timers-expected.txt: Added.
* fast/events/suspend-timers.html: Added.
* platform/chromium/test_expectations.txt:

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

9 years ago2012-02-03 Yury Semikhatsky <yurys@chromium.org>
yurys@chromium.org [Fri, 3 Feb 2012 13:36:22 +0000 (13:36 +0000)]
2012-02-03  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium deps.

        * DEPS:

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

9 years agoNew test introduced in r106642 failes on Qt Linux Release
ossy@webkit.org [Fri, 3 Feb 2012 13:23:29 +0000 (13:23 +0000)]
New test introduced in r106642 failes on Qt Linux Release
https://bugs.webkit.org/show_bug.cgi?id=77729

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-02-03
Reviewed by Csaba Osztrogonác.

* platform/qt/Skipped:

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

9 years ago[Qt] Fix build when cross-compiling
commit-queue@webkit.org [Fri, 3 Feb 2012 13:05:38 +0000 (13:05 +0000)]
[Qt] Fix build when cross-compiling
https://bugs.webkit.org/show_bug.cgi?id=77634

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-02-03
Reviewed by Tor Arne Vestbø.

Source/WebKit2:

* WebKit2.pri: Link in -lrt on linux mkspecs, regardless of whether gcc
is in use or not. More specifically this fixes the case where the makespace
is not linux-g++* but for a cross-compiling one like linux-arm-gnueabi-g++.

Source/WTF:

* WTF.pri: Don't use icu-config for determining the library search
path and libraries needed for ICU. Either we use icu-config for includes
_and_ libraries or we don't. Right now we assume that icu is a system library
and expect the headers in the default include search pathes (/usr/include for example).
However we use icu-config to figure out where the libraries are, which breaks when
cross-compiling, because icu-config isn't cross-compile friendly (I wish icu was using
pkg-config). I think for the time being we should require ICU as a _system_ library,
which implies the header and library availability in default search paths. This also
makes the build succeed when cross-compiling with --sysroot.

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

9 years ago[Qt] Replace GNU linker script for exports with export macros in WTF/JSC
commit-queue@webkit.org [Fri, 3 Feb 2012 12:51:42 +0000 (12:51 +0000)]
[Qt] Replace GNU linker script for exports with export macros in WTF/JSC
https://bugs.webkit.org/show_bug.cgi?id=77723

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-02-03
Reviewed by Tor Arne Vestbø.

.:

* Source/api.pri: Remove use of GNU linker script on Linux.
* Source/qtwebkit-export.map: Removed.

Source/JavaScriptCore:

* wtf/Platform.h: Enable use of export macros.

Tools:

* Tools.pro: Compile WTR again on all platforms with WK2.

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

9 years agoDo not ASSERT on TouchStationary TouchPoint state.
commit-queue@webkit.org [Fri, 3 Feb 2012 12:49:14 +0000 (12:49 +0000)]
Do not ASSERT on TouchStationary TouchPoint state.
https://bugs.webkit.org/show_bug.cgi?id=77620

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-02-03
Reviewed by Kenneth Rohde Christiansen.

* page/EventHandler.cpp:
(WebCore::eventNameForTouchPointState): Explicitly show that TouchStationary is asserted.
(WebCore::EventHandler::handleTouchEvent):
    Remove TouchStationary from ASSERT. The value of HitTestRequest is restored to the
    value it should have if hittested, but is not used.

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

9 years agoAdd the "ObjC" prefix to ObjC specific IDL attributes
haraken@chromium.org [Fri, 3 Feb 2012 12:14:37 +0000 (12:14 +0000)]
Add the "ObjC" prefix to ObjC specific IDL attributes
https://bugs.webkit.org/show_bug.cgi?id=77708

Reviewed by Adam Barth.

This patch adds the "ObjC" prefix to ObjC specific IDL attributes, as follows:

    [Polymorphic] => [ObjCPolymorphic]
    [OldStyleObjC] => [ObjCLegacyUnamedParameters]
    [UsesView] => [ObjCUseDefaultView] (Note: Renamed for clarification)

No tests. No changes in behavior.

* bindings/scripts/CodeGeneratorObjC.pm:
(GenerateHeader):
(GenerateImplementation):
* css/CSSMediaRule.idl:
* css/CSSPrimitiveValue.idl:
* css/CSSRule.idl:
* css/CSSStyleDeclaration.idl:
* css/CSSStyleSheet.idl:
* css/CSSValue.idl:
* css/StyleSheet.idl:
* dom/CharacterData.idl:
* dom/DOMImplementation.idl:
* dom/Document.idl:
* dom/Element.idl:
* dom/Event.idl:
* dom/EventTarget.idl:
* dom/MouseEvent.idl:
* dom/MutationEvent.idl:
* dom/NamedNodeMap.idl:
* dom/Node.idl:
* dom/Range.idl:
* dom/UIEvent.idl:
* html/HTMLCollection.idl:
* html/HTMLSelectElement.idl:
* svg/SVGPathSeg.idl:
* xml/XPathExpression.idl:

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

9 years agoEnsure that inspector disabled build works
commit-queue@webkit.org [Fri, 3 Feb 2012 12:02:31 +0000 (12:02 +0000)]
Ensure that inspector disabled build works
https://bugs.webkit.org/show_bug.cgi?id=77604

Patch by Sriram Neelakandan <sriram.neelakandan@gmail.com> on 2012-02-03
Reviewed by Tor Arne Vestbø.

* qmake/mkspecs/features/features.prf:

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

9 years agoTypingCommand should be prepared against detached document.
morrita@google.com [Fri, 3 Feb 2012 11:39:51 +0000 (11:39 +0000)]
TypingCommand should be prepared against detached document.
https://bugs.webkit.org/show_bug.cgi?id=77216

Reviewed by Ryosuke Niwa.

Added null checks for document()->frame().

No new tests. Just tighten guards for possible codepaths.

* editing/TypingCommand.cpp:
(WebCore::TypingCommand::markMisspellingsAfterTyping):
(WebCore::TypingCommand::typingAddedToOpenCommand):
(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):

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

9 years agoRename [DontEnum] IDL to [NotEnumerable] IDL
haraken@chromium.org [Fri, 3 Feb 2012 11:05:06 +0000 (11:05 +0000)]
Rename [DontEnum] IDL to [NotEnumerable] IDL
https://bugs.webkit.org/show_bug.cgi?id=77710

Reviewed by Adam Barth.

[DontEnum] is a negation of [[Enumerable]] in the ECMAScript spec
(8.6.1 of http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf).
This patch renames [DontEnum] to [NotEnumerable].

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateAttributesHashTable):
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateSingleBatchedAttribute):
(GenerateImplementation):

* css/WebKitCSSMatrix.idl:
* dom/DOMCoreException.idl:
* dom/Document.idl:
* dom/Element.idl:
* dom/EventException.idl:
* dom/RangeException.idl:
* fileapi/FileException.idl:
* fileapi/OperationNotAllowedException.idl:
* html/DOMTokenList.idl:
* html/HTMLAnchorElement.idl:
* html/HTMLBodyElement.idl:
* html/HTMLFrameSetElement.idl:
* html/HTMLInputElement.idl:
* page/DOMSelection.idl:
* page/DOMWindow.idl:
* page/Location.idl:
* storage/IDBDatabaseException.idl:
* storage/Storage.idl:
* svg/SVGElementInstance.idl:
* svg/SVGException.idl:
* workers/WorkerLocation.idl:
* xml/XMLHttpRequestException.idl:
* xml/XPathException.idl:

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

9 years agoRename [InitializedByConstructor] IDL to [InitializedByEventConstructor] IDL
haraken@chromium.org [Fri, 3 Feb 2012 11:02:22 +0000 (11:02 +0000)]
Rename [InitializedByConstructor] IDL to [InitializedByEventConstructor] IDL
https://bugs.webkit.org/show_bug.cgi?id=77711

Reviewed by Adam Barth.

[InitializedByConstructor] can be used only when [ConstructorTemplate=Event]
is specified on the interface. This patch renames [InitializedByConstructor] to
[InitializedByEventConstructor] for clarification.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateConstructorDefinition):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateEventConstructorCallback):

* bindings/scripts/test/TestEventConstructor.idl:
* bindings/scripts/test/V8/V8TestEventConstructor.cpp: Updated the run-bindings-tests results.
(WebCore):

* dom/BeforeLoadEvent.idl:
* dom/CustomEvent.idl:
* dom/ErrorEvent.idl:
* dom/Event.idl:
* dom/HashChangeEvent.idl:
* dom/MessageEvent.idl:
* dom/OverflowEvent.idl:
* dom/PageTransitionEvent.idl:
* dom/PopStateEvent.idl:
* dom/ProgressEvent.idl:
* dom/WebKitAnimationEvent.idl:
* dom/WebKitTransitionEvent.idl:
* html/canvas/WebGLContextEvent.idl:
* html/track/TrackEvent.idl:
* storage/StorageEvent.idl:
* websockets/CloseEvent.idl:

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

9 years agoAdd the "CPP" prefix to CPP specific IDL attributes
haraken@chromium.org [Fri, 3 Feb 2012 10:31:41 +0000 (10:31 +0000)]
Add the "CPP" prefix to CPP specific IDL attributes
https://bugs.webkit.org/show_bug.cgi?id=77707

Reviewed by Adam Barth.

This patch adds the "CPP" prefix to a CPP specific IDL attribute.
Specifically, this patch renames [PureInterface] to [CPPPureInterface]

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorCPP.pm:
(GenerateHeader):
(GenerateImplementation):
* css/MediaQueryListListener.idl:
* dom/EventListener.idl:
* dom/EventTarget.idl:
* dom/NodeFilter.idl:

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

9 years agoImplement touch event emulation in the WebCore layer
apavlov@chromium.org [Fri, 3 Feb 2012 10:10:54 +0000 (10:10 +0000)]
Implement touch event emulation in the WebCore layer
https://bugs.webkit.org/show_bug.cgi?id=77105

Reviewed by Ryosuke Niwa.

Source/WebCore:

This change essentially maps mouse events into single-touch events in the following way:
- mousedown -> touchstart
- mouseup -> touchend
- mousemove -> touchmove (between mousedown and mouseup).

Test: fast/events/touch/emulate-touch-events.html

* page/EventHandler.cpp:
(SyntheticTouchPoint): A synthetic touch point built from PlatformMouseEvent.
(WebCore::SyntheticTouchPoint::SyntheticTouchPoint):
(SyntheticSingleTouchEvent): A synthetic touch point event built from PlatformMouseEvent.
(WebCore::SyntheticSingleTouchEvent::SyntheticSingleTouchEvent):
(WebCore::EventHandler::handleMouseReleaseEvent): Invoke maybeDispatchSyntheticTouchEvent() and bail out if necessary.
(WebCore::EventHandler::handleMousePressEvent): Invoke maybeDispatchSyntheticTouchEvent() and bail out if necessary.
(WebCore::EventHandler::mouseMoved): Invoke maybeDispatchSyntheticTouchEvent() and bail out if necessary.
(WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled): Dispatch a synthetic touch event if necessary.
* page/EventHandler.h: Added new method.
* page/Settings.cpp:
(WebCore::Settings::Settings): Added m_touchEventEmulationEnabled initializer.
* page/Settings.h: Added m_touchEventEmulationEnabled, getter, and setter.
(WebCore::Settings::setTouchEventEmulationEnabled): Added.
(WebCore::Settings::isTouchEventEmulationEnabled): Added.
* platform/PlatformTouchPoint.h:
(WebCore::PlatformTouchPoint::PlatformTouchPoint): Unconditionally compile the parameterless ctor.
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setTouchEventEmulationEnabled): Added for testing.
* testing/InternalSettings.h: Added setTouchEventEmulationEnabled() for testing.
* testing/InternalSettings.idl: Added setTouchEventEmulationEnabled() for testing.

LayoutTests:

* fast/events/touch/emulate-touch-events-expected.txt: Added.
* fast/events/touch/emulate-touch-events.html: Added.

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

9 years agoGroup all the security failures together.
abarth@webkit.org [Fri, 3 Feb 2012 10:04:15 +0000 (10:04 +0000)]
Group all the security failures together.

* platform/chromium/test_expectations.txt:

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

9 years agoRemove [NoCPPCustom] IDL
haraken@chromium.org [Fri, 3 Feb 2012 10:01:12 +0000 (10:01 +0000)]
Remove [NoCPPCustom] IDL
https://bugs.webkit.org/show_bug.cgi?id=77704

Reviewed by Adam Barth.

This patch removes [NoCPPCustom], by replacing [Custom, NoCPPCustom]
in HTMLDocument.idl with [JSCCustom, V8Custom].

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorCPP.pm:
(ShouldSkipType):
* html/HTMLDocument.idl:

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

9 years agoRemove [LegacyParent] from CodeGeneratorGObject.pm, and rename it to [JSLegacyParent]
haraken@chromium.org [Fri, 3 Feb 2012 09:54:53 +0000 (09:54 +0000)]
Remove [LegacyParent] from CodeGeneratorGObject.pm, and rename it to [JSLegacyParent]
https://bugs.webkit.org/show_bug.cgi?id=77706

Reviewed by Adam Barth.

This patch removes dead code about [LegacyParent] from CodeGeneratorGObject.pm,
and renames [LegacyParent] to [JSLegacyParent].

No tests. No changes in behavior.

* bindings/scripts/CodeGeneratorGObject.pm:
(Generate):
* bindings/scripts/CodeGeneratorJS.pm:
(GetParentClassName):
(GenerateHeader):
(GenerateImplementation):
* page/DOMWindow.idl:
* workers/WorkerContext.idl:

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

9 years agoWeb Inspector: preserve elements panel selection upon node drag'n'drop
pfeldman@chromium.org [Fri, 3 Feb 2012 09:28:00 +0000 (09:28 +0000)]
Web Inspector: preserve elements panel selection upon node drag'n'drop
https://bugs.webkit.org/show_bug.cgi?id=77722

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: inspector/elements/move-node.html

* inspector/front-end/DOMAgent.js:
(WebInspector.DOMAgent.prototype._markRevision):
* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeOutline.prototype._ondrop):
(WebInspector.ElementsTreeOutline.prototype._doMove.callback):
(WebInspector.ElementsTreeOutline.prototype._doMove):

LayoutTests:

* inspector/elements/move-node-expected.txt: Added.
* inspector/elements/move-node.html: Added.

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

9 years agoSource/WebCore: Reimplement DETAILS and SUMMARY using selector query.
commit-queue@webkit.org [Fri, 3 Feb 2012 08:30:59 +0000 (08:30 +0000)]
Source/WebCore:        Reimplement DETAILS and SUMMARY using selector query.
https://bugs.webkit.org/show_bug.cgi?id=75930

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-02-03
Reviewed by Hajime Morita.

DETAILS is reimplemented using content element and its fallback feature.
We don't need to recreate DOM even if SUMMARY is removed from or added into DETAILS.

No new tests, should be covered by existing tests.

* html/HTMLDetailsElement.cpp:
(WebCore::DetailsSummaryElement::fallbackSummary):
  Takes fallback element of content summary.
(DetailsSummaryElement):
(WebCore::DetailsSummaryElement::create):
  Creates a fallback element also.
(WebCore):
(WebCore::HTMLDetailsElement::create):
(WebCore::HTMLDetailsElement::HTMLDetailsElement):
(WebCore::HTMLDetailsElement::createShadowSubtree):
(WebCore::HTMLDetailsElement::findMainSummary):
(WebCore::HTMLDetailsElement::parseMappedAttribute):
(WebCore::HTMLDetailsElement::childShouldCreateRenderer):
(WebCore::HTMLDetailsElement::toggleOpen):
* html/HTMLDetailsElement.h:
(HTMLDetailsElement):
* html/HTMLSummaryElement.cpp:
(WebCore::HTMLSummaryElement::isMainSummary):

LayoutTests: Reimplement DETAILS and SUMMARY using selector query.
https://bugs.webkit.org/show_bug.cgi?id=75930

Since the implementation of DETAILS shadow tree, the path of caret position is also changed.

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-02-03
Reviewed by Hajime Morita.

* platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
* platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
* platform/gtk/fast/html/details-remove-summary-1-and-click-expected.txt:
* platform/gtk/fast/html/details-remove-summary-4-and-click-expected.txt:
* platform/mac/fast/html/details-remove-summary-1-and-click-expected.txt:
* platform/mac/fast/html/details-remove-summary-4-and-click-expected.txt:
* platform/qt/fast/html/details-remove-summary-1-and-click-expected.txt:
* platform/qt/fast/html/details-remove-summary-4-and-click-expected.txt:

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

9 years agoCrash when trying to add a timer to a detached document.
jochen@chromium.org [Fri, 3 Feb 2012 08:19:06 +0000 (08:19 +0000)]
Crash when trying to add a timer to a detached document.
https://bugs.webkit.org/show_bug.cgi?id=77692

Reviewed by Alexey Proskuryakov.

In http://webkit.org/b/77370, a timer is fired on a detached document.
Since a document clears all timers when it is detached, and it
shouldn't be possible to add a timer to a detached document, we crash
if this should happen anyway. This will hopefully result in an easier
to debug crash dump.

* page/DOMTimer.cpp:
(WebCore::DOMTimer::DOMTimer):

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

9 years agoStop calling Element::ensureShadowRoot in Internals.
commit-queue@webkit.org [Fri, 3 Feb 2012 08:16:33 +0000 (08:16 +0000)]
Stop calling Element::ensureShadowRoot in Internals.
https://bugs.webkit.org/show_bug.cgi?id=77612

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-02-03
Reviewed by Hajime Morita.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

We want to check a shadow root is built-in or created by users to support multiple shadow subtrees.
But Element::ensureShadowRoot() makes it difficult, because it doesn't care about the returning shadow element
is built-in or user generated, so let's remove Element::ensureShadowRoot().

As a first step, this patch removes ensureShadowRoot() in Internals.

No new tests, because no changes in behavior.

* WebCore.exp.in:
* testing/Internals.cpp:
(WebCore::Internals::ensureShadowRoot):

Source/WebKit2:

Exports symbols.

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

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

9 years ago<http://webkit.org/b/77717> Makefile should provide control over output verbosity
mrowe@apple.com [Fri, 3 Feb 2012 07:44:38 +0000 (07:44 +0000)]
<webkit.org/b/77717> Makefile should provide control over output verbosity

Allow the filtering of the output of our Makefile to be configured via a user default
and overriden via a command-line argument to make.

The Makefile takes the verbosity from BuildTranscriptVerbosity default in the
org.webkit.BuildConfiguration domain. The supported values are "default", "quiet"
and "noisy". "default" maintains the existing behavior of only filtering out
the setenv lines from Xcode's shell script build phases. "quiet" filters all output
through filter-build-webkit. "noisy" provides unfiltered output. The verbosity can
be overriden for a single invocation of make by specifying the VERBOSITY variable
on the make command line.

To always get full output:
defaults write org.webkit.BuildConfiguration BuildTranscriptVerbosity noisy

To always get filtered ouptut:
defaults write org.webkit.BuildConfiguration BuildTranscriptVerbosity quiet

To get full output for a single build:
make VERBOSITY=noisy

Reviewed by Dan Bernstein.

* Makefile.shared:

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

9 years agoWeb Inspector: Always show percents together with counters in heap inspector.
commit-queue@webkit.org [Fri, 3 Feb 2012 07:37:09 +0000 (07:37 +0000)]
Web Inspector: Always show percents together with counters in heap inspector.
https://bugs.webkit.org/show_bug.cgi?id=77434

Source/WebCore:

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-02-02
Reviewed by Pavel Feldman.

* inspector/front-end/DetailedHeapshotGridNodes.js:
(WebInspector.HeapSnapshotGridNode.prototype._toPercentString):
(WebInspector.HeapSnapshotGridNode.prototype._createValueCell):
(WebInspector.HeapSnapshotGenericObjectNode.prototype.createCell):
(WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
(WebInspector.HeapSnapshotConstructorNode.prototype.createCell):
(WebInspector.HeapSnapshotConstructorNode.prototype.get data):
(WebInspector.HeapSnapshotDiffNode.prototype.get data):
* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.HeapSnapshotContainmentDataGrid):
(WebInspector.HeapSnapshotConstructorsDataGrid):
(WebInspector.HeapSnapshotDiffDataGrid):
(WebInspector.HeapSnapshotDominatorsDataGrid):
(WebInspector.DetailedHeapshotView.prototype._mouseDownInContentsGrid):
(WebInspector.DetailedHeapshotView.prototype.get _isShowingAsPercent):
(WebInspector.DetailedHeapshotView.prototype._percentClicked):
* inspector/front-end/heapProfiler.css:
(.detailed-heapshot-view .data-grid span.percent-column):

LayoutTests:

Added parseInt conversion as counters are now strings not ints.

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-02-02
Reviewed by Pavel Feldman.

* inspector/profiler/detailed-heapshots-comparison-show-all.html:
* inspector/profiler/detailed-heapshots-comparison-show-next.html:
* inspector/profiler/detailed-heapshots-summary-show-all.html:

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

9 years agoUse content-language from http-equiv to set document locale and font
commit-queue@webkit.org [Fri, 3 Feb 2012 07:30:20 +0000 (07:30 +0000)]
Use content-language from http-equiv to set document locale and font
https://bugs.webkit.org/show_bug.cgi?id=76701

Patch by Matt Falkenhagen <falken@chromium.org> on 2012-02-02
Reviewed by Darin Adler.

Source/WebCore:

So far, only content-language set through http-equiv is used; the HTTP Content-Language
header is not yet supported.

Tests: fast/text/content-language-case-insensitivity.html
       fast/text/content-language-mapped-to-webkit-locale.html
       fast/text/international/content-language-font-selection-expected.html
       fast/text/international/content-language-font-selection.html
       fast/text/international/content-language-with-subtags-expected.html
       fast/text/international/content-language-with-subtags.html

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForDocument): Use content language when selecting initial font.
* dom/Document.cpp:
(WebCore::Document::setContentLanguage): Recalculate style so language is taken into account.
(WebCore):
* dom/Document.h:
(Document):

LayoutTests:

Add tests that content-language from http-equiv sets document locale and is used in font selection.

* fast/text/content-language-case-insensitivity-expected.txt: Added.
* fast/text/content-language-case-insensitivity.html: Added.
* fast/text/content-language-mapped-to-webkit-locale-expected.txt: Added.
* fast/text/content-language-mapped-to-webkit-locale.html: Added.
* fast/text/international/content-language-font-selection-expected.html: Added.
* fast/text/international/content-language-font-selection.html: Added.
* fast/text/international/content-language-with-subtags-expected.html: Added.
* fast/text/international/content-language-with-subtags.html: Added.
* fast/text/lang-mapped-to-webkit-locale-expected.txt:
* fast/text/lang-mapped-to-webkit-locale.xhtml: Fix some style issues.
* fast/text/xml-lang-ignored-in-html-expected.txt:
* fast/text/xml-lang-ignored-in-html.html: Fix some style issues.
* platform/efl/Skipped: Skip tests using overridePreference("WebKit*FontMap"...) on non-Chromium ports.
* platform/gtk-wk2/Skipped: Ditto.
* platform/gtk/Skipped: Ditto.
* platform/mac/Skipped: Ditto.
* platform/qt/Skipped: Ditto.
* platform/win/Skipped: Ditto.
* platform/wincairo/Skipped: Ditto.
* platform/wk2/Skipped: Ditto.

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

9 years ago[Qt] Unreviewed gardening after r106554.
ossy@webkit.org [Fri, 3 Feb 2012 07:12:45 +0000 (07:12 +0000)]
[Qt] Unreviewed gardening after r106554.

* platform/qt/Skipped: Skip one more failing test.

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

9 years agoUnreviewed, rolling out r106620.
ossy@webkit.org [Fri, 3 Feb 2012 06:59:53 +0000 (06:59 +0000)]
Unreviewed, rolling out r106620.
http://trac.webkit.org/changeset/106620
https://bugs.webkit.org/show_bug.cgi?id=77716

It broke non ENABLE(3D_RENDERING) builds (Requested by
Ossy_morning on #webkit).

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

Source/WebCore:

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* platform/graphics/GraphicsContext.h:
(WebCore):
(GraphicsContext):
* platform/graphics/cairo/TextureMapperCairo.cpp:
(WebCore::TextureMapper::create):
(WebCore):
* platform/graphics/opengl/TextureMapperGL.cpp:
(Entry):
(DirectlyCompositedImageRepository):
(WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::findOrCreate):
(WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::deref):
(WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::DirectlyCompositedImageRepository):
(WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::~DirectlyCompositedImageRepository):
(TextureMapperGLData):
(BitmapTextureGL):
(WebCore::BitmapTextureGL::isOpaque):
(WebCore::BitmapTextureGL::pack):
(WebCore::BitmapTextureGL::unpack):
(WebCore::BitmapTextureGL::isPacked):
(WebCore::BitmapTextureGL::BitmapTextureGL):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::BitmapTextureGL::reset):
(WebCore::BitmapTextureGL::beginPaint):
(WebCore::BitmapTextureGL::endPaint):
(WebCore):
(WebCore::BitmapTextureGL::updateContents):
(WebCore::BitmapTextureGL::updateRawContents):
(WebCore::BitmapTextureGL::setContentsToImage):
(WebCore::BitmapTextureGL::destroy):
(WebCore::TextureMapperGL::bindSurface):
* platform/graphics/opengl/TextureMapperGL.h:
(TextureMapperGL):
(WebCore::TextureMapperGL::allowSurfaceForRoot):
(BGRA32PremultimpliedBuffer):
(WebCore::BGRA32PremultimpliedBuffer::~BGRA32PremultimpliedBuffer):
(WebCore):
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
* platform/graphics/qt/GraphicsContextQt.cpp:
* platform/graphics/qt/TextureMapperQt.cpp: Added.
(WebCore):
(WebCore::BitmapTextureQt::destroy):
(WebCore::BitmapTextureQt::reset):
(WebCore::BitmapTextureQt::beginPaint):
(WebCore::BitmapTextureQt::endPaint):
(WebCore::BitmapTextureQt::updateContents):
(WebCore::BitmapTextureQt::save):
(WebCore::BitmapTextureQt::setContentsToImage):
(WebCore::BitmapTextureQt::pack):
(WebCore::BitmapTextureQt::unpack):
(WebCore::TextureMapperQt::beginClip):
(WebCore::TextureMapperQt::endClip):
(WebCore::TextureMapperQt::viewportSize):
(WebCore::TextureMapperQt::TextureMapperQt):
(WebCore::TextureMapperQt::setGraphicsContext):
(WebCore::TextureMapperQt::graphicsContext):
(WebCore::TextureMapperQt::bindSurface):
(WebCore::TextureMapperQt::drawTexture):
(WebCore::TextureMapper::create):
(WebCore::TextureMapperQt::createTexture):
(WebCore::BitmapTextureQt::BitmapTextureQt):
(WebCore::TextureMapperQt::beginPainting):
(WebCore::TextureMapperQt::endPainting):
(BGRA32PremultimpliedBufferQt):
(WebCore::BGRA32PremultimpliedBufferQt::beginPaint):
(WebCore::BGRA32PremultimpliedBufferQt::endPaint):
(WebCore::BGRA32PremultimpliedBufferQt::data):
(WebCore::BGRA32PremultimpliedBuffer::create):
(WebCore::uidForImage):
* platform/graphics/qt/TextureMapperQt.h: Added.
(WebCore):
(BitmapTextureQt):
(WebCore::BitmapTextureQt::~BitmapTextureQt):
(WebCore::BitmapTextureQt::size):
(WebCore::BitmapTextureQt::isValid):
(WebCore::BitmapTextureQt::sourceRect):
(WebCore::BitmapTextureQt::isPacked):
(WebCore::BitmapTextureQt::painter):
(TextureMapperQt):
(WebCore::TextureMapperQt::allowSurfaceForRoot):
(WebCore::TextureMapperQt::initialize):
(WebCore::TextureMapperQt::create):
(WebCore::TextureMapperQt::currentPainter):
* platform/graphics/texmap/TextureMapper.cpp:
* platform/graphics/texmap/TextureMapper.h:
(WebCore::BitmapTexture::BitmapTexture):
(WebCore::BitmapTexture::allowOfflineTextureUpload):
(BitmapTexture):
(WebCore::BitmapTexture::pack):
(WebCore::BitmapTexture::unpack):
(WebCore::BitmapTexture::isPacked):
(WebCore::BitmapTexture::updateRawContents):
(WebCore::BitmapTexture::beginPaintMedia):
(WebCore::BitmapTexture::save):
(WebCore::BitmapTexture::lock):
(WebCore::BitmapTexture::unlock):
(WebCore::BitmapTexture::isLocked):
(TextureMapper):
(WebCore::TextureMapper::viewportSize):
(WebCore::TextureMapper::setViewportSize):
(WebCore::TextureMapper::allowPartialUpdates):
(WebCore::TextureMapper::isOpenGLBacked):
(WebCore::TextureMapper::setTransform):
(WebCore::TextureMapper::transform):
* platform/graphics/texmap/TextureMapperImageBuffer.cpp: Removed.
* platform/graphics/texmap/TextureMapperImageBuffer.h: Removed.
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::renderContent):
(WebCore::TextureMapperNode::setContentsTileBackBuffer):
* platform/graphics/texmap/TextureMapperNode.h:
(TextureMapperNode):

Source/WebKit/qt:

* Api/qwebframe.cpp:
(QWebFramePrivate::renderCompositedLayers):
* WebCoreSupport/PageClientQt.cpp:
(WebCore::PageClientQWidget::setRootGraphicsLayer):
(WebCore::PageClientQGraphicsWidget::setRootGraphicsLayer):

Source/WebKit2:

* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
(WebKit::LayerTreeHostProxy::paintToGraphicsContext):
(WebKit::LayerTreeHostProxy::createImage):
(WebKit::LayerTreeHostProxy::ensureRootLayer):

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

9 years agogradient tests for CSS3 calc
mikelawther@chromium.org [Fri, 3 Feb 2012 06:44:54 +0000 (06:44 +0000)]
gradient tests for CSS3 calc
https://bugs.webkit.org/show_bug.cgi?id=75822

Reviewed by Hajime Morita.

Tests for future implementation of CSS3 calc() (see http://webkit.org/b/16662)

These tests are expected to 'fail', and will pass once calc() functionality is landed.
For now, they serve to demonstrate that the current code doesn't crash on these tests.

* css3/calc/css3-radial-gradients-expected-mismatch.html: Added.
* css3/calc/css3-radial-gradients.html: Added.
* css3/calc/gradient-color-stops-expected-mismatch.html: Added.
* css3/calc/gradient-color-stops.html: Added.

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

9 years agoColorInputType needs to use ensureInlineStyleDecl
keishi@webkit.org [Fri, 3 Feb 2012 05:44:35 +0000 (05:44 +0000)]
ColorInputType needs to use ensureInlineStyleDecl
https://bugs.webkit.org/show_bug.cgi?id=77699

Reviewed by Kent Tamura.

Because WebCore internally should use the more specific CSSMutableStyleDeclaration
http://trac.webkit.org/changeset/105739

* html/ColorInputType.cpp:
(WebCore::ColorInputType::updateColorSwatch):

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

9 years ago[EFL] Add contentsSize flag into ewk_tiled_backing_store's private data.
commit-queue@webkit.org [Fri, 3 Feb 2012 05:42:14 +0000 (05:42 +0000)]
[EFL] Add contentsSize flag into ewk_tiled_backing_store's private data.
https://bugs.webkit.org/show_bug.cgi?id=77586

Patch by KwangHyuk Kim <hyuki.kim@samsung.com> on 2012-02-02
Reviewed by Andreas Kling.

As both zoom and content size change are identified by model flag,
ewk_tiled_backing_store can not detect the conflict between them.
In order to prevent conflict between zoom and contents size change,
contentsSize flag is newly added.

* ewk/ewk_tiled_backing_store.cpp:
(_Ewk_Tiled_Backing_Store_Item):
(_Ewk_Tiled_Backing_Store_Data):
(_ewk_tiled_backing_store_smart_calculate):
(ewk_tiled_backing_store_contents_resize):

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

9 years agoSimplify SelectorChecker::checkSelector and checkOneSelector
rolandsteiner@chromium.org [Fri, 3 Feb 2012 05:29:33 +0000 (05:29 +0000)]
Simplify SelectorChecker::checkSelector and checkOneSelector
https://bugs.webkit.org/show_bug.cgi?id=77697

Make use of Element::previous/nextElementSibling.
Made those methods inline.
Simplify code in checkSelector and checkOneSelector, esp. for first/nth/nth-last/last/only-child implementations.

Reviewed by Andreas Kling.

No new tests. (refactoring)

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkSelector):
(WebCore::SelectorChecker::checkOneSelector):
* dom/Element.cpp:
* dom/Element.h:
(WebCore::Element::previousElementSibling):
(WebCore):
(WebCore::Element::nextElementSibling):

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

9 years agoColorChooserClient is missing a virtual destructor
keishi@webkit.org [Fri, 3 Feb 2012 05:26:17 +0000 (05:26 +0000)]
ColorChooserClient is missing a virtual destructor
https://bugs.webkit.org/show_bug.cgi?id=77698

Reviewed by Kent Tamura.

* platform/ColorChooserClient.h:
(WebCore::ColorChooserClient::~ColorChooserClient): Added.

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

9 years agoRemove OVERRIDE from ColorInputType::valueAsColor
keishi@webkit.org [Fri, 3 Feb 2012 05:14:40 +0000 (05:14 +0000)]
Remove OVERRIDE from ColorInputType::valueAsColor
https://bugs.webkit.org/show_bug.cgi?id=77701

Reviewed by Kent Tamura.

* html/ColorInputType.h:
(WebCore::ColorInputType::valueAsColor):

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

9 years agoSupport 'disabled' attribute on SVGStyleElement
commit-queue@webkit.org [Fri, 3 Feb 2012 04:51:18 +0000 (04:51 +0000)]
Support 'disabled' attribute on SVGStyleElement
https://bugs.webkit.org/show_bug.cgi?id=52130

Source/WebCore:

Adding disabled property to SVGStyleElement, which
mirrors the functionality added to HTMLStyleElement
for DOM1. The disabled property reflects and sets
the disabled state of its style sheet.

Based off of patch for bug 25287

Patch by Bear Travis <betravis@adobe.com> on 2012-02-02
Reviewed by Dirk Schulze.

Test: svg/dom/SVGStyleElement/disable-svg-style-element.html

* svg/SVGStyleElement.cpp:
(WebCore::SVGStyleElement::disabled):
(WebCore):
(WebCore::SVGStyleElement::setDisabled):
* svg/SVGStyleElement.h:
(SVGStyleElement):
* svg/SVGStyleElement.idl:

LayoutTests:

Test the disabled property of an svg style element.
Based off of the patch for bug 25287.

Patch by Bear Travis <betravis@adobe.com> on 2012-02-02
Reviewed by Dirk Schulze.

* svg/dom/SVGStyleElement/disable-svg-style-element-expected.txt: Added.
* svg/dom/SVGStyleElement/disable-svg-style-element.html: Added.
* svg/dom/SVGStyleElement/script-tests/disable-svg-style-element.js: Added.
(createStyle):

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

9 years agoMake ShadowRoot interface inherit DocumentFragment interface in IDL.
hayato@chromium.org [Fri, 3 Feb 2012 04:37:07 +0000 (04:37 +0000)]
Make ShadowRoot interface inherit DocumentFragment interface in IDL.
https://bugs.webkit.org/show_bug.cgi?id=77511

Reviewed by Kentaro Hara.

This patch contains only the change of IDL to isolate issues.
Other changes, such as tests for querySelector of ShadowRoot, will be added in follow-up patches.

No tests. No change in behavior.

* dom/ShadowRoot.idl:

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

9 years agoCheck parameters to biquad filters
commit-queue@webkit.org [Fri, 3 Feb 2012 04:08:50 +0000 (04:08 +0000)]
Check parameters to biquad filters
https://bugs.webkit.org/show_bug.cgi?id=71413

Source/WebCore:

Patch by Raymond Toy <rtoy@google.com> on 2012-02-02
Reviewed by Kenneth Russell.

Tests added for each filter type and for the limiting cases for
each filter type.

* platform/audio/Biquad.cpp:
(WebCore::Biquad::setLowpassParams):
(WebCore::Biquad::setHighpassParams):
(WebCore::Biquad::setLowShelfParams):
(WebCore::Biquad::setHighShelfParams):
(WebCore::Biquad::setPeakingParams):
(WebCore::Biquad::setAllpassParams):
(WebCore::Biquad::setNotchParams):
(WebCore::Biquad::setBandpassParams):
Check for invalid parameters and clip them to something sensible.
Also check for the limiting cases and try to use the limiting form
of the z-transform for the biquad.  Some issues cannot be
consistently handled because the z-transform is not continuous as
the parameters approach the limit.

LayoutTests:

Patch by Raymond Toy <rtoy@chromium.org> on 2012-02-02
Reviewed by Kenneth Russell.

* webaudio/biquad-allpass-expected.txt: Added
* webaudio/biquad-allpass.html: Added
* webaudio/biquad-bandpass-expected.txt: Added
* webaudio/biquad-bandpass.html: Added
* webaudio/biquad-highpass-expected.txt: Added
* webaudio/biquad-highpass.html: Added
* webaudio/biquad-highshelf-expected.txt: Added
* webaudio/biquad-highshelf.html: Added
* webaudio/biquad-lowpass-expected.txt: Added
* webaudio/biquad-lowpass.html: Added
* webaudio/biquad-lowshelf-expected.txt: Added
* webaudio/biquad-lowshelf.html: Added
* webaudio/biquad-notch-expected.txt: Added
* webaudio/biquad-notch.html: Added
* webaudio/biquad-peaking-expected.txt: Added
* webaudio/biquad-peaking.html: Added
* webaudio/resources/biquad-testing.js: Added

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

9 years ago[Qt][Texmap] Refactor TextureMapper API to use ImageBuffers when possible.
noam.rosenthal@nokia.com [Fri, 3 Feb 2012 04:00:29 +0000 (04:00 +0000)]
[Qt][Texmap] Refactor TextureMapper API to use ImageBuffers when possible.
https://bugs.webkit.org/show_bug.cgi?id=77148

Reviewed by Martin Robinson.

Source/WebCore:

Removed TextureMapperQt, and instead created a TextureMapperImageBuffer class,
which responds to an "Software" mode of TextureMapper, instead of creating subclasses
of TextureMapper directly. This allows using the software fallback of TextureMapper by any
sort.

To make the ImageBuffer backend easier, content updates to BitmapTexture can now use either
an image, or a raw data pointer. The raw data pointer is provided for performance reasons,
as converting data to/from Image references in Qt generates unnecessary deep copies of the
image data.

Also, functions that use TransformationMatrix were added to GraphicsContext, to allow for
3D transforms in cross platform code.
After this patch everything renders the same. An additional bug report was created to allow
ImageBuffer shallow image copies: https://bugs.webkit.org/show_bug.cgi?id=77689

Covered extensively by existing tests, no behavioral changes.

* Target.pri:
* platform/graphics/GraphicsContext.cpp:
* platform/graphics/GraphicsContext.h:
(WebCore):
(GraphicsContext):
* platform/graphics/cairo/TextureMapperCairo.cpp:
* platform/graphics/opengl/TextureMapperGL.cpp:
(TextureMapperGLData):
(BitmapTextureGL):
(WebCore::BitmapTextureGL::BitmapTextureGL):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::BitmapTextureGL::reset):
(WebCore):
(WebCore::swizzleBGRAToRGBA):
(WebCore::BitmapTextureGL::updateContents):
(WebCore::BitmapTextureGL::destroy):
(WebCore::TextureMapperGL::bindSurface):
(WebCore::TextureMapper::platformCreateAccelerated):
* platform/graphics/opengl/TextureMapperGL.h:
(TextureMapperGL):
(WebCore::TextureMapperGL::accelerationMode):
(WebCore):
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore):
(WebCore::GraphicsContext::get3DTransform):
(WebCore::GraphicsContext::concat3DTransform):
(WebCore::GraphicsContext::set3DTransform):
* platform/graphics/qt/TextureMapperQt.cpp: Removed.
* platform/graphics/qt/TextureMapperQt.h: Removed.
* platform/graphics/texmap/TextureMapper.cpp:
(WebCore):
(BitmapTextureImageBuffer):
(TextureMapperImageBuffer):
* platform/graphics/texmap/TextureMapper.h:
(WebCore::BitmapTexture::BitmapTexture):
(BitmapTexture):
(WebCore::BitmapTexture::bpp):
(WebCore::BitmapTexture::isOpaque):
(WebCore::TextureMapper::setGraphicsContext):
(WebCore::TextureMapper::graphicsContext):
(TextureMapper):
(WebCore::TextureMapper::TextureMapper):
(WebCore::TextureMapper::platformCreateAccelerated):
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::renderContent):
(WebCore::TextureMapperNode::setContentsTileBackBuffer):
* platform/graphics/texmap/TextureMapperNode.h:
(TextureMapperNode):

Source/WebKit/qt:

Use TextureMapper::create instead of creating TextureMapperGL/TextureMapperQt directly.

* Api/qwebframe.cpp:
(QWebFramePrivate::renderCompositedLayers):
* WebCoreSupport/PageClientQt.cpp:
(WebCore::PageClientQWidget::setRootGraphicsLayer):
(WebCore::PageClientQGraphicsWidget::setRootGraphicsLayer):

Source/WebKit2:

Use TextureMapper::create instead of creating TextureMapperGL/TextureMapperQt directly.
Remove calls to unused API.

* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
(WebKit::LayerTreeHostProxy::paintToGraphicsContext):
(WebKit::LayerTreeHostProxy::createImage):
(WebKit::LayerTreeHostProxy::ensureRootLayer):

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

9 years agoRefactoring: Share test drivers of shadow content tests.
commit-queue@webkit.org [Fri, 3 Feb 2012 03:33:10 +0000 (03:33 +0000)]
Refactoring: Share test drivers of shadow content tests.
https://bugs.webkit.org/show_bug.cgi?id=77584

Extracts shared test code from content-element-move.html and content-element-select-dynamic.html.
This test framework will be used a few more times.

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-02-02
Reviewed by Hajime Morita.

* fast/dom/resources/shadow-test-driver.js: Added.
(log):
(cleanUp):
(removeContainerLines):
(check):
(createSpanWithText):
(createContentWithSelect):
(appendShadow):
(appendShadowDeep):
(doTestIfLeft.callIfDone):
(doneTest):
(doTest):
* fast/dom/shadow/content-element-move.html:
* fast/dom/shadow/content-element-select-dynamic.html:

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

9 years agoRename checkNodeSecurity and allowsAccessFromFrame to have sensible names
abarth@webkit.org [Fri, 3 Feb 2012 03:23:45 +0000 (03:23 +0000)]
Rename checkNodeSecurity and allowsAccessFromFrame to have sensible names
https://bugs.webkit.org/show_bug.cgi?id=75796

Reviewed by Eric Seidel.

As requested by Darin Adler, this patch renames these functions be
clear that we're asking whether the access should be allowed rather
than explicitly allowing the access.

* bindings/generic/BindingSecurity.h:
(BindingSecurity):
(WebCore::::shouldAllowAccessToNode):
(WebCore::::allowSettingFrameSrcToJavascriptUrl):
* bindings/js/JSDOMBinding.cpp:
(WebCore::shouldAllowAccessToNode):
(WebCore::shouldAllowAccessToFrame):
* bindings/js/JSDOMBinding.h:
(WebCore):
* bindings/js/JSHTMLFrameElementCustom.cpp:
(WebCore::allowSettingJavascriptURL):
* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::getOwnPropertySlotDelegate):
(WebCore::JSHistory::getOwnPropertyDescriptorDelegate):
(WebCore::JSHistory::putDelegate):
(WebCore::JSHistory::deleteProperty):
(WebCore::JSHistory::getOwnPropertyNames):
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::getOwnPropertySlotDelegate):
(WebCore::JSLocation::getOwnPropertyDescriptorDelegate):
(WebCore::JSLocation::putDelegate):
(WebCore::JSLocation::deleteProperty):
(WebCore::JSLocation::getOwnPropertyNames):
(WebCore::JSLocation::toStringFunction):
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::canAccessFromCurrentOrigin):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertyDescriptorBody):
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateFunctionCallback):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::JSTestActiveDOMObject::getOwnPropertyDescriptor):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjContentDocument):
(WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjInternal::contentDocumentAttrGetter):
(WebCore::TestObjInternal::getSVGDocumentCallback):

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

9 years ago[chromium] add support for --makeargs to the ninja-based build
jochen@chromium.org [Fri, 3 Feb 2012 03:18:53 +0000 (03:18 +0000)]
[chromium] add support for --makeargs to the ninja-based build
https://bugs.webkit.org/show_bug.cgi?id=77688

Reviewed by Adam Barth.

* Scripts/webkitdirs.pm:
(buildChromiumNinja):

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

9 years agoRun tests in serial on SnowLeopard to avoid CFURLCache crashes
eric@webkit.org [Fri, 3 Feb 2012 03:03:16 +0000 (03:03 +0000)]
Run tests in serial on SnowLeopard to avoid CFURLCache crashes
https://bugs.webkit.org/show_bug.cgi?id=75145

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort.default_child_processes):
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
(test_operating_system):
(test_default_child_processes):

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

9 years ago[GTK] Make gtk+ symbols available to WidgetBackingStoreCairo.cpp
commit-queue@webkit.org [Fri, 3 Feb 2012 02:53:09 +0000 (02:53 +0000)]
[GTK] Make gtk+ symbols available to WidgetBackingStoreCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=77679

WidgetBackingStoreCairo.cpp uses GTK+ symbols, so we need it in
webcoregtk_sources instead of webcore_sources.

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-02-02
Reviewed by Martin Robinson.

* GNUmakefile.list.am: Move WidgetBackingStoreCairo.cpp to webcoregtk.

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

9 years agoUnreviewed, removing an unnecessarily JS_PRIVATE_EXPORT annotation.
morrita@google.com [Fri, 3 Feb 2012 02:52:47 +0000 (02:52 +0000)]
Unreviewed, removing an unnecessarily JS_PRIVATE_EXPORT annotation.

* interpreter/Interpreter.h:
(Interpreter):

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

9 years agoStyleRecalc should occur when shadow root exists and light children are changed.
commit-queue@webkit.org [Fri, 3 Feb 2012 02:47:04 +0000 (02:47 +0000)]
StyleRecalc should occur when shadow root exists and light children are changed.
https://bugs.webkit.org/show_bug.cgi?id=76262

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-02-02
Reviewed by Hajime Morita.

Source/WebCore:

When light children is changed, the element included in HTMLContentElement may also be changed.
So we have to recalculate inclusion of content element again.

Test: fast/dom/shadow/shadow-contents-fallback-dynamic.html

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

LayoutTests:

Tests for dynamic content fallback.
Also, unnecessary RenderText objects in previous test expectations were removed.

* fast/dom/shadow/shadow-contents-fallback-dynamic-expected.txt: Added.
* fast/dom/shadow/shadow-contents-fallback-dynamic.html: Added.
* platform/chromium-win/fast/html/details-remove-child-2-expected.txt:
* platform/gtk/fast/html/details-remove-child-2-expected.txt:
* platform/mac/fast/html/details-remove-child-2-expected.txt:
* platform/qt/fast/html/details-remove-child-2-expected.txt:

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

9 years agonoteGrainOn needs more tests
commit-queue@webkit.org [Fri, 3 Feb 2012 02:40:49 +0000 (02:40 +0000)]
noteGrainOn needs more tests
https://bugs.webkit.org/show_bug.cgi?id=77225

Patch by Raymond Toy <rtoy@google.com> on 2012-02-02
Reviewed by Kenneth Russell.

* webaudio/note-grain-on-play.html: Added.
* webaudio/note-grain-on-play-expected.txt: Added.
* webaudio/note-grain-on-timing.html: Refactored to use new
functions in note-grain-on-testing.js.
* webaudio/note-grain-on-timing-expected.txt: Updated.
* webaudio/resources/audio-testing.js:
(grainLengthInSampleFrames):  Utility to compute length of a grain
in samples.
* webaudio/resources/note-grain-on-testing.js: Added.
(createSignalBuffer):
(findStartAndEndSamples):
(playGrain):
(playAllGrains):
(verifyStarAndtEndTimes): Common functions for note-grain-on-play and
note-grain-on-timing tests to use.

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

9 years agoTypo in sample-accurate-scheduling layout test?
commit-queue@webkit.org [Fri, 3 Feb 2012 02:28:17 +0000 (02:28 +0000)]
Typo in sample-accurate-scheduling layout test?
https://bugs.webkit.org/show_bug.cgi?id=75996

Patch by Raymond Toy <rtoy@google.com> on 2012-02-02
Reviewed by Kenneth Russell.

* webaudio/sample-accurate-scheduling-expected.txt: Updated
* webaudio/sample-accurate-scheduling.html: Fix typo, add test for
expected number of events.

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

9 years agoAvoid crashing renderer when GPU process dies by not caching textures between video...
commit-queue@webkit.org [Fri, 3 Feb 2012 02:13:25 +0000 (02:13 +0000)]
Avoid crashing renderer when GPU process dies by not caching textures between video frames.
https://bugs.webkit.org/show_bug.cgi?id=77654

Patch by Ami Fischman <fischman@chromium.org> on 2012-02-02
Reviewed by James Robinson.

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

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

9 years agoAdd ScrollingTree class
andersca@apple.com [Fri, 3 Feb 2012 02:04:51 +0000 (02:04 +0000)]
Add ScrollingTree class
https://bugs.webkit.org/show_bug.cgi?id=77695

Reviewed by Andreas Kling.

* WebCore.xcodeproj/project.pbxproj:
Add new files.

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::ScrollingCoordinator):
Create a scrolling tree.

(WebCore::ScrollingCoordinator::~ScrollingCoordinator):
Assert that the scrolling tree is null.

(WebCore::ScrollingCoordinator::pageDestroyed):
Null out the scrolling tree member variable and tell it to invalidate itself.

* page/scrolling/ScrollingTree.cpp: Added.

(WebCore::ScrollingTree::invalidate):
Null out the scrolling coordinator, breaking the reference cycle between the scrolling
coordinator and the scrolling tree.

* page/scrolling/ScrollingTree.h: Added.

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

9 years ago[GTK] Don't use uint
commit-queue@webkit.org [Fri, 3 Feb 2012 01:49:28 +0000 (01:49 +0000)]
[GTK] Don't use uint
https://bugs.webkit.org/show_bug.cgi?id=77678

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-02-02
Reviewed by Martin Robinson.

With the MingGW cross compiler toolchain in Fedora, uint wasn't
defined, so use unsigned int instead.

* WebCoreSupport/ChromeClientGtk.h:
(ChromeClient): Use unsigned int instead of uint

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

9 years agoRefactor plugin drawing to be more data driven
commit-queue@webkit.org [Fri, 3 Feb 2012 01:35:29 +0000 (01:35 +0000)]
Refactor plugin drawing to be more data driven
https://bugs.webkit.org/show_bug.cgi?id=76715

Patch by Tim Dresser <tdresser@chromium.org> on 2012-02-02
Reviewed by James Robinson.

CCPluginLayerImpl no longer handles drawing itself, but produces a list of CCPluginDrawQuads.
These quads are then drawn by LayerRendererChromium.

CCLayerImpl::willDraw(LayerRendererChromium*) is called directly before appendQuads.
This allows for CCLayerImpl objects to allocate textures before appendQuads is called.

This is a refactor, so no new tests were added.
Flash was tested manually on Linux and Mac.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::PluginProgramBinding::set):
(PluginProgramBinding):
(WebCore):
(WebCore::TexStretchPluginProgramBinding::set):
(TexStretchPluginProgramBinding):
(WebCore::TexTransformPluginProgramBinding::set):
(TexTransformPluginProgramBinding):
(WebCore::LayerRendererChromium::drawPluginQuad):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore::CCLayerImpl::willDraw):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
* platform/graphics/chromium/cc/CCPluginDrawQuad.cpp:
(WebCore::CCPluginDrawQuad::create):
(WebCore::CCPluginDrawQuad::CCPluginDrawQuad):
* platform/graphics/chromium/cc/CCPluginDrawQuad.h:
(CCPluginDrawQuad):
(WebCore::CCPluginDrawQuad::uvRect):
(WebCore::CCPluginDrawQuad::textureId):
(WebCore::CCPluginDrawQuad::flipped):
(WebCore::CCPluginDrawQuad::ioSurfaceWidth):
(WebCore::CCPluginDrawQuad::ioSurfaceHeight):
(WebCore::CCPluginDrawQuad::ioSurfaceTextureId):
* platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
(WebCore::CCPluginLayerImpl::willDraw):
(WebCore::CCPluginLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCPluginLayerImpl.h:
(CCPluginLayerImpl):

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

9 years ago[Mac] eliminate JavaScriptCore.exp
morrita@google.com [Fri, 3 Feb 2012 01:01:59 +0000 (01:01 +0000)]
[Mac] eliminate JavaScriptCore.exp
https://bugs.webkit.org/show_bug.cgi?id=72854

Reviewed by Darin Adler.

- Removed exp files and corresponding makefile entries.
- Changed the build configuration no to use exp file.

* Configurations/JavaScriptCore.xcconfig:
* DerivedSources.make:
* JavaScriptCore.JSVALUE32_64only.exp: Removed.
* JavaScriptCore.JSVALUE64only.exp: Removed.
* JavaScriptCore.exp: Removed.
* JavaScriptCore.xcodeproj/project.pbxproj:
* wtf/Platform.h:

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

9 years agoV8 idl code generator doesn't handle SerializedScriptValue attributes properly.
haraken@chromium.org [Fri, 3 Feb 2012 00:47:44 +0000 (00:47 +0000)]
V8 idl code generator doesn't handle SerializedScriptValue attributes properly.
https://bugs.webkit.org/show_bug.cgi?id=77295

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-29
Reviewed by Kentaro Hara.

Only the case of one (and only one) SerializedScriptValue attribute was
handled, and it was deserialized eagerly in the constructor instead of
generating getters/setters. This patch gets rid of that behavior and
generates the getters and setters instead (similar to what the JSC
generator does).
Also handle the case of SSV attributes with [CachedAttribute]
declaration, caching the deserialized value in a hidden attribute on the
object.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateConstructorCallback):
(GenerateNamedConstructorCallback):
(GenerateSingleBatchedAttribute):
(GenerateImplementation):
(GenerateToV8Converters):
(JSValueToNative):
(NativeToJSValue):
* bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp:
(WebDOMTestSerializedScriptValueInterface::setValue):
(WebDOMTestSerializedScriptValueInterface::readonlyValue):
(WebDOMTestSerializedScriptValueInterface::cachedValue):
(WebDOMTestSerializedScriptValueInterface::setCachedValue):
(WebDOMTestSerializedScriptValueInterface::cachedReadonlyValue):
* bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h:
(WebDOMTestSerializedScriptValueInterface):
* bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
(webkit_dom_test_serialized_script_value_interface_set_value):
(webkit_dom_test_serialized_script_value_interface_get_readonly_value):
(webkit_dom_test_serialized_script_value_interface_get_cached_value):
(webkit_dom_test_serialized_script_value_interface_set_cached_value):
(webkit_dom_test_serialized_script_value_interface_get_cached_readonly_value):
(webkit_dom_test_serialized_script_value_interface_get_property):
(webkit_dom_test_serialized_script_value_interface_class_init):
* bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
():
(WebCore::jsTestSerializedScriptValueInterfaceReadonlyValue):
(WebCore):
(WebCore::jsTestSerializedScriptValueInterfaceCachedValue):
(WebCore::jsTestSerializedScriptValueInterfaceCachedReadonlyValue):
(WebCore::JSTestSerializedScriptValueInterface::put):
(WebCore::setJSTestSerializedScriptValueInterfaceValue):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValue):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
(JSTestSerializedScriptValueInterface):
(JSTestSerializedScriptValueInterfacePrototype):
(WebCore):
* bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
* bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.mm:
(-[DOMTestSerializedScriptValueInterface setValue:]):
(-[DOMTestSerializedScriptValueInterface readonlyValue]):
(-[DOMTestSerializedScriptValueInterface cachedValue]):
(-[DOMTestSerializedScriptValueInterface setCachedValue:]):
(-[DOMTestSerializedScriptValueInterface cachedReadonlyValue]):
* bindings/scripts/test/TestSerializedScriptValueInterface.idl:
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::TestSerializedScriptValueInterfaceInternal::valueAttrGetter):
(TestSerializedScriptValueInterfaceInternal):
(WebCore::TestSerializedScriptValueInterfaceInternal::valueAttrSetter):
(WebCore::TestSerializedScriptValueInterfaceInternal::readonlyValueAttrGetter):
(WebCore::TestSerializedScriptValueInterfaceInternal::cachedValueAttrGetter):
(WebCore::TestSerializedScriptValueInterfaceInternal::cachedValueAttrSetter):
(WebCore::TestSerializedScriptValueInterfaceInternal::cachedReadonlyValueAttrGetter):
():
(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):

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

9 years agoBMW Car Configuration Page doesn't work (Only manifests in Chromium)
abarth@webkit.org [Fri, 3 Feb 2012 00:26:10 +0000 (00:26 +0000)]
BMW Car Configuration Page doesn't work (Only manifests in Chromium)
https://bugs.webkit.org/show_bug.cgi?id=77312

Reviewed by Dimitri Glazkov.

When we autogenerated the event factory, we missed the check for
whether touch events were enabled at runtime:
http://trac.webkit.org/changeset/97933/trunk/Source/WebCore/dom/Document.cpp

This patch adds the check back.

Unfortunately, there isn't a testing frame work for
RuntimeEnabledFeatures.  The main difficulty is that these static bools
need to be set when WebKit is initialized and can't be changed (which
is why they're not part of WebCore::Settings).  To test them properly,
we'd need a testing framework that booted up WebKit for each test.

We could test this particular change (which doesn't need the bool to be
constant through the runtime of WebKit), but that would create a
sandtrap for future patches who might thing that this testing framework
can really be used to test RuntimeEnabledFeatures.

The net result is that Chromium is going to end up living with the
non-default codepath for these settings being untested, which will lead
to regressions like this one.  If we ened up with a bunch of these
regressions, we'll likely end up with a testing framework similar to
Chromium's browsers_tests, which create a fresh subprocess for each
test.

* dom/EventFactory.in:
* dom/make_event_factory.pl:
(defaultItemFactory):
(generateImplementation):

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