profile/ivi/webkit-efl.git
12 years ago[WK2] Clearing notifications does not clean up internal state
jonlee@apple.com [Wed, 22 Feb 2012 23:45:15 +0000 (23:45 +0000)]
[WK2] Clearing notifications does not clean up internal state
https://bugs.webkit.org/show_bug.cgi?id=78861
<rdar://problem/10881167>

Reviewed by Anders Carlsson.

* WebProcess/Notifications/WebNotificationManager.cpp:
(WebKit::WebNotificationManager::clearNotifications): This function was missing removing the notification
entries from the other maps.
(WebKit::WebNotificationManager::didDestroyNotification): When the notification is destroyed, it should
also be removed from the context map.
(WebKit::WebNotificationManager::didCloseNotifications): Refactor to pull out the code that removes
a provided notification from the context map.
(WebKit::WebNotificationManager::removeNotificationFromContextMap): Find the notification in the map, and
remove it. If the map is empty, get rid of the entry.
* WebProcess/Notifications/WebNotificationManager.h:
(WebNotificationManager):

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

12 years agoCode cleanup in WebNotificationManager (79285)
jonlee@apple.com [Wed, 22 Feb 2012 23:43:17 +0000 (23:43 +0000)]
Code cleanup in WebNotificationManager (79285)
https://bugs.webkit.org/show_bug.cgi?id=79285
<rdar://problem/10914522>

Reviewed by Anders Carlsson.

* WebProcess/Notifications/WebNotificationManager.cpp:
(WebKit::WebNotificationManager::show): Simplify adding a blank vector to the map using .add(),
similar to what is found in WebNotificationClient.mm in WebKit 1.

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

12 years agoRemove the remaining uses of CSSStyleDeclaration in Editor
rniwa@webkit.org [Wed, 22 Feb 2012 23:40:01 +0000 (23:40 +0000)]
Remove the remaining uses of CSSStyleDeclaration in Editor
https://bugs.webkit.org/show_bug.cgi?id=78939

Reviewed by Enrica Casucci.

Source/WebCore:

Changed the argument types of shouldApplyStyle, applyParagraphStyle, applyStyleToSelection,
applyParagraphStyleToSelection, and computeAndSetTypingStyle in Editor from CSSStyleDeclaration
to StylePropertySet.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* editing/Editor.cpp:
(WebCore::Editor::applyStyle):
(WebCore::Editor::shouldApplyStyle):
(WebCore::Editor::applyParagraphStyle):
(WebCore::Editor::applyStyleToSelection):
(WebCore::Editor::applyParagraphStyleToSelection):
(WebCore::Editor::setBaseWritingDirection):
(WebCore::Editor::computeAndSetTypingStyle):
* editing/Editor.h:
(WebCore):
(Editor):
* editing/EditorCommand.cpp:
(WebCore::applyCommandToFrame):
(WebCore::executeApplyParagraphStyle):
(WebCore::executeMakeTextWritingDirectionLeftToRight):
(WebCore::executeMakeTextWritingDirectionNatural):
(WebCore::executeMakeTextWritingDirectionRightToLeft):
* loader/EmptyClients.h:
(WebCore::EmptyEditorClient::shouldApplyStyle):
* page/DragController.cpp:
(WebCore::DragController::concludeEditDrag):
* page/EditorClient.h:
(WebCore):
(EditorClient):

Source/WebKit/blackberry:

* WebCoreSupport/EditorClientBlackBerry.cpp:
(WebCore::EditorClientBlackBerry::shouldApplyStyle):
* WebCoreSupport/EditorClientBlackBerry.h:
(EditorClientBlackBerry):

Source/WebKit/chromium:

* src/EditorClientImpl.cpp:
(WebKit::EditorClientImpl::shouldApplyStyle):
* src/EditorClientImpl.h:
(EditorClientImpl):

Source/WebKit/efl:

* WebCoreSupport/EditorClientEfl.cpp:
(WebCore::EditorClientEfl::shouldApplyStyle):
* WebCoreSupport/EditorClientEfl.h:
(EditorClientEfl):

Source/WebKit/gtk:

* WebCoreSupport/EditorClientGtk.cpp:
(WebKit::EditorClient::shouldApplyStyle):
* WebCoreSupport/EditorClientGtk.h:
(EditorClient):

Source/WebKit/mac:

* WebCoreSupport/WebEditorClient.h:
(WebEditorClient):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldApplyStyle):
* WebView/WebFrame.mm:
(-[WebFrame _setTypingStyle:withUndoAction:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
(-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
* WebView/WebView.mm:
(-[WebView applyStyle:]):

Source/WebKit/qt:

* WebCoreSupport/EditorClientQt.cpp:
(WebCore::EditorClientQt::shouldApplyStyle):
* WebCoreSupport/EditorClientQt.h:
(EditorClientQt):

Source/WebKit/win:

* WebCoreSupport/WebEditorClient.cpp:
(WebEditorClient::shouldApplyStyle):
* WebCoreSupport/WebEditorClient.h:
(WebEditorClient):

Source/WebKit/wince:

* WebCoreSupport/EditorClientWinCE.cpp:
(WebKit::EditorClientWinCE::shouldApplyStyle):

Source/WebKit/wx:

* WebKitSupport/EditorClientWx.cpp:
(WebCore::EditorClientWx::shouldApplyStyle):
* WebKitSupport/EditorClientWx.h:
(EditorClientWx):

Source/WebKit2:

* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::shouldApplyStyle):
* WebProcess/WebCoreSupport/WebEditorClient.h:
(WebEditorClient):

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

12 years agoAbstract ImageEventSender into a general purpose EventSender
dbates@webkit.org [Wed, 22 Feb 2012 23:28:15 +0000 (23:28 +0000)]
Abstract ImageEventSender into a general purpose EventSender
https://bugs.webkit.org/show_bug.cgi?id=78840

Reviewed by Adam Barth.

Abstract the functionality in ImageEventSender so that it can be used again.
This functionality may be useful in fixing WebKit Bug #38995.

No functionality was changed; no new tests.

* GNUmakefile.list.am: Added EventSender.h.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* dom/EventSender.h: Added.
(WebCore):
(EventSender):
(WebCore::EventSender::eventType):
(WebCore::EventSender::hasPendingEvents):
(WebCore::EventSender::timerFired):
(WebCore::::EventSender):
(WebCore::::dispatchEventSoon):
(WebCore::::cancelEvent):
(WebCore::::dispatchPendingEvents):
* loader/ImageLoader.cpp: Modified to use EventSender.
(WebCore):
(WebCore::ImageLoader::dispatchPendingEvent): Added; called by EventSender when the ImageLoader
should dispatch a pending BeforeLoad or Load event.
* loader/ImageLoader.h:
(WebCore):
(ImageLoader):

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

12 years agonew-run-webkit-tests shouldn't restore Safari state on Lion when showing results
dbates@webkit.org [Wed, 22 Feb 2012 23:23:44 +0000 (23:23 +0000)]
new-run-webkit-tests shouldn't restore Safari state on Lion when showing results
https://bugs.webkit.org/show_bug.cgi?id=79277

Reviewed by Adam Barth.

Pass command line argument no-saved-state to run-safari to disable Safari
state restoration for the session on OS 10.7.

* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort.show_results_html_file):
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
(test_show_results_html_file):

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

12 years agoPaddings and borders on root SVG element with viewbox causes child SVG elements to...
commit-queue@webkit.org [Wed, 22 Feb 2012 23:17:46 +0000 (23:17 +0000)]
Paddings and borders on root SVG element with viewbox causes child SVG elements to be rendered with the incorrect size
https://bugs.webkit.org/show_bug.cgi?id=78613

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-02-22
Reviewed by Nikolas Zimmermann.

Source/WebCore:

When computing its localToBorderBoxTransform, RenderSVGRoot was using its width and height
as the dimensions of the SVG viewport. However, width and height include CSS borders and
paddings, which are not part of the SVG viewport area. Now, RenderSVGRoot uses its
contentWidth and contentHeight, which correspond to the SVG viewport area.

Tests: svg/custom/svg-root-padding-border-margin-expected.html
       svg/custom/svg-root-padding-border-margin.html

* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):

LayoutTests:

* platform/chromium/test_expectations.txt:
* platform/mac/svg/custom/circle-move-invalidation-expected.png:
* platform/mac/svg/custom/circle-move-invalidation-expected.txt:

    This test contains a circle drawn inside a root SVG element with a 1px border. This bug
    was causing WebKit to render the circle 1px too large, reflected in the expectations.
    The expectations have been updated.

* svg/custom/svg-root-padding-border-margin-expected.html: Added.
* svg/custom/svg-root-padding-border-margin.html: Added.

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

12 years ago[EFL] Get rid of GeolocationServiceEfl
kubo@profusion.mobi [Wed, 22 Feb 2012 23:15:29 +0000 (23:15 +0000)]
[EFL] Get rid of GeolocationServiceEfl
https://bugs.webkit.org/show_bug.cgi?id=79270

Reviewed by Adam Barth.

These were just a bunch of dummy files with no real functionality, and
removing them helps the preparation of bug 78853, which will make
client-based geolocation the default.

No new tests, this functionality was not used.

* PlatformEfl.cmake:
* platform/efl/GeolocationServiceEfl.cpp: Removed.
* platform/efl/GeolocationServiceEfl.h: Removed.

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

12 years agoClean-up RenderTableSection::calcRowLogicalHeight
jchaffraix@webkit.org [Wed, 22 Feb 2012 23:10:53 +0000 (23:10 +0000)]
Clean-up RenderTableSection::calcRowLogicalHeight
https://bugs.webkit.org/show_bug.cgi?id=77705

Reviewed by Eric Seidel.

Refactoring / simplication of the code.

This change removes some variables that were unneeded and were
hiding what the code was really doing. Also some of the code was
split and moved down to RenderTableCell.

* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::logicalHeightForRowSizing):
* rendering/RenderTableCell.h:
(RenderTableCell):
Added the previous helper function to calculate the cell's
adjusted logical height.

* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::calcRowLogicalHeight):
Removed some variables, simplified the rowspan logic to be clearer
(and added a comment about how we handle rowspans).

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

12 years agoMove FILE_SYSTEM code out of DOMWindow and into the fileapi folder
abarth@webkit.org [Wed, 22 Feb 2012 23:07:26 +0000 (23:07 +0000)]
Move FILE_SYSTEM code out of DOMWindow and into the fileapi folder
https://bugs.webkit.org/show_bug.cgi?id=79259

Reviewed by Eric Seidel.

This patch is part of our ongoing effort to remove ifdefs from code
classes.  The FILE_SYSTEM code in DOMWindow doesn't really have any
necessary connection to DOMWindow.  DOMWindow is just the context
object that the API hangs off of.

This patch moves the FILE_SYSTEM code into the fileapi folder using
[Supplemental].

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* fileapi/DOMWindowFileSystem.cpp: Added.
(WebCore):
(WebCore::DOMWindowFileSystem::DOMWindowFileSystem):
(WebCore::DOMWindowFileSystem::~DOMWindowFileSystem):
(WebCore::DOMWindowFileSystem::webkitRequestFileSystem):
(WebCore::DOMWindowFileSystem::webkitResolveLocalFileSystemURL):
* fileapi/DOMWindowFileSystem.h: Added.
(WebCore):
(DOMWindowFileSystem):
* fileapi/DOMWindowFileSystem.idl: Added.
* page/DOMWindow.cpp:
(WebCore):
* page/DOMWindow.h:
(WebCore):
(DOMWindow):
* page/DOMWindow.idl:

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

12 years agoRe-implement many more HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macros in CSSStyleApp...
macpherson@chromium.org [Wed, 22 Feb 2012 22:54:38 +0000 (22:54 +0000)]
Re-implement many more HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macros in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=79200

Reviewed by Andreas Kling.

No new tests / refactoring only.

* css/CSSStyleApplyProperty.cpp:
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
* rendering/style/RenderStyle.h:

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

12 years ago[chromium] Cleanup unused WebDragData methods after r107846
dcheng@chromium.org [Wed, 22 Feb 2012 22:52:26 +0000 (22:52 +0000)]
[chromium] Cleanup unused WebDragData methods after r107846
https://bugs.webkit.org/show_bug.cgi?id=78837

Reviewed by Tony Chang.

The deleted methods have been replaced by items() and setItems().

* public/platform/WebDragData.h:
(WebDragData):
* src/WebDragData.cpp:
(WebKit::WebDragData::addItem): Add ensureMutable() call to verify preconditions for
                                mutating the item store.

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

12 years agoAllocations from CopiedBlocks should always be 8-byte aligned
mhahnenberg@apple.com [Wed, 22 Feb 2012 22:26:22 +0000 (22:26 +0000)]
Allocations from CopiedBlocks should always be 8-byte aligned
https://bugs.webkit.org/show_bug.cgi?id=79271

Reviewed by Geoffrey Garen.

* heap/CopiedAllocator.h:
(JSC::CopiedAllocator::allocate):
* heap/CopiedBlock.h: Changed to add padding so that the start of the payload is always
guaranteed to be 8 byte aligned on both 64- and 32-bit platforms.
(CopiedBlock):
* heap/CopiedSpace.cpp: Changed all assertions of isPointerAligned to is8ByteAligned.
(JSC::CopiedSpace::tryAllocateOversize):
(JSC::CopiedSpace::getFreshBlock):
* heap/CopiedSpaceInlineMethods.h:
(JSC::CopiedSpace::allocateFromBlock):
* runtime/JSArray.h:
(ArrayStorage): Added padding for ArrayStorage to make sure that it is always 8 byte
aligned on both 64- and 32-bit platforms.
* wtf/StdLibExtras.h:
(WTF::is8ByteAligned): Added new utility function that functions similarly to the
way isPointerAligned does, but it just always checks for 8 byte alignment.
(WTF):

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

12 years agoXSSAuditor bypass with <svg> tags and html-entities.
tsepez@chromium.org [Wed, 22 Feb 2012 22:21:14 +0000 (22:21 +0000)]
XSSAuditor bypass with <svg> tags and html-entities.
https://bugs.webkit.org/show_bug.cgi?id=78836

Reviewed by Adam Barth.

Source/WebCore:

Tests: http/tests/security/xssAuditor/iframe-onload-in-svg-tag.html
       http/tests/security/xssAuditor/script-tag-inside-svg-tag.html
       http/tests/security/xssAuditor/script-tag-inside-svg-tag2.html
       http/tests/security/xssAuditor/script-tag-inside-svg-tag3.html

* html/parser/XSSAuditor.cpp:
(WebCore::isNonCanonicalCharacter):
(WebCore::isTerminatingCharacter):
(WebCore):
(WebCore::startsHTMLCommentAt):
(WebCore::startsSingleLineCommentAt):
(WebCore::fullyDecodeString):
(WebCore::XSSAuditor::XSSAuditor):
(WebCore::XSSAuditor::init):
(WebCore::XSSAuditor::filterToken):
(WebCore::XSSAuditor::filterStartToken):
(WebCore::XSSAuditor::filterEndToken):
(WebCore::XSSAuditor::filterCharacterToken):
(WebCore::XSSAuditor::filterScriptToken):
(WebCore::XSSAuditor::filterObjectToken):
(WebCore::XSSAuditor::filterParamToken):
(WebCore::XSSAuditor::filterEmbedToken):
(WebCore::XSSAuditor::filterAppletToken):
(WebCore::XSSAuditor::filterIframeToken):
(WebCore::XSSAuditor::filterMetaToken):
(WebCore::XSSAuditor::filterBaseToken):
(WebCore::XSSAuditor::filterFormToken):
(WebCore::XSSAuditor::decodedSnippetForAttribute):
(WebCore::XSSAuditor::snippetForJavaScript):
* html/parser/XSSAuditor.h:
(XSSAuditor):

