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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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