WebKit-https.git
8 years agoMake AccessibilityObject::size non-virtual and fix platform accessibility code's...
leviw@chromium.org [Thu, 12 Apr 2012 20:56:47 +0000 (20:56 +0000)]
Make AccessibilityObject::size non-virtual and fix platform accessibility code's LayoutUnit usage
https://bugs.webkit.org/show_bug.cgi?id=83803

Reviewed by Eric Seidel.

AccessibilityObject::size was virtual with a number of overloads, but all the implementations were
redundant. Avoiding the virtual thunk and code duplication by declaring it non-virtual and only
implementing it in AccessibilityObject.

Also adding a pixelSnappedSize method that returns an IntSize, and using it in platform
accessibility code.

No new tests. No change in behavior.

* accessibility/AccessibilityMenuListOption.h:
(WebCore::AccessibilityMenuListOption::canHaveChildren):
* accessibility/AccessibilityMenuListPopup.h:
(WebCore::AccessibilityMenuListPopup::elementRect):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::size):
(WebCore::AccessibilityObject::pixelSnappedSize):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):
* accessibility/AccessibilitySlider.cpp:
(WebCore):
* accessibility/AccessibilitySlider.h:
(AccessibilitySliderThumb):
* accessibility/AccessibilityTableColumn.cpp:
(WebCore):
* accessibility/AccessibilityTableColumn.h:
(AccessibilityTableColumn):
* accessibility/AccessibilityTableHeaderContainer.cpp:
(WebCore):
* accessibility/AccessibilityTableHeaderContainer.h:
(AccessibilityTableHeaderContainer):
* accessibility/gtk/WebKitAccessibleInterfaceComponent.cpp:
(webkitAccessibleComponentGetExtents):
* accessibility/gtk/WebKitAccessibleInterfaceImage.cpp:
(webkitAccessibleImageGetImagePosition):
(webkitAccessibleImageGetImageSize):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper position]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

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

8 years agosome clip paths broken on chromium win/linux after r65729
schenney@chromium.org [Thu, 12 Apr 2012 20:55:09 +0000 (20:55 +0000)]
some clip paths broken on chromium win/linux after r65729
https://bugs.webkit.org/show_bug.cgi?id=44341

Unreviewed Chromium expectations update.

These tests are now matching the mac results, and the new results on
the bots look correct. Some changes are just font metric changes.

* platform/chromium-linux/svg/clip-path/clip-path-childs-clipped-expected.png:
* platform/chromium-linux/svg/clip-path/clip-path-pixelation-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/clip-path/clip-path-childs-clipped-expected.png: Removed.
* platform/chromium-mac/svg/clip-path/clip-path-childs-clipped-expected.png: Added.
* platform/chromium-win/svg/clip-path/clip-path-childs-clipped-expected.png:
* platform/chromium-win/svg/clip-path/clip-path-pixelation-expected.png: Added.
* platform/chromium-win/svg/clip-path/clip-path-pixelation-expected.txt: Added.
* platform/chromium/test_expectations.txt:

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

8 years agoThreadingWin: Mutex::unlock() can be "over-unlocked".
jer.noble@apple.com [Thu, 12 Apr 2012 20:35:18 +0000 (20:35 +0000)]
ThreadingWin: Mutex::unlock() can be "over-unlocked".
https://bugs.webkit.org/show_bug.cgi?id=83725

Reviewed by David Levin.

In order to support the behavior of pthread_mutex_trylock(), the Windows Mutex class includes
a recursion counter which is incremented in Mutex::lock(), decremented in Mutex::unlock(),
and checked in Mutex::tryLock().  If the mutex is "over-unlocked", the counter wraps around to
MAX_INT, and subsequent calls to Mutex::trylock() will fail. Raise an ASSERT in this situation
so the "over-unlock" will be caught.

* wtf/ThreadingWin.cpp:
(WTF::Mutex::unlock): ASSERT if unlocking a non-locked mutex.

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

8 years ago[Chromium] filters/feDisplacementMap.svg crossHatch pattern improperly drawn
schenney@chromium.org [Thu, 12 Apr 2012 20:31:51 +0000 (20:31 +0000)]
[Chromium] filters/feDisplacementMap.svg crossHatch pattern improperly drawn
https://bugs.webkit.org/show_bug.cgi?id=83810

Unreviewed Chromium expectations update.

These test results match Firefox, and I see no reason to believe they
are incorrect.

* platform/chromium-linux-x86/svg/filters/feDisplacementMap-expected.png: Added.
* platform/chromium-linux/svg/filters/feDisplacementMap-expected.png: Added.
* platform/chromium-win-vista/svg/filters/feDisplacementMap-expected.png: Added.
* platform/chromium-win-xp/svg/filters/feDisplacementMap-expected.png: Added.
* platform/chromium-win/svg/filters/feDisplacementMap-expected.png:
* platform/chromium/test_expectations.txt:

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

8 years agoUpdate HTMLMediaElement's index of cues when TextTrack.mode changes to
annacc@chromium.org [Thu, 12 Apr 2012 20:29:50 +0000 (20:29 +0000)]
Update HTMLMediaElement's index of cues when TextTrack.mode changes to
and from TextTrack::DISABLED.
https://bugs.webkit.org/show_bug.cgi?id=83377

Reviewed by Eric Carlson.

Source/WebCore:

No new tests. Instead updated media/track/track-mode.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::textTrackModeChanged):
    Add the track's cues to the index when the mode changes to HIDDEN or SHOWING.

* html/HTMLTrackElement.cpp:
(WebCore::HTMLTrackElement::textTrackRemoveCues):
    Fix a copy pasta error.

* html/track/TextTrack.cpp:
(WebCore::TextTrack::setMode):
    Remove the track's cues from the index when the mode changes to DISABLED.

LayoutTests:

* media/track/track-mode-expected.txt:
* media/track/track-mode.html:

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

8 years agoUnreviewed, rolling out r114005.
commit-queue@webkit.org [Thu, 12 Apr 2012 20:26:49 +0000 (20:26 +0000)]
Unreviewed, rolling out r114005.
http://trac.webkit.org/changeset/114005
https://bugs.webkit.org/show_bug.cgi?id=83809

This patch may have unveiled other bugs, need to investigate
(Requested by vrk on #webkit).

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

* media/video-seek-past-end-paused-expected.txt:
* media/video-seek-past-end-paused.html:
* platform/chromium/test_expectations.txt:

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

8 years agoAllow certain Char events in fullscreen
commit-queue@webkit.org [Thu, 12 Apr 2012 20:23:30 +0000 (20:23 +0000)]
Allow certain Char events in fullscreen
https://bugs.webkit.org/show_bug.cgi?id=83330

Patch by Cem Kocagil <cem.kocagil@gmail.com> on 2012-04-12
Reviewed by Alexey Proskuryakov.

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

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

8 years agoShadow is not shown when using strokeRect with a gradient strokeStyle
schenney@chromium.org [Thu, 12 Apr 2012 20:04:06 +0000 (20:04 +0000)]
Shadow is not shown when using strokeRect with a gradient strokeStyle
https://bugs.webkit.org/show_bug.cgi?id=52509

Unreviewed Chromium expectations update (after all this time).

* platform/chromium-win/svg/css/rect-gradient-stroke-shadow-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

8 years agoIndexedDB: Attributes for a cursor "run past the end" should be undefined.
commit-queue@webkit.org [Thu, 12 Apr 2012 20:01:22 +0000 (20:01 +0000)]
IndexedDB: Attributes for a cursor "run past the end" should be undefined.
https://bugs.webkit.org/show_bug.cgi?id=83492

Patch by Alec Flett <alecflett@chromium.org> on 2012-04-12
Reviewed by Ojan Vafai.

Source/WebCore:

This brings us up to spec with respect to when it's ok to call
cursor.continue() and the various behaviors around it:

If you call it more than once, continue() throws an exception.

The values of key/primaryKey/value are consistent, whether or not
continue has been called, meaning that if continue() results in
data being loaded from the backing store, that data does not
affect the cursor until the success callback has completed.

Calls to update() and delete() can happen before continue(), but
not afterwards.

Test: storage/indexeddb/cursor-continue-validity.html

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::IDBCursor):
(WebCore::IDBCursor::key):
(WebCore::IDBCursor::primaryKey):
(WebCore::IDBCursor::value):
(WebCore::IDBCursor::update):
(WebCore::IDBCursor::continueFunction):
(WebCore::IDBCursor::deleteFunction):
(WebCore::IDBCursor::setGotValue):
(WebCore):
* Modules/indexeddb/IDBCursor.h:
(IDBCursor):
* Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::onSuccess):
(WebCore::IDBRequest::dispatchEvent):

LayoutTests:

* storage/indexeddb/cursor-continue-validity-expected.txt: Added.
* storage/indexeddb/cursor-continue-validity.html: Added.
* storage/indexeddb/resources/cursor-continue-validity.js: Added.
* storage/indexeddb/resources/mozilla/cursors-expected.txt:
* storage/indexeddb/resources/shared.js:

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

8 years agoMedia engine should not be told to prepare for playback if media loading is not allowed
eric.carlson@apple.com [Thu, 12 Apr 2012 19:58:10 +0000 (19:58 +0000)]
Media engine should not be told to prepare for playback if media loading is not allowed
https://bugs.webkit.org/show_bug.cgi?id=83620

Reviewed by Dan Bernstein.

Source/WebCore:

Test: media/video-load-require-user-gesture.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::load): Early return if user gesture requirement is not met.

* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setMediaPlaybackRequiresUserGesture): Moved the method here from
    Internals to be with the rest of the Internals methods that expose preferences.
* testing/InternalSettings.h:
* testing/InternalSettings.idl:

* testing/Internals.cpp: Moved setMediaPlaybackRequiresUserGesture to InternalSettings.
* testing/Internals.h:
* testing/Internals.idl:

LayoutTests:

* media/video-load-require-user-gesture-expected.txt: Added.
* media/video-load-require-user-gesture.html: Added.
* media/video-play-require-user-gesture.html: Update for move of setMediaPlaybackRequiresUserGesture
    from window.internals to window.internals.settings.

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

8 years ago[CSS Exclusions] Add flag to enable / disable exclusions at runtime
commit-queue@webkit.org [Thu, 12 Apr 2012 19:54:21 +0000 (19:54 +0000)]
[CSS Exclusions] Add flag to enable / disable exclusions at runtime
https://bugs.webkit.org/show_bug.cgi?id=83313

Patch by Bear Travis <betravis@adobe.com> on 2012-04-12
Reviewed by Ryosuke Niwa.

.:

Adding the GTK symbols

* Source/autotools/symbols.filter:

Source/WebCore:

Adding setCSSExclusionsEnabled/cssExclusionsEnabled that is true by default.
The CSS parser will not accept values for the exclusions properties when
cssExclusionsEnabled is false. However, you will still get the default value
in the computed style.

Test: fast/exclusions/css-exclusions-disabled.html

* WebCore.exp.in:
* bindings/generic/RuntimeEnabledFeatures.cpp:
(WebCore):
* bindings/generic/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setCSSExclusionsEnabled):
(WebCore::RuntimeEnabledFeatures::cssExclusionsEnabled):
(RuntimeEnabledFeatures):
* css/CSSParser.cpp:
(WebCore::isSimpleLengthValue):
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::CSSParser::parseValue):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::InternalSettings):
(WebCore::InternalSettings::restoreTo):
(WebCore::InternalSettings::setCSSExclusionsEnabled):
(WebCore):
* testing/InternalSettings.h:
(InternalSettings):
* testing/InternalSettings.idl:

Source/WebKit2:

Adding windows symbols

* win/WebKit2.def:
* win/WebKit2CFLite.def:

LayoutTests:

Adding a test to cover CSS parsing, which is the only piece of exclusions
work in place. Updating other exclusions test to explicitly enable the
feature.

* fast/exclusions/css-exclusions-disabled-expected.txt: Added.
* fast/exclusions/css-exclusions-disabled.html: Added.
* fast/exclusions/script-tests/parsing-wrap-shape-inside.js:
* fast/exclusions/script-tests/parsing-wrap-shape-outside.js:
* fast/exclusions/script-tests/wrap-flow-parsing.js:
* fast/exclusions/script-tests/wrap-margin-parsing.js:
* fast/exclusions/script-tests/wrap-padding-parsing.js:
* fast/exclusions/script-tests/wrap-parsing.js:
* fast/exclusions/script-tests/wrap-through-parsing.js:

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