LayoutTests:

* http/tests/security/xssAuditor/iframe-onload-in-svg-tag-expected.txt: Added.
* http/tests/security/xssAuditor/iframe-onload-in-svg-tag.html: Added.
* http/tests/security/xssAuditor/script-tag-inside-svg-tag-expected.txt: Added.
* http/tests/security/xssAuditor/script-tag-inside-svg-tag.html: Added.
* http/tests/security/xssAuditor/script-tag-inside-svg-tag2-expected.txt: Added.
* http/tests/security/xssAuditor/script-tag-inside-svg-tag2.html: Added.
* http/tests/security/xssAuditor/script-tag-inside-svg-tag3-expected.txt: Added.
* http/tests/security/xssAuditor/script-tag-inside-svg-tag3.html: Added.

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

12 years agoCrash when marking cached pages for full style recalc
andersca@apple.com [Wed, 22 Feb 2012 22:09:54 +0000 (22:09 +0000)]
Crash when marking cached pages for full style recalc
https://bugs.webkit.org/show_bug.cgi?id=79276
<rdar://problem/10884036>

Reviewed by Beth Dakin.

Guard against a null history item.

* history/BackForwardController.cpp:
(WebCore::BackForwardController::markPagesForFullStyleRecalc):

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

12 years agoCrash from empty anonymous block preceding :before content
commit-queue@webkit.org [Wed, 22 Feb 2012 21:56:33 +0000 (21:56 +0000)]
Crash from empty anonymous block preceding :before content
https://bugs.webkit.org/show_bug.cgi?id=78250

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-02-22
Reviewed by David Hyatt.

Source/WebCore:

RenderListMarkers getting removed from the tree in updateMarkerLocation()
can leave parent anonymous blocks behind with no children. This was
confusing updateBeforeAfterContent() because it does not expect
an empty block to precede :before content renderers.

Fix is to remove the anonymous block if it will lose all of its children.

* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::updateMarkerLocation):

LayoutTests:

Test exercises a crashing condition from extra :before content being
created after a RenderListMarker in an anonymous block has been moved.

Also rebasing some tests that had extraneous anonymous blocks in their
render tree dumps.

* fast/css-generated-content/before-content-with-list-marker-in-anon-block-crash-expected.txt: Added
* fast/css-generated-content/before-content-with-list-marker-in-anon-block-crash.html: Added
* platform/chromium-win/editing/execCommand/create-list-with-hr-expected.txt:
* platform/gtk/editing/execCommand/create-list-with-hr-expected.txt:
* platform/mac/editing/execCommand/create-list-with-hr-expected.txt:
* platform/qt/editing/execCommand/create-list-with-hr-expected.txt:

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

12 years agoSource/WebCore: Crash due to accessing removed parent lineboxes when clearing view...
inferno@chromium.org [Wed, 22 Feb 2012 21:33:33 +0000 (21:33 +0000)]
Source/WebCore: Crash due to accessing removed parent lineboxes when clearing view selection.
https://bugs.webkit.org/show_bug.cgi?id=79264

Reviewed by Eric Seidel.

When our block needed a full layout, we were deleting our own lineboxes
and letting descendant children (at any level in hierarchy and not just
immediate children) clear their own lineboxes as we keep laying them out.
This was problematic because those descendant children lineboxes were
pointing to removed parent lineboxes in the meantime. An example scenario
where this would go wrong is first-letter object removal, which can cause
clearing view selection, leading to accessing parent lineboxes. The patch
modifies clearing the entire linebox tree upfront. It shouldn't introduce
performance issues since it will eventually happen as we are laying out
those children.

Test: fast/css-generated-content/first-letter-textbox-parent-crash.html

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutInlineChildren):

LayoutTests: Crash due to accessing removed parent lineboxes when clearing view selection.
https://bugs.webkit.org/show_bug.cgi?id=79264

Reviewed by Eric Seidel.

* fast/css-generated-content/first-letter-textbox-parent-crash-expected.txt: Added.
* fast/css-generated-content/first-letter-textbox-parent-crash.html: Added.

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

12 years agoCloning and linebox issues in multi-column layout.
inferno@chromium.org [Wed, 22 Feb 2012 21:07:18 +0000 (21:07 +0000)]
Cloning and linebox issues in multi-column layout.
https://bugs.webkit.org/show_bug.cgi?id=78273

Reviewed by Eric Seidel.

Source/WebCore:

Tests: fast/multicol/span/clone-flexbox.html
       fast/multicol/span/clone-summary.html
       fast/multicol/span/textbox-not-removed-crash.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::clone): Fix cloning algorithm to take
care of cloning descendant classes of RenderBlock.
(WebCore::RenderBlock::splitBlocks): When we move our inline children
to cloneBlock, we need to clear our entire line box tree. Any descendant
child in the hierarchy could be a part of our line box tree and will
never get cleared since the child has moved to new parent cloneBlock.

LayoutTests:

* fast/multicol/span/clone-flexbox-expected.png:
* fast/multicol/span/clone-flexbox-expected.txt: Added.
* fast/multicol/span/clone-flexbox.html: Added. Test passes if we
see two RenderFlexibox in the rendertree.
* fast/multicol/span/clone-summary-expected.png: Added.
* fast/multicol/span/clone-summary-expected.txt: Added.
* fast/multicol/span/clone-summary.html: Added. Test passes if we
see two RenderSummary in the rendertree.
* fast/multicol/span/textbox-not-removed-crash-expected.txt: Added.
* fast/multicol/span/textbox-not-removed-crash.html: Added. Test
passes it we do not crash on m_hasBadParent assert in InlineBox.

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

12 years agoCCLayerTreeHostImpl calls didDraw more frequently than willDraw
commit-queue@webkit.org [Wed, 22 Feb 2012 21:00:26 +0000 (21:00 +0000)]
CCLayerTreeHostImpl calls didDraw more frequently than willDraw
https://bugs.webkit.org/show_bug.cgi?id=79139

Patch by Tim Dresser <tdresser@chromium.org> on 2012-02-22
Reviewed by James Robinson.

Source/WebCore:

Ensure that didDraw is called if and only if willDraw was called previously.

CCLayerTreeHostImplTest.didDrawNotCalledOnHiddenLayer has been added to ensure that
hidden layers, for which willDraw is not called, will also not have didDraw called.

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::drawLayers):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::didDraw):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::DidDrawCheckLayer::willDraw):
(DidDrawCheckLayer):
(WebKit::DidDrawCheckLayer::willDrawCalled):
(WebKit::DidDrawCheckLayer::DidDrawCheckLayer):
(WebKit::TEST_F):
(WebKit):

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

12 years agoScrollbarThemeComposite::thumbPosition uses the result of a divide by zero
leviw@chromium.org [Wed, 22 Feb 2012 20:57:43 +0000 (20:57 +0000)]
ScrollbarThemeComposite::thumbPosition uses the result of a divide by zero
https://bugs.webkit.org/show_bug.cgi?id=78910

Reviewed by Eric Seidel.

Adding a check to avoid doing a floating point divide by zero and assigning NaN to an integer.
This causes problems with our conversion to subpixel layout, which asserts when we overflow.

* platform/ScrollbarThemeComposite.cpp:
(WebCore::ScrollbarThemeComposite::thumbPosition):

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

12 years agoExplicitly include unistd.h in TestNetscapePlugIn for GCC 4.7
commit-queue@webkit.org [Wed, 22 Feb 2012 20:51:32 +0000 (20:51 +0000)]
Explicitly include unistd.h in TestNetscapePlugIn for GCC 4.7
https://bugs.webkit.org/show_bug.cgi?id=77759

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-02-22
Reviewed by Tony Chang.

Fixes build with gcc 4.7.

r100432 added the include only for ANDROID; this changes the ifdef to
also cover other unix platforms. On Fedora 17 the gcc 4.7 compiler no
longer implicitly includes unistd.h from standard headers and other
unix platforms are likely to get gcc 4.7 as well in the future.

* DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:

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

12 years ago[chromium] Unreviewed gardening. Rebaseline svg expectations after r108493.
enne@google.com [Wed, 22 Feb 2012 20:43:22 +0000 (20:43 +0000)]
[chromium] Unreviewed gardening. Rebaseline svg expectations after r108493.

Blindly updating expected to actual on Chromium. They only started
failing after the base expectations were updated and don't have any
perceptual differences.

* platform/chromium-mac-snowleopard/svg/foreignObject/clip-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/foreignObject/filter-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/foreignObject/mask-expected.png: Added.
* platform/chromium-win/svg/custom/visited-link-color-expected.png: Added.
* platform/chromium-win/svg/foreignObject/clip-expected.png: Added.
* platform/chromium-win/svg/foreignObject/filter-expected.png: Added.
* platform/chromium-win/svg/foreignObject/mask-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

12 years agoHave the DynamicsCompressorNode support multi-channel data
commit-queue@webkit.org [Wed, 22 Feb 2012 20:41:29 +0000 (20:41 +0000)]
Have the DynamicsCompressorNode support multi-channel data
https://bugs.webkit.org/show_bug.cgi?id=77856

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-02-22
Reviewed by Chris Rogers.

* platform/audio/DynamicsCompressor.cpp:
(WebCore::DynamicsCompressor::DynamicsCompressor):
(WebCore::DynamicsCompressor::setEmphasisStageParameters):
(WebCore::DynamicsCompressor::process):
(WebCore::DynamicsCompressor::reset):
(WebCore::DynamicsCompressor::setNumberOfChannels):
(WebCore):
* platform/audio/DynamicsCompressor.h:
(DynamicsCompressor):
* platform/audio/DynamicsCompressorKernel.cpp:
(WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
(WebCore::DynamicsCompressorKernel::setNumberOfChannels):
(WebCore):
(WebCore::DynamicsCompressorKernel::setPreDelayTime):
(WebCore::DynamicsCompressorKernel::process):
(WebCore::DynamicsCompressorKernel::reset):
* platform/audio/DynamicsCompressorKernel.h:
(DynamicsCompressorKernel):
* webaudio/DynamicsCompressorNode.cpp:
(WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
(WebCore::DynamicsCompressorNode::initialize):

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

12 years agoNot correctly recalculating layout for elements within nested SVG elements
commit-queue@webkit.org [Wed, 22 Feb 2012 20:31:11 +0000 (20:31 +0000)]
Not correctly recalculating layout for elements within nested SVG elements
https://bugs.webkit.org/show_bug.cgi?id=77535

Patch by Bear Travis <betravis@adobe.com> on 2012-02-22
Reviewed by Dirk Schulze.

Source/WebCore:

Relatively positioned text is not correctly updating its position when the
size of its nearest viewport changes. Updating to mark text for layout when
viewPort size changes.

Test: svg/repaint/inner-svg-change-viewPort-relative.svg

* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::layoutChildren):

LayoutTests:

Adding a repaint test for a relatively sized inner svg and inner svg content when
its width/height changes.

* platform/chromium/test_expectations.txt:
* svg/repaint/inner-svg-change-viewPort-relative-expected.png: Added.
* svg/repaint/inner-svg-change-viewPort-relative-expected.txt: Added.
* svg/repaint/inner-svg-change-viewPort-relative.svg: Added.

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

12 years ago[chromium] Fix remaining compositing/rubberbanding test failures
commit-queue@webkit.org [Wed, 22 Feb 2012 20:18:30 +0000 (20:18 +0000)]
[chromium] Fix remaining compositing/rubberbanding test failures
https://bugs.webkit.org/show_bug.cgi?id=78008

These were happening due to the fact that ScrollView wasn't updating
the overhang layer when the contentsSize was updated. This is necessary
because calculateOverhangAreasForPainting() takes the contentsSize into
account when determining whether the overhang areas are visible.

Patch by Alexei Svitkine <asvitkine@chromium.org> on 2012-02-22
Reviewed by James Robinson.

Source/WebCore:

Re-enabled the following tests with updated baselines:
* platform/chromium/compositing/rubberbanding/transform-overhang-e-expected.png:
* platform/chromium/compositing/rubberbanding/transform-overhang-s-expected.png:
* platform/chromium/compositing/rubberbanding/transform-overhang-se-expected.png:
* platform/chromium/test_expectations.txt:

* platform/ScrollView.cpp:
(WebCore::ScrollView::setContentsSize):
(WebCore::ScrollView::scrollContents):
(WebCore::ScrollView::updateOverhangAreas):
(WebCore):
* platform/ScrollView.h:
(ScrollView):

LayoutTests:

Re-enabled the following tests with updated baselines:
* platform/chromium/compositing/rubberbanding/transform-overhang-e-expected.png:
* platform/chromium/compositing/rubberbanding/transform-overhang-s-expected.png:
* platform/chromium/compositing/rubberbanding/transform-overhang-se-expected.png:
* platform/chromium/test_expectations.txt:

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

12 years ago[BlackBerry] InputHandler has signed vs unsigned comparison.
commit-queue@webkit.org [Wed, 22 Feb 2012 20:15:39 +0000 (20:15 +0000)]
[BlackBerry] InputHandler has signed vs unsigned comparison.
https://bugs.webkit.org/show_bug.cgi?id=79261

Fix warning by casting the unsigned int to an int.

Patch by Mike Fenton <mifenton@rim.com> on 2012-02-22
Reviewed by Rob Buis.

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

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

12 years agoWeb Inspector: [Regression] network worker tests crash on qt.
vsevik@chromium.org [Wed, 22 Feb 2012 20:04:59 +0000 (20:04 +0000)]
Web Inspector: [Regression] network worker tests crash on qt.
https://bugs.webkit.org/show_bug.cgi?id=79263

Reviewed by Pavel Feldman.

* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::createDecoder):
(WebCore::InspectorPageAgent::cachedResourceContent):

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

12 years agoUnreviewed, rolling out r108518.
enne@google.com [Wed, 22 Feb 2012 20:02:55 +0000 (20:02 +0000)]
Unreviewed, rolling out r108518.
http://trac.webkit.org/changeset/108518
https://bugs.webkit.org/show_bug.cgi?id=75864

Breaks surfaceOcclusionWithOverlappingSiblingSurfaces unit test.

* WebCore.gypi:
* platform/graphics/chromium/cc/CCLayerIterator.cpp:
(WebCore):
(WebCore::CCLayerIteratorActions::BackToFront::begin):
(WebCore::CCLayerIteratorActions::BackToFront::end):
(WebCore::CCLayerIteratorActions::BackToFront::next):
(WebCore::CCLayerIteratorActions::FrontToBack::begin):
(WebCore::CCLayerIteratorActions::FrontToBack::end):
(WebCore::CCLayerIteratorActions::FrontToBack::next):
(WebCore::CCLayerIteratorActions::FrontToBack::goToHighestInSubtree):
* platform/graphics/chromium/cc/CCLayerIterator.h:
(WebCore):
(WebCore::CCLayerIterator::CCLayerIterator):
(WebCore::CCLayerIterator::operator++):
(WebCore::CCLayerIterator::operator==):
(WebCore::CCLayerIterator::operator->):
(WebCore::CCLayerIterator::operator*):
(WebCore::CCLayerIterator::representsTargetRenderSurface):
(WebCore::CCLayerIterator::representsContributingRenderSurface):
(WebCore::CCLayerIterator::targetRenderSurfaceLayer):
(CCLayerIterator):
(BackToFront):
(FrontToBack):
* platform/graphics/chromium/cc/CCLayerIteratorPosition.h: Added.
(WebCore):
(CCLayerIteratorPositionValue):
(WebCore::CCLayerIteratorPosition::CCLayerIteratorPosition):
(CCLayerIteratorPosition):
(WebCore::CCLayerIteratorPosition::currentLayer):
(WebCore::CCLayerIteratorPosition::currentLayerRepresentsContributingRenderSurface):
(WebCore::CCLayerIteratorPosition::currentLayerRepresentsTargetRenderSurface):
(WebCore::CCLayerIteratorPosition::targetRenderSurfaceLayer):
(WebCore::CCLayerIteratorPosition::targetRenderSurface):
(WebCore::CCLayerIteratorPosition::targetRenderSurfaceChildren):
(WebCore::CCLayerIteratorPosition::operator==):

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

