WebKit-https.git
7 years ago[EFL] Fix compile warning
commit-queue@webkit.org [Fri, 24 Aug 2012 13:46:37 +0000 (13:46 +0000)]
[EFL] Fix compile warning
https://bugs.webkit.org/show_bug.cgi?id=94930

Patch by Kangil Han <kangil.han@samsung.com> on 2012-08-24
Reviewed by Kenneth Rohde Christiansen.

Fixed compile warning.

* UIProcess/API/efl/ewk_back_forward_list.cpp:
(ewk_back_forward_list_n_back_items_copy): NULL used in arithmetic [-Wpointer-arith]
(ewk_back_forward_list_n_forward_items_copy): NULL used in arithmetic [-Wpointer-arith]

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

7 years agoWeb Inspector: do not send profile headers to the front-end until explicitly requested.
pfeldman@chromium.org [Fri, 24 Aug 2012 13:30:11 +0000 (13:30 +0000)]
Web Inspector: do not send profile headers to the front-end until explicitly requested.
https://bugs.webkit.org/show_bug.cgi?id=94928

Reviewed by Vsevolod Vlasov.

Simple flag is added.

* inspector/InspectorProfilerAgent.cpp:
(WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
(WebCore::InspectorProfilerAgent::addProfile):
(WebCore::InspectorProfilerAgent::disable):
(WebCore::InspectorProfilerAgent::getProfileHeaders):
(WebCore):
(WebCore::InspectorProfilerAgent::resetFrontendProfiles):
* inspector/InspectorProfilerAgent.h:
(InspectorProfilerAgent):

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

7 years agoWeb Inspector: make ui component compile
pfeldman@chromium.org [Fri, 24 Aug 2012 13:25:40 +0000 (13:25 +0000)]
Web Inspector: make ui component compile
https://bugs.webkit.org/show_bug.cgi?id=94827

Reviewed by Vsevolod Vlasov.

Moved buildImagePreviewContents into the sdk-aware code.
Drive-by more compilation fixes.

* inspector/compile-front-end.py:
* inspector/front-end/DOMPresentationUtils.js:
(WebInspector.DOMPresentationUtils.buildImagePreviewContents.errorCallback):
(WebInspector.DOMPresentationUtils.buildImagePreviewContents.buildContent):
(WebInspector.DOMPresentationUtils.buildImagePreviewContents):
* inspector/front-end/Database.js:
* inspector/front-end/DefaultTextEditor.js:
(WebInspector.TextEditorMainPanel):
(WebInspector.TextEditorMainPanel.prototype._createLink):
* inspector/front-end/ElementsPanel.js:
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
* inspector/front-end/ParsedURL.js:
(WebInspector.ParsedURL.prototype.get displayName):
* inspector/front-end/ResourceUtils.js:
* inspector/front-end/SourceFrame.js:
(WebInspector.TextEditorDelegateForSourceFrame.prototype.populateTextAreaContextMenu):
(WebInspector.TextEditorDelegateForSourceFrame.prototype.createLink):
* inspector/front-end/TextEditor.js:
(WebInspector.TextEditorDelegate.prototype.populateTextAreaContextMenu):
(WebInspector.TextEditorDelegate.prototype.createLink):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.Record.prototype.generatePopupContent):
* inspector/front-end/UIUtils.js:

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

7 years ago[BlackBerry] Add WebPage API to reset block zoom
anilsson@rim.com [Fri, 24 Aug 2012 13:21:24 +0000 (13:21 +0000)]
[BlackBerry] Add WebPage API to reset block zoom
https://bugs.webkit.org/show_bug.cgi?id=94863

PR 187478
This is an alternative to WebPage::blockZoomAnimationFinished() when
it's desirable to avoid rerendering of the whole web page at the end
of block zoom. This is the case when the planned "incremental zoom
factor" is used instead of zoomAboutPoint and it's relatives.

Ideally, the block zoom algorithm would be clever enough not to need
a reset or any form of callback when the animation finishes, but that
requires the implementation of said incremental zoom factor, which is
not done yet.

Reviewed by Antonio Gomes.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::resetBlockZoom):
(WebKit):
* Api/WebPage.h:

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

7 years agoUnreviewed. Adding myself to committers list.
michaelbruening@gmail.com [Fri, 24 Aug 2012 13:18:25 +0000 (13:18 +0000)]
Unreviewed. Adding myself to committers list.

Also updated email information.

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

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

7 years agoNot reviewed: fixing inspector/elements/iframe-load-event.html broken by r126572.
pfeldman@chromium.org [Fri, 24 Aug 2012 13:14:51 +0000 (13:14 +0000)]
Not reviewed: fixing inspector/elements/iframe-load-event.html broken by r126572.

* inspector/front-end/DOMAgent.js:
(WebInspector.DOMNode.prototype.resolveURL):

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

7 years ago[Qt] Be more explicit about the ICU dependency in the error message
abecsi@webkit.org [Fri, 24 Aug 2012 13:04:06 +0000 (13:04 +0000)]
[Qt] Be more explicit about the ICU dependency in the error message

Rubber-stamped by Simon Hausmann.

When building QtWebKit with a Qt5 which was not configured with libICU support
the error message is somewhat ambiguous about the indirect dependency.

* WTF.pri:

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

7 years agoWeb Inspector: [WebGL] Implement custom wrap functions on GL context
caseq@chromium.org [Fri, 24 Aug 2012 12:23:37 +0000 (12:23 +0000)]
Web Inspector: [WebGL] Implement custom wrap functions on GL context
https://bugs.webkit.org/show_bug.cgi?id=94799

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

Implement custom wrap functions on WebGL rendering context for WebGL instrumentation.

* inspector/InjectedScriptWebGLModuleSource.js:
(.):

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

7 years agoWeb Inspector: three layout tests crashing with assertion failure
pfeldman@chromium.org [Fri, 24 Aug 2012 12:20:30 +0000 (12:20 +0000)]
Web Inspector: three layout tests crashing with assertion failure
https://bugs.webkit.org/show_bug.cgi?id=94829

Not reviewed: updating test expectations.

* platform/chromium/TestExpectations:

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

7 years agoWeb Inspector: resolve URLs upon creation, get rid of populateHrefContextMenu
pfeldman@chromium.org [Fri, 24 Aug 2012 12:10:49 +0000 (12:10 +0000)]
Web Inspector: resolve URLs upon creation, get rid of populateHrefContextMenu
https://bugs.webkit.org/show_bug.cgi?id=94900

Reviewed by Vsevolod Vlasov.

- This change makes sure we resolve URLs upon adding the to the UI. Then we treat them as absolute links in context menu, etc.
- There is no need to override context menu for links anymore - system menu will do.

* inspector/front-end/AuditResultView.js:
(WebInspector.AuditResultView):
* inspector/front-end/ConsoleView.js:
* inspector/front-end/DOMAgent.js:
(WebInspector.DOMNode.prototype.descendantUserPropertyCount):
(WebInspector.DOMNode.prototype.resolveURL):
* inspector/front-end/ElementsPanel.js:
* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
(WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
* inspector/front-end/HandlerRegistry.js:
(WebInspector.HandlerRegistry.prototype.appendApplicableItems):
(WebInspector.HandlerRegistry.prototype._appendContentProviderItems):
(WebInspector.HandlerRegistry.prototype._appendHrefItems):
* inspector/front-end/ParsedURL.js:
(WebInspector.ParsedURL.completeURL):
* inspector/front-end/ResourceUtils.js:
(WebInspector.linkifyRequestAsNode):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane):
(WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
* inspector/front-end/UIUtils.js:

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

7 years ago[EFL][WK2] Back-forward list API needs extension
commit-queue@webkit.org [Fri, 24 Aug 2012 11:47:54 +0000 (11:47 +0000)]
[EFL][WK2] Back-forward list API needs extension
https://bugs.webkit.org/show_bug.cgi?id=94582

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

Added several new functions wrapping existing WK2 C back-forward list API
and returning list of items preceding or following the current one.
Corresponding API unit tests are also added.

* UIProcess/API/efl/ewk_back_forward_list.cpp:
(createEinaList):
(ewk_back_forward_list_n_back_items_copy):
(ewk_back_forward_list_n_forward_items_copy):
* UIProcess/API/efl/ewk_back_forward_list.h:
* UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
(freeEinaList):
(TEST_F):

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

7 years ago[Qt][WK2] Make viewport related experimental.test properties encapsulated.
michaelbruening@gmail.com [Fri, 24 Aug 2012 11:27:42 +0000 (11:27 +0000)]
[Qt][WK2] Make viewport related experimental.test properties encapsulated.
https://bugs.webkit.org/show_bug.cgi?id=88320

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Introducing a new viewport attribute to QWebKitTest to group the viewport related
attributes into one QJsonObject. Also adding a static method to convert a QSizeF to
a QJsonObject.

* UIProcess/API/qt/qwebkittest.cpp:
(qSizeFToJsonObject):
(QWebKitTest::viewport):
(QWebKitTest::devicePixelRatio):
(QWebKitTest::contentsScale):
* UIProcess/API/qt/qwebkittest_p.h:
* UIProcess/qt/QtViewportHandler.cpp:
(WebKit::QtViewportHandler::viewportAttributesChanged):

Tools:

Changed the access to the viewport attributes to use the viewport object that is introduced by this change.

* MiniBrowser/qt/qml/ViewportInfoItem.qml:

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

7 years ago[GTK] Use the new 'feature_defines' variable to generate DOM bindings
commit-queue@webkit.org [Fri, 24 Aug 2012 11:24:03 +0000 (11:24 +0000)]
[GTK] Use the new 'feature_defines' variable to generate DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=94919

Patch by Xan Lopez <xlopez@igalia.com> on 2012-08-24
Reviewed by Carlos Garcia Campos.

Update to use the new 'feature_defines' variable, otherwise the
bindings will be broken.

* bindings/gobject/GNUmakefile.am: ditto.

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Fri, 24 Aug 2012 10:19:19 +0000 (10:19 +0000)]
Unreviewed GTK gardening.

Updating baselines for css3/flexbox/flexitem.html after r126503.

* platform/gtk/css3/flexbox: Removed.
* platform/gtk/css3/flexbox/flexitem-expected.txt: Removed.

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

7 years agoRemove RefPtr from HTMLTextAreaElement::m_placeholder
haraken@chromium.org [Fri, 24 Aug 2012 10:08:49 +0000 (10:08 +0000)]
Remove RefPtr from HTMLTextAreaElement::m_placeholder
https://bugs.webkit.org/show_bug.cgi?id=94338

Reviewed by Kent Tamura.

To avoid reference cycles of RefPtr<Node>s, we want to remove
unnecessary RefPtr<Node>s. The rationale is described in bug 94324.

HTMLTextAreaElement::m_placeholder does not need to be a RefPtr<Node>,
because it is guaranteed to point to a shadow DOM tree of the
HTMLTextAreaElement node, which is guaranteed to exist in the subtree
of the HTMLTextAreaElement node.

No tests. No change in behavior.

* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
(WebCore::HTMLTextAreaElement::placeholderElement):
(WebCore::HTMLTextAreaElement::attach):
(WebCore::HTMLTextAreaElement::updatePlaceholderText):
* html/HTMLTextAreaElement.h:
(HTMLTextAreaElement):

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

7 years ago[V8] Refactor away IsolatedWorld
commit-queue@webkit.org [Fri, 24 Aug 2012 09:40:44 +0000 (09:40 +0000)]
[V8] Refactor away IsolatedWorld
https://bugs.webkit.org/show_bug.cgi?id=93971

Patch by Dan Carney <dcarney@google.com> on 2012-08-24
Reviewed by Kentaro Hara.

Source/WebCore:

Remove IsolatedWorld class as it was 1:1 with DOMWrapperWorld.
This paves the way towards a JSC-like use of DOMWrapperWorld.

No new tests. No change in functionality.

