WebKit-https.git
10 years ago[CMake] Clean up some cruft from WTF's CMakeLists.txt
kubo@profusion.mobi [Mon, 9 Jan 2012 19:17:11 +0000 (19:17 +0000)]
[CMake] Clean up some cruft from WTF's CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=75420

Reviewed by Daniel Bates.

* wtf/CMakeLists.txt: Remove the unused WTF_PORT_FLAGS variable; add
all needed paths to WTF_INCLUDE_DIRECTORIES in a single place.

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

10 years agoRemove expected results for Chromium Mac CG. This configuration is no longer supported.
abarth@webkit.org [Mon, 9 Jan 2012 19:16:06 +0000 (19:16 +0000)]
Remove expected results for Chromium Mac CG.  This configuration is no longer supported.

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

10 years agoRemove expected results for Chromium Mac CG. This configuration is no longer supported.
abarth@webkit.org [Mon, 9 Jan 2012 19:15:46 +0000 (19:15 +0000)]
Remove expected results for Chromium Mac CG.  This configuration is no longer supported.

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

10 years agoRemove expected results for Chromium Mac CG. This configuration is no longer supported.
abarth@webkit.org [Mon, 9 Jan 2012 19:15:22 +0000 (19:15 +0000)]
Remove expected results for Chromium Mac CG.  This configuration is no longer supported.

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

10 years agoRemove expected results for Chromium Mac CG. This configuration is no longer supported.
abarth@webkit.org [Mon, 9 Jan 2012 19:15:04 +0000 (19:15 +0000)]
Remove expected results for Chromium Mac CG.  This configuration is no longer supported.

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

10 years agoPrint an error message when NRWT can't run Apache
aroben@apple.com [Mon, 9 Jan 2012 18:38:49 +0000 (18:38 +0000)]
Print an error message when NRWT can't run Apache

Fixes <http://webkit.org/b/75712> NRWT mysteriously exits when Apache returns an error code

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.check_httpd): Print an error message when Apache returns an error code instead of
failing silently.

* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_check_httpd_success): Test that we don't print anything when we successfully
run Apache.
(PortTest.test_httpd_returns_error_code): Test that we print an error message when Apache
fails.

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

10 years ago[Chromium] Update test expectations.
jknotten@chromium.org [Mon, 9 Jan 2012 15:34:02 +0000 (15:34 +0000)]
[Chromium] Update test expectations.
https://bugs.webkit.org/show_bug.cgi?id=75856

media/track/track-webvtt-tc026-voice.html is crashing on Chromium
Debug Mac after http://trac.webkit.org/changeset/104327/

Tracking in bug 75817.

Unreviewed.

* platform/chromium/test_expectations.txt:

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

10 years ago[Gtk][ARM] Cross compiler buildbot is failing after r103040
rgabor@webkit.org [Mon, 9 Jan 2012 15:32:16 +0000 (15:32 +0000)]
[Gtk][ARM] Cross compiler buildbot is failing after r103040
https://bugs.webkit.org/show_bug.cgi?id=75846

Reviewed by Philippe Normand.

* Scripts/webkitdirs.pm:
(runAutogenForAutotoolsProjectIfNecessary):

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

10 years agoUnreviewed, rolling out r104418.
commit-queue@webkit.org [Mon, 9 Jan 2012 15:19:59 +0000 (15:19 +0000)]
Unreviewed, rolling out r104418.
http://trac.webkit.org/changeset/104418
https://bugs.webkit.org/show_bug.cgi?id=75855

we still need to build against CG on Mac sometimes (Requested
by epoger on #webkit).

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

Source/WebCore:

* WebCore.gyp/WebCore.gyp:

Source/WebKit/chromium:

* WebKit.gyp:
* WebKit.gypi:

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

10 years ago[GTK] [AC] Simplify accelerated compositing build options
commit-queue@webkit.org [Mon, 9 Jan 2012 15:08:42 +0000 (15:08 +0000)]
[GTK] [AC] Simplify accelerated compositing build options
https://bugs.webkit.org/show_bug.cgi?id=75518

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-01-09
Reviewed by Gustavo Noronha Silva.

.:

* configure.ac: Remove the --enable-3d-rendering option. It's enabled by
default now when accelerated compositing is enabled.
* GNUmakefile.am: Automatically enable 3D rendering when accelerated compositing
is turned on.

Source/WebCore:

* GNUmakefile.am: Automatically enable 3D rendering when AC is available.
* GNUmakefile.list.am: Clean up a comment.

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

10 years agopossible regression: r104060 maybe causing crashes
antti@apple.com [Mon, 9 Jan 2012 14:59:57 +0000 (14:59 +0000)]
possible regression: r104060 maybe causing crashes
https://bugs.webkit.org/show_bug.cgi?id=75676

Reviewed by Andreas Kling.

Based on the stacks, CSSStyleSelector may be getting deleted from under the
CSSStyleSelector::appendAuthorStylesheets call. Protect by temporarily detaching
from the document. Also add assertions to catch the case.

No test, there is no known repro and the fix is speculative.

* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::setDocType):
(WebCore::Document::childrenChanged):
(WebCore::Document::clearStyleSelector):
(WebCore::Document::updateActiveStylesheets):
* dom/Document.h:

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

10 years agoUse Vector<OwnPtr> for m_viewportDependentMediaQueryResults in CSSStyleSelector
caio.oliveira@openbossa.org [Mon, 9 Jan 2012 14:30:30 +0000 (14:30 +0000)]
Use Vector<OwnPtr> for m_viewportDependentMediaQueryResults in CSSStyleSelector
https://bugs.webkit.org/show_bug.cgi?id=75723

Reviewed by Andreas Kling.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::~CSSStyleSelector):
(WebCore::CSSStyleSelector::addViewportDependentMediaQueryResult):
* css/CSSStyleSelector.h:

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

10 years ago[Chromium] Update test expectations.
jknotten@chromium.org [Mon, 9 Jan 2012 14:28:50 +0000 (14:28 +0000)]
[Chromium] Update test expectations.
https://bugs.webkit.org/show_bug.cgi?id=75852

http/tests/inspector/network/download.html is timing out on mac, and
occasionally on other platforms too.

Unreviewed.

* platform/chromium/test_expectations.txt:

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

10 years ago[Qt] Add support for dynamically enabling and disabling touch mocking in the Qt MiniB...
commit-queue@webkit.org [Mon, 9 Jan 2012 14:14:06 +0000 (14:14 +0000)]
[Qt] Add support for dynamically enabling and disabling touch mocking in the Qt MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=75807

This patch adds a new icon to navigationbar of the Qt MiniBrowser
which allows you to dynamically toggle whether touch mocking is
enabled or disabled.

Patch by Alexander Færøy <ahf@0x90.dk> on 2012-01-09
Reviewed by Tor Arne Vestbø.

* MiniBrowser/qt/MiniBrowser.qrc:
* MiniBrowser/qt/MiniBrowserApplication.cpp:
(MiniBrowserApplication::notify):
* MiniBrowser/qt/MiniBrowserApplication.h:
(WindowOptions::WindowOptions):
(WindowOptions::touchMockingEnabled):
(WindowOptions::setTouchMockingEnabled):
* MiniBrowser/qt/icons/touch.png: Added.
* MiniBrowser/qt/qml/BrowserWindow.qml:

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

10 years agoFix expected files for new test: fast/dom/insertAdjacentHTML-DocumentFragment-crash...
ossy@webkit.org [Mon, 9 Jan 2012 14:05:23 +0000 (14:05 +0000)]
Fix expected files for new test: fast/dom/insertAdjacentHTML-DocumentFragment-crash.html
https://bugs.webkit.org/show_bug.cgi?id=75847

Reviewed by Philippe Normand.

* fast/dom/insertAdjacentHTML-DocumentFragment-crash-expected.txt: Add JSC specifix expected file as generic expected file.
* platform/chromium/fast/dom/insertAdjacentHTML-DocumentFragment-crash-expected.txt: Add V8 specifix expected file.

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

10 years ago[Chromium] Update test expectations.
jknotten@chromium.org [Mon, 9 Jan 2012 14:00:08 +0000 (14:00 +0000)]
[Chromium] Update test expectations.
https://bugs.webkit.org/show_bug.cgi?id=75849

We need to prevent TextTrack and TextTrackCue from being
garbage collected when the parent/owner is still reachable.
This is tracked in bug 73865.

Unreviewed.

* platform/chromium/test_expectations.txt:

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

10 years agoExtend CSSValueList to allow slash separated lists.
alexis.menard@openbossa.org [Mon, 9 Jan 2012 13:48:36 +0000 (13:48 +0000)]
Extend CSSValueList to allow slash separated lists.
https://bugs.webkit.org/show_bug.cgi?id=75841

Reviewed by Andreas Kling.

Multiple CSS properties are using slash to separate
various parts (e.g. border-radius) so having this
feature available in CSSValueList will make it easier
in the future to support these properties.

No new tests : existing ones should cover the refactor.

* css/CSSInitialValue.h:
(WebCore::CSSInitialValue::isImplicit):
(WebCore::CSSInitialValue::CSSInitialValue):
* css/CSSValue.cpp:
(WebCore::CSSValue::isImplicitInitialValue):
* css/CSSValue.h:
In order for CSSValue to not grow I moved m_isImplicitInitialValue
back to CSSInitialValue as this object is used only in CSSValuePool
and is allocated only twice.
(WebCore::CSSValue::CSSValue):
* css/CSSValueList.cpp:
(WebCore::CSSValueList::CSSValueList):
(WebCore::CSSValueList::copy):
Fix also usage of PassRefPtr.
(WebCore::CSSValueList::customCssText):
Refactor to use StringBuilder.
* css/CSSValueList.h:
(WebCore::CSSValueList::createCommaSeparated):
(WebCore::CSSValueList::createSpaceSeparated):
(WebCore::CSSValueList::createSlashSeparated):
* css/WebKitCSSFilterValue.cpp:
(WebCore::WebKitCSSFilterValue::WebKitCSSFilterValue):
* css/WebKitCSSTransformValue.cpp:
(WebCore::WebKitCSSTransformValue::WebKitCSSTransformValue):

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

10 years ago[Chromium] Update test expectations.
jknotten@chromium.org [Mon, 9 Jan 2012 13:22:38 +0000 (13:22 +0000)]
[Chromium] Update test expectations.
https://bugs.webkit.org/show_bug.cgi?id=75844

media/track/track-cues-cuechange.html is failing after
http://trac.webkit.org/changeset/104327/

Tracking in bug 75817.

Unreviewed.

* platform/chromium/test_expectations.txt:

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

10 years ago[Qt][WK2] Pinch zoom should affect the page size
abecsi@webkit.org [Mon, 9 Jan 2012 12:35:16 +0000 (12:35 +0000)]
[Qt][WK2] Pinch zoom should affect the page size
https://bugs.webkit.org/show_bug.cgi?id=74601

Reviewed by Kenneth Rohde Christiansen.

The current implementation uses the scale property of the QQuickWebPage
to scale the page in response to pinch gestures.
However for layout and anchoring to work correctly in QML, pinching needs
to change the page size.
This patch applies the pinch scale to the page size and to the transformation
matrix of the drawing area.
Thus the page item's coordinate system is no longer a direct representation
of the WebCore::Page coordinate system and it is no longer suitable as
an inertial frame of reference for input events. The event propagation had
to be moved to the QQuickWebView and the positions translated to content
coordinates when NativeWebEvents are created.
Re-landing with fixed event delivery for the test infrastructure.

