profile/ivi/webkit-efl.git
12 years agoLittle optimization for CSSParser::parseFillShorthand.
alexis.menard@openbossa.org [Tue, 21 Feb 2012 17:35:17 +0000 (17:35 +0000)]
Little optimization for CSSParser::parseFillShorthand.
https://bugs.webkit.org/show_bug.cgi?id=79042

Reviewed by Hajime Morita.

Remove one extra loop that we can combine with the following one
which adds the properties to the parser's list of properties. I also
removed a useless check.
Instruments shows on the css-parser-yui benchmark an improvement
of 13ms (from 77ms spent in the function to 64ms).

No new tests : refactoring, existings tests should cover.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseFillShorthand):

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

12 years agoSource/WebCore: https://bugs.webkit.org/show_bug.cgi?id=79046
hyatt@apple.com [Tue, 21 Feb 2012 17:17:43 +0000 (17:17 +0000)]
Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=79046

width of overflow:hidden blocks is wrong when their margins overlap floats.

Relevant discussion is here: http://lists.w3.org/Archives/Public/www-style/2012Feb/0954.html

This patch makes the following changes to how objects shrink when avoiding floats:
(1) The containing block width used for percentage calculations is now constant. This means that
an overflow:hidden block with a margin-left of 10% will no longer change what 10% means depending
on the available line width. From a code perspective, containingBlockLogicalWidthForContent and
containingBlockLogicalWidthForContentInRegion no longer contain any special-case code for
shrinkToAvoidFloats() objects.

(2) Now the computation of the logical width for the shrinking object itself handles the adjustments.
Two kinds of adjustments are made for both the start and end margins. Conceptually what we do is shrink
the object to the available line width minus our margins, and then expand the width back out to the content edge
or to the float edge as necessary. If the float fully fits in the margin, then we expand back out to the
content edge. Otherwise if the float doesn't fit, then we expand only to the float edge, making sure our
margin overlaps with the float. This expansion is not performed for negative margins, since our result is already
correct in that case.

Reviewed by Dan Bernstein.

Added the new tests from the thread on www-style about this issue (from Alan Gresley and George Talbot)
in fast/block/float.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::containsFloat):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::containsFloats):
Changed to be const.

(WebCore::RenderBlock::endOffsetForLine):
(WebCore::RenderBlock::endOffsetForContent):
Added endOffsetForXXX methods to mirror their startOffset counterparts. Used by the width adjustment code.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats):
New method that handles shrinking the logical width to the line width (and then re-expanding back out to the
float and/or content edges as needed).

(WebCore::RenderBox::containingBlockLogicalWidthForContent):
(WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion):
Patched to no longer do the shrinking of objects to avoid floats.

(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):
Patched to handle calling the new shrinking code to adjust our logical width.

* rendering/RenderBox.h:
(RenderBox):
The signature of computeLogicalWithUsing changed to be region-specific and to carry along enough information
to efficiently perform the shrinking.

* rendering/RenderTable.cpp:
(WebCore::RenderTable::computeLogicalWidth):
Patched to handle calling the new shrinking code to adjust our logical width.

LayoutTests: https://bugs.webkit.org/show_bug.cgi?id=79046

width of overflow:hidden blocks is wrong when their margins overlap floats.

Added new tests from www-style thread: http://lists.w3.org/Archives/Public/www-style/2012Feb/0954.html

Reviewed by Dan Bernstein.

* fast/block/float/centered-float-avoidance-complexity.html: Added.
* fast/block/float/shrink-to-avoid-float-complexity.html: Added.
* platform/mac/fast/block/float/centered-float-avoidance-complexity-expected.png: Added.
* platform/mac/fast/block/float/centered-float-avoidance-complexity-expected.txt: Added.
* platform/mac/fast/block/float/shrink-to-avoid-float-complexity-expected.png: Added.
* platform/mac/fast/block/float/shrink-to-avoid-float-complexity-expected.txt: Added.

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

12 years agoAttempt to fix the Snow Leopard build.
weinig@apple.com [Tue, 21 Feb 2012 17:01:54 +0000 (17:01 +0000)]
Attempt to fix the Snow Leopard build.

Source/JavaScriptCore:

* Configurations/Base.xcconfig:

Source/ThirdParty:

* gtest/xcode/Config/General.xcconfig:

Source/ThirdParty/ANGLE:

* Configurations/Base.xcconfig:

Source/WebCore:

* Configurations/Base.xcconfig:

Source/WebKit/mac:

* Configurations/Base.xcconfig:

Source/WebKit2:

* Configurations/Base.xcconfig:

Tools:

* DumpRenderTree/mac/Configurations/Base.xcconfig:
* MiniBrowser/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:

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

12 years ago[Qt] Unreviewed gardening, add platform specific expected file after r107689.
ossy@webkit.org [Tue, 21 Feb 2012 16:49:53 +0000 (16:49 +0000)]
[Qt] Unreviewed gardening, add platform specific expected file after r107689.

* platform/qt-5.0-wk2/http/tests/websocket/test/hybi/bad-sub-protocol-non-ascii-expected.txt: Added.

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

12 years agoUse libc++ when building with Clang on Mac
weinig@apple.com [Tue, 21 Feb 2012 16:44:31 +0000 (16:44 +0000)]
Use libc++ when building with Clang on Mac
https://bugs.webkit.org/show_bug.cgi?id=78981

Reviewed by Dan Bernstein.

Source/JavaScriptCore:

* Configurations/Base.xcconfig:

Source/ThirdParty:

* gtest/xcode/Config/General.xcconfig:
In addition to enabling libc++ when building with Clang,
disable gtest's use of tr1::tuple, which doesn't exist in
libc++.

Source/ThirdParty/ANGLE:

* Configurations/Base.xcconfig:

Source/WebCore:

* Configurations/Base.xcconfig:

Source/WebKit/mac:

* Configurations/Base.xcconfig:

Source/WebKit2:

* Configurations/Base.xcconfig:

Tools:

* DumpRenderTree/mac/Configurations/Base.xcconfig:
* MiniBrowser/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:

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

12 years agoMac build fix
aroben@apple.com [Tue, 21 Feb 2012 16:38:02 +0000 (16:38 +0000)]
Mac build fix

* WebCore.xcodeproj/project.pbxproj: Mark TextTrack.h and TextTrackCue.h private so that
WebKit can include them.

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

12 years ago[Qt][WK2] Fix the N9 build
abecsi@webkit.org [Tue, 21 Feb 2012 16:26:57 +0000 (16:26 +0000)]
[Qt][WK2] Fix the N9 build
https://bugs.webkit.org/show_bug.cgi?id=79101

Reviewed by Noam Rosenthal.

No new tests needed.

* platform/graphics/opengl/TextureMapperGL.cpp: Add missing include.

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

12 years agoRoll out r108309, r108323, and r108326
aroben@apple.com [Tue, 21 Feb 2012 16:26:12 +0000 (16:26 +0000)]
Roll out r108309, r108323, and r108326

They broke the 32-bit Lion build.

Original bugs is <http://webkit.org/b/75812> <rdar://problem/10079694>.

Source/JavaScriptCore:

* CMakeLists.txt:
* GNUmakefile.am:
* GNUmakefile.list.am:
* JavaScriptCore.pri:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/copy-files.cmd:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* assembler/LinkBuffer.h:
* assembler/MacroAssemblerCodeRef.h:
* bytecode/BytecodeConventions.h: Removed.
* bytecode/CallLinkStatus.cpp:
* bytecode/CallLinkStatus.h:
* bytecode/CodeBlock.cpp:
* bytecode/CodeBlock.h:
* bytecode/GetByIdStatus.cpp:
* bytecode/GetByIdStatus.h:
* bytecode/Instruction.h:
* bytecode/LLIntCallLinkInfo.h: Removed.
* bytecode/MethodCallLinkStatus.cpp:
* bytecode/Opcode.cpp:
* bytecode/Opcode.h:
* bytecode/PutByIdStatus.cpp:
* bytecode/PutByIdStatus.h:
* bytecompiler/BytecodeGenerator.cpp:
* dfg/DFGByteCodeParser.cpp:
* dfg/DFGCapabilities.h:
* dfg/DFGOSRExitCompiler.cpp:
* dfg/DFGOperations.cpp:
* heap/Heap.h:
* heap/MarkStack.cpp:
* heap/MarkedAllocator.h:
* heap/MarkedSpace.h:
* interpreter/CallFrame.cpp:
* interpreter/CallFrame.h:
* interpreter/Interpreter.cpp:
* interpreter/Interpreter.h:
* interpreter/RegisterFile.h:
* jit/ExecutableAllocator.h:
* jit/HostCallReturnValue.cpp: Removed.
* jit/HostCallReturnValue.h: Removed.
* jit/JIT.cpp:
* jit/JITCode.h:
* jit/JITDriver.h:
* jit/JITExceptions.cpp:
* jit/JITInlineMethods.h:
* jit/JITStubs.cpp:
* jit/JITStubs.h:
* jit/JSInterfaceJIT.h:
* llint/LLIntCommon.h: Removed.
* llint/LLIntData.cpp: Removed.
* llint/LLIntData.h: Removed.
* llint/LLIntEntrypoints.cpp: Removed.
* llint/LLIntEntrypoints.h: Removed.
* llint/LLIntExceptions.cpp: Removed.
* llint/LLIntExceptions.h: Removed.
* llint/LLIntOfflineAsmConfig.h: Removed.
* llint/LLIntOffsetsExtractor.cpp: Removed.
* llint/LLIntSlowPaths.cpp: Removed.
* llint/LLIntSlowPaths.h: Removed.
* llint/LLIntThunks.cpp: Removed.
* llint/LLIntThunks.h: Removed.
* llint/LowLevelInterpreter.asm: Removed.
* llint/LowLevelInterpreter.cpp: Removed.
* llint/LowLevelInterpreter.h: Removed.
* offlineasm/armv7.rb: Removed.
* offlineasm/asm.rb: Removed.
* offlineasm/ast.rb: Removed.
* offlineasm/backends.rb: Removed.
* offlineasm/generate_offset_extractor.rb: Removed.
* offlineasm/instructions.rb: Removed.
* offlineasm/offset_extractor_constants.rb: Removed.
* offlineasm/offsets.rb: Removed.
* offlineasm/opt.rb: Removed.
* offlineasm/parser.rb: Removed.
* offlineasm/registers.rb: Removed.
* offlineasm/self_hash.rb: Removed.
* offlineasm/settings.rb: Removed.
* offlineasm/transform.rb: Removed.
* offlineasm/x86.rb: Removed.
* runtime/CodeSpecializationKind.h: Removed.
* runtime/CommonSlowPaths.h:
* runtime/Executable.cpp:
* runtime/Executable.h:
* runtime/ExecutionHarness.h: Removed.
* runtime/JSArray.h:
* runtime/JSCell.h:
* runtime/JSFunction.h:
* runtime/JSGlobalData.cpp:
* runtime/JSGlobalData.h:
* runtime/JSGlobalObject.h:
* runtime/JSObject.h:
* runtime/JSPropertyNameIterator.h:
* runtime/JSString.h:
* runtime/JSTypeInfo.h:
* runtime/JSValue.cpp:
* runtime/JSValue.h:
* runtime/JSVariableObject.h:
* runtime/Options.cpp:
* runtime/Options.h:
* runtime/ScopeChain.h:
* runtime/Structure.cpp:
* runtime/Structure.h:
* runtime/StructureChain.h:
* wtf/InlineASM.h:
* wtf/Platform.h:
* wtf/SentinelLinkedList.h:
* wtf/text/StringImpl.h:

Source/WebCore:

* CMakeLists.txt:

Source/WebKit:

* CMakeLists.txt:

Tools:

* DumpRenderTree/efl/CMakeLists.txt:

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

12 years ago[Qt]REGRESSION(r92254): It made 2 tests timeout
ossy@webkit.org [Tue, 21 Feb 2012 16:20:29 +0000 (16:20 +0000)]
[Qt]REGRESSION(r92254): It made 2 tests timeout
https://bugs.webkit.org/show_bug.cgi?id=65609

* platform/qt/Skipped: Unskip now passing tests.

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

12 years agoWeb Inspector: [SuggestBox] textPrompt.css disablement displays garbled suggest box
apavlov@chromium.org [Tue, 21 Feb 2012 16:17:03 +0000 (16:17 +0000)]
Web Inspector: [SuggestBox] textPrompt.css disablement displays garbled suggest box
https://bugs.webkit.org/show_bug.cgi?id=79107

Reviewed by Pavel Feldman.

* inspector/front-end/TextPrompt.js:
(WebInspector.TextPrompt.SuggestBox):
(WebInspector.TextPrompt.SuggestBox.prototype.get visible):
(WebInspector.TextPrompt.SuggestBox.prototype.hide):
(WebInspector.TextPrompt.SuggestBox.prototype.removeFromElement):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
* inspector/front-end/textPrompt.css:
(.suggest-box):

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

12 years agoWeb Inspector: timeline hangs on a page with deep chain of nested events.
yurys@chromium.org [Tue, 21 Feb 2012 16:14:19 +0000 (16:14 +0000)]
Web Inspector: timeline hangs on a page with deep chain of nested events.
https://bugs.webkit.org/show_bug.cgi?id=79106

Use stack of states instead of recursive calls when traversing records tree to
avoid stack overflow.

Reviewed by Pavel Feldman.

* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewPane.prototype._forAllRecords):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._filterRecords):

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

12 years agoWeb Inspector: [crash] upon style modification after navigation
pfeldman@chromium.org [Tue, 21 Feb 2012 15:56:57 +0000 (15:56 +0000)]
Web Inspector: [crash] upon style modification after navigation
https://bugs.webkit.org/show_bug.cgi?id=79108

Reviewed by Yury Semikhatsky.