* UseV8.cmake:
* WebCore.gypi:
* bindings/v8/DOMWrapperWorld.cpp:
(WebCore):
(WebCore::DOMWrapperWorld::createUninitializedWorld):
(WebCore::DOMWrapperWorld::createMainWorld):
(WebCore::mainThreadNormalWorld):
(WebCore::isolatedWorldMap):
(WebCore::DOMWrapperWorld::deallocate):
(WebCore::DOMWrapperWorld::getOrCreateIsolatedWorld):
* bindings/v8/DOMWrapperWorld.h:
(DOMWrapperWorld):
(WebCore::DOMWrapperWorld::isolatedWorldsExist):
(WebCore::DOMWrapperWorld::isMainWorld):
(WebCore::DOMWrapperWorld::worldId):
(WebCore::DOMWrapperWorld::extensionGroup):
(WebCore::DOMWrapperWorld::domDataStore):
(WebCore::DOMWrapperWorld::deref):
(WebCore::DOMWrapperWorld::DOMWrapperWorld):
* bindings/v8/IsolatedWorld.cpp: Removed.
* bindings/v8/IsolatedWorld.h: Removed.
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::evaluateInIsolatedWorld):
* bindings/v8/V8DOMMap.cpp:
(WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
(WebCore::DOMDataStoreHandle::~DOMDataStoreHandle):
* bindings/v8/V8DOMMap.h:
(DOMDataStoreHandle):
* bindings/v8/V8DOMWrapper.h:
(WebCore::V8DOMWrapper::getCachedWrapper):
* bindings/v8/V8IsolatedContext.cpp:
(WebCore::V8IsolatedContext::V8IsolatedContext):
(WebCore::V8IsolatedContext::destroy):
* bindings/v8/V8IsolatedContext.h:
(V8IsolatedContext):
(WebCore::V8IsolatedContext::getEntered):
(WebCore::V8IsolatedContext::world):
* bindings/v8/V8PerIsolateData.h:
(WebCore::V8PerIsolateData::registerDOMDataStore):
(WebCore::V8PerIsolateData::unregisterDOMDataStore):

Source/WebKit/chromium:

Remove IsolatedWorld class as it was 1:1 with DOMWrapperWorld.

* src/WebViewImpl.cpp:
(WebKit::WebView::addUserScript):
(WebKit::WebView::addUserStyleSheet):

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

7 years ago[EFL] Added missing SKIP keyword to platform/efl/TestExpectations
commit-queue@webkit.org [Fri, 24 Aug 2012 09:36:36 +0000 (09:36 +0000)]
[EFL] Added missing SKIP keyword to platform/efl/TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=94781

Unreviewed. Removed unnecessary SKIP keyword.

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-08-24

* platform/efl/TestExpectations:

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

7 years ago[V8] Improve the developer ergonomics of ScopedPersistent
abarth@webkit.org [Fri, 24 Aug 2012 09:27:16 +0000 (09:27 +0000)]
[V8] Improve the developer ergonomics of ScopedPersistent
https://bugs.webkit.org/show_bug.cgi?id=94901

Reviewed by Kentaro Hara.

As requested by haraken, this patch adds some helper functions to
ScopedPersistent so that we don't need to call get() all the time.

* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/v8/ScopedPersistent.h:
(WebCore::ScopedPersistent::get):
(WebCore::ScopedPersistent::operator->):
(ScopedPersistent):
(WebCore::ScopedPersistent::isEmpty):
* bindings/v8/ScriptValue.cpp:
(WebCore::ScriptValue::getString):
(WebCore::ScriptValue::toString):
* bindings/v8/ScriptValue.h:
(WebCore::ScriptValue::isFunction):
(WebCore::ScriptValue::isNull):
(WebCore::ScriptValue::isUndefined):
(WebCore::ScriptValue::isObject):
(WebCore::ScriptValue::hasNoValue):
* bindings/v8/V8AbstractEventListener.cpp:
(WebCore::V8AbstractEventListener::~V8AbstractEventListener):
(WebCore::V8AbstractEventListener::getReceiverObject):
* bindings/v8/V8AbstractEventListener.h:
(WebCore::V8AbstractEventListener::hasExistingListenerObject):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::isContextInitialized):
(WebCore::V8DOMWindowShell::disposeContextHandles):
(WebCore::V8DOMWindowShell::clearForClose):
(WebCore::V8DOMWindowShell::clearForNavigation):
(WebCore::V8DOMWindowShell::initContextIfNeeded):
(WebCore::V8DOMWindowShell::updateDocumentWrapper):
(WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
(WebCore::V8DOMWindowShell::clearDocumentWrapperCache):
(WebCore::V8DOMWindowShell::setSecurityToken):
(WebCore::V8DOMWindowShell::updateDocument):
(WebCore::V8DOMWindowShell::namedItemAdded):
(WebCore::V8DOMWindowShell::namedItemRemoved):
(WebCore::V8DOMWindowShell::updateSecurityOrigin):
* bindings/v8/V8PerContextData.cpp:
(WebCore::V8PerContextData::createWrapperFromCacheSlowCase):
(WebCore::V8PerContextData::constructorForTypeSlowCase):

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

7 years agoWeb Inspector: move ResourceViews to "components" module - it is used from the Resour...
pfeldman@chromium.org [Fri, 24 Aug 2012 09:23:31 +0000 (09:23 +0000)]
Web Inspector: move ResourceViews to "components" module - it is used from the Resources as well.
https://bugs.webkit.org/show_bug.cgi?id=94904

Reviewed by Vsevolod Vlasov.

* WebCore.gypi:
* inspector/compile-front-end.py:
* inspector/front-end/NetworkPanel.js:
* inspector/front-end/inspector.html:

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

7 years agoSource/WebCore: Check argument count in the dispatch function for overloaded functions
commit-queue@webkit.org [Fri, 24 Aug 2012 09:02:58 +0000 (09:02 +0000)]
Source/WebCore: Check argument count in the dispatch function for overloaded functions
https://bugs.webkit.org/show_bug.cgi?id=94790

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2012-08-24
Reviewed by Kentaro Hara.

Throw NotEnoughArguments exception for overloaded functions if actual argument
count is less than the least mandatory argument count among all overloaded.

Reset JS and V8 binding tests result for the change.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateFunctionParametersCheck):
(GenerateOverloadedFunction):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateFunctionParametersCheck):
(GenerateOverloadedFunctionCallback):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod1):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::overloadedMethodCallback):
(WebCore::TestObjV8Internal::overloadedMethod1Callback):

LayoutTests: Remove platform specific expected files after the change
https://bugs.webkit.org/show_bug.cgi?id=94790

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2012-08-24
Reviewed by Kentaro Hara.

1. Use the cross-platform expected files for the 2 tests in question.
2. Update other tests for overloaded functions and their expected files
affected by the change.

* fast/canvas/canvas-overloads-drawImage-expected.txt:
* fast/canvas/canvas-overloads-setFillColor-expected.txt:
* fast/canvas/canvas-overloads-setShadow-expected.txt:
* fast/canvas/canvas-overloads-setStrokeColor-expected.txt:
* fast/canvas/script-tests/canvas-overloads-drawImage.js:
* fast/canvas/script-tests/canvas-overloads-setFillColor.js:
* fast/canvas/script-tests/canvas-overloads-setShadow.js:
* fast/canvas/script-tests/canvas-overloads-setStrokeColor.js:
* fast/canvas/webgl/texImageTest-expected.txt:
* platform/chromium/fast/files/create-blob-url-crash-expected.txt: Removed.
* platform/chromium/fast/files/url-required-arguments-expected.txt: Removed.
* platform/gtk/fast/files/create-blob-url-crash-expected.txt: Removed.
* platform/gtk/fast/files/url-required-arguments-expected.txt: Removed.
* storage/indexeddb/index-get-key-argument-required-expected.txt:
* storage/indexeddb/objectStore-required-arguments-expected.txt:
* storage/indexeddb/transaction-and-objectstore-calls-expected.txt:
* storage/indexeddb/transaction-storeNames-required-expected.txt:

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

7 years agoMake it possible to build WebKit with Python 3 (and 2)
hausmann@webkit.org [Fri, 24 Aug 2012 08:44:24 +0000 (08:44 +0000)]
Make it possible to build WebKit with Python 3 (and 2)
https://bugs.webkit.org/show_bug.cgi?id=94814

Source/WebCore:

Exceptions need a hack to work with both.
string.join was already deprecated in Python 2.
Relative imports are no longer supported, use package name instead.

Patch by Frederik Gladhorn <gladhorn@kde.org> on 2012-08-23
Reviewed by Ryosuke Niwa.

* inspector/CodeGeneratorInspector.py:
(EnumConstants.get_enum_constant_code):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
(Generator.go):
(Generator.process_event):
(Generator.process_command):

Source/WebKit2:

Patch by Frederik Gladhorn <gladhorn@kde.org> on 2012-08-23
Reviewed by Ryosuke Niwa.

Exceptions need a hack to work with both.
string.join was already deprecated in Python 2.
Relative imports are no longer supported, use package name instead.

* Scripts/webkit2/messages.py:
* Scripts/webkit2/parser.py:

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

7 years agoGet rid of m_useLatchedWheelEventNode
allan.jensen@nokia.com [Fri, 24 Aug 2012 08:40:51 +0000 (08:40 +0000)]
Get rid of m_useLatchedWheelEventNode
https://bugs.webkit.org/show_bug.cgi?id=94684

Reviewed by Ryosuke Niwa.

Moves the setting of m_useLatchedWheelEventNode into PlatformWheelEvent.

* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::handleWheelEvent):
(WebCore::EventHandler::defaultWheelEventHandler):
(WebCore::EventHandler::handleGestureScrollCore):
* page/EventHandler.h:
* platform/PlatformWheelEvent.h:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
(WebCore::PlatformWheelEvent::setUseLatchedEventNode):
(PlatformWheelEvent):
(WebCore::PlatformWheelEvent::hasPreciseScrollingDeltas):
(WebCore::PlatformWheelEvent::useLatchedEventNode):

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

7 years ago[Forms] Multiple fields time input UI should handle Delete key as Backspace key
yosin@chromium.org [Fri, 24 Aug 2012 08:39:03 +0000 (08:39 +0000)]
[Forms] Multiple fields time input UI should handle Delete key as Backspace key
https://bugs.webkit.org/show_bug.cgi?id=94902

Reviewed by Kent Tamura.

Source/WebCore:

This patch adds treating "Delete" key as same as "Backspace" key for
multiple fields time input UI. This patch affects ports which enable
both ENABLE_INPUT_TYPE_TIME and ENABLES_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

No new tests. This patch adds a test case for "Delete" key to
fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html

* html/shadow/DateTimeFieldElement.cpp:
(WebCore::DateTimeFieldElement::defaultKeyboardEventHandler): Changed
condition expression to check both Backspace(U+0008) key and
Delete(U+007F) key.

LayoutTests:

This patch adds a new test case for "Delete" key behavior for multiple
fields time input UI.

* fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt: Updated expectation.
* fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html: Added "Delete" key test case.

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

7 years ago[Qt] Gardening after r126442. Skip a test because of missing shadow feature.
ossy@webkit.org [Fri, 24 Aug 2012 08:29:09 +0000 (08:29 +0000)]
[Qt] Gardening after r126442. Skip a test because of missing shadow feature.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-08-24
Reviewed by Csaba Osztrogonác.

* platform/qt/Skipped:

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

7 years agoUnreviewed, rolling out r126546.
commit-queue@webkit.org [Fri, 24 Aug 2012 07:57:05 +0000 (07:57 +0000)]
Unreviewed, rolling out r126546.
http://trac.webkit.org/changeset/126546
https://bugs.webkit.org/show_bug.cgi?id=94911

Caused inspector tests to timeout (Requested by dominicc on
#webkit).

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

* WebCore.gypi:
* inspector/compile-front-end.py:
* inspector/front-end/NetworkPanel.js:
* inspector/front-end/inspector.html:

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

7 years ago[GTK] Purge unused favicons from IconDatabase after 30 days
sergio@webkit.org [Fri, 24 Aug 2012 07:45:50 +0000 (07:45 +0000)]
[GTK] Purge unused favicons from IconDatabase after 30 days
https://bugs.webkit.org/show_bug.cgi?id=82346

Reviewed by Gustavo Noronha Silva.

Favicons will be removed from the icon database after not being used
for more than 30 days. This will keep the database size under
control.

* loader/icon/IconDatabase.cpp:
(WebCore):
(WebCore::IconDatabase::performURLImport): filter icons older than
30 days.

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Fri, 24 Aug 2012 07:40:44 +0000 (07:40 +0000)]
[Chromium] Unreviewed gardening.

Narrow expected failures to Linux.

* platform/chromium/TestExpectations:

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

7 years ago<http://webkit.org/b/94910> Copy the entire webkit2 module in to the WebKit2 framewor...
mrowe@apple.com [Fri, 24 Aug 2012 07:38:06 +0000 (07:38 +0000)]
<webkit.org/b/94910> Copy the entire webkit2 module in to the WebKit2 framework wrapper.

Reviewed by Dan Bernstein.

This will allow relative imports within the webkit2 module to be removed in the future without
requiring future changes to clients of the module.

* WebKit2.xcodeproj/project.pbxproj: Remove the webkit2 group from the project, and add it back
as a folder reference. This allows the directory and its contents to be copied in to the PrivateHeaders
directory. We also need to add a script phase to clean up any .pyc files that may be present in
the module.

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

7 years agoUnreviewed, rolling out r126542.
commit-queue@webkit.org [Fri, 24 Aug 2012 06:43:36 +0000 (06:43 +0000)]
Unreviewed, rolling out r126542.
http://trac.webkit.org/changeset/126542
https://bugs.webkit.org/show_bug.cgi?id=94907

