profile/ivi/webkit-efl.git
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

12 years agoUpdate toLower and toUpper tests for Unicode 6.1 changes
msaboff@apple.com [Mon, 20 Feb 2012 18:49:22 +0000 (18:49 +0000)]
Update toLower and toUpper tests for Unicode 6.1 changes
https://bugs.webkit.org/show_bug.cgi?id=78923

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

* tests/mozilla/ecma/String/15.5.4.11-2.js: Updated the test
to handle a third set of results for updated Unicode 6.1
changes.
(getTestCases):
(TestCaseMultiExpected):
(writeTestCaseResultMultiExpected):
(getTestCaseResultMultiExpected):
(test):
(GetUnicodeValues):
(DecimalToHexString):

LayoutTests:

* fast/js/script-tests/string-capitalization.js: Updated the test
to handle a new set of characters that have different results depending
on what version of Unicode the platform supports.  The tests work
for Unicode 5.0 through 6.1.
(createExpected):
* fast/js/string-capitalization-expected.txt:

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

12 years ago[GTK] Adding SOUP_TYPE_PROXY_RESOLVER_DEFAULT feature to soup session makes WebProces...
carlosgc@webkit.org [Mon, 20 Feb 2012 18:46:01 +0000 (18:46 +0000)]
[GTK] Adding SOUP_TYPE_PROXY_RESOLVER_DEFAULT feature to soup session makes WebProcess to hang
https://bugs.webkit.org/show_bug.cgi?id=79036

Reviewed by Martin Robinson.

This looks like a bug in gobject. Initializing the WebProcess
before creating the soup session seems to fix the problem. It's
actually a workaround, but initializing the WebProcess as sson as
possible it's a good idea in any case.

* WebProcess/gtk/WebProcessMainGtk.cpp:
(WebKit::WebProcessMainGtk):

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

12 years agoMathML internals - remove nonOperatorHeight(), hasBase()
commit-queue@webkit.org [Mon, 20 Feb 2012 18:35:12 +0000 (18:35 +0000)]
MathML internals - remove nonOperatorHeight(), hasBase()
https://bugs.webkit.org/show_bug.cgi?id=78977

Source/WebCore:

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

Stretchy operators, including embellished ones, should stretch to the largest height of
the non-stretchy items in the same explicit or implicit <mrow>.
RenderMathMLRow::layout() used to use hasBase(), isRenderMathMLOperator(), and
nonOperatorHeight() to approximate this height. We now use unembellishedOperator() to
improve this approximation, while also simplifying the code. More plainly, the code used
to skip all operators when estimating this height, instead of just the stretchy ones. We
continue to do that for now, but we more accurately skip all embellished operators
(using our currently implemented approximate definition of this), and use the simple and
true height of the remaining items. In case all items in the row are stretchy,
style()->fontSize() is better than using whatever heights these items currently happen
to be stretched to.

Test: mathml/presentation/mo-stretch.html, and many existing tests

* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore):
* rendering/mathml/RenderMathMLBlock.h:
(WebCore::RenderMathMLBlock::unembellishedOperator):
* rendering/mathml/RenderMathMLRow.cpp:
(WebCore):
(WebCore::RenderMathMLRow::layout):
* rendering/mathml/RenderMathMLRow.h:
(WebCore::RenderMathMLRow::isRenderMathMLRow):
* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore):
* rendering/mathml/RenderMathMLSubSup.h:
(RenderMathMLSubSup):
* rendering/mathml/RenderMathMLUnderOver.cpp:
(WebCore):
* rendering/mathml/RenderMathMLUnderOver.h:
(RenderMathMLUnderOver):

LayoutTests:

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

More tests with multiple embellished stretchy and non-stretchy operators will be added
later, when code is added to more precisely handle such cases.

* mathml/presentation/mo-stretch.html: Added.
* platform/mac/mathml/presentation/mo-stretch-expected.png: Added.
* platform/mac/mathml/presentation/mo-stretch-expected.txt: Added.

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

