WebKit-https.git
6 years agoUnreviewed, rolling out r141964.
commit-queue@webkit.org [Wed, 6 Feb 2013 08:00:14 +0000 (08:00 +0000)]
Unreviewed, rolling out r141964.
http://trac.webkit.org/changeset/141964
https://bugs.webkit.org/show_bug.cgi?id=109014

caused performance regression (Requested by hayato on
#webkit).

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

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSAllInOne.cpp:
* css/DocumentRuleSets.cpp: Removed.
* css/DocumentRuleSets.h: Removed.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::collectRulesFromUserStyleSheets):
(WebCore):
(WebCore::makeRuleSet):
(WebCore::StyleResolver::resetAuthorStyle):
(WebCore::StyleResolver::appendAuthorStyleSheets):
(WebCore::StyleResolver::matchAuthorRules):
(WebCore::StyleResolver::matchUserRules):
(WebCore::StyleResolver::classNamesAffectedByRules):
(WebCore::StyleResolver::locateCousinList):
(WebCore::StyleResolver::canShareStyleWithElement):
(WebCore::StyleResolver::locateSharedStyle):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::checkRegionStyle):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::collectFeatures):
(WebCore::StyleResolver::reportMemoryUsage):
* css/StyleResolver.h:
(StyleResolver):
(WebCore::StyleResolver::usesSiblingRules):
(WebCore::StyleResolver::usesFirstLineRules):
(WebCore::StyleResolver::usesBeforeAfterRules):
(WebCore::StyleResolver::hasSelectorForAttribute):
(WebCore::StyleResolver::hasSelectorForClass):
(WebCore::StyleResolver::hasSelectorForId):
* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):

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

6 years agoAdd #if USE(V8) to Node::V8CollectableDuringMinorGCFlag
haraken@chromium.org [Wed, 6 Feb 2013 07:44:53 +0000 (07:44 +0000)]
Add #if USE(V8) to Node::V8CollectableDuringMinorGCFlag
https://bugs.webkit.org/show_bug.cgi?id=109009

Reviewed by Kent Tamura.

Node flags should be saved. V8CollectableDuringMinorGCFlag is used by V8 only.

* dom/Node.h:
(Node):

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

6 years agoAdds the WebGL Conformance Tests attrib folder.
gman@chromium.org [Wed, 6 Feb 2013 07:41:12 +0000 (07:41 +0000)]
Adds the WebGL Conformance Tests attrib folder.
https://bugs.webkit.org/show_bug.cgi?id=108901

Reviewed by Kenneth Russell.

* platform/chromium/TestExpectations:
* webgl/conformance/attribs/gl-disabled-vertex-attrib-expected.txt: Added.
* webgl/conformance/attribs/gl-disabled-vertex-attrib.html: Added.
* webgl/conformance/attribs/gl-enable-vertex-attrib-expected.txt: Added.
* webgl/conformance/attribs/gl-enable-vertex-attrib.html: Added.
* webgl/conformance/attribs/gl-vertex-attrib-expected.txt: Added.
* webgl/conformance/attribs/gl-vertex-attrib-render-expected.txt: Added.
* webgl/conformance/attribs/gl-vertex-attrib-render.html: Added.
* webgl/conformance/attribs/gl-vertex-attrib-zero-issues-expected.txt: Added.
* webgl/conformance/attribs/gl-vertex-attrib-zero-issues.html: Added.
* webgl/conformance/attribs/gl-vertex-attrib.html: Added.
* webgl/conformance/attribs/gl-vertexattribpointer-expected.txt: Added.
* webgl/conformance/attribs/gl-vertexattribpointer-offsets-expected.txt: Added.
* webgl/conformance/attribs/gl-vertexattribpointer-offsets.html: Added.
* webgl/conformance/attribs/gl-vertexattribpointer.html: Added.
* webgl/resources/webgl_test_files/conformance/attribs/00_test_list.txt: Added.
* webgl/resources/webgl_test_files/conformance/attribs/gl-disabled-vertex-attrib.html: Added.
* webgl/resources/webgl_test_files/conformance/attribs/gl-enable-vertex-attrib.html: Added.
* webgl/resources/webgl_test_files/conformance/attribs/gl-vertex-attrib-render.html: Added.
* webgl/resources/webgl_test_files/conformance/attribs/gl-vertex-attrib-zero-issues.html: Added.
* webgl/resources/webgl_test_files/conformance/attribs/gl-vertex-attrib.html: Added.
* webgl/resources/webgl_test_files/conformance/attribs/gl-vertexattribpointer-offsets.html: Added.
* webgl/resources/webgl_test_files/conformance/attribs/gl-vertexattribpointer.html: Added.

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

6 years agoUnreviewed gardening. Rebaseline navigator-detached-no-crash.html,
falken@chromium.org [Wed, 6 Feb 2013 07:07:35 +0000 (07:07 +0000)]
Unreviewed gardening. Rebaseline navigator-detached-no-crash.html,
whose output is affected by the disabling of web intents in Chromium.

* platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:

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

6 years agoUnreviewed gardening. Chromium disabled web intents.
falken@chromium.org [Wed, 6 Feb 2013 06:09:47 +0000 (06:09 +0000)]
Unreviewed gardening. Chromium disabled web intents.

* platform/chromium/TestExpectations:

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

6 years ago[Chromium] Split calendar-picker-key-operations.html into two
tkent@chromium.org [Wed, 6 Feb 2013 05:49:41 +0000 (05:49 +0000)]
[Chromium] Split calendar-picker-key-operations.html into two
https://bugs.webkit.org/show_bug.cgi?id=109006

Reviewed by Kentaro Hara.

Split calendar-picker-key-operations.html into two parts:
 - OS-independent part (calendar-picker-key-operations.html), and
 - OS-dependent part (calendar-picker-f4-key.html).

We had some troubles when we updated calendar-picker-key-operations.html
because the behavior by F4 key is OS-dependent. We move the test for F4
key to new test.

* platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-f4-key-expected.txt:
Added. It is expected that this contains FAIL line because we don't
support the F4 key behavior on OSX.
* platform/chromium-win/platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations-expected.txt:
Removed. Now the result of calendar-picker-key-operations.html is OS-independent.
* platform/chromium/fast/forms/calendar-picker/calendar-picker-f4-key-expected.txt: Added.
* platform/chromium/fast/forms/calendar-picker/calendar-picker-f4-key.html:
Added. Move from calendar-picker-key-operations.html.
* platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations.html:
Move the F4 key part to calendar-picker-f4-key.html.

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

6 years agoWeb Inspector: Add ending slashes automatically to file mappings.
vsevik@chromium.org [Wed, 6 Feb 2013 05:16:59 +0000 (05:16 +0000)]
Web Inspector: Add ending slashes automatically to file mappings.
https://bugs.webkit.org/show_bug.cgi?id=108936

Reviewed by Pavel Feldman.

* inspector/front-end/SettingsScreen.js:
(WebInspector.WorkspaceSettingsTab.prototype._addFileMappingClicked):

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

6 years agoMore updates to Caption user preferences
eric.carlson@apple.com [Wed, 6 Feb 2013 05:12:54 +0000 (05:12 +0000)]
More updates to Caption user preferences
https://bugs.webkit.org/show_bug.cgi?id=108997

Reviewed by Dean Jackson.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::captionPreferencesChanged): Give the media controls a chance
    to update for a preferences change.
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::updateSizes): Add optional "force update"
    param to force font size recalc even when the video size hasn't changed.
* html/shadow/MediaControlElements.h:

* html/shadow/MediaControls.cpp:
(WebCore::MediaControls::textTrackPreferencesChanged): New, force a font size recalc.
* html/shadow/MediaControls.h:

* html/track/TextTrackCueGeneric.cpp:
(WebCore::TextTrackCueGenericBoxElement::applyCSSProperties): Don't set width/size of cues
    that use default positioning. Use "start" as the default alignment.

* page/CaptionUserPreferencesMac.mm:
(WebCore::CaptionUserPreferencesMac::captionsWindowCSS): Set padding when the window is visible
    so it shows around the cue background.
(WebCore::CaptionUserPreferencesMac::captionsBackgroundCSS): Set padding to 0 when the background
    is visible.
(WebCore::CaptionUserPreferencesMac::windowRoundedCornerRadiusCSS): Add "px" to the border radius
    so it actually works.
* rendering/RenderTextTrackCue.cpp:
(WebCore::RenderTextTrackCue::layout): Special case generic cues with default style.
(WebCore::RenderTextTrackCue::repositionGenericCue):
* rendering/RenderTextTrackCue.h:

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

6 years agoFix EnumClass so that it can be used with switch statements.
mark.lam@apple.com [Wed, 6 Feb 2013 04:30:28 +0000 (04:30 +0000)]
Fix EnumClass so that it can be used with switch statements.
https://bugs.webkit.org/show_bug.cgi?id=109004.

Reviewed by Sam Weinig.

* wtf/EnumClass.h:
(WTF::EnumClass::operator==):
(WTF::EnumClass::operator!=):
(WTF::EnumClass::operator<):
(WTF::EnumClass::operator<=):
(WTF::EnumClass::operator>):
(WTF::EnumClass::operator>=):
(EnumClass):
(WTF::EnumClass::operator Value):

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

6 years agoSplit each RuleSet and feature out from StyleResolver into its own class.
hayato@chromium.org [Wed, 6 Feb 2013 04:28:57 +0000 (04:28 +0000)]
Split each RuleSet and feature out from StyleResolver into its own class.
https://bugs.webkit.org/show_bug.cgi?id=107777

Reviewed by Dimitri Glazkov.

Splitting each RuleSet and feature out from StyleResover into its onw class, DocumentRuleSets,
to manage them separately.

This is one of the attempts to try to resolve meta bug (bug 89879)
to lose StyleResolver's weight.  We need further action to factor
StyleResolver to separate it into some classes cleanly.
See also https://bugs.webkit.org/show_bug.cgi?id=108890. A following patch will address that.

No tests. No change in behavior.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSAllInOne.cpp:
* css/DocumentRuleSets.cpp: Added.
(WebCore):
(WebCore::DocumentRuleSets::DocumentRuleSets):
(WebCore::DocumentRuleSets::~DocumentRuleSets):
(WebCore::DocumentRuleSets::initUserStyle): New helper to initialize each RuleSets.
(WebCore::DocumentRuleSets::collectRulesFromUserStyleSheets): Factored out from StyleResolver.
(WebCore::makeRuleSet): Ditto.
(WebCore::DocumentRuleSets::resetAuthorStyle): Ditto.
(WebCore::DocumentRuleSets::appendAuthorStyleSheets): Ditto.
(WebCore::DocumentRuleSets::collectFeatures): Ditto.
(WebCore::DocumentRuleSets::reportMemoryUsage): New methods to report memory usage. Factored out from StyleResolver.
* css/DocumentRuleSets.h: Added.
(WebCore):
(DocumentRuleSets):
(WebCore::DocumentRuleSets::authorStyle): Moved from StyleResolver.
(WebCore::DocumentRuleSets::userStyle): Ditto.
(WebCore::DocumentRuleSets::features): Ditto.
(WebCore::DocumentRuleSets::sibling): Ditto.
(WebCore::DocumentRuleSets::uncommonAttribute): Ditto.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::appendAuthorStyleSheets): Now calls DocumentRuleSets::appendAuthorStyleSheets.
(WebCore::StyleResolver::matchAuthorRules): Use m_ruleSets.
(WebCore::StyleResolver::matchUserRules): Ditto.
(WebCore::StyleResolver::classNamesAffectedByRules): Ditto.
(WebCore::StyleResolver::locateCousinList): Ditto.
(WebCore::StyleResolver::canShareStyleWithElement): Ditto.
(WebCore::StyleResolver::locateSharedStyle): Ditto.
(WebCore::StyleResolver::styleForPage): Ditto.
(WebCore::StyleResolver::checkRegionStyle): Ditto.
(WebCore::StyleResolver::applyProperty): Ditto.
(WebCore::StyleResolver::reportMemoryUsage): Now calls DocumentRuleSets::reportMemoryUsage.
* css/StyleResolver.h:
(WebCore::StyleResolver::scopeResolver):
(StyleResolver):
(WebCore::StyleResolver::ruleSets): accessor r to DocumentRuleSets.
(WebCore::StyleResolver::usesSiblingRules): Use m_ruleSets.
(WebCore::StyleResolver::usesFirstLineRules): Ditto.
(WebCore::StyleResolver::usesBeforeAfterRules): Ditto.
(WebCore::StyleResolver::hasSelectorForAttribute): Ditto.
(WebCore::StyleResolver::hasSelectorForClass): Ditto.
(WebCore::StyleResolver::hasSelectorForId): Ditto.
* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):

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

6 years ago[CSS Grid Layout] Grid item's logical height is not properly recomputed after -webkit...
jchaffraix@webkit.org [Wed, 6 Feb 2013 03:01:11 +0000 (03:01 +0000)]
[CSS Grid Layout] Grid item's logical height is not properly recomputed after -webkit-grid-column / -webkit-grid-row changes
https://bugs.webkit.org/show_bug.cgi?id=108975

Reviewed by Tony Chang.

Source/WebCore:

Test: fast/css-grid-layout/implicit-position-dynamic-change.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::clearContainingBlockOverrideSize):
(WebCore::RenderBox::clearOverrideContainingBlockContentLogicalHeight):
* rendering/RenderBox.h:
Added clearOverrideContainingBlockContentLogicalHeight and updated clearContainingBlockOverrideSize
to use it.

* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::minContentForChild):
(WebCore::RenderGrid::maxContentForChild):
Added missing clearContainingBlockOverrideSize to ensure we don't use a previous layout's override.

LayoutTests:

* fast/css-grid-layout/implicit-position-dynamic-change-expected.txt: Added.
* fast/css-grid-layout/implicit-position-dynamic-change.html: Added.

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

6 years agoput_to_base should emit a Phantom for "value" across the ForceOSRExit
mhahnenberg@apple.com [Wed, 6 Feb 2013 02:53:55 +0000 (02:53 +0000)]
put_to_base should emit a Phantom for "value" across the ForceOSRExit
https://bugs.webkit.org/show_bug.cgi?id=108998

Reviewed by Oliver Hunt.

Otherwise, the OSR exit compiler could clobber it, which would lead to badness.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::tallyFrequentExitSites): Build fixes for when DFG debug logging is enabled.
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock): Added extra Phantoms for the "value" field where needed.
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile): Ditto.

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