Broke WK2 build on OS X (Requested by tronical_ on #webkit).

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

Source/WebCore:

* inspector/CodeGeneratorInspector.py:
(EnumConstants.get_enum_constant_code):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
(Generator.go):
(Generator.process_event):
(Generator.process_command):

Source/WebKit2:

* Scripts/webkit2/messages.py:
* Scripts/webkit2/parser.py:

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

7 years ago[V8] StringCache should not return already disposed strings
haraken@chromium.org [Fri, 24 Aug 2012 06:41:47 +0000 (06:41 +0000)]
[V8] StringCache should not return already disposed strings
https://bugs.webkit.org/show_bug.cgi?id=94899

Reviewed by Adam Barth.

See this Chromium bug (http://code.google.com/p/chromium/issues/detail?id=143937)
for details.

I investigated the crash and found that v8ExternalString() can return
already disposed strings:

  class StringCache {
    v8::Local<v8::String> v8ExternalString(StringImpl* stringImpl, ...)
    {
        if (m_lastStringImpl.get() == stringImpl) {
            ASSERT(!m_lastV8String.IsNearDeath());
            ASSERT(!m_lastV8String.IsEmpty());
            return v8::Local<v8::String>::New(m_lastV8String); // m_lastV8String might be already disposed.
        }
        return v8ExternalStringSlow(stringImpl, ...);
    }
  }

I couldn't find why m_lastV8String can be prematurely disposed, but the
following fix solves the crash:

  class StringCache {
    v8::Local<v8::String> v8ExternalString(StringImpl* stringImpl, ...)
    {
        if (m_lastStringImpl.get() == stringImpl && m_lastV8String.IsWeak())
            return v8::Local<v8::String>::New(m_lastV8String);
        return v8ExternalStringSlow(stringImpl, ...);
    }
  }

Although the ideal fix might be to fix the root cause of the premature disposal,
I think that the proposed fix is reasonable for safety. In fact, we've so far
encountered crashes caused by premature disposals (e.g. r123500). The proposed fix
will prevent future crashes caused by premature disposals.

No tests. The crash depends on GC behavior and I couldn't write a test that
reproduces the crash. Open http://lore.com/testdrive/Navigating-the-Universe
and confirm that Chromium doesn't crash.

* bindings/v8/V8ValueCache.cpp:
(WebCore::StringCache::v8ExternalStringSlow):
* bindings/v8/V8ValueCache.h:
(WebCore::StringCache::v8ExternalString):

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

7 years agoWeb Inspector: move ResourceViews to "components" module - it is used from the Resour...
pfeldman@chromium.org [Fri, 24 Aug 2012 06:26:26 +0000 (06:26 +0000)]
Web Inspector: move ResourceViews to "components" module - it is used from the Resources as well.
https://bugs.webkit.org/show_bug.cgi?id=94904

Reviewed by Vsevolod Vlasov.

* WebCore.gypi:
* inspector/compile-front-end.py:
* inspector/front-end/NetworkPanel.js:
* inspector/front-end/inspector.html:

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

7 years ago[Chromium] REGRESSION(r126534) time-multiple-fields-appearance-pseudo-elements.html...
yosin@chromium.org [Fri, 24 Aug 2012 06:10:20 +0000 (06:10 +0000)]
[Chromium] REGRESSION(r126534) time-multiple-fields-appearance-pseudo-elements.html failing on Win7
https://bugs.webkit.org/show_bug.cgi?id=94898

This patch changes parameters to test expectation generator to make
actual result and test expectation to be matched.

Root cause of this regression is the test expectation generator for
Chromium-Win generates second field with value "56" instead of "00".

On Chromium-Linux and Chromium-Mac, the test expectation generator
doesn't generate second field.

* fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.html: Changes parameters to have hour and minute only.

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

7 years ago[V8] V8DOMWindowShell should use ScopedPersistent
abarth@webkit.org [Fri, 24 Aug 2012 05:59:40 +0000 (05:59 +0000)]
[V8] V8DOMWindowShell should use ScopedPersistent
https://bugs.webkit.org/show_bug.cgi?id=94882

Reviewed by Kentaro Hara.

This patch updates V8DOMWindowShell to use ScopedPersistent rather than
manually managing v8::Persistent handles. I've also fixed some style
issues in code I needed to edit for this patch. This class could use
more touchup, but I'm going to hold off until the next patch.

* bindings/v8/ScopedPersistent.h:
(WebCore::ScopedPersistent::adopt):
(ScopedPersistent):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::initializeV8IfNeeded):
(WebCore):
(WebCore::V8DOMWindowShell::isContextInitialized):
(WebCore::V8DOMWindowShell::disposeContextHandles):
(WebCore::V8DOMWindowShell::destroyGlobal):
(WebCore::V8DOMWindowShell::clearForClose):
(WebCore::V8DOMWindowShell::clearForNavigation):
(WebCore::V8DOMWindowShell::initContextIfNeeded):
(WebCore::V8DOMWindowShell::setContext):
(WebCore::V8DOMWindowShell::updateDocumentWrapper):
(WebCore::V8DOMWindowShell::clearDocumentWrapper):
(WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
(WebCore::V8DOMWindowShell::clearDocumentWrapperCache):
(WebCore::V8DOMWindowShell::setSecurityToken):
(WebCore::V8DOMWindowShell::updateDocument):
(WebCore::getter):
(WebCore::V8DOMWindowShell::namedItemAdded):
(WebCore::V8DOMWindowShell::namedItemRemoved):
(WebCore::V8DOMWindowShell::updateSecurityOrigin):
* bindings/v8/V8DOMWindowShell.h:
(WebCore::V8DOMWindowShell::context):
(V8DOMWindowShell):

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

7 years agoUnreviewed, rolling out r126496.
commit-queue@webkit.org [Fri, 24 Aug 2012 05:49:19 +0000 (05:49 +0000)]
Unreviewed, rolling out r126496.
http://trac.webkit.org/changeset/126496
https://bugs.webkit.org/show_bug.cgi?id=94895

Broke TestNotificationActiveDescendantChanged (Requested by
dominicc on #webkit).

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

Source/WebCore:

* accessibility/AccessibilityNodeObject.cpp:
* accessibility/AccessibilityNodeObject.h:
(AccessibilityNodeObject):
* accessibility/AccessibilityObject.cpp:
* accessibility/AccessibilityObject.h:
(AccessibilityObject):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::isDescendantOfElementType):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):

LayoutTests:

* accessibility/editable-webarea-context-menu-point.html:
* accessibility/focusable-div-expected.txt: Removed.
* accessibility/focusable-div.html: Removed.
* accessibility/table-detection.html:
* platform/mac/accessibility/listbox-hit-test.html:

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

7 years agoMake it possible to build WebKit with Python 3 (and 2)
hausmann@webkit.org [Fri, 24 Aug 2012 05:28:54 +0000 (05:28 +0000)]
Make it possible to build WebKit with Python 3 (and 2)
https://bugs.webkit.org/show_bug.cgi?id=94814

Source/WebCore:

Exceptions need a hack to work with both.
string.join was already deprecated in Python 2.
Relative imports are no longer supported, use package name instead.

Patch by Frederik Gladhorn <gladhorn@kde.org> on 2012-08-23
Reviewed by Ryosuke Niwa.

* inspector/CodeGeneratorInspector.py:
(EnumConstants.get_enum_constant_code):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
(Generator.go):
(Generator.process_event):
(Generator.process_command):

Source/WebKit2:

Patch by Frederik Gladhorn <gladhorn@kde.org> on 2012-08-23
Reviewed by Ryosuke Niwa.

Exceptions need a hack to work with both.
string.join was already deprecated in Python 2.
Relative imports are no longer supported, use package name instead.

* Scripts/webkit2/messages.py:
* Scripts/webkit2/parser.py:

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

7 years ago[EFL] Skip the tests which have wrong pixel expectations in fast/forms/
commit-queue@webkit.org [Fri, 24 Aug 2012 05:28:27 +0000 (05:28 +0000)]
[EFL] Skip the tests which have wrong pixel expectations in fast/forms/
https://bugs.webkit.org/show_bug.cgi?id=94798

Unreviewed. Some tests in fast/forms seem to fail. Removed wrong expectations
and marked the tests MISSING.

fast/forms/listbox-hit-test-zoomed.html
Test 2 in this test seems to fail.

fast/forms/menulist-restrict-line-height.html
The text in the popup button is clipped.

fast/forms/search-cancel-button-style-sharing.html
fast/forms/search-rtl.html
Cancel mark in search field is not displayed.

fast/forms/menulist-narrow-width.html
fast/forms/select-baseline.html
fast/forms/menulist-style-color.html
fast/forms/select-style.html
These tests seem to have style error.

fast/forms/textarea-scroll-height.html
fast/forms/textarea-scrolled-type.html
Scroll bar isn't being fully rendered.

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-08-23

* platform/efl/TestExpectations:
* platform/efl/fast/forms/listbox-hit-test-zoomed-expected.png: Removed.
* platform/efl/fast/forms/listbox-hit-test-zoomed-expected.txt: Removed.
* platform/efl/fast/forms/menulist-narrow-width-expected.png: Removed.
* platform/efl/fast/forms/menulist-narrow-width-expected.txt: Removed.
* platform/efl/fast/forms/menulist-restrict-line-height-expected.png: Removed.
* platform/efl/fast/forms/menulist-restrict-line-height-expected.txt: Removed.
* platform/efl/fast/forms/menulist-style-color-expected.png: Removed.
* platform/efl/fast/forms/menulist-style-color-expected.txt: Removed.
* platform/efl/fast/forms/search-cancel-button-style-sharing-expected.png: Removed.
* platform/efl/fast/forms/search-cancel-button-style-sharing-expected.txt: Removed.
* platform/efl/fast/forms/search-rtl-expected.png: Removed.
* platform/efl/fast/forms/search-rtl-expected.txt: Removed.
* platform/efl/fast/forms/select-baseline-expected.png: Removed.
* platform/efl/fast/forms/select-baseline-expected.txt: Removed.
* platform/efl/fast/forms/select-style-expected.png: Removed.
* platform/efl/fast/forms/select-style-expected.txt: Removed.
* platform/efl/fast/forms/textarea-scroll-height-expected.png: Removed.
* platform/efl/fast/forms/textarea-scroll-height-expected.txt: Removed.
* platform/efl/fast/forms/textarea-scrolled-type-expected.png: Removed.
* platform/efl/fast/forms/textarea-scrolled-type-expected.txt: Removed.

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

7 years ago[chromium] Fix lost context when textures are evicted
piman@chromium.org [Fri, 24 Aug 2012 05:00:01 +0000 (05:00 +0000)]
[chromium] Fix lost context when textures are evicted
https://bugs.webkit.org/show_bug.cgi?id=94892

Reviewed by James Robinson.

After eviction, the CCPrioritizedTextureManager is in a limbo state
where all its resources are invalid. If we try to release them we will
double-destroy them.

New test: CCLayerTreeHostTestLostContextAfterEvictTextures.

Source/WebCore:

* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::recreateContextOnImplThread):

Source/WebKit/chromium:

* tests/CCLayerTreeHostTest.cpp:
(CCLayerTreeHostTestLostContextAfterEvictTextures):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::CCLayerTreeHostTestLostContextAfterEvictTextures):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::beginTest):
(EvictTexturesAndLoseContextTask):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::EvictTexturesAndLoseContextTask::EvictTexturesAndLoseContextTask):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::EvictTexturesAndLoseContextTask::~EvictTexturesAndLoseContextTask):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::EvictTexturesAndLoseContextTask::run):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::postEvictTexturesAndLoseContext):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::didCommitAndDrawFrame):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::didRecreateOutputSurface):
(WTF::CCLayerTreeHostTestLostContextAfterEvictTextures::afterTest):
(WTF):
(WTF::TEST_F):

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

7 years agoREGRESSION(r126132): thumb doesn't match click position for rtl input type=range
keishi@webkit.org [Fri, 24 Aug 2012 04:55:37 +0000 (04:55 +0000)]
REGRESSION(r126132): thumb doesn't match click position for rtl input type=range
https://bugs.webkit.org/show_bug.cgi?id=94890

Reviewed by Kent Tamura.

Source/WebCore:

r126132 broke rtl input type=range so the thumb doesn't match click position.

Added new tests to range-hit-test-with-padding.html.

* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::setPositionFromPoint):

LayoutTests:

* fast/forms/range/range-hit-test-with-padding-expected.txt:
* fast/forms/range/range-hit-test-with-padding.html:

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Fri, 24 Aug 2012 04:50:01 +0000 (04:50 +0000)]
[Chromium] Unreviewed gardening.

Rebaseline meter element tests on Mac. These grew a DIV in
r125659.
https://bugs.webkit.org/show_bug.cgi?id=94666

* platform/chromium-mac/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt:
* platform/chromium-mac/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

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

7 years ago[chromium] Add OVERRIDEs in test code
piman@chromium.org [Fri, 24 Aug 2012 04:46:48 +0000 (04:46 +0000)]
[chromium] Add OVERRIDEs in test code
https://bugs.webkit.org/show_bug.cgi?id=94894

Reviewed by James Robinson.

* tests/CCLayerTreeHostTest.cpp:

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Fri, 24 Aug 2012 04:38:28 +0000 (04:38 +0000)]
[Chromium] Unreviewed gardening.

Revert a few test expectations tightened in r126529 to green
builders.

These differ by whether zero width blocks appear in the dumped
render tree.

* platform/chromium/TestExpectations:

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

7 years agoAdd OVERRIDE and deinline virtual getters on *PlatformGestureCurve
commit-queue@webkit.org [Fri, 24 Aug 2012 04:31:34 +0000 (04:31 +0000)]
Add OVERRIDE and deinline virtual getters on *PlatformGestureCurve
https://bugs.webkit.org/show_bug.cgi?id=94887