12 years agoStop the committer timer when the page is destroyed
andersca@apple.com [Mon, 20 Feb 2012 17:24:19 +0000 (17:24 +0000)]
Stop the committer timer when the page is destroyed
https://bugs.webkit.org/show_bug.cgi?id=78907

Reviewed by Adam Roben.

We don't want the committer timer to fire after the scrolling tree has been invalidated,
so stop the committer timer to prevent it from firing and trying to access the scrolling tree.

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::pageDestroyed):

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

12 years ago[WIN] Allow compiling FileSystem without CoreFoundation.
paroga@webkit.org [Mon, 20 Feb 2012 17:11:44 +0000 (17:11 +0000)]
[WIN] Allow compiling FileSystem without CoreFoundation.
https://bugs.webkit.org/show_bug.cgi?id=79032

Reviewed by Adam Roben.

Add #if USE(CF) around code using the CoreFoundation functions.

* platform/FileSystem.h:
* platform/win/FileSystemWin.cpp:

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

12 years ago[Qt] run-qtwebkit-tests doesn't consider timeouts as failures
ossy@webkit.org [Mon, 20 Feb 2012 16:57:51 +0000 (16:57 +0000)]
[Qt] run-qtwebkit-tests doesn't consider timeouts as failures
https://bugs.webkit.org/show_bug.cgi?id=71816

RunQtAPITests will notify if a timeout occurs during testing.
Added unittest to the master.cfg

Patch by János Badics <dicska@gmail.com> on 2012-02-20
Reviewed by Csaba Osztrogonác.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunQtAPITests.evaluateCommand):
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(RunQtAPITestsTest):
(RunQtAPITestsTest.assertResults):
(RunQtAPITestsTest.test_timeout):
(test_success):
(test_failure):
(test_timeout_and_failure):

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

12 years ago[BlackBerry] Upstream the first few files in platform/graphics/blackberry
commit-queue@webkit.org [Mon, 20 Feb 2012 16:50:26 +0000 (16:50 +0000)]
[BlackBerry] Upstream the first few files in platform/graphics/blackberry
https://bugs.webkit.org/show_bug.cgi?id=79023

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

Initial upstreaming, no new tests.

* platform/graphics/blackberry/FloatPointBlackBerry.cpp: Added.
(WebCore):
(WebCore::FloatPoint::FloatPoint):
(WebCore::FloatPoint::operator BlackBerry::Platform::FloatPoint):
* platform/graphics/blackberry/FloatRectBlackBerry.cpp: Added.
(WebCore):
(WebCore::FloatRect::FloatRect):
(WebCore::FloatRect::operator BlackBerry::Platform::FloatRect):
* platform/graphics/blackberry/FloatSizeBlackBerry.cpp: Added.
(WebCore):
(WebCore::FloatSize::FloatSize):
(WebCore::FloatSize::operator BlackBerry::Platform::FloatSize):
* platform/graphics/blackberry/IntPointBlackBerry.cpp: Added.
(WebCore):
(WebCore::IntPoint::IntPoint):
(WebCore::IntPoint::operator BlackBerry::Platform::IntPoint):
* platform/graphics/blackberry/IntRectBlackBerry.cpp: Added.
(WebCore):
(WebCore::IntRect::IntRect):
(WebCore::IntRect::operator BlackBerry::Platform::IntRect):
* platform/graphics/blackberry/IntSizeBlackBerry.cpp: Added.
(WebCore):
(WebCore::IntSize::IntSize):
(WebCore::IntSize::operator BlackBerry::Platform::IntSize):

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