6 years agoOptimize GlyphPage for case where all glyphs are available in the same font.
akling@apple.com [Wed, 6 Feb 2013 02:48:58 +0000 (02:48 +0000)]
Optimize GlyphPage for case where all glyphs are available in the same font.
<http://webkit.org/b/108835>
<rdar://problem/13157042>

Reviewed by Antti Koivisto.

Let GlyphPage begin optimistically assuming that all its glyphs will be represented in
the same SimpleFontData*. In this (very common) case, only keep a single SimpleFontData*.

If glyphs from multiple fonts are mixed in one page, an array of per-glyph SimpleFontData*
is allocated transparently.

4.98 MB progression on Membuster3.

* platform/graphics/GlyphPageTreeNode.cpp:
(WebCore::GlyphPageTreeNode::initializePage):
* platform/graphics/GlyphPage.h:
(WebCore::GlyphPage::createUninitialized):
(WebCore::GlyphPage::createZeroedSystemFallbackPage):
(WebCore::GlyphPage::createCopiedSystemFallbackPage):

    There are now three ways of constructing a GlyphPage, two of them are only used for
    creating system fallback pages.

(WebCore::GlyphPage::setGlyphDataForIndex):

    Hold off creating a SimpleFontData* array until we're sure there are two different
    SimpleFontData* backing the glyphs in this page.
    We don't store font data for glyph #0, instead we let the getters always return null for it.

(WebCore::GlyphPage::~GlyphPage):

    Free the SimpleFontData* array if needed.

(WebCore::GlyphPage::glyphDataForCharacter):
(WebCore::GlyphPage::glyphDataForIndex):
(WebCore::GlyphPage::fontDataForCharacter):

    The font data for glyph #0 is always a null pointer now.

(WebCore::GlyphPage::clearForFontData):

    Updated for new storage format.

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

6 years agoINPUT_MULTIPLE_FIELDS_UI: Read-only inputs should be focusable
tkent@chromium.org [Wed, 6 Feb 2013 02:34:32 +0000 (02:34 +0000)]
INPUT_MULTIPLE_FIELDS_UI: Read-only inputs should be focusable
https://bugs.webkit.org/show_bug.cgi?id=108795

Reviewed by Kentaro Hara.

Source/WebCore:

According to the standard [1], readonly form controls should be focusable.

- Sub-fields should be focusable if they are read-only. We should check
  isDisabled mainly.
- All keyboard operations should not be handled if a field is disabled,
  and focus navigation keyboard operations should be handled even if a
  field is read-only.

[1] http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#the-readonly-attribute

No new tests. Update
fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html
for the new behavior.

* html/BaseMultipleFieldsDateAndTimeInputType.cpp:
(WebCore::BaseMultipleFieldsDateAndTimeInputType::isKeyboardFocusable):
Make <input> focusable even if it is read-only.
* html/shadow/DateTimeEditElement.cpp:
(WebCore::DateTimeEditElement::isFieldOwnerDisabled):
Separate isFieldOwnerDisabledOrReadOnly into two.
(WebCore::DateTimeEditElement::isFieldOwnerReadOnly): Ditto.
(WebCore::DateTimeEditElement::updateUIState):
We don't need to focus out if this is read-only.
* html/shadow/DateTimeEditElement.h:
(DateTimeEditElement): Separate isFieldOwnerDisabledOrReadOnly into two.
* html/shadow/DateTimeFieldElement.cpp:
(WebCore::DateTimeFieldElement::defaultEventHandler):
Skip handleKeyboardEvent if the field is disabled or the owner input is
disabled or read-only. handleKeyboardEvent handles editing key
operations.
(WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
If this field is disabled or the owner input is disabled, all keyboard
inputs are ignored.
If this field is read-only, we handle only left and right arrows to
change focus, and skip down/up/backspace/del keys.
(WebCore::DateTimeFieldElement::isFieldOwnerDisabled):
A helper function to check disable state of the owner input.
(WebCore::DateTimeFieldElement::isFieldOwnerReadOnly):
A helper function to check read-only state of the owner input.
(WebCore::DateTimeFieldElement::isFocusable):
This field should be focusable if it is read-only and not disabled.
* html/shadow/DateTimeFieldElement.h:
(FieldOwner): Separate isFieldOwnerDisabledOrReadOnly into two.
(DateTimeFieldElement):
Declare isFieldOwnerDisabled and isFieldOwnerReadOnly.
* html/shadow/DateTimeNumericFieldElement.cpp:
(WebCore::DateTimeNumericFieldElement::handleKeyboardEvent):
Remove redundant isDisabled check. It is done in
DateTimeFieldElement::defaultEventHandler.

LayoutTests:

* fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt:
* fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:

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

6 years agoBuilding with MinGW compiler dies with gtest errors
commit-queue@webkit.org [Wed, 6 Feb 2013 02:27:39 +0000 (02:27 +0000)]
Building with MinGW compiler dies with gtest errors
https://bugs.webkit.org/show_bug.cgi?id=108470

Patch by PaweĊ‚ Forysiuk <tuxator@o2.pl> on 2013-02-05
Reviewed by Martin Robinson.

Variable Libraries_libgtest_la_CXXFLAGS blindly assumes that
pthreads will always be enabled. Make using pthreads for gtest
conditional on the build target.

* gtest/GNUmakefile.am: Set Libraries_libgtest_la_CXXFLAGS accordingly to the build target.

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

6 years agoUnreviewed build fix.
roger_fong@apple.com [Wed, 6 Feb 2013 02:21:28 +0000 (02:21 +0000)]
Unreviewed build fix.

* WebKit.vcproj/WebKitExports.def.in:

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

6 years ago[Mac] Complete plumbing so captions menu can indicate track type
eric.carlson@apple.com [Wed, 6 Feb 2013 02:15:33 +0000 (02:15 +0000)]
[Mac] Complete plumbing so captions menu can indicate track type
https://bugs.webkit.org/show_bug.cgi?id=108994

Reviewed by Dean Jackson.

Source/WebCore:

Plumb "isClosedCaptions" through to the Mac media engine.

Updated media/video-controls-captions-trackmenu-localized.html and results.

* html/track/InbandTextTrack.cpp:
(WebCore::InbandTextTrack::isClosedCaptions): New, pass the call through to the private track.
* html/track/InbandTextTrack.h:
(InbandTextTrack):
* html/track/TextTrack.cpp:
(WebCore::TextTrack::TextTrack): Lose the member variable, this won't be accessed often enough
    to make it worth caching the value.
* html/track/TextTrack.h:
(WebCore::TextTrack::isClosedCaptions): Make virtual so derived classes can oveerride.
* platform/graphics/InbandTextTrackPrivate.h:
(WebCore::InbandTextTrackPrivate::isClosedCaptions): New.
* platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
(WebCore::InbandTextTrackPrivateAVFObjC::isClosedCaptions): New.

LayoutTests:

Update test results now that the Mac media engine identifies CC tracks.

* media/video-controls-captions-trackmenu-localized.html:
* platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt:

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

6 years agoChange DatabaseTask and DatabaseThread to work with DatabaseBackendAsync
mark.lam@apple.com [Wed, 6 Feb 2013 02:10:49 +0000 (02:10 +0000)]
Change DatabaseTask and DatabaseThread to work with DatabaseBackendAsync
instead of Database.
https://bugs.webkit.org/show_bug.cgi?id=108995.

Reviewed by Sam Weinig.

This change also moves the task inner classes from Database to
DatabaseBackendAsync.

No new tests.

* Modules/webdatabase/Database.cpp:
(WebCore::Database::from):
* Modules/webdatabase/Database.h:
(Database):
* Modules/webdatabase/DatabaseBackend.h:
(DatabaseBackend):
* Modules/webdatabase/DatabaseBackendAsync.h:
(DatabaseBackendAsync):
* Modules/webdatabase/DatabaseTask.cpp:
(WebCore::DatabaseTask::DatabaseTask):
(WebCore::DatabaseBackendAsync::DatabaseOpenTask::DatabaseOpenTask):
(WebCore::DatabaseBackendAsync::DatabaseOpenTask::doPerformTask):
(WebCore::DatabaseBackendAsync::DatabaseOpenTask::debugTaskName):
(WebCore::DatabaseBackendAsync::DatabaseCloseTask::DatabaseCloseTask):
(WebCore::DatabaseBackendAsync::DatabaseCloseTask::doPerformTask):
(WebCore::DatabaseBackendAsync::DatabaseCloseTask::debugTaskName):
(WebCore::DatabaseBackendAsync::DatabaseTransactionTask::DatabaseTransactionTask):
(WebCore::DatabaseBackendAsync::DatabaseTransactionTask::doPerformTask):
(WebCore::DatabaseBackendAsync::DatabaseTransactionTask::debugTaskName):
(WebCore::DatabaseBackendAsync::DatabaseTableNamesTask::DatabaseTableNamesTask):
(WebCore::DatabaseBackendAsync::DatabaseTableNamesTask::doPerformTask):
(WebCore::DatabaseBackendAsync::DatabaseTableNamesTask::debugTaskName):
* Modules/webdatabase/DatabaseTask.h:
(WebCore::DatabaseTask::database):
(DatabaseTask):
(WebCore::DatabaseBackendAsync::DatabaseOpenTask::create):
(DatabaseBackendAsync::DatabaseOpenTask):
(WebCore::DatabaseBackendAsync::DatabaseCloseTask::create):
(DatabaseBackendAsync::DatabaseCloseTask):
(WebCore::DatabaseBackendAsync::DatabaseTableNamesTask::create):
(DatabaseBackendAsync::DatabaseTableNamesTask):
* Modules/webdatabase/DatabaseThread.cpp:
(WebCore::DatabaseThread::databaseThread):
(WebCore::DatabaseThread::recordDatabaseOpen):
(WebCore::DatabaseThread::recordDatabaseClosed):
(WebCore::SameDatabasePredicate::SameDatabasePredicate):
(SameDatabasePredicate):
(WebCore::DatabaseThread::unscheduleDatabaseTasks):
* Modules/webdatabase/DatabaseThread.h:
(DatabaseThread):

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

6 years ago2013-02-05 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Wed, 6 Feb 2013 02:04:59 +0000 (02:04 +0000)]
2013-02-05  Oliver Hunt  <oliver@apple.com>

        Disable TCMalloc hardening as it's breaking leaks.

        Reviewed by Gavin Barraclough.

        * wtf/FastMalloc.cpp:

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

6 years ago[chromium] Explicitly destroy the WebMediaPlayer in WebMediaPlayerClientImpl's destructor
commit-queue@webkit.org [Wed, 6 Feb 2013 01:42:08 +0000 (01:42 +0000)]
[chromium] Explicitly destroy the WebMediaPlayer in WebMediaPlayerClientImpl's destructor
https://bugs.webkit.org/show_bug.cgi?id=108989

Patch by David Dorwin <ddorwin@chromium.org> on 2013-02-05
Reviewed by Kent Tamura.

* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::~WebMediaPlayerClientImpl):

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

6 years agoUnreviewed. Get rid of redundant exports in export definitions file.
roger_fong@apple.com [Wed, 6 Feb 2013 01:36:36 +0000 (01:36 +0000)]
Unreviewed. Get rid of redundant exports in export definitions file.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
* WebKit.vcproj/WebKitExports.def.in:

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

6 years ago[wk2] TiledCoreAnimationDrawingArea has one more layer in its CAContext when we're...
timothy_horton@apple.com [Wed, 6 Feb 2013 01:32:17 +0000 (01:32 +0000)]
[wk2] TiledCoreAnimationDrawingArea has one more layer in its CAContext when we're in the background
https://bugs.webkit.org/show_bug.cgi?id=108992
<rdar://problem/13087365>

