profile/ivi/webkit-efl.git
12 years agoFix type punning warning in HashTable.h debug builds
commit-queue@webkit.org [Thu, 2 Feb 2012 19:12:48 +0000 (19:12 +0000)]
Fix type punning warning in HashTable.h debug builds
https://bugs.webkit.org/show_bug.cgi?id=77422

Patch by Andy Wingo <wingo@igalia.com> on 2012-02-02
Reviewed by Gavin Barraclough.

* wtf/HashTable.h (WTF::HashTable::checkKey): Fix type punning
warning appearing in debug builds with gcc-4.6.2 on GNU/Linux.

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

12 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Thu, 2 Feb 2012 19:06:16 +0000 (19:06 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

12 years agoNPAPI will not send mouse up events when mouse is outside plugin area
andersca@apple.com [Thu, 2 Feb 2012 19:03:29 +0000 (19:03 +0000)]
NPAPI will not send mouse up events when mouse is outside plugin area
https://bugs.webkit.org/show_bug.cgi?id=77657
<rdar://problem/10160674>

Reviewed by Andreas Kling.

Source/WebCore:

Export EventHandler::setCapturingMouseEventsNode.

* WebCore.exp.in:

Source/WebKit2:

Use EventHandler::setCapturingMouseEventsNode to ensure we get all the mouse events when the mouse is down.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::handleEvent):

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

12 years ago[Qt][WK2] Unreviewed gardening.
ossy@webkit.org [Thu, 2 Feb 2012 18:59:09 +0000 (18:59 +0000)]
[Qt][WK2] Unreviewed gardening.
https://bugs.webkit.org/show_bug.cgi?id=67485

* platform/qt-wk2/Skipped:
  - fast/dom/Window/window-properties.html: unskip, it needed only update
  - fast/text/complex-preferred-logical-widths.html: unskip, it passes now
  - http/tests/loading/empty-urls.html: unskip, it doesn't exist now
  - http/tests/loading/progress-finished-callback.html: move to the correct place
* platform/qt-wk2/fast/dom/Window/window-properties-expected.txt: Updated.

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

12 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Thu, 2 Feb 2012 18:37:36 +0000 (18:37 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped: Unskip a now passing test.

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

12 years agoPaint the Qt Mac bot green.
ossy@webkit.org [Thu, 2 Feb 2012 18:08:55 +0000 (18:08 +0000)]
Paint the Qt Mac bot green.

* platform/qt-mac/Skipped:

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

12 years agoMove remaining implementation from CSSStyleDeclaration to subclasses
antti@apple.com [Thu, 2 Feb 2012 18:08:08 +0000 (18:08 +0000)]
Move remaining implementation from CSSStyleDeclaration to subclasses
https://bugs.webkit.org/show_bug.cgi?id=77621

Reviewed by Andreas Kling.

This leaves CSSStyleDeclaration a near-pure CSSOM interface.

* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::isCSSPropertyName):
(WebCore::JSCSSStyleDeclaration::putDelegate):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::parentRule):
(WebCore):
* css/CSSComputedStyleDeclaration.h:
(CSSComputedStyleDeclaration):
* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
(WebCore::CSSMutableStyleDeclaration::contextStyleSheet):
(WebCore):
(WebCore::CSSMutableStyleDeclaration::parentRule):
* css/CSSMutableStyleDeclaration.h:
(WebCore::CSSMutableStyleDeclaration::isInlineStyleDeclaration):
(WebCore::CSSMutableStyleDeclaration::parentRuleInternal):
(WebCore::CSSMutableStyleDeclaration::clearParentRule):
(CSSMutableStyleDeclaration):
(WebCore::CSSMutableStyleDeclaration::parentElement):
(WebCore::CSSMutableStyleDeclaration::clearParentElement):
(WebCore::CSSMutableStyleDeclaration::parentStyleSheet):
* css/CSSParser.cpp:
(WebCore::parseColorValue):
(WebCore::parseSimpleLengthValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseDeclaration):
* css/CSSStyleDeclaration.cpp:
(WebCore):
* css/CSSStyleDeclaration.h:
(CSSStyleDeclaration):
(WebCore::CSSStyleDeclaration::parentStyleSheet):
(WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
* css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::setSelectorText):

    Eliminate unnecessary call to CSSMutableStyleDeclaration::parentStyleSheet()

* css/CSSStyleRule.h:
(WebCore::CSSStyleRule::setDeclaration):
* css/CSSStyleSelector.cpp:
(WebCore::isInsideRegionRule):
(WebCore::CSSStyleSelector::applyDeclaration):
* css/WebKitCSSKeyframeRule.cpp:
(WebCore::WebKitCSSKeyframeRule::setDeclaration):
* page/PageSerializer.cpp:
(WebCore::PageSerializer::serializeFrame):
(WebCore::PageSerializer::serializeCSSStyleSheet):
(WebCore::PageSerializer::retrieveResourcesForCSSRule):
(WebCore::PageSerializer::retrieveResourcesForCSSDeclaration):
* page/PageSerializer.h:

    Eliminate unnecessary call to CSSMutableStyleDeclaration::parentStyleSheet()

(WebCore):
(PageSerializer):

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

12 years ago[Qt] One more unreviewed gardening after r106487
ossy@webkit.org [Thu, 2 Feb 2012 18:03:20 +0000 (18:03 +0000)]
[Qt] One more unreviewed gardening after r106487
https://bugs.webkit.org/show_bug.cgi?id=77628

* platform/qt-5.0/Skipped:
* platform/qt-wk2/Skipped:
* platform/qt/Skipped: Skip new crashing tests after r106554.

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

12 years agoTurn on CSS Filters on Windows
cmarrin@apple.com [Thu, 2 Feb 2012 17:58:45 +0000 (17:58 +0000)]
Turn on CSS Filters on Windows
https://bugs.webkit.org/show_bug.cgi?id=76667

Source/WebCore:

Turning on CSS_FILTERS flag for Windows and fixed a couple of resultant build errors

Reviewed by Adele Peterson.

* WebCore.vcproj/copyForwardingHeaders.cmd:
* platform/graphics/ca/win/PlatformCALayerWin.cpp:
(PlatformCALayer::setFilters):
(PlatformCALayer::filtersCanBeComposited):

WebKitLibraries:

Turned on CSS_FILTERS for Windows

Reviewed by Adele Peterson.

* win/tools/vsprops/FeatureDefines.vsprops:

LayoutTests:

Skipped filter test files not supported on Windows

Reviewed by Adele Peterson.

* platform/win/Skipped:

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

12 years agoMove ScrollingThread to its own file
andersca@apple.com [Thu, 2 Feb 2012 17:44:16 +0000 (17:44 +0000)]
Move ScrollingThread to its own file
https://bugs.webkit.org/show_bug.cgi?id=77652

Reviewed by Sam Weinig.

This just shuffles some classes around and makes ScrollingCoordinator call into ScrollingThread.
Hopefully we'll be able to make ScrollingThread use the new WebCore::RunLoop class eventually.

* WebCore.xcodeproj/project.pbxproj:
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::handleWheelEvent):
* page/scrolling/ScrollingCoordinator.h:
(ScrollingCoordinator):
* page/scrolling/ScrollingThread.cpp: Added.
(WebCore):
(WebCore::ScrollingThread::ScrollingThread):
(WebCore::ScrollingThread::isCurrentThread):
(WebCore::ScrollingThread::dispatch):
(WebCore::ScrollingThread::shared):
(WebCore::ScrollingThread::createThreadIfNeeded):
(WebCore::ScrollingThread::threadCallback):
(WebCore::ScrollingThread::threadBody):
(WebCore::ScrollingThread::dispatchFunctionsFromScrollingThread):
* page/scrolling/ScrollingThread.h: Added.
(WebCore):
(ScrollingThread):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinator::scrollByOnScrollingThread):
(WebCore::ScrollingCoordinator::updateMainFrameScrollLayerPositionOnScrollingThread):
* page/scrolling/mac/ScrollingThreadMac.mm: Added.
(WebCore):
(WebCore::ScrollingThread::initializeRunLoop):
(WebCore::ScrollingThread::wakeUpRunLoop):
(WebCore::ScrollingThread::threadRunLoopSourceCallback):

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

12 years agoUnreviewed chromium baselines for new tests in r106551.
tonyg@chromium.org [Thu, 2 Feb 2012 17:39:43 +0000 (17:39 +0000)]
Unreviewed chromium baselines for new tests in r106551.

* platform/chromium-mac-leopard/svg/custom/glyph-selection-arabic-forms-expected.png: Added.
* platform/chromium-mac-leopard/svg/custom/glyph-selection-arabic-forms-expected.txt: Added.
* platform/chromium-mac-leopard/svg/custom/glyph-selection-bidi-mirror-expected.png: Added.
* platform/chromium-mac-leopard/svg/custom/glyph-selection-non-bmp-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/custom/glyph-selection-arabic-forms-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/custom/glyph-selection-arabic-forms-expected.txt: Added.
* platform/chromium-mac-snowleopard/svg/custom/glyph-selection-bidi-mirror-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/custom/glyph-selection-bidi-mirror-expected.txt: Added.
* platform/chromium-mac-snowleopard/svg/custom/glyph-selection-non-bmp-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/custom/glyph-selection-non-bmp-expected.txt: Added.
* platform/chromium-win/svg/custom/glyph-selection-arabic-forms-expected.png: Added.
* platform/chromium-win/svg/custom/glyph-selection-bidi-mirror-expected.png: Added.
* platform/chromium-win/svg/custom/glyph-selection-non-bmp-expected.png: Added.
* platform/chromium-win/svg/custom/glyph-selection-non-bmp-expected.txt: Added.

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

12 years agoUnreviewed, rolling out r106551.
commit-queue@webkit.org [Thu, 2 Feb 2012 17:20:15 +0000 (17:20 +0000)]
Unreviewed, rolling out r106551.
http://trac.webkit.org/changeset/106551
https://bugs.webkit.org/show_bug.cgi?id=77648

Breaking mac and gtk tests due to font differences. (Requested
by _pdr_ on #webkit).

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

Source/WebCore:

* platform/graphics/SVGGlyph.cpp:
(WebCore::charactersWithArabicForm):
* svg/SVGFontData.cpp:
(WebCore::SVGFontData::applySVGGlyphSelection):
* svg/SVGFontData.h:
(SVGFontData):

LayoutTests:

* svg/custom/glyph-selection-arabic-forms-expected.png: Removed.
* svg/custom/glyph-selection-arabic-forms-expected.txt: Removed.
* svg/custom/glyph-selection-arabic-forms.svg: Removed.
* svg/custom/glyph-selection-bidi-mirror-expected.png: Removed.
* svg/custom/glyph-selection-bidi-mirror-expected.txt: Removed.
* svg/custom/glyph-selection-bidi-mirror.svg: Removed.
* svg/custom/glyph-selection-non-bmp-expected.png: Removed.
* svg/custom/glyph-selection-non-bmp-expected.txt: Removed.
* svg/custom/glyph-selection-non-bmp.svg: Removed.

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

12 years ago[EFL] Remove check for ENABLE_GTK_PLUGINS_SUPPORT
kubo@profusion.mobi [Thu, 2 Feb 2012 17:15:01 +0000 (17:15 +0000)]
[EFL] Remove check for ENABLE_GTK_PLUGINS_SUPPORT
https://bugs.webkit.org/show_bug.cgi?id=77647

Reviewed by Martin Robinson.

There is no clear reason why this check was in place (it came with the
upstreaming of the port), but ENABLE_GTK_PLUGINS_SUPPORT is not set
anywhere, and the build system does not even check for the presence of
GTK+ when building.

* ewk/ewk_main.cpp:
(_ewk_init_body):

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

12 years agoAdd myself as a reviewer.
msaboff@apple.com [Thu, 2 Feb 2012 16:59:17 +0000 (16:59 +0000)]
Add myself as a reviewer.

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

12 years agoWeb Inspector: [REGRESSION] Slow continuous DOM traversal with Up/Down keys
apavlov@chromium.org [Thu, 2 Feb 2012 16:40:15 +0000 (16:40 +0000)]
Web Inspector: [REGRESSION] Slow continuous DOM traversal with Up/Down keys
https://bugs.webkit.org/show_bug.cgi?id=77643

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/styles/updates-during-dom-traversal.html

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane.prototype._executeRebuildUpdate):

LayoutTests:

* inspector/styles/updates-during-dom-traversal-expected.txt: Added.
* inspector/styles/updates-during-dom-traversal.html: Added.

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

12 years ago[GTK] WebKitWebView won't work in a GtkOffscreenWindow
commit-queue@webkit.org [Thu, 2 Feb 2012 16:28:14 +0000 (16:28 +0000)]
[GTK] WebKitWebView won't work in a GtkOffscreenWindow
https://bugs.webkit.org/show_bug.cgi?id=76911

Patch by Claudio Saavedra  <csaavedra@igalia.com> and Martin Robinson <mrobinson@igalia.com> on 2012-02-02
Reviewed by Philippe Normand.

Source/WebCore:

* platform/gtk/GtkUtilities.cpp:
(WebCore::widgetIsOnscreenToplevelWindow): Added this helper.
* platform/gtk/GtkUtilities.h:
(WebCore): Added helper declaration.