12 years agoREGRESSION (r62632): page-break-inside: avoid is ignored
mitz@apple.com [Wed, 22 Feb 2012 19:37:26 +0000 (19:37 +0000)]
REGRESSION (r62632): page-break-inside: avoid is ignored
https://bugs.webkit.org/show_bug.cgi?id=79262

Reviewed by Adele Peterson.

Source/WebCore:

This was disabled in r62632 because of <http://webkit.org/b/41532>. Changes to the
pagination code since then have invalidated that bug, so enabling the feature again does not
re-introduce the bug.

Updated expected results for printing/page-break-inside-avoid.html.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::adjustForUnsplittableChild):

LayoutTests:

* printing/page-break-inside-avoid-expected.txt:

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

12 years agoUnreviewed, rolling out r108522.
philn@webkit.org [Wed, 22 Feb 2012 19:20:33 +0000 (19:20 +0000)]
Unreviewed, rolling out r108522.
http://trac.webkit.org/changeset/108522
https://bugs.webkit.org/show_bug.cgi?id=76181

Broke 4 fullscreen tests on GTK.

Source/WebKit/gtk:

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::supportsFullScreenForElement):
(WebKit::ChromeClient::enterFullScreenForElement):
(WebKit::ChromeClient::exitFullScreenForElement):
* WebCoreSupport/ChromeClientGtk.h:
(ChromeClient):
* tests/testwebview.c:
* webkit/webkitwebview.cpp:
(webkit_web_view_class_init):
* webkit/webkitwebview.h:
(_WebKitWebViewClass):

Tools:

* GtkLauncher/main.c:
(createBrowser):
(createWindow):

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

12 years ago[chromium] Unreviewed gardening. Mark some XHR tests as asserting.
enne@google.com [Wed, 22 Feb 2012 19:14:55 +0000 (19:14 +0000)]
[chromium] Unreviewed gardening. Mark some XHR tests as asserting.
https://bugs.webkit.org/show_bug.cgi?id=79229

* platform/chromium/test_expectations.txt:

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

12 years ago[GStreamer] webkitwebsrc: use HTTP referer provided by MediaPlayer
philn@webkit.org [Wed, 22 Feb 2012 19:12:36 +0000 (19:12 +0000)]
[GStreamer] webkitwebsrc: use HTTP referer provided by MediaPlayer
https://bugs.webkit.org/show_bug.cgi?id=79236

Reviewed by Martin Robinson.

Store a pointer to the MediaPlayer object in the private structure
of the WebKitWebSrc element so we can call its public methods,
like ::referrer().

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::sourceChanged):
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(_WebKitWebSrcPrivate):
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.h:

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

12 years ago[GTK] Clean build is broken when using make -j
mrobinson@webkit.org [Wed, 22 Feb 2012 18:56:40 +0000 (18:56 +0000)]
[GTK] Clean build is broken when using make -j
https://bugs.webkit.org/show_bug.cgi?id=76388

.:

* GNUmakefile.am: Add new global source list variables.

Source/WebCore:

No new tests. This is just a build fix.

Use order-only dependencies to ensure that built sources are built before
files that depend on them.

* GNUmakefile.am: Establish an order-only dependency on some built sources before starting
to build non-generated sources. Rename some temporary files and variables to be more consistent.
* bindings/gobject/GNUmakefile.am: Updated to reflect new variable names.

Source/WebKit2:

* GNUmakefile.am: Add some WebKit2 sources to global sources lists
so that we can refer to them in separate GNUmakefiles.

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

12 years ago[GTK] FullScreen signals
philn@webkit.org [Wed, 22 Feb 2012 18:56:25 +0000 (18:56 +0000)]
[GTK] FullScreen signals
https://bugs.webkit.org/show_bug.cgi?id=76181

Reviewed by Martin Robinson.

Source/WebKit/gtk:

Added entering-fullscreen and leaving-fullscreen signals, meant to
be used by the user agent to be notified when an element requests
full screen display and when the full screen display is to be
disabled.

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::supportsFullScreenForElement):
(WebKit::onFullscreenGtkKeyPressEvent):
(WebKit::ChromeClient::cancelFullScreen):
(WebKit::ChromeClient::enterFullScreenForElement):
(WebKit::ChromeClient::exitFullScreenForElement):
* WebCoreSupport/ChromeClientGtk.h:
* tests/testwebview.c:
* webkit/webkitwebview.cpp:
(webkit_web_view_real_entering_fullscreen):
(webkit_web_view_real_leaving_fullscreen):
(webkit_web_view_class_init):
* webkit/webkitwebview.h:

Tools:

Use the two new entering/leaving fullscreen signals to hide/show
the tool bar, the status bar and ask the user's permission before
entering fullscreen.

* GtkLauncher/main.c:
(webViewFullscreenMessageWindowClose):
(webViewWindowStateEvent):
(hide_widget):
(show_widget):
(webViewEnteringFullScreen):
(webViewLeavingFullScreen):
(createBrowser):
(createWindow):

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

12 years ago[Chromium] New CCOcclusionTracker class with tests
commit-queue@webkit.org [Wed, 22 Feb 2012 18:45:57 +0000 (18:45 +0000)]
[Chromium] New CCOcclusionTracker class with tests
https://bugs.webkit.org/show_bug.cgi?id=78549

Patch by Dana Jansens <danakj@chromium.org> on 2012-02-22
Reviewed by James Robinson.

Source/WebCore:

Adds a CCOcclusionTrackerBase template class that is able to track occlusion
of layers while traversing the layer tree from front-to-back, with typedefed
versions for the main and impl threads.

At each step of the front-to-back traversal, the class should be notified of
changes to the current render target, and when done working with a layer, the
layer is added the tracked occlusion.

The class provides tests for checking if a rect in content space
for a layer/surface is occluded by others in front of it.

Unit tests: CCOcclusionTrackerTest.cpp

* WebCore.gypi:
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp: Added.
(WebCore):
(WebCore::::enterTargetRenderSurface):
(WebCore::::finishedTargetRenderSurface):
(WebCore::transformSurfaceOpaqueRegion):
(WebCore::::leaveToTargetRenderSurface):
(WebCore::contentToScreenSpaceTransform):
(WebCore::contentToTargetSurfaceTransform):
(WebCore::computeOcclusionBehindLayer):
(WebCore::::markOccludedBehindLayer):
(WebCore::testContentRectOccluded):
(WebCore::::occluded):
(WebCore::::surfaceOccluded):
(WebCore::rectSubtractRegion):
(WebCore::computeUnoccludedContentRect):
(WebCore::::unoccludedContentRect):
(WebCore::::surfaceUnoccludedContentRect):
(WebCore::::currentOcclusionInScreenSpace):
(WebCore::::currentOcclusionInTargetSurface):
* platform/graphics/chromium/cc/CCOcclusionTracker.h: Added.
(WebCore):
(CCOcclusionTrackerBase):
(WebCore::CCOcclusionTrackerBase::CCOcclusionTrackerBase):
(StackObject):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/CCLayerTreeHostCommonTest.cpp:
(WebCore):
* tests/CCOcclusionTrackerTest.cpp: Added.
(WebCore):
(WebCore::setLayerPropertiesForTesting):
(LayerChromiumWithForcedDrawsContent):
(WebCore::LayerChromiumWithForcedDrawsContent::LayerChromiumWithForcedDrawsContent):
(WebCore::LayerChromiumWithForcedDrawsContent::drawsContent):
(TestCCOcclusionTracker):
(WebCore::TestCCOcclusionTracker::occlusionInScreenSpace):
(WebCore::TestCCOcclusionTracker::occlusionInTargetSurface):
(WebCore::TestCCOcclusionTracker::setOcclusionInScreenSpace):
(WebCore::TestCCOcclusionTracker::setOcclusionInTargetSurface):
(WebCore::TEST):

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

12 years ago[Chromium] IndexedDB: Integrate with about:tracing
jsbell@chromium.org [Wed, 22 Feb 2012 18:42:12 +0000 (18:42 +0000)]
[Chromium] IndexedDB: Integrate with about:tracing
https://bugs.webkit.org/show_bug.cgi?id=78831

Annotate interesting IDB functions so they show up in the
tracing utility included in the Chromium port.

Reviewed by Tony Chang.

* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore::createIDBKeyFromSerializedValueAndKeyPath):
(WebCore::injectIDBKeyIntoSerializedValue):
* storage/IDBCursor.cpp:
(WebCore::IDBCursor::direction):
(WebCore::IDBCursor::key):
(WebCore::IDBCursor::primaryKey):
(WebCore::IDBCursor::value):
(WebCore::IDBCursor::update):
(WebCore::IDBCursor::continueFunction):
(WebCore::IDBCursor::deleteFunction):
* storage/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::direction):
(WebCore::IDBCursorBackendImpl::key):
(WebCore::IDBCursorBackendImpl::primaryKey):
(WebCore::IDBCursorBackendImpl::value):
(WebCore::IDBCursorBackendImpl::update):
(WebCore::IDBCursorBackendImpl::continueFunction):
(WebCore::IDBCursorBackendImpl::continueFunctionInternal):
(WebCore::IDBCursorBackendImpl::deleteFunction):
(WebCore::IDBCursorBackendImpl::prefetchContinue):
(WebCore::IDBCursorBackendImpl::prefetchContinueInternal):
(WebCore::IDBCursorBackendImpl::prefetchReset):
(WebCore::IDBCursorBackendImpl::close):
* storage/IDBDatabase.cpp:
(WebCore::IDBDatabase::dispatchEvent):
* storage/IDBIndex.cpp:
(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::count):
(WebCore::IDBIndex::openKeyCursor):
(WebCore::IDBIndex::get):
(WebCore::IDBIndex::getKey):
* storage/IDBIndexBackendImpl.cpp:
(WebCore::IDBIndexBackendImpl::openCursorInternal):
(WebCore::IDBIndexBackendImpl::openCursor):
(WebCore::IDBIndexBackendImpl::openKeyCursor):
(WebCore::IDBIndexBackendImpl::countInternal):
(WebCore::IDBIndexBackendImpl::count):
(WebCore::IDBIndexBackendImpl::getInternal):
(WebCore::IDBIndexBackendImpl::get):
(WebCore::IDBIndexBackendImpl::getKey):
* storage/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::name):
(WebCore::IDBObjectStore::keyPath):
(WebCore::IDBObjectStore::indexNames):
(WebCore::IDBObjectStore::transaction):
(WebCore::IDBObjectStore::get):
(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(WebCore::IDBObjectStore::deleteFunction):
(WebCore::IDBObjectStore::clear):
(WebCore::IDBObjectStore::createIndex):
(WebCore::IDBObjectStore::index):
(WebCore::IDBObjectStore::openCursor):
(WebCore::IDBObjectStore::count):
* storage/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::get):
(WebCore::IDBObjectStoreBackendImpl::getInternal):
(WebCore::fetchKeyFromKeyPath):
(WebCore::injectKeyIntoKeyPath):
(WebCore::IDBObjectStoreBackendImpl::put):
(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteFunction):
(WebCore::IDBObjectStoreBackendImpl::deleteInternal):
(WebCore::IDBObjectStoreBackendImpl::clear):
(WebCore::IDBObjectStoreBackendImpl::openCursor):
(WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
(WebCore::IDBObjectStoreBackendImpl::count):
(WebCore::IDBObjectStoreBackendImpl::countInternal):
* storage/IDBRequest.cpp:
(WebCore::IDBRequest::onSuccess):
(WebCore::IDBRequest::onSuccessWithContinuation):
(WebCore::IDBRequest::dispatchEvent):
* storage/IDBTracing.h: Added.
* storage/IDBTransaction.cpp:
(WebCore::IDBTransaction::dispatchEvent):
* storage/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::commit):
(WebCore::IDBTransactionBackendImpl::taskTimerFired):
(WebCore::IDBTransactionBackendImpl::taskEventTimerFired):

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

12 years ago[chromium] Push CCLayerIteratorPosition struct into CCLayerIterator class.
commit-queue@webkit.org [Wed, 22 Feb 2012 18:35:46 +0000 (18:35 +0000)]
[chromium] Push CCLayerIteratorPosition struct into CCLayerIterator class.
https://bugs.webkit.org/show_bug.cgi?id=75864

Patch by Dana Jansens <danakj@chromium.org> on 2012-02-22
Reviewed by James Robinson.

* platform/graphics/chromium/cc/CCLayerIterator.cpp:
(WebCore::CCLayerIteratorActions::BackToFront::begin):
(WebCore::CCLayerIteratorActions::BackToFront::end):
(WebCore::CCLayerIteratorActions::BackToFront::next):
(WebCore::CCLayerIteratorActions::FrontToBack::begin):
(WebCore::CCLayerIteratorActions::FrontToBack::end):
(WebCore::CCLayerIteratorActions::FrontToBack::next):
(WebCore::CCLayerIteratorActions::FrontToBack::goToHighestInSubtree):
* platform/graphics/chromium/cc/CCLayerIterator.h:
(WebCore::CCLayerIterator::CCLayerIterator):
(WebCore::CCLayerIterator::operator++):
(WebCore::CCLayerIterator::operator==):
(WebCore::CCLayerIterator::operator->):
(WebCore::CCLayerIterator::operator*):
(WebCore::CCLayerIterator::representsTargetRenderSurface):
(WebCore::CCLayerIterator::representsContributingRenderSurface):
(WebCore::CCLayerIterator::currentLayer):
(WebCore::CCLayerIterator::currentLayerRepresentsContributingRenderSurface):
(WebCore::CCLayerIterator::currentLayerRepresentsTargetRenderSurface):
(WebCore::CCLayerIterator::targetRenderSurfaceLayer):
(WebCore::CCLayerIterator::targetRenderSurface):
(WebCore::CCLayerIterator::targetRenderSurfaceChildren):
* platform/graphics/chromium/cc/CCLayerIteratorPosition.h: Removed.

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

12 years ago[chromium] Unreviewed gardening. Marking svg failures from r108494.
enne@google.com [Wed, 22 Feb 2012 18:35:15 +0000 (18:35 +0000)]
[chromium] Unreviewed gardening. Marking svg failures from r108494.
https://bugs.webkit.org/show_bug.cgi?id=41386

* platform/chromium/test_expectations.txt:

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

12 years agoUpdate Linux ChromiumOS builders in flakiness dashboard.
commit-queue@webkit.org [Wed, 22 Feb 2012 18:25:13 +0000 (18:25 +0000)]
Update Linux ChromiumOS builders in flakiness dashboard.
https://bugs.webkit.org/show_bug.cgi?id=79238

Patch by Rob Flack <flackr@chromium.org> on 2012-02-22
Reviewed by Ojan Vafai.

* TestResultServer/static-dashboards/builders.js:

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

12 years agowebkitpy: test_function_length_check_definition_huge_lines is slow
dpranke@chromium.org [Wed, 22 Feb 2012 18:19:30 +0000 (18:19 +0000)]
webkitpy: test_function_length_check_definition_huge_lines is slow
https://bugs.webkit.org/show_bug.cgi?id=79185

Reviewed by Adam Barth.

This test takes ~3 seconds to run, apparently because we're
running a test on a 10,000 line function :). Dropping the
function length to 640 still exercises the code path and
provides a 10x speedup.

* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest):
(CheckForFunctionLengthsTest.test_function_length_check_definition_huge_lines):

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

12 years agowebkitpy: speed up FileLockTest.test_lock_lifecycle
dpranke@chromium.org [Wed, 22 Feb 2012 18:16:54 +0000 (18:16 +0000)]
webkitpy: speed up FileLockTest.test_lock_lifecycle
https://bugs.webkit.org/show_bug.cgi?id=79189

Reviewed by Adam Barth.

The unit test had a second lock trying to acquire a
lock already held, and a hard-coded timeout of one second.
I have changed the timeouts to a tenth of a second (which
is probably still fine) and changed the hard-spin on
the lock to a slow-spin every hundredth of a second.

* Scripts/webkitpy/common/system/file_lock.py:
(FileLock.acquire_lock):
* Scripts/webkitpy/common/system/file_lock_integrationtest.py:
(FileLockTest.setUp):
(FileLockTest.test_stuck_lock):

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

12 years agobuild-webkit should use environment variable at number of CPU
rgabor@webkit.org [Wed, 22 Feb 2012 18:10:40 +0000 (18:10 +0000)]
build-webkit should use environment variable at number of CPU
detection on all platform
https://bugs.webkit.org/show_bug.cgi?id=79227

Reviewed by Martin Robinson.

* Scripts/webkitdirs.pm:
(determineNumberOfCPUs):

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

12 years ago[GTK][WK2] Add WebGL WebSetting.
commit-queue@webkit.org [Wed, 22 Feb 2012 17:44:16 +0000 (17:44 +0000)]
[GTK][WK2] Add WebGL WebSetting.
https://bugs.webkit.org/show_bug.cgi?id=79217

Patch by Antaryami Pandia <antaryami.pandia@motorola.com> on 2012-02-22
Reviewed by Martin Robinson.

Add a WebSetting to enable/disable Webgl.

* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsSetProperty):
(webKitSettingsGetProperty):
(webkit_settings_class_init):
(webkit_settings_set_enable_webaudio):
(webkit_settings_get_enable_webgl):
(webkit_settings_set_enable_webgl):
* UIProcess/API/gtk/WebKitSettings.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
* UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
(testWebKitSettings):

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

12 years agoWeb Inspector: console doesn't show properly arrays from which tail values have been...
pfeldman@chromium.org [Wed, 22 Feb 2012 17:39:03 +0000 (17:39 +0000)]
Web Inspector: console doesn't show properly arrays from which tail values have been deleted
https://bugs.webkit.org/show_bug.cgi?id=79242

Reviewed by Yury Semikhatsky.

Source/WebCore:

* English.lproj/localizedStrings.js:
* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl.prototype._printArray.appendUndefined):
(WebInspector.ConsoleMessageImpl.prototype._printArray):

LayoutTests:

* inspector/console/console-format-expected.txt:
* inspector/console/console-format.html:
* platform/chromium/inspector/console/console-format-collections-expected.txt:
* platform/chromium/inspector/console/console-format-expected.txt:

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

12 years agoWeb Inspector: warning external font mime (font/font/woff).
pfeldman@chromium.org [Wed, 22 Feb 2012 17:09:53 +0000 (17:09 +0000)]
Web Inspector: warning external font mime (font/font/woff).
https://bugs.webkit.org/show_bug.cgi?id=79244

Reviewed by Yury Semikhatsky.

* inspector/front-end/Resource.js:

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

12 years agoWeb Inspector: use dots as markers on the counter graphs
yurys@chromium.org [Wed, 22 Feb 2012 17:05:09 +0000 (17:05 +0000)]
Web Inspector: use dots as markers on the counter graphs
https://bugs.webkit.org/show_bug.cgi?id=79243

Changed counter graphs marker and counter text styles.

Reviewed by Pavel Feldman.

* English.lproj/localizedStrings.js:
* inspector/front-end/MemoryStatistics.js:
(WebInspector.MemoryStatistics):
(WebInspector.MemoryStatistics.prototype._createCounterSidebarElement):
(WebInspector.MemoryStatistics.prototype.addTimlineEvent):
(WebInspector.MemoryStatistics.prototype._draw):
(WebInspector.MemoryStatistics.prototype._onMouseOut):
(WebInspector.MemoryStatistics.prototype._onMouseOver):
(WebInspector.MemoryStatistics.prototype._onMouseMove):
(WebInspector.MemoryStatistics.prototype._refreshCurrentValues):
(WebInspector.MemoryStatistics.prototype._recordIndexAt):
(WebInspector.MemoryStatistics.prototype._highlightCurrentPositionOnGraphs):
(WebInspector.MemoryStatistics.prototype._clearMarkers):
(WebInspector.MemoryStatistics.prototype._saveImageUnderMarker):
(WebInspector.MemoryStatistics.prototype.refresh):
(WebInspector.MemoryStatistics.prototype._drawPolyline):
(WebInspector.MemoryStatistics.prototype._clear):
* inspector/front-end/timelinePanel.css:
(.memory-counter-sidebar-info):
(.memory-counter-sidebar-info .title):
(.memory-counter-sidebar-info .counter-value):

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

12 years agoWeb Inspector: make 'glue asynchronous events' optional.
pfeldman@chromium.org [Wed, 22 Feb 2012 16:54:52 +0000 (16:54 +0000)]
Web Inspector: make 'glue asynchronous events' optional.
https://bugs.webkit.org/show_bug.cgi?id=79240

Reviewed by Yury Semikhatsky.

* English.lproj/localizedStrings.js:
* inspector/front-end/Images/statusbarButtonGlyphs.png:
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype.get statusBarItems):
(WebInspector.TimelinePanel.prototype._createStatusbarButtons):
(WebInspector.TimelinePanel.prototype._glueParentButtonClicked):
(WebInspector.TimelinePanel.prototype._toggleStartAtZeroButtonClicked):
(WebInspector.TimelinePanel.prototype._repopulateRecords):
(WebInspector.TimelinePanel.prototype._findParentRecord):
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
(WebInspector.TimelinePanel.prototype.sidebarResized):
(WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages):
(WebInspector.TimelineCalculator.prototype.computeBarGraphWindowPosition):
(WebInspector.TimelineRecordGraphRow):
(WebInspector.TimelineRecordGraphRow.prototype.update):
(WebInspector.TimelinePanel.FormattedRecord.prototype._calculateAggregatedStats):
* inspector/front-end/timelinePanel.css:
(.glue-async-status-bar-item .glyph):
(.timeline-start-at-zero-status-bar-item .glyph):

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

12 years agoWeb Inspector: [REGRESSION] Console xhr logging is broken for async xhrs since r107672.
vsevik@chromium.org [Wed, 22 Feb 2012 16:47:09 +0000 (16:47 +0000)]
Web Inspector: [REGRESSION] Console xhr logging is broken for async xhrs since r107672.
https://bugs.webkit.org/show_bug.cgi?id=79229

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/console-xhr-logging-async.html

* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::setInitialScriptContent):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::didFinishLoading):

LayoutTests:

* http/tests/inspector/console-xhr-logging-async-expected.txt: Added.
* http/tests/inspector/console-xhr-logging-async.html: Added.

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

12 years ago[Qt] REGRESSION(r108108): It made 3 fast/repaint tests fail
mihnea@adobe.com [Wed, 22 Feb 2012 16:29:33 +0000 (16:29 +0000)]
[Qt] REGRESSION(r108108): It made 3 fast/repaint tests fail
https://bugs.webkit.org/show_bug.cgi?id=78960

Reviewed by Csaba Osztrogonác.

Source/WebKit/qt:

* Api/qwebsettings.cpp:
(QWebSettingsPrivate::apply):
(QWebSettings::QWebSettings):
* Api/qwebsettings.h:

Tools:

* DumpRenderTree/qt/LayoutTestControllerQt.cpp:
(LayoutTestController::overridePreference):

LayoutTests:

* fast/repaint/japanese-rl-selection-repaint-in-regions.html:
* fast/repaint/line-flow-with-floats-in-regions.html:
* fast/repaint/overflow-flipped-writing-mode-block-in-regions.html:
* fast/repaint/region-painting-invalidation.html:
* fast/repaint/region-painting-via-layout.html:
* platform/qt/Skipped:

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

12 years agoWeb Inspector: fix memory counters and start-at-zero modes of timeline panels to...
caseq@chromium.org [Wed, 22 Feb 2012 16:08:25 +0000 (16:08 +0000)]
Web Inspector: fix memory counters and start-at-zero modes of timeline panels to co-exist nicely
https://bugs.webkit.org/show_bug.cgi?id=79241

Reviewed by Yury Semikhatsky.

