WebKit-https.git
8 years agoIndexedDB: IDBTransaction::abort() should throw DOMException
commit-queue@webkit.org [Thu, 26 Jul 2012 02:30:34 +0000 (02:30 +0000)]
IndexedDB: IDBTransaction::abort() should throw DOMException
https://bugs.webkit.org/show_bug.cgi?id=92069

Patch by Xingnan Wang <xingnan.wang@intel.com> on 2012-07-25
Reviewed by Kentaro Hara.

Source/WebCore:

Keep aligned with the W3C spec.
http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#widl-IDBTransaction-abort-void

Test: storage/indexeddb/transaction-abort.html.

* Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::abort):
(WebCore):
* Modules/indexeddb/IDBTransaction.h:
(IDBTransaction):
* Modules/indexeddb/IDBTransaction.idl:

LayoutTests:

Add the exception test for IDBTransaction::abort().

* storage/indexeddb/resources/transaction-abort.js:
(transactionAborted):
* storage/indexeddb/transaction-abort-expected.txt:

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

8 years ago[BlackBerry] Update fast/canvas/webgl expectations
commit-queue@webkit.org [Thu, 26 Jul 2012 02:28:17 +0000 (02:28 +0000)]
[BlackBerry] Update fast/canvas/webgl expectations
https://bugs.webkit.org/show_bug.cgi?id=92309

Patch by Joshua Netterfield <jnetterfield@rim.com> on 2012-07-25
Reviewed by Rob Buis.

Add the css-webkit-canvas-* files, because we render them correctly.

There is nothing we can do about running out of memory on draw-elements-out-of-bounds,
so make that expected.

Our output for framebuffer-object-attachement-expected.txt is valid.

* platform/blackberry/fast/canvas/webgl/css-webkit-canvas-expected.png: Added.
* platform/blackberry/fast/canvas/webgl/css-webkit-canvas-expected.txt: Added.
* platform/blackberry/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Added.
* platform/blackberry/fast/canvas/webgl/css-webkit-canvas-repaint-expected.txt: Added.
* platform/blackberry/fast/canvas/webgl/draw-elements-out-of-bounds-expected.txt: Added.
* platform/blackberry/fast/canvas/webgl/framebuffer-object-attachment-expected.txt: Added.

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

8 years agoflexitems can overflow the flexbox due to rounding
tony@chromium.org [Thu, 26 Jul 2012 02:24:47 +0000 (02:24 +0000)]
flexitems can overflow the flexbox due to rounding
https://bugs.webkit.org/show_bug.cgi?id=92163

Reviewed by Levi Weintraub.

Source/WebCore:

Don't round flex item sizes and use LayoutPoint for the location of flex items.

Test: css3/flexbox/flex-rounding.html

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::resolveFlexibleLengths):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::layoutColumnReverse):

LayoutTests:

Tests for dividing space in non-integral amounts.

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

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

8 years agoTestRunner.a should contain a TestRunner object
abarth@webkit.org [Thu, 26 Jul 2012 02:19:09 +0000 (02:19 +0000)]
TestRunner.a should contain a TestRunner object
https://bugs.webkit.org/show_bug.cgi?id=92313

Reviewed by Kent Tamura.

This patch adds a stub implementation of TestRunner, which is the new
home for our implementation of window.testRunner. A future patch will
migrate functions from LayoutTestController to TestRunner.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/LayoutTestController.h:
* DumpRenderTree/chromium/TestRunner/TestRunner.cpp: Added.
* DumpRenderTree/chromium/TestRunner/TestRunner.h: Added.

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

8 years ago[BlackBerry] Integrate certmgr with CredentialBackingStore
commit-queue@webkit.org [Thu, 26 Jul 2012 02:16:56 +0000 (02:16 +0000)]
[BlackBerry] Integrate certmgr with CredentialBackingStore
https://bugs.webkit.org/show_bug.cgi?id=92183

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-07-25
Reviewed by George Staikos.

Integrated BlackBerry::Platform::CertMgrWrapper with
CredentialBackingStore, when certmgr is ready we save
the password in certmgr and retrieve it from certmgr.

RIM PR: 171991
Internally reviewed by Joe Mason <jmason@rim.com>.

No new tests since there's no functional change.

* platform/network/blackberry/CredentialBackingStore.cpp:
(WebCore::hashCredentialInfo):
(WebCore):
(WebCore::CredentialBackingStore::CredentialBackingStore):
(WebCore::CredentialBackingStore::open):
(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):
(WebCore::CredentialBackingStore::getLogin):
* platform/network/blackberry/CredentialBackingStore.h:
(CredentialBackingStore):

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

8 years ago[BlackBerry] Support RTSP in browser
commit-queue@webkit.org [Thu, 26 Jul 2012 02:14:27 +0000 (02:14 +0000)]
[BlackBerry] Support RTSP in browser
https://bugs.webkit.org/show_bug.cgi?id=92233

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-07-25
Reviewed by Rob Buis.

Handle URL scheme "rtsp://" before creating the DocumentLoader
and send the request to webkit. As we don't have any application
which can deal with rtsp invocation for now, we need to create
a media document to wrap the rtsp url within a video tag which
makes it load as a normal video clip.

RIM PR: 169669
Internally reviewed by Charles Wei <charles.wei@torchmobile.com.cn>.

* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::createDocumentLoader):

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

8 years ago[Tests] Re-factor fast/forms/number/number-spinbutton-change-and-input-events.html
yosin@chromium.org [Thu, 26 Jul 2012 02:05:51 +0000 (02:05 +0000)]
[Tests] Re-factor fast/forms/number/number-spinbutton-change-and-input-events.html
https://bugs.webkit.org/show_bug.cgi?id=92206

Reviewed by Kent Tamura.

For ease of maintenance and improving test coverage with low cost, I
would like to make a test script of number-spinbutton-change-and-inputs.html
sharable with other input types which have spin button.

This patch moves JavaScript codes from test HTML file to shared JavaScript
file, common-spinbutton-change-and-input-events.html with parametrized
entry point for specifying input type.

* fast/forms/number/number-spinbutton-change-and-input-events-expected.txt: Changed "numnber" to "number", and "numberInput" to "testInput".
* fast/forms/number/number-spinbutton-change-and-input-events.html: Removed JavaScript code.
* fast/forms/resources/common-spinbutton-change-and-input-events.js: Removed HTML code. Made entry point. Changed to support testing without maximum value.

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

8 years agoREGRESSION(r121420): Performance regression of form state saving for pages with multi...
tkent@chromium.org [Thu, 26 Jul 2012 01:36:33 +0000 (01:36 +0000)]
REGRESSION(r121420): Performance regression of form state saving for pages with multiple forms
https://bugs.webkit.org/show_bug.cgi?id=91804

Reviewed by Hajime Morita.

The complexity of FormKeyGenerator::formKey() was O(N) where N is the
number form elements with an identical action URL, and formKey() is
called for every form. So, it's O(N^2). A page in www.reddit.com
contains hundreds of form elements with action="#". So FormController::
formElementsState() took a few seconds on a slow machine.

In order to avoid O(N^2) operation, storing a map from form signatures
to next index numbers, instead of storing existing formKey strings.

No new tests. Just a performance improvement.

Note: This is a re-landing of r123191. We rolled it out because of
suspicion of a performance regression. However it was innocent.

* html/FormController.cpp:
(FormKeyGenerator): Remove m_existingKeys. Add a map from a form
signature string to the next index number.
(WebCore::formSignature): Returns a signature string for a form, without
an index number. This is like "actionURL [name1 name2 ]"
(WebCore::FormKeyGenerator::formKey):
Creates a formKey string by concatenating a formSignature and #n. N is
obtained from m_formSignatureToNextIndexMap in O(1).
(WebCore::FormKeyGenerator::willDeleteForm):
Remove the code for m_existingKeys.

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

8 years agoJSC GC object copying APIs should allow for greater flexibility
fpizlo@apple.com [Thu, 26 Jul 2012 01:22:59 +0000 (01:22 +0000)]
JSC GC object copying APIs should allow for greater flexibility
https://bugs.webkit.org/show_bug.cgi?id=92316

Reviewed by Mark Hahnenberg.

It's now the case that visitChildren() methods can directly pin and allocate in new space during copying.
They can also do the copying and marking themselves. This new API is only used for JSObjects for now.

* JavaScriptCore.xcodeproj/project.pbxproj:
* heap/MarkStack.cpp:
(JSC::SlotVisitor::allocateNewSpaceSlow):
(JSC::SlotVisitor::allocateNewSpaceOrPin):
(JSC):
(JSC::SlotVisitor::copyAndAppend):
* heap/MarkStack.h:
(MarkStack):
(JSC::MarkStack::appendUnbarrieredValue):
(JSC):
* heap/SlotVisitor.h:
* heap/SlotVisitorInlineMethods.h: Added.
(JSC):
(JSC::SlotVisitor::checkIfShouldCopyAndPinOtherwise):
(JSC::SlotVisitor::allocateNewSpace):
* runtime/JSObject.cpp:
(JSC::JSObject::visitOutOfLineStorage):
(JSC):
(JSC::JSObject::visitChildren):
(JSC::JSFinalObject::visitChildren):
* runtime/JSObject.h:
(JSObject):

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

8 years agoInitialize QualifiedName's strings from the read only data segment
benjamin@webkit.org [Thu, 26 Jul 2012 01:05:23 +0000 (01:05 +0000)]
Initialize QualifiedName's strings from the read only data segment
https://bugs.webkit.org/show_bug.cgi?id=92226

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-07-25
Reviewed by Anders Carlsson.

Source/WebCore:

Modify the initialization of static QualifiedName to initialize the AtomicString
with the data from the read only memory.

Overall, HTMLNames::init() gets 10% faster.

* dom/QualifiedName.cpp:
(WebCore::QualifiedName::QualifiedName):
* dom/QualifiedName.h:
(QualifiedName):
Remove the useless constructor taking a char* and get rid of the init() function.
The AtomicString representing the name should be constructed by the caller of QualifiedName.

Because the init() code is relatively large and is only executed once, it is important to
keep the AtomicString construction separate. The function createQualifiedName() was added
to improve the cache use. The short version let us reduce the code one more instruction per
call.

* dom/make_names.pl:
(printQualifiedNameMaker):
(printShortQualifiedNameMaker):
(printNamesCppFile):
(printDefinitions):

Source/WTF:

Add constructors for StringImpl and AtomicString to be able to create
the strings from the literal in read only memory.

* wtf/text/AtomicString.cpp:
(HashTranslatorCharBuffer):
(WTF::LCharBufferFromLiteralDataTranslator::hash):
(LCharBufferFromLiteralDataTranslator):
(WTF::LCharBufferFromLiteralDataTranslator::equal):
(WTF::LCharBufferFromLiteralDataTranslator::translate):
(WTF::AtomicString::addFromLiteralData):
* wtf/text/AtomicString.h:
(WTF::AtomicString::AtomicString):
(AtomicString):
* wtf/text/StringImpl.cpp:
(WTF::StringImpl::createFromLiteral):
* wtf/text/StringImpl.h:
(WTF):
(StringImpl):
(WTF::StringImpl::createFromLiteral):

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

8 years agoChanges to the WebFrame API cause dependent apps to crash.
commit-queue@webkit.org [Thu, 26 Jul 2012 01:01:24 +0000 (01:01 +0000)]
Changes to the WebFrame API cause dependent apps to crash.
https://bugs.webkit.org/show_bug.cgi?id=91656
<rdar://problem/11904605>

Patch by Roger Fong <roger_fong@apple.com> on 2012-07-25
Reviewed by Jon Honeycutt.

Changes to the WebFrame API cause certain apps to crash because of inconsistencies in the COM interface.
The resumeAnimations and suspendAnimations are removed, which are still needed.
The counterValueByElementId method was also removed, although is not needed there.
However, for all of these methods, no method stubs were added where appropriate after removal.

* Interfaces/IWebFramePrivate.idl:
Added resumeAnimations() and suspendAnimations() methods back in. Added unused method stub for counterValueByElementId method.

* WebFrame.cpp:
(WebFrame::resumeAnimations):
Added this method back in.
(WebFrame::suspendAnimations):
Added this method back in.

* WebFrame.h:
(Re)added methods and unused method stubs.

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

8 years ago[Forms] Move HTMLInputElement::updateInnerTextValue to InputType class
yosin@chromium.org [Thu, 26 Jul 2012 01:01:08 +0000 (01:01 +0000)]
[Forms] Move HTMLInputElement::updateInnerTextValue to InputType class
https://bugs.webkit.org/show_bug.cgi?id=92230

Reviewed by Kent Tamura.

This patch moves implementaion of HTMLInputElement::updateInnerTextValue()
into input type classes, removes updateInnerTextValue() from HTMLInputElement,
and updates call site of updateInnerTextValue().

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

* html/DateInputType.cpp:
(WebCore::DateInputType::handleBlurEvent): Updated call site of updateInnerTextValue().
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::updateType): Updated call site of updateInnerTextValue().
(WebCore::HTMLInputElement::parseAttribute): Updated call site of updateInnerTextValue().
(WebCore::HTMLInputElement::copyNonAttributePropertiesFromElement): Updated call site of updateInnerTextValue().
(WebCore::HTMLInputElement::setSuggestedValue): Updated call site of updateInnerTextValue().
* html/HTMLInputElement.h:
(HTMLInputElement): Removed updateInnerTextValue().
* html/InputType.cpp:
(WebCore::InputType::updateInnerTextValue): Added default implementaion.
* html/InputType.h:
(InputType): Added declaration of updateInnerTextValue().
* html/NumberInputType.cpp:
(WebCore::NumberInputType::handleBlurEvent): Updated call site of updateInnerTextValue().
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::setValue): Updated call site of updateInnerTextValue().
(WebCore::TextFieldInputType::updateInnerTextValue): Moved implementaion from HTMLInputElement.
* html/TextFieldInputType.h:
(TextFieldInputType): Added declaration of updateInnerTextValue().

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

8 years ago[chromium] Move ephemeral data for a single frame in LayerRendererChromium into a...
danakj@chromium.org [Thu, 26 Jul 2012 00:57:51 +0000 (00:57 +0000)]
[chromium] Move ephemeral data for a single frame in LayerRendererChromium into a structure with a scoped lifetime equal to the frame
https://bugs.webkit.org/show_bug.cgi?id=92294

Reviewed by Adrienne Walker.

The LayerRendererChromium class has a number of member variables that are used
while drawing a single frame. Because they are member variables, their lifetimes
are not clear, and some are even updated between frames, which is not needed.

This change creates a LRC::DrawingFrame structure that holds the data used
while drawing the current frame, and an instance of this structure is held
and passed around to functions in LayerRendererChromium, moving all of the
data out from being member variables on the class to being function
arguments on the relevant methods.

The projection and window matrices are a part of this frame data, and are not
used externally, so they are removed from the CCRenderer interface and included
within the DrawingFrame structure.

Covered by existing tests, no change in behaviour intended.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::viewportChanged):
(WebCore::LayerRendererChromium::clearFramebuffer):
(WebCore::LayerRendererChromium::drawFrame):
(WebCore::LayerRendererChromium::drawRenderPass):
(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawCheckerboardQuad):
(WebCore::LayerRendererChromium::drawDebugBorderQuad):
(WebCore::LayerRendererChromium::drawBackgroundFilters):
(WebCore::LayerRendererChromium::drawRenderPassQuad):
(WebCore::LayerRendererChromium::drawSolidColorQuad):
(WebCore::LayerRendererChromium::drawTileQuad):
(WebCore::LayerRendererChromium::drawYUVVideoQuad):
(WebCore::LayerRendererChromium::drawStreamVideoQuad):
(WebCore::LayerRendererChromium::drawTextureQuad):
(WebCore::LayerRendererChromium::drawIOSurfaceQuad):
(WebCore::LayerRendererChromium::finishDrawingFrame):
(WebCore::LayerRendererChromium::drawTexturedQuad):
(WebCore::LayerRendererChromium::copyTextureToFramebuffer):
(WebCore::LayerRendererChromium::isCurrentRenderPass):
(WebCore::LayerRendererChromium::useRenderPass):
(WebCore::LayerRendererChromium::useScopedTexture):
(WebCore::LayerRendererChromium::bindFramebufferToTexture):
(WebCore::LayerRendererChromium::setScissorToRect):
(WebCore::LayerRendererChromium::setDrawFramebufferRect):
* platform/graphics/chromium/LayerRendererChromium.h:
(DrawingFrame):
(WebCore::LayerRendererChromium::DrawingFrame::DrawingFrame):
(LayerRendererChromium):
* platform/graphics/chromium/cc/CCRenderer.h:
(CCRenderer):

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

8 years ago[chromium] Make all compositor screen space transforms operate on content rects
enne@google.com [Thu, 26 Jul 2012 00:53:47 +0000 (00:53 +0000)]
[chromium] Make all compositor screen space transforms operate on content rects
https://bugs.webkit.org/show_bug.cgi?id=91807

Reviewed by Kenneth Russell.

Source/WebCore:

Previously, surface screen space transforms operated on surface
content space but layer screen space transforms operated on layer
space. For the purpose of consistency, unify these two so that they
both operate on content space.

No tests, because no change in behavior expected. Just a refactoring.

* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
* platform/graphics/chromium/cc/CCDebugRectHistory.cpp:
(WebCore::CCDebugRectHistory::savePaintRects):
(WebCore::CCDebugRectHistory::savePropertyChangedRects):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::calculateDrawTransformsInternal):
(WebCore::CCLayerTreeHostCommon::findLayerThatIsHitByPoint):
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
(WebCore::::markOccludedBehindLayer):
(WebCore::::occluded):
(WebCore::::unoccludedContentRect):

Source/WebKit/chromium:

Update tests that deal with screen space transforms to reflect this change.

* tests/CCLayerTreeHostCommonTest.cpp:
* tests/TiledLayerChromiumTest.cpp:

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

8 years agoHit testing in one column or in the gap between cloumns along the block axis can...
mitz@apple.com [Thu, 26 Jul 2012 00:30:35 +0000 (00:30 +0000)]
Hit testing in one column or in the gap between cloumns along the block axis can return a result from the wrong column
https://bugs.webkit.org/show_bug.cgi?id=92311

Reviewed by Anders Carlsson.

Source/WebCore:

Tests: fast/multicol/hit-test-end-of-column.html
       fast/multicol/hit-test-gap-block-axis.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::positionForPointWithInlineChildren): To prevent hits after the last
line on a given column from returning the next line in the next column, added a check if
the hit occurred within the pagination strut of a line. Covered by the first test.
(WebCore::RenderBlock::adjustPointToColumnContents): Added clamp-to-column logic for the
block-axis case. This prevents hits near the bottom of the top half of the gap from bleeding
into the top of the next column. Covered by the second test.

LayoutTests:

* fast/multicol/hit-test-end-of-column-expected.txt: Added.
* fast/multicol/hit-test-end-of-column.html: Added.
* fast/multicol/hit-test-gap-block-axis-expected.txt: Added.
* fast/multicol/hit-test-gap-block-axis.html: Added.

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

8 years agoIndexedDB: Make db.version return an integer if appropriate
dgrogan@chromium.org [Thu, 26 Jul 2012 00:24:57 +0000 (00:24 +0000)]
IndexedDB: Make db.version return an integer if appropriate
https://bugs.webkit.org/show_bug.cgi?id=92195

Reviewed by Tony Chang.

Make use of the existing IDBAny mechanism to return an integer if
integer versions have been used.

No new tests - no change in behavior expected.

* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::version):
(WebCore):
* Modules/indexeddb/IDBDatabase.h:
(IDBDatabase):
* Modules/indexeddb/IDBDatabase.idl:

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

8 years agoRemove JSObject::m_inheritorID
mhahnenberg@apple.com [Thu, 26 Jul 2012 00:12:58 +0000 (00:12 +0000)]
Remove JSObject::m_inheritorID
https://bugs.webkit.org/show_bug.cgi?id=88378

Reviewed by Filip Pizlo.

This is rarely used, and not performance critical (the commonly accessed copy is cached on JSFunction),
and most objects don't need an inheritorID (this value is only used if the object is used as a prototype).
Instead use a private named value in the object's property storage.

* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject): No need m_inheritorID to initialize!
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject): No need m_inheritorID to initialize!
* llint/LowLevelInterpreter.asm: No need m_inheritorID to initialize!
* runtime/JSGlobalData.h:
(JSGlobalData): Added private name 'm_inheritorIDKey'.
* runtime/JSGlobalThis.cpp:
(JSC::JSGlobalThis::setUnwrappedObject): resetInheritorID is now passed a JSGlobalData&.
* runtime/JSObject.cpp:
(JSC::JSObject::visitChildren): No m_inheritorID to be marked.
(JSC::JSFinalObject::visitChildren): No m_inheritorID to be marked.
(JSC::JSObject::createInheritorID): Store the newly created inheritorID in the property map. Make sure
it's got the DontEnum attribute!!
* runtime/JSObject.h:
(JSObject):
(JSC::JSObject::resetInheritorID): Remove the inheritorID from property storage.
(JSC):
(JSC::JSObject::inheritorID): Read the inheritorID from property storage.

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

8 years ago[Chromium] Fix infinite loop issue for chromium android layout test
commit-queue@webkit.org [Thu, 26 Jul 2012 00:05:13 +0000 (00:05 +0000)]
[Chromium] Fix infinite loop issue for chromium android layout test
https://bugs.webkit.org/show_bug.cgi?id=92197

Patch by Wei James <james.wei@intel.com> on 2012-07-25
Reviewed by Adam Barth.

The change brought in by r123530 will cause infinite loop when running
Chromium Android Layout Test.
Revert the change for this line only.

* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort._build_path):

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

8 years agoUnreviewed chromium change to disable failing WebViewTest.AutoResizeInBetweenSizes.
atwilson@chromium.org [Wed, 25 Jul 2012 23:48:02 +0000 (23:48 +0000)]
Unreviewed chromium change to disable failing WebViewTest.AutoResizeInBetweenSizes.
https://bugs.webkit.org/show_bug.cgi?id=92318

* tests/WebViewTest.cpp:

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

8 years agoConvert HTML parser to handle 8-bit resources without converting to UChar*
msaboff@apple.com [Wed, 25 Jul 2012 23:42:07 +0000 (23:42 +0000)]
Convert HTML parser to handle 8-bit resources without converting to UChar*
https://bugs.webkit.org/show_bug.cgi?id=90321

Reviewed by Geoffrey Garen.

