simon.fraser@apple.com [Tue, 27 Sep 2011 05:12:24 +0000 (05:12 +0000)]
Translucent scrollbars on composited layers render incorrectly
https://bugs.webkit.org/show_bug.cgi?id=58515
Source/WebCore:
Reviewed by Sam Weinig.
Scrollbars in composited elements were getting drawn twice,
because r41203 moved the call to paintOverflowControls() out of
RenderLayer::paintLayer(), but forgot to change RenderLayerBacking::paintIntoLayer().
Test: compositing/scrollbar-painting.html
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintIntoLayer):
LayoutTests:
Reviewed by Sam Weinig.
Pixel test with translucent scrollbars, to test whether they get
rendered twice.
* compositing/scrollbar-painting-expected.png: Added.
* compositing/scrollbar-painting-expected.txt: Added.
* compositing/scrollbar-painting.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96069
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Tue, 27 Sep 2011 03:24:03 +0000 (03:24 +0000)]
REGRESSION (r95912): Conservative marking doesn't filter out pointers to
MarkedBlock metadata
https://bugs.webkit.org/show_bug.cgi?id=68860
Reviewed by Oliver Hunt.
Bencher says no performance change, maybe a 7% speedup on kraken-imaging-darkroom.
* heap/MarkedBlock.h:
(JSC::MarkedBlock::isAtomAligned): Renamed atomMask to atomAlignment mask
because the mask doesn't produce the actual atom number.
(JSC::MarkedBlock::isLiveCell): Testing just for alignment isn't good
enough; we also need to test that a pointer is beyond the metadata section
of a MarkedBlock, to avoid treating random metadata as a JSCell.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96068
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caio.oliveira@openbossa.org [Tue, 27 Sep 2011 02:36:55 +0000 (02:36 +0000)]
[Qt] Fix WK2 build after r96014
https://bugs.webkit.org/show_bug.cgi?id=68856
Reviewed by Gustavo Noronha Silva.
Commit r96014 added inspectorBaseURL for Qt but removed
inspectorPageURL, adding it back.
* UIProcess/qt/WebInspectorProxyQt.cpp:
(WebKit::WebInspectorProxy::inspectorPageURL):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96067
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jamesr@google.com [Tue, 27 Sep 2011 02:18:14 +0000 (02:18 +0000)]
[chromium] Make CCThreadProxy draw
https://bugs.webkit.org/show_bug.cgi?id=67417
Source/WebCore:
Update the CCThreadProxy to correctly implement the CCProxy
interface, do all the right committing and updating steps, and
draw a picture on the screen.
Patch by Nat Duca <nduca@chromium.org> on 2011-09-26
Reviewed by James Robinson.
* platform/graphics/IntRect.h:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::~LayerRendererChromium):
* platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
(WebCore::CCHeadsUpDisplay::enabled):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::CCLayerImpl):
(WebCore::CCLayerImpl::~CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::commitTo):
(WebCore::CCLayerTreeHost::commitComplete):
(WebCore::CCLayerTreeHost::setNeedsRedraw):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::finishAllRendering):
(WebCore::CCSingleThreadProxy::setNeedsCommit):
(WebCore::CCSingleThreadProxy::commitIfNeeded):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::CCThreadProxy):
(WebCore::CCThreadProxy::~CCThreadProxy):
(WebCore::CCThreadProxy::compositeAndReadback):
(WebCore::CCThreadProxy::drawLayersAndReadbackOnCCThread):
(WebCore::CCThreadProxy::finishAllRendering):
(WebCore::CCThreadProxy::isStarted):
(WebCore::CCThreadProxy::setNeedsCommit):
(WebCore::CCThreadProxy::setNeedsCommitAndRedraw):
(WebCore::CCThreadProxy::setNeedsRedraw):
(WebCore::CCThreadProxy::start):
(WebCore::CCThreadProxy::stop):
(WebCore::CCThreadProxy::finishAllRenderingOnCCThread):
(WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnCCThread):
(WebCore::CCThreadProxy::beginFrameAndCommit):
(WebCore::CCThreadProxy::commitOnCCThread):
(WebCore::CCThreadProxy::scheduleDrawTaskOnCCThread):
(WebCore::CCThreadProxy::drawLayersAndPresentOnCCThread):
(WebCore::CCThreadProxy::drawLayersOnCCThread):
(WebCore::CCThreadProxy::updateSchedulerStateOnCCThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
Source/WebKit/chromium:
Disable CCLayerTreeHostTest temporarily. Will re-enable
with https://bugs.webkit.org/show_bug.cgi?id=67418
Patch by Nat Duca <nduca@chromium.org> on 2011-09-26
Reviewed by James Robinson.
* tests/CCLayerTreeHostTest.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96066
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Tue, 27 Sep 2011 02:07:46 +0000 (02:07 +0000)]
Put back all Chromium platform failing expectations for some tests (they
still fail on all platforms on the GPU bots).
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96065
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adamk@chromium.org [Tue, 27 Sep 2011 01:44:36 +0000 (01:44 +0000)]
[MutationObservers] implement MutationRecord
https://bugs.webkit.org/show_bug.cgi?id=68824
Reviewed by Darin Adler.
Implements MutationRecord as specified in the thread at
http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html,
including some minor naming changes from the original proposal.
This is a small part of the MutationObserver API, see
https://bugs.webkit.org/show_bug.cgi?id=68729 for the metabug covering
this feature.
No new tests as this isn't yet exposed to the platform.
* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* dom/MutationRecord.cpp: Added.
(WebCore::MutationRecord::createChildList):
(WebCore::MutationRecord::createAttributes):
(WebCore::MutationRecord::createCharacterData):
(WebCore::MutationRecord::MutationRecord):
(WebCore::MutationRecord::~MutationRecord):
* dom/MutationRecord.h: Added.
(WebCore::MutationRecord::target):
(WebCore::MutationRecord::addedNodes):
(WebCore::MutationRecord::removedNodes):
(WebCore::MutationRecord::previousSibling):
(WebCore::MutationRecord::nextSibling):
(WebCore::MutationRecord::attributeName):
(WebCore::MutationRecord::attributeNamespace):
(WebCore::MutationRecord::oldValue):
(WebCore::MutationRecord::setOldValue):
* dom/MutationRecord.idl: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96064
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 27 Sep 2011 01:36:08 +0000 (01:36 +0000)]
Implement a CloseEvent constructor for V8
https://bugs.webkit.org/show_bug.cgi?id=68793
Patch by Kentaro Hara <haraken@chromium.org> on 2011-09-26
Reviewed by Adam Barth.
Source/WebCore:
Test: fast/events/constructors/close-event-constructor.html
* bindings/v8/OptionsObject.cpp:
(WebCore::OptionsObject::getKey): Just removed an extra space.
(WebCore::OptionsObject::getKeyValue): Returns an unsigned short value corresponding to the given key.
* bindings/v8/OptionsObject.h:
* bindings/v8/custom/V8EventConstructors.cpp: Added the CloseEvent constructor.
* websockets/CloseEvent.idl: Added a 'V8CustomConstructor' attribute.
LayoutTests:
Enabled close-event-constructor.html, since now V8 has the CloseEvent constructor.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96061
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
japhet@chromium.org [Tue, 27 Sep 2011 01:29:20 +0000 (01:29 +0000)]
Clean up CachedResource::load(). Collapse its
logic into a single callsite, taking just a
CachedResourceLoader and a ResourceLoaderOptions.
1. Its 'incremental' parameter is redundant.
2. With 'incremental' removed, the SecurityCheckPolicy is the only
parameter difference between the CachedResource::load() variants.
Making it a part of ResourceLoaderOptions removes yet another random
enum that is passed around individually.
3. We currently have to call setResourceLoaderOptions() before load() on a
new CachedResource, so we should just take the ResourceLoaderOptions in load().
https://bugs.webkit.org/show_bug.cgi?id=67443
Reviewed by Antti Koivisto.
No new tests, refactor only.
* loader/DocumentThreadableLoader.cpp:
* loader/FrameLoaderTypes.h: Move SecurityCheckPolicy to ResourceLoaderOptions.h.
* loader/MainResourceLoader.cpp:
* loader/NetscapePlugInStreamLoader.cpp:
* loader/ResourceLoadScheduler.cpp:
* loader/ResourceLoadScheduler.h:
* loader/ResourceLoader.cpp: Enforce SecurityCheckPolicy here instead of SubresourceLoader.
* loader/ResourceLoaderOptions.h: Store SecurityCheckPolicy on ResourceLoaderOptions.
* loader/SubresourceLoader.cpp:
* loader/SubresourceLoader.h:
* loader/cache/CachedFont.cpp:
* loader/cache/CachedFont.h:
* loader/cache/CachedImage.cpp:
* loader/cache/CachedImage.h:
* loader/cache/CachedResource.cpp:
* loader/cache/CachedResource.h:
* loader/cache/CachedResourceLoader.cpp:
(WebCore::defaultCachedResourceOptions): Define the default ResourceLoaderOptions for
CachedResource loads here instead of as a default parameter on requestResource().
* loader/cache/CachedResourceLoader.h:
* loader/cache/CachedResourceRequest.cpp:
(WebCore::CachedResourceRequest::didReceiveData): Remove m_incremental, since its purpose
is already enforced in the data() implementation of every CachedResource that doesn't want
incremental loads.
* loader/cache/CachedResourceRequest.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96060
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dglazkov@chromium.org [Tue, 27 Sep 2011 01:27:04 +0000 (01:27 +0000)]
garden-o-matic should be pretty in Open Sans.
https://bugs.webkit.org/show_bug.cgi?id=68845
Reviewed by Adam Barth.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/common.css: Tweaked to bring back teh fonts.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96059
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Tue, 27 Sep 2011 01:13:06 +0000 (01:13 +0000)]
Chromium test expectations update.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96058
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 27 Sep 2011 00:57:51 +0000 (00:57 +0000)]
editing/selection/select-bidi-run.html fails on Chromium Windows and Linux
https://bugs.webkit.org/show_bug.cgi?id=68832
Unreviewed; remove the failing test expectation because it started passing after r96016.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96057
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 27 Sep 2011 00:55:57 +0000 (00:55 +0000)]
Skip the test added by r95964 on Qt and GTK because it has been failing
on those two platforms. The failure is tracked by the bugs 68854 and 68855.
* platform/gtk/Skipped:
* platform/qt/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96056
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dglazkov@chromium.org [Tue, 27 Sep 2011 00:52:19 +0000 (00:52 +0000)]
garden-o-matic should not say "Just now" when it doesn't actually know when an event happened.
https://bugs.webkit.org/show_bug.cgi?id=68841
Reviewed by Adam Barth.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js: Changed ui.RelativeTime to not initialize with current time.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js: Adjusted unit tests.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js: Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96055
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 27 Sep 2011 00:43:02 +0000 (00:43 +0000)]
IndexedDB: Second half of IDBFactory.getDatabaseNames implementation
https://bugs.webkit.org/show_bug.cgi?id=68818
Patch by Joshua Bell <jsbell@chromium.org> on 2011-09-26
Reviewed by Tony Chang.
Source/WebCore:
Test: storage/indexeddb/factory-basics.html
Adds ability to enumerate IndexedDB databases within an origin.
* bindings/v8/custom/V8IDBAnyCustom.cpp:
(WebCore::toV8):
* storage/IDBAny.cpp:
(WebCore::IDBAny::domStringList):
(WebCore::IDBAny::set):
* storage/IDBAny.h:
* storage/IDBBackingStore.h:
* storage/IDBCallbacks.h:
* storage/IDBFactory.cpp:
(WebCore::IDBFactory::getDatabaseNames):
* storage/IDBFactory.h:
* storage/IDBFactory.idl:
* storage/IDBFactoryBackendImpl.cpp:
(WebCore::IDBFactoryBackendImpl::getDatabaseNames):
(WebCore::IDBFactoryBackendImpl::open):
(WebCore::IDBFactoryBackendImpl::openBackingStore):
* storage/IDBFactoryBackendImpl.h:
* storage/IDBFactoryBackendInterface.h:
* storage/IDBLevelDBBackingStore.cpp:
(WebCore::IDBLevelDBBackingStore::getDatabaseNames):
(WebCore::IDBLevelDBBackingStore::getObjectStores):
(WebCore::IDBLevelDBBackingStore::getIndexes):
* storage/IDBLevelDBBackingStore.h:
* storage/IDBLevelDBCoding.cpp:
(WebCore::IDBLevelDBCoding::DatabaseNameKey::encodeMinKeyForOrigin):
(WebCore::IDBLevelDBCoding::DatabaseNameKey::encodeStopKeyForOrigin):
* storage/IDBLevelDBCoding.h:
* storage/IDBRequest.cpp:
(WebCore::IDBRequest::onSuccess):
* storage/IDBRequest.h:
* storage/IDBSQLiteBackingStore.cpp:
(WebCore::IDBSQLiteBackingStore::getDatabaseNames):
* storage/IDBSQLiteBackingStore.h:
Source/WebKit/chromium:
Adds ability to enumerate IndexedDB databases within an origin.
* src/IDBCallbacksProxy.cpp:
(WebKit::IDBCallbacksProxy::onSuccess):
* src/IDBCallbacksProxy.h:
* src/IDBFactoryBackendProxy.cpp:
(WebKit::IDBFactoryBackendProxy::getDatabaseNames):
* src/IDBFactoryBackendProxy.h:
* src/WebIDBCallbacksImpl.cpp:
(WebKit::WebIDBCallbacksImpl::onSuccess):
* src/WebIDBCallbacksImpl.h:
* src/WebIDBFactoryImpl.cpp:
(WebKit::WebIDBFactoryImpl::getDatabaseNames):
* src/WebIDBFactoryImpl.h:
LayoutTests:
Adds ability to enumerate IndexedDB databases within an origin.
* storage/indexeddb/factory-basics-expected.txt: Added.
* storage/indexeddb/factory-basics.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96054
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Tue, 27 Sep 2011 00:40:40 +0000 (00:40 +0000)]
Remove failing Chromium expectations for tests that now pass.
Rebaseline repaint tests for Chromium Snow Leopard CG after r96005.
* platform/chromium-cg-mac/fast/repaint/flexible-box-overflow-expected.png: Added.
* platform/chromium-cg-mac/fast/repaint/flexible-box-overflow-horizontal-expected.png: Added.
* platform/chromium-cg-mac/fast/repaint/inline-block-overflow-expected.png: Added.
* platform/chromium-cg-mac/fast/repaint/layer-child-outline-expected.png: Added.
* platform/chromium-cg-mac/fast/repaint/layer-outline-expected.png: Added.
* platform/chromium-cg-mac/fast/repaint/layer-outline-horizontal-expected.png: Added.
* platform/chromium-cg-mac/fast/repaint/text-shadow-expected.png: Added.
* platform/chromium-cg-mac/fast/repaint/text-shadow-horizontal-expected.png: Added.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96053
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Tue, 27 Sep 2011 00:36:19 +0000 (00:36 +0000)]
<animateColor> applied to filtered ellipse does not update
https://bugs.webkit.org/show_bug.cgi?id=68457
<rdar://problem/
10154777>
Reviewed by Darin Adler.
Invalidate the filter's cache when style changes take place so that style changes are respected.
Test: svg/filters/animate-fill.svg
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96052
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caio.oliveira@openbossa.org [Tue, 27 Sep 2011 00:35:41 +0000 (00:35 +0000)]
[Qt] [WK2] Fix build after r95982
https://bugs.webkit.org/show_bug.cgi?id=68842
Reviewed by Anders Carlsson.
The patch in r95982 removed the paint() function, because it was doing
nothing (in both implementations). This patch remove the call we had
for it to fix the build.
* UIProcess/qt/qtouchwebpageproxy.cpp:
(QTouchWebPageProxy::paintContent):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96051
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fsamuel@chromium.org [Tue, 27 Sep 2011 00:23:31 +0000 (00:23 +0000)]
Removed an unnecessary include in WebFrameImpl
https://bugs.webkit.org/show_bug.cgi?id=68834
Reviewed by Darin Fisher.
* src/WebFrameImpl.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96049
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Tue, 27 Sep 2011 00:23:09 +0000 (00:23 +0000)]
Remove failing expectations for some ruby tests, since they were
renamed to -disabled with r94327 and thus aren't being run at all.
Add compositing/video-page-visibility.html Windows GPU baselines.
* platform/chromium-gpu-win/compositing/video-page-visibility-expected.png: Added.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96048
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Tue, 27 Sep 2011 00:06:52 +0000 (00:06 +0000)]
Unreviewed Chromium test expectations update.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96047
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
levin@chromium.org [Tue, 27 Sep 2011 00:03:07 +0000 (00:03 +0000)]
watchlist: Add parsing for definition section.
https://bugs.webkit.org/show_bug.cgi?id=68850
Reviewed by Adam Barth.
* Scripts/webkitpy/common/watchlist/watchlist.py:
* Scripts/webkitpy/common/watchlist/watchlistparser.py:
* Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96046
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Mon, 26 Sep 2011 23:53:42 +0000 (23:53 +0000)]
Make JSCell::toBoolean non-virtual
https://bugs.webkit.org/show_bug.cgi?id=67727
Reviewed by Geoffrey Garen.
JSCell::toBoolean now manually performs the toBoolean check for objects and strings (where
before it was simply virtual and would crash if its implementation was called).
Its descendants in JSObject and JSString have also been made non-virtual. JSCell now
explicitly covers all cases of toBoolean, so having a virtual implementation of
JSCell::toBoolean is no longer necessary. This is part of a larger process of un-virtualizing JSCell.
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* runtime/JSCell.cpp:
* runtime/JSCell.h:
* runtime/JSNotAnObject.cpp:
* runtime/JSNotAnObject.h:
* runtime/JSObject.h:
* runtime/JSString.h:
(JSC::JSCell::toBoolean):
(JSC::JSValue::toBoolean):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96045
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 23:29:34 +0000 (23:29 +0000)]
Remove failing Chromium test expectations for tests that now pass
(mainly due to r95751, which implemented Function.prototype.bind for
JSC, resulting in baseline updates that now work for V8 too).
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96033
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 23:21:42 +0000 (23:21 +0000)]
Set but unused variables cleanup in v8 bindings (gcc 4.6)
https://bugs.webkit.org/show_bug.cgi?id=68079
Patch by Max Perepelitsyn <pph34r@gmail.com> on 2011-09-26
Reviewed by Adam Barth.
Source/WebCore:
Test: http/tests/websocket/tests/hybi/send-object-tostring-check.html
* bindings/scripts/CodeGeneratorV8.pm:
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::ConfigureV8TestObjTemplate):
* bindings/v8/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::addListener):
* bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
(WebCore::V8HTMLOptionsCollection::lengthAccessorSetter):
* bindings/v8/custom/V8WebSocketCustom.cpp:
(WebCore::V8WebSocket::sendCallback):
LayoutTests:
* http/tests/websocket/tests/hybi/send-object-tostring-check-expected.txt: Added.
* http/tests/websocket/tests/hybi/send-object-tostring-check.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96030
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tony@chromium.org [Mon, 26 Sep 2011 23:07:50 +0000 (23:07 +0000)]
switch the initial value of flex-order to 0
https://bugs.webkit.org/show_bug.cgi?id=68820
Source/WebCore:
The spec changed from having an initial value of 1 to 0.
Reviewed by Ojan Vafai.
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::initialFlexOrder):
LayoutTests:
Reviewed by Ojan Vafai.
* css3/flexbox/flex-order.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96026
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cmarrin@apple.com [Mon, 26 Sep 2011 23:02:17 +0000 (23:02 +0000)]
Enable requestAnimationFrame on Windows
https://bugs.webkit.org/show_bug.cgi?id=68397
Reviewed by Simon Fraser.
Source/JavaScriptCore:
Enabled REQUEST_ANIMATION_FRAME_TIMER for Windows
* wtf/Platform.h:
WebKitLibraries:
Enable REQUEST_ANIMATION_FRAME for Windows
* win/tools/vsprops/FeatureDefines.vsprops:
LayoutTests:
Unskip requestAnimationFrame tests for Windows. request-animation-frame-during-modal.html
is still skipped because it uses showModalDialog which is not supported in DRT on Windows
* platform/win/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96023
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 23:00:37 +0000 (23:00 +0000)]
Fix WebKitTestRunner builds for Cairo, Windows and Qt.
* WebKitTestRunner/cairo/TestInvocationCairo.cpp:
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):
* WebKitTestRunner/win/TestInvocationWin.cpp:
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96021
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
crogers@google.com [Mon, 26 Sep 2011 22:58:29 +0000 (22:58 +0000)]
OfflineAudioDestinationNode must wait for thread completion in uninitialize()
https://bugs.webkit.org/show_bug.cgi?id=68725
Reviewed by Kenneth Russell.
No new tests. This fixes internal implementation details.
* webaudio/OfflineAudioDestinationNode.cpp:
(WebCore::OfflineAudioDestinationNode::uninitialize):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96020
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 22:50:38 +0000 (22:50 +0000)]
editing/selection/select-bidi-run.html timeouts on non-Mac platforms
https://bugs.webkit.org/show_bug.cgi?id=68831
Reviewed by Enrica Casucci.
Click at (0,0) to reset click count instead of a long leapForward.
* editing/selection/select-bidi-run.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96016
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 26 Sep 2011 22:46:28 +0000 (22:46 +0000)]
REGRESSION (r95747): Activating the web inspector causes the web process to be killed
https://bugs.webkit.org/show_bug.cgi?id=68762
Reviewed by Anders Carlsson.
* UIProcess/WebInspectorProxy.cpp: (WebKit::WebInspectorProxy::createInspectorPage):
Tell Web process that loading resources from WebCore resources directory is OK.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadHTMLString):
(WebKit::WebPageProxy::loadAlternateHTMLString):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::assumeReadAccessToBaseURL):
* UIProcess/WebProcessProxy.h:
Renamed willLoadHTMLStringWithBaseURL to more generic assumeReadAccessToBaseURL.
* UIProcess/WebInspectorProxy.h:
* UIProcess/efl/WebInspectorEfl.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/gtk/WebInspectorGtk.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/qt/WebInspectorProxyQt.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
* UIProcess/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
Report what base directory Inspector has access to.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96014
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
imasaki@chromium.org [Mon, 26 Sep 2011 22:45:42 +0000 (22:45 +0000)]
[Chromium] Update the test expectaion file for media related tests.
It includes updating bug numbers, removing
media/video-controls-visible-audio-only.html, and unskipping
media/media-document-audio-repaint.html.
https://bugs.webkit.org/show_bug.cgi?id=68254
Reviewed by David Levin.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96013
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 22:34:54 +0000 (22:34 +0000)]
Source/WebKit/chromium: Fix copy and paste error in r96002.
* tests/InnerGestureRecognizerTest.cpp:
(TEST_F):
LayoutTests: Remove test that no longer crashes (fixed by r95985).
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96010
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
xan@webkit.org [Mon, 26 Sep 2011 22:28:31 +0000 (22:28 +0000)]
[GTK] Do not ignore 'Replaceable' attributes in the DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=68837
Reviewed by Martin Robinson.
* bindings/scripts/CodeGeneratorGObject.pm: add getters (but not
setters) for 'Replaceable' attributes. Punt for the future
actually making them settable, since it seems non trivial.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96009
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 22:27:19 +0000 (22:27 +0000)]
Leopard build fix.
* testing/Internals.cpp:
(WebCore::Internals::setZoomAnimatorTransform):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96008
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 22:22:23 +0000 (22:22 +0000)]
IndexedDB: Null key path gets stored as empty string key path
https://bugs.webkit.org/show_bug.cgi?id=68726
Patch by Joshua Bell <jsbell@chromium.org> on 2011-09-26
Reviewed by Tony Chang.
Store additional flag to indicate if object store key path
is null vs. empty. Added additional runtime tests for integrity
of object store metadata.
* storage/IDBLevelDBBackingStore.cpp:
(WebCore::checkObjectStoreAndMetaDataType):
(WebCore::IDBLevelDBBackingStore::getObjectStores):
(WebCore::IDBLevelDBBackingStore::createObjectStore):
* storage/IDBLevelDBCoding.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96007
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
reed@google.com [Mon, 26 Sep 2011 22:21:04 +0000 (22:21 +0000)]
[skia] need rebaseline after the next skia roll -- improvements to xfermodes on gpu
https://bugs.webkit.org/show_bug.cgi?id=68807
Reviewed by Stephen White.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96006
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 22:19:10 +0000 (22:19 +0000)]
Repaint tests don't work in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=68453
Tools:
Reviewed by Sam Weinig.
Convert DumpRenderTree to use use the repaint rects
exposed via WebKit API when generating the repaint test
overlay.
Fix WebKitTestRunner to work with repaint tests, again
using the repaint rects exposed from WK2.
In both cases, layoutTestController.display() now just
forces a display of the web view, and turns on repaint
rect tracking on the main FrameView.
Later, when pixel results are requested, the alpha overlay
that shows the repaint rects is generated using the list
of rects supplied by WebCore.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetDefaultsToConsistentValues):
(resetWebViewToConsistentStateBeforeTesting):
(displayWebView):
* DumpRenderTree/mac/PixelDumpSupportMac.mm:
(paintRepaintRectOverlay):
(createBitmapContextFromWebView):
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
(WTR::InjectedBundle::done):
* WebKitTestRunner/InjectedBundle/InjectedBundle.h:
(WTR::InjectedBundle::setRepaintRects):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::reset):
(WTR::InjectedBundlePage::dump):
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::display):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
* WebKitTestRunner/TestInvocation.h:
* WebKitTestRunner/cg/TestInvocationCG.cpp:
(WTR::paintRepaintRectOverlay):
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):
LayoutTests:
Reviewed by Sam Weinig.
Update Mac results to use the new repaint rects. Differences from old results:
* There are no longer invalidates from scrolling.
* We no longer see the effects of AppKit rect coalescing.
* Composting tests show the overlay now, but repaints in compositing layers do not show.
Bad results in a couple of tests are covered by bugs 68830 and 68829.
* platform/mac/fast/repaint/4774354-expected.png:
* platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.png:
* platform/mac/fast/repaint/block-selection-gap-in-composited-layer-expected.png:
* platform/mac/fast/repaint/border-radius-repaint-expected.png:
* platform/mac/fast/repaint/clipped-relative-expected.png:
* platform/mac/fast/repaint/containing-block-position-change-expected.png:
* platform/mac/fast/repaint/control-clip-expected.png:
* platform/mac/fast/repaint/delete-into-nested-block-expected.png:
* platform/mac/fast/repaint/fixed-and-absolute-position-scrolled-expected.png:
* platform/mac/fast/repaint/fixed-scroll-simple-expected.png:
* platform/mac/fast/repaint/flexible-box-overflow-expected.png:
* platform/mac/fast/repaint/flexible-box-overflow-horizontal-expected.png:
* platform/mac/fast/repaint/float-move-during-layout-expected.png:
* platform/mac/fast/repaint/float-overflow-expected.png:
* platform/mac/fast/repaint/float-overflow-right-expected.png:
* platform/mac/fast/repaint/iframe-scroll-repaint-expected.png:
* platform/mac/fast/repaint/inline-block-overflow-expected.png:
* platform/mac/fast/repaint/japanese-rl-selection-repaint-expected.png:
* platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
* platform/mac/fast/repaint/layer-child-outline-expected.png:
* platform/mac/fast/repaint/layer-outline-expected.png:
* platform/mac/fast/repaint/layer-outline-horizontal-expected.png:
* platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.png:
* platform/mac/fast/repaint/line-overflow-expected.png:
* platform/mac/fast/repaint/nested-iframe-scroll-inner-expected.png:
* platform/mac/fast/repaint/nested-iframe-scroll-outer-expected.png:
* platform/mac/fast/repaint/outline-child-repaint-expected.png:
* platform/mac/fast/repaint/outline-shrinking-expected.png:
* platform/mac/fast/repaint/overflow-delete-line-expected.png:
* platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png:
* platform/mac/fast/repaint/repaint-during-scroll-expected.png:
* platform/mac/fast/repaint/scale-page-shrink-expected.png:
* platform/mac/fast/repaint/search-field-cancel-expected.png:
* platform/mac/fast/repaint/selection-after-remove-expected.png:
* platform/mac/fast/repaint/shadow-multiple-horizontal-expected.png:
* platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
* platform/mac/fast/repaint/shadow-multiple-strict-vertical-expected.png:
* platform/mac/fast/repaint/shadow-multiple-vertical-expected.png:
* platform/mac/fast/repaint/static-to-positioned-expected.png:
* platform/mac/fast/repaint/table-cell-move-expected.png:
* platform/mac/fast/repaint/text-selection-rect-in-overflow-2-expected.png:
* platform/mac/fast/repaint/text-shadow-expected.png:
* platform/mac/fast/repaint/text-shadow-horizontal-expected.png:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96005
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 22:12:55 +0000 (22:12 +0000)]
Disable Chromium gesture recognizer tests that started to fail on the
Mac bots recently.
* tests/InnerGestureRecognizerTest.cpp:
(TEST_F):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96002
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
noel.gordon@gmail.com [Mon, 26 Sep 2011 22:10:29 +0000 (22:10 +0000)]
[Chromium] Remove DFGAliasTracker.h references from gyp project files
https://bugs.webkit.org/show_bug.cgi?id=68787
Reviewed by Geoffrey Garen.
DFG/DFGAliasTracker.h was removed in r95389. Cleanup (remove) references
to that file from the gyp project files.
* JavaScriptCore.gypi:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96001
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 22:07:33 +0000 (22:07 +0000)]
Fix nonpremultiplied webgl toDataURL to jpeg
https://bugs.webkit.org/show_bug.cgi?id=68366
Source/WebCore:
The canvas spec says that toDataURL to formats without an alpha must
be "composited onto a solid black background using the source-over
operator." Do that.
Patch by John Bauman <jbauman@chromium.org> on 2011-09-26
Reviewed by Kenneth Russell.
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::CGImageToDataURL):
(WebCore::ImageBuffer::toDataURL):
(WebCore::ImageDataToDataURL):
* platform/image-encoders/skia/JPEGImageEncoder.cpp:
(WebCore::RGBAtoRGB):
LayoutTests:
Update the premultiplyalpha-test from the WebGL conformance tests.
Also use the correct expected result for toDataURL.jpeg.alpha.html.
Patch by John Bauman <jbauman@chromium.org> on 2011-09-26
Reviewed by Kenneth Russell.
* fast/canvas/webgl/premultiplyalpha-test-expected.txt:
* fast/canvas/webgl/premultiplyalpha-test.html:
* platform/mac/canvas/philip/tests/toDataURL.jpeg.alpha-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96000
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 22:00:06 +0000 (22:00 +0000)]
Source/WebKit2: Added WKHitTestResult API's.
WKHitTestResult API's are added. These API's can be used to
get the hover'ed link/image/media URL as well as link lable and
title.
https://bugs.webkit.org/show_bug.cgi?id=68426
Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-09-26
Reviewed by Anders Carlsson.
* CMakeLists.txt:
* GNUmakefile.am:
* UIProcess/API/C/WKHitTestResult.cpp: Added.
(WKHitTestResultGetTypeID):
(WKHitTestResultCopyAbsoluteImageURL):
(WKHitTestResultCopyAbsoluteLinkURL):
(WKHitTestResultCopyAbsoluteMediaURL):
(WKHitTestResultCopyLinkLabel):
(WKHitTestResultCopyLinkTitle):
* UIProcess/API/C/WKHitTestResult.h: Added.
* UIProcess/API/C/WebKit2.h:
* WebKit2.xcodeproj/project.pbxproj:
* WebKit2API.pri:
* win/WebKit2.vcproj:
* win/WebKit2Generated.make:
Tools: Get hover'ed element URL from HitTest.
mouseDidMoveOverElement now gets the hover'ed element link using
WKHitTestResult API's.
https://bugs.webkit.org/show_bug.cgi?id=68426
Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-09-26
Reviewed by Anders Carlsson.
* MiniBrowser/gtk/BrowserWindow.c:
(mouseDidMoveOverElement):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95999
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 21:47:46 +0000 (21:47 +0000)]
[CMake] Remove FindFreetype.cmake
https://bugs.webkit.org/show_bug.cgi?id=68778
Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-26
Reviewed by Adam Barth.
CMake has provided its own FindFreetype.cmake forever, so there is no
need to have another implementation in WebKit.
.:
* Source/cmake/FindCairo.cmake: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS}
instead of Freetype_{LIBRARIES,INCLUDE_DIRS}.
* Source/cmake/FindFreetype.cmake: Removed.
* Source/cmake/FindPango.cmake: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS}
instead of Freetype_{LIBRARIES,INCLUDE_DIRS}.
* Source/cmake/OptionsEfl.cmake: Remove minimum required version
check, it has never been checked and Freetype 2.1.10 from 2005 is
already > 9.0.
Source/WebCore:
No new tests, just a buildsystem change.
* CMakeListsEfl.txt: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS} instead of
Freetype_{LIBRARIES,INCLUDE_DIRS}.
Source/WebKit/efl:
* CMakeListsEfl.txt: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS} instead of
Freetype_{LIBRARIES,INCLUDE_DIRS}.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95998
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 21:44:26 +0000 (21:44 +0000)]
Fix full-page rubber band overhang appearing when gesturing during a slow page load.
https://bugs.webkit.org/show_bug.cgi?id=68568
Chromium bug: http://code.google.com/p/chromium/issues/detail?id=97243
(This also happens on Safari.)
The problem was that ScrollView::overhangAmount() was returning a full-page overhang due to contentsSize() being 0 briefly during a page load, which was then getting used by ScrollAnimatorChromiumMac.mm to update the overhang on a gesture event. This change makes the relevant logic not return an overhang if the contentsSize() is empty.
Patch by Alexei Svitkine <asvitkine@chromium.org> on 2011-09-26
Reviewed by Adam Barth.
No new tests, since this is highly timing-related.
* platform/ScrollView.cpp:
(WebCore::ScrollView::overhangAmount):
(WebCore::ScrollView::wheelEvent):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95997
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alex@webkit.org [Mon, 26 Sep 2011 21:44:11 +0000 (21:44 +0000)]
2011-09-26 Alejandro G. Castro <alex@igalia.com>
[GTK] pot file is not properly remove during distcheck
https://bugs.webkit.org/show_bug.cgi?id=68797
Defined DOMAIN variable before DISTCLEANFILES because we are using
it there to identify the .pot file.
Reviewed by Martin Robinson.
* GNUmakefile.am:
2011-09-26 Alejandro G. Castro <alex@igalia.com>
[GTK] pot file is not properly remove during distcheck
https://bugs.webkit.org/show_bug.cgi?id=68797
DOMAIN is already defined, we just add the value to the variable.
Reviewed by Martin Robinson.
* GNUmakefile.am:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95996
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
levin@chromium.org [Mon, 26 Sep 2011 21:39:02 +0000 (21:39 +0000)]
Add skeleton parsing for a WatchList.
https://bugs.webkit.org/show_bug.cgi?id=68823
Reviewed by Adam Barth.
* Scripts/webkitpy/common/watchlist/watchlistparser.py: Added.
Parses the top level watch list sections -- none are defined yet -- and
throws an exception if an invalid one is listed.
* Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py: Added.
Verify the exception for an invalid section in a watch list.
* Scripts/webkitpy/common/watchlist/watchlist.py: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95995
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 21:06:44 +0000 (21:06 +0000)]
Add a failing expectation to the test added by r95964 on Chromium Linux and Chromium Windows.
The failure is tracked by the bug 68832.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95990
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 26 Sep 2011 20:57:06 +0000 (20:57 +0000)]
[Qt][WK2]Unreviewed speculative buildfix after r95968.
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::contentsSizeChanged):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95989
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
wjmaclean@chromium.org [Mon, 26 Sep 2011 20:31:12 +0000 (20:31 +0000)]
[chromium] Revise zoom animator backend to use full transform instead of just scale.
https://bugs.webkit.org/show_bug.cgi?id=68535
Reviewed by Kenneth Russell.
Source/WebCore:
* page/Settings.cpp:
(WebCore::Settings::Settings):
* page/Settings.h:
(WebCore::Settings::setZoomAnimatorScale):
(WebCore::Settings::zoomAnimatorScale):
(WebCore::Settings::setZoomAnimatorPosition):
(WebCore::Settings::zoomAnimatorPosX):
(WebCore::Settings::zoomAnimatorPosY):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::drawLayersInternal):
* platform/graphics/chromium/LayerRendererChromium.h:
(WebCore::LayerRendererChromium::setZoomAnimatorTransform):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::commitTo):
(WebCore::CCLayerTreeHost::setZoomAnimatorTransform):
(WebCore::CCLayerTreeHost::updateLayers):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::setZoomAnimatorTransform):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
* testing/Internals.cpp:
(WebCore::Internals::setZoomAnimatorTransform):
* testing/Internals.h:
* testing/Internals.idl:
Source/WebKit/chromium:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setZoomLevel):
(WebKit::WebViewImpl::setRootLayerNeedsDisplay):
LayoutTests:
* platform/chromium-gpu-linux/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
* platform/chromium/compositing/zoom-animator-scale-test.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95988
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 20:28:07 +0000 (20:28 +0000)]
Layout Test fast/animation/request-animation-frame-timestamps-advance.html is failing
https://bugs.webkit.org/show_bug.cgi?id=68821
Switch test to use finishJSTest(), which handles js-test-post.js loading
after the test is complete better.
* fast/animation/request-animation-frame-timestamps-advance.html:
* fast/animation/script-tests/request-animation-frame-timestamps-advance.js:
(window.webkitRequestAnimationFrame):
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95987
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 20:08:57 +0000 (20:08 +0000)]
[CMake] Detect the operating system in a more generic way.
https://bugs.webkit.org/show_bug.cgi?id=67482
Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-26
Reviewed by Adam Barth.
So far the buildsystem only considered Windows, Linux and Mac OS X as
valid operating systems, but any Unix (or at least the BSDs) should also
work fine.
By using the OS values CMake itself defines we can check for Unix
systems in a more generic fashion.
* Source/CMakeLists.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95986
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 26 Sep 2011 20:08:11 +0000 (20:08 +0000)]
REGRESSION (r95926) Assert firing in svg/clip-path/clip-path-on-svg.svg
https://bugs.webkit.org/show_bug.cgi?id=68819
Reviewed by Dave Hyatt.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::scheduleRelayout): Revert to using view() instead of the RenderView**
parameter of isRooted, since only the former returns 0 when the document is detached.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95985
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Mon, 26 Sep 2011 20:06:55 +0000 (20:06 +0000)]
Web Inspector: XMLHttpRequest console logging messages should link to network panel when possible.
https://bugs.webkit.org/show_bug.cgi?id=67399
Reviewed by Pavel Feldman.
* inspector/ConsoleMessage.cpp:
(WebCore::ConsoleMessage::ConsoleMessage):
* inspector/ConsoleMessage.h:
* inspector/InspectorConsoleAgent.cpp:
(WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
* inspector/InspectorConsoleAgent.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessage.prototype._formatMessage.else.else.linkifier):
(WebInspector.ConsoleMessage.prototype._formatMessage):
* inspector/front-end/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype.showAnchorLocation):
* inspector/front-end/inspector.js:
(WebInspector.linkifyStringAsFragmentWithCustomLinkifier):
(WebInspector.linkifyStringAsFragment):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95984
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
demarchi@webkit.org [Mon, 26 Sep 2011 19:58:24 +0000 (19:58 +0000)]
[EFL] Add virtual method to notify user when wrapping focus
https://bugs.webkit.org/show_bug.cgi?id=68699
Reviewed by Antonio Gomes.
Add a virtual method to ewk_view, so the Chrome gets notified if we
finished focusing all the items and would start over. This way the
browser can decide to handle the subsequent focus changes among its
widgets.
* WebCoreSupport/ChromeClientEfl.cpp: call ewk_view's virtual method to
give it a chance to grab focus
(WebCore::ChromeClientEfl::canTakeFocus):
* ewk/ewk_private.h:
* ewk/ewk_view.cpp: add virtual method
(ewk_view_focus_can_cycle):
* ewk/ewk_view.h: add focus direction enum and virtual method
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95983
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 26 Sep 2011 19:58:00 +0000 (19:58 +0000)]
Remove an old DrawingAreaProxy::paint member function
https://bugs.webkit.org/show_bug.cgi?id=68825
Reviewed by Dan Bernstein.
* UIProcess/DrawingAreaProxy.h:
* UIProcess/DrawingAreaProxyImpl.cpp:
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/TiledDrawingAreaProxy.cpp:
* UIProcess/TiledDrawingAreaProxy.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95982
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 19:57:56 +0000 (19:57 +0000)]
Rebaseline fast/dom/Window/window-resize-contents.html for non-Chromium ports.
Previous expected result was Chromium-specific because console line
numbers were different in JSC.
Additionally, the test doesn't behave as expected for non-Chromium
ports (window size remains at 800x600). Update the baselines to use
that for now, so that we're still aware of regressions/progressions.
* fast/dom/Window/window-resize-contents-expected.txt:
* platform/chromium/fast/dom/Window/window-resize-contents-expected.txt: Copied from LayoutTests/fast/dom/Window/window-resize-contents-expected.txt.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95981
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Mon, 26 Sep 2011 19:51:15 +0000 (19:51 +0000)]
White flash when entering full-screen using element.webkitRequestFullScreen()
https://bugs.webkit.org/show_bug.cgi?id=68481
Reviewed by Simon Fraser.
Source/WebCore:
No new tests; covered by existing full screen tests.
During an animation, renderers may try to paint into the FullScreenRenderer's
GraphicsLayer, and an optimization we previously added for the FullScreenRenderer's
background will cause these paints to fail. Remove this optimization in
containsPaintedContent, and taking non-composited elements into full screen will
animate correctly.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::containsPaintedContent):
Source/WebKit2:
Do not re-enable screen updates after exiting compositing mode until a repaint has completed.
* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController exitAcceleratedCompositingMode]):
(continueExitCompositingModeAfterRepaintCallback):
(-[WKFullScreenWindowController _continueExitCompositingModeAfterRepaint]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95978
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 19:43:56 +0000 (19:43 +0000)]
Unreviewed, rolling out r95960.
http://trac.webkit.org/changeset/95960
https://bugs.webkit.org/show_bug.cgi?id=58608
Significantly changes table border rendering
Source/WebCore:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawLineForBoxSide):
LayoutTests:
* fast/borders/border-groove-expected.png: Removed.
* fast/borders/border-groove-expected.txt: Removed.
* fast/borders/border-groove.html: Removed.
* fast/borders/border-inset-expected.png: Removed.
* fast/borders/border-inset-expected.txt: Removed.
* fast/borders/border-inset.html: Removed.
* fast/borders/border-outset-expected.png: Removed.
* fast/borders/border-outset-expected.txt: Removed.
* fast/borders/border-outset.html: Removed.
* fast/borders/border-ridge-expected.png: Removed.
* fast/borders/border-ridge-expected.txt: Removed.
* fast/borders/border-ridge.html: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95974
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihaip@chromium.org [Mon, 26 Sep 2011 19:09:49 +0000 (19:09 +0000)]
Chromium test expectations update.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95969
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 19:01:36 +0000 (19:01 +0000)]
Repaint tests don't work in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=68453
Reviewed by Sam Weinig.
Expose WKBundlePage methods to turn on repaint rect tracking
in WebKit2, for WebKitTestRunner.
As part of the change, expose utility methods on WebPage
to get the main Frame and FrameView, which required renaming
the exisiting method that returns a WebFrame. Fix callers
of that method to handle null when necessary.
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageGetMainFrame):
(WKBundlePageSetTracksRepaints):
(WKBundlePageIsTrackingRepaints):
(WKBundlePageResetTrackedRepaints):
(WKBundlePageCopyTrackedRepaintRects):
* WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::findLargestFrameInFrameSet):
(WebKit::WebChromeClient::closeWindowSoon):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidFirstLayout):
(WebKit::WebFrameLoaderClient::dispatchDidLayout):
(WebKit::WebFrameLoaderClient::frameLoadCompleted):
(WebKit::WebFrameLoaderClient::restoreViewState):
(WebKit::WebFrameLoaderClient::provisionalLoadStarted):
(WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebKit::WebFrameLoaderClient::createPlugin):
* WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
(WebKit::WebEditorClient::documentFragmentFromAttributedString):
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::isMainFrame):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setTracksRepaints):
(WebKit::WebPage::isTrackingRepaints):
(WebKit::WebPage::resetTrackedRepaints):
(WebKit::WebPage::trackedRepaintRects):
(WebKit::WebPage::clearMainFrameName):
(WebKit::WebPage::layoutIfNeeded):
(WebKit::WebPage::mainFrameHasCustomRepresentation):
(WebKit::WebPage::mainFrame):
(WebKit::WebPage::mainFrameView):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::mainWebFrame):
* WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
(-[WKAccessibilityWebPageObject accessibilityHitTest:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95968
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 18:57:14 +0000 (18:57 +0000)]
Repaint tests don't work in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=68453
Reviewed by Sam Weinig.
Source/WebCore:
Have FrameView keep track of repaint rects when asked to, and
expose this set of repaint rects via private WebKit API for later
use by DumpRenderTree.
The repaint rects are in WebView coordinates, so we have to
unapply the scroll offset.
* WebCore.exp.in:
* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::repaintContentRectangle):
(WebCore::FrameView::setTracksRepaints):
* page/FrameView.h:
(WebCore::FrameView::isTrackingRepaints):
(WebCore::FrameView::resetTrackedRepaints):
(WebCore::FrameView::trackedRepaintRects):
Source/WebKit/mac:
Have FrameView keep track of repaint rects when asked to, and
expose this set of repaint rects via private WebKit API for later
use by DumpRenderTree.
* WebView/WebView.mm:
(-[WebView setTracksRepaints:]):
(-[WebView isTrackingRepaints]):
(-[WebView resetTrackedRepaints]):
(-[WebView trackedRepaintRects]):
* WebView/WebViewPrivate.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95967
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Mon, 26 Sep 2011 18:53:48 +0000 (18:53 +0000)]
Optimize matching of common pseudo classes
https://bugs.webkit.org/show_bug.cgi?id=68633
Reviewed by Dave Hyatt, Darin Adler, Dimitri Glazkov.
:link, :visited and :focus are quite common. They often used as univeral selectors (including in our
default stylesheet) so we try to match them for all elements in the document. They take always the
slow matching path. In addition we match link styles twice due to visited link pseudo style generation
so the overhead is doubled. As a result substantial portion of our style matching time is spent
dealing with these pseudo classes.
This patch adds new lists to RuleSet for common pseudo class rules. The rules on the lists are only checked
if the element has approprate type and stat. ases where the rightmost pseudo class can then be rejected immediately.
We can also enable the fast path checking for the rest of the selector in many cases.
This seems to be >30% progression in selector matching performance with typical style sheets. It saves ~0.9s
when loading the full HTML5 spec.
* css/CSSStyleSelector.cpp:
(WebCore::RuleData::hasRightmostSelectorMatchingHTMLBasedOnRuleHash):
(WebCore::RuleSet::idRules):
(WebCore::RuleSet::classRules):
(WebCore::RuleSet::tagRules):
(WebCore::RuleSet::shadowPseudoElementRules):
(WebCore::RuleSet::linkPseudoClassRules):
(WebCore::RuleSet::visitedPseudoClassRules):
(WebCore::RuleSet::focusPseudoClassRules):
(WebCore::RuleSet::universalRules):
(WebCore::RuleSet::pageRules):
Add a new lists, some stylistic renamings.
(WebCore::CSSStyleSelector::matchRules):
New link and focus checks.
(WebCore::CSSStyleSelector::matchRulesForList):
(WebCore::CSSStyleSelector::checkSelector):
Inline the rightmost selector tag checking, skip if unnecessary.
(WebCore::isSelectorMatchingHTMLBasedOnRuleHash):
Common pseudo classes now match based on early filtering (though it is not a hash in this case).
(WebCore::RuleData::RuleData):
(WebCore::RuleSet::~RuleSet):
(WebCore::RuleSet::addRule):
Sort pseudo classes to new lists.
(WebCore::RuleSet::collectFeatures):
(WebCore::RuleSet::shrinkToFit):
(WebCore::CSSStyleSelector::matchPageRules):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkSelector):
Adopt to expanded fast path (this is used by querySelectorAll).
(WebCore::SelectorChecker::fastCheckRightmostSelector):
(WebCore::SelectorChecker::fastCheckSelector):
Rightmost selector is now checked differently than the rest. RuleSet based selection in CSSStyleSelector
is equivalent to fastCheckRightmostSelector().
(WebCore::isFastCheckableRelation):
(WebCore::isFastCheckableMatch):
(WebCore::isFastCheckableRightmostSelector):
(WebCore::SelectorChecker::isFastCheckableSelector):
(WebCore::SelectorChecker::checkOneSelector):
(WebCore::SelectorChecker::commonPseudoClassSelectorMatches):
(WebCore::SelectorChecker::isFrameFocused):
* css/SelectorChecker.h:
(WebCore::SelectorChecker::isCommonPseudoClassSelector):
(WebCore::SelectorChecker::linkMatchesVisitedPseudoClass):
(WebCore::SelectorChecker::matchesFocusPseudoClass):
(WebCore::SelectorChecker::tagMatches):
Refactor a bunch of shared checks into functions.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95966
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Mon, 26 Sep 2011 18:52:00 +0000 (18:52 +0000)]
[Qt]REGRESSION(r95865): It made 4 tests crash
https://bugs.webkit.org/show_bug.cgi?id=68780
Patch by Zoltan Herczeg <zherczeg@webkit.org> on 2011-09-26
Reviewed by Oliver Hunt.
emitJumpSlowCaseIfNotJSCell(...) cannot be moved
away since the next load depends on it.
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_put_by_val):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95965
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 18:30:29 +0000 (18:30 +0000)]
REGRESSION(r74971): Selection doesn't work correctly in BiDi Text
https://bugs.webkit.org/show_bug.cgi?id=57340
Reviewed by Eric Seidel.
Source/WebCore:
This patch adds the end point adjustment mechanism at bidi boundaries similar to the one NSTextView implements.
To understand the problem, suppose we have strong RTL letters "ABC" in a LTR block (visually laid out as CBA).
Per NSTextView convention, logical offsets between each letter is placed as (0)C(2)B(1)A(3). In other words,
placing the caret visually on the left of CBA yields the position inside the text node of "ABC" at offset 0.
Likewise, placing it between C and B yields ("ABC", 2), and placing it on the right of CBA yields ("ABC", 3).
Now suppose a user attempts to select the letter A by a mouse drag from the right of CBA to a point between
B and A. First, the initial mouse down places the selection's base at ("ABC", 3). Then as the mouse pointer
moves to a point on the left of A, the selection's extent is set at ("ABC", 1), selecting "BC".
To mitigate this issue, NSTextView adjusts selection base and extent under certain conditions. In the above
example, NSTextView detects user's intent and changes the selection's base to ("ABC", 0) temporarily.
This patch implements a similar trick on WebKit. We adjust the base or the extent when they're at the left
end or at the right end of a bidi run and the other end is inside of the run. In the above example, the
base position on the right of A is the right end of a bidi run and the extent position between B and A is
inside the same run (CBA), so we would adjust the base to be ("ABC", 0) as NSTextView does.
Take another example abcABC. Note offsets are assigned as (0)a(1)b(2)c(3)C(5)B(4)A(6) When the user starts
a mouse drag from the right of A to a point between B and A, we adjust the selection base to be ("abcABC", 3)
because the base is at the right end of a bidi run and the extent is in the same run. We keep the adjustment
when the mouse pointer moves to a point between C and B. However, when the mouser pointer reaches a point
between letters b and c, the selection extent is placed at ("abcABC", 2). Because the extent is outside of
the bidi run started from the selection base, we restore the original base at this point. Had we not done this,
we'll end up selecting just "c".
While this algorithm is implemented in FrameSelection::setNonDirectionalSelectionIfNeeded, this patch adds
various member functions to RenderedPosition to facilitate abstraction around inline boxes and bidi runs.
Test: editing/selection/select-bidi-run.html
* editing/FrameSelection.cpp:
(WebCore::adjustEndpointsAtBidiBoundary): Added. Implements the endpoints adjustment algorithm.
(WebCore::FrameSelection::setNonDirectionalSelectionIfNeeded): Calls adjustEndpointsAtBidiBoundary, and
restores the original base as needed.
* editing/FrameSelection.h:
* editing/RenderedPosition.cpp:
(WebCore::RenderedPosition::RenderedPosition):
(WebCore::RenderedPosition::prevLeafChild): Added to cache prevLeafChild of the current inline box.
(WebCore::RenderedPosition::nextLeafChild): Ditto for nextLeafChild.
(WebCore::RenderedPosition::isEquivalent): Compares two RenderedPositions considering neighboring inline boxes
so that the rightmost position in a box and the leftmost position in the following box is considered equal.
(WebCore::RenderedPosition::bidiLevelOnLeft): Added. Returns the bidi level of the run on the left. We can't
add a generic bidiLevel to this class because it'll be ambiguous at bidi boundaries.
(WebCore::RenderedPosition::bidiLevelOnRight): Ditto for the run on the right.
(WebCore::RenderedPosition::leftBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::rightBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::atLeftBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::atRightBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::positionAtLeftBoundaryOfBiDiRun): Returns Position at the left edge of a bidi run
if RenderedPosition is at such a position. Asserts atLeftBoundaryOfBidiRun.
(WebCore::RenderedPosition::positionAtRightBoundaryOfBiDiRun): Ditto for the right edge.
* editing/RenderedPosition.h:
(WebCore::RenderedPosition::atLeftBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::atRightBoundaryOfBidiRun): Added.
(WebCore::RenderedPosition::atLeftmostOffsetInBox): Added.
(WebCore::RenderedPosition::atRightmostOffsetInBox): Added.
(WebCore::RenderedPosition::uncachedInlineBox): Added. We can't use a static const variable because gcc thinks
reinterpret_cast<InlineBox*>(1) is not an integral value.
(WebCore::RenderedPosition::RenderedPosition):
* editing/VisibleSelection.h:
(WebCore::VisibleSelection::visibleBase): Added.
(WebCore::VisibleSelection::visibleExtent): Added.
* page/EventHandler.cpp:
(WebCore::EventHandler::updateSelectionForMouseDrag):
LayoutTests:
* editing/selection/select-bidi-run-expected.txt: Added.
* editing/selection/select-bidi-run.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95964
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 26 Sep 2011 18:00:50 +0000 (18:00 +0000)]
[Qt] Unreviewed gardening.
* platform/qt/fast/dom/Window/window-resize-contents-expected.png: Added after r95897.
* platform/qt/fast/dom/Window/window-resize-contents-expected.txt: Added after r95897.
* platform/qt/fast/frames/flattening/frameset-flattening-advanced-expected.png: Updated after r95897.
* platform/qt/fast/frames/flattening/frameset-flattening-advanced-expected.txt: Updated after r95897.
* platform/qt/fast/frames/flattening/frameset-flattening-subframesets-expected.png: Updated after r95897.
* platform/qt/fast/frames/flattening/frameset-flattening-subframesets-expected.txt: Updated after r95897.
* platform/qt/fast/ruby/ruby-text-before-after-content-expected.png: Added after r95857.
* platform/qt/fast/ruby/ruby-text-before-after-content-expected.txt: Added after r95857.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95963
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 17:52:55 +0000 (17:52 +0000)]
Unreviewed, rolling out r95256.
http://trac.webkit.org/changeset/95256
https://bugs.webkit.org/show_bug.cgi?id=68814
Temporary CRASH calls no longer needed (Requested by enne on
#webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-26
Source/WebCore:
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::commitTo):
Source/WebKit/chromium:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::composite):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95962
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 26 Sep 2011 17:36:19 +0000 (17:36 +0000)]
<webkit.org/b/68809> IconDatabase::syncThreadMainLoop can assert if wakeSyncThread is called before thread starts executing
If wakeSyncThread is called before syncThreadMainLoop starts executing then m_syncThreadHasWorkToDo would be set
while executing the body of the sync thread loop, causing us to skip blocking on the condition variable. This would
lead to us hitting the assertion failure due to m_disabledSuddenTerminationForSyncThread being false, unless the main
thread happened to call wakeSyncThread a second time while the first loop iteration was executing.
Reviewed by Anders Carlsson.
* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::syncThreadMainLoop): Clear m_syncThreadHasWorkToDo to indicate that we're about to perform
all pending work.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95961
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 26 Sep 2011 17:34:08 +0000 (17:34 +0000)]
Groove/inset/outset borders show solid if the color is black.
https://bugs.webkit.org/show_bug.cgi?id=58608
Patch by Antaryami Pandia <antaryami.pandia@motorola.com> on 2011-09-26
Reviewed by Simon Fraser.
Source/WebCore:
Lightened the border side colors when drawing borders with styles as
Outset/Inset/Groove/Ridge.
Tests: fast/borders/border-groove.html
fast/borders/border-inset.html
fast/borders/border-outset.html
fast/borders/border-ridge.html
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawLineForBoxSide):
LayoutTests:
* fast/borders/border-groove-expected.png: Added.
* fast/borders/border-groove-expected.txt: Added.
* fast/borders/border-groove.html: Added.
* fast/borders/border-inset-expected.png: Added.
* fast/borders/border-inset-expected.txt: Added.
* fast/borders/border-inset.html: Added.
* fast/borders/border-outset-expected.png: Added.
* fast/borders/border-outset-expected.txt: Added.
* fast/borders/border-outset.html: Added.
* fast/borders/border-ridge-expected.png: Added.
* fast/borders/border-ridge-expected.txt: Added.
* fast/borders/border-ridge.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95960
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
inferno@chromium.org [Mon, 26 Sep 2011 17:13:09 +0000 (17:13 +0000)]
Delete retired custom font data only on document
destruction, and not on recalc style.
https://bugs.webkit.org/show_bug.cgi?id=68805
Reviewed by Dave Hyatt.
Source/WebCore:
Test: fast/text/custom-font-data-crash.html
* dom/Document.cpp:
(WebCore::Document::recalcStyle):
LayoutTests:
* fast/text/custom-font-data-crash-expected.txt: Added.
* fast/text/custom-font-data-crash.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95959
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 26 Sep 2011 17:00:40 +0000 (17:00 +0000)]
chrome.dll!WebCore::ApplyStyleCommand::applyBlockStyle ReadAV@NULL (
64db547804532a84be2e53721e499e9e)
https://bugs.webkit.org/show_bug.cgi?id=51639
Patch by Jay Soffian <jaysoffian@gmail.com> on 2011-09-26
Reviewed by Ryosuke Niwa.
Add missing window.layoutTestController.dumpAsText so that test output matches expectation.
* LayoutTests/editing/style/justify-without-enclosing-block.xhtml:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95958
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enne@google.com [Mon, 26 Sep 2011 16:44:18 +0000 (16:44 +0000)]
[chromium] Update VideoLayerChromium textures after texture resources are reclaimed
https://bugs.webkit.org/show_bug.cgi?id=68742
Reviewed by James Robinson.
Source/WebCore:
If video textures are reclaimed (such as during a visibility change on
a tab), the dirty rect for the layer is empty and it skips out of
updating compositor resources, leaving the video textures invalid.
Instead, check the textures here to make sure they're still valid
first before early out so that they can get reupdated if necessary.
Additionally, fix a small bug in pushPropertiesTo where 1 plane RGB
videos would not get drawn because all 3 planes didn't have valid
textures.
Test: compositing/video-page-visibility.html
* platform/graphics/chromium/VideoLayerChromium.cpp:
(WebCore::VideoLayerChromium::VideoLayerChromium):
(WebCore::VideoLayerChromium::cleanupResources):
(WebCore::VideoLayerChromium::updateCompositorResources):
(WebCore::VideoLayerChromium::pushPropertiesTo):
(WebCore::VideoLayerChromium::setLayerTreeHost):
(WebCore::VideoLayerChromium::texturesValid):
* platform/graphics/chromium/VideoLayerChromium.h:
LayoutTests:
Without this patch, this video texture is invalid.
* compositing/video-page-visibility-expected.png: Added.
* compositing/video-page-visibility-expected.txt: Added.
* compositing/video-page-visibility.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95957
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Mon, 26 Sep 2011 16:31:46 +0000 (16:31 +0000)]
Web Inspector: generic performance UI test for panel switch.
https://bugs.webkit.org/show_bug.cgi?id=68806
Reviewed by Pavel Feldman.
* inspector/performance/resources/show-panel-elements.html: Removed.
* inspector/performance/resources/show-panel-network.html: Removed.
* inspector/performance/resources/show-panel.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95956
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Mon, 26 Sep 2011 15:55:05 +0000 (15:55 +0000)]
Clean up code imported from WebKitAPITest
Fixes <http://webkit.org/b/68799> WebViewDestruction tests and related code don't match
TestWebKitAPI conventions
Reviewed by David Levin.
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp: Changed tests to use gtest macros
and to share functionality via test fixtures. Prefixed Win32 API calls with ::. Updated
namespace name.
(TestWebKitAPI::WebViewDestruction::SetUp):
(TestWebKitAPI::WebViewDestruction::webViewCount):
(TestWebKitAPI::WebViewDestructionWithHostWindow::SetUp):
(TestWebKitAPI::WebViewDestruction::runMessagePump):
(TestWebKitAPI::WebViewDestruction::TearDown):
(TestWebKitAPI::WebViewDestructionWithHostWindow::TearDown):
Moved functionality from free functions into these new test fixtures.
* TestWebKitAPI/win/HostWindow.cpp:
* TestWebKitAPI/win/HostWindow.h:
Prefixed Win32 API calls with ::. Updated namespace name.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95955
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 15:51:43 +0000 (15:51 +0000)]
Unreviewed. Rolled DEPS.
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-26
* DEPS:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95954
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Mon, 26 Sep 2011 15:29:39 +0000 (15:29 +0000)]
Web Inspector: introduce protocol backwards compatibility validator.
https://bugs.webkit.org/show_bug.cgi?id=68800
Reviewed by Yury Semikhatsky.
* inspector/Inspector.json:
* inspector/Inspector.draft-01.json: Copied from Source/WebCore/inspector/Inspector.json.
* inspector/validate-protocol-compatibility: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95953
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
reni@webkit.org [Mon, 26 Sep 2011 14:45:33 +0000 (14:45 +0000)]
Unreviewed Qt gardening.
https://bugs.webkit.org/show_bug.cgi?id=68796
Patch by Zsolt Fehér <feherzs@inf.u-szeged.hu> on 2011-09-26
* platform/qt/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95950
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
reni@webkit.org [Mon, 26 Sep 2011 14:39:24 +0000 (14:39 +0000)]
Unreviewed Qt gardening.
https://bugs.webkit.org/show_bug.cgi?id=51639
Patch by Zsolt Fehér <feherzs@inf.u-szeged.hu> on 2011-09-26
* platform/qt/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95949
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kov@webkit.org [Mon, 26 Sep 2011 13:35:51 +0000 (13:35 +0000)]
Fix documentation generation by specifying the sources
directory with $(top_srcdir).
Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2011-09-26
Reviewed by Xan Lopez.
* docs/GNUmakefile.am:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95948
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 13:03:01 +0000 (13:03 +0000)]
[Qt] Unused variable in QNetworkReplyHandler::sendNetworkRequest.
https://bugs.webkit.org/show_bug.cgi?id=68798
Patch by Andreas Kling <kling@webkit.org> on 2011-09-26
Reviewed by Noam Rosenthal.
* platform/network/qt/QNetworkReplyHandler.cpp:
(WebCore::QNetworkReplyHandler::sendNetworkRequest):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95947
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Mon, 26 Sep 2011 12:52:41 +0000 (12:52 +0000)]
Second unreviewed build fix for r95941
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willCallFunctionImpl):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95946
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Mon, 26 Sep 2011 12:48:55 +0000 (12:48 +0000)]
Unreviewed build fix for webkit builds after r95941.
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willCallFunctionImpl):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95945
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Mon, 26 Sep 2011 12:16:59 +0000 (12:16 +0000)]
Merge WebKitAPITest into TestWebKitAPI
This also means that our formerly-WebKitAPITest tests will be run on the bots!
I made the minimal changes necessary to get the tests to run in TestWebKitAPI. I'll make
them more idiomatic in a separate pass.
Fixes <http://webkit.org/b/66560> WebKitAPITest and TestWebKitAPI have duplicate
functionality (and names!)
Reviewed by Anders Carlsson.
Tools:
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp: Renamed from Tools/WebKitAPITest/tests/WebViewDestruction.cpp.
* TestWebKitAPI/win/HostWindow.cpp: Renamed from Tools/WebKitAPITest/HostWindow.cpp.
* TestWebKitAPI/win/HostWindow.h: Renamed from Tools/WebKitAPITest/HostWindow.h.
* TestWebKitAPI/win/TestWebKitAPI.vcproj: Added new files.
* TestWebKitAPI/win/main.cpp:
(main): Added a call to ::OleInitialize to make WebKit1 work. This came from WebKitAPITest.
* WebKitAPITest: Removed this directory and its contents.
Source/WebKit/win:
Remove WebKitAPITest
* WebKit.vcproj/WebKit.sln: Removed WebKitAPITest.vcproj. Changed WebKitLauncherWin, which
formerly depended on WebKitAPITest, to now depend on DumpRenderTree, which WebKitAPITest
depended on.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95944
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Mon, 26 Sep 2011 12:15:28 +0000 (12:15 +0000)]
Remove two failing WebKitAPITest tests
The failures are covered by <http://webkit.org/b/33162> and <http://webkit.org/b/32868>.
Reviewed by Anders Carlsson.
* WebKitAPITest/tests/WebViewDestruction.cpp: Removed the NoCloseOrDestroyViewWindow and
MainFrameAfterClose tests.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95943
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caseq@chromium.org [Mon, 26 Sep 2011 12:15:14 +0000 (12:15 +0000)]
2011-09-26 Andrey Kosyakov <caseq@chromium.org>
Web Inspector: [Extensions API] allow resources to hook on click on resource links
https://bugs.webkit.org/show_bug.cgi?id=68528
Reviewed by Yury Semikhatsky.
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/front-end/ExtensionAPI.js:
(injectedExtensionAPI.Console.prototype.get Severity):
(injectedExtensionAPI.Panels.prototype.create):
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):
(injectedExtensionAPI.ExtensionServerClient.prototype.hasHandler):
(injectedExtensionAPI.ExtensionServerClient.prototype.deregisterHandler):
* inspector/front-end/ExtensionServer.js:
(WebInspector.ExtensionServer):
(WebInspector.ExtensionServer.prototype._onSetOpenResourceHandler):
(WebInspector.ExtensionServer.prototype._handleAnchorClicked):
(WebInspector.ExtensionServer.prototype._addExtensions):
(WebInspector.ExtensionServer.prototype._addExtension):
(WebInspector.ExtensionServer.prototype._registerExtension):
* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen):
(WebInspector.SettingsScreen.prototype._createCustomSetting):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/helpScreen.css:
(.help-content select):
(.help-content select:disabled):
(.help-content option):
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector.set attached):
(WebInspector._showAnchorLocation):
2011-09-26 Andrey Kosyakov <caseq@chromium.org>
Web Inspector: [Extensions API] allow resources to hook on click on resource links
https://bugs.webkit.org/show_bug.cgi?id=68528
Reviewed by Yury Semikhatsky.
* http/tests/inspector/extensions-test.js:
(initialize_ExtensionsTest.InspectorTest.runExtensionTests):
(initialize_ExtensionsTest):
* inspector/extensions/extensions-api-expected.txt:
* inspector/extensions/extensions-resources-expected.txt:
* inspector/extensions/extensions-resources.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95942
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Mon, 26 Sep 2011 12:12:34 +0000 (12:12 +0000)]
Web Inspector: Timeline: record root event for the function calls enforced by console eval.
https://bugs.webkit.org/show_bug.cgi?id=68695
In a complex web application developer might want to timeline a specific piece of code.
In this case he can do the next steps:
1) start timeline;
2) eval a command in console;
3) stop timeline.
I think it'd be nice to have a root event for the all the events that happened as the result of such eval.
Reviewed by Yury Semikhatsky.
Source/WebCore:
Test: inspector/timeline/timeline-injected-script-eval.html
* bindings/v8/ScriptFunctionCall.cpp:
* inspector/InjectedScript.cpp:
(WebCore::InjectedScript::makeCall):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willCallFunctionImpl):
LayoutTests:
* inspector/timeline/timeline-injected-script-eval-expected.txt: Added.
* inspector/timeline/timeline-injected-script-eval.html: Added.
* platform/chromium/inspector/timeline/timeline-injected-script-eval-expected.txt: Added.
* platform/chromium/inspector/timeline/timeline-receive-response-event-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95941
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kov@webkit.org [Mon, 26 Sep 2011 12:06:02 +0000 (12:06 +0000)]
REGRESSION: Empathy crashes when switching theme
https://bugs.webkit.org/show_bug.cgi?id=68600
Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2011-09-26
Reviewed by Martin Robinson.
* webkit/webkitwebview.cpp:
(webkit_web_view_set_scroll_adjustments): use the existing
set{Horizontal,Vertical}Adjustment functions, so the code is not
duplicated
(webkit_web_view_dispose): unset the adjustments during dispose,
to avoid late adjustment change notifications hitting the
adjustment watcher
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95940
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
noam.rosenthal@nokia.com [Mon, 26 Sep 2011 10:51:59 +0000 (10:51 +0000)]
[Texmap][Qt] Enable TextureMapperGL in platforms where BGRA is not present
https://bugs.webkit.org/show_bug.cgi?id=65473
Reviewed by Andreas Kling.
For now, swap RGBA->BGRA in software if we're in OpenGL ES 2.
We do that by iterating on the pixels and manually swapping each pixel's red and blue
values. This can be done faster with shaders, but for now this is a working solution
for platforms without BGRA support.
No new tests. Existing layout tests cover this.
* platform/graphics/opengl/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::endPaint):
* platform/graphics/opengl/TextureMapperGL.h:
* platform/graphics/qt/TextureMapperQt.cpp:
(WebCore::RGBA32PremultimpliedBufferQt::swapRGB):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95939
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 09:05:02 +0000 (09:05 +0000)]
[GTK] Fix coding style bits in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=68634
Patch by Sergio Villar Senin <svillar@igalia.com> on 2011-09-26
Reviewed by Martin Robinson.
No new tests needed.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::defaultSession):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95938
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 07:21:45 +0000 (07:21 +0000)]
[mac] Timestamp parameter to requestAnimationFrame is busted in USE(REQUEST_ANIMATION_FRAME_TIMER) path
https://bugs.webkit.org/show_bug.cgi?id=68769
Patch by James Robinson <jamesr@chromium.org> on 2011-09-26
Reviewed by Simon Fraser.
Source/WebCore:
Convert the time parameter from double to DOMTimeStamp using convertSecondsToDOMTimeStamp rather than relying on
implicit double->long conversion, which ignores the units of the value.
Test: fast/animation/request-animation-frame-timestamps-advance.html
* dom/ScriptedAnimationController.cpp:
(WebCore::ScriptedAnimationController::animationTimerFired):
LayoutTests:
Adds a test that the timestamp parameter to the requestAnimationFrame callback advances between calls.
* fast/animation/request-animation-frame-timestamps-advance-expected.txt: Added.
* fast/animation/request-animation-frame-timestamps-advance.html: Added.
* fast/animation/script-tests/request-animation-frame-timestamps-advance.js: Copied from LayoutTests/fast/animation/script-tests/request-animation-frame-timestamps.js.
(busyWait):
(window.webkitRequestAnimationFrame):
* fast/animation/script-tests/request-animation-frame-timestamps.js:
Remove the element parameter, they aren't a useful part of the test.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95937
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Mon, 26 Sep 2011 07:05:28 +0000 (07:05 +0000)]
Add custom vtable struct to ClassInfo struct
https://bugs.webkit.org/show_bug.cgi?id=68567
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
Declared/defined the MethodTable struct and added it to the ClassInfo struct.
Also defined the CREATE_METHOD_TABLE macro to generate these method tables
succinctly where they need to be defined.
Also added to it the first function to use this macro, visitChildren.
This is part of the process of getting rid of all C++ virtual methods in JSCell.
Eventually all virtual functions in JSCell that can't easily be converted to
non-virtual functions will be put into this custom vtable structure.
* runtime/ClassInfo.h:
Added the CREATE_METHOD_TABLE macro call as the last argument to each of the
ClassInfo structs declared in these classes. This saves us from having to visit
each s_info definition in the future when we add more methods to the MethodTable.
* API/JSCallbackConstructor.cpp:
* API/JSCallbackFunction.cpp:
* API/JSCallbackObject.cpp:
* JavaScriptCore.exp:
* runtime/Arguments.cpp:
* runtime/ArrayConstructor.cpp:
* runtime/ArrayPrototype.cpp:
* runtime/BooleanObject.cpp:
* runtime/BooleanPrototype.cpp:
* runtime/DateConstructor.cpp:
* runtime/DateInstance.cpp:
* runtime/DatePrototype.cpp:
* runtime/ErrorInstance.cpp:
* runtime/ErrorPrototype.cpp:
* runtime/ExceptionHelpers.cpp:
* runtime/Executable.cpp:
* runtime/GetterSetter.cpp:
* runtime/InternalFunction.cpp:
* runtime/JSAPIValueWrapper.cpp:
* runtime/JSActivation.cpp:
* runtime/JSArray.cpp:
* runtime/JSByteArray.cpp:
* runtime/JSFunction.cpp:
* runtime/JSGlobalObject.cpp:
* runtime/JSONObject.cpp:
* runtime/JSObject.cpp:
* runtime/JSPropertyNameIterator.cpp:
* runtime/JSString.cpp:
* runtime/MathObject.cpp:
* runtime/NativeErrorConstructor.cpp:
* runtime/NumberConstructor.cpp:
* runtime/NumberObject.cpp:
* runtime/NumberPrototype.cpp:
* runtime/ObjectConstructor.cpp:
* runtime/ObjectPrototype.cpp:
* runtime/RegExp.cpp:
* runtime/RegExpConstructor.cpp:
* runtime/RegExpObject.cpp:
* runtime/RegExpPrototype.cpp:
* runtime/ScopeChain.cpp:
* runtime/StringConstructor.cpp:
* runtime/StringObject.cpp:
* runtime/StringPrototype.cpp:
* runtime/Structure.cpp:
* runtime/StructureChain.cpp:
Had to make visitChildren and visitChildrenVirtual protected instead of private
because some of the subclasses of JSWrapperObject need access to JSWrapperObject's
visitChildren function pointer in their vtable since they don't provide their own
implementation. Same for RegExpObject.
* runtime/JSWrapperObject.h:
* runtime/RegExpObject.h:
Source/JavaScriptGlue:
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* UserObjectImp.cpp:
Source/WebCore:
No new tests.
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* bindings/js/JSAudioConstructor.cpp:
* bindings/js/JSDOMGlobalObject.cpp:
* bindings/js/JSDOMWindowBase.cpp:
* bindings/js/JSDOMWindowShell.cpp:
* bindings/js/JSImageConstructor.cpp:
* bindings/js/JSImageDataCustom.cpp:
(WebCore::toJS):
* bindings/js/JSOptionConstructor.cpp:
* bindings/js/JSWorkerContextBase.cpp:
Changed the bindings generator to add the call to the CREATE_METHOD_TABLE macro where
necessary.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
(GenerateConstructorDefinition):
* bindings/scripts/test/JS/JSTestInterface.cpp:
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bridge/c/CRuntimeObject.cpp:
* bridge/c/c_instance.cpp:
* bridge/jni/jsc/JavaInstanceJSC.cpp:
* bridge/jni/jsc/JavaRuntimeObject.cpp:
* bridge/objc/ObjCRuntimeObject.mm:
* bridge/objc/objc_instance.mm:
* bridge/objc/objc_runtime.mm:
* bridge/qt/qt_instance.cpp:
* bridge/qt/qt_pixmapruntime.cpp:
* bridge/qt/qt_runtime.cpp:
* bridge/runtime_array.cpp:
* bridge/runtime_method.cpp:
* bridge/runtime_object.cpp:
Source/WebKit/mac:
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* Plugins/Hosted/ProxyInstance.mm:
* Plugins/Hosted/ProxyRuntimeObject.mm:
Source/WebKit2:
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* WebProcess/Plugins/Netscape/JSNPMethod.cpp:
* WebProcess/Plugins/Netscape/JSNPObject.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95936
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 06:53:14 +0000 (06:53 +0000)]
[EFL] Move GtkWidgetBackingStoreCairo to the cairo directory and modify to use in the EFL.
https://bugs.webkit.org/show_bug.cgi?id=63502
Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2011-09-25
Reviewed by Martin Robinson.
The gtk/GtkWidgetBackingStoreCairo.cpp is moved to the cairo/WidgetBackingStoreCairo.cpp and
some codes for EFL are added.
WidgetBackingStoreCairo creates cairo_image_surface and has a role to copy reusable area
when scrolling. So, it will be used in the WebKit2 EFL port's BackingStore.
* CMakeListsEfl.txt:
* GNUmakefile.list.am:
* platform/cairo/WidgetBackingStore.h:
* platform/cairo/WidgetBackingStoreCairo.cpp: Renamed from Source/WebCore/platform/gtk/GtkWidgetBackingStoreCairo.cpp.
(WebCore::createSurfaceForBackingStore):
(WebCore::WidgetBackingStorePrivate::create):
(WebCore::WidgetBackingStorePrivate::WidgetBackingStorePrivate):
(WebCore::WidgetBackingStore::create):
(WebCore::WidgetBackingStore::WidgetBackingStore):
(WebCore::WidgetBackingStore::~WidgetBackingStore):
(WebCore::WidgetBackingStore::cairoSurface):
(WebCore::WidgetBackingStore::scroll):
* platform/gtk/GtkWidgetBackingStoreX11.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95935
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Mon, 26 Sep 2011 04:13:43 +0000 (04:13 +0000)]
Finish removing PLATFORM(BREWMP) by removing associated code
https://bugs.webkit.org/show_bug.cgi?id=68779
Reviewed by Sam Weinig.
.:
* Source/cmake/WebKitPackaging.cmake:
* wscript:
Source/JavaScriptCore:
* JavaScriptCore.gyp/JavaScriptCore.gyp:
* JavaScriptCore.gypi:
* gyp/JavaScriptCore.gyp:
* wscript:
* wtf/FastMalloc.cpp:
(WTF::fastMallocSize):
* wtf/Vector.h:
* wtf/brew: Removed.
* wtf/brew/MainThreadBrew.cpp: Removed.
* wtf/brew/OwnPtrBrew.cpp: Removed.
* wtf/brew/RefPtrBrew.h: Removed.
* wtf/brew/ShellBrew.h: Removed.
* wtf/brew/StringBrew.cpp: Removed.
* wtf/brew/SystemMallocBrew.h: Removed.
* wtf/unicode/brew: Removed.
* wtf/unicode/brew/UnicodeBrew.cpp: Removed.
* wtf/unicode/brew/UnicodeBrew.h: Removed.
Source/WebCore:
When Geoffrey Garen removed PLATFORM(BREWMP) in
http://trac.webkit.org/changeset/95555, he did not remove all the
associated code. This completes the work started in r95555 by removing
all the code assoicated with PLATFORM(BREWMP).
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* bindings/js/ScriptControllerBrew.cpp: Removed.
* editing/brew: Removed.
* editing/brew/EditorBrew.cpp: Removed.
* gyp/WebCore.gyp:
* page/brew: Removed.
* page/brew/ChromeClientBrew.h: Removed.
* page/brew/DragControllerBrew.cpp: Removed.
* page/brew/EventHandlerBrew.cpp: Removed.
* page/brew/FrameBrew.cpp: Removed.
* platform/brew: Removed.
* platform/brew/ClipboardBrew.cpp: Removed.
* platform/brew/ClipboardBrew.h: Removed.
* platform/brew/ContextMenuBrew.cpp: Removed.
* platform/brew/ContextMenuItemBrew.cpp: Removed.
* platform/brew/CursorBrew.cpp: Removed.
* platform/brew/DragDataBrew.cpp: Removed.
* platform/brew/EventLoopBrew.cpp: Removed.
* platform/brew/FileSystemBrew.cpp: Removed.
* platform/brew/KURLBrew.cpp: Removed.
* platform/brew/LanguageBrew.cpp: Removed.
* platform/brew/LocalizedStringsBrew.cpp: Removed.
* platform/brew/LoggingBrew.cpp: Removed.
* platform/brew/MIMETypeRegistryBrew.cpp: Removed.
* platform/brew/PasteboardBrew.cpp: Removed.
* platform/brew/PlatformKeyboardEventBrew.cpp: Removed.
* platform/brew/PlatformMouseEventBrew.cpp: Removed.
* platform/brew/PlatformTouchEventBrew.cpp: Removed.
* platform/brew/PlatformTouchPointBrew.cpp: Removed.
* platform/brew/PopupMenuBrew.cpp: Removed.
* platform/brew/PopupMenuBrew.h: Removed.
* platform/brew/SSLKeyGeneratorBrew.cpp: Removed.
* platform/brew/ScreenBrew.cpp: Removed.
* platform/brew/ScrollbarThemeBrew.cpp: Removed.
* platform/brew/ScrollbarThemeBrew.h: Removed.
* platform/brew/SearchPopupMenuBrew.cpp: Removed.
* platform/brew/SearchPopupMenuBrew.h: Removed.
* platform/brew/SharedBufferBrew.cpp: Removed.
* platform/brew/SharedTimerBrew.cpp: Removed.
* platform/brew/SoundBrew.cpp: Removed.
* platform/brew/SystemTimeBrew.cpp: Removed.
* platform/brew/TemporaryLinkStubs.cpp: Removed.
* platform/brew/WidgetBrew.cpp: Removed.
* platform/graphics/brew: Removed.
* platform/graphics/brew/IconBrew.cpp: Removed.
* platform/graphics/brew/ImageBrew.cpp: Removed.
* platform/graphics/brew/IntPointBrew.cpp: Removed.
* platform/graphics/brew/IntSizeBrew.cpp: Removed.
* platform/network/brew: Removed.
* platform/network/brew/DNSBrew.cpp: Removed.
* platform/network/brew/SocketStreamError.h: Removed.
* platform/network/brew/SocketStreamHandle.h: Removed.
* platform/network/brew/SocketStreamHandleBrew.cpp: Removed.
* platform/network/brew/SocketStreamHandlePrivate.h: Removed.
* platform/text/brew: Removed.
* platform/text/brew/TextBoundariesBrew.cpp: Removed.
* platform/text/brew/TextBreakIteratorBrew.cpp: Removed.
* platform/text/brew/TextCodecBrew.cpp: Removed.
* platform/text/brew/TextCodecBrew.h: Removed.
Source/WebKit2:
* Scripts/generate-forwarding-headers.pl:
Tools:
* Scripts/webkitpy/common/config/build.py:
* waf/build/settings.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95934
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 26 Sep 2011 04:05:28 +0000 (04:05 +0000)]
DFG JIT does not count speculation successes correctly
https://bugs.webkit.org/show_bug.cgi?id=68785
Reviewed by Geoffrey Garen.
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compileEntry):
(JSC::DFG::JITCompiler::compileBody):
* dfg/DFGOperations.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95933
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 26 Sep 2011 03:36:04 +0000 (03:36 +0000)]
DFG support for op_resolve_global is not enabled
https://bugs.webkit.org/show_bug.cgi?id=68786
Reviewed by Geoffrey Garen.
* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95932
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 26 Sep 2011 03:30:34 +0000 (03:30 +0000)]
Implement a CloseEvent constructor for JSC
https://bugs.webkit.org/show_bug.cgi?id=68340
Patch by Kentaro Hara <haraken@chromium.org> on 2011-09-25
Reviewed by Oliver Hunt.
Source/WebCore:
The spec of the CloseEvent constructor is here:
http://dev.w3.org/html5/websockets/#closeevent
Test: fast/events/constructors/close-event-constructor.html
* bindings/generic/EventConstructors.h: Added a definition for the CloseEvent constructor.
* bindings/js/JSEventConstructors.cpp: Added #includes for CloseEvent.
* websockets/CloseEvent.h: Added a definition for CloseEventInit.
(WebCore::CloseEventInit::CloseEventInit):
(WebCore::CloseEvent::create):
(WebCore::CloseEvent::CloseEvent):
* websockets/CloseEvent.idl: Makes CloseEvent constructible.
LayoutTests:
* fast/dom/constructed-objects-prototypes-expected.txt: Now window has CloseEvent.
* fast/events/constructors/close-event-constructor-expected.txt: Added.
* fast/events/constructors/close-event-constructor.html: Added.
* platform/chromium/test_expectations.txt: Skipped close-event-constructor.html, since V8 does not yet have the CloseEvent constructor.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95931
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 26 Sep 2011 02:25:02 +0000 (02:25 +0000)]
DFG static prediction code is no longer needed and should be removed
https://bugs.webkit.org/show_bug.cgi?id=68784
Reviewed by Oliver Hunt.
This gets rid of static prediction code, and ensures that we do not
try to compile code where dynamic predictions are not available.
This is accomplished by immediately performing an OSR exit wherever
a value is retrieved for which no predictions exist.
This also adds value profiling for this on functions used for calls.
The heuristics for deciding when to optimize code are also tweaked,
since it is now profitable to optimize sooner. This may need to be
tweaked further, but this patch only makes minimal changes.
This results in a 16% speed-up on Kraken/ai-astar, leading to a 3%
overall win on Kraken. It's neutral elsewhere.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::shouldOptimizeNow):
(JSC::CodeBlock::dumpValueProfiles):
* bytecode/CodeBlock.h:
* bytecode/PredictedType.cpp:
(JSC::predictionToString):
* bytecode/PredictedType.h:
(JSC::isCellPrediction):
(JSC::isObjectPrediction):
(JSC::isFinalObjectPrediction):
(JSC::isStringPrediction):
(JSC::isArrayPrediction):
(JSC::isInt32Prediction):
(JSC::isDoublePrediction):
(JSC::isNumberPrediction):
(JSC::isBooleanPrediction):
(JSC::mergePredictions):
* bytecode/PredictionTracker.h:
(JSC::PredictionTracker::predictArgument):
(JSC::PredictionTracker::predict):
(JSC::PredictionTracker::predictGlobalVar):
* bytecode/ValueProfile.cpp:
(JSC::ValueProfile::computeUpdatedPrediction):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::set):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::getPrediction):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::predictArgumentTypes):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::predict):
(JSC::DFG::Graph::predictGlobalVar):
(JSC::DFG::Graph::getMethodCheckPrediction):
(JSC::DFG::Graph::getJSConstantPrediction):
(JSC::DFG::Graph::getPrediction):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::writeBarrier):
(JSC::DFG::JITCodeGenerator::emitBranch):
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::getPrediction):
* dfg/DFGNode.h:
(JSC::DFG::Node::valueOfJSConstantNode):
(JSC::DFG::Node::isInt32Constant):
(JSC::DFG::Node::isDoubleConstant):
(JSC::DFG::Node::isNumberConstant):
(JSC::DFG::Node::isBooleanConstant):
(JSC::DFG::Node::predict):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::Propagator):
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::isPredictedNumerical):
(JSC::DFG::Propagator::logicalNotIsPure):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::shouldSpeculateInteger):
(JSC::DFG::SpeculativeJIT::shouldSpeculateDouble):
(JSC::DFG::SpeculativeJIT::shouldSpeculateNumber):
(JSC::DFG::SpeculativeJIT::shouldNotSpeculateInteger):
(JSC::DFG::SpeculativeJIT::shouldSpeculateFinalObject):
(JSC::DFG::SpeculativeJIT::shouldSpeculateArray):
(JSC::DFG::SpeculativeJIT::shouldSpeculateObject):
(JSC::DFG::SpeculativeJIT::shouldSpeculateCell):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95930
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 26 Sep 2011 01:40:04 +0000 (01:40 +0000)]
<rdar://problem/
10177824> IconDatabase’s use of ThreadCondition leads to assertion failures in the face of spurious wakeups
It's possible for ThreadCondition::wait to return spuriously without the condition having been signaled.
When that happens we should immediately return to waiting rather than doing our normal work, as some of that
work relies on wakeSyncThread having been called to signal the condition.
Reviewed by Sam Weinig.
* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::IconDatabase):
(WebCore::IconDatabase::wakeSyncThread): Note that we have work for the sync thread to do.
(WebCore::IconDatabase::syncThreadMainLoop): If we were woken with no work to do, immediately
go back to waiting on the condition variable. Otherwise, reset m_syncThreadHasWorkToDo and then
do that work. We also switch to moving m_disabledSuddenTerminationForSyncThread immediately in to
our local shouldReenableSuddenTermination variable since it can be updated by other threads while
we don't hold the lock. This makes it inappropriate to make assumptions about its value after dropping
and reacquiring the lock.
* loader/icon/IconDatabase.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95929
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Mon, 26 Sep 2011 01:12:53 +0000 (01:12 +0000)]
Provides a simple LRU cache class in Python.
https://bugs.webkit.org/show_bug.cgi?id=67823
Patch by Ai Makabi <makabi@google.com> on 2011-09-21
Reviewed by Tony Chang.
* Scripts/webkitpy/common/lru_cache.py:
* Scripts/webkitpy/common/lru_cache_unittest.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95928
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 26 Sep 2011 00:01:09 +0000 (00:01 +0000)]
DFG JIT Construct opcode takes a this argument even though it's
not passed
https://bugs.webkit.org/show_bug.cgi?id=68782
Reviewed by Oliver Hunt.
This is performance-neutral, mostly. It's a slight speed-up on
v8-splay.
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addCall):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::emitCall):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95927
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sun, 25 Sep 2011 23:58:13 +0000 (23:58 +0000)]
<rdar://problem/
10156263> ASSERT in WebCore::FrameView::scheduleRelayoutOfSubtree
Reviewed by Sam Weinig.
Source/WebCore:
Test: fast/dynamic/subtree-unrooted.html
* rendering/RenderObject.cpp:
(WebCore::RenderObject::scheduleRelayout): Replaced the check that the renderer is parented,
which was added in r21162, with a check that it is “rooted”.
LayoutTests:
* fast/dynamic/subtree-unrooted-expected.txt: Added.
* fast/dynamic/subtree-unrooted.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95926
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Sun, 25 Sep 2011 23:40:51 +0000 (23:40 +0000)]
DFG tracking of the value in cachedResultRegister does not handle
op_mov correctly
https://bugs.webkit.org/show_bug.cgi?id=68781
Reviewed by Oliver Hunt.
This takes the simplest approach: it makes the old JIT dumber rather
than making the DFG JIT smarter. This is performance-neutral.
* jit/JIT.h:
(JSC::JIT::canBeOptimized):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_mov):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95925
268f45cc-cd09-0410-ab3c-
d52691b4dbfc