Reviewed by Anders Carlsson.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
(TiledCoreAnimationDrawingArea): Add storage for m_isInWindow.
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::updateLayerHostingContext): Only set the root layer on our layer
hosting context if we're in the window when swapping out contexts.
(WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer): Update m_isInWindow, and set the root layer
of the layer hosting context (or unset it if we're out of the window).

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

6 years agoCrash at JSC::call when loading www.gap.com with JSVALUE32_64 Enabled
msaboff@apple.com [Wed, 6 Feb 2013 01:06:55 +0000 (01:06 +0000)]
Crash at JSC::call when loading gap.com with JSVALUE32_64 Enabled
https://bugs.webkit.org/show_bug.cgi?id=108991

Reviewed by Oliver Hunt.

Changed the restoration from calleeGPR to nonArgGPR0 because the restoration of the return location
may step on calleeGPR is it happen to be nonArgGPR2.

* dfg/DFGRepatch.cpp:
(JSC::DFG::dfgLinkClosureCall):

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

6 years agoRename ENUM_CLASS_BEGIN() macro to ENUM_CLASS(), and make DatabaseType a strong enum.
mark.lam@apple.com [Wed, 6 Feb 2013 00:58:47 +0000 (00:58 +0000)]
Rename ENUM_CLASS_BEGIN() macro to ENUM_CLASS(), and make DatabaseType a strong enum.
https://bugs.webkit.org/show_bug.cgi?id=108988.

Reviewed by Alexey Proskuryakov.

Source/WebCore:

No new tests.

* Modules/webdatabase/DatabaseBackend.cpp:
(WebCore::DatabaseBackend::DatabaseBackend):
* Modules/webdatabase/DatabaseBackend.h:
(DatabaseBackend):
* Modules/webdatabase/DatabaseBackendAsync.cpp:
(WebCore::DatabaseBackendAsync::DatabaseBackendAsync):
* Modules/webdatabase/DatabaseBackendSync.cpp:
(WebCore::DatabaseBackendSync::DatabaseBackendSync):
* Modules/webdatabase/DatabaseBasicTypes.h:
(WebCore::ENUM_CLASS):
* Modules/webdatabase/DatabaseError.h:
(WebCore::ENUM_CLASS):

Source/WTF:

* wtf/EnumClass.h:

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

6 years agoUnreviewed Visual Studio 2010 build correction.
bfulgham@webkit.org [Wed, 6 Feb 2013 00:48:52 +0000 (00:48 +0000)]
Unreviewed Visual Studio 2010 build correction.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Link export definitions out of date with ToT.  Corrected.

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

6 years ago[V8] Remove deprecatedV8String() and deprecatedV8Integer()
haraken@chromium.org [Wed, 6 Feb 2013 00:28:34 +0000 (00:28 +0000)]
[V8] Remove deprecatedV8String() and deprecatedV8Integer()
https://bugs.webkit.org/show_bug.cgi?id=108919

Reviewed by Adam Barth.

No tests. No change in behavior.

* bindings/v8/V8Binding.cpp:
(WebCore::toXPathNSResolver):
* bindings/v8/V8Binding.h:
* bindings/v8/custom/V8CustomXPathNSResolver.cpp:
(WebCore::V8CustomXPathNSResolver::create):
(WebCore::V8CustomXPathNSResolver::V8CustomXPathNSResolver):
(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
* bindings/v8/custom/V8CustomXPathNSResolver.h:
(V8CustomXPathNSResolver):

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

6 years agoformenctype to have empty string as default value.
rgf748@motorola.com [Wed, 6 Feb 2013 00:05:31 +0000 (00:05 +0000)]
formenctype to have empty string as default value.
https://bugs.webkit.org/show_bug.cgi?id=108969

Reviewed by Kent Tamura.

The spec says formEnctype should only have an invalid value default, not a missing value default.
Spec: http://www.w3.org/html/wg/drafts/html/master/forms.html#attr-fs-formenctype
      http://www.whatwg.org/specs/web-apps/current-work/#attr-fs-formenctype

Source/WebCore:

No new tests. Covered by existing test case fast/forms/submit-form-attributes.html

* html/HTMLFormControlElement.cpp: For the missing formEnctype attr return empty string.
(WebCore::HTMLFormControlElement::formEnctype):

LayoutTests:

* fast/forms/submit-form-attributes-expected.txt:
* fast/forms/submit-form-attributes.html: Modified test to behave as expected.

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

6 years ago[V8] Reduce usage of deprecatedString() and deprecatedInteger()
haraken@chromium.org [Wed, 6 Feb 2013 00:00:51 +0000 (00:00 +0000)]
[V8] Reduce usage of deprecatedString() and deprecatedInteger()
https://bugs.webkit.org/show_bug.cgi?id=108909

Reviewed by Adam Barth.

Source/WebCore:

By passing an Isolate parameter around, we can reduce usage of
deprecated methods.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrSetter):
(GenerateEventListenerCallback):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::addEventListenerCallback):
(WebCore::TestEventTargetV8Internal::removeEventListenerCallback):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::addEventListenerCallback):
(WebCore::TestObjV8Internal::removeEventListenerCallback):
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore::get):
(WebCore::set):
(WebCore::getNthValueOnKeyPath):
(WebCore::canInjectNthValueOnKeyPath):
(WebCore::ensureNthValueOnKeyPath):
(WebCore::createIDBKeyFromScriptValueAndKeyPath):
(WebCore::injectIDBKeyIntoScriptValue):
(WebCore::canInjectIDBKeyIntoScriptValue):
* bindings/v8/NPV8Object.cpp:
(WebCore::createValueListFromVariantArgs):
(_NPN_Invoke):
(_NPN_InvokeDefault):
(_NPN_SetProperty):
(_NPN_Construct):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::compileAndRunScript):
* bindings/v8/ScriptProfiler.cpp:
(WebCore):
(WebCore::ScriptProfiler::takeHeapSnapshot):
* bindings/v8/ScriptSourceCode.cpp:
(WebCore::ScriptSourceCode::compileScript):
* bindings/v8/ScriptSourceCode.h:
(ScriptSourceCode):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::prepareListenerObject):
* bindings/v8/V8NPObject.cpp:
(WebCore::npObjectInvokeImpl):
(WebCore::npObjectGetProperty):
* bindings/v8/V8NPUtils.cpp:
(WebCore::convertNPVariantToV8Object):
* bindings/v8/V8NPUtils.h:
(WebCore):
* bindings/v8/V8Utilities.cpp:
(WebCore::createHiddenDependency):
(WebCore::removeHiddenDependency):
(WebCore::transferHiddenDependency):
* bindings/v8/V8Utilities.h:
(WebCore):
* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::evaluate):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::addEventListenerCallback):
(WebCore::V8DOMWindow::removeEventListenerCallback):

Source/WebKit/chromium:

No tests. No change in behavior.

* src/WebBindings.cpp:
(WebKit::WebBindings::toV8Value):

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

6 years ago[V8] Make an Isolate parameter mandatory in HasInstance()
haraken@chromium.org [Tue, 5 Feb 2013 23:55:27 +0000 (23:55 +0000)]
[V8] Make an Isolate parameter mandatory in HasInstance()
https://bugs.webkit.org/show_bug.cgi?id=108917

Reviewed by Adam Barth.

Source/WebCore:

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::V8Float64Array::HasInstance):
* bindings/scripts/test/V8/V8Float64Array.h:
(V8Float64Array):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::HasInstance):
* bindings/scripts/test/V8/V8TestActiveDOMObject.h:
(V8TestActiveDOMObject):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::V8TestCustomNamedGetter::HasInstance):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
(V8TestCustomNamedGetter):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::HasInstance):
* bindings/scripts/test/V8/V8TestEventConstructor.h:
(V8TestEventConstructor):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::V8TestEventTarget::HasInstance):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(V8TestEventTarget):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::V8TestException::HasInstance):
* bindings/scripts/test/V8/V8TestException.h:
(V8TestException):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::V8TestInterface::HasInstance):
* bindings/scripts/test/V8/V8TestInterface.h:
(V8TestInterface):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::HasInstance):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
(V8TestMediaQueryListListener):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructor::HasInstance):
* bindings/scripts/test/V8/V8TestNamedConstructor.h:
(V8TestNamedConstructor):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::HasInstance):
* bindings/scripts/test/V8/V8TestNode.h:
(V8TestNode):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::V8TestObj::HasInstance):
* bindings/scripts/test/V8/V8TestObj.h:
(V8TestObj):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
(WebCore::V8TestOverloadedConstructors::HasInstance):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
(V8TestOverloadedConstructors):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::HasInstance):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
(V8TestSerializedScriptValueInterface):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::toWebGLUniformLocation):

Source/WebKit/chromium:

Because these methods do not have an Isolate, we have to call
v8::Isolate::GetCurrent().

No tests. No change in behavior.

* src/WebArrayBuffer.cpp:
(WebKit::WebArrayBuffer::createFromV8Value):
* src/WebArrayBufferView.cpp:
(WebKit::WebArrayBufferView::createFromV8Value):
* src/WebBindings.cpp:
(WebKit::getRangeImpl):
(WebKit::getNodeImpl):
(WebKit::getElementImpl):
(WebKit::getArrayBufferImpl):
(WebKit::getArrayBufferViewImpl):
(WebKit::WebBindings::getRange):
(WebKit::WebBindings::getArrayBuffer):
(WebKit::WebBindings::getArrayBufferView):
(WebKit::WebBindings::getNode):
(WebKit::WebBindings::getElement):

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

6 years ago[JSC] Clean up CodeGeneratorJS.pm by introducing HasCustom{Getter,Setter,Method}
haraken@chromium.org [Tue, 5 Feb 2013 23:43:25 +0000 (23:43 +0000)]
[JSC] Clean up CodeGeneratorJS.pm by introducing HasCustom{Getter,Setter,Method}
https://bugs.webkit.org/show_bug.cgi?id=108898

Reviewed by Sam Weinig.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
(HasCustomGetter):
(HasCustomSetter):
(HasCustomMethod):

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

6 years ago[chromium] Provide compositor offscreen context through the WebLayerTreeViewClient...
danakj@chromium.org [Tue, 5 Feb 2013 23:42:19 +0000 (23:42 +0000)]
[chromium] Provide compositor offscreen context through the WebLayerTreeViewClient interface
https://bugs.webkit.org/show_bug.cgi?id=107776

Source/Platform:

Make "createGrGLInterface" the preferred virtual method for
WebGraphicsContext3D implementations to override. For now it
just calls the old method in its default implementation.

Reviewed by James Robinson.

* chromium/public/WebGraphicsContext3D.h:
(WebGraphicsContext3D):
(WebKit::WebGraphicsContext3D::createGrGLInterface):

Source/WebCore:

Reviewed by James Robinson.

Allow the compositor thread's context to be retrieved on either thread,
so the main thread can create and pass the context to the impl thread
via its own mechanisms.

Move the code to bind the GrGLInterface to a WebGraphicsContext3D into
chromium's GraphicsContext3DPrivate. The chromium-side code will need
to implement this code itself.

* platform/chromium/support/GraphicsContext3DPrivate.cpp:
(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
(WebCore):
(WebCore::GraphicsContext3DPrivate::grContext):
* platform/chromium/support/GraphicsContext3DPrivate.h:
* platform/graphics/gpu/SharedGraphicsContext3D.cpp:
(WebCore::SharedGraphicsContext3D::getForImplThread):

Source/WebKit/chromium:

Reviewed by James Robinson.

* WebKit.gyp:
* src/WebGraphicsContext3D.cpp: Removed.

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

6 years ago[CMake] Don't warn unused cmake variables which aren't used by cmake ports
gyuyoung.kim@samsung.com [Tue, 5 Feb 2013 23:40:30 +0000 (23:40 +0000)]
[CMake] Don't warn unused cmake variables which aren't used by cmake ports
https://bugs.webkit.org/show_bug.cgi?id=108761

Reviewed by Laszlo Gombos.

Ignore unused macro variables which aren't used by cmake ports.

* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject):

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

6 years agoAdd cc_unittests to the dashboards
jparent@chromium.org [Tue, 5 Feb 2013 23:37:35 +0000 (23:37 +0000)]
Add cc_unittests to the dashboards
https://bugs.webkit.org/show_bug.cgi?id=108878

Reviewed by Dirk Pranke.

* TestResultServer/static-dashboards/builders.js:
(loadBuildersList):
* TestResultServer/static-dashboards/dashboard_base.js:
(currentBuilderGroupCategory):

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

6 years agoUnreviewed build fix.
roger_fong@apple.com [Tue, 5 Feb 2013 23:24:39 +0000 (23:24 +0000)]
Unreviewed build fix.

* wtf/FastMalloc.cpp:

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

6 years agoAdd a JavaScriptCore Export Generator project.
roger_fong@apple.com [Tue, 5 Feb 2013 23:05:50 +0000 (23:05 +0000)]
Add a JavaScriptCore Export Generator project.
https://bugs.webkit.org/show_bug.cgi?id=108971.

Reviewed by Brent Fulgham.

* JavaScriptCore.vcxproj/JavaScriptCore.sln:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.vcxproj/JavaScriptCoreCommon.props:
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGenerator.vcxproj: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGenerator.vcxproj.filters: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGenerator.vcxproj.user: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorBuildCmd.cmd: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorCommon.props: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorDebug.props: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorPostBuild.cmd: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorPreBuild.cmd: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorRelease.props: Added.
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in: Added.
* WebKit.vcxproj/WebKit.sln:

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

6 years agoContinue making XSSAuditor thread safe: Remove dependency on the parser's tokenizer
tonyg@chromium.org [Tue, 5 Feb 2013 22:39:00 +0000 (22:39 +0000)]
Continue making XSSAuditor thread safe: Remove dependency on the parser's tokenizer
https://bugs.webkit.org/show_bug.cgi?id=108666

Reviewed by Adam Barth.

This is the final dependency on the parser, so we remove that as well. Yay!

No new tests because no new functionality.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore::HTMLDocumentParser::pumpTokenizer): Pass m_tokenizer->shouldAllowCDATA()
* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::XSSAuditor): Remove isMainThread() check because we have one in init() anyway.
Move m_isEnabled and m_documentURL initialization to init() because we have a Document* there.
(WebCore::XSSAuditor::init):
(WebCore::XSSAuditor::filterToken):
(WebCore::XSSAuditor::filterStartToken):
(WebCore::XSSAuditor::filterEndToken):
(WebCore::XSSAuditor::filterScriptToken):
(WebCore::XSSAuditor::decodedSnippetForJavaScript):
* html/parser/XSSAuditor.h:
(WebCore::FilterTokenRequest::FilterTokenRequest):
(FilterTokenRequest):
(XSSAuditor):

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

6 years agoMake baseWritingDirectionForSelectionStart available to all platforms in the Editor...
enrica@apple.com [Tue, 5 Feb 2013 22:37:18 +0000 (22:37 +0000)]
Make baseWritingDirectionForSelectionStart available to all platforms in the Editor class.
https://bugs.webkit.org/show_bug.cgi?id=108977.

Reviewed by Ryosuke Niwa.

Now that baseWritingDirectionForSelectionStart doesn't use
platform specific type anymore, we can make it available for
all platforms. This way it can be used for iOS as well.

No new tests, no functionality change.

* editing/Editor.cpp:
(WebCore::Editor::baseWritingDirectionForSelectionStart): Added.
* editing/Editor.h: Moved from PLATFORM(MAC).
* editing/mac/EditorMac.mm: baseWritingDirectionForSelectionStart removed.

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

6 years agoAvoid String->AtomicString conversion in Attr::childrenChanged()
benjamin@webkit.org [Tue, 5 Feb 2013 22:33:42 +0000 (22:33 +0000)]
Avoid String->AtomicString conversion in Attr::childrenChanged()
https://bugs.webkit.org/show_bug.cgi?id=108742

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-05
Reviewed by Andreas Kling.

* dom/Attr.cpp:
(WebCore::Attr::childrenChanged): StringBuilder can output AtomicString directly.

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

6 years agoUnreviewed gardening. Win7 port doesn't run WebGL.
roger_fong@apple.com [Tue, 5 Feb 2013 22:15:50 +0000 (22:15 +0000)]
Unreviewed gardening. Win7 port doesn't run WebGL.

* platform/win/TestExpectations:

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

6 years agoTidy up StackBounds
benjamin@webkit.org [Tue, 5 Feb 2013 22:14:50 +0000 (22:14 +0000)]
Tidy up StackBounds
https://bugs.webkit.org/show_bug.cgi?id=108889

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-05
Reviewed by Ryosuke Niwa.

* wtf/StackBounds.h:
(StackBounds):
(WTF::StackBounds::isSafeToRecurse):
(WTF::StackBounds::size):
Adopt a more conventional style for a multiline branch.

(WTF::StackBounds::StackBounds):
(WTF::StackBounds::current):
(WTF::StackBounds::recursionLimit):
Make those method private.

Making the constructor private ensure initialize() is alwasy called on any StackBounds.

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

6 years agoDFG should have a precise view of jump targets
fpizlo@apple.com [Tue, 5 Feb 2013 22:14:31 +0000 (22:14 +0000)]
DFG should have a precise view of jump targets
https://bugs.webkit.org/show_bug.cgi?id=108868

Reviewed by Oliver Hunt.

Previously, the DFG relied entirely on the CodeBlock's jump targets list for
determining when to break basic blocks. This worked great, except sometimes it
would be too conservative since the CodeBlock just says where the bytecode
generator inserted labels.