8 years ago[Chromium] Layout test svg/text/font-size-below-point-five.svg needs rebaseline
schenney@chromium.org [Thu, 12 Apr 2012 19:50:46 +0000 (19:50 +0000)]
[Chromium] Layout test svg/text/font-size-below-point-five.svg needs rebaseline
https://bugs.webkit.org/show_bug.cgi?id=83806

Unreviewed Chromium test expectations update.

* platform/chromium-linux/svg/text/font-size-below-point-five-expected.txt:
* platform/chromium-mac-leopard/svg/text/font-size-below-point-five-expected.png: Added.
* platform/chromium-mac-leopard/svg/text/font-size-below-point-five-expected.txt: Removed.
* platform/chromium-mac-snowleopard/svg/text/font-size-below-point-five-expected.png: Removed.
* platform/chromium-mac/svg/text/font-size-below-point-five-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

8 years agoAdd fast/frames/flattening/frameset-flattening-simple.html to the Skipped list.
andersca@apple.com [Thu, 12 Apr 2012 19:35:09 +0000 (19:35 +0000)]
Add fast/frames/flattening/frameset-flattening-simple.html to the Skipped list.

* platform/mac/Skipped:

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

8 years ago[Chromium] LayoutTest update for several Mac filter tests
schenney@chromium.org [Thu, 12 Apr 2012 19:27:36 +0000 (19:27 +0000)]
[Chromium] LayoutTest update for several Mac filter tests
https://bugs.webkit.org/show_bug.cgi?id=83717

Unreviewed Chromium test expectations update.

Second attempt, now leaving some tests as flakey.

* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/masking-mask-01-b-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

8 years agoMove Archive processing to DocumentLoader, instead of FrameLoader.
japhet@chromium.org [Thu, 12 Apr 2012 19:27:28 +0000 (19:27 +0000)]
Move Archive processing to DocumentLoader, instead of FrameLoader.
https://bugs.webkit.org/show_bug.cgi?id=83055

Reviewed by Adam Barth.

No new tests, no functionality change intended.

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::setupForReplaceByMIMEType):
(WebCore::DocumentLoader::maybeCreateArchive): Renamed from
    FrameLoader::finishedLoadingDocument(). Returns true if an archive
    was created.
(WebCore::DocumentLoader::setArchive):
(WebCore::DocumentLoader::scheduleArchiveLoad):
(WebCore::DocumentLoader::documentURL): Add a check for whether an archive url
    should be returned, so that we don't need special handling in Document and
    FrameLoader for overriding the document url later.
* loader/DocumentLoader.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::receivedFirstData): Remove archive special cases, since
    DocumentLoader::documentURL() will return the right thing for legacy archives
    and maybeCreateArchive() will override the base url for mhtml.
(WebCore::FrameLoader::loadArchive):
* loader/FrameLoader.h:

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

8 years agoUpdate test results after r113945.
andersca@apple.com [Thu, 12 Apr 2012 19:23:58 +0000 (19:23 +0000)]
Update test results after r113945.

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

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

8 years agotest-webkitpy fails on metered_stream_unittest for non-US West Coast Time Zones
dpranke@chromium.org [Thu, 12 Apr 2012 19:19:13 +0000 (19:19 +0000)]
test-webkitpy fails on metered_stream_unittest for non-US West Coast Time Zones
https://bugs.webkit.org/show_bug.cgi?id=83583

Reviewed by Philippe Normand

Updated the unit test to ignore the hours and minutes of the
localtime for time(0), since we can't easily guarantee which
timezone we're in or what timezone rules were in effect on
1/1/1970; this should be mostly fine since we can trust that
time.localtime() will work, although there is the possibility
that we'll screw up the time formatting of which field is the
hours and which is the minutes.

* Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
(VerboseTest):
(VerboseTest.test_basic):
(VerboseTest.test_log_after_update):

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

8 years agoSource/WebCore: REGRESSION (r113233): fast/canvas/webgl/array-message-passing.html...
dslomov@google.com [Thu, 12 Apr 2012 19:16:49 +0000 (19:16 +0000)]
Source/WebCore: REGRESSION (r113233): fast/canvas/webgl/array-message-passing.html crashing on Lion and Snow Leopard bots.
https://bugs.webkit.org/show_bug.cgi?id=83427.
Due to incorrect merge by me when landing r113233, call to find got replaces with call to add in
checking for duplicates in ObjectPool when serializing.

Reviewed by Dean Jackson.

Covered by existing tests.

* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::checkForDuplicate):

LayoutTests: REGRESSION (r113233): fast/canvas/webgl/array-message-passing.html crashing on Lion and Snow Leopard bots.
https://bugs.webkit.org/show_bug.cgi?id=83427.
Bug fixed, unskipping tests.

Reviewed by Dean Jackson.

* platform/mac/Skipped:

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

8 years agoDon't modify shared style objects in RenderMathMLRoot.cpp
commit-queue@webkit.org [Thu, 12 Apr 2012 19:07:07 +0000 (19:07 +0000)]
Don't modify shared style objects in RenderMathMLRoot.cpp
https://bugs.webkit.org/show_bug.cgi?id=83736

Patch by David Barton <dbarton@mathscribe.com> on 2012-04-12
Reviewed by Julien Chaffraix.

Source/WebCore:

To leave room for the radical sign and absolutely positioned "index", we switch to using
intrinsic padding. RenderMathMLRoot.cpp is also cleaned up and prepared for merging with
RenderMathMLSquareRoot.cpp. The base and index are no longer wrapped in extra renderers,
and the child renderers are now in the same order as in the DOM. Some padding/placement
terms are unified and debugged.

Tested by existing tests in roots.xhtml.

* css/mathml.css:
(mroot):
(mroot > * + *):
(mroot > * + mrow, mroot > * + mfenced):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore):
(WebCore::RenderMathMLRoot::index):
(WebCore::RenderMathMLRoot::paint):
(WebCore::RenderMathMLRoot::layout):
* rendering/mathml/RenderMathMLRoot.h:
(RenderMathMLRoot):
* rendering/mathml/RenderMathMLSquareRoot.cpp:
(WebCore):
(WebCore::RenderMathMLSquareRoot::paint):

LayoutTests:

* platform/mac/mathml/presentation/roots-expected.png:
* platform/mac/mathml/presentation/roots-expected.txt:

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

8 years ago[BlackBerry] Web Inspector messages incorrectly converted
commit-queue@webkit.org [Thu, 12 Apr 2012 19:03:38 +0000 (19:03 +0000)]
[BlackBerry] Web Inspector messages incorrectly converted
https://bugs.webkit.org/show_bug.cgi?id=83796

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-04-12
Reviewed by Rob Buis.

The JSON sent over from the remote Web Inspector front-end was being
mis interpreted as ISO-8859-1.  This caused all non ascii characters to
become garbled when using the String constructor, so we use fromtUTF8 instead.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::dispatchInspectorMessage):

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

8 years agoTypos in LayoutTests/http/tests/security/xssAuditor/script-tag-inside-svg-tag*.html
tsepez@chromium.org [Thu, 12 Apr 2012 18:57:22 +0000 (18:57 +0000)]
Typos in LayoutTests/http/tests/security/xssAuditor/script-tag-inside-svg-tag*.html
https://bugs.webkit.org/show_bug.cgi?id=83794

Reviewed by Adam Barth.

Several changes needed to make the XSS in these test cases fire against actual
vulnerable browsers. The tests were still valid, but it is more helpful to see
the XSS pop up.

* http/tests/security/xssAuditor/script-tag-inside-svg-tag.html:
* http/tests/security/xssAuditor/script-tag-inside-svg-tag2.html:
* http/tests/security/xssAuditor/script-tag-inside-svg-tag3.html:

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

8 years agoRemove unused WebKit1 SPI for suppressing incremental rendering.
aestes@apple.com [Thu, 12 Apr 2012 18:54:22 +0000 (18:54 +0000)]
Remove unused WebKit1 SPI for suppressing incremental rendering.
https://bugs.webkit.org/show_bug.cgi?id=83801

Reviewed by Simon Fraser.

This SPI is unused and has been replaced by API ([setS|s]uppressesIncrementalRendering).

* WebView/WebPreferences.mm:
* WebView/WebPreferencesPrivate.h:

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

8 years agoUnreviewed, GTK test_expectations.
philn@webkit.org [Thu, 12 Apr 2012 18:51:21 +0000 (18:51 +0000)]
Unreviewed, GTK test_expectations.

* platform/gtk/test_expectations.txt: Flaky tests list update.

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

8 years agoBuild fix.
andersca@apple.com [Thu, 12 Apr 2012 18:32:41 +0000 (18:32 +0000)]
Build fix.

* page/mac/SettingsMac.mm:
(WebCore::defaultFontFamilyDictionary):

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

8 years agoRemove style sheet argument from StyleRuleImport constructor
antti@apple.com [Thu, 12 Apr 2012 18:28:55 +0000 (18:28 +0000)]
Remove style sheet argument from StyleRuleImport constructor
https://bugs.webkit.org/show_bug.cgi?id=83740

Reviewed by Andreas Kling.

The style sheet is set when the rule is added to one. The parser does not need to know about it.

* css/CSSImportRule.cpp:
(WebCore::StyleRuleImport::StyleRuleImport):
* css/CSSImportRule.h:
(StyleRuleImport):
(WebCore::StyleRuleImport::setParentStyleSheet):
* css/CSSParser.cpp:
(WebCore::CSSParser::createImportRule):
* css/CSSStyleSheet.cpp:
(WebCore::StyleSheetInternal::parserAppendRule):
(WebCore::StyleSheetInternal::wrapperInsertRule):

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

8 years agoRemove setTimeout from media/video-seek-past-end-paused.html and fix other minor...
vrk@chromium.org [Thu, 12 Apr 2012 18:24:52 +0000 (18:24 +0000)]
Remove setTimeout from media/video-seek-past-end-paused.html and fix other minor issues
https://bugs.webkit.org/show_bug.cgi?id=83505

The test had an arbitrary performance expectation to start playing in 200 ms,
which caused the layout test to fail for Chromium when the Chromium's
audio buffer size increased.
This CL removes that expectation and fixes some HTML and grammar mistakes.

Reviewed by Eric Carlson.

* media/video-seek-past-end-paused-expected.txt:
* media/video-seek-past-end-paused.html:
* platform/chromium/test_expectations.txt:

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

8 years ago REGRESSION (r113900): In nightly builds, Safari Webpage Preview Fetcher crash...
ap@apple.com [Thu, 12 Apr 2012 18:11:28 +0000 (18:11 +0000)]
    REGRESSION (r113900): In nightly builds, Safari Webpage Preview Fetcher crashes in Settings::initializeDefaultFontFamilies() due to uncaught exception (sandbox preventing access to fonts plist)
        https://bugs.webkit.org/show_bug.cgi?id=83792
        <rdar://problem/11234002>

        Reviewed by Dan Bernstein.

        * page/mac/SettingsMac.mm: (WebCore::defaultFontFamilyDictionary): Bail out without setting
        font preferences if the process doesn't have read access to WebCore.framework.

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

8 years agoAdd an EFL Debug Buildbot to the master configuration
commit-queue@webkit.org [Thu, 12 Apr 2012 18:10:52 +0000 (18:10 +0000)]
Add an EFL Debug Buildbot to the master configuration
https://bugs.webkit.org/show_bug.cgi?id=82711

Forgot to add EFL Linux Debug to scheduler.

Patch by Dominik Rottsches <dominik.rottsches@linux.intel.com> on 2012-04-12
Reviewed by Philippe Normand.

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

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

8 years ago[BlackBerry] Set up default fonts for BlackBerry
efidler@rim.com [Thu, 12 Apr 2012 17:47:48 +0000 (17:47 +0000)]
[BlackBerry] Set up default fonts for BlackBerry
https://bugs.webkit.org/show_bug.cgi?id=83775

Reviewed by Antonio Gomes.

* PlatformBlackBerry.cmake:
* page/Settings.cpp:
(WebCore):
* page/blackberry/SettingsBlackBerry.cpp: Added.
(WebCore):
(WebCore::Settings::initializeDefaultFontFamilies):

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

8 years agoImplement Dictionary.h on mac (83472)
jonlee@apple.com [Thu, 12 Apr 2012 17:23:45 +0000 (17:23 +0000)]
Implement Dictionary.h on mac (83472)
https://bugs.webkit.org/show_bug.cgi?id=83472
<rdar://problem/11209766>

Reviewed by Kentaro Hara.