* inspector/InspectorHistory.cpp:
(WebCore::InspectorHistory::undo):
(WebCore::InspectorHistory::redo):
(WebCore::InspectorHistory::reset):

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

12 years agoUse WTF::cryptographicallyRandomValues in FileSystemWin.cpp
paroga@webkit.org [Tue, 21 Feb 2012 15:52:06 +0000 (15:52 +0000)]
Use WTF::cryptographicallyRandomValues in FileSystemWin.cpp
https://bugs.webkit.org/show_bug.cgi?id=79089

Reviewed by Adam Roben.

Avoid loading and unloading of the crypto library during every
call to openTemporaryFile() and make the code easier.

* platform/win/FileSystemWin.cpp:
(WebCore::openTemporaryFile):

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

12 years agoRemove stylesheet pointer from StylePropertySet
ossy@webkit.org [Tue, 21 Feb 2012 15:31:14 +0000 (15:31 +0000)]
Remove stylesheet pointer from StylePropertySet
https://bugs.webkit.org/show_bug.cgi?id=79092

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-02-21
Reviewed by Csaba Osztrogonác.

Qt buildfix after r108345.

* css/CSSParser.cpp:
(WebCore::parseColorValue):

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

12 years agoRemove stylesheet pointer from StylePropertySet
ossy@webkit.org [Tue, 21 Feb 2012 15:14:49 +0000 (15:14 +0000)]
Remove stylesheet pointer from StylePropertySet
https://bugs.webkit.org/show_bug.cgi?id=79092

Reviewed by Antti Koivisto.

Qt buildfix after r108345. We need this workaround because of buggy gcc (4.4.5), which
reported a false warning: 'value$m_ptr' may be used uninitialized in this function

* css/CSSParser.cpp:
(WebCore::parseSimpleLengthValue):

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

12 years agoShrink attribute style property sets after populating them.
kling@webkit.org [Tue, 21 Feb 2012 14:37:51 +0000 (14:37 +0000)]
Shrink attribute style property sets after populating them.
<http://webkit.org/b/78972>

Reviewed by Antti Koivisto.

Add a StylePropertySet::shrinkToFit() and call it at the end of updateStyleAttribute()
to minimize the amount of wasted space.

* css/StylePropertySet.h:
(WebCore::StylePropertySet::shrinkToFit):
* dom/StyledElement.cpp:
(WebCore::StyledElement::updateAttributeStyle):

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

12 years ago[Qt] Unreviewed gardening, skip new failing and crashing test to paint the bot green.
ossy@webkit.org [Tue, 21 Feb 2012 14:20:04 +0000 (14:20 +0000)]
[Qt] Unreviewed gardening, skip new failing and crashing test to paint the bot green.

* platform/qt-mac/Skipped:

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

12 years agoDoes not build on IA64, SPARC and Alpha
kov@webkit.org [Tue, 21 Feb 2012 14:06:36 +0000 (14:06 +0000)]
Does not build on IA64, SPARC and Alpha
https://bugs.webkit.org/show_bug.cgi?id=79047

Patch by Gustavo Noronha Silva  <kov@debian.org> and Bob Tracy <rct@frus.com> on 2012-02-21
Rubber-stamped by Kent Tamura.

* wtf/dtoa/utils.h: these architectures also have correct double
operations, so add them to the appropriate side of the check.

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

12 years ago[Qt] Unreviewed gardening, unskip now passing tests.
ossy@webkit.org [Tue, 21 Feb 2012 13:53:41 +0000 (13:53 +0000)]
[Qt] Unreviewed gardening, unskip now passing tests.

* platform/qt-4.8/Skipped:
* platform/qt-5.0-wk2/Skipped:
* platform/wk2/Skipped:

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

12 years agoRemove stylesheet pointer from StylePropertySet
antti@apple.com [Tue, 21 Feb 2012 13:49:15 +0000 (13:49 +0000)]
Remove stylesheet pointer from StylePropertySet
https://bugs.webkit.org/show_bug.cgi?id=79092

Reviewed by Andreas Kling.

The context should be passed as an argument for CSS parser invoking setters that actually need it.

- Remove the context stylesheet pointer.
- Add context stylesheet argument to setters.
- Drop an unnecessary StylePropertySet constructor, pass strict parsing flag directly.
- Adapt to changes by passing in the context stylesheet where needed.
- Add StyledElement::applyPresentationAttributeToStyle helpers for building up the attribute style.

* css/CSSFontFaceRule.cpp:
(WebCore::CSSFontFaceRule::addSubresourceStyleURLs):
* css/CSSParser.cpp:
(WebCore::parseColorValue):
(WebCore::parseSimpleLengthValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseDeclaration):
(WebCore::CSSParser::createStyleRule):
(WebCore::CSSParser::createFontFaceRule):
(WebCore::CSSParser::createPageRule):
(WebCore::CSSParser::createKeyframeRule):
* css/CSSParser.h:
(CSSParser):
* css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::addSubresourceStyleURLs):
* css/StylePropertySet.cpp:
(WebCore::PropertySetCSSStyleDeclaration::contextStyleSheet):
(WebCore::PropertySetCSSStyleDeclaration::setNeedsStyleRecalc):
(RuleCSSStyleDeclaration):
(InlineCSSStyleDeclaration):
(WebCore):
(WebCore::StylePropertySet::StylePropertySet):
(WebCore::StylePropertySet::setProperty):
(WebCore::StylePropertySet::parseDeclaration):
(WebCore::StylePropertySet::addSubresourceStyleURLs):
(WebCore::StylePropertySet::clearParentRule):
(WebCore::StylePropertySet::clearParentElement):
(WebCore::PropertySetCSSStyleDeclaration::setCssText):
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
(WebCore::PropertySetCSSStyleDeclaration::parentStyleSheet):
(WebCore::RuleCSSStyleDeclaration::setNeedsStyleRecalc):
(WebCore::RuleCSSStyleDeclaration::contextStyleSheet):
(WebCore::InlineCSSStyleDeclaration::contextStyleSheet):
(SameSizeAsStylePropertySet):
* css/StylePropertySet.h:
(WebCore::StylePropertySet::create):
(StylePropertySet):
* css/WebKitCSSMatrix.cpp:
(WebCore::WebKitCSSMatrix::setMatrixValue):
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::ensureInlineStyleDecl):
* dom/StyledElement.cpp:
(WebCore):
(WebCore::StyledElement::parseAttribute):
(WebCore::StyledElement::setInlineStyleProperty):
(WebCore::StyledElement::addSubresourceAttributeURLs):
(WebCore::StyledElement::updateAttributeStyle):
* dom/StyledElement.h:
(StyledElement):
(WebCore::StyledElement::applyPresentationAttributeToStyle):
(WebCore):
* html/HTMLBRElement.cpp:
(WebCore::HTMLBRElement::collectStyleForAttribute):
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::collectStyleForAttribute):
* html/HTMLDivElement.cpp:
(WebCore::HTMLDivElement::collectStyleForAttribute):
* html/HTMLElement.cpp:
(WebCore::HTMLElement::applyBorderAttributeToStyle):
(WebCore::HTMLElement::mapLanguageAttributeToLocale):
(WebCore::HTMLElement::collectStyleForAttribute):
(WebCore::HTMLElement::applyAlignmentAttributeToStyle):
(WebCore::HTMLElement::addHTMLLengthToStyle):
(WebCore::HTMLElement::addHTMLColorToStyle):
* html/HTMLElement.h:
(HTMLElement):
* html/HTMLFontElement.cpp:
(WebCore::HTMLFontElement::collectStyleForAttribute):
* html/HTMLHRElement.cpp:
(WebCore::HTMLHRElement::collectStyleForAttribute):
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::collectStyleForAttribute):
* html/HTMLLIElement.cpp:
(WebCore::HTMLLIElement::collectStyleForAttribute):
* html/HTMLMarqueeElement.cpp:
(WebCore::HTMLMarqueeElement::collectStyleForAttribute):
* html/HTMLOListElement.cpp:
(WebCore::HTMLOListElement::collectStyleForAttribute):
* html/HTMLParagraphElement.cpp:
(WebCore::HTMLParagraphElement::collectStyleForAttribute):
* html/HTMLTableCaptionElement.cpp:
(WebCore::HTMLTableCaptionElement::collectStyleForAttribute):
* html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::collectStyleForAttribute):
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::collectStyleForAttribute):
* html/HTMLTablePartElement.cpp:
(WebCore::HTMLTablePartElement::collectStyleForAttribute):
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::collectStyleForAttribute):
* html/HTMLUListElement.cpp:
(WebCore::HTMLUListElement::collectStyleForAttribute):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::setFont):
* mathml/MathMLElement.cpp:
(WebCore::MathMLElement::collectStyleForAttribute):
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::insertedIntoDocument):
(WebCore::SVGFontFaceElement::removedFromDocument):
(WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
* svg/SVGImageElement.cpp:
(WebCore::SVGImageElement::collectStyleForAttribute):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::collectStyleForAttribute):
* svg/SVGTextContentElement.cpp:
(WebCore::SVGTextContentElement::collectStyleForAttribute):

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

12 years ago[V8] Web Inspector: set breakpoint/pause doesn't work when worker is in a tight loop
yurys@chromium.org [Tue, 21 Feb 2012 13:10:35 +0000 (13:10 +0000)]
[V8] Web Inspector: set breakpoint/pause doesn't work when worker is in a tight loop
https://bugs.webkit.org/show_bug.cgi?id=79097

Source/WebCore:

Worker script will be interrupted to dispatch all arriving inspector commands.
This way debugger will be operable even if worker is in a tight loop.

Reviewed by Pavel Feldman.

* bindings/js/ScriptDebugServer.h:
(Task):
(WebCore::ScriptDebugServer::Task::~Task):
(ScriptDebugServer):
* bindings/js/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::interruptAndRunTask):
(WebCore):
* bindings/js/WorkerScriptDebugServer.h:
(WorkerScriptDebugServer):
* bindings/v8/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::interruptAndRun):
* bindings/v8/ScriptDebugServer.h:
(ScriptDebugServer):
* bindings/v8/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
(WebCore::WorkerScriptDebugServer::interruptAndRunTask):
(WebCore):
* bindings/v8/WorkerScriptDebugServer.h:
(v8):
(WebCore):
(WorkerScriptDebugServer):
* inspector/WorkerDebuggerAgent.cpp:
(WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
(WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
(WebCore):
(WebCore::WorkerDebuggerAgent::interruptAndDispatchInspectorCommands):
* inspector/WorkerDebuggerAgent.h:
(WebCore):
(WorkerDebuggerAgent):
* workers/WorkerMessagingProxy.cpp:
(WebCore):
(WebCore::WorkerMessagingProxy::sendMessageToInspector):
* workers/WorkerRunLoop.cpp:
(WebCore::WorkerRunLoop::run):
(WebCore::WorkerRunLoop::runInMode):
* workers/WorkerRunLoop.h:
(WorkerRunLoop):

Source/WebKit/chromium:

Worker script execution will be interrupted for dispatching inspector commands.

Reviewed by Pavel Feldman.

* src/WebSharedWorkerImpl.cpp:
(WebKit::WebSharedWorkerImpl::dispatchDevToolsMessage):

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

12 years ago[Qt] 3 SVG tests assert after r107207
ossy@webkit.org [Tue, 21 Feb 2012 13:05:04 +0000 (13:05 +0000)]
[Qt] 3 SVG tests assert after r107207
https://bugs.webkit.org/show_bug.cgi?id=78332

* platform/qt/Skipped: Skip 3 more asserting test.

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

12 years ago[Qt] REGRESSION(r108112): sputnik/Conformance/15_Native_Objects/15.1_The_Global_Objec...
ossy@webkit.org [Tue, 21 Feb 2012 12:38:40 +0000 (12:38 +0000)]
[Qt] REGRESSION(r108112): sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.3/15.1.3.2_decodeURIComponent/S15.1.3.2_A1.2_T2.html crashes intermittently
https://bugs.webkit.org/show_bug.cgi?id=79029

* platform/qt/Skipped: Skip new crashing test.

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

12 years ago[Qt] tst_QWebPage::infiniteLoopJS() timeouts with DFG JIT
ossy@webkit.org [Tue, 21 Feb 2012 12:34:21 +0000 (12:34 +0000)]
[Qt] tst_QWebPage::infiniteLoopJS() timeouts with DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=79040

Reviewed by Simon Hausmann.

* tests/qwebpage/tst_qwebpage.cpp:
(tst_QWebPage): Disable tst_QWebPage::infiniteLoopJS() until proper fix.

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

12 years agoNot reviewed: fixing Mac build (take 2).
pfeldman@chromium.org [Tue, 21 Feb 2012 12:26:14 +0000 (12:26 +0000)]
Not reviewed: fixing Mac build (take 2).

* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::setShowPaintRects):

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

12 years agoUnreviewed, skip new failing mediastream test on GTK.
philn@webkit.org [Tue, 21 Feb 2012 12:16:09 +0000 (12:16 +0000)]
Unreviewed, skip new failing mediastream test on GTK.

* platform/gtk/Skipped:

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

12 years agoNot reviewed: fixing Mac build.
pfeldman@chromium.org [Tue, 21 Feb 2012 12:13:42 +0000 (12:13 +0000)]
Not reviewed: fixing Mac build.

* inspector/DOMNodeHighlighter.cpp:
(WebCore::DOMNodeHighlighter::drawOutline):
* inspector/DOMNodeHighlighter.h:
(DOMNodeHighlighter):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willPaintImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willPaint):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::willPaint):
(WebCore::InspectorPageAgent::didPaint):
* inspector/InspectorPageAgent.h:

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

12 years agoWeb Inspector: Switch Debugger agent to TypeBuilder
vsevik@chromium.org [Tue, 21 Feb 2012 12:04:57 +0000 (12:04 +0000)]
Web Inspector: Switch Debugger agent to TypeBuilder
https://bugs.webkit.org/show_bug.cgi?id=78390

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-02-21
Reviewed by Vsevolod Vlasov.