This change keeps the old jump target list in CodeBlock since it is still
valuable to the baseline JIT, but switches the DFG to use its own jump target
calculator. This ought to reduce pressure on the DFG simplifier, which would
previously do a lot of work to try to merge redundantly created basic blocks.
It appears to be a 1% progression on SunSpider.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/PreciseJumpTargets.cpp: Added.
(JSC):
(JSC::addSimpleSwitchTargets):
(JSC::computePreciseJumpTargets):
* bytecode/PreciseJumpTargets.h: Added.
(JSC):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseCodeBlock):

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

6 years ago[GTK][WK2] Unflag tests related to layoutTestController.setCustomPolicyDelegate
commit-queue@webkit.org [Tue, 5 Feb 2013 22:08:30 +0000 (22:08 +0000)]
[GTK][WK2] Unflag tests related to layoutTestController.setCustomPolicyDelegate
https://bugs.webkit.org/show_bug.cgi?id=108976

Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-02-05
Reviewed by Martin Robinson.

* platform/gtk-wk2/TestExpectations: Unflag
fast/loader/policy-delegate-action-hit-test-zoomed.html as it is
already passing (layoutTestController.setCustomPolicyDelegate was
implemented in r128600). Mark some tests related with
layoutTestController.setCustomPolicyDelegate as passing in WK2 but
failing in WK1.

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

6 years ago[chromium] Enable shouldGesturesTriggerActive for Android
commit-queue@webkit.org [Tue, 5 Feb 2013 22:04:33 +0000 (22:04 +0000)]
[chromium] Enable shouldGesturesTriggerActive for Android
https://bugs.webkit.org/show_bug.cgi?id=96948

Patch by Yusuf Ozuysal <yusufo@google.com> on 2013-02-05
Reviewed by James Robinson.

We need this to fix performance issues we are getting because of touchstart
triggering hover/active states.

No new tests. The tests introduced in https://bugs.webkit.org/show_bug.cgi?id=96060
should run with the corrected behavior and would cover this change as well.

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

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

6 years agoIntroduced back-end database classes + a few small fixes.
mark.lam@apple.com [Tue, 5 Feb 2013 22:02:46 +0000 (22:02 +0000)]
Introduced back-end database classes + a few small fixes.
https://bugs.webkit.org/show_bug.cgi?id=108759.

Source/WebCore:

Reviewed by Brady Eidson.

1. Added DatabaseBackendContext, DatabaseBackendAsync, and DatabaseBackendSync.
   These are backends for DatabaseContext, Database, and DatabaseSync
   respectively.
2. Added DatabaseBase to hold common code between Database and DatabaseSync.
3. Renamed a few functions.
4. Cleaned up unneeded code in ~DatabaseSync().
5. Added some FIXMEs as reminders or places to clean up when we're done
   refactoring.
6. Moved the calling of ScriptController::initializeThreading() from the Database
   constructor to DatabaseManager::openDatabase(). This just moves the call
   earlier in the same code path. System initialization work (i.e. initializing
   script threading in this case) should be done by the manager instead of by
   each Database instance.

No new tests.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/webdatabase/AbstractDatabaseServer.h:
(AbstractDatabaseServer):
* Modules/webdatabase/Database.cpp:
(WebCore::Database::Database):
(WebCore::Database::backend):
* Modules/webdatabase/Database.h:
(Database):
* Modules/webdatabase/DatabaseBackend.cpp:
(WebCore::DatabaseBackend::DatabaseBackend):
(WebCore::DatabaseBackend::~DatabaseBackend):
(WebCore::DatabaseBackend::incrementalVacuumIfNeeded):
* Modules/webdatabase/DatabaseBackend.h:
(DatabaseBackend):
(WebCore::DatabaseBackend::databaseContext):
(WebCore::DatabaseBackend::setFrontend):
* Modules/webdatabase/DatabaseBackendAsync.cpp: Added.
(WebCore::DatabaseBackendAsync::DatabaseBackendAsync):
* Modules/webdatabase/DatabaseBackendAsync.h: Added.
(DatabaseBackendAsync):
* Modules/webdatabase/DatabaseBackendContext.cpp: Added.
(WebCore::DatabaseBackendContext::securityOrigin):
(WebCore::DatabaseBackendContext::isContextThread):
* Modules/webdatabase/DatabaseBackendContext.h: Added.
(DatabaseBackendContext):
(WebCore::DatabaseBackendContext::scriptExecutionContext):
* Modules/webdatabase/DatabaseBackendSync.cpp: Added.
(WebCore::DatabaseBackendSync::DatabaseBackendSync):
(WebCore::DatabaseBackendSync::~DatabaseBackendSync):
* Modules/webdatabase/DatabaseBackendSync.h: Added.
(DatabaseBackendSync):
* Modules/webdatabase/DatabaseBase.cpp: Added.
(WebCore::DatabaseBase::DatabaseBase):
(WebCore::DatabaseBase::scriptExecutionContext):
(WebCore::DatabaseBase::logErrorMessage):
* Modules/webdatabase/DatabaseBase.h: Added.
(DatabaseBase):
* Modules/webdatabase/DatabaseContext.cpp:
(WebCore::DatabaseContext::DatabaseContext):
(WebCore::DatabaseContext::backend):
* Modules/webdatabase/DatabaseContext.h:
(DatabaseContext):
* Modules/webdatabase/DatabaseManager.cpp:
(WebCore::DatabaseManager::openDatabase):
(WebCore::DatabaseManager::openDatabaseSync):
(WebCore::DatabaseManager::hasOpenDatabases):
(WebCore::DatabaseManager::interruptAllDatabasesForContext):
(WebCore::DatabaseManager::getMaxSizeForDatabase):
(WebCore::DatabaseManager::logErrorMessage):
* Modules/webdatabase/DatabaseManager.h:
(DatabaseManager):
* Modules/webdatabase/DatabaseServer.cpp:
(WebCore::DatabaseServer::interruptAllDatabasesForContext):
(WebCore::DatabaseServer::canEstablishDatabase):
* Modules/webdatabase/DatabaseServer.h:
* Modules/webdatabase/DatabaseSync.cpp:
(WebCore::DatabaseSync::DatabaseSync):
(WebCore::DatabaseSync::~DatabaseSync):
(WebCore::DatabaseSync::backend):
* Modules/webdatabase/DatabaseSync.h:
(DatabaseSync):
* Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::openTrackerDatabase):
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::hasEntryForDatabase):
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):
(WebCore::DatabaseTracker::populateOriginsIfNeeded):
(WebCore::DatabaseTracker::databaseNamesForOriginNoLock):
(WebCore::DatabaseTracker::detailsForNameAndOrigin):
(WebCore::DatabaseTracker::setDatabaseDetails):
(WebCore::DatabaseTracker::usageForOriginNoLock):
(WebCore::DatabaseTracker::setQuota):
(WebCore::DatabaseTracker::addDatabase):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::isDeletingDatabaseOrOriginFor):
(WebCore::DatabaseTracker::canDeleteDatabase):
(WebCore::DatabaseTracker::isDeletingDatabase):
(WebCore::DatabaseTracker::canDeleteOrigin):
(WebCore::DatabaseTracker::isDeletingOrigin):
(WebCore::DatabaseTracker::recordDeletingOrigin):
(WebCore::DatabaseTracker::doneDeletingOrigin):
(WebCore::DatabaseTracker::deleteDatabase):
(WebCore::DatabaseTracker::deleteDatabaseFile):
* Modules/webdatabase/DatabaseTracker.h:
(DatabaseTracker):
* Modules/webdatabase/SQLTransaction.cpp:
* Modules/webdatabase/SQLTransactionClient.cpp:
(WebCore::SQLTransactionClient::didExceedQuota):
* Modules/webdatabase/SQLTransactionSync.cpp:
* Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp:
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::prepareToOpenDatabase):
(WebCore::DatabaseTracker::failedToOpenDatabase):
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):
(WebCore::DatabaseTracker::closeDatabasesImmediately):
* Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp:
(WebCore::SQLTransactionClient::didCommitWriteTransaction):
(WebCore::SQLTransactionClient::didExceedQuota):
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:

Source/WebKit/chromium:

Reviewed by Brady Eidson.

* src/DatabaseObserver.cpp:
(WebCore::DatabaseObserver::databaseOpened):
(WebCore::DatabaseObserver::databaseModified):
(WebCore::DatabaseObserver::databaseClosed):

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

6 years ago[WTFURL] Comparison between signed and unsigned integer expressions in URLUtil.cpp
zandobersek@gmail.com [Tue, 5 Feb 2013 21:58:09 +0000 (21:58 +0000)]
[WTFURL] Comparison between signed and unsigned integer expressions in URLUtil.cpp
https://bugs.webkit.org/show_bug.cgi?id=108955

Reviewed by Benjamin Poulain.

* wtf/url/src/URLUtil.cpp:
(URLUtilities): Make the counter variable a signed integer to get rid of the warning.

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

6 years agoDumpRenderTree should be able to enable the threaded parser
abarth@webkit.org [Tue, 5 Feb 2013 21:44:55 +0000 (21:44 +0000)]
DumpRenderTree should be able to enable the threaded parser
https://bugs.webkit.org/show_bug.cgi?id=108970

Reviewed by Eric Seidel.

Source/WebKit/chromium:

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

Tools:

We can now enable the parser at runtime using --enable-threaded-html-parser.

* DumpRenderTree/chromium/DumpRenderTree.cpp:
(main):
* DumpRenderTree/chromium/TestRunner/public/WebPreferences.h:
(WebPreferences):
* DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:
(WebTestRunner::WebPreferences::reset):
(WebTestRunner::WebPreferences::applyTo):
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::TestShell):
(TestShell::resetWebSettings):
* DumpRenderTree/chromium/TestShell.h:
(TestShell::setThreadedHTMLParser):
(TestShell):

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

6 years agoUnreviewed. Delete some errant preprocessor definitions.
roger_fong@apple.com [Tue, 5 Feb 2013 21:41:53 +0000 (21:41 +0000)]
Unreviewed. Delete some errant preprocessor definitions.

* WebKit.vcxproj/WebKit/WebKitCommon.props:

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

6 years agoVS2010 WebKit projects, scripts, and property sheets.
roger_fong@apple.com [Tue, 5 Feb 2013 21:30:32 +0000 (21:30 +0000)]
VS2010 WebKit projects, scripts, and property sheets.
https://bugs.webkit.org/show_bug.cgi?id=106989.

Reviewed by Brent Fulgham.

* WebKit.vcxproj/Interfaces: Added.
* WebKit.vcxproj/Interfaces/FixMIDLHeaders.pl: Copied from win/WebKit.vcproj/FixMIDLHeaders.pl.
* WebKit.vcxproj/Interfaces/Interfaces.vcxproj: Added.
* WebKit.vcxproj/Interfaces/Interfaces.vcxproj.filters: Added.
* WebKit.vcxproj/Interfaces/Interfaces.vcxproj.user: Added.
* WebKit.vcxproj/Interfaces/InterfacesCommon.props: Added.
* WebKit.vcxproj/Interfaces/InterfacesDebug.props: Added.
* WebKit.vcxproj/Interfaces/InterfacesPostBuild.cmd: Added.
* WebKit.vcxproj/Interfaces/InterfacesPreBuild.cmd: Added.
* WebKit.vcxproj/Interfaces/InterfacesRelease.props: Added.
* WebKit.vcxproj/WebKit: Added.
* WebKit.vcxproj/WebKit.sln:
* WebKit.vcxproj/WebKit/WebKit.vcxproj: Added.
* WebKit.vcxproj/WebKit/WebKit.vcxproj.filters: Added.
* WebKit.vcxproj/WebKit/WebKit.vcxproj.user: Added.
* WebKit.vcxproj/WebKit/WebKitApple.props: Added.
* WebKit.vcxproj/WebKit/WebKitCFLite.props: Added.
* WebKit.vcxproj/WebKit/WebKitCommon.props: Added.
* WebKit.vcxproj/WebKit/WebKitDebug.props: Added.
* WebKit.vcxproj/WebKit/WebKitDirectX.props: Added.
* WebKit.vcxproj/WebKit/WebKitPostBuild.cmd: Added.
* WebKit.vcxproj/WebKit/WebKitPreBuild.cmd: Added.
* WebKit.vcxproj/WebKit/WebKitPreLink.cmd: Added.
* WebKit.vcxproj/WebKit/WebKitRelease.props: Added.
* WebKit.vcxproj/WebKit/resource.h: Copied from win/WebKit.vcproj/resource.h.
* WebKit.vcxproj/WebKitExportGenerator: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj.filters: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj.user: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorBuildCmd.cmd: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorCommon.props: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorDebug.props: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorPostBuild.cmd: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorPreBuild.cmd: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorRelease.props: Added.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Copied from win/WebKit.vcproj/WebKitExports.def.in.
* WebKit.vcxproj/WebKitGUID: Added.
* WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj: Added.
* WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj.filters: Added.
* WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj.user: Added.
* WebKit.vcxproj/WebKitGUID/WebKitGUIDCommon.props: Added.
* WebKit.vcxproj/WebKitGUID/WebKitGUIDDebug.props: Added.
* WebKit.vcxproj/WebKitGUID/WebKitGUIDPostBuild.cmd: Added.
* WebKit.vcxproj/WebKitGUID/WebKitGUIDPreBuild.cmd: Added.
* WebKit.vcxproj/WebKitGUID/WebKitGUIDRelease.props: Added.

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

6 years agoWebKit clients should be able to override loading of blocked plug-ins
andersca@apple.com [Tue, 5 Feb 2013 21:26:51 +0000 (21:26 +0000)]
WebKit clients should be able to override loading of blocked plug-ins
https://bugs.webkit.org/show_bug.cgi?id=108968
<rdar://problem/13154516>

Reviewed by Sam Weinig.

Replace the shouldInstantiatePlugin callback with a new pluginLoadPolicy which is called regardless
of whether the plug-in is blocked or not. This lets clients override the plug-in load policy and
force loading of blacklisted plug-ins (and vice versa).

* UIProcess/API/C/WKPage.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::getPluginPath):
* UIProcess/WebUIClient.cpp:
(WebKit::toWKPluginLoadPolicy):
(WebKit):
(WebKit::toPluginModuleLoadPolicy):
(WebKit::WebUIClient::pluginLoadPolicy):
* UIProcess/WebUIClient.h:
(WebUIClient):

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

6 years ago[WEBGL] Rename WEBKIT_WEBGL_depth_texture to WEBGL_depth_texture.
nayankk@motorola.com [Tue, 5 Feb 2013 21:16:43 +0000 (21:16 +0000)]
[WEBGL] Rename WEBKIT_WEBGL_depth_texture to WEBGL_depth_texture.
https://bugs.webkit.org/show_bug.cgi?id=108959

