WebKit-https.git
8 years ago Unreviewed, fix a wrong expected.txt
toyoshim@chromium.org [Mon, 16 Apr 2012 11:32:13 +0000 (11:32 +0000)]
   Unreviewed, fix a wrong expected.txt
       https://bugs.webkit.org/show_bug.cgi?id=84014

       * fast/canvas/webgl/shader-precision-format-expected.txt:

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

8 years ago[EFL] EWebLaucher : Fix wrong parameter order in function call for multiple windows.
commit-queue@webkit.org [Mon, 16 Apr 2012 11:20:27 +0000 (11:20 +0000)]
[EFL] EWebLaucher : Fix wrong parameter order in function call for multiple windows.
https://bugs.webkit.org/show_bug.cgi?id=83862

Patch by Seokju Kwon <seokju.kwon@samsung.com> on 2012-04-16
Reviewed by Kenneth Rohde Christiansen.

EWebLauncher creates multiple windows, like multiple tabs when pressing F9 key.
It doesn't work properly because of wrong parameter order in function call.

* EWebLauncher/main.c:

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

8 years ago[Qt] Unreviewed gardening, skip failing tests, because less tests means less problems.
ossy@webkit.org [Mon, 16 Apr 2012 10:13:00 +0000 (10:13 +0000)]
[Qt] Unreviewed gardening, skip failing tests, because less tests means less problems.

* platform/qt-5.0/Skipped:
* platform/qt/Skipped:

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

8 years agoUnreviewed, GTK rebaseline after r114200.
philn@webkit.org [Mon, 16 Apr 2012 09:24:29 +0000 (09:24 +0000)]
Unreviewed, GTK rebaseline after r114200.

* platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:

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

8 years ago[BlackBerry] Missing readyState 2 when a XMLHttpRequest calls xmlhttp.open("HEAD...
commit-queue@webkit.org [Mon, 16 Apr 2012 09:04:39 +0000 (09:04 +0000)]
[BlackBerry] Missing readyState 2 when a XMLHttpRequest calls xmlhttp.open("HEAD","notExist.html",true).
https://bugs.webkit.org/show_bug.cgi?id=83866

Source/WebCore:

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-04-16
Reviewed by George Staikos.

We receive 404 for a XMLHttpRequest which calls open("HEAD", "notExist.html", true).
There are no data received because its method is HEAD.
This case shouldn't be treated as a failure.

Test: http/tests/xmlhttprequest/xmlhttprequest-check-head-readystate-for-404.html

* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::handleNotifyClose):

LayoutTests:

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-04-16
Reviewed by George Staikos.

* http/tests/xmlhttprequest/xmlhttprequest-check-head-readystate-for-404-expected.txt: Added.
* http/tests/xmlhttprequest/xmlhttprequest-check-head-readystate-for-404.html: Added.

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

8 years ago[Chromium] Rebaseline for date-appearance.html.
tkent@chromium.org [Mon, 16 Apr 2012 08:56:56 +0000 (08:56 +0000)]
[Chromium] Rebaseline for date-appearance.html.

* platform/chromium-linux/fast/forms/date/date-appearance-expected.png:
* platform/chromium-linux/fast/forms/date/date-appearance-expected.txt:
* platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-expected.txt: Removed.
* platform/chromium-mac/fast/forms/date/date-appearance-expected.png:
* platform/chromium-mac/fast/forms/date/date-appearance-expected.txt:
* platform/chromium-win/fast/forms/date/date-appearance-expected.png:
* platform/chromium-win/fast/forms/date/date-appearance-expected.txt:

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

8 years ago[Qt]REGRESSION(r114217): It broke fast/repaint/line-flow-with-floats-in-regions.html
ossy@webkit.org [Mon, 16 Apr 2012 08:42:52 +0000 (08:42 +0000)]
[Qt]REGRESSION(r114217): It broke fast/repaint/line-flow-with-floats-in-regions.html
https://bugs.webkit.org/show_bug.cgi?id=84013

Unreviewed gardening, skip a failing test to paint the bot green. (Less tests, less problem.)

* platform/qt/Skipped:

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

8 years agoUnreviewed, GTK baselines for tests added in r114162.
philn@webkit.org [Mon, 16 Apr 2012 08:32:00 +0000 (08:32 +0000)]
Unreviewed, GTK baselines for tests added in r114162.

* platform/gtk/ietestcenter/css3/grid/display-grid-001-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/display-grid-002-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-column-001-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-column-002-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-column-003-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-columns-001-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-items-001-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-items-002-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-items-003-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-items-004-expected.txt: Added.
* platform/gtk/ietestcenter/css3/grid/grid-items-005-expected.txt: Added.

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

8 years agoBuild fix.
jonlee@apple.com [Mon, 16 Apr 2012 08:16:13 +0000 (08:16 +0000)]
Build fix.

* WebCore.exp.in:
* editing/DictationAlternative.cpp:
(WebCore::DictationAlternative::DictationAlternative):
* editing/DictationAlternative.h:
(DictationAlternative):

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

8 years agoFix signed/unsigned mismatch warning for BlackBerry debug builds.
staikos@webkit.org [Mon, 16 Apr 2012 08:11:26 +0000 (08:11 +0000)]
Fix signed/unsigned mismatch warning for BlackBerry debug builds.
https://bugs.webkit.org/show_bug.cgi?id=80790

Reviewed by Rob Buis.

* platform/blackberry/CookieMap.cpp:
(WebCore::CookieMap::removeCookieAtIndex):

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

8 years agoUnreviewed, GTK gardening.
philn@webkit.org [Mon, 16 Apr 2012 07:42:36 +0000 (07:42 +0000)]
Unreviewed, GTK gardening.

* platform/gtk/test_expectations.txt: Skip svg failures, unskip
ietestcenter for rebaseline and unflag a flaky media/track test.

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

8 years agoUnreviewed, GTK gardening.
philn@webkit.org [Mon, 16 Apr 2012 07:26:27 +0000 (07:26 +0000)]
Unreviewed, GTK gardening.

* Scripts/run-gtk-tests:
(TestRunner): Skip /webkit/atk/textChangedNotifications.

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

8 years agoMake NullPtr.h compile with clang -std=c++11 and libstdc++4.2
thakis@chromium.org [Mon, 16 Apr 2012 07:14:28 +0000 (07:14 +0000)]
Make NullPtr.h compile with clang -std=c++11 and libstdc++4.2
https://bugs.webkit.org/show_bug.cgi?id=83999

Reviewed by Sam Weinig.

Before this patch, NullPtr.h assumed that a working |nullptr| implied
a working |std::nullptr_t| as well. With clang and libstdc++4.2, this
is not true.

I tested (-stdlib=libc++, -stdlib=libstdc++) x (-std=c++11, -std=c++03)
with clang.

* wtf/NullPtr.h:
(std):

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

8 years ago[GTK] Use GRefPtr to delete the default web context in WebKit2 GTK+
carlosgc@webkit.org [Mon, 16 Apr 2012 06:37:41 +0000 (06:37 +0000)]
[GTK] Use GRefPtr to delete the default web context in WebKit2 GTK+
https://bugs.webkit.org/show_bug.cgi?id=83752

Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitWebContext.cpp:
(createDefaultWebContext):

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

8 years ago[Qt] Unreviewed morning gardening.
ossy@webkit.org [Mon, 16 Apr 2012 06:23:51 +0000 (06:23 +0000)]
[Qt] Unreviewed morning gardening.

* platform/qt-4.8/fast/dom/Window/window-properties-expected.txt: Updated after r114150.
* platform/qt-5.0-wk2/fast/dom/Window/window-properties-expected.txt: Updated after r114150.
* platform/qt-5.0-wk2/fast/dom/prototype-inheritance-2-expected.txt: Updated after r114200.
* platform/qt-5.0/fast/dom/Window/window-properties-expected.txt: Updated after r114150.
* platform/qt-5.0/fast/dom/prototype-inheritance-2-expected.txt: Updated after r114200.
* platform/qt/Skipped: Skip a test after r114150, because of missing layoutTestController.setBackingScaleFactor().
* platform/qt/fast/dom/prototype-inheritance-2-expected.txt: Updated after r114150.

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

8 years agoWebCore::weekDayShortLabels() for ICU always returns the fallback labels
tkent@chromium.org [Mon, 16 Apr 2012 06:12:05 +0000 (06:12 +0000)]
WebCore::weekDayShortLabels() for ICU always returns the fallback labels
https://bugs.webkit.org/show_bug.cgi?id=83991

Reviewed by Hajime Morita.

We need to specfiy 1-based index to udat_getSymbols() with
UDAT_SHORT_WEEKDAYS. Also, udat_countSymbols() with UDAT_SHORT_WEEKDAYS
returns 8.

No new tests because this behavior depends on locale setting.

* platform/text/LocalizedCalendarICU.cpp:
(WebCore::createLabelVector): Add startIndex argument.
(WebCore::createMonthLabels):
Pass UDAT_JANUARRY(0) as startIndex to createLabelVector().
(WebCore::createWeekDayShortLabels):
Pass UDAT_SUNDAY(1) as startIndex to createLabelVector().

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

8 years agoIntroduce MenuItemID to autofill popup
keishi@webkit.org [Mon, 16 Apr 2012 05:21:58 +0000 (05:21 +0000)]
Introduce MenuItemID to autofill popup
https://bugs.webkit.org/show_bug.cgi?id=83777

Introducing MenuItemIDs because we want to add multiple separators and
need to identify non-autofill menu items without resorting to the separator position.

Reviewed by Kent Tamura.

* public/WebAutofillClient.h:
(WebKit::WebAutofillClient::didAcceptAutofillSuggestion): Changed uniqueID to itemID because they aren't unique.
(WebKit::WebAutofillClient::didSelectAutofillSuggestion):
* public/WebView.h:
(WebView):
* src/AutofillPopupMenuClient.cpp:
(WebKit::AutofillPopupMenuClient::AutofillPopupMenuClient):
(WebKit::AutofillPopupMenuClient::getSuggestionsCount):
(WebKit::AutofillPopupMenuClient::getSuggestion):
(WebKit::AutofillPopupMenuClient::getLabel):
(WebKit::AutofillPopupMenuClient::getIcon):
(WebKit::AutofillPopupMenuClient::removeSuggestionAtIndex):
(WebKit::AutofillPopupMenuClient::canRemoveSuggestionAtIndex):
(WebKit::AutofillPopupMenuClient::valueChanged):
(WebKit::AutofillPopupMenuClient::selectionChanged):
(WebKit::AutofillPopupMenuClient::itemIsSeparator):
(WebKit::AutofillPopupMenuClient::itemIsWarning):
(WebKit::AutofillPopupMenuClient::initialize):
(WebKit::AutofillPopupMenuClient::setSuggestions):
* src/AutofillPopupMenuClient.h:  Removed m_separatorIndex because now we use itemID to identify separators.
Added m_useLegacyBehavior which is true when it is initialized with a valid separator index. This is to keep
the autofill working even when the chromium side hasn't been updated yet.
(AutofillPopupMenuClient):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::applyAutofillSuggestions):
* src/WebViewImpl.h:
(WebViewImpl):

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

8 years agoUnreviewed attempt to chromium-win build fix.
morrita@google.com [Mon, 16 Apr 2012 04:13:59 +0000 (04:13 +0000)]
Unreviewed attempt to chromium-win build fix.

* editing/DictationAlternative.h:

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

8 years agoAlign JSC/V8 bindings canvas.toDataURL() code flows
noel.gordon@gmail.com [Mon, 16 Apr 2012 03:54:27 +0000 (03:54 +0000)]
Align JSC/V8 bindings canvas.toDataURL() code flows
https://bugs.webkit.org/show_bug.cgi?id=84003

Reviewed by Eric Seidel.

Align JSC/V8 bindings canvas.toDataURL() code flow so that the binding
code implementations read alike.

No new tests. Covered by existing cnavas toDataURL tests.

* bindings/js/JSHTMLCanvasElementCustom.cpp:
(WebCore::JSHTMLCanvasElement::toDataURL):

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

8 years agoIntroducing DictationCommand.
jpu@apple.com [Mon, 16 Apr 2012 03:05:06 +0000 (03:05 +0000)]
Introducing DictationCommand.
https://bugs.webkit.org/show_bug.cgi?id=83549

Reviewed by Hajime Morita.

No new tests. This patch doesn't introduce any change of new functionality. It prepares for
additional changes which will inlude tests.

On OS X, alternative dictation results need to be stored as document markers. This patch introduces
following changes to achieve this:
1. Added DictationMarkDetails to store non-string type maker detail.
2. Introduce DictationCommand, which is similor to TypingCommand, but allows inserting text with
  attached markers.
3. Added Editor::insertDictatedText as interaface to WebKit and WebKit2.
4. Added struct DictationAlternative to pass dictation related info from WebKit to WebCore.

Several fragments of code in TypingCommand can be also used by DictationCommand. So this patch
introduced a new class, TextInsertionBaseCommand. It's a subclass of CompositeEditCommmand, and
base class of both TypingCommand and DictationCommand.

This patch also extends InsertTextCommand class. Its constructor will take an TextInsertionMarkerSupplier
object. After text is inserted to a node, InsertTextCommand would give marker supplier a chance to
add document markers to the inserted text.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* dom/Document.cpp:
(WebCore::eventTargetNodeForDocument): Moved this function from EventHandler so that it can be used
  by AlternativeTextController.