Source/WebCore:

No new tests, no new functionality therefore covered by existing tests.

Changed the parsing of HTML to handle 8-bit strings without converting the
whole string to 16-bits.  Primary change was to use the appropriate
character pointer type (LChar* or UChar*) depending on the source string.
This access is abstracted in SegmentedSubstring by getCurrentChar{8,16} and
incrementAndGetCurrentChar{8,16} methods.  In SegmentedString, the advance()
and advanceAndUpdateLineNumber() methods have been refactored into a
state machine managed pair of function pointers.  The possible functions
have not only the 8 and 16 bitness factored out, they also have the
"exclude line numbers" logic factored out for advanceAndUpdateLineNumber().
This provides a net speed-up even with the 8/16 bit testing.
Other changes involve using String methods to access and compare with the
source data.

* html/FTPDirectoryDocument.cpp:
(WebCore::FTPDirectoryDocumentParser::append): Changed to use currentChar()
instead of SegmentedString '*' operator.
* html/parser/HTMLEntityParser.cpp: Changed to use currentChar() instead of
SegmentedString '*' operator.
* html/parser/HTMLParserIdioms.cpp:
(WebCore::stripLeadingAndTrailingHTMLSpaces): Added 8-bit fast path.
* html/parser/HTMLSourceTracker.cpp:
(WebCore::HTMLSourceTracker::sourceForToken): Changed to use currentChar() instead of
SegmentedString '*' operator.
* loader/cache/CachedScript.cpp:
(WebCore::CachedScript::script): Updated to use new String::dataSize() method.
* platform/text/SegmentedString.cpp:
(WebCore::SegmentedString::SegmentedString):
(WebCore::SegmentedString::operator=):
(WebCore::SegmentedString::clear):
(WebCore::SegmentedString::append):
(WebCore::SegmentedString::prepend):
(WebCore::SegmentedString::advanceSubstring):
(WebCore::SegmentedString::advance): Changed to be a wrapper that invokes current
advance function.
(WebCore::SegmentedString::advance8): Fast path advance function for 8 bit data.
(WebCore::SegmentedString::advance16): Fast path advance function for 16 bit data.
(WebCore::SegmentedString::advanceAndUpdateLineNumber8IncludeLineNumbers): Fast
path advanceAndUpdateLineNumber for 8 bit data when we need to update the line number.
(WebCore::SegmentedString::advanceAndUpdateLineNumber16IncludeLineNumbers): Fast
path advanceAndUpdateLineNumber for 16 bit data when we need to update the line number.
(WebCore::SegmentedString::advanceSlowCase): Slow case advance function for both
8 and 16 bit advance.
(WebCore::SegmentedString::advanceAndUpdateLineNumberSlowCase): Slow case
advanceAndUpdateLineNumber function for both 8 and 16 bit data.
(WebCore::SegmentedString::advanceEmpty): Advance function when input has been exhausted.
* platform/text/SegmentedString.h:
(WebCore::SegmentedSubstring::SegmentedSubstring):
(WebCore::SegmentedSubstring::clear):
(SegmentedSubstring):
(WebCore::SegmentedSubstring::is8Bit): New getter.
(WebCore::SegmentedSubstring::appendTo):
(WebCore::SegmentedSubstring::getCurrentChar8): New getter for the 8 bit case.
(WebCore::SegmentedSubstring::getCurrentChar16): New getter for the 16 bit case.
(WebCore::SegmentedSubstring::incrementAndGetCurrentChar8): New wrapper functions
that pre-increments the 8 bit pointer and returns the next character.
(WebCore::SegmentedSubstring::incrementAndGetCurrentChar16): New wrapper functions
that pre-increments the 16 bit pointer and returns the next character.
(WebCore::SegmentedSubstring::currentSubString):
(WebCore::SegmentedSubstring::getCurrentChar):
(WebCore::SegmentedSubstring::incrementAndGetCurrentChar):
(WebCore::SegmentedString::SegmentedString):
(WebCore::SegmentedString::push):
(WebCore::SegmentedString::isEmpty):
(WebCore::SegmentedString::lookAhead):
(WebCore::SegmentedString::lookAheadIgnoringCase):
(WebCore::SegmentedString::advance):
(WebCore::SegmentedString::advanceAndUpdateLineNumber):
(WebCore::SegmentedString::advanceAndASSERT):
(WebCore::SegmentedString::advanceAndASSERTIgnoringCase):
(WebCore::SegmentedString::advancePastNonNewline):
(WebCore::SegmentedString::advancePastNewlineAndUpdateLineNumber):
(WebCore::SegmentedString::currentChar):
(WebCore::SegmentedString::setSlowCase): Set advance function pointers to slow case
functions.
(WebCore::SegmentedString::decrementAndCheckLength): Decrement substring length and
change to slow case functions when only one character left.
(WebCore::SegmentedString::setAdvanceFunctionPointers): Select appropriate advance
functions based on current substring.
(WebCore::SegmentedString::lookAheadInline): Changed to use String::startsWith().
(WebCore::SegmentedString::lookAheadSlowCase):
* xml/parser/CharacterReferenceParserInlineMethods.h:
(WebCore::consumeCharacterReference): Changed to use currentChar() instead of
SegmentedString '*' operator.
* xml/parser/MarkupTokenizerBase.h:
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::nextInputCharacter):
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::peek): Changed to use
currentChar() instead of SegmentedString '*' operator.
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::advance):

Source/WTF:

* wtf/text/WTFString.h:
(WTF::String::dataSize): New method to return the number of bytes
the string requires.  This replaces a harcoded calculation based on
length and sizeof(UChar).

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

8 years agoImprove the output of editing/pasteboard/paste-noscript-xhtml.xhtml
rniwa@webkit.org [Wed, 25 Jul 2012 23:41:45 +0000 (23:41 +0000)]
Improve the output of editing/pasteboard/paste-noscript-xhtml.xhtml
https://bugs.webkit.org/show_bug.cgi?id=92307

Reviewed by Tony Chang.

Use dump-as-markup to improve the readability of output, and removed replaced the call to sayHello in iframe's src
content attribute by a call to alert("hello") so that reference error doesn't show up on the result, and moved
the resource from editing/resources to editing/pasteboard/resources as it's not used elsewhere.

* editing/pasteboard/paste-noscript-xhtml-expected.txt:
* editing/pasteboard/paste-noscript-xhtml.xhtml:
* editing/pasteboard/resources/paste-noscript-content.html: Copied from LayoutTests/editing/resources/htmlcontent.html.
* editing/resources/htmlcontent.html: Removed.
* platform/chromium-mac/editing/pasteboard/paste-noscript-xhtml-expected.txt: Removed.
* platform/chromium-win/editing/pasteboard/paste-noscript-xhtml-expected.txt: Removed.

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

8 years ago[Chromium] fix double->float warnings in CCLayerTreeHostCommonTest.cpp
commit-queue@webkit.org [Wed, 25 Jul 2012 23:32:58 +0000 (23:32 +0000)]
[Chromium] fix double->float warnings in CCLayerTreeHostCommonTest.cpp
https://bugs.webkit.org/show_bug.cgi?id=92271

Patch by Scott Graham <scottmg@chromium.org> on 2012-07-25
Reviewed by Adrienne Walker.

Fix compile warnings on Windows.

* tests/CCLayerTreeHostCommonTest.cpp:

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

8 years agoUnreviewed, rolling out r123625 and r123672.
rniwa@webkit.org [Wed, 25 Jul 2012 23:29:00 +0000 (23:29 +0000)]
Unreviewed, rolling out r123625 and r123672.
http://trac.webkit.org/changeset/123625
http://trac.webkit.org/changeset/123672
https://bugs.webkit.org/show_bug.cgi?id=92315

Broke Windows and gcc builds (Requested by rniwa on #webkit).

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

* platform/AutodrainedPool.h:
(AutodrainedPool):
* platform/ContentType.h:
(ContentType):
* platform/ContextMenu.h:
(ContextMenu):
* platform/ContextMenuItem.h:
(ContextMenuItem):
* platform/Cursor.h:
(WebCore::SharedCursor::SharedCursor):
(Cursor):
* platform/KURL.h:
(WebCore::KURL::KURL):
(KURL):
* platform/KURLGooglePrivate.h:
(KURLGooglePrivate):
* platform/PODRedBlackTree.h:
(WebCore::PODRedBlackTree::PODRedBlackTree):
* platform/Pasteboard.h:
(Pasteboard):
* platform/PlatformEvent.h:
(WebCore::PlatformEvent::PlatformEvent):
* platform/PlatformKeyboardEvent.h:
(PlatformKeyboardEvent):
* platform/PlatformMouseEvent.h:
(PlatformMouseEvent):
* platform/PlatformPasteboard.h:
(PlatformPasteboard):
* platform/PlatformTouchEvent.h:
(PlatformTouchEvent):
* platform/PlatformWheelEvent.h:
(PlatformWheelEvent):
* platform/RunLoop.h:
(TimerBase):
* platform/ScrollAnimator.h:
(ScrollAnimator):
* platform/ScrollAnimatorNone.h:
(ScrollAnimatorNone):
* platform/SharedBuffer.h:
(SharedBuffer):
* platform/WheelFlingPlatformGestureCurve.h:
(WheelFlingPlatformGestureCurve):
* platform/Widget.h:
(Widget):
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doUpdateResourceRequest):

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

8 years agoRemove catchesDelegateExceptions from WebViewData and related accessor methods
psolanki@apple.com [Wed, 25 Jul 2012 23:16:10 +0000 (23:16 +0000)]
Remove catchesDelegateExceptions from WebViewData and related accessor methods
https://bugs.webkit.org/show_bug.cgi?id=90898

Reviewed by Darin Adler.

Remove catchesDelegateException ivar from WebViewData and all its accesor methods from
WebView. All uses of this flag in WebKit set it to YES and no one calls
_setCatchesDelegateExceptions with NO.

* WebCoreSupport/WebDragClient.mm:
(WebDragClient::startDrag):
* WebView/WebDelegateImplementationCaching.mm:
(CallDelegate):
(CallDelegateReturningFloat):
(CallDelegateReturningBoolean):
(CallResourceLoadDelegateReturningBoolean):
(CallFormDelegate):
(CallFormDelegateReturningBoolean):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _policyDelegateForwarder]):
(-[WebView _UIDelegateForwarder]):
(-[WebView _editingDelegateForwarder]):
(-[_WebSafeForwarder initWithTarget:defaultTarget:]):
(-[_WebSafeForwarder forwardInvocation:]):
* WebView/WebViewData.h:
* WebView/WebViewPrivate.h:

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

8 years ago[BlackBerry] Rephrase suspend/resume condition to guard against crashes
jpetsovits@rim.com [Wed, 25 Jul 2012 23:14:58 +0000 (23:14 +0000)]
[BlackBerry] Rephrase suspend/resume condition to guard against crashes
https://bugs.webkit.org/show_bug.cgi?id=92300
PR 182125

Reviewed by George Staikos.

When the compositor is removed from a WebPage, it might
already have unset its context, and issuing a call to
BackingStore::buffer() would therefore cause a crash.
Just guarding buffer() from this crash isn't fully
correct, because then we wouldn't suspend rendering
for a compositor that had been previously enabled.

Instead, change the condition to suspend/resume in
WebPagePrivate::setCompositor() to focus on the
object that delivers us the buffer. If we can't
listen to the context or buffer being set, better
just take the compositor object itself to determine
whether we have something valid or not... and hope
that they give us a valid context & buffer in all
situations when we can actually be rendering.

Also check compositor->context() in buffer() to be
non-zero before accessing the context's buffer,
because more defensive coding can't hurt here.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::buffer):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setCompositor):

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

8 years agoWindows build fix attempt after r123625.
rniwa@webkit.org [Wed, 25 Jul 2012 23:04:05 +0000 (23:04 +0000)]
Windows build fix attempt after r123625.

* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doUpdateResourceRequest):

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

8 years agoRead tag names and attributes from the saved tokens in HTMLTreeBuilder::resetInsertio...
kseo@webkit.org [Wed, 25 Jul 2012 22:59:58 +0000 (22:59 +0000)]
Read tag names and attributes from the saved tokens in HTMLTreeBuilder::resetInsertionModeAppropriately.
https://bugs.webkit.org/show_bug.cgi?id=92240

Reviewed by Adam Barth.

This is a follow-up patch for r123577. Added ItemType enum to HTMLStackItem to handle
the context element case.

No new tests, covered by existing tests.

* html/parser/HTMLStackItem.h:
(WebCore::HTMLStackItem::create):
(WebCore::HTMLStackItem::HTMLStackItem):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
(WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):

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

8 years ago[Qt] platform/qt/tables/mozilla tests needs update after rebaseline and new testfonts
rafael.lobo@openbossa.org [Wed, 25 Jul 2012 22:41:16 +0000 (22:41 +0000)]
[Qt] platform/qt/tables/mozilla tests needs update after rebaseline and new testfonts
https://bugs.webkit.org/show_bug.cgi?id=91242

Unreviewed gardening.

* platform/qt-5.0/Skipped:
* platform/qt/tables/mozilla/bugs/adforce_imgis_com-expected.txt:
* platform/qt/tables/mozilla/bugs/bug102145-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug102145-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug102145-3-expected.txt:
* platform/qt/tables/mozilla/bugs/bug102145-4-expected.txt:
* platform/qt/tables/mozilla/bugs/bug10269-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug10296-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug103533-expected.txt:
* platform/qt/tables/mozilla/bugs/bug1067-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug1067-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug106795-expected.txt:
* platform/qt/tables/mozilla/bugs/bug11321-expected.txt:
* platform/qt/tables/mozilla/bugs/bug133948-expected.txt:
* platform/qt/tables/mozilla/bugs/bug154780-expected.txt:
* platform/qt/tables/mozilla/bugs/bug15933-expected.txt:
* platform/qt/tables/mozilla/bugs/bug1818-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug1818-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug1818-4-expected.txt:
* platform/qt/tables/mozilla/bugs/bug219693-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug219693-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug221784-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug221784-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug22513-expected.txt:
* platform/qt/tables/mozilla/bugs/bug23072-expected.txt:
* platform/qt/tables/mozilla/bugs/bug23994-expected.txt:
* platform/qt/tables/mozilla/bugs/bug25074-expected.txt:
* platform/qt/tables/mozilla/bugs/bug25367-expected.txt:
* platform/qt/tables/mozilla/bugs/bug26553-expected.txt:
* platform/qt/tables/mozilla/bugs/bug3037-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug3037-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug32447-expected.txt:
* platform/qt/tables/mozilla/bugs/bug3309-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug34538-expected.txt:
* platform/qt/tables/mozilla/bugs/bug45350-expected.txt:
* platform/qt/tables/mozilla/bugs/bug53690-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug53690-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug55789-expected.txt:
* platform/qt/tables/mozilla/bugs/bug56201-expected.txt:
* platform/qt/tables/mozilla/bugs/bug56405-expected.txt:
* platform/qt/tables/mozilla/bugs/bug641-1-expected.txt:
* platform/qt/tables/mozilla/bugs/bug641-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug8361-expected.txt:
* platform/qt/tables/mozilla/bugs/bug88524-expected.txt:
* platform/qt/tables/mozilla/bugs/bug9072-expected.txt:
* platform/qt/tables/mozilla/bugs/bug92647-2-expected.txt:
* platform/qt/tables/mozilla/bugs/bug97383-expected.txt:
* platform/qt/tables/mozilla/bugs/bug98196-expected.txt:
* platform/qt/tables/mozilla/marvin/tfoot_char-expected.png:
* platform/qt/tables/mozilla/marvin/tfoot_char-expected.txt:

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

8 years ago[chromium/mac] Remove mac_bundle_resources section from WebCore.gyp
thakis@chromium.org [Wed, 25 Jul 2012 22:19:26 +0000 (22:19 +0000)]
[chromium/mac] Remove mac_bundle_resources section from WebCore.gyp
https://bugs.webkit.org/show_bug.cgi?id=92207

Reviewed by Tony Chang.

It's no longer needed after http://crrev.com/148290 and
http://crrev.com/148187.

* WebCore.gyp/WebCore.gyp:

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

8 years agoSource/JavaScriptCore: Create a specialized pair for use in HashMap iterators
caio.oliveira@openbossa.org [Wed, 25 Jul 2012 22:15:05 +0000 (22:15 +0000)]
Source/JavaScriptCore: Create a specialized pair for use in HashMap iterators
https://bugs.webkit.org/show_bug.cgi?id=92137

Reviewed by Ryosuke Niwa.

Update a couple of sites that relied on the fact that "contents" of iterators were
std::pairs.

* profiler/Profile.cpp:
(JSC): This code kept a vector of the pairs that were the "contents" of the iterators. This
is changed to use a KeyValuePair. We make use HashCount's ValueType (which represents only
the key) to get the proper key parameter for KeyValuePair.
* tools/ProfileTreeNode.h:
(ProfileTreeNode): Use HashMap::ValueType to declare the type of the contents of the hash
instead of declaring it manually. This will make use of the new KeyValuePair.

Source/WebKit2: Create a specialized struct for use in HashMap iterators
https://bugs.webkit.org/show_bug.cgi?id=92137

Reviewed by Ryosuke Niwa.

* Platform/CoreIPC/ArgumentCoders.h: Add encode/decode for KeyValuePair.

Source/WTF: Create a specialized pair for use in HashMap iterators
https://bugs.webkit.org/show_bug.cgi?id=92137

Reviewed by Ryosuke Niwa.

The type used for internal storage in HashMap is exposed in its interface as iterator
"contents". Currently HashMap uses std::pair<>, which this patch replaces with
KeyValuePair.

Having this specialized structure will allow us to customize the members to be called
key/value, improving readability in code using HashMap iterators. They are still called
first/second to separate this change from the mechanical change of updating callsites.

* wtf/HashIterators.h:
(HashTableConstKeysIterator):
(HashTableConstValuesIterator):
(HashTableKeysIterator):
(HashTableValuesIterator):
Use KeyValuePair instead of std::pair when defining the iterators.

* wtf/HashMap.h:
(WTF):
(WTF::KeyValuePairKeyExtractor::extract):
(HashMap):
Remove PairFirstExtractor. Add and use the KeyValuePair corresponding extractor.

(WTF::HashMapValueTraits::isEmptyValue): Use KeyValuePairHashTraits for HashMaps.
(WTF::HashMapTranslator::translate):
(WTF::HashMapTranslatorAdapter::translate):
The traits of the mapped value is now called ValueTraits instead of SecondTraits.

* wtf/HashTable.h:
(WTF::hashTableSwap): Add specialization for swapping KeyValuePairs.
(WTF): Remove now unneeded specialization for std::pairs.

* wtf/HashTraits.h:
(KeyValuePair):
(WTF::KeyValuePair::KeyValuePair):
(WTF):
Specialized pair. In the future difference from pair should be the member names.

(KeyValuePairHashTraits):
(WTF::KeyValuePairHashTraits::emptyValue):
(WTF::KeyValuePairHashTraits::constructDeletedValue):
(WTF::KeyValuePairHashTraits::isDeletedValue):
These traits are analogous to PairHashTraits but for KeyValuePair.

* wtf/RefPtrHashMap.h: Use KeyValuePairHashTraits.

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

8 years ago[chromium] Move WebFilterOperations from RenderPassDrawQuad to RenderPass
danakj@chromium.org [Wed, 25 Jul 2012 22:07:50 +0000 (22:07 +0000)]
[chromium] Move WebFilterOperations from RenderPassDrawQuad to RenderPass
https://bugs.webkit.org/show_bug.cgi?id=91885

Reviewed by Adrienne Walker.

Source/WebCore:

We move the filter operations to CCRenderPass to avoid having
variable-length data in a WebCompositorQuad in order to serialize,
and also to avoid requiring a virtual destructor for the quad
classes.

The drawFrame method now takes a CCRenderPassIdHashMap in order
to connect RenderPass quads to their source RenderPass.

Covered by existing tests.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::decideRenderPassAllocationsForFrame):
(WebCore::LayerRendererChromium::drawFrame):
(WebCore::LayerRendererChromium::beginDrawingFrame):
(WebCore::LayerRendererChromium::drawBackgroundFilters):
(WebCore::LayerRendererChromium::drawRenderPassQuad):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromium):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore::CCLayerTreeHostImpl::drawLayers):
* platform/graphics/chromium/cc/CCRenderPass.h:
(WebCore::CCRenderPass::filters):
(WebCore::CCRenderPass::setFilters):
(CCRenderPass):
(WebCore::CCRenderPass::backgroundFilters):
(WebCore::CCRenderPass::setBackgroundFilters):
* platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp:
(WebCore::CCRenderPassDrawQuad::create):
(WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):
* platform/graphics/chromium/cc/CCRenderPassDrawQuad.h:
(CCRenderPassDrawQuad):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::appendQuads):
* platform/graphics/chromium/cc/CCRenderer.h:
(CCRenderer):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
* tests/LayerRendererChromiumTest.cpp:
(FakeCCRendererClient::FakeCCRendererClient):
(FakeCCRendererClient::rootRenderPass):
(FakeCCRendererClient::renderPassesInDrawOrder):
(FakeCCRendererClient::renderPasses):
(FakeCCRendererClient):
(TEST_F):
(TEST):

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

8 years agofix test in beginLayerClippedToImage to check for immutability if we're going to...
reed@google.com [Wed, 25 Jul 2012 21:47:21 +0000 (21:47 +0000)]
fix test in beginLayerClippedToImage to check for immutability if we're going to do a shallow-copy
https://bugs.webkit.org/show_bug.cgi?id=92276

Reviewed by Stephen White.

PlatformContextSkia::beginLayerClippedToImage

This function wants to apply the provided ImageBuffer as a clip. Skia does not support this natively yet,
so the code makes a "copy" of that imageBuffer, to be applied later. The old code, wanting to avoid a
deep copy if possible, checked for the presence of a SkPixelRef. If it found one, it made a shallow copy.
This is flawed, since the contents of a pixelref are not guaranteed to be immutable. The new code checks
against this attribute: if the bitmap is "immutable" then we can make a shallow-copy, else we make a
deep copy.

No new tests. Existing svg layouttests work w/ or w/out this change, but at the next Skia deps roll, we see
failures w/o this change. The change is more "correct", though the problem case does not exhibit itself until
Skia rev. 4722 or later lands.

* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::beginLayerClippedToImage):

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