* inspector/front-end/MemoryStatistics.js:
(WebInspector.MemoryStatistics.prototype.addTimlineEvent):
* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewPane):
(WebInspector.TimelineOverviewPane.prototype._showTimelines):
(WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
(WebInspector.TimelineOverviewPane.prototype.setStartAtZero):
(WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._timelinesOverviewModeChanged):

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

12 years ago[Chromium] video-referer.html fails
eric.carlson@apple.com [Wed, 22 Feb 2012 15:42:03 +0000 (15:42 +0000)]
[Chromium] video-referer.html fails
https://bugs.webkit.org/show_bug.cgi?id=79239

Unreviewed, skipping a test that started to fail after r108387.

* platform/chromium/test_expectations.txt:

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

12 years agoWeb Inspector: [experimental] add a mode to display timeline events aligned by the...
caseq@chromium.org [Wed, 22 Feb 2012 15:16:45 +0000 (15:16 +0000)]
Web Inspector: [experimental] add a mode to display timeline events aligned by the start time
https://bugs.webkit.org/show_bug.cgi?id=79123

Reviewed by Pavel Feldman.

* inspector/front-end/Images/statusbarButtonGlyphs.png:
* inspector/front-end/Settings.js:
(WebInspector.ExperimentsSettings):
* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewPane):
(WebInspector.TimelineOverviewPane.prototype._showTimelines):
(WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
(WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
(WebInspector.TimelineOverviewPane.prototype.setStartAtZero):
(WebInspector.TimelineOverviewPane.prototype.update):
(WebInspector.TimelineOverviewPane.prototype.reset):
(WebInspector.TimelineOverviewWindow):
(WebInspector.TimelineOverviewWindow.prototype.reset):
(WebInspector.TimelineOverviewWindow.prototype._setWindowPosition):
(WebInspector.TimelineOverviewWindow.prototype.scrollWindow):
(WebInspector.TimelineStartAtZeroOverview):
(WebInspector.TimelineStartAtZeroOverview.prototype.reset):
(WebInspector.TimelineStartAtZeroOverview.prototype.update):
(WebInspector.TimelineStartAtZeroOverview.prototype._filterRecords):
(WebInspector.TimelineStartAtZeroOverview.prototype._buildBar):
(WebInspector.TimelineStartAtZeroOverview.prototype._onWindowChanged):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype.get statusBarItems):
(WebInspector.TimelinePanel.prototype._createStatusbarButtons):
(WebInspector.TimelinePanel.prototype._toggleStartAtZeroButtonClicked):
(WebInspector.TimelinePanel.prototype.get _startAtZero):
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
(WebInspector.TimelinePanel.prototype.sidebarResized):
(WebInspector.TimelinePanel.prototype._onRecordsCleared):
(WebInspector.TimelinePanel.prototype._resetPanel):
(WebInspector.TimelinePanel.prototype._scheduleRefresh):
(WebInspector.TimelinePanel.prototype._refresh):
(WebInspector.TimelinePanel.prototype._filterRecords):
(WebInspector.TimelinePanel.prototype._refreshRecords):
(WebInspector.TimelineCalculator.prototype.computeBarGraphWindowPosition):
(WebInspector.TimelineStartAtZeroCalculator):
(WebInspector.TimelineStartAtZeroCalculator.prototype.computeBarGraphPercentages):
(WebInspector.TimelineStartAtZeroCalculator.prototype.computeBarGraphWindowPosition):
(WebInspector.TimelineStartAtZeroCalculator.prototype.calculateWindow):
(WebInspector.TimelineStartAtZeroCalculator.prototype.reset):
(WebInspector.TimelineStartAtZeroCalculator.prototype.updateBoundaries):
(WebInspector.TimelineStartAtZeroCalculator.prototype.formatValue):
(WebInspector.TimelinePanel.FormattedRecord):
(WebInspector.TimelinePanel.FormattedRecord.prototype._generateAggregatedInfo):
(WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
(WebInspector.TimelinePanel.FormattedRecord.prototype._calculateAggregatedStats):
(WebInspector.TimelinePanel.FormattedRecord.prototype.get aggregatedStats):
(WebInspector.TimelineModel.prototype.get records):
(WebInspector.TimelinePresentationModel):
(WebInspector.TimelinePresentationModel.prototype.reset):
(WebInspector.TimelinePresentationModel.prototype.setWindowIndices):
(WebInspector.TimelineRecordFilter):
(WebInspector.TimelineRecordFilter.prototype.accept):
(WebInspector.TimelineStartAtZeroRecordFilter):
(WebInspector.TimelineStartAtZeroRecordFilter.prototype.accept):
* inspector/front-end/timelinePanel.css:
(.timeline-start-at-zero #timeline-overview-sidebar):
(.timeline-start-at-zero #timeline-overview-grid):
(.timeline-overview-window):
(.timeline-start-at-zero .timeline-overview-window):
(.timeline-start-at-zero .timeline-overview-dividers-background):
(.timeline-overview-window-rulers):
(.timeline-start-at-zero #timeline-overview-memory):
(.popover .timeline-loading):
(.popover .timeline-scripting):
(.popover .timeline-rendering):
(.timeline-start-at-zero-status-bar-item .glyph):
(.timeline-start-at-zero-status-bar-item.toggled-on .glyph):
(.timeline-overview-start-at-zero):
(.timeline-overview-start-at-zero-bars):
(.timeline-overview-start-at-zero-bars .padding):
(.timeline-overview-start-at-zero-bars .timeline-bar-vertical):
(.timeline-bar-vertical div:first-child):
(.timeline-bar-vertical .timeline-loading):
(.timeline-bar-vertical .timeline-scripting):
(.timeline-bar-vertical .timeline-rendering):

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

12 years ago[Qt] Disregard previous backing store as soon as possible https://bugs.webkit.org...
kenneth@webkit.org [Wed, 22 Feb 2012 15:15:10 +0000 (15:15 +0000)]
[Qt] Disregard previous backing store as soon as possible https://bugs.webkit.org/show_bug.cgi?id=79232

Reviewed by Simon Hausmann and No'am Rosenthal.

Source/WebCore:

Make it possible to drop non-visible tiles and to test
if the current visible rect is fully covered.

* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::visibleContentsRect):
(WebCore::TiledBackingStore::coverageRatio):
(WebCore::TiledBackingStore::visibleAreaIsCovered):
(WebCore):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::removeAllNonVisibleTiles):
* platform/graphics/TiledBackingStore.h:
(TiledBackingStore):

Source/WebKit2:

Between creating the new backing store and painting the content,
we do not want to drop the previous one as that might result in
briefly seeing flickering as the old tiles may be dropped before
something replaces them.

But we do need to drop it at some point and we need to make sure
to not spike the memory usage before of this.

What we now do, is to store the previous backing store as before,
but drop all tiles which are not visible and then drop it as soon
as the visible rect (which might change due if followed by a quick
panning) has been fully covered by tiles.

* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::setContentsScale):
(WebCore::WebGraphicsLayer::updateContentBuffers):

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

12 years agoUnreviewed, skipping one more mediastream failure on GTK.
philn@webkit.org [Wed, 22 Feb 2012 15:12:10 +0000 (15:12 +0000)]
Unreviewed, skipping one more mediastream failure on GTK.

* platform/gtk/Skipped:

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

12 years ago[Qt][WK2] Implement proxy authentication handling.
commit-queue@webkit.org [Wed, 22 Feb 2012 15:11:31 +0000 (15:11 +0000)]
[Qt][WK2] Implement proxy authentication handling.
https://bugs.webkit.org/show_bug.cgi?id=78792

Patch by Michael Brüning <michael.bruning@nokia.com> on 2012-02-22
Reviewed by Simon Hausmann.

This patch corrects two bugs with the previous implementation:
1. The signal proxyAuthenticationRequired was not connected to a
   slot.
2. The slot onProxyAuthenticationRequired had the wrong parameters.

* WebProcess/qt/QtNetworkAccessManager.cpp:
(WebKit::QtNetworkAccessManager::QtNetworkAccessManager):
(WebKit::QtNetworkAccessManager::onProxyAuthenticationRequired):
* WebProcess/qt/QtNetworkAccessManager.h: Added include.
(QtNetworkAccessManager):

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

12 years ago[Qt] Move QMenu dependant scrollbar context menu handling out of WebCore
hausmann@webkit.org [Wed, 22 Feb 2012 15:10:21 +0000 (15:10 +0000)]
[Qt] Move QMenu dependant scrollbar context menu handling out of WebCore
https://bugs.webkit.org/show_bug.cgi?id=79233

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Move the code into WebKit/qt/Api/qwebpage.cpp, the only place where it is called from.

* Target.pri: Remove ScrollbarQt.cpp from build.
* platform/Scrollbar.h: Remove Qt-only context menu handling but make moveThum
accessible from the outside.
* platform/qt/ScrollbarQt.cpp: Removed. Not needed anymore.

Source/WebKit/qt:

Move scrollbar context menu handling here, it's the only place where it is
used.

* Api/qwebpage.cpp:
(handleScrollbarContextMenuEvent):
(QWebPage::swallowContextMenuEvent):

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

12 years agoWeb Inspector: retrieving content for some XHR requests crashes inspected page renderer
vsevik@chromium.org [Wed, 22 Feb 2012 15:07:58 +0000 (15:07 +0000)]
Web Inspector: retrieving content for some XHR requests crashes inspected page renderer
https://bugs.webkit.org/show_bug.cgi?id=79026

Reviewed by Pavel Feldman.

Source/WebCore:

Fixed loading empty xhr content and xhr content decoding that was
broken in r107672.

Tests: http/tests/inspector/network/network-cyrillic-xhr.html
       http/tests/inspector/network/network-empty-xhr.html

* inspector/InspectorPageAgent.cpp:
(WebCore):
(WebCore::InspectorPageAgent::createDecoder):
(WebCore::InspectorPageAgent::cachedResourceContent):
* inspector/InspectorPageAgent.h:
(WebCore):
* inspector/NetworkResourcesData.cpp:
(WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
(WebCore::NetworkResourcesData::responseReceived):
* inspector/NetworkResourcesData.h:
(WebCore::NetworkResourcesData::ResourceData::decoder):
(WebCore::NetworkResourcesData::ResourceData::setDecoder):

LayoutTests:

* http/tests/inspector/network/network-cyrillic-xhr-expected.txt: Added.
* http/tests/inspector/network/network-cyrillic-xhr.html: Added.
* http/tests/inspector/network/network-empty-xhr-expected.txt: Added.
* http/tests/inspector/network/network-empty-xhr.html: Added.
* http/tests/inspector/network/resources/cyrillic.html: Added.
* http/tests/inspector/network/resources/empty.html: Added.

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

12 years agoWeb Inspector: CodeGeneratorInspector.py: remove neural-net-style constructions
yurys@chromium.org [Wed, 22 Feb 2012 15:05:19 +0000 (15:05 +0000)]
Web Inspector: CodeGeneratorInspector.py: remove neural-net-style constructions
https://bugs.webkit.org/show_bug.cgi?id=79153

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-02-22
Reviewed by Yury Semikhatsky.

CParamType class removed completely, some ("virtual") methods are
removed. TypeModel notion is added instead with some minor helper
classes and methods.

* inspector/CodeGeneratorInspector.py:
(DomainNameFixes):
(RawTypes.BaseType):
(RawTypes.String):
(RawTypes.String.get_raw_type_model):
(RawTypes.Int):
(RawTypes.Int.get_raw_type_model):
(RawTypes.Number):
(RawTypes.Number.get_raw_type_model):
(RawTypes.Bool):
(RawTypes.Bool.get_raw_type_model):
(RawTypes.Object):
(RawTypes.Object.get_raw_type_model):
(RawTypes.Any):
(RawTypes.Any.get_raw_type_model):
(RawTypes.Array):
(RawTypes.Array.get_raw_type_model):
(replace_right_shift):
(CommandReturnPassModel):
(CommandReturnPassModel.ByReference):
(CommandReturnPassModel.ByReference.__init__):
(CommandReturnPassModel.ByReference.get_return_var_type):
(CommandReturnPassModel.get_output_argument_prefix):
(CommandReturnPassModel.get_output_to_raw_expression):
(CommandReturnPassModel.get_output_parameter_type):
(CommandReturnPassModel.get_set_return_condition):
(CommandReturnPassModel.ByPointer):
(CommandReturnPassModel.ByPointer.__init__):
(CommandReturnPassModel.ByPointer.get_return_var_type):
(TypeModel):
(TypeModel.RefPtrBased):
(TypeModel.RefPtrBased.__init__):
(TypeModel.RefPtrBased.get_optional):
(TypeModel.RefPtrBased.get_command_return_pass_model):
(TypeModel.RefPtrBased.get_input_param_type_text):
(TypeModel.RefPtrBased.get_event_setter_expression_pattern):
(TypeModel.Enum):
(TypeModel.Enum.__init__):
(TypeModel.Enum.get_optional):
(TypeModel.Enum.get_optional.EnumOptional):
(TypeModel.Enum.get_optional.EnumOptional.get_optional):
(TypeModel.Enum.get_optional.EnumOptional.get_command_return_pass_model):
(TypeModel.Enum.get_input_param_type_text):
(TypeModel.Enum.get_event_setter_expression_pattern):
(TypeModel.Enum.get_command_return_pass_model):
(TypeModel.ValueType):
(TypeModel.ValueType.__init__):
(TypeModel.ValueType.get_optional):
(TypeModel.ValueType.get_command_return_pass_model):
(TypeModel.ValueType.get_input_param_type_text):
(TypeModel.ValueType.get_event_setter_expression_pattern):
(TypeModel.ValueType.ValueOptional):
(TypeModel.ValueType.ValueOptional.__init__):
(TypeModel.ValueType.ValueOptional.get_optional):
(TypeModel.ValueType.ValueOptional.get_command_return_pass_model):
(TypeModel.ValueType.ValueOptional.get_input_param_type_text):
(TypeModel.ValueType.ValueOptional.get_event_setter_expression_pattern):
(TypeModel.init_class):
(TypeBindings.create_ad_hoc_type_declaration.Helper):
(TypeBindings.create_type_declaration_.EnumBinding.get_array_item_c_type_text):
(TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.EnumBinding):
(TypeBindings.create_type_declaration_.EnumBinding.get_type_model):
(TypeBindings.create_type_declaration_):
(TypeBindings.create_type_declaration_.get_type_model):
(TypeBindings.create_type_declaration_.get_array_item_c_type_text):
(get_type_model):
(AdHocTypeContextImpl.__init__):
(PlainObjectBinding):
(PlainObjectBinding.get_type_model):
(AdHocTypeContext):
(ArrayBinding.get_array_item_c_type_text):
(ArrayBinding):
(ArrayBinding.get_type_model):
(RawTypeBinding.get_validator_call_text):
(RawTypeBinding.reduce_to_raw_type):
(RawTypeBinding):
(RawTypeBinding.get_type_model):
(MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
(MethodGenerateModes.RawParameterMode.get_c_param_type_text):
(MethodGenerateModes.CombinedMode.get_c_param_type_text):
(Generator.go):
(Generator.process_event):
(Generator.process_command):
(Generator.resolve_type_and_generate_ad_hoc):
(Generator.resolve_type_and_generate_ad_hoc.AdHocTypeContext):
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::didParseSource):

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

12 years agoWeb Inspector: [InspectorIndexedDB] Show IndexedDB views on selection IndexedDB eleme...
vsevik@chromium.org [Wed, 22 Feb 2012 15:00:00 +0000 (15:00 +0000)]
Web Inspector: [InspectorIndexedDB] Show IndexedDB views on selection IndexedDB elements in resources panel.
https://bugs.webkit.org/show_bug.cgi?id=79098

Reviewed by Pavel Feldman.

Source/WebCore:

* English.lproj/localizedStrings.js:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):
* inspector/compile-front-end.sh:
* inspector/front-end/IndexedDBModel.js:
(WebInspector.IndexedDBModel.prototype._assertFrameId):
(WebInspector.IndexedDBModel.prototype.loadObjectStoreData):
(WebInspector.IndexedDBModel.prototype.loadIndexData):
* inspector/front-end/IndexedDBViews.js: Added.
* inspector/front-end/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertiesSection):
(WebInspector.ObjectPropertiesSection.prototype.updateProperties):
* inspector/front-end/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype.showIndexedDB):
(WebInspector.IndexedDBTreeElement.prototype.refreshIndexedDB):
(WebInspector.IndexedDBTreeElement.prototype._indexedDBAdded):
(WebInspector.IDBDatabaseTreeElement):
(WebInspector.IDBDatabaseTreeElement.prototype.get itemURL):
(WebInspector.IDBDatabaseTreeElement.prototype.update):
(WebInspector.IDBDatabaseTreeElement.prototype.onselect):
(WebInspector.IDBObjectStoreTreeElement):
(WebInspector.IDBObjectStoreTreeElement.prototype.get itemURL):
(WebInspector.IDBObjectStoreTreeElement.prototype.update):
(WebInspector.IDBObjectStoreTreeElement.prototype.onselect):
(WebInspector.IDBIndexTreeElement):
(WebInspector.IDBIndexTreeElement.prototype.get itemURL):
(WebInspector.IDBIndexTreeElement.prototype.update):
(WebInspector.IDBIndexTreeElement.prototype.onselect):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/externs.js:
* inspector/front-end/indexedDBViews.css: Added.
* inspector/front-end/inspector.html:

LayoutTests:

* http/tests/inspector/indexeddb/database-data.html:

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

12 years agoREGRESSION(58212): html foreignObjects with positions other than static not hidden...
zimmermann@webkit.org [Wed, 22 Feb 2012 14:49:46 +0000 (14:49 +0000)]
REGRESSION(58212): html foreignObjects with positions other than static not hidden correctly when parent has display:none
https://bugs.webkit.org/show_bug.cgi?id=41386

Reviewed by Zoltan Herczeg.

Source/WebCore:

r58212 gave SVGGElements a renderer, regardless if "display: none" was set or not, for various reasons (see change set).
The <g> renderer for such cases is a RenderSVGHiddenContainer. We make sure in SVG that such subtrees are never used
for painting & hittesting - they only exist for the purpose of SVG DOM (query getCTM, etc..) and to create renderers
for child resources, like <g display="none"><linearGradient>.

This concept still works fine for: <g display="none"><foreignObject><body>Foobar</body></foreignObject></g>, as
RenderSVGForeignObject::paint is never called thus we never paint the subtree of the <fO>. If the <body> elements
contains "position: relative" a new layer is created for the <body>. When the document paints we have two seperated
layers, and the <body> layer doesn't know that it's actually inside a "SVG hidden subtree", and gets painted, where it
shouldn't. HTML doesn't have this problems, as a display: none object, never creates a renderer.

The fix is to disallow layer creation in hidden SVG subtrees, to mimic what would happen if we'd follow HTML rules
to not create renderers for display: none objects. This avoids any indirections - as no layers are created anymore.

Tests: svg/foreignObject/fO-display-none-with-relative-pos-content.svg
       svg/foreignObject/fO-display-none.svg
       svg/foreignObject/fO-parent-display-changes.svg
       svg/foreignObject/fO-parent-display-none-with-relative-pos-content.svg
       svg/foreignObject/fO-parent-display-none.svg
       svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content.svg
       svg/foreignObject/fO-parent-of-parent-display-none.svg

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::styleDidChange): Only create layers, if its allowed -- layerCreationAllowedForSubtree() will always return true for HTML, and only false for layers inside a hidden SVG subtree.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::addChild): Only create layers, if its allowed.
* rendering/RenderObject.h: Add inline layerCreationAllowedForSubtree() helper, that craws the tree to find a RenderSVGHiddenContainer ancestor, if not present, return true.

LayoutTests:

Add new tests covering <foreignObject> content inside a <g display="none">.

* platform/chromium/test_expectations.txt:
* platform/mac/svg/foreignObject/fO-display-none-expected.png: Added.
* platform/mac/svg/foreignObject/fO-display-none-expected.txt: Added.
* platform/mac/svg/foreignObject/fO-display-none-with-relative-pos-content-expected.png: Added.
* platform/mac/svg/foreignObject/fO-display-none-with-relative-pos-content-expected.txt: Added.
* platform/mac/svg/foreignObject/fO-parent-display-changes-expected.png: Added.
* platform/mac/svg/foreignObject/fO-parent-display-changes-expected.txt: Added.
* platform/mac/svg/foreignObject/fO-parent-display-none-expected.png: Added.
* platform/mac/svg/foreignObject/fO-parent-display-none-expected.txt: Added.
* platform/mac/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.png: Added.
* platform/mac/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt: Added.
* platform/mac/svg/foreignObject/fO-parent-of-parent-display-none-expected.png: Added.
* platform/mac/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt: Added.
* platform/mac/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.png: Added.
* platform/mac/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt: Added.
* svg/foreignObject/fO-display-none-with-relative-pos-content.svg: Added.
* svg/foreignObject/fO-display-none.svg: Added.
* svg/foreignObject/fO-parent-display-changes.svg: Added.
* svg/foreignObject/fO-parent-display-none-with-relative-pos-content.svg: Added.
* svg/foreignObject/fO-parent-display-none.svg: Added.
* svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content.svg: Added.
* svg/foreignObject/fO-parent-of-parent-display-none.svg: Added.

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

12 years ago2012-02-22 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Wed, 22 Feb 2012 14:21:23 +0000 (14:21 +0000)]
2012-02-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix SVG pixel test results, which now show up as hash failures, since DRT was fixed to report these.

        * platform/mac/svg/W3C-SVG-1.1/coords-units-03-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-15-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/shapes-circle-01-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/shapes-circle-02-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/struct-frag-02-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/text-text-04-t-expected.png:
        * platform/mac/svg/as-border-image/svg-as-border-image-expected.png:
        * platform/mac/svg/clip-path/clip-in-mask-expected.png:
        * platform/mac/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.png:
        * platform/mac/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.png:
        * platform/mac/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.png:
        * platform/mac/svg/custom/circular-marker-reference-2-expected.png:
        * platform/mac/svg/custom/glyph-selection-arabic-forms-expected.png:
        * platform/mac/svg/custom/glyph-selection-bidi-mirror-expected.png:
        * platform/mac/svg/custom/glyph-selection-non-bmp-expected.png:
        * platform/mac/svg/custom/gradient-rotated-bbox-expected.png:
        * platform/mac/svg/custom/gradient-userSpaceOnUse-with-percentage-expected.png:
        * platform/mac/svg/custom/marker-opacity-expected.png:
        * platform/mac/svg/custom/non-circular-marker-reference-expected.png:
        * platform/mac/svg/dom/SVGLocatable-getCTM-svg-root-expected.png:
        * platform/mac/svg/hixie/error/017-expected.png:
        * platform/mac/svg/text/text-align-05-b-expected.png:
        * platform/mac/svg/text/text-path-01-b-expected.png:
        * platform/mac/svg/text/text-text-01-b-expected.png:
        * platform/mac/svg/text/text-text-07-t-expected.png:
        * platform/mac/svg/text/text-tselect-02-f-expected.png:
        * svg/as-image/svg-non-integer-scaled-image-expected.png:
        * svg/custom/visited-link-color-expected.png:
        * svg/custom/zero-path-square-cap-rendering2-expected.png:
        * svg/foreignObject/clip-expected.png:
        * svg/foreignObject/filter-expected.png:
        * svg/foreignObject/mask-expected.png:

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