Reviewed by Kenneth Russell.

Source/WebCore:

WEBGL_depth_texture is official now. Hence remove the vendor prefix from
WEBKIT_WEBGL_depth_texture and rename this extension string to WEBGL_depth_texture.
Specification: http://www.khronos.org/registry/webgl/extensions/WEBGL_depth_texture/.

Tests already exists, modified them to test querying of unprefixed extension string.

* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::toJS):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::toV8Object):
* html/canvas/WebGLDepthTexture.cpp:
(WebCore::WebGLDepthTexture::getName):
* html/canvas/WebGLExtension.h:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::getExtension):

LayoutTests:

* fast/canvas/webgl/webgl-depth-texture.html:

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

6 years agoMake ConfigurationBuildDir include directories precede WebKitLibraries in JSC.
roger_fong@apple.com [Tue, 5 Feb 2013 21:14:17 +0000 (21:14 +0000)]
Make ConfigurationBuildDir include directories precede WebKitLibraries in JSC.
https://bugs.webkit.org/show_bug.cgi?id=108693.

Rubberstamped by Timothy Horton.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops:

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

6 years ago[chromium] Remove optionalness of second parameter to WebLayerTreeView::setViewportSize
jamesr@google.com [Tue, 5 Feb 2013 21:04:09 +0000 (21:04 +0000)]
[chromium] Remove optionalness of second parameter to WebLayerTreeView::setViewportSize
https://bugs.webkit.org/show_bug.cgi?id=108972

Reviewed by Adam Barth.

This was added to ease the transition of adding this parameter, but it's now always set.

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

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

6 years agoRationalize the use of iOS/Mac #defines in Assertions.cpp
benjamin@webkit.org [Tue, 5 Feb 2013 20:58:23 +0000 (20:58 +0000)]
Rationalize the use of iOS/Mac #defines in Assertions.cpp
https://bugs.webkit.org/show_bug.cgi?id=108870

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-05
Reviewed by David Kilzer.

* wtf/Assertions.cpp: Instead of using PLATFORM(MAC) and assume it works for iOS and OS X,
use CF as the guard for CFString. Similarily, USE_APPLE_SYSTEM_LOG guards code using ASL.

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

6 years agoUnreviewed. VS2010 JavaScriptCore projects touch-ups.
roger_fong@apple.com [Tue, 5 Feb 2013 20:52:36 +0000 (20:52 +0000)]
Unreviewed. VS2010 JavaScriptCore projects touch-ups.

* JavaScriptCore.vcxproj/jsc/jsc.vcxproj:
* JavaScriptCore.vcxproj/testRegExp/testRegExpPostBuild.cmd:

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

6 years agoSource/WTF: Make StringBuilder::toAtomicString() consistent with StringBuilder::toStr...
benjamin@webkit.org [Tue, 5 Feb 2013 20:49:20 +0000 (20:49 +0000)]
Source/WTF: Make StringBuilder::toAtomicString() consistent with StringBuilder::toString() for strings of length zero
https://bugs.webkit.org/show_bug.cgi?id=108894

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-05
Reviewed by Andreas Kling.

* wtf/text/StringBuilder.h:
(WTF::StringBuilder::toAtomicString): The function was returning the nullAtom for strings of length zero.
This is inconsistent with StringBuilder::toString() which always return an empty string.

This patch unifies the behavior.

Tools: Make StringBuilder::toAtomicString() consistent with StringBuilder::toString() for strings of null length
https://bugs.webkit.org/show_bug.cgi?id=108894

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-05
Reviewed by Andreas Kling.

* TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
Extend the tests to check toAtomicString() on an empty builder.

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

6 years agoStructure::m_outOfLineCapacity is unnecessary
mhahnenberg@apple.com [Tue, 5 Feb 2013 20:43:27 +0000 (20:43 +0000)]
Structure::m_outOfLineCapacity is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=108206

Reviewed by Darin Adler.

Simplifying the utility functions that we use since we don't need a
bunch of fancy templates for this one specific call site.

Source/JavaScriptCore:

* runtime/Structure.h:
(JSC::Structure::outOfLineCapacity):

Source/WTF:

* wtf/MathExtras.h:
(WTF::roundUpToPowerOfTwo):

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

6 years agoUnreviewed. Copy some resource files for VS2010 solution.
roger_fong@apple.com [Tue, 5 Feb 2013 20:41:07 +0000 (20:41 +0000)]
Unreviewed. Copy some resource files for VS2010 solution.
https://bugs.webkit.org/show_bug.cgi?id=106989.

* WebKit.resources/WebKit.rc: Added.
* WebKit.resources/deleteButton.png: Added.
* WebKit.resources/deleteButtonPressed.png: Added.
* WebKit.resources/fsVideoAudioVolumeHigh.png: Added.
* WebKit.resources/fsVideoAudioVolumeLow.png: Added.
* WebKit.resources/fsVideoExitFullscreen.png: Added.
* WebKit.resources/fsVideoPause.png: Added.
* WebKit.resources/fsVideoPlay.png: Added.
* WebKit.resources/missingImage.png: Added.
* WebKit.resources/nullplugin.png: Added.
* WebKit.resources/panEastCursor.png: Added.
* WebKit.resources/panIcon.png: Added.
* WebKit.resources/panNorthCursor.png: Added.
* WebKit.resources/panNorthEastCursor.png: Added.
* WebKit.resources/panNorthWestCursor.png: Added.
* WebKit.resources/panSouthCursor.png: Added.
* WebKit.resources/panSouthEastCursor.png: Added.
* WebKit.resources/panSouthWestCursor.png: Added.
* WebKit.resources/panWestCursor.png: Added.
* WebKit.resources/searchCancel.png: Added.
* WebKit.resources/searchCancelPressed.png: Added.
* WebKit.resources/searchMagnifier.png: Added.
* WebKit.resources/searchMagnifierResults.png: Added.
* WebKit.resources/textAreaResizeCorner.png: Added.
* WebKit.resources/verticalTextCursor.png: Added.
* WebKit.resources/zoomInCursor.png: Added.
* WebKit.resources/zoomOutCursor.png: Added.

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

6 years agoObjective-C API: testapi.mm should use ARC
mhahnenberg@apple.com [Tue, 5 Feb 2013 20:38:47 +0000 (20:38 +0000)]
Objective-C API: testapi.mm should use ARC
https://bugs.webkit.org/show_bug.cgi?id=107838

Reviewed by Oliver Hunt.

In ToT testapi.mm uses the Obj-C garbage collector, which hides a lot of our object lifetime bugs.
We should enable ARC, since that is what most of our clients will be using. We use Xcode project
settings to make sure we don't try to compile ARC on 32-bit.

* API/tests/testapi.mm:
(+[TestObject testObject]):
(testObjectiveCAPI):
* JavaScriptCore.xcodeproj/project.pbxproj:

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

6 years agoUnreviewed. VS2010 solution touch-ups.
roger_fong@apple.com [Tue, 5 Feb 2013 20:34:21 +0000 (20:34 +0000)]
Unreviewed. VS2010 solution touch-ups.
Make common.props use a platform dependent preprocessor definition (WIN32 or X64).
Add a few base properties.
Create a temporary auto-version script for use by the VS2010 solution. Will be removed later.
https://bugs.webkit.org/show_bug.cgi?id=106949.

* win/tools/scripts/auto-version2010.sh: Added.
* win/tools/vsprops/common.props:

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

6 years agoAdds the WebGL Conformance Tests typedarrays folder.
gman@chromium.org [Tue, 5 Feb 2013 20:32:49 +0000 (20:32 +0000)]
Adds the WebGL Conformance Tests typedarrays folder.
https://bugs.webkit.org/show_bug.cgi?id=108907

Reviewed by Kenneth Russell.

* webgl/conformance/typedarrays/array-buffer-crash-expected.txt: Added.
* webgl/conformance/typedarrays/array-buffer-crash.html: Added.
* webgl/conformance/typedarrays/array-buffer-view-crash-expected.txt: Added.
* webgl/conformance/typedarrays/array-buffer-view-crash.html: Added.
* webgl/conformance/typedarrays/array-unit-tests-expected.txt: Added.
* webgl/conformance/typedarrays/array-unit-tests.html: Added.
* webgl/conformance/typedarrays/data-view-crash-expected.txt: Added.
* webgl/conformance/typedarrays/data-view-crash.html: Added.
* webgl/conformance/typedarrays/data-view-test-expected.txt: Added.
* webgl/conformance/typedarrays/data-view-test.html: Added.
* webgl/resources/webgl_test_files/conformance/typedarrays/00_test_list.txt: Added.
* webgl/resources/webgl_test_files/conformance/typedarrays/array-buffer-crash.html: Added.
* webgl/resources/webgl_test_files/conformance/typedarrays/array-buffer-view-crash.html: Added.
* webgl/resources/webgl_test_files/conformance/typedarrays/array-unit-tests.html: Added.
* webgl/resources/webgl_test_files/conformance/typedarrays/data-view-crash.html: Added.
* webgl/resources/webgl_test_files/conformance/typedarrays/data-view-test.html: Added.

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

6 years agoAdds the WebGL Conformance Tests misc folder.
gman@chromium.org [Tue, 5 Feb 2013 20:20:28 +0000 (20:20 +0000)]
Adds the WebGL Conformance Tests misc folder.
https://bugs.webkit.org/show_bug.cgi?id=108905

Reviewed by Kenneth Russell.

* webgl/conformance/misc/bad-arguments-test-expected.txt: Added.
* webgl/conformance/misc/bad-arguments-test.html: Added.
* webgl/conformance/misc/boolean-argument-conversion-expected.txt: Added.
* webgl/conformance/misc/boolean-argument-conversion.html: Added.
* webgl/conformance/misc/delayed-drawing-expected.txt: Added.
* webgl/conformance/misc/delayed-drawing.html: Added.
* webgl/conformance/misc/error-reporting-expected.txt: Added.
* webgl/conformance/misc/error-reporting.html: Added.
* webgl/conformance/misc/functions-returning-strings-expected.txt: Added.
* webgl/conformance/misc/functions-returning-strings.html: Added.
* webgl/conformance/misc/instanceof-test-expected.txt: Added.
* webgl/conformance/misc/instanceof-test.html: Added.
* webgl/conformance/misc/invalid-passed-params-expected.txt: Added.
* webgl/conformance/misc/invalid-passed-params.html: Added.
* webgl/conformance/misc/is-object-expected.txt: Added.
* webgl/conformance/misc/is-object.html: Added.
* webgl/conformance/misc/null-object-behaviour-expected.txt: Added.
* webgl/conformance/misc/null-object-behaviour.html: Added.
* webgl/conformance/misc/object-deletion-behaviour-expected.txt: Added.
* webgl/conformance/misc/object-deletion-behaviour.html: Added.
* webgl/conformance/misc/shader-precision-format-expected.txt: Added.
* webgl/conformance/misc/shader-precision-format.html: Added.
* webgl/conformance/misc/type-conversion-test-expected.txt: Added.
* webgl/conformance/misc/type-conversion-test.html: Added.
* webgl/conformance/misc/uninitialized-test-expected.txt: Added.
* webgl/conformance/misc/uninitialized-test.html: Added.
* webgl/conformance/misc/webgl-specific-expected.txt: Added.
* webgl/conformance/misc/webgl-specific.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/00_test_list.txt: Added.
* webgl/resources/webgl_test_files/conformance/misc/bad-arguments-test.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/boolean-argument-conversion.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/delayed-drawing.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/error-reporting.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/functions-returning-strings.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/instanceof-test.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/invalid-passed-params.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/is-object.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/null-object-behaviour.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/object-deletion-behaviour.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/shader-precision-format.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/type-conversion-test.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/uninitialized-test.html: Added.
* webgl/resources/webgl_test_files/conformance/misc/webgl-specific.html: Added.

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

6 years agoAdds the WebGL Conformance Tests buffers folder
gman@chromium.org [Tue, 5 Feb 2013 20:09:36 +0000 (20:09 +0000)]
Adds the WebGL Conformance Tests buffers folder
https://bugs.webkit.org/show_bug.cgi?id=108902

Reviewed by Kenneth Russell.

* webgl/conformance/buffers/buffer-bind-test-expected.txt: Added.
* webgl/conformance/buffers/buffer-bind-test.html: Added.
* webgl/conformance/buffers/buffer-data-array-buffer-expected.txt: Added.
* webgl/conformance/buffers/buffer-data-array-buffer.html: Added.
* webgl/conformance/buffers/element-array-buffer-delete-recreate-expected.txt: Added.
* webgl/conformance/buffers/element-array-buffer-delete-recreate.html: Added.
* webgl/conformance/buffers/index-validation-copies-indices-expected.txt: Added.
* webgl/conformance/buffers/index-validation-copies-indices.html: Added.
* webgl/conformance/buffers/index-validation-crash-with-buffer-sub-data-expected.txt: Added.
* webgl/conformance/buffers/index-validation-crash-with-buffer-sub-data.html: Added.
* webgl/conformance/buffers/index-validation-expected.txt: Added.
* webgl/conformance/buffers/index-validation-large-buffer-expected.txt: Added.
* webgl/conformance/buffers/index-validation-large-buffer.html: Added.
* webgl/conformance/buffers/index-validation-verifies-too-many-indices-expected.txt: Added.
* webgl/conformance/buffers/index-validation-verifies-too-many-indices.html: Added.
* webgl/conformance/buffers/index-validation-with-resized-buffer-expected.txt: Added.
* webgl/conformance/buffers/index-validation-with-resized-buffer.html: Added.
* webgl/conformance/buffers/index-validation.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/00_test_list.txt: Added.
* webgl/resources/webgl_test_files/conformance/buffers/buffer-bind-test.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/buffer-data-array-buffer.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/element-array-buffer-delete-recreate.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/index-validation-copies-indices.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/index-validation-crash-with-buffer-sub-data.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/index-validation-large-buffer.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/index-validation-verifies-too-many-indices.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/index-validation-with-resized-buffer.html: Added.
* webgl/resources/webgl_test_files/conformance/buffers/index-validation.html: Added.

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

6 years agoUnreviewed, rolling out r141905.
commit-queue@webkit.org [Tue, 5 Feb 2013 19:47:33 +0000 (19:47 +0000)]
Unreviewed, rolling out r141905.
http://trac.webkit.org/changeset/141905
https://bugs.webkit.org/show_bug.cgi?id=108963