Client code is switched to TypeBuilder.

* inspector/CodeGeneratorInspector.py:
* inspector/InjectedScript.cpp:
(WebCore::InjectedScript::evaluateOnCallFrame):
(WebCore::InjectedScript::getFunctionDetails):
(WebCore::InjectedScript::getProperties):
(WebCore::InjectedScript::wrapCallFrames):
* inspector/InjectedScript.h:
(InjectedScript):
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
(WebCore::InspectorDebuggerAgent::resolveBreakpoint):
(WebCore::InspectorDebuggerAgent::getFunctionDetails):
(WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
(WebCore::InspectorDebuggerAgent::currentCallFrames):
(WebCore::InspectorDebuggerAgent::didParseSource):
* inspector/InspectorDebuggerAgent.h:
(InspectorDebuggerAgent):

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

12 years agoNot reviewed: fixing poor merge in r108332.
pfeldman@chromium.org [Tue, 21 Feb 2012 12:00:48 +0000 (12:00 +0000)]
Not reviewed: fixing poor merge in r108332.

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection.prototype._handleSelectorClick):
* inspector/front-end/externs.js:

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

12 years agoWeb Inspector: [Styles] Rule source URL tooltip should show line number
apavlov@chromium.org [Tue, 21 Feb 2012 11:47:55 +0000 (11:47 +0000)]
Web Inspector: [Styles] Rule source URL tooltip should show line number
https://bugs.webkit.org/show_bug.cgi?id=79087

Reviewed by Pavel Feldman.

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

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

12 years agoFix one more GTK+ unit test after r108278.
philn@webkit.org [Tue, 21 Feb 2012 11:46:07 +0000 (11:46 +0000)]
Fix one more GTK+ unit test after r108278.

Reviewed by Alejandro G. Castro.

* tests/testkeyevents.c:
(map_event_cb): No longer grab focus here.
(setup_keyevent_test): Grabbing focus here seems to be late enough in the process.

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

12 years ago[Qt] Print warning when importing experimental WK2 APIs in QML
commit-queue@webkit.org [Tue, 21 Feb 2012 11:34:24 +0000 (11:34 +0000)]
[Qt] Print warning when importing experimental WK2 APIs in QML
https://bugs.webkit.org/show_bug.cgi?id=78817

Patch by Andras Becsi <andras.becsi@nokia.com> on 2012-02-21
Reviewed by Simon Hausmann.

* declarative/experimental/plugin.cpp:

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

12 years agoWeb Inspector: clicking empty space should not re-enter edit mode
pfeldman@chromium.org [Tue, 21 Feb 2012 11:32:44 +0000 (11:32 +0000)]
Web Inspector: clicking empty space should not re-enter edit mode
https://bugs.webkit.org/show_bug.cgi?id=79024

Patch by Pavel Feldman <pfeldman@chomium.org> on 2012-02-21
Reviewed by Vsevolod Vlasov.

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection):
(WebInspector.StylePropertiesSection.prototype._handleEmptySpaceMouseDown):
(WebInspector.StylePropertiesSection.prototype._handleEmptySpaceClick):

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

12 years agoWeb Inspector: evaluate on hover does not work for large files.
pfeldman@chromium.org [Tue, 21 Feb 2012 11:30:30 +0000 (11:30 +0000)]
Web Inspector: evaluate on hover does not work for large files.
https://bugs.webkit.org/show_bug.cgi?id=79015

Patch by Pavel Feldman <pfeldman@chomium.org> on 2012-02-21
Reviewed by Yury Semikhatsky.

* inspector/front-end/JavaScriptSourceFrame.js:
(WebInspector.JavaScriptSourceFrame.prototype._getPopoverAnchor):
(WebInspector.JavaScriptSourceFrame.prototype._highlightExpression):
* inspector/front-end/Popover.js:
(WebInspector.PopoverHelper.prototype._handleMouseAction):
* inspector/front-end/SourceJavaScriptTokenizer.js:
(WebInspector.SourceJavaScriptTokenizer):
(WebInspector.SourceJavaScriptTokenizer.prototype.nextToken):
* inspector/front-end/SourceJavaScriptTokenizer.re2js:

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

12 years agoWeb Inspector: add "show paint rectangles" setting.
pfeldman@chromium.org [Tue, 21 Feb 2012 11:28:47 +0000 (11:28 +0000)]
Web Inspector: add "show paint rectangles" setting.
https://bugs.webkit.org/show_bug.cgi?id=79030

Reviewed by Yury Semikhatsky.

* English.lproj/localizedStrings.js:
* inspector/DOMNodeHighlighter.cpp:
(WebCore::DOMNodeHighlighter::drawOutline):
(DOMNodeHighlighter):
* inspector/DOMNodeHighlighter.h:
(WebCore):
(DOMNodeHighlighter):
* inspector/Inspector.json:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willPaintImpl):
(WebCore::InspectorInstrumentation::didPaintImpl):
* inspector/InspectorInstrumentation.h:
(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willPaint):
* inspector/InspectorPageAgent.cpp:
(PageAgentState):
(WebCore::InspectorPageAgent::create):
(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::setShowPaintRects):
(WebCore):
(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
(WebCore::InspectorPageAgent::willPaint):
(WebCore::InspectorPageAgent::didPaint):
(WebCore::InspectorPageAgent::buildObjectForFrame):
* inspector/InspectorPageAgent.h:
(WebCore):
* inspector/front-end/Settings.js:
(WebInspector.Settings):
* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen):
(WebInspector.SettingsScreen.prototype._showPaintRectsChanged):
* inspector/front-end/inspector.js:
* page/FrameView.cpp:
(WebCore::FrameView::paintContents):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintContents):

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

12 years ago[Qt] Clean-up project file after r108310
abecsi@webkit.org [Tue, 21 Feb 2012 11:26:27 +0000 (11:26 +0000)]
[Qt] Clean-up project file after r108310

Reviewed by Csaba Osztrogonác.

No new tests needed.

* Target.pri: Fix path for TextTrack headers.

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

12 years ago[Qt][WK2] Get rid of the dependency to QtWidgets
abecsi@webkit.org [Tue, 21 Feb 2012 10:57:13 +0000 (10:57 +0000)]
[Qt][WK2] Get rid of the dependency to QtWidgets
https://bugs.webkit.org/show_bug.cgi?id=76276

Reviewed by Simon Hausmann.

Source/WebKit2:

* Target.pri:
* UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
(main):
* UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
* UIProcess/API/qt/tests/tests.pri:
* UIProcess/API/qt/tests/util.h:

Tools:

* MiniBrowser/qt/MiniBrowser.pro:
* MiniBrowser/qt/MiniBrowserApplication.cpp:
(MiniBrowserApplication::MiniBrowserApplication):
(MiniBrowserApplication::notify):
(MiniBrowserApplication::sendTouchEvent):
* MiniBrowser/qt/MiniBrowserApplication.h:
(MiniBrowserApplication):
* QtTestBrowser/locationedit.h:
* WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:
(WTR::activateFonts):
* WebKitTestRunner/qt/PlatformWebViewQt.cpp:

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

12 years ago[GStreamer] media/W3C failures
philn@webkit.org [Tue, 21 Feb 2012 10:33:53 +0000 (10:33 +0000)]
[GStreamer] media/W3C failures
https://bugs.webkit.org/show_bug.cgi?id=75078

Reviewed by Martin Robinson.

Source/WebCore:

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::load): Clean out everything
after file:// url path to cope with media/W3C tests loading
file:///path/to/media.ext?some parameters.

LayoutTests:

Unskip now passing tests and add GTK baselines for them.

* platform/gtk/Skipped:
* platform/gtk/media/W3C/audio/canPlayType/canPlayType_supported_but_no_codecs_parameter_2-expected.txt: Added.
* platform/gtk/media/W3C/video/canPlayType/canPlayType_codecs_order_1-expected.txt: Added.
* platform/gtk/media/W3C/video/canPlayType/canPlayType_codecs_order_3-expected.txt: Added.
* platform/gtk/media/W3C/video/canPlayType/canPlayType_supported_but_no_codecs_parameter_1-expected.txt: Added.
* platform/gtk/media/W3C/video/canPlayType/canPlayType_supported_but_no_codecs_parameter_3-expected.txt: Added.
* platform/gtk/media/W3C/video/canPlayType/canPlayType_two_implies_one_1-expected.txt: Added.
* platform/gtk/media/W3C/video/canPlayType/canPlayType_two_implies_one_2-expected.txt: Added.
* platform/gtk/media/W3C/video/canPlayType/canPlayType_two_implies_one_5-expected.txt: Added.
* platform/gtk/media/W3C/video/canPlayType/canPlayType_two_implies_one_6-expected.txt: Added.

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

12 years agoFix massive crashes in all tests introduced by previous build fix, and fix non-DFG...
fpizlo@apple.com [Tue, 21 Feb 2012 09:49:22 +0000 (09:49 +0000)]
Fix massive crashes in all tests introduced by previous build fix, and fix non-DFG build.
https://bugs.webkit.org/show_bug.cgi?id=75812

Reviewed by Csaba Osztrogonác.

* dfg/DFGOperations.cpp:
(JSC):
* jit/HostCallReturnValue.h:
(JSC::initializeHostCallReturnValue):

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

12 years agoNot reviewed, build fix for non-client-based Geolocation builds after r107982.
mlilek@apple.com [Tue, 21 Feb 2012 09:20:04 +0000 (09:20 +0000)]
Not reviewed, build fix for non-client-based Geolocation builds after r107982.

* page/Geolocation.cpp:

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

12 years ago[V8] Web Inspector: simplify worker debugger implementation
yurys@chromium.org [Tue, 21 Feb 2012 09:09:39 +0000 (09:09 +0000)]
[V8] Web Inspector: simplify worker debugger implementation
https://bugs.webkit.org/show_bug.cgi?id=79085

There is one instance of WorkerScriptDebugServer per worker thread. We don't
need to resolve WorkerContext from V8::Context anymore.

Reviewed by Pavel Feldman.

