WebKit-https.git
7 years ago[V8] add contextForWorld helper function to ScriptController
commit-queue@webkit.org [Tue, 27 Nov 2012 11:52:49 +0000 (11:52 +0000)]
[V8] add contextForWorld helper function to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=103376

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

Reducing some commonly occuring code with an inline function.

No new tests. No change in functionality.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::contextForWorld):
(WebCore):
(WebCore::ScriptController::currentWorldContext):
(WebCore::ScriptController::mainWorldContext):
* bindings/v8/ScriptController.h:
(ScriptController):

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

7 years ago[X11] Allow empty plugin name and description during scan plugin
commit-queue@webkit.org [Tue, 27 Nov 2012 11:41:46 +0000 (11:41 +0000)]
[X11] Allow empty plugin name and description during scan plugin
https://bugs.webkit.org/show_bug.cgi?id=103234

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-11-27
Reviewed by Simon Hausmann.

Empty entries should be allowed when split the output string of scan plugin
because the plugin name and the description can be empty string.

* UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
(WebKit::PluginProcessProxy::scanPlugin):
* UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
(WebKit::PluginProcessProxy::scanPlugin):

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

7 years agoUnreviewed, rolling out r135819.
ossy@webkit.org [Tue, 27 Nov 2012 11:31:45 +0000 (11:31 +0000)]
Unreviewed, rolling out r135819.
http://trac.webkit.org/changeset/135819
https://bugs.webkit.org/show_bug.cgi?id=103388

It broke many tests on Qt and EFL WK2 platforms (Requested by
Ossy on #webkit).

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

* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):
* Shared/WebPageCreationParameters.h:
(WebPageCreationParameters):
* UIProcess/API/C/WKPage.cpp:
(WKPageCopyRelatedPages):
* UIProcess/API/C/WKPagePrivate.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::creationParameters):
* UIProcess/WebPageProxy.h:
(WebPageProxy):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::setIsInWindow):
* WebProcess/WebPage/WebPage.h:
(WebPage):
* WebProcess/WebPage/WebPage.messages.in:

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

7 years ago[WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
commit-queue@webkit.org [Tue, 27 Nov 2012 11:20:35 +0000 (11:20 +0000)]
[WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=103008

Patch by Kyungjin Kim <gen.kim@samsung.com> on 2012-11-27
Reviewed by Gyuyoung Kim.

Fix API names in WKPreferences from 2d to 2D.

* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetAccelerated2DCanvasEnabled):
(WKPreferencesGetAccelerated2DCanvasEnabled):
* UIProcess/API/C/WKPreferencesPrivate.h:

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

7 years ago[Qt] Implement the mimetype icon methods
allan.jensen@digia.com [Tue, 27 Nov 2012 11:15:38 +0000 (11:15 +0000)]
[Qt] Implement the mimetype icon methods
https://bugs.webkit.org/show_bug.cgi?id=103260

Reviewed by Simon Hausmann.

* platform/graphics/Icon.h:
(Icon):
* platform/graphics/qt/IconQt.cpp:
(WebCore::Icon::createIconForFiles):
(WebCore::Icon::paint):

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

7 years agoIncorrect rect-based hit-test result when hit-test region includes culled inlines
allan.jensen@digia.com [Tue, 27 Nov 2012 11:03:23 +0000 (11:03 +0000)]
Incorrect rect-based hit-test result when hit-test region includes culled inlines
https://bugs.webkit.org/show_bug.cgi?id=88376

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-09-17
Reviewed by Dave Hyatt.

Source/WebCore:

Move the handling of culled inlines from HitTestResult::addNodeToRectBasedTestResult to
InlineFlowBox::nodeAtPoint. This makes it possible to fix a number of bugs with how
culled inlines were handled. They are now checked after all their children, and may
terminate area-based hit-testing if they contain the whole area.

Tests: fast/dom/nodesFromRect/nodesFromRect-culled-inlines.html
       fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak.html

* rendering/HitTestResult.cpp:
(WebCore::HitTestLocation::HitTestLocation):
(WebCore::HitTestResult::addNodeToRectBasedTestResult):
* rendering/HitTestResult.h:
(HitTestLocation):
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::nodeAtPoint):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::hitTestCulledInline):
* rendering/RenderInline.h:
(RenderInline):

LayoutTests:

Renames the existing nodesFromRect-culled-inlines.html test to nodesFromRect-inline-image.html,
because it did not test any culled inlines anymore, and replace it with two new tests that does
test culled inlines.

* fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak-expected.txt: Copied from LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt.
* fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak.html: Added.
* fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt:
* fast/dom/nodesFromRect/nodesFromRect-culled-inlines.html:
* fast/dom/nodesFromRect/nodesFromRect-inline-image-expected.txt: Added.
* fast/dom/nodesFromRect/nodesFromRect-inline-image.html: Added.
* fast/dom/nodesFromRect/resources/nodesFromRect.js:
(checkRect):
(nodesFromRectAsString):

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

7 years agoReduce the number of pixel tests for date/time input types
tkent@chromium.org [Tue, 27 Nov 2012 10:37:03 +0000 (10:37 +0000)]
Reduce the number of pixel tests for date/time input types
https://bugs.webkit.org/show_bug.cgi?id=103373

Reviewed by Kentaro Hara.

Merge fast/forms/<type>/<type>-appearance-style.html and
<type>-appearance-disabled-readonly.html into
<type>-appearance-basic.html, and add tests for font-weight, height, and
-webkit-appearance:none.

* fast/forms/date/date-appearance-basic-expected.txt:
* fast/forms/date/date-appearance-basic.html:
* fast/forms/date/date-appearance-style-expected.txt: Removed.
* fast/forms/date/date-appearance-style.html: Removed.
* fast/forms/month/month-appearance-basic-expected.txt:
* fast/forms/month/month-appearance-basic.html:
* fast/forms/month/month-appearance-style-expected.txt: Removed.
* fast/forms/month/month-appearance-style.html: Removed.
* fast/forms/time/time-appearance-basic-expected.txt:
* fast/forms/time/time-appearance-basic.html:
* fast/forms/time/time-appearance-disabled-readonly-expected.txt: Removed.
* fast/forms/time/time-appearance-disabled-readonly.html: Removed.
* fast/forms/time/time-appearance-style-expected.txt: Removed.
* fast/forms/time/time-appearance-style.html: Removed.
* fast/forms/week/week-appearance-basic-expected.txt:
* fast/forms/week/week-appearance-basic.html:
* fast/forms/week/week-appearance-style-expected.txt: Removed.
* fast/forms/week/week-appearance-style.html: Removed.
* platform/chromium-linux/fast/forms/date/date-appearance-style-expected.png: Removed.
* platform/chromium-linux/fast/forms/month/month-appearance-style-expected.png: Removed.
* platform/chromium-linux/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
* platform/chromium-linux/fast/forms/time/time-appearance-style-expected.png: Removed.
* platform/chromium-linux/fast/forms/week/week-appearance-style-expected.png: Removed.
* platform/chromium-mac-lion/fast/forms/date/date-appearance-style-expected.png: Removed.
* platform/chromium-mac-lion/fast/forms/month/month-appearance-style-expected.png: Removed.
* platform/chromium-mac-lion/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
* platform/chromium-mac-lion/fast/forms/time/time-appearance-style-expected.png: Removed.
* platform/chromium-mac-lion/fast/forms/week/week-appearance-style-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-style-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/forms/month/month-appearance-style-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/forms/time/time-appearance-style-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/forms/week/week-appearance-style-expected.png: Removed.
* platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
* platform/chromium-mac/fast/forms/date/date-appearance-style-expected.png: Removed.
* platform/chromium-mac/fast/forms/month/month-appearance-basic-expected.png:
* platform/chromium-mac/fast/forms/month/month-appearance-style-expected.png: Removed.
* platform/chromium-mac/fast/forms/time/time-appearance-basic-expected.png:
* platform/chromium-mac/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
* platform/chromium-mac/fast/forms/time/time-appearance-style-expected.png: Removed.
* platform/chromium-mac/fast/forms/week/week-appearance-basic-expected.png:
* platform/chromium-mac/fast/forms/week/week-appearance-style-expected.png: Removed.
* platform/chromium-win/fast/forms/date/date-appearance-style-expected.png: Removed.
* platform/chromium-win/fast/forms/month/month-appearance-style-expected.png: Removed.
* platform/chromium-win/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
* platform/chromium-win/fast/forms/time/time-appearance-style-expected.png: Removed.
* platform/chromium-win/fast/forms/week/week-appearance-style-expected.png: Removed.
* platform/chromium/TestExpectations:

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

7 years agoREGRESSION(134887) [Qt][EFL][WK2] Repaint counter not working
kenneth@webkit.org [Tue, 27 Nov 2012 10:27:16 +0000 (10:27 +0000)]
REGRESSION(134887) [Qt][EFL][WK2] Repaint counter not working
https://bugs.webkit.org/show_bug.cgi?id=103261

Reviewed by Noam Rosenthal.

Fixed regression introduced in 134887, which introduced the
updateContentsNoSwizzle method and called it directly from
the repaint counter.

This method obviously needs to bind the texture.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::updateContentsNoSwizzle):

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

7 years agoA followup of r135836
tkent@chromium.org [Tue, 27 Nov 2012 10:05:44 +0000 (10:05 +0000)]
A followup of r135836
https://bugs.webkit.org/show_bug.cgi?id=102861

I landed an old revision of the patch in r135836.

* fast/forms/ValidityState-001.html:
* fast/forms/number/number-validity-badinput-expected.txt:
* fast/forms/number/number-validity-badinput.html:
* fast/forms/resources/multiple-fields-validity-badinput.js:
(testBadInput):

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

7 years agoUnreviewed, rolling out r135786.
ossy@webkit.org [Tue, 27 Nov 2012 09:40:53 +0000 (09:40 +0000)]
Unreviewed, rolling out r135786.
http://trac.webkit.org/changeset/135786
https://bugs.webkit.org/show_bug.cgi?id=103379

It made 3 plugin tests timeout on several platforms (Requested
by Ossy on #webkit).

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

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* loader/FrameLoadRequest.cpp: Removed.
* loader/FrameLoadRequest.h:
(WebCore::FrameLoadRequest::FrameLoadRequest):
(FrameLoadRequest):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::load):
* loader/FrameLoader.h:
(FrameLoader):
* page/DragController.cpp:
(WebCore::DragController::performDrag):
* plugins/PluginView.cpp:
(WebCore::PluginView::performRequest):

Source/WebKit/blackberry:

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPagePrivate::loadString):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):

Source/WebKit/chromium:

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::loadRequest):
(WebKit::WebFrameImpl::loadData):
* src/WebSharedWorkerImpl.cpp:
(WebKit::WebSharedWorkerImpl::initializeLoader):

Source/WebKit/efl:

* ewk/ewk_frame.cpp:
(ewk_frame_uri_set):
(_ewk_frame_contents_set_internal):

Source/WebKit/gtk:

* webkit/webkitwebframe.cpp:
(webkit_web_frame_load_uri):
(webkit_web_frame_load_data):
(webkit_web_frame_load_request):

Source/WebKit/mac:

* Plugins/WebPluginController.mm:
* WebView/WebFrame.mm:
(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):

Source/WebKit/qt:

* Api/qwebframe.cpp:
(QWebFrame::setHtml):
(QWebFrame::setContent):
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::setAlternateHtml):
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::callErrorPageExtension):
* WebCoreSupport/QWebFrameAdapter.cpp:
(QWebFrameAdapter::load):

Source/WebKit/win:

* WebFrame.cpp:
(WebFrame::loadRequest):
(WebFrame::loadData):

Source/WebKit/wince:

* WebView.cpp:
(WebView::load):

Source/WebKit/wx:

* WebFrame.cpp:
(WebKit::WebFrame::SetPageSource):

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::performFrameLoadURLRequest):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadData):
(WebKit::WebPage::linkClicked):

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

7 years agoImplement ValidityState::badInput
tkent@chromium.org [Tue, 27 Nov 2012 09:09:15 +0000 (09:09 +0000)]
Implement ValidityState::badInput
https://bugs.webkit.org/show_bug.cgi?id=102861

Reviewed by Hajime Morita.

Source/WebCore:

Add ValidityState::badInput, add hasBadInput, which always returns
false, to FormAssociatedElement, HTMLInputElement, and InputType.

For NumberInputType, we had hasUnacceptableValue, which was a hack to
make an input element match to :invalid if the element had non-number
strings. We don't need the hack any more because badInput affects :invalid
style. hasUnacceptableValue is re-used for hasBadInput implementation.
We cleared invalid numbers when elements lost focus to tell users that
the element had invalid numbers. We don't need this behavior because the
interactive validation tells it.

For date/time input types, we should make an input badInput when the
input has empty value but its sub-fields have values. It covers both of
partial input cases such as 12/--/2012 and invalid dates such as
02/31/2012.

For other types, ValidityState::badInput always returns false.

This patch doesn't contain tests for badInput validation messages. They
will be added later.

Tests: fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput.html
       fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput.html
       fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput.html
       fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput.html
       fast/forms/number/number-validity-badinput.html
       fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput.html
       fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput.html

* html/ValidityState.idl: Add badInput IDL attribute.
* html/ValidityState.h:
(ValidityState): Add badInput.
* html/ValidityState.cpp:
(WebCore::ValidityState::badInput):
Added. Calls FormAssociatedElement::hasBadInput.

* html/FormAssociatedElement.h:
(FormAssociatedElement): Add hasBadInput.
* html/FormAssociatedElement.cpp:
(WebCore::FormAssociatedElement::hasBadInput):
Added. It always returns false.
(WebCore::FormAssociatedElement::valid): Takes account of hasBadInput().

* html/HTMLInputElement.h:
(HTMLInputElement):
Remove hasUnacceptableValue, and add hasBadInput override.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::hasBadInput):
Added. Delegate to InputType::hasBadInput.
(WebCore): Remove hasUnacceptableValue.

* html/InputType.h:
(InputType): Add hasBadInput and badInputText, and remove
hasUnacceptableValue.
* html/InputType.cpp:
(WebCore::InputType::hasBadInput): Added. Returns false.
(WebCore::InputType::badInputText):
Added. This function should not be called because hasBadInput always
returns false.
(WebCore::InputType::validationMessage):
Supports badInput. This returns badInputText if hasBadInput is true.