"Broke mac build" (Requested by tonyg-cr on #webkit).

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

Source/WebCore:

* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::pumpTokenizer):
* html/parser/CompactHTMLToken.cpp:
(SameSizeAsCompactHTMLToken):
(WebCore::isStringSafeToSendToAnotherThread):
(WebCore::CompactHTMLToken::isSafeToSendToAnotherThread):
* html/parser/CompactHTMLToken.h:
(WebCore):
(CompactHTMLToken):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
(WebCore::HTMLDocumentParser::pumpTokenizer):
* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::filterToken):
* html/parser/XSSAuditor.h:
(WebCore):
(XSSAuditor):
* html/parser/XSSAuditorDelegate.cpp:
(WebCore::XSSAuditorDelegate::didBlockScript):
* html/parser/XSSAuditorDelegate.h:
(WebCore::DidBlockScriptRequest::create):
(WebCore::DidBlockScriptRequest::DidBlockScriptRequest):
(XSSAuditorDelegate):
* platform/KURL.cpp:
* platform/KURL.h:
(KURL):
* platform/KURLGoogle.cpp:
(WebCore::KURLGooglePrivate::reportMemoryUsage):
* platform/KURLGooglePrivate.h:
(KURLGooglePrivate):
* platform/KURLWTFURLImpl.h:
(WebCore::KURLWTFURLImpl::reportMemoryUsage):

Source/WTF:

* wtf/text/CString.cpp:
* wtf/text/CString.h:
* wtf/text/WTFString.cpp:
* wtf/text/WTFString.h:
(String):
* wtf/url/api/ParsedURL.h:
(ParsedURL):
* wtf/url/api/URLString.h:

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

6 years ago[HarfBuzz][Cairo] harfBuzzGetGlyph is slow and hot
dominik.rottsches@intel.com [Tue, 5 Feb 2013 19:38:19 +0000 (19:38 +0000)]
[HarfBuzz][Cairo] harfBuzzGetGlyph is slow and hot
https://bugs.webkit.org/show_bug.cgi?id=108941

Reviewed by Kenneth Rohde Christiansen.

The text to glyph conversion using Cairo is slow
due to expensive text codec conversion to UTF-8.
Additionally, the glyph lookup itself is expensive.

Inspired by the approach taken in HarfBuzzFaceSkia.cpp
I suggest to implement a similar caching mechanism to
accelerate this conversion.

Arabic line breaking test, under review in
bug 108948 shows about 58% improvement on my system
with this patch.

* platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
(WebCore::HarfBuzzFontData::HarfBuzzFontData):
    New container structure that keeps pointers
    to the cairo scaled font as well as the glyph cache.
(HarfBuzzFontData):
(WebCore):
(WebCore::harfBuzzGetGlyph): Using the new container structure for accessing the cache.
(WebCore::harfBuzzGetGlyphHorizontalAdvance): Using the new container structure for accessing the scaled font.
(WebCore::harfBuzzGetGlyphExtents): Ditto.
(WebCore::destroyHarfBuzzFontData): Destroying the container that held the pointers.
(WebCore::HarfBuzzFace::createFont):
    Initializing the container structure with the pointers
    to the cache that is held in HarfBuzzFace and the cairo scaled font.

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

6 years agoAdd a performance test for arabic line breaking
dominik.rottsches@intel.com [Tue, 5 Feb 2013 19:15:57 +0000 (19:15 +0000)]
Add a performance test for arabic line breaking
https://bugs.webkit.org/show_bug.cgi?id=108948

Reviewed by Eric Seidel.

Adding a perfomance test based to exercise the complex
font path used in rendering arabic script.

* Layout/ArabicLineLayout.html: Added.
* Skipped: New test skipped by default as per Ryosuke's request.

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

6 years agoCall XSSAuditor's didBlockScript() for the threaded HTML parser
tonyg@chromium.org [Tue, 5 Feb 2013 19:06:26 +0000 (19:06 +0000)]
Call XSSAuditor's didBlockScript() for the threaded HTML parser
https://bugs.webkit.org/show_bug.cgi?id=108726

Reviewed by Adam Barth.

Source/WebCore:

This patch causes us to call didBlockScript() on the main thread if the CompactHTML token has XSSInfo.
To do so, we:
1. Rename DidBlockScriptRequest to XSSInfo.
2. Add an OwnPtr<XSSInfo> field to CompactHTMLToken.
3. Add an isSafeToSendToAnotherThread() method to String and KURL.

We don't yet populate didBlockScriptRequest on the background thread, but this should just work once we do.

No new tests because no new functionality.

* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::pumpTokenizer): Update comment for rename.
* html/parser/CompactHTMLToken.cpp:
(SameSizeAsCompactHTMLToken):
(WebCore::CompactHTMLToken::CompactHTMLToken): Add a copy constructor used by Vector.
(WebCore::CompactHTMLToken::isSafeToSendToAnotherThread): Include new m_xssInfo field in safety check.
(WebCore):
(WebCore::CompactHTMLToken::xssInfo): Added.
(WebCore::CompactHTMLToken::setXSSInfo): Added.
* html/parser/CompactHTMLToken.h: Add an OwnPtr<XSSInfo> field to CompactHTMLToken.
(WebCore):
(CompactHTMLToken):
(WTF): Add VectorTraits necessary for copying Vector fields objects that contain an OwnPtr.
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser): Add new didBlockScript() call.
(WebCore::HTMLDocumentParser::pumpTokenizer):
* html/parser/XSSAuditor.cpp: Renaming.
(WebCore::XSSAuditor::filterToken):
* html/parser/XSSAuditor.h: Renaming.
(WebCore):
(XSSAuditor):
* html/parser/XSSAuditorDelegate.cpp:
(WebCore::XSSInfo::isSafeToSendToAnotherThread):
(WebCore):
(WebCore::XSSAuditorDelegate::didBlockScript):
* html/parser/XSSAuditorDelegate.h:
(WebCore::XSSInfo::create):
(XSSInfo):
(WebCore::XSSInfo::XSSInfo):
(XSSAuditorDelegate):
* platform/KURL.cpp:
(WebCore::KURL::isSafeToSendToAnotherThread): Added.
(WebCore):
* platform/KURL.h:
(KURL):
* platform/KURLGoogle.cpp:
(WebCore):
(WebCore::KURLGooglePrivate::isSafeToSendToAnotherThread): Added.
* platform/KURLGooglePrivate.h:
(KURLGooglePrivate):
* platform/KURLWTFURLImpl.h:
(WebCore::KURLWTFURLImpl::isSafeToSendToAnotherThread): Added.

Source/WTF:

This patch adds isSafeToSendToAnotherThread() methods to CString, String, ParsedURL and URLString.
These methods check to ensure there are 0 or 1 references.

* wtf/text/CString.cpp:
(WTF::CString::isSafeToSendToAnotherThread): Added.
(WTF):
* wtf/text/CString.h:
(CString):
* wtf/text/WTFString.cpp:
(WTF::String::isSafeToSendToAnotherThread): Added.
(WTF):
* wtf/text/WTFString.h:
(String):
* wtf/url/api/ParsedURL.h:
(WTF::ParsedURL::isSafeToSendToAnotherThread): Added.
* wtf/url/api/URLString.h:
(WTF::URLString::isSafeToSendToAnotherThread): Added.

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

6 years ago[chromium] Make overlay layers slow-scrolling
commit-queue@webkit.org [Tue, 5 Feb 2013 18:55:57 +0000 (18:55 +0000)]
[chromium] Make overlay layers slow-scrolling
https://bugs.webkit.org/show_bug.cgi?id=108957

Patch by Sami Kyostila <skyostil@chromium.org> on 2013-02-05
Reviewed by James Robinson.

Since overlay layers get inserted on top of everything else, we must
mark them slow-scrolling to prevent all scroll input events to the rest
of the page from getting blocked. This is also more correct because
generally the overlay contents need to be repainted whenever the scroll
offset changes, and with this patch the painting happens in sync with
page scrolling.

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

6 years ago[BlackBerry] Scrolling performance drops doing page load
commit-queue@webkit.org [Tue, 5 Feb 2013 18:44:09 +0000 (18:44 +0000)]
[BlackBerry] Scrolling performance drops doing page load
https://bugs.webkit.org/show_bug.cgi?id=108949

Patch by Andrew Lo <anlo@rim.com> on 2013-02-05
Reviewed by Yong Li.
Internally reviewed by Jakob Petsovits.

Internal PR 291390.
The intention of this code was to not update non-visible tiles during page load.

Before this patch, the code would update tiles that have already been rendered
during page load.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::updateTilesForScrollOrNotRenderedRegion):

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

6 years ago[Windows] Unreviewed VS2010 Build Correction after r141651
bfulgham@webkit.org [Tue, 5 Feb 2013 18:43:50 +0000 (18:43 +0000)]
[Windows] Unreviewed VS2010 Build Correction after r141651

* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Add missing
StructureRareData.h and StructureRareData.cpp files.
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.

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

6 years agoTextAutosizing: adjust the maximum difference between cluster text width and its...
commit-queue@webkit.org [Tue, 5 Feb 2013 18:36:33 +0000 (18:36 +0000)]
TextAutosizing: adjust the maximum difference between cluster text width and its descendant
width.
https://bugs.webkit.org/show_bug.cgi?id=108411

Source/WebCore:

Currently, if a render object is more than 200 CSS units shorter than its parent cluster, it
becomes a separate autosizing cluster (see https://bugs.webkit.org/show_bug.cgi?id=105188).
This doesn't work well for layouts when narrow nodes are related, like nested comments:
deeper comments are all shorter than the parent cluster and become autosized differently. To
avoid that the difference that makes a shorter descendant a new autosizing cluster is
adjusted each time the width difference is not greater than 50 CSS units from the previous
one. This allows nested comments, for example, to remain a part of the parent cluster and be
autosized with the same multiplier.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-05
Reviewed by Kenneth Rohde Christiansen.

Tests:
        fast/text-autosizing/nested-child.html

* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizingClusterInfo::TextAutosizingClusterInfo):

    Added a new field to store the current maximum width difference for the cluster.

(WebCore::TextAutosizer::isAutosizingCluster):

    Uses the new field to determine if the current node is a separate cluster,
    updates the maximum allowed width difference between the cluster and its descendant.

(WebCore::TextAutosizer::processContainer):
(WebCore::TextAutosizer::clusterShouldBeAutosized):
(WebCore::TextAutosizer::measureDescendantTextWidth):

    Non-const reference passed to the methods above.

* rendering/TextAutosizer.h: updated method parameters.

LayoutTests:

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-05
Reviewed by Kenneth Rohde Christiansen.

Tests that certain width difference doesn't make descendants separate clusters.

* fast/text-autosizing/nested-child-expected.html: Added.
* fast/text-autosizing/nested-child.html: Added.

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

6 years agoUnreviewed, rolling out r141896.
commit-queue@webkit.org [Tue, 5 Feb 2013 18:30:44 +0000 (18:30 +0000)]
Unreviewed, rolling out r141896.
http://trac.webkit.org/changeset/141896
https://bugs.webkit.org/show_bug.cgi?id=108956

crashes indexdb security tests (Requested by gavinp on
#webkit).

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

* public/platform/WebKitPlatformSupport.h:
(WebKit):
(WebKitPlatformSupport):
(WebKit::WebKitPlatformSupport::idbFactory):
* src/IDBFactoryBackendProxy.cpp:
(WebKit::IDBFactoryBackendProxy::IDBFactoryBackendProxy):

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

6 years ago[chromium] remove methods from the WebTestRunner interface that are only used by...
jochen@chromium.org [Tue, 5 Feb 2013 18:07:37 +0000 (18:07 +0000)]
[chromium] remove methods from the WebTestRunner interface that are only used by WebTestProxyBase
https://bugs.webkit.org/show_bug.cgi?id=108926

Reviewed by Adam Barth.

* DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:
(WebKit):
(WebTestRunner):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):

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

6 years agoContinue making XSSAuditor thread safe: Remove dependency on parser's sourceForToken...
tonyg@chromium.org [Tue, 5 Feb 2013 17:55:51 +0000 (17:55 +0000)]
Continue making XSSAuditor thread safe: Remove dependency on parser's sourceForToken and TextResourceDecoder
https://bugs.webkit.org/show_bug.cgi?id=108698

Reviewed by Adam Barth.

We'd like to be able to call filterToken() from the BackgroundHTMLParser where there is no HTMLDocumentParser. So we are removing the dependencies of
filterToken() on the HTMLDocumentParser. This patch brings us one step closer to removing the m_parser member from XSSAuditor by passing in the
TextResourceDecoder and HTMLSourceTracker to filterToken. To keep the number of parameters from blowing up, this introduces a FilterTokenRequest struct
to hold its arguments. We expect to add one more member to this struct.

No new tests because no new functionality.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::pumpTokenizer):
* html/parser/HTMLDocumentParser.h:
* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::filterToken):
(WebCore::XSSAuditor::filterStartToken):
(WebCore::XSSAuditor::filterCharacterToken):
(WebCore::XSSAuditor::filterScriptToken):
(WebCore::XSSAuditor::filterObjectToken):
(WebCore::XSSAuditor::filterParamToken):
(WebCore::XSSAuditor::filterEmbedToken):
(WebCore::XSSAuditor::filterAppletToken):
(WebCore::XSSAuditor::filterIframeToken):
(WebCore::XSSAuditor::filterMetaToken):
(WebCore::XSSAuditor::filterBaseToken):
(WebCore::XSSAuditor::filterFormToken):
(WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):
(WebCore::XSSAuditor::eraseAttributeIfInjected):
(WebCore::XSSAuditor::decodedSnippetForName):
(WebCore::XSSAuditor::decodedSnippetForAttribute):
(WebCore::XSSAuditor::decodedSnippetForJavaScript):
* html/parser/XSSAuditor.h:
(WebCore):
(WebCore::FilterTokenRequest::FilterTokenRequest):
(FilterTokenRequest):
(XSSAuditor):

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

6 years ago[Chromium] Remove idbFactory from WebKitPlatformSupport
pilgrim@chromium.org [Tue, 5 Feb 2013 17:42:47 +0000 (17:42 +0000)]
[Chromium] Remove idbFactory from WebKitPlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=106457

Reviewed by Adam Barth.

Now that https://codereview.chromium.org/12181010/ has landed, the
idbFactory method is no longer needed. (Embedders must now call
the new setIDBFactory method upon initialization.) Part of a
larger refactoring series; see tracking bug 82948.

* public/platform/WebKitPlatformSupport.h:
(WebKit):
* src/IDBFactoryBackendProxy.cpp:
(WebKit::IDBFactoryBackendProxy::IDBFactoryBackendProxy):

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