Source/WebKit/gtk:

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::windowRect): Use the new widgetIsOnscreenToplevelWindow helper.
(WebKit::ChromeClient::setWindowRect): Ditto.
(WebKit::ChromeClient::unfocus): Ditto.
(WebKit::ChromeClient::runOpenPanel): Ditto.
* tests/testwebview.c: Added a test to ensure that loading a page in an offscreen window does not crash.
* webkit/webkitglobals.cpp:
(currentToplevelCallback):
* webkit/webkitwebframe.cpp:
(webkit_web_frame_print_full):
(webkit_web_frame_print):
* webkit/webkitwebview.cpp:
(webkit_web_view_focus_in_event):
(webkit_web_view_script_dialog):

Source/WebKit2:

* UIProcess/API/gtk/WebKitUIClient.cpp:
(getWindowFrame): Use the new helper.
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewCreateJavaScriptDialog): Ditto
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseRealize): Ditto.
(webkitWebViewBaseSizeAllocate): Ditto.
(webkitWebViewBaseFocusInEvent): Ditto.

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

12 years agofast/speech/bubble-position.html fails on mac
tonyg@chromium.org [Thu, 2 Feb 2012 15:53:23 +0000 (15:53 +0000)]
fast/speech/bubble-position.html fails on mac
https://bugs.webkit.org/show_bug.cgi?id=77641

Unreviewed expectations update.

* platform/chromium/test_expectations.txt: Test introduced by 106438, never passed on mac.

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

12 years ago[Qt][Mac] Unreviewed gardening, skip new failing tests to paint the bot green.
ossy@webkit.org [Thu, 2 Feb 2012 15:48:54 +0000 (15:48 +0000)]
[Qt][Mac] Unreviewed gardening, skip new failing tests to paint the bot green.

* platform/qt-mac/Skipped:

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

12 years agoUnreviewed rebaseline of imperceptible shadow change.
tonyg@chromium.org [Thu, 2 Feb 2012 15:27:19 +0000 (15:27 +0000)]
Unreviewed rebaseline of imperceptible shadow change.

* platform/chromium-mac-snowleopard/fast/box-shadow/box-shadow-clipped-slices-expected.png:

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

12 years ago[Qt] Unreviewed gardening after r106551.
ossy@webkit.org [Thu, 2 Feb 2012 15:13:02 +0000 (15:13 +0000)]
[Qt] Unreviewed gardening after r106551.

* platform/qt/Skipped: Skip new tests because of missing testfonts.

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

12 years agoSource/WebCore: Update active and hover state on touch release.
commit-queue@webkit.org [Thu, 2 Feb 2012 15:09:48 +0000 (15:09 +0000)]
Source/WebCore: Update active and hover state on touch release.
https://bugs.webkit.org/show_bug.cgi?id=77620

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-02-02
Reviewed by Kenneth Rohde Christiansen.

* rendering/HitTestRequest.h:
(WebCore::HitTestRequest::move):
(WebCore::HitTestRequest::release):
(WebCore::HitTestRequest::touchEvent):
(WebCore::HitTestRequest::mouseEvent):
(WebCore::HitTestRequest::touchMove):
(WebCore::HitTestRequest::touchRelease):
    Rename the enum values in HitTestRequest to be mouse/touch
    agnostic, and add value for recognizing touch events.
* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::nodeAtPoint): Update for HitTestRequest rename.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::hitTest): ditto
(WebCore::RenderLayer::updateHoverActiveState): Reset hoverstate on touch release.
* page/EventHandler.cpp:
(WebCore::EventHandler::updateSelectionForMouseDrag): Update for HitTestRequest rename.
(WebCore::EventHandler::handleMouseMoveEvent): ditto
(WebCore::EventHandler::handleMouseReleaseEvent): ditto
(WebCore::EventHandler::hoverTimerFired): ditto
(WebCore::EventHandler::dragSourceEndedAt): ditto
(WebCore::EventHandler::handleTouchEvent): Hittest touch release to reset
    active and hover states and add touch enum to all touch hittests.

Source/WebKit/chromium: Update enum name for HitTestRequest::RequestType
https://bugs.webkit.org/show_bug.cgi?id=77620

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-02-02
Reviewed by Kenneth Rohde Christiansen.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::visiblePositionForWindowPoint):

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

12 years ago[Qt] Unreviewed gardening after r106487
ossy@webkit.org [Thu, 2 Feb 2012 14:47:21 +0000 (14:47 +0000)]
[Qt] Unreviewed gardening after r106487
https://bugs.webkit.org/show_bug.cgi?id=77628

Patch by János Badics <dicska@gmail.com> on 2012-02-02

* platform/qt-wk2/Skipped: Skip the test made fast/events/resize-subframe.html timeout.
* platform/qt/fast/events/remove-target-with-shadow-in-drag-expected.txt: Added.

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

12 years agoWeb Inspector: enable editing of selected rows on single click in elements panel.
pfeldman@chromium.org [Thu, 2 Feb 2012 14:28:39 +0000 (14:28 +0000)]
Web Inspector: enable editing of selected rows on single click in elements panel.
https://bugs.webkit.org/show_bug.cgi?id=77627

Reviewed by Vsevolod Vlasov.

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype.onattach):
(WebInspector.ElementsTreeElement.prototype.onselect):
(WebInspector.ElementsTreeElement.prototype._mouseDown):
* inspector/front-end/treeoutline.js:
(TreeElement.prototype.selectOnMouseDown):
(TreeElement.prototype.select):

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

12 years agoFix mirroring with SVG fonts
commit-queue@webkit.org [Thu, 2 Feb 2012 14:27:10 +0000 (14:27 +0000)]
Fix mirroring with SVG fonts
https://bugs.webkit.org/show_bug.cgi?id=77067

Patch by Philip Rogers <pdr@google.com> on 2012-02-02
Reviewed by Nikolas Zimmermann.

Source/WebCore:

SVG fonts were incorrectly handling mirrored characters in bidi text.
In this change I added the function createStringWithMirroredCharacters
which handles mirroring the characters when selecting glyphs for SVG
fonts. I also made a small cosmetic change in the function
charactersWithArabicForm, changing the bool parameter "mirror" to "rtl"
which better reflects what it actually does.

Several new tests were added to test mirroring with SVG fonts in the
presence of Arabic forms and non-BMP characters.

Tests: svg/custom/glyph-selection-arabic-forms.svg
       svg/custom/glyph-selection-bidi-mirror.svg
       svg/custom/glyph-selection-non-bmp.svg

* platform/graphics/SVGGlyph.cpp:
(WebCore::charactersWithArabicForm):
* svg/SVGFontData.cpp:
(WebCore::SVGFontData::applySVGGlyphSelection):
(WebCore::SVGFontData::createStringWithMirroredCharacters):
* svg/SVGFontData.h:
(SVGFontData):

LayoutTests:

SVG fonts were incorrectly handling mirrored characters in bidi text.
In this change I added the function createStringWithMirroredCharacters
which handles mirroring the characters when selecting glyphs for SVG
fonts. I also made a small cosmetic change in the function
charactersWithArabicForm, changing the bool parameter "mirror" to "rtl"
which better reflects what it actually does.

Several new tests were added to test mirroring with SVG fonts in the
presence of Arabic forms and non-BMP characters.

* svg/custom/glyph-selection-arabic-forms-expected.txt: Added.
* svg/custom/glyph-selection-arabic-forms.svg: Added.
* svg/custom/glyph-selection-bidi-mirror-expected.txt: Added.
* svg/custom/glyph-selection-bidi-mirror.svg: Added.
* svg/custom/glyph-selection-non-bmp-expected.txt: Added.
* svg/custom/glyph-selection-non-bmp.svg: Added.

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

12 years agoWeb Inspector: add experiment for single click styles editing.
pfeldman@chromium.org [Thu, 2 Feb 2012 14:25:15 +0000 (14:25 +0000)]
Web Inspector: add experiment for single click styles editing.
https://bugs.webkit.org/show_bug.cgi?id=77624

Reviewed by Vsevolod Vlasov.

* inspector/front-end/Settings.js:
(WebInspector.ExperimentsSettings):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection):
(WebInspector.StylePropertyTreeElement.prototype.onattach):
(WebInspector.StylePropertyTreeElement.prototype._mouseDown):
(WebInspector.StylePropertyTreeElement.prototype._resetMouseDownElement):
(WebInspector.StylePropertyTreeElement.prototype):
(WebInspector.StylePropertyTreeElement.prototype.selectElement.context):

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

12 years agoAdd myself as a commiter
kkristof@inf.u-szeged.hu [Thu, 2 Feb 2012 14:13:36 +0000 (14:13 +0000)]
Add myself as a commiter

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

12 years agoUnreviewed, marking a new test as flaky on GTK.
philn@webkit.org [Thu, 2 Feb 2012 13:58:20 +0000 (13:58 +0000)]
Unreviewed, marking a new test as flaky on GTK.

* platform/gtk/test_expectations.txt:
fast/forms/radio/radio-group.html fails on and off.

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

12 years agoMake the tap highlighting work for all test cases
kenneth@webkit.org [Thu, 2 Feb 2012 13:53:57 +0000 (13:53 +0000)]
Make the tap highlighting work for all test cases
https://bugs.webkit.org/show_bug.cgi?id=77626

Reviewed by Simon Hausmann.

Clean up of the current code to make it more generic. Now uses
addFocusRingRects for finding the areas to highlight.

Tested by current manual tests.

* page/GestureTapHighlighter.cpp:
(WebCore::GestureTapHighlighter::pathForNodeHighlight):

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

12 years agoUnreviewed, GTK rebaseline and skipping 3 new test failures.
philn@webkit.org [Thu, 2 Feb 2012 13:42:07 +0000 (13:42 +0000)]
Unreviewed, GTK rebaseline and skipping 3 new test failures.

* platform/gtk/Skipped:
* platform/gtk/fast/events/remove-target-with-shadow-in-drag-expected.txt: Added.

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

12 years ago[Gtk] atk_text_get_text_at_offset() sometimes fails to provide the correct line
mario@webkit.org [Thu, 2 Feb 2012 13:18:09 +0000 (13:18 +0000)]
[Gtk] atk_text_get_text_at_offset() sometimes fails to provide the correct line
https://bugs.webkit.org/show_bug.cgi?id=72382

Reviewed by Martin Robinson.

Source/WebCore:

Do not add unnecesary blanks at the end of a line of text.

* accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
(textForRenderer): Do not just append a '\n' at the end of a line
if the linebreak for that line was already considered.

Source/WebKit/gtk:

New unit test to ensure the right line is retrieved for the first
position of each line in a multiline preformatted portion of text.

* tests/testatk.c:
(testWebkitAtkGetTextAtOffsetWithPreformattedText): New unit test.
(main): Add the new unit test.

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

12 years agoRegions should ignore the saved currentRenderFlowThread during repainting
commit-queue@webkit.org [Thu, 2 Feb 2012 10:25:25 +0000 (10:25 +0000)]
Regions should ignore the saved currentRenderFlowThread during repainting
because if there are imbricated flow threads, it might end using the wrong one.

[CSSRegions] Assert failure in RenderView::computeRectForRepaint
https://bugs.webkit.org/show_bug.cgi?id=77430

Patch by Raul Hudea <rhudea@adobe.com> on 2012-02-02
Reviewed by David Hyatt.

Source/WebCore:

Test: fast/regions/imbricated-flow-threads-crash.html

* rendering/RenderFlowThread.cpp:
(CurrentRenderFlowThreadDisabler):
(WebCore::CurrentRenderFlowThreadDisabler::CurrentRenderFlowThreadDisabler):
(WebCore::CurrentRenderFlowThreadDisabler::~CurrentRenderFlowThreadDisabler):
(WebCore):
(WebCore::RenderFlowThread::repaintRectangleInRegions):

LayoutTests:

* fast/regions/imbricated-flow-threads-crash-expected.txt: Added.
* fast/regions/imbricated-flow-threads-crash.html: Added.

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

12 years ago[PerformanceTests] tests have dependencies
rniwa@webkit.org [Thu, 2 Feb 2012 10:24:29 +0000 (10:24 +0000)]
[PerformanceTests] tests have dependencies
https://bugs.webkit.org/show_bug.cgi?id=77506

Reviewed by Hajime Morita.

PerformanceTests:

* resources/init.html: Added.

Tools:

Load an initialization page before each test after starting a DRT so that
warming up DRT won't affect the performance test results.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner):
(PerfTestsRunner.__init__):
(PerfTestsRunner._run_tests_set):
(PerfTestsRunner._run_single_test):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(MainTest.TestDriver.run_test):
(test_initial_page_loaded):
(test_initial_page_loaded.run_test):

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

12 years agoCleanup: Move chrome-specific filesystem type handling code (for FileSystem API)...
kinuko@chromium.org [Thu, 2 Feb 2012 09:31:21 +0000 (09:31 +0000)]
Cleanup: Move chrome-specific filesystem type handling code (for FileSystem API) under chromium directory (re-landing r105395)
https://bugs.webkit.org/show_bug.cgi?id=76551

Source/WebCore:

Reviewed by David Levin.

Moved the implementation of crackFileSystemURL() and toURL() from
WebCore/fileapi/DOMFileSystemBase into WebCore/platform/AsyncFileSystem
so that each platform can extend/implement their behavior if necessary.

No new tests as it has no functional changes.