* bindings/v8/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
(WebCore::WorkerScriptDebugServer::addListener):
(WebCore::WorkerScriptDebugServer::removeListener):
(WebCore::WorkerScriptDebugServer::getDebugListenerForContext):
(WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
* bindings/v8/WorkerScriptDebugServer.h:
(WorkerScriptDebugServer):
* inspector/WorkerDebuggerAgent.cpp:
(WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
(WebCore::WorkerDebuggerAgent::startListeningScriptDebugServer):
(WebCore::WorkerDebuggerAgent::stopListeningScriptDebugServer):

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

12 years agoAttempted build fix for ELF platforms.
fpizlo@apple.com [Tue, 21 Feb 2012 09:09:22 +0000 (09:09 +0000)]
Attempted build fix for ELF platforms.

* dfg/DFGOperations.cpp:
(JSC):
(JSC::getHostCallReturnValueWithExecState):
* jit/HostCallReturnValue.cpp:
(JSC):
* jit/HostCallReturnValue.h:
(JSC::initializeHostCallReturnValue):

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

12 years agoEnable the IDL attribute checker in Chromium
haraken@chromium.org [Tue, 21 Feb 2012 09:00:03 +0000 (09:00 +0000)]
Enable the IDL attribute checker in Chromium
https://bugs.webkit.org/show_bug.cgi?id=79082

Reviewed by Adam Barth.

We have fixed 10~ bugs caused by typos of IDL attributes.
This patch adds an IDL attribute checker, which checks if all IDL attributes
used in IDL files are implemented by code generators.

    - The IDL attribute checker uses IDLAttributes.txt, which lists all
      IDL attributes implemented in code generators. If we want to add
      a new IDL attribute, we need to add it to IDLAttributes.txt manually.
    - The IDL attribute checker checks if all IDL attributes used in IDL files
      are listed in IDLAttributes.txt.
    - If the IDL attribute checker fails, the build fails with a verbose error message.

No tests. I manually checked that [Custommm], [CallWith=],
[CallWith=ScriptExecutionContext|Foo] cause build failures.

* WebCore.gyp/WebCore.gyp: Modified to enable the IDL attribute checker.

* bindings/scripts/resolve-supplemental.pl:
(loadIDLAttributes): This method loads a list of IDL attributes from IDLAttributes.txt.
(checkIDLAttributes): This method implementes the IDL attribute checker as described above.
(checkIfIDLAttributesExists):

* bindings/scripts/IDLParser.pm: "1" is not good to represent that
the IDL attribute does not have any value. This patch changed it to "VALUE_IS_MISSING".
(parseExtendedAttributes):
(ParseInterface):
* bindings/scripts/CodeGenerator.pm: Ditto.
(ContentAttributeName):
* bindings/scripts/CodeGeneratorV8.pm: Ditto.
(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateSingleBatchedAttribute):
(GetRuntimeEnableFunctionName):
* bindings/scripts/IDLAttributes.txt: Added. This file lists all IDL attributes implemented
in code generators.

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

12 years agoUse Win32 API to get file information
paroga@webkit.org [Tue, 21 Feb 2012 08:43:35 +0000 (08:43 +0000)]
Use Win32 API to get file information
https://bugs.webkit.org/show_bug.cgi?id=55336

Reviewed by Adam Roben.

Use FindFirstFile() in favour over _wstat64() to share the code with WinCE.

* platform/win/FileSystemWin.cpp:
(WebCore):
(WebCore::getFindData):
(WebCore::getFileSize):
(WebCore::getFileModificationTime):
(WebCore::fileExists):

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

12 years ago[Chromium] Unreviewed, update test expectations to reflect recent flakiness.
yutak@chromium.org [Tue, 21 Feb 2012 08:25:06 +0000 (08:25 +0000)]
[Chromium] Unreviewed, update test expectations to reflect recent flakiness.

* platform/chromium/test_expectations.txt:

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

12 years agoRebaseline a test for GTK+.
mrobinson@webkit.org [Tue, 21 Feb 2012 08:19:42 +0000 (08:19 +0000)]
Rebaseline a test for GTK+.

* platform/gtk/fast/dom/prototype-inheritance-2-expected.txt: New baseline.

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

12 years agoSkip some test that are failing after r108278.
mrobinson@webkit.org [Tue, 21 Feb 2012 08:10:59 +0000 (08:10 +0000)]
Skip some test that are failing after r108278.

* platform/gtk/Skipped: Skip a few tests.

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

12 years agomastercfg_unittest.py fails without simplejson
abarth@webkit.org [Tue, 21 Feb 2012 07:54:25 +0000 (07:54 +0000)]
mastercfg_unittest.py fails without simplejson
https://bugs.webkit.org/show_bug.cgi?id=79070

Reviewed by Csaba Osztrogonác.

Now that we require Python 2.6 (and higher) we can import json rather
than simplejson.  We still need to use the simplejson name because
that's what the master.cfg script expects.

* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(BuildBotConfigLoader._add_dependant_modules_to_sys_modules):

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

12 years agoFix GTK+ unit tests after r108281.
mrobinson@webkit.org [Tue, 21 Feb 2012 07:45:54 +0000 (07:45 +0000)]
Fix GTK+ unit tests after r108281.

Reviewed by Alejandro G. Castro.

* tests/testwebplugindatabase.c:
(test_webkit_web_plugin_database_get_plugins): Update the description used
in the test.

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

12 years agoFix GTK+ unit tests after r108278.
mrobinson@webkit.org [Tue, 21 Feb 2012 07:44:36 +0000 (07:44 +0000)]
Fix GTK+ unit tests after r108278.

Reviewed by Alejandro G. Castro.

Now that WebCore is no longer stealing focus, we need to
adjust where we grab focus to ensure that it actually succeeds.

* tests/testcopyandpaste.c:
(map_event_cb): No longer grab focus here.
(runPasteTestCallback): Grabbing focus here seems to be late enough in the process.

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

12 years agoInvalid cast in WebCore::toElement / WebCore::HTMLElementStack::ElementRecord::element
abarth@webkit.org [Tue, 21 Feb 2012 07:32:52 +0000 (07:32 +0000)]
Invalid cast in WebCore::toElement / WebCore::HTMLElementStack::ElementRecord::element
https://bugs.webkit.org/show_bug.cgi?id=78975

Reviewed by Eric Seidel.

Source/WebCore:

We're supposed to set the action attribute on the form element we just
created.  Previously, we assumed the newly created form element would
be on the top of the stack of open elements, but if we're in the table
body insertion mode, the form element gets treated as self closing and
is therefore popped off the stack of open elements.

Fortunately, we already cache a pointer to the most recently inserted
form element on the HTMLConstructionSite, so we can just grab the
element from there.

Test: html5lib/runner.html

* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
(WebCore):

LayoutTests:

* html5lib/resourcesl/webkit-02.dat:

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

12 years agoUnite TextTrack-related files with their friends in WebCore/html/track
abarth@webkit.org [Tue, 21 Feb 2012 07:07:21 +0000 (07:07 +0000)]
Unite TextTrack-related files with their friends in WebCore/html/track
https://bugs.webkit.org/show_bug.cgi?id=78941

Reviewed by Eric Seidel.

The code that supports <track> seems to be split between the
WebCore/html directory and the WebCore/html/track directory.  This
patch unites this code in the WebCore/html/track directory.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* html/LoadableTextTrack.cpp: Removed.
* html/LoadableTextTrack.h: Removed.
* html/TextTrack.cpp: Removed.
* html/TextTrack.h: Removed.
* html/TextTrack.idl: Removed.
* html/TextTrackCue.cpp: Removed.
* html/TextTrackCue.h: Removed.
* html/TextTrackCue.idl: Removed.
* html/TextTrackCueList.cpp: Removed.
* html/TextTrackCueList.h: Removed.
* html/TextTrackCueList.idl: Removed.
* html/track/LoadableTextTrack.cpp: Copied from Source/WebCore/html/LoadableTextTrack.cpp.
* html/track/LoadableTextTrack.h: Copied from Source/WebCore/html/LoadableTextTrack.h.
* html/track/TextTrack.cpp: Copied from Source/WebCore/html/TextTrack.cpp.
* html/track/TextTrack.h: Copied from Source/WebCore/html/TextTrack.h.
* html/track/TextTrack.idl: Copied from Source/WebCore/html/TextTrack.idl.
* html/track/TextTrackCue.cpp: Copied from Source/WebCore/html/TextTrackCue.cpp.
* html/track/TextTrackCue.h: Copied from Source/WebCore/html/TextTrackCue.h.
* html/track/TextTrackCue.idl: Copied from Source/WebCore/html/TextTrackCue.idl.
* html/track/TextTrackCueList.cpp: Copied from Source/WebCore/html/TextTrackCueList.cpp.
* html/track/TextTrackCueList.h: Copied from Source/WebCore/html/TextTrackCueList.h.
* html/track/TextTrackCueList.idl: Copied from Source/WebCore/html/TextTrackCueList.idl.

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

12 years agoJSC should be a triple-tier VM
fpizlo@apple.com [Tue, 21 Feb 2012 06:49:37 +0000 (06:49 +0000)]
JSC should be a triple-tier VM
https://bugs.webkit.org/show_bug.cgi?id=75812
<rdar://problem/10079694>

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Implemented an interpreter that uses the JIT's calling convention. This
interpreter is called LLInt, or the Low Level Interpreter. JSC will now
will start by executing code in LLInt and will only tier up to the old
JIT after the code is proven hot.

LLInt is written in a modified form of our macro assembly. This new macro
assembly is compiled by an offline assembler (see offlineasm), which
implements many modern conveniences such as a Turing-complete CPS-based
macro language and direct access to relevant C++ type information
(basically offsets of fields and sizes of structs/classes).

Code executing in LLInt appears to the rest of the JSC world "as if" it
were executing in the old JIT. Hence, things like exception handling and
cross-execution-engine calls just work and require pretty much no
additional overhead.

This interpreter is 2-2.5x faster than our old interpreter on SunSpider,
V8, and Kraken. With triple-tiering turned on, we're neutral on SunSpider,
V8, and Kraken, but appear to get a double-digit improvement on real-world
websites due to a huge reduction in the amount of JIT'ing.

* CMakeLists.txt:
* GNUmakefile.am:
* GNUmakefile.list.am:
* JavaScriptCore.pri:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/copy-files.cmd:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* assembler/LinkBuffer.h:
* assembler/MacroAssemblerCodeRef.h:
(MacroAssemblerCodePtr):
(JSC::MacroAssemblerCodePtr::createFromExecutableAddress):
* bytecode/BytecodeConventions.h: Added.
* bytecode/CallLinkStatus.cpp:
(JSC::CallLinkStatus::computeFromLLInt):
(JSC):
(JSC::CallLinkStatus::computeFor):
* bytecode/CallLinkStatus.h:
(JSC::CallLinkStatus::isSet):
(JSC::CallLinkStatus::operator!):
(CallLinkStatus):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dump):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::~CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::stronglyVisitStrongReferences):
(JSC):
(JSC::CodeBlock::unlinkCalls):
(JSC::CodeBlock::unlinkIncomingCalls):
(JSC::CodeBlock::bytecodeOffset):
(JSC::ProgramCodeBlock::jettison):
(JSC::EvalCodeBlock::jettison):
(JSC::FunctionCodeBlock::jettison):
(JSC::ProgramCodeBlock::jitCompileImpl):
(JSC::EvalCodeBlock::jitCompileImpl):
(JSC::FunctionCodeBlock::jitCompileImpl):
* bytecode/CodeBlock.h:
(JSC):
(CodeBlock):
(JSC::CodeBlock::baselineVersion):
(JSC::CodeBlock::linkIncomingCall):
(JSC::CodeBlock::bytecodeOffset):
(JSC::CodeBlock::jitCompile):
(JSC::CodeBlock::hasOptimizedReplacement):
(JSC::CodeBlock::addPropertyAccessInstruction):
(JSC::CodeBlock::addGlobalResolveInstruction):
(JSC::CodeBlock::addLLIntCallLinkInfo):
(JSC::CodeBlock::addGlobalResolveInfo):
(JSC::CodeBlock::numberOfMethodCallLinkInfos):
(JSC::CodeBlock::valueProfilePredictionForBytecodeOffset):
(JSC::CodeBlock::likelyToTakeSlowCase):
(JSC::CodeBlock::couldTakeSlowCase):
(JSC::CodeBlock::likelyToTakeSpecialFastCase):
(JSC::CodeBlock::likelyToTakeDeepestSlowCase):
(JSC::CodeBlock::likelyToTakeAnySlowCase):
(JSC::CodeBlock::addFrequentExitSite):
(JSC::CodeBlock::dontJITAnytimeSoon):
(JSC::CodeBlock::jitAfterWarmUp):
(JSC::CodeBlock::jitSoon):
(JSC::CodeBlock::llintExecuteCounter):
(ProgramCodeBlock):
(EvalCodeBlock):
(FunctionCodeBlock):
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFromLLInt):
(JSC):
(JSC::GetByIdStatus::computeFor):
* bytecode/GetByIdStatus.h:
(JSC::GetByIdStatus::GetByIdStatus):
(JSC::GetByIdStatus::wasSeenInJIT):
(GetByIdStatus):
* bytecode/Instruction.h:
(JSC):
(JSC::Instruction::Instruction):
(Instruction):
* bytecode/LLIntCallLinkInfo.h: Added.
(JSC):
(JSC::LLIntCallLinkInfo::LLIntCallLinkInfo):
(LLIntCallLinkInfo):
(JSC::LLIntCallLinkInfo::~LLIntCallLinkInfo):
(JSC::LLIntCallLinkInfo::isLinked):
(JSC::LLIntCallLinkInfo::unlink):
* bytecode/MethodCallLinkStatus.cpp:
(JSC::MethodCallLinkStatus::computeFor):
* bytecode/Opcode.cpp:
(JSC):
* bytecode/Opcode.h:
(JSC):
(JSC::padOpcodeName):
* bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeFromLLInt):
(JSC):
(JSC::PutByIdStatus::computeFor):
* bytecode/PutByIdStatus.h:
(PutByIdStatus):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitResolveWithBase):
(JSC::BytecodeGenerator::emitGetById):
(JSC::BytecodeGenerator::emitPutById):
(JSC::BytecodeGenerator::emitDirectPutById):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitConstruct):
(JSC::BytecodeGenerator::emitCatch):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
* dfg/DFGOSRExitCompiler.cpp:
* dfg/DFGOperations.cpp:
* heap/Heap.h:
(JSC):
(JSC::Heap::firstAllocatorWithoutDestructors):
(Heap):
* heap/MarkStack.cpp:
(JSC::visitChildren):
* heap/MarkedAllocator.h:
(JSC):
(MarkedAllocator):
* heap/MarkedSpace.h:
(JSC):
(MarkedSpace):
(JSC::MarkedSpace::firstAllocator):
* interpreter/CallFrame.cpp:
(JSC):
(JSC::CallFrame::bytecodeOffsetForNonDFGCode):
(JSC::CallFrame::setBytecodeOffsetForNonDFGCode):
(JSC::CallFrame::currentVPC):
(JSC::CallFrame::setCurrentVPC):
(JSC::CallFrame::trueCallerFrame):
* interpreter/CallFrame.h:
(JSC::ExecState::hasReturnPC):
(JSC::ExecState::clearReturnPC):
(ExecState):
(JSC::ExecState::bytecodeOffsetForNonDFGCode):
(JSC::ExecState::currentVPC):
(JSC::ExecState::setCurrentVPC):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::Interpreter):
(JSC::Interpreter::~Interpreter):
(JSC):
(JSC::Interpreter::initialize):
(JSC::Interpreter::isOpcode):
(JSC::Interpreter::unwindCallFrame):
(JSC::getCallerInfo):
(JSC::Interpreter::privateExecute):
(JSC::Interpreter::retrieveLastCaller):
* interpreter/Interpreter.h:
(JSC):
(Interpreter):
(JSC::Interpreter::getOpcode):
(JSC::Interpreter::getOpcodeID):
(JSC::Interpreter::classicEnabled):
* interpreter/RegisterFile.h:
(JSC):
(RegisterFile):
* jit/ExecutableAllocator.h:
(JSC):
* jit/HostCallReturnValue.cpp: Added.
(JSC):
(JSC::getHostCallReturnValueWithExecState):
* jit/HostCallReturnValue.h: Added.
(JSC):
(JSC::initializeHostCallReturnValue):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompile):
* jit/JITCode.h:
(JSC::JITCode::isOptimizingJIT):
(JITCode):
(JSC::JITCode::isBaselineCode):
(JSC::JITCode::JITCode):
* jit/JITDriver.h:
(JSC::jitCompileIfAppropriate):
(JSC::jitCompileFunctionIfAppropriate):
* jit/JITExceptions.cpp:
(JSC::jitThrow):
* jit/JITInlineMethods.h:
(JSC::JIT::updateTopCallFrame):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
(JSC):
* jit/JITStubs.h:
(JSC):
* jit/JSInterfaceJIT.h:
* llint: Added.
* llint/LLIntCommon.h: Added.
* llint/LLIntData.cpp: Added.
(LLInt):
(JSC::LLInt::Data::Data):
(JSC::LLInt::Data::performAssertions):
(JSC::LLInt::Data::~Data):
* llint/LLIntData.h: Added.
(JSC):
(LLInt):
(Data):
(JSC::LLInt::Data::exceptionInstructions):
(JSC::LLInt::Data::opcodeMap):
(JSC::LLInt::Data::performAssertions):
* llint/LLIntEntrypoints.cpp: Added.
(LLInt):
(JSC::LLInt::getFunctionEntrypoint):
(JSC::LLInt::getEvalEntrypoint):
(JSC::LLInt::getProgramEntrypoint):
* llint/LLIntEntrypoints.h: Added.
(JSC):
(LLInt):
(JSC::LLInt::getEntrypoint):
* llint/LLIntExceptions.cpp: Added.
(LLInt):
(JSC::LLInt::interpreterThrowInCaller):
(JSC::LLInt::returnToThrowForThrownException):
(JSC::LLInt::returnToThrow):
(JSC::LLInt::callToThrow):
* llint/LLIntExceptions.h: Added.
(JSC):
(LLInt):
* llint/LLIntOfflineAsmConfig.h: Added.
* llint/LLIntOffsetsExtractor.cpp: Added.
(JSC):
(LLIntOffsetsExtractor):
(JSC::LLIntOffsetsExtractor::dummy):
(main):
* llint/LLIntSlowPaths.cpp: Added.
(LLInt):
(JSC::LLInt::llint_trace_operand):
(JSC::LLInt::llint_trace_value):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::traceFunctionPrologue):
(JSC::LLInt::shouldJIT):
(JSC::LLInt::entryOSR):
(JSC::LLInt::resolveGlobal):
(JSC::LLInt::getByVal):
(JSC::LLInt::handleHostCall):
(JSC::LLInt::setUpCall):
(JSC::LLInt::genericCall):
* llint/LLIntSlowPaths.h: Added.
(JSC):
(LLInt):
* llint/LLIntThunks.cpp: Added.
(LLInt):
(JSC::LLInt::generateThunkWithJumpTo):
(JSC::LLInt::functionForCallEntryThunkGenerator):
(JSC::LLInt::functionForConstructEntryThunkGenerator):
(JSC::LLInt::functionForCallArityCheckThunkGenerator):
(JSC::LLInt::functionForConstructArityCheckThunkGenerator):
(JSC::LLInt::evalEntryThunkGenerator):
(JSC::LLInt::programEntryThunkGenerator):
* llint/LLIntThunks.h: Added.
(JSC):
(LLInt):
* llint/LowLevelInterpreter.asm: Added.
* llint/LowLevelInterpreter.cpp: Added.
* llint/LowLevelInterpreter.h: Added.
* offlineasm: Added.
* offlineasm/armv7.rb: Added.
* offlineasm/asm.rb: Added.
* offlineasm/ast.rb: Added.
* offlineasm/backends.rb: Added.
* offlineasm/generate_offset_extractor.rb: Added.
* offlineasm/instructions.rb: Added.
* offlineasm/offset_extractor_constants.rb: Added.
* offlineasm/offsets.rb: Added.
* offlineasm/opt.rb: Added.
* offlineasm/parser.rb: Added.
* offlineasm/registers.rb: Added.
* offlineasm/self_hash.rb: Added.
* offlineasm/settings.rb: Added.
* offlineasm/transform.rb: Added.
* offlineasm/x86.rb: Added.
* runtime/CodeSpecializationKind.h: Added.
(JSC):
* runtime/CommonSlowPaths.h:
(JSC::CommonSlowPaths::arityCheckFor):
(CommonSlowPaths):
* runtime/Executable.cpp:
(JSC::jettisonCodeBlock):
(JSC):
(JSC::EvalExecutable::jitCompile):
(JSC::samplingDescription):
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::jitCompile):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::baselineCodeBlockFor):
(JSC::FunctionExecutable::jitCompileForCall):
(JSC::FunctionExecutable::jitCompileForConstruct):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):
* runtime/Executable.h:
(JSC):
(EvalExecutable):
(ProgramExecutable):
(FunctionExecutable):
(JSC::FunctionExecutable::jitCompileFor):
* runtime/ExecutionHarness.h: Added.
(JSC):
(JSC::prepareForExecution):
(JSC::prepareFunctionForExecution):
* runtime/JSArray.h:
(JSC):
(JSArray):
* runtime/JSCell.h:
(JSC):
(JSCell):
* runtime/JSFunction.h:
(JSC):
(JSFunction):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSC):
(JSGlobalData):
* runtime/JSGlobalObject.h:
(JSC):
(JSGlobalObject):
* runtime/JSObject.h:
(JSC):
(JSObject):
(JSFinalObject):
* runtime/JSPropertyNameIterator.h:
(JSC):
(JSPropertyNameIterator):
* runtime/JSString.h:
(JSC):
(JSString):
* runtime/JSTypeInfo.h:
(JSC):
(TypeInfo):
* runtime/JSValue.cpp:
(JSC::JSValue::description):
* runtime/JSValue.h:
(LLInt):
(JSValue):
* runtime/JSVariableObject.h:
(JSC):
(JSVariableObject):
* runtime/Options.cpp:
(Options):
(JSC::Options::initializeOptions):
* runtime/Options.h:
(Options):
* runtime/ScopeChain.h:
(JSC):
(ScopeChainNode):
* runtime/Structure.cpp:
(JSC::Structure::addPropertyTransition):
* runtime/Structure.h:
(JSC):
(Structure):
* runtime/StructureChain.h:
(JSC):
(StructureChain):
* wtf/InlineASM.h:
* wtf/Platform.h:
* wtf/SentinelLinkedList.h:
(SentinelLinkedList):
(WTF::SentinelLinkedList::isEmpty):
* wtf/text/StringImpl.h:
(JSC):
(StringImpl):