A difference between Dictionary and JSDictionary makes it difficult to merge the two together and avoid
creating a confusing API. The boolean returned by Dictionary::get() represents whether the
property was found. The boolean returned by JSDictionary::tryGetProperty() represents whether an
exception was thrown.

* WebCore.xcodeproj/project.pbxproj: Add Dictionary.h and Dictionary.cpp.

* bindings/js/Dictionary.cpp: Added.
(WebCore::Dictionary::Dictionary):
(WebCore::Dictionary::get):
* bindings/js/Dictionary.h: Leverage JSDictionary's functionality to obtain the data.
(WebCore::Dictionary::isObject): Mark an unimplemented.
(WebCore::Dictionary::isUndefinedOrNull): Mark an unimplemented.
(WebCore::Dictionary::getWithUndefinedOrNullCheck): Mark an unimplemented.

* bindings/js/JSDictionary.cpp:
(WebCore::JSDictionary::tryGetProperty): Convert to a const function.
* bindings/js/JSDictionary.h:
(WebCore::JSDictionary::isValid):
(WebCore::JSDictionary::tryGetProperty): Convert to a const function.
(WebCore::JSDictionary::get): Similar to tryGetProperty(), but returns true if the
property was found, converting the value succeeded and the out parameter "result" was set.
(WebCore::JSDictionary::tryGetPropertyAndResult): Refactor tryGetProperty() to return the enum directly.

Change bindings scripts to use Dictionary constructor.
* bindings/js/IDBBindingUtilities.cpp: Remove createDictionaryFromValue().
* bindings/js/IDBBindingUtilities.h: Remove createDictionaryFromValue().
* bindings/scripts/CodeGeneratorJS.pm:
(JSValueToNative): Update to remove IDBBindingUtilities.h dependency, and use Dictionary constructor.
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionOptionsObject): Update expected generated output.

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

8 years ago[chromium] Fix threaded compositor HUD crash
commit-queue@webkit.org [Thu, 12 Apr 2012 17:16:46 +0000 (17:16 +0000)]
[chromium] Fix threaded compositor HUD crash
https://bugs.webkit.org/show_bug.cgi?id=83778

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-04-12
Reviewed by James Robinson.

Don't try to read font metrics in threaded compositing mode, since we
currently can't render HUD text with the threaded compositor.

HUD is not testable in WebKit.

* platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
(WebCore::CCHeadsUpDisplay::drawHudContents):

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

8 years agoUnreviewed, GTK test_expectations.
philn@webkit.org [Thu, 12 Apr 2012 17:09:02 +0000 (17:09 +0000)]
Unreviewed, GTK test_expectations.

* platform/gtk/test_expectations.txt: Marking 2 media tests flaky.

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

8 years ago[CSS Regions] Convert a fast/regions pixel test to a ref test
commit-queue@webkit.org [Thu, 12 Apr 2012 17:02:51 +0000 (17:02 +0000)]
[CSS Regions] Convert a fast/regions pixel test to a ref test
https://bugs.webkit.org/show_bug.cgi?id=83713

Patch by David Alcala <dalcala@adobe.com> on 2012-04-12
Reviewed by Dirk Schulze.

* fast/regions/region-overflow-break-expected.html: Added.
* platform/chromium-mac-snowleopard/fast/regions/region-overflow-break-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/regions/region-overflow-break-expected.txt: Removed.
* platform/efl/fast/regions/region-overflow-break-expected.png: Removed.
* platform/efl/fast/regions/region-overflow-break-expected.txt: Removed.
* platform/mac-snowleopard/fast/regions/region-overflow-break-expected.png: Removed.
* platform/mac-snowleopard/fast/regions/region-overflow-break-expected.txt: Removed.
* platform/mac/fast/regions/region-overflow-break-expected.txt: Removed.

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

8 years agoAdd an EFL Debug Buildbot to the master configuration
commit-queue@webkit.org [Thu, 12 Apr 2012 17:02:38 +0000 (17:02 +0000)]
Add an EFL Debug Buildbot to the master configuration
https://bugs.webkit.org/show_bug.cgi?id=82711

Patch by Dominik R√∂ttsches <dominik.rottsches@linux.intel.com> on 2012-04-12
Reviewed by Philippe Normand.

Hooking up our EFL Linux 64bit debug configuration buildbot to the buildbot master.

* BuildSlaveSupport/build.webkit.org-config/config.json: EFL Debug builder added

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

8 years agoWeb Inspector: zoom timeline frame on dblclick on the frame bar
caseq@chromium.org [Thu, 12 Apr 2012 16:40:23 +0000 (16:40 +0000)]
Web Inspector: zoom timeline frame on dblclick on the frame bar
https://bugs.webkit.org/show_bug.cgi?id=83741

Reviewed by Pavel Feldman.

       - put timeline frame bars into a container, so we can have one listener;
       - upon dblclick, find the frame, get its window coordinates and set overview selection window accordingly.

* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewPane.prototype.zoomToFrame): Get frame coordinates, set overview window.
(WebInspector.TimelineVerticalOverview.prototype.update): Maintain framesPerBar as a member for reuse in getFramePosition()
(WebInspector.TimelineVerticalOverview.prototype.framePosition): Map frame to screen positions.
(WebInspector.TimelineVerticalOverview.prototype._renderBars): Factored out barNumberToScreenPosition()
(WebInspector.TimelineVerticalOverview.prototype._barNumberToScreenPosition):
(WebInspector.TimelineVerticalOverview.prototype.getWindowTimes): Drive-by style fix.
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._updateFrames): Put frames into a containing div.
(WebInspector.TimelinePanel.prototype._onFrameDoubleClicked): Zoom to frame upon double click.
* inspector/front-end/timelinePanel.css:
(.timeline-frame-container):

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

8 years agoUnreviewed, GTK test_expectations post-Skipped-migration update #2.
philn@webkit.org [Thu, 12 Apr 2012 16:31:50 +0000 (16:31 +0000)]
Unreviewed, GTK test_expectations post-Skipped-migration update #2.

* platform/gtk/test_expectations.txt:

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

8 years agoWeb Inspector: show wall time frame duration on the vertical overview
caseq@chromium.org [Thu, 12 Apr 2012 16:29:38 +0000 (16:29 +0000)]
Web Inspector: show wall time frame duration on the vertical overview
https://bugs.webkit.org/show_bug.cgi?id=83718

Reviewed by Pavel Feldman.

Source/WebCore:

- show frame duration as a contour of the frame bar in vertical overview;
- when scaling, normalize bar to a max of 3 * median frame duration, so too long frames do not dwarf the majority;
- add Array.prototype.qselect() for the above;
- factor our partition algorithm onto Array.prototype for better reuse;

* inspector/front-end/PartialQuickSort.js: factor out partition()
(Object.defineProperty.):
(Object.defineProperty):
* inspector/front-end/TimelineFrameController.js:
(WebInspector.TimelineFrameController.prototype._flushFrame): add frame.duration.
(WebInspector.TimelineFrameController.prototype._createSyntheticFrame): ditto.
* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineVerticalOverview):
(WebInspector.TimelineVerticalOverview.prototype.reset): this._longestFrameTime is gone.
(WebInspector.TimelineVerticalOverview.prototype.update): ditto.
(WebInspector.TimelineVerticalOverview.prototype._aggregateFrames): return frames to display, not just their timeByCatogory.
(WebInspector.TimelineVerticalOverview.prototype._renderBars): use entire frames, not timeByCategory.
(WebInspector.TimelineVerticalOverview.prototype._renderBar): ditto.
* inspector/front-end/externs.js: Added annotations for partition() and qselect()
(Array.prototype.partition):
(Array.prototype.qselect):
* inspector/front-end/utilities.js:
(.):

LayoutTests:

* inspector/utilities-expected.txt:
* inspector/utilities.html: added results for Array.prototype.qselect()

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

8 years ago[Qt] More unreviewed gardening after r113968.
pierre.rossi@gmail.com [Thu, 12 Apr 2012 16:20:48 +0000 (16:20 +0000)]
[Qt] More unreviewed gardening after r113968.

Set the right expected results this time.

* platform/qt-5.0/css1/text_properties/letter_spacing-expected.txt:
* platform/qt-5.0/editing/inserting/5549929-2-expected.txt:
* platform/qt-5.0/editing/inserting/5549929-3-expected.txt:
* platform/qt-5.0/editing/inserting/insert-br-at-tabspan-001-expected.txt:
* platform/qt-5.0/editing/inserting/insert-br-at-tabspan-002-expected.txt:
* platform/qt-5.0/editing/inserting/insert-br-at-tabspan-003-expected.txt:
* platform/qt-5.0/editing/inserting/insert-tab-001-expected.txt:
* platform/qt-5.0/editing/inserting/insert-tab-002-expected.txt:
* platform/qt-5.0/editing/inserting/insert-tab-004-expected.txt:
* platform/qt-5.0/editing/inserting/insert-text-at-tabspan-001-expected.txt:
* platform/qt-5.0/editing/inserting/insert-text-at-tabspan-002-expected.txt:
* platform/qt-5.0/editing/inserting/insert-text-at-tabspan-003-expected.txt:
* platform/qt-5.0/editing/pasteboard/paste-text-at-tabspan-003-expected.txt:
* platform/qt-5.0/editing/selection/editable-html-element-expected.txt:
* platform/qt-5.0/editing/selection/extend-by-word-001-expected.txt:
* platform/qt-5.0/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt:
* platform/qt-5.0/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt:
* platform/qt-5.0/fast/css/word-space-extra-expected.txt:
* platform/qt-5.0/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt:
* platform/qt-5.0/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt:
* platform/qt-5.0/fast/table/border-collapsing/004-expected.txt:
* platform/qt-5.0/fast/text/international/hindi-whitespace-expected.txt:
* platform/qt-5.0/fast/text/text-letter-spacing-expected.txt:
* platform/qt-5.0/svg/batik/text/textPosition-expected.txt:
* platform/qt-5.0/svg/batik/text/textPosition2-expected.txt:
* platform/qt-5.0/svg/custom/glyph-selection-arabic-forms-expected.txt:
* platform/qt-5.0/svg/custom/glyph-selection-bidi-mirror-expected.txt:
* platform/qt-5.0/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:

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

8 years agoEnable the fullscreen API for BlackBerry.
staikos@webkit.org [Thu, 12 Apr 2012 16:05:18 +0000 (16:05 +0000)]
Enable the fullscreen API for BlackBerry.
https://bugs.webkit.org/show_bug.cgi?id=83757

Reviewed by Antonio Gomes.

.:

* Source/cmake/OptionsBlackBerry.cmake:

Tools:

* Scripts/build-webkit:

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

8 years agoOptimize non-rounded double border rendering to avoid transparency layers
commit-queue@webkit.org [Thu, 12 Apr 2012 16:04:08 +0000 (16:04 +0000)]
Optimize non-rounded double border rendering to avoid transparency layers
https://bugs.webkit.org/show_bug.cgi?id=83745

Patch by David Barr <davidbarr@chromium.org> on 2012-04-12
Reviewed by Simon Fraser.

No functional change, painting optimization only.

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

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

8 years agoReduce the use of RenderLayer outside of the rendering code
jchaffraix@webkit.org [Thu, 12 Apr 2012 16:02:25 +0000 (16:02 +0000)]
Reduce the use of RenderLayer outside of the rendering code
https://bugs.webkit.org/show_bug.cgi?id=83728

Reviewed by Simon Fraser.

Source/WebCore:

Test: fast/layers/scrollByLines-overflow-no-layer.html

This is mostly a layering violation change. This changes reduces the number of
RenderLayer use outside rendering/ by a third but there are still numerous uses.

While auditing the different uses of RenderLayer, I found a potential crasher
and fixed it which is why we have a test case.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::visiblePositionForPoint):
* dom/Document.cpp:
(WebCore::Document::nodesFromRect):
(WebCore::Document::handleZeroPadding):
(WebCore::nodeFromPoint):
(WebCore::Document::prepareMouseEvent):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::contains):
* page/DragController.cpp:
(WebCore::elementUnderMouse):
* page/EventHandler.cpp:
(WebCore::EventHandler::handleMouseDraggedEvent):
(WebCore::EventHandler::eventMayStartDrag):
(WebCore::EventHandler::updateSelectionForMouseDrag):
(WebCore::EventHandler::hitTestResultAtPoint):
(WebCore::EventHandler::handleWheelEvent):
(WebCore::EventHandler::hoverTimerFired):
(WebCore::EventHandler::handleDrag):
Updated these call sites to use RenderView::hitTest.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* page/FrameView.cpp:
(WebCore::FrameView::contentsInCompositedLayer):
(WebCore::FrameView::scrollContentsFastPath):
Updated these call sites to use RenderObject::isComposited().