8 years agoJochen is our a newest reviewer!
abarth@webkit.org [Wed, 25 Jul 2012 21:41:14 +0000 (21:41 +0000)]
Jochen is our a newest reviewer!

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

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

8 years ago[Qt] fast/block/margin-collapse tests need update after rebaseline and new testfonts
commit-queue@webkit.org [Wed, 25 Jul 2012 21:39:00 +0000 (21:39 +0000)]
[Qt] fast/block/margin-collapse tests need update after rebaseline and new testfonts
https://bugs.webkit.org/show_bug.cgi?id=92274

Patch by Luciano Wolf <luciano.wolf@openbossa.org> on 2012-07-25
Reviewed by Alexis Menard.

* platform/qt-5.0/Skipped:
* platform/qt/fast/block/margin-collapse/001-expected.png:
* platform/qt/fast/block/margin-collapse/001-expected.txt:
* platform/qt/fast/block/margin-collapse/002-expected.png:
* platform/qt/fast/block/margin-collapse/002-expected.txt:
* platform/qt/fast/block/margin-collapse/003-expected.png:
* platform/qt/fast/block/margin-collapse/003-expected.txt:
* platform/qt/fast/block/margin-collapse/004-expected.png:
* platform/qt/fast/block/margin-collapse/004-expected.txt:
* platform/qt/fast/block/margin-collapse/005-expected.png:
* platform/qt/fast/block/margin-collapse/005-expected.txt:
* platform/qt/fast/block/margin-collapse/006-expected.png:
* platform/qt/fast/block/margin-collapse/006-expected.txt:
* platform/qt/fast/block/margin-collapse/010-expected.png:
* platform/qt/fast/block/margin-collapse/010-expected.txt:
* platform/qt/fast/block/margin-collapse/011-expected.png:
* platform/qt/fast/block/margin-collapse/011-expected.txt:
* platform/qt/fast/block/margin-collapse/012-expected.png:
* platform/qt/fast/block/margin-collapse/012-expected.txt:
* platform/qt/fast/block/margin-collapse/015-expected.png:
* platform/qt/fast/block/margin-collapse/015-expected.txt:
* platform/qt/fast/block/margin-collapse/016-expected.png:
* platform/qt/fast/block/margin-collapse/016-expected.txt:
* platform/qt/fast/block/margin-collapse/017-expected.png:
* platform/qt/fast/block/margin-collapse/017-expected.txt:
* platform/qt/fast/block/margin-collapse/018-expected.png:
* platform/qt/fast/block/margin-collapse/018-expected.txt:
* platform/qt/fast/block/margin-collapse/019-expected.png:
* platform/qt/fast/block/margin-collapse/019-expected.txt:
* platform/qt/fast/block/margin-collapse/020-expected.png:
* platform/qt/fast/block/margin-collapse/020-expected.txt:
* platform/qt/fast/block/margin-collapse/021-expected.png:
* platform/qt/fast/block/margin-collapse/021-expected.txt:
* platform/qt/fast/block/margin-collapse/022-expected.png:
* platform/qt/fast/block/margin-collapse/022-expected.txt:
* platform/qt/fast/block/margin-collapse/025-expected.png:
* platform/qt/fast/block/margin-collapse/025-expected.txt:
* platform/qt/fast/block/margin-collapse/026-expected.png:
* platform/qt/fast/block/margin-collapse/026-expected.txt:
* platform/qt/fast/block/margin-collapse/027-expected.png:
* platform/qt/fast/block/margin-collapse/027-expected.txt:
* platform/qt/fast/block/margin-collapse/028-expected.png:
* platform/qt/fast/block/margin-collapse/028-expected.txt:
* platform/qt/fast/block/margin-collapse/029-expected.png:
* platform/qt/fast/block/margin-collapse/029-expected.txt:
* platform/qt/fast/block/margin-collapse/030-expected.png:
* platform/qt/fast/block/margin-collapse/030-expected.txt:
* platform/qt/fast/block/margin-collapse/031-expected.png:
* platform/qt/fast/block/margin-collapse/031-expected.txt:
* platform/qt/fast/block/margin-collapse/032-expected.png:
* platform/qt/fast/block/margin-collapse/032-expected.txt:
* platform/qt/fast/block/margin-collapse/033-expected.png:
* platform/qt/fast/block/margin-collapse/033-expected.txt:
* platform/qt/fast/block/margin-collapse/034-expected.png:
* platform/qt/fast/block/margin-collapse/034-expected.txt:
* platform/qt/fast/block/margin-collapse/035-expected.png:
* platform/qt/fast/block/margin-collapse/035-expected.txt:
* platform/qt/fast/block/margin-collapse/037-expected.png:
* platform/qt/fast/block/margin-collapse/037-expected.txt:
* platform/qt/fast/block/margin-collapse/038-expected.png:
* platform/qt/fast/block/margin-collapse/038-expected.txt:
* platform/qt/fast/block/margin-collapse/039-expected.png:
* platform/qt/fast/block/margin-collapse/039-expected.txt:
* platform/qt/fast/block/margin-collapse/040-expected.png:
* platform/qt/fast/block/margin-collapse/040-expected.txt:
* platform/qt/fast/block/margin-collapse/041-expected.png:
* platform/qt/fast/block/margin-collapse/041-expected.txt:
* platform/qt/fast/block/margin-collapse/042-expected.png:
* platform/qt/fast/block/margin-collapse/042-expected.txt:
* platform/qt/fast/block/margin-collapse/043-expected.png:
* platform/qt/fast/block/margin-collapse/043-expected.txt:
* platform/qt/fast/block/margin-collapse/044-expected.png:
* platform/qt/fast/block/margin-collapse/044-expected.txt:
* platform/qt/fast/block/margin-collapse/045-expected.png:
* platform/qt/fast/block/margin-collapse/045-expected.txt:
* platform/qt/fast/block/margin-collapse/055-expected.png:
* platform/qt/fast/block/margin-collapse/055-expected.txt:
* platform/qt/fast/block/margin-collapse/056-expected.png:
* platform/qt/fast/block/margin-collapse/056-expected.txt:
* platform/qt/fast/block/margin-collapse/057-expected.png:
* platform/qt/fast/block/margin-collapse/057-expected.txt:
* platform/qt/fast/block/margin-collapse/058-expected.png:
* platform/qt/fast/block/margin-collapse/058-expected.txt:
* platform/qt/fast/block/margin-collapse/059-expected.png:
* platform/qt/fast/block/margin-collapse/059-expected.txt:
* platform/qt/fast/block/margin-collapse/062-expected.png:
* platform/qt/fast/block/margin-collapse/062-expected.txt:
* platform/qt/fast/block/margin-collapse/063-expected.png:
* platform/qt/fast/block/margin-collapse/063-expected.txt:
* platform/qt/fast/block/margin-collapse/100-expected.png:
* platform/qt/fast/block/margin-collapse/100-expected.txt:
* platform/qt/fast/block/margin-collapse/101-expected.png:
* platform/qt/fast/block/margin-collapse/101-expected.txt:
* platform/qt/fast/block/margin-collapse/102-expected.png:
* platform/qt/fast/block/margin-collapse/102-expected.txt:
* platform/qt/fast/block/margin-collapse/103-expected.png:
* platform/qt/fast/block/margin-collapse/103-expected.txt:
* platform/qt/fast/block/margin-collapse/104-expected.png:
* platform/qt/fast/block/margin-collapse/104-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/001-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/001-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/002-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/002-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/003-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/003-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/004-expected.png:
* platform/qt/fast/block/margin-collapse/block-inside-inline/004-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/005-expected.png:
* platform/qt/fast/block/margin-collapse/block-inside-inline/005-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/006-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/006-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/010-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/010-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/011-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/011-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/012-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/012-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/015-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/015-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/016-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/016-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/017-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/017-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/018-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/018-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/019-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/019-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/020-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/020-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/021-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/021-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/022-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/022-expected.txt:
* platform/qt/fast/block/margin-collapse/block-inside-inline/025-expected.png: Added.
* platform/qt/fast/block/margin-collapse/block-inside-inline/025-expected.txt:
* platform/qt/fast/block/margin-collapse/empty-clear-blocks-expected.png:
* platform/qt/fast/block/margin-collapse/empty-clear-blocks-expected.txt:
* platform/qt/fast/block/margin-collapse/negative-margins-expected.png:
* platform/qt/fast/block/margin-collapse/negative-margins-expected.txt:

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

8 years agoIt is invalid when both numberOfInputChannels and numberOfOutputChannels to be zero...
commit-queue@webkit.org [Wed, 25 Jul 2012 21:33:53 +0000 (21:33 +0000)]
It is invalid when both numberOfInputChannels and numberOfOutputChannels to be zero in JavaScriptAudioNode.
https://bugs.webkit.org/show_bug.cgi?id=91364

Patch by Li Yin <li.yin@intel.com> on 2012-07-25
Reviewed by Kenneth Russell.

Source/WebCore:

Spec: http://www.w3.org/TR/webaudio/#JavaScriptAudioNode-section
It is invalid for both numberOfInputChannels and numberOfOutputChannels to be zero.

Test: webaudio/javascriptaudionode.html

* Modules/webaudio/JavaScriptAudioNode.cpp:
(WebCore::JavaScriptAudioNode::create):

LayoutTests:

Add tests for (numberOfInputChannels, numberOfOutputChannels) to be (0, 0),(0, 1),(0, 2),(1, 0) and (2, 0).

* webaudio/javascriptaudionode-expected.txt:
* webaudio/javascriptaudionode.html:

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

8 years ago[chromium] don't use webkit_support methods directly from test runners but through...
jochen@chromium.org [Wed, 25 Jul 2012 21:28:42 +0000 (21:28 +0000)]
[chromium] don't use webkit_support methods directly from test runners but through the test delegate
https://bugs.webkit.org/show_bug.cgi?id=92256

Reviewed by Adam Barth.

This will allow for the content_shell to provide its own implementation
for setting the Gamepad data instead.

* DumpRenderTree/chromium/TestRunner/GamepadController.cpp:
(GamepadController::setDelegate):
(GamepadController::reset):
(GamepadController::connect):
(GamepadController::disconnect):
(GamepadController::setId):
(GamepadController::setButtonCount):
(GamepadController::setButtonData):
(GamepadController::setAxisCount):
(GamepadController::setAxisData):
* DumpRenderTree/chromium/TestRunner/GamepadController.h:
(GamepadController):
* DumpRenderTree/chromium/TestRunner/TestDelegate.h:
(WebKit):
(TestDelegate):
* DumpRenderTree/chromium/TestRunner/TestInterfaces.cpp:
(TestInterfaces::Internal):
(TestInterfaces::Internal::~Internal):
(TestInterfaces::Internal::setDelegate):
(TestInterfaces::setDelegate):
* DumpRenderTree/chromium/TestRunner/TestInterfaces.h:
(TestInterfaces):
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::createMainWindow):
(TestShell::~TestShell):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::setGamepadData):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):

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

8 years ago[BlackBerry] Update about:config lists
commit-queue@webkit.org [Wed, 25 Jul 2012 21:25:46 +0000 (21:25 +0000)]
[BlackBerry] Update about:config lists
https://bugs.webkit.org/show_bug.cgi?id=92118

Patch by Joshua Netterfield <jnetterfield@rim.com> on 2012-07-25
Reviewed by Rob Buis.

Remove features from list that have either been removed from WebKit
or that have been moved from one list to another.

* WebCoreSupport/AboutDataEnableFeatures.in:
* WebCoreSupport/AboutDataHaveFeatures.in:
* WebCoreSupport/AboutDataUseFeatures.in:

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

8 years agoUnreviewed chromium expectations change.
atwilson@chromium.org [Wed, 25 Jul 2012 21:19:44 +0000 (21:19 +0000)]
Unreviewed chromium expectations change.

* platform/chromium/TestExpectations:

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

8 years agoCrash when calling PluginView::pluginFocusOrWindowFocusChanged when the web page...
andersca@apple.com [Wed, 25 Jul 2012 21:13:04 +0000 (21:13 +0000)]
Crash when calling PluginView::pluginFocusOrWindowFocusChanged when the web page is null
https://bugs.webkit.org/show_bug.cgi?id=92289
<rdar://problem/11785352>

Reviewed by Andreas Kling.

Plug-in views that outlive their containing web page for various reasons (such as being protected from
destruction) need to null check the web page.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::pluginFocusOrWindowFocusChanged):
(WebKit::PluginView::setComplexTextInputState):

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

8 years ago[Qt] fast/borders rebaseline after new test fonts
commit-queue@webkit.org [Wed, 25 Jul 2012 21:08:12 +0000 (21:08 +0000)]
[Qt] fast/borders rebaseline after new test fonts
https://bugs.webkit.org/show_bug.cgi?id=92146

Patch by Luciano Wolf <luciano.wolf@openbossa.org> on 2012-07-25
Reviewed by Csaba Osztrogonác.

Updated patch started by Alexis. This one removes old expected results
found inside qt-5.0 directory and updates Skipped files as well.

* platform/qt-5.0/Skipped:
* platform/qt-5.0/fast/borders/bidi-002-expected.txt: Removed.
* platform/qt-5.0/fast/borders/bidi-009a-expected.txt: Removed.
* platform/qt-5.0/fast/borders/bidi-012-expected.txt: Removed.
* platform/qt/fast/borders/border-image-slice-constrained-expected.txt:
* platform/qt/fast/borders/borderRadiusArcs01-expected.txt:
* platform/qt/fast/borders/borderRadiusDouble01-expected.txt:
* platform/qt/fast/borders/borderRadiusDouble02-expected.txt:
* platform/qt/fast/borders/borderRadiusDouble03-expected.txt:
* platform/qt/fast/borders/borderRadiusGroove01-expected.txt:
* platform/qt/fast/borders/borderRadiusGroove02-expected.txt:
* platform/qt/fast/borders/borderRadiusInset01-expected.txt:
* platform/qt/fast/borders/borderRadiusOutset01-expected.txt:
* platform/qt/fast/borders/borderRadiusRidge01-expected.txt:
* platform/qt/fast/borders/borderRadiusSolid01-expected.txt:
* platform/qt/fast/borders/borderRadiusSolid02-expected.txt:
* platform/qt/fast/borders/borderRadiusSolid03-expected.txt:
* platform/qt/fast/borders/borderRadiusSolid04-expected.txt:
* platform/qt/fast/borders/table-borders-expected.txt:

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

8 years agoUnreviewed chromium expectations change.
atwilson@chromium.org [Wed, 25 Jul 2012 20:59:16 +0000 (20:59 +0000)]
Unreviewed chromium expectations change.

* platform/chromium/TestExpectations:

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

8 years agoImport more replay performance tests from Mozilla's Tp5 test suite
rniwa@webkit.org [Wed, 25 Jul 2012 20:52:22 +0000 (20:52 +0000)]
Import more replay performance tests from Mozilla's Tp5 test suite
https://bugs.webkit.org/show_bug.cgi?id=92229

Reviewed by Andreas Kling.

Add more replay tests based on Mozilla's Tp5 test suite [1]. Unfortunately,
we cannot import all URLs because some of them are not archived on archive.org
and others do not replay well on web-page-replay. Nonethless, we're still adding
60+ URLs in this patch.

[1] http://people.mozilla.org/~jmaher/tp5.manifest

* Replay/Chinese: Added.
* Replay/Chinese/chinaz.com.replay: Added.
* Replay/Chinese/www.163.com.replay: Added.
* Replay/Chinese/www.alipay.com.replay: Added.
* Replay/Chinese/www.baidu.com.replay: Added.
* Replay/Chinese/www.csdn.net.replay: Added.
* Replay/Chinese/www.douban.com.replay: Added.
* Replay/Chinese/www.hao123.com.replay: Added.
* Replay/Chinese/www.xinhuanet.com.replay: Added.
* Replay/Chinese/www.xunlei.com.replay: Added.
* Replay/Chinese/www.youku.com.replay: Added.
* Replay/English: Added.
* Replay/English/beatonna.livejournal.com.replay: Added.
* Replay/English/cakewrecks.blogspot.com.replay: Added.
* Replay/English/chemistry.about.com.replay: Added.
* Replay/English/digg.com.replay: Added.
* Replay/English/en.wikipedia.org-rorschach_test.replay: Added.
* Replay/English/icanhascheezburger.com.replay: Added.
* Replay/English/imgur.com-gallery.replay: Added.
* Replay/English/online.wsj.com.replay: Added.
* Replay/English/stockoverflow.com-best-comment.replay: Added.
* Replay/English/www.alibaba.com.replay: Added.
* Replay/English/www.amazon.com-kindle.replay: Added.
* Replay/English/www.apple.com.replay: Added.
* Replay/English/www.cnet.com.replay: Added.
* Replay/English/www.dailymotion.com.replay: Added.
* Replay/English/www.ehow.com-prevent-fire.replay: Added.
* Replay/English/www.filestube.com-amy-adams.replay: Added.
* Replay/English/www.foxnews.replay: Added.
* Replay/English/www.huffingtonpost.com.replay: Added.
* Replay/English/www.imdb.com-twilight.replay: Added.
* Replay/English/www.mozilla.com-all-order.replay: Added.
* Replay/English/www.php.net.replay: Added.
* Replay/English/www.reddit.com.replay: Added.
* Replay/English/www.telegraph.co.uk.replay: Added.
* Replay/English/www.w3.org-htmlcss.replay: Added.
* Replay/English/www.w3schools.com-html.replay: Added.
* Replay/English/www.youtube.com-music.replay: Added.
* Replay/French: Added.
* Replay/French/www.orange.fr.replay: Added.
* Replay/German: Added.
* Replay/Italian: Added.
* Replay/Italian/www.repubblica.it.replay: Added.
* Replay/Japanese/entameblog.seesaa.net.replay: Added.
* Replay/Japanese/www.hatena.ne.jp.replay: Added.
* Replay/Japanese/www.nicovideo.jp.replay: Added.
* Replay/Korean: Added.
* Replay/Korean/www.naver.com.replay: Added.
* Replay/Persian: Added.
* Replay/Persian/blogfa.com.replay: Added.
* Replay/Polish: Added.
* Replay/Polish/www.wp.pl.replay: Added.
* Replay/Portuguese: Added.
* Replay/Portuguese/www.uol.com.br.replay: Added.
* Replay/Russian: Added.
* Replay/Russian/vkontakte.ru-help.replay: Added.
* Replay/Russian/www.rambler.ru.replay: Added.
* Replay/Russian/www.ucoz.ru.replay: Added.
* Replay/Russian/www.yandex.ru.replay: Added.
* Replay/Spanish: Added.
* Replay/Spanish/www.taringa.net.replay: Added.

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

8 years ago[chromium] Refactor CCLayerTreeHostCommon: move root layer special case initializatio...
shawnsingh@chromium.org [Wed, 25 Jul 2012 20:47:26 +0000 (20:47 +0000)]
[chromium] Refactor CCLayerTreeHostCommon: move root layer special case initialization into internal code.
https://bugs.webkit.org/show_bug.cgi?id=88953

Reviewed by Adrienne Walker.

Source/WebCore:

This is part 1 of trying to reduce the root layer special
case. This tries to reduce the special-ness of the root layer from
the perspective of outside code.

After this patch, code that uses calcDrawTransforms() no longer
needs to initialize the root layer's surface, and no longer needs
to manually append the root layer to the renderSurfaceLayerList.

Unit tests were also updated (much cleaner!) to account for this change.

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::updateLayers):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore):
(WebCore::setupRootLayerAndSurfaceForRecursion):
(WebCore::CCLayerTreeHostCommon::calculateDrawTransforms):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:
(CCLayerTreeHostCommon):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::calculateRenderSurfaceLayerList):

Source/WebKit/chromium:

Unit tests updated to account for the new less-special root layer setup.
  - most test cases just needed to remove root->renderSurface()->setContentBounds(), createRenderSurface(), and renderSurfaceLayerList.append().
  - some test cases originally relied on setting some awkward unconventional bounds of the rootLayer that were different than the rootLayer's renderSurface. these tests are updated.
  - a few minor cleanups otherwise.

* tests/CCDamageTrackerTest.cpp:
(WebKitTests::executeCalculateDrawTransformsAndVisibility):
* tests/CCLayerIteratorTest.cpp:
* tests/CCLayerTreeHostCommonTest.cpp:
* tests/CCOcclusionTrackerTest.cpp:
(WebKitTests::CCOcclusionTrackerTest::calcDrawEtc):

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

8 years agoFileSystem should provide a way to delete filesystem.
commit-queue@webkit.org [Wed, 25 Jul 2012 20:44:27 +0000 (20:44 +0000)]
FileSystem should provide a way to delete filesystem.
https://bugs.webkit.org/show_bug.cgi?id=91861

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-07-25
Reviewed by Adam Barth.

Source/WebCore:

We will add a test when we wire-up the feature to Inspector.

* Modules/filesystem/LocalFileSystem.cpp: Add deleteFileSystem
(WebCore::deleteFileSystem):
(WebCore):
(WebCore::LocalFileSystem::deleteFileSystem):
* Modules/filesystem/LocalFileSystem.h:
(LocalFileSystem):
* platform/AsyncFileSystem.cpp: Add deleteFileSystem
(WebCore):
(WebCore::AsyncFileSystem::deleteFileSystem):
* platform/AsyncFileSystem.h:
(AsyncFileSystem):
* platform/blackberry/AsyncFileSystemBlackBerry.cpp: Add deleteFileSystem
(WebCore::AsyncFileSystem::deleteFileSystem):
(WebCore):
* platform/gtk/AsyncFileSystemGtk.cpp: Add deleteFileSystem
(WebCore::AsyncFileSystem::deleteFileSystem):
(WebCore):

Source/WebKit/chromium:

* public/WebFrameClient.h:
(WebFrameClient):
(WebKit::WebFrameClient::deleteFileSystem):
* src/LocalFileSystemChromium.cpp: Add deleteFileSystem
(WebCore::deleteFileSystemNotAllowed):
(WebCore):
(WebCore::LocalFileSystem::deleteFileSystem):

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

8 years ago[WK2][WTR] LayoutTestController.sendWebIntentResponse() needs to be implemented
commit-queue@webkit.org [Wed, 25 Jul 2012 20:34:28 +0000 (20:34 +0000)]
[WK2][WTR] LayoutTestController.sendWebIntentResponse() needs to be implemented
https://bugs.webkit.org/show_bug.cgi?id=92227

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

Source/WebKit2:

Add new InjectedBundleIntentRequest class to wrap WebCore's
IntentRequest and use it in InjectedBundle's
didReceiveIntentForFrame callback. The WebKitTestRunner needs
to be able to reply to a Web intent request in order to
implement LayoutTestController.sendWebIntentResponse(). As
a consequence, passing a WebIntentData type in not enough.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Shared/API/c/WKBase.h:
* Shared/APIObject.h:
* Shared/IntentData.cpp:
(WebKit::IntentData::IntentData):
(WebKit):
* Shared/IntentData.h:
(WebCore):
(WebKit::IntentData::IntentData):
(IntentData):
* Target.pri:
* WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
(WebKit):
* WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.cpp: Copied from Source/WebKit2/Shared/IntentData.cpp.
(WKBundleIntentRequestGetTypeID):
(WKBundleIntentRequestCopyIntent):
(WKBundleIntentRequestPostResult):
(WKBundleIntentRequestPostFailure):
* WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.h: Copied from Source/WebKit2/Shared/IntentData.h.
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/InjectedBundleIntentRequest.cpp: Copied from Source/WebKit2/Shared/IntentData.cpp.
(WebKit):
(WebKit::InjectedBundleIntentRequest::create):
(WebKit::InjectedBundleIntentRequest::InjectedBundleIntentRequest):
(WebKit::InjectedBundleIntentRequest::postResult):
(WebKit::InjectedBundleIntentRequest::postFailure):
(WebKit::InjectedBundleIntentRequest::intent):
* WebProcess/InjectedBundle/InjectedBundleIntentRequest.h: Copied from Source/WebKit2/Shared/IntentData.h.
(WebCore):
(WebKit):
(InjectedBundleIntentRequest):
(WebKit::InjectedBundleIntentRequest::type):
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
(WebKit::InjectedBundlePageLoaderClient::didReceiveIntentForFrame):
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
(WebKit):
(InjectedBundlePageLoaderClient):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchIntent):

Tools:

Implement LayoutTestController.sendWebIntentResponse() so
that a test case can reply to a Web intent request and
test this functionality.

In order to support this functionality, we need to keep
a pointer to the current intent request in
InjectedBundlePage::didReceiveIntentForFrame() so that
we can reuse it later in
LayoutTestController::sendWebIntentResponse().

The following tests need this functionality:
- webintents/web-intents-failure.html
- webintents/web-intents-reply.html

* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::didReceiveIntentForFrame):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
(InjectedBundlePage):
(WTR::InjectedBundlePage::currentIntentRequest):
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::sendWebIntentResponse):
(WTR):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
(LayoutTestController):

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

8 years agoWeb Inspector: Add more jsdocs to InjectedScriptSource.js
commit-queue@webkit.org [Wed, 25 Jul 2012 20:19:08 +0000 (20:19 +0000)]
Web Inspector: Add more jsdocs to InjectedScriptSource.js
https://bugs.webkit.org/show_bug.cgi?id=92255

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-07-25
Reviewed by Pavel Feldman.

* inspector/InjectedScriptSource.js:

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

8 years agor123492 Changed output of msub-anonymous-child-render-crash.html LayoutTest
msaboff@apple.com [Wed, 25 Jul 2012 20:15:31 +0000 (20:15 +0000)]
r123492 Changed output of msub-anonymous-child-render-crash.html LayoutTest
https://bugs.webkit.org/show_bug.cgi?id=92284

Rubber-stamped by Beth Dakin.

Rebaselined test output.

* mathml/msub-anonymous-child-render-crash-expected.txt:
r123492 changed the way inline-tables are rendered.

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

8 years agoCrash when a web page is closed with outstanding scrolling thread barriers
andersca@apple.com [Wed, 25 Jul 2012 20:06:55 +0000 (20:06 +0000)]
Crash when a web page is closed with outstanding scrolling thread barriers
https://bugs.webkit.org/show_bug.cgi?id=92280
<rdar://problem/11630200>

Reviewed by Andreas Kling.

There was a check in forceRepaintAsync to handle the drawing area going away before the block had
been invoked,  but this check needs to be done earlier (as the FIXME suggested).
Move this check to dispatchAfterEnsuringUpdatedScrollPosition instead.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):
(WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):

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

8 years ago[EFL][WK2][WTR] Alt, Shift and Ctrl keys are not handled by EventSenderProxy.
commit-queue@webkit.org [Wed, 25 Jul 2012 20:05:05 +0000 (20:05 +0000)]
[EFL][WK2][WTR] Alt, Shift and Ctrl keys are not handled by EventSenderProxy.
https://bugs.webkit.org/show_bug.cgi?id=92241

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

Alt, Shift and Ctrl keys were not handled by EventSenderProxy.
It caused failure of fast/events/keydown-leftright-keys.html test.

* WebKitTestRunner/efl/EventSenderProxyEfl.cpp: Added handling of Alt, Shift and Ctrl keys.
(WTR::keyName):

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

8 years agoUnreviewed chromium expectations change to mark tests as slow.
atwilson@chromium.org [Wed, 25 Jul 2012 19:52:49 +0000 (19:52 +0000)]
Unreviewed chromium expectations change to mark tests as slow.

* platform/chromium/TestExpectations:

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

8 years ago[chromium] WebViewBenchmarkSupport::paint API does not work with recording canvas
alokp@chromium.org [Wed, 25 Jul 2012 19:50:22 +0000 (19:50 +0000)]
[chromium] WebViewBenchmarkSupport::paint API does not work with recording canvas
https://bugs.webkit.org/show_bug.cgi?id=92008

Reviewed by Darin Fisher.

Moved the ownership of canvas to WebViewBenchmarkSupport::PaintClient.

* public/WebViewBenchmarkSupport.h:
(PaintClient):
(WebKit::WebViewBenchmarkSupport::PaintClient::willPaint):
(WebKit::WebViewBenchmarkSupport::PaintClient::didPaint):
* src/WebViewBenchmarkSupportImpl.cpp:
(WebKit::WebViewBenchmarkSupportImpl::paintLayer):
(WebKit::WebViewBenchmarkSupportImpl::softwarePaint):

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

8 years ago[chromium] Turn the debug HUD into a layer so that it can be drawn as a WebCompositorQuad
danakj@chromium.org [Wed, 25 Jul 2012 19:46:18 +0000 (19:46 +0000)]
[chromium] Turn the debug HUD into a layer so that it can be drawn as a WebCompositorQuad
https://bugs.webkit.org/show_bug.cgi?id=92182

Reviewed by Adrienne Walker.

Source/WebCore:

By changing the HUD into a quad, we are able to create a HUD and pass
it to the host compositor, allowing the HUD to be used for renderers
under Ubercompositor.

This also removes the special drawing code for the HUD from
LayerRendererChromium, allowing us to move finishDrawingFrame
into LayerRendererChromium as a private method and remove it
from the CCRenderer interface.

Finally, we can remove the CCFontAtlas transport code from CCProxy
and its implementations as the atlas can be synced to impl thread
through the usual layer commit mechanism.

The debug HUD is not covered by tests.

* WebCore.gypi:
* platform/graphics/chromium/HeadsUpDisplayLayerChromium.cpp: Added.
(WebCore):
(WebCore::HeadsUpDisplayLayerChromium::create):
(WebCore::HeadsUpDisplayLayerChromium::HeadsUpDisplayLayerChromium):
(WebCore::HeadsUpDisplayLayerChromium::~HeadsUpDisplayLayerChromium):
(WebCore::HeadsUpDisplayLayerChromium::createCCLayerImpl):
* platform/graphics/chromium/HeadsUpDisplayLayerChromium.h: Added.
(WebCore):
(HeadsUpDisplayLayerChromium):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawFrame):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromium):
* platform/graphics/chromium/cc/CCDebugRectHistory.cpp:
(WebCore::CCDebugRectHistory::savePropertyChangedRects):
* platform/graphics/chromium/cc/CCDebugRectHistory.h:
* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp.
(WebCore):
(WebCore::CCHeadsUpDisplayLayerImpl::CCHeadsUpDisplayLayerImpl):
(WebCore::CCHeadsUpDisplayLayerImpl::~CCHeadsUpDisplayLayerImpl):
(WebCore::CCHeadsUpDisplayLayerImpl::willDraw):
(WebCore::CCHeadsUpDisplayLayerImpl::appendQuads):
(WebCore::CCHeadsUpDisplayLayerImpl::didDraw):
(WebCore::CCHeadsUpDisplayLayerImpl::didLoseContext):
(WebCore::CCHeadsUpDisplayLayerImpl::drawHudContents):
(WebCore::CCHeadsUpDisplayLayerImpl::drawFPSCounter):
(WebCore::CCHeadsUpDisplayLayerImpl::drawFPSCounterText):
(WebCore::CCHeadsUpDisplayLayerImpl::drawDebugRects):
* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCHeadsUpDisplay.h.
(WebCore):
(CCHeadsUpDisplayLayerImpl):
(WebCore::CCHeadsUpDisplayLayerImpl::create):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore::CCLayerImpl::layerIsAlwaysDamaged):
This flag is used to mark the HUD as always damaged, so that it is
continually drawn on the impl thread. It is also used as a hint by
the CCDebugRectHistory class to not include the layer in the display
of damage, since always damaged is not interesting damage.
(CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::create):
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::willCommit):
(WebCore::CCLayerTreeHost::didCommit):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeSettings):
(WebCore::CCLayerTreeSettings::showDebugInfo):
(WebCore::CCLayerTreeSettings::showDebugRects):
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::drawLayers):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(WebCore):
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCProxy.h:
(CCProxy):
* platform/graphics/chromium/cc/CCRenderer.h:
(CCRenderer):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):

Source/WebKit/chromium:

* tests/LayerRendererChromiumTest.cpp:
(TEST):

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

8 years ago[EFL][WK2] Fix timeout issues when debugging WebProcess.
commit-queue@webkit.org [Wed, 25 Jul 2012 19:10:15 +0000 (19:10 +0000)]
[EFL][WK2] Fix timeout issues when debugging WebProcess.
https://bugs.webkit.org/show_bug.cgi?id=92245

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-25
Reviewed by Dirk Pranke.

Fix timeout issues when debugging the WebProcess
under valgrind or gdb.

* Scripts/webkitpy/layout_tests/port/efl.py:
(EflPort.default_timeout_ms):
* WebKitTestRunner/efl/TestControllerEfl.cpp:
(WTR::TestController::platformInitialize):

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

8 years ago[Chromium-Android] NRWT driver should not restart between reftests
wangxianzhu@chromium.org [Wed, 25 Jul 2012 18:52:28 +0000 (18:52 +0000)]
[Chromium-Android] NRWT driver should not restart between reftests
https://bugs.webkit.org/show_bug.cgi?id=92267

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidDriver.start): Resets self._pixel_tests when the pixel_tests parameter changes.

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

8 years agoWeb Inspector: follow up to r123612, fixing CSS value suggest.
pfeldman@chromium.org [Wed, 25 Jul 2012 18:49:29 +0000 (18:49 +0000)]
Web Inspector: follow up to r123612, fixing CSS value suggest.

Not reviewed, minor JS fix.

* inspector/front-end/CSSCompletions.js:
(WebInspector.CSSCompletions):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertyTreeElement.prototype):

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

8 years agoAdd Mac results for media/controls-styling-strict.html.
bweinstein@apple.com [Wed, 25 Jul 2012 18:48:57 +0000 (18:48 +0000)]
Add Mac results for media/controls-styling-strict.html.

Rubber-stamped by Michael Saboff.

* platform/mac/media/controls-styling-strict-expected.txt: Added.

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

8 years agoUnreviewed build fix after r123624.
msaboff@apple.com [Wed, 25 Jul 2012 18:19:09 +0000 (18:19 +0000)]
Unreviewed build fix after r123624.

* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::clearGeolocationOverride):
Changed ASSERT_UNUSED() to UNUSED_PARAM().

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

8 years agoWeb inspector auto-completes "optimizequality" but then complains
pfeldman@chromium.org [Wed, 25 Jul 2012 18:16:18 +0000 (18:16 +0000)]
Web inspector auto-completes "optimizequality" but then complains
https://bugs.webkit.org/show_bug.cgi?id=92262

Reviewed by Timothy Hatcher.

Fixed optimizeSpeed, optimizeLegibility, geometricPrecision.

* inspector/front-end/CSSKeywordCompletions.js:

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

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=89114
bdakin@apple.com [Wed, 25 Jul 2012 18:15:17 +0000 (18:15 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=89114
REGRESSION (r112919): Setting scrollTop after setting display from none to block
fails
-and corresponding-
<rdar://problem/11656050>

Reviewed by Simon Fraser.

Source/WebCore:

ScrollAnimatorMac::immediateScrollTo() and ScrollAnimatorMac::immediateScrollBy()
both have an optimization in place so that they do not call
notifyPositionChanged() if the new scroll offset matches the ScrollAnimator's
cached m_currentPosX and m_currentPosY. So revision 112919 caused troubled with
this optimization because it allowed RenderLayers to restore a scrollOffset from
the Element if there is one cached there. This caused the RenderLayer to have a
scrollOffset that is improperly out-of-synch with the ScrollAnimator's
currentPosition (which will just be 0,0 since it is being re-created like the
RenderLayer). This fix makes sure they are in synch by calling
setCurrentPosition() on the ScrollAnimator when the cached position is non-zero.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):

LayoutTests:

* fast/overflow/setting-scrollTop-after-hide-show-expected.txt: Added.
* fast/overflow/setting-scrollTop-after-hide-show.html: Added.

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

8 years agoMake ElementAttributeData a variable-sized object to reduce memory use.
kling@webkit.org [Wed, 25 Jul 2012 18:14:13 +0000 (18:14 +0000)]
Make ElementAttributeData a variable-sized object to reduce memory use.
<http://webkit.org/b/88240>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Take advantage of the fact that we know at ElementAttributeData construction time how many attributes
it needs to accomodate and allocate exactly as much space as needed instead of using a Vector.
For elements that never have their attribute list mutated (the vast majority), this saves a lot of
memory and removes the indirection to Vector<Attribute>'s heap-allocated storage.

Introduced a mutability flag to ElementAttributeData and sprinkled assertions all over to make sure
that nothing tries to mutate an element with a raw attribute array.

When an Element's attribute(s) are mutated, we reconstruct the ElementAttributeData, this time using
a Vector as backing instead. This is triggered when calling Element::mutableAttributeData().

This reduces memory consumption by 3.2MB when viewing the full HTML5 spec at <http://whatwg.org/c/>.
That is a ~35% reduction in DOM attribute memory use.

Furthermore, that page ends up promoting 27% of the elements to mutable attribute storage due to dynamic
adding of "class" attributes. For more static pages, savings are even greater.

Also did away with ElementAttributeData::removeAttribute(name) and do separate index lookup where
needed. Not a big deal but avoids double lookup of attributes when removing them.

* dom/Element.cpp:
(WebCore::Element::detachAttribute):
(WebCore::Element::removeAttribute):
(WebCore::Element::attributes):
(WebCore::Element::setAttributeInternal):
(WebCore::Element::parserSetAttributes):
(WebCore::Element::hasEquivalentAttributes):
(WebCore::Element::setAttributeNode):
(WebCore::Element::removeAttributeNode):
(WebCore::Element::getAttributeNode):
(WebCore::Element::getAttributeNodeNS):
(WebCore::Element::hasAttribute):
(WebCore::Element::hasAttributeNS):
(WebCore::Element::cloneAttributesFromElement):

    Sprinkle const on ElementAttributeData* pointers.
    Switch to using mutableAttributeData() in code paths that modify attributes.

(WebCore::Element::normalizeAttributes):

    Cleaner iteration over attributes, I removed ElementAttributeData::attributeVector() since that
    was just incurring a bunch of extra Vector copying. Since ElementAttributeData already exposes
    length() and attributeItem(index), use those to iterate directly over the attributes.

(WebCore::Element::createMutableAttributeData):

    Added, converts existing ElementAttributeData to a mutable object. Otherwise creates a new
    ElementAttributeData (mutable and empty.)

* dom/Element.h:
(WebCore::Element::attributeData):
(WebCore::Element::updatedAttributeData):
(WebCore::Element::ensureAttributeData):
(WebCore::Element::ensureUpdatedAttributeData):

    Made all of these return "const ElementAttributeData*" to ensure at compile-time that nothing
    attempts to modify an ElementAttributeData that may be immutable.

    ensureUpdatedAttributeData() is still const, despite possibly calling mutableAttributeData().
    The goal of having methods be const is to prevent conversion from one ElementAttributeData
    object to another, so that pointers remain intact and no unnecessary work gets done.

(WebCore::Element::mutableAttributeData):

    Added, returns a guaranteed mutable ElementAttributeData* pointer.

* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::createImmutable):

    Creates a new ElementAttributeData tailored to fit the provided Vector<Attribute>.

(WebCore::ElementAttributeData::ElementAttributeData):

    Moved constructors out-of-line, getting too complex for header files.

    ElementAttributeData(const Vector<Attribute>&) creates an immutable ElementAttributeData
    containing the provided attributes in an array tacked onto the end of the object.

(WebCore::ElementAttributeData::~ElementAttributeData):

    Free the attribute vector if mutable.
    For immutable objects, manually invoke destructor on each Attribute object,
    since these won't be destroyed automatically by ~ElementAttributeData.

(WebCore::ElementAttributeData::attrIfExists):

(WebCore::ElementAttributeData::ensureAttr):
(WebCore::ElementAttributeData::setAttr):
(WebCore::ElementAttributeData::removeAttr):

    Make these const, as they should always have been- they don't affect the ElementAttributeData,
    only the global DOM Attr <-> ElementAttributeData mappings.

(WebCore::ElementAttributeData::ensureInlineStyle):
(WebCore::ElementAttributeData::ensureMutableInlineStyle):

    Sprinkle ASSERT(isMutable()). This doesn't mean that all Elements with inline styles automatically
    have mutable attribute data. There's still inlineStyle() for that, which may return null.
    These are only for use where you need a valid StylePropertySet*, even if there is no inline style
    attribute, e.g in editing code that wants to add style.

(WebCore::ElementAttributeData::updateInlineStyleAvoidingMutation):
(WebCore::ElementAttributeData::destroyInlineStyle):

    Make these const. While destroyInlineStyle() doesn't sound very const-y, immutable objects that
    contain a style attribute will have a valid inlineStyle() with that style data. This is just
    an interface for ~StyledElement to destroy the style object.
    It'd be nice to do that in ~ElementAttributeData(), but we need a StyledElement* pointer to
    clean up properly and we don't store one in this class.

(WebCore::ElementAttributeData::addAttribute):
(WebCore::ElementAttributeData::removeAttribute):
(WebCore::ElementAttributeData::clearAttributes):
(WebCore::ElementAttributeData::replaceAttribute):

    Sprinkle ASSERT(isMutable()).
    Always go straight for m_mutableAttributeVector since we know that's the storage being used.

(WebCore::ElementAttributeData::isEquivalent):
(WebCore::ElementAttributeData::detachAttrObjectsFromElement):
(WebCore::ElementAttributeData::getAttributeItemIndexSlowCase):
(WebCore::ElementAttributeData::removeAttribute):
(WebCore::ElementAttributeData::getAttributeItem):
(WebCore::ElementAttributeData::getAttributeItemIndex):

    Use length() and attributeItem(index) to iterate over the attributes.

(WebCore::ElementAttributeData::cloneDataFrom):

    Sprinkle ASSERT(isMutable()). Added a FIXME that cloning elements could create immutable
    attribute data. I'm not sure this optimization is worthwhile, as cloning elements is already
    a semi-rare occurrence.

    Updated code to handle both immutable and mutable source objects. This could

(WebCore::ElementAttributeData::getAttributeNode):

    Const correctness.

* dom/ElementAttributeData.h:
(ElementAttributeData):

    Turn attribute storage into what's effectively union { OwnPtr<Vector<Attribute>>; Attribute[]; }
    The new m_isMutable bit determines which union member should be used for access.

(WebCore::ElementAttributeData::create):
(WebCore::ElementAttributeData::createImmutable):

    Added createImmutable(const Vector<Attribute>&) as a complement to create().

(WebCore::ElementAttributeData::setClass):
(WebCore::ElementAttributeData::setIdForStyleResolution):
(WebCore::ElementAttributeData::inlineStyle):
(WebCore::ElementAttributeData::setAttributeStyle):

    Make these const, and their data member counterparts 'mutable'.
    An immutable ElementAttributeData object still has m_classNames, m_idForStyleResolution,
    m_inlineStyleDecl and m_attributeStyle.

(WebCore::ElementAttributeData::reportMemoryUsage):

    Updated for isMutable().

(WebCore::ElementAttributeData::makeMutable):

    Returns a mutable clone of itself.

(WebCore::ElementAttributeData::isEmpty):
(WebCore::ElementAttributeData::length):
(WebCore::ElementAttributeData::attributeItem):

    Check isMutable() to know how to access attribute storage.

* dom/StyledElement.cpp:
(WebCore::StyledElement::style):
(WebCore::StyledElement::setInlineStyleProperty):

    Simplify by using StyledElement::ensureInlineStyle().

(WebCore::StyledElement::classAttributeChanged):

    Use mutableAttributeData() if the attribute is being removed completely.
    In other cases, tiptoe around without causing the attribute data to go mutable.

(WebCore::StyledElement::removeInlineStyleProperty):

    Use mutableAttributeData() if/when actually removing something.

(WebCore::StyledElement::addSubresourceAttributeURLs):

    Const correctness.

* dom/StyledElement.h:
(WebCore::StyledElement::ensureInlineStyle):

    This now implies conversion to mutable attribute data. Used by codepaths that add/remove
    properties, so conversion is inevitable.

* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
(WebCore::HTMLConstructionSite::createHTMLElementFromSavedElement):
* svg/properties/SVGAnimatedPropertyMacros.h:
(WebCore::SVGSynchronizableAnimatedProperty::synchronize):

    Use mutableAttributeData() as appropriate.

* xml/parser/XMLDocumentParserQt.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):

    Const correctness.

LayoutTests:

Extended this test to cover the case where setAttributeNode() returns a lazily serialized value.

* fast/dom/attr-style-too-lazy-expected.txt:
* fast/dom/attr-style-too-lazy.html:

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

8 years agoUnreviewed, rolling out r123560.
atwilson@chromium.org [Wed, 25 Jul 2012 18:12:15 +0000 (18:12 +0000)]
Unreviewed, rolling out r123560.
http://trac.webkit.org/changeset/123560
https://bugs.webkit.org/show_bug.cgi?id=90321