Patch by James Robinson <jamesr@chromium.org> on 2012-08-23
Reviewed by Dirk Pranke.

This makes clang happy. Clang makes me happy. By induction, this makes me happy.

* platform/TouchpadFlingPlatformGestureCurve.cpp:
(WebCore::TouchpadFlingPlatformGestureCurve::debugName):
(WebCore):
* platform/TouchpadFlingPlatformGestureCurve.h:
(TouchpadFlingPlatformGestureCurve):
* platform/WheelFlingPlatformGestureCurve.cpp:
(WebCore::WheelFlingPlatformGestureCurve::debugName):
(WebCore):
* platform/WheelFlingPlatformGestureCurve.h:
(WheelFlingPlatformGestureCurve):

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

7 years ago[Forms] Step mismatched value should be editable in multiple field time UI.
yosin@chromium.org [Fri, 24 Aug 2012 04:23:10 +0000 (04:23 +0000)]
[Forms] Step mismatched value should be editable in multiple field time UI.
https://bugs.webkit.org/show_bug.cgi?id=94664

Reviewed by Kent Tamura.

Source/WebCore:

This patch changes layout method of multiple field time input UI to
check value of the "input" element in addition to step and range to
allow users to change step mismatched value from UI.

Tests: fast/forms/time-multiple-fields/time-multiple-fields-change-layout-by-value.html: for changing layout by value change.
This patch also adds new test case into fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic.html.

* html/TimeInputType.cpp:
(WebCore::TimeInputType::createShadowSubtree): Changed for DateTimeEditElement::create signature change.
(WebCore::TimeInputType::minOrMaxAttributeChanged): Changed to call updateInnerTextValue instead of removed updateEditElementLayout()
(WebCore::TimeInputType::stepAttributeChanged): ditto.
(WebCore::TimeInputType::updateInnerTextValue): Changed for DateTimeEditElement::setValueAsDate() and setEmptyValue() signature change.
* html/TimeInputType.h:
(TimeInputType): Removed updateEditElementLayout() declaration.
* html/shadow/DateTimeEditElement.cpp:
(DateTimeEditBuilder):
(WebCore::DateTimeEditBuilder::DateTimeEditBuilder): Added a new parameter date value to constructor to use it for layout decision.
(WebCore::DateTimeEditBuilder::needMillisecondField): Changed to check date value too.
(WebCore::DateTimeEditBuilder::needMinuteField): ditto
(WebCore::DateTimeEditBuilder::needSecondField): ditto
(WebCore::DateTimeEditBuilder::shouldMillisecondFieldReadOnly): ditto
(WebCore::DateTimeEditBuilder::shouldMinuteFieldReadOnly): ditto
(WebCore::DateTimeEditBuilder::shouldSecondFieldReadOnly): ditto
(WebCore::DateTimeEditElement::create): Changed for removing stepRange parameter.
(WebCore::DateTimeEditElement::layout): Changed to keep focus field for new layout.
(WebCore::DateTimeEditElement::setValueAsDate): Changed to call layout() with StepRange and date value.
(WebCore::DateTimeEditElement::setEmptyValue): ditto
* html/shadow/DateTimeEditElement.h:
(DateTimeEditElement):

LayoutTests:

This patch adds new test case for step mismatched value case and
updates test cases to avoid step mismatched value, and a test file
for dynamic layout change casued by input element's value change.

Note: We need to do rebaseline for Chromium-Mac and Chromium-Win.

* fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic-expected.html: Updated for new test case and behavior change.
* fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic.html: ditto
* fast/forms/time-multiple-fields/time-multiple-fields-appearance-disabled-readonly.html: Updated for behavior change.
* fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements.html: ditto
* fast/forms/time-multiple-fields/time-multiple-fields-appearance-style.html: ditto
* fast/forms/time-multiple-fields/time-multiple-fields-change-layout-by-value-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-change-layout-by-value.html: Added for dynamic layout change from value change.
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-disabled-readonly-expected.png: ditto
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-disabled-readonly-expected.txt: ditto
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-classes-expected.png: ditto
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-classes-expected.txt: ditto

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

7 years agoleak detection broken after r126247 on mac
dpranke@chromium.org [Fri, 24 Aug 2012 04:03:31 +0000 (04:03 +0000)]
leak detection broken after r126247 on mac
https://bugs.webkit.org/show_bug.cgi?id=94893

Unreviewed, build fix.

Adds is_snowleopard(), is_lion back() in for the mac port. We'll
probably need an is_mountainlion() or equivalent at some point,
I'm guessing (but I've deleted the leopard code).

* Scripts/webkitpy/layout_tests/port/leakdetector.py:
(LeakDetector._callstacks_to_exclude_from_leaks):
* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort):
(MacPort.is_snowleopard):
(MacPort.is_lion):

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

7 years agoVersioning.
mrowe@apple.com [Fri, 24 Aug 2012 03:40:35 +0000 (03:40 +0000)]
Versioning.

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

7 years ago[Chromium] Enable AtomicString && CString && WTFString && StringImpl unit tests
jchaffraix@webkit.org [Fri, 24 Aug 2012 03:03:10 +0000 (03:03 +0000)]
[Chromium] Enable AtomicString && CString && WTFString && StringImpl unit tests
https://bugs.webkit.org/show_bug.cgi?id=94871

Reviewed by Benjamin Poulain.

Source/WTF:

* wtf/PassRefPtr.h:
We need to include Assertions.h due to the COMPILE_ASSERT added in r89283.
This matches other files in WTF though I am not sure why Chromium is the only
platform complaining about that.

Tools:

* TestWebKitAPI/TestWebKitAPI.gypi:
Added the missing files to Chromium's build system.

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

7 years ago[Chromium] LayoutTests: css3/selector3/xml tests are flaky / have wrong expectations...
kbr@google.com [Fri, 24 Aug 2012 03:01:40 +0000 (03:01 +0000)]
[Chromium] LayoutTests: css3/selector3/xml tests are flaky / have wrong expectations on Snow Leopard
https://bugs.webkit.org/show_bug.cgi?id=82122

Unreviewed Chromium gardening. Tightened majority of test
expectations to only expect failures on debug bots.

* platform/chromium/TestExpectations:

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

7 years ago[watchlist] Unreviewed, subscribe to WebKit2-EFL bugs.
rakuco@webkit.org [Fri, 24 Aug 2012 02:59:56 +0000 (02:59 +0000)]
[watchlist] Unreviewed, subscribe to WebKit2-EFL bugs.

* Scripts/webkitpy/common/config/watchlist:

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

7 years ago[EFL] Remove ewk_tile_matrix_tile_update.
ryuan.choi@samsung.com [Fri, 24 Aug 2012 02:45:13 +0000 (02:45 +0000)]
[EFL] Remove ewk_tile_matrix_tile_update.
https://bugs.webkit.org/show_bug.cgi?id=63437

Reviewed by Gyuyoung Kim.

* ewk/ewk_tiled_matrix.cpp:
Removed ewk_tile_matrix_tile_update and ewk_tile_matrix_tile_update_full
which are dead code.
* ewk/ewk_tiled_matrix_private.h: Ditto.

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

7 years agoUnreviewed, rolling out r126505.
ggaren@apple.com [Fri, 24 Aug 2012 02:28:24 +0000 (02:28 +0000)]
Unreviewed, rolling out r126505.
http://trac.webkit.org/changeset/126505
https://bugs.webkit.org/show_bug.cgi?id=94840

Caused testapi to crash on launch

* DerivedSources.make:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/Opcode.h:
(JSC):
(JSC::padOpcodeName):
* bytecode/OpcodeDefinitions.h: Removed.
* bytecode/opcodes: Removed.
* opcode_definition_generator.py: Removed.
* opcode_generator.py: Removed.
* opcode_parser.py: Removed.

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

7 years agoNeeds update tests of Shadow DOM for keygen
shinyak@chromium.org [Fri, 24 Aug 2012 01:53:54 +0000 (01:53 +0000)]
Needs update tests of Shadow DOM for keygen
https://bugs.webkit.org/show_bug.cgi?id=94765

Reviewed by Dimitri Glazkov.

Now that the HTMLKeygenElement was AuthroShadowDOM-ready, it's time to update the previous
failing tests for AuthroShadowDOM for keygen elements.

I've updated the failing tests to follow the current implementation and updated the test expectations.

* fast/dom/shadow/shadowdom-for-keygen-complex-shadow-expected.html:
* fast/dom/shadow/shadowdom-for-keygen-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-keygen-only-shadow-expected.html:
* fast/dom/shadow/shadowdom-for-keygen-only-shadow.html:
* fast/dom/shadow/shadowdom-for-keygen-without-shadow-expected.html:
* fast/dom/shadow/shadowdom-for-keygen-without-shadow.html:
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:

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

7 years agoUse immutable StylePropertySets for element inline style declarations.
kling@webkit.org [Fri, 24 Aug 2012 01:25:21 +0000 (01:25 +0000)]
Use immutable StylePropertySets for element inline style declarations.
<http://webkit.org/b/94714>

Reviewed by Antti Koivisto.

Construct the inline styles as immutable StylePropertySets initially (until they are
modified through CSSOM APIs), reducing their memory footprint and enabling us to do
sharing optimizations in the future.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseInlineStyleDeclaration):
(WebCore::CSSParser::parseDeclaration):
* css/CSSParser.h:
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::updateInlineStyleAvoidingMutation):

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

7 years agoUpdate Skipped list and TestExpectations in preparation for making
jhoneycutt@apple.com [Fri, 24 Aug 2012 01:19:50 +0000 (01:19 +0000)]
Update Skipped list and TestExpectations in preparation for making
Mountain Lion the default Mac builder.

Rubber-stamped by Jessie Berlin.

* platform/mac-lion/TestExpectations: Added.
Moved/added test expectations from platform/mac/TestExpectations to
here.

* platform/mac/Skipped:
Added some known failures from internal testers.

* platform/mac/TestExpectations:
Ditto.

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

7 years agoVersioning.
mrowe@apple.com [Fri, 24 Aug 2012 01:08:11 +0000 (01:08 +0000)]
Versioning.

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

7 years ago[V8] V8AbstractEventListener re-implements ScopedPersistent by hand
abarth@webkit.org [Fri, 24 Aug 2012 01:02:28 +0000 (01:02 +0000)]
[V8] V8AbstractEventListener re-implements ScopedPersistent by hand
https://bugs.webkit.org/show_bug.cgi?id=94873

Reviewed by Eric Seidel.

Rather than calling New/Dispose manually, this patch changes
V8AbstractEventListener to use ScopedPersistent.

* bindings/v8/V8AbstractEventListener.cpp:
(WebCore::V8AbstractEventListener::weakEventListenerCallback):
(WebCore::V8AbstractEventListener::~V8AbstractEventListener):
(WebCore::V8AbstractEventListener::setListenerObject):
(WebCore::V8AbstractEventListener::getReceiverObject):
* bindings/v8/V8AbstractEventListener.h:
(WebCore::V8AbstractEventListener::getListenerObject):
(WebCore::V8AbstractEventListener::getExistingListenerObject):
(WebCore::V8AbstractEventListener::existingListenerObjectPersistentHandle):
(WebCore::V8AbstractEventListener::hasExistingListenerObject):
(V8AbstractEventListener):

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

7 years agoPrep work for: Implement sticky positioning
simon.fraser@apple.com [Fri, 24 Aug 2012 00:52:53 +0000 (00:52 +0000)]
Prep work for: Implement sticky positioning
https://bugs.webkit.org/show_bug.cgi?id=90046

Reviewed by Dave Hyatt.

Do some method renaming in preparation for adding a new kind
of in-flow positioning: sticky positioning.

Rename RenderStyle::isOutOfFlowPositioned() to hasOutOfFlowPosition().
Add RenderStyle::hasInFlowPosition().

Use RenderObject::isInFlowPositioned() in places where it will apply
for both relative and sticky positioning.