* dom/Element.cpp:
(WebCore::Element::scrollByUnits):
Call directly RenderBox::scroll instead of calling the layer.
This actually fixes a crasher that slipped through the cracks.

* editing/visible_units.cpp:
* html/shadow/TextControlInnerElements.cpp:
* page/ContextMenuController.cpp:
* page/FocusController.cpp:
* page/Frame.cpp:
* page/GestureTapHighlighter.cpp:
* page/PrintContext.cpp:
* plugins/mac/PluginViewMac.mm:
Removed unneeded #include.

* plugins/gtk/PluginViewGtk.cpp:
* plugins/qt/PluginViewQt.cpp:
Replaced RenderLayer.h #include with RenderObject.h as
we use RenderObject::absoluteToLocal.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::isComposited):
* rendering/RenderObject.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::hitTest):
* rendering/RenderView.h:
Added 2 new functions that pipe through the RenderLayer.

LayoutTests:

The test checks that calling scrollByUnit without a RenderLayer doesn't crash.

* fast/layers/scrollByLines-overflow-no-layer.html: Added.
* fast/layers/scrollByLines-overflow-no-layer-expected.txt: Added.

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

8 years agofont-size:0 text runs has non zero width in case of Windows Safari.
commit-queue@webkit.org [Thu, 12 Apr 2012 16:00:09 +0000 (16:00 +0000)]
font-size:0 text runs has non zero width in case of Windows Safari.
https://bugs.webkit.org/show_bug.cgi?id=83559

Patch by Pravinin D <pravind.2k4@gmail.com> on 2012-04-12
Reviewed by Dan Bernstein.

Test case already exits.
LayoutTest/fast/text/font-size-zero.html

* platform/graphics/win/SimpleFontDataCGWin.cpp:
(WebCore):
(WebCore::SimpleFontData::platformBoundsForGlyph):
(WebCore::SimpleFontData::platformWidthForGlyph):

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

8 years agoWeb Inspector: Move meta node out of nodes in snapshot serialization.
commit-queue@webkit.org [Thu, 12 Apr 2012 15:57:19 +0000 (15:57 +0000)]
Web Inspector: Move meta node out of nodes in snapshot serialization.
https://bugs.webkit.org/show_bug.cgi?id=83701

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-04-12
Reviewed by Yury Semikhatsky.

Source/WebCore:

* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):
(WebInspector.HeapSnapshot):

LayoutTests:

* inspector/profiler/heap-snapshot-test.js:
(initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotSplitNodesEdgesMockRaw):

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

8 years ago[BlackBerry] Speed up processing of Selection region generation.
mifenton@rim.com [Thu, 12 Apr 2012 15:53:46 +0000 (15:53 +0000)]
[BlackBerry] Speed up processing of Selection region generation.
https://bugs.webkit.org/show_bug.cgi?id=82766

Reviewed by Rob Buis.

PR 136593.

Re-speed up text selection.  The previous patch had a merge
error causing text selection not to function.  The fix
implemented removed the optimization.  This fixes the error
in the original patch and removes the temporary fix.

Make style updated as suggested by Antonio Gomes.

Reviewed Internally by Gen Mak.

* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::regionForTextQuads):
(BlackBerry::WebKit::regionRectListContainsPoint):

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

8 years agoUnreviewed, GTK test_expectations post-Skipped-migration update.
philn@webkit.org [Thu, 12 Apr 2012 15:48:13 +0000 (15:48 +0000)]
Unreviewed, GTK test_expectations post-Skipped-migration update.

* platform/gtk/fast/dynamic/layer-hit-test-crash-expected.txt:
* platform/gtk/http/tests/misc/acid2-expected.txt:
* platform/gtk/svg/hittest/svg-ellipse-non-scale-stroke-expected.txt: Copied from LayoutTests/svg/hittest/svg-ellipse-non-scale-stroke-expected.txt.
* platform/gtk/svg/hixie/perf/001-expected.txt: Added.
* platform/gtk/svg/hixie/perf/002-expected.txt: Added.
* platform/gtk/svg/hixie/perf/003-expected.txt:
* platform/gtk/svg/hixie/perf/004-expected.txt:
* platform/gtk/svg/hixie/perf/005-expected.txt:
* platform/gtk/svg/hixie/perf/006-expected.txt:
* platform/gtk/svg/hixie/perf/007-expected.txt:
* platform/gtk/svg/text/select-textLength-spacing-squeeze-1-expected.txt:
* platform/gtk/svg/text/text-deco-01-b-expected.txt:
* platform/gtk/tables/mozilla_expected_failures/bugs/bug85016-expected.txt:
* platform/gtk/test_expectations.txt:
* svg/hittest/svg-ellipse-non-scale-stroke-expected.txt:

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

8 years ago[Chromium] LayoutTest update for several Mac filter tests
schenney@chromium.org [Thu, 12 Apr 2012 15:43:30 +0000 (15:43 +0000)]
[Chromium] LayoutTest update for several Mac filter tests
https://bugs.webkit.org/show_bug.cgi?id=83717

Unreviewed Chromium test expectations update.

* platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-specular-01-f-expected.png: Added.
* platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png: Added.
* platform/chromium-mac-leopard/svg/as-border-image/svg-as-border-image-2-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png:
* platform/chromium-mac-snowleopard/svg/as-border-image/svg-as-border-image-2-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/custom/foreign-object-skew-expected.png: Added.
* platform/chromium-mac/svg/W3C-SVG-1.1/filters-specular-01-f-expected.png: Added.
* platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png: Added.
* platform/chromium-mac/svg/W3C-SVG-1.1/masking-mask-01-b-expected.png: Modified property svn:mime-type.
* platform/chromium-mac/svg/as-border-image/svg-as-border-image-2-expected.png: Modified property svn:mime-type.
* platform/chromium-mac/svg/custom/foreign-object-skew-expected.png: Modified property svn:mime-type.
* platform/chromium/test_expectations.txt:

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

8 years agoMore Mac rebaselines.
antonm@chromium.org [Thu, 12 Apr 2012 15:38:48 +0000 (15:38 +0000)]
More Mac rebaselines.

Unreviewed.

* platform/chromium-mac-leopard/css2.1/20110323/replaced-elements-001-expected.png:

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

8 years ago[Qt][WK2] Nested fixed elements scroll too fast
yael.aharon@nokia.com [Thu, 12 Apr 2012 15:35:13 +0000 (15:35 +0000)]
[Qt][WK2] Nested fixed elements scroll too fast
https://bugs.webkit.org/show_bug.cgi?id=83720

Reviewed by Noam Rosenthal.

.:

* ManualTests/nested-fixed-position.html: Added.

Source/WebCore:

Before setting the scrollPositionDelta to a fixed layer, check if it has an ancestor which also has fixed position.
If it does, do not set scrollPositionDelta.
Added a flag to TextureMapperLayer and GraphicsLayerTextureMapper indicating if it is a fixed position layer.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
(WebCore::GraphicsLayerTextureMapper::setFixedToViewport):
(WebCore::GraphicsLayerTextureMapper::fixedToViewport):
(GraphicsLayerTextureMapper):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::syncCompositingStateSelf):
(WebCore::TextureMapperLayer::isAncestorFixedToViewport):
(WebCore):
(WebCore::TextureMapperLayer::setScrollPositionDeltaIfNeeded):
* platform/graphics/texmap/TextureMapperLayer.h:
(TextureMapperLayer):
(WebCore::TextureMapperLayer::setFixedToViewport):

Source/WebKit2:

Set the fixedToViewport flag on the fixed position layers and adjust to
the new function name for setting scrollPositionDelta.

* UIProcess/WebLayerTreeRenderer.cpp:
(WebKit::WebLayerTreeRenderer::adjustPositionForFixedLayers):
(WebKit::WebLayerTreeRenderer::setLayerState):

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

8 years ago[Qt] Unreviewed gardening after r113968
pierre.rossi@gmail.com [Thu, 12 Apr 2012 15:32:21 +0000 (15:32 +0000)]
[Qt] Unreviewed gardening after r113968

Since we now use QRawFont, some tests need a Qt5 specific baseline.

* platform/qt-5.0/Skipped: skipped two tests with suspicious results.
* platform/qt-5.0/css1/text_properties/letter_spacing-expected.txt: Added.
* platform/qt-5.0/editing/inserting/5549929-2-expected.txt: Added.
* platform/qt-5.0/editing/inserting/5549929-3-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-br-at-tabspan-001-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-br-at-tabspan-002-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-br-at-tabspan-003-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-tab-001-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-tab-002-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-tab-004-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-text-at-tabspan-001-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-text-at-tabspan-002-expected.txt: Added.
* platform/qt-5.0/editing/inserting/insert-text-at-tabspan-003-expected.txt: Added.
* platform/qt-5.0/editing/pasteboard/paste-text-at-tabspan-003-expected.txt: Added.
* platform/qt-5.0/editing/selection/editable-html-element-expected.txt: Added.
* platform/qt-5.0/editing/selection/extend-by-word-001-expected.txt: Added.
* platform/qt-5.0/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt: Added.
* platform/qt-5.0/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt: Added.
* platform/qt-5.0/fast/css/word-space-extra-expected.txt: Added.
* platform/qt-5.0/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt: Added.
* platform/qt-5.0/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt: Added.
* platform/qt-5.0/fast/table/border-collapsing/004-expected.txt: Added.
* platform/qt-5.0/fast/text/international/hindi-whitespace-expected.txt: Added.
* platform/qt-5.0/fast/text/text-letter-spacing-expected.txt: Added.
* platform/qt-5.0/svg/batik/text/textPosition-expected.txt: Added.
* platform/qt-5.0/svg/batik/text/textPosition2-expected.txt: Added.
* platform/qt-5.0/svg/custom/glyph-selection-arabic-forms-expected.txt: Added.
* platform/qt-5.0/svg/custom/glyph-selection-bidi-mirror-expected.txt: Added.

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

8 years ago[GTK] Migrate Skipped tests to test_expectations.txt
philn@webkit.org [Thu, 12 Apr 2012 15:12:44 +0000 (15:12 +0000)]
[GTK] Migrate Skipped tests to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=83768

Reviewed by Martin Robinson.

This will hopefully simplify gardening tasks. The tests without
bug entry have been marked with BUGWKGTK and the most problematic
suites (mostly for unimplemented or heavily unreliable features
(inspector)) have been SKIP flagged.

* platform/gtk/Skipped: Removed.
* platform/gtk/test_expectations.txt:

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

8 years agoPattern matching for hexadecimal should include * as an allowable count.
mifenton@rim.com [Thu, 12 Apr 2012 15:09:33 +0000 (15:09 +0000)]
Pattern matching for hexadecimal should include * as an allowable count.
https://bugs.webkit.org/show_bug.cgi?id=83779

Reviewed by Rob Buis.

Update pattern matching check to allow wildcard for number
of characters allowed.

PR 148907.

Reviewed Internally by Gen Mak.

* WebKitSupport/DOMSupport.cpp:
(BlackBerry::WebKit::DOMSupport::elementPatternIndicatesHexadecimal):

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

8 years agoMark test as flaky on all platforms and add new failure mode.
antonm@chromium.org [Thu, 12 Apr 2012 15:07:22 +0000 (15:07 +0000)]
Mark test as flaky on all platforms and add new failure mode.

Unreviewed.

* platform/chromium/test_expectations.txt:

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

8 years agoRebaseline Mac expectations.
antonm@chromium.org [Thu, 12 Apr 2012 15:01:50 +0000 (15:01 +0000)]
Rebaseline Mac expectations.

Unreviewed.

* platform/chromium-mac-leopard/fast/block/float/avoiding-float-centered-expected.png: Added.

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

8 years agoMark test as flaking on all platforms.
antonm@chromium.org [Thu, 12 Apr 2012 14:55:48 +0000 (14:55 +0000)]
Mark test as flaking on all platforms.

Unreviewed.

* platform/chromium/test_expectations.txt:

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

8 years ago[BlackBerry] Revert the patch for 82764
charles.wei@torchmobile.com.cn [Thu, 12 Apr 2012 14:55:27 +0000 (14:55 +0000)]
[BlackBerry] Revert the patch for 82764
https://bugs.webkit.org/show_bug.cgi?id=83767