12 years agoDrop clipToImageBuffer from RenderBoxModelObject
zherczeg@webkit.org [Wed, 22 Feb 2012 14:18:33 +0000 (14:18 +0000)]
Drop clipToImageBuffer from RenderBoxModelObject
https://bugs.webkit.org/show_bug.cgi?id=79225

Reviewed by Nikolas Zimmermann.

-webkit-background-clip: text is a rarely used non-standard
feature uses clipToImageBuffer. It is replaced by
CompositeDestinationIn on a transparent layer. The new
approach has the same speed as the old one.

Existing tests cover this issue.

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended):

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

12 years agoMerge setVisibleRectTrajectoryVector and adjustVisibleRect to the more descriptive...
kenneth@webkit.org [Wed, 22 Feb 2012 13:56:24 +0000 (13:56 +0000)]
Merge setVisibleRectTrajectoryVector and adjustVisibleRect to the more descriptive coverWithTilesIfNeeded https://bugs.webkit.org/show_bug.cgi?id=79230

Reviewed by Simon Hausmann.

Source/WebCore:

Both setVisibleRectTrajectoryVector and the adjustVisibleRect are
used for initiating re-tiling, so make that more obvious and merge
the two.

* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::coverWithTilesIfNeeded):
* platform/graphics/TiledBackingStore.h:
(TiledBackingStore):

Source/WebKit/qt:

* Api/qgraphicswebview.cpp:
(QGraphicsWebView::paint):

    Use coverWithTilesIfNeeded().

Source/WebKit2:

Replace use by coverWithTilesIfNeeded().

* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::WebGraphicsLayer::adjustVisibleRect):
(WebCore::WebGraphicsLayer::computeTransformedVisibleRect):

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

12 years agoREGRESSION: unbalanced transparency layers for clipPath
zimmermann@webkit.org [Wed, 22 Feb 2012 13:38:15 +0000 (13:38 +0000)]
REGRESSION: unbalanced transparency layers for clipPath
https://bugs.webkit.org/show_bug.cgi?id=78074

Reviewed by Zoltan Herczeg.

Source/WebCore:

If we're rendering to a mask image buffer, all children are rendered with opacity=1, regardless what their RenderStyles specify.
SVGRenderSupport::finishRenderSVGContent() did not take this into account and always called endTransparencyLayer(). Fix that
by checking if we're rendering to a mask image buffer, if so don't call endTransparencyLayer().

Add new reftest covering both the visual & logical correctness (no assertion).

Tests: svg/clip-path/opacity-assertion-expected.svg
       svg/clip-path/opacity-assertion.svg

* rendering/svg/SVGRenderSupport.cpp:
(WebCore::isRenderingMaskImage): Extraced as sharable helper function.
(WebCore::SVGRenderSupport::prepareToRenderSVGContent): Factor out isRenderingMaskImage() function.
(WebCore::SVGRenderSupport::finishRenderSVGContent): Only call endTransparencyLayer(), if we actually called beginTL() first.

LayoutTests:

* svg/clip-path/opacity-assertion-expected.svg: Added.
* svg/clip-path/opacity-assertion.svg: Added.

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

12 years agoImprove comments in tiling code.
kenneth@webkit.org [Wed, 22 Feb 2012 13:36:12 +0000 (13:36 +0000)]
Improve comments in tiling code.

Rubberstamped by Simon Hausmann.

* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::createTiles):

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

12 years agoNot reviewed: build fix.
pfeldman@chromium.org [Wed, 22 Feb 2012 13:27:09 +0000 (13:27 +0000)]
Not reviewed: build fix.

* inspector/InspectorController.cpp:
* inspector/InspectorController.h:
(InspectorController):

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

12 years ago[chromium] Build WebKit with MEDIA_STREAM disabled.
commit-queue@webkit.org [Wed, 22 Feb 2012 13:25:11 +0000 (13:25 +0000)]
[chromium] Build WebKit with MEDIA_STREAM disabled.
https://bugs.webkit.org/show_bug.cgi?id=79214

Patch by Hao Zheng <zhenghao@chromium.org> on 2012-02-22
Reviewed by Kent Tamura.

Source/WebKit/chromium:

* src/UserMediaClientImpl.h:

Tools:

* DumpRenderTree/chromium/WebUserMediaClientMock.cpp:
* DumpRenderTree/chromium/WebUserMediaClientMock.h:
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::createMediaPlayer):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):

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

12 years agoWeb Inspector: do not filter out requestAnimationFrame from timeline, implement stop...
pfeldman@chromium.org [Wed, 22 Feb 2012 13:13:01 +0000 (13:13 +0000)]
Web Inspector: do not filter out requestAnimationFrame from timeline, implement stop on animation events.
https://bugs.webkit.org/show_bug.cgi?id=79116

Reviewed by Yury Semikhatsky.

Source/WebCore:

* English.lproj/localizedStrings.js:
* dom/ScriptedAnimationController.cpp:
(WebCore::ScriptedAnimationController::registerCallback):
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::didRequestAnimationFrameCallbackImpl):
(WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
(WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didRequestAnimationFrameCallback):
* inspector/InspectorTimelineAgent.cpp:
(TimelineRecordType):
(WebCore::InspectorTimelineAgent::didRequestAnimationFrameCallback):
(WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
(WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
(WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
* inspector/front-end/BreakpointsSidebarPane.js:
(WebInspector.EventListenerBreakpointsSidebarPane):
(WebInspector.EventListenerBreakpointsSidebarPane.eventNameForUI):
* inspector/front-end/TimelineAgent.js:
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel):
(WebInspector.TimelinePanel.prototype.get _recordStyles):
(WebInspector.TimelinePanel.prototype._findParentRecord):
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
(WebInspector.TimelinePanel.prototype._onRecordsCleared):
(WebInspector.TimelinePanel.FormattedRecord):
(WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
(WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):

LayoutTests:

* inspector/timeline/timeline-animation-frame-expected.txt:
* inspector/timeline/timeline-animation-frame.html:
* inspector/timeline/timeline-enum-stability-expected.txt:
* platform/chromium/inspector/timeline/timeline-animation-frame-expected.txt:

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

12 years agoRemove unused class declaration in WebCore/page/scrolling/ScrollingCoordinator.h
haraken@chromium.org [Wed, 22 Feb 2012 13:10:09 +0000 (13:10 +0000)]
Remove unused class declaration in WebCore/page/scrolling/ScrollingCoordinator.h
https://bugs.webkit.org/show_bug.cgi?id=79175

Patch by Changhun Kang <temoochin@company100.net> on 2012-02-22
Reviewed by Kentaro Hara.

* page/scrolling/ScrollingCoordinator.h:
Remove PlatformGestureEvent class declaration.
(WebCore):

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

12 years agoUnreviewed, rolling out r108456.
ossy@webkit.org [Wed, 22 Feb 2012 13:05:14 +0000 (13:05 +0000)]
Unreviewed, rolling out r108456.
http://trac.webkit.org/changeset/108456
https://bugs.webkit.org/show_bug.cgi?id=79223

Broke fast/regex/pcre-test-4.html and cannot find anyone on
IRC (Requested by zherczeg on #webkit).

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

* yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::backtrackPatternCharacterGreedy):

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

12 years ago[Qt][WK2] Fix the N9 build
abecsi@webkit.org [Wed, 22 Feb 2012 12:56:57 +0000 (12:56 +0000)]
[Qt][WK2] Fix the N9 build
https://bugs.webkit.org/show_bug.cgi?id=79101

Reviewed by Simon Hausmann.

Fixed the include order of the rolled out r108359 not to break
the build with CONFIG+=force_static_libs_as_shared.

* platform/graphics/OpenGLShims.h: Add missing include.

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

12 years ago[Chromium] Unreviewed, regular maintenance of test expectations.
yutak@chromium.org [Wed, 22 Feb 2012 12:51:01 +0000 (12:51 +0000)]
[Chromium] Unreviewed, regular maintenance of test expectations.

* platform/chromium/test_expectations.txt:

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

12 years ago[Qt] Unreviewed gardening, skip a new failing test.
ossy@webkit.org [Wed, 22 Feb 2012 12:20:10 +0000 (12:20 +0000)]
[Qt] Unreviewed gardening, skip a new failing test.

* platform/qt/Skipped:

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

12 years agofirstRendererOf() should also return a fallback element renderer in NodeRenderingContext.
shinyak@chromium.org [Wed, 22 Feb 2012 12:06:34 +0000 (12:06 +0000)]
firstRendererOf() should also return a fallback element renderer in NodeRenderingContext.
https://bugs.webkit.org/show_bug.cgi?id=79180

Reviewed by Hajime Morita.

Source/WebCore:

Currently we have handled AttachingFallback in some special mannger, however if firstRendererOf
and lastRendererOf return a fallback element renderer, we don't need to handle it in such a manner.

We have introduced new attaching phase: AttachingFallbacked, and AttachingNotFallbacked.
They are used for fallback elements.

Added new test cases in:
  fast/dom/shadow/shadow-contents-fallback.html
  fast/dom/shadow/shadow-contents-fallback-dynamic.html

* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::NodeRenderingContext):
(WebCore::firstRendererOf):
(WebCore::lastRendererOf):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::shouldCreateRenderer):
* dom/NodeRenderingContext.h:
* html/shadow/InsertionPoint.h:
(WebCore::isInsertionPoint):
(WebCore):
(WebCore::toInsertionPoint):

LayoutTests:

Added new test cases, e.g. <content> in <content>, with display:none.

* fast/dom/shadow/shadow-contents-fallback-dynamic-expected.txt:
* fast/dom/shadow/shadow-contents-fallback-dynamic.html:
* fast/dom/shadow/shadow-contents-fallback-expected.txt:
* fast/dom/shadow/shadow-contents-fallback.html:

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

12 years ago[Qt][WK2][Mac] WebKitTestRunner does not build with clang.
zeno.albisser@nokia.com [Wed, 22 Feb 2012 11:46:50 +0000 (11:46 +0000)]
[Qt][WK2][Mac] WebKitTestRunner does not build with clang.
https://bugs.webkit.org/show_bug.cgi?id=79124

WebKitTestRunnerPrefix.h should also be included
when building with clang.

Reviewed by Kenneth Rohde Christiansen.

* WebKitTestRunner/Target.pri:

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

12 years ago[Qt] Unreviewed gardening after r108464.
ossy@webkit.org [Wed, 22 Feb 2012 11:38:14 +0000 (11:38 +0000)]
[Qt] Unreviewed gardening after r108464.

* Target.pri:

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

12 years agoAdd performance tests for the Element.id getter and setter
haraken@chromium.org [Wed, 22 Feb 2012 11:21:01 +0000 (11:21 +0000)]
Add performance tests for the Element.id getter and setter
https://bugs.webkit.org/show_bug.cgi?id=79209

Reviewed by Adam Barth.

This patch adds performance tests for the Element.id getter and setter.

The results of 10 runs in my local Chromium/Linux are as follows:

dom_attributes_id_getter.html:
median= 92.0 ms, stdev= 1.65151445649 ms, min= 89.0 ms, max= 96.0 ms
median= 87.5 ms, stdev= 1.84390889146 ms, min= 85.0 ms, max= 92.0 ms
median= 94.0 ms, stdev= 1.46543508898 ms, min= 90.0 ms, max= 95.0 ms
median= 86.0 ms, stdev= 1.66958078571 ms, min= 84.0 ms, max= 91.0 ms
median= 94.0 ms, stdev= 2.25610283454 ms, min= 103.0 ms, max= 98.0 ms
median= 86.0 ms, stdev= 1.49666295471 ms, min= 84.0 ms, max= 91.0 ms
median= 86.0 ms, stdev= 1.5321553446 ms, min= 84.0 ms, max= 90.0 ms
median= 86.0 ms, stdev= 2.20227155455 ms, min= 84.0 ms, max= 94.0 ms
median= 96.0 ms, stdev= 1.74570902501 ms, min= 101.0 ms, max= 99.0 ms
median= 86.0 ms, stdev= 1.63935963108 ms, min= 84.0 ms, max= 90.0 ms
median= 94.0 ms, stdev= 1.49248115566 ms, min= 90.0 ms, max= 95.0 ms
median= 88.0 ms, stdev= 5.20192272146 ms, min= 84.0 ms, max= 98.0 ms
median= 86.0 ms, stdev= 1.41067359797 ms, min= 84.0 ms, max= 89.0 ms
median= 86.0 ms, stdev= 1.48660687473 ms, min= 84.0 ms, max= 89.0 ms
median= 94.0 ms, stdev= 1.58113883008 ms, min= 93.0 ms, max= 97.0 ms
median= 86.0 ms, stdev= 1.95959179423 ms, min= 84.0 ms, max= 93.0 ms
median= 86.0 ms, stdev= 1.8547236991 ms, min= 84.0 ms, max= 92.0 ms
median= 86.0 ms, stdev= 1.39283882772 ms, min= 84.0 ms, max= 89.0 ms
median= 88.0 ms, stdev= 1.48660687473 ms, min= 85.0 ms, max= 90.0 ms
median= 86.5 ms, stdev= 2.3 ms, min= 84.0 ms, max= 93.0 ms

dom_attributes_id_setter.html:
median= 123.0 ms, stdev= 2.06397674406 ms, min= 119.0 ms, max= 128.0 ms
median= 119.0 ms, stdev= 1.92028643697 ms, min= 117.0 ms, max= 123.0 ms
median= 121.0 ms, stdev= 1.8781639971 ms, min= 118.0 ms, max= 123.0 ms
median= 123.0 ms, stdev= 2.21585198062 ms, min= 119.0 ms, max= 130.0 ms
median= 124.5 ms, stdev= 2.36378933071 ms, min= 119.0 ms, max= 129.0 ms
median= 122.0 ms, stdev= 2.4474476501 ms, min= 118.0 ms, max= 128.0 ms
median= 123.0 ms, stdev= 1.76351920885 ms, min= 118.0 ms, max= 125.0 ms
median= 119.0 ms, stdev= 1.79652442232 ms, min= 117.0 ms, max= 125.0 ms
median= 121.0 ms, stdev= 1.49916643506 ms, min= 119.0 ms, max= 123.0 ms
median= 119.5 ms, stdev= 1.85135085816 ms, min= 117.0 ms, max= 125.0 ms
median= 124.0 ms, stdev= 1.43090880213 ms, min= 120.0 ms, max= 124.0 ms
median= 122.0 ms, stdev= 1.45859521458 ms, min= 118.0 ms, max= 123.0 ms
median= 123.0 ms, stdev= 1.50332963784 ms, min= 120.0 ms, max= 124.0 ms
median= 123.0 ms, stdev= 1.3638181697 ms, min= 120.0 ms, max= 125.0 ms
median= 119.0 ms, stdev= 1.43527000944 ms, min= 117.0 ms, max= 121.0 ms
median= 122.5 ms, stdev= 1.71682847134 ms, min= 118.0 ms, max= 124.0 ms
median= 121.0 ms, stdev= 1.44481832768 ms, min= 118.0 ms, max= 123.0 ms
median= 120.0 ms, stdev= 1.40978721799 ms, min= 117.0 ms, max= 122.0 ms
median= 122.0 ms, stdev= 1.68522995464 ms, min= 119.0 ms, max= 125.0 ms
median= 122.0 ms, stdev= 1.55804364509 ms, min= 118.0 ms, max= 123.0 ms

* Bindings/dom_attributes_id_getter.html: Added.
* Bindings/dom_attributes_id_setter.html: Added.
* Bindings/resources/dom_attributes_common.js: Added.

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

12 years agoUnreviewed, rolling out r108468.
bashi@chromium.org [Wed, 22 Feb 2012 11:20:31 +0000 (11:20 +0000)]
Unreviewed, rolling out r108468.
http://trac.webkit.org/changeset/108468
https://bugs.webkit.org/show_bug.cgi?id=79219

Broke Chromium Win release build (Requested by bashi on
#webkit).

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

Source/JavaScriptCore:

* wtf/Platform.h:

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* websockets/WebSocket.cpp:
(WebCore::WebSocket::didConnect):
* websockets/WebSocketChannel.cpp:
(WebCore::WebSocketChannel::connect):
(WebCore::WebSocketChannel::fail):
(WebCore::WebSocketChannel::processFrame):
(WebCore::WebSocketChannel::sendFrame):
* websockets/WebSocketChannel.h:
* websockets/WebSocketDeflateFramer.cpp: Removed.
* websockets/WebSocketDeflateFramer.h: Removed.

LayoutTests:

* http/tests/websocket/tests/hybi/compressed-control-frame-expected.txt: Removed.
* http/tests/websocket/tests/hybi/compressed-control-frame.html: Removed.
* http/tests/websocket/tests/hybi/compressed-control-frame_wsh.py: Removed.
* http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff-expected.txt: Removed.
* http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html: Removed.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter-expected.txt: Removed.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html: Removed.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter_wsh.py: Removed.
* http/tests/websocket/tests/hybi/deflate-frame-parameter-expected.txt: Removed.
* http/tests/websocket/tests/hybi/deflate-frame-parameter.html: Removed.
* http/tests/websocket/tests/hybi/deflate-frame_wsh.py: Removed.
* http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header-expected.txt:
* http/tests/websocket/tests/hybi/send-file-blob_wsh.py:
(web_socket_transfer_data):

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

12 years agoUnreviewed, GTK gardening, unskip 2 tests that should pass now.
philn@webkit.org [Wed, 22 Feb 2012 11:05:03 +0000 (11:05 +0000)]
Unreviewed, GTK gardening, unskip 2 tests that should pass now.

* platform/gtk/Skipped:

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

12 years ago<style scoped>: Add runtime-flag
rolandsteiner@chromium.org [Wed, 22 Feb 2012 10:45:15 +0000 (10:45 +0000)]
<style scoped>: Add runtime-flag
https://bugs.webkit.org/show_bug.cgi?id=79074

Source/WebCore:

Added runtime-flag.
Query runtime flag when (un)registering a <style scoped> element, and when determineing a style sheet's scope.

Reviewed by Dimitri Glazkov.

No new tests. (no change in functionality)

* bindings/generic/RuntimeEnabledFeatures.cpp:
(WebCore):
* bindings/generic/RuntimeEnabledFeatures.h:
(RuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::styleScopedEnabled):
(WebCore::RuntimeEnabledFeatures::setStyleScopedEnabled):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::determineScopingElement):
* html/HTMLStyleElement.cpp:
(WebCore::HTMLStyleElement::registerWithScopingNode):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):
* html/HTMLStyleElement.idl:

Source/WebKit/chromium:

Added a runtime-flag.
Enable default STYLE_SCOPED compile-time flag for Chromium.

Reviewed by Dimitri Glazkov.

* features.gypi: enable STYLE_SCOPED
* public/WebRuntimeFeatures.h:
(WebRuntimeFeatures):
* src/WebRuntimeFeatures.cpp:
(WebKit::WebRuntimeFeatures::enableStyleScoped):
(WebKit):
(WebKit::WebRuntimeFeatures::isStyleScopedEnabled):

Tools:

Enable the runtime-flag for DRT.

Reviewed by Dimitri Glazkov.

* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::TestShell):

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