* Shared/NativeWebMouseEvent.h:
* Shared/NativeWebTouchEvent.h:
* Shared/NativeWebWheelEvent.h:
* Shared/qt/NativeWebMouseEventQt.cpp:
(WebKit::NativeWebMouseEvent::NativeWebMouseEvent):
* Shared/qt/NativeWebTouchEventQt.cpp:
(WebKit::NativeWebTouchEvent::NativeWebTouchEvent):
* Shared/qt/NativeWebWheelEventQt.cpp:
(WebKit::NativeWebWheelEvent::NativeWebWheelEvent):
* Shared/qt/WebEventFactoryQt.cpp:
(WebKit::WebEventFactory::createWebMouseEvent):
(WebKit::WebEventFactory::createWebWheelEvent):
(WebKit::WebEventFactory::createWebTouchEvent):
* Shared/qt/WebEventFactoryQt.h:
* UIProcess/API/qt/qquickwebpage.cpp:
(QQuickWebPage::geometryChanged):
(QQuickWebPagePrivate::QQuickWebPagePrivate):
(QQuickWebPagePrivate::paintToCurrentGLContext):
(QQuickWebPage::usesTraditionalDesktopBehaviour):
(QQuickWebPage::setUsesTraditionalDesktopBehaviour):
(QQuickWebPage::eventHandler):
(QQuickWebPage::setContentSize):
(QQuickWebPage::contentSize):
(QQuickWebPage::setContentScale):
(QQuickWebPage::contentScale):
(QQuickWebPage::transformFromItem):
(QQuickWebPage::transformToItem):
(QQuickWebPagePrivate::updateSize):
* UIProcess/API/qt/qquickwebpage_p.h:
* UIProcess/API/qt/qquickwebpage_p_p.h:
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::enableMouseEvents):
(QQuickWebViewPrivate::disableMouseEvents):
(QQuickWebViewPrivate::loadDidCommit):
(QQuickWebViewPrivate::didFinishFirstNonEmptyLayout):
(QQuickWebViewPrivate::didChangeContentsSize):
(QQuickWebViewPrivate::didChangeViewportProperties):
(QQuickWebViewPrivate::pageDidRequestScroll):
(QQuickWebViewPrivate::updateVisibleContentRectAndScale):
(QQuickWebViewPrivate::PostTransitionState::apply):
(QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
(QQuickWebViewExperimental::setUseTraditionalDesktopBehaviour):
(QQuickWebViewExperimental::useTraditionalDesktopBehaviour):
(QQuickWebView::mapToWebContent):
(QQuickWebView::mapRectToWebContent):
(QQuickWebView::mapFromWebContent):
(QQuickWebView::mapRectFromWebContent):
(QQuickWebView::geometryChanged):
(QQuickWebView::keyPressEvent):
(QQuickWebView::keyReleaseEvent):
(QQuickWebView::inputMethodEvent):
(QQuickWebView::focusInEvent):
(QQuickWebView::focusOutEvent):
(QQuickWebView::touchEvent):
(QQuickWebView::mousePressEvent):
(QQuickWebView::mouseMoveEvent):
(QQuickWebView::mouseReleaseEvent):
(QQuickWebView::mouseDoubleClickEvent):
(QQuickWebView::wheelEvent):
(QQuickWebView::hoverEnterEvent):
(QQuickWebView::hoverMoveEvent):
(QQuickWebView::hoverLeaveEvent):
(QQuickWebView::dragMoveEvent):
(QQuickWebView::dragEnterEvent):
(QQuickWebView::dragLeaveEvent):
(QQuickWebView::dropEvent):
(QQuickWebView::event):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
* UIProcess/API/qt/qwebviewportinfo.cpp:
(QWebViewportInfo::contentsSize):
* UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
(tst_QQuickWebView::scrollRequest):
* UIProcess/qt/QtPinchGestureRecognizer.cpp:
(WebKit::QtPinchGestureRecognizer::recognize):
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
(WebKit::QtViewportInteractionEngine::setItemRectVisible):
(WebKit::QtViewportInteractionEngine::animateItemRectVisible):
(WebKit::QtViewportInteractionEngine::event):
(WebKit::QtViewportInteractionEngine::wheelEvent):
(WebKit::QtViewportInteractionEngine::pagePositionRequest):
(WebKit::QtViewportInteractionEngine::computePosRangeForItemAtScale):
(WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):
(WebKit::QtViewportInteractionEngine::applyConstraints):
(WebKit::QtViewportInteractionEngine::currentCSSScale):
(WebKit::QtViewportInteractionEngine::panGestureStarted):
(WebKit::QtViewportInteractionEngine::panGestureRequestUpdate):
(WebKit::QtViewportInteractionEngine::panGestureEnded):
(WebKit::QtViewportInteractionEngine::pinchGestureStarted):
(WebKit::QtViewportInteractionEngine::pinchGestureRequestUpdate):
(WebKit::QtViewportInteractionEngine::scaleContent):
* UIProcess/qt/QtViewportInteractionEngine.h:
* UIProcess/qt/QtWebPageEventHandler.cpp:
(QtWebPageEventHandler::handleEvent):
(QtWebPageEventHandler::handleMouseMoveEvent):
(QtWebPageEventHandler::handleMousePressEvent):
(QtWebPageEventHandler::handleMouseReleaseEvent):
(QtWebPageEventHandler::handleWheelEvent):
(QtWebPageEventHandler::handleHoverLeaveEvent):
(QtWebPageEventHandler::handleHoverMoveEvent):
(QtWebPageEventHandler::handleDragEnterEvent):
(QtWebPageEventHandler::handleDragMoveEvent):
(QtWebPageEventHandler::handleDropEvent):
(QtWebPageEventHandler::handleSingleTapEvent):
(QtWebPageEventHandler::handleDoubleTapEvent):
(QtWebPageEventHandler::touchEvent):
* UIProcess/qt/QtWebPageEventHandler.h:

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

10 years ago[EFL][WK2] Set color_set function to the clipped smart class.
commit-queue@webkit.org [Mon, 9 Jan 2012 12:13:37 +0000 (12:13 +0000)]
[EFL][WK2] Set color_set function to the clipped smart class.
https://bugs.webkit.org/show_bug.cgi?id=75286

Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2012-01-09
Reviewed by Andreas Kling.

Set _ewk_view_smart_color_set() function to the clipped smart class's color_set,
so application can set webpage's background color using evas_object_color_set() API.

* UIProcess/API/efl/ewk_view.cpp:
(_ewk_view_smart_color_set):
(ewk_view_smart_class_init):

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

10 years ago[Chromium] Update test expectations.
jknotten@chromium.org [Mon, 9 Jan 2012 12:06:10 +0000 (12:06 +0000)]
[Chromium] Update test expectations.
https://bugs.webkit.org/show_bug.cgi?id=75840

Unreviewed.

fast/filesystem/file-writer-abort.html is occasionally crashing
also on Windows.

* platform/chromium/test_expectations.txt:

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

10 years ago[Texmap] Move surface management from TextureMapperNode to TextureMapper
noam.rosenthal@nokia.com [Mon, 9 Jan 2012 11:54:06 +0000 (11:54 +0000)]
[Texmap] Move surface management from TextureMapperNode to TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=75779

Instead of a TextureMapperSurfaceManager class inside of TextureMapperNode.cpp, we now
maintain that surface pool inside of the TextureMapper class. This will later allow us to
allocate intermediate surface from within TextureMapperGL, a functionality we need for
filters.

Also, surfaces are not automatically created with the viewport size, but rather with the
size passed as a parameter. The surface from the pool is the smallest texture that is
larger than the required size, or any texture if such texture is not yet allocated.

Reviewed by Kenneth Rohde Christiansen.

Tests in LayoutTests/compositing already cover this.

* GNUmakefile.list.am: Added TextureMapper.cpp to the build.
* Target.pri: Added TextureMapper.cpp to the build.
* WebCore.gypi: Added TextureMapper.cpp to the build.
* platform/graphics/texmap/TextureMapper.cpp: Added.
* platform/graphics/texmap/TextureMapper.h:
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::paint):
(WebCore::TextureMapperNode::paintReflection):
(WebCore::TextureMapperNode::paintRecursive):
* platform/graphics/texmap/TextureMapperNode.h:
(WebCore::TextureMapperNode::TextureMapperNode):

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

10 years ago[Gtk] Regression: text-inserted events lack text inserted and current line
mario@webkit.org [Mon, 9 Jan 2012 10:16:20 +0000 (10:16 +0000)]
[Gtk] Regression: text-inserted events lack text inserted and current line
https://bugs.webkit.org/show_bug.cgi?id=72830

Reviewed by Martin Robinson.

Source/WebCore:

Fix issue getting the exposed text for an accessibility object at,
before of after a given offset, after changing it at least once.

* accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
(webkit_accessible_class_init): Don't initialize
gailTextUtilQuark, it won't be used anymore.
(getGailTextUtilForAtk): Don't cache the GailTextUtil as object
data, but create a new one each time this function is called.
(webkit_accessible_text_get_caret_offset): Simplified code by
using the new focusedObjectAndCaretOffsetUnignored function,
instead of the old objectAndOffsetUnignored function.
(focusedObjectAndCaretOffsetUnignored): Rewrite of the old
objectAndOffsetUnignored function so it now needs less
parameters than before and takes care of carefully selecting the
start and end visible positions to calculate the position of the
caret from the point of view of the accessibility object of
reference passed as the only input parameter now. Updated callers.
* accessibility/gtk/AccessibilityObjectWrapperAtk.h:

* editing/gtk/FrameSelectionGtk.cpp:
(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
Simplified code by calling to focusedObjectAndCaretOffsetUnignored
function, instead of the old objectAndOffsetUnignored function.

Source/WebKit/gtk:

Updated unit tests to check that both getting the current position
for the caret and the exposed text at, before or after a given
offset for an accessible object works as expected.

* tests/testatk.c:
(runGetTextTests): For objects implementing AtkEditableText, try
to change the exposed text and retrieve it again as a full line.
(testWebkitAtkCaretOffsets): For a text control (a text entry),
set the caret offset to a value greater than 1 and retrieve it.

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

10 years agoSubtree invalidation on stylesheet change
antti@apple.com [Mon, 9 Jan 2012 10:00:51 +0000 (10:00 +0000)]
Subtree invalidation on stylesheet change
https://bugs.webkit.org/show_bug.cgi?id=75834

Source/WebCore:

Reviewed by Andreas Kling.

Currently if we add a stylesheet with scoped selectors and matching scope elements exist,
we recalculate the entire document style. It is sufficient to invalidate the subtrees
matching the scope only.

This allows us to do less full style recalcs on many popular web sites (nytimes.com for example).
Subtree recalcs are typically much cheaper.

Test: fast/css/id-or-class-before-stylesheet.html

* dom/Document.cpp:
(WebCore::Document::testAddedStylesheetRequiresStyleRecalc):
(WebCore::Document::analyzeStylesheetChange):
(WebCore::Document::updateActiveStylesheets):
* dom/Document.h:

LayoutTests:

Reviewed by Andreas Kling.

* fast/css/id-or-class-before-stylesheet-expected.txt: Added.
* fast/css/id-or-class-before-stylesheet.html: Added.

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

10 years agoUnreviewed. Fix make distcheck issues.
carlosgc@webkit.org [Mon, 9 Jan 2012 09:53:28 +0000 (09:53 +0000)]
Unreviewed. Fix make distcheck issues.

Source/WebCore:

* GNUmakefile.list.am: Add missing header.

Tools:

* MiniBrowser/gtk/GNUmakefile.am:

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

10 years ago[Refactoring] Use join(", ", @arguments) to build a method argument string
haraken@chromium.org [Mon, 9 Jan 2012 09:38:37 +0000 (09:38 +0000)]
[Refactoring] Use join(", ", @arguments) to build a method argument string
in CodeGeneratorJS.pm
https://bugs.webkit.org/show_bug.cgi?id=75830

Reviewed by Adam Barth.

The code in CodeGeneratorJS.pm to build a method argument string is dirty
and error-prone. It is concatenating arguments one by one judging whether
", " is necessary or not. This patch refactors the code so that it pushes
all arguments into @arguments and then builds a method string by
join(", ", @arguments).

Test: bindings/scripts/test/*

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
(GenerateParametersCheck):
(GenerateImplementationFunctionCall):

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

10 years agoCSSMutableStyleDeclaration: Remove propertiesEqual().
kling@webkit.org [Mon, 9 Jan 2012 09:09:18 +0000 (09:09 +0000)]
CSSMutableStyleDeclaration: Remove propertiesEqual().
<http://webkit.org/b/75829>

Reviewed by Antti Koivisto.

Remove propertiesEqual() since it was wrong (it only compared CSSValue pointers,
not the actual values.)

Skip comparing the style declarations in NamedNodeMap::mappedMapsEquivalent()
and just compare pointers instead. This is possible because the declarations
all come from the mapped attribute/declaration table.

* css/CSSMutableStyleDeclaration.h:
* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::mappedMapsEquivalent):

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

10 years agoinsertAdjacentHTML doesn't play nice with DocumentFragment
abarth@webkit.org [Mon, 9 Jan 2012 08:53:36 +0000 (08:53 +0000)]
insertAdjacentHTML doesn't play nice with DocumentFragment
https://bugs.webkit.org/show_bug.cgi?id=75826

Reviewed by Eric Seidel.

Source/WebCore:

Test: fast/dom/insertAdjacentHTML-DocumentFragment-crash.html

Document nodes aren't the only non-Element ContainerNodes.

* html/HTMLElement.cpp:
(WebCore::contextElementForInsertion):

LayoutTests:

* fast/dom/insertAdjacentHTML-DocumentFragment-crash-expected.txt: Added.
* fast/dom/insertAdjacentHTML-DocumentFragment-crash.html: Added.

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

10 years agoCSSStyleSelector: Any attribute with a decl() can be assumed to be mapped.
kling@webkit.org [Mon, 9 Jan 2012 08:42:44 +0000 (08:42 +0000)]
CSSStyleSelector: Any attribute with a decl() can be assumed to be mapped.
<http://webkit.org/b/75832>

Reviewed by Antti Koivisto.

Replace isMappedAttribute() check with an assertion. Only a mapped attribute
will have an associated style declaration.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::matchAllRules):

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

10 years agoUnreviewed, GTK rebaseline after r104412.
philn@webkit.org [Mon, 9 Jan 2012 08:32:48 +0000 (08:32 +0000)]
Unreviewed, GTK rebaseline after r104412.

* platform/gtk/fast/dom/Window/window-properties-expected.txt:
* platform/gtk/http/tests/security/cross-frame-access-put-expected.txt: Added.
* platform/gtk/Skipped: Skip fast/text/international/spaces-combined-in-vertical-text.html

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

10 years ago[Refactoring] Use join(", ", @arguments) to build a method argument
haraken@chromium.org [Mon, 9 Jan 2012 08:26:21 +0000 (08:26 +0000)]
[Refactoring] Use join(", ", @arguments) to build a method argument
string in CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=75828

Reviewed by Darin Adler.

The code in CodeGeneratorV8.pm to build a method argument string is dirty
and error-prone. It is concatenating arguments one by one judging whether
", " is necessary or not. This patch refactors the code so that it pushes
all arguments into @arguments and then builds a method string by
join(", ", @arguments).

Test: bindings/scripts/test/*

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateFunctionCallString):

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

10 years ago[Qt] Unreviewed gardening after r104412.
ossy@webkit.org [Mon, 9 Jan 2012 08:06:41 +0000 (08:06 +0000)]
[Qt] Unreviewed gardening after r104412.

* platform/qt/fast/dom/Window/window-properties-expected.txt:
* platform/qt/http/tests/security/cross-frame-access-put-expected.txt:

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

10 years agoFix compilation error about ListHashSetReverseIterator
wangxianzhu@chromium.org [Mon, 9 Jan 2012 07:18:47 +0000 (07:18 +0000)]
Fix compilation error about ListHashSetReverseIterator
https://bugs.webkit.org/show_bug.cgi?id=75372

Reviewed by Darin Adler.

There is a typo in class ListHashSetReverseIterator:
typedef ListHashSetConstIterator<ValueArg, inlineCapacity, HashArg> const_reverse_iterator;
Should be
typedef ListHashSetConstReverseIterator<ValueArg, inlineCapacity, HashArg> const_reverse_iterator;

* wtf/ListHashSet.h:

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

10 years agoBuild fix: ScrollAnimatorMac has missing initializer in systemUptime()
benjamin@webkit.org [Mon, 9 Jan 2012 07:15:10 +0000 (07:15 +0000)]
Build fix: ScrollAnimatorMac has missing initializer in systemUptime()
https://bugs.webkit.org/show_bug.cgi?id=75827

Reviewed by Darin Adler.

Explicitly initialize the struct timeval to avoid compiler warnings.

* platform/mac/ScrollAnimatorMac.mm:
(systemUptime):

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

10 years agocolor tests for CSS3 calc
mikelawther@chromium.org [Mon, 9 Jan 2012 06:56:18 +0000 (06:56 +0000)]
color tests for CSS3 calc
https://bugs.webkit.org/show_bug.cgi?id=75819

Reviewed by Eric Seidel.

Tests for future implementation of CSS3 calc() (see http://webkit.org/b/16662)

These tests are expected to 'fail', and will pass once calc() functionality is landed.
For now, they serve to demonstrate that the current code doesn't crash on these tests.

* css3/calc/color-hsl-expected.txt: Added.
* css3/calc/color-hsl.html: Added.
* css3/calc/color-rgb-expected.txt: Added.
* css3/calc/color-rgb.html: Added.

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

10 years agofont tests for CSS3 calc
mikelawther@chromium.org [Mon, 9 Jan 2012 06:14:33 +0000 (06:14 +0000)]
font tests for CSS3 calc
https://bugs.webkit.org/show_bug.cgi?id=75818

Reviewed by Eric Seidel.

Tests for future implementation of CSS3 calc() (see http://webkit.org/b/16662)

These tests are expected to 'fail', and will pass once calc() functionality is landed.
For now, they serve to demonstrate that the current code doesn't crash on these tests.

* css3/calc/font-expected.txt: Added.
* css3/calc/font-monospace-expected.txt: Added.
* css3/calc/font-monospace.html: Added.
* css3/calc/font-size-expected.txt: Added.
* css3/calc/font-size-fractional-expected.txt: Added.
* css3/calc/font-size-fractional.html: Added.
* css3/calc/font-size.html: Added.
* css3/calc/font.html: Added.

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

10 years agoMemory allocation mismatch by using adoptArrayPtr in GraphicsContext3DOpenGL.cpp
commit-queue@webkit.org [Mon, 9 Jan 2012 06:01:14 +0000 (06:01 +0000)]
Memory allocation mismatch by using adoptArrayPtr in GraphicsContext3DOpenGL.cpp
https://bugs.webkit.org/show_bug.cgi?id=75820

Patch by ChangSeok Oh <shivamidow@gmail.com> on 2012-01-08
Reviewed by Darin Adler.

Dbates submitted a patch to release fastMalloc allocation
in GraphicsContext3DOpenGL.cpp properly.
See http://trac.webkit.org/browser/trunk/Source/WebCore/ChangeLog?rev=104395
But one thing similar to the above still remains mismatched.

No new tests required.

* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::getShaderInfoLog):

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

10 years agoWinCE build fix after r104415.
rniwa@webkit.org [Mon, 9 Jan 2012 04:27:01 +0000 (04:27 +0000)]
WinCE build fix after r104415.

* jit/JITExceptions.cpp:
* jit/JITExceptions.h:

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

10 years agoborder tests for CSS3 calc
mikelawther@chromium.org [Mon, 9 Jan 2012 02:57:57 +0000 (02:57 +0000)]
border tests for CSS3 calc
https://bugs.webkit.org/show_bug.cgi?id=75815

Tests for future implementation of CSS3 calc() (see http://webkit.org/b/16662)

These tests are expected to 'fail', and will pass once calc() functionality is landed.
For now, they serve to demonstrate that the current code doesn't crash on these tests.

Reviewed by Adam Barth.

* css3/calc/border-expected.txt: Added.
* css3/calc/border-radius-expected-mismatch.html: Added.
* css3/calc/border-radius.html: Added.
* css3/calc/border.html: Added.

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

10 years ago[BlackBerry] Use the concrete FrameNetworkingContextBlackBerry to access Frame
leo.yang@torchmobile.com.cn [Mon, 9 Jan 2012 02:50:32 +0000 (02:50 +0000)]
[BlackBerry] Use the concrete FrameNetworkingContextBlackBerry to access Frame
https://bugs.webkit.org/show_bug.cgi?id=75611

Reviewed by Antonio Gomes.

In platform/network/blackberry/ResourceHandleBlackBerry.cpp, we were using
NetworkingContext::wrappedFrame() to access the frame associated with the
networking context. NetworkingContext::wrappedFrame() was added as a virtual
function by the BlackBerry porting internally. It's unnecessary because
FrameNetworkingContextBlackBerry inherits from FrameNetworkingContext which
has a protected frame() member which is exported as public in
FrameNetworkingContextBlackBerry. We don't want to upstream wrappedFrame()
as a specific change of the BlackBerry porting in
platform/network/NetworkingContext.h, so use the concrete networking context
FrameNetworkingContextBlackBerry to access the associated frame.

No functionalities changed, no new tests.

* platform/network/blackberry/ResourceHandleBlackBerry.cpp:
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::loadResourceSynchronously):

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

10 years agoAdd intermittent timeout expectations to media/track/track-cues-cuechange.html and
rniwa@webkit.org [Mon, 9 Jan 2012 02:41:12 +0000 (02:41 +0000)]
Add intermittent timeout expectations to media/track/track-cues-cuechange.html and
media/track/track-cues-enter-exit.html. The failure is tracked by the bug 75817.

* platform/chromium/test_expectations.txt:

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

10 years agoUnreviewed, rolling out r104421.
commit-queue@webkit.org [Mon, 9 Jan 2012 02:33:47 +0000 (02:33 +0000)]
Unreviewed, rolling out r104421.
http://trac.webkit.org/changeset/104421
https://bugs.webkit.org/show_bug.cgi?id=75816

Need to rebaseline some tests on Linux (Requested by noamr on
#webkit).

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

Source/WebCore:

* Target.pri:

Source/WebKit/qt:

* WebCoreSupport/ChromeClientQt.cpp:
(WebCore::ChromeClientQt::allowedCompositingTriggers):

Tools:

* qmake/mkspecs/features/features.prf:

LayoutTests:

* platform/qt/Skipped:
* platform/qt/css3/filters/add-filter-rendering-expected.png: Removed.
* platform/qt/css3/filters/add-filter-rendering-expected.txt: Removed.
* platform/qt/css3/filters/crash-filter-change-expected.png: Removed.
* platform/qt/css3/filters/crash-filter-change-expected.txt: Removed.
* platform/qt/css3/filters/crash-hw-sw-switch-expected.png: Removed.
* platform/qt/css3/filters/custom-filter-property-parsing-expected.txt: Removed.
* platform/qt/css3/filters/custom-filter-property-parsing-invalid-expected.txt: Removed.
* platform/qt/css3/filters/effect-blur-expected.png: Removed.
* platform/qt/css3/filters/effect-blur-expected.txt: Removed.
* platform/qt/css3/filters/effect-brightness-expected.png: Removed.
* platform/qt/css3/filters/effect-brightness-expected.txt: Removed.
* platform/qt/css3/filters/effect-contrast-expected.png: Removed.
* platform/qt/css3/filters/effect-contrast-expected.txt: Removed.
* platform/qt/css3/filters/effect-drop-shadow-expected.png: Removed.
* platform/qt/css3/filters/effect-drop-shadow-expected.txt: Removed.
* platform/qt/css3/filters/effect-grayscale-expected.png: Removed.
* platform/qt/css3/filters/effect-grayscale-expected.txt: Removed.
* platform/qt/css3/filters/effect-hue-rotate-expected.png: Removed.
* platform/qt/css3/filters/effect-hue-rotate-expected.txt: Removed.
* platform/qt/css3/filters/effect-invert-expected.png: Removed.
* platform/qt/css3/filters/effect-invert-expected.txt: Removed.
* platform/qt/css3/filters/effect-opacity-expected.png: Removed.
* platform/qt/css3/filters/effect-opacity-expected.txt: Removed.
* platform/qt/css3/filters/effect-saturate-expected.png: Removed.
* platform/qt/css3/filters/effect-saturate-expected.txt: Removed.
* platform/qt/css3/filters/effect-sepia-expected.png: Removed.
* platform/qt/css3/filters/effect-sepia-expected.txt: Removed.
* platform/qt/css3/filters/filter-animation-expected.png: Removed.
* platform/qt/css3/filters/filter-animation-expected.txt: Removed.
* platform/qt/css3/filters/filter-animation-from-none-expected.png: Removed.
* platform/qt/css3/filters/filter-animation-from-none-expected.txt: Removed.
* platform/qt/css3/filters/filter-property-computed-style-expected.txt: Removed.
* platform/qt/css3/filters/filter-property-expected.png: Removed.
* platform/qt/css3/filters/filter-property-expected.txt: Removed.
* platform/qt/css3/filters/filter-property-parsing-expected.txt: Removed.
* platform/qt/css3/filters/filter-property-parsing-invalid-expected.txt: Removed.
* platform/qt/css3/filters/filter-region-expected.png: Removed.
* platform/qt/css3/filters/filter-region-expected.txt: Removed.
* platform/qt/css3/filters/filter-repaint-expected.png: Removed.
* platform/qt/css3/filters/filter-repaint-expected.txt: Removed.
* platform/qt/css3/filters/filter-with-transform-expected.png: Removed.
* platform/qt/css3/filters/filter-with-transform-expected.txt: Removed.
* platform/qt/css3/filters/filtered-inline-expected.png: Removed.
* platform/qt/css3/filters/filtered-inline-expected.txt: Removed.
* platform/qt/css3/filters/nested-filter-expected.png: Removed.
* platform/qt/css3/filters/nested-filter-expected.txt: Removed.
* platform/qt/css3/filters/nested-filters-expected.png: Removed.
* platform/qt/css3/filters/nested-filters-expected.txt: Removed.
* platform/qt/css3/filters/regions-expanding-expected.png: Removed.
* platform/qt/css3/filters/regions-expanding-expected.txt: Removed.
* platform/qt/css3/filters/remove-filter-rendering-expected.png: Removed.
* platform/qt/css3/filters/remove-filter-rendering-expected.txt: Removed.
* platform/qt/css3/filters/simple-filter-rendering-expected.png: Removed.
* platform/qt/css3/filters/simple-filter-rendering-expected.txt: Removed.

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

10 years agoAnother Chromium Windows and Chromium Linux rebaseline after r104240.
rniwa@webkit.org [Mon, 9 Jan 2012 02:14:03 +0000 (02:14 +0000)]
Another Chromium Windows and Chromium Linux rebaseline after r104240.
The expected result committed in r104361 was clearly wrong.

* platform/chromium-linux-x86/tables/mozilla/bugs/bug4527-expected.png:
* platform/chromium-linux/tables/mozilla/bugs/bug4527-expected.png:
* platform/chromium-win-vista/tables/mozilla/bugs/bug4527-expected.png: Added.
* platform/chromium-win-xp/tables/mozilla/bugs/bug4527-expected.png: Added.
* platform/chromium-win/tables/mozilla/bugs/bug4527-expected.png:

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

10 years agoRemove support for Chromium Mac CG from garden-o-matic
abarth@webkit.org [Mon, 9 Jan 2012 01:01:39 +0000 (01:01 +0000)]
Remove support for Chromium Mac CG from garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=75814

Reviewed by Eric Seidel.

This configuration no longer exists.  This patch is mostly a matter of
updating config.js and removing the examples from the unit tests.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:

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

10 years ago[Chromium] Remove Mac CG specific expectations in test_expectations.txt
abarth@webkit.org [Mon, 9 Jan 2012 00:49:44 +0000 (00:49 +0000)]
[Chromium] Remove Mac CG specific expectations in test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=75813

Unreviewed.

This configuration no longer exists and this change is needed to stop
the bots from erroring out.

* platform/chromium/test_expectations.txt:

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

10 years ago[Qt] Enable CSS_FILTERS in Qt build
noam.rosenthal@nokia.com [Mon, 9 Jan 2012 00:46:23 +0000 (00:46 +0000)]
[Qt] Enable CSS_FILTERS in Qt build
https://bugs.webkit.org/show_bug.cgi?id=75777

Source/WebCore:

Enable CSS_FILTERS and unskip the tests.

Reviewed by Kenneth Rohde Christiansen.

Filter tests are now unskipped for Qt.

* Target.pri: add missing files to build.

Source/WebKit/qt:

For now, disallow compositing for filters. We will change that trigger when
https://bugs.webkit.org/show_bug.cgi?id=75778 is implemented.

Reviewed by Kenneth Rohde Christiansen.

* WebCoreSupport/ChromeClientQt.cpp:
(WebCore::ChromeClientQt::allowedCompositingTriggers):

Tools:

Add the CSS_FILTERS feature flag to Qt.

Reviewed by Kenneth Rohde Christiansen.

* qmake/mkspecs/features/features.prf:

LayoutTests:

Reviewed by Kenneth Rohde Christiansen.

* platform/qt/Skipped: Unskip filter tests that work.
* platform/qt/css3/filters/*: Added Qt specific results.

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

10 years agoCategorize bots by ports instead of core/non-core separation
rniwa@webkit.org [Mon, 9 Jan 2012 00:32:01 +0000 (00:32 +0000)]
Categorize bots by ports instead of core/non-core separation
https://bugs.webkit.org/show_bug.cgi?id=75766

Reviewed by Eric Seidel.

Rename categorizes so as to preserve the original ordering of bots per Eric's suggestion
(Chromium still comes before GTK and Qt).

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(loadBuilderConfig):
* BuildSlaveSupport/build.webkit.org-config/templates/root.html:

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

10 years ago[chromium] iframes in an autoresized window get sized incorrectly.
levin@chromium.org [Mon, 9 Jan 2012 00:29:46 +0000 (00:29 +0000)]
[chromium] iframes in an autoresized window get sized incorrectly.
https://bugs.webkit.org/show_bug.cgi?id=75806

Reviewed by Adam Barth.

Source/WebKit/chromium:

TEST: fast/autoresize/autoresize-with-iframe.html

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::createFrameView): Only do autoresizing
for the main frame not child frames.

LayoutTests:

* fast/autoresize/autoresize-with-iframe-expected.txt: Added.
* fast/autoresize/autoresize-with-iframe.html: Added.
* fast/autoresize/basic.html: Pulled out autoresize-util.js
* fast/autoresize/resources/autoresize-util.js: Added.
(log):
(shouldBe):
* fast/autoresize/resources/iframe.html: Added.

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

10 years ago[Chromium] Remove use_skia option from GYP
abarth@webkit.org [Mon, 9 Jan 2012 00:27:04 +0000 (00:27 +0000)]
[Chromium] Remove use_skia option from GYP
https://bugs.webkit.org/show_bug.cgi?id=75811

Reviewed by Ryosuke Niwa.

The CG configuration of Chromium Mac is no longer supported.

Source/WebCore:

* WebCore.gyp/WebCore.gyp:

Source/WebKit/chromium:

* WebKit.gyp:
* WebKit.gypi:

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

10 years agoRemove the concept of core builders from webkitpy
rniwa@webkit.org [Mon, 9 Jan 2012 00:12:53 +0000 (00:12 +0000)]
Remove the concept of core builders from webkitpy
https://bugs.webkit.org/show_bug.cgi?id=75809

Reviewed by Ryosuke Niwa.

Treat all bots equally since core/non-core sepration has been removed from build.webkit.org,
and remove the relevant code.

* Scripts/webkitpy/common/net/buildbot/buildbot.py:
(BuildBot.__init__):
(BuildBot._matches_regexps):
(BuildBot._builder_statuses_with_names_matching_regexps):
(BuildBot.builder_statuses):
(BuildBot.failure_map):
(BuildBot._latest_builds_from_builders):
(BuildBot.last_green_revision):
* Scripts/webkitpy/common/net/buildbot/buildbot_mock.py:
(MockBuildBot.builder_statuses):
* Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
(test_status_parsing):
(test_last_green_revision):
(test_last_green_revision.mock_builds_from_builders):

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

10 years agoRemove Chromium Mac CG concept from webkitpy
abarth@webkit.org [Mon, 9 Jan 2012 00:04:43 +0000 (00:04 +0000)]
Remove Chromium Mac CG concept from webkitpy
https://bugs.webkit.org/show_bug.cgi?id=75810

Reviewed by Ryosuke Niwa.

This configuration no longer exists.  We can remove all the supporting
code from webkitpy.

* Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:
(BaselineOptimizerTest.test_move_baselines):
(BaselineOptimizerTest.test_chromium_covers_mac_win_linux):
(BaselineOptimizerTest.test_chromium_mac_redundant_with_apple_mac):
(BaselineOptimizerTest.test_common_directory_includes_root):
(BaselineOptimizerTest.test_complex_shadowing):
* Scripts/webkitpy/common/config/build.py:
(_should_file_trigger_build):
* Scripts/webkitpy/common/config/build_unittest.py:
(ShouldBuildTest):
* Scripts/webkitpy/layout_tests/port/builders.py:
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort):
(ChromiumPort._generate_all_test_configurations):
* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
(_default_tests_paths):
(ChromiumGpuLinuxPort.tests):
* Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
(ChromiumGpuTest.integration_test_chromium_gpu_mac):
(ChromiumGpuTest.assert_port_works):
(ChromiumGpuTest.test_baseline_paths):
(ChromiumGpuTest.test_graphics_type):
(ChromiumGpuTest.test_default_tests_paths):
(ChromiumGpuTest.test_test_files):
* Scripts/webkitpy/layout_tests/port/chromium_mac.py:
(ChromiumMacPort):
(ChromiumMacPort.__init__):
(ChromiumMacPort.baseline_search_path):
* Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
(ChromiumMacPortTest.test_graphics_type):
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
(ChromiumPortTest.test_all_test_configurations):
* Scripts/webkitpy/layout_tests/port/dryrun.py:
* Scripts/webkitpy/layout_tests/port/factory.py:
(PortFactory._port_name_from_arguments_and_options):
(PortFactory.get):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest.test_chromium_gpu_mac):
(FactoryTest.test_chromium_mac):
* Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
(GetGoogleChromePortTest._verify_expectations_overrides):
* Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:
(MockChromiumDRTTest.test_chromium_parse_options):
* Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
* Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests_unittest.py:
(test_url_fetcher):
(test_zip_factory):
(test_archive):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(TestRebaseline.test_rebaseline_expectations):

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

10 years agoThe JIT's protocol for exception handling should be available to other parts of the...
fpizlo@apple.com [Sun, 8 Jan 2012 23:46:12 +0000 (23:46 +0000)]
The JIT's protocol for exception handling should be available to other parts of the system
https://bugs.webkit.org/show_bug.cgi?id=75808
<rdar://problem/10661025>

Reviewed by Oliver Hunt.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* jit/JITExceptions.cpp: Added.
(JSC::genericThrow):
(JSC::jitThrow):
* jit/JITExceptions.h: Added.
* jit/JITStubs.cpp:
* runtime/JSGlobalData.h:

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

10 years agoValid canonical URLs should have a lowercase hostname
benjamin@webkit.org [Sun, 8 Jan 2012 23:44:40 +0000 (23:44 +0000)]
Valid canonical URLs should have a lowercase hostname
https://bugs.webkit.org/show_bug.cgi?id=75771

Reviewed by Adam Barth.

Source/WebCore:

According to the RFC 3986 (and other browsers implementation), the hostname
of valid canonical URLs should be lowercase.

This patch lowercase the hostname in KURL::parse() similarily to what we
do for the scheme.

Tests: fast/url/host-lowercase-per-scheme.html
       fast/url/safari-extension.html

* platform/KURL.cpp:
(WebCore::isCanonicalHostnameLowercaseForScheme):
(WebCore::KURL::parse):

LayoutTests:

Update the test results for existing tests validating the hostname.

Added the test safari-extension.html for checking regressions of
the safari-extension:// protocol.

Added host-lowercase-per-scheme.html for testing the hostname is
set to lowercase for regognized Internet protocols.

* fast/url/host-expected.txt:
* fast/url/host-lowercase-per-scheme-expected.txt: Added.
* fast/url/host-lowercase-per-scheme.html: Added.
* fast/url/idna2008-expected.txt:
* fast/url/ipv4-expected.txt:
* fast/url/ipv6-expected.txt:
* fast/url/relative-expected.txt:
* fast/url/relative-unix-expected.txt:
* fast/url/safari-extension-expected.txt: Added.
* fast/url/safari-extension.html: Added.
* fast/url/standard-url-expected.txt:
* platform/chromium/fast/url/host-lowercase-per-scheme-expected.txt: Added.
* platform/chromium/fast/url/safari-extension-expected.txt: Added.

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

10 years agoCategorize bots by ports instead of core/non-core separation
rniwa@webkit.org [Sun, 8 Jan 2012 23:28:25 +0000 (23:28 +0000)]
Categorize bots by ports instead of core/non-core separation
https://bugs.webkit.org/show_bug.cgi?id=75766

Reviewed by Adam Barth.

Get rid of the concept of core/non-core builders, and categorize build bots by ports instead.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(loadBuilderConfig):
* BuildSlaveSupport/build.webkit.org-config/templates/root.html:

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

10 years agoRename checkNodeSecurity and allowsAccessFromFrame to have sensible names
abarth@webkit.org [Sun, 8 Jan 2012 23:15:42 +0000 (23:15 +0000)]
Rename checkNodeSecurity and allowsAccessFromFrame to have sensible names
https://bugs.webkit.org/show_bug.cgi?id=75796

Reviewed by Sam Weinig.

This patch contains only renames and FIXME comments.  No behavior change.

* bindings/js/JSDOMBinding.cpp:
(WebCore::allowAccessToNode):
(WebCore::allowAccessToFrame):
* bindings/js/JSDOMBinding.h:
* bindings/js/JSHTMLFrameElementCustom.cpp:
(WebCore::allowSettingJavascriptURL):
* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::getOwnPropertySlotDelegate):
(WebCore::JSHistory::getOwnPropertyDescriptorDelegate):
(WebCore::JSHistory::putDelegate):
(WebCore::JSHistory::deleteProperty):
(WebCore::JSHistory::getOwnPropertyNames):
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::getOwnPropertySlotDelegate):
(WebCore::JSLocation::getOwnPropertyDescriptorDelegate):
(WebCore::JSLocation::putDelegate):
(WebCore::JSLocation::deleteProperty):
(WebCore::JSLocation::getOwnPropertyNames):
(WebCore::JSLocation::toStringFunction):
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::canAccessFromCurrentOrigin):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertyDescriptorBody):
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateFunctionCallback):

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

10 years agoRemove deprecated toDynamicFrame and unused [CallWith=DynamicFrame]
abarth@webkit.org [Sun, 8 Jan 2012 22:48:35 +0000 (22:48 +0000)]
Remove deprecated toDynamicFrame and unused [CallWith=DynamicFrame]
https://bugs.webkit.org/show_bug.cgi?id=75795

Reviewed by Eric Seidel.

We've succeeded in removing all the callers fo this function, including
all the uses of CallWith=DynamicFrame in IDL files.

* bindings/js/JSDOMBinding.cpp:
* bindings/js/JSDOMBinding.h:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateFunctionCallString):
* bindings/scripts/test/CPP/WebDOMTestObj.cpp:
* bindings/scripts/test/CPP/WebDOMTestObj.h:
* bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/ObjC/DOMTestObj.h:
* bindings/scripts/test/ObjC/DOMTestObj.mm:
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp:

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

10 years agoNeedsUserGestureCheck IDL attribute is no longer used
abarth@webkit.org [Sun, 8 Jan 2012 21:59:30 +0000 (21:59 +0000)]
NeedsUserGestureCheck IDL attribute is no longer used
https://bugs.webkit.org/show_bug.cgi?id=75794

Reviewed by Eric Seidel.

This IDL attribute is no longer used because we use static state to
keep track of the user gesture state.  We can delete the code that
supports it.

* bindings/scripts/CodeGeneratorCPP.pm:
* bindings/scripts/CodeGeneratorGObject.pm:
* bindings/scripts/CodeGeneratorJS.pm:
* bindings/scripts/CodeGeneratorV8.pm:
* bindings/scripts/test/TestObj.idl:

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

10 years agoREGRESSION (r103859): WKViews leak
mitz@apple.com [Sun, 8 Jan 2012 21:44:52 +0000 (21:44 +0000)]
REGRESSION (r103859): WKViews leak
https://bugs.webkit.org/show_bug.cgi?id=75805

The flags changed event monitor added in r103859 was retaining the WKView (as it references
self in the handler block), causing it to leak.

* UIProcess/API/mac/WKView.mm:
(-[WKView dealloc]): Moved call to remove the flags changed event monitor from here...
(-[WKView viewDidMoveToWindow]): ...to here. Moved call to add the flags changed event
monitor to here from...
(-[WKView initWithFrame:contextRef:pageGroupRef:]): ...here.

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

10 years agoRemove unused security functions from V8 bindings
abarth@webkit.org [Sun, 8 Jan 2012 21:33:43 +0000 (21:33 +0000)]
Remove unused security functions from V8 bindings
https://bugs.webkit.org/show_bug.cgi?id=75797

Reviewed by Eric Seidel.

This functions have no callers.  They can be removed.

* bindings/v8/ScriptController.cpp:
* bindings/v8/ScriptController.h:
* bindings/v8/specialization/V8BindingState.cpp:
* bindings/v8/specialization/V8BindingState.h:

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

10 years agoAssertion failure under SharedBuffer::append() when NETWORK_CFDATA_ARRAY_CALLBACK...
psolanki@apple.com [Sun, 8 Jan 2012 21:31:02 +0000 (21:31 +0000)]
Assertion failure under SharedBuffer::append() when NETWORK_CFDATA_ARRAY_CALLBACK is enabled
https://bugs.webkit.org/show_bug.cgi?id=75656

Reviewed by Darin Adler.

Update the implementation of SubresourceLoader::didReceiveDataArray() to conform to the
refactoring done as part of bug 71149 in r100311.

* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::didReceiveData):
(WebCore::SubresourceLoader::errorLoadingResource):
* loader/SubresourceLoader.h:
* loader/cf/SubresourceLoaderCF.cpp:
(WebCore::SubresourceLoader::didReceiveDataArray):

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

10 years agoRemove V8-specific Java Bridge code
steveblock@google.com [Sun, 8 Jan 2012 21:03:00 +0000 (21:03 +0000)]
Remove V8-specific Java Bridge code
https://bugs.webkit.org/show_bug.cgi?id=75801

Reviewed by Darin Adler.

Also remove superfluous JSC and V8 guards, as the code is now used only
with JSC.

No new tests, removing dead code only.

* WebCore.gypi:
* bridge/jni/JNIUtility.cpp:
(JSC::Bindings::javaTypeFromClassName):
(JSC::Bindings::signatureFromJavaType):
(JSC::Bindings::getJNIField):
(JSC::Bindings::callJNIMethod):
* bridge/jni/JavaType.h:
* bridge/jni/jsc/JavaMethodJSC.cpp:
(appendClassName):
(JavaMethod::signature):
* bridge/jni/v8/JNIUtilityPrivate.cpp: Removed.
* bridge/jni/v8/JNIUtilityPrivate.h: Removed.
* bridge/jni/v8/JavaClassV8.h: Removed.
* bridge/jni/v8/JavaFieldV8.h: Removed.
* bridge/jni/v8/JavaInstanceV8.h: Removed.
* bridge/jni/v8/JavaMethodV8.h: Removed.
* bridge/jni/v8/JavaNPObjectV8.cpp: Removed.
* bridge/jni/v8/JavaNPObjectV8.h: Removed.
* bridge/jni/v8/JavaValueV8.h: Removed.
* bridge/jsc/BridgeJSC.h:

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

10 years agoUnreviewed, rolling out r104403.
ossy@webkit.org [Sun, 8 Jan 2012 19:35:03 +0000 (19:35 +0000)]
Unreviewed, rolling out r104403.
http://trac.webkit.org/changeset/104403
https://bugs.webkit.org/show_bug.cgi?id=75803

It broke all tests on Qt5 (Requested by Ossy_weekend on
#webkit).

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

Source/WebCore:

* Target.pri:

Source/WebKit/qt:

* WebCoreSupport/ChromeClientQt.cpp:
(WebCore::ChromeClientQt::allowedCompositingTriggers):

Tools:

* qmake/mkspecs/features/features.prf:

LayoutTests:

* platform/qt/Skipped:
* platform/qt/css3/filters/add-filter-rendering-expected.png: Removed.
* platform/qt/css3/filters/add-filter-rendering-expected.txt: Removed.
* platform/qt/css3/filters/crash-filter-change-expected.png: Removed.
* platform/qt/css3/filters/crash-filter-change-expected.txt: Removed.
* platform/qt/css3/filters/crash-hw-sw-switch-expected.png: Removed.
* platform/qt/css3/filters/custom-filter-property-parsing-expected.txt: Removed.
* platform/qt/css3/filters/custom-filter-property-parsing-invalid-expected.txt: Removed.
* platform/qt/css3/filters/effect-blur-expected.png: Removed.
* platform/qt/css3/filters/effect-blur-expected.txt: Removed.
* platform/qt/css3/filters/effect-brightness-expected.png: Removed.
* platform/qt/css3/filters/effect-brightness-expected.txt: Removed.
* platform/qt/css3/filters/effect-contrast-expected.png: Removed.
* platform/qt/css3/filters/effect-contrast-expected.txt: Removed.
* platform/qt/css3/filters/effect-drop-shadow-expected.png: Removed.
* platform/qt/css3/filters/effect-drop-shadow-expected.txt: Removed.
* platform/qt/css3/filters/effect-grayscale-expected.png: Removed.
* platform/qt/css3/filters/effect-grayscale-expected.txt: Removed.
* platform/qt/css3/filters/effect-hue-rotate-expected.png: Removed.
* platform/qt/css3/filters/effect-hue-rotate-expected.txt: Removed.
* platform/qt/css3/filters/effect-invert-expected.png: Removed.
* platform/qt/css3/filters/effect-invert-expected.txt: Removed.
* platform/qt/css3/filters/effect-opacity-expected.png: Removed.
* platform/qt/css3/filters/effect-opacity-expected.txt: Removed.
* platform/qt/css3/filters/effect-saturate-expected.png: Removed.
* platform/qt/css3/filters/effect-saturate-expected.txt: Removed.
* platform/qt/css3/filters/effect-sepia-expected.png: Removed.
* platform/qt/css3/filters/effect-sepia-expected.txt: Removed.
* platform/qt/css3/filters/filter-animation-expected.png: Removed.
* platform/qt/css3/filters/filter-animation-expected.txt: Removed.
* platform/qt/css3/filters/filter-animation-from-none-expected.png: Removed.
* platform/qt/css3/filters/filter-animation-from-none-expected.txt: Removed.
* platform/qt/css3/filters/filter-property-computed-style-expected.txt: Removed.
* platform/qt/css3/filters/filter-property-expected.png: Removed.
* platform/qt/css3/filters/filter-property-expected.txt: Removed.
* platform/qt/css3/filters/filter-property-parsing-expected.txt: Removed.
* platform/qt/css3/filters/filter-property-parsing-invalid-expected.txt: Removed.
* platform/qt/css3/filters/filter-region-expected.png: Removed.
* platform/qt/css3/filters/filter-region-expected.txt: Removed.
* platform/qt/css3/filters/filter-repaint-expected.png: Removed.
* platform/qt/css3/filters/filter-repaint-expected.txt: Removed.
* platform/qt/css3/filters/filter-with-transform-expected.png: Removed.
* platform/qt/css3/filters/filter-with-transform-expected.txt: Removed.
* platform/qt/css3/filters/filtered-inline-expected.png: Removed.
* platform/qt/css3/filters/filtered-inline-expected.txt: Removed.
* platform/qt/css3/filters/nested-filter-expected.png: Removed.
* platform/qt/css3/filters/nested-filter-expected.txt: Removed.
* platform/qt/css3/filters/nested-filters-expected.png: Removed.
* platform/qt/css3/filters/nested-filters-expected.txt: Removed.
* platform/qt/css3/filters/regions-expanding-expected.png: Removed.
* platform/qt/css3/filters/regions-expanding-expected.txt: Removed.
* platform/qt/css3/filters/remove-filter-rendering-expected.png: Removed.
* platform/qt/css3/filters/remove-filter-rendering-expected.txt: Removed.
* platform/qt/css3/filters/simple-filter-rendering-expected.png: Removed.
* platform/qt/css3/filters/simple-filter-rendering-expected.txt: Removed.

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

10 years agoDon't create style selector in Element::recalcStyleIfNeededAfterAttributeChanged...
antti@apple.com [Sun, 8 Jan 2012 19:22:05 +0000 (19:22 +0000)]
Don't create style selector in Element::recalcStyleIfNeededAfterAttributeChanged if it doesn't exist
https://bugs.webkit.org/show_bug.cgi?id=75802

Rubber-stamped by Andreas Kling.

Element::recalcStyleIfNeededAfterAttributeChanged shouldn't create style selector for attribute
check if it doesn't already exist. We are going to need a full style recalc anyway in that case
and the constructed style selector may get throw out again.

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

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

10 years ago[Qt] Enable CSS_FILTERS in Qt build
noam.rosenthal@nokia.com [Sun, 8 Jan 2012 18:05:51 +0000 (18:05 +0000)]
[Qt] Enable CSS_FILTERS in Qt build
https://bugs.webkit.org/show_bug.cgi?id=75777

Source/WebCore:

Enable CSS_FILTERS and unskip the tests.

Reviewed by Kenneth Rohde Christiansen.

Filter tests are now unskipped for Qt.

* Target.pri: add missing files to build.

Source/WebKit/qt:

For now, disallow compositing for filters. We will change that trigger when
https://bugs.webkit.org/show_bug.cgi?id=75778 is implemented.

Reviewed by Kenneth Rohde Christiansen.

* WebCoreSupport/ChromeClientQt.cpp:
(WebCore::ChromeClientQt::allowedCompositingTriggers):

Tools:

Add the CSS_FILTERS feature flag to Qt.

Reviewed by Kenneth Rohde Christiansen.

* qmake/mkspecs/features/features.prf:

LayoutTests:

Reviewed by Kenneth Rohde Christiansen.

* platform/qt/Skipped: Unskip filter tests that work.
* platform/qt/css3/filters/*: Added Qt specific results.

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

10 years agoRewrite the CSS parser of prepare-ChangeLog with unittests.
haraken@chromium.org [Sun, 8 Jan 2012 16:46:40 +0000 (16:46 +0000)]
Rewrite the CSS parser of prepare-ChangeLog with unittests.
https://bugs.webkit.org/show_bug.cgi?id=75202

Reviewed by David Kilzer.

The current CSS parser can just parse simple CSSes like

    foo bar baz {
        property1: value;
        property2: value;
    }

, and cannot parse comments nor a CSS in which a selector and {
appears in different lines. This patch rewrites the CSS parser
(i.e. get_selector_line_ranges_for_css()) so that it can parse more CSSes
shown in css_unittests.css.

Test: Scripts/webkitperl/prepare-ChangeLog_unittest/resources/css_unittests.css

* Scripts/prepare-ChangeLog:
(get_selector_line_ranges_for_css):
* Scripts/webkitperl/prepare-ChangeLog_unittest/parser_unittests.pl:
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/css_unittests-expected.txt: Added.
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/css_unittests.css: Added.
(element1):
(element2):
(element3):
(element4.p):
(element5.p.q.r.s):
(element6#p):
(element7 element8):
(element9.p element10.q):
(element11#p element12#q):
(element13, element14):
(.p):
(#p):
(.p element15 #q element16.r element17#s):
(element18:target):
(element19):
(element20):
(element21):
(element22):

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

10 years agoThe Perl parser of prepare-ChangeLog can parse here-documents
haraken@chromium.org [Sun, 8 Jan 2012 16:21:17 +0000 (16:21 +0000)]
The Perl parser of prepare-ChangeLog can parse here-documents
https://bugs.webkit.org/show_bug.cgi?id=73208

Reviewed by David Kilzer.

Currently prepare-ChangeLog cannot recognize here-documents in Perl,
which results in wrong subroutine names in ChangeLogs.
With this patch, prepare-ChangeLog can judge whether the line of "}"
is the end of a subroutine or a line inside a here-document.

Test: Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests.pl

* Scripts/prepare-ChangeLog:
(get_function_line_ranges_for_perl):
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests-expected.txt:
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests.pl:
Added test cases for here-documents.
(func7):
(func8):
(func9):
(func10):
(func11):
(func12):
(func13):
(func14):
(func15):
(func16):

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

10 years agoAdd unittests for the JavaScript parser of prepare-ChangeLog
haraken@chromium.org [Sun, 8 Jan 2012 16:15:51 +0000 (16:15 +0000)]
Add unittests for the JavaScript parser of prepare-ChangeLog
https://bugs.webkit.org/show_bug.cgi?id=75201

Reviewed by David Kilzer.

javascript_unittests.js is a unittest for get_function_line_ranges_for_javascript()
of prepare-ChangeLog.

* Scripts/prepare-ChangeLog:
(get_function_line_ranges_for_javascript): Before this patch, a string found was just
omitted from parsing. Thus,

    str = "foo"
    function func() {
    }

was recognized as equivalent to

    str = function func() {
    }

This patch replaces a string with a dummy identifier 'string_appeared_here'
to tell the parser that a string appeared there.

* Scripts/webkitperl/prepare-ChangeLog_unittest/parser_unittests.pl:
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/javascript_unittests-expected.txt: Added.
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/javascript_unittests.js: Added.
(func1):
(func2):
(func3):
(func4):
(func5):
(func6):
(func7):
(func8):
(func9):
(func10):
(func11):
(func12):
(funcOverloaded):
(Func1.prototype.get x1):
(Func1.prototype.get x2):
(Func1.prototype.set x1):
(Func1.prototype.set x3):
(Func2.prototype.func13):
(Func2.prototype.func14):
(Func2.prototype.func15):
(func16.func17):
(func16.func18):
(func16.func19):
(func16):

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

10 years agoSource/WebCore: REGRESSION (r104060): Layout Test fast/media/viewport-media-query...
antti@apple.com [Sun, 8 Jan 2012 11:45:58 +0000 (11:45 +0000)]
Source/WebCore: REGRESSION (r104060): Layout Test fast/media/viewport-media-query.html is occasionally failing
https://bugs.webkit.org/show_bug.cgi?id=75633

Reviewed by Andreas Kling.

If something triggers CSSStyleSelector construction very early, before documentElement is known,
it won't be able to resolve viewport-related media queries. In the included test case
the attribute on <html> element triggers the style selector creation. I can't repro
the fast/media/viewport-media-query.html failure but I suspect it is the same issue with
a different mechanism for early CSSStyleSelector construction.

- Reset style selector on documentElement change.
- Remove the code for lazy documentElement initialization. It is not an useful optimization,
  the children of Document rarely change.

Test: fast/media/viewport-media-query-synchronous.html

* WebCore.exp.in:
* dom/Document.cpp:
(WebCore::Document::childrenChanged):
* dom/Document.h:
(WebCore::Document::documentElement):

LayoutTests: Layout Test fast/media/viewport-media-query.html is occasionally failing
https://bugs.webkit.org/show_bug.cgi?id=75633

Reviewed by Andreas Kling.

* fast/media/viewport-media-query-synchronous-expected.txt: Added.
* fast/media/viewport-media-query-synchronous.html: Added.

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

10 years ago[chromium] Add layout test support for autosize code in FrameView.
levin@chromium.org [Sun, 8 Jan 2012 08:06:38 +0000 (08:06 +0000)]
[chromium] Add layout test support for autosize code in FrameView.
https://bugs.webkit.org/show_bug.cgi?id=73631

Reviewed by Dmitry Titov.

Tools:

* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::LayoutTestController): Expose the new autoresize method.
(LayoutTestController::reset): Set the autoresize mode back to false.
(LayoutTestController::enableAutoResizeMode): A way to turn on autoresizing from javascript code in DumpRenderTree.
* DumpRenderTree/chromium/LayoutTestController.h:
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::didAutoResize): Handle the autoresize callback so that the outer bounds change appropriately.
* DumpRenderTree/chromium/WebViewHost.h:

LayoutTests:

* fast/autoresize/basic-expected.txt: Added.
* fast/autoresize/basic.html: Added. Simple test to verify that autoresizing happens.
* platform/efl/Skipped: Skipped the new directory since the layout test
  controller on this platform, doesn't support enableAutoResizeMode.
* platform/gtk/Skipped: Ditto.
* platform/mac/Skipped: Ditto.
* platform/qt/Skipped: Ditto.
* platform/win/Skipped: Ditto.
* platform/wincairo/Skipped: Ditto.

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

10 years agoWindows build fix.
kling@webkit.org [Sun, 8 Jan 2012 03:59:43 +0000 (03:59 +0000)]
Windows build fix.

* DOMHTMLClasses.cpp:
(DOMHTMLDocument::forms):
(DOMHTMLSelectElement::options):

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

10 years agoAttempt to regenerate bindings on the Windows bot.
kling@webkit.org [Sun, 8 Jan 2012 03:47:08 +0000 (03:47 +0000)]
Attempt to regenerate bindings on the Windows bot.

* html/HTMLCollection.h:

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

10 years agoMemory allocator mismatch; Use operator new[] with OwnArrayPtr instead of fastMalloc()
dbates@webkit.org [Sun, 8 Jan 2012 03:41:45 +0000 (03:41 +0000)]
Memory allocator mismatch; Use operator new[] with OwnArrayPtr instead of fastMalloc()

Rubber-stamped by Adam Barth.

Currently getProgramInfoLog() in GraphicsContext3DOpenGL.cpp assumes that operator new[]
and fastMalloc() are equivalent when it adopts a fastMalloc() allocated buffer. Notice,
OwnArrayPtr ultimately calls delete[] on destruction. When GLOBAL_FASTMALLOC_NEW is disabled,
it isn't true that operator new[], operator delete[] are equivalent to fastMalloc(), fastFree(),
respectively. Hence, there may be a mismatch between the allocation and deallocation
routines. Therefore, we should allocate the array to be adopted by OwnArrayPtr using
operator new[].

* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::getProgramInfoLog):

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

10 years agoUnreviewed; chromium tests rebaselined after r104240.
dslomov@google.com [Sun, 8 Jan 2012 00:45:55 +0000 (00:45 +0000)]
Unreviewed; chromium tests rebaselined after r104240.

* platform/chromium-mac-leopard/editing/selection/select-from-textfield-outwards-expected.png:
* platform/chromium-mac-leopard/fast/forms/input-text-double-click-expected.png:
* platform/chromium-mac-leopard/fast/forms/input-text-drag-down-expected.png:
* platform/chromium-mac-leopard/fast/forms/input-text-option-delete-expected.png:
* platform/chromium-mac-leopard/fast/forms/input-text-scroll-left-on-blur-expected.png:
* platform/chromium-mac-leopard/fast/forms/tabbing-input-iframe-expected.png:
* platform/chromium-mac-leopard/fast/html/details-open2-expected.png:
* platform/chromium-mac-leopard/fast/html/details-open4-expected.png:
* platform/chromium-mac-snowleopard/editing/selection/select-from-textfield-outwards-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/input-text-double-click-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/input-text-drag-down-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/input-text-option-delete-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/input-text-scroll-left-on-blur-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/tabbing-input-iframe-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/html/details-open2-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open2-expected.png.
* platform/chromium-mac-snowleopard/fast/html/details-open4-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open4-expected.png.
* platform/chromium-mac/fast/forms/input-text-double-click-expected.png: Removed.
* platform/chromium-mac/fast/forms/input-text-drag-down-expected.png: Removed.
* platform/chromium-mac/fast/forms/input-text-option-delete-expected.png: Removed.
* platform/chromium-mac/fast/forms/tabbing-input-iframe-expected.png: Removed.

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

10 years agoUnreviewed: updating expectations and rebaselining.
dslomov@google.com [Sun, 8 Jan 2012 00:09:12 +0000 (00:09 +0000)]
Unreviewed: updating expectations and rebaselining.
svg/custom/inline-svg-in-xhtml rebaselined due to http://trac.webkit.org/changeset/104240/.

* platform/chromium-cg-mac-leopard/svg/custom/inline-svg-in-xhtml-expected.png:
* platform/chromium-cg-mac-snowleopard/svg/custom/inline-svg-in-xhtml-expected.png: Added.
* platform/chromium-cg-mac/svg/custom/inline-svg-in-xhtml-expected.png: Removed.
* platform/chromium-mac-leopard/svg/custom/inline-svg-in-xhtml-expected.png:
* platform/chromium-mac-snowleopard/svg/custom/inline-svg-in-xhtml-expected.png: Added.
* platform/chromium-mac/svg/custom/inline-svg-in-xhtml-expected.png: Removed.
* platform/chromium/test_expectations.txt:

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

10 years agoUnreviewed: updating expectations and rebaslining.
dslomov@google.com [Sat, 7 Jan 2012 23:51:35 +0000 (23:51 +0000)]
Unreviewed: updating expectations and rebaslining.
svg/custom/pattern-userSpaceOnUse-userToBaseTransform rebaselined due to http://trac.webkit.org/changeset/104356/.

* platform/chromium-linux/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.png: Added.
* platform/chromium-mac-leopard/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.png: Added.
* platform/chromium-win/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.png: Added.
* platform/chromium-win/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt: Added.
* platform/chromium/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

10 years agoUnreviewed, GTK rebaseline after r104386 and r104208.
philn@webkit.org [Sat, 7 Jan 2012 22:39:04 +0000 (22:39 +0000)]
Unreviewed, GTK rebaseline after r104386 and r104208.

* platform/gtk/Skipped: Skip failing accessibility/textbox-role-reports-line-number.html
* platform/gtk/fast/dom/Window/window-properties-expected.txt:
* platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
* platform/gtk/fast/table/032-expected.txt:
* platform/gtk/fast/writing-mode/table-percent-width-quirk-expected.txt: Added.
* platform/gtk/tables/mozilla/bugs/bug55694-expected.txt:

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

10 years agoUnreviewed: test expectations and filed WK75784.
dslomov@google.com [Sat, 7 Jan 2012 22:12:46 +0000 (22:12 +0000)]
Unreviewed: test expectations and filed WK75784.

* platform/chromium/test_expectations.txt:

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

10 years agoUnreviewed: disabled CCLayerTreeHostImplTest.blendingOffWhenDrawingOpaqueLayers
dslomov@google.com [Sat, 7 Jan 2012 21:50:37 +0000 (21:50 +0000)]
Unreviewed: disabled CCLayerTreeHostImplTest.blendingOffWhenDrawingOpaqueLayers
and filed https://bugs.webkit.org/show_bug.cgi?id=75783.

* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::TEST_F):

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

10 years ago2012-01-07 Chris Marrin <cmarrin@apple.com>
cmarrin@apple.com [Sat, 7 Jan 2012 18:43:49 +0000 (18:43 +0000)]
2012-01-07  Chris Marrin  <cmarrin@apple.com>

        Fixed a warning in GTK build of ANGLE

        Unreviewed.

        * src/compiler/DetectRecursion.cpp:
        (DetectRecursion::~DetectRecursion):

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

10 years ago[WK2][GTK] Each test takes roughly half a second to load
commit-queue@webkit.org [Sat, 7 Jan 2012 17:46:06 +0000 (17:46 +0000)]
[WK2][GTK] Each test takes roughly half a second to load
https://bugs.webkit.org/show_bug.cgi?id=70699

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-01-07
Reviewed by Martin Robinson.

Set the XDG_CACHE_HOME environment variable when testing with
WebKitTestRunner. This way the testing is started with a non-existing
application cache. If the cache exists and is not empty, the emptying
and vacuuming that is performed before every test can consume a lot of
time.

This is just a temporary workaround until it becomes possible to set
a desired directory to be used as the application cache location through
WebKitWebContext.

* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkPort.setup_environ_for_server):

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

10 years ago[GTK] Enable requestAnimationFrame in build-webkit
commit-queue@webkit.org [Sat, 7 Jan 2012 17:18:14 +0000 (17:18 +0000)]
[GTK] Enable requestAnimationFrame in build-webkit
https://bugs.webkit.org/show_bug.cgi?id=75773

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-01-07
Reviewed by Martin Robinson.

Tools:

Enable requestAnimationFrame for the Gtk port.

* Scripts/build-webkit:

LayoutTests:

Skip the passing requestAnimationFrame-related tests and put
the remaining failing one under the tests that require modal
dialog implementation.

* platform/gtk/Skipped:

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

10 years ago2012-01-07 Chris Marrin <cmarrin@apple.com>
cmarrin@apple.com [Sat, 7 Jan 2012 15:22:04 +0000 (15:22 +0000)]
2012-01-07  Chris Marrin  <cmarrin@apple.com>

        Fixed ANGLE build for GNU and QT broken in https://trac.webkit.org/changeset/104363

        Unreviewed.

        * GNUmakefile.list.am:
        * Target.pri:

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

10 years agoUnreviewed C++ bindings build fix after r104383.
kling@webkit.org [Sat, 7 Jan 2012 10:08:46 +0000 (10:08 +0000)]
Unreviewed C++ bindings build fix after r104383.

Use WTF::getPtr() to grab at impl pointer since they could be either RefPtr or raw.

* bindings/scripts/CodeGeneratorCPP.pm:
(GenerateImplementation):
* bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
(WebDOMTestCallback::impl):
* bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp:
(WebDOMTestEventConstructor::impl):
* bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
(WebDOMTestInterface::impl):
* bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp:
(WebDOMTestMediaQueryListListener::impl):
* bindings/scripts/test/CPP/WebDOMTestNamedConstructor.cpp:
(WebDOMTestNamedConstructor::impl):
* bindings/scripts/test/CPP/WebDOMTestObj.cpp:
(WebDOMTestObj::impl):
* bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp:
(WebDOMTestSerializedScriptValueInterface::impl):

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

10 years agoSimplify HTMLCollection ownership model.
kling@webkit.org [Sat, 7 Jan 2012 09:35:21 +0000 (09:35 +0000)]
Simplify HTMLCollection ownership model.
<http://webkit.org/b/75437>

Reviewed by Sam Weinig.

Source/WebCore:

Remove HTMLCollection's inheritance from RefCounted and use OwnPtr to store it.
Added ref()/deref() methods that forward to the collection's base node, these
are only ever used by DOM wrappers.

This is a behavior change, HTMLCollection wrappers now keep the base node alive.

Test: fast/dom/htmlcollection-protects-base.html

* html/HTMLCollection.h:
(WebCore::HTMLCollection::ref):
(WebCore::HTMLCollection::deref):

    Removed inheritance from RefCounted. Added ref/deref that forward the refs
    to the collection's base Node.

* dom/Element.cpp:
(WebCore::Element::~Element):
* dom/Document.h:
* dom/Document.cpp:
(WebCore::Document::~Document):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::~HTMLFormElement):
* html/HTMLSelectElement.h:
* html/HTMLSelectElement.cpp:

    Remove HTMLCollection::detachFromNode() and call sites.

* html/HTMLAllCollection.cpp:
(WebCore::HTMLAllCollection::namedItemWithIndex):
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::invalidateCacheIfNeeded):
(WebCore::HTMLCollection::itemAfter):
(WebCore::HTMLCollection::calcLength):
(WebCore::HTMLCollection::length):
(WebCore::HTMLCollection::item):
(WebCore::HTMLCollection::nextItem):
(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNameCache):
(WebCore::HTMLCollection::hasNamedItem):
(WebCore::HTMLCollection::namedItems):
(WebCore::HTMLCollection::tags):
* html/HTMLFormCollection.cpp:
(WebCore::HTMLFormCollection::calcLength):
(WebCore::HTMLFormCollection::item):
(WebCore::HTMLFormCollection::getNamedItem):
(WebCore::HTMLFormCollection::namedItem):
(WebCore::HTMLFormCollection::updateNameCache):
* html/HTMLNameCollection.cpp:
(WebCore::HTMLNameCollection::itemAfter):
* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::add):
(WebCore::HTMLOptionsCollection::remove):
(WebCore::HTMLOptionsCollection::selectedIndex):
(WebCore::HTMLOptionsCollection::setSelectedIndex):
(WebCore::HTMLOptionsCollection::setLength):
* html/HTMLPropertiesCollection.cpp:
(WebCore::HTMLPropertiesCollection::length):
(WebCore::HTMLPropertiesCollection::item):
(WebCore::HTMLPropertiesCollection::names):

    Removed base node null-checks and assertions. Added one assertion to
    the HTMLCollection constructor (that m_base is non-null.)

* dom/Document.h:
* dom/Document.cpp:
(WebCore::Document::openSearchDescriptionURL):
(WebCore::Document::cachedCollection):
(WebCore::Document::images):
(WebCore::Document::applets):
(WebCore::Document::embeds):
(WebCore::Document::plugins):
(WebCore::Document::objects):
(WebCore::Document::scripts):
(WebCore::Document::links):
(WebCore::Document::forms):
(WebCore::Document::anchors):
(WebCore::Document::all):
(WebCore::Document::windowNamedItems):
(WebCore::Document::documentNamedItems):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::namedItemGetter):
* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::JSHTMLDocument::nameGetter):
(WebCore::JSHTMLDocument::all):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::namedPropertyGetter):
* bindings/v8/custom/V8HTMLDocumentCustom.cpp:
(WebCore::V8HTMLDocument::GetNamedProperty):
* dom/ElementRareData.h:
(WebCore::ElementRareData::ensureCachedHTMLCollection):
* dom/NodeRareData.h:
(WebCore::NodeRareData::properties):
* html/HTMLAllCollection.h:
* html/HTMLAllCollection.cpp:
(WebCore::HTMLAllCollection::create):
* html/HTMLCollection.h:
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::create):
(WebCore::HTMLCollection::HTMLCollection):
* html/HTMLDataListElement.cpp:
(WebCore::HTMLDataListElement::options):
* html/HTMLDataListElement.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::children):
* html/HTMLElement.h:
* html/HTMLSelectElement.h:
(WebCore::HTMLSelectElement::options):
* html/HTMLFormCollection.h:
* html/HTMLFormElement.h:
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::elements):
* html/HTMLNameCollection.h:
(WebCore::HTMLNameCollection::create):
* html/HTMLFormCollection.cpp:
(WebCore::HTMLFormCollection::create):
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::imageElement):
(WebCore::HTMLMapElement::areas):
* html/HTMLMapElement.h:
* html/HTMLPropertiesCollection.h:
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::rows):
(WebCore::HTMLTableElement::tBodies):
* html/HTMLTableElement.h:
* html/HTMLTableRowElement.cpp:
(WebCore::HTMLTableRowElement::insertCell):
(WebCore::HTMLTableRowElement::deleteCell):
(WebCore::HTMLTableRowElement::cells):
* html/HTMLTableRowElement.h:
* html/HTMLTableRowsCollection.cpp:
(WebCore::HTMLTableRowsCollection::create):
(WebCore::HTMLTableRowsCollection::itemAfter):
* html/HTMLTableRowsCollection.h:
* html/HTMLTableSectionElement.h:
* html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::insertRow):
(WebCore::HTMLTableSectionElement::deleteRow):
(WebCore::HTMLTableSectionElement::rows):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::selectedOption):
* html/HTMLOptionsCollection.h:
* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::create):
* html/HTMLPropertiesCollection.cpp:
(WebCore::HTMLPropertiesCollection::create):
* Source/WebCore/accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::getDocumentLinks):

    Store cached HTMLCollections in OwnPtrs. Methods that used to return
    PassRefPtr<HTMLCollection> now simply return HTMLCollection*.
    Updated call sites as appropriate.

LayoutTests:

- Removed fast/dom/htmlcollection-zombies.html since it was testing bogus behavior.
- Added a test to verify that HTMLCollection protects its base node from GC.

* fast/dom/htmlcollection-protects-base-expected.txt: Added.
* fast/dom/htmlcollection-protects-base.html: Added.
* fast/dom/htmlcollection-zombies-expected.txt: Removed.
* fast/dom/htmlcollection-zombies.html: Removed.

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

10 years agoAttempt to fix Qt build.
abarth@webkit.org [Sat, 7 Jan 2012 09:14:18 +0000 (09:14 +0000)]
Attempt to fix Qt build.

* page/Geolocation.cpp:
(WebCore::Geolocation::Geolocation):

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

10 years agoREGRESSION(r104210): Crash inside DynamicSubtreeNodeList::length
rniwa@webkit.org [Sat, 7 Jan 2012 09:12:01 +0000 (09:12 +0000)]
REGRESSION(r104210): Crash inside DynamicSubtreeNodeList::length
https://bugs.webkit.org/show_bug.cgi?id=75731

Reviewed by Andreas Kling.

Source/WebCore:

The crash was caused by DynamicSubtreeNodeList::SubtreeCaches::domVersionIsConsistent
using m_cachedItem as a way to access the document. Changed SubtreeCaches to use
DynamicSubtreeNodeList's m_node instead.

Test: fast/dom/node-list-length-after-removing-node.html

* dom/DynamicNodeList.cpp:
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::setLengthCache):
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::setItemCache):
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::item):
* dom/DynamicNodeList.h:
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::isLengthCacheValid):
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::isItemCacheValid):
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::cachedItem):
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::domVersionIsConsistent):

LayoutTests:

Add a regression test. It reproduces the crash with a very high probability.

* fast/dom/node-list-length-after-removing-node-expected.txt: Added.
* fast/dom/node-list-length-after-removing-node.html: Added.

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

10 years agoDisconnecting DOMWindow properties is fragile and overly complicated
abarth@webkit.org [Sat, 7 Jan 2012 08:46:38 +0000 (08:46 +0000)]
Disconnecting DOMWindow properties is fragile and overly complicated
https://bugs.webkit.org/show_bug.cgi?id=75699

Reviewed by Alexey Proskuryakov.

Previously, we had to carefully check every object tree hanging off of
DOMWindow to make sure that every property correctly disconnected
itself and all its subobjects from the Frame when the DOMWindow
disconnected from the Frame.

This patch introduces DOMWindowProperty, which is a base class that
handles this work automagically, ensuring that we won't have any
dangling Frame pointers and removing a bunch of boilerplate code.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* css/StyleMedia.cpp:
(WebCore::StyleMedia::StyleMedia):
* css/StyleMedia.h:
(WebCore::StyleMedia::create):
* loader/appcache/DOMApplicationCache.cpp:
(WebCore::DOMApplicationCache::DOMApplicationCache):
(WebCore::DOMApplicationCache::disconnectFrame):
* loader/appcache/DOMApplicationCache.h:
* page/BarInfo.cpp:
(WebCore::BarInfo::BarInfo):
* page/BarInfo.h:
* page/Console.cpp:
(WebCore::Console::Console):
(WebCore::Console::memory):
* page/Console.h:
* page/DOMSelection.cpp:
(WebCore::DOMSelection::DOMSelection):
* page/DOMSelection.h:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::registerProperty):
(WebCore::DOMWindow::unregisterProperty):
(WebCore::DOMWindow::clear):
* page/DOMWindow.h:
* page/Geolocation.cpp:
(WebCore::Geolocation::Geolocation):
(WebCore::Geolocation::disconnectFrame):
* page/Geolocation.h:
* page/History.cpp:
(WebCore::History::History):
* page/History.h:
* page/Location.cpp:
(WebCore::Location::Location):
* page/Location.h:
* page/Navigator.cpp:
(WebCore::Navigator::Navigator):
(WebCore::Navigator::~Navigator):
* page/Navigator.h:
* page/Performance.cpp:
(WebCore::Performance::Performance):
(WebCore::Performance::memory):
* page/Performance.h:
* page/PerformanceNavigation.cpp:
(WebCore::PerformanceNavigation::PerformanceNavigation):
* page/PerformanceNavigation.h:
* page/PerformanceTiming.cpp:
(WebCore::PerformanceTiming::PerformanceTiming):
* page/PerformanceTiming.h:
* page/Screen.cpp:
(WebCore::Screen::Screen):
* page/Screen.h:
* plugins/DOMMimeTypeArray.cpp:
(WebCore::DOMMimeTypeArray::DOMMimeTypeArray):
* plugins/DOMMimeTypeArray.h:
* plugins/DOMPluginArray.cpp:
(WebCore::DOMPluginArray::DOMPluginArray):
* plugins/DOMPluginArray.h:
* storage/Storage.cpp:
(WebCore::Storage::Storage):
* storage/Storage.h:

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

10 years agoRegenerate a few files with a more appropriate version of bison.
mrowe@apple.com [Sat, 7 Jan 2012 07:33:25 +0000 (07:33 +0000)]
Regenerate a few files with a more appropriate version of bison.

Rubber-stamped by Dan Bernstein.

* src/compiler/glslang.l: Tweak the input so that it generates code that compiles without warnings.
* src/compiler/glslang_lex.cpp:
* src/compiler/glslang_tab.cpp:
* src/compiler/glslang_tab.h:

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

10 years agoREGRESSION (r83075): Save as PDF does not generate any links for webkit.org and others
mrowe@apple.com [Sat, 7 Jan 2012 06:57:47 +0000 (06:57 +0000)]
REGRESSION (r83075): Save as PDF does not generate any links for webkit.org and others
<http://webkit.org/b/75768> <rdar://problem/10659258>

Use RenderObject::hasOutline when determining whether to always create line boxes so that
we take in to consideration whether we'll be creating PDF link rects.

Reviewed by Dan Bernstein.

* rendering/RenderInline.cpp:
(WebCore::RenderInline::styleDidChange):

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

10 years agoREGRESSION (WebKit2): Save as PDF no longer generates links to URLs
mrowe@apple.com [Sat, 7 Jan 2012 06:57:32 +0000 (06:57 +0000)]
REGRESSION (WebKit2): Save as PDF no longer generates links to URLs
<http://webkit.org/b/65076> / <rdar://problem/9606246>

WebKit2 printing works by having the web process render the page content to a PDF. The PDF
data is then shipped to the UI process which will render it in to the printing graphics context.
Links were being lost because the API used to do the rendering of the PDF in to the printing
graphics context, CGContextDrawPDFPage, did not preserve the links that were present in the
PDF content received from the web process.

To fix this we switch to using PDFKit for drawing the PDF in to the printing graphics context.
PDFKit provides the ability for us to iterate over the links in the PDF content ourselves and
add links in to the printing graphics context.

Reviewed by Alexey Proskuryakov.

* UIProcess/API/mac/WKPrintingView.h:
* UIProcess/API/mac/WKPrintingView.mm:
(pdfAnnotationLinkClass): Look up the PDFAnnotationLink class from PDFKit as WebKit2 loads PDFKit lazily.
(pdfDocumentClass): Ditto.
(-[WKPrintingView _drawPDFDocument:page:atPoint:]): Switch to using the PDFKit equivalents of several types.
Iterate over the annotations present in the PDFPage, calling CGPDFContextSetURLForRect for each PDFAnnotationLink
that we find.
(-[WKPrintingView _drawPreview:]): Create an NSData to feed to PDFDocument.
(-[WKPrintingView drawRect:]): Ditto.
* WebKit2Prefix.h: Add the usual workaround to make Objective-C exceptions compile when C++ exception handling is disabled.

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

10 years agoUnreviewed, rolling out r104373 and r104374.
commit-queue@webkit.org [Sat, 7 Jan 2012 06:46:50 +0000 (06:46 +0000)]
Unreviewed, rolling out r104373 and r104374.
http://trac.webkit.org/changeset/104373
http://trac.webkit.org/changeset/104374
https://bugs.webkit.org/show_bug.cgi?id=75769

Too many assertion failures. (Requested by kling on #webkit).

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

Source/WebCore:

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::namedItemGetter):
* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::JSHTMLDocument::nameGetter):
(WebCore::JSHTMLDocument::all):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::namedPropertyGetter):
* bindings/v8/custom/V8HTMLDocumentCustom.cpp:
(WebCore::V8HTMLDocument::GetNamedProperty):
* dom/Document.cpp:
(WebCore::Document::~Document):
(WebCore::Document::openSearchDescriptionURL):
(WebCore::Document::cachedCollection):
(WebCore::Document::images):
(WebCore::Document::applets):
(WebCore::Document::embeds):
(WebCore::Document::plugins):
(WebCore::Document::objects):
(WebCore::Document::scripts):
(WebCore::Document::links):
(WebCore::Document::forms):
(WebCore::Document::anchors):
(WebCore::Document::all):
(WebCore::Document::windowNamedItems):
(WebCore::Document::documentNamedItems):
* dom/Document.h:
* dom/Element.cpp:
(WebCore::Element::~Element):
* dom/ElementRareData.h:
(WebCore::ElementRareData::cachedHTMLCollection):
(WebCore::ElementRareData::ensureCachedHTMLCollection):
* dom/NodeRareData.h:
(WebCore::NodeRareData::properties):
* html/HTMLAllCollection.cpp:
(WebCore::HTMLAllCollection::create):
(WebCore::HTMLAllCollection::namedItemWithIndex):
* html/HTMLAllCollection.h:
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::create):
(WebCore::HTMLCollection::detachFromNode):
(WebCore::HTMLCollection::invalidateCacheIfNeeded):
(WebCore::HTMLCollection::itemAfter):
(WebCore::HTMLCollection::calcLength):
(WebCore::HTMLCollection::length):
(WebCore::HTMLCollection::item):
(WebCore::HTMLCollection::nextItem):
(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNameCache):
(WebCore::HTMLCollection::hasNamedItem):
(WebCore::HTMLCollection::namedItems):
(WebCore::HTMLCollection::tags):
* html/HTMLCollection.h:
* html/HTMLDataListElement.cpp:
(WebCore::HTMLDataListElement::options):
* html/HTMLDataListElement.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::children):
* html/HTMLElement.h:
* html/HTMLFormCollection.cpp:
(WebCore::HTMLFormCollection::create):
(WebCore::HTMLFormCollection::calcLength):
(WebCore::HTMLFormCollection::item):
(WebCore::HTMLFormCollection::getNamedItem):
(WebCore::HTMLFormCollection::namedItem):
(WebCore::HTMLFormCollection::updateNameCache):
* html/HTMLFormCollection.h:
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::~HTMLFormElement):
(WebCore::HTMLFormElement::elements):
* html/HTMLFormElement.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::selectedOption):
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::imageElement):
(WebCore::HTMLMapElement::areas):
* html/HTMLMapElement.h:
* html/HTMLNameCollection.cpp:
(WebCore::HTMLNameCollection::itemAfter):
* html/HTMLNameCollection.h:
(WebCore::HTMLNameCollection::create):
* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::create):
(WebCore::HTMLOptionsCollection::add):
(WebCore::HTMLOptionsCollection::remove):
(WebCore::HTMLOptionsCollection::selectedIndex):
(WebCore::HTMLOptionsCollection::setSelectedIndex):
(WebCore::HTMLOptionsCollection::setLength):
* html/HTMLOptionsCollection.h:
* html/HTMLPropertiesCollection.cpp:
(WebCore::HTMLPropertiesCollection::create):
(WebCore::HTMLPropertiesCollection::length):
(WebCore::HTMLPropertiesCollection::item):
(WebCore::HTMLPropertiesCollection::names):
* html/HTMLPropertiesCollection.h:
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::~HTMLSelectElement):
(WebCore::HTMLSelectElement::options):
* html/HTMLSelectElement.h:
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::~HTMLTableElement):

LayoutTests:

* fast/dom/htmlcollection-protects-base-expected.txt: Removed.
* fast/dom/htmlcollection-protects-base.html: Removed.
* fast/dom/htmlcollection-zombies-expected.txt: Added.
* fast/dom/htmlcollection-zombies.html: Added.

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

10 years agoUnreviewed build-webkit fix for Chromium to properly use make if gyp generates Makefiles.
jarred@sencha.com [Sat, 7 Jan 2012 04:20:05 +0000 (04:20 +0000)]
Unreviewed build-webkit fix for Chromium to properly use make if gyp generates Makefiles.

* Scripts/webkitdirs.pm:
(buildChromium):
Missing parentheses.

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

10 years agoUnreviewed build fix after r104373.
kling@webkit.org [Sat, 7 Jan 2012 03:58:26 +0000 (03:58 +0000)]
Unreviewed build fix after r104373.

* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::~HTMLTableElement):

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

10 years agoSimplify HTMLCollection ownership model.
kling@webkit.org [Sat, 7 Jan 2012 03:30:36 +0000 (03:30 +0000)]
Simplify HTMLCollection ownership model.
<http://webkit.org/b/75437>

Reviewed by Sam Weinig.

Source/WebCore:

Remove HTMLCollection's inheritance from RefCounted and use OwnPtr to store it.
Added ref()/deref() methods that forward to the collection's base node, these
are only ever used by DOM wrappers.

This is a behavior change, HTMLCollection wrappers now keep the base node alive.

Test: fast/dom/htmlcollection-protects-base.html

* html/HTMLCollection.h:
(WebCore::HTMLCollection::ref):
(WebCore::HTMLCollection::deref):

    Removed inheritance from RefCounted. Added ref/deref that forward the refs
    to the collection's base Node.

* dom/Element.cpp:
(WebCore::Element::~Element):
* dom/Document.h:
* dom/Document.cpp:
(WebCore::Document::~Document):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::~HTMLFormElement):
* html/HTMLSelectElement.h:
* html/HTMLSelectElement.cpp:

    Remove HTMLCollection::detachFromNode() and call sites.

* html/HTMLAllCollection.cpp:
(WebCore::HTMLAllCollection::namedItemWithIndex):
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::invalidateCacheIfNeeded):
(WebCore::HTMLCollection::itemAfter):
(WebCore::HTMLCollection::calcLength):
(WebCore::HTMLCollection::length):
(WebCore::HTMLCollection::item):
(WebCore::HTMLCollection::nextItem):
(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNameCache):
(WebCore::HTMLCollection::hasNamedItem):
(WebCore::HTMLCollection::namedItems):
(WebCore::HTMLCollection::tags):
* html/HTMLFormCollection.cpp:
(WebCore::HTMLFormCollection::calcLength):
(WebCore::HTMLFormCollection::item):
(WebCore::HTMLFormCollection::getNamedItem):
(WebCore::HTMLFormCollection::namedItem):
(WebCore::HTMLFormCollection::updateNameCache):
* html/HTMLNameCollection.cpp:
(WebCore::HTMLNameCollection::itemAfter):
* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::add):
(WebCore::HTMLOptionsCollection::remove):
(WebCore::HTMLOptionsCollection::selectedIndex):
(WebCore::HTMLOptionsCollection::setSelectedIndex):
(WebCore::HTMLOptionsCollection::setLength):
* html/HTMLPropertiesCollection.cpp:
(WebCore::HTMLPropertiesCollection::length):
(WebCore::HTMLPropertiesCollection::item):
(WebCore::HTMLPropertiesCollection::names):

    Removed base node null-checks and assertions. Added one assertion to
    the HTMLCollection constructor (that m_base is non-null.)

* dom/Document.h:
* dom/Document.cpp:
(WebCore::Document::openSearchDescriptionURL):
(WebCore::Document::cachedCollection):
(WebCore::Document::images):
(WebCore::Document::applets):
(WebCore::Document::embeds):
(WebCore::Document::plugins):
(WebCore::Document::objects):
(WebCore::Document::scripts):
(WebCore::Document::links):
(WebCore::Document::forms):
(WebCore::Document::anchors):
(WebCore::Document::all):
(WebCore::Document::windowNamedItems):
(WebCore::Document::documentNamedItems):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::namedItemGetter):
* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::JSHTMLDocument::nameGetter):
(WebCore::JSHTMLDocument::all):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::namedPropertyGetter):
* bindings/v8/custom/V8HTMLDocumentCustom.cpp:
(WebCore::V8HTMLDocument::GetNamedProperty):
* dom/ElementRareData.h:
(WebCore::ElementRareData::ensureCachedHTMLCollection):
* dom/NodeRareData.h:
(WebCore::NodeRareData::properties):
* html/HTMLAllCollection.h:
* html/HTMLAllCollection.cpp:
(WebCore::HTMLAllCollection::create):
* html/HTMLCollection.h:
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::create):
(WebCore::HTMLCollection::HTMLCollection):
* html/HTMLDataListElement.cpp:
(WebCore::HTMLDataListElement::options):
* html/HTMLDataListElement.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::children):
* html/HTMLElement.h:
* html/HTMLSelectElement.h:
(WebCore::HTMLSelectElement::options):
* html/HTMLFormCollection.h:
* html/HTMLFormElement.h:
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::elements):
* html/HTMLNameCollection.h:
(WebCore::HTMLNameCollection::create):
* html/HTMLFormCollection.cpp:
(WebCore::HTMLFormCollection::create):
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::imageElement):
(WebCore::HTMLMapElement::areas):
* html/HTMLMapElement.h:
* html/HTMLPropertiesCollection.h:
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::rows):
(WebCore::HTMLTableElement::tBodies):
* html/HTMLTableElement.h:
* html/HTMLTableRowElement.cpp:
(WebCore::HTMLTableRowElement::insertCell):
(WebCore::HTMLTableRowElement::deleteCell):
(WebCore::HTMLTableRowElement::cells):
* html/HTMLTableRowElement.h:
* html/HTMLTableRowsCollection.cpp:
(WebCore::HTMLTableRowsCollection::create):
(WebCore::HTMLTableRowsCollection::itemAfter):
* html/HTMLTableRowsCollection.h:
* html/HTMLTableSectionElement.h:
* html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::insertRow):
(WebCore::HTMLTableSectionElement::deleteRow):
(WebCore::HTMLTableSectionElement::rows):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::selectedOption):
* html/HTMLOptionsCollection.h:
* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::create):
* html/HTMLPropertiesCollection.cpp:
(WebCore::HTMLPropertiesCollection::create):

    Store cached HTMLCollections in OwnPtrs. Methods that used to return
    PassRefPtr<HTMLCollection> now simply return HTMLCollection*.
    Updated call sites as appropriate.

LayoutTests:

- Removed fast/dom/htmlcollection-zombies.html since it was testing bogus behavior.
- Added a test to verify that HTMLCollection protects its base node from GC.

* fast/dom/htmlcollection-protects-base-expected.txt: Added.
* fast/dom/htmlcollection-protects-base.html: Added.
* fast/dom/htmlcollection-zombies-expected.txt: Removed.
* fast/dom/htmlcollection-zombies.html: Removed.

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

10 years agoDOMWindow should be a FrameDestructionObserver
abarth@webkit.org [Sat, 7 Jan 2012 03:12:01 +0000 (03:12 +0000)]
DOMWindow should be a FrameDestructionObserver
https://bugs.webkit.org/show_bug.cgi?id=75697

Reviewed by Alexey Proskuryakov.

DOMWindow plays exactly the role of a FrameDestructionObserver, just
with special-case code.  It should just use the general-case code.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::DOMWindow):
(WebCore::DOMWindow::~DOMWindow):
(WebCore::DOMWindow::frameDestroyed):
* page/DOMWindow.h:
* page/Frame.cpp:
(WebCore::Frame::~Frame):
(WebCore::Frame::clearDOMWindow):
(WebCore::Frame::setDOMWindow):
* page/Frame.h:

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

10 years agoWeb Inspector: Missing Implementation of Public InspectorDOMAgent Function
commit-queue@webkit.org [Sat, 7 Jan 2012 03:10:44 +0000 (03:10 +0000)]
Web Inspector: Missing Implementation of Public InspectorDOMAgent Function
https://bugs.webkit.org/show_bug.cgi?id=75759

Implement missing accessor and make setter public.

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-01-06
Reviewed by Timothy Hatcher.

* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::searchingForNodeInPage):
* inspector/InspectorDOMAgent.h:

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

10 years ago[Qt] [WK2] Minibrowser leaks memory ~6-7Mb per reload
ostapenko.viatcheslav@nokia.com [Sat, 7 Jan 2012 02:50:25 +0000 (02:50 +0000)]
[Qt] [WK2] Minibrowser leaks memory ~6-7Mb per reload
https://bugs.webkit.org/show_bug.cgi?id=75746

Reset WebGraphicsLayer::m_layerTreeTileClient of all dependent
layers from ~LayerTreeHostQt(). This replaces r103760 which
causes leaks of GraphicsLayerTextureMapper objects on UI side.

Reviewed by Noam Rosenthal.

* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::setLayerTreeTileClient):
* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
(WebKit::LayerTreeHostQt::~LayerTreeHostQt):

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

10 years agoRoll out r104362 since it broke the build.
mrowe@apple.com [Sat, 7 Jan 2012 02:43:54 +0000 (02:43 +0000)]
Roll out r104362 since it broke the build.

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

10 years ago[Chromium] Cull occluded tiles in tiled layers
wjmaclean@chromium.org [Sat, 7 Jan 2012 02:39:16 +0000 (02:39 +0000)]
[Chromium] Cull occluded tiles in tiled layers
https://bugs.webkit.org/show_bug.cgi?id=70533

Reviewed by James Robinson.

Source/WebCore:

Unit test provided, must pass all existing GPU layout tests.

* WebCore.gypi:
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::appendQuads):
(WebCore::CCLayerImpl::quadTransform):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore::CCLayerTreeHostImpl::optimizeRenderPasses):
(WebCore::CCLayerTreeHostImpl::drawLayers):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
* platform/graphics/chromium/cc/CCQuadCuller.cpp: Added.
(std::swap):
(WebCore::regionContainsRect):
(WebCore::CCQuadCuller::cullOccludedQuads):
* platform/graphics/chromium/cc/CCQuadCuller.h: Added.
(WebCore::CCQuadCuller::CCQuadCuller):
* platform/graphics/chromium/cc/CCRenderPass.cpp:
(WebCore::CCRenderPass::optimizeQuads):
* platform/graphics/chromium/cc/CCRenderPass.h:

Source/WebKit/chromium:

* WebKit.gypi:
* tests/CCQuadCullerTest.cpp: Added.
(WebCore::TestDrawQuad::TestDrawQuad):
(WebCore::TestDrawQuad::create):
(WebCore::setQuads):
(WebCore::TEST):

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

10 years agoMove more rubberbanding code into ScrollAnimatorMac::smoothScrollWithEvent
andersca@apple.com [Sat, 7 Jan 2012 01:56:54 +0000 (01:56 +0000)]
Move more rubberbanding code into ScrollAnimatorMac::smoothScrollWithEvent
https://bugs.webkit.org/show_bug.cgi?id=75750

Reviewed by Sam Weinig.

* platform/mac/ScrollAnimatorMac.h:
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::handleWheelEvent):
Move rubberbanding related code into smoothScrollWithEvent.

(WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
Move code here from handleWheelEvent and made the function return a boolean.

(WebCore::ScrollAnimatorMac::snapRubberBand):
Call the client.

(WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
Ditto.

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