Breaks chromium valgrind tests.

Source/WebCore:

* html/FTPDirectoryDocument.cpp:
(WebCore::FTPDirectoryDocumentParser::append):
* html/parser/HTMLEntityParser.cpp:
(WebCore::HTMLEntityParser::consumeNamedEntity):
* html/parser/HTMLParserIdioms.cpp:
(WebCore::stripLeadingAndTrailingHTMLSpaces):
* html/parser/HTMLSourceTracker.cpp:
(WebCore::HTMLSourceTracker::sourceForToken):
* loader/cache/CachedScript.cpp:
(WebCore::CachedScript::script):
* platform/text/SegmentedString.cpp:
(WebCore::SegmentedString::SegmentedString):
(WebCore::SegmentedString::operator=):
(WebCore::SegmentedString::clear):
(WebCore::SegmentedString::append):
(WebCore::SegmentedString::prepend):
(WebCore::SegmentedString::advanceSubstring):
(WebCore::SegmentedString::advance):
(WebCore::SegmentedString::advanceSlowCase):
(WebCore::SegmentedString::advanceAndUpdateLineNumberSlowCase):
* platform/text/SegmentedString.h:
(WebCore::SegmentedSubstring::SegmentedSubstring):
(WebCore::SegmentedSubstring::clear):
(WebCore::SegmentedSubstring::appendTo):
(SegmentedSubstring):
(WebCore::SegmentedString::SegmentedString):
(WebCore::SegmentedString::push):
(WebCore::SegmentedString::isEmpty):
(WebCore::SegmentedString::lookAhead):
(WebCore::SegmentedString::lookAheadIgnoringCase):
(WebCore::SegmentedString::advance):
(WebCore::SegmentedString::advanceAndASSERT):
(WebCore::SegmentedString::advanceAndASSERTIgnoringCase):
(WebCore::SegmentedString::advancePastNewlineAndUpdateLineNumber):
(SegmentedString):
(WebCore::SegmentedString::advancePastNonNewline):
(WebCore::SegmentedString::advanceAndUpdateLineNumber):
(WebCore::SegmentedString::operator*):
(WebCore::SegmentedString::operator->):
(WebCore::SegmentedString::current):
(WebCore::SegmentedString::equalsLiterally):
(WebCore::SegmentedString::equalsIgnoringCase):
(WebCore::SegmentedString::lookAheadInline):
(WebCore::SegmentedString::lookAheadSlowCase):
* xml/parser/CharacterReferenceParserInlineMethods.h:
(WebCore::consumeCharacterReference):
* xml/parser/MarkupTokenizerBase.h:
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::nextInputCharacter):
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::peek):
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::advance):

Source/WTF:

* wtf/text/WTFString.h:

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

8 years agoWeb Inspector: Geolocation override
kpiascik@rim.com [Wed, 25 Jul 2012 17:50:44 +0000 (17:50 +0000)]
Web Inspector: Geolocation override
https://bugs.webkit.org/show_bug.cgi?id=89365

Reviewed by Pavel Feldman.

Source/WebCore:

Re-added the m_page member variable for GeolocationController since
it's now being used by InspectorInstrumentaiton.

Added a way to override the GeolocationPosition and GeolocationError
using Web Inspector. Curretnly only PositionError can be set.

This will be hidden behind the experiments flag for now.

Tests: inspector/geolocation-error.html
       inspector/geolocation-success.html
       inspector/geolocation-watchPosition.html

* English.lproj/localizedStrings.js:
* Modules/geolocation/GeolocationController.cpp:
(WebCore::GeolocationController::GeolocationController):
(WebCore::GeolocationController::positionChanged):
* Modules/geolocation/GeolocationController.h:
(GeolocationController):
* inspector/Inspector.json:
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::overrideGeolocationPositionImpl):
* inspector/InspectorInstrumentation.h:
(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::overrideGeolocationPosition):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::setGeolocationOverride):
(WebCore):
(WebCore::InspectorPageAgent::clearGeolocationOverride):
(WebCore::InspectorPageAgent::canOverrideGeolocation):
(WebCore::InspectorPageAgent::overrideGeolocationPosition):
* inspector/InspectorPageAgent.h:
* inspector/front-end/Settings.js:
* inspector/front-end/SettingsScreen.js:
(WebInspector.UserAgentSettingsTab):
(WebInspector.UserAgentSettingsTab.prototype._createDeviceMetricsElement):
(WebInspector.UserAgentSettingsTab.prototype._onGeolocationOverrideCheckboxClicked):
(WebInspector.UserAgentSettingsTab.prototype._applyGeolocationUserInput):
(WebInspector.UserAgentSettingsTab.prototype._setGeolocationPosition.set if):
(WebInspector.UserAgentSettingsTab.prototype._setGeolocationPosition):
(WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement.createInput):
(WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement):
* inspector/front-end/UserAgentSupport.js:
(WebInspector.UserAgentSupport.GeolocationPosition):
(WebInspector.UserAgentSupport.GeolocationPosition.prototype.toSetting):
(WebInspector.UserAgentSupport.GeolocationPosition.parseSetting):
(WebInspector.UserAgentSupport.GeolocationPosition.parseUserInput):
(WebInspector.UserAgentSupport.GeolocationPosition.clearGeolocationOverride):
* inspector/front-end/inspector.js:
(WebInspector.doLoadedDone):

LayoutTests:

Added new tests.

* inspector/geolocation-error-expected.txt: Added.
* inspector/geolocation-error.html: Added.
* inspector/geolocation-success-expected.txt: Added.
* inspector/geolocation-success.html: Added.
* inspector/geolocation-watchPosition-expected.txt: Added.
* inspector/geolocation-watchPosition.html: Added.

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

8 years ago[chromium] Build fix for clang builds after r123628
shawnsingh@chromium.org [Wed, 25 Jul 2012 17:43:51 +0000 (17:43 +0000)]
[chromium] Build fix for clang builds after r123628
https://bugs.webkit.org/show_bug.cgi?id=92266

Reviewed by Adrienne Walker.

An un-used variable was causing build failures for clang builds
after the refactoring in r123628.  It is correct to simply remove
this value.

* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::calculateDrawTransformsInternal):

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

8 years agoSpeech JavaScript API: extract function from SpeechRecognitionResult::emma()
hans@chromium.org [Wed, 25 Jul 2012 17:41:03 +0000 (17:41 +0000)]
Speech JavaScript API: extract function from SpeechRecognitionResult::emma()
https://bugs.webkit.org/show_bug.cgi?id=92232

Reviewed by Adam Barth.

Extract code for creating emma-qualified names to a helper function.

Just a refactoring; covered by the existing test.

* Modules/speech/SpeechRecognitionResult.cpp:
(WebCore::emmaQualifiedName):
(WebCore):
(WebCore::SpeechRecognitionResult::emma):

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

8 years ago[Qt] css2.1/t* tests needs rebaseline after new testfonts
caio.oliveira@openbossa.org [Wed, 25 Jul 2012 17:39:24 +0000 (17:39 +0000)]
[Qt] css2.1/t* tests needs rebaseline after new testfonts
https://bugs.webkit.org/show_bug.cgi?id=91999

Unreviewed.

* platform/qt-5.0-wk1/Skipped:
* platform/qt-5.0-wk2/Skipped:
* platform/qt-5.0/Skipped:
* platform/qt-5.0/css2.1/t0805-c5519-brdr-r-01-e-expected.png: Removed.
* platform/qt-5.0/css2.1/t0805-c5519-brdr-r-01-e-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c414-flt-02-c-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c414-flt-03-c-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c414-flt-04-c-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c414-flt-fit-01-d-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5525-fltblck-00-d-ag-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5525-fltblck-01-d-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5525-flthw-00-c-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5525-fltwrap-00-b-expected.txt: Removed.
* platform/qt-5.0/css2.1/t0905-c5526-flthw-00-c-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t090501-c414-flt-01-b-expected.txt: Removed.
* platform/qt-5.0/css2.1/t090501-c414-flt-03-b-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t090501-c414-flt-ln-01-d-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t090501-c5525-flt-l-00-b-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t090501-c5525-flt-r-00-b-g-expected.txt: Removed.
* platform/qt/css2.1/t010403-shand-border-00-c-expected.png:
* platform/qt/css2.1/t010403-shand-border-00-c-expected.txt:
* platform/qt/css2.1/t010403-shand-font-00-b-expected.png:
* platform/qt/css2.1/t010403-shand-font-00-b-expected.txt:
* platform/qt/css2.1/t010403-shand-font-01-b-expected.png:
* platform/qt/css2.1/t010403-shand-font-01-b-expected.txt:
* platform/qt/css2.1/t010403-shand-font-02-b-expected.png:
* platform/qt/css2.1/t010403-shand-font-02-b-expected.txt:
* platform/qt/css2.1/t010403-shand-font-03-b-expected.png:
* platform/qt/css2.1/t010403-shand-font-03-b-expected.txt:
* platform/qt/css2.1/t050201-c12-grouping-00-b-expected.png:
* platform/qt/css2.1/t050201-c12-grouping-00-b-expected.txt:
* platform/qt/css2.1/t0505-c16-descendant-00-e-expected.png:
* platform/qt/css2.1/t0505-c16-descendant-00-e-expected.txt:
* platform/qt/css2.1/t0505-c16-descendant-01-e-expected.png:
* platform/qt/css2.1/t0505-c16-descendant-01-e-expected.txt:
* platform/qt/css2.1/t0505-c16-descendant-02-e-expected.png:
* platform/qt/css2.1/t0505-c16-descendant-02-e-expected.txt:
* platform/qt/css2.1/t050803-c14-classes-00-e-expected.png:
* platform/qt/css2.1/t050803-c14-classes-00-e-expected.txt:
* platform/qt/css2.1/t0509-c15-ids-00-a-expected.png:
* platform/qt/css2.1/t0509-c15-ids-00-a-expected.txt:
* platform/qt/css2.1/t0509-c15-ids-01-e-expected.png:
* platform/qt/css2.1/t0509-c15-ids-01-e-expected.txt:
* platform/qt/css2.1/t0509-id-sel-syntax-01-f-expected.png:
* platform/qt/css2.1/t0509-id-sel-syntax-01-f-expected.txt:
* platform/qt/css2.1/t0509-id-sel-syntax-02-b-expected.png:
* platform/qt/css2.1/t0509-id-sel-syntax-02-b-expected.txt:
* platform/qt/css2.1/t0510-c25-pseudo-elmnt-00-c-expected.png:
* platform/qt/css2.1/t0510-c25-pseudo-elmnt-00-c-expected.txt:
* platform/qt/css2.1/t0511-c21-pseud-anch-00-e-i-expected.png:
* platform/qt/css2.1/t0511-c21-pseud-anch-00-e-i-expected.txt:
* platform/qt/css2.1/t0511-c21-pseud-link-00-e-expected.png:
* platform/qt/css2.1/t0511-c21-pseud-link-00-e-expected.txt:
* platform/qt/css2.1/t0511-c21-pseud-link-01-e-expected.png:
* platform/qt/css2.1/t0511-c21-pseud-link-01-e-expected.txt:
* platform/qt/css2.1/t0511-c21-pseud-link-02-e-expected.png:
* platform/qt/css2.1/t0511-c21-pseud-link-02-e-expected.txt:
* platform/qt/css2.1/t0511-c21-pseud-link-03-e-expected.png:
* platform/qt/css2.1/t0511-c21-pseud-link-03-e-expected.txt:
* platform/qt/css2.1/t051103-c21-activ-ln-00-e-i-expected.png:
* platform/qt/css2.1/t051103-c21-activ-ln-00-e-i-expected.txt:
* platform/qt/css2.1/t051103-c21-focus-ln-00-e-i-expected.png:
* platform/qt/css2.1/t051103-c21-focus-ln-00-e-i-expected.txt:
* platform/qt/css2.1/t051103-c21-hover-ln-00-e-i-expected.png:
* platform/qt/css2.1/t051103-c21-hover-ln-00-e-i-expected.txt:
* platform/qt/css2.1/t051103-dom-hover-01-c-io-expected.png:
* platform/qt/css2.1/t051103-dom-hover-01-c-io-expected.txt:
* platform/qt/css2.1/t051103-dom-hover-02-c-io-expected.png:
* platform/qt/css2.1/t051103-dom-hover-02-c-io-expected.txt:
* platform/qt/css2.1/t051202-c24-first-lttr-00-b-expected.png:
* platform/qt/css2.1/t051202-c24-first-lttr-00-b-expected.txt:
* platform/qt/css2.1/t051202-c26-psudo-nest-00-c-expected.png:
* platform/qt/css2.1/t051202-c26-psudo-nest-00-c-expected.txt:
* platform/qt/css2.1/t0602-c13-inh-underlin-00-e-expected.png:
* platform/qt/css2.1/t0602-c13-inh-underlin-00-e-expected.txt:
* platform/qt/css2.1/t0602-c13-inheritance-00-e-expected.png:
* platform/qt/css2.1/t0602-c13-inheritance-00-e-expected.txt:
* platform/qt/css2.1/t0602-inherit-bdr-pad-b-00-expected.png:
* platform/qt/css2.1/t0602-inherit-bdr-pad-b-00-expected.txt:
* platform/qt/css2.1/t0603-c11-import-00-b-expected.png:
* platform/qt/css2.1/t0603-c11-import-00-b-expected.txt:
* platform/qt/css2.1/t060401-c32-cascading-00-b-expected.png:
* platform/qt/css2.1/t060401-c32-cascading-00-b-expected.txt:
* platform/qt/css2.1/t060402-c31-important-00-b-expected.png:
* platform/qt/css2.1/t060402-c31-important-00-b-expected.txt:
* platform/qt/css2.1/t060403-c21-pseu-cls-00-e-i-expected.png:
* platform/qt/css2.1/t060403-c21-pseu-cls-00-e-i-expected.txt:
* platform/qt/css2.1/t060403-c21-pseu-id-00-e-i-expected.png:
* platform/qt/css2.1/t060403-c21-pseu-id-00-e-i-expected.txt:
* platform/qt/css2.1/t09-c5526c-display-00-e-expected.png:
* platform/qt/css2.1/t09-c5526c-display-00-e-expected.txt:
* platform/qt/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.png:
* platform/qt/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-00-d-expected.png:
* platform/qt/css2.1/t0905-c414-flt-00-d-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-01-d-g-expected.png:
* platform/qt/css2.1/t0905-c414-flt-01-d-g-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-02-c-expected.png:
* platform/qt/css2.1/t0905-c414-flt-02-c-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-03-c-expected.png:
* platform/qt/css2.1/t0905-c414-flt-03-c-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-04-c-expected.png:
* platform/qt/css2.1/t0905-c414-flt-04-c-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-fit-00-d-expected.png:
* platform/qt/css2.1/t0905-c414-flt-fit-00-d-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-fit-01-d-g-expected.png:
* platform/qt/css2.1/t0905-c414-flt-fit-01-d-g-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-wrap-00-e-expected.png:
* platform/qt/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
* platform/qt/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png:
* platform/qt/css2.1/t0905-c414-flt-wrap-01-d-g-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltblck-00-d-ag-expected.png:
* platform/qt/css2.1/t0905-c5525-fltblck-00-d-ag-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltblck-01-d-expected.png:
* platform/qt/css2.1/t0905-c5525-fltblck-01-d-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltclr-00-c-ag-expected.png:
* platform/qt/css2.1/t0905-c5525-fltclr-00-c-ag-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltcont-00-d-g-expected.png:
* platform/qt/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
* platform/qt/css2.1/t0905-c5525-flthw-00-c-g-expected.png:
* platform/qt/css2.1/t0905-c5525-flthw-00-c-g-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltinln-00-c-ag-expected.png:
* platform/qt/css2.1/t0905-c5525-fltinln-00-c-ag-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltmrgn-00-c-ag-expected.png:
* platform/qt/css2.1/t0905-c5525-fltmrgn-00-c-ag-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltmult-00-d-g-expected.png:
* platform/qt/css2.1/t0905-c5525-fltmult-00-d-g-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltwidth-00-c-g-expected.png:
* platform/qt/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltwidth-01-c-g-expected.png:
* platform/qt/css2.1/t0905-c5525-fltwidth-01-c-g-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltwidth-02-c-g-expected.png:
* platform/qt/css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltwidth-03-c-g-expected.png:
* platform/qt/css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
* platform/qt/css2.1/t0905-c5525-fltwrap-00-b-expected.png:
* platform/qt/css2.1/t0905-c5525-fltwrap-00-b-expected.txt:
* platform/qt/css2.1/t0905-c5526-fltclr-00-c-ag-expected.png:
* platform/qt/css2.1/t0905-c5526-fltclr-00-c-ag-expected.txt:
* platform/qt/css2.1/t0905-c5526-flthw-00-c-g-expected.png:
* platform/qt/css2.1/t0905-c5526-flthw-00-c-g-expected.txt:
* platform/qt/css2.1/t090501-c414-flt-00-d-expected.png:
* platform/qt/css2.1/t090501-c414-flt-00-d-expected.txt:
* platform/qt/css2.1/t090501-c414-flt-01-b-expected.png:
* platform/qt/css2.1/t090501-c414-flt-01-b-expected.txt:
* platform/qt/css2.1/t090501-c414-flt-02-d-g-expected.png:
* platform/qt/css2.1/t090501-c414-flt-02-d-g-expected.txt:
* platform/qt/css2.1/t090501-c414-flt-03-b-g-expected.png:
* platform/qt/css2.1/t090501-c414-flt-03-b-g-expected.txt:
* platform/qt/css2.1/t090501-c414-flt-ln-00-d-expected.png:
* platform/qt/css2.1/t090501-c414-flt-ln-00-d-expected.txt:
* platform/qt/css2.1/t090501-c414-flt-ln-01-d-g-expected.png:
* platform/qt/css2.1/t090501-c414-flt-ln-01-d-g-expected.txt:
* platform/qt/css2.1/t090501-c414-flt-ln-02-d-expected.png:
* platform/qt/css2.1/t090501-c414-flt-ln-02-d-expected.txt:
* platform/qt/css2.1/t090501-c414-flt-ln-03-d-expected.png:
* platform/qt/css2.1/t090501-c414-flt-ln-03-d-expected.txt:
* platform/qt/css2.1/t090501-c5525-flt-l-00-b-g-expected.png:
* platform/qt/css2.1/t090501-c5525-flt-l-00-b-g-expected.txt:
* platform/qt/css2.1/t090501-c5525-flt-r-00-b-g-expected.png:
* platform/qt/css2.1/t090501-c5525-flt-r-00-b-g-expected.txt:
* platform/qt/css2.1/t1503-c522-font-family-00-b-expected.png:
* platform/qt/css2.1/t1503-c522-font-family-00-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-03-b-expected.png:
* platform/qt/css2.1/t1508-c527-font-03-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-06-b-expected.png:
* platform/qt/css2.1/t1508-c527-font-06-b-expected.txt:

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

8 years ago Chinese IM receives incorrect/duplicated key events in text fields in webpage...
ap@apple.com [Wed, 25 Jul 2012 17:22:47 +0000 (17:22 +0000)]
    Chinese IM receives incorrect/duplicated key events in text fields in webpages in Safari.
        https://bugs.webkit.org/show_bug.cgi?id=89048
        <rdar://problem/11786384>

        Reviewed by Andreas Kling.

        Cannot test text input from UI process side.

        Stop relying on IPC to handle key events in order. There are too many complications
        where out of order delivery is performed. Instead, queue the events at UI process
        side.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::handleKeyboardEvent):
        (WebKit::WebPageProxy::didReceiveEvent):

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

8 years ago[BlackBerry] clock_gettime() in BackingStore.cpp should use CLOCK_MONOTONIC
zhajiang@rim.com [Wed, 25 Jul 2012 17:21:57 +0000 (17:21 +0000)]
[BlackBerry] clock_gettime() in BackingStore.cpp should use CLOCK_MONOTONIC
https://bugs.webkit.org/show_bug.cgi?id=91898

Reviewed by Yong Li.
Patch by Jacky Jiang  <zhajiang@rim.com>

Let pthread condition variable in BackingStore.cpp use monotonic clock
to fix a regression caused by r123266.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::BackingStorePrivate):

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

8 years ago[chromium] Unify compositor quadTransform/drawTransform/originTransform
enne@google.com [Wed, 25 Jul 2012 17:07:29 +0000 (17:07 +0000)]
[chromium] Unify compositor quadTransform/drawTransform/originTransform
https://bugs.webkit.org/show_bug.cgi?id=91417

Reviewed by Kenneth Russell.

Source/WebCore:

drawTransform used to operate on centered layer rects. To unify quad
transforms, draw transforms, and origin transforms, make draw
transforms operate on content rects with the origin in the top left.

This essentially eliminates the need for surface origin transforms,
which will be eliminated in a future patch.

Also, remove the unused CCLayerImpl::getDrawRect function.

No-op refactoring. Tested by existing tests.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawRenderPassQuad):
* platform/graphics/chromium/RenderSurfaceChromium.cpp:
(WebCore::RenderSurfaceChromium::drawableContentRect):
* platform/graphics/chromium/cc/CCDamageTracker.cpp:
(WebCore::CCDamageTracker::extendDamageForLayer):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::createSharedQuadState):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerSorter.cpp:
(WebCore::CCLayerSorter::LayerShape::LayerShape):
(WebCore::CCLayerSorter::createGraphNodes):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::calculateVisibleContentRect):
(WebCore::calculateDrawTransformsInternal):
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
(WebCore::::markOccludedBehindLayer):
(WebCore::::occluded):
(WebCore::::unoccludedContentRect):
* platform/graphics/chromium/cc/CCRenderPass.cpp:
(WebCore::CCRenderPass::appendQuadsToFillScreen):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::drawableContentRect):

Source/WebKit/chromium:

Clean up tests to refer to the new draw transform semantics.

* tests/CCDamageTrackerTest.cpp:
(WebKitTests::createTestTreeWithOneSurface):
(WebKitTests::createTestTreeWithTwoSurfaces):
(WebKitTests::TEST_F):
* tests/CCLayerSorterTest.cpp:
* tests/CCLayerTreeHostCommonTest.cpp:
* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestDeviceScaleFactorScalesViewportAndLayers::commitCompleteOnCCThread):
* tests/CCQuadCullerTest.cpp:
* tests/TiledLayerChromiumTest.cpp:

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