Reviewed by Rob Buis.

Revert the patch for 82764, which is causing misfunction.
The internal commit is: 800213f5

* plugins/blackberry/PluginViewBlackBerry.cpp:
(WebCore::PluginView::setNPWindowIfNeeded):
(WebCore::PluginView::platformGetValue):
(WebCore::PluginView::platformDestroy):
* plugins/blackberry/PluginViewPrivateBlackBerry.h:
(PluginViewPrivate):

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

8 years ago[Qt]{Mac] Unreviewed, skip new failing tests to paint the bot green.
ossy@webkit.org [Thu, 12 Apr 2012 14:52:05 +0000 (14:52 +0000)]
[Qt]{Mac] Unreviewed, skip new failing tests to paint the bot green.

* platform/qt-mac/Skipped:

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

8 years agoMove viewport meta handling to the web process side
kenneth@webkit.org [Thu, 12 Apr 2012 14:43:38 +0000 (14:43 +0000)]
Move viewport meta handling to the web process side
https://bugs.webkit.org/show_bug.cgi?id=83771

Reviewed by Simon Hausmann.

Instead of computing the viewport attributes on both sides,
we now do everything on the web process side, and just send
over the computed result.

* Scripts/webkit2/messages.py:
(struct_or_class):
(headers_for_type):
* Shared/WebCoreArgumentCoders.cpp:
(CoreIPC::::encode):
(CoreIPC::::decode):
* Shared/WebCoreArgumentCoders.h:
(WebCore):
* UIProcess/API/efl/PageClientImpl.cpp:
(WebKit::PageClientImpl::didChangeViewportProperties):
* UIProcess/API/efl/PageClientImpl.h:
(PageClientImpl):
* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::didChangeViewportProperties):
* UIProcess/API/gtk/PageClientImpl.h:
(PageClientImpl):
* UIProcess/API/mac/PageClientImpl.h:
(PageClientImpl):
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::didChangeViewportProperties):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::didRelaunchProcess):
(QQuickWebViewFlickablePrivate::didChangeViewportProperties):
(QQuickWebViewFlickablePrivate::updateViewportSize):
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate::didChangeViewportProperties):
(QQuickWebViewPrivate):
(QQuickWebViewFlickablePrivate):
* UIProcess/PageClient.h:
(WebCore):
(PageClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didChangeViewportProperties):
* UIProcess/WebPageProxy.h:
(WebCore):
(WebPageProxy):
* UIProcess/WebPageProxy.messages.in:
* UIProcess/qt/QtPageClient.cpp:
(QtPageClient::didChangeViewportProperties):
* UIProcess/qt/QtPageClient.h:
(QtPageClient):
* UIProcess/win/WebView.cpp:
(WebKit::WebView::didChangeViewportProperties):
* UIProcess/win/WebView.h:
(WebView):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::dispatchViewportPropertiesDidChange):
(WebKit):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::sendViewportAttributesChanged):
(WebKit):
(WebKit::WebPage::setViewportSize):
* WebProcess/WebPage/WebPage.h:
(WebPage):

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

8 years ago[Qt] One more unreviewed gardening after r113945 and r113961.
ossy@webkit.org [Thu, 12 Apr 2012 14:23:42 +0000 (14:23 +0000)]
[Qt] One more unreviewed gardening after r113945 and r113961.

* platform/qt-5.0-wk2/fast/dom/prototype-inheritance-2-expected.txt:

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

8 years ago[Chromium] Enable INPUT_TYPE_DATE
tkent@chromium.org [Thu, 12 Apr 2012 14:21:52 +0000 (14:21 +0000)]
[Chromium] Enable INPUT_TYPE_DATE
https://bugs.webkit.org/show_bug.cgi?id=83761

Reviewed by Kentaro Hara.

Source/WebCore:

* html/DateInputType.cpp:
Touch it to avoid build issues. No code changes.
* html/DateInputType.h: ditto.
* html/InputType.cpp: ditto.

Source/WebKit/chromium:

* features.gypi: Turn ENABLE_INPUT_TYPE_DATE on.

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

8 years agoWeb Inspector: annotate the rest of profiler front-end for closure compiler
yurys@chromium.org [Thu, 12 Apr 2012 14:13:49 +0000 (14:13 +0000)]
Web Inspector: annotate the rest of profiler front-end for closure compiler
https://bugs.webkit.org/show_bug.cgi?id=83781

All remaining Profiler front-end files are annotated for closure compiler.

Reviewed by Pavel Feldman.

* inspector/compile-front-end.py:
* inspector/front-end/CSSSelectorProfileView.js:
* inspector/front-end/HeapSnapshotProxy.js:
(WebInspector.HeapSnapshotWorkerWrapper):
(WebInspector.HeapSnapshotWorkerWrapper.prototype.postMessag):
(WebInspector.HeapSnapshotWorkerWrapper.prototype.terminate):
(WebInspector.HeapSnapshotWorker):
(WebInspector.HeapSnapshotProxyObject.prototype.callFactoryMethod):
(WebInspector.HeapSnapshotProxyObject.prototype.callMethod):
* inspector/front-end/HeapSnapshotWorkerDispatcher.js:
* inspector/front-end/TopDownProfileDataGridTree.js:
(WebInspector.TopDownProfileDataGridTree.prototype.exclude):
* inspector/front-end/externs.js:
(addEventListener):

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

8 years agoWeb Inspector: Node Value should not get corrupt while jump over different matches...
commit-queue@webkit.org [Thu, 12 Apr 2012 13:39:54 +0000 (13:39 +0000)]
Web Inspector: Node Value should not get corrupt while jump over different matches in search.
https://bugs.webkit.org/show_bug.cgi?id=83758

The order in which updateEntryHide is called for cached
highlightResults is changed in "last changed first corrected" order to preserve the semantic of node.

Patch by Sam D <dsam2912@gmail.com> on 2012-04-12
Reviewed by Pavel Feldman.

No new tests required.

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype._updateSearchHighlight):

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

8 years ago[GTK] Test runner crashes without recent versions of pulseaudio-utils
commit-queue@webkit.org [Thu, 12 Apr 2012 13:33:24 +0000 (13:33 +0000)]
[GTK] Test runner crashes without recent versions of pulseaudio-utils
https://bugs.webkit.org/show_bug.cgi?id=83774

Patch by Simon Pena <spena@igalia.com> on 2012-04-12
Reviewed by Philippe Normand.

Besides checking that pactl is available, check also that its output
is the expected one, and handle gracefully when it isn't, when
trying to unload pulseaudio modules.

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

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

8 years ago[Qt] Use QRawFont when building with Qt 5
pierre.rossi@gmail.com [Thu, 12 Apr 2012 13:28:22 +0000 (13:28 +0000)]
[Qt] Use QRawFont when building with Qt 5
https://bugs.webkit.org/show_bug.cgi?id=78001

Source/WebCore:

Up until now, fonts in the Qt port have been handled via
the QFont API. QRawFont offers a lower-level API enabling
us to be more in line with what other WebKit ports do.
This patch proceeds to switching over to QRawFont, and
effectively use an earlier change by Andreas Kling
that remained guarded up until now.

Reviewed by Simon Hausmann.

No new tests since this is refactoring of existing
functionality.

* Target.pri:
* platform/graphics/Font.cpp:
(WebCore::Font::drawText):
* platform/graphics/Font.h:
(Font):
(WebCore):
(WebCore::Font::syntheticFont): Added.
* platform/graphics/SimpleFontData.h:
(SimpleFontData):
(WebCore::SimpleFontData::getQtRawFont):
(WebCore):
* platform/graphics/qt/FontCacheQt.cpp:
(WebCore::rawFontForCharacters):
(WebCore):
(WebCore::FontCache::getFontDataForCharacters):
(WebCore::FontCache::createFontPlatformData):
* platform/graphics/qt/FontCustomPlatformData.h:
(FontCustomPlatformData):
* platform/graphics/qt/FontCustomPlatformDataQt.cpp:
(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::FontCustomPlatformData::fontPlatformData):
(WebCore::createFontCustomPlatformData):
* platform/graphics/qt/FontPlatformData.h:
(WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
(FontPlatformDataPrivate):
(FontPlatformData):
* platform/graphics/qt/FontPlatformDataQt.cpp:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore):
(WebCore::FontPlatformData::operator==):
* platform/graphics/qt/FontQt.cpp:
(WebCore::fillPenForContext):
(WebCore::pathForGlyphs):
(WebCore::drawQtGlyphRun):
(WebCore::Font::drawComplexText):
(WebCore::Font::floatWidthForComplexText):
(WebCore::Font::offsetForPositionForComplexText):
(WebCore::Font::selectionRectForComplexText):
(WebCore::Font::initFormatForTextLayout):
(WebCore):
(WebCore::Font::drawGlyphs):
(WebCore::Font::syntheticFont):
(WebCore::Font::rawFont):
* platform/graphics/qt/FontQt4.cpp: Copied from Source/WebCore/platform/graphics/qt/FontQt.cpp.
(WebCore):
(WebCore::fromRawDataWithoutRef):
(WebCore::setupLayout):
(WebCore::fillPenForContext):
(WebCore::strokePenForContext):
(WebCore::drawTextCommon):
(WebCore::Font::drawComplexText):
(WebCore::Font::floatWidthForComplexText):
(WebCore::Font::offsetForPositionForComplexText):
(WebCore::Font::selectionRectForComplexText):
(WebCore::Font::canReturnFallbackFontsForComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::drawSimpleText):
(WebCore::Font::offsetForPositionForSimpleText):
(WebCore::Font::floatWidthForSimpleText):
(WebCore::Font::selectionRectForSimpleText):
(WebCore::Font::canExpandAroundIdeographsInComplexText):
(WebCore::Font::primaryFontHasGlyphForCharacter):
(WebCore::Font::emphasisMarkAscent):
(WebCore::Font::emphasisMarkDescent):
(WebCore::Font::emphasisMarkHeight):
(WebCore::Font::drawEmphasisMarksForSimpleText):
(WebCore::Font::font):
* platform/graphics/qt/SimpleFontDataQt.cpp:
(WebCore::SimpleFontData::platformInit):
* platform/qt/RenderThemeQt.cpp:
(WebCore::RenderThemeQt::fileListNameForWidth):
* platform/qt/RenderThemeQtMobile.cpp:
(WebCore::RenderThemeQtMobile::computeSizeBasedOnStyle):

Source/WebKit/qt:

Since QFont is not used internally, we now need
to query for a QFont that should be a good
enough match.

Reviewed by Simon Hausmann.

* Api/qwebpage.cpp:
(QWebPage::inputMethodQuery):
* WebCoreSupport/PopupMenuQt.cpp:
(WebCore::PopupMenuQt::show):
* WebCoreSupport/RenderThemeQStyle.cpp:
(WebCore::RenderThemeQStyle::computeSizeBasedOnStyle):

Tools:

Flip the QRawFont switch for Qt 5.

Reviewed by Simon Hausmann.

* qmake/mkspecs/features/features.prf:

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

8 years agoCalculate the cover rect of tiled backing store with the trajectory vector.
commit-queue@webkit.org [Thu, 12 Apr 2012 13:22:26 +0000 (13:22 +0000)]
Calculate the cover rect of tiled backing store with the trajectory vector.
https://bugs.webkit.org/show_bug.cgi?id=83462

Patch by JungJik Lee <jungjik.lee@samsung.com> on 2012-04-12
Reviewed by Kenneth Rohde Christiansen.

When trajectory vector is not zero, it is able to calculate the proper cover area.
No new tests - no new functionality.

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

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

8 years agoSource/WebCore: Web Inspector: extracting NetworkRequest from Resource (step 2)
pfeldman@chromium.org [Thu, 12 Apr 2012 13:12:48 +0000 (13:12 +0000)]
Source/WebCore: Web Inspector: extracting NetworkRequest from Resource (step 2)
https://bugs.webkit.org/show_bug.cgi?id=83773

Reviewed by Yury Semikhatsky.