Source/WebCore:

Reviewed by Gavin Barraclough.

No new tests, because there is no change in behavior.

* CMakeLists.txt:

Source/WebKit:

Reviewed by Gavin Barraclough.

Changed EFL's build system to include a new directory in JavaScriptCore.

* CMakeLists.txt:

Tools:

Reviewed by Gavin Barraclough.

Changed EFL's build system to include a new directory in JavaScriptCore.

* DumpRenderTree/efl/CMakeLists.txt:

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

12 years agoGet rid of the LocalizationStrategy
benjamin@webkit.org [Tue, 21 Feb 2012 06:38:10 +0000 (06:38 +0000)]
Get rid of the LocalizationStrategy
https://bugs.webkit.org/show_bug.cgi?id=78324

Reviewed by Sam Weinig.

Source/WebCore:

Remove LocalizationStrategy and unify the localization behind
LocalizedStrings.h and LocalizedStrings.cpp.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.order:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/DefaultLocalizationStrategy.cpp: Removed.
* platform/DefaultLocalizationStrategy.h: Removed.
* platform/LocalizationStrategy.h: Removed.
* platform/LocalizedStrings.cpp:
* platform/LocalizedStrings.h:
(WebCore):
* platform/PlatformStrategies.cpp:
* platform/PlatformStrategies.h:
(WebCore):
(WebCore::PlatformStrategies::PlatformStrategies):
(PlatformStrategies):
* platform/qt/LocalizedStringsQt.cpp: Copied from Source/WebKit/qt/WebCoreSupport/PlatformStrategiesQt.cpp.

Source/WebKit/qt:

Move the localization code from PlatformStrategiesQt.cpp
to LocalizedStringsQt.cpp.

Get rid of LocalizationStrategy from PlatformStrategiesQt

* WebCoreSupport/PlatformStrategiesQt.cpp:
* WebCoreSupport/PlatformStrategiesQt.h:
(PlatformStrategiesQt):

Source/WebKit/wince:

Remove a useless #include of LocalizationStrategy.h.

* WebCoreSupport/PlatformStrategiesWinCE.h:

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

12 years agoUnreviewed, rolling out http://trac.webkit.org/changeset/108291
fpizlo@apple.com [Tue, 21 Feb 2012 06:34:14 +0000 (06:34 +0000)]
Unreviewed, rolling out trac.webkit.org/changeset/108291
It completely broke the 32-bit JIT.

* heap/CopiedAllocator.h:
* heap/CopiedSpace.h:
(CopiedSpace):
* heap/Heap.h:
(JSC::Heap::allocatorForObjectWithDestructor):
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases):
* jit/JIT.h:
(JIT):
* jit/JITInlineMethods.h:
(JSC):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_array):
* runtime/JSArray.cpp:
(JSC::storageSize):
(JSC):
* runtime/JSArray.h:
(ArrayStorage):
(JSArray):

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

12 years ago[Qt] Unreviewed gardening after r108259.
ossy@webkit.org [Tue, 21 Feb 2012 06:30:07 +0000 (06:30 +0000)]
[Qt] Unreviewed gardening after r108259.

* platform/qt/fast/dom/prototype-inheritance-2-expected.txt: Updated.

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

12 years agoRemove [TreatReturnedNullStringAsNull] from HTMLMediaElement.mediaGroup
haraken@chromium.org [Tue, 21 Feb 2012 06:23:57 +0000 (06:23 +0000)]
Remove [TreatReturnedNullStringAsNull] from HTMLMediaElement.mediaGroup
https://bugs.webkit.org/show_bug.cgi?id=79064

Reviewed by Hajime Morita.

[TreatReturnedNullStringAsNull] is a typo of [TreatReturnedNullStringAs=Null].
But as far as I read the spec
(http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#attr-media-mediagroup),
there is no statement about what value should be returned when HTMLMediaElement.mediaGroup
is not yet initialized. In particular, there is no statement that says "null should
be returned when HTMLMediaElement.mediaGroup is not initialized". Thus, instead of
fixing the typo, just removing [TreatReturnedNullStringAsNull] would make sense.
Removing [TreatReturnedNullStringAsNull] does not change the current behavior.

Test: media/media-controller.html (No change in the test results.)

* html/HTMLMediaElement.idl:

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

12 years ago[[Put]] should throw if prototype chain contains a readonly property.
barraclough@apple.com [Tue, 21 Feb 2012 06:17:40 +0000 (06:17 +0000)]
[[Put]] should throw if prototype chain contains a readonly property.
https://bugs.webkit.org/show_bug.cgi?id=79069

Reviewed by Oliver Hunt.

Currently we only check the base of the put, not the prototype chain.
Fold this check in with the test for accessors.

Source/JavaScriptCore:

* runtime/JSObject.cpp:
(JSC::JSObject::put):
    - Updated to test all objects in the propotype chain for readonly properties.
(JSC::JSObject::putDirectAccessor):
(JSC::putDescriptor):
    - Record the presence of readonly properties on the structure.
* runtime/Structure.cpp:
(JSC::Structure::Structure):
    - hasGetterSetterPropertiesExcludingProto expanded to hasReadOnlyOrGetterSetterPropertiesExcludingProto.
* runtime/Structure.h:
(JSC::Structure::hasReadOnlyOrGetterSetterPropertiesExcludingProto):
(JSC::Structure::setHasGetterSetterProperties):
    - hasGetterSetterPropertiesExcludingProto expanded to hasReadOnlyOrGetterSetterPropertiesExcludingProto.
(JSC::Structure::setContainsReadOnlyProperties):
    - Added.

LayoutTests:

* fast/js/Object-defineProperty-expected.txt:
* fast/js/script-tests/Object-defineProperty.js:
(get shouldBeTrue):
    - Added test case.

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

12 years agoUse InsertinonPoint instead of HTMLContentElement.
hayato@chromium.org [Tue, 21 Feb 2012 06:15:04 +0000 (06:15 +0000)]
Use InsertinonPoint instead of HTMLContentElement.
https://bugs.webkit.org/show_bug.cgi?id=78778

Reviewed by Hajime Morita.

Replace HTMLContentElement with InsertionPoint in NodeRenderingContext and HTMLContentSelection.
This is one of followup patches for r108207.

No new tests, no change in behavior.

* dom/NodeRenderingContext.cpp:
(WebCore::nextRendererOf):
(WebCore::previousRendererOf):
(WebCore::firstRendererOf):
(WebCore::lastRendererOf):
* dom/NodeRenderingContext.h:
(WebCore):
(NodeRenderingContext):
(WebCore::NodeRenderingContext::insertionPoint):
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::insertionPointFor):
* dom/ShadowRoot.h:
(WebCore):
* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::HTMLContentElement):
(WebCore::HTMLContentElement::attach):
(WebCore::HTMLContentElement::detach):
* html/shadow/HTMLContentElement.h:
(HTMLContentElement):
* html/shadow/HTMLContentSelector.cpp:
(WebCore::HTMLContentSelector::select):
* html/shadow/HTMLContentSelector.h:
(WebCore):
(HTMLContentSelection):
(WebCore::HTMLContentSelection::insertionPoint):
(WebCore::HTMLContentSelection::HTMLContentSelection):
(WebCore::HTMLContentSelection::create):
* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::InsertionPoint):
* html/shadow/InsertionPoint.h:
(WebCore::InsertionPoint::selections):
(WebCore::InsertionPoint::hasSelection):
(InsertionPoint):

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

12 years agoMathML internals - code clean-up for RenderMathMLSubSup
commit-queue@webkit.org [Tue, 21 Feb 2012 06:00:51 +0000 (06:00 +0000)]
MathML internals - code clean-up for RenderMathMLSubSup
https://bugs.webkit.org/show_bug.cgi?id=79063

Patch by David Barton <dbarton@mathscribe.com> on 2012-02-20
Reviewed by Eric Seidel.

In the next patch, I will shrink and revise the <msubsup> formatting code. To make this
easier to follow, I am first doing some simple code clean-up.

No new tests.

* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::layout):
* rendering/mathml/RenderMathMLRow.h:
(WebCore::RenderMathMLRow::isRenderMathMLRow):
* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::stretchToHeight):
(WebCore::RenderMathMLSubSup::layout):
    - There is no need to iterate over baseWrapper's children since it should have only
      one child, the base of the <msubsup>.

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

12 years agoReplace [V8Custom=DOMWindowNOP] with [V8Custom]
haraken@chromium.org [Tue, 21 Feb 2012 05:52:43 +0000 (05:52 +0000)]
Replace [V8Custom=DOMWindowNOP] with [V8Custom]
https://bugs.webkit.org/show_bug.cgi?id=79062