* fileapi/DOMFileSystemBase.cpp: Moved crackFileSystemURL() to AsyncFileSystem.
* fileapi/DOMFileSystemBase.h:
(DOMFileSystemBase):
* fileapi/EntryBase.cpp: Moved toURL() to AsyncFileSystem.
(WebCore::EntryBase::toURL):
* page/DOMWindow.cpp: Made corresponding callsite changes.
(WebCore::DOMWindow::webkitRequestFileSystem):
(WebCore::DOMWindow::webkitResolveLocalFileSystemURL):
* page/DOMWindow.h:
* platform/AsyncFileSystem.cpp:
(WebCore::AsyncFileSystem::isValidType): Added.
* platform/AsyncFileSystem.h:
(AsyncFileSystem):
* workers/WorkerContext.cpp: Made corresponding callsite changes.
(WebCore::WorkerContext::webkitRequestFileSystem):
(WebCore::WorkerContext::webkitRequestFileSystemSync):
(WebCore::WorkerContext::webkitResolveLocalFileSystemURL):
(WebCore::WorkerContext::webkitResolveLocalFileSystemSyncURL):
* workers/WorkerContext.h:

Source/WebKit/chromium:

* src/AssertMatchingEnums.cpp: Removed the matching assertion for AsyncFileSystem::External (as now we directly use WebFileSystem::TypeExternal).
* src/AsyncFileSystemChromium.cpp:
(WebCore::AsyncFileSystem::crackFileSystemURL): Added.
(WebCore::AsyncFileSystem::isValidType): Added.
(WebCore::AsyncFileSystemChromium::toURL): Added.
* src/AsyncFileSystemChromium.h:
(AsyncFileSystemChromium):
* src/WorkerAsyncFileSystemChromium.cpp: Made this subclass of AsyncFileSystemChromium (rather than that of AsyncFileSystem)
(WebCore::WorkerAsyncFileSystemChromium::WorkerAsyncFileSystemChromium):
* src/WorkerAsyncFileSystemChromium.h:
(WorkerAsyncFileSystemChromium):

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

12 years agoWeb Inspector: pause on uncaugh exceptions state is not properly restored
yurys@chromium.org [Thu, 2 Feb 2012 09:12:47 +0000 (09:12 +0000)]
Web Inspector: pause on uncaugh exceptions state is not properly restored
https://bugs.webkit.org/show_bug.cgi?id=77558

'Pause on exceptions' state is now stored in InspectorState object so that it is
properly restored on inspected process change.

Reviewed by Vsevolod Vlasov.

* inspector/InspectorDebuggerAgent.cpp:
(DebuggerAgentState):
(WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
(WebCore::InspectorDebuggerAgent::disable):
(WebCore::InspectorDebuggerAgent::restore):
(WebCore::InspectorDebuggerAgent::setPauseOnExceptions):
(WebCore):
(WebCore::InspectorDebuggerAgent::setPauseOnExceptionsImpl):
* inspector/InspectorDebuggerAgent.h:
(InspectorDebuggerAgent):

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

12 years agoRe-land r106442 per Adam's suggestion. We'll do both restarting DRT and loading a...
rniwa@webkit.org [Thu, 2 Feb 2012 08:27:21 +0000 (08:27 +0000)]
Re-land r106442 per Adam's suggestion. We'll do both restarting DRT and loading a fake test first.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._run_tests_set):
(PerfTestsRunner._run_single_test):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(create_runner):
(test_run_passing_test):
(test_run_silent_test):
(test_run_failed_test):
(test_run_tonguey_test):
(test_run_timeout_test):
(test_run_crash_test):
(test_run_test_set_kills_drt_per_run):
(test_run_test_set_kills_drt_per_run.TestDriverWithStopCount):
(test_run_test_set_kills_drt_per_run.TestDriverWithStopCount.__init__):
(test_run_test_set_kills_drt_per_run.TestDriverWithStopCount.stop):

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

12 years agoThe third argument of addEventListener/removeEventListener of PeerConnection should...
haraken@chromium.org [Thu, 2 Feb 2012 08:23:59 +0000 (08:23 +0000)]
The third argument of addEventListener/removeEventListener of PeerConnection should be optional
https://bugs.webkit.org/show_bug.cgi?id=77606

Reviewed by Adam Barth.

Source/WebCore:

This patch corrects a typo in PeerConnection.idl, i.e. [optional] => [Optional].

Test: fast/mediastream/peerconnection-eventlistener-optional-argument.html

* mediastream/PeerConnection.idl:

LayoutTests:

The added test confirms if the third argument of addEventListener() and
removeEventListener() is optional.

* fast/mediastream/peerconnection-eventlistener-optional-argument-expected.txt: Added.
* fast/mediastream/peerconnection-eventlistener-optional-argument.html: Added.

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

12 years agohidden attribute on <input type=file /> suppresses the file selection dialog
commit-queue@webkit.org [Thu, 2 Feb 2012 08:09:07 +0000 (08:09 +0000)]
hidden attribute on <input type=file /> suppresses the file selection dialog
https://bugs.webkit.org/show_bug.cgi?id=58208

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2012-02-02
Reviewed by Ryosuke Niwa.

.:

* ManualTests/input-file-hidden-open-dialog-on-click.html: Added.
Adding manual test as the file dialog opens only in User gesture.

Source/WebCore:

We want to allow opening file dialog on hidden element when click() is called
on the element. The behaviour is similar to Firefox and IE.

Added manual test as the file dialog opens only on user gesture.

* html/FileInputType.cpp:
(WebCore::FileInputType::handleDOMActivateEvent):
Removed renderer check as input can be hidden.

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

12 years ago[GStreamer] FFTFrame implementation
philn@webkit.org [Thu, 2 Feb 2012 08:04:02 +0000 (08:04 +0000)]
[GStreamer] FFTFrame implementation
https://bugs.webkit.org/show_bug.cgi?id=73545

Reviewed by Chris Rogers.

.:

* configure.ac: Enable the WebAudio option again and remove
libfftw checks.

Source/WebCore:

FFTFrame implementation based on GStreamer's FFT processing
library.

No new tests, existing WebAudio tests cover this.

* GNUmakefile.am:
* GNUmakefile.list.am:
* platform/audio/FFTFrame.h:
* platform/audio/FFTFrameStub.cpp:
* platform/audio/gstreamer/FFTFrameGStreamer.cpp: Added.
(WebCore::FFTFrame::FFTFrame):
(WebCore::FFTFrame::initialize):
(WebCore::FFTFrame::cleanup):
(WebCore::FFTFrame::~FFTFrame):
(WebCore::FFTFrame::multiply):
(WebCore::FFTFrame::doFFT):
(WebCore::FFTFrame::doInverseFFT):
(WebCore::FFTFrame::realData):
(WebCore::FFTFrame::imagData):

Source/WebKit/gtk:

* GNUmakefile.am: Remove libfftw compilation flags.

Source/WebKit2:

* GNUmakefile.am: Remove libfftw compilation flags.

LayoutTests:

* webaudio/resources/convolution-testing.js:
(checkTail1): Adapt convolution threshold for GStreamerFFTFrame
implementation, as advised by Chris Rogers.

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

12 years agoRename [CheckFrameSecurity] and [SVGCheckSecurity] to [CheckAccessToNode]
haraken@chromium.org [Thu, 2 Feb 2012 08:00:20 +0000 (08:00 +0000)]
Rename [CheckFrameSecurity] and [SVGCheckSecurity] to [CheckAccessToNode]
https://bugs.webkit.org/show_bug.cgi?id=77601

Reviewed by Adam Barth.

[CheckFrameSecurity] and [SVGCheckSecurity] have the same meaning; i.e. generate code
to check allowAccessToNode() for a given attribute or method. This patch renames them
to [CheckAccessToNode].

No tests. No changes in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateFunctionCallback):
* html/HTMLEmbedElement.idl:
* html/HTMLFrameElement.idl:
* html/HTMLIFrameElement.idl:
* html/HTMLObjectElement.idl:

* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp: Updated the test results.
(WebCore):

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

12 years agoRename [V8DisallowShadowing] to [V8Unforgeable]
haraken@chromium.org [Thu, 2 Feb 2012 07:48:28 +0000 (07:48 +0000)]
Rename [V8DisallowShadowing] to [V8Unforgeable]
https://bugs.webkit.org/show_bug.cgi?id=77599

Reviewed by Adam Barth.

This patch renames [V8DisallowShadowing] to [V8Unforgeable], following the Web IDL
spec (http://dev.w3.org/2006/webapi/WebIDL/#Unforgeable).

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateSingleBatchedAttribute):
(GenerateImplementation):
* page/DOMWindow.idl:
* page/Location.idl:

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

12 years agoRename [ConvertNullToNullString] to [TreatNullAs=EmptyString]
haraken@chromium.org [Thu, 2 Feb 2012 07:07:50 +0000 (07:07 +0000)]
Rename [ConvertNullToNullString] to [TreatNullAs=EmptyString]
https://bugs.webkit.org/show_bug.cgi?id=77602

Reviewed by Adam Barth.

This patch renames [ConvertNullToNullString] to [TreatNullAs=EmptyString],
according to the spec (http://dev.w3.org/2006/webapi/WebIDL/#TreatNullAs).

No tests. No changes in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(JSValueToNative):
* bindings/scripts/CodeGeneratorV8.pm:
(GetNativeTypeFromSignature):

* css/CSSCharsetRule.idl:
* css/CSSPageRule.idl:
* css/CSSRule.idl:
* css/CSSStyleDeclaration.idl:
* css/CSSStyleRule.idl:
* css/CSSValue.idl:
* css/MediaList.idl:
* css/WebKitCSSKeyframesRule.idl:
* dom/Attr.idl:
* dom/CharacterData.idl:
* dom/DOMImplementation.idl:
* dom/Document.idl:
* dom/Element.idl:
* dom/NamedNodeMap.idl:
* dom/Node.idl:
* dom/ProcessingInstruction.idl:
* dom/ShadowRoot.idl:
* html/HTMLAnchorElement.idl:
* html/HTMLButtonElement.idl:
* html/HTMLDocument.idl:
* html/HTMLElement.idl:
* html/HTMLFormElement.idl:
* html/HTMLFrameElement.idl:
* html/HTMLInputElement.idl:
* html/HTMLMediaElement.idl:
* html/HTMLOutputElement.idl:
* html/HTMLScriptElement.idl:
* html/HTMLSelectElement.idl:
* html/HTMLTextAreaElement.idl:
* html/HTMLTitleElement.idl:
* html/canvas/CanvasRenderingContext2D.idl:
* page/DOMWindow.idl:
* storage/StorageEvent.idl:
* svg/SVGAngle.idl:
* svg/SVGElement.idl:
* svg/SVGLength.idl:
* svg/SVGScriptElement.idl:

* bindings/scripts/test/TestObj.idl: No change in the run-bindings-tests results.

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

12 years agoWebkit generate-coverage-data script needs update to use new test script
commit-queue@webkit.org [Thu, 2 Feb 2012 06:31:35 +0000 (06:31 +0000)]
Webkit generate-coverage-data script needs update to use new test script
https://bugs.webkit.org/show_bug.cgi?id=77597

Patch by Jacob Goldstein <jacobg@adobe.com> on 2012-02-01
Reviewed by Dirk Schulze.

* Scripts/generate-coverage-data:

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

12 years agoRemove [GenerateConstructor] from IDL files
haraken@chromium.org [Thu, 2 Feb 2012 06:24:28 +0000 (06:24 +0000)]
Remove [GenerateConstructor] from IDL files
https://bugs.webkit.org/show_bug.cgi?id=77598

Reviewed by Adam Barth.

[GenerateConstructor] is used in some IDL files but it is not implemented
in code generators. I could not find any history about [GenerateConstructor]
in code generators. This patch removes them from IDL files.

Maybe we want to replace [GenerateConstructor] with [Constructor] eventually,
but currently no tests are written for their constructors (e.g. "new DOMTokenList()").
So simply removing them would make sense.

No new tests. No change in behavior.

* dom/DOMStringList.idl:
* html/DOMSettableTokenList.idl:
* html/DOMTokenList.idl:
* svg/SVGFEConvolveMatrixElement.idl:
* webaudio/AudioPannerNode.idl:

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

12 years agoConsider user's preferred language when choosing text tracks
eric.carlson@apple.com [Thu, 2 Feb 2012 05:10:31 +0000 (05:10 +0000)]
Consider user's preferred language when choosing text tracks
https://bugs.webkit.org/show_bug.cgi?id=74121

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Tests: media/track/track-language-preference.html
       media/track/track-prefer-captions.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::loadTimerFired): configureTextTracks -> configureNewTextTracks.
(WebCore::HTMLMediaElement::textTracksAreReady): Add more comments.
(WebCore::HTMLMediaElement::textTrackModeChanged): Ditto.
(WebCore::HTMLMediaElement::showingTrackWithSameKind): Minor restructuring.
(WebCore::HTMLMediaElement::userIsInterestedInThisTrackKind): Renamed from userIsInterestedInThisTrack,
    don't consider user's language preference.
(WebCore::HTMLMediaElement::configureTextTrackGroup): New, configure all tracks in a group,
    considering user's kind and language preferences.
(WebCore::HTMLMediaElement::configureNewTextTracks): New, configure all newly added tracks.
* html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::TrackGroup::TrackGroup):
(TrackGroup):

* platform/Language.cpp:
(WebCore::canonicalLanguageIdentifier): New, create a canonicalized version of a language string.
(WebCore::bestMatchingLanguage): New, return the language from the list that best matches the
    specified language.
(WebCore::preferredLanguageFromList): New, return the language in the specified list that best
    matches the user's language preference.