6 years agor141788 won't build due to not having all changes needed by Node* change
msaboff@apple.com [Tue, 5 Feb 2013 15:52:16 +0000 (15:52 +0000)]
r141788 won't build due to not having all changes needed by Node* change
https://bugs.webkit.org/show_bug.cgi?id=108944

Reviewed by David Kilzer.

Fixed three instances of integerResult(..., m_compileIndex) to be integerResult(..., node).

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileSoftModulo):
(JSC::DFG::SpeculativeJIT::compileIntegerArithDivForARMv7s):

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

6 years ago[Qt] Unreviewed gardening. Skip failing test.
kadam@inf.u-szeged.hu [Tue, 5 Feb 2013 15:48:45 +0000 (15:48 +0000)]
[Qt] Unreviewed gardening. Skip failing test.
https://bugs.webkit.org/show_bug.cgi?id=108942.

* platform/qt/TestExpectations:

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

6 years ago[Qt] REGRESSION(r137436): It made all inspector tests timeout on developer builds
jocelyn.turcotte@digia.com [Tue, 5 Feb 2013 15:34:51 +0000 (15:34 +0000)]
[Qt] REGRESSION(r137436): It made all inspector tests timeout on developer builds
https://bugs.webkit.org/show_bug.cgi?id=106554

Reviewed by Simon Hausmann.

.:

Explicitely link WebCore resources in the final DLL only on Windows to
support force_static_libs_as_shared on other platforms.

WebKit1 applications don't get the QtWebKit dynamic library loaded
since libQtWebKitWidgets doesn't depend on libQtWebKit if WebCore and
WebKit1 are dynamic libraries of their own.

* Source/api.pri:

Source/WebCore:

* Target.pri:

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

6 years agoWeb Inspector: prevent crash, add required error string value
commit-queue@webkit.org [Tue, 5 Feb 2013 15:05:48 +0000 (15:05 +0000)]
Web Inspector: prevent crash, add required error string value
https://bugs.webkit.org/show_bug.cgi?id=108776

Patch by Peter Rybin <prybin@chromium.org> on 2013-02-05
Reviewed by Pavel Feldman.

Error string is assigned where missing, assert is added where empty string is
possible.

* inspector/InjectedScriptBase.cpp:
(WebCore::InjectedScriptBase::makeEvalCall):
* inspector/PageRuntimeAgent.cpp:
(WebCore::PageRuntimeAgent::injectedScriptForEval):

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

6 years agoWeb Inspector: Clicking a profile's title in the console loads about:blank.
commit-queue@webkit.org [Tue, 5 Feb 2013 14:18:36 +0000 (14:18 +0000)]
Web Inspector: Clicking a profile's title in the console loads about:blank.
https://bugs.webkit.org/show_bug.cgi?id=107949

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2013-02-05
Reviewed by Vsevolod Vlasov.

Quick fix for regression.

* inspector/front-end/inspector.js:
Avoid "exit route" when URL is a profile URL.

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

6 years agoINPUT_MULTIPLE_FIELDS_UI: element.focus() should not focus on disabled sub-fields.
tkent@chromium.org [Tue, 5 Feb 2013 13:54:16 +0000 (13:54 +0000)]
INPUT_MULTIPLE_FIELDS_UI: element.focus() should not focus on disabled sub-fields.
https://bugs.webkit.org/show_bug.cgi?id=108924

Reviewed by Kentaro Hara.

Source/WebCore:

The first field may be non-focusable. We should search sub-fields for
focusable one.

Test: fast/forms/date-multiple-fields/date-multiple-fields-focus.html

* html/shadow/DateTimeEditElement.cpp:
(WebCore::DateTimeEditElement::focusOnNextFocusableField):
Added. A private helper function.
(WebCore::DateTimeEditElement::focusIfNoFocus): Use focusOnNextFocusableField.
(WebCore::DateTimeEditElement::focusByOwner): Ditto.
(WebCore::DateTimeEditElement::focusOnNextField): Ditto.
* html/shadow/DateTimeEditElement.h:
(DateTimeEditElement): Declare focusOnNextFocusableField.

LayoutTests:

* fast/forms/date-multiple-fields/date-multiple-fields-focus-expected.txt: Added.
* fast/forms/date-multiple-fields/date-multiple-fields-focus.html: Added.

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

6 years agoWeb Inspector: Create separate project for each file system added to inspector.
vsevik@chromium.org [Tue, 5 Feb 2013 13:52:22 +0000 (13:52 +0000)]
Web Inspector: Create separate project for each file system added to inspector.
https://bugs.webkit.org/show_bug.cgi?id=108652

Reviewed by Pavel Feldman.

Source/WebCore:

Every file system added to web inspector is now represented by its own project in workspace.
FileSystemMapping changed accrodingly.

Test: inspector/file-system-mapping.html

* inspector/front-end/FileMapping.js:
(WebInspector.FileMapping.prototype._entryURIPrefix):
* inspector/front-end/FileSystemMapping.js:
(WebInspector.FileSystemMapping.prototype.fileForURI):
(WebInspector.FileSystemMapping.prototype.uriForFile):
(WebInspector.FileSystemMapping.prototype.uriPrefixForPathPrefix):
(WebInspector.FileSystemMappingImpl):
(WebInspector.FileSystemMappingImpl.prototype._loadFromSettings.get this):
(WebInspector.FileSystemMappingImpl.prototype._loadFromSettings):
(WebInspector.FileSystemMappingImpl.prototype._saveToSettings):
(WebInspector.FileSystemMappingImpl.prototype.set _fileSystemName):
(WebInspector.FileSystemMappingImpl.prototype.fileSystemId):
(WebInspector.FileSystemMappingImpl.prototype.addFileSystemMapping):
(WebInspector.FileSystemMappingImpl.prototype.removeFileSystemMapping):
(WebInspector.FileSystemMappingImpl.prototype.fileSystemPaths):
(WebInspector.FileSystemMappingImpl.prototype.fileForURI):
(WebInspector.FileSystemMappingImpl.prototype.uriForFile):
(WebInspector.FileSystemMappingImpl.prototype.uriPrefixForPathPrefix):
* inspector/front-end/FileSystemWorkspaceProvider.js:
(WebInspector.FileSystemWorkspaceProvider):
(WebInspector.FileSystemWorkspaceProvider.prototype.innerCallback):
(WebInspector.FileSystemWorkspaceProvider.prototype.requestFileContent):
(WebInspector.FileSystemWorkspaceProvider.prototype.setFileContent):
(WebInspector.FileSystemWorkspaceProvider.prototype._populate.filesLoaded):
(WebInspector.FileSystemWorkspaceProvider.prototype._populate):
(WebInspector.FileSystemWorkspaceProvider.prototype._addFile):
(WebInspector.FileSystemWorkspaceProvider.prototype._removeFile):
(WebInspector.FileSystemWorkspaceProvider.prototype.reset):
* inspector/front-end/IsolatedFileSystemModel.js:
(WebInspector.IsolatedFileSystemModel):
(WebInspector.IsolatedFileSystemModel.prototype._innerAddFileSystem):
(WebInspector.IsolatedFileSystemModel.prototype._fileSystemRemoved):
* inspector/front-end/Workspace.js:
(WebInspector.Project.prototype.searchInFileContent):
(WebInspector.Project.prototype.dispose):
(WebInspector.Workspace.prototype.removeProject):

LayoutTests:

* inspector/file-mapping.html:
* inspector/file-system-mapping-expected.txt: Added.
* inspector/file-system-mapping.html: Added.

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

6 years agoINPUT_MULTIPLE_FIELDS_UI: Should not move focus if the element already has focus
tkent@chromium.org [Tue, 5 Feb 2013 13:03:38 +0000 (13:03 +0000)]
INPUT_MULTIPLE_FIELDS_UI: Should not move focus if the element already has focus
https://bugs.webkit.org/show_bug.cgi?id=108914

Reviewed by Kentaro Hara.

Source/WebCore:

If timeInput.focus() is called when a sub-field of the time input
already has focus, we should not focus on the first sub-field of the
time input.

Test: fast/forms/time-multiple-fields/time-multiple-fields-focus.html

* html/BaseMultipleFieldsDateAndTimeInputType.cpp:
(WebCore::BaseMultipleFieldsDateAndTimeInputType::willCancelFocus): If
the input elment already has focused sub-field, we don't need to proceed
focus handling. FocusDirection check is required because we don't need
to do this in cases of sequential focus navigation.
* html/BaseMultipleFieldsDateAndTimeInputType.h:
(BaseMultipleFieldsDateAndTimeInputType): Override InputType::willCancelFocus.

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::focus):
Cancel focus if InputType::willCancelFocus returns true.
* html/HTMLInputElement.h:
(HTMLInputElement): Override focus.
* html/InputType.cpp:
(WebCore::InputType::willCancelFocus):
Add a default implementation. It returns false.
* html/InputType.h:
(InputType): Declare willCancelFocus.

LayoutTests:

* fast/forms/time-multiple-fields/time-multiple-fields-focus-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-focus.html: Added.

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

6 years ago[Qt] RGB -> BGR is wrong on big endian
allan.jensen@digia.com [Tue, 5 Feb 2013 12:57:01 +0000 (12:57 +0000)]
[Qt] RGB -> BGR is wrong on big endian
https://bugs.webkit.org/show_bug.cgi?id=107560

Reviewed by Jocelyn Turcotte.

Replace the conversion to methods that make it clearer what is going on.
The routines are also optimized compared to the existing by avoiding going
over slow Color constructor.

Tested by existing tests in canvas and fast/canvas.

* platform/graphics/Color.cpp:
(WebCore::colorFromPremultipliedARGB):
    Cleanup.
(WebCore::premultipliedARGBFromColor):
    Cleanup and correct for alpha = 0.
* platform/graphics/Color.h:
(WebCore):
* platform/graphics/qt/ImageBufferQt.cpp:
(WebCore::copyColorToRGBA):
(WebCore::copyRGBAToColor):
(WebCore::getImageData):
(WebCore::ImageBuffer::putByteArray):

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

6 years ago[TexMap] Use visible as initial value of backface-visibility-property.
commit-queue@webkit.org [Tue, 5 Feb 2013 12:41:17 +0000 (12:41 +0000)]
[TexMap] Use visible as initial value of backface-visibility-property.
https://bugs.webkit.org/show_bug.cgi?id=108875

Patch by JungJik Lee <jungjik.lee@samsung.com> on 2013-02-05
Reviewed by Noam Rosenthal.

According to W3C spec, the initial value of backface-visibility-visibility is visible.
However TextureMapperLayer's initial value is false which means hidden.
So this patch is for changing the value to visible(true).

Covered by existing tests.

* platform/graphics/texmap/TextureMapperLayer.h:
(WebCore::TextureMapperLayer::State::State): Change the initial value false to true
to use backface-visibility.

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

6 years agoWeb Inspector: [Canvas] do not store a dropped trace log in backend
aandrey@chromium.org [Tue, 5 Feb 2013 12:34:36 +0000 (12:34 +0000)]
Web Inspector: [Canvas] do not store a dropped trace log in backend
https://bugs.webkit.org/show_bug.cgi?id=108600

Reviewed by Pavel Feldman.

Clear memory immediately on dropping current trace log instead of waiting for the next capture command.

* inspector/InjectedScriptCanvasModuleSource.js:
(.):

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

6 years agoWeb Inspector: [Canvas] UI is not restored properly when deleting a live recording...
aandrey@chromium.org [Tue, 5 Feb 2013 12:04:39 +0000 (12:04 +0000)]
Web Inspector: [Canvas] UI is not restored properly when deleting a live recording profile
https://bugs.webkit.org/show_bug.cgi?id=108602

Reviewed by Pavel Feldman.

Cancel recording profile of canvas-type when deleting an alive trace log.
Drive-by: rename ProfileHeader.reset to ProfileHeader.dispose since it's called on header's destruction.
* inspector/front-end/CanvasProfileView.js:
(WebInspector.CanvasProfileHeader.prototype.dispose):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfileHeader.prototype.dispose):
(WebInspector.ProfilesPanel.prototype._reset):
(WebInspector.ProfilesPanel.prototype._removeProfileHeader):
(WebInspector.ProfilesPanel.prototype.setRecordingProfile):

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

6 years ago[Qt][WK2] Replace more uses of WebPageProxy with WKPage in QQuickWebView
hausmann@webkit.org [Tue, 5 Feb 2013 10:58:41 +0000 (10:58 +0000)]
[Qt][WK2] Replace more uses of WebPageProxy with WKPage in QQuickWebView
https://bugs.webkit.org/show_bug.cgi?id=108826

Reviewed by Kenneth Rohde Christiansen and signed off for WK2 by
Benjamin Poulain.

This patch converts a few more usages of WebPageProxy to functions in
the WKPage API.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::initialize):
(QQuickWebViewLegacyPrivate::zoomFactor):
(QQuickWebViewLegacyPrivate::setZoomFactor):
(QQuickWebViewExperimental::postMessage):
(QQuickWebViewExperimental::userAgent):
(QQuickWebViewExperimental::setUserAgent):
(QQuickWebViewExperimental::evaluateJavaScript):
(QQuickWebViewExperimental::findText):
(QQuickWebView::goBack):
(QQuickWebView::goForward):
(QQuickWebView::stop):
(QQuickWebView::reload):
(QQuickWebView::setUrl):
(QQuickWebView::canGoBack):
(QQuickWebView::canGoForward):
(QQuickWebView::loading):
(QQuickWebView::title):
(QQuickWebView::pageRef):
(QQuickWebView::loadHtml):
(QQuickWebView::runJavaScriptInMainFrame):
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):

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

6 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 5 Feb 2013 10:32:44 +0000 (10:32 +0000)]
Unreviewed GTK gardening.

Adding a flaky crash expectation for a couple of tests.
Reclassifying the expectation for http/tests/media/video-play-stall.html as a flaky timeouting test.

* platform/gtk/TestExpectations:

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

6 years agoBuild is broken since r141543 for platforms without OpenGL
commit-queue@webkit.org [Tue, 5 Feb 2013 10:27:41 +0000 (10:27 +0000)]
Build is broken since r141543 for platforms without OpenGL
https://bugs.webkit.org/show_bug.cgi?id=108862

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-02-05
Reviewed by Simon Hausmann.

* Target.pri:

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

6 years agoUnreviewed, rolling out r141865.
haraken@chromium.org [Tue, 5 Feb 2013 10:26:12 +0000 (10:26 +0000)]
Unreviewed, rolling out r141865.
http://trac.webkit.org/changeset/141865
https://bugs.webkit.org/show_bug.cgi?id=108909

webkit unit tests are broken