* html/NumberInputType.h:
(NumberInputType): Add hasBadInput and badInputTest. Remove
handleBlurEvent and hasUnacceptableValue.
* html/NumberInputType.cpp:
Remove handleBlurEvent, which cleared invalid number strings.
(WebCore::NumberInputType::hasBadInput):
Added. We don't need to check existence of a renderer. The standard form
validation feature doesn't care of it.
(WebCore::NumberInputType::badInputText): Returns
validationMessageBadInputForNumberText defined in LocalizedStrings.h.
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOneSelector):
Remove a hack for hasUnacceptableValue. isValidFormControlElement takes
account of badInput.
* dom/Element.h: Remove hasUnacceptableValue.

* html/BaseMultipleFieldsDateAndTimeInputType.h:
(BaseMultipleFieldsDateAndTimeInputType): Add hasBadInput and badInputText.
* html/BaseMultipleFieldsDateAndTimeInputType.cpp:
(WebCore::BaseMultipleFieldsDateAndTimeInputType::badInputText):
Returns validationMessageBadInputForDateTimeText defined in LocalizedStrings.h.
(WebCore::BaseMultipleFieldsDateAndTimeInputType::hasBadInput):
Added.
(WebCore::BaseMultipleFieldsDateAndTimeInputType::setValue):
Add setNeedsValidityCheck call. It is needed because
updateInnerTextValue can modify subfields empty state.

* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::subtreeHasChanged): Update a comment.
* platform/LocalizedStrings.h:
(WebCore): Add validationMessageBadInputForNumberText and
validationMessageBadInputForDateTimeText.
* platform/LocalizedStrings.cpp:
(WebCore::validationMessageBadInputForNumberText):
Added a placeholder implementation. This should be fixed later.
* platform/blackberry/LocalizedStringsBlackBerry.cpp:
(WebCore::validationMessageBadInputForNumberText): Ditto.
* platform/efl/LocalizedStringsEfl.cpp:
(WebCore::validationMessageBadInputForNumberText): Ditto.
* platform/qt/LocalizedStringsQt.cpp:
(WebCore::validationMessageBadInputForNumberText): Ditto.

Source/WebKit/chromium:

* src/LocalizedStrings.cpp:
Add placeholder implementations for new localized string functions.
We'll update them in another patch.
(WebCore::validationMessageBadInputForNumberText):
(WebCore::validationMessageBadInputForDateTimeText):

LayoutTests:

* fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput-expected.txt: Added.
* fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput.html: Added.
* fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput-expected.txt: Added.
* fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput.html: Added.
* fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput-expected.txt: Added.
* fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput.html: Added.
* fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput-expected.txt: Added.
* fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput.html: Added.
* fast/forms/number/number-unacceptable-style-expected.txt: Removed.
* fast/forms/number/number-validity-badinput-expected.txt: Added.
* fast/forms/number/number-validity-badinput.html: Renamed from LayoutTests/fast/forms/number/number-unacceptable-style.html.
* fast/forms/resources/multiple-fields-validity-badinput.js: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput.html: Added.
* fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput-expected.txt: Added.
* fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput.html: Added.

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

7 years ago[Chromium] Unreviewed, mark svg/animations/mpath-remove-from-dependents-on-delete...
apavlov@chromium.org [Tue, 27 Nov 2012 08:58:47 +0000 (08:58 +0000)]
[Chromium] Unreviewed, mark svg/animations/mpath-remove-from-dependents-on-delete-crash.html as flaky.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 27 Nov 2012 08:52:45 +0000 (08:52 +0000)]
Unreviewed GTK gardening.

Cleaning up expectations, removing those that cover tests
that are now passing.

* platform/gtk/TestExpectations:

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

7 years ago[Refactoring] NodeFlags::IsShadowRootFlag should be Node::IsDocumentFragmentFlag
morrita@google.com [Tue, 27 Nov 2012 08:49:23 +0000 (08:49 +0000)]
[Refactoring] NodeFlags::IsShadowRootFlag should be Node::IsDocumentFragmentFlag
https://bugs.webkit.org/show_bug.cgi?id=103370

Reviewed by Kentaro Hara.

This chagne introduces Node::IsDocumentFragmentFlag so that we can
have fast Node::isDocumentFragment().

Note that Node::isShadowRoot() can become slightly slower when it
returns true, but that is minor in terms of the number of calls at runtime.

No new tests. No behavior change.

* dom/DocumentFragment.cpp:
(WebCore::DocumentFragment::create):
* dom/DocumentFragment.h:
* dom/Node.cpp:
(WebCore::Node::documentFragmentIsShadowRoot):
(WebCore):
* dom/Node.h:
(Node):
(WebCore::Node::isDocumentFragment):
(WebCore::Node::isShadowRoot):
(WebCore::Node::parentNode):
(WebCore::Node::parentNodeGuaranteedHostFree):
* dom/ShadowRoot.h:

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

7 years ago[style] Add a style-check for enum-member names
commit-queue@webkit.org [Tue, 27 Nov 2012 08:38:54 +0000 (08:38 +0000)]
[style] Add a style-check for enum-member names
https://bugs.webkit.org/show_bug.cgi?id=103157

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-11-27
Reviewed by Daniel Bates.

* Scripts/webkitpy/style/checkers/cpp.py:
(_EnumState):
(_EnumState.__init__):
(_EnumState.process_clean_line):
(check_enum_casing):
(check_style):
(process_line):
(_process_lines):
(CppChecker):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(NoNonVirtualDestructorsTest.test_enum_casing):
(NoNonVirtualDestructorsTest.test_internal_braces.Foo):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 27 Nov 2012 08:24:30 +0000 (08:24 +0000)]
Unreviewed GTK gardening.

Adding timeout expectations for three plugins tests timing out after r135786.

* platform/gtk/TestExpectations:

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

7 years agoCoordinated Graphics: Remove the maskTarget member of CoordinatedGraphicsLayer.
commit-queue@webkit.org [Tue, 27 Nov 2012 08:21:08 +0000 (08:21 +0000)]
Coordinated Graphics: Remove the maskTarget member of CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=103297

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-27
Reviewed by Noam Rosenthal.

Remove the maskTarget member of CoordinatedGraphicsLayer, which is not used.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayer):

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

7 years ago:read-only selector should match to date/time input types
tkent@chromium.org [Tue, 27 Nov 2012 07:53:18 +0000 (07:53 +0000)]
:read-only selector should match to date/time input types
https://bugs.webkit.org/show_bug.cgi?id=103350

Reviewed by Kentaro Hara.

Source/WebCore:

We supported :read-only and :read-write only for text form controls;
i.e. <textarea> and text-field <input>. According to [1], we should
support them for date/time types. So, this patch removes
isTextFormControl check in SelectorChecker, and just relies on
shouldMatchRead{Only,Write}Selector virtual functions.