Reviewed by Adam Barth.

[V8Custom=DOMWindowNOP] is not implemented by CodeGeneratorV8.pm.
This patch replaces it with [V8Custom].

No new tests. No change in behavior.

* page/DOMWindow.idl:

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

12 years ago[JSGenerateIsReachable=ImplRoot] is not implemented, it should be [JSGenerateIsReachable]
haraken@chromium.org [Tue, 21 Feb 2012 05:28:36 +0000 (05:28 +0000)]
[JSGenerateIsReachable=ImplRoot] is not implemented, it should be [JSGenerateIsReachable]
https://bugs.webkit.org/show_bug.cgi?id=79061

Reviewed by Adam Barth.

CSSStyleDeclaration.idl uses [JSGenerateIsReachable=ImplRoot],
but "ImplRoot" is not implemented in CodeGeneratorJS.pm.
This patch replaces [JSGenerateIsReachable=ImplRoot] with [JSGenerateIsReachable].

No tests. No change in behavior.

* css/CSSStyleDeclaration.idl:

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

12 years ago There is no complete test cases of optional arguments for MediaStream API and PeerCo...
commit-queue@webkit.org [Tue, 21 Feb 2012 05:25:05 +0000 (05:25 +0000)]
 There is no complete test cases of optional arguments for MediaStream API and PeerConnection
 https://bugs.webkit.org/show_bug.cgi?id=78578

 Reviewed by Adam Barth.

 * fast/mediastream/peerconnection-AttributesMethod-expected.txt: Added.
 * fast/mediastream/peerconnection-AttributesMethod.html: Added.
 * fast/mediastream/peerconnection-addstream-expected.txt:
 * fast/mediastream/peerconnection-argument-types-expected.txt: Added.
 * fast/mediastream/peerconnection-argument-types.html: Added.
 * fast/mediastream/peerconnection-removestream-expected.txt: Added.
 * fast/mediastream/peerconnection-removestream.html: Added.
 * fast/mediastream/script-tests/AttributesMethod.js: Added.
 * fast/mediastream/script-tests/argument-types.js: Added.
 * fast/mediastream/script-tests/peerconnection-addstream.js:
 * fast/mediastream/script-tests/peerconnection-removestream.js: Added.

Patch by Yanbin Zhang <yanbin.zhang@intel.com> on 2012-02-20

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

12 years ago[EnabledAtRuntime] in HTMLShadowElement.idl should be [V8EnabledAtRuntime]
haraken@chromium.org [Tue, 21 Feb 2012 05:21:16 +0000 (05:21 +0000)]
[EnabledAtRuntime] in HTMLShadowElement.idl should be [V8EnabledAtRuntime]
https://bugs.webkit.org/show_bug.cgi?id=79058

Reviewed by Adam Barth.

[EnabledAtRuntime] does not exist any longer. It should be [V8EnabledAtRuntime].

No tests.

* html/shadow/HTMLShadowElement.idl:

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

12 years agoReplace [Callback=FunctionOnly] with [Callback]
haraken@chromium.org [Tue, 21 Feb 2012 04:52:58 +0000 (04:52 +0000)]
Replace [Callback=FunctionOnly] with [Callback]
https://bugs.webkit.org/show_bug.cgi?id=79060

Reviewed by Adam Barth.

[Callback=FunctionOnly] is not implemented by any code generator.
This patch replaces it with [Callback].

No tests. No change in behavior.

* Modules/intents/IntentResultCallback.idl:
* Modules/intents/NavigatorIntents.idl:
* dom/RequestAnimationFrameCallback.idl:
* mediastream/NavigatorMediaStream.idl:
* mediastream/NavigatorUserMediaErrorCallback.idl:
* mediastream/NavigatorUserMediaSuccessCallback.idl:
* mediastream/PeerConnection.idl:
* mediastream/SignalingCallback.idl:
* page/PositionCallback.idl:
* page/PositionErrorCallback.idl:

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

12 years ago[BlackBerry] Need to override active/inactive text search highlight color for RenderT...
commit-queue@webkit.org [Tue, 21 Feb 2012 04:17:26 +0000 (04:17 +0000)]
[BlackBerry] Need to override active/inactive text search highlight color for RenderThemeBlackBerry
https://bugs.webkit.org/show_bug.cgi?id=78920

Override two functions for text search highlight colors so that we can
provide platform specified colors.

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

No function change so no new tests.

* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::RenderThemeBlackBerry::platformActiveTextSearchHighlightColor):
(WebCore::RenderThemeBlackBerry::platformInactiveTextSearchHighlightColor):
* platform/blackberry/RenderThemeBlackBerry.h:

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

12 years ago[Chromium] Unreviewed, update test expectations.
yutak@chromium.org [Tue, 21 Feb 2012 04:12:25 +0000 (04:12 +0000)]
[Chromium] Unreviewed, update test expectations.

* platform/chromium/fast/dom/Window/window-custom-prototype-expected.txt:
* platform/chromium/fast/js/string-capitalization-expected.txt:
* platform/chromium/test_expectations.txt:

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

12 years agoDefault canvas backing store to be 1:1 with specified dimensions.
jknotten@chromium.org [Tue, 21 Feb 2012 03:48:59 +0000 (03:48 +0000)]
Default canvas backing store to be 1:1 with specified dimensions.
https://bugs.webkit.org/show_bug.cgi?id=78971

Reviewed by Adam Barth.

Although the canvas specification states that the backing image may
be larger than the user-specified dimensions, there are a number of
philip canvas tests that fail when the backing image data is not
1:1 with the specified canvas dimensions. These failures are
tracked in https://bugs.webkit.org/show_bug.cgi?id=73645

This change defaults the canvas backing store to be 1:1 with the
user-specified dimensions, while also providing an
ENABLE(HIGH_DPI_CANVAS) build option to reinstate the original
behaviour, so that the above bug may be more easily fixed.

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::HTMLCanvasElement):

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

12 years agoUpdate pywebsocket to 0.7.2
bashi@chromium.org [Tue, 21 Feb 2012 03:24:45 +0000 (03:24 +0000)]
Update pywebsocket to 0.7.2
https://bugs.webkit.org/show_bug.cgi?id=79066

This version includes vendor-prefixed deflate-frame extension support.

Reviewed by Kent Tamura.

* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook._install_pywebsocket):

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

12 years agoImplement fast path for op_new_array in the baseline JIT
mhahnenberg@apple.com [Tue, 21 Feb 2012 03:20:37 +0000 (03:20 +0000)]
Implement fast path for op_new_array in the baseline JIT
https://bugs.webkit.org/show_bug.cgi?id=78612

Reviewed by Filip Pizlo.

* heap/CopiedAllocator.h:
(CopiedAllocator): Friended the JIT to allow access to m_currentOffset.
* heap/CopiedSpace.h:
(CopiedSpace): Friended the JIT to allow access to
(JSC::CopiedSpace::allocator):
* heap/Heap.h:
(JSC::Heap::storageAllocator): Added a getter for the CopiedAllocator class so the JIT
can use it for simple allocation i.e. when we can just bump the offset without having to
do anything else.
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases): Added new slow case for op_new_array for when
we have to bail out because the fast allocation path fails for whatever reason.
* jit/JIT.h:
(JIT):
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicStorage): Added utility function that allows objects to
allocate generic backing stores. This function is used by emitAllocateJSArray.
(JSC):
(JSC::JIT::emitAllocateJSArray): Added utility function that allows the client to
more easily allocate JSArrays. This function is used by emit_op_new_array and I expect
it will also be used for emit_op_new_array_buffer.
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_array): Changed to do inline allocation of JSArrays. Still does
a stub call for oversize arrays.
(JSC):
(JSC::JIT::emitSlow_op_new_array): Just bails out to a stub call if we fail in any way on
the fast path.
* runtime/JSArray.cpp:
(JSC):
* runtime/JSArray.h: Added lots of offset functions for all the fields that we need to
initialize in the JIT.
(ArrayStorage):
(JSC::ArrayStorage::lengthOffset):
(JSC::ArrayStorage::numValuesInVectorOffset):
(JSC::ArrayStorage::allocBaseOffset):
(JSC::ArrayStorage::vectorOffset):
(JSArray):
(JSC::JSArray::sparseValueMapOffset):
(JSC::JSArray::subclassDataOffset):
(JSC::JSArray::indexBiasOffset):
(JSC):
(JSC::JSArray::storageSize): Moved this function from being a static function in the cpp file
to being a static function in the JSArray class. This move allows the JIT to call it to
see what size it should allocate.

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

12 years agoUpstream RenderThemeBlackberry.h/.cpp into WebCore/platform/blackberry
commit-queue@webkit.org [Tue, 21 Feb 2012 03:19:17 +0000 (03:19 +0000)]
Upstream RenderThemeBlackberry.h/.cpp into WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=78785

Main Contributors:
Daniel Bates <dbates@rim.com>
Bryan Gislason <bgislason@rim.com>
Akash Vaswani <akvaswani@rim.com>
Dave Battista <dbattista@rim.com>
Robin Cao  <robin.cao@torchmobile.com.cn>
Genevieve Mak <gmak@rim.com>
Mike Fenton  <mifenton@rim.com>

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2012-02-20
Reviewed by Antonio Gomes.

Initial upstream, no new tests.

* platform/blackberry/RenderThemeBlackBerry.cpp: Added.
* platform/blackberry/RenderThemeBlackBerry.h: Added.

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

12 years ago[GTK] [EFL] Collapse duplicate WebGL support code
commit-queue@webkit.org [Tue, 21 Feb 2012 03:10:17 +0000 (03:10 +0000)]
[GTK] [EFL] Collapse duplicate WebGL support code
https://bugs.webkit.org/show_bug.cgi?id=78970

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

No new tests. This just cleans up duplicated code.

Centralize duplicated WebGL code for EFL and GTK+ in the Cairo
directory. This is in preparation for the changes necessary to
connect WebGL to the TextureMapper AC.

* GNUmakefile.list.am: Update source list.
* PlatformEfl.cmake: Update source list.
* platform/graphics/cairo/DrawingBufferCairo.cpp: Renamed from Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp.
* platform/graphics/cairo/GraphicsContext3DCairo.cpp: Integrated the code From GraphicsContext3DGtk.cpp.
* platform/graphics/efl/DrawingBufferEfl.cpp: Removed.
* platform/graphics/efl/GraphicsContext3DEfl.cpp: Removed.
* platform/graphics/gtk/GraphicsContext3DGtk.cpp: Removed.

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

12 years ago[GTK] Turn on requestAnimationFrame for release builds
commit-queue@webkit.org [Tue, 21 Feb 2012 03:05:43 +0000 (03:05 +0000)]
[GTK] Turn on requestAnimationFrame for release builds
https://bugs.webkit.org/show_bug.cgi?id=79038

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

* configure.ac: Turn on requestAnimationFrame by default.

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

12 years agoDefineOwnProperty fails with numeric properties & Object.prototype
barraclough@apple.com [Tue, 21 Feb 2012 02:35:19 +0000 (02:35 +0000)]
DefineOwnProperty fails with numeric properties & Object.prototype
https://bugs.webkit.org/show_bug.cgi?id=79059

Reviewed by Oliver Hunt.

ObjectPrototype caches whether it contains any numeric properties (m_hasNoPropertiesWithUInt32Names),
calls to defineOwnProperty need to update this cache.

Source/JavaScriptCore:

* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::put):
(JSC::ObjectPrototype::defineOwnProperty):
(JSC):
(JSC::ObjectPrototype::getOwnPropertySlotByIndex):
* runtime/ObjectPrototype.h:
(ObjectPrototype):

LayoutTests:

* fast/js/Object-defineProperty-expected.txt:
* fast/js/script-tests/Object-defineProperty.js:
(shouldBe.shouldBe.shouldBe.shouldBe.shouldBe.shouldBe.shouldBe.shouldThrow.Object.defineProperty):

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

12 years ago[UNIX] Plugin information fields are not interpreted as UTF-8
commit-queue@webkit.org [Tue, 21 Feb 2012 02:19:35 +0000 (02:19 +0000)]
[UNIX] Plugin information fields are not interpreted as UTF-8
https://bugs.webkit.org/show_bug.cgi?id=78635

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Interpret plugin metadata as UTF8 aways. This matches the behavior
of Chromium and the Totem plugin.

This is tested by a change to TestNetscapePlugin and expectations updates.