* platform/Language.h:

* testing/Internals.cpp:
(WebCore::Internals::setShouldDisplayTrackType): New, allow DRT to set the track type preference.
(WebCore::Internals::shouldDisplayTrackType): New, allow DRT to read the track type preference.
* testing/Internals.h:
* testing/Internals.idl:

LayoutTests:

* media/track/track-language-preference-expected.txt: Added.
* media/track/track-language-preference.html: Added.
* media/track/track-prefer-captions-expected.txt: Added.
* media/track/track-prefer-captions.html: Added.
* platform/mac/Skipped:

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

12 years agoChange class hierarycy so that ShadowRoot can inherit DocumentFragment.
hayato@chromium.org [Thu, 2 Feb 2012 04:21:29 +0000 (04:21 +0000)]
Change class hierarycy so that ShadowRoot can inherit DocumentFragment.
https://bugs.webkit.org/show_bug.cgi?id=76693

Reviewed by Darin Adler.

Make ShadowRoot inherit DocumentFragment so that it matches the class hierarchy of IDL in the spec.
TreeScope becomes a separated class, which is now inherited by Document and ShadowRoot using multiple-inheritance.
This patch is pre-requirement for coming IDL change.

No tests. No change in behavior.

* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::~Document):
(WebCore::Document::buildAccessKeyMap):
(WebCore::Document::childrenChanged):
(WebCore::Document::attach):
(WebCore::Document::detach):
* dom/Document.h:
(Document):
* dom/DocumentFragment.cpp:
(WebCore::DocumentFragment::DocumentFragment):
* dom/DocumentFragment.h:
(DocumentFragment):
* dom/DocumentOrderedMap.cpp:
(WebCore::DocumentOrderedMap::get):
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::ShadowRoot):
(WebCore::ShadowRoot::~ShadowRoot):
(WebCore::ShadowRoot::attach):
* dom/ShadowRoot.h:
* dom/TreeScope.cpp:
(WebCore::TreeScope::TreeScope):
(WebCore::TreeScope::~TreeScope):
(WebCore::TreeScope::setParentTreeScope):
(WebCore::TreeScope::getImageMap):
(WebCore::TreeScope::findAnchor):
* dom/TreeScope.h:
(WebCore):
(WebCore::TreeScope::rootNode):
(TreeScope):
* dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):
* page/DragController.cpp:
(WebCore::asFileInput):
* page/FocusController.cpp:
(WebCore::ownerOfTreeScope):
(WebCore::FocusController::nextFocusableNode):
(WebCore::FocusController::previousFocusableNode):

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

12 years agoWorkerScriptController::evaluate() should not return anything
benjamin@webkit.org [Thu, 2 Feb 2012 04:11:09 +0000 (04:11 +0000)]
WorkerScriptController::evaluate() should not return anything
https://bugs.webkit.org/show_bug.cgi?id=77587

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-02-01
Reviewed by Adam Barth.

Remove the return value from WorkerScriptController as it is
(and should be) unused.

* bindings/js/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::evaluate):
* bindings/js/WorkerScriptController.h:
(WorkerScriptController):
* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::evaluate):
* bindings/v8/WorkerScriptController.h:
(WorkerScriptController):

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

12 years agoRemove [DelegatingPrototypeGetOwnPropertySlot], [HasCustomIndexGetter],
haraken@chromium.org [Thu, 2 Feb 2012 03:25:01 +0000 (03:25 +0000)]
Remove [DelegatingPrototypeGetOwnPropertySlot], [HasCustomIndexGetter],
[HasIndexSetter], [JSConstructorTemplate] and [NonEmpty] from code generators
https://bugs.webkit.org/show_bug.cgi?id=77585

Reviewed by Adam Barth.

This patch removes [DelegatingPrototypeGetOwnPropertySlot], [HasCustomIndexGetter],
[HasIndexSetter], [JSConstructorTemplate] and [NonEmpty] from code generators,
since they are not used by no IDL files.

No tests. No change in behavior.

* bindings/scripts/CodeGenerator.pm:
(GetterExpression):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateGetOwnPropertyDescriptorBody):
(GenerateHeader):
(GenerateImplementation):
(IsConstructable):
(IsConstructorTemplate):

* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated the run-bindings-tests results.
* bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto.
* bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto.
(webkit_dom_test_obj_set_property):
(webkit_dom_test_obj_get_property):
(webkit_dom_test_obj_class_init):
* bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto.
* bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
(WebCore):
* bindings/scripts/test/JS/JSTestObj.h: Ditto.
(WebCore):
* bindings/scripts/test/ObjC/DOMTestObj.h: Ditto.
* bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto.
* bindings/scripts/test/V8/V8TestObj.cpp: Ditto.
(WebCore):

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

12 years agoSelect attribute of HTMLContentElement should be able be changed dynamically.
commit-queue@webkit.org [Thu, 2 Feb 2012 03:22:22 +0000 (03:22 +0000)]
Select attribute of HTMLContentElement should be able be changed dynamically.
https://bugs.webkit.org/show_bug.cgi?id=76261

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-02-01
Reviewed by Hajime Morita.

Source/WebCore:

When select attribute is changed, the flag to recalc style is set.

Test: fast/dom/shadow/content-element-select-dynamic.html

* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::parseMappedAttribute):
  Sets recalc style when select is changed.
* html/shadow/HTMLContentElement.h:
(HTMLContentElement):

LayoutTests:

Test cases for changing select attribute dynamically.

* fast/dom/shadow/content-element-select-dynamic-expected.txt: Added.
* fast/dom/shadow/content-element-select-dynamic.html: Added.

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