8 years agoMediaStream API: Update MediaStreamTrack to match the specification
tommyw@google.com [Wed, 25 Jul 2012 16:52:56 +0000 (16:52 +0000)]
MediaStream API: Update MediaStreamTrack to match the specification
https://bugs.webkit.org/show_bug.cgi?id=90180

Reviewed by Adam Barth.

Source/Platform:

* chromium/public/WebMediaStreamDescriptor.h:
(WebMediaStreamDescriptor):
* chromium/public/WebMediaStreamSource.h:
(WebMediaStreamSource):

Source/WebCore:

MediaStreamTracks are now required to show the status of the underlying source,
and trigger events when that status changes.

Test: fast/mediastream/MediaStreamTrack.html

* GNUmakefile.list.am:
* Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::addTrack):
* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::create):
(WebCore::MediaStreamTrack::MediaStreamTrack):
(WebCore::MediaStreamTrack::~MediaStreamTrack):
(WebCore::MediaStreamTrack::setEnabled):
(WebCore::MediaStreamTrack::readyState):
(WebCore):
(WebCore::MediaStreamTrack::sourceChangedState):
(WebCore::MediaStreamTrack::stop):
(WebCore::MediaStreamTrack::interfaceName):
(WebCore::MediaStreamTrack::scriptExecutionContext):
(WebCore::MediaStreamTrack::eventTargetData):
(WebCore::MediaStreamTrack::ensureEventTargetData):
* Modules/mediastream/MediaStreamTrack.h:
* Modules/mediastream/MediaStreamTrack.idl:
* WebCore.gypi:
* dom/EventNames.h:
(WebCore):
* dom/EventTargetFactory.in:
* platform/chromium/support/WebMediaStreamDescriptor.cpp:
* platform/chromium/support/WebMediaStreamSource.cpp:
(WebKit::WebMediaStreamSource::setReadyState):
(WebKit):
(WebKit::WebMediaStreamSource::readyState):
* platform/mediastream/MediaStreamSource.cpp: Copied from Source/WebCore/platform/mediastream/MediaStreamSource.h.
(WebCore):
(WebCore::MediaStreamSource::create):
(WebCore::MediaStreamSource::MediaStreamSource):
(WebCore::MediaStreamSource::setReadyState):
(WebCore::MediaStreamSource::addObserver):
(WebCore::MediaStreamSource::removeObserver):
* platform/mediastream/MediaStreamSource.h:
(Observer):
(WebCore::MediaStreamSource::Observer::~Observer):
(MediaStreamSource):
(WebCore::MediaStreamSource::readyState):
* platform/mediastream/chromium/MediaStreamCenterChromium.cpp:
(WebCore::MediaStreamCenterChromium::queryMediaStreamSources):
(WebCore::MediaStreamCenterChromium::didCreateMediaStream):

Tools:

Adding a Mock WebMediaStreamCenter to enable better LayoutTests.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/MockWebKitPlatformSupport.cpp:
(MockWebKitPlatformSupport::createMediaStreamCenter):
* DumpRenderTree/chromium/MockWebMediaStreamCenter.cpp: Added.
(WebKit):
(WebKit::MockWebMediaStreamCenter::MockWebMediaStreamCenter):
(WebKit::MockWebMediaStreamCenter::queryMediaStreamSources):
(WebKit::MockWebMediaStreamCenter::didEnableMediaStreamTrack):
(WebKit::MockWebMediaStreamCenter::didDisableMediaStreamTrack):
(WebKit::MockWebMediaStreamCenter::didStopLocalMediaStream):
(WebKit::MockWebMediaStreamCenter::didCreateMediaStream):
(WebKit::MockWebMediaStreamCenter::constructSDP):
* DumpRenderTree/chromium/MockWebMediaStreamCenter.h: Copied from Tools/DumpRenderTree/chromium/MockWebKitPlatformSupport.cpp.
(WebKit):
(MockWebMediaStreamCenter):
(WebKit::MockWebMediaStreamCenter::MockWebMediaStreamCenter):

LayoutTests:

* fast/mediastream/MediaStreamTrack-expected.txt: Added.
* fast/mediastream/MediaStreamTrack.html: Added.

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

8 years agoIncorrect rounding in ceiledLayoutUnit and roundedLayoutUnit.
allan.jensen@nokia.com [Wed, 25 Jul 2012 16:45:17 +0000 (16:45 +0000)]
Incorrect rounding in ceiledLayoutUnit and roundedLayoutUnit.
https://bugs.webkit.org/show_bug.cgi?id=91061

Reviewed by Adam Barth.

The two functions are currently both returning the flooredLayoutUnit when subpixel
layout is enabled. This patch changes them to return the correct fractional rounded
value.

* platform/FractionalLayoutUnit.h:
(WebCore::FractionalLayoutUnit::fromFloatCeil):
(FractionalLayoutUnit):
(WebCore::FractionalLayoutUnit::fromFloatRound):
* rendering/LayoutTypes.h:
(WebCore::roundedLayoutUnit):
(WebCore::ceiledLayoutUnit):
* rendering/RenderBlock.cpp:
(WebCore::updatePreferredWidth):

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

8 years agoAdd *explicit* keyword to constructors in WebCore/platform
gyuyoung.kim@samsung.com [Wed, 25 Jul 2012 16:13:52 +0000 (16:13 +0000)]
Add *explicit* keyword to constructors in WebCore/platform
https://bugs.webkit.org/show_bug.cgi?id=92238

Reviewed by Kentaro Hara.

As a step to let *explicit* keyword add to constructors which have a parameter,
*explicit* keyword is added to Source/WebCore/platform in order to avoid implicit
type conversion.

Some files in platform directory can't use explicit keyword because of build breaks.

No new tests. Covered by existing tests.

* platform/AutodrainedPool.h:
(AutodrainedPool):
* platform/ContentType.h:
(ContentType):
* platform/ContextMenu.h:
(ContextMenu):
* platform/ContextMenuItem.h:
(ContextMenuItem):
* platform/Cursor.h:
(WebCore::SharedCursor::SharedCursor):
(Cursor):
* platform/KURL.h:
(WebCore::KURL::KURL):
(KURL):
* platform/KURLGooglePrivate.h:
(KURLGooglePrivate):
* platform/PODRedBlackTree.h:
(WebCore::PODRedBlackTree::PODRedBlackTree):
* platform/Pasteboard.h:
(Pasteboard):
* platform/PlatformEvent.h:
(WebCore::PlatformEvent::PlatformEvent):
* platform/PlatformKeyboardEvent.h:
(PlatformKeyboardEvent):
* platform/PlatformMouseEvent.h:
(PlatformMouseEvent):
* platform/PlatformPasteboard.h:
(PlatformPasteboard):
* platform/PlatformTouchEvent.h:
(PlatformTouchEvent):
* platform/PlatformWheelEvent.h:
(PlatformWheelEvent):
* platform/RunLoop.h:
(TimerBase):
* platform/ScrollAnimator.h:
(ScrollAnimator):
* platform/ScrollAnimatorNone.h:
(ScrollAnimatorNone):
* platform/SharedBuffer.h:
(SharedBuffer):
* platform/WheelFlingPlatformGestureCurve.h:
(WheelFlingPlatformGestureCurve):
* platform/Widget.h:
(Widget):

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

8 years agoNodesFromRect and area-based hit-testing can not handle CSS transforms.
allan.jensen@nokia.com [Wed, 25 Jul 2012 16:09:53 +0000 (16:09 +0000)]
NodesFromRect and area-based hit-testing can not handle CSS transforms.
https://bugs.webkit.org/show_bug.cgi?id=85792

Reviewed by Eric Seidel.

Source/WebCore:

To support the combination of CSS transforms and rect based hit testing,
we need to test against the transformed rect, instead of the original rect.

This patch makes HitTestPoint store the exact transformed FloatPoint and
FloatQuad, and modifies the intersection methods so that they will use a
new FloatQuad based intersection when transforms requires it.

Tests: fast/dom/nodesFromRect/nodesFromRect-rotate.html
       fast/dom/nodesFromRect/nodesFromRect-scale.html

* platform/graphics/FloatQuad.cpp:
(WebCore::determinant):
(WebCore::rightMostCornerToVector):
(WebCore::FloatQuad::intersectsRect):
(WebCore::FloatQuad::isCounterclockwise):
* platform/graphics/FloatQuad.h:
(FloatQuad):
* rendering/HitTestResult.cpp:
(WebCore::HitTestPoint::HitTestPoint):
(WebCore::HitTestPoint::operator=):
(WebCore::HitTestPoint::move):
(WebCore::HitTestPoint::intersectsRect):
(WebCore::HitTestPoint::intersects):
* rendering/HitTestResult.h:
(HitTestPoint):
(WebCore::HitTestPoint::isRectilinear):
(WebCore::HitTestPoint::transformedPoint):
(WebCore::HitTestPoint::transformedRect):
* rendering/HitTestingTransformState.cpp:
(WebCore::HitTestingTransformState::flattenWithTransform):
(WebCore::HitTestingTransformState::mappedArea):
(WebCore::HitTestingTransformState::boundsOfMappedArea):
* rendering/HitTestingTransformState.h:
(WebCore::HitTestingTransformState::create):
(WebCore::HitTestingTransformState::HitTestingTransformState):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::hitTestRegion):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::createLocalTransformState):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestChildLayerColumns):
* rendering/RenderLayer.h:
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::nodeAtFloatPoint):

LayoutTests:

Adds nodesFromRect tests that tests the API under the CSS transforms
scale and rotate.

* fast/dom/nodesFromRect/nodesFromRect-rotate-expected.txt: Added.
* fast/dom/nodesFromRect/nodesFromRect-rotate.html: Added.
* fast/dom/nodesFromRect/nodesFromRect-scale-expected.txt: Added.
* fast/dom/nodesFromRect/nodesFromRect-scale.html: Added.

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

8 years agoAdd HTMLStackItem.h to project files
commit-queue@webkit.org [Wed, 25 Jul 2012 15:51:26 +0000 (15:51 +0000)]
Add HTMLStackItem.h to project files
https://bugs.webkit.org/show_bug.cgi?id=92221

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-07-25
Reviewed by Adam Barth.

Added HTMLStackItem.h introduced in r123399 to project files.

Project file changes only, no change in behavior thus no new tests.

* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:

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

8 years ago[BlackBerry] Add "SelectAll" to WebPage
commit-queue@webkit.org [Wed, 25 Jul 2012 15:40:04 +0000 (15:40 +0000)]
[BlackBerry] Add "SelectAll" to WebPage
https://bugs.webkit.org/show_bug.cgi?id=92246

Patch by Andy Chen <andchen@rim.com> on 2012-07-25
Reviewed by Antonio Gomes.

Add "Select All" editor command to WebPage.
Internally reviewed by Mike Fenton.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::selectAll):
(WebKit):
* Api/WebPage.h:
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::selectAll):
(WebKit):
* WebKitSupport/InputHandler.h:

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

8 years agoUnreviewed, rolling out r123606.
commit-queue@webkit.org [Wed, 25 Jul 2012 15:14:32 +0000 (15:14 +0000)]
Unreviewed, rolling out r123606.
http://trac.webkit.org/changeset/123606
https://bugs.webkit.org/show_bug.cgi?id=92247

broke Windows build of Chromium (Requested by tomhudson on
#webkit).

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

.:

* ManualTests/forms/color-suggestion-picker.html: Removed.

Source/WebCore:

* Resources/colorSuggestionPicker.css: Removed.
* Resources/colorSuggestionPicker.js: Removed.
* WebCore.gyp/WebCore.gyp:

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

8 years ago[Qt] css2.1/t1* tests needs rebaseline after new testfonts
caio.oliveira@openbossa.org [Wed, 25 Jul 2012 15:14:25 +0000 (15:14 +0000)]
[Qt] css2.1/t1* tests needs rebaseline after new testfonts
https://bugs.webkit.org/show_bug.cgi?id=92250

Unreviewed.

* platform/qt-5.0-wk2/Skipped:
* platform/qt-5.0/Skipped:
* platform/qt-5.0/css2.1/t100304-c43-rpl-bbx-01-d-g-expected.txt: Removed.
* platform/qt-5.0/css2.1/t1202-counter-03-b-expected.txt: Removed.
* platform/qt-5.0/css2.1/t1202-counter-04-b-expected.txt: Removed.
* platform/qt-5.0/css2.1/t1202-counters-03-b-expected.txt: Removed.
* platform/qt-5.0/css2.1/t1205-c566-list-stl-01-c-g-expected.txt: Removed.
* platform/qt/css2.1/t1001-abs-pos-cb-01-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-01-b-expected.txt:
* platform/qt/css2.1/t1001-abs-pos-cb-02-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-02-b-expected.txt:
* platform/qt/css2.1/t1001-abs-pos-cb-03-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-03-b-expected.txt:
* platform/qt/css2.1/t1001-abs-pos-cb-04-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-04-b-expected.txt:
* platform/qt/css2.1/t1001-abs-pos-cb-05-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-05-b-expected.txt:
* platform/qt/css2.1/t1001-abs-pos-cb-06-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-06-b-expected.txt:
* platform/qt/css2.1/t1001-abs-pos-cb-07-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-07-b-expected.txt:
* platform/qt/css2.1/t1001-abs-pos-cb-08-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-08-b-expected.txt:
* platform/qt/css2.1/t1001-abs-pos-cb-09-b-expected.png:
* platform/qt/css2.1/t1001-abs-pos-cb-09-b-expected.txt:
* platform/qt/css2.1/t1002-c5523-width-00-b-g-expected.png:
* platform/qt/css2.1/t1002-c5523-width-00-b-g-expected.txt:
* platform/qt/css2.1/t1002-c5523-width-01-b-g-expected.png:
* platform/qt/css2.1/t1002-c5523-width-01-b-g-expected.txt:
* platform/qt/css2.1/t1002-c5523-width-02-b-g-expected.png:
* platform/qt/css2.1/t1002-c5523-width-02-b-g-expected.txt:
* platform/qt/css2.1/t100303-c412-blockw-00-d-ag-expected.png:
* platform/qt/css2.1/t100303-c412-blockw-00-d-ag-expected.txt:
* platform/qt/css2.1/t100304-c43-rpl-bbx-00-d-g-expected.png:
* platform/qt/css2.1/t100304-c43-rpl-bbx-00-d-g-expected.txt:
* platform/qt/css2.1/t100304-c43-rpl-bbx-01-d-g-expected.png:
* platform/qt/css2.1/t100304-c43-rpl-bbx-01-d-g-expected.txt:
* platform/qt/css2.1/t1004-c43-rpl-bbx-00-d-ag-expected.png:
* platform/qt/css2.1/t1004-c43-rpl-bbx-00-d-ag-expected.txt:
* platform/qt/css2.1/t1004-c5524-width-00-b-g-expected.png:
* platform/qt/css2.1/t1004-c5524-width-00-b-g-expected.txt:
* platform/qt/css2.1/t1005-c5524-width-00-b-g-expected.png:
* platform/qt/css2.1/t1005-c5524-width-00-b-g-expected.txt:
* platform/qt/css2.1/t1005-c5524-width-01-b-g-expected.png:
* platform/qt/css2.1/t1005-c5524-width-01-b-g-expected.txt:
* platform/qt/css2.1/t1008-c44-ln-box-00-d-ag-expected.png:
* platform/qt/css2.1/t1008-c44-ln-box-00-d-ag-expected.txt:
* platform/qt/css2.1/t1008-c44-ln-box-01-d-ag-expected.png:
* platform/qt/css2.1/t1008-c44-ln-box-01-d-ag-expected.txt:
* platform/qt/css2.1/t1008-c44-ln-box-03-d-ag-expected.png:
* platform/qt/css2.1/t1008-c44-ln-box-03-d-ag-expected.txt:
* platform/qt/css2.1/t100801-c42-ibx-ht-00-d-a-expected.png:
* platform/qt/css2.1/t100801-c42-ibx-ht-00-d-a-expected.txt:
* platform/qt/css2.1/t100801-c544-valgn-00-a-ag-expected.png:
* platform/qt/css2.1/t100801-c544-valgn-00-a-ag-expected.txt:
* platform/qt/css2.1/t100801-c544-valgn-02-d-agi-expected.png:
* platform/qt/css2.1/t100801-c544-valgn-02-d-agi-expected.txt:
* platform/qt/css2.1/t100801-c544-valgn-03-d-agi-expected.png:
* platform/qt/css2.1/t100801-c544-valgn-03-d-agi-expected.txt:
* platform/qt/css2.1/t100801-c544-valgn-04-d-agi-expected.png:
* platform/qt/css2.1/t100801-c544-valgn-04-d-agi-expected.txt:
* platform/qt/css2.1/t100801-c548-leadin-00-d-a-expected.png:
* platform/qt/css2.1/t100801-c548-leadin-00-d-a-expected.txt:
* platform/qt/css2.1/t100801-c548-ln-ht-00-c-a-expected.png:
* platform/qt/css2.1/t100801-c548-ln-ht-00-c-a-expected.txt:
* platform/qt/css2.1/t100801-c548-ln-ht-01-b-ag-expected.png: Removed.
* platform/qt/css2.1/t100801-c548-ln-ht-01-b-ag-expected.txt: Removed.
* platform/qt/css2.1/t100801-c548-ln-ht-03-d-ag-expected.png:
* platform/qt/css2.1/t100801-c548-ln-ht-03-d-ag-expected.txt:
* platform/qt/css2.1/t100801-c548-ln-ht-04-d-ag-expected.png:
* platform/qt/css2.1/t100801-c548-ln-ht-04-d-ag-expected.txt:
* platform/qt/css2.1/t1202-counter-00-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-00-b-expected.txt:
* platform/qt/css2.1/t1202-counter-01-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-01-b-expected.txt:
* platform/qt/css2.1/t1202-counter-02-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-02-b-expected.txt:
* platform/qt/css2.1/t1202-counter-03-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-03-b-expected.txt:
* platform/qt/css2.1/t1202-counter-04-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-04-b-expected.txt:
* platform/qt/css2.1/t1202-counter-05-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-05-b-expected.txt:
* platform/qt/css2.1/t1202-counter-06-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-06-b-expected.txt:
* platform/qt/css2.1/t1202-counter-07-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-07-b-expected.txt:
* platform/qt/css2.1/t1202-counter-08-b-expected.png:
* platform/qt/css2.1/t1202-counter-08-b-expected.txt:
* platform/qt/css2.1/t1202-counter-11-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-11-b-expected.txt:
* platform/qt/css2.1/t1202-counter-12-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-12-b-expected.txt:
* platform/qt/css2.1/t1202-counter-13-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-13-b-expected.txt:
* platform/qt/css2.1/t1202-counter-14-b-expected.png: Added.
* platform/qt/css2.1/t1202-counter-14-b-expected.txt:
* platform/qt/css2.1/t1202-counter-16-f-expected.png: Added.
* platform/qt/css2.1/t1202-counter-16-f-expected.txt:
* platform/qt/css2.1/t1202-counters-00-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-00-b-expected.txt:
* platform/qt/css2.1/t1202-counters-01-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-01-b-expected.txt:
* platform/qt/css2.1/t1202-counters-02-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-02-b-expected.txt:
* platform/qt/css2.1/t1202-counters-03-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-03-b-expected.txt:
* platform/qt/css2.1/t1202-counters-05-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-05-b-expected.txt:
* platform/qt/css2.1/t1202-counters-06-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-06-b-expected.txt:
* platform/qt/css2.1/t1202-counters-07-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-07-b-expected.txt:
* platform/qt/css2.1/t1202-counters-08-b-expected.png:
* platform/qt/css2.1/t1202-counters-08-b-expected.txt:
* platform/qt/css2.1/t1202-counters-11-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-11-b-expected.txt:
* platform/qt/css2.1/t1202-counters-12-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-12-b-expected.txt:
* platform/qt/css2.1/t1202-counters-13-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-13-b-expected.txt:
* platform/qt/css2.1/t1202-counters-14-b-expected.png: Added.
* platform/qt/css2.1/t1202-counters-14-b-expected.txt:
* platform/qt/css2.1/t1202-counters-16-c-expected.png: Added.
* platform/qt/css2.1/t1202-counters-16-c-expected.txt:
* platform/qt/css2.1/t1202-counters-17-d-expected.png: Added.
* platform/qt/css2.1/t1202-counters-17-d-expected.txt:
* platform/qt/css2.1/t1202-counters-18-f-expected.png: Added.
* platform/qt/css2.1/t1202-counters-18-f-expected.txt:
* platform/qt/css2.1/t1204-implied-00-b-expected.png:
* platform/qt/css2.1/t1204-implied-00-b-expected.txt:
* platform/qt/css2.1/t1204-implied-01-c-expected.png:
* platform/qt/css2.1/t1204-implied-01-c-expected.txt:
* platform/qt/css2.1/t1204-implied-02-d-expected.png:
* platform/qt/css2.1/t1204-implied-02-d-expected.txt:
* platform/qt/css2.1/t1204-multiple-00-c-expected.png:
* platform/qt/css2.1/t1204-multiple-00-c-expected.txt:
* platform/qt/css2.1/t1204-multiple-01-c-expected.png:
* platform/qt/css2.1/t1204-multiple-01-c-expected.txt:
* platform/qt/css2.1/t1204-order-00-c-expected.png:
* platform/qt/css2.1/t1204-order-00-c-expected.txt:
* platform/qt/css2.1/t1204-order-01-d-expected.png:
* platform/qt/css2.1/t1204-order-01-d-expected.txt:
* platform/qt/css2.1/t1204-root-e-expected.png:
* platform/qt/css2.1/t1204-root-e-expected.txt:
* platform/qt/css2.1/t120401-scope-00-b-expected.png:
* platform/qt/css2.1/t120401-scope-00-b-expected.txt:
* platform/qt/css2.1/t120401-scope-01-c-expected.png:
* platform/qt/css2.1/t120401-scope-01-c-expected.txt:
* platform/qt/css2.1/t120401-scope-02-c-expected.png:
* platform/qt/css2.1/t120401-scope-02-c-expected.txt:
* platform/qt/css2.1/t120401-scope-03-c-expected.png:
* platform/qt/css2.1/t120401-scope-03-c-expected.txt:
* platform/qt/css2.1/t120401-scope-04-d-expected.png:
* platform/qt/css2.1/t120401-scope-04-d-expected.txt:
* platform/qt/css2.1/t120403-content-none-00-c-expected.png:
* platform/qt/css2.1/t120403-content-none-00-c-expected.txt:
* platform/qt/css2.1/t120403-display-none-00-c-expected.png:
* platform/qt/css2.1/t120403-display-none-00-c-expected.txt:
* platform/qt/css2.1/t120403-visibility-00-c-expected.png:
* platform/qt/css2.1/t120403-visibility-00-c-expected.txt:
* platform/qt/css2.1/t1205-c561-list-displ-00-b-expected.png: Added.
* platform/qt/css2.1/t1205-c561-list-displ-00-b-expected.txt:
* platform/qt/css2.1/t1205-c563-list-type-00-b-expected.png: Added.
* platform/qt/css2.1/t1205-c563-list-type-00-b-expected.txt:
* platform/qt/css2.1/t1205-c563-list-type-01-b-expected.png: Added.
* platform/qt/css2.1/t1205-c563-list-type-01-b-expected.txt:
* platform/qt/css2.1/t1205-c564-list-img-00-b-g-expected.png: Added.
* platform/qt/css2.1/t1205-c564-list-img-00-b-g-expected.txt:
* platform/qt/css2.1/t1205-c565-list-pos-00-b-expected.png: Added.
* platform/qt/css2.1/t1205-c565-list-pos-00-b-expected.txt:
* platform/qt/css2.1/t1205-c566-list-stl-00-e-ag-expected.png: Added.
* platform/qt/css2.1/t1205-c566-list-stl-00-e-ag-expected.txt:
* platform/qt/css2.1/t1205-c566-list-stl-01-c-g-expected.png: Added.
* platform/qt/css2.1/t1205-c566-list-stl-01-c-g-expected.txt:
* platform/qt/css2.1/t1401-c531-color-00-a-expected.png:
* platform/qt/css2.1/t1401-c531-color-00-a-expected.txt:
* platform/qt/css2.1/t1402-c45-bg-canvas-00-b-expected.png:
* platform/qt/css2.1/t1402-c45-bg-canvas-00-b-expected.txt:
* platform/qt/css2.1/t140201-c532-bgcolor-00-a-expected.png: Added.
* platform/qt/css2.1/t140201-c532-bgcolor-00-a-expected.txt:
* platform/qt/css2.1/t140201-c532-bgcolor-01-b-expected.png: Added.
* platform/qt/css2.1/t140201-c532-bgcolor-01-b-expected.txt:
* platform/qt/css2.1/t140201-c533-bgimage-00-a-expected.png: Added.
* platform/qt/css2.1/t140201-c533-bgimage-00-a-expected.txt:
* platform/qt/css2.1/t140201-c533-bgimage-01-b-g-expected.png: Added.
* platform/qt/css2.1/t140201-c533-bgimage-01-b-g-expected.txt:
* platform/qt/css2.1/t140201-c534-bgre-00-b-ag-expected.png: Added.
* platform/qt/css2.1/t140201-c534-bgre-00-b-ag-expected.txt:
* platform/qt/css2.1/t140201-c534-bgre-01-b-ag-expected.png:
* platform/qt/css2.1/t140201-c534-bgre-01-b-ag-expected.txt:
* platform/qt/css2.1/t140201-c535-bg-fixd-00-b-g-expected.png: Added.
* platform/qt/css2.1/t140201-c535-bg-fixd-00-b-g-expected.txt:
* platform/qt/css2.1/t140201-c536-bgpos-00-b-ag-expected.png: Added.
* platform/qt/css2.1/t140201-c536-bgpos-00-b-ag-expected.txt:
* platform/qt/css2.1/t140201-c536-bgpos-01-b-ag-expected.png:
* platform/qt/css2.1/t140201-c536-bgpos-01-b-ag-expected.txt:
* platform/qt/css2.1/t140201-c537-bgfxps-00-c-ag-expected.png:
* platform/qt/css2.1/t140201-c537-bgfxps-00-c-ag-expected.txt:
* platform/qt/css2.1/t1504-c523-font-style-00-b-expected.png: Added.
* platform/qt/css2.1/t1504-c523-font-style-00-b-expected.txt:
* platform/qt/css2.1/t1505-c524-font-var-00-b-expected.png:
* platform/qt/css2.1/t1505-c524-font-var-00-b-expected.txt:
* platform/qt/css2.1/t1506-c525-font-wt-00-b-expected.png: Added.
* platform/qt/css2.1/t1506-c525-font-wt-00-b-expected.txt:
* platform/qt/css2.1/t1507-c526-font-sz-00-b-expected.png: Added.
* platform/qt/css2.1/t1507-c526-font-sz-00-b-expected.txt:
* platform/qt/css2.1/t1507-c526-font-sz-01-b-a-expected.png: Added.
* platform/qt/css2.1/t1507-c526-font-sz-01-b-a-expected.txt:
* platform/qt/css2.1/t1507-c526-font-sz-02-b-a-expected.png: Added.
* platform/qt/css2.1/t1507-c526-font-sz-02-b-a-expected.txt:
* platform/qt/css2.1/t1507-c526-font-sz-03-f-a-expected.png: Added.
* platform/qt/css2.1/t1507-c526-font-sz-03-f-a-expected.txt:
* platform/qt/css2.1/t1508-c527-font-00-b-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-00-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-01-b-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-01-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-02-b-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-02-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-04-b-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-04-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-05-b-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-05-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-07-b-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-07-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-08-b-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-08-b-expected.txt:
* platform/qt/css2.1/t1508-c527-font-09-b-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-09-b-expected.txt: Added.
* platform/qt/css2.1/t1508-c527-font-10-c-expected.png: Added.
* platform/qt/css2.1/t1508-c527-font-10-c-expected.txt:
* platform/qt/css2.1/t1601-c547-indent-01-d-expected.png:
* platform/qt/css2.1/t1601-c547-indent-01-d-expected.txt:
* platform/qt/css2.1/t1602-c546-txt-align-00-b-expected.png:
* platform/qt/css2.1/t1602-c546-txt-align-00-b-expected.txt:
* platform/qt/css2.1/t1604-c541-word-sp-01-b-a-expected.png:
* platform/qt/css2.1/t1604-c541-word-sp-01-b-a-expected.txt:
* platform/qt/css2.1/t1606-c562-white-sp-00-b-ag-expected.png:
* platform/qt/css2.1/t1606-c562-white-sp-00-b-ag-expected.txt:

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

8 years ago[chromium] Calendar picker popup displays at wrong scale when deviceScaleFactor ...
commit-queue@webkit.org [Wed, 25 Jul 2012 15:09:22 +0000 (15:09 +0000)]
[chromium] Calendar picker popup displays at wrong scale when deviceScaleFactor != 1.
https://bugs.webkit.org/show_bug.cgi?id=92177

Manually tested at deviceScaleFactor = 1 and 2.

Patch by Kevin Ellis <kevers@chromium.org> on 2012-07-25
Reviewed by Kent Tamura.

The device scale factor was not being set for the calendar popup.
As a result, the popup was rendered too small on hidpi displays.
This patch sets the device scale factor for any page popup.

* src/WebPagePopupImpl.cpp:
(WebKit::WebPagePopupImpl::initPage):

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

8 years agoWeb Inspector: disabling property should remove "overriden" decoration from overriden...
pfeldman@chromium.org [Wed, 25 Jul 2012 15:05:40 +0000 (15:05 +0000)]
Web Inspector: disabling property should remove "overriden" decoration from overriden UA shorthand.
https://bugs.webkit.org/show_bug.cgi?id=92253

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Bug fix with a test and more compilation markup.

Test: inspector/styles/styles-disable-then-enable-overriden-ua.html

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection.prototype.update):
(WebInspector.StylePropertyTreeElement):
(WebInspector.StylePropertyTreeElement.prototype):

