commit-queue@webkit.org [Wed, 6 Mar 2013 15:23:11 +0000 (15:23 +0000)]
Web Inspector: Move sidebar-specific styles to a separate file.
https://bugs.webkit.org/show_bug.cgi?id=111173
Patch by Vladislav Kaznacheev <kaznacheev@chromium.org> on 2013-03-06
Reviewed by Pavel Feldman.
* WebCore.gypi:
* inspector/front-end/BreakpointsSidebarPane.js:
(WebInspector.JavaScriptBreakpointsSidebarPane):
(WebInspector.EventListenerBreakpointsSidebarPane):
* inspector/front-end/NativeBreakpointsSidebarPane.js:
(WebInspector.NativeBreakpointsSidebarPane):
* inspector/front-end/SidebarPane.js:
(WebInspector.SidebarPaneTitle):
(WebInspector.SidebarPaneStack):
(WebInspector.SidebarTabbedPane):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/breakpointsList.css: Added.
(.sidebar-pane > .body .breakpoint-condition):
(#breakpoint-condition-input):
(ol.breakpoint-list):
(.breakpoints-list-deactivated):
(.breakpoint-list li):
(.breakpoint-list li:hover):
(.breakpoint-list .checkbox-elem):
(.breakpoint-list .source-text):
(.sidebar-pane .breakpoint-hit):
(li.breakpoint-hit .breakpoint-hit-marker):
(.event-listener-breakpoints .event-category):
(.event-listener-breakpoints.properties-tree .children li):
(.event-listener-breakpoints .checkbox-elem):
* inspector/front-end/elementsPanel.css:
(.panel.elements .sidebar-pane-toolbar > select):
(.panel.elements .sidebar-pane-toolbar > select:hover):
(.panel.elements .sidebar-pane-toolbar > select:active):
(.panel.elements .sidebar-pane-toolbar > select.select-settings):
(.panel.elements .sidebar-pane-toolbar > select.select-filter):
(.panel.elements .sidebar-pane-toolbar > select > option, .panel.elements .sidebar-pane-toolbar > select > hr):
* inspector/front-end/inspector.css:
(.event-bar .event-properties):
* inspector/front-end/scriptsPanel.css:
(.workers-list > li):
(a.worker-item):
(a.worker-item:hover):
* inspector/front-end/sidebarPane.css: Added.
(.sidebar-pane):
(.sidebar-pane > .body):
(.sidebar-pane > .body .info):
(.sidebar-pane > .body .placard + .info):
(.sidebar-pane.visible > .body):
(.sidebar-pane .section .properties):
(.sidebar-tabbed-pane .tabbed-pane-header):
(.sidebar-pane-stack > .sidebar-pane.visible:nth-last-of-type(1)):
(.sidebar-pane-title):
(.sidebar-pane-title + .sidebar-pane-title, .pane:not(.visible) + .sidebar-pane-title, .sidebar-pane-title:first-of-type):
(.sidebar-pane-title:active):
(.sidebar-pane-title::before):
(.sidebar-pane-title.expanded::before):
(.sidebar-pane-toolbar):
(.sidebar-pane-toolbar > *):
(.sidebar-pane-toolbar > .pane-title-button):
(.sidebar-pane-toolbar > .pane-title-button:hover):
(.sidebar-pane-toolbar > .pane-title-button:active, .sidebar-pane-toolbar > .pane-title-button.toggled):
(.sidebar-pane-toolbar > .pane-title-button.add):
(.sidebar-pane-toolbar > .pane-title-button.element-state):
(.sidebar-pane-toolbar > .pane-title-button.refresh):
(.sidebar-pane-subtitle):
(body.platform-windows .sidebar-pane-subtitle):
(.sidebar-pane-subtitle input, .section .header input[type=checkbox]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144927
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 15:20:58 +0000 (15:20 +0000)]
Web Inspector: test that "importScript" is used only in module heads.
https://bugs.webkit.org/show_bug.cgi?id=111548
Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-06
Reviewed by Pavel Feldman.
Test that output file after all inlines does not have any 'importScript(s)' statements.
* scripts/inline_js_imports.py:
(main):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144926
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 15:20:33 +0000 (15:20 +0000)]
Web Inspector: Combine style-related panes into a single tab when Elements panel is split horizontally.
https://bugs.webkit.org/show_bug.cgi?id=111550
Patch by Vladislav Kaznacheev <kaznacheev@chromium.org> on 2013-03-06
Reviewed by Pavel Feldman.
Grouping the Elements sidebar panes into two tabbed panes proved to be
confusing and inconvenient. Put all the Elements sidebar panes into a single tabbed pane.
Combined Styles, Computed Style and Metrics into a single pane.
* inspector/front-end/ElementsPanel.js:
(WebInspector.ElementsPanel.prototype._splitVertically):
(WebInspector.ElementsPanel.prototype.addExtensionSidebarPane):
* inspector/front-end/elementsPanel.css:
(.sidebar-pane.composite):
(.sidebar-pane.composite > .body):
(.sidebar-pane.composite .metrics):
(.sidebar-pane.composite .sidebar-pane-toolbar):
(.sidebar-pane.composite .sidebar-pane-toolbar > .sidebar-pane-subtitle):
(.sidebar-pane.composite .styles-section.read-only):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144925
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yurys@chromium.org [Wed, 6 Mar 2013 15:18:54 +0000 (15:18 +0000)]
Web Inspector: support stable remote object ids
https://bugs.webkit.org/show_bug.cgi?id=109908
Reviewed by Pavel Feldman.
Source/WebCore:
Introduced a map from javascript object to its id. It guarantees
that object is assined id only once (unless it is explicitely
released). The map is per execution context and is stored in
InjectedScriptManager.
Test: inspector-protocol/persistent-id.html
* bindings/js/JSInjectedScriptHostCustom.cpp:
(WebCore::JSInjectedScriptHost::objectId):
(WebCore):
(WebCore::JSInjectedScriptHost::releaseObjectId):
* bindings/js/ScriptObject.h:
(WTF):
(WTF::ScriptObjectHash::hash):
(WTF::ScriptObjectHash::equal):
(ScriptObjectHash):
* bindings/v8/ScriptObject.h:
(WTF):
(WTF::ScriptObjectHash::hash):
(WTF::ScriptObjectHash::equal):
(ScriptObjectHash):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
(WebCore::V8InjectedScriptHost::objectIdMethodCustom):
(WebCore):
(WebCore::V8InjectedScriptHost::releaseObjectIdMethodCustom):
* inspector/InjectedScriptHost.cpp:
(WebCore::InjectedScriptHost::create):
(WebCore::InjectedScriptHost::InjectedScriptHost):
(WebCore::InjectedScriptHost::disconnect):
(WebCore::InjectedScriptHost::objectId):
(WebCore):
(WebCore::InjectedScriptHost::releaseObjectId):
* inspector/InjectedScriptHost.h:
(WebCore):
(InjectedScriptHost):
* inspector/InjectedScriptHost.idl:
* inspector/InjectedScriptManager.cpp:
(InjectedScriptManager::ObjectIdMap):
(WebCore::InjectedScriptManager::ObjectIdMap::ObjectIdMap):
(WebCore::InjectedScriptManager::ObjectIdMap::objectId):
(WebCore::InjectedScriptManager::ObjectIdMap::releaseObjectId):
(WebCore):
(WebCore::InjectedScriptManager::InjectedScriptManager):
(WebCore::InjectedScriptManager::discardInjectedScripts):
(WebCore::InjectedScriptManager::discardInjectedScriptsFor):
(WebCore::InjectedScriptManager::objectId):
(WebCore::InjectedScriptManager::releaseObjectId):
* inspector/InjectedScriptManager.h:
(InjectedScriptManager):
* inspector/InjectedScriptSource.js:
(.):
LayoutTests:
Test that same object will have same id if requested several times.
* inspector-protocol/persistent-id-expected.txt: Added.
* inspector-protocol/persistent-id.html: Added.
* inspector/console/command-line-api-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144924
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 15:09:57 +0000 (15:09 +0000)]
[BlackBerry] Use CachedResource::resourceBuffer() instead of CachedResource::data()
https://bugs.webkit.org/show_bug.cgi?id=111555
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-03-06
Reviewed by Rob Buis.
CachedResource::data() was renamed to
CachedResource::resourceBuffer() in r130947.
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::webContext):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144923
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 15:07:19 +0000 (15:07 +0000)]
[BlackBerry] Remove some unneeded header includes
https://bugs.webkit.org/show_bug.cgi?id=111545
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-03-06
Reviewed by Rob Buis.
* WebCoreSupport/CredentialTransformData.cpp:
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144922
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 15:05:54 +0000 (15:05 +0000)]
[BlackBerry] Use hasTagName instead of hasLocalName in CredentialTransformData
https://bugs.webkit.org/show_bug.cgi?id=111544
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-03-06
Reviewed by Rob Buis.
hasLocalName() expects an AtomicString, but we are passing a
HTMLName which is a QualifiedName.
* WebCoreSupport/CredentialTransformData.cpp:
(WebCore::CredentialTransformData::findPasswordFormFields): Use
hasTagName() instead of hasLocalName().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144921
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 14:47:10 +0000 (14:47 +0000)]
Unreviewed EFL gardening.
https://bugs.webkit.org/show_bug.cgi?id=111571
Gardening; added accessibility failure tests.
Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-03-06
* platform/efl-wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144920
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 14:30:44 +0000 (14:30 +0000)]
REGRESSION(r144617): Wrong usage of overwritten variable in toDOMWindow (V8Binding.cpp)
https://bugs.webkit.org/show_bug.cgi?id=111565
Patch by Marja Hölttä <marja@chromium.org> on 2013-03-06
Reviewed by Jochen Eisinger.
In toDOMWindow, the variable "global" was first nuked, and then used again. This
change was introduced in r144617.
No new tests (no functional changes).
* bindings/v8/V8Binding.cpp:
(WebCore::toDOMWindow):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144919
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
allan.jensen@digia.com [Wed, 6 Mar 2013 14:29:23 +0000 (14:29 +0000)]
[Qt] Illegal narrowing in tst_qwebhistory
https://bugs.webkit.org/show_bug.cgi?id=111562
Reviewed by Jocelyn Turcotte.
The bytearray in tst_QWebHistory::restoreIncompatibleVersion1 has integer
values higher than 127 assigned into an array of signed chars. This causes
compiler errors in C++11 since it assigns constants (>127) that does not
fit the destination (-128 to 127)
* tests/qwebhistory/tst_qwebhistory.cpp:
(tst_QWebHistory::restoreIncompatibleVersion1):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144918
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 14:16:30 +0000 (14:16 +0000)]
Typo in inline function in ByteOrder.h
https://bugs.webkit.org/show_bug.cgi?id=111473
Patch by Paweł Forysiuk <tuxator@o2.pl> on 2013-03-06
Reviewed by Benjamin Poulain.
* wtf/ByteOrder.h:
(ntohs):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144917
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yurys@chromium.org [Wed, 6 Mar 2013 14:07:36 +0000 (14:07 +0000)]
Web Inspector: use regular eval instead of injectScript for front-end extension API
https://bugs.webkit.org/show_bug.cgi?id=111529
Reviewed by Pavel Feldman.
Removed InjectedScriptManager::injectScript and replaced all of it calls
except the actual script injection with ScriptController::executeScript.
* inspector/InjectedScriptManager.cpp:
(WebCore::InjectedScriptManager::injectedScriptFor):
* inspector/InjectedScriptManager.h:
(InjectedScriptManager):
* inspector/InspectorAgent.cpp:
(WebCore::InspectorAgent::didClearWindowObjectInWorld):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
* inspector/front-end/DOMAgent.js:
(WebInspector.DOMAgent.prototype._emulateTouchEventsChanged.get if):
* inspector/front-end/ExtensionAPI.js:
(buildExtensionAPIInjectedScript):
* inspector/front-end/ExtensionServer.js:
(WebInspector.ExtensionServer.prototype._onReload):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144916
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abecsi@webkit.org [Wed, 6 Mar 2013 14:06:40 +0000 (14:06 +0000)]
[Qt][MiniBrowser] Touch mocking broken for chained getures
https://bugs.webkit.org/show_bug.cgi?id=111430
Reviewed by Jocelyn Turcotte.
Make it possible again to use touch mocking to test gesture chains
like pan->pinch->pan->pinch without lifting the primary "finger".
For this to work we need to track the pressed mouse buttons and
only synthesize touch release events when the ctrl key is released
if no mouse button is pressed. Else the pressed mouse button(s)
should result in a stationary touch point in a touch update event.
Since it has been fixed in Qt 5.0.1 use QGuiApplication::keyboardModifiers()
to check for the state of the ctrl key modifier instead of getting
it from the mouse events.
* MiniBrowser/qt/MiniBrowserApplication.cpp:
(MiniBrowserApplication::MiniBrowserApplication):
(MiniBrowserApplication::notify):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144915
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abecsi@webkit.org [Wed, 6 Mar 2013 14:02:38 +0000 (14:02 +0000)]
[Qt][WK2] Fix the Mac build after r144787
https://bugs.webkit.org/show_bug.cgi?id=111569
Reviewed by Csaba Osztrogonác.
Use uint_64 explicitly instead of size_t.
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(CoreIPC::::encode):
(CoreIPC::::decode):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144914
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
allan.jensen@digia.com [Wed, 6 Mar 2013 14:02:13 +0000 (14:02 +0000)]
[Qt] Do not disable C++0x
https://bugs.webkit.org/show_bug.cgi?id=111559
Reviewed by Kenneth Rohde Christiansen.
* WebCore.pri:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144913
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jchaffraix@webkit.org [Wed, 6 Mar 2013 13:31:17 +0000 (13:31 +0000)]
Remove the (dead) code for handling shorthands in StyleResolver / StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=111505
Reviewed by Alexis Menard.
The CSS parsing code expands shorthands (with the exception of 'font') to their longhands.
This means that all the code in StyleResolver / StyleBuilder to handle shorthands is basically
dead and shouldn't be there. The reason for it to be is that people didn't know about shorthands
expansion and thus copied existing code.
This change addresses both issues by removing the code and adding ASSERTs that should prevent people
from adding more dead code.
Refactoring, covered by existing tests.
* css/StylePropertyShorthand.h: Added isExpandedShorthand.
* css/StylePropertyShorthand.cpp:
(WebCore::isExpandedShorthand):
Added this function that ignores 'font' as it is the only shorthand that is no consistently expanded
to account for system fonts.
* css/StyleBuilder.cpp:
(WebCore::StyleBuilder::StyleBuilder):
Removed the shorthands.
* css/StyleBuilder.h:
(WebCore::StyleBuilder::setPropertyHandler):
Added ASSERTs that people don't add shorthand handling.
* css/StyleResolver.cpp:
(WebCore::isValidVisitedLinkProperty):
Removed all the shorthands (shouldn't be reachable unless the ASSERT in applyProperty
triggers).
(WebCore::StyleResolver::applyProperty):
Removed all shorthand handling code, moved the shorthands together and added some ASSERT
to ensure people don't abuse the code and re-add some of it back by mistake.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144912
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tkent@chromium.org [Wed, 6 Mar 2013 13:00:14 +0000 (13:00 +0000)]
Rename WebCore/editing/visible_units.* to VisibleUnits.*
https://bugs.webkit.org/show_bug.cgi?id=111426
Reviewed by Alexey Proskuryakov.
Source/WebCore:
No new tests. Just a refactoring.
* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* accessibility/AccessibilityNodeObject.cpp:
* accessibility/AccessibilityObject.cpp:
* accessibility/AccessibilityRenderObject.cpp:
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
* accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
* dom/Position.cpp:
* dom/Range.cpp:
* editing/AlternativeTextController.cpp:
* editing/ApplyBlockElementCommand.cpp:
* editing/ApplyStyleCommand.cpp:
* editing/CompositeEditCommand.cpp:
* editing/DeleteSelectionCommand.cpp:
* editing/EditingAllInOne.cpp:
* editing/EditingStyle.cpp:
* editing/Editor.cpp:
* editing/FormatBlockCommand.cpp:
* editing/FrameSelection.cpp:
* editing/IndentOutdentCommand.cpp:
* editing/InsertLineBreakCommand.cpp:
* editing/InsertListCommand.cpp:
* editing/InsertParagraphSeparatorCommand.cpp:
* editing/InsertTextCommand.cpp:
* editing/ReplaceSelectionCommand.cpp:
* editing/SurroundingText.cpp:
* editing/TextCheckingHelper.cpp:
* editing/TextIterator.cpp:
* editing/TypingCommand.cpp:
* editing/VisiblePosition.cpp:
* editing/VisibleSelection.cpp:
* editing/VisibleUnits.cpp: Copied from Source/WebCore/editing/visible_units.cpp.
* editing/VisibleUnits.h: Copied from Source/WebCore/editing/visible_units.h.
* editing/htmlediting.cpp:
* editing/markup.cpp:
* editing/visible_units.cpp: Removed.
* editing/visible_units.h: Removed.
* page/Frame.cpp:
* page/mac/FrameMac.mm:
* platform/win/EditorWin.cpp:
Source/WebKit/mac:
* WebView/WebFrame.mm:
Source/WebKit2:
* WebProcess/WebPage/mac/WebPageMac.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144911
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Wed, 6 Mar 2013 12:52:16 +0000 (12:52 +0000)]
Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/
13292104>
Reviewed by Geoffrey Garen.
Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.
This time it should stick; I've been through all the tests with COLLECT_ON_EVERY_ALLOCATION.
The issue with the last version was that Structure::m_offset could be used uninitialized
when re-materializing a previously GC'd property table, causing some sanity checks to fail.
* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
Added PropertyTable.cpp.
* runtime/PropertyTable.cpp: Added.
(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):
Moved marking of property table values here from Structure::visitChildren().
* runtime/WriteBarrier.h:
(JSC::WriteBarrierBase::get):
Move m_cell to a local before using it multiple times. This avoids a multiple-access race when
Structure::checkOffsetConsistency() is used in assertions on the main thread while a marking thread
zaps the property table.
* runtime/Structure.h:
(JSC::Structure::materializePropertyMapIfNecessary):
(JSC::Structure::materializePropertyMapIfNecessaryForPinning):
* runtime/StructureInlines.h:
(JSC::Structure::propertyTable):
Added a getter for the Structure's PropertyTable that ASSERTs GC currently isn't active.
Because GC can zap an unpinned property table at any time, it's not entirely safe to access it.
Renamed the variable itself to m_propertyTableUnsafe to force call sites into explaining themselves.
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
Moved these out of Structure.h to break header dependency cycle between Structure/PropertyTable.
* runtime/Structure.cpp:
(JSC::Structure::visitChildren):
Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.
(JSC::Structure::takePropertyTableOrCloneIfPinned):
Added for setting up the property table in a new transition, this code is now shared between
addPropertyTransition() and nonPropertyTransition().
* runtime/JSGlobalData.h:
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
Add a global propertyTableStructure.
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):
Make PropertyTable a GC object.
* runtime/Structure.cpp:
(JSC::Structure::dumpStatistics):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::despecifyDictionaryFunction):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::sealTransition):
(JSC::Structure::freezeTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::isSealed):
(JSC::Structure::isFrozen):
(JSC::Structure::flattenDictionaryStructure):
(JSC::Structure::pin):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::get):
(JSC::Structure::despecifyFunction):
(JSC::Structure::despecifyAllFunctions):
(JSC::Structure::putSpecificValue):
(JSC::Structure::remove):
(JSC::Structure::createPropertyMap):
(JSC::Structure::getPropertyNamesFromStructure):
(JSC::Structure::checkConsistency):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144910
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zeno.albisser@digia.com [Wed, 6 Mar 2013 12:41:40 +0000 (12:41 +0000)]
DataReference::vector() should be const.
https://bugs.webkit.org/show_bug.cgi?id=109928
Reviewed by Anders Carlsson.
* Platform/CoreIPC/DataReference.h:
(CoreIPC::DataReference::vector):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144909
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alexis@webkit.org [Wed, 6 Mar 2013 12:14:56 +0000 (12:14 +0000)]
Do not add CSSPropertyBorderImage shorthand part of the property list when parsing CSS border property
https://bugs.webkit.org/show_bug.cgi?id=111481
Reviewed by Julien Chaffraix.
Source/WebCore:
After http://trac.webkit.org/changeset/135848 and more generally we do not
add shorthand directly into the property list used afterwards to build
StylePropertySet but we rather expand the shorthand to add the
longhands. CSSPropertyBorderImage is a shorthand and it should follow
that rule, so when we successfully parsed CSS border property and we
should reset border-image then we should reset the longhands too.
Test: LayoutTests/inspector/styles/styles-new-API-expected.txt which
reflects the fact that we add longhands instead of the shorthand. All
the other tests should not regress.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
LayoutTests:
As now border-image is expanded when we sucessfully parsed a CSS border,
this test needs to be updated to reflect that the longhands are now
part of the declarated style.
* inspector/styles/styles-new-API-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144908
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 12:07:26 +0000 (12:07 +0000)]
Accelerated overflow scrolling for Coordinated Graphics.
https://bugs.webkit.org/show_bug.cgi?id=110323
Source/WebCore:
Patch by Luiz Agostini <luiz.agostini@nokia.com> on 2013-03-06
Reviewed by Noam Rosenthal.
A scroll offset is applied to individual layers on UI process and the
web process is notified assynchronously.
The new API WKCoordinatedScene may be used to scroll layers in the UI process.
Tests will be added on bug #111140.
Scrolling coordinator is used to provide a ScrollableArea to CoordinatedGraphicsLayer.
* page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
(WebCore::ScrollingCoordinatorCoordinatedGraphics::scrollableAreaScrollLayerDidChange):
(WebCore):
(WebCore::ScrollingCoordinatorCoordinatedGraphics::willDestroyScrollableArea):
* page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h:
(ScrollingCoordinatorCoordinatedGraphics):
GraphicsLayerTextureMapper is responsible for receiving the 'did commit' messages and to pass
them to its TextureMapperLayer on the appropriated time.
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
(WebCore::GraphicsLayerTextureMapper::didCommitScrollOffset):
(WebCore):
(WebCore::GraphicsLayerTextureMapper::setIsScrollable):
(WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
(WebCore::GraphicsLayerTextureMapper::setScrollClient):
(WebCore::GraphicsLayerTextureMapper::setID):
(GraphicsLayerTextureMapper):
(WebCore::GraphicsLayerTextureMapper::isScrollable):
TextureMapperLayer is responsible for applying the requested scroll offset and for
sending the commit messages to web process. It is also able to hittest layers and identify
the ones that are scrollable.
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::hitTest):
(WebCore):
(WebCore::TextureMapperLayer::scrollableLayerHitTestCondition):
(WebCore::TextureMapperLayer::findScrollableContentsLayerAt):
(WebCore::TextureMapperLayer::mapScrollOffset):
(WebCore::TextureMapperLayer::commitScrollOffset):
(WebCore::TextureMapperLayer::scrollBy):
(WebCore::TextureMapperLayer::didCommitScrollOffset):
* platform/graphics/texmap/TextureMapperLayer.h:
(TextureMapperLayer):
(ScrollingClient):
(WebCore::TextureMapperLayer::TextureMapperLayer):
(WebCore::TextureMapperLayer::setID):
(WebCore::TextureMapperLayer::id):
(WebCore::TextureMapperLayer::setScrollClient):
(WebCore::TextureMapperLayer::setIsScrollable):
(WebCore::TextureMapperLayer::isScrollable):
(WebCore::TextureMapperLayer::adjustedPosition):
CoordinatedGraphicsLayer receives the commit messages and updates its ScrollableArea.
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::setScrollableArea):
(WebCore):
(WebCore::CoordinatedGraphicsLayer::commitScrollOffset):
(WebCore::CoordinatedGraphicsLayer::resetLayerState):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
(WebCore):
(CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::isScrollable):
CoordinatedGraphicsScene receives the commit messages from TextureMapperLayer and
dispatches them on the main thread. It also has a new method that is used to find
the topmost scrollable layer at a given point.
* platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
(WebCore::CoordinatedGraphicsScene::setLayerState):
(WebCore::CoordinatedGraphicsScene::createLayer):
(WebCore::CoordinatedGraphicsScene::dispatchCommitScrollOffset):
(WebCore):
(WebCore::CoordinatedGraphicsScene::commitScrollOffset):
(WebCore::CoordinatedGraphicsScene::findScrollableContentsLayerAt):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
(WebCore):
(CoordinatedGraphicsSceneClient):
(CoordinatedGraphicsScene):
New fields have been added to CoordinatedGraphicsLayerState.
* platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
(CoordinatedGraphicsLayerState):
Source/WebKit2:
Patch by Luiz Agostini <luiz.agostini@nokia.com> on 2013-03-06
Reviewed by Noam Rosenthal.
Signed off for WebKit2 by Simon Fraser.
A scroll offset is applied to individual layers on UI process and the
web process is notified assynchronously.
The new API WKCoordinatedScene may be used to scroll layers in the UI process.
* CMakeLists.txt:
Encoding and decoding the new members of CoordinatedGraphicsLayerState.
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(CoreIPC::::encode):
(CoreIPC::::decode):
Adding acceleratedCompositingForOverflowScrollEnabled to WebPreferencesStore.
* Shared/WebPreferencesStore.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
New API WKCoordinatedScene is used to scroll layers on UI side.
* UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp:
* UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.h:
* UIProcess/CoordinatedGraphics/WKCoordinatedSceneAPICast.h:
A new message is used to send scroll commit messages to web process.
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
(WebKit::CoordinatedLayerTreeHostProxy::commitScrollOffset):
(WebKit):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
(CoordinatedLayerTreeHostProxy):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::detachLayer):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
(WebKit::CoordinatedLayerTreeHost::commitScrollOffset):
(WebKit):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
(CoordinatedLayerTreeHost):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144907
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thiago.santos@intel.com [Wed, 6 Mar 2013 11:59:02 +0000 (11:59 +0000)]
[EFL] Unreviewed gardening
Added new baselines after r144837 and marked as failures
some pasteboard tests that we don't support yet.
* platform/efl/TestExpectations:
* platform/efl/fast/invalid/017-expected.txt:
* platform/efl/fast/invalid/018-expected.txt:
* platform/efl/tables/mozilla/bugs/bug113235-2-expected.txt:
* platform/efl/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/efl/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144906
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ch.dumez@sisa.samsung.com [Wed, 6 Mar 2013 11:22:51 +0000 (11:22 +0000)]
Unreviewed EFL gardening.
Unskip authentication test that is now passing on EFL port.
* platform/efl/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144905
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Wed, 6 Mar 2013 10:48:41 +0000 (10:48 +0000)]
Unreviewed GTK gardening.
* platform/gtk/TestExpectations: Adding a failure expectation for a test added in r144877.
* platform/gtk/fast/invalid/017-expected.txt: Rebaselining after r144837.
* platform/gtk/fast/invalid/018-expected.txt: Ditto.
* platform/gtk/tables/mozilla/bugs/bug113235-2-expected.txt: Added. Ditto.
* platform/gtk/tables/mozilla/bugs/bug9024-expected.txt: Added. Ditto.
* platform/gtk/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added. Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144904
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
allan.jensen@digia.com [Wed, 6 Mar 2013 09:59:22 +0000 (09:59 +0000)]
REGGRESSION (r142112): It made compositing tests fail on EFL, Qt.
https://bugs.webkit.org/show_bug.cgi?id=109291
Reviewed by Kenneth Rohde Christiansen.
Source/WebCore:
Report we support fixed layers.
* page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h:
(WebCore::ScrollingCoordinatorCoordinatedGraphics::supportsFixedPositionLayers):
(ScrollingCoordinatorCoordinatedGraphics):
LayoutTests:
Unskip now passing test, and move baselines specific to having no scrolling-coordinator to WK1.
* platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png.
* platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt.
* platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.png: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.png.
* platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.txt: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.txt.
* platform/qt-5.0-wk2/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144901
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 09:35:21 +0000 (09:35 +0000)]
[EFL][WK2] Convert from device view size to UI view size only in EwkView.
https://bugs.webkit.org/show_bug.cgi?id=110197
Patch by Huang Dongsung <luxtella@company100.net> on 2013-03-06
Reviewed by Kenneth Rohde Christiansen.
Signed off for WebKit2 by Benjamin Poulain.
Device scale factor is a property of the physical display, so only EwkView
should deal with converting device view size to UI (a.k.a Density Independent Pixel)
view size. It increases readability because we can regard a view size in
other classes (e.g. WebView, PageViewportController, WebPage) except for
EwkView as UI size.
* UIProcess/API/efl/EwkView.cpp:
(EwkView::setDeviceScaleFactor):
(EwkView::setDeviceSize):
(EwkView::size):
(EwkView::deviceSize):
(EwkView::scheduleUpdateDisplay):
(EwkView::createGLSurface):
(EwkView::handleEvasObjectCalculate):
* UIProcess/API/efl/EwkView.h:
(EwkView):
* UIProcess/efl/WebView.cpp:
(WebKit::WebView::paintToCurrentGLContext):
(WebKit::WebView::updateViewportSize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144899
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ch.dumez@sisa.samsung.com [Wed, 6 Mar 2013 09:27:43 +0000 (09:27 +0000)]
[EFL][WK2] Use Vector::reserveInitialCapacity() in WebEventFactory::createWebTouchEvent()
https://bugs.webkit.org/show_bug.cgi?id=111530
Reviewed by Benjamin Poulain.
In WebEventFactory::createWebTouchEvent(), when constructing the vector of touch points,
we already know in advance the total number of touch points. Therefore, we should
leverage WTF::Vector::reserveInitialCapacity() and WTF::Vector::uncheckedAppend() to save
some capacity checks.
* Shared/efl/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebTouchEvent):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144898
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Wed, 6 Mar 2013 09:23:12 +0000 (09:23 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: Delete http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144897
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 09:16:28 +0000 (09:16 +0000)]
Unreviewed, rolling out r144859.
http://trac.webkit.org/changeset/144859
https://bugs.webkit.org/show_bug.cgi?id=111519
Introduced a test that calls non-exist function on non-
Chromium ports and crash on Chromium (Requested by rniwa on
#webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-06
Source/WebCore:
* html/HTMLAudioElement.h:
(WebCore::HTMLAudioElement::hasPendingActivity):
(HTMLAudioElement):
* html/HTMLAudioElement.idl:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::hasPendingActivity):
* html/HTMLMediaElement.idl:
LayoutTests:
* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal-expected.txt: Removed.
* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html: Removed.
* http/tests/misc/resources/delete-frame-during-readystatechange-frame-with-gc-after-video-removal.html: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144896
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Wed, 6 Mar 2013 08:59:40 +0000 (08:59 +0000)]
Web Inspector: Could not open Profiles panel.
https://bugs.webkit.org/show_bug.cgi?id=111535
Reviewed by Alexander Pavlov.
* inspector/front-end/CPUProfileView.js:
* inspector/front-end/ProfilesPanel.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144895
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tony@chromium.org [Wed, 6 Mar 2013 08:29:42 +0000 (08:29 +0000)]
Crash during middle mouse click when page is removed
https://bugs.webkit.org/show_bug.cgi?id=111489
Reviewed by Hajime Morrita.
Source/WebCore:
Check for a null page that can happen if we remove the document from the DOM.
The other methods in EventHandler also check for a null page.
Test: editing/pasteboard/selection-paste-crash.html
* page/EventHandler.cpp:
(WebCore::EventHandler::handlePasteGlobalSelection):
LayoutTests:
* editing/pasteboard/resources/selection-paste-crash.html: Added.
* editing/pasteboard/selection-paste-crash-expected.txt: Added.
* editing/pasteboard/selection-paste-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144894
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
g.czajkowski@samsung.com [Wed, 6 Mar 2013 08:04:39 +0000 (08:04 +0000)]
[WK2][EFL] Enable asynchronous spell checking by default
https://bugs.webkit.org/show_bug.cgi?id=111295
Reviewed by Benjamin Poulain.
Asynchronous spell checking feature is disabled by default for wk2 platforms.
It means all requests of spell checking are sent synchronously.
WebKit-EFL implements requestCheckingOfString method which allows
to check spelling asynchronously.
* UIProcess/API/efl/EwkView.cpp:
(EwkView::EwkView):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144892
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Wed, 6 Mar 2013 07:59:18 +0000 (07:59 +0000)]
Replace shouldLazyAttach bool with an enum for readability
https://bugs.webkit.org/show_bug.cgi?id=111503
Reviewed by Dimitri Glazkov.
No behavioral change.
* bindings/cpp/WebDOMNodeCustom.cpp:
(WebDOMNode::insertBefore):
(WebDOMNode::replaceChild):
(WebDOMNode::appendChild):
* bindings/js/JSNodeCustom.cpp:
(WebCore::JSNode::insertBefore):
(WebCore::JSNode::replaceChild):
(WebCore::JSNode::appendChild):
* bindings/v8/custom/V8NodeCustom.cpp:
(WebCore):
(WebCore::V8Node::insertBeforeMethodCustom):
(WebCore::V8Node::replaceChildMethodCustom):
(WebCore::V8Node::appendChildMethodCustom):
* dom/ContainerNode.cpp:
(WebCore):
(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::replaceChild):
(WebCore::ContainerNode::appendChild):
(WebCore::updateTreeAfterInsertion):
* dom/ContainerNode.h:
(ContainerNode):
* dom/Node.cpp:
(WebCore::Node::insertBefore):
(WebCore::Node::replaceChild):
(WebCore::Node::appendChild):
* dom/Node.h:
(Node):
* editing/AppendNodeCommand.cpp:
(WebCore::AppendNodeCommand::doApply):
* editing/InsertNodeBeforeCommand.cpp:
(WebCore::InsertNodeBeforeCommand::doApply):
* html/shadow/MediaControlsApple.cpp:
(WebCore::MediaControlsApple::createControls):
* html/shadow/MediaControlsBlackBerry.cpp:
(WebCore::MediaControlsBlackBerry::createControls):
* html/shadow/MediaControlsChromium.cpp:
(WebCore::MediaControlsChromium::initializeControls):
* html/shadow/MediaControlsChromiumAndroid.cpp:
(WebCore::MediaControlsChromiumAndroid::createControls):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144891
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
morrita@google.com [Wed, 6 Mar 2013 07:53:47 +0000 (07:53 +0000)]
Custom Elements: CustomElementConstructor::m_name doesn't have any good use.
https://bugs.webkit.org/show_bug.cgi?id=111523
Reviewed by Kentaro Hara.
This change removes CustomElementConstructor::m_name and renames
m_tagName to m_name. Now generated function name is same as interface name.
Originally, m_name was added to specify the generated constructor
name. An early version of custom element allows to give the name,
but it no longer says anything about that.
The rename is to align the semantics of type extension mechanism
of Custom Elements, where the name of a custom element isn't
necessarily a tag name.
No new tests. Just removing old code.
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
* dom/CustomElementConstructor.cpp:
(WebCore::CustomElementConstructor::create):
(WebCore::CustomElementConstructor::CustomElementConstructor):
(WebCore::CustomElementConstructor::createElement):
* dom/CustomElementConstructor.h:
(CustomElementConstructor):
(WebCore::CustomElementConstructor::name):
* dom/CustomElementRegistry.cpp:
(WebCore::CustomElementRegistry::registerElement):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144889
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Wed, 6 Mar 2013 07:43:43 +0000 (07:43 +0000)]
Web Inspector: Flame Chart. Provide node context info in a popover when mouse hovers over a flame chart item.
https://bugs.webkit.org/show_bug.cgi?id=111442
Reviewed by Yury Semikhatsky.
FlameChart is a canvas so it is not possible to attach the popover to the items on it.
It would be a bit tricky to support an offset due to complex behaviour of the popover.
The simplest solution is to create a fake anchor element and move it to the right position.
* inspector/front-end/FlameChart.js:
(WebInspector.FlameChart):
(WebInspector.FlameChart.prototype._getPopoverAnchor):
(WebInspector.FlameChart.prototype._showPopover):
(WebInspector.FlameChart.prototype._onMouseMove):
(WebInspector.FlameChart.prototype.findNodeCallback):
(WebInspector.FlameChart.prototype._coordinatesToNode):
(WebInspector.FlameChart.prototype.onResize):
* inspector/front-end/flameChart.css:
(.flame-chart .item-anchor):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144888
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 07:37:08 +0000 (07:37 +0000)]
[EFL] Ensure right format is used in SnapshotImageGL.
https://bugs.webkit.org/show_bug.cgi?id=111333
Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2013-03-05
Reviewed by Benjamin Poulain.
GL_BGRA format is not standard for glReadPixels with GLES.
This patch ensures that GL_RGBA is used in SnapshotImageGL
while using GLES.
* UIProcess/API/efl/SnapshotImageGL.cpp:
(getImageSurfaceFromFrameBuffer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144887
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 6 Mar 2013 07:32:39 +0000 (07:32 +0000)]
Get rid of the invert argument to SpeculativeJIT::jumpSlowForUnwantedArrayMode
https://bugs.webkit.org/show_bug.cgi?id=105624
Reviewed by Oliver Hunt.
All callers pass invert = false, which is the default value of the argument. So, get
rid of the argument and fold away all code that checks it.
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode):
* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144886
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Wed, 6 Mar 2013 06:59:07 +0000 (06:59 +0000)]
Unreviewed buildfix after r144787. Add missing USE(GRAPHICS_SURFACE) guards.
* platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
(WebCore::CoordinatedGraphicsScene::setLayerState):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
(WebCore::CoordinatedGraphicsLayerState::CoordinatedGraphicsLayerState):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144885
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 6 Mar 2013 06:54:01 +0000 (06:54 +0000)]
Autoreleased cached pages slow down the PLT by 2%
https://bugs.webkit.org/show_bug.cgi?id=111522
Reviewed by Filip Pizlo.
Let's stop doing that.
2% PLT speedup.
* history/PageCache.cpp:
(WebCore::PageCache::remove):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144884
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
csaavedra@igalia.com [Wed, 6 Mar 2013 06:43:13 +0000 (06:43 +0000)]
Make toggle-unlink.html test Mac specific behaviour
https://bugs.webkit.org/show_bug.cgi?id=111321
Reviewed by Ryosuke Niwa.
A new test for Windows behavior will have to be added once bug
110487 is landed.
* editing/execCommand/script-tests/toggle-unlink-mac.js: Renamed
from
LayoutTests/editing/execCommand/script-tests/toggle-unlink.js.
Also set editing behaviour to Mac.
* editing/execCommand/toggle-unlink-mac-expected.txt: Renamed from
LayoutTests/editing/execCommand/toggle-unlink-expected.txt.
* editing/execCommand/toggle-unlink-mac.html: Renamed from
LayoutTests/editing/execCommand/toggle-unlink.html.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144883
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Wed, 6 Mar 2013 06:27:43 +0000 (06:27 +0000)]
Unreviewed chromium test expectations update.
Patch by Vsevolod Vlasov <vsevik@chromium.org> on 2013-03-05
* platform/chromium/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144882
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Wed, 6 Mar 2013 06:09:42 +0000 (06:09 +0000)]
Unreviewed chromium test expectations update.
* platform/chromium/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144881
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 6 Mar 2013 05:48:38 +0000 (05:48 +0000)]
Add a flaky crash test expectation to editing/selection/selection-invalid-offset.html
on Mac per bug 111521.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144880
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 6 Mar 2013 05:32:47 +0000 (05:32 +0000)]
Add test coverage for DCE and type checks.
Rubber stamped by Geoffrey Garen.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-and-decrement-expected.txt: Added.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-and-decrement.html: Added.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-expected.txt: Added.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-and-decrement.js: Added.
(foo):
* fast/js/script-tests/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null.js: Added.
(foo):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144879
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Wed, 6 Mar 2013 05:23:34 +0000 (05:23 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144878
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Wed, 6 Mar 2013 05:16:16 +0000 (05:16 +0000)]
[Shadow] Implements event re-targeting for Touch Events.
https://bugs.webkit.org/show_bug.cgi?id=107800
Reviewed by Dimitri Glazkov.
Source/WebCore:
So far, Touch Events have been intentionally disabled in shadow
tree since it allows users to access internal nodes in shadow tree
by accessing Touch Event's information.
This patch re-targets all individual touch point's target in
TouchList (touches, targetTouches and changedTouches) owned by a Touch Event
before the Touch Event is dispatched so that we won't break an
upper boundary of shadow DOM.
Touch Events re-targeting is similar to that of Mouse Events
re-targeting. The difference is that a Touch Event can have more
than one related target because of multiple touches. We must
re-target all individual touch points which can be referred from
the Touch Event.
Now, Touch Events can be fired in shadow tree. I've removed the
existing limitation.
Test: fast/dom/shadow/touch-event-retargeting.html
* dom/EventContext.cpp:
(WebCore::EventContext::isTouchEventContext):
(WebCore):
(WebCore::TouchEventContext::TouchEventContext):
(WebCore::TouchEventContext::~TouchEventContext):
(WebCore::TouchEventContext::handleLocalEvents):
(WebCore::TouchEventContext::isTouchEventContext):
(WebCore::TouchEventContext::checkReachability): Used for assertion of reachability for each Touch point.
* dom/EventContext.h:
(WebCore):
(EventContext):
(TouchEventContext): Introduced to hold necessary information for re-targeting Touch event.
(WebCore::TouchEventContext::touches):
(WebCore::TouchEventContext::targetTouches):
(WebCore::TouchEventContext::changedTouches):
(WebCore::EventContext::isReachable):
* dom/EventRetargeter.cpp:
(WebCore::EventRetargeter::calculateEventPath):
(WebCore::EventRetargeter::adjustForTouchEvent):
(WebCore):
(WebCore::EventRetargeter::adjustTouchList):
(WebCore::EventRetargeter::adjustForRelatedTarget):
(WebCore::EventRetargeter::calculateAdjustedNodes): Updated so that this can be used for Touch point re-targeting.
(WebCore::EventRetargeter::buildRelatedNodeMap):
* dom/EventRetargeter.h:
(WebCore):
(EventRetargeter):
* dom/Node.cpp:
(WebCore::Node::dispatchEvent):
(WebCore):
(WebCore::Node::dispatchTouchEvent):
* dom/Node.h:
(WebCore):
(Node):
* dom/Touch.cpp:
(WebCore::Touch::Touch):
(WebCore):
(WebCore::Touch::cloneWithNewTarget):
* dom/Touch.h:
(Touch):
* dom/TouchEvent.cpp:
(WebCore::TouchEventDispatchMediator::create):
(WebCore):
(WebCore::TouchEventDispatchMediator::TouchEventDispatchMediator):
(WebCore::TouchEventDispatchMediator::event):
(WebCore::TouchEventDispatchMediator::dispatchEvent):
* dom/TouchEvent.h:
(TouchEvent):
(WebCore::TouchEvent::setTouches):
(WebCore::TouchEvent::setTargetTouches):
(WebCore::TouchEvent::setChangedTouches):
(TouchEventDispatchMediator):
(WebCore):
(WebCore::toTouchEvent):
* dom/TouchList.cpp:
(WebCore::TouchList::item):
(WebCore):
* dom/TouchList.h:
(TouchList):
* page/EventHandler.cpp:
(WebCore::EventHandler::hitTestResultInFrame): Removed the limitation. Adjusting is no longer done here.
(WebCore::EventHandler::handleTouchEvent):
LayoutTests:
* fast/dom/shadow/resources/event-dispatching.js:
(recordEvent):
(dumpTouchList):
(sortDispatchedEvent):
(showSandboxTree):
* fast/dom/shadow/shadow-dom-event-dispatching-distributed-text-node-expected.txt:
* fast/dom/shadow/shadow-dom-event-dispatching-distributed-text-node.html:
* fast/dom/shadow/shadow-dom-event-dispatching-text-node-in-shadow-root-expected.txt:
* fast/dom/shadow/touch-event-retargeting-expected.txt: Added.
* fast/dom/shadow/touch-event-retargeting.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144877
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 6 Mar 2013 04:49:10 +0000 (04:49 +0000)]
Add test coverage for DCE and type checks.
Rubber stampted by Geoffrey Garen.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-typeof-expected.txt: Added.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-typeof.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-cfg-simplify-eliminate-set-local-type-check-then-typeof.js: Added.
(foo):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144876
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Wed, 6 Mar 2013 04:27:27 +0000 (04:27 +0000)]
Unreviewed gardening. AppleWin port.
* platform/win/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144875
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 6 Mar 2013 04:22:10 +0000 (04:22 +0000)]
DFG may infer an edge to be a double-using edge and then later experience multiple-personality disorder with respect to that particular decision
https://bugs.webkit.org/show_bug.cgi?id=109393
Rubber stamped by Geoffrey Garen.
* fast/js/dfg-double-addition-simplify-to-int-expected.txt: Added.
* fast/js/dfg-double-addition-simplify-to-int.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-double-addition-simplify-to-int.js: Added.
(foo):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144874
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Wed, 6 Mar 2013 04:17:25 +0000 (04:17 +0000)]
Unreviewed gardening. AppleWin port.
* platform/win/cssom: Added.
* platform/win/cssom/cssvalue-comparison-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144873
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Wed, 6 Mar 2013 04:04:33 +0000 (04:04 +0000)]
Unreviewed gardening. AppleWin port.
Patch by Roger Fong <roger_fong@apple.com> on 2013-03-05
* platform/win/TestExpectations:
* platform/win/fast/forms/number: Added.
* platform/win/fast/forms/number/number-l10n-input-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144872
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Wed, 6 Mar 2013 03:59:33 +0000 (03:59 +0000)]
Unreviewed gardening. AppleWin port.
* platform/win/TestExpectations:
* platform/win/fast/forms/number: Added.
* platform/win/fast/forms/number/number-l10n-input-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144871
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Wed, 6 Mar 2013 03:54:18 +0000 (03:54 +0000)]
[chromium] don't use custom freetype on linux asan for now
https://bugs.webkit.org/show_bug.cgi?id=111516
Unreviewed, build fix.
Turns out the custom lib is getting picked up by other binaries
on our bot, which is bad.
* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144870
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Wed, 6 Mar 2013 03:52:51 +0000 (03:52 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: plugins/plugin-clip-subframe.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144869
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Wed, 6 Mar 2013 03:28:23 +0000 (03:28 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: fast/regions/region-style-in-columns.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144868
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Wed, 6 Mar 2013 03:27:49 +0000 (03:27 +0000)]
[chromium] making DumpRenderTree_resources a separate bundle breaks xcode
https://bugs.webkit.org/show_bug.cgi?id=111509
Unreviewed, build fix.
Actually comment out the flag :(.
* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144867
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Wed, 6 Mar 2013 03:07:18 +0000 (03:07 +0000)]
[chromium] making DumpRenderTree_resources a separate bundle breaks xcode
https://bugs.webkit.org/show_bug.cgi?id=111509
Unreviewed, build fix.
r144863 appears to have broken the xcode build; I'm temporarily
trying this instead, and if this doesn't work, I'll revert the
other changes.
* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144866
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
morrita@google.com [Wed, 6 Mar 2013 02:52:34 +0000 (02:52 +0000)]
[Custom Elements][V8] Custom Element doesn't need its own WrapperTypeInfo
https://bugs.webkit.org/show_bug.cgi?id=111411
Reviewed by Kentaro Hara.
No new tests. No observable change yet.
This is a preparation for Bug 110436, where WebKit is going to
allow any HTML element to be a superclass of custom elements.
This change eliminates WrapperTypeInfo for custom element. Instead
of that, the wrapper of a custom element picks WrapperTypeInfo
from most descendant built-in HTML element. For example, think about
following hierarchy:
- ... <- HTMLElement <- HTMLDivElememnt <- ExistingCustomElement <- NewCustomElement
In this case, both ExistingCustomElement and NewCustomElement has
HTMLDivElememnt's type info. This is because HTMLDivElememnt is
the most descendant (or "the nearest") built-in HTML
element. (HTMLElement isn't the most descendant.
ExistingCustomElement isn't a built-in.)
Using such WrapperTypeInfos, created custom element wrappers can
get appropriate set of method and properties regardless of its
super-elements.
This change tells the prototype object of each built-in object
which WrapperTypeInfo the native backing wants:
HTMLDivElememnt.prototype knows V8HTMLDivElement::info for
example. The pointer to the type info is stored into an internal
field. On wrapper construction, createWrapper() walks up the
prototype chain and pick the first one.
* bindings/v8/V8DOMConfiguration.cpp:
(WebCore::V8DOMConfiguration::configureTemplate):
* bindings/v8/V8HTMLCustomElement.cpp:
(WebCore::findWrapperTypeOf):
(WebCore::V8HTMLCustomElement::createWrapper):
* bindings/v8/V8HTMLCustomElement.h:
* bindings/v8/V8PerContextData.cpp:
(WebCore::V8PerContextData::constructorForTypeSlowCase):
* bindings/v8/WrapperTypeInfo.h:
(WebCore):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144865
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 6 Mar 2013 02:51:18 +0000 (02:51 +0000)]
Unreviewed, fix an incorrect comment. The comment was a holdover from a work-in-progress version of this code.
* dfg/DFGDCEPhase.cpp:
(JSC::DFG::DCEPhase::run):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144864
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Wed, 6 Mar 2013 02:37:18 +0000 (02:37 +0000)]
[chromium] build a DumpRenderTree.pak even on windows
https://bugs.webkit.org/show_bug.cgi?id=111504
Reviewed by Tony Chang.
The Chromium Aura build uses the default theme to draw
controls, and that theme requires the ui ResourceBundle
to be initialized. On every other platform, we build
a DumpRenderTree.pak that works for this, but on Windows we
still compile the resources directly into DRT. As a first step,
let's build the pak file. I will then need to land a patch
in Chromium to actually load it. Then I can go back and move
the resources over to just use the .pak file and no longer need
the .rc's.
* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144863
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 6 Mar 2013 02:27:16 +0000 (02:27 +0000)]
DFG DCE might eliminate checks unsoundly
https://bugs.webkit.org/show_bug.cgi?id=109389
Source/JavaScriptCore:
Reviewed by Oliver Hunt.
This gets rid of all eager reference counting, and does all dead code elimination
in one phase - the DCEPhase. This phase also sets up the node reference counts,
which are then used not just for DCE but also register allocation and stack slot
allocation.
Doing this required a number of surgical changes in places that previously relied
on always having liveness information. For example, the structure check hoisting
phase must now consult whether a VariableAccessData is profitable for unboxing to
make sure that it doesn't try to do hoisting on set SetLocals. The arguments
simplification phase employs its own light-weight liveness analysis. Both phases
previously just used reference counts.
The largest change is that now, dead nodes get turned into Phantoms. Those
Phantoms will retain those child edges that are not proven. This ensures that any
type checks performed by a dead node remain even after the node is killed. On the
other hand, this Phantom conversion means that we need special handling for
SetLocal. I decided to make the four forms of SetLocal explicit:
MovHint(@a, rK): Just indicates that node @a contains the value that would have
now been placed into virtual register rK. Does not actually cause @a to be
stored into rK. This would have previously been a dead SetLocal with @a
being live. MovHints are always dead.
ZombieHint(rK): Indicates that at this point, register rK will contain a dead
value and OSR should put Undefined into it. This would have previously been
a dead SetLocal with @a being dead also. ZombieHints are always dead.
MovHintAndCheck(@a, rK): Identical to MovHint except @a is also type checked,
according to whatever UseKind the edge to @a has. The type check is always a
forward exit. MovHintAndChecks are always live, since they are
NodeMustGenerate. Previously this would have been a dead SetLocal with a
live @a, and the check would have disappeared. This is one of the bugs that
this patch solves.
SetLocal(@a, rK): This still does exactly what it does now, if the SetLocal is
live.
Basically this patch makes it so that dead SetLocals eventually decay to MovHint,
ZombieHint, or MovHintAndCheck depending on the situation. If the child @a is
also dead, then you get a ZombieHint. If the child @a is live but the SetLocal
has a type check and @a's type hasn't been proven to have that type then you get
a MovHintAndCheck. Otherwise you get a MovHint.
This is performance neutral.
* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::executeEffects):
(JSC::DFG::AbstractState::mergeStateAtTail):
* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
(ArgumentsSimplificationPhase):
(JSC::DFG::ArgumentsSimplificationPhase::removeArgumentsReferencingPhantomChild):
* dfg/DFGBasicBlock.h:
(BasicBlock):
* dfg/DFGBasicBlockInlines.h:
(DFG):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addToGraph):
(JSC::DFG::ByteCodeParser::insertPhiNode):
(JSC::DFG::ByteCodeParser::emitFunctionChecks):
* dfg/DFGCFAPhase.cpp:
(JSC::DFG::CFAPhase::run):
* dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::run):
(JSC::DFG::CFGSimplificationPhase::keepOperandAlive):
* dfg/DFGCPSRethreadingPhase.cpp:
(JSC::DFG::CPSRethreadingPhase::run):
(JSC::DFG::CPSRethreadingPhase::addPhiSilently):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::eliminateIrrelevantPhantomChildren):
(JSC::DFG::CSEPhase::setReplacement):
(JSC::DFG::CSEPhase::performNodeCSE):
* dfg/DFGCommon.cpp:
(WTF::printInternal):
(WTF):
* dfg/DFGCommon.h:
(WTF):
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):
(JSC::DFG::ConstantFoldingPhase::paintUnreachableCode):
* dfg/DFGDCEPhase.cpp: Added.
(DFG):
(DCEPhase):
(JSC::DFG::DCEPhase::DCEPhase):
(JSC::DFG::DCEPhase::run):
(JSC::DFG::DCEPhase::findTypeCheckRoot):
(JSC::DFG::DCEPhase::countEdge):
(JSC::DFG::DCEPhase::eliminateIrrelevantPhantomChildren):
(JSC::DFG::performDCE):
* dfg/DFGDCEPhase.h: Added.
(DFG):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::checkArray):
(JSC::DFG::FixupPhase::blessArrayOperation):
(JSC::DFG::FixupPhase::fixIntEdge):
(JSC::DFG::FixupPhase::injectInt32ToDoubleNode):
(JSC::DFG::FixupPhase::truncateConstantToInt32):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::dump):
(DFG):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::changeChild):
(JSC::DFG::Graph::changeEdge):
(JSC::DFG::Graph::compareAndSwap):
(JSC::DFG::Graph::clearAndDerefChild):
(JSC::DFG::Graph::performSubstitution):
(JSC::DFG::Graph::performSubstitutionForEdge):
(Graph):
(JSC::DFG::Graph::substitute):
* dfg/DFGInsertionSet.h:
(InsertionSet):
* dfg/DFGNode.h:
(JSC::DFG::Node::Node):
(JSC::DFG::Node::convertToConstant):
(JSC::DFG::Node::convertToGetLocalUnlinked):
(JSC::DFG::Node::containsMovHint):
(Node):
(JSC::DFG::Node::hasVariableAccessData):
(JSC::DFG::Node::willHaveCodeGenOrOSR):
* dfg/DFGNodeType.h:
(DFG):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::convertLastOSRExitToForward):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::compileMovHintAndCheck):
(DFG):
(JSC::DFG::SpeculativeJIT::compileInlineStart):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):
(JSC::DFG::StructureCheckHoistingPhase::shouldConsiderForHoisting):
(StructureCheckHoistingPhase):
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validate):
LayoutTests:
Reviewed by Oliver Hunt.
* fast/js/dfg-arguments-osr-exit-multiple-blocks-before-exit-expected.txt: Added.
* fast/js/dfg-arguments-osr-exit-multiple-blocks-before-exit.html: Added.
* fast/js/dfg-arguments-osr-exit-multiple-blocks-expected.txt: Added.
* fast/js/dfg-arguments-osr-exit-multiple-blocks.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-arguments-osr-exit-multiple-blocks-before-exit.js: Added.
(baz):
(foo):
(bar):
* fast/js/script-tests/dfg-arguments-osr-exit-multiple-blocks.js: Added.
(baz):
(foo):
(bar):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144862
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Wed, 6 Mar 2013 02:15:58 +0000 (02:15 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: inspector/console/command-line-api-inspect.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144861
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 6 Mar 2013 02:13:43 +0000 (02:13 +0000)]
Each web process truncates the disk cache to zero on launch
https://bugs.webkit.org/show_bug.cgi?id=111467
Reviewed by Darin Adler.
Let's not do that.
* WebProcess/mac/WebProcessMac.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144860
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
acolwell@chromium.org [Wed, 6 Mar 2013 02:11:03 +0000 (02:11 +0000)]
Heap-use-after-free in WebCore::HTMLMediaElement::~HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=110623
Reviewed by Eric Seidel.
Source/WebCore:
Test: http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html
* html/HTMLAudioElement.h:
(HTMLAudioElement):
* html/HTMLAudioElement.idl:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::hasPendingActivity):
* html/HTMLMediaElement.idl:
LayoutTests:
* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal-expected.txt: Added.
* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html: Added.
* http/tests/misc/resources/delete-frame-during-readystatechange-frame-with-gc-after-video-removal.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144859
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Wed, 6 Mar 2013 01:47:47 +0000 (01:47 +0000)]
AX: Support aria-posinset/setsize
https://bugs.webkit.org/show_bug.cgi?id=109725
Reviewed by Tim Horton.
Source/WebCore:
Expose aria-setsize and aria-posinset through accessibility.
Right now only the Mac platform exposes them.
Test: platform/mac/accessibility/aria-setsize-posinset.html
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsARIASetSize):
(WebCore):
(WebCore::AccessibilityObject::supportsARIAPosInset):
(WebCore::AccessibilityObject::ariaSetSize):
(WebCore::AccessibilityObject::ariaPosInset):
* accessibility/AccessibilityObject.h:
(AccessibilityObject):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
* html/HTMLAttributeNames.in:
LayoutTests:
* platform/mac/accessibility/aria-setsize-posinset-expected.txt: Added.
* platform/mac/accessibility/aria-setsize-posinset.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144858
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 01:41:51 +0000 (01:41 +0000)]
Remove deprecated process suppression assertion SPI from WebKitSystemInterface
https://bugs.webkit.org/show_bug.cgi?id=111501
Patch by Kiran Muppala <cmuppala@apple.com> on 2013-03-05
Reviewed by Alexey Proskuryakov.
https://bugs.webkit.org/show_bug.cgi?id=111387 replaced all usage of
WKNSProcessInfoProcessAssertionWithTypes() with
-[NSProcessInfo beginSuspensionOfSystemBehaviors:]. Hence, remove
the now deprecated SPI.
* WebKitSystemInterface.h: Remove
WKNSProcessInfoProcessAssertionWithTypes and associated declarations.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144857
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aelias@chromium.org [Wed, 6 Mar 2013 01:29:55 +0000 (01:29 +0000)]
[chromium] Scroll deltas should be floats
https://bugs.webkit.org/show_bug.cgi?id=111465
Reviewed by James Robinson.
This converts the remaining scroll delta fields to floats so that
we no longer lose precision due to DIP conversion. The natural
type for deltas is WebFloatSize, which was missing, so I also created
that type based on the existing WebSize header.
Source/Platform:
* Platform.gypi:
* chromium/public/WebFloatSize.h: Added.
(WebKit):
(WebFloatSize):
(WebKit::WebFloatSize::isEmpty):
(WebKit::WebFloatSize::WebFloatSize):
(WebKit::WebFloatSize::operator=):
(WebKit::WebFloatSize::operator WebCore::FloatSize):
(WebKit::WebFloatSize::operator gfx::SizeF):
(WebKit::WebFloatSize::operator gfx::Vector2dF):
(WebKit::operator==):
(WebKit::operator!=):
* chromium/public/WebGestureCurveTarget.h:
(WebKit::WebGestureCurveTarget::scrollBy):
(WebGestureCurveTarget):
* chromium/public/WebInputHandlerClient.h:
(WebKit::WebInputHandlerClient::scrollByIfPossible):
(WebInputHandlerClient):
Source/WebKit/chromium:
* src/WebCompositorInputHandlerImpl.cpp:
(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):
(WebKit::WebCompositorInputHandlerImpl::touchpadFlingScroll):
(WebKit::WebCompositorInputHandlerImpl::scrollBy):
* src/WebCompositorInputHandlerImpl.h:
(WebCompositorInputHandlerImpl):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::scrollBy):
* src/WebViewImpl.h:
(WebViewImpl):
* tests/WebCompositorInputHandlerImplTest.cpp:
(MockWebInputHandlerClient):
(WebKit::TEST_F):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144856
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eae@chromium.org [Wed, 6 Mar 2013 01:19:20 +0000 (01:19 +0000)]
Unreviewed apple rebaselines for r144837.
* fast/invalid/017-expected.txt: Added.
* fast/invalid/018-expected.txt: Added.
* platform/chromium-mac/fast/invalid/017-expected.txt: Removed.
* platform/chromium-mac/fast/invalid/018-expected.txt: Removed.
* platform/mac-lion/tables/mozilla/bugs: Added.
* platform/mac-lion/tables/mozilla/bugs/bug113235-2-expected.txt: Added.
* platform/mac-lion/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/mac-lion/tables/mozilla_expected_failures: Removed.
* platform/mac-wk2/tables/mozilla/bugs/bug113235-2-expected.txt: Added.
* platform/mac-wk2/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/mac/fast/invalid/017-expected.txt: Removed.
* platform/mac/fast/invalid/018-expected.txt: Removed.
* platform/mac/tables/mozilla/bugs/bug113235-2-expected.txt:
* platform/mac/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/mac/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144855
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eae@chromium.org [Wed, 6 Mar 2013 01:17:10 +0000 (01:17 +0000)]
Unreviewed chromium rebaselines for r144837.
* platform/chromium-linux/fast/invalid/017-expected.txt: Added.
* platform/chromium-linux/fast/invalid/018-expected.txt: Added.
* platform/chromium-linux/tables/mozilla/bugs/bug113235-2-expected.txt: Added.
* platform/chromium-linux/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added.
* platform/chromium-mac-lion/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/chromium-mac/fast/invalid/017-expected.txt: Added.
* platform/chromium-mac/fast/invalid/018-expected.txt: Added.
* platform/chromium-mac/tables/mozilla/bugs/bug113235-2-expected.txt: Removed.
* platform/chromium-mac/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/chromium-win/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added.
* platform/chromium/fast/invalid/017-expected.txt: Removed.
* platform/chromium/fast/invalid/018-expected.txt: Removed.
* platform/chromium/tables/mozilla/bugs/bug113235-2-expected.txt: Added.
* platform/chromium/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Replaced.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144854
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 6 Mar 2013 01:12:21 +0000 (01:12 +0000)]
Source/WebCore: [WinCairo] Support for cookies is incomplete
https://bugs.webkit.org/show_bug.cgi?id=110147
Expired and HttpOnly cookies no longer accessible from JavaScript.
Cookies set in JavaScript now have correct domain/path.
Patch by Peter Nelson <peter@peterdn.com> on 2013-03-05
Reviewed by Brent Fulgham.
Test: http/tests/cookies/http-get-cookie-set-in-js.html
* platform/network/curl/CookieJarCurl.cpp:
(WebCore):
(WebCore::addMatchingCurlCookie):
(WebCore::getNetscapeCookieFormat):
(WebCore::setCookiesFromDOM):
(WebCore::cookieRequestHeaderFieldValue):
LayoutTests: [WinCairo] Support for cookies is incomplete
https://bugs.webkit.org/show_bug.cgi?id=110147
Patch by Peter Nelson <peter@peterdn.com> on 2013-03-05
Reviewed by Brent Fulgham.
Re-enabled cookie tests for WinCairo.
Added test to check whether cookie set in HTTP response is accessible in JS.
* http/tests/cookies/http-get-cookie-set-in-js-expected.txt: Added.
* http/tests/cookies/http-get-cookie-set-in-js.html: Added.
* http/tests/cookies/resources/cookies-test-pre.js:
(clearAllCookies): Cookies set in JS now correctly cleared.
* platform/wincairo/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144853
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Wed, 6 Mar 2013 01:10:53 +0000 (01:10 +0000)]
Unreviewed. AppleWin gardening.
* platform/win/TestExpectations:
* platform/win/css3/filters/effect-reference-expected.txt:
* platform/win/css3/filters/effect-reference-hw-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144852
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 6 Mar 2013 01:08:33 +0000 (01:08 +0000)]
Reset the values if there is a quota error
https://bugs.webkit.org/show_bug.cgi?id=111500
Reviewed by Beth Dakin.
* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::didSetItem):
(WebKit::StorageAreaProxy::resetValues):
(WebKit):
* WebProcess/Storage/StorageAreaProxy.h:
(StorageAreaProxy):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144851
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 6 Mar 2013 00:59:59 +0000 (00:59 +0000)]
Keep track of pending value changes in StorageAreaProxy
https://bugs.webkit.org/show_bug.cgi?id=111496
Reviewed by Beth Dakin.
Add a HashCountedSet to keep track of the number of pending value
changes for a given key. If we get incoming storage events from other
processes while we have pending value changes, ignore the events.
* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::setItem):
(WebKit::StorageAreaProxy::didSetItem):
(WebKit::StorageAreaProxy::dispatchStorageEvent):
(WebKit::StorageAreaProxy::shouldApplyChangesForKey):
(WebKit):
* WebProcess/Storage/StorageAreaProxy.h:
(StorageAreaProxy):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144850
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alecflett@chromium.org [Wed, 6 Mar 2013 00:36:26 +0000 (00:36 +0000)]
Fix mac clang build with long long
https://bugs.webkit.org/show_bug.cgi?id=111495
Unreviewed fix for mac build.
* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::IDBBackingStore):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144849
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alecflett@chromium.org [Wed, 6 Mar 2013 00:35:02 +0000 (00:35 +0000)]
Fix mac clang build with long long
https://bugs.webkit.org/show_bug.cgi?id=111495
Unreviewed fix for mac build.
* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::IDBBackingStore):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144848
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
scherkus@chromium.org [Wed, 6 Mar 2013 00:26:52 +0000 (00:26 +0000)]
Unreviewed rebaseline of media/track/track-cue-rendering-*.html
https://bugs.webkit.org/show_bug.cgi?id=111388
* platform/chromium-linux/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-linux/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-mac-lion/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-mac-lion/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-mac/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-win-xp/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-win/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-win/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144847
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
acolwell@chromium.org [Wed, 6 Mar 2013 00:19:38 +0000 (00:19 +0000)]
Add V8Document.h include when the V8 code generator creates a toV8(Document*) call.
https://bugs.webkit.org/show_bug.cgi?id=111486
Reviewed by Adam Barth.
No new tests. This doesn't change user visible behavior.
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNamedConstructor):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144846
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jparent@chromium.org [Wed, 6 Mar 2013 00:18:49 +0000 (00:18 +0000)]
Dashboard cleanup: move string utilities into their own namespace.
https://bugs.webkit.org/show_bug.cgi?id=111485
Reviewed by Ojan Vafai.
One of many pieces to clean up dashboard_base.
Moves string utility functions into separate file (string.js) and into their own namespace rather than cluttering up the global scope.
* TestResultServer/static-dashboards/aggregate_results.html:
* TestResultServer/static-dashboards/dashboard_base.js:
(isTreeMap):
(isFlakinessDashboard):
* TestResultServer/static-dashboards/flakiness_dashboard.html:
* TestResultServer/static-dashboards/flakiness_dashboard.js:
(determineWKPlatform):
(chromiumPlatform):
(platformAndBuildType):
(substringList):
(individualTestsForSubstringList):
(filterBugs):
(populateExpectationsData):
(processMissingTestsWithExpectations):
(processMissingAndExtraExpectations):
(htmlForSingleTestRow):
(.dummyNode.onload):
(expectationsTitle):
* TestResultServer/static-dashboards/run-embedded-unittests.html:
* TestResultServer/static-dashboards/run-unittests.html:
* TestResultServer/static-dashboards/string.js: Added.
* TestResultServer/static-dashboards/timeline_explorer.html:
* TestResultServer/static-dashboards/treemap.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144845
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Wed, 6 Mar 2013 00:16:30 +0000 (00:16 +0000)]
Objective-C API: JSValue should implement init and return nil in exceptional cases
https://bugs.webkit.org/show_bug.cgi?id=111487
Reviewed by Darin Adler.
* API/JSValue.mm:
(-[JSValue init]): We return nil here because there is no way to get the instance into a coherent state
without a JSContext.
(-[JSValue initWithValue:inContext:]): Similarly, we should also return nil here if either of the arguments is 0.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144843
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryuan.choi@samsung.com [Wed, 6 Mar 2013 00:15:43 +0000 (00:15 +0000)]
[EFL] Build break with latest EFL libraries
https://bugs.webkit.org/show_bug.cgi?id=111028
Reviewed by Dirk Pranke.
.:
In latest EFL trunk, include path of ecore sub modules are changed from
ecore-1 to ecore-XXX-1.
So, this patch adds missing ECORE_XXX_INCLUDE_DIRS.
* Source/cmake/FindEcore.cmake: Added additional path suffixes to find include directories of ecore-XXX
* Source/cmake/FindElementary.cmake: Checked Ecore_Con dependency which Elementary requires.
* Source/cmake/OptionsEfl.cmake: Made Imf and Imf_Evas mandatory.
Source/WebKit:
* PlatformEfl.cmake: Added ECORE_X_INCLUDE_DIRS.
Source/WebKit2:
* PlatformEfl.cmake: Added ECORE_XXX_INCLUDE_DIRS.
Source/WTF:
* wtf/PlatformEfl.cmake: Added ECORE_IMF_INCLUDE_DIRS.
Tools:
* MiniBrowser/efl/CMakeLists.txt: Added ECORE_XXX_INCLUDE_DIRS.
* TestWebKitAPI/PlatformEfl.cmake: Ditto.
* WebKitTestRunner/PlatformEfl.cmake: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144842
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
shawnsingh@chromium.org [Wed, 6 Mar 2013 00:11:28 +0000 (00:11 +0000)]
Fix default background of a dragged image.
https://bugs.webkit.org/show_bug.cgi?id=110512
Reviewed by Tony Chang.
.:
* ManualTests/drag-background-with-padding.html: Added.
Source/WebCore:
Transparent background color (particularly visible in the padding
of an element) was not being respected. The solution is to
initially fill the drag image with transparent instead of white,
so that any color background works correctly. This patch does not
affect Apple Mac or Win platforms, given that this part of the
code is #if guarded from those platforms.
Manual test added:
ManualTests/drag-background-with-padding.html
Infrastructure for retrieving the drag image for pixel testing
does not yet exist.
* page/Frame.cpp:
(WebCore::Frame::nodeImage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144841
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Wed, 6 Mar 2013 00:10:49 +0000 (00:10 +0000)]
Increase number of WinEWS iterations to 20.
Don't reboot after each iteration set.
Make EWS bots just build temporarily so that the queue catches up again.
* EWSTools/start-queue-win.sh:
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(WinEWS):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144840
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rafaelw@chromium.org [Wed, 6 Mar 2013 00:05:14 +0000 (00:05 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: /inspector/debugger/debugger-script-preprocessor.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144839
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 6 Mar 2013 00:01:46 +0000 (00:01 +0000)]
Use a named parameter for whether a quota error ocurred or not
https://bugs.webkit.org/show_bug.cgi?id=111490
Reviewed by Beth Dakin.
This is clearer than setItem returning true on error.
Also, actually set the item in the storage map.
* UIProcess/Storage/StorageManager.cpp:
(StorageManager::StorageArea):
(WebKit::StorageManager::StorageArea::setItem):
(WebKit::StorageManager::setItem):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144838
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eae@chromium.org [Tue, 5 Mar 2013 23:59:52 +0000 (23:59 +0000)]
ASSERTION FAILED: i < size(), UNKNOWN in WebCore::RenderTableSection::layout
https://bugs.webkit.org/show_bug.cgi?id=108838
Source/WebCore:
Reviewed by Levi Weintraub.
Ensure that RenderTable::recalcSections is called when moving a
TableSection by calling setNeedsSectionRecalc in addChild for
TableSections.
Test: fullscreen/full-screen-table-section.html
* rendering/RenderTable.cpp:
(WebCore::RenderTable::addChild):
LayoutTests:
Reviewed by Levi Weintraub.
Add test for calling requestFullscreen on an element with a
table-section display type.
* fullscreen/full-screen-table-section-expected.txt: Added.
* fullscreen/full-screen-table-section.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144837
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Tue, 5 Mar 2013 23:57:41 +0000 (23:57 +0000)]
Unreviewed. Skip tests on Windows to make EWS bots happier.
* platform/win/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144835
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rafaelw@chromium.org [Tue, 5 Mar 2013 23:50:39 +0000 (23:50 +0000)]
Unreviewed gardening.
* platform/chromium/TestExpectations: fullscreen/full-screen-iframe-allowed-prexied.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144834
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kbr@google.com [Tue, 5 Mar 2013 23:50:06 +0000 (23:50 +0000)]
Upgrade ANGLE to r1987
https://bugs.webkit.org/show_bug.cgi?id=111381
Reviewed by Dean Jackson.
Source/ThirdParty/ANGLE:
* include/GLSLANG/ShaderLang.h:
* src/common/version.h:
* src/compiler/Compiler.cpp:
(TCompiler::TCompiler):
(TCompiler::Init):
(TCompiler::compile):
* src/compiler/ParseHelper.h:
(TParseContext):
* src/compiler/ShHandle.h:
(TCompiler):
* src/compiler/ShaderLang.cpp:
(ShInitBuiltInResources):
* src/compiler/UnfoldShortCircuit.cpp:
(sh::UnfoldShortCircuit::visitSelection):
* src/compiler/glslang.l:
* src/compiler/glslang.y:
* src/compiler/glslang_lex.cpp:
(glslang_scan):
* src/compiler/glslang_tab.cpp:
Updated ANGLE to r1987.
Source/WebCore:
Covered by existing tests. Ran WebGL conformance tests in Safari
to ensure correct operation of patch.
* platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3DPrivate::initializeANGLE):
Changed all ports to query for highp support in fragment
shaders and conditionally enable it in ANGLE shader translator.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144833
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 23:46:11 +0000 (23:46 +0000)]
Use new assertion API for process suppression on Mac
https://bugs.webkit.org/show_bug.cgi?id=111387
Patch by Kiran Muppala <cmuppala@apple.com> on 2013-03-05
Reviewed by Alexey Proskuryakov.
Source/WebKit2:
* Shared/ChildProcess.h:
(WebKit::ChildProcess::processSuppressionEnabled): Rename
m_processVisibleAssertion to m_processSuppressionAssertion.
* Shared/mac/ChildProcessMac.mm:
(WebKit::ChildProcess::setProcessSuppressionEnabled): Ditto. And,
replace calls to WKNSProcessInfoProcessAssertionWithTypes() with call to
-[NSProcessInfo beginSuspensionOfSystemBehaviors:].
WebKitLibraries:
Add WKProcessSuppressionSystemBehaviors constant for use in WebKit2 to
take a process suppression assertion.
* WebKitSystemInterface.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144832
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alecflett@chromium.org [Tue, 5 Mar 2013 23:33:34 +0000 (23:33 +0000)]
IndexedDB: Add IDBBackingStoreTest
https://bugs.webkit.org/show_bug.cgi?id=111233
Reviewed by Adam Barth.
Source/WebCore:
These are tweaks to make IDBBackingStore more easily testable.
* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::IDBBackingStore): Allow use without a backing store.
Source/WebKit/chromium:
Add some really simple IDBBackingStore tests
as a seed for additional tests later.
* WebKit.gypi:
* tests/IDBBackingStoreTest.cpp: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144830
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 5 Mar 2013 23:31:54 +0000 (23:31 +0000)]
Move storageType() to StorageAreaProxy
https://bugs.webkit.org/show_bug.cgi?id=111488
Reviewed by Andreas Kling.
* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::StorageAreaProxy):
(WebKit::StorageAreaProxy::storageType):
(WebKit::StorageAreaProxy::disabledByPrivateBrowsingInFrame):
* WebProcess/Storage/StorageAreaProxy.h:
(StorageAreaProxy):
* WebProcess/Storage/StorageNamespaceProxy.cpp:
* WebProcess/Storage/StorageNamespaceProxy.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144829
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 5 Mar 2013 23:31:07 +0000 (23:31 +0000)]
Remove old Mac test expectations for the bug 106412.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144828
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jamesr@google.com [Tue, 5 Mar 2013 23:15:23 +0000 (23:15 +0000)]
[chromium] Move check for threaded compositing from WebCompositorSupport to Platform
https://bugs.webkit.org/show_bug.cgi?id=111386
Reviewed by Adrienne Walker.
Source/Platform:
This moves the query for if threaded compositing is enabled from WebCompositorSupport
to Platform. This is part of an effort to remove statefulness on WebCompositorSupport
and because it's much easier to override Platform functions for different tests.
* chromium/public/Platform.h:
(WebKit::Platform::isThreadedCompositingEnabled):
(Platform):
* chromium/public/WebCompositorSupport.h:
Source/WebCore:
This moves checks for whether threaded compositing is enabled from WebCompositorSupport
to Platform. In the case of Canvas2DLayerBridge, the check is moved completely out of
the class to make it easier for tests to specify the threaded configuration to use in the test.
* platform/graphics/chromium/Canvas2DLayerBridge.cpp:
(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
* platform/graphics/chromium/Canvas2DLayerBridge.h:
(WebCore::Canvas2DLayerBridge::create):
(Canvas2DLayerBridge):
* platform/graphics/chromium/DrawingBufferChromium.cpp:
(WebCore::DrawingBuffer::DrawingBuffer):
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::createAcceleratedCanvas):
Source/WebKit/chromium:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::composite):
(WebKit::WebViewImpl::scheduleAnimation):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit::WebViewImpl::scheduleComposite):
* tests/Canvas2DLayerBridgeTest.cpp:
(Canvas2DLayerBridgeTest::fullLifecycleTest):
* tests/Canvas2DLayerManagerTest.cpp:
(FakeCanvas2DLayerBridge::FakeCanvas2DLayerBridge):
Tools:
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::initialize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144827
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 5 Mar 2013 23:04:10 +0000 (23:04 +0000)]
Split up the storage event dispatch functions further
https://bugs.webkit.org/show_bug.cgi?id=111482
Reviewed by Beth Dakin.
Add new functions for dispatching storage events to a set of frames.
* storage/StorageAreaImpl.cpp:
(WebCore::StorageAreaImpl::dispatchStorageEvent):
* storage/StorageEventDispatcher.cpp:
(WebCore::StorageEventDispatcher::dispatchSessionStorageEvents):
(WebCore::StorageEventDispatcher::dispatchLocalStorageEvents):
(WebCore):
(WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames):
(WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames):
* storage/StorageEventDispatcher.h:
(WebCore):
(StorageEventDispatcher):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144826
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
schenney@chromium.org [Tue, 5 Mar 2013 22:53:57 +0000 (22:53 +0000)]
Crash when ImageLoader deletes Element inside SVGImageElement
https://bugs.webkit.org/show_bug.cgi?id=111085
Reviewed by Abhishek Arya.
Source/WebCore:
Elements with ImageLoader objects associated with them may have their
final reference held by the ImageLoader (to allow events to be sent
and handled). Any call on Element that causes the ImageLoader to
dispatch events might then result in the final deref of the Element
itself, thus leaving all the Element's "this" pointers up the stack
pointing to invalid memory.
This change puts the deref of the Element on a timer so that, if the
deref is called via a method on Element, the call stack will unwind
before the deref occurs.
Test: svg/custom/image-with-attr-change-after-delete-crash.html
* loader/ImageLoader.cpp:
(WebCore::ImageLoader::ImageLoader): Initialize a timer
(WebCore::ImageLoader::updatedHasPendingEvent): Put deref of the
element on a oneShotTimer, with appropriate assertions and checks to
ensure we only ref/deref once.
(WebCore::ImageLoader::timerFired): Deref the element when the timer fires.
* loader/ImageLoader.h:
(ImageLoader): Define a timer for controlling deref of the element.
LayoutTests:
* svg/custom/image-with-attr-change-after-delete-crash-expected.txt: Added.
* svg/custom/image-with-attr-change-after-delete-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144825
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
graouts@apple.com [Tue, 5 Mar 2013 22:48:54 +0000 (22:48 +0000)]
Web Inspector: identify reflection layers in LayerTreeAgent
https://bugs.webkit.org/show_bug.cgi?id=111419
Source/WebCore:
We add a new property "isReflection" to the Layer objects returned
to the front-end to indicate whether the layer was created to host
the reflection for an element. When this new property is true, the
"nodeId" property is set to point to the reflected element's node
id, since there is no node per-se directly associated with this layer.
We also change the "bounds" property to return absolute page coordinates
such that the front-end can use this information to highlight that
region in the page since metrics would otherwise be unavailable.
Reviewed by Dean Jackson.
Test: inspector-protocol/layers/layers-reflected-content.html
* inspector/Inspector.json:
* inspector/InspectorLayerTreeAgent.cpp:
(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
LayoutTests:
New test for reflection layers and an updated output for the
existing layersForNode() test since we changed the coordinates
for the "bounds" property to be absolute instead of local.
Reviewed by Dean Jackson.
* inspector-protocol/layers/layers-for-node-expected.txt:
* inspector-protocol/layers/layers-reflected-content-expected.txt: Added.
* inspector-protocol/layers/layers-reflected-content.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144824
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 22:47:02 +0000 (22:47 +0000)]
[WinCairo] Compile fix after r144024.
https://bugs.webkit.org/show_bug.cgi?id=111306
Patch by peavo@outlook.com <peavo@outlook.com> on 2013-03-05
Reviewed by James Robinson.
* page/scrolling/ScrollingCoordinator.cpp: Added guard for USE(ACCELERATED_COMPOSITING).
* page/scrolling/ScrollingCoordinator.h: Added guard for USE(ACCELERATED_COMPOSITING).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144823
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 22:46:57 +0000 (22:46 +0000)]
Copy dictionary to the external storage before running layout test on android
https://bugs.webkit.org/show_bug.cgi?id=111480
Patch by Min Qin <qinmin@chromium.org> on 2013-03-05
Reviewed by Adam Barth.
TestWebKitPlatformSupport now needs to read an external dictionary file.
This file does not exist on the device. We need to copy it before running layout tests.
* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidDriver._setup_md5sum_and_push_data_if_needed):
(ChromiumAndroidDriver._push_platform_resources):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144822
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 5 Mar 2013 22:44:01 +0000 (22:44 +0000)]
keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=85642
Source/WebCore:
Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.
Patch by James Weatherall <wez@chromium.org> on 2013-03-05
Reviewed by Ojan Vafai.
* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):
Source/WebKit/chromium:
Add tests to verify that the fixed keys generate the same keyCode values as their equivalents.
Patch by James Weatherall <wez@chromium.org> on 2013-03-05
Reviewed by Ojan Vafai.
* WebKit.gypi:
* tests/KeyCodeConversionTestGtk.cpp: Added.
(WebCore):
(WebCore::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144821
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alecflett@chromium.org [Tue, 5 Mar 2013 22:35:00 +0000 (22:35 +0000)]
IndexedDB: Properly refactor frontend/backend code by #includes
https://bugs.webkit.org/show_bug.cgi?id=110653
Reviewed by Dimitri Glazkov.
Source/WebCore:
IndexedDB has a distinct backend and frontend, with well defined
*Interface / *Callbacks classes distinguishing them, respectively.
This makes sure that the frontend and backend do not include each
other and fixes build problems that occurred as a result.
Specifically this moves enums out of IDBCursor and IDBTransaction
into IndexedDB.h in a new WebCore::IndexedDB namespace.
No new tests, as this is just a refactor.
Source/WebKit/chromium:
Clean up the frontend/backend WebIDB* implementations to
match the changes to webkit.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144820
268f45cc-cd09-0410-ab3c-
d52691b4dbfc