12 years agoRemove [ImplementationUUID] and [InterfaceUUID] from html/canvas/*.idl
haraken@chromium.org [Thu, 2 Feb 2012 02:47:53 +0000 (02:47 +0000)]
Remove [ImplementationUUID] and [InterfaceUUID] from html/canvas/*.idl
https://bugs.webkit.org/show_bug.cgi?id=77589

Reviewed by Adam Barth.

[ImplementationUUID] and [InterfaceUUID] are used in html/canvas/*.idl,
but they are not implemented in code generators and thus have no meaning.
This patch removes them.

No tests. No change in behavior.

* html/canvas/CanvasGradient.idl:
* html/canvas/CanvasPattern.idl: The file is now empty though.
* html/canvas/CanvasRenderingContext.idl:
* html/canvas/CanvasRenderingContext2D.idl:
* html/canvas/WebGLRenderingContext.idl:

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

12 years agoUnreviewed, rolling out r106408.
commit-queue@webkit.org [Thu, 2 Feb 2012 02:46:10 +0000 (02:46 +0000)]
Unreviewed, rolling out r106408.
http://trac.webkit.org/changeset/106408
https://bugs.webkit.org/show_bug.cgi?id=77592

crashes in chromium mac release tests (Requested by japhet on
#webkit).

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

* platform/graphics/Region.cpp:
* platform/graphics/Region.h:
(Region):
(Shape):

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

12 years ago[Texmap] Use glScissors for clipping in TextureMapperGL when possible
noam.rosenthal@nokia.com [Thu, 2 Feb 2012 02:42:14 +0000 (02:42 +0000)]
[Texmap] Use glScissors for clipping in TextureMapperGL when possible
https://bugs.webkit.org/show_bug.cgi?id=77575

Reviewed by Martin Robinson.

Source/WebCore:

Maintain a clipping stack, that helps us use stencils in conjunction with scissors.
We apply scissors when the clip region is rectalinear, and stencil when it's not.

No behavior changes so no new tests.

* platform/graphics/opengl/TextureMapperGL.cpp:
(SharedGLData):
(WebCore::TextureMapperGLData::SharedGLData::SharedGLData):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::bindSurface):
(WebCore):
(WebCore::scissorClip):
(WebCore::TextureMapperGL::beginScissorClip):
(WebCore::TextureMapperGL::endScissorClip):
(WebCore::TextureMapperGL::beginClip):
(WebCore::TextureMapperGL::endClip):
* platform/graphics/opengl/TextureMapperGL.h:
(TextureMapperGL):

Source/WebKit2:

Instead of applying the scissor clip in QQuickWebPage, we trickle it down to
TextureMapperGL, and apply it there as part of beginClip(). All direct GL operations are
now cleaned out of QQuickWebPage.

* UIProcess/API/qt/qquickwebpage.cpp:
(QQuickWebPagePrivate::paintToCurrentGLContext):
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::paintToCurrentGLContext):
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::paintToCurrentGLContext):
* UIProcess/DrawingAreaProxyImpl.h:
(DrawingAreaProxyImpl):
* UIProcess/LayerTreeHostProxy.h:
(LayerTreeHostProxy):
* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):

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

12 years agoMove the scrolling coordinator to page/scrolling
andersca@apple.com [Thu, 2 Feb 2012 02:34:13 +0000 (02:34 +0000)]
Move the scrolling coordinator to page/scrolling
https://bugs.webkit.org/show_bug.cgi?id=77590

Reviewed by Dan Bernstein.

Put scrolling related files in page/scrolling to avoid cluttering the page directory.

* WebCore.xcodeproj/project.pbxproj:
* page/scrolling/ScrollingCoordinator.cpp: Renamed from Source/WebCore/page/ScrollingCoordinator.cpp.
* page/scrolling/ScrollingCoordinator.h: Renamed from Source/WebCore/page/ScrollingCoordinator.h.
* page/scrolling/mac/ScrollingCoordinatorMac.mm: Renamed from Source/WebCore/page/mac/ScrollingCoordinatorMac.mm.

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

12 years agoRemove [ObjCPrefix], [V8ConstructorTemplate], [allowAccessToNode],
haraken@chromium.org [Thu, 2 Feb 2012 02:27:18 +0000 (02:27 +0000)]
Remove [ObjCPrefix], [V8ConstructorTemplate], [allowAccessToNode],
[v8implname] and [v8referenceattr] from code generators
https://bugs.webkit.org/show_bug.cgi?id=77588

Reviewed by Adam Barth.

This patch removes [ObjCPrefix], [V8ConstructorTemplate], [allowAccessToNode],
[v8implname] and [v8referenceattr] from code generators, since they are not used
by any IDL files.

No tests. No changes in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/CodeGeneratorObjC.pm:
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(IsConstructable):
(IsConstructorTemplate):
(GenerateNormalAttrGetter):
(GenerateFunctionCallString):

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

12 years agoYarr crash with regexp replace
msaboff@apple.com [Thu, 2 Feb 2012 02:19:01 +0000 (02:19 +0000)]
Yarr crash with regexp replace
https://bugs.webkit.org/show_bug.cgi?id=67454

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Properly handle the case of a back reference to an unmatched
subpattern by always matching without consuming any characters.

* yarr/YarrInterpreter.cpp:
(JSC::Yarr::Interpreter::matchBackReference):
(JSC::Yarr::Interpreter::backtrackBackReference):

LayoutTests:

New tests to check for proper handling of back references to
unmatched subpatterns.

* fast/js/regexp-backreferences-expected.txt:
* fast/js/script-tests/regexp-backreferences.js:

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

12 years agoUpdate the tests to show that the mac-ews processes patches from
abarth@webkit.org [Thu, 2 Feb 2012 02:11:52 +0000 (02:11 +0000)]
Update the tests to show that the mac-ews processes patches from
non-committers.

* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(EarlyWarningSytemTest.test_committer_only_ewses):
(EarlyWarningSytemTest.test_builder_ewses):

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

12 years agoMac-ews logs are huge
abarth@webkit.org [Thu, 2 Feb 2012 01:56:58 +0000 (01:56 +0000)]
Mac-ews logs are huge
https://bugs.webkit.org/show_bug.cgi?id=77045

Reviewed by Eric Seidel.

In order to get the cr-linux-ews bot to run tests on EC2, we created
the chromium-xvfb port, which contained a number of tweaks to the
Chromium port's behavior.  This patch refactors those tweaks so they
can be shared with the mac-ews, mostly by moving them into the
non-interactive mode of RunTests.

* Scripts/webkitpy/common/config/ports.py:
(WebKitPort):
(WebKitPort.layout_tests_results_path):
(ChromiumPort.run_javascriptcore_tests_command):
(ChromiumXVFBPort):
(ChromiumXVFBPort.run_webkit_tests_command):
* Scripts/webkitpy/common/config/ports_mock.py:
(MockPort):
(MockPort.layout_tests_results_path):
* Scripts/webkitpy/common/config/ports_unittest.py:
(WebKitPortTest.test_chromium_xvfb_port):
* Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:
(LayoutTestResultsReaderTest.test_missing_layout_test_results):
* Scripts/webkitpy/tool/commands/queues_unittest.py:
(CommitQueueTest.test_commit_queue):
(test_rollout):
(test_manual_reject_during_processing):
* Scripts/webkitpy/tool/steps/runtests.py:
(RunTests.run):
* Scripts/webkitpy/tool/steps/runtests_unittest.py:
(RunTestsTest.test_no_unit_tests):
* Scripts/webkitpy/tool/steps/steps_unittest.py:
(StepsTest.test_runtests_args):

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

12 years agoRoll out r106442. It made some tests more stable but others less stable.
rniwa@webkit.org [Thu, 2 Feb 2012 01:40:47 +0000 (01:40 +0000)]
Roll out r106442. It made some tests more stable but others less stable.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._run_tests_set):
(PerfTestsRunner._run_single_test):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(create_runner):
(test_run_passing_test):
(test_run_silent_test):
(test_run_failed_test):
(test_run_tonguey_test):
(test_run_timeout_test):
(test_run_crash_test):
(test_run_test_set):

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

12 years agoSupport targetOrigin = "/" in postMessage for sending messages to same origin as...
commit-queue@webkit.org [Thu, 2 Feb 2012 01:39:55 +0000 (01:39 +0000)]
Support targetOrigin = "/" in postMessage for sending messages to same origin as source document.
https://bugs.webkit.org/show_bug.cgi?id=77580

Patch by Pablo Flouret <pablof@motorola.com> on 2012-02-01
Reviewed by Adam Barth.

Source/WebCore:

No new tests. Modified http/tests/security/postMessage/target-origin.html
to test this case as well.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::postMessage):

LayoutTests:

* http/tests/security/postMessage/target-origin-expected.txt:
* http/tests/security/postMessage/target-origin.html:

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

12 years agoAvoid creating NamedNodeMap unnecessarily
caio.oliveira@openbossa.org [Thu, 2 Feb 2012 00:20:36 +0000 (00:20 +0000)]
Avoid creating NamedNodeMap unnecessarily
https://bugs.webkit.org/show_bug.cgi?id=77574

Reviewed by Ryosuke Niwa.

Source/WebCore:

The method Element::attributes() was being used for multiple things in our
codebase: (1) as the getter for NamedNodeMap exposed to DOM, (2) as a way to other WebCore
code get the "attribute storage" (currently inside NamedNodeMap), and (3) as a way to
get the attribute storage creating one if necessary.

This commit separate the jobs in different functions:

1) attributes() keeps being the DOM getter, and loses its boolean parameter.

2) updatedAttributes() updates the invalid attributes and returns the attribute
storage. If we don't have one, return 0.

3) ensureUpdatedAttributes() updates the invalid attributes and forces the
creation of attribute storage to return.

There is also another way to get to the attribute storage currently, via
attributeMap(), which doesn't update the attributes for possible changes in Style
or SVG attributes.

Note that the new functions are not available in Node class, so C++ code manipulating
attributes should cast to Element.

This separation also made easier to spot and fix some places where we do not
need to create the attribute storage if it doesn't exist.

No new tests, this commit shouldn't change the behavior of existing code.

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOneSelector):
* dom/DatasetDOMStringMap.cpp:
(WebCore::DatasetDOMStringMap::getNames):
(WebCore::DatasetDOMStringMap::item):
(WebCore::DatasetDOMStringMap::contains):
* dom/Document.cpp:
(WebCore::Document::importNode):
* dom/Element.cpp:
(WebCore::Element::setAttribute):
(WebCore::Element::hasAttributes):
(WebCore::Element::setAttributeNode):
(WebCore::Element::setAttributeNodeNS):
(WebCore::Element::removeAttributeNode):
(WebCore::Element::getAttributeNode):
(WebCore::Element::getAttributeNodeNS):
(WebCore::Element::hasAttribute):
(WebCore::Element::hasAttributeNS):
(WebCore::Element::normalizeAttributes):
* dom/Element.h:
(Element):
(WebCore::Element::attributes):
(WebCore::Element::ensureAttributeData):
(WebCore::Element::ensureUpdatedAttributes):
(WebCore::Element::updatedAttributes):
(WebCore::Element::setAttributesFromElement):
(WebCore::Element::ensureAttributeMap): Made const to be reused by ensureUpdatedAttributes().
(WebCore::Element::updateInvalidAttributes):
(WebCore):
* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::mapsEquivalent): Having no attributes is equivalent to
not having an attribute storage because the attribute storage is lazily created.
* dom/Node.cpp:
(WebCore::Node::isEqualNode): Do not force the creation of attribute storage to
compare two nodes.
(WebCore::Node::isDefaultNamespace): Use updatedAttributes(). Since we iterate
using length, it's OK if the attribute storage is empty.
(WebCore::Node::lookupNamespaceURI): Ditto.
(WebCore::Node::lookupNamespacePrefix): Ditto.
(WebCore::Node::compareDocumentPosition): Ditto.
* editing/ApplyStyleCommand.cpp:
(WebCore::hasNoAttributeOrOnlyStyleAttribute):
(WebCore::isEmptyFontTag):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::isRemovableBlock): Use isElementNode() explicitly
to identify non-Element nodes, then use hasAttributes() if is Element.
* editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::highestVisuallyEquivalentDivBelowRoot):
* editing/MarkupAccumulator.cpp:
(WebCore::MarkupAccumulator::appendElement): Do not create the attribute storage
unnecessarily.
* editing/htmlediting.cpp:
(WebCore::areIdenticalElements): Do not create the attribute storage
unnecessarily. Use mapsEquivalent() for comparing the attributes.
* editing/markup.cpp:
(WebCore::completeURLs): Do not create the attribute storage unnecessarily.
(WebCore::StyledMarkupAccumulator::appendElement): Ditto.
(WebCore::isPlainTextMarkup): hasAttributes() will avoid creating the attribute
storage unnecessarily.
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::parametersForPlugin):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::parametersForPlugin):
* html/HTMLParamElement.cpp:
(WebCore::HTMLParamElement::isURLAttribute): Do not create the attribute storage
unnecessarily.
* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement): Use
ensureUpdatedAttributes() since we will add new attributes.
(WebCore):
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::buildArrayForAttributeStyles):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::setAttributesAsText):
(WebCore::InspectorDOMAgent::performSearch):
(WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
* page/PageSerializer.cpp:
(WebCore::isCharsetSpecifyingNode): Do not assume attributeMap will exist.
* svg/properties/SVGAnimatedPropertySynchronizer.h: Use ensureUpdatedAttributes()
since we will add new attributes.
* xml/XPathFunctions.cpp:
(WebCore::XPath::FunLang::evaluate): Do not create the attribute storage
unnecessarily.
* xml/XPathNodeSet.cpp:
(WebCore::XPath::NodeSet::traversalSort):
* xml/XPathStep.cpp:
(WebCore::XPath::Step::nodesInAxis): Use isElementNode() instead of comparing
nodeType() manually. Do not create the attribute storage unnecessarily.
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser): Do not create the attribute
storage unnecessarily.
* xml/parser/XMLDocumentParserQt.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser): Ditto.
* xml/parser/XMLTreeBuilder.cpp:
(WebCore::XMLTreeBuilder::XMLTreeBuilder): Ditto.

Source/WebKit/chromium:

* src/WebPageSerializerImpl.cpp:
(WebKit::WebPageSerializerImpl::openTagToString): use updatedAttributes().

Source/WebKit/qt:

* Api/qwebelement.cpp:
(QWebElement::attributeNames): use updateAttributes().

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

12 years agocontentDispositionType misparses the Content-Disposition header in some obscure corne...
abarth@webkit.org [Thu, 2 Feb 2012 00:14:55 +0000 (00:14 +0000)]
contentDispositionType misparses the Content-Disposition header in some obscure corner cases
https://bugs.webkit.org/show_bug.cgi?id=77577

Reviewed by Eric Seidel.

The contentDispositionType extracts the disposition-type from the
Content-Disposition header.  According to RFC 6266 (and previous RFCs),
the disposition-type must be an RFC 2616 token.  Rather than enforce
this general rule, we had special-cased some examples (including
name=foo and filename=bar).  This patch generalizes our check to
properly validate that the disposition-type is an RFC 2616 token.

In conjunction with some other work in the Chromium network stack, this
causes Chromium to pass the following tests:

  http://greenbytes.de/tech/tc2231/#inlonlyquoted
  http://greenbytes.de/tech/tc2231/#attonlyquoted

Without this patch, these test cases neither trigger a navigation nor a
download in Chromium.  This patch does not appear to cause any visible
change in Safari.  (Safari passes these tests both before and after
this patch.)

* platform/network/HTTPParsers.cpp:
(WebCore::isRFC2616Token):
(WebCore::contentDispositionType):
    - This patch also adds a comment to
      filenameFromHTTPContentDisposition, which explains some of the
      was this function incorrectly implements the requirements in
      RFC 6266.  Resolving these issues is a subject for a future
      patch.
* platform/network/HTTPParsers.h:

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

12 years agoAnother attempt to fix the Windows build.
andersca@apple.com [Thu, 2 Feb 2012 00:09:27 +0000 (00:09 +0000)]
Another attempt to fix the Windows build.

* FullscreenVideoController.cpp:
(FullscreenVideoController::LayerClient::platformCALayerDidCreateTiles):

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

12 years agocalling function on catch block scope containing an eval result in wrong this value...
barraclough@apple.com [Thu, 2 Feb 2012 00:08:00 +0000 (00:08 +0000)]
calling function on catch block scope containing an eval result in wrong this value being passed
https://bugs.webkit.org/show_bug.cgi?id=77581

Reviewed by Oliver Hunt.

javascript:function F(){ return 'F' in this; }; try { throw F; } catch (e) { eval(""); alert(e()); }

Source/JavaScriptCore:

* bytecompiler/NodesCodegen.cpp:
(JSC::TryNode::emitBytecode):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createTryStatement):
* parser/NodeConstructors.h:
(JSC::TryNode::TryNode):
* parser/Nodes.h:
(TryNode):
* parser/Parser.cpp:
(JSC::::parseTryStatement):
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::createTryStatement):
* runtime/JSObject.h:
(JSObject):
(JSC::JSObject::isStaticScopeObject):
(JSC):

LayoutTests:

* fast/js/eval-var-decl-expected.txt:
* fast/js/script-tests/eval-var-decl.js:
(checkThis):
(testEvalInCatch):

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

12 years agoSource/WebCore: WebCore part of <rdar://problem/10442663> Paginated display does...
mitz@apple.com [Thu, 2 Feb 2012 00:01:45 +0000 (00:01 +0000)]
Source/WebCore: WebCore part of <rdar://problem/10442663> Paginated display does not respect page-break-{before,after}
https://bugs.webkit.org/show_bug.cgi?id=77505

Reviewed by Darin Adler.

* page/Page.h:
(WebCore::Page::Pagination::Pagination): Added initializer for the behavesLikeColumns member
variable.
(WebCore::Page::Pagination::operator==): Added comparison of behavesLikeColumns values.
(Pagination): Added behavesLikeColumns member variable. When set to false (the default),
paginated display respects the page-break-{before,after} properties rather than the
column-break-{before,after} ones.
* rendering/ColumnInfo.h:
(WebCore::ColumnInfo::ColumnInfo): Added initializer for the m_paginationUnit member.
(WebCore::ColumnInfo::paginationUnit): Added this getter.
(WebCore::ColumnInfo::setPaginationUnit): Added this setter.
(ColumnInfo): Added m_paginationUnit member. It defaults to Column.
* rendering/LayoutState.h:
(WebCore::LayoutState::isPaginatingColumns): Changed to check the pagination unit.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock): Added code to set the pagination unit in the ColumnInfo.
(WebCore::RenderBlock::paginationUnit): Added. The base class implementation returns Column.
* rendering/RenderBlock.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::paginationUnit): Added this override that returns Page, unless
this is the RenderView for the main frame and pagination is set to behave like columns.
* rendering/RenderView.h:

Source/WebKit/mac: WebKit/mac part of <rdar://problem/10442663> Paginated display does not respect page-break-{before,after}
https://bugs.webkit.org/show_bug.cgi?id=77505

Reviewed by Darin Adler.

* WebView/WebView.mm:
(-[WebView _setPaginationBehavesLikeColumns:]): Added this setter.
(-[WebView _paginationBehavesLikeColumns]): Added this getter.
* WebView/WebViewPrivate.h:

Source/WebKit2: WebKit2 part of <rdar://problem/10442663> Paginated display does not respect page-break-{before,after}
https://bugs.webkit.org/show_bug.cgi?id=77505

Reviewed by Darin Adler.

* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode): Encode paginationBehavesLikeColumns.
(WebKit::WebPageCreationParameters::decode): Decode paginationBehavesLikeColumns.
* Shared/WebPageCreationParameters.h:
(WebPageCreationParameters): Added paginationBehavesLikeColumns boolean.
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPaginationBehavesLikeColumns): Added this setter.
(WKPageGetPaginationBehavesLikeColumns): Added this getter.
* UIProcess/API/C/WKPagePrivate.h:
* UIProcess/API/mac/WKBrowsingContextController.mm:
(-[WKBrowsingContextController setPaginationBehavesLikeColumns:]): Added this Objective-C
wrapper around WKPageSetPaginationBehavesLikeColumns.
(-[WKBrowsingContextController paginationBehavesLikeColumns]): Added this Objective-C wrapper
around WKPageGetPaginationBehavesLikeColumns.
* UIProcess/API/mac/WKBrowsingContextControllerPrivate.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy): Added call to setPaginationBehavesLikeColumns() with
the value from the creation parameters.
(WebKit::WebPageProxy::setPaginationBehavesLikeColumns): Added this setter.
(WebKit::WebPageProxy::creationParameters): Populate paginationBehavesLikeColumns.
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::paginationBehavesLikeColumns): Added this getter.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setPaginationBehavesLikeColumns): Added this setter.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in: Added SetPaginationBehavesLikeColumns message.

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

12 years agoBackgrounds in HTML inside foreignObject don't draw
commit-queue@webkit.org [Wed, 1 Feb 2012 23:59:59 +0000 (23:59 +0000)]
Backgrounds in HTML inside foreignObject don't draw
https://bugs.webkit.org/show_bug.cgi?id=23111

Patch by Florin Malita <fmalita@google.com> on 2012-02-01
Reviewed by Eric Seidel.

Source/WebCore:

Test: svg/foreignObject/body-background.svg

* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintBackground):
Tweak the <body> background inhibiting logic to allow drawing when the element is embedded in FOs.

LayoutTests:

* svg/foreignObject/body-background-expected.png: Added.
* svg/foreignObject/body-background-expected.txt: Added.
* svg/foreignObject/body-background.svg: Added.

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

12 years agoEnable EWS for non-contributers.
lforschler@apple.com [Wed, 1 Feb 2012 23:58:13 +0000 (23:58 +0000)]
Enable EWS for non-contributers.
https://bugs.webkit.org/show_bug.cgi?id=77576

Reviewed by Adam Barth.

* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(MacEWS):

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

12 years agoREGRESSION (r104727): Strange graphics corruption opening a new tab in Safari
andersca@apple.com [Wed, 1 Feb 2012 23:54:54 +0000 (23:54 +0000)]
REGRESSION (r104727): Strange graphics corruption opening a new tab in Safari
https://bugs.webkit.org/show_bug.cgi?id=77578
<rdar://problem/10767174>

Reviewed by Dan Bernstein.

Resizing a window will always invalidate the window backing store, so make sure to set
_data->_windowHasValidBackingStore to NO whenever that happens.

* UIProcess/API/mac/WKView.mm:
(-[WKView addWindowObserversForWindow:]):
Use separate methods for the NSWindowDidMoveNotification and NSWindowDidResizeNotification notifications.

(-[WKView _windowDidMove:]):
Call -[WKView _updateWindowAndViewFrames].

(-[WKView _windowDidResize:]):
Call -[WKView _updateWindowAndViewFrames] and mark the window backing store as invalid.

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

12 years agoMake one able to set the local storage (tracker) database dir's path
commit-queue@webkit.org [Wed, 1 Feb 2012 23:32:37 +0000 (23:32 +0000)]
Make one able to set the local storage (tracker) database dir's path
https://bugs.webkit.org/show_bug.cgi?id=77006

Patch by Gustavo Lima Chaves <glima@profusion.mobi> on 2012-02-01
Reviewed by Darin Adler.

There are no behavior changes with the diff, so no need for new tests.

* storage/StorageTracker.cpp:
(WebCore::StorageTracker::setDatabaseDirectoryPath):
(WebCore):
(WebCore::StorageTracker::databaseDirectoryPath):
* storage/StorageTracker.h:
(StorageTracker):

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

12 years agoFix Window build.
andersca@apple.com [Wed, 1 Feb 2012 23:29:22 +0000 (23:29 +0000)]
Fix Window build.

* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::LayerClient::platformCALayerDidCreateTiles):
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerDidCreateTiles):

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

12 years agoAdd support for inferred function names
oliver@apple.com [Wed, 1 Feb 2012 23:23:30 +0000 (23:23 +0000)]
Add support for inferred function names
https://bugs.webkit.org/show_bug.cgi?id=77579

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Add new "inferred" names to function expressions, getters, and setters.
This property is not exposed to JS, so is only visible in the debugger
and profiler.

* JavaScriptCore.exp:
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::makeFunction):
* debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::calculatedFunctionName):
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createAssignResolve):
(JSC::ASTBuilder::createGetterOrSetterProperty):
(JSC::ASTBuilder::createProperty):
(JSC::ASTBuilder::makeAssignNode):
* parser/Nodes.h:
(JSC::FunctionBodyNode::setInferredName):
(JSC::FunctionBodyNode::inferredName):
(FunctionBodyNode):
* profiler/Profiler.cpp:
(JSC):
(JSC::Profiler::createCallIdentifier):
(JSC::createCallIdentifierFromFunctionImp):
* runtime/Executable.cpp:
(JSC::FunctionExecutable::FunctionExecutable):
(JSC::FunctionExecutable::fromGlobalCode):
* runtime/Executable.h:
(JSC::FunctionExecutable::create):
(JSC::FunctionExecutable::inferredName):
(FunctionExecutable):
* runtime/JSFunction.cpp:
(JSC::JSFunction::calculatedDisplayName):
(JSC):
(JSC::getCalculatedDisplayName):
* runtime/JSFunction.h:
(JSC):

LayoutTests:

Update test case results.

* fast/profiler/anonymous-event-handler-expected.txt:
* fast/profiler/anonymous-function-called-from-different-contexts-expected.txt:
* fast/profiler/anonymous-function-calls-built-in-functions-expected.txt:
* fast/profiler/anonymous-function-calls-eval-expected.txt:
* fast/profiler/built-in-function-calls-anonymous-expected.txt:
* fast/profiler/inline-event-handler-expected.txt:
* fast/profiler/many-calls-in-the-same-scope-expected.txt:
* fast/profiler/multiple-and-different-scoped-anonymous-function-calls-expected.txt:
* fast/profiler/multiple-and-different-scoped-function-calls-expected.txt:
* fast/profiler/multiple-anonymous-functions-called-from-the-same-function-expected.txt:
* fast/profiler/nested-anonymous-functon-expected.txt:
* fast/profiler/start-and-stop-profiler-multiple-times-expected.txt:

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

12 years agoGetMIMEDescription should return const char *
commit-queue@webkit.org [Wed, 1 Feb 2012 23:11:01 +0000 (23:11 +0000)]
GetMIMEDescription should return const char *
https://bugs.webkit.org/show_bug.cgi?id=77297

Patch by John Yani <vanuan@gmail.com> on 2012-02-01
Reviewed by Alexey Proskuryakov.

No new tests. No change in behaviour.

* plugins/blackberry/PluginPackageBlackBerry.cpp:
(WebCore::PluginPackage::fetchInfo):
* plugins/efl/PluginPackageEfl.cpp:
(WebCore):
(WebCore::PluginPackage::fetchInfo):
* plugins/npapi.h:
* plugins/npfunctions.h:
* plugins/qt/PluginPackageQt.cpp:
(WebCore::PluginPackage::fetchInfo):

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

12 years agoDFG should fold double-to-int conversions
fpizlo@apple.com [Wed, 1 Feb 2012 23:08:54 +0000 (23:08 +0000)]
DFG should fold double-to-int conversions
https://bugs.webkit.org/show_bug.cgi?id=77532

Reviewed by Oliver Hunt.

Performance neutral on major benchmarks. But it makes calling V8's
Math.random() 4x faster.

* bytecode/CodeBlock.cpp:
(JSC):
(JSC::CodeBlock::addOrFindConstant):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::addConstant):
(CodeBlock):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::toInt32):
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::getJSConstantForValue):
(JSC::DFG::ByteCodeParser::isInt32Constant):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::addShouldSpeculateInteger):
(Graph):
(JSC::DFG::Graph::addImmediateShouldSpeculateInteger):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::doRoundOfDoubleVoting):
(JSC::DFG::Propagator::fixupNode):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileAdd):
(DFG):
(JSC::DFG::SpeculativeJIT::compileArithSub):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::valueOfNumberConstantAsInt32):
(SpeculativeJIT):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* runtime/JSValueInlineMethods.h:
(JSC::JSValue::asDouble):

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

12 years agoConsolidate duplicate "willHide" functions in DetailedHeapshotView.js to fix
timothy@apple.com [Wed, 1 Feb 2012 23:08:13 +0000 (23:08 +0000)]
Consolidate duplicate "willHide" functions in DetailedHeapshotView.js to fix
a syntax error in JSC and make the Inspector open again in Release builds.

https://webkit.org/b/77424

Reviewed by Brian Weinstein.

* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.DetailedHeapshotView.prototype.willHide): Consolidated.
(WebInspector.DetailedHeapshotView.prototype.willHide): Removed.

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

12 years ago[Chromium] Enable deferred canvas rendering in the skia port
commit-queue@webkit.org [Wed, 1 Feb 2012 23:05:31 +0000 (23:05 +0000)]
[Chromium] Enable deferred canvas rendering in the skia port
https://bugs.webkit.org/show_bug.cgi?id=76732

Patch by Justin Novosad <junov@chromium.org> on 2012-02-01
Reviewed by Stephen White.

Source/WebCore:

No new tests: covered by existing canvas layout tests

Adding a new setting to enable deferred 2d canvas rendering.
Added support for deferred 2d canvas rendering in ImageBufferSkia
and Canvas2DLayerChromium, mostly plumbing. Deffered rendering
implementation is provided by skia (class SkDeferredCanvas).

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::shouldDefer):
(WebCore):
(WebCore::HTMLCanvasElement::createImageBuffer):
* html/HTMLCanvasElement.h:
(HTMLCanvasElement):
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setAccelerated2dCanvasEnabled):
(WebCore):
(WebCore::Settings::setDeferred2dCanvasEnabled):
* page/Settings.h:
(Settings):
(WebCore::Settings::deferred2dCanvasEnabled):
* platform/graphics/ImageBuffer.h:
(WebCore::ImageBuffer::create):
(ImageBuffer):
* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::ImageBuffer):
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::ImageBuffer):
* platform/graphics/chromium/Canvas2DLayerChromium.cpp:
(WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
(WebCore):
(WebCore::Canvas2DLayerChromium::setCanvas):
(WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/Canvas2DLayerChromium.h:
(Canvas2DLayerChromium):
* platform/graphics/qt/ImageBufferQt.cpp:
(WebCore::ImageBuffer::ImageBuffer):
* platform/graphics/skia/ImageBufferSkia.cpp:
(AcceleratedDeviceContext):
(WebCore::AcceleratedDeviceContext::AcceleratedDeviceContext):
(WebCore::AcceleratedDeviceContext::prepareForDraw):
(WebCore::AcceleratedDeviceContext::flush):
(WebCore):
(WebCore::createAcceleratedCanvas):
(WebCore::ImageBuffer::ImageBuffer):
* platform/graphics/wince/ImageBufferWinCE.cpp:
(WebCore::ImageBuffer::ImageBuffer):
* platform/graphics/wx/ImageBufferWx.cpp:
(WebCore::ImageBuffer::ImageBuffer):

Source/WebKit/chromium:

Adding a new setting for enabling deferred 2d canvas rendering

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

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

12 years agoDFG graph dump for GetScopedVar should show the correct prediction
fpizlo@apple.com [Wed, 1 Feb 2012 22:27:32 +0000 (22:27 +0000)]
DFG graph dump for GetScopedVar should show the correct prediction
https://bugs.webkit.org/show_bug.cgi?id=77530

Reviewed by Geoff Garen.

GetScopedVar has a heap prediction, not a variable prediction. But it does
have a variable. Hence we need to check for heap predictions before checking
for variable predictions.

* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):

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

12 years agoReplace JSArray destructor with finalizer
mhahnenberg@apple.com [Wed, 1 Feb 2012 22:15:45 +0000 (22:15 +0000)]
Replace JSArray destructor with finalizer
https://bugs.webkit.org/show_bug.cgi?id=77488

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* JavaScriptCore.exp:
* runtime/JSArray.cpp:
(JSC::JSArray::finalize): Added finalizer.
(JSC::JSArray::allocateSparseMap): Factored out code for allocating new sparse maps.
(JSC):
(JSC::JSArray::deallocateSparseMap): Factored out code for deallocating sparse maps.
(JSC::JSArray::enterDictionaryMode): Renamed enterSparseMode to enterDictionaryMode
because the old name was confusing because we could have a sparse array that never
called enterSparseMode.
(JSC::JSArray::defineOwnNumericProperty):
(JSC::JSArray::setLengthWritable):
(JSC::JSArray::putByIndexBeyondVectorLength):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::sort):
(JSC::JSArray::compactForSorting):
* runtime/JSArray.h:
(JSArray):

LayoutTests:

* fast/js/script-tests/sparse-array.js: Added code to test oscillation between
sparse and dense arrays.
* fast/js/sparse-array-expected.txt:

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

12 years agoGcc build fix after r106482.
rniwa@webkit.org [Wed, 1 Feb 2012 22:05:01 +0000 (22:05 +0000)]
Gcc build fix after r106482.

* platform/graphics/ca/GraphicsLayerCA.h:
(GraphicsLayerCA):

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

12 years agorebaseline box-shadow-clipped-slices
commit-queue@webkit.org [Wed, 1 Feb 2012 22:02:47 +0000 (22:02 +0000)]
rebaseline box-shadow-clipped-slices
https://bugs.webkit.org/show_bug.cgi?id=77565

Patch by Elliot Poger <epoger@google.com> on 2012-02-01
Reviewed by Stephen White.

* platform/chromium-linux/fast/box-shadow/box-shadow-clipped-slices-expected.png:
* platform/chromium-win/fast/box-shadow/box-shadow-clipped-slices-expected.png:

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

12 years agohttps://bugs.webkit.org/show_bug.cgi?id=77383
bdakin@apple.com [Wed, 1 Feb 2012 21:52:41 +0000 (21:52 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=77383
Add a different didFirstVisuallNonEmptyLayout heuristic to experiment with
-and corresponding-
<rdar://problem/10709560>

Reviewed by Sam Weinig.

Source/WebCore:

The goal is to re-vamp didFirstVisuallyNonEmptyLayout to be more accurate.
This patch adds a new heuristic called didNewFirstVisuallNonEmptyLayout and
leaves the old one for the time being. That is temporary.

The heuristic for didNewFirstVisuallNonEmptyLayout is to count relevant
painted RenderObjects on Page.
* page/Page.cpp:
(WebCore::Page::Page):
(WebCore::Page::setPaintedObjectsCounterThreshold):
(WebCore::Page::addRelevantRepaintedObject):
* page/Page.h:
(WebCore):
(Page):
(WebCore::Page::startCountingRepaintedObjects):
* WebCore.exp.in:

Start counting relevant painted RenderObjects on the page once the first
layout is complete.
* page/FrameView.cpp:
(WebCore::FrameView::performPostLayoutTasks):

Machinery for firing didNewFirstVisuallNonEmptyLayout.
* loader/EmptyClients.h:
(WebCore::EmptyFrameLoaderClient::dispatchDidNewFirstVisuallyNonEmptyLayout):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::didNewFirstVisuallyNonEmptyLayout):
(WebCore):
* loader/FrameLoader.h:
(FrameLoader):
* loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::dispatchDidNewFirstVisuallyNonEmptyLayout):

These RenderObjects are the ones that this api currently consider to be
relevant. If their repaint rects intersect with the viewRect, then they are
added to the relevant objects set on the Page.
* rendering/InlineBox.cpp:
(WebCore::InlineBox::paint):
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintReplaced):
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::paintReplaced):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::paintReplaced):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::paintReplaced):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::paint):
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::paintReplaced):
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::paintReplaced):

Source/WebKit2:

Machinery for didNewFirstVisuallNonEmptyLayout.
* UIProcess/API/C/WKPage.h:
* UIProcess/WebLoaderClient.cpp:
(WebKit::WebLoaderClient::didNewFirstVisuallyNonEmptyLayout):
(WebKit):
* UIProcess/WebLoaderClient.h:
(WebLoaderClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didNewFirstVisuallyNonEmptyLayout):
(WebKit):
* UIProcess/WebPageProxy.h:
(WebPageProxy):
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidNewFirstVisuallyNonEmptyLayout):
(WebKit):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient):

This temporary API allows the client to specify the threshold for the painted
objects counter on Page. This is temporary.
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSetPaintedObjectsCounterThreshold):
* WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setPaintedObjectsCounterThreshold):
(WebKit):
* WebProcess/WebPage/WebPage.h:
(WebPage):

Tools:

WebKit2's WebLoaderClient has a temporary new function that must be accounted
for.
* MiniBrowser/mac/BrowserWindowController.m:
(-[BrowserWindowController awakeFromNib]):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):

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

12 years agoCSSStyleDeclaration.getPropertyPriority() fails for CSS shorthand properties with...
alexis.menard@openbossa.org [Wed, 1 Feb 2012 21:48:23 +0000 (21:48 +0000)]
CSSStyleDeclaration.getPropertyPriority() fails for CSS shorthand properties with 'important' priority
https://bugs.webkit.org/show_bug.cgi?id=49058

Reviewed by Andreas Kling.

Source/WebCore:

CSSMutableStyleDeclaration::getPropertyPriority was not handling shorthands properly. Shorthands are
not part of the property list of the style so we need to query the longhands which are the one added
in the list. Only if the longhands have equal priority the shorthand priority is known. I also renamed
getPropertyPriority (not the CSSOM exposed method) to something more consistent with WebKit naming guidelines.

Test: fast/css/shorthand-priority.html

* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::propertyIsImportant):
(WebCore::CSSMutableStyleDeclaration::addParsedProperty):
(WebCore::CSSMutableStyleDeclaration::getPropertyPriority):
* css/CSSMutableStyleDeclaration.h:
(CSSMutableStyleDeclaration):
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::extractAndRemoveTextDirection):
(WebCore::EditingStyle::collapseTextDecorationProperties):
(WebCore::EditingStyle::conflictsWithInlineStyleOfElement):
(WebCore::setTextDecorationProperty):
* editing/RemoveCSSPropertyCommand.cpp:
(WebCore::RemoveCSSPropertyCommand::doApply):

Source/WebKit/qt:

Update the code as getPropertyPriority has been renamed to propertyIsImportant.

* Api/qwebelement.cpp:
(QWebElement::styleProperty):

LayoutTests:

* fast/css/shorthand-priority-expected.txt: Added.
* fast/css/shorthand-priority.html: Added.

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

12 years agoCrash in EventHandler::updateDragAndDrop
rniwa@webkit.org [Wed, 1 Feb 2012 21:34:08 +0000 (21:34 +0000)]
Crash in EventHandler::updateDragAndDrop
https://bugs.webkit.org/show_bug.cgi?id=77569

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Test: fast/events/remove-target-with-shadow-in-drag.html

* page/EventHandler.cpp:
(WebCore::EventHandler::updateDragAndDrop):

LayoutTests:

* fast/events/remove-target-with-shadow-in-drag-expected.txt: Added.
* fast/events/remove-target-with-shadow-in-drag.html: Added.

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

12 years agoUnreviewed, rolling out r106382.
commit-queue@webkit.org [Wed, 1 Feb 2012 21:18:23 +0000 (21:18 +0000)]
Unreviewed, rolling out r106382.
http://trac.webkit.org/changeset/106382
https://bugs.webkit.org/show_bug.cgi?id=77571

Causing chromium crashes in PNGImageDecoder (Requested by
japhet on #webkit).

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

Source/WebCore:

* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::evaluate):
* page/Console.cpp:
(WebCore::Console::time):
(WebCore::Console::timeEnd):
* platform/chromium/PlatformSupport.h:
* platform/chromium/TraceEvent.h:
(internal):
(ScopeTracer):
(WebCore::internal::ScopeTracer::ScopeTracer):
(WebCore::internal::ScopeTracer::~ScopeTracer):

Source/WebKit/chromium:

* public/platform/WebKitPlatformSupport.h:
(WebKitPlatformSupport):
(WebKit::WebKitPlatformSupport::isTraceEventEnabled):
(WebKit::WebKitPlatformSupport::traceEventBegin):
(WebKit::WebKitPlatformSupport::traceEventEnd):
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::isTraceEventEnabled):
(WebCore):
(WebCore::PlatformSupport::traceEventBegin):
(WebCore::PlatformSupport::traceEventEnd):

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

12 years agoReviewed by Darin Adler.
andersca@apple.com [Wed, 1 Feb 2012 20:02:34 +0000 (20:02 +0000)]
Reviewed by Darin Adler.

Simplify the code that creates a new tile layer by getting a reference to the RetainPtr<WebTileLayer>&
slot in the hash map and assign directly into it.

* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::revalidateTiles):

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

12 years agoTile cache doesn't have an upper limit
andersca@apple.com [Wed, 1 Feb 2012 19:59:47 +0000 (19:59 +0000)]
Tile cache doesn't have an upper limit
https://bugs.webkit.org/show_bug.cgi?id=77564
<rdar://problem/10710744>

Reviewed by Darin Adler.

Cache enough tiles to cover 3x the visible height and 2x the visible width of the page,
and drop tiles that are outside that area.

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::platformCALayerDidCreateTiles):
Call GraphicsLayerClient::notifySyncRequired here, which will schedule a layer flush and ensure that
the page layout is up to date before the new tiles are painted.

* platform/graphics/ca/PlatformCALayerClient.h:
Add platformCALayerDidCreateTiles member function.

* platform/graphics/ca/mac/TileCache.h:
Update for new/removed member functions and member variables.

* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::TileCache):
Initialize the tile revalidation timer.

(WebCore::TileCache::tileCacheLayerBoundsChanged):
If we don't have any tiles at all right now, revalidate the tiles immediately. Otherwise,
schedule the revalidation timer.

(WebCore::TileCache::setNeedsDisplayInRect):
Return early if we have no tiles.

(WebCore::TileCache::visibleRectChanged):
Schedule tile revalidation.

(WebCore::TileCache::rectForTileIndex):
New helper function that returns the bounds rect of a tile given its tile index.

(WebCore::TileCache::getTileIndexRangeForRect):
Clamp the rect to the bounds of the tile cache layer.

(WebCore::TileCache::scheduleTileRevalidation):
Schedule the revalidation timer if it hasn't already been scheduled.

(WebCore::TileCache::tileRevalidationTimerFired):
Call revalidateTiles.

(WebCore::TileCache::revalidateTiles):
Compute the tile coverage rect and remove all tiles that are outside. Create new tiles for any
parts of the tile coverage rect that don't have tiles already.

(WebCore::TileCache::tileLayerAtIndex):
Remove invalid assertions.

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

12 years agoTestWebKitAPI isn't being built on chromium bots any more
dpranke@chromium.org [Wed, 1 Feb 2012 19:52:06 +0000 (19:52 +0000)]
TestWebKitAPI isn't being built on chromium bots any more
https://bugs.webkit.org/show_bug.cgi?id=77563

Reviewed by Dimitri Glazkov.

I accidentally dropped it in the refactoring in r105449.

Source/WebKit/chromium:

* All.gyp:

Tools:

* TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp: Added.

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

12 years agoFixed some lines in the date-constructor.js test.
commit-queue@webkit.org [Wed, 1 Feb 2012 19:41:01 +0000 (19:41 +0000)]
Fixed some lines in the date-constructor.js test.
https://bugs.webkit.org/show_bug.cgi?id=75892

Patch by Szilard Ledan <Ledan-Muntean.Szilard@stud.u-szeged.hu> on 2012-02-01
Reviewed by Gavin Barraclough.

* fast/js/date-constructor-expected.txt:
* fast/js/script-tests/date-constructor.js:

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

12 years agoSource/WebCore: Add support for fixed and percent min-width on the table element...
commit-queue@webkit.org [Wed, 1 Feb 2012 19:38:23 +0000 (19:38 +0000)]
Source/WebCore: Add support for fixed and percent min-width on the table element for table-layout: auto to
match Firefox and Opera's behavior.

In FixedTableLayout.cpp, the computePreferredLogicalWidths method looks like it has
issues based on the comment: "FIXME: This entire calculation is incorrect for both
minwidth and maxwidth." (minwidth and maxwidth refer to the preferred widths, not the
min-width and max-width styles). I have not implemented min-width for FixedTableLayout
in this patch since it requires some more research around that comment.

min-width and max-width on the table element was discussed on the www-style list:
http://lists.w3.org/Archives/Public/www-style/2012Jan/0684.html

min-width is not implemented on <table> for table-layout: auto
https://bugs.webkit.org/show_bug.cgi?id=76553

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-02-01
Reviewed by Julien Chaffraix.

Test: fast/table/min-width.html

* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::computePreferredLogicalWidths):

    If the min or max preferred logical width is less than a fixed min width style, it is
    set to the fixed min width style. Like a percent width style, a percent min-width style
    does not affect the min or max preferred logical widths computed by the table layout
    algorithm. RenderTable's computeLogicalWidth method handles percent min-width styles.

    min-width for the table-layout: fixed case has been split out into this bug:
    https://bugs.webkit.org/show_bug.cgi?id=76948

* rendering/RenderTable.cpp:
(WebCore::RenderTable::computeLogicalWidth):

    If the RenderStyle's logical min width is defined and greater than the logical width
    calculation, this method sets the logical width to the logical min width.

(WebCore::RenderTable::convertStyleWidthToComputedWidth):

    This new method generalizes and factors out logic from RenderTable::computeLogicalWidth
    that converted the width style to a computed value in the fixed and percent case.
    RenderTable::computeLogicalWidth now calls this method to determine the computed values
    for both the width style and the min-width style. In the future, it can also be used for
    the max-width style.

    Note that this method handles the special CSS table case, which requires borders and
    paddings to be included in the computed width calculation. This applies to all width
    styles, including width, min-width, and max-width. Before, this special case was handled
    in RenderTable::computeLogicalWidth.

* rendering/RenderTable.h:

LayoutTests: Add support for min-width on the table element.

min-width is not implemented on <table> for table-layout: auto
https://bugs.webkit.org/show_bug.cgi?id=76553

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-02-01
Reviewed by Julien Chaffraix.

* fast/table/min-width-css-block-table.html: Added.
* fast/table/min-width-css-block-table-expected.txt: Added.
* fast/table/min-width-css-inline-table.html: Added.
* fast/table/min-width-css-inline-table-expected.txt: Added.
* fast/table/min-width-html-block-table.html: Added.
* fast/table/min-width-html-block-table-expected.txt: Added.
* fast/table/min-width-html-inline-table.html: Added.
* fast/table/min-width-html-inline-table-expected.txt: Added.
* fast/table/script-tests/min-width-css-block-table.js: Added.
(computeLogicalWidth):
* fast/table/script-tests/min-width-css-inline-table.js: Added.
(computeLogicalWidth):
* fast/table/script-tests/min-width-helpers.js: Added.
(runTests):
(createTableStyle):
(computeLogicalWidthHelper):
(createSpan):
* fast/table/script-tests/min-width-html-block-table.js: Added.
(computeLogicalWidth):
* fast/table/script-tests/min-width-html-inline-table.js: Added.
(computeLogicalWidth):

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

12 years agoRefactor identifier resolution in BytecodeGenerator
commit-queue@webkit.org [Wed, 1 Feb 2012 19:37:00 +0000 (19:37 +0000)]
Refactor identifier resolution in BytecodeGenerator
https://bugs.webkit.org/show_bug.cgi?id=76285

Patch by Andy Wingo <wingo@igalia.com> on 2012-02-01
Reviewed by Geoffrey Garen.

* bytecompiler/BytecodeGenerator.h:
(JSC::ResolveResult): New class, to describe the storage
location corresponding to an identifier in a program.
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::resolve): New function, replacing
findScopedProperty.
(JSC::BytecodeGenerator::resolveConstDecl): New function,
encapsulating what ConstDeclNode::emitBytecode used to do.
(JSC::BytecodeGenerator::emitGetStaticVar):
(JSC::BytecodeGenerator::emitPutStaticVar): New functions,
corresponding to the old emitGetScopedVar and emitPutScopedVar.
(JSC::BytecodeGenerator::registerFor): Remove version that took an
Identifier&; replaced by ResolveResult::local().
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitResolveBase):
(JSC::BytecodeGenerator::emitResolveBaseForPut):
(JSC::BytecodeGenerator::emitResolveWithBase):
(JSC::BytecodeGenerator::emitResolveWithThis): Change to accept a
"resolveResult" argument.  This is more clear, and reduces the
amount of double analysis happening at compile-time.
* bytecompiler/NodesCodegen.cpp:
(JSC::ResolveNode::emitBytecode):
(JSC::EvalFunctionCallNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::PostfixResolveNode::emitBytecode):
(JSC::DeleteResolveNode::emitBytecode):
(JSC::TypeOfResolveNode::emitBytecode):
(JSC::PrefixResolveNode::emitBytecode):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::ConstDeclNode::emitCodeSingle):
(JSC::ForInNode::emitBytecode): Refactor to use the new
ResolveResult structure.

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

12 years ago[SKIA/CHROMIUM] Perform getImageData format conversions using Skia
commit-queue@webkit.org [Wed, 1 Feb 2012 19:21:32 +0000 (19:21 +0000)]
[SKIA/CHROMIUM] Perform getImageData format conversions using Skia
https://bugs.webkit.org/show_bug.cgi?id=77553

Patch by Brian Salomon <bsalomon@google.com> on 2012-02-01
Reviewed by Stephen White.

Source/WebCore:

Many existing canvas tests exercise this functionality.

* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::getImageData):

LayoutTests:

* platform/chromium/test_expectations.txt:

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

12 years agoSource/WebCore: preventDefault() in a mousedown in a subframe should not
japhet@chromium.org [Wed, 1 Feb 2012 18:45:17 +0000 (18:45 +0000)]
Source/WebCore: preventDefault() in a mousedown in a subframe should not
prevent the scrollbar from handling mouse movements if the
cursor leaves the subframe.
https://bugs.webkit.org/show_bug.cgi?id=73097

Reviewed by Darin Adler.

Test: fast/events/scroll-div-with-prevent-default-in-subframe.html

* page/EventHandler.cpp:
(WebCore::EventHandler::handleMousePressEvent):

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=73097.
Test adapted from repro case provided by zacklloyd@google.com.

Reviewed by Darin Adler.

* fast/events/resources/subframe-with-scrollable-div.html: Added.
* fast/events/scroll-div-with-prevent-default-in-subframe-expected.txt: Added.
* fast/events/scroll-div-with-prevent-default-in-subframe.html: Added.

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

12 years agoRename WebSpeechInputResult::set() to assign()
hans@chromium.org [Wed, 1 Feb 2012 18:29:20 +0000 (18:29 +0000)]
Rename WebSpeechInputResult::set() to assign()
https://bugs.webkit.org/show_bug.cgi?id=77540

Reviewed by Darin Fisher.

Source/WebKit/chromium:

It was suggested in a previous code review
(https://bugs.webkit.org/show_bug.cgi?id=77083#c5)
that this function should be called assign().

* public/WebSpeechInputResult.h:
(WebSpeechInputResult):
(WebKit::WebSpeechInputResult::set):
* src/WebSpeechInputResult.cpp:
(WebKit::WebSpeechInputResult::assign):

Tools:

* DumpRenderTree/chromium/MockWebSpeechInputController.cpp:
(MockWebSpeechInputController::addMockRecognitionResult):
(MockWebSpeechInputController::speechTaskFired):

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

12 years ago[GTK] WebKit1 API documentation is not generated when building with gtk-2.0
carlosgc@webkit.org [Wed, 1 Feb 2012 18:04:57 +0000 (18:04 +0000)]
[GTK] WebKit1 API documentation is not generated when building with gtk-2.0
https://bugs.webkit.org/show_bug.cgi?id=77542

Reviewed by Martin Robinson.

* gtk/generate-gtkdoc: Check first whether there's
webkitgtk-3.0.pc and if it doesn't exist use webkitgtk-1.0.pc
instead.
(get_webkit2_options): Return just the options since the
pkg_config_path doesn't depend on options
(get_webkit1_options): Ditto.
(generate_doc): Helper function to create a generator and generate
documentation for the given pkg-config file with the given options.
* gtk/gtkdoc.py:
(GTKDoc.__init__): Don't use ** for args parameter, since it's
used as a dict and never expanded.
(PkgConfigGTKDoc.__init__): Ditto.

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

12 years ago[GTK] API documentation is not installed even when building with --enable-gtk-doc
carlosgc@webkit.org [Wed, 1 Feb 2012 18:01:35 +0000 (18:01 +0000)]
[GTK] API documentation is not installed even when building with --enable-gtk-doc
https://bugs.webkit.org/show_bug.cgi?id=77094

Reviewed by Martin Robinson.

* GNUmakefile.am: Add install-data-local and uninstall-local rules
to install/uninstall WebKit1 and WebKit2 API documentation.

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

12 years ago[GTK] editing/inserting/4960120-2.html flaky crash
mario@webkit.org [Wed, 1 Feb 2012 17:58:57 +0000 (17:58 +0000)]
[GTK] editing/inserting/4960120-2.html flaky crash
https://bugs.webkit.org/show_bug.cgi?id=76815

Reviewed by Martin Robinson.

Source/WebCore:

Check if the node for the first parent object not ignoring
accessibility is null before using it. This might happen with
certain kind of accessibility objects, such as the root one (the
scroller containing the webArea object as its only child).

* accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
(objectFocusedAndCaretOffsetUnignored): Add missing null check.

LayoutTests:

* platform/gtk/test_expectations.txt: Unskipping tests that
shouldn't be crashing from now on.

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

12 years agoMake CSSMappedAttributeDeclaration have CSSMutableStyleDeclaration instead of being one
antti@apple.com [Wed, 1 Feb 2012 17:41:27 +0000 (17:41 +0000)]
Make CSSMappedAttributeDeclaration have CSSMutableStyleDeclaration instead of being one
https://bugs.webkit.org/show_bug.cgi?id=77545

Reviewed by Andreas Kling.

This is the easiest path for eliminating the last remaining subclass of CSSMutableStyleDeclaration.

On negative side this increases memory use of CSSMappedAttributeDeclaration by one ptr and refcount
(it loses the vptr) in total.

This is not meant to be the end state, just an intermediate refactoring step. CSSMappedAttributeDeclaration
should clearly be renamed too but this patch doesn't do that. It might not exist in its current form
much longer.

* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::setProperty):
(WebCore::CSSMutableStyleDeclaration::merge):
* css/CSSMutableStyleDeclaration.h:

    Remove protected section. No subclasses remain.
    Rename setPropertyInternal() to setProperty(). All public methods here are internal.

(CSSMutableStyleDeclaration):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseMappedAttributeValue):
* dom/Attribute.cpp:
(WebCore::Attribute::clone):
* dom/Attribute.h:
(Attribute):
(WebCore::Attribute::decl):
(WebCore::Attribute::mappedAttributeDeclaration):
(WebCore::Attribute::setMappedAttributeDeclaration):
(WebCore::Attribute::Attribute):
* dom/CSSMappedAttributeDeclaration.cpp:
(WebCore::CSSMappedAttributeDeclaration::setMappedImageProperty):
(WebCore::CSSMappedAttributeDeclaration::setMappedProperty):
(WebCore::CSSMappedAttributeDeclaration::removeMappedProperty):
* dom/CSSMappedAttributeDeclaration.h:
(CSSMappedAttributeDeclaration):
(WebCore::CSSMappedAttributeDeclaration::declaration):
(WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):

    Make CSSMutableStyleDeclaration a member instead of the base class.

* dom/StyledElement.cpp:
(WebCore::StyledElement::attributeChanged):
(WebCore::StyledElement::removeCSSProperty):
(WebCore::StyledElement::addCSSProperty):
(WebCore::StyledElement::addCSSImageProperty):
(WebCore::StyledElement::addCSSLength):
(WebCore::StyledElement::addCSSColor):
(WebCore::StyledElement::createMappedDecl):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::getPresentationAttribute):

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

12 years ago[Qt] Set all PlatformTouchPoint values possible from a QTouch event.
commit-queue@webkit.org [Wed, 1 Feb 2012 17:38:58 +0000 (17:38 +0000)]
[Qt] Set all PlatformTouchPoint values possible from a QTouch event.
https://bugs.webkit.org/show_bug.cgi?id=77442

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-02-01
Reviewed by Kenneth Rohde Christiansen.

* platform/qt/PlatformTouchPointQt.cpp:
(WebCore::PlatformTouchPoint::PlatformTouchPoint):

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

12 years agoWeb Inspector: CodeGeneratorInspector.py: move type builder code to dedicated Inspect...
commit-queue@webkit.org [Wed, 1 Feb 2012 17:22:02 +0000 (17:22 +0000)]
Web Inspector: CodeGeneratorInspector.py: move type builder code to dedicated InspectorTypeBuilder .h/.cpp
https://bugs.webkit.org/show_bug.cgi?id=77471

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

Code is moved physically to other file -- generator is changed accrodingly.

* inspector/CodeGeneratorInspector.py:
(String):
(provides):
(typename):
(Array):

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

12 years agoWeb Inspector: debugger reports wrong sources when paused in inline script on page...
yurys@chromium.org [Wed, 1 Feb 2012 17:03:16 +0000 (17:03 +0000)]
Web Inspector: debugger reports wrong sources when paused in inline script on page reload
https://bugs.webkit.org/show_bug.cgi?id=77548

Source/WebCore:

V8 returns treats each script source as ending with \n, now we take
this into account when reporting script line count to the inspector
front-end.

Reviewed by Vsevolod Vlasov.

Test: inspector/debugger/pause-in-inline-script.html

* bindings/js/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::dispatchDidParseSource):
* bindings/v8/DebuggerScript.js:

LayoutTests:

Reviewed by Vsevolod Vlasov.

* inspector/debugger/debugger-scripts-expected.txt:
* inspector/debugger/pause-in-inline-script-expected.txt: Added.
* inspector/debugger/pause-in-inline-script.html: Added.
* platform/chromium/inspector/debugger/debugger-scripts-expected.txt:

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

12 years ago[GTK] unittests/testloading crashes
commit-queue@webkit.org [Wed, 1 Feb 2012 16:50:33 +0000 (16:50 +0000)]
[GTK] unittests/testloading crashes
https://bugs.webkit.org/show_bug.cgi?id=77544

Patch by Philippe Normand <pnormand@igalia.com> on 2012-02-01
Reviewed by Xan Lopez.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidFailLoading): Bail out
early from dispatchDidFailLoading if the error is the result of an
interrupted load.

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

12 years agoUnreviewed, rolling out r106460.
ossy@webkit.org [Wed, 1 Feb 2012 14:54:32 +0000 (14:54 +0000)]
Unreviewed, rolling out r106460.
http://trac.webkit.org/changeset/106460
https://bugs.webkit.org/show_bug.cgi?id=77552

It break unit tests if WEBKIT_TESTFONTS isn't defined.
(Requested by Ossy on #webkit).

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

* Scripts/webkitpy/layout_tests/port/qt.py:

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

12 years agoContent element should be able to be dynamically added/removed/replaced in a shadow...
commit-queue@webkit.org [Wed, 1 Feb 2012 13:50:25 +0000 (13:50 +0000)]
Content element should be able to be dynamically added/removed/replaced in a shadow tree.
https://bugs.webkit.org/show_bug.cgi?id=76611

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-02-01
Reviewed by Hajime Morita

Source/WebCore:

When a content element is added/removed/replaced in a shadow tree, we have to recreate
the shadow tree to recalculate inclusions of content elements. Currently we didn't recalculate it
when content element is removed. (When added, it is recalculated.)
This patch enables us to recalcurate the shadow tree when content element is removed.

Test: fast/dom/shadow/content-element-move.html

* dom/Element.cpp:
(WebCore::Element::attach):
  If a shadow root exists, attaches shadow tree before attaching child elements.
* dom/ShadowRoot.cpp:
  Added a flag to recalculate shadow tree.
(WebCore::ShadowRoot::ShadowRoot):
(WebCore::ShadowRoot::recalcShadowTreeStyle):
  Recalculates light children and shadow tree.
(WebCore::ShadowRoot::setNeedsReattachHostChildrenAndShadow):
(WebCore::ShadowRoot::reattachHostChildrenAndShadow):
  Detaches shadow tree and host light children, and attaches them again.
* dom/ShadowRoot.h:
(WebCore::ShadowRoot::clearNeedsReattachHostChildrenAndShadow):
(WebCore::ShadowRoot::needsReattachHostChildrenAndShadow):
* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::attach):
  Does not need to detach included elements, because they are not attached in ContainerNode anymore.
(WebCore::HTMLContentElement::detach):
  When a content element detached, reattaches a shadow tree.

LayoutTests:

Test cases for appending/removing/replacing content element in a shadow tree.

* fast/dom/shadow/content-element-move-expected.txt: Added.
* fast/dom/shadow/content-element-move.html: Added.

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