Source/WebCore:

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrSetter):
(GenerateEventListenerCallback):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::addEventListenerCallback):
(WebCore::TestEventTargetV8Internal::removeEventListenerCallback):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::addEventListenerCallback):
(WebCore::TestObjV8Internal::removeEventListenerCallback):
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore::get):
(WebCore::set):
(WebCore::getNthValueOnKeyPath):
(WebCore::canInjectNthValueOnKeyPath):
(WebCore::ensureNthValueOnKeyPath):
(WebCore::createIDBKeyFromScriptValueAndKeyPath):
(WebCore::injectIDBKeyIntoScriptValue):
(WebCore::canInjectIDBKeyIntoScriptValue):
* bindings/v8/NPV8Object.cpp:
(WebCore::createValueListFromVariantArgs):
(_NPN_Invoke):
(_NPN_InvokeDefault):
(_NPN_SetProperty):
(_NPN_Construct):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::compileAndRunScript):
* bindings/v8/ScriptProfiler.cpp:
(WebCore::ScriptProfiler::takeHeapSnapshot):
* bindings/v8/ScriptSourceCode.cpp:
(WebCore::ScriptSourceCode::compileScript):
* bindings/v8/ScriptSourceCode.h:
(ScriptSourceCode):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::prepareListenerObject):
* bindings/v8/V8NPObject.cpp:
(WebCore::npObjectInvokeImpl):
(WebCore::npObjectGetProperty):
* bindings/v8/V8NPUtils.cpp:
(WebCore::convertNPVariantToV8Object):
* bindings/v8/V8NPUtils.h:
(WebCore):
* bindings/v8/V8Utilities.cpp:
(WebCore::createHiddenDependency):
(WebCore::removeHiddenDependency):
(WebCore::transferHiddenDependency):
* bindings/v8/V8Utilities.h:
(WebCore):
* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::evaluate):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::addEventListenerCallback):
(WebCore::V8DOMWindow::removeEventListenerCallback):

Source/WebKit/chromium:

* src/WebBindings.cpp:
(WebKit::WebBindings::toV8Value):

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

6 years ago[chromium] remove unneccessary 0 checks for testRunner now that the TestRunner librar...
jochen@chromium.org [Tue, 5 Feb 2013 10:20:05 +0000 (10:20 +0000)]
[chromium] remove unneccessary 0 checks for testRunner now that the TestRunner library owns it
https://bugs.webkit.org/show_bug.cgi?id=108923

Reviewed by Kentaro Hara.

* DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::shouldBeginEditing):
(WebTestRunner::WebTestProxyBase::shouldEndEditing):
(WebTestRunner::WebTestProxyBase::shouldInsertNode):
(WebTestRunner::WebTestProxyBase::shouldInsertText):
(WebTestRunner::WebTestProxyBase::shouldChangeSelectedRange):
(WebTestRunner::WebTestProxyBase::shouldDeleteRange):
(WebTestRunner::WebTestProxyBase::shouldApplyStyle):
(WebTestRunner::WebTestProxyBase::didBeginEditing):
(WebTestRunner::WebTestProxyBase::didChangeSelection):
(WebTestRunner::WebTestProxyBase::didChangeContents):
(WebTestRunner::WebTestProxyBase::didEndEditing):
(WebTestRunner::WebTestProxyBase::createView):
(WebTestRunner::WebTestProxyBase::setStatusText):
(WebTestRunner::WebTestProxyBase::didStopLoading):
(WebTestRunner::WebTestProxyBase::isSmartInsertDeleteEnabled):
(WebTestRunner::WebTestProxyBase::isSelectTrailingWhitespaceEnabled):
(WebTestRunner::WebTestProxyBase::willPerformClientRedirect):
(WebTestRunner::WebTestProxyBase::didCancelClientRedirect):
(WebTestRunner::WebTestProxyBase::didStartProvisionalLoad):
(WebTestRunner::WebTestProxyBase::didReceiveServerRedirectForProvisionalLoad):
(WebTestRunner::WebTestProxyBase::didFailProvisionalLoad):
(WebTestRunner::WebTestProxyBase::didCommitProvisionalLoad):
(WebTestRunner::WebTestProxyBase::didReceiveTitle):
(WebTestRunner::WebTestProxyBase::didFinishDocumentLoad):
(WebTestRunner::WebTestProxyBase::didHandleOnloadEvents):
(WebTestRunner::WebTestProxyBase::didFailLoad):
(WebTestRunner::WebTestProxyBase::didFinishLoad):
(WebTestRunner::WebTestProxyBase::didChangeLocationWithinPage):
(WebTestRunner::WebTestProxyBase::didDisplayInsecureContent):
(WebTestRunner::WebTestProxyBase::didRunInsecureContent):
(WebTestRunner::WebTestProxyBase::didDetectXSS):
(WebTestRunner::WebTestProxyBase::assignIdentifierToRequest):
(WebTestRunner::WebTestProxyBase::willRequestResource):
(WebTestRunner::WebTestProxyBase::didCreateDataSource):
(WebTestRunner::WebTestProxyBase::willSendRequest):
(WebTestRunner::WebTestProxyBase::didReceiveResponse):
(WebTestRunner::WebTestProxyBase::didFinishResourceLoad):
(WebTestRunner::WebTestProxyBase::didFailResourceLoad):
(WebTestRunner::WebTestProxyBase::runModalBeforeUnloadDialog):
(WebTestRunner::WebTestProxyBase::locationChangeDone):
(WebTestRunner::WebTestProxyBase::decidePolicyForNavigation):
(WebTestRunner::WebTestProxyBase::willCheckAndDispatchMessageEvent):

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

6 years agoCleanup: Use exceptionless Range::* methods rather than ignoring exceptions.
mkwst@chromium.org [Tue, 5 Feb 2013 10:13:50 +0000 (10:13 +0000)]
Cleanup: Use exceptionless Range::* methods rather than ignoring exceptions.
https://bugs.webkit.org/show_bug.cgi?id=108773

Reviewed by Darin Adler.

We often call Range::{start,end}{Container,Offset} with an ExceptionCode
that's completely ignored. In these cases, we should simply use the
exceptionless version of the method instead.

* dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::addMarker):
    Here, I also moved parameters onto one line to make the
    stylebot happy.
(WebCore::DocumentMarkerController::addTextMatchMarker):
(WebCore::DocumentMarkerController::setMarkersActive):
    Dropped ignored ExceptionCode variable entirely.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::visiblePositionForIndex):
    Can't drop the variable because of the selectNodeContents call.
* editing/Editor.cpp:
(WebCore::Editor::canDeleteRange):
    Dropped ignored ExceptionCode variable entirely.
(WebCore::Editor::advanceToNextMisspelling):
    Can't drop the variable because of setStart/setEnd.
* editing/EditorCommand.cpp:
(WebCore::unionDOMRanges):
    Can't drop the variable because of compareBoundaryPoints.
* editing/MarkupAccumulator.cpp:
(WebCore::MarkupAccumulator::appendNodeValue):
    Dropped ignored ExceptionCode variable entirely.
* editing/TextCheckingHelper.cpp:
(WebCore::TextCheckingParagraph::offsetAsRange):
(WebCore::TextCheckingHelper::findFirstMisspelling):
(WebCore::TextCheckingHelper::findFirstGrammarDetail):
(WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar):
* editing/markup.cpp:
(WebCore::StyledMarkupAccumulator::renderedText):
(WebCore::StyledMarkupAccumulator::stringValueForRange):
    Dropped ignored ExceptionCode variable entirely.
* editing/visible_units.cpp:
(WebCore::previousBoundary):
    Can't drop the variable due to many other calls.
* page/DOMSelection.cpp:
(WebCore::DOMSelection::deleteFromDocument):
(WebCore::DOMSelection::containsNode):
    For both these cases, the 'ASSERT(!ec)' after the statement I've
    edited only checked the last occurance of the exception: that is,
    if 'startXxx(ec)' threw an exception, it would be overwritten by
    the 'setBaseAndExtend()' or 'compareBoundaryPoints()' exception.
    Removing the exception parameters from the parameters' calls
    shouldn't effect behavior.
* platform/chromium/PasteboardChromium.cpp:
(WebCore::Pasteboard::writeSelection):
* platform/mac/HTMLConverter.mm:
(+[WebHTMLConverter editingAttributedStringFromRange:]):
* platform/win/ClipboardWin.cpp:
(WebCore::ClipboardWin::writeRange):
* platform/win/PasteboardWin.cpp:
(WebCore::Pasteboard::writeSelection):
* platform/wince/PasteboardWinCE.cpp:
(WebCore::Pasteboard::writeSelection):
    Dropped ignored ExceptionCode variable entirely.

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

6 years agoWeb Inspector: introduce Memory.getDOMCounters
yurys@chromium.org [Tue, 5 Feb 2013 10:10:18 +0000 (10:10 +0000)]
Web Inspector:  introduce Memory.getDOMCounters
https://bugs.webkit.org/show_bug.cgi?id=108822

Reviewed by Pavel Feldman.

Introduced Memory.getDOMCounters command that returns number of Documents, Nodes
and JS event listeners in the inspected process.

* inspector/Inspector.json:
* inspector/InspectorMemoryAgent.cpp:
(WebCore::InspectorMemoryAgent::getDOMCounters):
(WebCore):
* inspector/InspectorMemoryAgent.h:
(InspectorMemoryAgent):

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

6 years ago[Qt][Wk2] Unreviewed gardening. Added platform specific expected.
kadam@inf.u-szeged.hu [Tue, 5 Feb 2013 09:57:27 +0000 (09:57 +0000)]
[Qt][Wk2] Unreviewed gardening. Added platform specific expected.

* platform/qt-5.0-wk2/fast/multicol/shrink-to-column-height-for-pagination-expected.txt: Update after r141459.
* platform/qt-5.0-wk2/http/tests/cache/cancel-multiple-post-xhrs-expected.txt: Added update after r140174.

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

6 years agoWeb Inspector: Native Memory Instrumentation: rename Image m_data member to m_encoded...
loislo@chromium.org [Tue, 5 Feb 2013 09:37:13 +0000 (09:37 +0000)]
Web Inspector: Native Memory Instrumentation: rename Image m_data member to m_encodedImageData for the consistency
https://bugs.webkit.org/show_bug.cgi?id=108913

Reviewed by Yury Semikhatsky.

No new tests because no API changes.

* platform/graphics/Image.cpp:
(WebCore::Image::setData):
(WebCore::Image::reportMemoryUsage):
* platform/graphics/Image.h:
(WebCore::Image::data):
(Image):

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

6 years agoUnreviewed Linux ASAN build fix for r141783.
morrita@google.com [Tue, 5 Feb 2013 09:19:31 +0000 (09:19 +0000)]
Unreviewed Linux ASAN build fix for r141783.

* platform/RefCountedSupplement.h:
(Wrapper):
* platform/Supplementable.h:
(Supplement):

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

6 years ago[chromium] Unreviewed: Fix broken SVG-disabled build.
mkwst@chromium.org [Tue, 5 Feb 2013 09:13:47 +0000 (09:13 +0000)]
[chromium] Unreviewed: Fix broken SVG-disabled build.
https://bugs.webkit.org/show_bug.cgi?id=108916

The new enum value CSSPropertyWebkitGridAutoFlow was introduced in
r141787, and accidentally left out of CSSParser::parseValue's big
switch. This causes problems in non-SVG builds.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):

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

6 years agoMediaStream API: Update RTCPeerConnections stream accessors to match the latest speci...
tommyw@google.com [Tue, 5 Feb 2013 09:10:59 +0000 (09:10 +0000)]
MediaStream API: Update RTCPeerConnections stream accessors to match the latest specification
https://bugs.webkit.org/show_bug.cgi?id=108179

Reviewed by Adam Barth.

Source/WebCore:

http://dev.w3.org/2011/webrtc/editor/webrtc.html#interface-definition
The attributes localStreams and remoteStreams have been changes to the methods
getLocalStreams() and getRemoteStreams() which return a native array instead.

Existing tests updated to cover patch.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/mediastream/MediaStream.h:
(WebCore):
* Modules/mediastream/MediaStreamList.cpp: Removed.
* Modules/mediastream/MediaStreamList.h: Removed.
* Modules/mediastream/MediaStreamList.idl: Removed.
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::RTCPeerConnection):
(WebCore::RTCPeerConnection::addStream):
(WebCore::RTCPeerConnection::removeStream):
(WebCore::RTCPeerConnection::getLocalStreams):
(WebCore::RTCPeerConnection::getRemoteStreams):
(WebCore::RTCPeerConnection::didAddRemoteStream):
(WebCore::RTCPeerConnection::didRemoveRemoteStream):
* Modules/mediastream/RTCPeerConnection.h:
(RTCPeerConnection):
* Modules/mediastream/RTCPeerConnection.idl:
* WebCore.gypi:

LayoutTests:

Updating tests for RTCPeerConnections new stream accessors.

* fast/mediastream/RTCPeerConnection-AddRemoveStream-expected.txt:
* fast/mediastream/RTCPeerConnection-AddRemoveStream.html:
* fast/mediastream/RTCPeerConnection-statsSelector-expected.txt:
* fast/mediastream/RTCPeerConnection-statsSelector.html:

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

6 years ago[Qt][EFL][WebGL] Webgl doesn't work on nvidia cards
commit-queue@webkit.org [Tue, 5 Feb 2013 09:07:20 +0000 (09:07 +0000)]
[Qt][EFL][WebGL] Webgl doesn't work on nvidia cards
https://bugs.webkit.org/show_bug.cgi?id=108059

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2013-02-05
Reviewed by Kenneth Rohde Christiansen.

Commit r138327 fixed repainting issues on mesa3d GL library by re-binding
texture to the window after every glXSwapBuffer. Unfortunatelly re-bind
breaks rendering on NVidia cards with NVidia propiertary drivers.
This change limits texture re-binding only for mesa3d GL library.

No new tests. HW specific fix.

* platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:
(WebCore::OffScreenRootWindow::isMesaGLX):
(OffScreenRootWindow):
(WebCore::GraphicsSurface::platformSwapBuffers):

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

6 years agotouch-event.html should check touchstartFiredInShadowDOM is true.
shinyak@chromium.org [Tue, 5 Feb 2013 09:05:33 +0000 (09:05 +0000)]
touch-event.html should check touchstartFiredInShadowDOM is true.
https://bugs.webkit.org/show_bug.cgi?id=108910

Reviewed by Hajime Morita.

We have to check touchstartFiredInShadowDOM is true so that we can assure touch event is in ShadowDOM.
This is a follow-up patch for http://trac.webkit.org/changeset/141054

* fast/dom/shadow/touch-event-expected.txt:
* fast/dom/shadow/touch-event.html:

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