This step moves request-related views from being resource-based to request-based.
See https://bugs.webkit.org/show_bug.cgi?id=61363 for the meta bug.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/ContentProviders.js:
(WebInspector.ResourceContentProvider):
(WebInspector.ResourceContentProvider.prototype.requestContent):
(WebInspector.ResourceContentProvider.prototype.searchInContent):
* inspector/front-end/NetworkItemView.js:
(WebInspector.NetworkItemView):
(WebInspector.RequestContentView):
(WebInspector.RequestContentView.prototype._ensureInnerViewShown):
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView.prototype._showPopover):
* inspector/front-end/NetworkRequest.js:
(WebInspector.NetworkRequest.prototype.resource):
* inspector/front-end/RawSourceCode.js:
(WebInspector.RawSourceCode.prototype._createContentProvider):
* inspector/front-end/RequestCookiesView.js: Renamed from Source/WebCore/inspector/front-end/ResourceCookiesView.js.
(WebInspector.RequestCookiesView):
* inspector/front-end/RequestHTMLView.js: Renamed from Source/WebCore/inspector/front-end/ResourceHTMLView.js.
(WebInspector.RequestHTMLView):
(WebInspector.RequestHTMLView.prototype._createIFrame):
* inspector/front-end/RequestHeadersView.js: Renamed from Source/WebCore/inspector/front-end/ResourceHeadersView.js.
(WebInspector.RequestHeadersView):
* inspector/front-end/RequestJSONView.js: Renamed from Source/WebCore/inspector/front-end/ResourceJSONView.js.
(WebInspector.RequestJSONView):
(WebInspector.RequestJSONView.parseJSON.WebInspector.RequestJSONView.parseJSONP):
* inspector/front-end/RequestPreviewView.js: Renamed from Source/WebCore/inspector/front-end/ResourcePreviewView.js.
(WebInspector.RequestPreviewView):
(WebInspector.RequestPreviewView.prototype.contentLoaded):
(WebInspector.RequestPreviewView.prototype._createPreviewView):
* inspector/front-end/RequestResponseView.js: Renamed from Source/WebCore/inspector/front-end/ResourceResponseView.js.
(WebInspector.RequestResponseView):
(WebInspector.RequestResponseView.prototype.get sourceView):
(WebInspector.RequestResponseView.prototype.contentLoaded):
* inspector/front-end/RequestTimingView.js: Renamed from Source/WebCore/inspector/front-end/ResourceTimingView.js.
(WebInspector.RequestTimingView):
(WebInspector.RequestTimingView.prototype._refresh):
* inspector/front-end/RequestView.js: Copied from Source/WebCore/inspector/front-end/NetworkRequest.js.
(WebInspector.RequestView):
(WebInspector.RequestView.prototype.hasContent):
(WebInspector.RequestView.hasTextContent):
(WebInspector.RequestView.nonSourceViewForRequest):
* inspector/front-end/ResourceView.js:
(WebInspector.ResourceSourceFrame._canonicalMIMEType):
(WebInspector.ResourceSourceFrame._mimeTypeForResource):
(WebInspector.ResourceSourceFrame.prototype.requestContent):
(WebInspector.ResourceSourceFrame.prototype._contentChanged):
(WebInspector.ResourceRevisionSourceFrame.prototype.requestContent):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:

Tools: Web Inspector: Disabling Inspector causes build failure on Windows
https://bugs.webkit.org/show_bug.cgi?id=83557

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-04-11
Reviewed by Pavel Feldman.

The calls to inspector APIs are not put under ENABLE(INSPECTOR) guard.
This change brings all such API calls under the guard.

* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
(LayoutTestController):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::invoke):

LayoutTests: Web Inspector: extracting NetworkRequest from Resource (step 2)
https://bugs.webkit.org/show_bug.cgi?id=83773

Reviewed by Yury Semikhatsky.

* http/tests/inspector/network/network-request-revision-content.html:
* http/tests/inspector/network/request-parameters-decoding.html:

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

8 years ago[Qt] Unreviewed gardening after r113945, update platform specific expected files.
ossy@webkit.org [Thu, 12 Apr 2012 12:42:04 +0000 (12:42 +0000)]
[Qt] Unreviewed gardening after r113945, update platform specific expected files.

* platform/qt-5.0-wk2/fast/dom/prototype-inheritance-2-expected.txt:
* platform/qt-5.0/Skipped: Unskip dom/prototype-inheritance-2.html and update its results.
* platform/qt-5.0/fast/dom/prototype-inheritance-2-expected.txt:
* platform/qt/fast/dom/prototype-inheritance-2-expected.txt:

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

8 years ago2012-04-12 Yury Semikhatsky <yurys@chromium.org>
yurys@chromium.org [Thu, 12 Apr 2012 12:19:23 +0000 (12:19 +0000)]
2012-04-12  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Fix a couple of compiler annotations after r113963.

        * inspector/front-end/TopDownProfileDataGridTree.js:
        (WebInspector.TopDownProfileDataGridTree):
        (WebInspector.TopDownProfileDataGridTree.prototype.exclude):

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

8 years agoWeb Inspector: add closure compiler annotations for profiler code
yurys@chromium.org [Thu, 12 Apr 2012 12:03:46 +0000 (12:03 +0000)]
Web Inspector: add closure compiler annotations for profiler code
https://bugs.webkit.org/show_bug.cgi?id=83700

Basic type annotations are added to most of the profiler front-end. Some
dead code removed.

Reviewed by Pavel Feldman.

* inspector/compile-front-end.py:
* inspector/front-end/BinarySearch.js:
(Object.defineProperty):
* inspector/front-end/BottomUpProfileDataGridTree.js:
(WebInspector.BottomUpProfileDataGridNode.prototype._restore):
(WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
(WebInspector.BottomUpProfileDataGridNode.prototype._willHaveChildren):
(WebInspector.BottomUpProfileDataGridTree):
* inspector/front-end/DataGrid.js:
* inspector/front-end/DetailedHeapshotGridNodes.js:
(WebInspector.HeapSnapshotInstanceNode.prototype._createChildNode):
(WebInspector.HeapSnapshotDiffNode.prototype.populateChildren.firstProviderPopulated):
(WebInspector.HeapSnapshotDiffNode.prototype.populateChildren.else.firstProviderPopulated):
(WebInspector.HeapSnapshotDiffNode.prototype.populateChildren):
* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.DetailedHeapshotView.prototype._changeBase):
(WebInspector.DetailedHeapshotView.prototype._setRetainmentDataGridSource):
(WebInspector.DetailedHeapshotView.prototype._helpClicked.appendHelp):
(WebInspector.DetailedHeapshotView.prototype._helpClicked):
* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot):
(HeapSnapshotMetainfo):
(WebInspector.HeapSnapshot.prototype._buildRetainers):
(WebInspector.HeapSnapshot.prototype._buildDominatedNodes):
(WebInspector.HeapSnapshot.prototype._markQueriableHeapObjects):
* inspector/front-end/ProfileDataGridTree.js:
(WebInspector.ProfileDataGridNode.prototype.insertChild):
(WebInspector.ProfileDataGridNode.prototype.removeChild):
(WebInspector.ProfileDataGridNode.prototype.removeChildren):
(WebInspector.ProfileDataGridNode.prototype._populate):
(WebInspector.ProfileDataGridTree.propertyComparator):
* inspector/front-end/ProfileView.js:
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfileHeader):
(WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.parsed):
(WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
(WebInspector.ProfilesPanel.prototype.performSearch.finishedCallback):
(WebInspector.ProfilesPanel.prototype.setRecordingProfile):
(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
(WebInspector.ProfilerDispatcher.prototype.addProfileHeader):
* inspector/front-end/TopDownProfileDataGridTree.js:
(WebInspector.TopDownProfileDataGridTree):
(WebInspector.TopDownProfileDataGridTree.prototype.exclude):
* inspector/front-end/externs.js:
(Array.prototype.binaryIndexOf):
(Array.prototype.sortRange):
(WebInspector.CSSSelectorProfileType):
(WebInspector.HeapSnapshotWorker):
(WebInspector.HeapSnapshotWorker.prototype.createObject):
(WebInspector.HeapSnapshotWorker.prototype.startCheckingForLongRunningCalls):
* inspector/front-end/heapProfiler.css:

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

8 years ago[Qt][WK2] Zoom gesture with double tap crashes on iframe when main frame has scroll...
commit-queue@webkit.org [Thu, 12 Apr 2012 11:12:10 +0000 (11:12 +0000)]
[Qt][WK2] Zoom gesture with double tap crashes on iframe when main frame has scroll offset.
https://bugs.webkit.org/show_bug.cgi?id=83428

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-04-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

When delegate scrolling is on, the frame view needs to ignore scrolling offset when converting
coordinates. It is already done at ScrollView base class and this patch copies the logic to the
FrameView subclass.
Also make sure that TouchAdjustment's findBest*() functions' return value are not ignored by the caller.

Test: touchadjustment/iframe-with-mainframe-scroll-offset.html

* page/EventHandler.cpp:
(WebCore::EventHandler::bestClickableNodeForTouchPoint):
(WebCore::EventHandler::bestZoomableAreaForTouchPoint):
* page/EventHandler.h:
(EventHandler):
* page/FrameView.cpp:
(WebCore::FrameView::convertFromRenderer):
(WebCore::FrameView::convertToRenderer):
* page/GestureTapHighlighter.cpp:
* testing/Internals.cpp:
(WebCore::Internals::setDelegatesScrolling):
(WebCore::Internals::touchPositionAdjustedToBestClickableNode):
(WebCore::Internals::bestZoomableAreaForTouchPoint):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:

Source/WebKit2:

When delegate scrolling is on, the frame view needs to ignore scrolling offset when converting
coordinates. It is already done at ScrollView base class and this patch copies the logic to the
FrameView subclass.
Also make sure that TouchAdjustment's findBest*() functions' return value are not ignored by the caller.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::highlightPotentialActivation):
(WebKit::WebPage::findZoomableAreaForPoint):

LayoutTests:

* touchadjustment/scroll-delegation/iframe-with-mainframe-scroll-offset-expected.txt: Added.
* touchadjustment/scroll-delegation/iframe-with-mainframe-scroll-offset.html: Added.
* touchadjustment/zoom-basic.html:

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

8 years ago[Qt] Unreviewed gardening after r113945, update platform specific expected files.
ossy@webkit.org [Thu, 12 Apr 2012 11:01:40 +0000 (11:01 +0000)]
[Qt] Unreviewed gardening after r113945, update platform specific expected files.

* platform/qt-4.8/fast/dom/Window/window-properties-expected.txt:
* platform/qt-5.0-wk2/fast/dom/Window/window-properties-expected.txt:
* platform/qt-5.0/fast/dom/Window/window-properties-expected.txt:

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

8 years ago[Qt] Two canvas tests fail with QT_IMAGE_DECODER=0 setup
ossy@webkit.org [Thu, 12 Apr 2012 10:52:14 +0000 (10:52 +0000)]
[Qt] Two canvas tests fail with QT_IMAGE_DECODER=0 setup
https://bugs.webkit.org/show_bug.cgi?id=83764

The following tests were failed after r108792:
- canvas-toDataURL-case-insensitive-mimetype.html
- toDataURL-supportedTypes.html
because supportedImageMIMETypesForEncoding wasn't filled
with MIME types in case of QT_IMAGE_DECODER=0 build setup.

Patch by Zoltan Horvath <zoltan@webkit.org> on 2012-04-12
Reviewed by Csaba Osztrogon√°c.

Fixes existing tests.

* platform/MIMETypeRegistry.cpp:
(WebCore::initializeSupportedImageMIMETypesForEncoding):

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

8 years agoUnreviewed, rolling out r113931.
commit-queue@webkit.org [Thu, 12 Apr 2012 10:32:26 +0000 (10:32 +0000)]
Unreviewed, rolling out r113931.
http://trac.webkit.org/changeset/113931
https://bugs.webkit.org/show_bug.cgi?id=83766

broke 4 tests on JSC platforms (Requested by philn-tp on
#webkit).

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

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/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:
* platform/chromium/fast/dom/HTMLSelectElement/named-options-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/mac/fast/dom/prototype-inheritance-2-expected.txt:

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

8 years ago[Chromium] Fix !ENABLE(PAGE_POPUP) build
tkent@chromium.org [Thu, 12 Apr 2012 10:26:42 +0000 (10:26 +0000)]
[Chromium] Fix !ENABLE(PAGE_POPUP) build

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl): Wrap m_pagePopup with ENABLE(PAGE_POPUP).

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

8 years agoUnreviewed, remove test expectations for worker-reload.html, as
yutak@chromium.org [Thu, 12 Apr 2012 10:19:27 +0000 (10:19 +0000)]
Unreviewed, remove test expectations for worker-reload.html, as
the source of flakiness was removed in r113292.

* platform/chromium/test_expectations.txt:
* platform/mac/test_expectations.txt:

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

8 years ago[Chromium] Add PagePopup implementation
tkent@chromium.org [Thu, 12 Apr 2012 09:59:33 +0000 (09:59 +0000)]
[Chromium] Add PagePopup implementation
https://bugs.webkit.org/show_bug.cgi?id=81081

Reviewed by Adam Barth.

Add WebPagePopupImpl class, which is an implementation of
WebCore::PagePopup interface and WebKit::WebPagePopup interface. It's a
WebWidget which has a Page object.

No new tests because this makes no behavior change yet.

* WebKit.gyp: Add WebPagePopupImpl.h.
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::hasOpenedPopup): Supports the PagePopup.
(WebKit::ChromeClientImpl::openPagePopup):
just delegate to WebViewImpl::openPagePopup().
(WebKit::ChromeClientImpl::closePagePopup): ditto.