12 years ago2012-02-19 Antonio Gomes <agomes@rim.com>
tonikitoo@webkit.org [Mon, 20 Feb 2012 16:43:29 +0000 (16:43 +0000)]
2012-02-19  Antonio Gomes  <agomes@rim.com>

        All default video/audio control elements should be rect-hit testable (Part II)
        PR #139518 / MKS_3005538

        Reviewed by George Staikos.

        Add HTMLInputElement::isMediaControlElement as a criteria
        to consider a element as clickable.

        Note that is should be only used while in the "ClickableByDefault"
        phase of FatFingers.

        * WebKitSupport/FatFingers.cpp:
        (BlackBerry::WebKit::FatFingers::isElementClickable):

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

12 years ago[WIN] Share openTemporaryFile with WinCE
paroga@webkit.org [Mon, 20 Feb 2012 16:40:24 +0000 (16:40 +0000)]
[WIN] Share openTemporaryFile with WinCE
https://bugs.webkit.org/show_bug.cgi?id=58750

Reviewed by Adam Roben.

Use pathByAppendingComponent instead of PathCombine to share the
code with WinCE. Also use the wide version of Windows functions.

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

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

12 years agoUnreviewed. Rolled DEPS.
peter@chromium.org [Mon, 20 Feb 2012 15:23:14 +0000 (15:23 +0000)]
Unreviewed.  Rolled DEPS.

* DEPS:

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

12 years agoSource/WebCore: Added code to support dispatching of missed cues in case of normal...
commit-queue@webkit.org [Mon, 20 Feb 2012 15:02:09 +0000 (15:02 +0000)]
Source/WebCore: Added code to support dispatching of missed cues in case of normal playback
and event sorting in case of simultaneous event triggering.

<track>-related events cuechange, enter, and exit should be sorted and filtered before dispatching
https://bugs.webkit.org/show_bug.cgi?id=72171

Patch by Victor Carbune <victor@rosedu.org> on 2012-02-20
Reviewed by Eric Carlson.

Tests: media/track/track-cues-missed.html
       media/track/track-cues-sorted-before-dispatch.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Added initialization code