Add RenderBoxModelObject::offsetForInFlowPosition(), which currently
applies just to relative positioning, but will also apply to sticky.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::getPositionOffsetValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* editing/TextIterator.cpp:
(WebCore::ignoresContainerClip):
* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::isSelectionRoot):
(WebCore::RenderBlock::blockSelectionGaps):
(WebCore::positionForPointRespectingEditingBoundaries):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleWillChange):
(WebCore::RenderBox::updateBoxModelInfoFromStyle):
(WebCore::RenderBox::mapLocalToContainer):
(WebCore::RenderBox::offsetFromContainer):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
(WebCore::RenderBox::layoutOverflowRectForPropagation):
* rendering/RenderBox.h:
* rendering/RenderBoxModelObject.cpp:
(WebCore::accumulateInFlowPositionOffsets):
(WebCore::RenderBoxModelObject::relativePositionOffset):
(WebCore::RenderBoxModelObject::offsetForInFlowPosition):
(WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint):
* rendering/RenderBoxModelObject.h:
(RenderBoxModelObject):
(WebCore::RenderBoxModelObject::stickyPositionLogicalOffset):
(WebCore::RenderBoxModelObject::requiresLayer):
* rendering/RenderInline.cpp:
(WebCore::inFlowPositionedInlineAncestor): We need to actually return
the ancestor, since we will need to copy its position type once there
is more than one kind of in-flow position.
(WebCore::updateStyleOfAnonymousBlockContinuations):
(WebCore::RenderInline::styleDidChange):
(WebCore::RenderInline::addChildIgnoringContinuation):
(WebCore::RenderInline::clippedOverflowRectForRepaint):
(WebCore::RenderInline::computeRectForRepaint):
(WebCore::RenderInline::offsetFromContainer):
(WebCore::RenderInline::mapLocalToContainer):
(WebCore::RenderInline::offsetForInFlowPositionedInline):
* rendering/RenderInline.h:
(WebCore::RenderInline::requiresLayer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPosition):
(WebCore::isPositionedContainer):
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::shouldBeNormalFlowOnly):
* rendering/RenderLayer.h:
(WebCore::RenderLayer::offsetForInFlowPosition):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::markContainingBlocksForLayout):
(WebCore::RenderObject::setPreferredLogicalWidthsDirty):
(WebCore::RenderObject::invalidateContainerPreferredLogicalWidths):
(WebCore::RenderObject::containingBlock):
* rendering/RenderObject.h:
(WebCore::RenderObject::isRelPositioned):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::updateBeforeAfterContent):
* rendering/style/RenderStyle.h:

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

7 years agoEFL build fix attempt after r126494. Try touching the IDL file.
rniwa@webkit.org [Fri, 24 Aug 2012 00:52:08 +0000 (00:52 +0000)]
EFL build fix attempt after r126494. Try touching the IDL file.

* Modules/battery/BatteryManager.idl:

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

7 years agoRemove FIXMEs from css3/flexbox/flexitem.html
commit-queue@webkit.org [Fri, 24 Aug 2012 00:50:01 +0000 (00:50 +0000)]
Remove FIXMEs from css3/flexbox/flexitem.html
https://bugs.webkit.org/show_bug.cgi?id=94872

Patch by Shezan Baig <shezbaig.wk@gmail.com> on 2012-08-23
Reviewed by Ojan Vafai.

Remove FIXMEs that were fixed in bug 94604.

* css3/flexbox/flexitem.html:

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

7 years agoUnreviewed attempt to fix build failure in Debug.
abarth@webkit.org [Fri, 24 Aug 2012 00:42:50 +0000 (00:42 +0000)]
Unreviewed attempt to fix build failure in Debug.

* bindings/v8/ScriptValue.h:

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

7 years agoIndexedDB: Expose mechanism for database to force a connection to close
jsbell@chromium.org [Fri, 24 Aug 2012 00:41:38 +0000 (00:41 +0000)]
IndexedDB: Expose mechanism for database to force a connection to close
https://bugs.webkit.org/show_bug.cgi?id=91010

Reviewed by Tony Chang.

Source/WebCore:

In response to user action (e.g. "delete my browsing data") a connection may
need to be forcibly terminated. This allows an event to be sent to a connection
from the back end via IDBDatabaseCallbacks to initiate closing the connection.

Test: [chromium] webkit_unit_test --gtest_filter='IDBDatabaseBackendTest.ForcedClose'

* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::forceClose): Abort all transactions and close.
(WebCore):
* Modules/indexeddb/IDBDatabase.h:
(IDBDatabase): Entry point.
* Modules/indexeddb/IDBDatabaseCallbacks.h:
(IDBDatabaseCallbacks): Event plumbing from back end.
* Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp:
(WebCore::IDBDatabaseCallbacksImpl::onForcedClose): Ditto.
(WebCore):
* Modules/indexeddb/IDBDatabaseCallbacksImpl.h:
(IDBDatabaseCallbacksImpl): Ditto.
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore): Method stub.

Source/WebKit/chromium:

In Chromium, the browsing data deleter has a WebIDBDatabase handle which
it can use to terminate a connection. This handles forcefully closing
the front end connections and the back end, to unblock disk cleanup.

* public/WebIDBDatabase.h:
(WebKit::WebIDBDatabase::forceClose): Entry point.
* public/WebIDBDatabaseCallbacks.h:
(WebKit::WebIDBDatabaseCallbacks::onForcedClose): Plumbing back to front.
* src/IDBDatabaseCallbacksProxy.cpp:
(WebKit::IDBDatabaseCallbacksProxy::onForcedClose): Plumbing back to front.
(WebKit):
* src/IDBDatabaseCallbacksProxy.h:
(IDBDatabaseCallbacksProxy): Plumbing.
* src/WebIDBDatabaseCallbacksImpl.cpp:
(WebKit::WebIDBDatabaseCallbacksImpl::onForcedClose): Plumbing back to front.
(WebKit):
* src/WebIDBDatabaseCallbacksImpl.h:
(WebIDBDatabaseCallbacksImpl): Plumbing back to front.
* src/WebIDBDatabaseImpl.cpp:
(WebKit::WebIDBDatabaseImpl::close): Tidy up dropping the callback reference.
(WebKit):
(WebKit::WebIDBDatabaseImpl::forceClose): Terminate the connection by notifying
the back end and the front end, while avoid re-entrant badness.
* src/WebIDBDatabaseImpl.h: Header tweak for unit test.
(WebIDBDatabaseImpl):
* tests/IDBDatabaseBackendTest.cpp: Added unit test to exercise connections.

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

7 years agoBuild fix for old, old versions of Clang.
mrowe@apple.com [Fri, 24 Aug 2012 00:40:33 +0000 (00:40 +0000)]
Build fix for old, old versions of Clang.

* wtf/FastMalloc.cpp:
(WTF): Rejigger things so that they parse correctly if __has_warning isn't defined.

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

7 years ago[BlackBerry] Obsolete the in-region scroll codepath prior to BB10's
tonikitoo@webkit.org [Fri, 24 Aug 2012 00:39:42 +0000 (00:39 +0000)]
[BlackBerry] Obsolete the in-region scroll codepath prior to BB10's
https://bugs.webkit.org/show_bug.cgi?id=94839
PR #197775

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

This codepath is not needed anymore, so lets let it RIP.

The only code addition is due to some code I've moved from WebPagePrivate::scrollNodeRecursively
and WebPagePrivate::scrollBy to InRegionScrollerPrivate::setLayerScrollPosition.
Rest is code removal ...

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScrollerPrivate::setLayerScrollPosition):
* Api/InRegionScroller_p.h:
(InRegionScrollerPrivate):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::scrollBy):
(BlackBerry::WebKit::WebPage::scrollBy):
* Api/WebPage.h:
* Api/WebPage_p.h:
(WebPagePrivate):

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

7 years ago[chromium] Convert WebAnimationCurve subtypes into pure virtual
jamesr@google.com [Fri, 24 Aug 2012 00:36:04 +0000 (00:36 +0000)]
[chromium] Convert WebAnimationCurve subtypes into pure virtual
https://bugs.webkit.org/show_bug.cgi?id=94068

Reviewed by Adrienne Walker.

Source/Platform:

This makes the Web*AnimationCurve interfaces pure virtual to provide better insulation from the implementation
details of the classes.

* chromium/public/WebAnimation.h:
(WebKit::WebAnimation::WebAnimation):
(WebAnimation):
* chromium/public/WebAnimationCurve.h:
* chromium/public/WebFloatAnimationCurve.h:
(WebFloatAnimationCurve):
(WebKit::WebFloatAnimationCurve::~WebFloatAnimationCurve):
* chromium/public/WebTransformAnimationCurve.h:
(WebTransformAnimationCurve):
(WebKit::WebTransformAnimationCurve::~WebTransformAnimationCurve):

Source/WebCore:

Updates users of the Web*AnimationCurve interface for its new pointery goodness.

* platform/graphics/chromium/AnimationTranslationUtil.cpp:
(WebCore::appendKeyframeWithStandardTimingFunction):
(WebCore::appendKeyframeWithCustomBezierTimingFunction):
(WebCore::WebTransformAnimationCurve):
(WebCore::createWebAnimation):

Source/WebKit/chromium:

Updates the implementations, some callers and tests of Web*AnimationCurve to its new interface.

* WebKit.gyp:
* src/WebAnimation.cpp:
(WebKit::WebAnimation::initialize):
* src/WebFloatAnimationCurveImpl.cpp: Renamed from Source/WebKit/chromium/src/WebFloatAnimationCurve.cpp.
(WebKit):
(WebKit::WebFloatAnimationCurve::create):
(WebKit::WebFloatAnimationCurveImpl::WebFloatAnimationCurveImpl):
(WebKit::WebFloatAnimationCurveImpl::~WebFloatAnimationCurveImpl):
(WebKit::WebFloatAnimationCurveImpl::type):
(WebKit::WebFloatAnimationCurveImpl::add):
(WebKit::WebFloatAnimationCurveImpl::getValue):
(WebKit::WebFloatAnimationCurveImpl::cloneToCCAnimationCurve):
* src/WebTransformAnimationCurve.cpp: Removed.
* tests/WebAnimationTest.cpp:
(WebKit::TEST):
* tests/WebFloatAnimationCurveTest.cpp:
(WebKit::TEST):
* tests/WebTransformAnimationCurveTest.cpp:
(WebKit::TEST):

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

7 years agoReplay tests take forever to load
rniwa@webkit.org [Fri, 24 Aug 2012 00:31:36 +0000 (00:31 +0000)]
Replay tests take forever to load
https://bugs.webkit.org/show_bug.cgi?id=94764

Reviewed by Adam Barth.

Don't load about:blank at the beginning. This appears to clog the DRT.

* Scripts/webkitpy/performance_tests/perftest.py:
(ReplayPerfTest.run_single):
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestReplayPerfTest.test_run_single):
(TestReplayPerfTest.test_run_single_fails_when_output_has_error):

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

7 years agoRoll back in the part of r126475 that I had rolled out.
mrowe@apple.com [Fri, 24 Aug 2012 00:22:24 +0000 (00:22 +0000)]
Roll back in the part of r126475 that I had rolled out.

* wtf/FastMalloc.cpp:
(WTF): Disable the -Wunused-private-field warning around the declaration of
TCMalloc_Central_FreeListPadded since the padding is intentionally unused.
Only disable the warning if we detect it is enabled, since the warning may not
be supported by the version of Clang that is being used.

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

7 years agoUnreviewed, rolling out r126497.
kbr@google.com [Fri, 24 Aug 2012 00:17:53 +0000 (00:17 +0000)]
Unreviewed, rolling out r126497.
http://trac.webkit.org/changeset/126497
https://bugs.webkit.org/show_bug.cgi?id=94764

Caused webkitpy-test step to start failing.

* Scripts/webkitpy/performance_tests/perftest.py:
(ReplayPerfTest.run_single):

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

7 years agoAdd saturation arithmetic support to FractionalLayoutUnit
eae@chromium.org [Fri, 24 Aug 2012 00:14:00 +0000 (00:14 +0000)]
Add saturation arithmetic support to FractionalLayoutUnit
https://bugs.webkit.org/show_bug.cgi?id=94364

Reviewed by Benjamin Poulain.

Source/WebCore:

Add experimental saturation arithmetic support to FractionalLayoutUnit,
guarded by a flag.
The idea here is to saturate (or clamp) rather than overflow when
computing positions and sizes.

No new tests for WebCore, not enabled by default.

* platform/FractionalLayoutUnit.h:
(WebCore::FractionalLayoutUnit::intMinForLayoutUnit):
Use INT_MIN instead of -INT_MAX to compute minimum value as the two are
not the same.

(WebCore::FractionalLayoutUnit::FractionalLayoutUnit):
(WebCore::FractionalLayoutUnit::fromFloatCeil):
(WebCore::FractionalLayoutUnit::fromFloatFloor):
(WebCore::FractionalLayoutUnit::fromFloatRound):
(WebCore::FractionalLayoutUnit::setValue):
Add range checks.

(WebCore::operator*):
(WebCore::operator+):
(WebCore::operator-):
(WebCore::operator+=):
(WebCore::operator-=):
Use the saturatedAddition and saturatedSubtraction functions, which have
been optimized to reduce branching, instead of range checks for the most
common operators.

Source/WTF:

Add support functions for saturated addition and subtraction.

Test: TestWebKitAPI/Tests/WTF/SaturatedArithmeticOperations.cpp

* GNUmakefile.list.am:
* WTF.gypi:
* WTF.pro:
* WTF.vcproj/WTF.vcproj:
* WTF.xcodeproj/project.pbxproj:
* WTF/wtf/CMakeLists.txt:
Add SaturatedArithmetic.h to build files.

* wtf/SaturatedArithmetic.h: Added.
(saturatedAddition):
(saturatedSubtraction):
Support functions for saturated addition/subtraction. Compares the signed
bit of the values instead of using range checks to reduce branching.

* wtf/Platform.h:
Add ENABLE_SATURATED_LAYOUT_ARITHMETIC flag.

Tools:

Add test for new saturatedArithmetic functions.

* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/GNUmakefile.am:
* TestWebKitAPI/TestWebKitAPI.gypi:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/SaturatedArithmeticOperations.cpp: Added.
(TestWebKitAPI):
(TestWebKitAPI::TEST):
* TestWebKitAPI/win/TestWebKitAPI.vcproj:

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