* src/WebPagePopupImpl.cpp:
(PagePopupChromeClient):
This is a light implementation of ChromeClient for the page in
WebPagePopupImpl. This is a friend of WebPagePopupImpl becase of ease of
access to its members.
(WebKit::PagePopupChromeClient::PagePopupChromeClient):
(WebKit::WebPagePopupImpl::WebPagePopupImpl):
(WebKit::WebPagePopupImpl::~WebPagePopupImpl):
(WebKit::WebPagePopupImpl::init):
(WebKit::WebPagePopupImpl::initPage):
(WebKit::WebPagePopupImpl::size):
(WebKit::WebPagePopupImpl::animate): Calls PageWidgetDelegate::animate().
(WebKit::WebPagePopupImpl::composite):
(WebKit::WebPagePopupImpl::layout): Calls PageWidgetDelegate::layout().
(WebKit::WebPagePopupImpl::paint): Calls PageWidgetDelegate::paint().
(WebKit::WebPagePopupImpl::resize):
(WebKit::WebPagePopupImpl::handleKeyEvent):
(WebKit::WebPagePopupImpl::handleCharEvent):
(WebKit::WebPagePopupImpl::handleGestureEvent):
(WebKit::WebPagePopupImpl::handleInputEvent):
(WebKit::WebPagePopupImpl::setFocus):
(WebKit::WebPagePopupImpl::close): Delete the page, and kill itself.
(WebKit::WebPagePopupImpl::closePopup):
(WebKit::WebPagePopup::create):
* src/WebPagePopupImpl.h: Added.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl): Initialize m_pagePopup.
(WebKit::WebViewImpl::handleKeyEvent):
Renamed from keyEvent(). Forward key events to a PagePopup if it is open.
(WebKit::WebViewImpl::handleCharEvent):
Renamed from charEvent(). Forward char events to a PagePopup if it is open.
(WebKit::WebViewImpl::openPagePopup):
Added. Instantiate a WebPagePopupImpl, calculates a good bounding
rectangle of the page popup from the specified element rectangle,
initialize the WebPagePopupImpl, and stop caret blink.
(WebKit::WebViewImpl::closePagePopup):
Close the popup, clear m_pagePopup, and resume caret blink.
(WebKit::WebViewImpl::setFocus): Hide all the popups.
(WebKit::WebViewImpl::hidePopups): Hide the page popup too.
* src/WebViewImpl.h:
(WebKit::WebViewImpl::hasOpenedPopup): Checks the page popup too.

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

8 years ago[Qt][ARM] Buildfix after r113934.
ossy@webkit.org [Thu, 12 Apr 2012 09:51:00 +0000 (09:51 +0000)]
[Qt][ARM] Buildfix after r113934.

Reviewed by Zoltan Herczeg.

* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::compare8):
(MacroAssemblerARM):

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

8 years ago[Qt] Unreviewed gardening after r113885.
kkristof@inf.u-szeged.hu [Thu, 12 Apr 2012 09:01:45 +0000 (09:01 +0000)]
[Qt] Unreviewed gardening after r113885.

* platform/qt/css2.1/20110323/replaced-elements-001-expected.png:
* platform/qt/css2.1/20110323/replaced-elements-001-expected.txt:

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

8 years ago[BlackBerry] Upstreaming BlackBerry-specific changes to PluginView -- remove unused...
charles.wei@torchmobile.com.cn [Thu, 12 Apr 2012 08:51:40 +0000 (08:51 +0000)]
[BlackBerry] Upstreaming BlackBerry-specific changes to PluginView -- remove unused functions
https://bugs.webkit.org/show_bug.cgi?id=83756

Reviewed by George Staikos.

PluginView::halt(), PluginView::restart() have been removed from
upstreaming code, should remove them from BlackBerry porting also.

* plugins/blackberry/PluginViewBlackBerry.cpp:

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

8 years ago[Qt] Unreveiwed gardening. Skip the failing reftest.
kkristof@inf.u-szeged.hu [Thu, 12 Apr 2012 08:50:53 +0000 (08:50 +0000)]
[Qt] Unreveiwed gardening. Skip the failing reftest.

* platform/qt/Skipped: skip fast/workers/worker-multi-startup.html

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

8 years ago[Chromium] The size of glyphStorage should be passed to substituteWithVerticalGlyphs()
bashi@chromium.org [Thu, 12 Apr 2012 08:49:04 +0000 (08:49 +0000)]
[Chromium] The size of glyphStorage should be passed to substituteWithVerticalGlyphs()
https://bugs.webkit.org/show_bug.cgi?id=83751

Reviewed by Kent Tamura.

The last argument of substituteWithVerticalGlyphs() should be
the size of |glyphStorage|.

No new tests because we can't test the fix by layout tests.
I confirmed the fix with ASAN.

* platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
(WebCore::GlyphPage::fill):

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

8 years ago[BlackBerry] We shouldn't set empty Content-Length & Content-Type to a request's...
commit-queue@webkit.org [Thu, 12 Apr 2012 08:37:26 +0000 (08:37 +0000)]
[BlackBerry] We shouldn't set empty Content-Length & Content-Type to a request's headers.
https://bugs.webkit.org/show_bug.cgi?id=83349

When there is a redirection for a POST request, we change POST to GET and set
Content-Length/Content-Type to empty strings.
We should remove these headers instead of adding empty strings.

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

No new tests. Refactor.

* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::handleRedirect):
* platform/network/blackberry/ResourceRequest.h:
(ResourceRequest):
* platform/network/blackberry/ResourceRequestBlackBerry.cpp:
(WebCore::ResourceRequest::clearHTTPContentLength):
(WebCore):
(WebCore::ResourceRequest::clearHTTPContentType):

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

8 years ago[Qt] ImageBuffer: Canonical mimeType for encoding implies startsWith('image/')
noel.gordon@gmail.com [Thu, 12 Apr 2012 08:31:26 +0000 (08:31 +0000)]
[Qt] ImageBuffer: Canonical mimeType for encoding implies startsWith('image/')
https://bugs.webkit.org/show_bug.cgi?id=83746

Reviewed by Simon Hausmann.

Canonical image mimeTypes begin with "image/", and this is tested by an ASSERT
guard in toDataURL(): that checks the WebCore mimeType registry for image-for-
encoding mimeType. There is no need to also test mimeType.startsWith("image/")
since that is a given.

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

* platform/graphics/qt/ImageBufferQt.cpp:
(WebCore::ImageBuffer::toDataURL):

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

8 years ago[Chromium] Move some code of WebViewImpl and WebFrameImpl to PageWidgetDelegate
tkent@chromium.org [Thu, 12 Apr 2012 08:22:26 +0000 (08:22 +0000)]
[Chromium] Move some code of WebViewImpl and WebFrameImpl to PageWidgetDelegate
https://bugs.webkit.org/show_bug.cgi?id=83750

Reviewed by Adam Barth.

In order to share code in WebViewImpl and the incoming WebPagePopupImpl,
we move some code of WebViewImpl and WebFrameImpl to PageWidgetDelegate.
PageWidgetDelegate is a set of static functions because we can't use
virtual inheritance in this case and we don't want to move WebView's
data members to another class.

No new tests. Just refactoring.

* WebKit.gyp: Add PageWidgetDelegate.{cpp,h} and WebPagePopupImpl.h.
* src/PageWidgetDelegate.cpp: Added.
(WebKit::mainFrameView):
(WebKit::PageWidgetDelegate::animate):
Moved from a part of WebViewImpl::animatie()
(WebKit::PageWidgetDelegate::layout):
Moved from WebViewImpl::layout() and WebFrameImpl::layout().
(WebKit::PageWidgetDelegate::paint):
Moved from WebFrameImpl::paint() and paintWithContext().
(WebKit::PageWidgetDelegate::handleInputEvent):
Moved from a part of WebViewImpl::handleInputEvent().
(WebKit::PageWidgetEventHandler::handleMouseMove):
Common implementation of an event handling.
(WebKit::PageWidgetEventHandler::handleMouseLeave): ditto.
(WebKit::PageWidgetEventHandler::handleMouseDown): ditto.
(WebKit::PageWidgetEventHandler::handleMouseUp): ditto.
(WebKit::PageWidgetEventHandler::handleMouseWheel): ditto.
(WebKit::PageWidgetEventHandler::handleTouchEvent): ditto.
* src/PageWidgetDelegate.h: Added.
* src/WebFrameImpl.cpp:
Remove layout(), paintWithContext(), and paint(). They are moved to
PageWidgetDelegate.
* src/WebFrameImpl.h:
(WebFrameImpl): Remove layout(), paintWithContext(), and paint().
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleMouseLeave):
Renamed from mouseLeave(), use PageWidgetDelegate::handleMouseLeave().
(WebKit::WebViewImpl::handleMouseDown):
Renamed from mouseDown(), use PageWidgetDelegate::handleMouseDown().
(WebKit::WebViewImpl::handleMouseUp):
Renamed from mouseUp(), use PageWidgetDelegate::handleMouseUp().
(WebKit::WebViewImpl::scrollBy): Calls renamed handleMouseWheel().
(WebKit::WebViewImpl::handleGestureEvent): Renamed from gestureEvent().
(WebKit::WebViewImpl::handleKeyEvent): Renamed from keyEvent().
(WebKit::WebViewImpl::handleCharEvent): Renamed from charEvent().
(WebKit::WebViewImpl::updateAnimations): Uses PageWidgetDelegate::animate().
(WebKit::WebViewImpl::layout): Uses PageWidgetDelegate::layout().
(WebKit::WebViewImpl::paint): Uses PageWidgetDelegate::paint().
(WebKit::WebViewImpl::handleInputEvent): Uses PageWidgetDelegate::handleInputEvent().
* src/WebViewImpl.h:

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

8 years ago[chromium] Fix Windows compiler warnings in webkit_unit_test target
enne@google.com [Thu, 12 Apr 2012 08:09:03 +0000 (08:09 +0000)]
[chromium] Fix Windows compiler warnings in webkit_unit_test target
https://bugs.webkit.org/show_bug.cgi?id=83732

Reviewed by Kent Tamura.

* tests/CCDamageTrackerTest.cpp:
(WebKitTests::TEST_F):
* tests/CCLayerImplTest.cpp:
(WebCore::TEST):
* tests/CCLayerTreeHostCommonTest.cpp:
(WebKitTests::TEST):
* tests/CCLayerTreeHostImplTest.cpp:
(WebKitTests::TEST_F):
* tests/CCQuadCullerTest.cpp:
(WebCore::TEST):
* tests/FloatQuadTest.cpp:
(WebCore::TEST):
* tests/ScrollAnimatorNoneTest.cpp:
(TEST_F):
* tests/TreeSynchronizerTest.cpp:
(WebKitTests::TEST):
* tests/WebLayerTest.cpp:

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

8 years agoUnreviewed, GTK rebaseline after r113945.
philn@webkit.org [Thu, 12 Apr 2012 07:08:09 +0000 (07:08 +0000)]
Unreviewed, GTK rebaseline after r113945.

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

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

8 years agoImplement Location.ancestorOrigins
abarth@webkit.org [Thu, 12 Apr 2012 06:35:40 +0000 (06:35 +0000)]
Implement Location.ancestorOrigins
https://bugs.webkit.org/show_bug.cgi?id=83493

Reviewed by David Levin.

Source/WebCore:

Test: fast/dom/Window/Location/ancestor-origins.html