12 years agoWeb Inspector: Audit rules to recommend unprefixing supported CSS properties
apavlov@chromium.org [Wed, 22 Feb 2012 10:42:46 +0000 (10:42 +0000)]
Web Inspector: Audit rules to recommend unprefixing supported CSS properties
https://bugs.webkit.org/show_bug.cgi?id=78985

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/front-end/AuditCategories.js:
(WebInspector.AuditCategories.PagePerformance.prototype.initialize):
* inspector/front-end/AuditRules.js:
(WebInspector.AuditRules.CSSRuleBase):
(WebInspector.AuditRules.CSSRuleBase.prototype.doRun.sheetsCallback):
(WebInspector.AuditRules.CSSRuleBase.prototype.doRun):
(WebInspector.AuditRules.CSSRuleBase.prototype._visitStyleSheet.sheetCallback):
(WebInspector.AuditRules.CSSRuleBase.prototype._visitStyleSheet):
(WebInspector.AuditRules.CSSRuleBase.prototype._visitRule):
(WebInspector.AuditRules.CSSRuleBase.prototype.visitStyleSheet):
(WebInspector.AuditRules.CSSRuleBase.prototype.didVisitStyleSheet):
(WebInspector.AuditRules.CSSRuleBase.prototype.visitRule):
(WebInspector.AuditRules.CSSRuleBase.prototype.didVisitRule):
(WebInspector.AuditRules.CSSRuleBase.prototype.visitProperty):
(WebInspector.AuditRules.VendorPrefixedCSSProperties):
(WebInspector.AuditRules.VendorPrefixedCSSProperties.prototype.didVisitStyleSheet):
(WebInspector.AuditRules.VendorPrefixedCSSProperties.prototype.visitRule):
(WebInspector.AuditRules.VendorPrefixedCSSProperties.prototype.didVisitRule):
(WebInspector.AuditRules.VendorPrefixedCSSProperties.prototype.visitProperty):
* inspector/front-end/ResourceUtils.js:

LayoutTests:

* inspector/audits/audits-panel-functional-expected.txt:
* inspector/audits/audits-panel-functional.html:

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

12 years ago[Qt][WK2] Add frame flattening setting to QWebPreferences.
commit-queue@webkit.org [Wed, 22 Feb 2012 10:17:16 +0000 (10:17 +0000)]
[Qt][WK2] Add frame flattening setting to QWebPreferences.
https://bugs.webkit.org/show_bug.cgi?id=79099

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-02-22
Reviewed by Simon Hausmann.

Frame flattening is enabled by default for Qt WebKit2.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::initialize):
* UIProcess/API/qt/qwebpreferences.cpp:
(QWebPreferencesPrivate::testAttribute):
(QWebPreferencesPrivate::setAttribute):
(QWebPreferences::setNavigatorQtObjectEnabled):
(QWebPreferences::frameFlatteningEnabled):
(QWebPreferences::setFrameFlatteningEnabled):
* UIProcess/API/qt/qwebpreferences_p.h:

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

12 years agoNode::attach() should be after attaching children in Element::attach().
shinyak@chromium.org [Wed, 22 Feb 2012 10:12:30 +0000 (10:12 +0000)]
Node::attach() should be after attaching children in Element::attach().
https://bugs.webkit.org/show_bug.cgi?id=79201

Reviewed by Hajime Morita.

In Element::attach(), Node::attach() is called before attaching children if a shaodw root exists.
This may cause O(N^2) problem in NodeRenderingContext.

No new tests. Existing tests should cover this.

* dom/Element.cpp:
(WebCore::Element::attach):

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

12 years agoAdding WebSocket per-frame DEFLATE extension
bashi@chromium.org [Wed, 22 Feb 2012 10:03:46 +0000 (10:03 +0000)]
Adding WebSocket per-frame DEFLATE extension
https://bugs.webkit.org/show_bug.cgi?id=77522

Source/JavaScriptCore:

Added USE(ZLIB) flag.

Reviewed by Kent Tamura.

* wtf/Platform.h:

Source/WebCore:

Add WebSocketDeflateFramer class which handles deflate-frame extension.
This class encapsulates WebSocketDeflater and WebSocketInflater classes,
which depend on zlib, so that WebSocketChannel is not necessary to aware
zlib dependency.

Reviewed by Kent Tamura.

Tests: http/tests/websocket/tests/hybi/compressed-control-frame.html
       http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html
       http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html
       http/tests/websocket/tests/hybi/deflate-frame-parameter.html

* CMakeLists.txt: Added WebSocketDeflateFramer.(cpp|h)
* GNUmakefile.list.am: Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* websockets/WebSocket.cpp:
(WebCore::WebSocket::didConnect): Set m_extensions.
* websockets/WebSocketChannel.cpp:
(WebCore::WebSocketChannel::connect): Add deflate-frame extension processor to WebSocketHanshake if deflate can use.
(WebCore::WebSocketChannel::fail): Call m_deflateFramer.didFail().
(WebCore::WebSocketChannel::processFrame): Decompress frames if needed.
(WebCore::WebSocketChannel::sendFrame): Compress frames if possible.
* websockets/WebSocketChannel.h:
* websockets/WebSocketDeflateFramer.cpp: Added.
(WebCore):
(WebSocketExtensionDeflateFrame):
(WebCore::WebSocketExtensionDeflateFrame::create):
(WebCore::WebSocketExtensionDeflateFrame::~WebSocketExtensionDeflateFrame):
(WebCore::WebSocketExtensionDeflateFrame::WebSocketExtensionDeflateFrame):
(WebCore::WebSocketExtensionDeflateFrame::handshakeString):
(WebCore::WebSocketExtensionDeflateFrame::processResponse):
(WebCore::DeflateResultHolder::DeflateResultHolder):
(WebCore::DeflateResultHolder::~DeflateResultHolder):
(WebCore::DeflateResultHolder::fail):
(WebCore::InflateResultHolder::InflateResultHolder):
(WebCore::InflateResultHolder::~InflateResultHolder):
(WebCore::InflateResultHolder::fail):
(WebCore::WebSocketDeflateFramer::WebSocketDeflateFramer):
(WebCore::WebSocketDeflateFramer::createExtensionProcessor):
(WebCore::WebSocketDeflateFramer::canDeflate):
(WebCore::WebSocketDeflateFramer::enableDeflate):
(WebCore::WebSocketDeflateFramer::deflate):
(WebCore::WebSocketDeflateFramer::resetDeflateContext):
(WebCore::WebSocketDeflateFramer::inflate):
(WebCore::WebSocketDeflateFramer::resetInflateContext):
(WebCore::WebSocketDeflateFramer::didFail):
* websockets/WebSocketDeflateFramer.h: Added.
(WebCore):
(DeflateResultHolder):
(WebCore::DeflateResultHolder::succeeded):
(WebCore::DeflateResultHolder::failureReason):
(InflateResultHolder):
(WebCore::InflateResultHolder::succeeded):
(WebCore::InflateResultHolder::failureReason):
(WebSocketDeflateFramer):
(WebCore::WebSocketDeflateFramer::enabled):

LayoutTests:

Added tests for WebSocket deflate-frame extension. Also updated some
tests to follow the change.

Reviewed by Kent Tamura.

* http/tests/websocket/tests/hybi/compressed-control-frame-expected.txt: Added.
* http/tests/websocket/tests/hybi/compressed-control-frame.html: Added.
* http/tests/websocket/tests/hybi/compressed-control-frame_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff-expected.txt: Added.
* http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html: Added.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter-expected.txt: Added.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html: Added.
* http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/deflate-frame-parameter-expected.txt: Added.
* http/tests/websocket/tests/hybi/deflate-frame-parameter.html: Added.
* http/tests/websocket/tests/hybi/deflate-frame_wsh.py: Added.
(_get_deflate_frame_extension_processor):
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header-expected.txt:
* http/tests/websocket/tests/hybi/send-file-blob_wsh.py:
(_retrieve_frame):
(web_socket_transfer_data):

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

12 years agoUnreviewed, rolling out r108453.
yutak@chromium.org [Wed, 22 Feb 2012 10:00:02 +0000 (10:00 +0000)]
Unreviewed, rolling out r108453.
http://trac.webkit.org/changeset/108453
https://bugs.webkit.org/show_bug.cgi?id=78549

Broke Chromium's webkit_unit_tests.

Source/WebCore:

* WebCore.gypi:
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp: Removed.
* platform/graphics/chromium/cc/CCOcclusionTracker.h: Removed.

Source/WebKit/chromium:

* WebKit.gypi:
* tests/CCLayerTreeHostCommonTest.cpp:
(WebCore::TEST):
(WebCore):
* tests/CCOcclusionTrackerTest.cpp: Removed.

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

12 years ago[Qt] clipToImageBuffer assertion fix in debug mode on Qt.
zherczeg@webkit.org [Wed, 22 Feb 2012 09:56:58 +0000 (09:56 +0000)]
[Qt] clipToImageBuffer assertion fix in debug mode on Qt.

Rubber stamped by Csaba Osztrogonác.

* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore::GraphicsContext::restorePlatformState):

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

12 years ago[GTK] fast/frames/frame-dead-region.html crash
abarth@webkit.org [Wed, 22 Feb 2012 09:45:55 +0000 (09:45 +0000)]
[GTK] fast/frames/frame-dead-region.html crash
https://bugs.webkit.org/show_bug.cgi?id=79205

Unreviewed.

Apparently we're not supposed to call willDetachPage from
CachedFrame::destroy.  This call got added in
http://trac.webkit.org/changeset/108428, but it seems to cause a crash.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::closeAndRemoveChild):
(WebCore::FrameLoader::detachFromParent):
* page/Frame.h:
(WebCore::Frame::detachFromPage):
* page/Page.cpp:
(WebCore::Page::~Page):

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

12 years agoMove Geolocation code into Modules/geolocation
abarth@webkit.org [Wed, 22 Feb 2012 09:40:27 +0000 (09:40 +0000)]
Move Geolocation code into Modules/geolocation
https://bugs.webkit.org/show_bug.cgi?id=79204

Reviewed by Hajime Morita.

There are still some dangling references into the Geolocation module,
which I will clean up in a followup patch.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Modules/geolocation/Geolocation.cpp: Copied from Source/WebCore/page/Geolocation.cpp.
* Modules/geolocation/Geolocation.h: Copied from Source/WebCore/page/Geolocation.h.
* Modules/geolocation/Geolocation.idl: Copied from Source/WebCore/page/Geolocation.idl.
* Modules/geolocation/GeolocationController.cpp: Copied from Source/WebCore/page/GeolocationController.cpp.
* Modules/geolocation/GeolocationController.h: Copied from Source/WebCore/page/GeolocationController.h.
* Modules/geolocation/GeolocationError.h: Copied from Source/WebCore/page/GeolocationError.h.
* Modules/geolocation/GeolocationPosition.h: Copied from Source/WebCore/page/GeolocationPosition.h.
* Modules/geolocation/Geoposition.h: Copied from Source/WebCore/page/Geoposition.h.
* Modules/geolocation/Geoposition.idl: Copied from Source/WebCore/page/Geoposition.idl.
* Modules/geolocation/PositionCallback.h: Copied from Source/WebCore/page/PositionCallback.h.
* Modules/geolocation/PositionCallback.idl: Copied from Source/WebCore/page/PositionCallback.idl.
* Modules/geolocation/PositionError.h: Copied from Source/WebCore/page/PositionError.h.
* Modules/geolocation/PositionError.idl: Copied from Source/WebCore/page/PositionError.idl.
* Modules/geolocation/PositionErrorCallback.h: Copied from Source/WebCore/page/PositionErrorCallback.h.
* Modules/geolocation/PositionErrorCallback.idl: Copied from Source/WebCore/page/PositionErrorCallback.idl.
* Modules/geolocation/PositionOptions.h: Copied from Source/WebCore/page/PositionOptions.h.
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* page/Geolocation.cpp: Removed.
* page/Geolocation.h: Removed.
* page/Geolocation.idl: Removed.
* page/GeolocationController.cpp: Removed.
* page/GeolocationController.h: Removed.
* page/GeolocationError.h: Removed.
* page/GeolocationPosition.h: Removed.
* page/Geoposition.h: Removed.
* page/Geoposition.idl: Removed.
* page/PositionCallback.h: Removed.
* page/PositionCallback.idl: Removed.
* page/PositionError.h: Removed.
* page/PositionError.idl: Removed.
* page/PositionErrorCallback.h: Removed.
* page/PositionErrorCallback.idl: Removed.
* page/PositionOptions.h: Removed.

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