Tests: Update fast/forms/*/*-appearance-pseudo-classes.html.

[1] http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#input-type-attr-summary

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOneSelector):
Remove isFormControlElement check and isTextFormControl check.

* html/HTMLFormControlElement.cpp:
Remove shouldMatchRead{Only,Write}Selector functions. We don't need
common implementations any more.
* html/HTMLFormControlElement.h: Ditto.

* html/HTMLTextAreaElement.h:
(HTMLTextAreaElement): Add shouldMatchRead{Only,Write}Selector overrides.
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::shouldMatchReadOnlySelector): Added.
(WebCore::HTMLTextAreaElement::shouldMatchReadWriteSelector): Added.

* html/HTMLInputElement.h:
(HTMLInputElement): Add shouldMatchRead{Only,Write}Selector overrides.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::shouldMatchReadOnlySelector):
Added. This checks InputType::supportsReadOnly and readOnly.
(WebCore::HTMLInputElement::shouldMatchReadWriteSelector): Ditto.

* html/InputType.h:
(InputType): Add supportsReadOnly.
* html/InputType.cpp:
(WebCore::InputType::supportsReadOnly): Added. Returns false by default.

* html/BaseDateAndTimeInputType.h:
(BaseDateAndTimeInputType): Add supportsReadOnly.
* html/BaseDateAndTimeInputType.cpp:
(WebCore::BaseDateAndTimeInputType::supportsReadOnly): Added. Returns true.
* html/TextFieldInputType.h:
(TextFieldInputType): Add supportsReadOnly.
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::supportsReadOnly): Added. Returns true.

LayoutTests:

The text color becomes yellow as specified for :read-only in
*-appearance-pseudo-classes.html

* platform/chromium-mac/fast/forms/date/date-appearance-pseudo-classes-expected.png:
* platform/chromium-mac/fast/forms/month/month-appearance-pseudo-classes-expected.png:
* platform/chromium-mac/fast/forms/time/time-appearance-pseudo-classes-expected.png:
* platform/chromium-mac/fast/forms/week/week-appearance-pseudo-classes-expected.png:
* platform/chromium/TestExpectations:

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

7 years ago[Chromium] fastMalloc has an extra branch on Windows
abarth@webkit.org [Tue, 27 Nov 2012 07:34:15 +0000 (07:34 +0000)]
[Chromium] fastMalloc has an extra branch on Windows
https://bugs.webkit.org/show_bug.cgi?id=103027

Reviewed by Eric Seidel.

There's no need to override the new/delete operators on non-Mac
platform because:

1) We use the system malloc anyway.
2) We've modified the system malloc to crash in out-of-memory conditions.

This patch removes a branch (and a call) from malloc, which will
hopefully improve performance. I haven't measured the performance
characteristics of this patch, but I will look at the graphs closely
when landing.

* wtf/FastAllocBase.h:
* wtf/Platform.h:

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

7 years agoUnreviewed, rolling out r135822.
commit-queue@webkit.org [Tue, 27 Nov 2012 07:22:35 +0000 (07:22 +0000)]
Unreviewed, rolling out r135822.
http://trac.webkit.org/changeset/135822
https://bugs.webkit.org/show_bug.cgi?id=103369

Undo the revert of r135818, since that change does not affect
code used by Chromium (Requested by apavlov on #webkit).

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

Source/WebCore:

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setContentsVisible):

Source/WebKit2:

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setContentsVisible):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):

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

7 years ago[Qt] new fast/backgrounds/background-opaque-images-over-color.html fails since r135629
junov@google.com [Tue, 27 Nov 2012 07:20:00 +0000 (07:20 +0000)]
[Qt] new fast/backgrounds/background-opaque-images-over-color.html fails since r135629
https://bugs.webkit.org/show_bug.cgi?id=103227

Reviewed by Simon Hausmann.

Unskipping test now that baseline has been fixed.

* platform/qt/TestExpectations:

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

7 years ago[GTK] Fix build error on GTK due to r135749
commit-queue@webkit.org [Tue, 27 Nov 2012 07:09:22 +0000 (07:09 +0000)]
[GTK] Fix build error on GTK due to r135749
https://bugs.webkit.org/show_bug.cgi?id=103365

Patch by Michael Pruett <michael@68k.org> on 2012-11-26
Reviewed by Dean Jackson.

In r135749, many files which were already included
in webcore_built_sources were erroneously added to
webcore_svg_built_sources in GNUmakefile.list.am.

* GNUmakefile.list.am:

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

7 years ago[EFL][jhbuild] Disable unnecessary options of elementary module
commit-queue@webkit.org [Tue, 27 Nov 2012 07:02:51 +0000 (07:02 +0000)]
[EFL][jhbuild] Disable unnecessary options of elementary module
https://bugs.webkit.org/show_bug.cgi?id=103360

Patch by Ryuan Choi <ryuan.choi@gmail.com> on 2012-11-26
Reviewed by Gyuyoung Kim.

When jhbuild configures elementary, unnecessary options may be enabled by
user installed modules and it causes build break.

* efl/jhbuild.modules:
Added --disable-emap --disable-ethumb --disable-eweather to elementary.

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

7 years agoUnreviewed, rolling out r135818.
commit-queue@webkit.org [Tue, 27 Nov 2012 06:58:16 +0000 (06:58 +0000)]
Unreviewed, rolling out r135818.
http://trac.webkit.org/changeset/135818
https://bugs.webkit.org/show_bug.cgi?id=103368

platform/chromium/virtual/threaded/compositing/visibility
/visibility-simple-webgl-layer.html crash on Mountain Lion
(Requested by apavlov on #webkit).

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

Source/WebCore:

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setContentsVisible):

Source/WebKit2:

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setContentsVisible):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):

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

7 years ago[chromium mac] Layout Test touchadjustment/touch-links-longpress.html is failing
noel.gordon@gmail.com [Tue, 27 Nov 2012 06:45:48 +0000 (06:45 +0000)]
[chromium mac] Layout Test touchadjustment/touch-links-longpress.html is failing
https://bugs.webkit.org/show_bug.cgi?id=103363

Unreviewed test expectations update.

* platform/chromium/TestExpectations: Add failing expection for Mac.

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

7 years ago<rdar://problem/11931191> Entering Tab View after a bunch of YouTube pages were opene...
mitz@apple.com [Tue, 27 Nov 2012 06:34:35 +0000 (06:34 +0000)]
<rdar://problem/11931191> Entering Tab View after a bunch of YouTube pages were opened in background tabs makes all of them start playing simultaneously
https://bugs.webkit.org/show_bug.cgi?id=103358

Reviewed by Adele Peterson.

To fix this, this patch adds WKPageSetMayStartMediaWhenInWindow(), which allows the client to
prevent media from starting automatically when the view is put in a window.

* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode): Encode mayStartMediaWhenInWindow.
(WebKit::WebPageCreationParameters::decode): Decode mayStartMediaWhenInWindow.
* Shared/WebPageCreationParameters.h:
(WebPageCreationParameters): Added boolean member mayStartMediaWhenInWindow.
* UIProcess/API/C/WKPage.cpp:
(WKPageSetMayStartMediaWhenInWindow): Added. Calls through to WebPageProxy.
* UIProcess/API/C/WKPagePrivate.h: Declared WKPageSetMayStartMediaWhenInWindow.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy): Added initializiation of m_mayStartMediaWhenInWindow
to true, the value matching the current behavior.
(WebKit::WebPageProxy::setMayStartMediaWhenInWindow): Added. Updates
m_mayStartMediaWhenInWindow and sends a message to the Web process to do the same.
(WebKit::WebPageProxy::creationParameters): Changed to set mayStartMediaWhenInWindow in the
process creation parameters.
* UIProcess/WebPageProxy.h:
(WebPageProxy): Declared setMayStartMediaWhenInWindow() and added member variable
m_mayStartMediaWhenInWindow.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage): Initialized m_mayStartMediaWhenInWindow from the creation
parameters.
(WebKit::WebPage::setIsInWindow): Made starting of media upon being added to a window
conditional on m_mayStartMediaWhenInWindow.
(WebKit::WebPage::setMayStartMediaWhenInWindow): Added. Sets m_mayStartMediaWhenInWindow. If
already in a window when changing from false to true, starts m_setCanStartMediaTimer.
* WebProcess/WebPage/WebPage.h:
(WebPage): Declared setMayStartMediaWhenInWindow() and added member variable m_mayStartMediaWhenInWindow.
* WebProcess/WebPage/WebPage.messages.in: Added SetMayStartMediaWhenInWindow.

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

7 years agoCoordinated Graphics: Set visibility to a mask layer in GraphicsLayer::setContentsVis...
commit-queue@webkit.org [Tue, 27 Nov 2012 06:15:45 +0000 (06:15 +0000)]
Coordinated Graphics: Set visibility to a mask layer in GraphicsLayer::setContentsVisible().
https://bugs.webkit.org/show_bug.cgi?id=103297

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-26
Reviewed by Noam Rosenthal.

GraphicsLayerTextureMapper and CoordinatedGraphicsLayer set the visibility of a
mask layer in setContentsVisible() and setMaskLayer() like setting a size.
This patch is needed because RenderLayerBacking does not set the visibility to a
mask layer like the size.

This patch does not change user experience because an invisible layer is not
rendered although the mask layer is rendered. In that sense, it is an
optimization patch.

Source/WebCore:

No new tests. It is an optimization patch.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setContentsVisible):

Source/WebKit2:

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setContentsVisible):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):

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

7 years ago[V8] Rename EXCEPTION_BLOCK() macros
haraken@chromium.org [Tue, 27 Nov 2012 05:33:05 +0000 (05:33 +0000)]
[V8] Rename EXCEPTION_BLOCK() macros
https://bugs.webkit.org/show_bug.cgi?id=103352

Reviewed by Adam Barth.

Since V8Parameter was renamed to V8StringResource,
we rename macros that use V8Parameter.

EXCEPTION_BLOCK() => V8TRYCATCH()
STRING_TO_V8PARAMETER_EXCEPTION_BLOCK() => V8TRYCATCH_FOR_V8STRINGRESOURCE()
STRING_TO_V8PARAMETER_EXCEPTION_BLOCK_VOID() => V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID()

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateParametersCheck):
(GenerateEventConstructorCallback):
(ConvertToV8StringResource):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::Float64ArrayV8Internal::fooCallback):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageCallback):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionCallback):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::constructorCallback):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::itemCallback):
(WebCore::TestEventTargetV8Internal::dispatchEventCallback):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::constructorCallback):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::TestMediaQueryListListenerV8Internal::methodCallback):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructorCallback):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::staticStringAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::voidMethodWithArgsCallback):
(WebCore::TestObjV8Internal::longMethodWithArgsCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodWithSequenceArgCallback):
(WebCore::TestObjV8Internal::methodReturningSequenceCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjV8Internal::idbKeyCallback):
(WebCore::TestObjV8Internal::optionsObjectCallback):
(WebCore::TestObjV8Internal::methodWithOptionalArgCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringCallback):
(WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgCallback):
(WebCore::TestObjV8Internal::overloadedMethod1Callback):
(WebCore::TestObjV8Internal::overloadedMethod2Callback):
(WebCore::TestObjV8Internal::overloadedMethod3Callback):
(WebCore::TestObjV8Internal::overloadedMethod4Callback):
(WebCore::TestObjV8Internal::overloadedMethod6Callback):
(WebCore::TestObjV8Internal::overloadedMethod7Callback):
(WebCore::TestObjV8Internal::overloadedMethod8Callback):
(WebCore::TestObjV8Internal::overloadedMethod9Callback):
(WebCore::TestObjV8Internal::overloadedMethod10Callback):
(WebCore::TestObjV8Internal::overloadedMethod11Callback):
(WebCore::TestObjV8Internal::classMethodWithOptionalCallback):
(WebCore::TestObjV8Internal::overloadedMethod12Callback):
(WebCore::TestObjV8Internal::classMethodWithClampCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod1Callback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod2Callback):
(WebCore::TestObjV8Internal::enabledPerContextMethod1Callback):
(WebCore::TestObjV8Internal::enabledPerContextMethod2Callback):
(WebCore::TestObjV8Internal::stringArrayFunctionCallback):
(WebCore::TestObjV8Internal::convert1Callback):
(WebCore::TestObjV8Internal::convert2Callback):
(WebCore::TestObjV8Internal::convert4Callback):
(WebCore::TestObjV8Internal::convert5Callback):
(WebCore::TestObjV8Internal::strictFunctionCallback):
(WebCore::TestObjV8Internal::variadicStringMethodCallback):
(WebCore::TestObjV8Internal::variadicDoubleMethodCallback):
(WebCore::TestObjV8Internal::variadicNodeMethodCallback):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
(WebCore::V8TestOverloadedConstructors::constructor1Callback):
(WebCore::V8TestOverloadedConstructors::constructor2Callback):
(WebCore::V8TestOverloadedConstructors::constructor3Callback):
(WebCore::V8TestOverloadedConstructors::constructor4Callback):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):
* bindings/v8/V8Binding.h:
(WebCore::toV8Sequence):
* bindings/v8/V8BindingMacros.h:
* bindings/v8/custom/V8BlobCustom.cpp:
(WebCore::V8Blob::constructorCallbackCustom):
* bindings/v8/custom/V8ConsoleCustom.cpp:
(WebCore::V8Console::profileCallback):
(WebCore::V8Console::profileEndCallback):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::handlePostMessageCallback):
* bindings/v8/custom/V8DataViewCustom.cpp:
(WebCore::V8DataView::getInt8Callback):
(WebCore::V8DataView::getUint8Callback):
(WebCore::V8DataView::setInt8Callback):
(WebCore::V8DataView::setUint8Callback):
* bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
(WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
* bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):
* bindings/v8/custom/V8DocumentCustom.cpp:
(WebCore::V8Document::evaluateCallback):
* bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
(WebCore::V8HTMLOptionsCollection::addCallback):
* bindings/v8/custom/V8HistoryCustom.cpp:
(WebCore::V8History::pushStateCallback):
(WebCore::V8History::replaceStateCallback):
* bindings/v8/custom/V8IntentCustom.cpp:
(WebCore::V8Intent::constructorCallbackCustom):
* bindings/v8/custom/V8SQLTransactionCustom.cpp:
(WebCore::V8SQLTransaction::executeSqlCallback):
* bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
(WebCore::V8SQLTransactionSync::executeSqlCallback):
* bindings/v8/custom/V8SVGLengthCustom.cpp:
(WebCore::V8SVGLength::convertToSpecifiedUnitsCallback):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::V8WebGLRenderingContext::getExtensionCallback):
* bindings/v8/custom/V8WorkerContextCustom.cpp:
(WebCore::V8WorkerContext::importScriptsCallback):

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

7 years agoNode: Move AreSVGAttributesValidFlag to ElementAttributeData.
akling@apple.com [Tue, 27 Nov 2012 05:13:40 +0000 (05:13 +0000)]
Node: Move AreSVGAttributesValidFlag to ElementAttributeData.
<http://webkit.org/b/103349>

Reviewed by Anders Carlsson.

Moved AreSVGAttributesValidFlag to ElementAttributeData and change it to use "dirty" semantics.
This frees up a bit on Node, and we will always have ElementAttributeData if the animated
attributes are dirty anyway.

* dom/Element.cpp:
(WebCore::Element::getAttribute):
* dom/Element.h:
(WebCore::Element::updateInvalidAttributes):
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::ElementAttributeData):
* dom/ElementAttributeData.h:
(WebCore::ElementAttributeData::ElementAttributeData):
(ElementAttributeData):
* dom/Node.h:
(Node):
* svg/SVGElement.cpp:
(WebCore::SVGElement::updateAnimatedSVGAttribute):
* svg/SVGElement.h:
(WebCore::SVGElement::invalidateSVGAttributes):

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

7 years agoUnreviewed, rolling out r135798.
haraken@chromium.org [Tue, 27 Nov 2012 05:06:53 +0000 (05:06 +0000)]
Unreviewed, rolling out r135798.
http://trac.webkit.org/changeset/135798
https://bugs.webkit.org/show_bug.cgi?id=103354

Broke the chrome mac build (Requested by noel_ on #webkit).

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

Source/WebCore:

* platform/graphics/chromium/DeferredImageDecoder.cpp:
(WebCore::DeferredImageDecoder::~DeferredImageDecoder):
(WebCore::DeferredImageDecoder::createResizedLazyDecodingBitmap):
(WebCore::DeferredImageDecoder::frameBufferAtIndex):
(WebCore::DeferredImageDecoder::createLazyDecodingBitmap):
* platform/graphics/chromium/DeferredImageDecoder.h:
(DeferredImageDecoder):
* platform/graphics/chromium/ImageDecodingStore.cpp:
(WebCore::ImageDecodingStore::instanceOnMainThread):
(WebCore::ImageDecodingStore::initializeOnMainThread):
(WebCore::ImageDecodingStore::shutdown):
(WebCore::ImageDecodingStore::calledOnValidThread):
(WebCore::ImageDecodingStore::lookupFrameCache):
(WebCore::ImageDecodingStore::deleteFrameCache):
* platform/graphics/chromium/ImageDecodingStore.h:
(WebCore):
(ImageDecodingStore):
* platform/graphics/chromium/ImageFrameGenerator.cpp:
(WebCore::ImageFrameGenerator::ImageFrameGenerator):
(WebCore::ImageFrameGenerator::~ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setData):
(WebCore::ImageFrameGenerator::decodeAndScale):
* platform/graphics/chromium/ImageFrameGenerator.h:
(WebCore):
(WebCore::ImageFrameGenerator::create):
(ImageFrameGenerator):
* platform/graphics/chromium/LazyDecodingPixelRef.cpp:
(WebCore::LazyDecodingPixelRef::LazyDecodingPixelRef):
(WebCore::LazyDecodingPixelRef::onLockPixels):
(WebCore::LazyDecodingPixelRef::onUnlockPixels):
* platform/graphics/chromium/LazyDecodingPixelRef.h:
(WebCore):
(LazyDecodingPixelRef):
* platform/graphics/chromium/ScaledImageFragment.cpp:
(WebCore::ScaledImageFragment::ScaledImageFragment):
(WebCore::ScaledImageFragment::isEqual):
(WebCore):
* platform/graphics/chromium/ScaledImageFragment.h:
(WebCore):
(WebCore::ScaledImageFragment::create):
(ScaledImageFragment):
* platform/graphics/chromium/SkSizeHash.h: Removed.

Source/WebKit/chromium:

* WebKit.gypi:
* src/WebKit.cpp:
(WebKit::initializeWithoutV8):
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setDeferredImageDecodingEnabled):
* tests/DeferredImageDecoderTest.cpp:
(WebCore::DeferredImageDecoderTest::SetUp):
(WebCore::DeferredImageDecoderTest::decoderBeingDestroyed):
* tests/ImageFrameGeneratorTest.cpp: Removed.
* tests/MockImageDecoder.h:
(MockImageDecoderClient):
(WebCore::MockImageDecoder::frameBufferAtIndex):

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

7 years ago[TexMap] GraphicsLayerTextureMapper::setSize() sets the size of a mask layer.
commit-queue@webkit.org [Tue, 27 Nov 2012 04:41:06 +0000 (04:41 +0000)]
[TexMap] GraphicsLayerTextureMapper::setSize() sets the size of a mask layer.
https://bugs.webkit.org/show_bug.cgi?id=103297

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-26
Reviewed by Noam Rosenthal.

Currently, CoordinatedGraphicsLayer sets the size of a mask layer in setSize()
and setMaksLayer(). GraphicsLayerTextureMapper follows the behavior. If so we
don't have to check the size of the mask layer in TextureMapperLayer::flushCompositingState().

No new tests. Covered by existing tests.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setSize):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::flushCompositingState):

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

7 years ago[EFL] CMake shows ENABLE_3D_RENDERING and ENABLE_WEBGL is still OFF when AC is enabled
commit-queue@webkit.org [Tue, 27 Nov 2012 04:37:01 +0000 (04:37 +0000)]
[EFL] CMake shows ENABLE_3D_RENDERING and ENABLE_WEBGL is still OFF when AC is enabled
https://bugs.webkit.org/show_bug.cgi?id=100829

Patch by Halton Huo <halton.huo@intel.com> on 2012-11-26
Reviewed by Gyuyoung Kim.

In WebKitFeatures.cmake, only use ${_name} for condition to print
a option as ON will prevent the overridden ones in OptionsXXX.cmake,
should use ${_WEBKIT_AVAILABLE_OPTIONS_INITALVALUE_${_name}} instead.

* Source/cmake/OptionsEfl.cmake: Turn on ENABLE_3D_RENDERING and
ENABLE_WEBGL
* Source/cmake/WebKitFeatures.cmake: Use
${_WEBKIT_AVAILABLE_OPTIONS_INITALVALUE_${_name}} to as value of
a feature is enabled. Adjust options in lexicographical order.

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

7 years ago[V8] Remove V8Parameter::object()
haraken@chromium.org [Tue, 27 Nov 2012 04:30:26 +0000 (04:30 +0000)]
[V8] Remove V8Parameter::object()
https://bugs.webkit.org/show_bug.cgi?id=103340

Reviewed by Adam Barth.

V8Parameter can use m_v8Object directly.

No tests. No change in behavior.

* bindings/v8/V8StringResource.h:
(WebCore::::prepare):

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

7 years ago[V8] Rename V8Parameter to V8StringResource
haraken@chromium.org [Tue, 27 Nov 2012 04:28:53 +0000 (04:28 +0000)]
[V8] Rename V8Parameter to V8StringResource
https://bugs.webkit.org/show_bug.cgi?id=103341

Reviewed by Adam Barth.

We can rename V8Parameter to V8StringResource. In a follow-up patch,
I will rename macros around V8Parameter.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateParametersCheck):
(GenerateEventConstructorCallback):
(GetNativeTypeFromSignature):
(GetNativeType):
(ConvertToV8StringResource):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::TestActiveDOMObjectV8Internal::postMessageCallback):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionCallback):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::constructorCallback):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::constructorCallback):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructorCallback):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::staticStringAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::voidMethodWithArgsCallback):
(WebCore::TestObjV8Internal::longMethodWithArgsCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringCallback):
(WebCore::TestObjV8Internal::overloadedMethod1Callback):
(WebCore::TestObjV8Internal::overloadedMethod3Callback):
(WebCore::TestObjV8Internal::overloadedMethod11Callback):
(WebCore::TestObjV8Internal::overloadedMethod12Callback):
(WebCore::TestObjV8Internal::strictFunctionCallback):
(WebCore::TestObjV8Internal::variadicStringMethodCallback):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
(WebCore::V8TestOverloadedConstructors::constructor4Callback):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):
* bindings/v8/V8StringResource.h:
(WebCore::V8StringResource::V8StringResource):
(WebCore::::prepare):
* bindings/v8/custom/V8ConsoleCustom.cpp:
(WebCore::V8Console::profileCallback):
(WebCore::V8Console::profileEndCallback):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::handlePostMessageCallback):
* bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
(WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
* bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):
* bindings/v8/custom/V8HistoryCustom.cpp:
(WebCore::V8History::pushStateCallback):
(WebCore::V8History::replaceStateCallback):
* bindings/v8/custom/V8IntentCustom.cpp:
(WebCore::V8Intent::constructorCallbackCustom):
* bindings/v8/custom/V8SQLTransactionCustom.cpp:
(WebCore::V8SQLTransaction::executeSqlCallback):
* bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
(WebCore::V8SQLTransactionSync::executeSqlCallback):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::V8WebGLRenderingContext::getExtensionCallback):

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

7 years agoHTMLOptionElement: Remove two unused members.
akling@apple.com [Tue, 27 Nov 2012 04:13:25 +0000 (04:13 +0000)]
HTMLOptionElement: Remove two unused members.
<http://webkit.org/b/103337>

Reviewed by Kent Tamura.

Remove two unused members from HTMLOptionElement, m_value and m_label.
40kB progression on Membuster3.

* html/HTMLOptionElement.h:
(HTMLOptionElement):

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

7 years ago[Chromium] Shared graphics context should only pushGroupMarker() once
senorblanco@chromium.org [Tue, 27 Nov 2012 04:09:46 +0000 (04:09 +0000)]
[Chromium] Shared graphics context should only pushGroupMarker() once
https://bugs.webkit.org/show_bug.cgi?id=103082

Reviewed by James Robinson.

GraphicsContext3D's pushGroupMarkerEXT() is being called every time
an ImageBuffer is created, leading to unlimited memory growth, since
they share a common GraphicsContext3D.  It should be called only once,
on context creation.

Tested by manually checking the memory usage in Chrome's TaskManager.
(Sorry, I can't think of a way to test this automatically.)

* platform/graphics/gpu/SharedGraphicsContext3D.cpp:
(WebCore::SharedGraphicsContext3DImpl::getOrCreateContext):
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::createAcceleratedCanvas):

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

7 years ago[chromium] Touchscreen fling handling
aelias@chromium.org [Tue, 27 Nov 2012 04:08:51 +0000 (04:08 +0000)]
[chromium] Touchscreen fling handling
https://bugs.webkit.org/show_bug.cgi?id=103278

Reviewed by James Robinson.

The fling logic for touchpad can fall through to bad
performance in several ways. This patch introduces an alternate
path for touchscreen fling that simplifies it as follows:

- Stop generating wheel events, to prevent unnecessary scrollBegin hit
tests and to avoid falling back to slow path if a wheel handler is
registered.

- Drop the event on ScrollStatusIgnored. There's no real reason to
send the event to the WebKit thread here.

- Don't call transferActiveWheelFlingAnimation. This type of
transition shouldn't be needed with touchscreen flings.

* src/WebCompositorInputHandlerImpl.cpp:
(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):
(WebKit::WebCompositorInputHandlerImpl::animate):
(WebKit::WebCompositorInputHandlerImpl::cancelCurrentFling):
(WebKit::WebCompositorInputHandlerImpl::scrollBy):
* src/WebCompositorInputHandlerImpl.h:

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

7 years agoUpdate Chromium test expectation for test LayoutTests/fast/js/string-replacement...
dbates@webkit.org [Tue, 27 Nov 2012 04:03:53 +0000 (04:03 +0000)]
Update Chromium test expectation for test LayoutTests/fast/js/string-replacement-outofmemory.html
See <https://bugs.webkit.org/show_bug.cgi?id=103348> for more details.

* platform/chromium/TestExpectations:

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

7 years ago[V8] Remove WorkerContextExecutionProxy.{h,cpp}
haraken@chromium.org [Tue, 27 Nov 2012 03:57:07 +0000 (03:57 +0000)]
[V8] Remove WorkerContextExecutionProxy.{h,cpp}
https://bugs.webkit.org/show_bug.cgi?id=103325

Reviewed by Adam Barth.

Now WorkerContextExecutionProxy.{h,cpp} are empty.

No tests. No change in behavior.

Source/WebCore:

* UseV8.cmake:
* WebCore.gypi:
* bindings/v8/ScheduledAction.cpp:
* bindings/v8/V8AbstractEventListener.cpp:
* bindings/v8/V8DOMWrapper.cpp:
* bindings/v8/V8WorkerContextEventListener.h:
(WebCore):
* bindings/v8/WorkerContextExecutionProxy.cpp: Removed.
* bindings/v8/WorkerContextExecutionProxy.h: Removed.
* bindings/v8/WorkerScriptController.cpp:
* bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
* bindings/v8/custom/V8MessageChannelCustom.cpp:
* bindings/v8/custom/V8MessagePortCustom.cpp:
* bindings/v8/custom/V8WorkerCustom.cpp:
* bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

Source/WebKit/chromium:

* src/WebKit.cpp:
* src/WebWorkerClientImpl.cpp:

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

7 years agoGrapheme cluster functions can be simplified for 8 bit Strings
msaboff@apple.com [Tue, 27 Nov 2012 03:51:30 +0000 (03:51 +0000)]
Grapheme cluster functions can be simplified for 8 bit Strings
https://bugs.webkit.org/show_bug.cgi?id=102996

Reviewed by Alexey Proskuryakov.

For 8 bit strings, check for the uncommon CR-LF by looking for any CR.  If there aren't any CR characters,
the number of Extended Grapheme Clusters is equal to the string length.  If we need to handle Tailored
Graheme Clusters, then this will need to change.

No new tests. No change in functionality.

* platform/text/TextBreakIterator.cpp:
(WebCore::numGraphemeClusters):
(WebCore::numCharactersInGraphemeClusters):

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

7 years agoCheck for empty perContextData while creating NP V8 Object.
commit-queue@webkit.org [Tue, 27 Nov 2012 03:40:59 +0000 (03:40 +0000)]
Check for empty perContextData while creating NP V8 Object.
https://bugs.webkit.org/show_bug.cgi?id=98448

Patch by Istiaque Ahmed <lazyboy@chromium.org> on 2012-11-26
Reviewed by Adam Barth.

Fixes crash in npCreateV8ScriptObject(), if NP Invoke is called from a document
that is no longer displayed in frame (isCurrentlyDisplayedInFrame() ==
false), we have empty perContextData and this results in invalid memory access.

Source/WebCore:

Test: platform/chromium/plugins/empty-per-context-data.html

* bindings/v8/NPV8Object.cpp:
(WebCore::npCreateV8ScriptObject):

LayoutTests:

* platform/chromium/plugins/empty-per-context-data-expected.txt: Added.
* platform/chromium/plugins/empty-per-context-data.html: Added.
* platform/chromium/plugins/resources/script-container.html: Added.

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

7 years ago[WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
commit-queue@webkit.org [Tue, 27 Nov 2012 03:04:42 +0000 (03:04 +0000)]
[WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=103008

Patch by Kyungjin Kim <gen.kim@samsung.com> on 2012-11-26
Reviewed by Gyuyoung Kim.

Add setting APIs for accelerated 2d canvas in WebKit2.

* Shared/WebPreferencesStore.h:
(WebKit):
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetAccelerated2dCanvasEnabled):
(WKPreferencesGetAccelerated2dCanvasEnabled):
* UIProcess/API/C/WKPreferencesPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

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

7 years agoHTML/XML parser helper unconsumeCharacters() can push back 8 bit text as 16 bit text
msaboff@apple.com [Tue, 27 Nov 2012 02:59:59 +0000 (02:59 +0000)]
HTML/XML parser helper unconsumeCharacters() can push back 8 bit text as 16 bit text
https://bugs.webkit.org/show_bug.cgi?id=103317

Reviewed by Oliver Hunt.

Changed to use the String directly from the StringBuilder instead of creating our own.
Used toStringPreserveCapacity() in case the caller may want to add to the StringBuilder
even though current callers don't.

No new tests. No change in functionality.

* xml/parser/CharacterReferenceParserInlines.h:
(WebCore::unconsumeCharacters):

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

7 years ago[chromium] Remove deprecated and unused WebGraphicsContext3D compositor binding calls
commit-queue@webkit.org [Tue, 27 Nov 2012 02:25:46 +0000 (02:25 +0000)]
[chromium] Remove deprecated and unused WebGraphicsContext3D compositor binding calls
https://bugs.webkit.org/show_bug.cgi?id=103322

Patch by James Robinson <jamesr@chromium.org> on 2012-11-26
Reviewed by Adam Barth.

Source/Platform:

These have been uncalled for a while.

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

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
* src/WebViewImpl.h:
(WebViewImpl):

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

7 years agoSubstitute "allSeparators8Bit" for "allSeperators8Bit" in JSC::jsSpliceSubstringsWith...
dbates@webkit.org [Tue, 27 Nov 2012 02:22:53 +0000 (02:22 +0000)]
Substitute "allSeparators8Bit" for "allSeperators8Bit" in JSC::jsSpliceSubstringsWithSeparators()
<https://bugs.webkit.org/show_bug.cgi?id=103303>

Reviewed by Simon Fraser.

Fix misspelled word, "Seperators" [sic], in a local variable name in JSC::jsSpliceSubstringsWithSeparators().

* runtime/StringPrototype.cpp:
(JSC::jsSpliceSubstringsWithSeparators):

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

7 years agoPNG decode performance: avoid using frame buffer.setRGBA(x,y)
noel.gordon@gmail.com [Tue, 27 Nov 2012 02:10:17 +0000 (02:10 +0000)]
PNG decode performance: avoid using frame buffer.setRGBA(x,y)
https://bugs.webkit.org/show_bug.cgi?id=103216

Reviewed by Brent Fulgham.

Writing decoded row pixels to the frame buffer with buffer.setRGBA(x,y) is slow compared
to writing direct to the frame buffer address. Use buffer.getAddr() to obtain the output
pixel row address, write the decoded row pixels to that address.

No new tests. Covered by many existing tests.

* platform/image-decoders/ImageDecoder.h:
(WebCore::ImageFrame::setRGBA): Make routine setRGBA(PixelData* dest, ...) public. Test
m_premultiplyAlpha once to minimize code branching in this routine.
* platform/image-decoders/png/PNGImageDecoder.cpp:
(WebCore::PNGImageDecoder::rowAvailable): Write decoded row pixels to the frame buffer
using the pixel address form: buffer.setRGBA(address++, ...).

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

7 years ago[chromium] Implement full-featured image cache
hclam@chromium.org [Tue, 27 Nov 2012 02:06:30 +0000 (02:06 +0000)]
[chromium] Implement full-featured image cache
https://bugs.webkit.org/show_bug.cgi?id=99784

Reviewed by James Robinson.

Source/WebCore:

Implement a thread-safe image cache to be used with deferred image
decoding. Image cache can now be accessed on any thread.

The patch implements the following logic:
1. Mutex to protect all cache operations.
2. Cache indexing using key (ImageFrameGenerator*, SkISize scaledSize)
3. Cache lookup.
4. Cache insertion.
5. Generation of cache entry by scaling full size image.
6. Generation of cache entries by decoding and scaling.

Classes involved:

ImageDecodingStore

Responsible for owning cache entries and indexing. Pruning and memory
management will be added later.

ImageFrameGenerator

Responsible for generating new cache enties and insert them into
ImageDecodingStore.

LazyDecodingPixelRef

Responsible for cache lookup and lazy generation of cache entries
using ImageFrameGenerator. There is a mutex to protect concurrent
lock operations.

These items are not implemented in this patch:
1. Cache pruning.
2. Setting cache memory limit.
3. Cache deletion.
4. Caching incomplete images and ImageDecoder.

Unit tests added in ImageFrameGeneratorTest.cpp.
Layout tests are under platform/chromium/virtual/fast/images.

* platform/graphics/chromium/DeferredImageDecoder.cpp:
(WebCore::DeferredImageDecoder::~DeferredImageDecoder):
(WebCore::DeferredImageDecoder::createResizedLazyDecodingBitmap):
(WebCore::DeferredImageDecoder::setEnabled):
(WebCore):
(WebCore::DeferredImageDecoder::frameBufferAtIndex):
(WebCore::DeferredImageDecoder::createLazyDecodingBitmap):
* platform/graphics/chromium/DeferredImageDecoder.h:
(DeferredImageDecoder):
* platform/graphics/chromium/ImageDecodingStore.cpp:
(WebCore::ImageDecodingStore::instance):
(WebCore::ImageDecodingStore::initializeOnce):
(WebCore::ImageDecodingStore::shutdown):
(WebCore::ImageDecodingStore::lockCompleteCache):
Lookup complete cache entry using hash key, increment use count.
(WebCore::ImageDecodingStore::lockIncompleteCache): TODO.
(WebCore::ImageDecodingStore::unlockCache):
Lookup cache entry using hash key, decrement use count.
(WebCore):
(WebCore::ImageDecodingStore::insertAndLockCache):
Insert new cache entry and increment use count.
(WebCore::ImageDecodingStore::prune): TODO.
* platform/graphics/chromium/ImageDecodingStore.h:
(WebCore):
(ImageDecodingStore):
(WebCore::ImageDecodingStore::CacheEntry::create):
(WebCore::ImageDecodingStore::CacheEntry::createAndUse):
(CacheEntry):
(WebCore::ImageDecodingStore::CacheEntry::CacheEntry):
(WebCore::ImageDecodingStore::CacheEntry::~CacheEntry):
* platform/graphics/chromium/ImageFrameGenerator.cpp:
(WebCore::ImageFrameGenerator::ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setData):
(WebCore::ImageFrameGenerator::decodeAndScale):
Method for creating new cache entries. This is protected by a mutex
to prevent concurrent operations. Which means only one thread can
generate new cache entries for a set of encoded data.
(WebCore):
(WebCore::ImageFrameGenerator::tryToLockCache):
Tries to lookup a cache entry.
(WebCore::ImageFrameGenerator::tryToScale):
Tries to lookup a full size cache entry and generate a scaled version.
(WebCore::ImageFrameGenerator::tryToDecodeAndScale):
Tries to decode and scale.
* platform/graphics/chromium/ImageFrameGenerator.h:
(WebCore):
(ImageDecoderFactory):
(WebCore::ImageFrameGenerator::create):
(ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setImageDecoderFactoryForTesting):
* platform/graphics/chromium/LazyDecodingPixelRef.cpp:
(WebCore::LazyDecodingPixelRef::LazyDecodingPixelRef):
(WebCore::LazyDecodingPixelRef::onLockPixels):
(WebCore::LazyDecodingPixelRef::onUnlockPixels):
* platform/graphics/chromium/LazyDecodingPixelRef.h:
(WebCore):
(LazyDecodingPixelRef):
* platform/graphics/chromium/ScaledImageFragment.cpp:
(WebCore::ScaledImageFragment::ScaledImageFragment):
* platform/graphics/chromium/ScaledImageFragment.h:
(WebCore):
(WebCore::ScaledImageFragment::create):
(ScaledImageFragment):
(WebCore::ScaledImageFragment::scaledSize):
* platform/graphics/chromium/SkSizeHash.h: Added.
(WTF):

Source/WebKit/chromium:

Added ImageFrameGeneratorTest to test cache logic and generation
of new cache entries.

ImageFrameGeneratorTest.cacheHit
Test that a complete cached entry is reused.

ImageFrameGeneratorTest.cacheMissWithScale
Cache miss for a scaled image but cache hit on a full size image.
Scaled image is created from cached full size image.

ImageFrameGeneratorTest.cacheMissWithDecodeAndScale
Cache miss for both scaled image and full size image.

ImageFrameGeneratorTest.cacheMissWithIncompleteDecode
Test the logic for handling incomplete cache objects.

* WebKit.gypi:
* src/WebKit.cpp:
(WebKit::initializeWithoutV8):
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setDeferredImageDecodingEnabled):
* tests/DeferredImageDecoderTest.cpp:
(WebCore::DeferredImageDecoderTest::SetUp):
(WebCore::DeferredImageDecoderTest::decoderBeingDestroyed):
(WebCore::DeferredImageDecoderTest::frameBufferRequested):
(DeferredImageDecoderTest):
(WebCore::DeferredImageDecoderTest::frameStatus):
* tests/ImageFrameGeneratorTest.cpp: Added.
(WebCore):
(WebCore::fullSize):
(WebCore::scaledSize):
(MockImageDecoderFactory):
(WebCore::MockImageDecoderFactory::create):
(WebCore::MockImageDecoderFactory::MockImageDecoderFactory):
(ImageFrameGeneratorTest):
(WebCore::ImageFrameGeneratorTest::SetUp):
(WebCore::ImageFrameGeneratorTest::TearDown):
(WebCore::ImageFrameGeneratorTest::decoderBeingDestroyed):
(WebCore::ImageFrameGeneratorTest::frameBufferRequested):
(WebCore::ImageFrameGeneratorTest::frameStatus):
(WebCore::ImageFrameGeneratorTest::createCompleteImage):
(WebCore::ImageFrameGeneratorTest::setFrameStatus):
(WebCore::TEST_F):
* tests/MockImageDecoder.h:
(MockImageDecoderClient):
(WebCore::MockImageDecoder::frameBufferAtIndex):

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

7 years agoEnsure that plugins are initialized before using handleEditingCommand/isEditingComman...
timothy_horton@apple.com [Tue, 27 Nov 2012 02:01:49 +0000 (02:01 +0000)]
Ensure that plugins are initialized before using handleEditingCommand/isEditingCommandEnabled/shouldAllowScripting
https://bugs.webkit.org/show_bug.cgi?id=103288

Reviewed by Dan Bernstein.

Other PluginView methods that use m_plugin null-check m_plugin and check
that the plugin has finished initializing before using it. These three
should do the same thing.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::handleEditingCommand):
(WebKit::PluginView::isEditingCommandEnabled):
(WebKit::PluginView::shouldAllowScripting):

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

7 years agoPDFPlugin: Subframe PDF context menus are in the wrong place
timothy_horton@apple.com [Tue, 27 Nov 2012 02:01:06 +0000 (02:01 +0000)]
PDFPlugin: Subframe PDF context menus are in the wrong place
https://bugs.webkit.org/show_bug.cgi?id=103284
<rdar://problem/12727972>

Reviewed by Dan Bernstein.

Event position is in window coordinates, not content coordinates.
Since we have no windowToScreen(), use windowToContents and contentsToScreen
to get to screen coordinate space, which WKPopupContextMenu wants.

* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::handleContextMenuEvent):

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

7 years agoPDFPlugin: Ctrl-click opens a link in a PDF in addition to context menu
timothy_horton@apple.com [Tue, 27 Nov 2012 02:00:26 +0000 (02:00 +0000)]
PDFPlugin: Ctrl-click opens a link in a PDF in addition to context menu
https://bugs.webkit.org/show_bug.cgi?id=103282
<rdar://problem/12710892>

Reviewed by Dan Bernstein.

Don't send standard mouse events to PDFKit if a click will also show/hide the context menu.

* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::handleMouseEvent):

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

7 years agoJavaScript fails to handle String.replace() with large replacement string
dbates@webkit.org [Tue, 27 Nov 2012 02:00:23 +0000 (02:00 +0000)]
JavaScript fails to handle String.replace() with large replacement string
https://bugs.webkit.org/show_bug.cgi?id=102956
<rdar://problem/12738012>

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Fix an issue where we didn't check for overflow when computing the length
of the result of String.replace() with a large replacement string.

* runtime/StringPrototype.cpp:
(JSC::jsSpliceSubstringsWithSeparators):

LayoutTests:

Add test to ensure that we handle string replacement with a large replacement string.

* fast/js/script-tests/string-replacement-outofmemory.js: Added.
(createStringWithRepeatedChar):
* fast/js/string-replacement-outofmemory-expected.txt: Added.
* fast/js/string-replacement-outofmemory.html: Added.

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

7 years agoNode: Remove IsSynchronizingSVGAttributesFlag.
akling@apple.com [Tue, 27 Nov 2012 01:52:14 +0000 (01:52 +0000)]
Node: Remove IsSynchronizingSVGAttributesFlag.
<http://webkit.org/b/103328>

Reviewed by Antti Koivisto.

Animated SVG attributes used to be synchronized by using DOM API which could use unwanted re-entrancy
via callbacks below Element::attributeChanged(). The "is synchronizing SVG attributes" flag was used
to protect against such re-entrancy.

These days, lazy attributes are synchronized using Element::setSynchronizedLazyAttribute() to avoid
issues like this. The flag does nothing, so we can just remove it.

* dom/Node.h:
(WebCore):
* svg/SVGElement.cpp:
(WebCore::SVGElement::attributeChanged):
(WebCore::SVGElement::updateAnimatedSVGAttribute):

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

7 years ago[V8] Refactor WorkerScriptController
haraken@chromium.org [Tue, 27 Nov 2012 01:50:21 +0000 (01:50 +0000)]
[V8] Refactor WorkerScriptController
https://bugs.webkit.org/show_bug.cgi?id=103330

Reviewed by Adam Barth.

r135703 just moved methods from WorkerContextExecutionProxy
to WorkerScriptController. We should refactor the methods as a follow-up.

No tests. No change in behavior.

* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::~WorkerScriptController):
(WebCore::WorkerScriptController::disposeContext):
(WebCore::WorkerScriptController::initializeContextIfNeeded):
(WebCore::WorkerScriptController::evaluate):
(WebCore::WorkerScriptController::disableEval):
* bindings/v8/WorkerScriptController.h:
(WorkerScriptController):

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

7 years ago[EFL] Unreviewed build fix after r135767 without Tiled Backing Store
commit-queue@webkit.org [Tue, 27 Nov 2012 01:35:08 +0000 (01:35 +0000)]
[EFL] Unreviewed build fix after r135767 without Tiled Backing Store
https://bugs.webkit.org/show_bug.cgi?id=103320

Unreviewed build fix.

Patch by Ryuan Choi <ryuan.choi@gmail.com> on 2012-11-26

* WebProcess/Plugins/Plugin.cpp:
* WebProcess/Plugins/Plugin.h:
(WebCore):

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

7 years agoDataLog to a file should work if there are multiple processes using WTF
fpizlo@apple.com [Tue, 27 Nov 2012 01:09:31 +0000 (01:09 +0000)]
DataLog to a file should work if there are multiple processes using WTF
https://bugs.webkit.org/show_bug.cgi?id=103323

Reviewed by Mark Hahnenberg.

Whereas before DataLog would open a file with the name you specified, now it'll open a file with the
name plus the PID appended to it. So if you are dealing with multiple processes running with DataLog
to a file enabled, you'll get multiple separate log files.

* wtf/DataLog.cpp:
(WTF::initializeLogFileOnce):

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

7 years agoLongPress and LongTap gestures should start drag/drop and open context menu respectively.
commit-queue@webkit.org [Tue, 27 Nov 2012 00:56:30 +0000 (00:56 +0000)]
LongPress and LongTap gestures should start drag/drop and open context menu respectively.
https://bugs.webkit.org/show_bug.cgi?id=101545

Patch by Varun Jain <varunjain@chromium.org> on 2012-11-26
Reviewed by Antonio Gomes.

For LongPress, we simulate drag by sending a mouse down and mouse drag
events. If a drag is not started (because maybe there is no draggable
element), then we show context menu instead (which is the current
behavior for LongPress). For LongTap, we use the existing functions that
LongPress uses to summon the context menu. LongPress initiated drag and
drop can be enabled/disabled by the platform using the Setting
touchDragDropEnabled which is disabled by default.

Source/WebCore:

Tests: fast/events/touch/gesture/context-menu-on-long-tap.html
       fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag.html

* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleMouseDraggedEvent):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::handleGestureLongPress):
(WebCore::EventHandler::handleGestureLongTap):
(WebCore):
(WebCore::EventHandler::handleGestureForTextSelectionOrContextMenu):
(WebCore::EventHandler::adjustGesturePosition):
(WebCore::EventHandler::handleDrag):
* page/EventHandler.h:
(EventHandler):
* page/Settings.in:

Source/WebKit/chromium:

* public/WebSettings.h:
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setTouchDragDropEnabled):
(WebKit):
* src/WebSettingsImpl.h:
(WebSettingsImpl):

Tools:

* DumpRenderTree/chromium/TestRunner/src/EventSender.cpp:
(WebTestRunner):
(WebTestRunner::EventSender::EventSender):
(WebTestRunner::EventSender::gestureLongTap):
(WebTestRunner::EventSender::gestureEvent):
* DumpRenderTree/chromium/TestRunner/src/EventSender.h:
(EventSender):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::setTouchDragDropEnabled):
(WebTestRunner):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):

LayoutTests:

* fast/events/touch/gesture/context-menu-on-long-tap.html: Added.
* fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag.html: Added.
* platform/chromium/fast/events/touch/gesture/context-menu-on-long-tap-expected.txt: Added.
* platform/chromium/fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag-expected.txt: Added.
* touchadjustment/touch-links-longpress-expected.txt:
* touchadjustment/touch-links-longpress.html:

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

7 years agoRenderStyle: Move 'list-style-image' to rare inherited data.
akling@apple.com [Tue, 27 Nov 2012 00:41:39 +0000 (00:41 +0000)]
RenderStyle: Move 'list-style-image' to rare inherited data.
<http://webkit.org/b/103300>

Reviewed by Antti Koivisto.

list-style-image is not nearly common enough to merit a spot in StyleInheritedData.
Move it to StyleRareInheritedData.

134kB progression on Membuster3.

* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff):
(WebCore::RenderStyle::listStyleImage):
(WebCore::RenderStyle::setListStyleImage):
* rendering/style/StyleInheritedData.cpp:
(WebCore::StyleInheritedData::StyleInheritedData):
(WebCore::StyleInheritedData::operator==):
* rendering/style/StyleInheritedData.h:
(StyleInheritedData):
* rendering/style/StyleRareInheritedData.h:
* rendering/style/StyleRareInheritedData.cpp:
(SameSizeAsStyleRareInheritedData):
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):

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

7 years agoAdd hasTouchEventhandlersAt to WebView API
commit-queue@webkit.org [Tue, 27 Nov 2012 00:39:53 +0000 (00:39 +0000)]
Add hasTouchEventhandlersAt to WebView API
https://bugs.webkit.org/show_bug.cgi?id=102541

Patch by Yusuf Ozuysal <yusufo@google.com> on 2012-11-26
Reviewed by James Robinson.

Adds hasTouchEventHandlersAt to WebWidget API to check for touch event handlers at a
given point. This will be used to distinguish between events not processed by
touch event handlers and event not hitting any touch event handlers. Both are
returning the same ACK message currently. Default implementation returns true to
continue the same behavior as we currently have.

* public/WebWidget.h:
(WebWidget):
(WebKit::WebWidget::hasTouchEventHandlersAt):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::hasTouchEventHandlersAt):
(WebKit):
* src/WebViewImpl.h:
(WebViewImpl):

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

7 years agoConsolidate FrameLoader::load() into one function taking a FrameLoadRequest
simonjam@chromium.org [Tue, 27 Nov 2012 00:17:49 +0000 (00:17 +0000)]
Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
https://bugs.webkit.org/show_bug.cgi?id=102151

Reviewed by Adam Barth.

Source/WebCore:

There's a FIXME that we have too many FrameLoader::load*() functions. This patch consolidates 3 into 1.
There are still a few more load functions that will be consolidated later. Using FrameLoadRequest as
the interface into FrameLoader will also provide a place to pass in the initiator. Finally, this matches
the refactoring done with CachedResourceRequest and CachedResourceLoader.

No new tests. No change in functionality.

* WebCore.exp.in:
* loader/FrameLoadRequest.h:
(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::setLockHistory): These are former arguments to load().
(WebCore::FrameLoadRequest::lockHistory): Ditto.
(FrameLoadRequest):
(WebCore::FrameLoadRequest::setShouldCheckNewWindowPolicy): Ditto.
(WebCore::FrameLoadRequest::shouldCheckNewWindowPolicy): Ditto.
(WebCore::FrameLoadRequest::substituteData): Ditto.
(WebCore::FrameLoadRequest::setSubstituteData): Ditto.
(WebCore::FrameLoadRequest::hasSubstituteData): Ditto.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::load): No change in behavior, just merged it all into one function.
* loader/FrameLoader.h:
(FrameLoader):
* page/DragController.cpp:
(WebCore::DragController::performDrag):

Source/WebKit/blackberry:

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPagePrivate::loadString):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):

Source/WebKit/chromium:

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::loadRequest):
(WebKit::WebFrameImpl::loadData):
* src/WebSharedWorkerImpl.cpp:
(WebKit::WebSharedWorkerImpl::initializeLoader):

Source/WebKit/efl:

* ewk/ewk_frame.cpp:
(_ewk_frame_contents_set_internal):

Source/WebKit/gtk:

* webkit/webkitwebframe.cpp:
(webkit_web_frame_load_uri):
(webkit_web_frame_load_data):
(webkit_web_frame_load_request):

Source/WebKit/mac:

* Plugins/WebPluginController.mm:
* WebView/WebFrame.mm:
(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):

Source/WebKit/qt:

* Api/qwebframe.cpp:
(QWebFrame::QWebFrame):
(QWebFrame::load):
(QWebFrame::setHtml):
(QWebFrame::setContent):
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::setAlternateHtml):
(qt_dump_set_accepts_editing):
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::callErrorPageExtension):

Source/WebKit/win:

* WebFrame.cpp:
(WebFrame::loadRequest):
(WebFrame::loadData):

Source/WebKit/wince:

* WebView.cpp:
(WebView::load):

Source/WebKit/wx:

* WebFrame.cpp:
(WebKit::WebFrame::SetPageSource):

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::performFrameLoadURLRequest):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadData):

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

7 years ago[BlackBerry] Stop sending touch events to plugins.
commit-queue@webkit.org [Mon, 26 Nov 2012 23:57:29 +0000 (23:57 +0000)]
[BlackBerry] Stop sending touch events to plugins.
https://bugs.webkit.org/show_bug.cgi?id=103188

Patch by Genevieve Mak <gmak@rim.com> on 2012-11-24
Reviewed by Rob Buis.

Reviewed internally by Jeff Rogers and Mike Lattanzio.
No tests required.
PR #248605

* plugins/blackberry/PluginViewBlackBerry.cpp:
(WebCore::PluginView::handleTouchEvent):
(WebCore::PluginView::handleMouseEvent):

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

7 years agoUnreviewed. Skipping some compositing/tiling tests on Windows because tiled backing...
roger_fong@apple.com [Mon, 26 Nov 2012 23:53:46 +0000 (23:53 +0000)]
Unreviewed. Skipping some compositing/tiling tests on Windows because tiled backing is not supported.
Tests skipped:
compositing/tiling/rotated-tiled-preserve3d-clamped.html
compositing/tiling/rotated-tiled-clamped.html

* platform/win/TestExpectations:

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

7 years agoUnreviewed gardening: css3/filters/custom/custom-filter-transforms-animation.html
rjkroege@chromium.org [Mon, 26 Nov 2012 23:45:36 +0000 (23:45 +0000)]
Unreviewed gardening: css3/filters/custom/custom-filter-transforms-animation.html
times out intermittently.
https://bugs.webkit.org/show_bug.cgi?id=103308

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed gardening: failure in fast/text/atsui-small-caps-punctuation-size.html
rjkroege@chromium.org [Mon, 26 Nov 2012 23:38:43 +0000 (23:38 +0000)]
Unreviewed gardening: failure in fast/text/atsui-small-caps-punctuation-size.html
https://bugs.webkit.org/show_bug.cgi?id=103148

* platform/chromium/TestExpectations:

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

7 years agoRemoving unnecessary friend classes in RenderObject: LayoutRepainter, RenderSVGContainer
commit-queue@webkit.org [Mon, 26 Nov 2012 23:27:57 +0000 (23:27 +0000)]
Removing unnecessary friend classes in RenderObject: LayoutRepainter, RenderSVGContainer
https://bugs.webkit.org/show_bug.cgi?id=103164

Patch by Adenilson Cavalcanti <cavalcantii@gmail.com> on 2012-11-26
Reviewed by Simon Fraser.

Removing some of classes marked as friend of RenderObject. This patch solves this issue
for 2 classes: RenderSVGContainer (that is derived from RenderObject) and LayoutRepainter
(that accesses one const member function in RenderObject that is now made public).

No new tests, no changes in functionality.

* rendering/RenderObject.h:
(RenderObject):
(WebCore::RenderObject::outlineBoundsForRepaint):

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

7 years agoUnreviewed gardening: failure in http/tests/media/pdf-served-as-pdf.html
rjkroege@chromium.org [Mon, 26 Nov 2012 23:18:55 +0000 (23:18 +0000)]
Unreviewed gardening: failure in http/tests/media/pdf-served-as-pdf.html
https://bugs.webkit.org/show_bug.cgi?id=103093

* platform/chromium/TestExpectations:

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

7 years ago[BlackBerry] Form controls don't show pressed state.
commit-queue@webkit.org [Mon, 26 Nov 2012 23:07:35 +0000 (23:07 +0000)]
[BlackBerry] Form controls don't show pressed state.
https://bugs.webkit.org/show_bug.cgi?id=103292

Patch by Genevieve Mak <gmak@rim.com> on 2012-11-26
Reviewed by Rob Buis.

Reviewed internally by Eli Fidler and Mike Lattanzio.
We weren't sending touch events to webpages unless they
had JS touch event listeners which form controls don't have.
Now send them always and do a little cleanup.
PR #249791

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPage::touchEvent):
* Api/WebPageClient.h:
* Api/WebPage_p.h:
(WebPagePrivate):
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::needTouchEvents):

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

7 years agoUnreviewed gardening: updated TextExpecations for failing
rjkroege@chromium.org [Mon, 26 Nov 2012 23:01:13 +0000 (23:01 +0000)]
Unreviewed gardening: updated TextExpecations for failing
fast/dom/shadow/shadow-dom-event-dispatching.html
https://bugs.webkit.org/show_bug.cgi?id=103299

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed. Skip fast/dom/Window/open-window-min-size.html on Windows.
roger_fong@apple.com [Mon, 26 Nov 2012 22:52:41 +0000 (22:52 +0000)]
Unreviewed. Skip fast/dom/Window/open-window-min-size.html on Windows.
DRT doesn't support showModalDialog https://bugs.webkit.org/show_bug.cgi?id=53675

* platform/win/TestExpectations:

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

7 years ago[Qt] Fix the LLInt build on Mac
zeno.albisser@digia.com [Mon, 26 Nov 2012 22:45:20 +0000 (22:45 +0000)]
[Qt] Fix the LLInt build on Mac
https://bugs.webkit.org/show_bug.cgi?id=97587

Reviewed by Simon Hausmann.

Source/JavaScriptCore:

* DerivedSources.pri:
* JavaScriptCore.pro:

Source/WTF:

* wtf/InlineASM.h:
    Use OS(DARWIN) instead of PLATFORM(MAC),
    in order to allow Qt to use the same code.
* wtf/Platform.h:

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

7 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Mon, 26 Nov 2012 22:43:40 +0000 (22:43 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

7 years agoPass clicks through to the restarted plugin
jonlee@apple.com [Mon, 26 Nov 2012 22:36:03 +0000 (22:36 +0000)]
Pass clicks through to the restarted plugin
https://bugs.webkit.org/show_bug.cgi?id=102150
<rdar://problem/12695575>

Reviewed by Simon Fraser.

Source/WebCore:

Add a new state to the machine for plugin snapshotting, called PlayingWithPendingMouseClick.
This represents the state where the plugin is playing, but before the pending mouse click
has been fired. Once the click is sent, the plugin state transitions to Playing. For
situations where the plugin just runs normally without a simulated click, the plugin state
jumps from DisplayingSnapshot straight to Playing, as before.

* html/HTMLPlugInElement.h: Add new display state to represent when the plugin is running,
but a pending mouse click is about to be sent to the plugin.
(WebCore::HTMLPlugInElement::dispatchPendingMouseClick): Called by the plugin when it is
ok for the element to send the pending mouse click.
* html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::defaultEventHandler): Update the handler to pass the event
to the renderer to handle if the state is before PlayingWithPendingMouseClick.

* html/HTMLPlugInImageElement.h:
* html/HTMLPlugInImageElement.cpp: Add a click timer to delay the mouse click so that the
plugin has some time to initialize.
(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Initialize the mouse timer.
(WebCore::HTMLPlugInImageElement::setPendingClickEvent): Keep track of the click event
the user made to restart the plugin.
(WebCore::HTMLPlugInImageElement::dispatchPendingMouseClick): Start the timer.
(WebCore::HTMLPlugInImageElement::simulatedMouseClickTimerFired): When the timer fires,
dispatch the simulated click, with mouse over, mouse down, and mouse up events. Transition
to the Playing state, and we no longer need the click event.

* rendering/RenderSnapshottedPlugIn.cpp: Change the threshold state to PlayingWithPendingMouseClick
instead of Playing, since that is the earliest state where the plugin is playing.
(WebCore::RenderSnapshottedPlugIn::paint):
(WebCore::RenderSnapshottedPlugIn::paintReplaced):
(WebCore::RenderSnapshottedPlugIn::getCursor):
(WebCore::RenderSnapshottedPlugIn::handleEvent): If the user clicked on the button, jump to
Playing, and don't send a simulated click. Otherwise, transition to PlayingWithPendingMouseClick,
and keep track of that mouse event.

* WebCore.exp.in: Export MouseRelatedEvent::offsetX() and offsetY().

Source/WebKit2:

Expose convertToRootView() as a public function for all plugins. It converts the click point
from local plugin coordinates to root view coordinates. When the events are sent to the
plugin, the coordinate gets converted back to the local reference frame.
* WebProcess/Plugins/Plugin.cpp:
(WebKit::Plugin::convertToRootView): Default implementation should not be reached.
* WebProcess/Plugins/Plugin.h: Promote convertToRootView() from NetscapePlugin.h.
* WebProcess/Plugins/Netscape/NetscapePlugin.h: An implementation already existed. Make the
method virtual.
* WebProcess/Plugins/PluginProxy.h:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::convertToRootView): Apply the transform to the provided point to return
a point in root view coordinates.

Change the threshold state to PlayingWithPendingMouseClick instead of Playing, since that is
the earliest state where the plugin is playing.
* WebProcess/Plugins/PluginView.cpp: Give the snapshot a little more time to generate.
(WebKit::PluginView::didInitializePlugin): When the plugin has initialized, tell the plugin
element to dispatch the pending mouse click.
(WebKit::PluginView::paint):
(WebKit::PluginView::createWebEvent): Helper function to convert a WebCore mouse event to a
WebMouseEvent.
(WebKit::PluginView::handleEvent): If the event is simulated, there is no source event from
the UI process. So we fabricate one based on the simulated event.
(WebKit::PluginView::invalidateRect):
(WebKit::PluginView::isAcceleratedCompositingEnabled):
* WebProcess/Plugins/PluginView.h:

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

7 years agoUnreviewed. ENABLE_ACCELERATED_OVERFLOW_SCROLLING not enabled on Windows.
roger_fong@apple.com [Mon, 26 Nov 2012 22:34:47 +0000 (22:34 +0000)]
Unreviewed. ENABLE_ACCELERATED_OVERFLOW_SCROLLING not enabled on Windows.
Add a feature flag and skip some failing tests.
https://bugs.webkit.org/show_bug.cgi?id=103294

Tests skipped:
compositing/overflow/scrolling-without-painting.html
compositing/overflow/updating-scrolling-content.html

* win/tools/vsprops/FeatureDefines.vsprops:
* platform/win/TestExpectations:

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

7 years agoRefactor V8 bindings to allow content scripts to access subframes
commit-queue@webkit.org [Mon, 26 Nov 2012 22:24:31 +0000 (22:24 +0000)]
Refactor V8 bindings to allow content scripts to access subframes
https://bugs.webkit.org/show_bug.cgi?id=93646

Patch by Dan Carney <dcarney@google.com> on 2012-11-26
Reviewed by Adam Barth.

Source/WebCore:

Isolated window shells are now initialized on the fly
as needed.

No new tests. Existing test modified.

* bindings/v8/DOMWrapperWorld.cpp:
(WebCore::DOMWrapperWorld::ensureIsolatedWorld):
* bindings/v8/DOMWrapperWorld.h:
(WebCore::DOMWrapperWorld::createdFromUnitializedWorld):
(DOMWrapperWorld):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::currentWorldContext):

LayoutTests:

Test modified to check isolated world access across frames.

* http/tests/security/isolatedWorld/world-reuse-expected.txt:
* http/tests/security/isolatedWorld/world-reuse.html:

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

7 years agoclipboardwin compile error for win64
bfulgham@webkit.org [Mon, 26 Nov 2012 22:11:42 +0000 (22:11 +0000)]
clipboardwin compile error for win64
https://bugs.webkit.org/show_bug.cgi?id=94124

Patch by Alex Christensen <alex.christensen@flexsim.com> on 2012-11-26
Reviewed by Brent Fulgham.

The clipboard utilities code uses std::min with one unsigned int parameter and one size_t parameter.
This causes a problem when compiling for 64-bit Windows because the two types are not the same size.
To resolve this issue, we specify the template type as the type the return value is being cast into

Fixed a few compile errors for Windows x64 by specifying template parameters.

* platform/win/ClipboardUtilitiesWin.cpp:
(WebCore::setFileDescriptorData): Specify the types for the std::min macro to avoid compiler errors
under 64-bit builds.

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

7 years ago[GTK] GtkSocket is leaked until webview is destroyed.
mrobinson@webkit.org [Mon, 26 Nov 2012 22:01:01 +0000 (22:01 +0000)]
[GTK] GtkSocket is leaked until webview is destroyed.
https://bugs.webkit.org/show_bug.cgi?id=102564

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-11-26
Reviewed by Martin Robinson.

Remove GtkSocket from its parent when pluginview is destroyed. Then,
the GtkSocket and it's possible child widgets are realeased when it is
no more needed.

No new tests, already covered by existing tests.

* plugins/gtk/PluginViewGtk.cpp:
(WebCore::PluginView::platformDestroy):

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

7 years ago[GTK] Explicitly link against librt
mrobinson@webkit.org [Mon, 26 Nov 2012 22:00:15 +0000 (22:00 +0000)]
[GTK] Explicitly link against librt
https://bugs.webkit.org/show_bug.cgi?id=103194

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-11-26
Reviewed by Martin Robinson.

Fixes broken build with undefined references to shm_open / shm_unlink
symbols. SharedMemoryUnix.cpp uses these so we need to link with -lrt.

.:

* configure.ac:

Source/WebKit2:

* GNUmakefile.am:

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

7 years agoMake StyleResolver::applyProperty use isInherit in CSSPropertyWebkitMarquee instead...
macpherson@chromium.org [Mon, 26 Nov 2012 21:44:10 +0000 (21:44 +0000)]
Make StyleResolver::applyProperty use isInherit in CSSPropertyWebkitMarquee instead of calculating equivalent in-place.
https://bugs.webkit.org/show_bug.cgi?id=102446

Reviewed by Tony Chang.

!m_parentNode || !value->isInheritedValue() is equivalent to !isInherit (by De Morgan's law).

No new tests / code is provably equivalent.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):

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

7 years ago32-bit build fix. Move the method decalration outside of the X86_64 only section.
oliver@apple.com [Mon, 26 Nov 2012 21:41:28 +0000 (21:41 +0000)]
32-bit build fix.  Move the method decalration outside of the X86_64 only section.

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

7 years ago[BlackBerry] Null check calls associated with retrieving the caret rect.
commit-queue@webkit.org [Mon, 26 Nov 2012 21:38:45 +0000 (21:38 +0000)]
[BlackBerry] Null check calls associated with retrieving the caret rect.
https://bugs.webkit.org/show_bug.cgi?id=103281

Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-11-26
Reviewed by Rob Buis.

Some of these calls can return null, which could lead to a crash.

Internally reviewed by Gen Mak.

* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):

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

7 years agoDon't blind all the things.
oliver@apple.com [Mon, 26 Nov 2012 21:20:37 +0000 (21:20 +0000)]
Don't blind all the things.
https://bugs.webkit.org/show_bug.cgi?id=102572

Reviewed by Gavin Barraclough.

No longer blind all the constants in the instruction stream.  We use a
simple non-deterministic filter to avoid blinding everything.  Also modified
the basic integer blinding logic to avoid blinding small negative values.

* assembler/MacroAssembler.h:
(MacroAssembler):
(JSC::MacroAssembler::shouldConsiderBlinding):
(JSC::MacroAssembler::shouldBlind):

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

7 years agoJSObject::copyButterfly doesn't handle undecided indexing types correctly
mhahnenberg@apple.com [Mon, 26 Nov 2012 21:00:07 +0000 (21:00 +0000)]
JSObject::copyButterfly doesn't handle undecided indexing types correctly
https://bugs.webkit.org/show_bug.cgi?id=102573

Reviewed by Filip Pizlo.

We don't do any copying into the newly allocated vector and we don't zero-initialize CopiedBlocks
during the copying phase, so we end up with uninitialized memory in arrays which have undecided indexing
types. We should just do the actual memcpy from the old block to the new one.

* runtime/JSObject.cpp:
(JSC::JSObject::copyButterfly): Just do the same thing that we do for other contiguous indexing types.

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

7 years agoAdd ResourceBuffer::append(CFDataRef) to get code to compile with USE(NETWORK_CFDATA_...
psolanki@apple.com [Mon, 26 Nov 2012 20:49:06 +0000 (20:49 +0000)]
Add ResourceBuffer::append(CFDataRef) to get code to compile with USE(NETWORK_CFDATA_ARRAY_CALLBACK)
https://bugs.webkit.org/show_bug.cgi?id=102706

Reviewed by Brent Fulgham.

No new tests because the flag isn't enabled. Also the functionality should be covered by
existing tests.

* loader/ResourceBuffer.cpp:
(WebCore):
(WebCore::ResourceBuffer::append):
* loader/ResourceBuffer.h:
(ResourceBuffer):
* loader/mac/ResourceLoaderMac.mm:

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

7 years agoUnreviewed, rolling out r135743.
rjkroege@chromium.org [Mon, 26 Nov 2012 20:37:06 +0000 (20:37 +0000)]
Unreviewed, rolling out r135743.
http://trac.webkit.org/changeset/135743
https://bugs.webkit.org/show_bug.cgi?id=103280

Caused compile failure 'SK_DISABLE_DITHER_32BIT_GRADIENT'
macro redefined (Requested by rjkroege on #webkit).

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

* skia_webkit.gyp:

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

7 years agoMove more functions from internals.settings to internals
tony@chromium.org [Mon, 26 Nov 2012 20:27:36 +0000 (20:27 +0000)]
Move more functions from internals.settings to internals
https://bugs.webkit.org/show_bug.cgi?id=102976

Reviewed by Adam Barth.

Source/WebCore:

Move functions that don't have to do with Settings off of internals.settings.
setPagination and configurationForViewport were defined on internals, so we
can inline the functions (no test change).

setEnableMockPagePopup is moved to Internals.

No new tests, this is a refactor.

* testing/InternalSettings.cpp:
(WebCore::InternalSettings::reset): Move reset code into Internals.
* testing/InternalSettings.h:
(InternalSettings): Remove code for setPagination, configurationForViewport and setEnableMockPagePopup.
* testing/InternalSettings.idl: Remove setPagination and setEnableMockPagePopup.
* testing/Internals.cpp:
(WebCore): Use a static to keep track of the MockPagePopupDriver.
(WebCore::Internals::resetToConsistentState): Code from InternalSettings::reset
(WebCore::Internals::setEnableMockPagePopup): Code copied from InternalSettings.
(WebCore::Internals::pagePopupController): Code copied from InternalSettings.
(WebCore::Internals::setPagination): Code copied from InternalSettings.
(WebCore::Internals::configurationForViewport): Code copied from InternalSettings.
* testing/Internals.h:
(Internals): Add setEnableMockPagePopup.
* testing/Internals.idl: Add setEnableMockPagePopup.

LayoutTests:

Move internals.settings.setEnableMockPagePopup to internals.setEnableMockPagePopup.

* fast/forms/resources/picker-common.js:

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

7 years ago[EFL][WK2] Add setting to enable / disable HTML5 local storage functionality
commit-queue@webkit.org [Mon, 26 Nov 2012 20:17:36 +0000 (20:17 +0000)]
[EFL][WK2] Add setting to enable / disable HTML5 local storage functionality
https://bugs.webkit.org/show_bug.cgi?id=103224

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-11-26
Reviewed by Laszlo Gombos.

Source/WebKit2:

Add API to ewk_settings to enable / disable the HTML5
local storage functionality. The functionality is
enabled by default.

* UIProcess/API/efl/ewk_settings.cpp:
(ewk_settings_local_storage_enabled_set):
(ewk_settings_local_storage_enabled_get):
* UIProcess/API/efl/ewk_settings.h:
* UIProcess/API/efl/tests/test_ewk2_settings.cpp:
(TEST_F): Add API test for ewk_settings_local_storage_enabled_get / set.

Tools:

Add --local-storage command line argument to MiniBrowser to
explicitely disable HTML5 local storage functionality. This
is useful for testing purposes.

* MiniBrowser/efl/main.c:
(window_create):
(elm_main):

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

7 years ago[CSS Regions] Add Region info for RootLineBoxes and pack the pagination data
commit-queue@webkit.org [Mon, 26 Nov 2012 20:00:49 +0000 (20:00 +0000)]
[CSS Regions] Add Region info for RootLineBoxes and pack the pagination data
https://bugs.webkit.org/show_bug.cgi?id=101332

Patch by Andrei Bucur <abucur@adobe.com> on 2012-11-26
Reviewed by David Hyatt.

Source/WebCore:

Currently the pagination information for lines is spread between the RootInlineBox and InlineFlowBox classes, consuming memory even though
the boxes were not the result of an pagination layout. To overcome this, a new struct (LineFragmentationData) is created that wraps all the data,
including two new members, the containing Region for the line and a boolean that states if the line was laid out in a Region or not.
The flag is necessary because the sanitize function on LineFragmentationData resets the containing Region to 0 if the Region was removed from
chain (so a value of 0 for the containing Region means two things). The sanitize function should prevent access to an invalid address.
The containing Region is used to detect if a line changed the Region where it resides. This will be helpful especially when implementing region
styling for layout properties (e.g. the font-size property https://bugs.webkit.org/show_bug.cgi?id=95559 ).
A line can change the region when it is shifted inside the containing block or if the entire block moves. This means it's better to delegate
the task of updating the containing Region to the block.

Tests: fast/regions/line-containing-region-crash.html

* rendering/InlineFlowBox.cpp:
(SameSizeAsInlineFlowBox):
* rendering/InlineFlowBox.h:
(WebCore::InlineFlowBox::InlineFlowBox):
(InlineFlowBox):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::linkToEndLineIfNeeded):
(WebCore::RenderBlock::determineStartPosition):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::RootInlineBox):
(WebCore::RootInlineBox::setContainingRegion):
(WebCore):
(WebCore::RootInlineBox::LineFragmentationData::sanitize): This is an O(1) function that checks if the containig Region is still valid pointer.
* rendering/RootInlineBox.h:
(WebCore):
(WebCore::RootInlineBox::paginationStrut):
(WebCore::RootInlineBox::setPaginationStrut):
(WebCore::RootInlineBox::isFirstAfterPageBreak):
(WebCore::RootInlineBox::setIsFirstAfterPageBreak):
(WebCore::RootInlineBox::paginatedLineWidth):
(WebCore::RootInlineBox::setPaginatedLineWidth):
(RootInlineBox):
(WebCore::RootInlineBox::containingRegion):
(WebCore::RootInlineBox::hasContainingRegion): Use this to determine if the line has a region or not.
(WebCore::RootInlineBox::ensureLineFragmentationData):
(LineFragmentationData):
(WebCore::RootInlineBox::LineFragmentationData::LineFragmentationData):

LayoutTests:

The test checks if there is a crash when doing a line layout if:
- the flow has no region
- the flow has a region but the lines have no containing region
- the flow has no region but the lines have a containing region

* fast/regions/line-containing-region-crash-expected.txt: Added.
* fast/regions/line-containing-region-crash.html: Added.

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

7 years ago[CSS Shaders] Add IDL file and bindings for mix function
michelangelo@webkit.org [Mon, 26 Nov 2012 19:57:40 +0000 (19:57 +0000)]
[CSS Shaders] Add IDL file and bindings for mix function
https://bugs.webkit.org/show_bug.cgi?id=93011

Reviewed by Dean Jackson.

Source/WebCore:

JavaScript bindings have been added for the Custom Filter mix()
function (WebKitCSSMixFunctionValue). As of now, this is only a
placeholder that extends CSSValueList without adding any new
property.

Test: css3/filters/custom/custom-filter-mix-bindings.html

* CMakeLists.txt: mix() IDL has been added to the Generator;
DerivedSources have been included.
* DerivedSources.cpp: Ditto.
* DerivedSources.make: Ditto.
* DerivedSources.pri: Ditto.
* GNUmakefile.list.am: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* bindings/js/JSCSSValueCustom.cpp:
(WebCore::toJS): return a JSC DOM wrapper for WebKitCSSMixFunctionValue.
* bindings/v8/custom/V8CSSValueCustom.cpp:
(WebCore::V8CSSValue::dispatchWrapCustom): Ditto, for V8.
* css/WebKitCSSMixFunctionValue.idl: Added.

LayoutTests:

Test for the Custom Filter mix() function JS bindings.

* css3/filters/custom/custom-filter-mix-bindings-expected.txt: Added.
* css3/filters/custom/custom-filter-mix-bindings.html: Added.
* css3/filters/script-tests/custom-filter-mix-bindings.js: Added.
(jsWrapperClass):
(shouldBeType):
* platform/chromium/css3/filters/custom/custom-filter-mix-bindings-expected.txt: Added.
* platform/efl/fast/js/global-constructors-expected.txt: Updated with the new WebKitCSSMixFunctionValueConstructor.
* platform/gtk/fast/js/global-constructors-expected.txt: Ditto.
* platform/mac/fast/js/global-constructors-expected.txt: Ditto.
* platform/qt-5.0/fast/js/global-constructors-expected.txt: Ditto.
* platform/qt/fast/js/global-constructors-expected.txt: Ditto.
* platform/win/fast/js/global-constructors-expected.txt: Ditto.

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

7 years ago[CoordinatedGraphics] Access to LayerTreeRenderer::m_renderQueue should be thread...
rafael.lobo@openbossa.org [Mon, 26 Nov 2012 19:45:31 +0000 (19:45 +0000)]
[CoordinatedGraphics] Access to LayerTreeRenderer::m_renderQueue should be thread safe
https://bugs.webkit.org/show_bug.cgi?id=101341

Reviewed by Noam Rosenthal.

* UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
(WebKit::LayerTreeRenderer::syncRemoteContent): The previous swap already clears the
vector on m_renderQueue. It is also done in a thread-safe way, so clearing it afterward
can be harmful as we've already released the lock.

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

7 years agoOptimize layer updates after scrolling
simon.fraser@apple.com [Mon, 26 Nov 2012 19:37:45 +0000 (19:37 +0000)]
Optimize layer updates after scrolling
https://bugs.webkit.org/show_bug.cgi?id=102635

Reviewed by Sam Weinig.

updateLayerPositionsAfterScroll() previously unconditionally cleared clip
rects, and recomputed repaint rects too often. Recomputing both of these
can be very expensive, as they involve tree walks up to the root.

We can optimize layer updates after document scrolling by only clearing clip
rects, and recomputing repaint rects, if we encounter a fixed- or sticky-position
element. For overflow scroll, we have to clear clip rects and recompute repaint rects.

* page/FrameView.cpp:
(WebCore::FrameView::repaintFixedElementsAfterScrolling): Call updateLayerPositionsAfterDocumentScroll().
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions): Call clearClipRects() because
updateLayerPosition() no longer does.
(WebCore::RenderLayer::updateLayerPositionsAfterDocumentScroll): Version of updateLayerPositionsAfterScroll()
that is for document scrolls. It has no need to push layers to the geometry map.
(WebCore::RenderLayer::updateLayerPositionsAfterOverflowScroll): Pushes layers to the geometry map,
and calls updateLayerPositionsAfterScroll() with the IsOverflowScroll flag.
(WebCore::RenderLayer::updateLayerPositionsAfterScroll): Set the HasChangedAncestor flag
if our location changed, and use that as a hint to clear cached rects. Be more conservative
than before about when to clear cached clip rects.
(WebCore::RenderLayer::updateLayerPosition):  Move responsibility for calling
clearClipRects() ouf of this function and into callers.
(The one caller outside RenderLayer will be removed via bug 102624).
Return a bool indicating whether our position changed.
(WebCore::RenderLayer::scrollTo): Call updateLayerPositionsAfterOverflowScroll().
(WebCore::RenderLayer::updateClipRects): Added some #ifdeffed out code that is useful
to verify that cached clips are correct; it's too slow to leave enabled in debug builds.
* rendering/RenderLayer.h:
(WebCore::RenderLayer::setLocation): Change to take a LayoutPoint, rather than separate
x and y.

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

7 years ago[sh4] JavaScriptCore JIT build is broken since r135330
commit-queue@webkit.org [Mon, 26 Nov 2012 19:37:18 +0000 (19:37 +0000)]
[sh4] JavaScriptCore JIT build is broken since r135330
Add missing implementation for sh4 arch.
https://bugs.webkit.org/show_bug.cgi?id=103145

Patch by Julien BRIANCEAU <jbrianceau@nds.com> on 2012-11-26
Reviewed by Oliver Hunt.

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::canJumpReplacePatchableBranchPtrWithPatch):
(MacroAssemblerSH4):
(JSC::MacroAssemblerSH4::startOfBranchPtrWithPatchOnRegister):
(JSC::MacroAssemblerSH4::revertJumpReplacementToBranchPtrWithPatch):
(JSC::MacroAssemblerSH4::startOfPatchableBranchPtrWithPatchOnAddress):
(JSC::MacroAssemblerSH4::revertJumpReplacementToPatchableBranchPtrWithPatch):
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::revertJump):
(SH4Assembler):
(JSC::SH4Assembler::printInstr):

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

7 years agoRemove use of deprecated logging from most of webkitpy.tool
zandobersek@gmail.com [Mon, 26 Nov 2012 19:31:53 +0000 (19:31 +0000)]
Remove use of deprecated logging from most of webkitpy.tool
https://bugs.webkit.org/show_bug.cgi?id=103180

Reviewed by Dirk Pranke.

Remove calls to log and error methods of the deprecated_logging module, replacing them
by using Python's Logger objects. This patch covers the switch in all of webkitpy.tool
except the QueueEngine.

Unit tests are adjusted for these changes, moving output from expected stderr to expected logs.

* Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
(MockCommitQueue.run_command):
(MockCommitQueue.command_passed):
(MockCommitQueue.command_failed):
(MockCommitQueue.report_flaky_tests):
(MockCommitQueue.archive_last_test_results):
(CommitQueueTaskTest._run_through_task):
(CommitQueueTaskTest.test_success_case):
(test_fast_success_case):
(test_clean_failure):
(test_update_failure):
(test_apply_failure):
(test_validate_changelog_failure):
(test_build_failure):
(test_red_build_failure):
(test_flaky_test_failure):
(test_failed_archive):
(test_double_flaky_test_failure):
(test_test_failure):
(test_red_test_failure):
(test_very_red_tree_retry):
(test_red_tree_patch_rejection):
(test_land_failure):
* Scripts/webkitpy/tool/bot/feeders.py:
(CommitQueueFeeder._update_work_items):
(EWSFeeder.feed):
* Scripts/webkitpy/tool/bot/feeders_unittest.py:
* Scripts/webkitpy/tool/bot/layouttestresultsreader.py:
(LayoutTestResultsReader.archive):
* Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:
(test_archive_last_layout_test_results):
* Scripts/webkitpy/tool/bot/sheriff.py:
* Scripts/webkitpy/tool/commands/abstractsequencedcommand.py:
(AbstractSequencedCommand.execute):
* Scripts/webkitpy/tool/commands/commandtest.py:
(CommandsTest.assert_execute_outputs):
* Scripts/webkitpy/tool/commands/download.py:
(AbstractPatchProcessingCommand._process_patch.execute):
(ProcessBugsMixin._fetch_list_of_patches_to_process):
(ProcessURLsMixin._fetch_list_of_patches_to_process):
(AbstractRolloutPrepCommand._commit_info):
* Scripts/webkitpy/tool/commands/download_unittest.py:
(AbstractRolloutPrepCommandTest.test_commit_info):
(DownloadCommandsTest.test_build):
(DownloadCommandsTest.test_build_and_test):
(test_apply_attachment):
(test_apply_from_bug):
(test_apply_watch_list):
(test_land):
(test_land_red_builders):
(test_check_style):
(test_build_attachment):
(test_land_attachment):
(test_land_from_bug):
(test_land_from_url):
(test_prepare_rollout):
(test_create_rollout):
(test_create_rollout_resolved):
(test_rollout):
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(AbstractEarlyWarningSystem.handle_script_error.does):
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(EarlyWarningSytemTest._default_expected_stderr):
(EarlyWarningSytemTest._default_expected_logs):
(EarlyWarningSytemTest._test_testing_ews):
* Scripts/webkitpy/tool/commands/openbugs.py:
(OpenBugs.execute):
* Scripts/webkitpy/tool/commands/openbugs_unittest.py:
(OpenBugsTest.test_args_parsing):
* Scripts/webkitpy/tool/commands/perfalizer.py:
(Perfalizer.handle_unexpected_error):
* Scripts/webkitpy/tool/commands/queries.py:
(PatchesInCommitQueue.execute):
(PatchesToCommitQueue._needs_commit_queue):
* Scripts/webkitpy/tool/commands/queries_unittest.py:
(QueryCommandsTest.test_bugs_to_commit):
(QueryCommandsTest.test_patches_in_commit_queue):
(QueryCommandsTest.test_patches_to_commit_queue):
* Scripts/webkitpy/tool/commands/queues.py:
(AbstractQueue._cc_watchers):
(AbstractQueue.begin_work_queue):
(FeederQueue.handle_unexpected_error):
(CommitQueue.handle_script_error):
(AbstractReviewQueue.handle_unexpected_error):
(AbstractReviewQueue.handle_script_error):
* Scripts/webkitpy/tool/commands/queues_unittest.py:
(test_auto_retry):
* Scripts/webkitpy/tool/commands/queuestest.py:
(QueuesTest.assert_outputs):
(QueuesTest._default_begin_work_queue_stderr):
(QueuesTest):
(QueuesTest._default_begin_work_queue_logs):
(QueuesTest.assert_queue_outputs):
* Scripts/webkitpy/tool/commands/roll_unittest.py:
(RollCommandsTest.test_update_chromium_deps):
(test_update_chromium_deps_older_revision):
* Scripts/webkitpy/tool/commands/sheriffbot.py:
(SheriffBot.handle_unexpected_error):
* Scripts/webkitpy/tool/commands/stepsequence.py:
(StepSequence.run_and_handle_errors):
* Scripts/webkitpy/tool/commands/upload.py:
(AssignToCommitter._assign_bug_to_last_patch_attacher):
(AbstractPatchUploadingCommand._prepare_state):
(PostCommits.execute):
(MarkBugFixed._determine_bug_id_and_svn_revision):
(MarkBugFixed.execute):
(CreateBug.create_bug_from_commit):
(CreateBug.execute):
* Scripts/webkitpy/tool/commands/upload_unittest.py:
(test_obsolete_attachments):
(test_land_safely):
(test_mark_bug_fixed):
* Scripts/webkitpy/tool/multicommandtool.py:
(Command.check_arguments_and_execute):
(MultiCommandTool.main):
* Scripts/webkitpy/tool/multicommandtool_unittest.py:
(CommandTest.test_required_arguments):
* Scripts/webkitpy/tool/steps/addsvnmimetypeforpng.py:
(AddSvnMimetypeForPng.run):
* Scripts/webkitpy/tool/steps/applypatch.py:
(ApplyPatch.run):
* Scripts/webkitpy/tool/steps/build.py:
(Build.run):
* Scripts/webkitpy/tool/steps/checkstyle.py:
* Scripts/webkitpy/tool/steps/closebug.py:
(CloseBug.run):
* Scripts/webkitpy/tool/steps/closebugforlanddiff.py:
(CloseBugForLandDiff.run):
* Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:
(CloseBugForLandDiffTest.test_empty_state):
* Scripts/webkitpy/tool/steps/commit.py:
(Commit.run):
* Scripts/webkitpy/tool/steps/commit_unittest.py:
(CommitTest._test_check_test_expectations):
* Scripts/webkitpy/tool/steps/ensurelocalcommitifneeded.py:
(EnsureLocalCommitIfNeeded.run):
* Scripts/webkitpy/tool/steps/obsoletepatches.py:
(ObsoletePatches.run):
* Scripts/webkitpy/tool/steps/preparechangelog.py:
(PrepareChangeLog.run):
* Scripts/webkitpy/tool/steps/reopenbugafterrollout.py:
(ReopenBugAfterRollout.run):
* Scripts/webkitpy/tool/steps/runtests.py:
(RunTests.run):
* Scripts/webkitpy/tool/steps/runtests_unittest.py:
(RunTestsTest.test_webkit_run_unit_tests):
* Scripts/webkitpy/tool/steps/steps_unittest.py:
(StepsTest.test_update_step):
(StepsTest.test_runtests_args):
* Scripts/webkitpy/tool/steps/update.py:
(Update.run):
* Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py:
(UpdateChangeLogsWithReviewerTest.test_guess_reviewer_from_bug):
(UpdateChangeLogsWithReviewerTest.test_guess_reviewer_from_multipatch_bug):
* Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py:
(UpdateChangeLogsWithReviewer._guess_reviewer_from_bug):
(UpdateChangeLogsWithReviewer.run):
* Scripts/webkitpy/tool/steps/updatechromiumdeps.py:
(UpdateChromiumDEPS._validate_revisions):
(UpdateChromiumDEPS.run):
* Scripts/webkitpy/tool/steps/validatechangelogs.py:
(ValidateChangeLogs._check_changelog_diff):
(ValidateChangeLogs.run):
* Scripts/webkitpy/tool/steps/validatechangelogs_unittest.py:
(ValidateChangeLogsTest._assert_start_line_produces_output):
* Scripts/webkitpy/tool/steps/validatereviewer.py:
(ValidateReviewer.run):

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

7 years agoadd SK_DISABLE_DITHER_32BIT_GRADIENT define, in preparation for rebaselining
reed@google.com [Mon, 26 Nov 2012 19:27:52 +0000 (19:27 +0000)]
add SK_DISABLE_DITHER_32BIT_GRADIENT define, in preparation for rebaselining
https://bugs.webkit.org/show_bug.cgi?id=103272

Reviewed by NOBODY. Unreviewed.

No behavior change, as this define already exists on the chrome side in SkUserConfig.h

* skia_webkit.gyp:

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

7 years ago[Cairo] Surface should not be destroyed before its usage
rafael.lobo@openbossa.org [Mon, 26 Nov 2012 19:12:01 +0000 (19:12 +0000)]
[Cairo] Surface should not be destroyed before its usage
https://bugs.webkit.org/show_bug.cgi?id=103273

Reviewed by Brent Fulgham.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::drawRepaintCounter): There's some calls to get
the bits and stride from surface right after its destructions. It should
be postponed to avoid annoying bugs.

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

7 years agoRenderBox::computePercentageLogicalHeight should use containingBlockLogicalWidthForCo...
jchaffraix@webkit.org [Mon, 26 Nov 2012 19:07:20 +0000 (19:07 +0000)]
RenderBox::computePercentageLogicalHeight should use containingBlockLogicalWidthForContent
https://bugs.webkit.org/show_bug.cgi?id=103075

Reviewed by Ojan Vafai.

Source/WebCore:

Using the containing block's content logical block was working for most renderers but 2 renderers
were special and were broken in orthogonal writing modes:
- captions as they override containingBlockLogicalWidthForContent to return the table's logical width.
- multi-column renderers as they override availableLogicalWidth to constrain the child to the column logical width.

By switching to containingBlockLogicalWidthForContent, we got those 2 cases covered.

Tests: fast/multicol/fixed-column-percent-logical-height-orthogonal-writing-mode.html
       fast/table/caption-orthogonal-writing-mode-sizing.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computePercentageLogicalHeight):
Updated the function to track which renderer's containing block we use and call
containingBlockLogicalWidthForContent on it.

LayoutTests:

* fast/multicol/fixed-column-percent-logical-height-orthogonal-writing-mode-expected.txt: Added.
* fast/multicol/fixed-column-percent-logical-height-orthogonal-writing-mode.html: Added.
* fast/table/caption-orthogonal-writing-mode-sizing-expected.txt: Added.
* fast/table/caption-orthogonal-writing-mode-sizing.html: Added.

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

7 years agoCrash in Frame::dispatchVisibilityStateChangeEvent.
inferno@chromium.org [Mon, 26 Nov 2012 18:58:27 +0000 (18:58 +0000)]
Crash in Frame::dispatchVisibilityStateChangeEvent.
https://bugs.webkit.org/show_bug.cgi?id=102053

Reviewed by Adam Barth.

Source/WebCore:

Child frame can go away inside webkitvisibilitychange
event handler. Store it in a ref counted vector.

Test: fast/frames/page-visibility-crash.html

* page/Frame.cpp:
(WebCore::Frame::dispatchVisibilityStateChangeEvent):

LayoutTests:

* fast/frames/page-visibility-crash-expected.txt: Added.
* fast/frames/page-visibility-crash.html: Added.

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

7 years agoCoverage testing in webkitpy should omit some paths
zandobersek@gmail.com [Mon, 26 Nov 2012 18:56:22 +0000 (18:56 +0000)]
Coverage testing in webkitpy should omit some paths
https://bugs.webkit.org/show_bug.cgi?id=103267

Reviewed by Dirk Pranke.

Omit testing coverage of any file under /usr directory and any file
that is of third party origin and was autoinstalled.

* Scripts/webkitpy/test/main.py:
(Tester._run_tests):

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

7 years agoUse load64 instead of loadPtr to load a JSValue on JSVALUE64 platforms
yuqiang.xian@intel.com [Mon, 26 Nov 2012 18:54:50 +0000 (18:54 +0000)]
Use load64 instead of loadPtr to load a JSValue on JSVALUE64 platforms
https://bugs.webkit.org/show_bug.cgi?id=100909

Reviewed by Brent Fulgham.

This is a (trivial) fix after r132701.

* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):

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

7 years ago[Cairo] fillRectWithColor with Color::transparent doesn't perform anything
commit-queue@webkit.org [Mon, 26 Nov 2012 18:49:54 +0000 (18:49 +0000)]
[Cairo] fillRectWithColor with Color::transparent doesn't perform anything
https://bugs.webkit.org/show_bug.cgi?id=101911

Patch by Hurnjoo Lee <hurnjoo.lee@samsung.com> on 2012-11-26
Reviewed by Kenneth Rohde Christiansen.

fillRectWithColor with Color::transparent doesn't perform anything
because fillRectWithColor does early-return if the alpha value of
color is zero. But we expect that fill the rect with transparent color
in case the cairo_operator is CAIRO_OPERATOR_SOURCE.

Covered by existing tests.

* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::fillRectWithColor):Add condition to prevent early-return if
cairo_operator is not CAIRO_OPERATOR_OVER

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

7 years agoUnreviewed, rolling out r135735.
rjkroege@chromium.org [Mon, 26 Nov 2012 18:47:18 +0000 (18:47 +0000)]
Unreviewed, rolling out r135735.
http://trac.webkit.org/changeset/135735
https://bugs.webkit.org/show_bug.cgi?id=103270

Caused breakage across the Chromium tree. (Requested by
rjkroege_ on #webkit).

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

* skia_webkit.gyp:

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

7 years agoadd SK_DISABLE_DITHER_32BIT_GRADIENT define, in preparation for rebaselining
reed@google.com [Mon, 26 Nov 2012 17:43:46 +0000 (17:43 +0000)]
add SK_DISABLE_DITHER_32BIT_GRADIENT define, in preparation for rebaselining
https://bugs.webkit.org/show_bug.cgi?id=103269

Reviewed by NOBODY. Unreviewed.

No behavior change, as this define already exists on the chrome side in SkUserConfig.h

* skia_webkit.gyp:

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