This patch implements Location.ancestorOrigins(), which returns a list
of the origins of the enclosing frames.  This API has been discussed
both on webkit-dev (see discussion following
https://lists.webkit.org/pipermail/webkit-dev/2012-March/020090.html)
and on the whatwg list (see discussion following
http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2012-March/035188.html).

* page/Location.cpp:
(WebCore::Location::ancestorOrigins):
(WebCore):
* page/Location.h:
(Location):
* page/Location.idl:

LayoutTests:

* fast/dom/Window/Location/ancestor-origins-expected.txt: Added.
* fast/dom/Window/Location/ancestor-origins.html: Added.

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

8 years agoUnreviewed rebaseline.
commit-queue@webkit.org [Thu, 12 Apr 2012 06:05:29 +0000 (06:05 +0000)]
Unreviewed rebaseline.

Patch by Antonio Gomes <agomes@rim.com> on 2012-04-11

* media/nodesFromRect-shadowContent-expected.txt:

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

8 years agoIndexedDB: Stub out WebKit interface for get(IndexedKeyRange)
commit-queue@webkit.org [Thu, 12 Apr 2012 05:51:16 +0000 (05:51 +0000)]
IndexedDB: Stub out WebKit interface for get(IndexedKeyRange)
https://bugs.webkit.org/show_bug.cgi?id=83637

Patch by Alec Flett <alecflett@chromium.org> on 2012-04-11
Reviewed by Kent Tamura.

This is just a stub-out of IDBObjectStore.get(IDBKeyRange) to coordinate
a landing in chromium

* public/WebIDBObjectStore.h:
(WebKit::WebIDBObjectStore::get):
(WebIDBObjectStore):
* src/IDBObjectStoreBackendProxy.cpp:
(WebKit::IDBObjectStoreBackendProxy::get):
(WebKit):
* src/IDBObjectStoreBackendProxy.h:
(IDBObjectStoreBackendProxy):
* src/WebIDBObjectStoreImpl.cpp:
(WebKit::WebIDBObjectStoreImpl::get):
(WebKit):
* src/WebIDBObjectStoreImpl.h:
(WebIDBObjectStoreImpl):

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

8 years agofast/text/international/font-fallback-to-common-script.html fails on Mac
commit-queue@webkit.org [Thu, 12 Apr 2012 05:40:27 +0000 (05:40 +0000)]
fast/text/international/font-fallback-to-common-script.html fails on Mac
https://bugs.webkit.org/show_bug.cgi?id=83743

Patch by Matt Falkenhagen <falken@chromium.org> on 2012-04-11
Reviewed by Kent Tamura.

Change test not assume that there is no font setting for Simplified Chinese.

* fast/text/international/font-fallback-to-common-script.html:
* platform/mac/Skipped:

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

8 years agoIt is incorrect to short-circuit Branch(LogicalNot(@a)) if boolean speculations on...
fpizlo@apple.com [Thu, 12 Apr 2012 04:19:07 +0000 (04:19 +0000)]
It is incorrect to short-circuit Branch(LogicalNot(@a)) if boolean speculations on @a may fail
https://bugs.webkit.org/show_bug.cgi?id=83744
<rdar://problem/11206946>

Source/JavaScriptCore:

Reviewed by Andy Estes.

This does the conservative thing: it only short-circuits Branch(LogicalNot(@a)) if @a is a node
that is statically known to return boolean results.

* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):

LayoutTests:

Rubber stamped by Andy Estes.

* fast/js/dfg-branch-not-fail-expected.txt: Added.
* fast/js/dfg-branch-not-fail.html: Added.
* fast/js/script-tests/dfg-branch-not-fail.js: Added.
(foo):
(bar):

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

8 years agoAudioContext createChannelSplitter() method should have optional argument for number...
commit-queue@webkit.org [Thu, 12 Apr 2012 03:48:45 +0000 (03:48 +0000)]
AudioContext createChannelSplitter() method should have optional argument for number of outputs
https://bugs.webkit.org/show_bug.cgi?id=83648

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-04-11
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/audiochannelsplitter.html

* Modules/webaudio/AudioChannelSplitter.cpp:
(WebCore::AudioChannelSplitter::create):
(WebCore::AudioChannelSplitter::AudioChannelSplitter):
(WebCore::AudioChannelSplitter::process):
* Modules/webaudio/AudioChannelSplitter.h:
(AudioChannelSplitter):
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::createChannelSplitter):
(WebCore):
* Modules/webaudio/AudioContext.h:
(AudioContext):
* Modules/webaudio/AudioContext.idl:

LayoutTests:

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

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

8 years ago[BlackBerry] Revert the changes that depend on Event changes, which is reverted alrea...
charles.wei@torchmobile.com.cn [Thu, 12 Apr 2012 03:34:14 +0000 (03:34 +0000)]
[BlackBerry] Revert the changes that depend on Event changes, which is reverted already internally.
https://bugs.webkit.org/show_bug.cgi?id=83456

Reviewed by George Staikos.

No new tests, just to make BlackBerry-porting to build.

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

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

8 years ago[BlackBerry] There shouldn't be two or more Accept-Language in platformRequest's...
commit-queue@webkit.org [Thu, 12 Apr 2012 03:06:24 +0000 (03:06 +0000)]
[BlackBerry] There shouldn't be two or more Accept-Language in platformRequest's headerList.
https://bugs.webkit.org/show_bug.cgi?id=83670

FrameLoaderClientBlackBerry::dispatchWillSendRequest and NetworkManager::startJob will call
ResourceRequest::initializePlatformRequest. Accept-Language is added two times.
We should avoid the second adding to improve performance.

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-04-11
Reviewed by Rob Buis.

No new tests. Refactor.

* platform/network/blackberry/ResourceRequestBlackBerry.cpp:
(WebCore::ResourceRequest::initializePlatformRequest):

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

8 years ago[BlackBerry] MMRPlayer will hang webkit thread when retrieving media metadata
commit-queue@webkit.org [Thu, 12 Apr 2012 02:10:26 +0000 (02:10 +0000)]
[BlackBerry] MMRPlayer will hang webkit thread when retrieving media metadata
https://bugs.webkit.org/show_bug.cgi?id=80978

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-04-11
Reviewed by Rob Buis.

Source/WebCore:

RIM PR: 143471
Implemented the interface function onWaitMetadataNotified()
which starts a timer to wait for the metadata retrieving to
finish, and pops up a dialog to notify the user what to do
if there still is no metadata when the timer fires.

This patch also contributed by Max Feil <mfeil@rim.com>.
Internally reviewed by Max Feil.

Test: http/tests/media/video-throttled-load-metadata.html

* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
(WebCore):
(WebCore::MediaPlayerPrivate::onWaitMetadataNotified):
(WebCore::MediaPlayerPrivate::waitMetadataTimerFired):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
(MediaPlayerPrivate):

LayoutTests:

RIM PR: 143471
Added a layout test which simulates a slow network, and starts a web worker
thread to write a log message when retrieving media metadata to see if the
webkit thread is blocked by media retrieving thread.

* http/tests/media/video-throttled-load-metadata-expected.txt: Added.
* http/tests/media/video-throttled-load-metadata-worker.js: Added.
* http/tests/media/video-throttled-load-metadata.html: Added.

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

8 years ago[chromium] Fix Windows warnings in WebSocketDeflaterTest
bashi@chromium.org [Thu, 12 Apr 2012 01:55:35 +0000 (01:55 +0000)]
[chromium] Fix Windows warnings in WebSocketDeflaterTest
https://bugs.webkit.org/show_bug.cgi?id=83731

Reviewed by Kent Tamura.

Use const char* instead of const char[] to suppress warnings on
Windows.

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

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

8 years agoInvalid Union Reference in StructureStubInfo.{cpp.h}
msaboff@apple.com [Thu, 12 Apr 2012 01:38:41 +0000 (01:38 +0000)]
Invalid Union Reference in StructureStubInfo.{cpp.h}
https://bugs.webkit.org/show_bug.cgi?id=83735

Reviewed by Filip Pizlo.

Changed the references to u.getByIdProtoList and u.getByIdSelfList
to be consistent.

* bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::visitWeakReferences):
* bytecode/StructureStubInfo.h:
(JSC::StructureStubInfo::initGetByIdSelfList):

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

8 years agoUnreviewed attempting to make Qt's eccentric hardware work.
fpizlo@apple.com [Thu, 12 Apr 2012 01:13:07 +0000 (01:13 +0000)]
Unreviewed attempting to make Qt's eccentric hardware work.

* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::compare8):
(MacroAssemblerARM):
* assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::compare8):
(MacroAssemblerMIPS):
* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::compare8):
(MacroAssemblerSH4):

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

8 years agoLayout Test webaudio/* is flaky
jer.noble@apple.com [Thu, 12 Apr 2012 01:09:06 +0000 (01:09 +0000)]
Layout Test webaudio/* is flaky
https://bugs.webkit.org/show_bug.cgi?id=83624

Reviewed by Chris Rogers.

Source/WebCore:

No new tests; fixes webaudio/ layout tests.

A merge error led to an Mutex overunlock situation, which caused all future mutex trylock
attempts to fail, but only on Windows. Remove the extraneous mutex unlock().

* Modules/webaudio/AudioBufferSourceNode.cpp:
(WebCore::AudioBufferSourceNode::process):

LayoutTests:

Re-enable webaudio/ layout tests on chromium-win.

* platform/chromium/test_expectations.txt:

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

8 years agoCorrect pixel snapping error in RenderBox::pixelSnappedClientWidth/Height
leviw@chromium.org [Thu, 12 Apr 2012 01:02:34 +0000 (01:02 +0000)]
Correct pixel snapping error in RenderBox::pixelSnappedClientWidth/Height
https://bugs.webkit.org/show_bug.cgi?id=83621

Reviewed by Eric Seidel.

Though the problem wouldn't yet manifest itself since we haven't flipped the switch on sub-pixel
layout, clientWidth and clientHeight, when pixel snapped, need to take the RenderBox's location
into account. Previously, ClientLeft/Top were used, but these are simply the width of the borders,
and don't include the box's sub-pixel location, which is needed to properly snap the width/height.

No new tests. Untestable until we switch to FractionalLayoutUnits. A test case that covers this
is in the subpixellayout branch and will land with the switch.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::pixelSnappedClientWidth):
(WebCore::RenderBox::pixelSnappedClientHeight):
(WebCore::RenderBox::scrollWidth): Replacing a raw zero with ZERO_LAYOUT_UNIT.

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

8 years agoAdd support for [ArrayClass] and use that on NodeList
arv@chromium.org [Thu, 12 Apr 2012 01:00:28 +0000 (01:00 +0000)]
Add support for [ArrayClass] and use that on NodeList
https://bugs.webkit.org/show_bug.cgi?id=81573

Reviewed by Adam Barth.

With this patch NodeLists now have Array.prototype on their prototype chain which allows
methods such as forEach and map to work on NodeLists.

http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#interface-nodelist

For V8 we need to set a flag on the WrapperTypeInfo since V8 uses FunctionTemplates which
does not allow setting the prototype to a non FunctionTemplate so the prototype is therefore
set when the constructor is created.

For JSC we just pass the right prototype object when creating the NodeList prototype. JSC has
a bug (81588) that prevents toString to work as specced on Array.prototype.toString. This
causes test failures in the tests until that has been fixed.

Source/WebCore:

Test: fast/dom/NodeList/node-list-array-class.html

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader): Include ArrayPrototype.h if an ArrayClass.
(GenerateImplementation): If ArrayClass use arrayPrototype as prototype.
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNamedConstructorCallback):
(GenerateImplementation): Adds a flag to the WrapperTypeInfo.
* bindings/scripts/IDLAttributes.txt: Adds new attribute: ArrayClass.
* 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/V8TestObj.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore):
* bindings/v8/V8BindingPerContextData.cpp:
(WebCore::V8BindingPerContextData::init): Get the array prototype too.
(WebCore::V8BindingPerContextData::createWrapperFromCacheSlowCase):
(WebCore::V8BindingPerContextData::constructorForTypeSlowCase): If this is an ArrayClass we need to
set the [[Prototype]].
* 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: Added.
* fast/dom/NodeList/node-list-array-class.html: Added.
* fast/dom/NodeList/nodelist-item-call-as-function-expected.txt:
* platform/chromium/fast/dom/HTMLSelectElement/named-options-expected.txt: Copied from LayoutTests/fast/dom/HTMLSelectElement/named-options-expected.txt.
* platform/chromium/inspector/console/command-line-api-expected.txt: Added.
* platform/chromium/inspector/console/console-dir-expected.txt:
* platform/chromium/inspector/console/console-format-collections-expected.txt:
* platform/mac/fast/dom/prototype-inheritance-2-expected.txt:

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