for newly added state variables.
(WebCore::trackIndexCompare): Static boolean compare function between
the index of two tracks.
(WebCore):
(WebCore::eventTimeCueCompare): Static boolean compare function between
events associated with text track cues.
(WebCore::HTMLMediaElement::updateActiveTextTrackCues): Added code to
sort the events associated with text track cues before dispatching.
Each step from the specification is commented within the code.
(WebCore::HTMLMediaElement::finishSeek): Added a boolean variable that
is needed within the text track update function, to know whether a seek
event has occured before or not.
(WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Moved the update
call for text tracks at the beginning of the function instead of the end.
'ended' events for video should be dispatched after track specific events.
* html/HTMLMediaElement.h: Added variables to keep
state information required by the text track update algorithm (last time
the algorithm was run, and whether a seeking event has occured)
(HTMLMediaElement):

* html/LoadableTextTrack.cpp: Refactored fireCueChangeEvent method
(WebCore::LoadableTextTrack::fireCueChangeEvent): The method dispatches a
synchronous cue change event for the track element.
* html/LoadableTextTrack.h:
(LoadableTextTrack):
* html/TextTrack.cpp: Modified the fireCueChange method, cached track index.
(WebCore::TextTrack::TextTrack):
(WebCore::TextTrack::trackIndex): Cached the track index.
(WebCore):
(WebCore::TextTrack::invalidateTrackIndex): Invalidates the track. Used
when a new track is added in a TextTrackList instance.
* html/TextTrack.h:
(TextTrack):
(WebCore::TextTrack::fireCueChangeEvent): The fireCueChangeEvent has been changed,
as events need to be fired asyncronously.
* html/TextTrackCue.cpp: Added internal variables to keep the current index
position in the track cue order. This is invalidated when an element is
inserted before.
(WebCore::TextTrackCue::TextTrackCue):
(WebCore::TextTrackCue::cueIndex): Getter for the cueIndex.
(WebCore):
(WebCore::TextTrackCue::invalidateCueIndex): Invalidates the currently stored
cue index.
(WebCore::TextTrackCue::dispatchEvent): Event dispatching is done asynchronously
now. This should be the only method used for event dispatching.
(WebCore::TextTrackCue::setIsActive): The setIsActive method no longer dispatches
events, but rather just changes the m_isActive variable.
* html/TextTrackCue.h:
(TextTrackCue):

* html/TextTrackCueList.cpp:
(WebCore::TextTrackCueList::getCueIndex): Retrieves the cue index, in the track cue
order, of a given cue.
(WebCore):
(WebCore::TextTrackCueList::add): Modified the add method such that all the next cue
indexes are invalidated.
(WebCore::TextTrackCueList::invalidateCueIndexes): Invalidates all cue indexes starting
with a specific position.
* html/TextTrackCueList.h:
(TextTrackCueList):
* html/track/TextTrackList.cpp:
(TextTrackList::getTrackIndex): Retrieves the track index position.
(TextTrackList::append): Added method for invalidating the text track index in case of
changing the list contents.
* html/track/TextTrackList.h:
(TextTrackList):

LayoutTests: <track>-related events cuechange, enter, and exit should be sorted and filtered before dispatching
https://bugs.webkit.org/show_bug.cgi?id=72171

Patch by Victor Carbune <victor@rosedu.org> on 2012-02-20
Reviewed by Eric Carlson.

* media/track/captions-webvtt/missed-cues.vtt: Added.
* media/track/captions-webvtt/sorted-dispatch.vtt: Added.
* media/track/track-cues-cuechange-expected.txt: This test had to be changed because
the synchronous dispatch of the events against the HTMLTrackElement doesn't mean that
the text track actually has any active cues at the dispatch moment.
* media/track/track-cues-cuechange.html: Changed tests structure to guide the entering and
exit events according to the asynchronous dispatch done by TextTrack.
* media/track/track-cues-missed-expected.txt: Added.
* media/track/track-cues-missed.html: Added.
* media/track/track-cues-sorted-before-dispatch-expected.txt: Added.
* media/track/track-cues-sorted-before-dispatch.html: Added.

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

12 years ago[WebSocket] Move WebSocketChannel::FrameData into a separate header file
bashi@chromium.org [Mon, 20 Feb 2012 14:54:49 +0000 (14:54 +0000)]
[WebSocket] Move WebSocketChannel::FrameData into a separate header file
https://bugs.webkit.org/show_bug.cgi?id=78682

Extract WebSocketChannel::FrameData as WebSocketFrame. This brings
flexibility to add classes which want to do something for
incoming/outgoing frames (e.g. compression/decompression).

Reviewed by Kent Tamura.

No new tests. No behavior change.

* GNUmakefile.list.am: AddedWebSocketFrame.h
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* websockets/WebSocketChannel.cpp: Modified to use WebSocketFrame instead of FrameData
(WebCore):
(WebCore::WebSocketChannel::send):
(WebCore::WebSocketChannel::startClosingHandshake):
(WebCore::WebSocketChannel::parseFrame):
(WebCore::WebSocketChannel::processFrame):
(WebCore::WebSocketChannel::enqueueTextFrame):
(WebCore::WebSocketChannel::enqueueRawFrame):
(WebCore::WebSocketChannel::enqueueBlobFrame):
(WebCore::appendMaskedFramePayload): Added.
(WebCore::makeFrameData): Added.
(WebCore::WebSocketChannel::sendFrame):
* websockets/WebSocketChannel.h: Removed FrameData.
(WebSocketChannel):
(QueuedFrame):
* websockets/WebSocketFrame.h: Added.
(WebCore):
(WebSocketFrame):
(WebCore::WebSocketFrame::isNonControlOpCode):
(WebCore::WebSocketFrame::isControlOpCode):
(WebCore::WebSocketFrame::isReservedOpCode):
(WebCore::WebSocketFrame::WebSocketFrame):

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

12 years ago32-bit build fix
aroben@apple.com [Mon, 20 Feb 2012 14:53:08 +0000 (14:53 +0000)]
32-bit build fix

* platform/FractionalLayoutUnit.h:
(WebCore::FractionalLayoutUnit::setRawValue): Explicitly cast long long to int, since they
are different widths in 32-bit.

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

12 years agoClang build fix
aroben@apple.com [Mon, 20 Feb 2012 14:51:17 +0000 (14:51 +0000)]
Clang build fix

* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::willModifyDOMAttr): Removed unused parameter.

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