(WebCore):
* dom/Document.h:
(WebCore):
* dom/DocumentMarker.cpp:
(WebCore::DocumentMarker::DocumentMarker): New constructor that takes a pointer to DocumentMarkerDetails object.
(WebCore):
* dom/DocumentMarker.h:
(WebCore::DocumentMarker::AllMarkers::AllMarkers):
(DocumentMarker):
* dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::addMarker):
(WebCore):
* dom/DocumentMarkerController.h:
(DocumentMarkerController):
* dom/TextEvent.cpp:
(WebCore::TextEvent::createForDictation):
(WebCore):
(WebCore::TextEvent::TextEvent):
* dom/TextEvent.h: Added member variable for dictation alternatives.
(TextEvent):
(WebCore::TextEvent::isDictation):
(WebCore::TextEvent::dictationAlternatives):
* dom/TextEventInputType.h:
* editing/AlternativeTextController.cpp:
(WebCore::AlternativeTextController::AlternativeTextController):
(WebCore::AlternativeTextController::insertDictatedText): Used by Editor::insertDictatedText().
(WebCore):
* editing/AlternativeTextController.h:
(WebCore):
(DictationMarkerDetails):
(WebCore::DictationMarkerDetails::create):
(WebCore::DictationMarkerDetails::originalText):
(WebCore::DictationMarkerDetails::dictationContext):
(WebCore::DictationMarkerDetails::DictationMarkerDetails):
(AlternativeTextController):
* editing/CompositeEditCommand.h:
(WebCore::CompositeEditCommand::isDictationCommand):
* editing/DictationAlternative.cpp: Added.
(WebCore):
(WebCore::DictationAlternative::DictationAlternative):
* editing/DictationAlternative.h: Added. Data structure for passing dictation related data from WebKit to WebCore.
(DictationAlternative):
(WebCore):
* editing/DictationCommand.cpp: Added.
(WebCore):
(DictationCommandLineOperation):
(WebCore::DictationCommandLineOperation::DictationCommandLineOperation):
(WebCore::DictationCommandLineOperation::operator()):
(DictationMarkerSupplier):
(WebCore::DictationMarkerSupplier::create):
(WebCore::DictationMarkerSupplier::addMarkersToTextNode):
(WebCore::DictationMarkerSupplier::DictationMarkerSupplier):
(WebCore::DictationCommand::DictationCommand):
(WebCore::DictationCommand::insertText):
(WebCore::DictationCommand::doApply):
(WebCore::DictationCommand::insertTextRunWithoutNewlines):
(WebCore::DictationCommand::insertParagraphSeparator):
(WebCore::DictationCommand::collectDictationAlternativesInRange):
* editing/DictationCommand.h: Added.
(WebCore):
(DictationCommand):
(WebCore::DictationCommand::isDictationCommand):
(WebCore::DictationCommand::create):
* editing/EditingAllInOne.cpp:
* editing/Editor.cpp:
(WebCore::Editor::insertDictatedText): Main interface that allows WebKit passes in text with attached dictation information.
(WebCore):
(WebCore::Editor::insertTextWithoutSendingTextEvent):
(WebCore::Editor::updateMarkersForWordsAffectedByEditing):
* editing/Editor.h:
(Editor):
* editing/InsertTextCommand.cpp:
(WebCore::InsertTextCommand::InsertTextCommand):
(WebCore):
(WebCore::InsertTextCommand::doApply):
* editing/InsertTextCommand.h:
(WebCore):
(TextInsertionMarkerSupplier): Interface to allow caller of InsertTextCommand to add document markers to inserted text.
(WebCore::TextInsertionMarkerSupplier::~TextInsertionMarkerSupplier):
(WebCore::TextInsertionMarkerSupplier::TextInsertionMarkerSupplier):
(WebCore::InsertTextCommand::createWithMarkerSupplier):
(InsertTextCommand):
* editing/TextInsertionBaseCommand.cpp: Added. This class contains functions shared by TypingCommand and DictationCommand.
(WebCore):
(WebCore::TextInsertionBaseCommand::TextInsertionBaseCommand):
(WebCore::TextInsertionBaseCommand::applyTextInsertionCommand):
(WebCore::dispatchBeforeTextInsertedEvent):
(WebCore::canAppendNewLineFeedToSelection):
* editing/TextInsertionBaseCommand.h: Added.
(WebCore):
(TextInsertionBaseCommand):
(WebCore::TextInsertionBaseCommand::~TextInsertionBaseCommand):
(WebCore::forEachLineInString):
* editing/TypingCommand.cpp:
(TypingCommandLineOperation):
(WebCore::TypingCommandLineOperation::TypingCommandLineOperation):
(WebCore::TypingCommandLineOperation::operator()):
(WebCore::TypingCommand::TypingCommand):
(WebCore::TypingCommand::insertText):
(WebCore::TypingCommand::insertLineBreak):
(WebCore::TypingCommand::insertParagraphSeparator):
* editing/TypingCommand.h:
* page/EventHandler.cpp:
* rendering/InlineTextBox.cpp:
(WebCore::lineStyleForMarkerType):
(WebCore::InlineTextBox::paintDocumentMarker): Renamed existing function to reflect new funcationality.
(WebCore::InlineTextBox::paintDocumentMarkers):
* rendering/InlineTextBox.h:
(InlineTextBox):
* testing/Internals.cpp:
(WebCore::markerTypesFrom):

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

8 years ago[chromium] Unreviewed rebaselines for various compositing tests.
jamesr@google.com [Mon, 16 Apr 2012 02:49:53 +0000 (02:49 +0000)]
[chromium] Unreviewed rebaselines for various compositing tests.

* platform/chromium-linux-x86/compositing/reflections/animation-inside-reflection-expected.png: Removed.
* platform/chromium-linux-x86/compositing/reflections/nested-reflection-animated-expected.png: Removed.
* platform/chromium-linux/compositing/geometry/fixed-position-composited-page-scale-down-expected.png:
* platform/chromium-linux/compositing/geometry/fixed-position-composited-page-scale-expected.png:
* platform/chromium-linux/compositing/geometry/fixed-position-iframe-composited-page-scale-down-expected.png:
* platform/chromium-linux/compositing/geometry/fixed-position-iframe-composited-page-scale-expected.png:
* platform/chromium-linux/compositing/geometry/fixed-position-transform-composited-page-scale-down-expected.png:
* platform/chromium-linux/compositing/geometry/fixed-position-transform-composited-page-scale-expected.png:
* platform/chromium-linux/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-linux/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-linux/platform/chromium/compositing/filters/background-filter-blur-outsets-expected.png: Added.
* platform/chromium-linux/platform/chromium/compositing/filters/background-filter-blur-outsets-expected.txt: Added.
* platform/chromium-mac-leopard/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac-leopard/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-mac-snowleopard/compositing/geometry/fixed-position-composited-page-scale-down-expected.png:
* platform/chromium-mac-snowleopard/compositing/geometry/fixed-position-iframe-composited-page-scale-down-expected.png:
* platform/chromium-mac-snowleopard/compositing/geometry/fixed-position-transform-composited-page-scale-down-expected.png:
* platform/chromium-mac-snowleopard/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac-snowleopard/compositing/reflections/animation-inside-reflection-expected.txt: Added.
* platform/chromium-mac-snowleopard/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-mac/compositing/geometry/fixed-position-composited-page-scale-down-expected.png:
* platform/chromium-mac/compositing/geometry/fixed-position-composited-page-scale-expected.png:
* platform/chromium-mac/compositing/geometry/fixed-position-iframe-composited-page-scale-down-expected.png:
* platform/chromium-mac/compositing/geometry/fixed-position-iframe-composited-page-scale-expected.png:
* platform/chromium-mac/compositing/geometry/fixed-position-transform-composited-page-scale-down-expected.png:
* platform/chromium-mac/compositing/geometry/fixed-position-transform-composited-page-scale-expected.png:
* platform/chromium-mac/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-mac/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-mac/compositing/repaint/newly-composited-repaint-rect-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/compositing/geometry/fixed-position-composited-page-scale-down-expected.png.
* platform/chromium-win-vista/compositing/reflections/animation-inside-reflection-expected.png: Removed.
* platform/chromium-win-vista/compositing/reflections/nested-reflection-animated-expected.png: Removed.
* platform/chromium-win-xp/compositing/reflections/animation-inside-reflection-expected.txt: Removed.
* platform/chromium-win-xp/compositing/reflections/nested-reflection-animated-expected.png: Removed.
* platform/chromium-win-xp/compositing/reflections/nested-reflection-animated-expected.txt: Added.
* platform/chromium-win/compositing/geometry/fixed-position-composited-page-scale-down-expected.png:
* platform/chromium-win/compositing/geometry/fixed-position-composited-page-scale-expected.png:
* platform/chromium-win/compositing/geometry/fixed-position-iframe-composited-page-scale-down-expected.png:
* platform/chromium-win/compositing/geometry/fixed-position-iframe-composited-page-scale-expected.png:
* platform/chromium-win/compositing/geometry/fixed-position-transform-composited-page-scale-down-expected.png:
* platform/chromium-win/compositing/geometry/fixed-position-transform-composited-page-scale-expected.png:
* platform/chromium-win/compositing/reflections/animation-inside-reflection-expected.png:
* platform/chromium-win/compositing/reflections/nested-reflection-animated-expected.png:
* platform/chromium-win/compositing/repaint/newly-composited-repaint-rect-expected.png: Copied from LayoutTests/platform/chromium-win/compositing/geometry/fixed-position-transform-composited-page-scale-down-expected.png.

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

8 years ago[chromium] LayerRendererChromium shouldn't know anything about CCLayerImpl
commit-queue@webkit.org [Mon, 16 Apr 2012 02:44:42 +0000 (02:44 +0000)]
[chromium] LayerRendererChromium shouldn't know anything about CCLayerImpl
https://bugs.webkit.org/show_bug.cgi?id=83415

Patch by James Robinson <jamesr@chromium.org> on 2012-04-15
Reviewed by Adrienne Walker.

Source/WebCore:

This removes all knowledge of CCLayerImpl from LayerRendererChromium. The most significant move code-wise is
moving the HUD up to live on CCLayerTreeHostImpl, since it's aware of the layer tree. This involves two changes.
First, CCHeadsUpDisplay is in charge of populating a ManagedTexture but the actual drawing code now lives in
LayerRendererChromium. Second, since we don't recreate CCLayerTreeHostImpl on a lost context, the font atlas
ownership is much simpler. Now a CCFontAtlas is created on the main thread if needed and passed asynchronously
to the CCHeadsUpDisplay which takes ownership of the atlas.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::create):
(WebCore::LayerRendererChromium::initialize):
(WebCore::LayerRendererChromium::~LayerRendererChromium):
(WebCore::LayerRendererChromium::beginDrawingFrame):
(WebCore::LayerRendererChromium::drawHeadsUpDisplay):
(WebCore):
(WebCore::LayerRendererChromium::finishDrawingFrame):
(WebCore::LayerRendererChromium::swapBuffers):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromiumClient):
(LayerRendererChromium):
* platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
(WebCore::CCHeadsUpDisplay::CCHeadsUpDisplay):
(WebCore::CCHeadsUpDisplay::setFontAtlas):
(WebCore):
(WebCore::CCHeadsUpDisplay::enabled):
(WebCore::CCHeadsUpDisplay::showPlatformLayerTree):
(WebCore::CCHeadsUpDisplay::draw):
(WebCore::CCHeadsUpDisplay::drawHudContents):
* platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
(WebCore):
(WebCore::CCHeadsUpDisplay::create):
(CCHeadsUpDisplay):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::initialize):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore::CCLayerTreeHostImpl::prepareToDraw):
(WebCore::CCLayerTreeHostImpl::drawLayers):
(WebCore::CCLayerTreeHostImpl::swapBuffers):
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
(WebCore::CCLayerTreeHostImpl::setFullRootLayerDamage):
(WebCore::CCLayerTreeHostImpl::layerTreeAsText):
(WebCore):
(WebCore::CCLayerTreeHostImpl::setFontAtlas):
(WebCore::CCLayerTreeHostImpl::dumpRenderSurfaces):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::rootLayer):
* platform/graphics/chromium/cc/CCProxy.h:
(WebCore):
(CCProxy):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::initializeLayerRenderer):
(WebCore::CCSingleThreadProxy::recreateContext):
(WebCore::CCSingleThreadProxy::setFontAtlas):
(WebCore):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::initializeLayerRendererOnImplThread):
(WebCore::CCThreadProxy::setFontAtlas):
(WebCore):
(WebCore::CCThreadProxy::setFontAtlasOnImplThread):
(WebCore::CCThreadProxy::recreateContextOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):

Source/WebKit/chromium:

Add an explicit rootLayer getter to the test implementation of LayerRendererChromium since there isn't one on
the base class any more.

* tests/LayerRendererChromiumTest.cpp:
(FakeLayerRendererChromiumClient::rootLayer):
(FakeLayerRendererChromiumClient):
(TEST_F):

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

8 years agoCapture CSS parser context
antti@apple.com [Mon, 16 Apr 2012 02:40:23 +0000 (02:40 +0000)]
Capture CSS parser context
https://bugs.webkit.org/show_bug.cgi?id=83998

Source/WebCore:

Reviewed by Andreas Kling.

Currently the CSS parser calls to the Document and StyleSheetInternal objects to get settings, base URL etc.
The required information should be passed in on parser construction instead. The parser should not need to
know about the document at all.

The patch adds CSSParserContext struct that captures the parsing context. StyleSheetInternal saves the
parsing context and reuses it for any further parsing.

If the same stylesheet source is parsed with an identical context then the resulting stylesheet structure will
be identical. This will allow sharing parsed stylesheets in the future.