LayoutTests:

* inspector/styles/styles-disable-then-enable-overriden-ua-expected.txt: Added.
* inspector/styles/styles-disable-then-enable-overriden-ua.html: Added.

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

8 years ago[BlackBerry] Don't touch a tile buffer while it's still on its way to the GPU
commit-queue@webkit.org [Wed, 25 Jul 2012 14:59:36 +0000 (14:59 +0000)]
[BlackBerry] Don't touch a tile buffer while it's still on its way to the GPU
https://bugs.webkit.org/show_bug.cgi?id=91992

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-07-25
Reviewed by Adam Treat.

PR: 141439
The copyPreviousContentsToBackSurfaceOfTile() call will also modify
buffer contents, move it after the blit generation condvar to make sure
we've waited for the buffer to become available first.

This is done as part of some general BackingStorePrivate::render()
cleanup in PR 141439.

Internally reviewed by Jakob Petsovits.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::render):

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

8 years agoWeb Inspector: Improve ObjectPropertiesSection UI by adding a tooltip for the value.
vsevik@chromium.org [Wed, 25 Jul 2012 14:55:03 +0000 (14:55 +0000)]
Web Inspector: Improve ObjectPropertiesSection UI by adding a tooltip for the value.
https://bugs.webkit.org/show_bug.cgi?id=92225

Reviewed by Pavel Feldman.

Added tooltip with property value description on the property's valueElement.

* inspector/front-end/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertyTreeElement.prototype.update):

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

8 years ago[Qt] css2.1/t040* rebaseline after new test fonts
caio.oliveira@openbossa.org [Wed, 25 Jul 2012 14:12:57 +0000 (14:12 +0000)]
[Qt] css2.1/t040* rebaseline after new test fonts
https://bugs.webkit.org/show_bug.cgi?id=92248

Unreviewed.

* platform/qt-5.0/Skipped:
* platform/qt/css2.1/t040102-keywords-00-b-expected.png: Added.
* platform/qt/css2.1/t040102-keywords-00-b-expected.txt:
* platform/qt/css2.1/t040102-keywords-01-b-expected.png: Added.
* platform/qt/css2.1/t040102-keywords-01-b-expected.txt:
* platform/qt/css2.1/t040103-case-00-b-expected.png: Added.
* platform/qt/css2.1/t040103-case-00-b-expected.txt:
* platform/qt/css2.1/t040103-case-01-c-expected.png: Added.
* platform/qt/css2.1/t040103-case-01-c-expected.txt:
* platform/qt/css2.1/t040103-escapes-00-b-expected.png: Added.
* platform/qt/css2.1/t040103-escapes-00-b-expected.txt:
* platform/qt/css2.1/t040103-escapes-01-b-expected.png:
* platform/qt/css2.1/t040103-escapes-01-b-expected.txt:
* platform/qt/css2.1/t040103-escapes-02-d-expected.png: Added.
* platform/qt/css2.1/t040103-escapes-02-d-expected.txt:
* platform/qt/css2.1/t040103-escapes-03-b-expected.png: Added.
* platform/qt/css2.1/t040103-escapes-03-b-expected.txt:
* platform/qt/css2.1/t040103-escapes-04-b-expected.png: Added.
* platform/qt/css2.1/t040103-escapes-04-b-expected.txt:
* platform/qt/css2.1/t040103-escapes-05-c-expected.png: Added.
* platform/qt/css2.1/t040103-escapes-05-c-expected.txt:
* platform/qt/css2.1/t040103-escapes-06-b-expected.png: Added.
* platform/qt/css2.1/t040103-escapes-06-b-expected.txt:
* platform/qt/css2.1/t040103-escapes-07-b-expected.png: Added.
* platform/qt/css2.1/t040103-escapes-07-b-expected.txt:
* platform/qt/css2.1/t040103-escapes-08-b-expected.png: Added.
* platform/qt/css2.1/t040103-escapes-08-b-expected.txt:
* platform/qt/css2.1/t040103-ident-00-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-00-c-expected.txt:
* platform/qt/css2.1/t040103-ident-01-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-01-c-expected.txt:
* platform/qt/css2.1/t040103-ident-02-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-02-c-expected.txt:
* platform/qt/css2.1/t040103-ident-03-c-expected.txt: Removed.
* platform/qt/css2.1/t040103-ident-04-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-04-c-expected.txt:
* platform/qt/css2.1/t040103-ident-05-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-05-c-expected.txt:
* platform/qt/css2.1/t040103-ident-06-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-06-c-expected.txt:
* platform/qt/css2.1/t040103-ident-07-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-07-c-expected.txt:
* platform/qt/css2.1/t040103-ident-08-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-08-c-expected.txt:
* platform/qt/css2.1/t040103-ident-09-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-09-c-expected.txt:
* platform/qt/css2.1/t040103-ident-10-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-10-c-expected.txt:
* platform/qt/css2.1/t040103-ident-11-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-11-c-expected.txt:
* platform/qt/css2.1/t040103-ident-12-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-12-c-expected.txt:
* platform/qt/css2.1/t040103-ident-13-c-expected.png: Added.
* platform/qt/css2.1/t040103-ident-13-c-expected.txt:
* platform/qt/css2.1/t040105-atkeyw-00-b-expected.png: Added.
* platform/qt/css2.1/t040105-atkeyw-00-b-expected.txt:
* platform/qt/css2.1/t040105-atkeyw-01-b-expected.png: Added.
* platform/qt/css2.1/t040105-atkeyw-01-b-expected.txt:
* platform/qt/css2.1/t040105-atkeyw-02-b-expected.png: Added.
* platform/qt/css2.1/t040105-atkeyw-02-b-expected.txt:
* platform/qt/css2.1/t040105-atrule-00-b-expected.png: Added.
* platform/qt/css2.1/t040105-atrule-00-b-expected.txt:
* platform/qt/css2.1/t040105-atrule-01-b-expected.png: Added.
* platform/qt/css2.1/t040105-atrule-01-b-expected.txt:
* platform/qt/css2.1/t040105-atrule-02-b-expected.png: Added.
* platform/qt/css2.1/t040105-atrule-02-b-expected.txt:
* platform/qt/css2.1/t040105-atrule-03-b-expected.png: Added.
* platform/qt/css2.1/t040105-atrule-03-b-expected.txt:
* platform/qt/css2.1/t040105-atrule-04-b-expected.png: Added.
* platform/qt/css2.1/t040105-atrule-04-b-expected.txt:
* platform/qt/css2.1/t040105-import-00-b-expected.png: Added.
* platform/qt/css2.1/t040105-import-00-b-expected.txt:
* platform/qt/css2.1/t040105-import-01-b-expected.png: Added.
* platform/qt/css2.1/t040105-import-01-b-expected.txt:
* platform/qt/css2.1/t040105-import-10-b-expected.png:
* platform/qt/css2.1/t040105-import-10-b-expected.txt:
* platform/qt/css2.1/t040109-c17-comments-00-b-expected.png: Added.
* platform/qt/css2.1/t040109-c17-comments-00-b-expected.txt:
* platform/qt/css2.1/t040109-c17-comments-01-b-expected.png: Added.
* platform/qt/css2.1/t040109-c17-comments-01-b-expected.txt:
* platform/qt/css2.1/t0402-c71-fwd-parsing-00-f-expected.png: Added.
* platform/qt/css2.1/t0402-c71-fwd-parsing-00-f-expected.txt:
* platform/qt/css2.1/t0402-c71-fwd-parsing-01-f-expected.png: Added.
* platform/qt/css2.1/t0402-c71-fwd-parsing-01-f-expected.txt:
* platform/qt/css2.1/t0402-c71-fwd-parsing-02-f-expected.png: Added.
* platform/qt/css2.1/t0402-c71-fwd-parsing-02-f-expected.txt:
* platform/qt/css2.1/t0402-c71-fwd-parsing-03-f-expected.png: Added.
* platform/qt/css2.1/t0402-c71-fwd-parsing-03-f-expected.txt:
* platform/qt/css2.1/t0402-c71-fwd-parsing-04-f-expected.png: Added.
* platform/qt/css2.1/t0402-c71-fwd-parsing-04-f-expected.txt:
* platform/qt/css2.1/t0402-syntax-01-f-expected.png: Added.
* platform/qt/css2.1/t0402-syntax-01-f-expected.txt:
* platform/qt/css2.1/t0402-syntax-02-f-expected.png: Added.
* platform/qt/css2.1/t0402-syntax-02-f-expected.txt:
* platform/qt/css2.1/t0402-syntax-03-f-expected.png: Added.
* platform/qt/css2.1/t0402-syntax-03-f-expected.txt:
* platform/qt/css2.1/t0402-syntax-04-f-expected.png: Added.
* platform/qt/css2.1/t0402-syntax-04-f-expected.txt:
* platform/qt/css2.1/t0402-syntax-05-f-expected.png: Added.
* platform/qt/css2.1/t0402-syntax-05-f-expected.txt:
* platform/qt/css2.1/t0402-syntax-06-f-expected.png: Added.
* platform/qt/css2.1/t0402-syntax-06-f-expected.txt:
* platform/qt/css2.1/t040302-c61-ex-len-00-b-a-expected.png: Added.
* platform/qt/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
* platform/qt/css2.1/t040302-c61-phys-len-00-b-expected.png: Added.
* platform/qt/css2.1/t040302-c61-phys-len-00-b-expected.txt:
* platform/qt/css2.1/t040302-c61-rel-len-00-b-ag-expected.png: Added.
* platform/qt/css2.1/t040302-c61-rel-len-00-b-ag-expected.txt:
* platform/qt/css2.1/t040303-c62-percent-00-b-ag-expected.png:
* platform/qt/css2.1/t040303-c62-percent-00-b-ag-expected.txt:
* platform/qt/css2.1/t040304-c64-uri-00-a-g-expected.png: Added.
* platform/qt/css2.1/t040304-c64-uri-00-a-g-expected.txt:
* platform/qt/css2.1/t040306-c63-color-00-b-ag-expected.png: Added.
* platform/qt/css2.1/t040306-c63-color-00-b-ag-expected.txt:
* platform/qt/css2.1/t040306-syntax-01-f-expected.png: Added.
* platform/qt/css2.1/t040306-syntax-01-f-expected.txt:
* platform/qt/css2.1/t040307-syntax-01-b-expected.png: Added.
* platform/qt/css2.1/t040307-syntax-01-b-expected.txt:

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

8 years ago[NRWT] Rename baseline_search_path() to default_baseline_search_path()
kkristof@inf.u-szeged.hu [Wed, 25 Jul 2012 13:58:47 +0000 (13:58 +0000)]
[NRWT] Rename baseline_search_path() to default_baseline_search_path()
https://bugs.webkit.org/show_bug.cgi?id=92122

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.baseline_version_dir):
(Port.baseline_search_path):
(Port):
(Port.default_baseline_search_path):
(Port.expected_baselines):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_additional_platform_directory):
* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort.default_baseline_search_path):
* Scripts/webkitpy/layout_tests/port/qt.py:
(QtPort.default_baseline_search_path):
* Scripts/webkitpy/layout_tests/port/win.py:
(WinPort.default_baseline_search_path):

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

8 years ago[Qt] Fix rebaseline for two tests in svg/hixie
caio.oliveira@openbossa.org [Wed, 25 Jul 2012 13:52:36 +0000 (13:52 +0000)]
[Qt] Fix rebaseline for two tests in svg/hixie
https://bugs.webkit.org/show_bug.cgi?id=92244

Reviewed by Alexis Menard.

* platform/qt-5.0/svg/hixie/intrinsic/003-expected.txt: Removed.
* platform/qt/svg/hixie/error/017-expected.txt:
* platform/qt/svg/hixie/intrinsic/003-expected.png:

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

8 years agoSource/WebCore: https://bugs.webkit.org/show_bug.cgi?id=91931
pfeldman@chromium.org [Wed, 25 Jul 2012 13:48:47 +0000 (13:48 +0000)]
Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=91931

Reviewed by Vsevolod Vlasov.

- Synthetic shorthand values are now only returned for source-less styles
- CSSAgents reports longhands along with the property names in getSupportedCSSProperties
- StylesSidebarPane now has two paths: for source-enabled styles and for CSSOM-based ones (UA styles)
- CSSStyleModel uses style metainfo as a source of shorthand / longhand relationship now

Test: inspector/styles/styles-overriden-properties.html

* inspector/Inspector.json:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getSupportedCSSProperties):
* inspector/InspectorCSSAgent.h:
(InspectorCSSAgent):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyle::styleWithProperties):
* inspector/front-end/CSSCompletions.js:
(WebInspector.CSSCompletions):
(WebInspector.CSSCompletions.requestCSSNameCompletions):
(WebInspector.CSSCompletions.prototype._closest):
(WebInspector.CSSCompletions.prototype.longhands):
(WebInspector.CSSCompletions.prototype.shorthands):
* inspector/front-end/CSSStyleModel.js:
(WebInspector.CSSStyleDeclaration):
(WebInspector.CSSStyleDeclaration.prototype.longhandProperties):
(WebInspector.CSSStyleDeclaration.prototype.shorthandValue):
(WebInspector.CSSStyleDeclaration.prototype.newBlankProperty):
(WebInspector.CSSProperty):
(WebInspector.CSSProperty.parsePayload):
* inspector/front-end/SourceCSSTokenizer.js:
(WebInspector.SourceCSSTokenizer):
* inspector/front-end/SourceCSSTokenizer.re2js:
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
(WebInspector.StylePropertiesSection.prototype.update):
(WebInspector.StylePropertiesSection.prototype.onpopulate):
(WebInspector.StylePropertyTreeElement.prototype):

LayoutTests: Web Inspector: Redundant Style Declarations Missing in Styles Section
https://bugs.webkit.org/show_bug.cgi?id=91931

Reviewed by Vsevolod Vlasov.

* http/tests/inspector/elements-test.js:
(initialize_ElementTest.InspectorTest.dumpStyleTreeItem):
* inspector/elements/elements-panel-styles-expected.txt:
* inspector/styles/force-pseudo-state-expected.txt:
* inspector/styles/inject-stylesheet-expected.txt:
* inspector/styles/lazy-computed-style-expected.txt:
* inspector/styles/styles-overriden-properties-expected.txt: Added.
* inspector/styles/styles-overriden-properties.html: Added.
* inspector/styles/styles-update-from-js-expected.txt:
* platform/chromium/inspector/styles/inject-stylesheet-expected.txt: Removed.

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