12 years agoUnreviewed manual rollout of r107970 which breaks table column widths
vsevik@chromium.org [Mon, 20 Feb 2012 14:03:14 +0000 (14:03 +0000)]
Unreviewed manual rollout of r107970 which breaks table column widths
updates from javascript (e.g. inspector's network panel).

Source/WebCore:

* rendering/FixedTableLayout.cpp:
(WebCore::FixedTableLayout::calcWidthArray):
* rendering/RenderTableCol.h:
(RenderTableCol):

LayoutTests:

* css2.1/20110323/fixed-table-layout-013-expected.html: Removed.
* css2.1/20110323/fixed-table-layout-013.htm: Removed.
* css2.1/20110323/fixed-table-layout-015-expected.html: Removed.
* css2.1/20110323/fixed-table-layout-015.htm: Removed.

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

12 years agoWeb Inspector: [Styles] Inconsistent alignment of non-parsed properties (having an...
apavlov@chromium.org [Mon, 20 Feb 2012 13:42:14 +0000 (13:42 +0000)]
Web Inspector: [Styles] Inconsistent alignment of non-parsed properties (having an exclamation mark)
https://bugs.webkit.org/show_bug.cgi?id=79028

Reviewed by Yury Semikhatsky.

* inspector/front-end/elementsPanel.css:
(.styles-section .properties li.not-parsed-ok img.exclamation-mark):

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

12 years agoWeb Inspector: DOMAttrModified should not be fired if the attribute value remains...
apavlov@chromium.org [Mon, 20 Feb 2012 13:11:40 +0000 (13:11 +0000)]
Web Inspector: DOMAttrModified should not be fired if the attribute value remains the same
https://bugs.webkit.org/show_bug.cgi?id=79025

Reviewed by Pavel Feldman.

Source/WebCore:

* dom/Element.cpp:
(WebCore::Element::willModifyAttribute):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::InspectorDOMAgent):
(WebCore::InspectorDOMAgent::willModifyDOMAttr):
(WebCore):
(WebCore::InspectorDOMAgent::didModifyDOMAttr):
* inspector/InspectorDOMAgent.h:
(InspectorDOMAgent):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willModifyDOMAttr):

LayoutTests:

* inspector/elements/set-attribute-expected.txt:
* inspector/elements/set-attribute.html:

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

12 years agoFix ChangeLog from last commit.
wingo@igalia.com [Mon, 20 Feb 2012 13:00:22 +0000 (13:00 +0000)]
Fix ChangeLog from last commit.

* ChangeLog: Quick fix to date and email address.

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

12 years ago2012-02-120 Andy Wingo <wingo@pobox.com>
wingo@igalia.com [Mon, 20 Feb 2012 12:49:41 +0000 (12:49 +0000)]
2012-02-120  Andy Wingo  <wingo@pobox.com>

Remove unused features from CodeFeatures
https://bugs.webkit.org/show_bug.cgi?id=78804

Reviewed by Gavin Barraclough.

* parser/Nodes.h:
* parser/ASTBuilder.h:
(JSC::ClosureFeature):
(JSC::ASTBuilder::createFunctionBody):
(JSC::ASTBuilder::usesClosures):
Remove "ClosureFeature".  Since we track captured variables more
precisely, this bit doesn't do us any good.

(JSC::AssignFeature):
(JSC::ASTBuilder::makeAssignNode):
(JSC::ASTBuilder::makePrefixNode):
(JSC::ASTBuilder::makePostfixNode):
(JSC::ASTBuilder::usesAssignment):
Similarly, remove AssignFeature.  It is unused.

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