* css/CSSGrammar.y:
* css/CSSImportRule.cpp:
(WebCore::StyleRuleImport::setCSSStyleSheet):
* css/CSSMediaRule.cpp:
(WebCore::CSSMediaRule::insertRule):
* css/CSSPageRule.cpp:
(WebCore::CSSPageRule::setSelectorText):
* css/CSSParser.cpp:
(WebCore):
(WebCore::strictCSSParserContext):
(WebCore::CSSParserContext::CSSParserContext):
(WebCore::CSSParser::CSSParser):
(WebCore::CSSParser::parseKeyframeRule):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseSelector):
(WebCore::CSSParser::completeURL):
(WebCore::CSSParser::parseContent):
(WebCore::CSSParser::parseAttr):
(WebCore::CSSParser::parseFillImage):
(WebCore::CSSParser::parseFontFaceSrcURI):
(WebCore::CSSParser::parseFontFaceSrc):
(WebCore::CSSParser::parseBorderImage):
(WebCore::CSSParser::parseImageSet):
(WebCore::CSSParser::parseCustomFilter):
(WebCore::CSSParser::parseFilter):
(WebCore::CSSParser::cssRegionsEnabled):
(WebCore::CSSParser::parseFlowThread):
(WebCore::CSSParser::createMediaRule):
(WebCore::CSSParser::createStyleRule):
(WebCore::CSSParser::createFontFaceRule):
(WebCore::CSSParser::createPageRule):
(WebCore::CSSParser::createKeyframe):
* css/CSSParser.h:
(CSSParser):
(WebCore::CSSParser::inStrictMode):
(WebCore::CSSParser::inQuirksMode):
(WebCore::CSSParser::validUnit):
* css/CSSParserMode.h:
(WebCore):
(CSSParserContext):
* css/CSSRule.h:
(WebCore::CSSRule::parserContext):
(CSSRule):
* css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::setSelectorText):
* css/CSSStyleSheet.cpp:
(WebCore::StyleSheetInternal::StyleSheetInternal):
(WebCore::StyleSheetInternal::parseString):
(WebCore::StyleSheetInternal::parseStringAtLine):
(WebCore):
(WebCore::StyleSheetInternal::updateBaseURL):
(WebCore::StyleSheetInternal::completeURL):
(WebCore::CSSStyleSheet::insertRule):
* css/CSSStyleSheet.h:
(StyleSheetInternal):
(WebCore::StyleSheetInternal::parserContext):
(WebCore::StyleSheetInternal::charset):
(WebCore::StyleSheetInternal::setFinalURL):
(WebCore::StyleSheetInternal::baseURL):
* css/CSSValuePool.cpp:
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::parseDeclaration):
* css/WebKitCSSKeyframesRule.cpp:
(WebCore::WebKitCSSKeyframesRule::insertRule):
* dom/Document.cpp:
(WebCore::Document::webkitGetFlowByName):
(WebCore::Document::pageUserSheet):
(WebCore::Document::pageGroupUserSheets):
* dom/Element.cpp:
(WebCore::Element::webkitMatchesSelector):
* dom/Node.cpp:
(WebCore::Node::querySelector):
(WebCore::Node::querySelectorAll):
* dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::parseStyleSheet):
* dom/StyleElement.cpp:
(WebCore::StyleElement::createSheet):
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::setCSSStyleSheet):
* html/shadow/ContentSelectorQuery.cpp:
(WebCore::ContentSelectorQuery::ContentSelectorQuery):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyle::setPropertyText):
(WebCore::InspectorStyleSheet::reparseStyleSheet):
(WebCore::InspectorStyleSheet::ensureSourceData):
(WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):

LayoutTests:

Reviewed by Andreas Kling.

Modify the tests so that they don't expect settings changes to apply to already existing stylesheets.

* css3/filters/script-tests/custom-filter-property-parsing.js:
* fast/regions/script-tests/css-regions-disabled.js:

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

8 years ago[Cairo] Separate image encoding from dataURL construction
noel.gordon@gmail.com [Mon, 16 Apr 2012 02:14:07 +0000 (02:14 +0000)]
[Cairo] Separate image encoding from dataURL construction
https://bugs.webkit.org/show_bug.cgi?id=83975

Reviewed by Martin Robinson.

Remove the implicit assumption that a dataURL is the only desired output format
of the image encoding phase.

No new tests. Covered by existing canvas toDataURL tests.

* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::writeFunction): Rename closure to output.
(WebCore::encodeImage): Output the encoded image to the provided Vector<char>.
PNG format is only supported per the Cairo encoding MIMETypeRegistry.
(WebCore):
(WebCore::ImageBuffer::toDataURL): Refactor to use encodeImage().

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

8 years agoLeak in WebSocketChannel with workers/worker-reload.html (part 2)
yutak@chromium.org [Mon, 16 Apr 2012 01:43:40 +0000 (01:43 +0000)]
Leak in WebSocketChannel with workers/worker-reload.html (part 2)
https://bugs.webkit.org/show_bug.cgi?id=83749

Reviewed by David Levin.

Source/WebCore:

Second attempt to remove leaks around WorkerThreadableWebSocketChannel.

No new tests, as this patch does not impose any functional change.

* Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
(WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
(WebCore::ThreadableWebSocketChannelClientWrapper::failedWebSocketChannelCreation):
(WebCore::ThreadableWebSocketChannelClientWrapper::setFailedWebSocketChannelCreation):
* Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
Add a boolean flag indicating whether Bridge::initialize() has exited without receiving
a pointer to the peer object.
* Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
(WebCore::WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask::create):
(WebCore::WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask::WorkerContextDidInitializeTask):
(WebCore::WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask::performTask):
Kick mainThreadDestroy() to delete the peer if the bridge has failed to receive
a pointer to the peer (waitForMethodCompletion() exited due to message queue's
termination).
(WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::initialize):
* Modules/websockets/WorkerThreadableWebSocketChannel.h:
(WorkerThreadableWebSocketChannel):
Make WorkerContextDidInitializeTask an inner class of WorkerThreadableWebSocketChannel
so it can refer WorkerThreadableWebSocketChannel's static member function (mainThreadDestroy()).

Source/WebKit/chromium:

* src/WebWorkerClientImpl.cpp:
(WebKit::WebWorkerClientImpl::postTaskForModeToWorkerContext):
Correctly propagate the return value of postTaskForModeToWorkerContext().

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

8 years agoChromium perf bots should not build
rniwa@webkit.org [Sun, 15 Apr 2012 23:15:15 +0000 (23:15 +0000)]
Chromium perf bots should not build
https://bugs.webkit.org/show_bug.cgi?id=83641

Reviewed by Eric Seidel.

Don't build on perf bots to improve the cycle time.

* BuildSlaveSupport/build.webkit.org-config/config.json:

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

8 years agoRemove empty directory.
rakuco@webkit.org [Sun, 15 Apr 2012 15:23:06 +0000 (15:23 +0000)]
Remove empty directory.

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

8 years ago[EFL] Gardening. Skip fast/regions tests.
rakuco@webkit.org [Sun, 15 Apr 2012 15:21:14 +0000 (15:21 +0000)]
[EFL] Gardening. Skip fast/regions tests.

SVN r90067 skipped fast/regions for many ports, but EFL's skipped
list was added later. Skip all tests there and remove existing
baselines.

* platform/efl/Skipped:
* platform/efl/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
* platform/efl/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
* platform/efl/fast/regions/flow-content-basic-vertical-expected.png: Removed.
* platform/efl/fast/regions/flow-content-basic-vertical-expected.txt: Removed.
* platform/efl/fast/regions/flow-content-basic-vertical-rl-expected.png: Removed.
* platform/efl/fast/regions/flow-content-basic-vertical-rl-expected.txt: Removed.
* platform/efl/fast/regions/flows-dependency-dynamic-remove-expected.png: Removed.
* platform/efl/fast/regions/flows-dependency-dynamic-remove-expected.txt: Removed.
* platform/efl/fast/regions/flows-dependency-same-flow-expected.png: Removed.
* platform/efl/fast/regions/flows-dependency-same-flow-expected.txt: Removed.
* platform/efl/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/overflow-in-uniform-regions-dynamic-expected.png: Removed.
* platform/efl/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: Removed.
* platform/efl/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/overflow-size-change-with-stacking-context-rtl-expected.png: Removed.
* platform/efl/fast/regions/overflow-size-change-with-stacking-context-rtl-expected.txt: Removed.
* platform/efl/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.png: Removed.
* platform/efl/fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.txt: Removed.
* platform/efl/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.png: Removed.
* platform/efl/fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.txt: Removed.
* platform/efl/fast/regions/percentage-margins-rtl-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/percentage-margins-rtl-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/percentage-margins-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/percentage-margins-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/region-overflow-auto-overflow-hidden-expected.png: Removed.
* platform/efl/fast/regions/region-overflow-auto-overflow-hidden-expected.txt: Removed.
* platform/efl/fast/regions/region-overflow-auto-overflow-visible-expected.png: Removed.
* platform/efl/fast/regions/region-overflow-auto-overflow-visible-expected.txt: Removed.
* platform/efl/fast/regions/text-region-split-small-pagination-expected.png: Removed.
* platform/efl/fast/regions/text-region-split-small-pagination-expected.txt: Removed.
* platform/efl/fast/regions/top-overflow-out-of-second-region-expected.png: Removed.
* platform/efl/fast/regions/top-overflow-out-of-second-region-expected.txt: Removed.
* platform/efl/fast/regions/webkit-flow-double-pagination-float-push-expected.png: Removed.
* platform/efl/fast/regions/webkit-flow-double-pagination-float-push-expected.txt: Removed.
* platform/efl/fast/regions/webkit-flow-float-pushed-to-last-region-expected.png: Removed.
* platform/efl/fast/regions/webkit-flow-float-pushed-to-last-region-expected.txt: Removed.
* platform/efl/fast/regions/webkit-flow-float-unable-to-push-expected.png: Removed.
* platform/efl/fast/regions/webkit-flow-float-unable-to-push-expected.txt: Removed.
* platform/efl/fast/regions/webkit-flow-floats-inside-regions-bounds-expected.png: Removed.
* platform/efl/fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt: Removed.
* platform/efl/fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.png: Removed.
* platform/efl/fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt: Removed.
* platform/efl/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.png: Removed.
* platform/efl/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.txt: Removed.
* platform/efl/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.png: Removed.
* platform/efl/fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.txt: Removed.

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

8 years agoFix pixelSnapping for CalendarPicker, MediaControl and ScrollbarPart
eae@chromium.org [Sun, 15 Apr 2012 03:51:21 +0000 (03:51 +0000)]
Fix pixelSnapping for CalendarPicker, MediaControl and ScrollbarPart
https://bugs.webkit.org/show_bug.cgi?id=83929

Reviewed by Eric Seidel.

Update CalendarPickerElement and MediaControlElements to use
pixelSnappedSize in preparation for turning on subpixel support.
Update RenderScrollbarPart to pixel snap rect before painting to ensure
that it is painted on device pixel boundaries.

No new tests, no change in functionality.

* html/shadow/CalendarPickerElement.cpp:
(WebCore::CalendarPickerElement::openPopup):
* html/shadow/MediaControlElements.cpp:
(WebCore::RenderMediaVolumeSliderContainer::layout):
* rendering/RenderScrollbarPart.cpp:
(WebCore::RenderScrollbarPart::paintIntoRect):

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

8 years agoDay of week labels are wrong if WebCore::firstDayOfWeek() is not 0
tkent@chromium.org [Sun, 15 Apr 2012 03:31:43 +0000 (03:31 +0000)]
Day of week labels are wrong if WebCore::firstDayOfWeek() is not 0
https://bugs.webkit.org/show_bug.cgi?id=83990

Reviewed by Kentaro Hara.

We passed the "weekStartDay" property value as a
string. CalendarPickerElement::writeDocument() created:
    weekStartDay: "1",
and the JavaScript code used it in the following code:
    dayLabels[(weekStartDay + i) % 7]
If weekStartDay was "1", the expression (weekStartDay + i)
produced "10", "11", "12", ... We expected "1", "2", "3", ...

We need to pass the "weekStartDay" property as a number.

No new tests because we have no ways to test this for now. We'll
introduce tests for the calendar picker later.

* html/shadow/CalendarPickerElement.cpp:
(WebCore::addProperty): Add addProperty() function for a number.
(WebCore::CalendarPickerElement::writeDocument):
Pass a number, not a serialized number.

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

8 years agoHarden WTF::ByteArray::create()
weinig@apple.com [Sun, 15 Apr 2012 00:43:38 +0000 (00:43 +0000)]
Harden WTF::ByteArray::create()
https://bugs.webkit.org/show_bug.cgi?id=83318

Reviewed by Maciej Stachowiak.

* wtf/ByteArray.cpp:
(WTF::ByteArray::create):
Add overflow check. I don't believe there is anyway to trigger this currently,
hence no tests, so this should be considered hardening.

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

8 years agoViewport-percentage Length units does not work for Replaced elements size
commit-queue@webkit.org [Sat, 14 Apr 2012 21:29:05 +0000 (21:29 +0000)]
Viewport-percentage Length units does not work for Replaced elements size
https://bugs.webkit.org/show_bug.cgi?id=83425

Patch by Joe Thomas <joethomas@motorola.com> on 2012-04-14
Reviewed by Antti Koivisto.

Added the support for viewport-percentage length units while calculating the width/height of replaced elements.

Source/WebCore:

Tests: css3/viewport-percentage-lengths/viewport-percentage-image-size.html

* platform/Length.h:
(WebCore::Length::isSpecified):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):

LayoutTests:

* css3/viewport-percentage-lengths/resources: Added.
* css3/viewport-percentage-lengths/resources/colorsquare.png: Added.
* css3/viewport-percentage-lengths/viewport-percentage-image-size-expected.html: Added.
* css3/viewport-percentage-lengths/viewport-percentage-image-size.html: Added.

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

8 years agoCSSStyleDeclaration.getPropertyValue() for 'border-radius' returns null when value...
commit-queue@webkit.org [Sat, 14 Apr 2012 21:05:00 +0000 (21:05 +0000)]
CSSStyleDeclaration.getPropertyValue() for 'border-radius' returns null when value is set
https://bugs.webkit.org/show_bug.cgi?id=80736

Patch by Joe Thomas <joethomas@motorola.com> on 2012-04-14
Reviewed by Antti Koivisto.

Added support for fetching the value of 'border-radius' CSS property which was missing.

Source/WebCore:

Test: fast/css/border-radius-property-value.html

* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

* fast/css/border-radius-property-value-expected.txt: Added.
* fast/css/border-radius-property-value.html: Added.

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

8 years ago[WK2] Set WebKitTestRunner's WebProcess cache model to DocumentBrowser.
commit-queue@webkit.org [Sat, 14 Apr 2012 18:29:17 +0000 (18:29 +0000)]
[WK2] Set WebKitTestRunner's WebProcess cache model to DocumentBrowser.
https://bugs.webkit.org/show_bug.cgi?id=81945

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-04-14
Reviewed by Dan Bernstein.

Tools:

WebProcess's default cache model is DocumentViewer. When DocumentViewer model is on,
the PageCache's capacity is set to 0. Tests that are enabling 'WebKitUsesPageCachePreferenceKey' expect
PageCache to be functional.

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):