* plugins/efl/PluginPackageEfl.cpp:
(WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
* plugins/gtk/PluginPackageGtk.cpp:
(WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
* plugins/qt/PluginPackageQt.cpp:
(WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.

Source/WebKit2:

Interpret plugin metadata as UTF8 aways. This matches the behavior
of Chromium and the Totem plugin.

* Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::NetscapePluginModule::getPluginInfoForLoadedPlugin): Use String::fromUTF8.

Tools:

Interpret plugin metadata as UTF8 aways. This matches the behavior
of Chromium and the Totem plugin.

* DumpRenderTree/TestNetscapePlugIn/main.cpp:
(NPP_GetValue): Include a UTF-8 character in the description string for testing purposes.

LayoutTests:

Update expectations to match the fact that TestNetscapePlugin is now
returning a Unicode character in the description field.

* platform/chromium-linux/plugins/plugin-javascript-access-expected.txt:
* platform/gtk/plugins/plugin-javascript-access-expected.txt:
* platform/qt/plugins/plugin-javascript-access-expected.txt:

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

12 years ago[GTK] [Qt] Move the unix forwarding headers for TestNetscapePlugin to the TestNetscap...
commit-queue@webkit.org [Tue, 21 Feb 2012 02:16:13 +0000 (02:16 +0000)]
[GTK] [Qt] Move the unix forwarding headers for TestNetscapePlugin to the TestNetscapePlugin directory
https://bugs.webkit.org/show_bug.cgi?id=78935

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

Move the TestNetscapePlugin headers to a more appropriate directory and update
the build files to match.

* DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npapi.h: Renamed from Tools/DumpRenderTree/unix/TestNetscapePlugin/ForwardingHeaders/WebKit/npapi.h.
* DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npfunctions.h: Renamed from Tools/DumpRenderTree/unix/TestNetscapePlugin/ForwardingHeaders/WebKit/npfunctions.h.
* DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npruntime.h: Renamed from Tools/DumpRenderTree/unix/TestNetscapePlugin/ForwardingHeaders/WebKit/npruntime.h.
* DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro: Update build.
* GNUmakefile.am: Ditto.

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

12 years agoDoes not build on GNU Hurd
commit-queue@webkit.org [Tue, 21 Feb 2012 02:12:24 +0000 (02:12 +0000)]
Does not build on GNU Hurd
https://bugs.webkit.org/show_bug.cgi?id=79045

Patch by Pino Toscano <pino@debian.org> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

* wtf/Platform.h: define WTF_OS_HURD.
* wtf/ThreadIdentifierDataPthreads.cpp: adds a band-aid fix
for the lack of PTHREAD_KEYS_MAX definition, with a value which
should not cause issues.

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

12 years ago[GTK] Web content oftens steals focus from other widgets
commit-queue@webkit.org [Tue, 21 Feb 2012 02:04:29 +0000 (02:04 +0000)]
[GTK] Web content oftens steals focus from other widgets
https://bugs.webkit.org/show_bug.cgi?id=77791

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

* platform/gtk/WidgetGtk.cpp:
(WebCore::Widget::setFocus): No longer do anything special to try
to grab "real" widget focus. This matches the behavior on Qt.
* plugins/gtk/PluginViewGtk.cpp:
(WebCore::PluginView::setFocus): Moved the focus handling to here.
This ensures that behavior for plugins does not change.

Source/WebKit/gtk:

* tests/testwebview.c: Added a WebKit1 test to verify this behavior.

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

12 years ago[GTK] Geolocation support should be on by default
commit-queue@webkit.org [Tue, 21 Feb 2012 02:02:23 +0000 (02:02 +0000)]
[GTK] Geolocation support should be on by default
https://bugs.webkit.org/show_bug.cgi?id=79037

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

* configure.ac: Turn on geolocation support in release builds.

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

12 years agoRegression (108135) isOpaque() returns uninitialized variable.
yael.aharon@nokia.com [Tue, 21 Feb 2012 01:33:41 +0000 (01:33 +0000)]
Regression (108135) isOpaque() returns uninitialized variable.
https://bugs.webkit.org/show_bug.cgi?id=79049

Reviewed by Noam Rosenthal.

isOpaque() should use the new m_flags instead of the old m_isOpaque.
No new tests. No new functionality.

* platform/graphics/texmap/TextureMapper.h:
(WebCore::BitmapTexture::reset):
(WebCore::BitmapTexture::isOpaque):
(BitmapTexture):

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

12 years agoUnreviewed. Rebaselined run-bindings-tests results.
haraken@chromium.org [Tue, 21 Feb 2012 01:27:27 +0000 (01:27 +0000)]
Unreviewed. Rebaselined run-bindings-tests results.

* bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
* bindings/scripts/test/CPP/WebDOMTestInterface.h:
* bindings/scripts/test/CPP/WebDOMTestObj.cpp:
* bindings/scripts/test/CPP/WebDOMTestObj.h:

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

12 years ago[Qt][WK2] Clipping is broken
noam.rosenthal@nokia.com [Tue, 21 Feb 2012 01:20:20 +0000 (01:20 +0000)]
[Qt][WK2] Clipping is broken
https://bugs.webkit.org/show_bug.cgi?id=78677

It's not necessary to add a full-viewport rect to the scissor clip stack.
It creates a situation where if there's a clip in the page, we return to
the viewport clip instead of applying the WebView's clip we got from the
scenegraph.

Also, it's unnecessary to clip before we paint the layer's content, we should
only clip afterwards, before painting the children.

Reviewed by Kenneth Rohde Christiansen.

No new functionality.

* platform/graphics/opengl/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::size):
(WebCore::scissorClip):
(WebCore):
(WebCore::TextureMapperGL::beginScissorClip):
(WebCore::TextureMapperGL::endScissorClip):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintSelfAndChildren):

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

12 years ago[Texmap] Layers and tiles appear to have missing pixels in their right/bottom borders
noam.rosenthal@nokia.com [Tue, 21 Feb 2012 01:15:15 +0000 (01:15 +0000)]
[Texmap] Layers and tiles appear to have missing pixels in their right/bottom borders
https://bugs.webkit.org/show_bug.cgi?id=78961

The relativeSize member should point to one pixel before the edge, since it's used
by glVertexAttribPointer, which takes edge points and not sizes.

Reviewed by Kenneth Rohde Christiansen.

No new funcionality.

* platform/graphics/opengl/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::didReset):

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

12 years ago.: Add a new API for the Vibration API(W3C).
commit-queue@webkit.org [Tue, 21 Feb 2012 01:05:11 +0000 (01:05 +0000)]
.: Add a new API for the Vibration API(W3C).
https://bugs.webkit.org/show_bug.cgi?id=72010

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

Add Implementation for the Vibration API to the WebKit-EFL port.
http://dev.w3.org/2009/dap/vibration/

* Source/cmake/OptionsEfl.cmake: Add ENABLE_VIBRATION feature.
* Source/cmakeconfig.h.cmake:

Source/WebCore: Add a new API for the Vibration API(W3C).
https://bugs.webkit.org/show_bug.cgi?id=72010

http://dev.w3.org/2009/dap/vibration/
This patch implements navigator.webkitvibrate() API.
This API operates differently depending upon a given parameter:
1. It cancels vibration when given 0 or [].
2. It gives a vibration duration in milliseconds when given as a single integer value.
3. It gives a vibration pattern when given as an integer array. For instance, [1000 300 1000] generates a vibration of 1000ms followed by 300ms of idle time, and then creates another vibration of 1000ms.

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

Test: fast/dom/navigator-vibration.html

* CMakeLists.txt:
* Modules/vibration/NavigatorVibration.cpp: Added.
(WebCore):
(WebCore::NavigatorVibration::NavigatorVibration):
(WebCore::NavigatorVibration::~NavigatorVibration):
(WebCore::NavigatorVibration::webkitVibrate):
Add webkitVibrate method to get an array or single integer parameter for vibrating.
They check vibration is activated in the platform, and then call vibrate() in the Vibration class.
* Modules/vibration/NavigatorVibration.h: Added.
(WebCore):
(NavigatorVibration):
* Modules/vibration/NavigatorVibration.idl: Added.
* Modules/vibration/Vibration.cpp: Added.
This class implements the entire vibration logic.
(WebCore):
(WebCore::Vibration::Vibration):
(WebCore::Vibration::~Vibration):
(WebCore::Vibration::create):
(WebCore::Vibration::vibrate):
(WebCore::Vibration::cancelVibration):
(WebCore::Vibration::suspendVibration):
(WebCore::Vibration::resumeVibration):
(WebCore::Vibration::timerStartFired):
(WebCore::Vibration::timerStopFired):
(WebCore::Vibration::supplementName):
(WebCore::Vibration::isActive):
(WebCore::provideVibrationTo):
* Modules/vibration/Vibration.h: Added.
(WebCore):
(Vibration):
(WebCore::Vibration::from):
* Modules/vibration/VibrationClient.h: Added.
vibrate() and cancelVibrate() need to be implemented in the VibrationClient.
(WebCore):
(VibrationClient):
(WebCore::VibrationClient::~VibrationClient):

Source/WebKit/efl: Add a new API for the Vibration API(W3C).
https://bugs.webkit.org/show_bug.cgi?id=72010

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

Implementation for the Vibration API feature to the EFL-port layer.
http://dev.w3.org/2009/dap/vibration/
There are two methods for vibration API.
- vibrate : Vibrate device for receiving as a parameter.
- cancelVibrate : Cancel current vibration.

* CMakeListsEfl.txt:
* WebCoreSupport/VibrationClientEfl.cpp: Added.
(WebCore):
(WebCore::VibrationClientEfl::VibrationClientEfl):
(WebCore::VibrationClientEfl::vibrate):
(WebCore::VibrationClientEfl::cancelVibration):
(WebCore::VibrationClientEfl::vibrationDestroyed):
* WebCoreSupport/VibrationClientEfl.h: Added.
(WebCore):
(VibrationClientEfl):
(WebCore::VibrationClientEfl::~VibrationClientEfl):
* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):

Tools: Add a new API for the Vibration API(W3C).
https://bugs.webkit.org/show_bug.cgi?id=72010

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

* Scripts/build-webkit: Enable ENABLE_VIBRATION feature.

LayoutTests: Add a new test case for the Vibration API.
https://bugs.webkit.org/show_bug.cgi?id=72010

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

* fast/dom/navigator-vibration-expected.txt: Added.
* fast/dom/navigator-vibration.html: Added.
* platform/chromium/test_expectations.txt:
* platform/gtk/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:

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

12 years agoUnreviewed, rolling out r108263.
yutak@chromium.org [Tue, 21 Feb 2012 00:57:20 +0000 (00:57 +0000)]
Unreviewed, rolling out r108263.
http://trac.webkit.org/changeset/108263
https://bugs.webkit.org/show_bug.cgi?id=77856

Broke Chromium Windows build.