12 years ago[gtk] Accessibility: use find funtion in vector instead of for.
commit-queue@webkit.org [Wed, 22 Feb 2012 09:28:57 +0000 (09:28 +0000)]
[gtk] Accessibility: use find funtion in vector instead of for.
https://bugs.webkit.org/show_bug.cgi?id=77878

Patch by Frederik Gladhorn <frederik.gladhorn@nokia.com> on 2012-02-22
Reviewed by Hajime Morita.

Minor cleanup, use the find function from vector.

* accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetIndexInParent):

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

12 years agoRemove the remaining uses of CSSStyleDeclaration in Editor
rniwa@webkit.org [Wed, 22 Feb 2012 09:14:53 +0000 (09:14 +0000)]
Remove the remaining uses of CSSStyleDeclaration in Editor
https://bugs.webkit.org/show_bug.cgi?id=78939

Reviewed by Enrica Casucci.

Source/WebCore:

Changed the argument types of shouldApplyStyle, applyParagraphStyle, applyStyleToSelection,
applyParagraphStyleToSelection, and computeAndSetTypingStyle in Editor from CSSStyleDeclaration
to StylePropertySet.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* editing/Editor.cpp:
(WebCore::Editor::applyStyle):
(WebCore::Editor::shouldApplyStyle):
(WebCore::Editor::applyParagraphStyle):
(WebCore::Editor::applyStyleToSelection):
(WebCore::Editor::applyParagraphStyleToSelection):
(WebCore::Editor::setBaseWritingDirection):
(WebCore::Editor::computeAndSetTypingStyle):
* editing/Editor.h:
(WebCore):
(Editor):
* editing/EditorCommand.cpp:
(WebCore::applyCommandToFrame):
(WebCore::executeApplyParagraphStyle):
(WebCore::executeMakeTextWritingDirectionLeftToRight):
(WebCore::executeMakeTextWritingDirectionNatural):
(WebCore::executeMakeTextWritingDirectionRightToLeft):
* loader/EmptyClients.h:
(WebCore::EmptyEditorClient::shouldApplyStyle):
* page/DragController.cpp:
(WebCore::DragController::concludeEditDrag):
* page/EditorClient.h:
(WebCore):
(EditorClient):

Source/WebKit/blackberry:

* WebCoreSupport/EditorClientBlackBerry.cpp:
(WebCore::EditorClientBlackBerry::shouldApplyStyle):
* WebCoreSupport/EditorClientBlackBerry.h:
(EditorClientBlackBerry):

Source/WebKit/chromium:

* src/EditorClientImpl.cpp:
(WebKit::EditorClientImpl::shouldApplyStyle):
* src/EditorClientImpl.h:
(EditorClientImpl):

Source/WebKit/efl:

* WebCoreSupport/EditorClientEfl.cpp:
(WebCore::EditorClientEfl::shouldApplyStyle):
* WebCoreSupport/EditorClientEfl.h:
(EditorClientEfl):

Source/WebKit/gtk:

* WebCoreSupport/EditorClientGtk.cpp:
(WebKit::EditorClient::shouldApplyStyle):
* WebCoreSupport/EditorClientGtk.h:
(EditorClient):

Source/WebKit/mac:

* WebCoreSupport/WebEditorClient.h:
(WebEditorClient):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldApplyStyle):
* WebView/WebFrame.mm:
(-[WebFrame _setTypingStyle:withUndoAction:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
(-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
* WebView/WebView.mm:
(-[WebView applyStyle:]):

Source/WebKit/qt:

* WebCoreSupport/EditorClientQt.cpp:
(WebCore::EditorClientQt::shouldApplyStyle):
* WebCoreSupport/EditorClientQt.h:
(EditorClientQt):

Source/WebKit/win:

* WebCoreSupport/WebEditorClient.cpp:
(WebEditorClient::shouldApplyStyle):
* WebCoreSupport/WebEditorClient.h:
(WebEditorClient):

Source/WebKit/wince:

* WebCoreSupport/EditorClientWinCE.cpp:
(WebKit::EditorClientWinCE::shouldApplyStyle):

Source/WebKit/wx:

* WebKitSupport/EditorClientWx.cpp:
(WebCore::EditorClientWx::shouldApplyStyle):
* WebKitSupport/EditorClientWx.h:
(EditorClientWx):

Source/WebKit2:

* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::shouldApplyStyle):
* WebProcess/WebCoreSupport/WebEditorClient.h:
(WebEditorClient):

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

12 years ago[GTK] fast/mediastream/peerconnection-argument-types.html fails
commit-queue@webkit.org [Wed, 22 Feb 2012 09:03:02 +0000 (09:03 +0000)]
[GTK] fast/mediastream/peerconnection-argument-types.html fails
https://bugs.webkit.org/show_bug.cgi?id=79096

Patch by Yanbin Zhang <yanbin.zhang@intel.com> on 2012-02-22
Reviewed by Adam Barth.

* fast/mediastream/peerconnection-argument-types-expected.txt:
* fast/mediastream/script-tests/argument-types.js:

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

12 years agoUnreviewed, rolling out r107351.
carlosgc@webkit.org [Wed, 22 Feb 2012 08:55:46 +0000 (08:55 +0000)]
Unreviewed, rolling out r107351.
http://trac.webkit.org/changeset/107351
https://bugs.webkit.org/show_bug.cgi?id=53600

Several issues introduced in WebKitGTK+ API

Source/WebKit/gtk:

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::ChromeClient):
(WebKit::ChromeClient::chromeDestroyed):
(WebKit::ChromeClient::canRunModal):
(WebKit::ChromeClient::runModal):
* WebCoreSupport/ChromeClientGtk.h:
(ChromeClient):
* webkit/webkitwebview.cpp:
(webkit_web_view_class_init):

Tools:

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(createWebView):
* GtkLauncher/main.c:
(createWebViewCb):
(createBrowser):
(createWindow):
(main):

LayoutTests:

* platform/gtk/Skipped:

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

12 years ago[chromium] Cull quads outside of the scissoring damage rect
commit-queue@webkit.org [Wed, 22 Feb 2012 08:54:57 +0000 (08:54 +0000)]
[chromium] Cull quads outside of the scissoring damage rect
https://bugs.webkit.org/show_bug.cgi?id=79181

Patch by Dana Jansens <danakj@chromium.org> on 2012-02-22
Reviewed by James Robinson.

Source/WebCore:

Quads outside of the partial swap cause us to execute GL operations
that actually use a fair amount of CPU time (enough to affect power
usage). Here we cull quads by only keeping their intersection
with the damage rect used for partial swap.

Unit test: CCQuadCuller.cpp

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::optimizeRenderPasses):
* platform/graphics/chromium/cc/CCQuadCuller.cpp:
(WebCore::CCQuadCuller::cullOccludedQuads):
* platform/graphics/chromium/cc/CCQuadCuller.h:
(CCQuadCuller):
* platform/graphics/chromium/cc/CCRenderPass.cpp:
(WebCore::CCRenderPass::optimizeQuads):
* platform/graphics/chromium/cc/CCRenderPass.h:
(CCRenderPass):

Source/WebKit/chromium:

* tests/CCQuadCullerTest.cpp:
(WebCore::TEST):
(WebCore):

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

12 years agoShort circuit fixed for a 16 bt pattern character and an 8 bit string.
commit-queue@webkit.org [Wed, 22 Feb 2012 08:43:52 +0000 (08:43 +0000)]
Short circuit fixed for a 16 bt pattern character and an 8 bit string.
https://bugs.webkit.org/show_bug.cgi?id=75602

Patch by Hojong Han <hojong.han@samsung.com> on 2012-02-22
Reviewed by Gavin Barraclough.

* yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::backtrackPatternCharacterGreedy):

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

12 years agoUnreviewed, GTK gardening.
philn@webkit.org [Wed, 22 Feb 2012 08:37:18 +0000 (08:37 +0000)]
Unreviewed, GTK gardening.

* platform/gtk/Skipped:
* platform/gtk/fast/forms/float-before-fieldset-expected.txt:

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

12 years agoPart of r108409 was incorrect, and incorporated an older version of a sub-patch.
jonlee@apple.com [Wed, 22 Feb 2012 08:30:01 +0000 (08:30 +0000)]
Part of r108409 was incorrect, and incorporated an older version of a sub-patch.
This is the actual sub-patch that should have been submitted.

* WebCoreSupport/WebNotificationClient.h:
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::show):
(WebNotificationClient::cancel):
(WebNotificationClient::clearNotifications):
(WebNotificationClient::notificationObjectDestroyed):
(WebNotificationClient::notificationControllerDestroyed):

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

12 years ago[Chromium] New CCOcclusionTracker class with tests
commit-queue@webkit.org [Wed, 22 Feb 2012 07:59:51 +0000 (07:59 +0000)]
[Chromium] New CCOcclusionTracker class with tests
https://bugs.webkit.org/show_bug.cgi?id=78549

Patch by Dana Jansens <danakj@chromium.org> on 2012-02-21
Reviewed by James Robinson.

Source/WebCore:

Adds a CCOcclusionTrackerBase template class that is able to track occlusion
of layers while traversing the layer tree from front-to-back, with typedefed
versions for the main and impl threads.

At each step of the front-to-back traversal, the class should be notified of
changes to the current render target, and when done working with a layer, the
layer is added the tracked occlusion.

The class provides tests for checking if a rect in content space
for a layer/surface is occluded by others in front of it.

Unit tests: CCOcclusionTrackerTest.cpp

* WebCore.gypi:
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp: Added.
(WebCore):
(WebCore::::enterTargetRenderSurface):
(WebCore::::finishedTargetRenderSurface):
(WebCore::transformSurfaceOpaqueRegion):
(WebCore::::leaveToTargetRenderSurface):
(WebCore::contentToScreenSpaceTransform):
(WebCore::contentToTargetSurfaceTransform):
(WebCore::computeOcclusionBehindLayer):
(WebCore::::markOccludedBehindLayer):
(WebCore::testContentRectOccluded):
(WebCore::::occluded):
(WebCore::::surfaceOccluded):
(WebCore::rectSubtractRegion):
(WebCore::computeUnoccludedContentRect):
(WebCore::::unoccludedContentRect):
(WebCore::::surfaceUnoccludedContentRect):
(WebCore::::currentOcclusionInScreenSpace):
(WebCore::::currentOcclusionInTargetSurface):
* platform/graphics/chromium/cc/CCOcclusionTracker.h: Added.
(WebCore):
(CCOcclusionTrackerBase):
(WebCore::CCOcclusionTrackerBase::CCOcclusionTrackerBase):
(StackObject):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/CCLayerTreeHostCommonTest.cpp:
(WebCore):
* tests/CCOcclusionTrackerTest.cpp: Added.
(WebCore):
(WebCore::setLayerPropertiesForTesting):
(LayerChromiumWithForcedDrawsContent):
(WebCore::LayerChromiumWithForcedDrawsContent::LayerChromiumWithForcedDrawsContent):
(WebCore::LayerChromiumWithForcedDrawsContent::drawsContent):
(TestCCOcclusionTracker):
(WebCore::TestCCOcclusionTracker::occlusionInScreenSpace):
(WebCore::TestCCOcclusionTracker::occlusionInTargetSurface):
(WebCore::TestCCOcclusionTracker::setOcclusionInScreenSpace):
(WebCore::TestCCOcclusionTracker::setOcclusionInTargetSurface):
(WebCore::TEST):

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

12 years ago[GTK] Null ResourceErrors are encoded/decoded as empty ResourceErrors
carlosgc@webkit.org [Wed, 22 Feb 2012 07:37:30 +0000 (07:37 +0000)]
[GTK] Null ResourceErrors are encoded/decoded as empty ResourceErrors
https://bugs.webkit.org/show_bug.cgi?id=79120

Reviewed by Martin Robinson.

* Shared/gtk/WebCoreArgumentCodersGtk.cpp:
(CoreIPC::::encode): Encode a boolean to indicate whether it's a
Null error.
(CoreIPC::::decode): Check whether the error is Null and do not
continue decoding in such case.

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

12 years agoCache <font face> family lists in CSSValuePool.
kling@webkit.org [Wed, 22 Feb 2012 07:33:56 +0000 (07:33 +0000)]
Cache <font face> family lists in CSSValuePool.
<http://webkit.org/b/79195>

Reviewed by Antti Koivisto.

HTMLFontElements with "face" attributes are very common in legacy web content.
Add a String->CSSValue cache for these in CSSValuePool and use it to avoid
reparsing and recreating duplicate font face values.

This knocks 20ms (~1.5%) worth of samples off of the Moz page cycler on my system.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseFontFaceValue):
* css/CSSParser.h:
* css/CSSValuePool.cpp:
(WebCore::CSSValuePool::createFontFaceValue):
* css/CSSValuePool.h:
* html/HTMLFontElement.cpp:
(WebCore::HTMLFontElement::collectStyleForAttribute):

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

12 years agoSeparate the implementation of registerProtocolHandler from Navigator.cpp
abarth@webkit.org [Wed, 22 Feb 2012 07:28:04 +0000 (07:28 +0000)]
Separate the implementation of registerProtocolHandler from Navigator.cpp
https://bugs.webkit.org/show_bug.cgi?id=78945

Reviewed by Eric Seidel.

The implementation of registerProtocolHandler needlessly complicates
the implementation of Navigator.cpp.  In principle,
registerProtocolHandler (and possibly registerContentHandler, when we
implement that feature) could be its own module, but that seems like
overkill for one or two files.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* page/Navigator.cpp:
(WebCore):
* page/Navigator.h:
(Navigator):
* page/Navigator.idl:

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

12 years agoHasIDFlag and HasClassFlag can be removed.
morrita@google.com [Wed, 22 Feb 2012 07:20:19 +0000 (07:20 +0000)]
HasIDFlag and HasClassFlag can be removed.
https://bugs.webkit.org/show_bug.cgi?id=77861

Reviewed by Andreas Kling.

Replaced HasIDFlag and HasClassFlag with a check against
ElementAttributeData. It looks these flags (originally bitfields)
were legacy of ancient era, where we didn't cache @id and @class
values and needed a hash lookup for each check.

No new tests. No behavioral change.

* dom/Element.cpp:
(WebCore::Element::idAttributeChanged):
* dom/Element.h:
(WebCore::Element::hasID):
(WebCore):
(WebCore::Element::hasClass):
(WebCore::Node::hasID):
(WebCore::Node::hasClass):
* dom/ElementAttributeData.h:
(WebCore::ElementAttributeData::hasID):
(WebCore::ElementAttributeData::hasClass):
(ElementAttributeData):
* dom/Node.h:
(Node):
(WebCore::nodeStyleChangeShift):
* dom/StyledElement.cpp:
(WebCore::StyledElement::classAttributeChanged):

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