LayoutTests:

Re-enable 2 tests where WebKitUsesPageCachePreferenceKey is set.

* platform/mac-wk2/Skipped:

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

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=83826
hyatt@apple.com [Sat, 14 Apr 2012 18:15:47 +0000 (18:15 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=83826

Wrong Font code path was chosen after r114032. The TextRun constructor has an additional argument that
needs to be included if rounding hacks are mentioned.

Reviewed by Dan Bernstein.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawTextInternal):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::paintItemForeground):
* rendering/break_lines.cpp:
(WebCore::nextBreakablePosition):

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

8 years ago[Cairo] ImageBuffer::toDataURL(): improve error handling, add mimeType ASSERTs
noel.gordon@gmail.com [Sat, 14 Apr 2012 09:34:27 +0000 (09:34 +0000)]
[Cairo] ImageBuffer::toDataURL(): improve error handling, add mimeType ASSERTs
https://bugs.webkit.org/show_bug.cgi?id=83569

Reviewed by Eric Seidel.

No new tests. Covered by exiting fast/canvas/*toDataURL* tests.

* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::writeFunction): Return write success or failure with the appropriate
cairo status code per http://cairographics.org/manual/cairo-PNG-Support.html
(WebCore::ImageBuffer::toDataURL): Add mimeType ASSERT()s. <canvas> ensures that
a valid mimeType (supported by the port) is sent to toDataURL() calls. Check for
encoding failure and return "data:," if so.

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

8 years ago[Chromium] Avoid unnecessary full tile updates for checkerboard tiles.
commit-queue@webkit.org [Sat, 14 Apr 2012 06:02:08 +0000 (06:02 +0000)]
[Chromium] Avoid unnecessary full tile updates for checkerboard tiles.
https://bugs.webkit.org/show_bug.cgi?id=83804

Patch by David Reveman <reveman@chromium.org> on 2012-04-13
Reviewed by James Robinson.

Source/WebCore:

Cleanup code that determines if we need to use a buffered update and
avoid buffering of tiles that are not in use by the impl thread.

Tests: CCLayerTreeHostTestAtomicCommitWithPartialUpdate.runMultiThread
       TiledLayerChromiumTest.partialUpdates

* platform/graphics/chromium/TiledLayerChromium.cpp:
(UpdatableTile):
(WebCore::UpdatableTile::UpdatableTile):
(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::tileOnlyNeedsPartialUpdate):
(WebCore::TiledLayerChromium::tileNeedsBufferedUpdate):
(WebCore::TiledLayerChromium::updateTiles):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::bufferedUpdates):
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):

Source/WebKit/chromium:

* tests/CCLayerTreeHostTest.cpp:
(WTF::setLayerPropertiesForTesting):
(WTF):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::beginTest):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::layout):
(WTF::setTestLayerPropertiesForTesting):
(WTF::CCLayerTreeHostTestLayerOcclusion::beginTest):
(WTF::CCLayerTreeHostTestLayerOcclusionWithFilters::beginTest):
(WTF::CCLayerTreeHostTestManySurfaces::beginTest):
* tests/TiledLayerChromiumTest.cpp:
(WTF::TEST):

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

8 years ago[chromium] Cleanup texture memory eviction when LayerTreeHost becomes invisible
danakj@chromium.org [Sat, 14 Apr 2012 03:32:40 +0000 (03:32 +0000)]
[chromium] Cleanup texture memory eviction when LayerTreeHost becomes invisible
https://bugs.webkit.org/show_bug.cgi?id=83899

Reviewed by Adrienne Walker.

When a LTH becomes invisible, the texture eviction is spread out across
two different functions and is not entirely clear. We move all the logic
together into a single place in didBecomeInvisibleOnImplThread() and
make the consequences of the current code more clear.

Covered by existing tests.

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::deleteContentsTexturesOnImplThread):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):

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

8 years ago[chromium] There is no Color(float, float, float) constructor, fix an attempt to...
thakis@chromium.org [Sat, 14 Apr 2012 03:07:21 +0000 (03:07 +0000)]
[chromium] There is no Color(float, float, float) constructor, fix an attempt to call it.
https://bugs.webkit.org/show_bug.cgi?id=83920

Reviewed by James Robinson.

Found by clang:
  third_party/WebKit/Source/WebKit/chromium/tests/LayerChromiumTest.cpp:508:89:error: implicit conversion turns literal floating-point number into integer: 'float' to 'int' [-Werror,-Wliteral-conversion]
  EXECUTE_AND_VERIFY_SET_NEEDS_COMMIT_BEHAVIOR(1, testLayer->setBackgroundColor(Color(0.4f, 0.4f, 0.4f)));
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~

* tests/LayerChromiumTest.cpp:

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

8 years agoUnreviewed, rolling out r114036.
commit-queue@webkit.org [Sat, 14 Apr 2012 03:06:50 +0000 (03:06 +0000)]
Unreviewed, rolling out r114036.
http://trac.webkit.org/changeset/114036
https://bugs.webkit.org/show_bug.cgi?id=83969

Breaks gmail.com causing it to never finish loading (Requested
by danakj on #webkit).

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

Source/WebCore:

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNamedConstructorCallback):
(GenerateImplementation):
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::createPrototype):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore):
* bindings/v8/NPV8Object.cpp:
(WebCore::npObjectTypeInfo):
* bindings/v8/V8BindingPerContextData.cpp:
(WebCore::V8BindingPerContextData::init):
(WebCore::V8BindingPerContextData::createWrapperFromCacheSlowCase):
(WebCore::V8BindingPerContextData::constructorForTypeSlowCase):
* bindings/v8/V8BindingPerContextData.h:
(V8BindingPerContextData):
* bindings/v8/V8HiddenPropertyName.h:
(WebCore):
* bindings/v8/WrapperTypeInfo.h:
(WrapperTypeInfo):
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore):
* dom/NodeList.idl:

LayoutTests:

* fast/dom/HTMLSelectElement/named-options-expected.txt:
* fast/dom/HTMLSelectElement/script-tests/named-options.js:
* fast/dom/NodeList/node-list-array-class-expected.txt: Removed.
* fast/dom/NodeList/node-list-array-class.html: Removed.
* fast/dom/NodeList/nodelist-item-call-as-function-expected.txt:
* fast/dom/everything-to-string-expected.txt:
* fast/dom/prototype-inheritance-2-expected.txt:
* fast/js/recursion-limit-equal-expected.txt:
* inspector/console/command-line-api-expected.txt:
* inspector/console/console-dir-expected.txt:
* inspector/console/console-format-collections-expected.txt:
* jquery/traversing-expected.txt:
* platform/chromium/fast/dom/HTMLSelectElement/named-options-expected.txt: Removed.
* platform/chromium/fast/dom/everything-to-string-expected.txt: Removed.
* platform/chromium/inspector/console/command-line-api-expected.txt: Removed.
* platform/chromium/inspector/console/console-dir-expected.txt:
* platform/chromium/inspector/console/console-format-collections-expected.txt:
* platform/chromium/jquery/traversing-expected.txt: Removed.
* platform/mac/fast/dom/prototype-inheritance-2-expected.txt:

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

8 years ago[chromium] Add null pointer check to animatePageScale
commit-queue@webkit.org [Sat, 14 Apr 2012 03:02:00 +0000 (03:02 +0000)]
[chromium] Add null pointer check to animatePageScale
https://bugs.webkit.org/show_bug.cgi?id=83940

Patch by Alexandre Elias <aelias@google.com> on 2012-04-13
Reviewed by James Robinson.

Add null pointer check to startPageScaleAnimation.

If the root scroll layer goes away in the middle of a page scale
animation, there can be a null pointer access here.

No new tests.

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::animatePageScale):

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

8 years agoTwo lineboxcontain tests are failing
jchaffraix@webkit.org [Sat, 14 Apr 2012 02:33:09 +0000 (02:33 +0000)]
Two lineboxcontain tests are failing
https://bugs.webkit.org/show_bug.cgi?id=82742

Reviewed by Ojan Vafai.

* platform/mac/fast/block/lineboxcontain/block-glyphs-replaced-expected.txt:
* platform/mac/fast/block/lineboxcontain/glyphs-expected.txt:
Rebaselined.

* platform/mac/Skipped:
* platform/mac/test_expectations.txt:
Unskip some tests that are either rebaselined or now passing due to
r112582 re-adding some of the RenderLayers removed by r110072.

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

8 years ago[chromium] Replicas should be included in the computed occlusion
danakj@chromium.org [Sat, 14 Apr 2012 01:58:23 +0000 (01:58 +0000)]
[chromium] Replicas should be included in the computed occlusion
https://bugs.webkit.org/show_bug.cgi?id=82262

Reviewed by Adrienne Walker.

Source/WebCore:

When merging a surface's occlusion up to its target, make a copy of it
where the replica will be as well, and make sure that occlusion from a
RenderSurface does not leave its clipRect.

Unit test: CCOcclusionTrackerTestReplicaDoesOcclude
           CCOcclusionTrackerTestReplicaWithClipping
           CCOcclusionTrackerTestSurfaceChildOfSurface

* platform/graphics/chromium/RenderSurfaceChromium.cpp:
(WebCore::RenderSurfaceChromium::hasReplica):
(WebCore):
* platform/graphics/chromium/RenderSurfaceChromium.h:
(RenderSurfaceChromium):
* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
(WebCore::transformSurfaceOpaqueRegion):
(WebCore::::leaveToTargetRenderSurface):

Source/WebKit/chromium:

* tests/CCOcclusionTrackerTest.cpp:
(CCOcclusionTrackerTestReplicaDoesOcclude):
(WebKitTests::CCOcclusionTrackerTestReplicaDoesOcclude::runMyTest):
(WebKitTests):
(CCOcclusionTrackerTestReplicaWithClipping):
(WebKitTests::CCOcclusionTrackerTestReplicaWithClipping::runMyTest):
(CCOcclusionTrackerTestSurfaceChildOfSurface):
(WebKitTests::CCOcclusionTrackerTestSurfaceChildOfSurface::runMyTest):

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

8 years agoAdd layout test case for JavaScriptAudioNode.
commit-queue@webkit.org [Sat, 14 Apr 2012 01:30:36 +0000 (01:30 +0000)]
Add layout test case for JavaScriptAudioNode.
https://bugs.webkit.org/show_bug.cgi?id=83747

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

* webaudio/javascriptaudionode-expected.txt: Added.
* webaudio/javascriptaudionode.html: Added.

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

8 years agoUnreviewed, rolling out r114185.
commit-queue@webkit.org [Sat, 14 Apr 2012 01:29:00 +0000 (01:29 +0000)]
Unreviewed, rolling out r114185.
http://trac.webkit.org/changeset/114185
https://bugs.webkit.org/show_bug.cgi?id=83967

Broke a bunch of JavaScript related tests (Requested by
andersca on #webkit).

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

* runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
* runtime/CommonIdentifiers.h:
* tests/mozilla/ecma/Array/15.4.4.2.js:
(getTestCases):

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

8 years agoconvolution-mono-mono test passes now
commit-queue@webkit.org [Sat, 14 Apr 2012 01:27:13 +0000 (01:27 +0000)]
convolution-mono-mono test passes now
https://bugs.webkit.org/show_bug.cgi?id=83793

Patch by Raymond Toy <rtoy@google.com> on 2012-04-13
Reviewed by Eric Seidel.

* platform/chromium/test_expectations.txt: Delete entry.

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

8 years agoAudioContext createChannelMerger() method should have optional argument for number...
commit-queue@webkit.org [Sat, 14 Apr 2012 01:25:30 +0000 (01:25 +0000)]
AudioContext createChannelMerger() method should have optional argument for number of inputs.
https://bugs.webkit.org/show_bug.cgi?id=83759

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

Check https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html for the optional argument.

Source/WebCore:

Test: webaudio/audiochannelmerger-basic.html

* Modules/webaudio/AudioChannelMerger.cpp:
(WebCore):
(WebCore::AudioChannelMerger::create):
(WebCore::AudioChannelMerger::AudioChannelMerger):
* Modules/webaudio/AudioChannelMerger.h:
(AudioChannelMerger):
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::createChannelMerger):
(WebCore):
* Modules/webaudio/AudioContext.h:
(AudioContext):
* Modules/webaudio/AudioContext.idl:

LayoutTests:

* webaudio/audiochannelmerger-basic-expected.txt: Added.
* webaudio/audiochannelmerger-basic.html: Added.

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

8 years agoDon't rely on fixed offsets to patch calls
barraclough@apple.com [Sat, 14 Apr 2012 01:20:33 +0000 (01:20 +0000)]
Don't rely on fixed offsets to patch calls
https://bugs.webkit.org/show_bug.cgi?id=83966

Rubber stamped by Oliver Hunt.

These aren't being used anywhere!

* jit/JIT.h:
* jit/JITCall.cpp:
(JSC::JIT::compileOpCall):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileOpCall):

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

8 years ago[chromium] Remove viewport memory restrictions
danakj@chromium.org [Sat, 14 Apr 2012 00:42:00 +0000 (00:42 +0000)]
[chromium] Remove viewport memory restrictions
https://bugs.webkit.org/show_bug.cgi?id=83316

Reviewed by Adrienne Walker.

We remove the memory restriction on web pages based on viewport size
on desktop. This is causing pages that have complex use of layers to
end up hitting our memory limits, and moreso when the window is small.
Page complexity is not really a function of the viewport size.

We drop the mininum memory limit entirely, and just evict all
unprotected textures instead.

Covered by existing tests.

* platform/graphics/chromium/TextureManager.cpp:
(WebCore::TextureManager::highLimitBytes):
(WebCore::TextureManager::reclaimLimitBytes):
* platform/graphics/chromium/TextureManager.h:
(TextureManager):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::beginCommitOnImplThread):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):
(WebCore::CCLayerTreeHost::updateLayers):

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

8 years agoOptimize tracking of intruding floats being removed from RenderBlock during layout
commit-queue@webkit.org [Sat, 14 Apr 2012 00:38:25 +0000 (00:38 +0000)]
Optimize tracking of intruding floats being removed from RenderBlock during layout
https://bugs.webkit.org/show_bug.cgi?id=82928

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

Performance tweaks in RenderBlock layout as a follow up to r112935.

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

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

8 years ago[CSSRegions]Implement NamedFlow::contentNodes attribute
mihnea@adobe.com [Sat, 14 Apr 2012 00:36:10 +0000 (00:36 +0000)]
[CSSRegions]Implement NamedFlow::contentNodes attribute
https://bugs.webkit.org/show_bug.cgi?id=80134

Reviewed by David Hyatt.

Source/WebCore:

The named flow content nodes collection contains those nodes with webkitFlowInto property set to 'flow'.
In the list, the nodes are placed in document order. Nodes with display:none are also part of the list.
The list of nodes is returned as a static node list.

The content nodes are stored in RenderNamedFlowThread. The content nodes are added to the list in NodeRenderingContext::moveToFlowThreadIfNeeded
and removed from the list in Element::detach. When an element -webkit-flow-into property is changed, the element is detached and attached.
I have also added a bit in NodeFlags to mark that an element is part of a named flow (and the corresponding inNamedFlow/setInNamedFlow/clearInNamedFlow functions).

Test: fast/regions/webkit-named-flow-content-nodes.html

* dom/Document.cpp:
(WebCore::Document::webkitGetFlowByName):
* dom/Document.h:
* dom/Element.cpp:
(WebCore::Element::detach):
* dom/Node.h:
(WebCore::Node::inNamedFlow):
(WebCore::Node::setInNamedFlow):
(WebCore::Node::clearInNamedFlow):
(Node):
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
* dom/WebKitNamedFlow.cpp:
(WebCore::WebKitNamedFlow::contentNodes):
(WebCore):
* dom/WebKitNamedFlow.h:
(WebKitNamedFlow):
* dom/WebKitNamedFlow.idl:
* rendering/FlowThreadController.cpp:
(WebCore::FlowThreadController::registerNamedFlowContentNode):
(WebCore):
(WebCore::FlowThreadController::unregisterNamedFlowContentNode):
* rendering/FlowThreadController.h:
(FlowThreadController):
* rendering/RenderNamedFlowThread.cpp:
(WebCore):
(WebCore::RenderNamedFlowThread::registerNamedFlowContentNode):
(WebCore::RenderNamedFlowThread::unregisterNamedFlowContentNode):
* rendering/RenderNamedFlowThread.h:
(WebCore):
(RenderNamedFlowThread):
(WebCore::RenderNamedFlowThread::contentNodes):
(WebCore::RenderNamedFlowThread::hasContentNode):

LayoutTests:

* fast/regions/webkit-named-flow-content-nodes-expected.txt: Added.
* fast/regions/webkit-named-flow-content-nodes.html: Added.

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

8 years agoRemove the calls to CRASH() from ResourceLoader.cpp.
jberlin@webkit.org [Sat, 14 Apr 2012 00:34:19 +0000 (00:34 +0000)]
Remove the calls to CRASH() from ResourceLoader.cpp.
https://bugs.webkit.org/show_bug.cgi?id=83962

Reviewed by Alexey Proskuryakov.

They were added in r91316 to aid debugging for the issue fixed in r105556 and r106130.

* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequest):
(WebCore::ResourceLoader::didSendData):
(WebCore::ResourceLoader::didReceiveResponse):
(WebCore::ResourceLoader::didReceiveData):
(WebCore::ResourceLoader::didFinishLoading):
(WebCore::ResourceLoader::didFail):
(WebCore::ResourceLoader::wasBlocked):
(WebCore::ResourceLoader::cannotShowURL):
(WebCore::ResourceLoader::shouldUseCredentialStorage):
(WebCore::ResourceLoader::willCacheResponse):

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

8 years agoREGRESSION(r102190) [chromium] text rendering (font and font size) in some Arabic...
xji@chromium.org [Sat, 14 Apr 2012 00:33:09 +0000 (00:33 +0000)]
REGRESSION(r102190) [chromium] text rendering (font and font size) in some Arabic/Persian page is wrong
when using certain fonts
https://bugs.webkit.org/show_bug.cgi?id=83523

Reviewed by Kent Tamura.

Revert r102190.
Convert characters being treatAsSpace to white space.

* platform/graphics/chromium/UniscribeHelper.cpp:
(WebCore::UniscribeHelper::fillRuns):
(WebCore::UniscribeHelper::adjustSpaceAdvances):

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

8 years ago[chromium] Remove fallback code for "Missing plug-in" string.
commit-queue@webkit.org [Sat, 14 Apr 2012 00:27:34 +0000 (00:27 +0000)]
[chromium] Remove fallback code for "Missing plug-in" string.
https://bugs.webkit.org/show_bug.cgi?id=81907

Patch by Bernhard Bauer <bauerb@google.com> on 2012-04-13
Reviewed by Adam Barth.

* src/LocalizedStrings.cpp:
(WebCore::missingPluginText):

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

8 years agoArray.prototype.toString and Array.prototype.toLocaleString should be generic
commit-queue@webkit.org [Sat, 14 Apr 2012 00:26:25 +0000 (00:26 +0000)]
Array.prototype.toString and Array.prototype.toLocaleString should be generic
https://bugs.webkit.org/show_bug.cgi?id=81588

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

* runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
* runtime/CommonIdentifiers.h:
* tests/mozilla/ecma/Array/15.4.4.2.js:
(getTestCases.array.item.new.TestCase):
(getTestCases):

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

8 years agoChange how the Web Insector is installed on Mac builds.
timothy@apple.com [Sat, 14 Apr 2012 00:11:16 +0000 (00:11 +0000)]
Change how the Web Insector is installed on Mac builds.

<rdar://problem/10857918>

Reviewed by Mark Rowe.

* WebCore.xcodeproj/project.pbxproj: Updated Copy Inspector Resources
and Streamline Inspector Source build phases.

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

8 years agoDon't rely on fixed offsets to patch method checks
barraclough@apple.com [Fri, 13 Apr 2012 23:44:25 +0000 (23:44 +0000)]
Don't rely on fixed offsets to patch method checks
https://bugs.webkit.org/show_bug.cgi?id=83958

Reviewed by Oliver Hunt.

* bytecode/StructureStubInfo.h:
    - Add fields for the method check info.
* jit/JIT.cpp:
(JSC::PropertyStubCompilationInfo::copyToStubInfo):
    - Store the offsets on the stub info, instead of asserting.
* jit/JIT.h:
    - Delete all the method check related offsets.
* jit/JITPropertyAccess.cpp:
(JSC::JIT::patchMethodCallProto):
    - Use the offset from the stubInfo.
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
    - Pass the stubInfo to patchMethodCallProto.

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

8 years agoRebaseline some compositing tests. Some were affected by the colorspace of
simon.fraser@apple.com [Fri, 13 Apr 2012 23:44:05 +0000 (23:44 +0000)]
Rebaseline some compositing tests. Some were affected by the colorspace of
the sample image changing.

* compositing/images/direct-pdf-image-expected.png:
* compositing/repaint/newly-composited-repaint-rect-expected.png:
* compositing/visibility/visibility-image-layers-expected.png:
* compositing/visibility/visibility-simple-video-layer-expected.png:
* platform/mac/compositing/reflections/reflection-in-composited-expected.png:
* platform/mac/compositing/reflections/simple-composited-reflections-expected.png:

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

8 years agofast/dom/Window/window-property-descriptors.html is too much work to maintain
abarth@webkit.org [Fri, 13 Apr 2012 23:43:01 +0000 (23:43 +0000)]
fast/dom/Window/window-property-descriptors.html is too much work to maintain
https://bugs.webkit.org/show_bug.cgi?id=83915

Reviewed by Alexey Proskuryakov.

The goal of this test is to remind us whenever we add something to the
global scope.  In practice, however, this test is a lot of work to
maintain because every port has different features enabled, which means
every port has a different list of things in the global scope.  It's
very difficult to make changes without causing this test to go red on a
number of bots.

Rather than use this test to monitor the global scope, we're better off
paying attention to the IDL files.  If folks are interested in changes
to what is exposed to JavaScript, they can subscribe to IDL changes
using a watchlist.  (That's what I do, and it works pretty well.)

* fast/dom/Window/script-tests/window-property-descriptors.js: Removed.
* fast/dom/Window/window-property-descriptors.html: Removed.
* platform/chromium/fast/dom/Window/window-property-descriptors-expected.txt: Removed.
* platform/efl/fast/dom/Window/window-property-descriptors-expected.txt: Removed.
* platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt: Removed.
* platform/mac/fast/dom/Window/window-property-descriptors-expected.txt: Removed.
* platform/qt-5.0-wk2/fast/dom/Window/window-property-descriptors-expected.txt: Removed.
* platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt: Removed.
* platform/qt/fast/dom/Window/window-property-descriptors-expected.png: Removed.
* platform/qt/fast/dom/Window/window-property-descriptors-expected.txt: Removed.
* platform/win/fast/dom/Window/window-property-descriptors-expected.txt: Removed.

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

8 years agoVideo at apple.com gets standard controls in addition to custom controls after return...
jer.noble@apple.com [Fri, 13 Apr 2012 23:31:00 +0000 (23:31 +0000)]
Video at apple.com gets standard controls in addition to custom controls after returning from full screen
https://bugs.webkit.org/show_bug.cgi?id=83939

Reviewed by Eric Carlson.

Source/WebCore:

No new tests; DRT and WKTR don't have the infrastructure to test full-screen animation related bugs.

Instead of asking the media element whether it is in full screen or not, rely on when the media root element
was told that it enteredFullscreen() or exitedFullscreen(), which may occur at a different time than the
media element due to animations.

* html/shadow/MediaControlRootElement.cpp:
(WebCore::MediaControlRootElement::reset):
(WebCore::MediaControlRootElement::playbackStarted):
(WebCore::MediaControlRootElement::enteredFullscreen):
(WebCore::MediaControlRootElement::exitedFullscreen):
(WebCore::MediaControlRootElement::defaultEventHandler):
(WebCore::MediaControlRootElement::startHideFullscreenControlsTimer):
(WebCore::MediaControlRootElement::hideFullscreenControlsTimerFired):
* html/shadow/MediaControlRootElement.h:
(MediaControlRootElement): Added m_isFullscreen;

Source/WebKit2:

So that the media controls don't show up momentarily during full screen animations, call setAnimatingFullScreen(true)
before calling will{Enter,Exit}FullScreen(), so that the CSS rule for full screen animation will be in effect
immediately.

Similarly, call setAnimatingFullScreen(false) after calling did{Enter,Exit}FullScreen, so that the full screen media
controls don't momentarily appear at the end of an animation.

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController enterFullScreen:]):
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController exitFullScreen]):
(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):

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

8 years agofullscreen/video-controls-drag.html failing on Mac
jer.noble@apple.com [Fri, 13 Apr 2012 23:27:38 +0000 (23:27 +0000)]
fullscreen/video-controls-drag.html failing on Mac
https://bugs.webkit.org/show_bug.cgi?id=81176

Reviewed by Eric Carlson.

Source/WebCore:

No new tests.  Fixes fullscreen/video-controls-drag.html.

Regressed in r110409.  When the -webkit-media-controls-panel were changed
from position:absolute to position:relative, this broke dragging of the
controls in fullscreen, which relies on the panel being absolutely positioned
to do its drag positioning. Change the way drag positioning is calculated to
accommodate position:relative.

* css/fullscreenQuickTime.css:
(video:-webkit-full-screen::-webkit-media-controls-panel): Instead of bottom:50px,
    use margin-bottom:50px to push panel up from the bottom of the screen.
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlPanelElement::startDrag): Do not ask for the current renderer location.
(WebCore::MediaControlPanelElement::continueDrag): Use the delta between the event locations
    only to calculate the new panel position.
* html/shadow/MediaControlElements.h:

LayoutTests:

Removed expected failing results from platform/mac.

* platform/mac/fullscreen/video-controls-drag-expected.txt: Removed.

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

8 years agoFix two compositing animation tests to not have flakey pixel results
simon.fraser@apple.com [Fri, 13 Apr 2012 23:25:34 +0000 (23:25 +0000)]
Fix two compositing animation tests to not have flakey pixel results
https://bugs.webkit.org/show_bug.cgi?id=83957

Reviewed by Dean Jackson.

Fix these tests to use the pause animation API by providing an animation
name in the expected data. There's no need to start the animations by hand.

* compositing/reflections/animation-inside-reflection.html:
* compositing/reflections/nested-reflection-animated.html:
* platform/mac/compositing/reflections/animation-inside-reflection-expected.png:
* platform/mac/compositing/reflections/nested-reflection-animated-expected.png:

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

8 years agoRebaseline this since svg/custom/resources/green-checker.png changed.
andersca@apple.com [Fri, 13 Apr 2012 23:16:39 +0000 (23:16 +0000)]
Rebaseline this since svg/custom/resources/green-checker.png changed.

* svg/custom/image-with-prefix-in-webarchive-expected.webarchive:

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

8 years agoAvoid use of ::webkit-scrollbar to hide scrollbars, since it doesn't work in WK1
simon.fraser@apple.com [Fri, 13 Apr 2012 22:51:35 +0000 (22:51 +0000)]
Avoid use of ::webkit-scrollbar to hide scrollbars, since it doesn't work in WK1
https://bugs.webkit.org/show_bug.cgi?id=83950

Reviewed by James Robinson.

Remove use of ::webkit-scrollbar from compositing tests, since this doesn't
affect WebKit1 scrollbars.

* compositing/geometry/fixed-position-composited-page-scale-down.html:
* compositing/geometry/fixed-position-composited-page-scale.html:
* compositing/geometry/fixed-position-iframe-composited-page-scale-down.html:
* compositing/geometry/fixed-position-iframe-composited-page-scale.html:
* compositing/geometry/fixed-position-transform-composited-page-scale-down.html:
* compositing/geometry/fixed-position-transform-composited-page-scale.html:
* platform/mac/compositing/geometry/fixed-position-composited-page-scale-down-expected.png:
* platform/mac/compositing/geometry/fixed-position-composited-page-scale-expected.png:
* platform/mac/compositing/geometry/fixed-position-iframe-composited-page-scale-down-expected.png:
* platform/mac/compositing/geometry/fixed-position-iframe-composited-page-scale-expected.png:
* platform/mac/compositing/geometry/fixed-position-transform-composited-page-scale-down-expected.png:
* platform/mac/compositing/geometry/fixed-position-transform-composited-page-scale-expected.png:

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

8 years agoCompositing layers not updated after scroll in WebKit1
simon.fraser@apple.com [Fri, 13 Apr 2012 22:26:47 +0000 (22:26 +0000)]
Compositing layers not updated after scroll in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=83945

Source/WebCore:

Reviewed by James Robinson.

Fix the WebKit1 code path to correctly update compositing layers
after a scroll, by calling updateFixedElementsAfterScrolling() from
scrollPositionChangedViaPlatformWidget().

Covered by existing tests.

* page/FrameView.cpp:
(WebCore::FrameView::scrollPositionChangedViaPlatformWidget):

LayoutTests:

Reviewed by James Robinson.

Replace an incorrect Mac baseline with the correct result which was
already in place for WebKit2.

Remove a passing test from test-expectations.

* compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt:
* platform/mac-wk2/compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt: Removed.
* platform/mac/test_expectations.txt:

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

8 years agoChromium test_expectations suppress platform/chromium/virtual/gpu/fast/canvas/2d...
scheib@chromium.org [Fri, 13 Apr 2012 22:09:06 +0000 (22:09 +0000)]
Chromium test_expectations suppress platform/chromium/virtual/gpu/fast/canvas/2d.imageDataHD.html

Unreviewed.

* platform/chromium/test_expectations.txt:

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

8 years agoFix skipped list.
rniwa@webkit.org [Fri, 13 Apr 2012 22:05:16 +0000 (22:05 +0000)]
Fix skipped list.

* Skipped:

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

8 years agoDon't process filters if the input region is exceptionally large.
dino@apple.com [Fri, 13 Apr 2012 22:02:02 +0000 (22:02 +0000)]
Don't process filters if the input region is exceptionally large.
https://bugs.webkit.org/show_bug.cgi?id=83317

Reviewed by Simon Fraser.

Source/WebCore:

An extremely large element causes problems with filters, either by
taking too long to compute the output or using too much memory. The
filter engine already has some constants for maximum expected size.
Make sure the render tree checks them before deciding to apply
effects.

Tests: css3/filters/huge-region-composited.html
       css3/filters/huge-region.html

* platform/graphics/filters/FilterEffect.cpp:
(WebCore::FilterEffect::apply):
* rendering/FilterEffectRenderer.cpp:
(WebCore):
(WebCore::isFilterSizeValid):
(WebCore::FilterEffectRenderer::build):
(WebCore::FilterEffectRenderer::updateBackingStore):
(WebCore::FilterEffectRendererHelper::beginFilterEffect):
* rendering/FilterEffectRenderer.h:
(FilterEffectRenderer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateOrRemoveFilterEffect):

LayoutTests:

* css3/filters/huge-region-composited-expected.txt: Added.
* css3/filters/huge-region-composited.html: Added.
* css3/filters/huge-region-expected.txt: Added.
* css3/filters/huge-region.html: Added.

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

8 years agoQueue the cuechange event on HTMLTrackElement for proper sorting.
annacc@chromium.org [Fri, 13 Apr 2012 21:45:59 +0000 (21:45 +0000)]
Queue the cuechange event on HTMLTrackElement for proper sorting.
https://bugs.webkit.org/show_bug.cgi?id=83858

Reviewed by Eric Carlson.

Source/WebCore:

No new tests. Updates to media/track/track-cues-cuechange.html and
media/track/track-mode.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::updateActiveTextTrackCues):
    Add HTMLTrackElement's cuechange event to the event queue rather than
    firing it synchronously.
* html/track/LoadableTextTrack.cpp:
    Remove fireCueChangeEvent() as it is no longer used.
* html/track/LoadableTextTrack.h:
    Ditto.
* html/track/TextTrack.h:
(TextTrack):
    Ditto.

LayoutTests:

* media/track/captions-webvtt/captions-fast.vtt:
    Captions were a wee bit too fast: they need to be at least 250ms apart
    for accurate testing as timeupdate events are only fired every 250ms.

* media/track/track-cues-cuechange-expected.txt:
    Changes the order that cuechange events are fired.
* media/track/track-cues-cuechange.html:
    Ditto.

* media/track/track-mode-expected.txt:
    cuechange events are now fired at the proper times.
    Test now checks for all cuechange events (both enter and exit of cues).
* media/track/track-mode.html:
    Ditto.

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

8 years agoBe more restrictive when adding ScrollableArea's to FrameView's ScrollableArea's map
tonikitoo@webkit.org [Fri, 13 Apr 2012 21:32:53 +0000 (21:32 +0000)]
Be more restrictive when adding ScrollableArea's to FrameView's ScrollableArea's map
https://bugs.webkit.org/show_bug.cgi?id=79611

Reviewed by James Robinson.
Patch by Antonio Gomes <agomes@rim.com>

Source/WebCore:

As of today, any FrameView attached to the Widget-tree or any
RenderLayer whose corresponding RenderBox's style has a 'overflow'
property set to 'auto' is cached in its containing scrollable areas set.
We could be more restrictive about what we in fact want to
cache as scrollable areas, by checking if the element as an overflow
(i.e. more content than its viewport).

* page/FrameView.cpp:
(WebCore::FrameView::setFrameRect):

Whenever the viewport changes, check if we have an scrollable/overflowed
content, and update the cache accordingly.

(WebCore::FrameView::setContentsSize):

Whenever the contents size changes, check if we have a scrollable/overflowed
content, and update the cache accordingly.

(WebCore::FrameView::calculateScrollbarModesForLayout):

Introduces a way to query for the scrollbars by only
taking into account the "rules" set by the web author.
For that, a new enum was added called SrollbarModesCalculationStrategy,
which allows callers to discard for example client-side scrollbar policies
in order to verify if a given frameview is scrollable or not.

(WebCore::FrameView::updateScrollableAreaSet):

Take into account various factors before considering a FrameView as
scrollable. If in the end it is, it gets added to its parent FrameView
scrollable areas map, otherwise removed.

(WebCore):
(WebCore::FrameView::addScrollableArea):

Became unneeded, thus removed.

(WebCore::FrameView::removeScrollableArea):

Whenever a FrameView is removed from the Widget-tree,
remove it from the cache.

* page/FrameView.h:
(FrameView):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateScrollbarsAfterLayout):

Update scrollable area set after layout.

(WebCore::RenderLayer::updateScrollbarsAfterStyleChange):

Update scrollable area set after style changes.

(WebCore::RenderLayer::styleChanged):

Removed the scrollable areas logic detection from it.

(WebCore::RenderLayer::updateScrollableAreaSet):

Updates the containing FrameView scrollable areas cache
only when needed (i.e. an overflow exists).

(WebCore):
* rendering/RenderLayer.h:
(RenderLayer):
* testing/Internals.cpp:
(WebCore::Internals::numberOfScrollableAreas):
(WebCore):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:

Tests: fast/scrolling/scrollable-area-frame-inherited-visibility-hidden.html
       fast/scrolling/scrollable-area-frame-overflow-hidden.html
       fast/scrolling/scrollable-area-frame-overried-inherited-visibility-hidden.html
       fast/scrolling/scrollable-area-frame-scrolling-no-overried-inherited-visibility-hidden.html
       fast/scrolling/scrollable-area-frame-scrolling-no-visibility-hidden-child.html
       fast/scrolling/scrollable-area-frame-scrolling-no.html
       fast/scrolling/scrollable-area-frame-scrolling-yes-display-none.html
       fast/scrolling/scrollable-area-frame-scrolling-yes.html
       fast/scrolling/scrollable-area-frame-visibility-hidden-child.html
       fast/scrolling/scrollable-area-frame-zero-size-and-border.html
       fast/scrolling/scrollable-area-frame.html
       fast/scrolling/scrollable-area-overflow-auto-display-none-in-parent.html
       fast/scrolling/scrollable-area-overflow-auto-display-none.html
       fast/scrolling/scrollable-area-overflow-auto-visibility-hidden-in-parent.html
       fast/scrolling/scrollable-area-overflow-auto-visibility-hidden.html
       fast/scrolling/scrollable-area-overflow-auto-visibility-override.html
       fast/scrolling/scrollable-area-overflow-auto-visibility-visible.html
       fast/scrolling/scrollable-area-overflow-auto.html
       fast/scrolling/scrollable-area-overflow-not-set.html
       fast/scrolling/scrollable-area-overflow-visible.html

LayoutTests:

Reviewed by NOBODY (OOPS!).

Added scrollable area set count tests to many situations observed
in real world sites.

* fast/scrolling/resources/generic-scrollable-content.html: Added.
* fast/scrolling/resources/hidden-generic-scrollable-content.html: Added.
* fast/scrolling/resources/scrollable-area.js: Added.
(runTest):
(end):
* fast/scrolling/resources/scrollable-style.css: Added.
(.inner):
(.offscreen):
* fast/scrolling/scrollable-area-frame-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-inherited-visibility-hidden-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-inherited-visibility-hidden.html: Added.
* fast/scrolling/scrollable-area-frame-overflow-hidden-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-overflow-hidden.html: Added.
* fast/scrolling/scrollable-area-frame-overried-inherited-visibility-hidden-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-overried-inherited-visibility-hidden.html: Added.
* fast/scrolling/scrollable-area-frame-scrolling-no-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-scrolling-no-overried-inherited-visibility-hidden-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-scrolling-no-overried-inherited-visibility-hidden.html: Added.
* fast/scrolling/scrollable-area-frame-scrolling-no-visibility-hidden-child-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-scrolling-no-visibility-hidden-child.html: Added.
* fast/scrolling/scrollable-area-frame-scrolling-no.html: Added.
* fast/scrolling/scrollable-area-frame-scrolling-yes-display-none-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-scrolling-yes-display-none.html: Added.
* fast/scrolling/scrollable-area-frame-scrolling-yes-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-scrolling-yes.html: Added.
* fast/scrolling/scrollable-area-frame-visibility-hidden-child-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-visibility-hidden-child.html: Added.
* fast/scrolling/scrollable-area-frame-zero-size-and-border-expected.txt: Added.
* fast/scrolling/scrollable-area-frame-zero-size-and-border.html: Added.
* fast/scrolling/scrollable-area-frame.html: Added.
* fast/scrolling/scrollable-area-overflow-auto-display-none-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-auto-display-none-in-parent-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-auto-display-none-in-parent.html: Added.
* fast/scrolling/scrollable-area-overflow-auto-display-none.html: Added.
* fast/scrolling/scrollable-area-overflow-auto-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-auto-visibility-hidden-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-auto-visibility-hidden-in-parent-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-auto-visibility-hidden-in-parent.html: Added.
* fast/scrolling/scrollable-area-overflow-auto-visibility-hidden.html: Added.
* fast/scrolling/scrollable-area-overflow-auto-visibility-override-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-auto-visibility-override.html: Added.
* fast/scrolling/scrollable-area-overflow-auto-visibility-visible-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-auto-visibility-visible.html: Added.
* fast/scrolling/scrollable-area-overflow-auto.html: Added.
* fast/scrolling/scrollable-area-overflow-not-set-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-not-set.html: Added.
* fast/scrolling/scrollable-area-overflow-visible-expected.txt: Added.
* fast/scrolling/scrollable-area-overflow-visible.html: Added.

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

8 years agoMake sure that we're using the right compiler for generating derived sources.
andersca@apple.com [Fri, 13 Apr 2012 21:29:54 +0000 (21:29 +0000)]
Make sure that we're using the right compiler for generating derived sources.

Rubber-stamped by Dan Bernstein.

* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoTrack rem unit usage in StyleSheetInternal
antti@apple.com [Fri, 13 Apr 2012 21:23:13 +0000 (21:23 +0000)]
Track rem unit usage in StyleSheetInternal
https://bugs.webkit.org/show_bug.cgi?id=83923

Reviewed by Andreas Kling.

Currently CSSParser sets usesRemUnits flag directly to Document. It should be set to
the stylesheet instead so parser does not need to know about the document. This also
avoids setting the flag unnecessarily when the stylesheet is not used.

* css/CSSGrammar.y:
* css/CSSStyleSheet.cpp:
(WebCore::StyleSheetInternal::StyleSheetInternal):
* css/CSSStyleSheet.h:
(WebCore::StyleSheetInternal::parserSetUsesRemUnits):
(WebCore::StyleSheetInternal::usesRemUnits):
(StyleSheetInternal):
* dom/Document.cpp:
(WebCore):
(WebCore::checkUsesRemUnits):
(WebCore::Document::updateActiveStylesheets):
* dom/Document.h:
(WebCore::Document::usesRemUnits):

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

8 years agoChromium test_expectations TIMOUT mask for fast/canvas/2d.imageDataHD.html
scheib@chromium.org [Fri, 13 Apr 2012 21:19:12 +0000 (21:19 +0000)]
Chromium test_expectations TIMOUT mask for fast/canvas/2d.imageDataHD.html

Unreviewed.

* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] Remove unused compositeToTexture / compositeOffscreen setting
jamesr@google.com [Fri, 13 Apr 2012 21:01:06 +0000 (21:01 +0000)]
[chromium] Remove unused compositeToTexture / compositeOffscreen setting
https://bugs.webkit.org/show_bug.cgi?id=83733

Reviewed by Adrienne Walker.

Source/Platform:

Remove compositeOffscreen setting. This was an experiment that is no longer needed.

* chromium/public/WebLayerTreeView.h:
(WebKit::WebLayerTreeView::Settings::Settings):
(Settings):

Source/WebCore:

Remove compositeOffscreen setting and implementation. This was an experiment that is no longer needed.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::finishDrawingFrame):
(WebCore::LayerRendererChromium::useRenderSurface):
(WebCore::LayerRendererChromium::setScissorToRect):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromium):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore::CCSettings::CCSettings):
(CCSettings):

Source/WebKit/chromium:

Remove compositeOffscreen / compositeToTexture setting. This was an experiment that is no longer needed.

* public/WebSettings.h:
* src/WebLayerTreeView.cpp:
(WebKit::WebLayerTreeView::Settings::operator CCSettings):
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::WebSettingsImpl):
* src/WebSettingsImpl.h:
(WebSettingsImpl):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

Tools:

Remove compositeOffscreen / compositeToTexture setting. This was an experiment that is no longer needed.

* DumpRenderTree/chromium/DumpRenderTree.cpp:
(main):
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::TestShell):
(TestShell::resetWebSettings):
* DumpRenderTree/chromium/TestShell.h:
(TestShell):
* DumpRenderTree/chromium/WebPreferences.cpp:
(WebPreferences::reset):
(WebPreferences::applyTo):
* DumpRenderTree/chromium/WebPreferences.h:
(WebPreferences):

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

8 years ago REGRESSION (XHR Caching): Uncacheable responses sent by Rails through Apache...
ap@apple.com [Fri, 13 Apr 2012 20:57:10 +0000 (20:57 +0000)]
    REGRESSION (XHR Caching): Uncacheable responses sent by Rails through Apache are cached
        https://bugs.webkit.org/show_bug.cgi?id=83925
        <rdar://problem/11231790>

        Reviewed by Antti Koivisto.

        Added subtests to http/tests/cache/subresource-expiration-2.html.

        * platform/network/ResourceResponseBase.cpp:
        (WebCore::ResourceResponseBase::parseCacheControlDirectives): Honor first max-age
        instead of the last. New behavior matches both Firefox and IE.

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

8 years ago[chromium] Move WebVideoFrame into Platform and remove WebCore::VideoFrameChromium...
jamesr@google.com [Fri, 13 Apr 2012 20:43:24 +0000 (20:43 +0000)]
[chromium] Move WebVideoFrame into Platform and remove WebCore::VideoFrameChromium wrapper API
https://bugs.webkit.org/show_bug.cgi?id=83851

Reviewed by Adam Barth.

Source/Platform:

Move WebVideoFrame API into Platform.

* Platform.gypi:
* chromium/public/WebVideoFrame.h: Renamed from Source/WebCore/platform/graphics/chromium/VideoFrameChromium.h.
(WebKit):
(WebVideoFrame):
(WebKit::WebVideoFrame::~WebVideoFrame):
(WebKit::WebVideoFrame::format):
(WebKit::WebVideoFrame::width):
(WebKit::WebVideoFrame::height):
(WebKit::WebVideoFrame::planes):
(WebKit::WebVideoFrame::stride):
(WebKit::WebVideoFrame::data):
(WebKit::WebVideoFrame::textureId):
(WebKit::WebVideoFrame::textureTarget):
* chromium/src/WebVideoFrame.cpp: Renamed from Source/WebCore/platform/graphics/chromium/VideoFrameChromium.cpp.
(WebKit):

Source/WebCore:

Remove VideoFrameChromium wrapper and converts WebCore code to using the Platform WebVideoFrame API directly.
Some utility code that previously existed on VideoFrameChromium and only had one caller, such as doing
width/height adjustements for YV12 frames, is moved into the calling code (CCVideoLayerImpl).

Covered by existing media/ and compositing/ layout tests.

* WebCore.gypi:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawYUV):
(WebCore::LayerRendererChromium::drawRGBA):
(WebCore::LayerRendererChromium::copyFrameToTextures):
* platform/graphics/chromium/LayerRendererChromium.h:
* platform/graphics/chromium/VideoFrameProvider.h:
(VideoFrameProvider):
* platform/graphics/chromium/cc/CCVideoDrawQuad.cpp:
(WebCore::CCVideoDrawQuad::create):
(WebCore::CCVideoDrawQuad::CCVideoDrawQuad):
* platform/graphics/chromium/cc/CCVideoDrawQuad.h:
(WebKit):
(CCVideoDrawQuad):
(WebCore::CCVideoDrawQuad::frame):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore):
(WebCore::convertVFCFormatToGC3DFormat):
(WebCore::CCVideoLayerImpl::willDraw):
(WebCore::videoFrameDimension):
(WebCore::hasPaddingBytes):
(WebCore::CCVideoLayerImpl::computeVisibleSize):
(WebCore::CCVideoLayerImpl::reserveTextures):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
(WebKit):

Source/WebKit/chromium:

Moves the WebVideoFrame interface into Platform and removes the now unnecessary VideoFrameChromiumImpl adapter
implementation.

* WebKit.gyp:
* public/WebVideoFrame.h:
* src/AssertMatchingEnums.cpp:
* src/VideoFrameChromiumImpl.cpp: Removed.
* src/VideoFrameChromiumImpl.h: Removed.
* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::getCurrentFrame):
(WebKit::WebMediaPlayerClientImpl::putCurrentFrame):
(WebKit::WebMediaPlayerClientImpl::supportsType):
* src/WebMediaPlayerClientImpl.h:
(WebMediaPlayerClientImpl):

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

8 years agoChromium: Should enable -webkit-image-set
scheib@chromium.org [Fri, 13 Apr 2012 19:43:58 +0000 (19:43 +0000)]
Chromium: Should enable -webkit-image-set
https://bugs.webkit.org/show_bug.cgi?id=81859

Patch by Rob Flack <flackr@chromium.org> on 2012-04-13
Reviewed by Adam Barth.

Source/WebCore:

Test: fast/css/image-set-parsing.html

* WebCore.gypi:

Source/WebKit/chromium:

* features.gypi:

LayoutTests:

* platform/chromium/test_expectations.txt:

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

8 years agoIntegrate IETC CSS : grid layout tests
tomz@codeaurora.org [Fri, 13 Apr 2012 19:39:33 +0000 (19:39 +0000)]
Integrate IETC CSS : grid layout tests
https://bugs.webkit.org/show_bug.cgi?id=83830

Patch by Dave Tharp < dtharp@codeaurora.org> on 2012-04-13
Reviewed by Adam Barth

* ietestcenter/css3/grid/display-grid-001.htm: Added.
* ietestcenter/css3/grid/display-grid-002.htm: Added.
* ietestcenter/css3/grid/grid-column-001.htm: Added.
* ietestcenter/css3/grid/grid-column-002.htm: Added.
* ietestcenter/css3/grid/grid-column-003.htm: Added.
* ietestcenter/css3/grid/grid-columns-001.htm: Added.
* ietestcenter/css3/grid/grid-items-001.htm: Added.
* ietestcenter/css3/grid/grid-items-002.htm: Added.
* ietestcenter/css3/grid/grid-items-003.htm: Added.
* ietestcenter/css3/grid/grid-items-004.htm: Added.
* ietestcenter/css3/grid/grid-items-005.htm: Added.
* platform/chromium/test_expectations.txt:
* platform/efl/test_expectations.txt:
* platform/gtk/test_expectations.txt:
* platform/mac/test_expectations.txt:
* platform/qt/test_expectations.txt:

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

8 years ago[chromium] Now that the chromium port is using a different dom_storage backend
michaeln@google.com [Fri, 13 Apr 2012 19:33:55 +0000 (19:33 +0000)]
[chromium] Now that the chromium port is using a different dom_storage backend
library in its main browser process, there are a handful of files that should no
longer be included in the build, and a few files than should be deleted
outright, and the webkit api should be modified to reflect the new (and smaller)
contract between the embedder and webkit/webcore.
https://bugs.webkit.org/show_bug.cgi?id=83807

Reviewed by Adam Barth.

Source/WebCore:

No new tests, existing tests apply.

* WebCore.gyp/WebCore.gyp: Exclude several files from the WebCore/storage directory.
* storage/StorageEventDispatcher.h: Delete a stale comment.

Source/WebKit/chromium:

* WebKit.gyp: Delete a few files.
* public/WebStorageNamespace.h:  Remove some unused data members and methods, and annotate close() as deprecated.
* public/platform/WebKitPlatformSupport.h: Annotate a method as deprecated.
* src/StorageAreaProxy.cpp: Remove the include of a deleted file.
* src/StorageEventDispatcherChromium.cpp: Removed.
* src/StorageEventDispatcherImpl.cpp: Added a FIXME comment for upcoming work.
* src/StorageNamespaceProxy.cpp: Modified to no longer call out to the embedder thru the deprecated close() method.
* src/StorageNamespaceProxy.h: Moved some blank lines around.
* src/WebStorageAreaImpl.cpp: Removed.
* src/WebStorageAreaImpl.h: Removed.
* src/WebStorageEventDispatcherImpl.cpp: Cleaned up some cruft.
* src/WebStorageNamespaceImpl.cpp: Removed.
* src/WebStorageNamespaceImpl.h: Removed.

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

8 years agoUnreviewed, rebaselining after r114150.
zandobersek@gmail.com [Fri, 13 Apr 2012 19:32:52 +0000 (19:32 +0000)]
Unreviewed, rebaselining after r114150.

* platform/gtk/fast/dom/Window/window-properties-expected.txt:

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

8 years agowebkitpy build fix. Revert the debug change (number of runs was 2 instead of 20),
rniwa@webkit.org [Fri, 13 Apr 2012 19:26:16 +0000 (19:26 +0000)]
webkitpy build fix. Revert the debug change (number of runs was 2 instead of 20),
and also rebaseline the test results since we ignore the first run now.

* Scripts/webkitpy/performance_tests/perftest.py:
(PageLoadingPerfTest.run):
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPageLoadingPerfTest.test_run):

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

8 years agoDon't rely on fixed offsets to patch get_by_id/put_by_id
barraclough@apple.com [Fri, 13 Apr 2012 19:24:14 +0000 (19:24 +0000)]
Don't rely on fixed offsets to patch get_by_id/put_by_id
https://bugs.webkit.org/show_bug.cgi?id=83924

Reviewed by Oliver Hunt.

Store offsets in the structure stub info, as we do for the DFG JIT.

* assembler/AbstractMacroAssembler.h:
(JSC::AbstractMacroAssembler::differenceBetween):
    - this method can be static (now used from PropertyStubCompilationInfo::copyToStubInfo, will be removed soon!)
* bytecode/StructureStubInfo.h:
    - added new fields for baseline JIT offsets.
* jit/JIT.cpp:
(JSC::PropertyStubCompilationInfo::copyToStubInfo):
    - moved out from JIT::privateCompile.
(JSC::JIT::privateCompile):
    - moved out code to PropertyStubCompilationInfo::copyToStubInfo.
* jit/JIT.h:
(PropertyStubCompilationInfo):
    - added helper functions to initializae PropertyStubCompilationInfo, state to store more offset info.
    - removed many offsets.
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_method_check):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::compileGetByIdSlowCase):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::emitSlow_op_put_by_id):
(JSC::JIT::patchGetByIdSelf):
(JSC::JIT::patchPutByIdReplace):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):
(JSC::JIT::resetPatchGetById):
(JSC::JIT::resetPatchPutById):
    - changed code generation to use new interface to store info on PropertyStubCompilationInfo.
    - changed repatch functions to read offsets from the structure stub info.
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_method_check):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::compileGetByIdSlowCase):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::emitSlow_op_put_by_id):
(JSC::JIT::patchGetByIdSelf):
(JSC::JIT::patchPutByIdReplace):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):
(JSC::JIT::resetPatchGetById):
(JSC::JIT::resetPatchPutById):
    - changed code generation to use new interface to store info on PropertyStubCompilationInfo.
    - changed repatch functions to read offsets from the structure stub info.

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

8 years agoMore rebaselining.
andersca@apple.com [Fri, 13 Apr 2012 19:19:00 +0000 (19:19 +0000)]
More rebaselining.

* platform/mac/fast/dom/Window/window-properties-expected.txt:

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

8 years agoFix some compiler warnings (miscellaneous)
rwlbuis@webkit.org [Fri, 13 Apr 2012 19:02:53 +0000 (19:02 +0000)]
Fix some compiler warnings (miscellaneous)
https://bugs.webkit.org/show_bug.cgi?id=80790

Reviewed by Antonio Gomes.

Fix signed/unsigned comparison warning.

* parser/Lexer.cpp:
(JSC::::record16):

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

8 years agoInclude the error if we fail to initialize the web process sandbox
andersca@apple.com [Fri, 13 Apr 2012 18:49:39 +0000 (18:49 +0000)]
Include the error if we fail to initialize the web process sandbox
https://bugs.webkit.org/show_bug.cgi?id=83927

Reviewed by Alexey Proskuryakov.

* WebProcess/mac/WebProcessMac.mm:
(WebKit::initializeSandbox):

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

8 years agoUnreviewed, rolling out r114140.
scheib@chromium.org [Fri, 13 Apr 2012 18:26:46 +0000 (18:26 +0000)]
Unreviewed, rolling out r114140.
http://trac.webkit.org/changeset/114140
https://bugs.webkit.org/show_bug.cgi?id=83921

Fails fast/css/image-set-parsing.html test it attempts to
introduce. (Requested by scheib on #webkit).

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

Source/WebCore:

* WebCore.gypi:

Source/WebKit/chromium:

* features.gypi:

LayoutTests:

* platform/chromium/fast/css/image-set-parsing-expected.txt: Removed.
* platform/chromium/test_expectations.txt:

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

8 years ago<rdar://problem/10912680> Pixel access canvas APIs do not operate at backing store...
mitz@apple.com [Fri, 13 Apr 2012 18:20:25 +0000 (18:20 +0000)]
<rdar://problem/10912680> Pixel access canvas APIs do not operate at backing store resolution
https://bugs.webkit.org/show_bug.cgi?id=83836

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/canvas/2d.imageDataHD.html

Added getImageDataHD and putImageDataHD functions to CanvasRenderingContext2D, as proposed in
<http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2012-March/035112.html>. The functions
are prefixed with “webkit” for now.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::getImageData): Added this cover function that calls
through to getImageData with LogicalCoordinateSystem.
(WebCore::CanvasRenderingContext2D::webkitGetImageDataHD): Added. Calls through to
getImageData with BackingStoreCoordinateSystem.
(WebCore::CanvasRenderingContext2D::getImageData): Added a CoordinateSystem parameter to this
now-private function. It is passed through to ImageBuffer::getUnmultipliedImageData().
(WebCore::CanvasRenderingContext2D::putImageData): Added this cover function that calls
through to putImageData with LogicalCoordinateSystem.
(WebCore::CanvasRenderingContext2D::webkitPutImageDataHD): Added. Calls through to
putImageData with BackingStoreCoordinateSystem.
(WebCore::CanvasRenderingContext2D::putImageData): Added a CoordinateSystem parameter to this
function. It is passed through to ImageBuffer::putByteArray, and used to compute the rect to
invalidate after the drawing operation.
* html/canvas/CanvasRenderingContext2D.h:
* html/canvas/CanvasRenderingContext2D.idl: Added webkitPutImageDataHD() and
webkitGetImageDataHD().
* platform/graphics/ImageBuffer.h: Added a CoordinateSystem enum with the values
LogicalCoordinateSystem and BackingStoreCoordinateSystem. Added a CoordinateSystem parameter,
which defaults to LogicalCoordinateSystem, to getUnmultipliedImageData,
getPremultipliedImageData, and putByteArray.
* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::getUnmultipliedImageData):
(WebCore::ImageBuffer::getPremultipliedImageData):
(WebCore::ImageBuffer::putByteArray):
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::getUnmultipliedImageData): Now uses the CoordinateSystem parameter to
decide whether to ask ImageBufferDaya::getData() to apply the resolution scale or not.
(WebCore::ImageBuffer::getPremultipliedImageData): Ditto.
(WebCore::ImageBuffer::putByteArray): Now uses the CoordinateSystem parameter to decide
whether to maintain the resolution scale while drawing or not.
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/gtk/ImageBufferGtk.cpp:
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/qt/ImageBufferQt.cpp:
(WebCore::ImageBuffer::getUnmultipliedImageData):
(WebCore::ImageBuffer::getPremultipliedImageData):
(WebCore::ImageBuffer::putByteArray):
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::ImageBuffer::getUnmultipliedImageData):
(WebCore::ImageBuffer::getPremultipliedImageData):
(WebCore::ImageBuffer::putByteArray):
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/wince/ImageBufferWinCE.cpp:
(WebCore::ImageBuffer::getUnmultipliedImageData):
(WebCore::ImageBuffer::getPremultipliedImageData):
(WebCore::ImageBuffer::putByteArray):
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/wx/ImageBufferWx.cpp:
(WebCore::ImageBuffer::getUnmultipliedImageData):
(WebCore::ImageBuffer::getPremultipliedImageData):
(WebCore::ImageBuffer::putByteArray):
(WebCore::ImageBuffer::toDataURL):

LayoutTests:

* fast/canvas/2d.imageDataHD-expected.txt: Added.
* fast/canvas/2d.imageDataHD.html: Added.

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

8 years agoEnable SVG page loading performance tests
rniwa@webkit.org [Fri, 13 Apr 2012 18:16:26 +0000 (18:16 +0000)]
Enable SVG page loading performance tests
https://bugs.webkit.org/show_bug.cgi?id=83861

Reviewed by Adam Barth.

PerformanceTests:

Unskip PageLoad directory and skip tests that load too fast (less than 100ms) and are unstable,
and the ones that take too long to load (more than 20s).

* Skipped:

Tools:

Add support for page loading tests. These are tests without any test running harnesses, and we use
DriverOutput's test_timeout to measure the loading time.

Extracted PerfTest.run and PerfTest.run_failed from PerfTestRunner._run_single_test.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest.run):
(PerfTest):
(PerfTest.run_failed):
(PerfTest.parse_output):
(PerfTest.output_statistics):
(ChromiumStylePerfTest.parse_output):
(PageLoadingPerfTest): Added.
(PageLoadingPerfTest.__init__):
(PageLoadingPerfTest.run): Run the driver 20 times to get the statistics for the loading time.
* Scripts/webkitpy/performance_tests/perftest_unittest.py: Added.
(MockPrinter):
(MockPrinter.__init__):
(MockPrinter.write):
(MainTest):
(MainTest.test_parse_output):
(MainTest.test_parse_output_with_failing_line):
(TestPageLoadingPerfTest):
(TestPageLoadingPerfTest.assertWritten):
(TestPageLoadingPerfTest.MockDriver):
(TestPageLoadingPerfTest.MockDriver.__init__):
(TestPageLoadingPerfTest.MockDriver.run_test):
(TestPageLoadingPerfTest.test_run):
(TestPageLoadingPerfTest.test_run_with_bad_output):
* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner):
(PerfTestsRunner._collect_tests._is_test_file): Now recognizes svg tests.
(PerfTestsRunner._collect_tests):
(PerfTestsRunner._run_tests_set):
(PerfTestsRunner._run_single_test):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(test_collect_tests_with_page_load_svg):
(test_collect_tests_with_page_load_svg.add_file):

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

8 years agoRebaseline a test.
andersca@apple.com [Fri, 13 Apr 2012 18:15:43 +0000 (18:15 +0000)]
Rebaseline a test.

* platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:

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

8 years ago[chromium] Support CCHeadsUpDisplay in threaded compositing mode
shawnsingh@chromium.org [Fri, 13 Apr 2012 18:06:50 +0000 (18:06 +0000)]
[chromium] Support CCHeadsUpDisplay in threaded compositing mode
https://bugs.webkit.org/show_bug.cgi?id=67499

Reviewed by James Robinson.

No new tests because this code is debugging code itself.

The last item that was needed to make the CCHeadsUpDisplay work in
threaded compositing mode was to remove the font rendering code
used on the impl-side thread. To solve this, this patch adds a
CCFontAtlas that is initialized on the main thread (where the font
rendering takes place). Then, when the HUD draws text on the impl
thread, it uses the font atlas directly.

* WebCore.gypi:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::create):
(WebCore::LayerRendererChromium::initialize):
* platform/graphics/chromium/LayerRendererChromium.h:
(WebCore):
(LayerRendererChromium):
* platform/graphics/chromium/cc/CCFontAtlas.cpp: Added.
(WebCore):
(WebCore::CCFontAtlas::CCFontAtlas):
(WebCore::wrapPositionIfNeeded):
(WebCore::CCFontAtlas::generateAtlasForFont):
(WebCore::CCFontAtlas::initialize):
(WebCore::CCFontAtlas::drawText):
(WebCore::CCFontAtlas::drawOneLineOfTextInternal):
(WebCore::CCFontAtlas::drawDebugAtlas):
* platform/graphics/chromium/cc/CCFontAtlas.h: Added.
(WebCore):
(CCFontAtlas):
(WebCore::CCFontAtlas::create):
* platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
(WebCore::CCHeadsUpDisplay::CCHeadsUpDisplay):
(WebCore):
(WebCore::CCHeadsUpDisplay::showPlatformLayerTree):
(WebCore::CCHeadsUpDisplay::drawHudContents):
(WebCore::CCHeadsUpDisplay::drawFPSCounter):
(WebCore::CCHeadsUpDisplay::drawFPSCounterText):
(WebCore::CCHeadsUpDisplay::drawPlatformLayerTree):
* platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
(WebCore::CCHeadsUpDisplay::create):
(CCHeadsUpDisplay):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::initialize):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore):
(WebCore::CCLayerTreeHost::headsUpDisplayFontAtlas):
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(WebCore):
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::initializeLayerRenderer):
(WebCore::CCSingleThreadProxy::recreateContext):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::initializeLayerRendererOnImplThread):
(WebCore::CCThreadProxy::recreateContextOnImplThread):

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

8 years agoUnreviewed - remove duplicate entries for two failing sputnik tests
zandobersek@gmail.com [Fri, 13 Apr 2012 18:06:15 +0000 (18:06 +0000)]
Unreviewed - remove duplicate entries for two failing sputnik tests
from the test_expectations.txt file.

* platform/gtk/test_expectations.txt:

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

8 years ago[Chromium] LayoutTest failures/flaky for svg/as-background-image
scheib@chromium.org [Fri, 13 Apr 2012 17:47:00 +0000 (17:47 +0000)]
[Chromium] LayoutTest failures/flaky for svg/as-background-image
https://bugs.webkit.org/show_bug.cgi?id=83303

Unreviewed Chromium test_expectations clean up.

Previous clean up in r114137 dropped a WIN IMAGE failure suppression.

* platform/chromium/test_expectations.txt:

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

8 years ago<rdar://problem/11176921> and https://bugs.webkit.org/show_bug.cgi?id=83600 Need...
beidson@apple.com [Fri, 13 Apr 2012 17:46:05 +0000 (17:46 +0000)]
<rdar://problem/11176921> and https://bugs.webkit.org/show_bug.cgi?id=83600 Need WebKit2 API to notify whether history loads are in the page cache

Source/WebKit2:

- Add a new WKBundlePageLoaderClient callback allowing the bundle to be notified
  of back/forward navigations (and deny them if it chooses)
- Add a new API to WKBundleBackForwardListItem to probe if the item is in the page cache.

Reviewed by Darin Adler.

Add the new WKBundleBackForwardListItem API:
* WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.cpp:
(WKBundleBackForwardListItemIsInPageCache):
* WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.h:
* WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
(WebKit::InjectedBundleBackForwardListItem::isInPageCache):

Update the UI page loader client to allow for a user data object to be passed from the bundle:
* UIProcess/API/C/WKPage.h:
* UIProcess/WebLoaderClient.cpp:
(WebKit::WebLoaderClient::shouldGoToBackForwardListItem): Update a comment typo.
(WebKit::WebLoaderClient::willGoToBackForwardListItem): Update for the user data field.
* UIProcess/WebLoaderClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::willGoToBackForwardListItem):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:

Add the new callback to the bundle loader client:
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
(WebKit::InjectedBundlePageLoaderClient::shouldGoToBackForwardListItem):
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
(InjectedBundlePageLoaderClient):

Call the bundle client before doing anything else, possibly canceling the navigation:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::shouldGoToHistoryItem):

* WebProcess/qt/QtBuiltinBundlePage.cpp:
(WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage) Adopt new bundle client interface.

Tools:

Add a test ShouldGoToBackForwardListItem that exercises the new BundlePageLoaderClient
callback as well as the new WKBundleBackForwardListItemIsInPageCache() API.

Reviewed by Darin Adler.

* TestWebKitAPI/Tests/WebKit2/ShouldGoToBackForwardListItem.cpp: Added.
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::willGoToBackForwardListItem):
(TestWebKitAPI::setPageLoaderClient):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/ShouldGoToBackForwardListItem_Bundle.cpp: Added.
(ShouldGoToBackForwardListItemTest):
(TestWebKitAPI::shouldGoToBackForwardListItemCallback):
(TestWebKitAPI::ShouldGoToBackForwardListItemTest::ShouldGoToBackForwardListItemTest):
(TestWebKitAPI::ShouldGoToBackForwardListItemTest::didCreatePage):
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:

* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage): Update for the new client.

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

8 years agoUpdate baselines to make this test run again.
abarth@webkit.org [Fri, 13 Apr 2012 17:40:42 +0000 (17:40 +0000)]
Update baselines to make this test run again.

* platform/chromium/fast/dom/Window/window-property-descriptors-expected.txt: Replaced.
* platform/chromium/test_expectations.txt:

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

8 years agoChromium: Should enable -webkit-image-set
commit-queue@webkit.org [Fri, 13 Apr 2012 17:20:24 +0000 (17:20 +0000)]
Chromium: Should enable -webkit-image-set
https://bugs.webkit.org/show_bug.cgi?id=81859

Patch by Rob Flack <flackr@chromium.org> on 2012-04-13
Reviewed by Adam Barth.

Source/WebCore:

Test: fast/css/image-set-parsing.html

* WebCore.gypi:

Source/WebKit/chromium:

* features.gypi:

LayoutTests:

* platform/chromium/test_expectations.txt:

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

8 years agoMark test as even flakier: it can timeout.
antonm@chromium.org [Fri, 13 Apr 2012 16:16:10 +0000 (16:16 +0000)]
Mark test as even flakier: it can timeout.

Unreviewed.

* platform/chromium/test_expectations.txt:

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

8 years agoUnreviewed, GTK test_expectations update.
philn@webkit.org [Fri, 13 Apr 2012 16:05:03 +0000 (16:05 +0000)]
Unreviewed, GTK test_expectations update.

* platform/gtk/test_expectations.txt: Flag fast/regions
again. Only parts of it were passing, sigh.

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

8 years ago[Chromium] LayoutTest failures/flaky for svg/as-background-image
schenney@chromium.org [Fri, 13 Apr 2012 15:49:11 +0000 (15:49 +0000)]
[Chromium] LayoutTest failures/flaky for svg/as-background-image
https://bugs.webkit.org/show_bug.cgi?id=83303

Unreviewed Chromium test_expectations clean up.

Consolidating common-cause flaky tests.

* platform/chromium/test_expectations.txt:

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

8 years agoWeb Inspector: do not attempt to load content from resource until request finished...
pfeldman@chromium.org [Fri, 13 Apr 2012 15:41:38 +0000 (15:41 +0000)]
Web Inspector: do not attempt to load content from resource until request finished loading.
https://bugs.webkit.org/show_bug.cgi?id=83896

Reviewed by Yury Semikhatsky.

Source/WebCore:

When we stop in the inline script on reload, we should only show concatenated script content.
When we resume, we should replace UI source code with the actual HTML content. We should not attempt to
fetch resource content until request finished loading. I regressed it in the Request extraction
and now am bringing it back.

* inspector/front-end/RawSourceCode.js:
(WebInspector.RawSourceCode):
(WebInspector.RawSourceCode.prototype._finishedLoading):
* inspector/front-end/ResourceScriptMapping.js:
(WebInspector.ResourceScriptMapping.prototype.addScript):

LayoutTests:

* inspector/debugger/raw-source-code.html:

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

8 years agoUnreviewed, GTK test_expectations update.
philn@webkit.org [Fri, 13 Apr 2012 15:40:20 +0000 (15:40 +0000)]
Unreviewed, GTK test_expectations update.

* platform/gtk/test_expectations.txt: Unskip fast/regions and
svg/hixie/perf that seem to pass fine on GTK bots.

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