* platform/audio/DynamicsCompressor.cpp:
(WebCore::DynamicsCompressor::DynamicsCompressor):
(WebCore::DynamicsCompressor::setEmphasisStageParameters):
(WebCore::DynamicsCompressor::process):
(WebCore::DynamicsCompressor::reset):
* platform/audio/DynamicsCompressor.h:
(WebCore::DynamicsCompressor::isStereo):
(DynamicsCompressor):
* platform/audio/DynamicsCompressorKernel.cpp:
(WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
(WebCore::DynamicsCompressorKernel::setPreDelayTime):
(WebCore::DynamicsCompressorKernel::process):
(WebCore::DynamicsCompressorKernel::reset):
* platform/audio/DynamicsCompressorKernel.h:
(DynamicsCompressorKernel):
* webaudio/DynamicsCompressorNode.cpp:
(WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
(WebCore::DynamicsCompressorNode::initialize):

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

12 years agoMove more logic from handler classes to model classes and add unit tests
rniwa@webkit.org [Tue, 21 Feb 2012 00:25:47 +0000 (00:25 +0000)]
Move more logic from handler classes to model classes and add unit tests
https://bugs.webkit.org/show_bug.cgi?id=78989

Reviewed by Hajime Morita.

Extracted various functions from CreateHandler, ReportHanlder, and RunsHanlder to model classes
in order to unit-test them, added DataStoreTestsBase to reduce the code duplication in tests,
and added a whole bunch of unit tests in models_unittest.py.

* Websites/webkit-perf.appspot.com/create_handler.py:
(CreateHandler._create_branch):
(CreateHandler._create_platform):
* Websites/webkit-perf.appspot.com/models.py:
(_create_if_possible):
(_create_if_possible.execute):
(Branch):
(Branch.create_if_possible):
(Platform):
(Platform.create_if_possible):
(Build):
(Build.get_or_insert_from_log):
(Test):
(Test.update_or_insert):
(Test.update_or_insert.execute):
(TestResult):
(TestResult.get_or_insert_from_parsed_json):
(TestResult.get_or_insert_from_parsed_json._float_or_none):
(TestResult.generate_runs):
* Websites/webkit-perf.appspot.com/models_unittest.py:
(DataStoreTestsBase):
(DataStoreTestsBase.assertThereIsNoInstanceOf):
(DataStoreTestsBase.assertOnlyInstance):
(DataStoreTestsBase.assertEqualUnorderedList):
(HelperTests):
(HelperTests.test_create_in_transaction_with_numeric_id_holder):
(HelperTests.test_failing_in_create_in_transaction_with_numeric_id_holder):
(HelperTests.test_raising_in_create_in_transaction_with_numeric_id_holder):
(HelperTests.test_delete_model_with_numeric_id_holder):
(BranchTests):
(BranchTests.test_create_if_possible):
(PlatformTests):
(PlatformTests.test_create_if_possible):
(BuilderTests):
(_create_some_builder):
(BuildTests):
(BuildTests.test_get_or_insert_from_log):
(TestModelTests):
(TestModelTests.test_update_or_insert):
(TestModelTests.test_update_or_insert_to_update):
(TestResultTests):
(TestResultTests._create_build):
(TestResultTests.test_get_or_insert_value):
(TestResultTests.test_get_or_insert_stat_value):
(TestResultTests._create_results):
(TestResultTests.test_generate_runs):
(ReportLogTests):
(ReportLogTests.test_branch):
(ReportLogTests.test_platform):
(PersistentCacheTests):
(PersistentCacheTests.setUp):
(PersistentCacheTests.test_set):
* Websites/webkit-perf.appspot.com/report_process_handler.py:
(ReportProcessHandler.post):
* Websites/webkit-perf.appspot.com/runs_handler.py:
(RunsHandler.get):
(RunsHandler.post):

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

12 years agoUnreviewed windows build fix.
barraclough@apple.com [Tue, 21 Feb 2012 00:18:38 +0000 (00:18 +0000)]
Unreviewed windows build fix.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

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

12 years agoUndoing accidental changes
mhahnenberg@apple.com [Mon, 20 Feb 2012 23:49:43 +0000 (23:49 +0000)]
Undoing accidental changes

* heap/Heap.cpp:
(JSC::Heap::collectAllGarbage):

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

12 years agoFactor out allocation in CopySpace into a separate CopyAllocator
mhahnenberg@apple.com [Mon, 20 Feb 2012 23:42:11 +0000 (23:42 +0000)]
Factor out allocation in CopySpace into a separate CopyAllocator
https://bugs.webkit.org/show_bug.cgi?id=78610

Reviewed by Oliver Hunt.

Added a new CopyAllocator class, which allows us to do allocations without
having to load the current offset and store the current offset in the current
block. This change will allow us to easily do inline assembly in the JIT for
array allocations.

* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* heap/CopiedAllocator.h: Added.
(JSC):
(CopiedAllocator):
(JSC::CopiedAllocator::currentBlock):
(JSC::CopiedAllocator::CopiedAllocator):
(JSC::CopiedAllocator::allocate):
(JSC::CopiedAllocator::fitsInCurrentBlock):
(JSC::CopiedAllocator::wasLastAllocation):
(JSC::CopiedAllocator::startedCopying):
(JSC::CopiedAllocator::resetCurrentBlock):
(JSC::CopiedAllocator::currentUtilization):
(JSC::CopiedAllocator::resetLastAllocation):
* heap/CopiedBlock.h:
(CopiedBlock):
* heap/CopiedSpace.cpp: Moved some stuff from CopiedSpaceInlineMethods to here because we
weren't really getting any benefits from having such big functions in a header file.
(JSC::CopiedSpace::CopiedSpace):
(JSC):
(JSC::CopiedSpace::init):
(JSC::CopiedSpace::tryAllocateSlowCase):
(JSC::CopiedSpace::tryAllocateOversize):
(JSC::CopiedSpace::tryReallocate):
(JSC::CopiedSpace::tryReallocateOversize):
(JSC::CopiedSpace::doneFillingBlock):
(JSC::CopiedSpace::doneCopying):
(JSC::CopiedSpace::getFreshBlock):
* heap/CopiedSpace.h:
(CopiedSpace):
* heap/CopiedSpaceInlineMethods.h:
(JSC):
(JSC::CopiedSpace::startedCopying):
(JSC::CopiedSpace::addNewBlock):
(JSC::CopiedSpace::allocateNewBlock):
(JSC::CopiedSpace::fitsInBlock):
(JSC::CopiedSpace::tryAllocate):
(JSC::CopiedSpace::allocateFromBlock):
* heap/Heap.cpp:
(JSC::Heap::collectAllGarbage):
* heap/HeapBlock.h:
(HeapBlock):

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

12 years agoFix Visual Studio 2010 build.
paroga@webkit.org [Mon, 20 Feb 2012 23:37:01 +0000 (23:37 +0000)]
Fix Visual Studio 2010 build.

* bytecompiler/NodesCodegen.cpp:
(JSC::PropertyListNode::emitBytecode):

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

12 years ago[GTK] Needs to claim being a more up-to-date Chrome
kov@webkit.org [Mon, 20 Feb 2012 23:22:28 +0000 (23:22 +0000)]
[GTK] Needs to claim being a more up-to-date Chrome
https://bugs.webkit.org/show_bug.cgi?id=79044

Reviewed by Martin Robinson.

* webkit/webkitwebsettings.cpp:
(chromeUserAgent): update the version of Chrome we claim to be
to avoid warnings from sites such as Wordpress saying that our
browser is outdated.

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

12 years agoHave the DynamicsCompressorNode support multi-channel data
commit-queue@webkit.org [Mon, 20 Feb 2012 22:10:23 +0000 (22:10 +0000)]
Have the DynamicsCompressorNode support multi-channel data
https://bugs.webkit.org/show_bug.cgi?id=77856

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-02-20
Reviewed by Chris Rogers.

* platform/audio/DynamicsCompressor.cpp:
(WebCore::DynamicsCompressor::DynamicsCompressor):
(WebCore::DynamicsCompressor::setEmphasisStageParameters):
(WebCore::DynamicsCompressor::process):
(WebCore::DynamicsCompressor::reset):
(WebCore::DynamicsCompressor::setNumberOfChannels):
(WebCore):
* platform/audio/DynamicsCompressor.h:
(DynamicsCompressor):
* platform/audio/DynamicsCompressorKernel.cpp:
(WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
(WebCore::DynamicsCompressorKernel::setNumberOfChannels):
(WebCore):
(WebCore::DynamicsCompressorKernel::setPreDelayTime):
(WebCore::DynamicsCompressorKernel::process):
(WebCore::DynamicsCompressorKernel::reset):
* platform/audio/DynamicsCompressorKernel.h:
(DynamicsCompressorKernel):
* webaudio/DynamicsCompressorNode.cpp:
(WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
(WebCore::DynamicsCompressorNode::initialize):

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

12 years agoRenderMathMLRow::baselinePosition() only if linePositionMode == PositionOnContainingLine
commit-queue@webkit.org [Mon, 20 Feb 2012 22:02:21 +0000 (22:02 +0000)]
RenderMathMLRow::baselinePosition() only if linePositionMode == PositionOnContainingLine
https://bugs.webkit.org/show_bug.cgi?id=79039

Patch by David Barton <dbarton@mathscribe.com> on 2012-02-20
Reviewed by Eric Seidel.

Source/WebCore:

RenderMathMLRow::baselinePosition() is actually unnecessary, but I am deleting it in two
steps. First we add a guard to restrict it to the intended PositionOnContainingLine
case, leaving PositionOfInteriorLineBoxes to a superclass, RenderBlock. This removes
some randomness, and tightens up the results of four existing test files.

Test: mathml/presentation/row.xhtml, fenced.xhtml, mo.xhtml, and mo-stretch.html

* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::baselinePosition):

LayoutTests:

* platform/mac/mathml/presentation/fenced-expected.png:
* platform/mac/mathml/presentation/fenced-expected.txt:
* platform/mac/mathml/presentation/mo-expected.png:
* platform/mac/mathml/presentation/mo-expected.txt:
* platform/mac/mathml/presentation/mo-stretch-expected.png: Added property svn:mime-type.
* platform/mac/mathml/presentation/mo-stretch-expected.txt:
* platform/mac/mathml/presentation/row-expected.png:
* platform/mac/mathml/presentation/row-expected.txt:

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

12 years agoHTML input file control "No File Selected" needs more room in some languages
jonlee@apple.com [Mon, 20 Feb 2012 21:55:38 +0000 (21:55 +0000)]
HTML input file control "No File Selected" needs more room in some languages
https://bugs.webkit.org/show_bug.cgi?id=32366
<rdar://problem/4481028>

Reviewed by David Hyatt.

The patch exposes a function to return the "no file(s) selected" label text.

* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::fileListDefaultLabel): Added to expose the text for the label in
file upload controls when nothing has been selected.
(WebCore::RenderTheme::fileListNameForWidth): Refactor to use fileListDefaultLabel().
* rendering/RenderTheme.h: Change fileListNameForWidth() to be a const function.

* rendering/RenderThemeMac.h: Update fileListNameForWidth() to be a const function for
platform implementations.
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::fileListNameForWidth): Refactor to use fileListDefaultLabel().

Update fileListNameForWidth() to be a const function for platform implementations.
* platform/gtk/RenderThemeGtk.h:
* platform/gtk/RenderThemeGtk.cpp:
* platform/qt/RenderThemeQt.h:
* platform/qt/RenderThemeQt.cpp:

* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::computePreferredLogicalWidths): Change the calculation
of the max preferred logical width. Calculate the length of the "no file(s) selected" text,
and include the button and after-button margin. Take the max of that and the original
default width, which was a string of 34 (defaultWidthNumChars) "0"'s, in the case that the
label text is too short.

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

12 years agoRubber stamped by Sam Weinig.
barraclough@apple.com [Mon, 20 Feb 2012 21:52:00 +0000 (21:52 +0000)]
Rubber stamped by Sam Weinig.

* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::allowsAccessFrom):
    - Errk, remove dead code from end of function.

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

12 years agoMove special __proto__ property to Object.prototype
barraclough@apple.com [Mon, 20 Feb 2012 21:14:48 +0000 (21:14 +0000)]
Move special __proto__ property to Object.prototype
https://bugs.webkit.org/show_bug.cgi?id=78409

Reviewed by Oliver Hunt.

Re-implement this as a regular accessor property.  This has three key benefits:
1) It makes it possible for objects to be given properties named __proto__.
2) Object.prototype.__proto__ can be deleted, preventing object prototypes from being changed.
3) This largely removes the magic used the implement __proto__, it can just be made a regular accessor property.

Source/JavaScriptCore:

* parser/Parser.cpp:
(JSC::::parseFunctionInfo):
    - No need to prohibit functions named __proto__.
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
    - Add __proto__ accessor to Object.prototype.
* runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncProtoGetter):
(JSC::globalFuncProtoSetter):
    - Definition of the __proto__ accessor functions.
* runtime/JSGlobalObjectFunctions.h:
    - Declaration of the __proto__ accessor functions.
* runtime/JSObject.cpp:
(JSC::JSObject::put):
    - Remove the special handling for __proto__, there is still a check to allow for a fast guard for accessors excluding __proto__.
(JSC::JSObject::putDirectAccessor):
    - Track on the structure whether an object contains accessors other than one for __proto__.
(JSC::JSObject::defineOwnProperty):
    - No need to prohibit definition of own properties named __proto__.
* runtime/JSObject.h:
(JSC::JSObject::inlineGetOwnPropertySlot):
    - Remove the special handling for __proto__.
(JSC::JSValue::get):
    - Remove the special handling for __proto__.
* runtime/JSString.cpp:
(JSC::JSString::getOwnPropertySlot):
    - Remove the special handling for __proto__.
* runtime/JSValue.h:
(JSValue):
    - Made synthesizePrototype public (this may be needed by the __proto__ getter).
* runtime/ObjectConstructor.cpp:
(JSC::objectConstructorGetPrototypeOf):
    - Perform the security check & call prototype() directly.
* runtime/Structure.cpp:
(JSC::Structure::Structure):
    - Added 'ExcludingProto' variant of the 'hasGetterSetterProperties' state.
* runtime/Structure.h:
(JSC::Structure::hasGetterSetterPropertiesExcludingProto):
(JSC::Structure::setHasGetterSetterProperties):
(Structure):
    - Added 'ExcludingProto' variant of the 'hasGetterSetterProperties' state.

Source/WebCore:

* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::allowsAccessFrom):
(WebCore):
    - expose allowsAccessFrom check to JSC.
* bindings/js/JSDOMWindowBase.h:
(JSDOMWindowBase):
    - expose allowsAccessFrom check to JSC.

LayoutTests:

* fast/js/Object-getOwnPropertyNames-expected.txt:
* fast/js/cyclic-prototypes-expected.txt:
* fast/js/parser-syntax-check-expected.txt:
* fast/js/preventExtensions-expected.txt:
* fast/js/prototypes-expected.txt:
    - Update results
* fast/js/script-tests/Object-getOwnPropertyNames.js:
    - __proto__ is now a property of Object Prototype.
* fast/js/script-tests/cyclic-prototypes.js:
    - setting an object's prototype to null removes __proto__ setter, future usage won't set prototype.
* fast/js/script-tests/parser-syntax-check.js:
    - Allow functions named __proto__
* fast/js/script-tests/preventExtensions.js:
    - Setting __proto__ should not throw.
* fast/js/script-tests/prototypes.js:
    - Objects may contained own properties named __proto__, add new test cases.

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

12 years ago[CMake] Fix PLATFORM() define for Windows.
paroga@webkit.org [Mon, 20 Feb 2012 21:11:31 +0000 (21:11 +0000)]
[CMake] Fix PLATFORM() define for Windows.

Define WTF_PLATFORM_WIN instead of WTF_PLATFORM_WINDOWS.

* Source/cmake/OptionsWindows.cmake:

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

12 years agoMake JSCSSStyleDeclaration work directly with CSS Property ID
benjamin@webkit.org [Mon, 20 Feb 2012 20:43:40 +0000 (20:43 +0000)]
Make JSCSSStyleDeclaration work directly with CSS Property ID
https://bugs.webkit.org/show_bug.cgi?id=79014

Reviewed by Geoffrey Garen.

Source/WebCore:

Previously, accessing the CSS property was done by converting from
the JavaScript name to the CSS name, then converting that name to a lowercase
character array, and finally getting the CSS property ID.

This patch cut the indirection and make the code go directly from the
JavaScript name conversion to the CSS property ID.

This improves the performance mainly due to the following:
-avoid dynamic memory allocation
-cut the conversion early when possible
-do not parse the string twice
The previous fast-path optimization was removed because it is no longer
necessary with this change.

The improvement are the following:
-previous fast-path: no change
-previous slow-path: ~3 times faster

Test: fast/dom/CSSStyleDeclaration/access-longest-css-property.html
This just test the edge case of CSSPropertyName.

* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::writeWebKitPrefix):
(WebCore::writeEpubPrefix):
(WebCore::cssPropertyIDForJSCSSPropertyName):
(WebCore::isCSSPropertyName):
(WebCore::JSCSSStyleDeclaration::nameGetter):
(WebCore::JSCSSStyleDeclaration::putDelegate):
* css/CSSParser.cpp:
(WebCore::cssPropertyID):
(WebCore):
(WebCore::cssPropertyNameIOSAliasing):
* css/CSSParser.h:
(WebCore):

LayoutTests:

* fast/dom/CSSStyleDeclaration/access-longest-css-property-expected.txt: Added.
* fast/dom/CSSStyleDeclaration/access-longest-css-property.html: Added.

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

12 years agoUpdated Localizable.strings after r107440.
mitz@apple.com [Mon, 20 Feb 2012 19:03:16 +0000 (19:03 +0000)]
Updated Localizable.strings after r107440.

Rubber-stamped by Joseph Pecoraro.

* English.lproj/Localizable.strings:

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

12 years agoUnreviewed gardening after r108226.
ossy@webkit.org [Mon, 20 Feb 2012 19:00:36 +0000 (19:00 +0000)]
Unreviewed gardening after r108226.
Skip tests because ENABLE(SHADOW_DOM) is disabled on these platforms.

* platform/efl/Skipped:
* platform/gtk/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:

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