7 years agoUnreviewed. Just added comments I forgot to add in r126506.
haraken@chromium.org [Fri, 24 Aug 2012 00:11:13 +0000 (00:11 +0000)]
Unreviewed. Just added comments I forgot to add in r126506.

* bindings/v8/ScriptController.h:
(WebCore):
(ScriptController):

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

7 years agoUnreviewed, rolling out r126483.
kbr@google.com [Fri, 24 Aug 2012 00:09:29 +0000 (00:09 +0000)]
Unreviewed, rolling out r126483.
http://trac.webkit.org/changeset/126483
https://bugs.webkit.org/show_bug.cgi?id=92272

Caused two Chromium browser_tests to time out 100% reliably.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::init):
(WebCore::FrameLoader::prepareForLoadStart):
(WebCore::FrameLoader::clearProvisionalLoad):
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
(WebCore::FrameLoader::detachFromParent):
* loader/FrameLoader.h:
(FrameLoader):

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

7 years ago[V8] Remove V8Proxy.{h,cpp}
haraken@chromium.org [Thu, 23 Aug 2012 23:59:06 +0000 (23:59 +0000)]
[V8] Remove V8Proxy.{h,cpp}
https://bugs.webkit.org/show_bug.cgi?id=94794

Reviewed by Dimitri Glazkov.

Now V8Proxy is no longer used. We can completely remove V8Proxy from the codebase.

No tests. No change in behavior.

Source/WebCore:

* UseV8.cmake:
* WebCore.gypi:
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateImplementation):
(GenerateCallbackImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
* bindings/scripts/test/V8/V8TestCallback.cpp:
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
* bindings/scripts/test/V8/V8TestException.cpp:
* bindings/scripts/test/V8/V8TestInterface.cpp:
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
* bindings/scripts/test/V8/V8TestNode.cpp:
* bindings/scripts/test/V8/V8TestObj.cpp:
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::ScriptController):
(WebCore::ScriptController::~ScriptController):
(WebCore::ScriptController::callFunction):
(WebCore::ScriptController::clearWindowShell):
* bindings/v8/ScriptController.h:
(WebCore):
(ScriptController):
* bindings/v8/V8AbstractEventListener.h:
(WebCore):
* bindings/v8/V8Binding.cpp:
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::reportFatalErrorInV8):
* bindings/v8/V8DOMWrapper.h:
(WebCore):
* bindings/v8/V8ObjectConstructor.cpp:
(WebCore::V8ObjectConstructor::newInstanceInDocument):
* bindings/v8/V8Proxy.cpp: Removed.
* bindings/v8/V8Proxy.h: Removed.
* bindings/v8/V8RecursionScope.h:
(WebCore):
* bindings/v8/V8Utilities.cpp:
* bindings/v8/custom/V8CustomXPathNSResolver.h:

Source/WebKit/chromium:

* src/ChromeClientImpl.cpp:
* src/WebBindings.cpp:
* src/WebDOMMessageEvent.cpp:
* src/WebDevToolsAgentImpl.cpp:
* src/WebMediaPlayerClientImpl.cpp:

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

7 years agoAutogenerate Opcode definitions
oliver@apple.com [Thu, 23 Aug 2012 23:49:48 +0000 (23:49 +0000)]
Autogenerate Opcode definitions
https://bugs.webkit.org/show_bug.cgi?id=94840

Reviewed by Gavin Barraclough.

Start the process of autogenerating the code emission for the bytecode.
We'll just start with automatic generation of the list of Opcodes as that
requires the actual definition of the opcodes, and the logic for parsing
them.

Due to some rather annoying dependency cycles, this initial version has
the OpcodeDefinitions.h file checked into the tree, although with some
work I hope to be able to fix that.

* DerivedSources.make:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/Opcode.h:
  Include OpcodeDefinitions.h as our definitive source of info
  about the opcodes.
* bytecode/OpcodeDefinitions.h: Added.
  Autogenerated file
* bytecode/opcodes: Added.
  The new opcode definition file
* opcode_definition_generator.py: Added.
(generateOpcodeDefinition):
(generate):
  Module that generates the content for OpcodeDefinitions.h
* opcode_generator.py: Added.
(printUsage):
(main):
  Driver script
* opcode_parser.py: Added.
  Simple parser for the opcode definitions.

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

7 years ago[BlackBerry] Add a check to filter out cookies that tries to set the domain to a...
commit-queue@webkit.org [Thu, 23 Aug 2012 23:48:49 +0000 (23:48 +0000)]
[BlackBerry] Add a check to filter out cookies that tries to set the domain to a top level domain
https://bugs.webkit.org/show_bug.cgi?id=94722

Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-08-23
Reviewed by Rob Buis.

Changing the topleveldomain method name for better readability.

Also renaming the TopLevelDomain.h in platform to DomainTools
because there exists other tests that should belong in the same file.

Only changing method names and include file names.

* platform/blackberry/CookieParser.cpp:
(WebCore::CookieParser::parseOneCookie):

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

7 years agoFix cross-direction stretch for replaced elements in column flexbox
commit-queue@webkit.org [Thu, 23 Aug 2012 23:41:09 +0000 (23:41 +0000)]
Fix cross-direction stretch for replaced elements in column flexbox
https://bugs.webkit.org/show_bug.cgi?id=94604

Patch by Shezan Baig <shezbaig.wk@gmail.com> on 2012-08-23
Reviewed by Ojan Vafai.

Source/WebCore:

Moved the logic that constrains logical width by MinSize and MaxSize to
a new helper function called constrainLogicalWidthInRegionByMinMax.
This helper function is used from both computeLogicalWidthInRegion and
RenderFlexibleBox::applyStretchAlignmentToChild.

RenderFlexibleBox no longer checks for isMultiline when stretching
elements in a column flexbox. Instead, we now constrain the available
width by the child's min-width and max-width, and set the override
width only if that constrained width is different from the child's
current logicalWidth.

No new tests. The existing css3/flexbox/flexitem.html test was extended
to exercise the new code.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::constrainLogicalWidthInRegionByMinMax): New helper
method to constrain logical width by min-width and max-width.
(WebCore):
(WebCore::RenderBox::computeLogicalWidthInRegion): Changed to use the
new constrainLogicalWidthInRegionByMinMax helper method.
* rendering/RenderBox.h:
(RenderBox):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::applyStretchAlignmentToChild): Changed to
use constrainLogicalWidthInRegionByMinMax to determine the override
width for the child.

LayoutTests:

Fixed failing test cases. Add tests for min/max width/height.

* css3/flexbox/flexitem-expected.txt:
* css3/flexbox/flexitem.html:

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

7 years ago[V8] ScriptState is using stone knifes and bear skins
abarth@webkit.org [Thu, 23 Aug 2012 23:30:09 +0000 (23:30 +0000)]
[V8] ScriptState is using stone knifes and bear skins
https://bugs.webkit.org/show_bug.cgi?id=94846

Reviewed by Eric Seidel.

This patch just modernizes ScriptState to use some of the newer tools
available in the V8 bindings. There shouldn't be any behavior changes.

* bindings/v8/ScriptState.cpp:
(WebCore::ScriptState::ScriptState):
(WebCore::ScriptState::~ScriptState):
(WebCore::ScriptState::domWindow):
(WebCore::ScriptState::scriptExecutionContext):
(WebCore::ScriptState::forContext):
(WebCore::ScriptState::current):
* bindings/v8/ScriptState.h:
(WebCore):
(WebCore::ScriptState::context):
(ScriptState):
(WebCore::ScriptStateProtectedPtr::ScriptStateProtectedPtr):
(ScriptStateProtectedPtr):
* bindings/v8/V8Binding.cpp:
(WebCore::toScriptExecutionContext):
(WebCore):
* bindings/v8/V8Binding.h:
(WebCore):

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

7 years ago[chromium] Don't require a RenderSurface* in order to create a RenderPass
danakj@chromium.org [Thu, 23 Aug 2012 23:23:28 +0000 (23:23 +0000)]
[chromium] Don't require a RenderSurface* in order to create a RenderPass
https://bugs.webkit.org/show_bug.cgi?id=94862

Reviewed by Adrienne Walker.

Source/WebCore:

If a test wants to create a RenderPass, they are required to create a
Layer, and a RenderSurface. This is not ideal, we should let tests
create RenderPasses more simply by giving the information that it needs.

This also helps us recreate the RenderPasses after receiving a copy
via IPC.

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
* platform/graphics/chromium/cc/CCRenderPass.cpp:
(WebCore::CCRenderPass::create):
(WebCore::CCRenderPass::CCRenderPass):
* platform/graphics/chromium/cc/CCRenderPass.h:
(CCRenderPass):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCRendererGLTest.cpp:
(FakeCCRendererClient::FakeCCRendererClient):

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

7 years ago[V8] ScriptValue should use ScopedPresistent rather than calling New/Dispose directly
abarth@webkit.org [Thu, 23 Aug 2012 23:21:25 +0000 (23:21 +0000)]
[V8] ScriptValue should use ScopedPresistent rather than calling New/Dispose directly
https://bugs.webkit.org/show_bug.cgi?id=94864

Reviewed by Eric Seidel.

ScriptValue was created before ScopedPersistent existed and therefore
calls New/Dispose manually. Instead, it should use the less error-prone
approach of having ScopedPersistent balance those calls.

* bindings/v8/ScriptValue.cpp:
(WebCore::ScriptValue::serialize):
(WebCore::ScriptValue::getString):
(WebCore::ScriptValue::toString):
(WebCore::ScriptValue::toInspectorValue):
* bindings/v8/ScriptValue.h:
(WebCore::ScriptValue::ScriptValue):
(WebCore::ScriptValue::operator=):
(WebCore::ScriptValue::operator==):
(WebCore::ScriptValue::isEqual):
(WebCore::ScriptValue::isFunction):
(WebCore::ScriptValue::isNull):
(WebCore::ScriptValue::isUndefined):
(WebCore::ScriptValue::isObject):
(WebCore::ScriptValue::hasNoValue):
(WebCore::ScriptValue::clear):
(WebCore::ScriptValue::v8Value):
(ScriptValue):

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

7 years agoUnreviewed Chromium gardening. Generalized a few Snow Leopard-only
kbr@google.com [Thu, 23 Aug 2012 23:17:35 +0000 (23:17 +0000)]
Unreviewed Chromium gardening. Generalized a few Snow Leopard-only
expectations to Mac in order to get the new Lion bot green.

* platform/chromium/TestExpectations:

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

7 years ago[chromium] Remove WebLayer::setChildren API
jamesr@google.com [Thu, 23 Aug 2012 23:14:21 +0000 (23:14 +0000)]
[chromium] Remove WebLayer::setChildren API
https://bugs.webkit.org/show_bug.cgi?id=94749

Reviewed by Adrienne Walker.

Source/Platform:

This is redundant with removeAllChildren() / addChild() and less efficient.

* chromium/public/WebLayer.h:
(WebLayer):

Source/WebCore:

Sets up the child list directly instead of building an intermediate buffer. Covered by compositing/*

* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::updateChildList):

Source/WebKit/chromium:

* src/WebLayer.cpp:

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

7 years agoReplay tests take forever to load
rniwa@webkit.org [Thu, 23 Aug 2012 23:12:47 +0000 (23:12 +0000)]
Replay tests take forever to load
https://bugs.webkit.org/show_bug.cgi?id=94764

Reviewed by Adam Barth.

Don't load about:blank at the beginning. This appears to clog the DRT.

* Scripts/webkitpy/performance_tests/perftest.py:
(ReplayPerfTest.run_single):

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

7 years agoAX: Focusable elements without a role should not be ignored
dmazzoni@google.com [Thu, 23 Aug 2012 23:05:18 +0000 (23:05 +0000)]
AX: Focusable elements without a role should not be ignored
https://bugs.webkit.org/show_bug.cgi?id=94302

Reviewed by Chris Fleizach.

Source/WebCore:

Changes the accessibility logic so that a generic element that's focusable is
not ignored for accessibility, and returns its inner text as its title. That way
if you Tab to the element, a reasonable accessibility notification is generated.

One exception is the body element, because focusing the body is equivalent to
blurring the current focused element and does not result in a "focus" accessibility
notification.

Also fixes logic that determined if an element was contentEditable by making
sure it catches the case with no attribute value (e.g. <div contentEditable>),
which also implies contentEditable=true according to the spec.

Test: accessibility/focusable-div.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore):
(WebCore::nodeHasContentEditableAttributeSet):
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):

LayoutTests:

Adds a new test to make sure that a generic focusable element (like a div with tabindex=0)
can get focus and return an appropriate title, just like a form control or element with
an ARIA role.

Modifies three existing tests that were previously assuming that a focusable node
with no role would be ignored for accessibility ("accessibilityIsIgnored").

* accessibility/editable-webarea-context-menu-point.html:
* accessibility/focusable-div-expected.txt: Added.
* accessibility/focusable-div.html: Added.
* accessibility/table-detection.html:
* platform/mac/accessibility/listbox-hit-test.html:

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

7 years agoRemove RenderTable::removeChild
jchaffraix@webkit.org [Thu, 23 Aug 2012 23:02:19 +0000 (23:02 +0000)]
Remove RenderTable::removeChild
https://bugs.webkit.org/show_bug.cgi?id=94842

Reviewed by Abhishek Arya.

This change removed removeChild, replaced by willBeRemovedFromTree calls. The upside is that
the invalidations are now guaranteed to run if we split a table (which is not guaranteed when
using removeChild). This change also shows that our code may be doing too much work in some
of the child's removal, in which case the code was marked as needed.

Covered by existing tests.

* rendering/RenderTable.cpp:
(WebCore::RenderTable::removeCaption):
Helper function used to remove the caption from our Vector. The invalidation are very likely
unneeded so added a comment about that.

* rendering/RenderTable.h:
* rendering/RenderTableCaption.cpp:
(WebCore::RenderTableCaption::willBeRemovedFromTree):
(WebCore::RenderTableCaption::table):
* rendering/RenderTableCaption.h:
* rendering/RenderTableCol.cpp:
(WebCore::RenderTableCol::willBeRemovedFromTree):
* rendering/RenderTableCol.h:
Added the following functions to do the invalidation.

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

7 years agoChange behavior of MasqueradesAsUndefined to better accommodate DFG changes
mhahnenberg@apple.com [Thu, 23 Aug 2012 23:00:31 +0000 (23:00 +0000)]
Change behavior of MasqueradesAsUndefined to better accommodate DFG changes
https://bugs.webkit.org/show_bug.cgi?id=93884

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of
MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,
we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined
objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).
For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not
masquerade as undefined within frame B, but it will continue to masquerade in frame A.

There are two primary changes that are taking place here. One is to thread the ExecState* through
JSValue::toBoolean and JSCell::toBoolean so that JSCell::toBoolean can check the object's
JSGlobalObject to compare it to the lexical JSGlobalObject of the currently running code. If the two
are distinct, then the object cannot MasqueradeAsUndefined.

The other change is to perform this comparison of JSGlobalObjects everywhere where the MasqueradesAsUndefined
flag in the Structure is checked. For C++ code, this check has been factored into its own function in
Structure::masqueradesAsUndefined. We only perform this check in the DFG if the current JSGlobalObject has
had a MasqueradesAsUndefined object allocated within its context. This conditional compilation is managed
through the use of a WatchpointSet in each JSGlobalObject and alternate create() functions for JS DOM wrappers
that are MasqueradesAsUndefined.

* API/JSValueRef.cpp:
(JSValueToBoolean):
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* bytecode/Watchpoint.h:
(WatchpointSet):
* debugger/DebuggerCallFrame.h:
(JSC::DebuggerCallFrame::callFrame):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::run):
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compile):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_is_undefined):
(JSC::JIT::emit_op_jeq_null):
(JSC::JIT::emit_op_jneq_null):
(JSC::JIT::emit_op_eq_null):
(JSC::JIT::emit_op_neq_null):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_is_undefined):
(JSC::JIT::emit_op_jeq_null):
(JSC::JIT::emit_op_jneq_null):
(JSC::JIT::emit_op_eq_null):
(JSC::JIT::emit_op_neq_null):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
* runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncEvery):
(JSC::arrayProtoFuncSome):
* runtime/BooleanConstructor.cpp:
(JSC::constructBoolean):
(JSC::callBooleanConstructor):
* runtime/JSCell.h:
(JSCell):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::JSGlobalObject):
* runtime/JSGlobalObject.h:
(JSGlobalObject):
(JSC::JSGlobalObject::masqueradesAsUndefinedWatchpoint):
* runtime/JSString.h:
(JSC::JSCell::toBoolean):
(JSC::JSValue::toBoolean):
* runtime/JSValue.h:
* runtime/ObjectConstructor.cpp:
(JSC::toPropertyDescriptor):
* runtime/Operations.cpp:
(JSC::jsTypeStringForValue):
(JSC::jsIsObjectType):
* runtime/Operations.h:
(JSC):
(JSC::JSValue::equalSlowCaseInline):
* runtime/RegExpConstructor.cpp:
(JSC::setRegExpConstructorMultiline):
* runtime/RegExpPrototype.cpp:
(JSC::regExpProtoFuncToString):
* runtime/Structure.h:
(Structure):
(JSC::Structure::globalObjectOffset):
(JSC::Structure::masqueradesAsUndefined):
(JSC):

Source/WebCore:

With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of
MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,
we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined
objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).
For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not
masquerade as undefined within frame B, but it will continue to masquerade in frame A.

Test: fast/js/document-all-between-frames.html

All of the changes in WebCore are simply passing the additional ExecState argument to JSValue::toBoolean.

* bindings/js/JSCustomSQLStatementErrorCallback.cpp:
(WebCore::JSSQLStatementErrorCallback::handleEvent):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::addEventListener):
(WebCore::JSDOMWindow::removeEventListener):
* bindings/js/JSDataViewCustom.cpp:
(WebCore::getDataViewMember):
* bindings/js/JSDeviceMotionEventCustom.cpp:
(WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
* bindings/js/JSDeviceOrientationEventCustom.cpp:
(WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
* bindings/js/JSDictionary.cpp:
(WebCore::JSDictionary::convertValue):
* bindings/js/JSHTMLCanvasElementCustom.cpp:
(WebCore::JSHTMLCanvasElement::getContext):
* bindings/js/JSInspectorFrontendHostCustom.cpp:
(WebCore::populateContextMenuItems):
* bindings/js/JSMessageEventCustom.cpp:
(WebCore::handleInitMessageEvent):
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::dataFunctionMatrix):
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::open):
* bindings/js/JavaScriptCallFrame.cpp:
(WebCore::JavaScriptCallFrame::exec):
(WebCore):
* bindings/js/JavaScriptCallFrame.h:
(JavaScriptCallFrame):
* bindings/js/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::hasBreakpoint):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::dumpIfTerminal):
* bindings/scripts/CodeGeneratorJS.pm: Also add the custom create function for MasqueradesAsUndefined JS DOM wrappers.
(GenerateEventListenerCall):
(GenerateHeader):
(JSValueToNative):
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
(WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
* bindings/scripts/test/JS/JSTestEventTarget.h:
(WebCore::JSTestEventTarget::create):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::setJSTestObjCreate):
(WebCore::setJSTestObjReflectedBooleanAttr):
(WebCore::setJSTestObjReflectedCustomBooleanAttr):
(WebCore::jsTestObjPrototypeFunctionAddEventListener):
(WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
* bridge/c/c_utility.cpp:
(JSC::Bindings::convertValueToNPVariant):
* bridge/jni/jni_jsobject.mm:
(JavaJSObject::convertValueToJObject):
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::convertValueToQVariant):

Source/WebKit/mac:

With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of
MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,
we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined
objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).
For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not
masquerade as undefined within frame B, but it will continue to masquerade in frame A.

* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray): Passing ExecState to toBoolean call.

Source/WebKit2:

With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of
MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,
we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined
objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).
For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not
masquerade as undefined within frame B, but it will continue to masquerade in frame A.

* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant): Passing ExecState to toBoolean call.

LayoutTests:

Added a test that uses a variety of ways of checking whether something is correctly
masquerading as undefined (or not) in a subframe.

* fast/js/document-all-between-frames-expected.txt: Added.
* fast/js/document-all-between-frames.html: Added.
* fast/js/resources/document-all-between-frames-subframe.html: Added.
* platform/chromium/TestExpectations: Chromium treats document.all differently, so skip our new test.

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

7 years agoCSSParser: Move enumeration to a common place (StylePropertyShorthand)
commit-queue@webkit.org [Thu, 23 Aug 2012 22:52:30 +0000 (22:52 +0000)]
CSSParser: Move enumeration to a common place (StylePropertyShorthand)
https://bugs.webkit.org/show_bug.cgi?id=93210

Patch by Adenilson Cavalcanti <cavalcantii@gmail.com> on 2012-08-23
Reviewed by Dean Jackson.

CSSParser::parseAnimationShorthand() uses an enumeration with the same
elements as another enumeration present in StylePropertyShorthand, but
with different ordering of values. This patch puts both enums in the same place.

No new tests. No change in behavior.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseAnimationShorthand):
* css/StylePropertyShorthand.cpp:
(WebCore::webkitAnimationShorthandForParsing):
(WebCore):
* css/StylePropertyShorthand.h:
(WebCore):

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

7 years agoREGRESSION (r124815): PDF in frame does not display any more
beidson@apple.com [Thu, 23 Aug 2012 22:50:26 +0000 (22:50 +0000)]
REGRESSION (r124815): PDF in frame does not display any more
<rdar://problem/12063306> and https://bugs.webkit.org/show_bug.cgi?id=94869

Reviewed by Alexey Proskuryakov.

* WebProcess/Plugins/PDF/BuiltInPDFView.mm:
(WebKit::BuiltInPDFView::initialize): Tell the controller that initialization was successful.

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

7 years agoAdjust test expectations for fast/js/toString-overrides.html and fast/js/eval-cross...
commit-queue@webkit.org [Thu, 23 Aug 2012 22:50:05 +0000 (22:50 +0000)]
Adjust test expectations for fast/js/toString-overrides.html and fast/js/eval-cross-window.html
https://bugs.webkit.org/show_bug.cgi?id=94824

Patch by Ulan Degenbaev <ulan@chromium.org> on 2012-08-23
Reviewed by Kentaro Hara.

Add a bug number for tracking failing cases in fast/js/toString-overrides.html.
Upload Chromium specific test expectations for fast/js/eval-cross-window.html.

Failing tests in eval-cross-window swap the eval() function in the main window and the frame.
This behaviour is not specified in ECMA-262 and is probably implementation dependent.
Both Firefox and Chromium produce the same result for this test.

* platform/chromium/TestExpectations:
* platform/chromium/fast/js/eval-cross-window-expected.txt: Added.

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

7 years agoTrailing spaces in CSP source lists should not generate console warnings.
commit-queue@webkit.org [Thu, 23 Aug 2012 22:48:25 +0000 (22:48 +0000)]
Trailing spaces in CSP source lists should not generate console warnings.
https://bugs.webkit.org/show_bug.cgi?id=94847

Patch by Mike West <mkwst@chromium.org> on 2012-08-23
Reviewed by Adam Barth.

Trailing space after a valid source in a Content Security Policy source
list was accidentally generating console warnings about an invalid
(empty) source. This patch silently ignores trailing whitespace instead.

Source/WebCore:

A test-case has been added to 'source-list-parsing-02.html' to cover
this case.

* page/ContentSecurityPolicy.cpp:
(WebCore::CSPSourceList::parse):
    Return early if we reach the end of the source list after skipping
    leading whitespace.

LayoutTests:

* http/tests/security/contentSecurityPolicy/source-list-parsing-02-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-02.html:

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

7 years ago[Chromium] LayoutTests: css3/selector3/xml tests are flaky / have wrong expectations...
kbr@google.com [Thu, 23 Aug 2012 22:37:38 +0000 (22:37 +0000)]
[Chromium] LayoutTests: css3/selector3/xml tests are flaky / have wrong expectations on Snow Leopard
https://bugs.webkit.org/show_bug.cgi?id=82122

Unreviewed Chromium gardening. Expanded expectations from Snow Leopard to Mac.

* platform/chromium/TestExpectations:

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

7 years agoRemove some unneeded cruft from WebCore.xcodeproj.
mrowe@apple.com [Thu, 23 Aug 2012 22:17:54 +0000 (22:17 +0000)]
Remove some unneeded cruft from WebCore.xcodeproj.

* WebCore.xcodeproj/project.pbxproj:

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

7 years ago[BlackBerry] Replace the three different rendering mechanisms for clearing the render...
commit-queue@webkit.org [Thu, 23 Aug 2012 21:53:37 +0000 (21:53 +0000)]
[BlackBerry] Replace the three different rendering mechanisms for clearing the render queue
https://bugs.webkit.org/show_bug.cgi?id=94837

Patch by Adam Treat <atreat@rim.com> on 2012-08-23
Reviewed by George Staikos.

PR 197738

Currently, we have three different mechanisms for clearing the render queue.
The first mechanism is render on idle.  Whenever the webkit thread becomes idle
(read: no more events in its queue) we render the next job in the render queue.
 This is the primary means we use for clearing the render queue.  However, this
mechanism has a flaw, it is such a low priority mechanism that sometimes the
queue grows so fast due to higher priority events adding rects to the queue
that this mechanism can't possibly keep up.  That is what leads to the second
mechanism: rendering right before a timer is fired when we discover that the
render queue is under pressure and rendering on idle can't keep up.  However,
there are still degenerate cases where even this mechanism does not allow us to
keep up.  That brings us to the third mechanism: rendering based on a timer
that is a catch-all.

The second and third mechanisms lead to very large render jobs as they try and
clear the queue faster when it comes under pressure.  These very large render
jobs end up keeping the webkit thread busy with a message that can take large
fractions of a second to resolve.

These three mechanisms were put in place when the backingstore had a different
overall design that was not truly asynchronous.  This patch replaces these
three mechanisms with a single one that uses the platform messaging classes to
full purpose - a uniquely coalescing message that has a higher priority level
than timers making sure the render queue can never come under pressure.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::BackingStorePrivate):
(WebKit):
(RenderJobMessage):
(BlackBerry::WebKit::RenderJobMessage::RenderJobMessage):
(BlackBerry::WebKit::BackingStorePrivate::dispatchRenderJob):
(BlackBerry::WebKit::BackingStorePrivate::renderJob):
(BlackBerry::WebKit::BackingStore::blitContents):
* Api/BackingStore.h:
* Api/BackingStore_p.h:
(BackingStorePrivate):
* Api/WebPage.cpp:
* Api/WebPage.h:
* WebKitSupport/RenderQueue.cpp:
(BlackBerry::WebKit::RenderQueue::reset):
(BlackBerry::WebKit::RenderQueue::addToRegularQueue):
(BlackBerry::WebKit::RenderQueue::addToScrollZoomQueue):
(BlackBerry::WebKit::RenderQueue::clear):
(BlackBerry::WebKit::RenderQueue::clearVisibleZoom):
(BlackBerry::WebKit::RenderQueue::render):

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

7 years ago[V8] OwnHandle is a bit of a misnomer
abarth@webkit.org [Thu, 23 Aug 2012 21:45:42 +0000 (21:45 +0000)]
[V8] OwnHandle is a bit of a misnomer
https://bugs.webkit.org/show_bug.cgi?id=94841

Reviewed by Eric Seidel.

You don't really own the handle in the same way that you own a pointer
with OwnPtr. This class is more correctly called ScopedPersistent
because it just forces you to balance New() and Dispose() calls.

* WebCore.gypi:
* bindings/v8/JavaScriptCallFrame.h:
(JavaScriptCallFrame):
* bindings/v8/OwnHandle.h: Removed.
* bindings/v8/ScheduledAction.h:
(ScheduledAction):
* bindings/v8/ScopedPersistent.h: Copied from Source/WebCore/bindings/v8/OwnHandle.h.
(ScopedPersistent):
(WebCore::ScopedPersistent::ScopedPersistent):
(WebCore::ScopedPersistent::~ScopedPersistent):
* bindings/v8/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::compileScript):
(WebCore::ScriptDebugServer::runScript):
* bindings/v8/ScriptDebugServer.h:
(ScriptDebugServer):
* bindings/v8/ScriptInstance.h:
(V8ScriptInstance):
* bindings/v8/V8PerContextData.h:
(V8PerContextData):

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

7 years agoProgressTracker never completes if iframe detached during parsing
japhet@chromium.org [Thu, 23 Aug 2012 21:26:07 +0000 (21:26 +0000)]
ProgressTracker never completes if iframe detached during parsing
https://bugs.webkit.org/show_bug.cgi?id=92272

Reviewed by Adam Barth.

Add a simple helper class to FrameLoader to ensure progressStarted/progressCompleted calls are matched,
and balance the calls when the Frame is detached.

No new tests, as this behavior has only been producing reliably by setting a breakpoint in a specific place.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::init):
(WebCore::FrameLoader::FrameProgressTracker::progressStarted):
(WebCore::FrameLoader::FrameProgressTracker::progressCompleted):
(WebCore::FrameLoader::FrameProgressTracker::~FrameProgressTracker):
(WebCore::FrameLoader::prepareForLoadStart):
(WebCore::FrameLoader::clearProvisionalLoad):
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
(WebCore::FrameLoader::detachFromParent):
* loader/FrameLoader.h:
(FrameProgressTracker):
(WebCore::FrameLoader::FrameProgressTracker::create):
(WebCore::FrameLoader::FrameProgressTracker::FrameProgressTracker):

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

7 years ago[chromium] Create sharedQuadState at same time as creating quads and give them to...
danakj@chromium.org [Thu, 23 Aug 2012 21:01:27 +0000 (21:01 +0000)]
[chromium] Create sharedQuadState at same time as creating quads and give them to the quadSink
https://bugs.webkit.org/show_bug.cgi?id=94752

Reviewed by Adrienne Walker.

Source/WebCore:

Previously, CCRenderPass would create a sharedQuadState for a layer,
and pass it in to the layer. Then the layer would point all its quads
at the sharedQuadState.

After this change, the layer creates its own sharedQuadState, gives it
to the RenderPass (via CCQuadSink), and points its quads at it.

This approach allows a layer to generate more than one sharedQuadState
with different quads pointing to different shared states. Also, this
will allow the layer representing a delegating renderer (via ubercomp)
to copy sharedQuadStates from the delegating renderer in order to
merge its quads into the RenderPass for the current renderer.

Covered by existing tests, no change in behaviour.

* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:
(WebCore::CCHeadsUpDisplayLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h:
(CCHeadsUpDisplayLayerImpl):
* platform/graphics/chromium/cc/CCIOSurfaceLayerImpl.cpp:
(WebCore::CCIOSurfaceLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCIOSurfaceLayerImpl.h:
(CCIOSurfaceLayerImpl):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::createSharedQuadState):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(CCLayerImpl):
(WebCore::CCLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
* platform/graphics/chromium/cc/CCQuadCuller.cpp:
(WebCore::CCQuadCuller::CCQuadCuller):
(WebCore::CCQuadCuller::append):
(WebCore::CCQuadCuller::useSharedQuadState):
(WebCore):
* platform/graphics/chromium/cc/CCQuadCuller.h:
(WebCore):
(CCQuadCuller):
* platform/graphics/chromium/cc/CCQuadSink.h:
(WebCore):
(CCQuadSink):
* platform/graphics/chromium/cc/CCRenderPass.cpp:
(WebCore::CCRenderPass::appendQuadsForLayer):
(WebCore::CCRenderPass::appendQuadsForRenderSurfaceLayer):
(WebCore::CCRenderPass::appendQuadsToFillScreen):
* platform/graphics/chromium/cc/CCRenderPass.h:
(WebCore):
(CCRenderPass):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::appendQuads):
* platform/graphics/chromium/cc/CCRenderSurface.h:
(CCRenderSurface):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
(WebCore::CCScrollbarLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
(CCScrollbarLayerImpl):
* platform/graphics/chromium/cc/CCSharedQuadState.cpp:
(WebCore::CCSharedQuadState::create):
(WebCore::CCSharedQuadState::CCSharedQuadState):
* platform/graphics/chromium/cc/CCSharedQuadState.h:
(CCSharedQuadState):
* platform/graphics/chromium/cc/CCSolidColorLayerImpl.cpp:
(WebCore::CCSolidColorLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCSolidColorLayerImpl.h:
(CCSolidColorLayerImpl):
* platform/graphics/chromium/cc/CCTextureLayerImpl.cpp:
(WebCore::CCTextureLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCTextureLayerImpl.h:
(CCTextureLayerImpl):
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
(WebCore::CCTiledLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCTiledLayerImpl.h:
(CCTiledLayerImpl):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::appendQuads):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
(CCVideoLayerImpl):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(WTF::EvictionTestLayerImpl::appendQuads):
* tests/CCQuadCullerTest.cpp:
* tests/CCRenderSurfaceTest.cpp:
* tests/CCSolidColorLayerImplTest.cpp:
(CCLayerTestCommon::TEST):
* tests/CCTiledLayerImplTest.cpp:
(CCLayerTestCommon::TEST):
(CCLayerTestCommon::getQuads):
(CCLayerTestCommon::coverageVisibleRectOnTileBoundaries):
(CCLayerTestCommon::coverageVisibleRectIntersectsTiles):
(CCLayerTestCommon::coverageVisibleRectIntersectsBounds):
* tests/MockCCQuadCuller.h:
(WebCore::MockCCQuadCuller::MockCCQuadCuller):
(MockCCQuadCuller):
(WebCore::MockCCQuadCuller::quadList):
(WebCore::MockCCQuadCuller::sharedQuadStateList):

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

7 years agoRoll out part of r126475 that breaks the build with older versions of Clang.
mrowe@apple.com [Thu, 23 Aug 2012 20:57:47 +0000 (20:57 +0000)]
Roll out part of r126475 that breaks the build with older versions of Clang.

* wtf/FastMalloc.cpp:

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

7 years agoNot reviewed - fixing input list for timeline inspector module.
pfeldman@chromium.org [Thu, 23 Aug 2012 20:56:54 +0000 (20:56 +0000)]
Not reviewed - fixing input list for timeline inspector module.
https://bugs.webkit.org/show_bug.cgi?id=94829

* WebKit.gyp:

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

7 years agoMake gtest build with the latest version of clang.
mrowe@apple.com [Thu, 23 Aug 2012 20:50:31 +0000 (20:50 +0000)]
Make gtest build with the latest version of clang.

Reviewed by Dan Bernstein.

* gtest/src/gtest-internal-inl.h:
(GTestFlagSaver): Remove an unused member.

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

7 years agoMake WebKit2 build with the latest version of clang.
mrowe@apple.com [Thu, 23 Aug 2012 20:50:27 +0000 (20:50 +0000)]
Make WebKit2 build with the latest version of clang.

Reviewed by Dan Bernstein.

* Configurations/Base.xcconfig: Ensure that operator new isn't exported as a weak external symbol.

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

7 years agoMake WebCore build with the latest version of clang.
mrowe@apple.com [Thu, 23 Aug 2012 20:50:23 +0000 (20:50 +0000)]
Make WebCore build with the latest version of clang.

Reviewed by Dan Bernstein.

* html/shadow/MediaControlRootElement.h: Remove m_textTrackDisplay as it is unused.
* platform/audio/mac/AudioFileReaderMac.cpp:
(WebCore::AudioFileReader::AudioFileReader): Remove m_filePath as it is unused.
* platform/audio/mac/AudioFileReaderMac.h:
(AudioFileReader): Ditto.
* platform/graphics/ImageSource.h:
(ImageSource): Guard m_alphaOption and m_gammaAndColorProfileOption with !USE(CG)
as they're unused on platforms using CG.
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
(MediaPlayerPrivateAVFoundationObjC): Remove m_player as it is unused.
* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::ImageSource::ImageSource): Don't initialize the m_alphaOption and
m_gammaAndColorProfileOption members since we never use them.
* platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate): Remove m_graphicsContext3D
as it is unused.

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

7 years agoMake JavaScriptCore build with the latest version of clang.
mrowe@apple.com [Thu, 23 Aug 2012 20:50:18 +0000 (20:50 +0000)]
Make JavaScriptCore build with the latest version of clang.

Reviewed by Dan Bernstein.

* heap/MachineStackMarker.cpp:
(JSC::MachineThreads::MachineThreads): The m_heap member is only used within
assertions, so guard its initialization with !ASSERT_DISABLED.
* heap/MachineStackMarker.h:
(MachineThreads): Ditto for its declaration.
* jit/JITStubCall.h:
(JSC::JITStubCall::JITStubCall): The m_returnType member is only used within
assertions or if we're using JSVALUE32_64, so guard its uses with the appropriate
(JITStubCall): Ditto.

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

7 years agoMake WTF build with the latest version of clang.
mrowe@apple.com [Thu, 23 Aug 2012 20:50:13 +0000 (20:50 +0000)]
Make WTF build with the latest version of clang.

Reviewed by Dan Bernstein.

* wtf/FastMalloc.cpp:
(WTF): Disable the -Wunused-private-field warning around the declaration of
TCMalloc_Central_FreeListPadded since the padding is intentionally unused.
(WTF::AdminRegionRecorder): Remove the unused m_reader member.
(WTF::FastMallocZone::enumerate): Don't pass in the RemoteMemoryReader since
it is no longer needed.

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

7 years ago[BlackBerry] Unify slow and fast in-region scrolling code paths
tonikitoo@webkit.org [Thu, 23 Aug 2012 20:39:11 +0000 (20:39 +0000)]
[BlackBerry] Unify slow and fast in-region scrolling code paths
https://bugs.webkit.org/show_bug.cgi?id=94834
PR #197662

Reviewed by Rob Buis.
Patch by Antonio Gomes <agomes@rim.com>
Internally reviewed by Arvid Nilsson.

In order to be able to remove a bunch of obsolete code from
InRegionScroller.cpp, we need to unify the codepaths for slow
and fast in-region scrolling.

This patch caches the root scrollable node of each scrollable block
in InRegionScrollableArea also for the non-composited-scrolling case now too
(analogly to the way we cache LayerWebKitThread for the composited scrolling case).

Now the client (libwebview) can dispatch an in-region scrolling with one single code path,
making use of a boolean (argh!) to inform if the scroll of the given
layer supports compositing or not. Later on, this boolean is used to casting the proper element.

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScroller::setScrollPositionWebKitThread):
(BlackBerry::WebKit::InRegionScrollerPrivate::setScrollPositionWebKitThread):
* Api/InRegionScroller.h:
* Api/InRegionScroller_p.h:
(InRegionScrollerPrivate):
* WebKitSupport/InRegionScrollableArea.cpp:
(WebKit):
(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
(BlackBerry::WebKit::enclosingLayerNode):
* WebKitSupport/InRegionScrollableArea.h:
(WebCore):
(InRegionScrollableArea):

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