8 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Wed, 25 Jul 2012 13:31:11 +0000 (13:31 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped: Skip 2 more tests because of minor 32/64 bit differences.

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

8 years ago[BlackBerry] notifyContentRendered() call missing in two spots
jpetsovits@rim.com [Wed, 25 Jul 2012 13:18:44 +0000 (13:18 +0000)]
[BlackBerry] notifyContentRendered() call missing in two spots
https://bugs.webkit.org/show_bug.cgi?id=92153
RIM PR 173340

Reviewed by Antonio Gomes.

In dispatchDidFirstVisualLayout() and repaint() in
immediate mode, we render but don't notify the
WebPageClient that the content was modified.

In the long run, we should probably keep track of
the modified reason from within render() itself
and use this to automatically notify the client
from within blitContents() and/or invalidateWindow(),
depending on the rendering path. That's somewhat of
a medium-size undertaking though; for now, adding
the call directly to the renderVisibleContents()
call sites will do.

This patch also adds a blitVisibleContents() to
dispatchDidFirstVisualLayout() where it was
inexplicably missing, probably on account of
old code that was never updated.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::repaint):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::resumeBackingStore):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDidFirstVisuallyNonEmptyLayout):

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

8 years ago[Qt] svg/dom, svg/filters, svg/foreignObject rebaseline after new test fonts.
alexis.menard@openbossa.org [Wed, 25 Jul 2012 13:00:38 +0000 (13:00 +0000)]
[Qt] svg/dom, svg/filters, svg/foreignObject rebaseline after new test fonts.
https://bugs.webkit.org/show_bug.cgi?id=92243

Unreviewed gardening.

These tests have been skipped because monospace fonts weren't properly used by
layout tests. After r121971, the test results are normal again.

* platform/qt-5.0/Skipped:
* platform/qt/svg/dom/SVGPathSegList-cloning-expected.png:
* platform/qt/svg/dom/SVGPathSegList-cloning-expected.txt:
* platform/qt/svg/dom/SVGPathSegList-segment-modification-expected.png:
* platform/qt/svg/dom/SVGPathSegList-segment-modification-expected.txt:
* platform/qt/svg/dom/SVGPathSegList-xml-dom-synchronization2-expected.png:
* platform/qt/svg/dom/SVGPathSegList-xml-dom-synchronization2-expected.txt:
* platform/qt/svg/filters/feColorMatrix-values-expected.txt:
* platform/qt/svg/filters/feComposite-expected.png: Added.
* platform/qt/svg/filters/feComposite-expected.txt:
* platform/qt/svg/filters/filter-on-filter-for-text-expected.png:
* platform/qt/svg/filters/filter-on-filter-for-text-expected.txt:
* platform/qt/svg/filters/filter-on-tspan-expected.png:
* platform/qt/svg/filters/filter-on-tspan-expected.txt:
* platform/qt/svg/filters/filter-width-update-expected.png:
* platform/qt/svg/filters/filter-width-update-expected.txt:
* platform/qt/svg/filters/sourceAlpha-expected.png: Added.
* platform/qt/svg/filters/sourceAlpha-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-display-changes-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-display-none-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt:
* platform/qt/svg/foreignObject/no-crash-with-svg-content-in-html-document-expected.png:
* platform/qt/svg/foreignObject/no-crash-with-svg-content-in-html-document-expected.txt:
* platform/qt/svg/foreignObject/svg-document-as-direct-child-expected.txt:
* platform/qt/svg/foreignObject/svg-document-in-html-document-expected.png:
* platform/qt/svg/foreignObject/svg-document-in-html-document-expected.txt:

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

8 years ago[Qt] svg/hixie rebaseline after new test fonts.
alexis.menard@openbossa.org [Wed, 25 Jul 2012 12:32:29 +0000 (12:32 +0000)]
[Qt] svg/hixie rebaseline after new test fonts.
https://bugs.webkit.org/show_bug.cgi?id=92242

Unreviewed gardening.

These tests have been skipped because monospace fonts weren't properly used by
layout tests. After r121971, the test results are normal again.

* platform/qt-5.0/Skipped:
* platform/qt/svg/hixie/dynamic/002-expected.txt:
* platform/qt/svg/hixie/error/002-expected.txt:
* platform/qt/svg/hixie/error/003-expected.png:
* platform/qt/svg/hixie/error/003-expected.txt:
* platform/qt/svg/hixie/error/010-expected.png:
* platform/qt/svg/hixie/error/010-expected.txt:
* platform/qt/svg/hixie/error/011-expected.png:
* platform/qt/svg/hixie/error/011-expected.txt:
* platform/qt/svg/hixie/error/013-expected.png:
* platform/qt/svg/hixie/error/013-expected.txt:
* platform/qt/svg/hixie/error/017-expected.png:
* platform/qt/svg/hixie/error/017-expected.txt:
* platform/qt/svg/hixie/intrinsic/001-expected.png:
* platform/qt/svg/hixie/intrinsic/001-expected.txt:
* platform/qt/svg/hixie/intrinsic/002-expected.png:
* platform/qt/svg/hixie/intrinsic/002-expected.txt:
* platform/qt/svg/hixie/intrinsic/003-expected.png:
* platform/qt/svg/hixie/intrinsic/003-expected.txt:
* platform/qt/svg/hixie/links/002-expected.png:
* platform/qt/svg/hixie/links/002-expected.txt:
* platform/qt/svg/hixie/mixed/003-expected.png:
* platform/qt/svg/hixie/mixed/003-expected.txt:
* platform/qt/svg/hixie/mixed/004-expected.txt: Added.
* platform/qt/svg/hixie/mixed/005-expected.txt: Added.
* platform/qt/svg/hixie/mixed/006-expected.png:
* platform/qt/svg/hixie/mixed/006-expected.txt:
* platform/qt/svg/hixie/mixed/007-expected.txt:
* platform/qt/svg/hixie/mixed/008-expected.png:
* platform/qt/svg/hixie/mixed/008-expected.txt:
* platform/qt/svg/hixie/mixed/009-expected.png:
* platform/qt/svg/hixie/mixed/009-expected.txt:
* platform/qt/svg/hixie/mixed/010-expected.png:
* platform/qt/svg/hixie/mixed/010-expected.txt:
* platform/qt/svg/hixie/mixed/011-expected.png:
* platform/qt/svg/hixie/mixed/011-expected.txt:
* platform/qt/svg/hixie/perf/001-expected.txt:
* platform/qt/svg/hixie/perf/002-expected.txt:
* platform/qt/svg/hixie/perf/003-expected.png:
* platform/qt/svg/hixie/perf/003-expected.txt:
* platform/qt/svg/hixie/perf/004-expected.png:
* platform/qt/svg/hixie/perf/004-expected.txt:
* platform/qt/svg/hixie/perf/005-expected.png:
* platform/qt/svg/hixie/perf/005-expected.txt:
* platform/qt/svg/hixie/perf/006-expected.png:
* platform/qt/svg/hixie/perf/006-expected.txt:
* platform/qt/svg/hixie/perf/007-expected.png:
* platform/qt/svg/hixie/perf/007-expected.txt:
* platform/qt/svg/hixie/processing-model/003-expected.png:
* platform/qt/svg/hixie/processing-model/003-expected.txt:
* platform/qt/svg/hixie/processing-model/004-expected.png:
* platform/qt/svg/hixie/processing-model/004-expected.txt:
* platform/qt/svg/hixie/rendering-model/003-expected.png:
* platform/qt/svg/hixie/rendering-model/003-expected.txt:
* platform/qt/svg/hixie/rendering-model/004-expected.png:
* platform/qt/svg/hixie/rendering-model/004-expected.txt:
* platform/qt/svg/hixie/text/002-expected.png:
* platform/qt/svg/hixie/text/002-expected.txt:
* platform/qt/svg/hixie/text/003-expected.png:
* platform/qt/svg/hixie/text/003-expected.txt:
* platform/qt/svg/hixie/text/003a-expected.png:
* platform/qt/svg/hixie/text/003a-expected.txt:
* platform/qt/svg/hixie/text/003b-expected.png:
* platform/qt/svg/hixie/text/003b-expected.txt:
* platform/qt/svg/hixie/viewbox/002-expected.txt:
* platform/qt/svg/hixie/viewbox/003-expected.txt:
* platform/qt/svg/hixie/viewbox/preserveAspectRatio/001-expected.png:
* platform/qt/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt:
* platform/qt/svg/hixie/viewbox/preserveAspectRatio/002-expected.png:
* platform/qt/svg/hixie/viewbox/preserveAspectRatio/002-expected.txt:

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

8 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Wed, 25 Jul 2012 12:28:06 +0000 (12:28 +0000)]
[Qt] Unreviewed gardening.

* platform/qt-4.8/Skipped: Unskip now passing tests. (bug85203)
* platform/qt/Skipped: Skip new tests without expected files.

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

8 years agoImplement ColorSuggestionPicker page popup
keishi@webkit.org [Wed, 25 Jul 2012 11:57:21 +0000 (11:57 +0000)]
Implement ColorSuggestionPicker page popup
https://bugs.webkit.org/show_bug.cgi?id=92109

Reviewed by Kent Tamura.

.:

* ManualTests/forms/color-suggestion-picker.html: Added. Tests colorSuggestionPicker.{js,css}

Source/WebCore:

Implements ColorSuggestionPicker page popup. This will be used in
certain ports as the datalist UI for <input type=color>.

No new tests because there is no way to open the popup yet.

* Resources/colorSuggestionPicker.css: Added.
(body):
(#main):
(.color-swatch):
(.color-swatch:hover):
(.color-swatch-container):
(.other-color):
* Resources/colorSuggestionPicker.js: Added.
(getScrollbarWidth):When there are more than 20 colors we need to
increase the window width to accommodate the scroll bar.
(createElement):
(handleMessage):
(initialize):
(handleArgumentsTimeout):
(validateArguments):
(submitValue): Calls setValueAndClosePopup with a numValue of 0.
(handleCancel): Calls setValueAndClosePopup with a numValue of -1.
(chooseOtherColor): Calls setValueAndClosePopup with a numValue of -2.
(ColorPicker):
(ColorPicker.prototype._layout): Lays out the color swatches in a 5x4
grid.
(ColorPicker.prototype._handleSwatchClick):
* WebCore.gyp/WebCore.gyp:

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

8 years agoFix arithmetic composite filter for auto-vectorization
allan.jensen@nokia.com [Wed, 25 Jul 2012 11:54:36 +0000 (11:54 +0000)]
Fix arithmetic composite filter for auto-vectorization
https://bugs.webkit.org/show_bug.cgi?id=92123

Reviewed by Nikolas Zimmermann.

Since only clamping of the result prevents GCC from auto-vectorizing the inner loop, this patch
adds a faster version of the inner loop to handle cases where clamping is unnecessary,

* platform/graphics/filters/FEComposite.cpp:
(WebCore::computeArithmeticPixelsUnclamped):
(WebCore::arithmeticSoftware):

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

8 years ago[EFL] Use eina_stringshare_add instead of strdup.
gyuyoung.kim@samsung.com [Wed, 25 Jul 2012 11:46:56 +0000 (11:46 +0000)]
[EFL] Use eina_stringshare_add instead of strdup.
https://bugs.webkit.org/show_bug.cgi?id=92072

Reviewed by Kentaro Hara.

Eina of EFL libraries supports a string functionality that replaces strdup. So, EFL port needs
to replace strdup with eina_stringshare_add function.

Source/WebKit/efl:

In addition, some API descriptions need to be modified according to ewk APIs's parameter and
return type change.

* WebCoreSupport/ChromeClientEfl.cpp:
(WebCore::ChromeClientEfl::runJavaScriptPrompt):
* ewk/ewk_cookies.cpp:
(ewk_cookies_get_all):
(ewk_cookies_cookie_free):
* ewk/ewk_cookies.h:
* ewk/ewk_frame.cpp:
(ewk_frame_script_execute):
(ewk_frame_selection_get):
(ewk_frame_resources_location_get):
(ewk_frame_plain_text_get):
* ewk/ewk_frame.h:
* ewk/ewk_intent.cpp:
(ewk_intent_suggestions_get):
(ewk_intent_extra_get):
(ewk_intent_extra_names_get):
* ewk/ewk_intent.h:
* ewk/ewk_js.cpp:
(ewk_js_variant_to_npvariant):
(ewk_js_object_new):
* ewk/ewk_view.cpp:
(_ewk_view_smart_run_javascript_prompt):
(ewk_view_selection_get):
(ewk_view_run_javascript_prompt):
(ewk_view_run_open_panel):
* ewk/ewk_view.h:
* ewk/ewk_view_private.h:

Source/WebKit2:

* UIProcess/API/efl/ewk_intent.cpp:
(ewk_intent_suggestions_get):
(ewk_intent_extra_get):
* UIProcess/API/efl/ewk_intent.h:

Tools:

DumpRenderTree also needs to be modified according to ewk APIs's parameter change.

* DumpRenderTree/efl/DumpRenderTree.cpp:
(dumpFramesAsText):
* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::onFrameIntentNew):
* DumpRenderTree/efl/DumpRenderTreeView.cpp:
(onJavaScriptPrompt):

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

8 years ago[EFL] Rebaseline for changed mathml dump after r123492
commit-queue@webkit.org [Wed, 25 Jul 2012 11:28:39 +0000 (11:28 +0000)]
[EFL] Rebaseline for changed mathml dump after r123492
https://bugs.webkit.org/show_bug.cgi?id=92234

Unreviewed, EFL rebaseline.

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-07-25

* platform/efl/mathml/msub-anonymous-child-render-crash-expected.txt: Added.

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

8 years agoFix blend filter for autovectorizing
allan.jensen@nokia.com [Wed, 25 Jul 2012 11:15:47 +0000 (11:15 +0000)]
Fix blend filter for autovectorizing
https://bugs.webkit.org/show_bug.cgi?id=91398

Reviewed by Nikolas Zimmermann.

Get rid of wrapper classes, and use functions directly as template argument.

* platform/graphics/filters/FEBlend.cpp:
(WebCore::feBlendNormal):
(WebCore::feBlendMultiply):
(WebCore::feBlendScreen):
(WebCore::feBlendDarken):
(WebCore::feBlendLighten):
(WebCore::feBlendUnknown):
(WebCore::platformApply):
(WebCore::FEBlend::platformApplyGeneric):

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

8 years agoAdd methods to ColorChooserClient so the color chooser can show suggestions
keishi@webkit.org [Wed, 25 Jul 2012 11:03:38 +0000 (11:03 +0000)]
Add methods to ColorChooserClient so the color chooser can show suggestions
https://bugs.webkit.org/show_bug.cgi?id=92114

Reviewed by Kent Tamura.

Added methods to ColorChooserClient so the color chooser can ask the
client for suggestions and current color.

No new tests. The methods are not used yet.

* html/ColorInputType.cpp:
(WebCore::ColorInputType::currentColor): Returns what color the color
chooser should display.
(WebCore):
(WebCore::ColorInputType::shouldShowSuggestions): Returns if the UI for
suggestions should be shown.
(WebCore::ColorInputType::suggestions): Returns a list of colors to be
suggested to the user.
* html/ColorInputType.h:
(ColorInputType):
* html/HTMLInputElement.h:
(HTMLInputElement): Made dataList() public.
* platform/ColorChooserClient.h:
(ColorChooserClient):

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

8 years agoReplace int with long in test IDL files
haraken@chromium.org [Wed, 25 Jul 2012 10:35:26 +0000 (10:35 +0000)]
Replace int with long in test IDL files
https://bugs.webkit.org/show_bug.cgi?id=92181

Reviewed by Adam Barth.

int is not a valid type in WebIDL. It should be long.
We should replace int with long in bindings/scripts/test/*.idl.
This is a follow-up patch for r123550.

Test: bindings/scripts/test/TestObj.idl

* bindings/scripts/test/CPP/WebDOMTestObj.cpp:
(WebDOMTestObj::readOnlyLongAttr):
(WebDOMTestObj::Attr):
(WebDOMTestObj::setAttr):
(WebDOMTestObj::voidMethodWithArgs):
(WebDOMTestObj::Method):
(WebDOMTestObj::MethodWithArgs):
(WebDOMTestObj::objMethodWithArgs):
* bindings/scripts/test/CPP/WebDOMTestObj.h:
* bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
(webkit_dom_test_obj_set_property):
(webkit_dom_test_obj_get_property):
(webkit_dom_test_obj_class_init):
(webkit_dom_test_obj_void_method_with_args):
(webkit_dom_test_obj_method):
(webkit_dom_test_obj_method_with_args):
(webkit_dom_test_obj_obj_method_with_args):
(webkit_dom_test_obj_get_read_only_long_attr):
(webkit_dom_test_obj_get_attr):
(webkit_dom_test_obj_set_attr):
(webkit_dom_test_obj_get_strawberry):
(webkit_dom_test_obj_set_strawberry):
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore):
(WebCore::jsTestObjReadOnlyLongAttr):
(WebCore::jsTestObjConstructorStaticReadOnlyLongAttr):
(WebCore::jsTestObjAttr):
(WebCore::setJSTestObjAttr):
(WebCore::setJSTestObjStrawberry):
(WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionMethod):
(WebCore::jsTestObjPrototypeFunctionMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
* bindings/scripts/test/JS/JSTestObj.h:
(WebCore):
* bindings/scripts/test/ObjC/DOMTestObj.h:
* bindings/scripts/test/ObjC/DOMTestObj.mm:
(-[DOMTestObj readOnlyLongAttr]):
(-[DOMTestObj Attr]):
(-[DOMTestObj setAttr:]):
(-[DOMTestObj voidMethodWithArgs:strArg:objArg:]):
(-[DOMTestObj Method]):
(-[DOMTestObj MethodWithArgs:strArg:objArg:]):
(-[DOMTestObj objMethodWithArgs:strArg:objArg:]):
(-[DOMTestObj customMethodWithArgs:strArg:objArg:]):
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::readOnlyLongAttrAttrGetter):
(WebCore::TestObjV8Internal::staticReadOnlyLongAttrAttrGetter):
(WebCore::TestObjV8Internal::AttrAttrGetter):
(WebCore::TestObjV8Internal::AttrAttrSetter):
(WebCore::TestObjV8Internal::strawberryAttrSetter):
(WebCore::TestObjV8Internal::voidMethodWithArgsCallback):
(WebCore::TestObjV8Internal::MethodCallback):
(WebCore::TestObjV8Internal::MethodWithArgsCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodReturningSequenceCallback):
(WebCore::TestObjV8Internal::overloadedMethod2Callback):
(WebCore::TestObjV8Internal::overloadedMethod4Callback):
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):

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

8 years ago[WTR][EFL] Wheel events are not emitted
commit-queue@webkit.org [Wed, 25 Jul 2012 10:26:31 +0000 (10:26 +0000)]
[WTR][EFL] Wheel events are not emitted
https://bugs.webkit.org/show_bug.cgi?id=92094

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-07-25
Reviewed by Csaba Osztrogonác.

Wheel events are not emitted, therefore, layout tests that use mouseScrollBy method are failing.

* WebKitTestRunner/efl/EventSenderProxyEfl.cpp:
(WTR::dispatchMouseScrollByEvent):
(WTR::EventSenderProxy::mouseScrollBy):
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::focus):

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

8 years agoA validation bubble should not be modifiable.
shinyak@chromium.org [Wed, 25 Jul 2012 10:09:16 +0000 (10:09 +0000)]
A validation bubble should not be modifiable.
https://bugs.webkit.org/show_bug.cgi?id=92217

Reviewed by Kent Tamura.

Source/WebCore:

A user can set -webkit-user-modify: read-write to validation message elements.
This might cause a undesired crash like Bug 65738. They should be unmodifiable.

Test: fast/forms/validation-user-modify.html

* css/html.css:
Added -webkit-user-modify: read-only !important; for these elements so that they won't be
changed by a user.
(::-webkit-validation-bubble):
(::-webkit-validation-bubble-message):
(::-webkit-validation-bubble-text-block):
(::-webkit-validation-bubble-heading):
(::-webkit-validation-bubble-arrow):
(::-webkit-validation-bubble-arrow-clipper):

LayoutTests:

* fast/forms/validation-message-user-modify-expected.txt: Added.
* fast/forms/validation-message-user-modify.html: Added.

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

8 years ago[EFL] Add File Chooser API
commit-queue@webkit.org [Wed, 25 Jul 2012 10:00:48 +0000 (10:00 +0000)]
[EFL] Add File Chooser API
https://bugs.webkit.org/show_bug.cgi?id=91957

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-07-25
Reviewed by Hajime Morita.

Source/WebKit:

Add ewk_file_chooser source and header.

* PlatformEfl.cmake:

Source/WebKit/efl:

Add APIs for file chooser. These APIs allow an application(like a browser) queries informations
about multiple files allowed, directory upload allowed, accept mimetypes list,
accept file extentions list, selected files list and capture to support HTML media capture.

* ewk/EWebKit.h:
* ewk/ewk_file_chooser.cpp: Added.
(_Ewk_File_Chooser):
(ewk_file_chooser_allows_multiple_files_get):
(ewk_file_chooser_allows_directory_upload_get):
(ewk_file_chooser_accept_mimetypes_get):
(ewk_file_chooser_accept_file_extentions_get):
(ewk_file_chooser_selected_files_get):
(ewk_file_chooser_capture_get):
(ewk_file_chooser_new):
(ewk_file_chooser_free):
* ewk/ewk_file_chooser.h: Added.
* ewk/ewk_file_chooser_private.h: Added.
(WebCore):

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

8 years ago[Qt] Unreviewed gardening, update Qt5 specific test results.
ossy@webkit.org [Wed, 25 Jul 2012 09:54:11 +0000 (09:54 +0000)]
[Qt] Unreviewed gardening, update Qt5 specific test results.

* platform/qt-5.0-wk1/fast/text/whitespace/028-expected.png: Added.
* platform/qt-5.0-wk1/fast/text/whitespace/028-expected.txt: Added.
* platform/qt-5.0-wk2/fast/text/whitespace/028-expected.png: Added.
* platform/qt-5.0-wk2/fast/text/whitespace/028-expected.txt: Added.
* platform/qt-5.0/css2.1/t0805-c5519-brdr-r-01-e-expected.png: Added.
* platform/qt-5.0/css2.1/t0805-c5519-brdr-r-01-e-expected.txt: Added.
* platform/qt-5.0/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
* platform/qt-5.0/svg/as-image/img-preserveAspectRatio-support-1-expected.txt:
* platform/qt-5.0/svg/as-object/object-box-sizing-no-width-height-expected.png: Added.
* platform/qt-5.0/svg/as-object/object-box-sizing-no-width-height-expected.txt: Added.
* platform/qt-5.0/svg/batik/text/longTextOnPath-expected.png: Added.
* platform/qt-5.0/svg/batik/text/longTextOnPath-expected.txt: Added.
* platform/qt-5.0/svg/carto.net/tabgroup-expected.png: Added.
* platform/qt-5.0/svg/carto.net/tabgroup-expected.txt: Added.

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