WebKit-https.git
8 years ago[GTK] The tarball should be called webkitgtk-x.x.x.tar.xz
commit-queue@webkit.org [Thu, 23 Aug 2012 16:26:04 +0000 (16:26 +0000)]
[GTK] The tarball should be called webkitgtk-x.x.x.tar.xz
https://bugs.webkit.org/show_bug.cgi?id=94572

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-08-23
Reviewed by Carlos Garcia Campos.

Change the name of the tarball to match the name of the library
and to disambiguate it from other WebKit ports.

* configure.ac: Update the tarball name.

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

8 years agoText Autosizing: Multiply large fonts less, as they are already more legible.
commit-queue@webkit.org [Thu, 23 Aug 2012 16:24:15 +0000 (16:24 +0000)]
Text Autosizing: Multiply large fonts less, as they are already more legible.
https://bugs.webkit.org/show_bug.cgi?id=94227

Patch by John Mellor <johnme@chromium.org> on 2012-08-23
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Rather than uniformly multiplying font sizes by the multiplier (derived
from the width of the block), we should multiply fonts that are already
large less, since they are already more legible hence there is less need
for them to grow.

However it is still important to maintain differentiation between text
that the author specified to be of different sizes.

This algorithm multiplies text by the multiplier up until a predefined
"pleasant" font size; beyond that the computedSize goes up with
specifiedSize but at a gradient of less than 1 in order to gradually
fade out the size increase; finally for very large specifiedSizes the
computedSize will be the same as the specifiedSize.

For further details, including a graph, please see the bug report.

Test: fast/text-autosizing/various-font-sizes.html

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

    Implements the custom multiplication. See comment for details.

* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::lineHeight):

    Use computeAutosizedFontSize instead of directly multiplying.

(WebCore::RenderStyle::setFontSize):

    Use computeAutosizedFontSize instead of directly multiplying.

LayoutTests:

Added test demonstrating how various font sizes are affected.

* fast/text-autosizing/various-font-sizes-expected.html: Added.
* fast/text-autosizing/various-font-sizes.html: Added.

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

8 years agoRemove dependency on RenderStyle from FractionalLayoutBoxExtent and LayoutBox
eae@chromium.org [Thu, 23 Aug 2012 16:21:57 +0000 (16:21 +0000)]
Remove dependency on RenderStyle from FractionalLayoutBoxExtent and LayoutBox
https://bugs.webkit.org/show_bug.cgi?id=94146

Reviewed by Eric Seidel.

FractionalLayoutBoxExtent and LayoutBox currently have a dependency on
RenderStyle to resolve writing mode and text direction.
This is undesirable and breaks encapsulation.

Change FractionalLayoutBoxExtent and LengthBox to take a writing mode
parameter, and text direction as needed, instead of a pointer to a
RenderStyle object.

No new tests, no change in functionality.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
Add new WritingMode.h file.

* css/CSSPrimitiveValueMappings.h:
* css/CSSProperty.h:
* css/CSSToStyleMap.h:
Change includes as needed.

* platform/LengthBox.h:
* platform/LengthBox.cpp:
(WebCore::LengthBox::logicalLeft):
(WebCore::LengthBox::logicalRight):
(WebCore::LengthBox::before):
(WebCore::LengthBox::after):
Change methods to take a WirtingMode parameter instead of a RenderStyle pointer.

(WebCore::LengthBox::start):
(WebCore::LengthBox::end):
Change methods to take WritingMode and TextDirection parameters instead of a RenderStyle pointer.

* platform/graphics/FractionalLayoutBoxExtent.h:
* platform/graphics/FractionalLayoutBoxExtent.cpp:
(WebCore::FractionalLayoutBoxExtent::logicalTop):
(WebCore::FractionalLayoutBoxExtent::logicalBottom):
(WebCore::FractionalLayoutBoxExtent::logicalLeft):
(WebCore::FractionalLayoutBoxExtent::logicalRight):
(WebCore::FractionalLayoutBoxExtent::before):
(WebCore::FractionalLayoutBoxExtent::after):
(WebCore::FractionalLayoutBoxExtent::setBefore):
(WebCore::FractionalLayoutBoxExtent::setAfter):
(WebCore::FractionalLayoutBoxExtent::mutableLogicalLeft):
(WebCore::FractionalLayoutBoxExtent::mutableLogicalRight):
(WebCore::FractionalLayoutBoxExtent::mutableBefore):
(WebCore::FractionalLayoutBoxExtent::mutableAfter):
Change methods to take a WritingMode parameter instead of a RenderStyle pointer.

(WebCore::FractionalLayoutBoxExtent::start):
(WebCore::FractionalLayoutBoxExtent::end):
(WebCore::FractionalLayoutBoxExtent::setStart):
(WebCore::FractionalLayoutBoxExtent::setEnd):
Change methods to take WritingMode and TextDirection parameters instead of a RenderStyle pointer.

* platform/text/TextDirection.h:
(WebCore::isLeftToRightDirection):
Add convenience method.

* platform/text/WritingMode.h: Added.
Move WritingMode enum from RenderStyleConstants to new file.

(WebCore::isHorizontalWritingMode):
(WebCore::isFlippedLinesWritingMode):
(WebCore::isFlippedBlocksWritingMode):
Add convenience methods for working with writing modes.

* rendering/InlineFlowBox.cpp:
* rendering/RenderBox.cpp:
* rendering/RenderBox.h:
* rendering/style/RenderStyle.h:
Update calls to FractionalLayoutBoxExtent/LengthBox to pass WritingMode/
TextDirection as needed.

* rendering/style/RenderStyleConstants.h:
Remove WritingMode enum as it is now in a dedicated file.

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

8 years agoUnreviewed, upgrade gyuyoung to reviewer.
gyuyoung.kim@samsung.com [Thu, 23 Aug 2012 16:01:57 +0000 (16:01 +0000)]
Unreviewed, upgrade gyuyoung to reviewer.
http://lists.webkit.org/pipermail/webkit-dev/2012-August/022004.html

* Scripts/webkitpy/common/config/committers.py:

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

8 years agoWeb Inspector: introduce canFilter on panel (otherwise we check for function existence).
pfeldman@chromium.org [Thu, 23 Aug 2012 15:59:52 +0000 (15:59 +0000)]
Web Inspector: introduce canFilter on panel (otherwise we check for function existence).
https://bugs.webkit.org/show_bug.cgi?id=94820

Reviewed by Alexander Pavlov.

Drive-by: fix for network panel sorting null pointer access.
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkPanel.prototype.performSearch):
(WebInspector.NetworkPanel.prototype.canFilter):
* inspector/front-end/Panel.js:
(WebInspector.Panel.prototype.replaceAllWith):
(WebInspector.Panel.prototype.canFilter):
(WebInspector.Panel.prototype.performFilter):
* inspector/front-end/SearchController.js:
(WebInspector.SearchController.prototype._updateFilterVisibility):
(WebInspector.SearchController.prototype._performFilter):

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

8 years ago[EFL][WK2] ewk_intent_request API test does not free Eina_List
commit-queue@webkit.org [Thu, 23 Aug 2012 15:58:58 +0000 (15:58 +0000)]
[EFL][WK2] ewk_intent_request API test does not free Eina_List
https://bugs.webkit.org/show_bug.cgi?id=94809

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-23
Reviewed by Kenneth Rohde Christiansen.

The used Eina_List should be freed due to ewk_intent_suggestions_get() documentation.

* UIProcess/API/efl/tests/test_ewk2_intents.cpp:
(onIntentReceived):

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

8 years agoUnreviewed. Bump WebKitGTK+ version number.
carlosgc@webkit.org [Thu, 23 Aug 2012 15:48:18 +0000 (15:48 +0000)]
Unreviewed. Bump WebKitGTK+ version number.

* configure.ac: Bump version number to 1.11.0 now that we branched
for 1.10.

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

8 years agoWeb Inspector: introduce TimelineGrid.Calculator interface.
pfeldman@chromium.org [Thu, 23 Aug 2012 15:46:13 +0000 (15:46 +0000)]
Web Inspector: introduce TimelineGrid.Calculator interface.
https://bugs.webkit.org/show_bug.cgi?id=94819

Reviewed by Alexander Pavlov.

This way we can compile TimelineGrid properly.

* inspector/front-end/MemoryStatistics.js:
(WebInspector.MemoryStatistics.prototype._calculateVisibleIndexes):
* inspector/front-end/TimelineGrid.js:
(WebInspector.TimelineGrid.prototype.updateDividers):
(WebInspector.TimelineGrid.Calculator):
(WebInspector.TimelineGrid.Calculator.prototype.computePosition):
(WebInspector.TimelineGrid.Calculator.prototype.formatTime):
(WebInspector.TimelineGrid.Calculator.prototype.minimumBoundary):
(WebInspector.TimelineGrid.Calculator.prototype.maximumBoundary):
(WebInspector.TimelineGrid.Calculator.prototype.boundarySpan):
* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewCalculator.prototype.computePosition):
(WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages):
(WebInspector.TimelineOverviewCalculator.prototype.setWindow):
(WebInspector.TimelineOverviewCalculator.prototype.formatTime):
(WebInspector.TimelineOverviewCalculator.prototype.maximumBoundary):
(WebInspector.TimelineOverviewCalculator.prototype.minimumBoundary):
(WebInspector.TimelineOverviewCalculator.prototype.boundarySpan):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._shouldShowFrames):
(WebInspector.TimelineCalculator.prototype.computePosition):
(WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages):
(WebInspector.TimelineCalculator.prototype.setWindow):
(WebInspector.TimelineCalculator.prototype.formatTime):
(WebInspector.TimelineCalculator.prototype.maximumBoundary):
(WebInspector.TimelineCalculator.prototype.minimumBoundary):
(WebInspector.TimelineCalculator.prototype.boundarySpan):

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

8 years ago[Chromium] Unnecessary delay when starting to update resources with an inactive vsync...
commit-queue@webkit.org [Thu, 23 Aug 2012 15:42:33 +0000 (15:42 +0000)]
[Chromium] Unnecessary delay when starting to update resources with an inactive vsync timer.
https://bugs.webkit.org/show_bug.cgi?id=94719

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

Source/WebCore:

Replace nextTickTime() with nextTickTimeIfActivated() and return
appropriate value when timer is inactive.

No new tests.

* platform/graphics/chromium/cc/CCDelayBasedTimeSource.cpp:
(WebCore::CCDelayBasedTimeSource::nextTickTimeIfActivated):
(WebCore::CCDelayBasedTimeSource::nextTickTarget):
(WebCore):
(WebCore::CCDelayBasedTimeSource::postNextTickTask):
* platform/graphics/chromium/cc/CCDelayBasedTimeSource.h:
* platform/graphics/chromium/cc/CCFrameRateController.cpp:
(WebCore::CCFrameRateController::nextTickTimeIfActivated):
* platform/graphics/chromium/cc/CCFrameRateController.h:
(CCFrameRateController):
* platform/graphics/chromium/cc/CCScheduler.cpp:
(WebCore::CCScheduler::processScheduledActions):
* platform/graphics/chromium/cc/CCTimeSource.h:
(CCTimeSource):

Source/WebKit/chromium:

* tests/CCSchedulerTestCommon.h:

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

8 years agoWeb Inspector: make treeoutline.js compiler-friendly
pfeldman@chromium.org [Thu, 23 Aug 2012 15:36:45 +0000 (15:36 +0000)]
Web Inspector: make treeoutline.js compiler-friendly
https://bugs.webkit.org/show_bug.cgi?id=94818

Reviewed by Alexander Pavlov.

This change declares base methods on TreeElement so that we did not need to check for their existence.

* inspector/front-end/AdvancedSearchController.js:
(WebInspector.FileBasedSearchResultsPane.prototype._appendShowMoreMatchesElement):
(WebInspector.FileBasedSearchResultsPane.prototype._addFileTreeElement):
* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype.onselect):
* inspector/front-end/SidebarPane.js:
(WebInspector.SidebarPane.prototype.expand):
(WebInspector.SidebarPane.prototype.onexpand):
(WebInspector.SidebarPane.prototype.collapse):
* inspector/front-end/treeoutline.js:
(TreeOutline.prototype._treeKeyDown):
(TreeOutline.prototype._searchInputKeyDown):
(TreeElement.prototype._fireDidChange):
(TreeElement.prototype._attach):
(TreeElement.treeElementDoubleClicked):
(TreeElement.prototype.collapse):
(TreeElement.prototype.expand):
(TreeElement.prototype.reveal):
(TreeElement.prototype.select):
(TreeElement.prototype.deselect):
(TreeElement.prototype.onpopulate):
(TreeElement.prototype.onenter):
(TreeElement.prototype.ondelete):
(TreeElement.prototype.onspace):
(TreeElement.prototype.onattach):
(TreeElement.prototype.onexpand):
(TreeElement.prototype.oncollapse):
(TreeElement.prototype.ondblclick):
(TreeElement.prototype.onreveal):
(TreeElement.prototype.onselect):

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

8 years agoWeb Inspector: use temporary directory for modules generated by compile-front-end.py
yurys@chromium.org [Thu, 23 Aug 2012 15:34:14 +0000 (15:34 +0000)]
Web Inspector: use temporary directory for modules generated by compile-front-end.py
https://bugs.webkit.org/show_bug.cgi?id=94804

Reviewed by Pavel Feldman.

Create temporary directory for generated js modules and remove the directory
after the compilation.

* inspector/compile-front-end.py:

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

8 years ago[Qt][WK2] Helper functions used by the raw webview tests should not be guarded by...
abecsi@webkit.org [Thu, 23 Aug 2012 15:11:47 +0000 (15:11 +0000)]
[Qt][WK2] Helper functions used by the raw webview tests should not be guarded by HAVE_QTQUICK

Reviewed by Simon Hausmann.

This fixes the build if the QtQuick module is not present.

* UIProcess/API/qt/tests/util.cpp:
(messageHandler):
(suppressDebugOutput):
* UIProcess/API/qt/tests/util.h:

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

8 years ago[Qt] Fix make install on Windows
hausmann@webkit.org [Thu, 23 Aug 2012 15:09:34 +0000 (15:09 +0000)]
[Qt] Fix make install on Windows
https://bugs.webkit.org/show_bug.cgi?id=94816

Reviewed by Laszlo Gombos.

This old left-over rule for Windows to add dlltarget to INSTALLS caused
various bugs: WebCore's Makefile had an actual install target that
tried to install the WebCore static library and it also screwed up
api.pri's install rule by overriding what is usually set up for qt
modules, i.e. the install path was missing INSTALL_ROOT. We don't need
these rules at all, the default qmake features take care of setting up
target install rules accordingly.

* WebCore.pri:

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

8 years agoWeb Inspector: extract ParsedURL into a separate file.
pfeldman@chromium.org [Thu, 23 Aug 2012 15:08:29 +0000 (15:08 +0000)]
Web Inspector: extract ParsedURL into a separate file.
https://bugs.webkit.org/show_bug.cgi?id=94817

Reviewed by Alexander Pavlov.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/AuditRules.js:
(WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
(WebInspector.AuditRules.CssInHeadRule.prototype.doRun.externalStylesheetsReceived):
(WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.cssBeforeInlineReceived):
* inspector/front-end/DefaultTextEditor.js:
(WebInspector.TextEditorMainPanel.prototype._rewriteHref):
* inspector/front-end/ParsedURL.js: Added.
(WebInspector.ParsedURL):
(WebInspector.ParsedURL.completeURL):
(WebInspector.ParsedURL.prototype.get displayName):
(String.prototype.asParsedURL):
* inspector/front-end/ResourceUtils.js:
(WebInspector.resourceURLForRelatedNode):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:

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

8 years agoWeb Inspector: register context menu providers for lazily loaded panels.
pfeldman@chromium.org [Thu, 23 Aug 2012 14:59:13 +0000 (14:59 +0000)]
Web Inspector: register context menu providers for lazily loaded panels.
https://bugs.webkit.org/show_bug.cgi?id=94812

Reviewed by Alexander Pavlov.

- Panel descriptors now register providers that lazily load panels on demand.
- Removed custom profiles context provider infrastructure in favor of generic one.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkPanel):
* inspector/front-end/NetworkPanelDescriptor.js: Added.
(WebInspector.NetworkPanelDescriptor):
(WebInspector.NetworkPanelDescriptor.prototype.appendApplicableItems):
* inspector/front-end/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertiesSection.prototype._contextMenuEventFired):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfilesPanel):
(WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
(WebInspector.ProfilesPanel.prototype.appendApplicableItems.didReceiveHeapObjectId):
(WebInspector.ProfilesPanel.prototype.appendApplicableItems):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel):
* inspector/front-end/ScriptsPanelDescriptor.js: Added.
(WebInspector.ScriptsPanelDescriptor):
(WebInspector.ScriptsPanelDescriptor.prototype.appendApplicableItems):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._panelDescriptors):

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

8 years agoUnreviewed. Rolled DEPS.
peter@chromium.org [Thu, 23 Aug 2012 14:55:28 +0000 (14:55 +0000)]
Unreviewed.  Rolled DEPS.

* DEPS:

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

8 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Thu, 23 Aug 2012 13:24:53 +0000 (13:24 +0000)]
Unreviewed. Fix make distcheck.

* GNUmakefile.am: Add idl files in Modules/quota to EXTRA_DIST.
* GNUmakefile.list.am: Add missing files to compilation.

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

8 years agoREGRESSION(r126306): it broke the plugin process
commit-queue@webkit.org [Thu, 23 Aug 2012 13:21:39 +0000 (13:21 +0000)]
REGRESSION(r126306): it broke the plugin process
https://bugs.webkit.org/show_bug.cgi?id=94797

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2012-08-23
Reviewed by Xan Lopez.

.:

* GNUmakefile.am:

Source/WebCore:

* GNUmakefile.am:
* GNUmakefile.list.am:

Source/WebKit/gtk:

* GNUmakefile.am:

Source/WebKit2:

* GNUmakefile.am:

Tools:

* GNUmakefile.am:

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

8 years agoUnreviewed trivial build fix for Qt/Mac on OS X 10.6: Avoid using an
hausmann@webkit.org [Thu, 23 Aug 2012 13:11:33 +0000 (13:11 +0000)]
Unreviewed trivial build fix for Qt/Mac on OS X 10.6: Avoid using an
enum value that clashes with an existing class name that's used in the
same file.

* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::valueRealType):
(JSC::Bindings::convertValueToQVariant):

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

8 years ago[EFL] Add url bar to EWebLauncher and MiniBrowser/Efl.
ryuan.choi@samsung.com [Thu, 23 Aug 2012 13:04:48 +0000 (13:04 +0000)]
[EFL] Add url bar to EWebLauncher and MiniBrowser/Efl.
https://bugs.webkit.org/show_bug.cgi?id=63966

Reviewed by Kenneth Rohde Christiansen.

EWebLauncher and MiniBrowser/Efl did not have functionality that users
navigates the site which they want.
This patch adds the urlbar and functionality to load url which users want.

* CMakeLists.txt:
Added to share urlbar theme for both EWebLauncher and MiniBrowser/Efl.
* EWebLauncher/CMakeLists.txt:
Added urlbar.c and dependency of urlbar theme.
In addition, changed macro name to THEME_DIR to share the code easily.
* EWebLauncher/ControlTheme/CMakeLists.txt: Added for urlbar theme.
* EWebLauncher/ControlTheme/entry.edc: Implemented urlbar theme.
* EWebLauncher/main.c:
Implemented to use the urlbar.
In addition, remove unnecessary border of webview to control webview and urlbar easily.
(_ELauncher):
(on_url_changed):
(browserCreate):
(closeWindow):
(findThemePath):
* EWebLauncher/url_bar.c: Implemented functionality of the urlbar.
(_url_bar_url_get_with_protocol):
(on_urlbar_key_down):
(on_urlbar_mouse_down):
(on_urlbar_focus_out):
(url_bar_add):
(url_bar_del):
(url_bar_url_set):
* EWebLauncher/url_bar.h: Added.
* MiniBrowser/efl/CMakeLists.txt:
* MiniBrowser/efl/main.c: Implemented to use the urlbar.
(_MiniBrowser):
(on_url_changed):
(browserCreate):

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

8 years ago[nrwt, WTR] Remove workaround for timeout handing from r126062
kbalazs@webkit.org [Thu, 23 Aug 2012 11:50:24 +0000 (11:50 +0000)]
[nrwt, WTR] Remove workaround for timeout handing from r126062
https://bugs.webkit.org/show_bug.cgi?id=94609

Reviewed by Dirk Pranke.

Don't try to reset state if a timeout occured but inform
the harness that the web process is no longer reliable.

* Scripts/webkitpy/layout_tests/port/driver.py:
(Driver.run_test): Remove the workaround. Furthermore, handle the case when
the pid is unknown.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::run):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::invoke):
(WTR::TestInvocation::dumpWebProcessUnresponsiveness):
* WebKitTestRunner/TestInvocation.h:
(TestInvocation):

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

8 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 23 Aug 2012 11:34:42 +0000 (11:34 +0000)]
Unreviewed GTK gardening.

Adding platform-specific baselines required after r126343 and r126372.

* platform/gtk/fast/overflow/paged-x-div-expected.png: Added.
* platform/gtk/fast/overflow/paged-x-div-expected.txt: Added.
* platform/gtk/fast/overflow/paged-x-on-root-expected.png: Added.
* platform/gtk/fast/overflow/paged-x-on-root-expected.txt: Added.
* platform/gtk/fast/overflow/paged-y-div-expected.png: Added.
* platform/gtk/fast/overflow/paged-y-div-expected.txt: Added.
* platform/gtk/fast/overflow/paged-y-on-root-expected.png: Added.
* platform/gtk/fast/overflow/paged-y-on-root-expected.txt: Added.
* platform/gtk/media/track: Added.
* platform/gtk/media/track/track-cue-rendering-horizontal-expected.png: Added.
* platform/gtk/media/track/track-cue-rendering-horizontal-expected.txt: Added.
* platform/gtk/media/track/track-cue-rendering-vertical-expected.png: Added.
* platform/gtk/media/track/track-cue-rendering-vertical-expected.txt: Added.

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

8 years agoBuild fix for WinCE after r126359.
paroga@webkit.org [Thu, 23 Aug 2012 11:30:53 +0000 (11:30 +0000)]
Build fix for WinCE after r126359.

* rendering/RenderThemeWinCE.cpp:

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

8 years agoWebInspector: unreviewed single line test fix.
loislo@chromium.org [Thu, 23 Aug 2012 10:46:56 +0000 (10:46 +0000)]
WebInspector: unreviewed single line test fix.

The test has to open profiles panel explicitly because it is creating lazily.

* inspector/heap-snapshot-performance-test.js:

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

8 years agoUnreviewed, rolling out r126391.
dominicc@chromium.org [Thu, 23 Aug 2012 10:31:03 +0000 (10:31 +0000)]
Unreviewed, rolling out r126391.
http://trac.webkit.org/changeset/126391
https://bugs.webkit.org/show_bug.cgi?id=94302

Breaks Chromium browser_tests AccessibilityFooter,
AccessibilityListMarkers, AccessibilityUI

Source/WebCore:

* accessibility/AccessibilityNodeObject.cpp:
* accessibility/AccessibilityNodeObject.h:
(AccessibilityNodeObject):
* accessibility/AccessibilityObject.cpp:
* accessibility/AccessibilityObject.h:
(AccessibilityObject):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::isDescendantOfElementType):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):

LayoutTests:

* accessibility/editable-webarea-context-menu-point.html:
* accessibility/focusable-div-expected.txt: Removed.
* accessibility/focusable-div.html: Removed.
* accessibility/table-detection.html:
* platform/mac/accessibility/listbox-hit-test.html:

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

8 years agoWeb Inspector: [WebGL] Allow collecting calls for Resource objects affecting their...
commit-queue@webkit.org [Thu, 23 Aug 2012 10:08:21 +0000 (10:08 +0000)]
Web Inspector: [WebGL] Allow collecting calls for Resource objects affecting their states
https://bugs.webkit.org/show_bug.cgi?id=94686

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-08-23
Reviewed by Pavel Feldman.

Allow collecting calls for WebGL Resource objects affecting their states.
Clone Call's mutable arguments before pushing it to the log.

* inspector/InjectedScriptWebGLModuleSource.js:
(.):

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

8 years ago[BlackBerry] draw <video> on <canvas> does not work
commit-queue@webkit.org [Thu, 23 Aug 2012 09:52:25 +0000 (09:52 +0000)]
[BlackBerry] draw <video> on <canvas> does not work
https://bugs.webkit.org/show_bug.cgi?id=94791
PR #195866

Patch by Robin Cao <robin.cao@torchmobile.com.cn> on 2012-08-23
Reviewed by George Staikos.

Re-implement MediaPlayerPrivate::paintCurrentFrameInContext() in the
blackberry port. This method is mainly called from <canvas>, and it
is supposed to paint video frames using software rendering path.

On the other hand, MediaPlayerPrivate::paint() will choose accelerated
rendering if possible.

media/video-canvas-alpha.html covers this.

* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::paint):
(WebCore):
(WebCore::MediaPlayerPrivate::paintCurrentFrameInContext):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
(MediaPlayerPrivate):

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

8 years agoUnreviewed Chromium gardeing.
morrita@google.com [Thu, 23 Aug 2012 09:42:53 +0000 (09:42 +0000)]
Unreviewed Chromium gardeing.

* platform/chromium/TestExpectations:

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

8 years ago2012-08-23 Dominic Cooney <dominicc@chromium.org>
dominicc@chromium.org [Thu, 23 Aug 2012 09:24:10 +0000 (09:24 +0000)]
2012-08-23  Dominic Cooney  <dominicc@chromium.org>

        [Chromium] Unreviewed gardening.

        notifications-event-listener-crash.html test has non-deterministic
        output on Chromium XP debug.

        * platform/chromium/TestExpectations:

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

8 years ago[EFL] Gardening after r126350
commit-queue@webkit.org [Thu, 23 Aug 2012 09:04:54 +0000 (09:04 +0000)]
[EFL] Gardening after r126350
https://bugs.webkit.org/show_bug.cgi?id=94787

Unreviewed gardening.

Gardening of media/track/track-cue-rendering-snap-to-lines-not-set.html.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-23

* platform/efl/TestExpectations:

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

8 years agoUnreviewed Chromium gardeing.
morrita@google.com [Thu, 23 Aug 2012 09:02:20 +0000 (09:02 +0000)]
Unreviewed Chromium gardeing.

* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt: Added.
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.txt: Added.

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

8 years agoUnreviewed. Build fix for r126399.
haraken@chromium.org [Thu, 23 Aug 2012 08:50:04 +0000 (08:50 +0000)]
Unreviewed. Build fix for r126399.

* bindings/v8/ScriptInstance.cpp:

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

8 years ago[WK2] Refactoring: WebBackForwardList getters should be const
commit-queue@webkit.org [Thu, 23 Aug 2012 08:47:11 +0000 (08:47 +0000)]
[WK2] Refactoring: WebBackForwardList getters should be const
https://bugs.webkit.org/show_bug.cgi?id=94711

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-23
Reviewed by Kenneth Rohde Christiansen.

Before the change were not consistent with each other
(WebBackForwardList::entries() was const but WebBackForwardList::currentIndex() was not).
Besides having not const getters is not a good practice in C++. (Please read
Scott Meyers. Effective C++ (3rd edition). ISBN: 0-321-33487-6.
Item 3: 'Use const whenever possible').

* UIProcess/WebBackForwardList.cpp:
(WebKit::WebBackForwardList::backListCount):
(WebKit::WebBackForwardList::forwardListCount):
(WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
(WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
* UIProcess/WebBackForwardList.h:
(WebKit::WebBackForwardList::currentIndex):
(WebBackForwardList):

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

8 years agoWeb Inspector: treat 0 cookies as "no cookies" and render it accordingly in the UI
pfeldman@chromium.org [Thu, 23 Aug 2012 08:32:23 +0000 (08:32 +0000)]
Web Inspector: treat 0 cookies as "no cookies" and render it accordingly in the UI
https://bugs.webkit.org/show_bug.cgi?id=94732

Reviewed by Yury Semikhatsky.

* inspector/front-end/RequestCookiesView.js:
(WebInspector.RequestCookiesView.prototype.get _gotCookies):

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

8 years agoUnreviewed gardening.
zandobersek@gmail.com [Thu, 23 Aug 2012 08:26:51 +0000 (08:26 +0000)]
Unreviewed gardening.

A follow-up to r126400, updating various baselines for fast/js/constructor-length.html
so they are correct.

* platform/gtk/fast/js/constructor-length-expected.txt:
* platform/mac/fast/js/constructor-length-expected.txt:
* platform/qt/fast/js/constructor-length-expected.txt:

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

8 years ago[EFL] Added missing SKIP keyword to platform/efl/TestExpectations
commit-queue@webkit.org [Thu, 23 Aug 2012 08:10:46 +0000 (08:10 +0000)]
[EFL] Added missing SKIP keyword to platform/efl/TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=94781

Unreviewed. Some layout tests which are expected missing should not make
expected result files during layout test.

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-08-23

* platform/efl/TestExpectations:

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

8 years agoUnreviewed. Adding myself to committers list.
kadam@inf.u-szeged.hu [Thu, 23 Aug 2012 08:08:55 +0000 (08:08 +0000)]
Unreviewed. Adding myself to committers list.

* Scripts/webkitpy/common/config/committers.py:

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

8 years ago[EFL] Use vertical slider theme when the slider is vertical
commit-queue@webkit.org [Thu, 23 Aug 2012 07:54:41 +0000 (07:54 +0000)]
[EFL] Use vertical slider theme when the slider is vertical
https://bugs.webkit.org/show_bug.cgi?id=93838

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-08-23
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Applied vertical slider theme to the vertical sliders. The height
of the vertical slider is wrong when it's applied horizontal
slider theme.

And do not resize slider when its size is not specified. It's natural
to use the default value of renderer.

No new tests. It's covered by existing range and datalist tests.

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::adjustSliderTrackStyle):

LayoutTests:

Updated expected result because theme of the slider is changed.

The size of the renderSlider is changed to 129x12 from 129x11
because it has the slider thumb 12x12 and it is not resized when
the size is not specified.

* platform/efl/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
* platform/efl/fast/forms/box-shadow-override-expected.png:
* platform/efl/fast/forms/box-shadow-override-expected.txt:
* platform/efl/fast/forms/datalist/input-appearance-range-with-datalist-expected.png: Added.
* platform/efl/fast/forms/datalist/input-appearance-range-with-datalist-zoomed-expected.png: Added.
* platform/efl/fast/forms/input-appearance-height-expected.png:
* platform/efl/fast/forms/input-appearance-height-expected.txt:
* platform/efl/fast/forms/range/input-appearance-range-expected.png:
* platform/efl/fast/forms/range/input-appearance-range-expected.txt:
* platform/efl/fast/forms/range/slider-padding-expected.png:
* platform/efl/fast/forms/range/slider-padding-expected.txt:
* platform/efl/fast/forms/range/slider-thumb-shared-style-expected.png:
* platform/efl/fast/forms/range/slider-thumb-shared-style-expected.txt:
* platform/efl/fast/repaint/slider-thumb-drag-release-expected.txt:

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

8 years agoUnreviewed gardening.
zandobersek@gmail.com [Thu, 23 Aug 2012 07:37:50 +0000 (07:37 +0000)]
Unreviewed gardening.

After the TextTrackCue constructor was updated in r126350 the
expected constructor length is 3. Updating fast/js/constructor-length.html
to reflect that.

* fast/js/constructor-length.html:

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

8 years ago[V8] Remove almost all #include "V8Proxy.h"
haraken@chromium.org [Thu, 23 Aug 2012 07:35:47 +0000 (07:35 +0000)]
[V8] Remove almost all #include "V8Proxy.h"
https://bugs.webkit.org/show_bug.cgi?id=94777

Reviewed by Adam Barth.

No tests. No change in behavior.

* bindings/v8/NPV8Object.cpp:
* bindings/v8/PageScriptDebugServer.cpp:
* bindings/v8/ScheduledAction.cpp:
* bindings/v8/ScriptController.cpp:
* bindings/v8/ScriptInstance.cpp:
* bindings/v8/ScriptObject.cpp:
* bindings/v8/ScriptRunner.cpp:
* bindings/v8/SerializedScriptValue.cpp:
* bindings/v8/V8AbstractEventListener.cpp:
* bindings/v8/V8Binding.h:
(WebCore):
* bindings/v8/V8BindingMacros.h:
(WebCore):
* bindings/v8/V8Collection.h:
* bindings/v8/V8DOMWindowShell.cpp:
* bindings/v8/V8DOMWrapper.cpp:
* bindings/v8/V8EventListener.cpp:
* bindings/v8/V8GCController.cpp:
* bindings/v8/V8LazyEventListener.cpp:
* bindings/v8/V8NPObject.cpp:
* bindings/v8/V8NPUtils.cpp:
* bindings/v8/V8Proxy.h:
(WebCore):
* bindings/v8/V8Utilities.cpp:
* bindings/v8/WorkerContextExecutionProxy.cpp:
* bindings/v8/WorkerScriptController.cpp:
* bindings/v8/custom/V8ArrayBufferCustom.cpp:
* bindings/v8/custom/V8ArrayBufferViewCustom.h:
* bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp:
* bindings/v8/custom/V8AudioContextCustom.cpp:
* bindings/v8/custom/V8BlobCustom.cpp:
* bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
* bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
* bindings/v8/custom/V8ClipboardCustom.cpp:
* bindings/v8/custom/V8ConsoleCustom.cpp:
* bindings/v8/custom/V8CoordinatesCustom.cpp:
* bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
* bindings/v8/custom/V8DOMFormDataCustom.cpp:
* bindings/v8/custom/V8DataViewCustom.cpp:
* bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
* bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
* bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
* bindings/v8/custom/V8DocumentCustom.cpp:
* bindings/v8/custom/V8DocumentLocationCustom.cpp:
* bindings/v8/custom/V8EntryCustom.cpp:
* bindings/v8/custom/V8EntrySyncCustom.cpp:
* bindings/v8/custom/V8EventCustom.cpp:
* bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
* bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
* bindings/v8/custom/V8HTMLCollectionCustom.cpp:
* bindings/v8/custom/V8HTMLFormElementCustom.cpp:
* bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
* bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
* bindings/v8/custom/V8HTMLInputElementCustom.cpp:
* bindings/v8/custom/V8HTMLLinkElementCustom.cpp:
* bindings/v8/custom/V8HTMLMediaElementCustom.cpp:
* bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
* bindings/v8/custom/V8HTMLOutputElementCustom.cpp:
* bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
* bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
* bindings/v8/custom/V8HistoryCustom.cpp:
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
* bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
* bindings/v8/custom/V8IntentConstructor.cpp:
* bindings/v8/custom/V8JavaScriptCallFrameCustom.cpp:
* bindings/v8/custom/V8LocationCustom.cpp:
* bindings/v8/custom/V8MessageChannelConstructor.cpp:
* bindings/v8/custom/V8MessageEventCustom.cpp:
* bindings/v8/custom/V8MessagePortCustom.cpp:
* bindings/v8/custom/V8MutationCallbackCustom.cpp:
* bindings/v8/custom/V8MutationObserverCustom.cpp:
* bindings/v8/custom/V8NamedNodeMapCustom.cpp:
* bindings/v8/custom/V8NodeCustom.cpp:
* bindings/v8/custom/V8NodeListCustom.cpp:
* bindings/v8/custom/V8NotificationCenterCustom.cpp:
* bindings/v8/custom/V8NotificationCustom.cpp:
* bindings/v8/custom/V8PopStateEventCustom.cpp:
* bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
* bindings/v8/custom/V8SQLTransactionCustom.cpp:
* bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
* bindings/v8/custom/V8SVGDocumentCustom.cpp:
* bindings/v8/custom/V8ScriptProfileCustom.cpp:
* bindings/v8/custom/V8ScriptProfileNodeCustom.cpp:
* bindings/v8/custom/V8StorageCustom.cpp:
* bindings/v8/custom/V8StyleSheetListCustom.cpp:
* bindings/v8/custom/V8TrackEventCustom.cpp:
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
* bindings/v8/custom/V8WebKitAnimationCustom.cpp:
* bindings/v8/custom/V8WebKitPointConstructor.cpp:
* bindings/v8/custom/V8WebSocketCustom.cpp:
* bindings/v8/custom/V8WorkerContextCustom.cpp:
* bindings/v8/custom/V8WorkerCustom.cpp:
* bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
* bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
* bindings/v8/custom/V8XSLTProcessorCustom.cpp:

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

8 years agoUnreviewed Chromium gardeing.
morrita@google.com [Thu, 23 Aug 2012 07:34:30 +0000 (07:34 +0000)]
Unreviewed Chromium gardeing.

* platform/chromium-linux/media/track/track-cue-rendering-horizontal-expected.txt: Removed.
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt: Removed.
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.txt: Removed.
* platform/chromium-win-xp/media/track/track-cue-rendering-horizontal-expected.png: Removed.
* platform/chromium-win-xp/media/track/track-cue-rendering-horizontal-expected.txt: Removed.
* platform/chromium-win-xp/media/track/track-cue-rendering-vertical-expected.txt: Removed.

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

8 years agoUnreviewed, rolling out r126348.
haraken@chromium.org [Thu, 23 Aug 2012 06:54:26 +0000 (06:54 +0000)]
Unreviewed, rolling out r126348.
http://trac.webkit.org/changeset/126348
https://bugs.webkit.org/show_bug.cgi?id=94588

We should use v8::String::NewSymbol() for symbols. See
https://bugs.webkit.org/show_bug.cgi?id=94574#c10 for more
details

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateNamedConstructorCallback):
(GenerateNonStandardFunction):
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::ConfigureV8Float64ArrayTemplate):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::ConfigureV8TestEventTargetTemplate):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::ConfigureV8TestInterfaceTemplate):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextProperties):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetter):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetter):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetter):
* bindings/v8/V8Binding.h:
(WebCore):

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

8 years ago[GTK] media/video-duration-known-after-eos.html and media/media-element-play-after...
philn@webkit.org [Thu, 23 Aug 2012 06:29:36 +0000 (06:29 +0000)]
[GTK] media/video-duration-known-after-eos.html and media/media-element-play-after-eos.html are flaky
https://bugs.webkit.org/show_bug.cgi?id=83790

Reviewed by Eric Seidel.

Refactor the tests to wait the loadedmetadata event before
starting playback and attempting any access to the duration
attribute. This is an attempt to eliminate flakyness of the tests.

* media/media-element-play-after-eos-expected.txt:
* media/media-element-play-after-eos.html:
* media/video-duration-known-after-eos.html:
* platform/gtk/TestExpectations:

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

8 years agoUnreviewed Chromium gardeing.
morrita@google.com [Thu, 23 Aug 2012 06:10:48 +0000 (06:10 +0000)]
Unreviewed Chromium gardeing.

* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.png: Added.
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt: Added.
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.png: Added.
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.txt: Added.
* platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.png: Added.
* platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.txt: Added.
* platform/chromium-mac/media/track/track-cue-rendering-vertical-expected.png: Added.
* platform/chromium-mac/media/track/track-cue-rendering-vertical-expected.txt: Added.
* platform/chromium-win-xp/media/track/track-cue-rendering-horizontal-expected.png: Added.
* platform/chromium-win-xp/media/track/track-cue-rendering-horizontal-expected.txt: Added.
* platform/chromium-win-xp/media/track/track-cue-rendering-vertical-expected.png: Added.
* platform/chromium-win-xp/media/track/track-cue-rendering-vertical-expected.txt: Added.
* platform/chromium-win/media/track/track-cue-rendering-horizontal-expected.png: Added.
* platform/chromium-win/media/track/track-cue-rendering-horizontal-expected.txt: Added.
* platform/chromium-win/media/track/track-cue-rendering-vertical-expected.png: Added.
* platform/chromium-win/media/track/track-cue-rendering-vertical-expected.txt: Added.

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

8 years ago[V8] Remove V8Proxy from CodeGeneratorV8.pm
haraken@chromium.org [Thu, 23 Aug 2012 05:59:23 +0000 (05:59 +0000)]
[V8] Remove V8Proxy from CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=94773

Reviewed by Adam Barth.

To kill V8Proxy, we can remove V8Proxy uses from CodeGeneratorV8.pm.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateToV8Converters):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::V8Float64Array::wrapSlow):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::V8TestCustomNamedGetter::wrapSlow):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::V8TestEventTarget::wrapSlow):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::V8TestException::wrapSlow):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::V8TestInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::wrapSlow):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::V8TestObj::wrapSlow):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):

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

8 years agoImplement UndoManager's item() method
commit-queue@webkit.org [Thu, 23 Aug 2012 05:58:10 +0000 (05:58 +0000)]
Implement UndoManager's item() method
https://bugs.webkit.org/show_bug.cgi?id=94671

Patch by Sukolsak Sakshuwong <sukolsak@google.com> on 2012-08-22
Reviewed by Ryosuke Niwa.

Source/WebCore:

This patch implements UndoManager's item() method and its V8 custom binding.
We need to use custom binding here because we need to return user objects
that are stored in a hidden property of DOMTransaction wrappers, not returning
the wrappers themselves.

Test: editing/undomanager/undomanager-item.html

* bindings/js/JSUndoManagerCustom.cpp:
(WebCore::JSUndoManager::item):
(WebCore):
* bindings/v8/DOMTransaction.cpp:
(WebCore::DOMTransaction::data):
(WebCore):
(WebCore::DOMTransaction::setData):
(WebCore::DOMTransaction::getFunction):
* bindings/v8/DOMTransaction.h:
* bindings/v8/custom/V8UndoManagerCustom.cpp:
(WebCore::V8UndoManager::transactCallback):
(WebCore::V8UndoManager::itemCallback):
(WebCore):
* editing/UndoManager.cpp:
(WebCore::UndoManager::item):
(WebCore):
* editing/UndoManager.h:
(UndoManager):
* editing/UndoManager.idl:

LayoutTests:

* editing/undomanager/undomanager-item-expected.txt: Added.
* editing/undomanager/undomanager-item.html: Added.

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

8 years agoAX: Focusable elements without a role should not be ignored
dmazzoni@google.com [Thu, 23 Aug 2012 05:54:42 +0000 (05:54 +0000)]
AX: Focusable elements without a role should not be ignored
https://bugs.webkit.org/show_bug.cgi?id=94302

Reviewed by Chris Fleizach.

Source/WebCore:

Changes the accessibility logic so that a generic element that's focusable is
not ignored for accessibility, and returns its inner text as its title. That way
if you Tab to the element, a reasonable accessibility notification is generated.

One exception is the body element, because focusing the body is equivalent to
blurring the current focused element and does not result in a "focus" accessibility
notification.

Also fixes logic that determined if an element was contentEditable by making
sure it catches the case with no attribute value (e.g. <div contentEditable>),
which also implies contentEditable=true according to the spec.

Test: accessibility/focusable-div.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore):
(WebCore::nodeHasContentEditableAttributeSet):
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):

LayoutTests:

Adds a new test to make sure that a generic focusable element (like a div with tabindex=0)
can get focus and return an appropriate title, just like a form control or element with
an ARIA role.

Modifies three existing tests that were previously assuming that a focusable node
with no role would be ignored for accessibility ("accessibilityIsIgnored").

* accessibility/editable-webarea-context-menu-point.html:
* accessibility/focusable-div-expected.txt: Added.
* accessibility/focusable-div.html: Added.
* accessibility/table-detection.html:
* platform/mac/accessibility/listbox-hit-test.html:

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

8 years agoUnreviewed, rolling out r126383.
haraken@chromium.org [Thu, 23 Aug 2012 04:49:03 +0000 (04:49 +0000)]
Unreviewed, rolling out r126383.
http://trac.webkit.org/changeset/126383
https://bugs.webkit.org/show_bug.cgi?id=82888

Chromium win build crash

* bindings/js/JSClipboardCustom.cpp:
(WebCore::JSClipboard::types):
* bindings/v8/custom/V8ClipboardCustom.cpp:
(WebCore::V8Clipboard::typesAccessorGetter):
* dom/Clipboard.h:
(Clipboard):
* platform/blackberry/ClipboardBlackBerry.cpp:
(WebCore::ClipboardBlackBerry::types):
* platform/blackberry/ClipboardBlackBerry.h:
(ClipboardBlackBerry):
* platform/chromium/ChromiumDataObject.cpp:
(WebCore::ChromiumDataObject::types):
* platform/chromium/ChromiumDataObject.h:
(ChromiumDataObject):
* platform/chromium/ClipboardChromium.cpp:
(WebCore::ClipboardChromium::types):
* platform/chromium/ClipboardChromium.h:
(ClipboardChromium):
* platform/efl/ClipboardEfl.cpp:
(WebCore::ClipboardEfl::types):
* platform/efl/ClipboardEfl.h:
(ClipboardEfl):
* platform/gtk/ClipboardGtk.cpp:
(WebCore::ClipboardGtk::types):
* platform/gtk/ClipboardGtk.h:
(ClipboardGtk):
* platform/mac/ClipboardMac.h:
(ClipboardMac):
* platform/mac/ClipboardMac.mm:
(WebCore::addHTMLClipboardTypesForCocoaType):
(WebCore::ClipboardMac::types):
* platform/qt/ClipboardQt.cpp:
(WebCore::ClipboardQt::types):
* platform/qt/ClipboardQt.h:
(ClipboardQt):
* platform/win/ClipboardWin.cpp:
(WebCore::addMimeTypesForFormat):
(WebCore::ClipboardWin::types):
* platform/win/ClipboardWin.h:
(ClipboardWin):
* platform/wx/ClipboardWx.cpp:
(WebCore::ClipboardWx::types):
* platform/wx/ClipboardWx.h:
(ClipboardWx):

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

8 years ago[V8] Move m_isolatedWorlds and m_isolatedWorldSecurityOrigins from V8Proxy to ScriptC...
haraken@chromium.org [Thu, 23 Aug 2012 03:46:53 +0000 (03:46 +0000)]
[V8] Move m_isolatedWorlds and m_isolatedWorldSecurityOrigins from V8Proxy to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=94770

Reviewed by Adam Barth.

Now m_isolatedWorlds and m_isolatedWorldSecurityOrigins of V8Proxy
are used by ScriptController only. We can move them to ScriptController.

No tests. No change in behavior.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::resetIsolatedWorlds):
(WebCore::ScriptController::evaluateInIsolatedWorld):
(WebCore::ScriptController::setIsolatedWorldSecurityOrigin):
(WebCore::ScriptController::collectIsolatedContexts):
* bindings/v8/ScriptController.h:
(ScriptController):
* bindings/v8/V8Proxy.h:
(V8Proxy):

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

8 years ago[V8] Move evaluate() from V8Proxy to ScriptController
haraken@chromium.org [Thu, 23 Aug 2012 03:42:54 +0000 (03:42 +0000)]
[V8] Move evaluate() from V8Proxy to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=94768

Reviewed by Adam Barth.

To kill V8Proxy, we can move evaluate() from V8Proxy to ScriptController.

- Renamed evaluate() to compileAndRunScript() to avoid name conflict
with existing ScriptController::evaluate().

- Removed toV8Proxy() from NPV8Object, as it is no longer used.

No tests. No change in behavior.

* bindings/v8/NPV8Object.cpp:
(_NPN_EvaluateHelper):
* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::compileAndRunScript):
(WebCore):
(WebCore::ScriptController::evaluate):
(WebCore::ScriptController::evaluateInIsolatedWorld):
* bindings/v8/ScriptController.h:
(ScriptController):
* bindings/v8/V8Proxy.cpp:
* bindings/v8/V8Proxy.h:

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

8 years agoArray accesses should remember what kind of array they are predicted to access
fpizlo@apple.com [Thu, 23 Aug 2012 03:38:52 +0000 (03:38 +0000)]
Array accesses should remember what kind of array they are predicted to access
https://bugs.webkit.org/show_bug.cgi?id=94448

Reviewed by Gavin Barraclough.

Introduced the notion of DFG::Array::Mode, stored in node.arrayMode(), which allows nodes
to remember how they decided to access arrays. This permits the bytecode parser to "lock in"
the mode of access if it has profiling at its disposal, and it also allows the prediction
propagator to do a fixup of the array mode later in the optimization fixpoint.

This patch adds a healthy amount of new capability (specifically the ability of the parser
to lock in an array mode regardless of type predictions) and it also blows away a lot of
messy code.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
* dfg/DFGArrayMode.cpp: Added.
(DFG):
(JSC::DFG::fromObserved):
(JSC::DFG::refineArrayMode):
(JSC::DFG::modeAlreadyChecked):
(JSC::DFG::modeToString):
* dfg/DFGArrayMode.h: Added.
(DFG):
(JSC::DFG::canCSEStorage):
(JSC::DFG::modeForPut):
(JSC::DFG::modesCompatibleForStorageLoad):
(JSC::DFG::modeSupportsLength):
* dfg/DFGByteCodeParser.cpp:
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::getArrayModeWithoutOSRExit):
(JSC::DFG::ByteCodeParser::getArrayMode):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::getByValLoadElimination):
(JSC::DFG::CSEPhase::checkStructureLoadElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::getByOffsetLoadElimination):
(JSC::DFG::CSEPhase::putByOffsetStoreElimination):
(JSC::DFG::CSEPhase::getPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::byValIsPure):
(JSC::DFG::Graph::clobbersWorld):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasArrayMode):
(Node):
(JSC::DFG::Node::arrayMode):
(JSC::DFG::Node::setArrayMode):
* dfg/DFGNodeType.h:
(DFG):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::typedArrayDescriptor):
(DFG):
(JSC::DFG::SpeculativeJIT::speculateArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):

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

8 years agoUnreviewed update of my email.
alexis@webkit.org [Thu, 23 Aug 2012 03:09:33 +0000 (03:09 +0000)]
Unreviewed update of my email.

* Scripts/webkitpy/common/config/committers.py:
* Scripts/webkitpy/common/config/watchlist:

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

8 years agoConsider replacing return type of Clipboard::types() from HashSet<String> to Vector...
commit-queue@webkit.org [Thu, 23 Aug 2012 01:56:54 +0000 (01:56 +0000)]
Consider replacing return type of Clipboard::types() from HashSet<String> to Vector<String>.
https://bugs.webkit.org/show_bug.cgi?id=82888

Patch by Vineet Chaudhary <rgf748@motorola.com> on 2012-08-22
Reviewed by Kentaro Hara.

As part of removing custom bindings of types Array Clipboard::types() needs to return
Vector<String> than HashSet<String>

No new tests. Exixting test should pass with this change as no behavoural changes.

* bindings/js/JSClipboardCustom.cpp: Replace data type from HashSet<> to Vector<>.
(WebCore::JSClipboard::types):
* bindings/v8/custom/V8ClipboardCustom.cpp: Ditto.
(WebCore::V8Clipboard::typesAccessorGetter):
* dom/Clipboard.h: Ditto.
(Clipboard):
* platform/blackberry/ClipboardBlackBerry.cpp: Ditto.
(WebCore::ClipboardBlackBerry::types):
* platform/blackberry/ClipboardBlackBerry.h: Ditto.
(ClipboardBlackBerry):
* platform/chromium/ChromiumDataObject.cpp: Ditto.
(WebCore::ChromiumDataObject::types):
* platform/chromium/ChromiumDataObject.h: Ditto.
(ChromiumDataObject):
* platform/chromium/ClipboardChromium.cpp: Ditto.
(WebCore::ClipboardChromium::types):
* platform/chromium/ClipboardChromium.h: Ditto.
(ClipboardChromium):
* platform/efl/ClipboardEfl.cpp: Ditto.
(WebCore::ClipboardEfl::types):
* platform/efl/ClipboardEfl.h: Ditto.
(ClipboardEfl):
* platform/gtk/ClipboardGtk.cpp: Ditto.
(WebCore::ClipboardGtk::types):
* platform/gtk/ClipboardGtk.h: Ditto.
(ClipboardGtk):
* platform/mac/ClipboardMac.h: Ditto.
(ClipboardMac):
* platform/mac/ClipboardMac.mm: Ditto.
(WebCore::addHTMLClipboardTypesForCocoaType):
(WebCore::ClipboardMac::types):
* platform/qt/ClipboardQt.cpp: Ditto.
(WebCore::ClipboardQt::types):
* platform/qt/ClipboardQt.h: Ditto.
(ClipboardQt):
* platform/win/ClipboardWin.cpp: Ditto.
(WebCore::addMimeTypesForFormat):
(WebCore::ClipboardWin::types):
* platform/win/ClipboardWin.h: Ditto.
(ClipboardWin):
* platform/wx/ClipboardWx.cpp: Ditto.
(WebCore::ClipboardWx::types):
* platform/wx/ClipboardWx.h: Ditto.
(ClipboardWx):

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

8 years agoUnreviewed Chromium gardening. Optimized baselines from yesterday
kbr@google.com [Thu, 23 Aug 2012 01:54:06 +0000 (01:54 +0000)]
Unreviewed Chromium gardening. Optimized baselines from yesterday
with dpranke's new algorithm in webkit-patch optimize-baselines
from r126374 and r126380.

* platform/chromium-linux/fast/canvas/canvas-scale-shadowBlur-expected.txt: Removed.
* platform/chromium-linux/fast/canvas/canvas-scale-strokePath-shadow-expected.txt: Removed.
* platform/chromium-linux/fast/canvas/canvas-strokePath-gradient-shadow-expected.txt: Removed.
* platform/chromium-linux/fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt: Removed.
* platform/chromium-mac-snowleopard/fast/canvas/canvas-scale-shadowBlur-expected.txt: Removed.
* platform/chromium-mac-snowleopard/fast/canvas/canvas-scale-strokePath-shadow-expected.txt: Removed.
* platform/chromium-mac-snowleopard/fast/canvas/canvas-strokePath-gradient-shadow-expected.txt: Removed.
* platform/chromium-mac-snowleopard/fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt: Removed.
* platform/chromium-mac/fast/canvas/canvas-scale-shadowBlur-expected.txt: Removed.
* platform/chromium-mac/fast/canvas/canvas-scale-strokePath-shadow-expected.txt: Removed.
* platform/chromium-mac/fast/canvas/canvas-strokePath-gradient-shadow-expected.txt: Removed.
* platform/chromium-mac/fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt: Removed.
* platform/chromium-win-xp/fast/canvas/canvas-scale-shadowBlur-expected.txt: Removed.
* platform/chromium-win-xp/fast/canvas/canvas-scale-strokePath-shadow-expected.txt: Removed.
* platform/chromium-win-xp/fast/canvas/canvas-strokePath-gradient-shadow-expected.txt: Removed.
* platform/chromium-win-xp/fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt: Removed.
* platform/chromium-win/fast/canvas/canvas-scale-shadowBlur-expected.txt: Removed.
* platform/chromium-win/fast/canvas/canvas-scale-strokePath-shadow-expected.txt: Removed.
* platform/chromium-win/fast/canvas/canvas-strokePath-gradient-shadow-expected.txt: Removed.
* platform/chromium-win/fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt: Removed.
* platform/chromium/fast/canvas/canvas-scale-shadowBlur-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/fast/canvas/canvas-scale-shadowBlur-expected.txt.
* platform/chromium/fast/canvas/canvas-scale-strokePath-shadow-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/fast/canvas/canvas-scale-strokePath-shadow-expected.txt.
* platform/chromium/fast/canvas/canvas-strokePath-gradient-shadow-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/fast/canvas/canvas-strokePath-gradient-shadow-expected.txt.
* platform/chromium/fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt: Renamed from LayoutTests/platform/chromium-linux-x86/fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt.

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

8 years agoIndexedDB: tests for injection/extraction of idb keys
commit-queue@webkit.org [Thu, 23 Aug 2012 01:49:56 +0000 (01:49 +0000)]
IndexedDB: tests for injection/extraction of idb keys
https://bugs.webkit.org/show_bug.cgi?id=94653

Patch by Alec Flett <alecflett@chromium.org> on 2012-08-22
Reviewed by Tony Chang.

Added unit tests for key injection/extraction using
SerializedScriptValue. These were moved from chromium, now
that all uses of the API are through WebKit.

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

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

8 years agoFix typos in r126374
dpranke@chromium.org [Thu, 23 Aug 2012 01:34:41 +0000 (01:34 +0000)]
Fix typos in r126374
https://bugs.webkit.org/show_bug.cgi?id=94665
Unreviewed, build fix.

Fix two issues that snuck in, one that caused a crash if there
were no baselines to optimize and one that occurred as a result
of failing to rename a variable when I changed the recursion to
a loop in the previous patch.

* Scripts/webkitpy/common/checkout/baselineoptimizer.py:
(BaselineOptimizer._optimize_by_pushing_results_up):

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

8 years agoThreadRestrictionVerifier should be opt-in, not opt-out
ggaren@apple.com [Thu, 23 Aug 2012 01:33:25 +0000 (01:33 +0000)]
ThreadRestrictionVerifier should be opt-in, not opt-out
https://bugs.webkit.org/show_bug.cgi?id=94761

Reviewed by Mark Hahnenberg.

../JavaScriptCore:

Removed explicit calls to disable the verifier, since it's off by default now.

* parser/SourceProvider.h:
(JSC::SourceProvider::SourceProvider):
(SourceProvider):
* runtime/SymbolTable.h:
(JSC::SharedSymbolTable::SharedSymbolTable):

../WTF:

WebKit's JavaScript engine supports use on multiple threads, so default-on
is not appropriate for most of our objects, and it causes lots of suprious
assertions.

* wtf/MetaAllocator.cpp:
(WTF::MetaAllocatorHandle::MetaAllocatorHandle): No need to turn off
explicitly, since it's off by default now.

* wtf/ThreadRestrictionVerifier.h:
(WTF::ThreadRestrictionVerifier::ThreadRestrictionVerifier): Turn off by default.

(WTF::ThreadRestrictionVerifier::setMutexMode):
(WTF::ThreadRestrictionVerifier::setDispatchQueueMode):
(WTF::ThreadRestrictionVerifier::turnOffVerification): These assertions
about state transitions were inconsistent with each other, and impossible
to maintain with default off, so I removed them.

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

8 years ago[chromium] Change WebLayer from a concrete type to a pure virtual interface
jamesr@google.com [Thu, 23 Aug 2012 01:28:52 +0000 (01:28 +0000)]
[chromium] Change WebLayer from a concrete type to a pure virtual interface
https://bugs.webkit.org/show_bug.cgi?id=94174

Reviewed by Adrienne Walker.

Source/Platform:

This changes WebLayer from a value type to a pure virtual interface and changes Web*Layers from subtypes to
standalone types that have a WebLayer. This better isolates the implementation from the interface and, since
it's not possible to re-wrap an existing layer, makes cleanup explicit instead of requiring the caller to
invoke special cleanup methods before shutdown.

* chromium/public/WebContentLayer.h:
(WebContentLayer):
* chromium/public/WebExternalTextureLayer.h:
(WebExternalTextureLayer):
* chromium/public/WebIOSurfaceLayer.h:
(WebIOSurfaceLayer):
* chromium/public/WebImageLayer.h:
(WebImageLayer):
* chromium/public/WebLayer.h:
(WebKit):
(WebLayer):
(WebKit::WebLayer::~WebLayer):
* chromium/public/WebScrollableLayer.h: Removed.
* chromium/public/WebScrollbarLayer.h:
(WebScrollbarLayer):
* chromium/public/WebSolidColorLayer.h:
(WebKit):
(WebSolidColorLayer):
(WebKit::WebSolidColorLayer::~WebSolidColorLayer):
* chromium/public/WebVideoLayer.h:
(WebVideoLayer):

Source/WebCore:

This updates WebCore code for the WebLayer interface changes. Classes that have ownership of specific layer
types (such as DrawingBufferChromium, Canvas2DLayerBridge and ScrollingCoordinatorChromium) hold ownership
of a specific type and a pointer to the WebLayer to GraphicsLayerChromium to be included in the final layer
tree. GraphicsLayerChromium holds a WebContentLayer and (optionally) a WebImageLayer and WebLayer (for
m_transformLayer) and assembles the final layer tree.

* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::ScrollingCoordinatorPrivate::ScrollingCoordinatorPrivate):
(ScrollingCoordinatorPrivate):
(WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
(WebCore::ScrollingCoordinatorPrivate::setHorizontalScrollbarLayer):
(WebCore::ScrollingCoordinatorPrivate::setVerticalScrollbarLayer):
(WebCore::ScrollingCoordinatorPrivate::scrollLayer):
(WebCore::scrollableLayerForGraphicsLayer):
(WebCore):
(WebCore::createScrollbarLayer):
(WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
(WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
(WebCore::ScrollingCoordinator::setScrollLayer):
(WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
(WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
(WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
* platform/graphics/chromium/Canvas2DLayerBridge.cpp:
(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::prepareForDraw):
(WebCore::Canvas2DLayerBridge::layer):
(WebCore::Canvas2DLayerBridge::contextAcquired):
* platform/graphics/chromium/Canvas2DLayerBridge.h:
(Canvas2DLayerBridge):
* platform/graphics/chromium/DrawingBufferChromium.cpp:
(WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
(WebCore::DrawingBufferPrivate::~DrawingBufferPrivate):
(WebCore::DrawingBufferPrivate::layer):
(DrawingBufferPrivate):
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::willBeDestroyed):
(WebCore::GraphicsLayerChromium::updateNames):
(WebCore::GraphicsLayerChromium::removeFromParent):
(WebCore::GraphicsLayerChromium::setSize):
(WebCore::GraphicsLayerChromium::clearBackgroundColor):
(WebCore::GraphicsLayerChromium::setContentsOpaque):
(WebCore::GraphicsLayerChromium::setFilters):
(WebCore::GraphicsLayerChromium::setBackgroundFilters):
(WebCore::GraphicsLayerChromium::setMaskLayer):
(WebCore::GraphicsLayerChromium::setBackfaceVisibility):
(WebCore::GraphicsLayerChromium::setOpacity):
(WebCore::GraphicsLayerChromium::setReplicatedByLayer):
(WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
(WebCore::GraphicsLayerChromium::setNeedsDisplay):
(WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
(WebCore::GraphicsLayerChromium::setContentsToImage):
(WebCore::GraphicsLayerChromium::setContentsToCanvas):
(WebCore):
(WebCore::GraphicsLayerChromium::setContentsToMedia):
(WebCore::GraphicsLayerChromium::setContentsTo):
(WebCore::GraphicsLayerChromium::addAnimation):
(WebCore::GraphicsLayerChromium::pauseAnimation):
(WebCore::GraphicsLayerChromium::removeAnimation):
(WebCore::GraphicsLayerChromium::suspendAnimations):
(WebCore::GraphicsLayerChromium::resumeAnimations):
(WebCore::GraphicsLayerChromium::platformLayer):
(WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
(WebCore::GraphicsLayerChromium::setDebugBorder):
(WebCore::GraphicsLayerChromium::updateChildList):
(WebCore::GraphicsLayerChromium::updateLayerPosition):
(WebCore::GraphicsLayerChromium::updateLayerSize):
(WebCore::GraphicsLayerChromium::updateAnchorPoint):
(WebCore::GraphicsLayerChromium::updateTransform):
(WebCore::GraphicsLayerChromium::updateChildrenTransform):
(WebCore::GraphicsLayerChromium::updateMasksToBounds):
(WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
(WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
(WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
(WebCore::GraphicsLayerChromium::updateContentsRect):
(WebCore::GraphicsLayerChromium::updateContentsScale):
(WebCore::GraphicsLayerChromium::setupContentsLayer):
* platform/graphics/chromium/GraphicsLayerChromium.h:
(GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::hasContentsLayer):
(WebCore::GraphicsLayerChromium::contentLayer):
(WebCore::GraphicsLayerChromium::contentsLayer):
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::rootLayer):
* platform/graphics/chromium/LayerChromium.h:

Source/WebKit/chromium:

This updates the implementation of the Web*Layer family to the new design and updates callers in WebViewImpl /
NonCompositedContentHost / LinkHighlight.

* WebKit.gypi:
* src/LinkHighlight.cpp:
(WebKit::LinkHighlight::LinkHighlight):
(WebKit::LinkHighlight::contentLayer):
(WebKit::LinkHighlight::clipLayer):
(WebKit::LinkHighlight::releaseResources):
(WebKit::LinkHighlight::computeHighlightLayerPathAndPosition):
(WebKit::LinkHighlight::startHighlightAnimation):
(WebKit::LinkHighlight::updateGeometry):
* src/LinkHighlight.h:
(LinkHighlight):
* src/NonCompositedContentHost.cpp:
(WebKit::NonCompositedContentHost::NonCompositedContentHost):
(WebKit::NonCompositedContentHost::setScrollLayer):
(WebKit::NonCompositedContentHost::setViewport):
(WebKit::NonCompositedContentHost::scrollLayer):
* src/NonCompositedContentHost.h:
* src/WebContentLayer.cpp: Removed.
* src/WebContentLayerImpl.cpp:
(WebKit::WebContentLayer::create):
(WebKit::WebContentLayerImpl::WebContentLayerImpl):
(WebKit::WebContentLayerImpl::~WebContentLayerImpl):
(WebKit::WebContentLayerImpl::layer):
(WebKit):
(WebKit::WebContentLayerImpl::setDoubleSided):
(WebKit::WebContentLayerImpl::setContentsScale):
(WebKit::WebContentLayerImpl::setUseLCDText):
(WebKit::WebContentLayerImpl::setDrawCheckerboardForMissingTiles):
(WebKit::WebContentLayerImpl::paintContents):
* src/WebContentLayerImpl.h:
(WebContentLayerImpl):
* src/WebExternalTextureLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebExternalTextureLayer.cpp.
(WebKit):
(WebKit::WebExternalTextureLayer::create):
(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::~WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::layer):
(WebKit::WebExternalTextureLayerImpl::setTextureId):
(WebKit::WebExternalTextureLayerImpl::setFlipped):
(WebKit::WebExternalTextureLayerImpl::setUVRect):
(WebKit::WebExternalTextureLayerImpl::setOpaque):
(WebKit::WebExternalTextureLayerImpl::setPremultipliedAlpha):
(WebKit::WebExternalTextureLayerImpl::willModifyTexture):
(WebKit::WebExternalTextureLayerImpl::setRateLimitContext):
(WebTextureUpdaterImpl):
(WebKit::WebTextureUpdaterImpl::WebTextureUpdaterImpl):
(WebKit::WebExternalTextureLayerImpl::prepareTexture):
(WebKit::WebExternalTextureLayerImpl::context):
* src/WebExternalTextureLayerImpl.h: Copied from Source/Platform/chromium/public/WebVideoLayer.h.
(WebKit):
(WebExternalTextureLayerImpl):
* src/WebIOSurfaceLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebIOSurfaceLayer.cpp.
(WebKit):
(WebKit::WebIOSurfaceLayer::create):
(WebKit::WebIOSurfaceLayerImpl::WebIOSurfaceLayerImpl):
(WebKit::WebIOSurfaceLayerImpl::~WebIOSurfaceLayerImpl):
(WebKit::WebIOSurfaceLayerImpl::setIOSurfaceProperties):
(WebKit::WebIOSurfaceLayerImpl::layer):
* src/WebIOSurfaceLayerImpl.h: Copied from Source/Platform/chromium/public/WebImageLayer.h.
(WebCore):
(WebKit):
(WebIOSurfaceLayerImpl):
* src/WebImageLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebSolidColorLayer.cpp.
(WebKit):
(WebKit::WebImageLayer::create):
(WebKit::WebImageLayerImpl::WebImageLayerImpl):
(WebKit::WebImageLayerImpl::~WebImageLayerImpl):
(WebKit::WebImageLayerImpl::layer):
(WebKit::WebImageLayerImpl::setBitmap):
* src/WebImageLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebImageLayer.cpp.
(WebCore):
(WebKit):
(WebImageLayerImpl):
* src/WebLayer.cpp: Removed.
* src/WebLayerImpl.cpp:
(WebKit::WebLayer::create):
(WebKit::WebLayerImpl::WebLayerImpl):
(WebKit::WebLayerImpl::~WebLayerImpl):
(WebKit):
(WebKit::WebLayerImpl::id):
(WebKit::WebLayerImpl::invalidateRect):
(WebKit::WebLayerImpl::invalidate):
(WebKit::WebLayerImpl::addChild):
(WebKit::WebLayerImpl::insertChild):
(WebKit::WebLayerImpl::replaceChild):
(WebKit::WebLayerImpl::setChildren):
(WebKit::WebLayerImpl::removeFromParent):
(WebKit::WebLayerImpl::removeAllChildren):
(WebKit::WebLayerImpl::setAnchorPoint):
(WebKit::WebLayerImpl::anchorPoint):
(WebKit::WebLayerImpl::setAnchorPointZ):
(WebKit::WebLayerImpl::anchorPointZ):
(WebKit::WebLayerImpl::setBounds):
(WebKit::WebLayerImpl::bounds):
(WebKit::WebLayerImpl::setMasksToBounds):
(WebKit::WebLayerImpl::masksToBounds):
(WebKit::WebLayerImpl::setMaskLayer):
(WebKit::WebLayerImpl::setReplicaLayer):
(WebKit::WebLayerImpl::setOpacity):
(WebKit::WebLayerImpl::opacity):
(WebKit::WebLayerImpl::setOpaque):
(WebKit::WebLayerImpl::opaque):
(WebKit::WebLayerImpl::setPosition):
(WebKit::WebLayerImpl::position):
(WebKit::WebLayerImpl::setSublayerTransform):
(WebKit::WebLayerImpl::sublayerTransform):
(WebKit::WebLayerImpl::setTransform):
(WebKit::WebLayerImpl::transform):
(WebKit::WebLayerImpl::setDrawsContent):
(WebKit::WebLayerImpl::drawsContent):
(WebKit::WebLayerImpl::setPreserves3D):
(WebKit::WebLayerImpl::setUseParentBackfaceVisibility):
(WebKit::WebLayerImpl::setBackgroundColor):
(WebKit::WebLayerImpl::setFilters):
(WebKit::WebLayerImpl::setBackgroundFilters):
(WebKit::WebLayerImpl::setDebugBorderColor):
(WebKit::WebLayerImpl::setDebugBorderWidth):
(WebKit::WebLayerImpl::setDebugName):
(WebKit::WebLayerImpl::setAnimationDelegate):
(WebKit::WebLayerImpl::addAnimation):
(WebKit::WebLayerImpl::removeAnimation):
(WebKit::WebLayerImpl::pauseAnimation):
(WebKit::WebLayerImpl::suspendAnimations):
(WebKit::WebLayerImpl::resumeAnimations):
(WebKit::WebLayerImpl::hasActiveAnimation):
(WebKit::WebLayerImpl::transferAnimationsTo):
(WebKit::WebLayerImpl::setForceRenderSurface):
(WebKit::WebLayerImpl::setScrollPosition):
(WebKit::WebLayerImpl::setScrollable):
(WebKit::WebLayerImpl::setHaveWheelEventHandlers):
(WebKit::WebLayerImpl::setShouldScrollOnMainThread):
(WebKit::WebLayerImpl::setNonFastScrollableRegion):
(WebKit::WebLayerImpl::setIsContainerForFixedPositionLayers):
(WebKit::WebLayerImpl::setFixedToContainerLayer):
(WebKit::WebLayerImpl::layer):
* src/WebLayerImpl.h:
(WebCore):
(WebLayerImpl):
* src/WebLayerTreeView.cpp:
(WebKit::WebLayerTreeView::setRootLayer):
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::create):
* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::readyStateChanged):
(WebKit::WebMediaPlayerClientImpl::repaint):
(WebKit::WebMediaPlayerClientImpl::setOpaque):
(WebKit::WebMediaPlayerClientImpl::platformLayer):
(WebKit::WebMediaPlayerClientImpl::acceleratedRenderingInUse):
* src/WebMediaPlayerClientImpl.h:
(WebMediaPlayerClientImpl):
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::setBackingTextureId):
(WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
(WebKit::WebPluginContainerImpl::commitBackingTexture):
(WebKit::WebPluginContainerImpl::setOpaque):
(WebKit::WebPluginContainerImpl::platformLayer):
* src/WebPluginContainerImpl.h:
(WebPluginContainerImpl):
* src/WebScrollableLayer.cpp: Removed.
* src/WebScrollbarLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarLayer.cpp.
(WebKit):
(WebKit::WebScrollbarLayer::create):
(WebKit::WebScrollbarLayerImpl::WebScrollbarLayerImpl):
(WebKit::WebScrollbarLayerImpl::~WebScrollbarLayerImpl):
(WebKit::WebScrollbarLayerImpl::layer):
(WebKit::WebScrollbarLayerImpl::setScrollLayer):
* src/WebScrollbarLayerImpl.h: Copied from Source/WebKit/chromium/src/WebSolidColorLayerImpl.h.
(WebCore):
(WebKit):
(WebScrollbarLayerImpl):
* src/WebSolidColorLayerImpl.cpp:
(WebKit::WebSolidColorLayer::create):
(WebKit::WebSolidColorLayerImpl::WebSolidColorLayerImpl):
(WebKit::WebSolidColorLayerImpl::layer):
(WebKit):
(WebKit::WebSolidColorLayerImpl::setBackgroundColor):
* src/WebSolidColorLayerImpl.h:
(WebCore):
(WebKit):
(WebSolidColorLayerImpl):
* src/WebVideoLayerImpl.cpp: Copied from Source/WebKit/chromium/src/WebVideoLayer.cpp.
(WebKit):
(WebKit::WebVideoLayer::create):
(WebKit::WebVideoLayerImpl::WebVideoLayerImpl):
(WebKit::WebVideoLayerImpl::~WebVideoLayerImpl):
(WebKit::WebVideoLayerImpl::layer):
(WebKit::WebVideoLayerImpl::active):
* src/WebVideoLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebVideoLayer.cpp.
(WebCore):
(WebKit):
(WebVideoLayerImpl):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::setRootGraphicsLayer):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit):
* src/WebViewImpl.h:
* tests/ImageLayerChromiumTest.cpp:
(WebCore::TEST):
* tests/WebLayerTest.cpp:
* tests/WebLayerTreeViewTest.cpp:

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

8 years ago[V8] Move runScript() from V8Proxy to ScriptRunner
haraken@chromium.org [Thu, 23 Aug 2012 01:27:28 +0000 (01:27 +0000)]
[V8] Move runScript() from V8Proxy to ScriptRunner
https://bugs.webkit.org/show_bug.cgi?id=94706

Reviewed by Adam Barth.

To kill V8Proxy, we can move runScript() from V8Proxy to ScriptRunner.

- ScriptRunner::runScript() should be a static method.
It should receive ScriptExecutionContext on which the script is evaluated.

- After this patch is landed, I'll remove WorkerContextExecutionContext::runScript()
and ScriptDebugServer::runScript().

No tests. No change in behavior.

* UseV8.cmake:
* WebCore.gypi:
* bindings/v8/ScriptController.cpp:
* bindings/v8/ScriptRunner.cpp: Added.
(WebCore):
(WebCore::ScriptRunner::runScript):
* bindings/v8/ScriptRunner.h: Added.
(WebCore):
(ScriptRunner):
* bindings/v8/V8Binding.cpp:
(WebCore::handleMaxRecursionDepthExceeded):
(WebCore):
* bindings/v8/V8Binding.h:
(WebCore):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::evaluate):
* bindings/v8/V8Proxy.h:
(V8Proxy):

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

8 years ago[V8] OwnHandle doesn't need to support weak handles
abarth@webkit.org [Thu, 23 Aug 2012 01:23:12 +0000 (01:23 +0000)]
[V8] OwnHandle doesn't need to support weak handles
https://bugs.webkit.org/show_bug.cgi?id=94760

Reviewed by Kentaro Hara.

No code uses makeWeak(). We can drop support for it and simplify this
class.

* bindings/v8/OwnHandle.h:
(WebCore):
(OwnHandle):
(WebCore::OwnHandle::OwnHandle):
(WebCore::OwnHandle::~OwnHandle):
(WebCore::OwnHandle::get):
(WebCore::OwnHandle::set):
(WebCore::OwnHandle::clear):

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

8 years ago[V8] Remove V8Proxy from getXPathNSResolver()
haraken@chromium.org [Thu, 23 Aug 2012 01:12:54 +0000 (01:12 +0000)]
[V8] Remove V8Proxy from getXPathNSResolver()
https://bugs.webkit.org/show_bug.cgi?id=94715

Reviewed by Adam Barth.

- The V8Proxy* argument of getXPathNSResolver(..., V8Proxy* = 0) is not used.
  We can remove it.

- We can rename getXPathNSResolver() to toXPathNSResolver().

- We can move toXPathNSResolver() from V8DOMWrapper to V8Binding,
  since other toXXX() methods are written in V8Binding.

- Change the return value of toXPathNSResolver() from RefPtr to PassRefPtr.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(JSValueToNative):
* bindings/v8/V8Binding.cpp:
(WebCore::toXPathNSResolver):
(WebCore):
* bindings/v8/V8Binding.h:
(WebCore):
* bindings/v8/V8DOMWrapper.cpp:
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):
* bindings/v8/custom/V8DocumentCustom.cpp:
(WebCore::V8Document::evaluateCallback):

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

8 years agoBaseline optimizer should try to optimize per-port if global optimization fails
dpranke@chromium.org [Thu, 23 Aug 2012 01:08:25 +0000 (01:08 +0000)]
Baseline optimizer should try to optimize per-port if global optimization fails
https://bugs.webkit.org/show_bug.cgi?id=94665

Reviewed by Adam Barth.

Add a fallback strategy for optimizing baselines if the default
one fails; this one simply attempts to shift baselines up in the
tree and consolidates them if a parent and child in the fallback
path have the same result. This strategy is somewhat flawed in
that we will always put something in a parent dir even if we
"shouldn't"; for example, if chromium-mac produces a different
result from chromium-win and chromium-linux, then the new
algorithm will move the mac result into platform/chromium,
leaving chromium-mac empty. This result is still correct, but
perhaps confusing.

I haven't done much testing of this algorithm yet, so it's not
clear how many cases where this does a better job than the
default algorithm and how many it'll do a worse job.

* Scripts/webkitpy/common/checkout/baselineoptimizer.py:
(BaselineOptimizer._find_optimal_result_placement):
(BaselineOptimizer._optimize_by_most_specific_common_directory):
(BaselineOptimizer):
(BaselineOptimizer._optimize_by_pushing_results_up):
(BaselineOptimizer._find_in_fallbackpath):
* Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:
(BaselineOptimizerTest.test_platform_mac_different):

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

8 years agoUnreviewed, rolling out r126325.
kbr@google.com [Thu, 23 Aug 2012 01:07:22 +0000 (01:07 +0000)]
Unreviewed, rolling out r126325.
http://trac.webkit.org/changeset/126325
https://bugs.webkit.org/show_bug.cgi?id=94644

Caused subtle but reproducible failure to call onload handler
properly in an SVG layout test in Chromium Mac Debug builds,
indicating potentially larger problem

* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::beginLoadTimerFired):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::decrementRequestCount):

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

8 years agoDisplay a TextTrackCue when snap-to-lines flag is set
victor@rosedu.org [Thu, 23 Aug 2012 01:00:10 +0000 (01:00 +0000)]
Display a TextTrackCue when snap-to-lines flag is set
https://bugs.webkit.org/show_bug.cgi?id=79751

Reviewed by Tony Chang.

Source/WebCore:

This patch implements rendering functionality for a given text track,
following closer the exact WebVTT specification. There are two new classes
which have been added in order to succesfully cover rendering when of a text
track cue.

RenderTextTrackCue handles the specific rendering algorithm required,
by checking for overlaps with other boxes that are in the same
container (these can be any other boxes, not necessarily other cues,
the video controls, for example).

TextTrackCueBox extends HTMLDivElement and is an intermediate layer
between the renderer class and the actual cue object. Its purpose is
to instantiate the particular renderer and cover all the default CSS
styling that needs to be applied to the cue.

The layout is done in two steps:
  - Step 1: Layout the TextTrackCue with default CSS properties set (this is
the TextTrackCueBox decorated with the respective CSS elements)
  - Step 2: RenderTextTrackCue adjusts the box position depending on the
parameters of the TextTrackCue object and the overlaps that may occur with
previously positioned cues.

Tests: media/track/track-cue-rendering-horizontal.html
       media/track/track-cue-rendering-vertical.html

* CMakeLists.txt: Updated to include RenderTextTrackCue.
* GNUmakefile.list.am: Updated to include RenderTextTrackCue.
* Target.pri: Updated to include RenderTextTrackCue.
* WebCore.gypi: Updated to include RenderTextTrackCue.
* WebCore.vcproj/WebCore.vcproj: Updated to include RenderTextTrackCue.
* WebCore.xcodeproj/project.pbxproj: Updated to include RenderTextTrackCue.
* css/mediaControls.css: Removed unreliable CSS.
(video::-webkit-media-text-track-display): Removed properties.
* html/shadow/MediaControlElements.cpp: Updated to not use the new class.
(RenderTextTrackContainerElement):
(WebCore::MediaControlTextTrackContainerElement::updateDisplay): Simplified
the function by moving the check if track is rendered in TextTrack and used
the TextTrackCueBox for cues.
* html/track/TextTrack.cpp: Added a new method.
(WebCore::TextTrack::isRendered): Method that returns whether the track should
be rendered or not.
(WebCore):
* html/track/TextTrack.h: Added the isRendered method.
(TextTrack):
* html/track/TextTrackCue.cpp: Added several helper methods and
the TextTrackCueBox.
(WebCore):
(WebCore::TextTrackCueBox::TextTrackCueBox): The TextTrackCueBox extends
the HTMLDivElement and represents a bridge class between RenderTextTrackCue
and TextTrackCue. This is required as the layout is done in two steps, as
explained on top of the ChangeLog entry.
(WebCore::TextTrackCueBox::getCue): Returns the associated TextTrackCue object.
(WebCore::TextTrackCueBox::applyCSSProperties): Applies a part of the default CSS
properties, as defined by section 3.5.1 of the WebVTT specification.
(WebCore::TextTrackCueBox::shadowPseudoId): Moved the shadow pseudo id.
(WebCore::TextTrackCueBox::createRenderer): Creates the particular renderer.
(WebCore::TextTrackCue::TextTrackCue): Corrected the internal writing mode map.
(WebCore::TextTrackCue::calculateComputedLinePosition): Updated the compute line
position algorithm. This requires, however, a method to consider only rendered
tracks (and therefore will be addressed completely in subsequent changeset).
(WebCore::TextTrackCue::calculateDisplayParameters): Updated and corrected the
computed display parameters to match the current specification.
(WebCore::TextTrackCue::getDisplayTree): Update to use the TextTrackCueBox class
and moved CSS application to the respective class.
(WebCore::TextTrackCue::getPositionCoordinates): Added comment to specify in which
situation this method is used and change visibility to private.
(WebCore::TextTrackCue::getCSSWritingMode): Returns the CSS writing mode corresponding
to the cue writing mode.
(WebCore::TextTrackCue::getCSSSize): Returns the cue width / height (depending on the
writing direction.
(WebCore::TextTrackCue::getCSSPosition): Returns the default display position, that is
used in the first layout step.
* html/track/TextTrackCue.h:
(WebCore):
(TextTrackCueBox):
(WebCore::TextTrackCueBox::create): Initialization method.
(TextTrackCue):
(WebCore::TextTrackCue::getWritingDirection): Helper method to return the internal
values used to represent the writing direction.
* rendering/RenderTextTrackCue.cpp: Added.
(WebCore):
(WebCore::RenderTextTrackCue::RenderTextTrackCue):
(WebCore::RenderTextTrackCue::layout): The rendering steps, as mentioned in
the WebVTT rendering rules. Currently, this treats only the snap-to-lines set
case. It is implemented following closely the spec, and might be subject to
change as discussions on various bugs evolve.
(WebCore::RenderTextTrackCue::initializeLayoutParameters): Steps 1 - 7.
(WebCore::RenderTextTrackCue::placeBoxInDefaultPosition): Steps 8 - 10.
(WebCore::RenderTextTrackCue::isOutside): Inline method to check if the cue is outside.
(WebCore::RenderTextTrackCue::isOverlapping): Inline method to check if the cue overlaps other boxes.
(WebCore::RenderTextTrackCue::shouldSwitchDirection): Step 12.
(WebCore::RenderTextTrackCue::moveBoxesByStep): Step 13.
(WebCore::RenderTextTrackCue::switchDirection): Steps 15 - 18.
(WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Cue repositioning
for text track cue when the snap to lines flag is set.
(WebCore::RenderTextTrackCue::repositionCueSnapToLinesNotSet): Cue repositioning
for text track cue when the snap to lines flag is not set. Not implemented yet.
* rendering/RenderTextTrackCue.h: Added.
(WebCore):
(RenderTextTrackCue): Rendering class, handling the display of cues.

LayoutTests:

Test cases covering snap-to-lines horizontal and vertical positioning of cues.

* media/track/captions-webvtt/captions-snap-to-lines-set.vtt: Added.
* media/track/track-cue-rendering-horizontal.html: Added.
* media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt: Updated.
* media/track/track-cue-rendering-vertical.html: Added.
* media/video-test.js: Updated to support pixel test dumps.
* platform/chromium-linux/media/track/track-cue-rendering-horizontal-expected.png: Added.
* platform/chromium-linux/media/track/track-cue-rendering-horizontal-expected.txt: Added.
* platform/chromium-linux/media/track/track-cue-rendering-vertical-expected.png: Added.
* platform/chromium-linux/media/track/track-cue-rendering-vertical-expected.txt: Added.
* platform/chromium/TestExpectations: Marking these temporarily as IMAGE fail, as they will
anyway require new baselines.
* platform/mac/media/track/track-cue-rendering-horizontal-expected.png: Added.
* platform/mac/media/track/track-cue-rendering-horizontal-expected.txt: Added.
* platform/mac/media/track/track-cue-rendering-vertical-expected.png: Added.
* platform/mac/media/track/track-cue-rendering-vertical-expected.txt: Added.

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

8 years agoadd debug info, another test to webkit-patch optimize-baselines
dpranke@chromium.org [Thu, 23 Aug 2012 00:59:54 +0000 (00:59 +0000)]
add debug info, another test to webkit-patch optimize-baselines
https://bugs.webkit.org/show_bug.cgi?id=94762

Reviewed by Adam Barth.

This patch adds more debug logging for optimize-baselines so
that you can tell the before and after states and figure out
what the command is actually deciding to do.

Also, this command adds a (disabled) test for the problem in bug
94665. It's disabled because we don't have the fix yet (that
will be posted in a patch to that bug).

There should be no functional changes in this patch apart from
the additional logging.

Note that adding the debug logging exposed a bug in
filesystem_mock.relpath() (that would return None if the path
wasn't a subpath of the start); the real relpath computes a
relpath with parent dirs. Fixing this revealed a bad check in
the style checker's change_directory() call which was checking
for None.

* Scripts/webkitpy/common/checkout/baselineoptimizer.py:
(BaselineOptimizer._find_optimal_result_placement):
(BaselineOptimizer):
(BaselineOptimizer._optimize_by_most_specific_common_directory):
(BaselineOptimizer._move_baselines):
(BaselineOptimizer.optimize):
* Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:
(BaselineOptimizerTest.disabled_test_platform_mac_different):
* Scripts/webkitpy/common/system/filesystem.py:
(FileSystem):
* Scripts/webkitpy/common/system/filesystem_mock.py:
(MockFileSystem):
(MockFileSystem.__init__):
(MockFileSystem.relpath):
* Scripts/webkitpy/common/system/filesystem_unittest.py:
(RealFileSystemTest.test_sep):
* Scripts/webkitpy/style/main.py:
(change_directory):

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

8 years ago[V8] Move matchesCurrentContext() from V8Proxy to ScriptController
haraken@chromium.org [Thu, 23 Aug 2012 00:38:08 +0000 (00:38 +0000)]
[V8] Move matchesCurrentContext() from V8Proxy to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=94596

Reviewed by Adam Barth.

To kill V8Proxy:

- We can move matchesCurrentContext() from V8Proxy to ScriptController.
- We can remove V8Proxy::isolatedWorldContext() since it is not used by anybody.
- We can remove V8Proxy::finishedWithEvent() since it is empty.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateToV8Converters):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::finishedWithEvent):
(WebCore::ScriptController::matchesCurrentContext):
(WebCore):
* bindings/v8/ScriptController.h:
(ScriptController):
* bindings/v8/V8Proxy.cpp:
* bindings/v8/V8Proxy.h:
(V8Proxy):

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

8 years agoSource/WebCore: [Gtk] Dojo toggle buttons should expose ROLE_TOGGLE_BUTTON not ROLE_P...
commit-queue@webkit.org [Thu, 23 Aug 2012 00:36:06 +0000 (00:36 +0000)]
Source/WebCore: [Gtk] Dojo toggle buttons should expose ROLE_TOGGLE_BUTTON not ROLE_PUSH_BUTTON
https://bugs.webkit.org/show_bug.cgi?id=73819

Patch by Alejandro Piñeiro <apinheiro@igalia.com> on 2012-08-22
Reviewed by Chris Fleizach.

Added a new role, Toggle Button, based on whether aria-pressed is present.
http://www.w3.org/TR/wai-aria/states_and_properties#aria-pressed

Test: platform/gtk/accessibility/aria-toggle-button-role.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRole): using buttonRoleType
to classify a button-related role.
(WebCore::AccessibilityNodeObject::determineAriaRoleAttribute): using buttonRoleType
to classify a button-related role.
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::ariaPressedIsPresent): checks if aria-pressed
attribute is present.
(WebCore::AccessibilityObject::buttonRoleType): returns a specific button-related
role if the object is a button-related role.
* accessibility/AccessibilityObject.h:
(AccessibilityObject): added new role ToggleButtonRole.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::determineAccessibilityRole): using buttonRoleType
to classify a button-related role.
* accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
(atkRole): added a mapping between ToggleButtonRole and
ATK_ROLE_TOGGLE_BUTTON.
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(createAccessibilityRoleMap): added a mapping between
ToggleButtonRole and NSAccessibilityButtonRole

Source/WebKit/chromium: Dojo toggle buttons should expose ROLE_TOGGLE_BUTTON not ROLE_PUSH_BUTTON
https://bugs.webkit.org/show_bug.cgi?id=73819

Patch by Alejandro Piñeiro <apinheiro@igalia.com> on 2012-08-22
Reviewed by Chris Fleizach.

Added a new role, Toggle Button, based on whether aria-pressed is present.
http://www.w3.org/TR/wai-aria/states_and_properties#aria-pressed

* public/WebAccessibilityRole.h: added WebAccessibilityRoleToggleButton that
matchs with WebCore ToggleButtonRole
* src/AssertMatchingEnums.cpp: added the assert matching rule for
WebAccessibilityRoleToggleButton and ToggleButtonRole

Tools: Dojo toggle buttons should expose ROLE_TOGGLE_BUTTON not ROLE_PUSH_BUTTON
https://bugs.webkit.org/show_bug.cgi?id=73819

Patch by Alejandro Piñeiro <apinheiro@igalia.com> on 2012-08-22
Reviewed by Chris Fleizach.

Added a new role, Toggle Button, based on whether aria-pressed is present.
http://www.w3.org/TR/wai-aria/states_and_properties#aria-pressed

* DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:
(roleToString): added "ToggleButton" string for WebAccessibilityRoleToggleButton

LayoutTests: [Gtk] Dojo toggle buttons should expose ROLE_TOGGLE_BUTTON not ROLE_PUSH_BUTTON
https://bugs.webkit.org/show_bug.cgi?id=73819

Patch by Alejandro Piñeiro <apinheiro@igalia.com> on 2012-08-22
Reviewed by Chris Fleizach.

Added a test to verify that when aria-pressed is present, buttons
will have the appropiate role.

* platform/gtk/accessibility/aria-toggle-button-role-expected.txt: Added.
* platform/gtk/accessibility/aria-toggle-button-role.html: Added.

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

8 years ago2012-08-23 Victor Carbune <victor@rosedu.org>
victor@rosedu.org [Thu, 23 Aug 2012 00:13:53 +0000 (00:13 +0000)]
2012-08-23  Victor Carbune  <victor@rosedu.org>

        Add myself to the committer list
        https://bugs.webkit.org/show_bug.cgi?id=94659

        Reviewed by James Robinson.

        Added my email and IRC handle.

        * Scripts/webkitpy/common/config/committers.py:

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

8 years ago[Chromium] Need baselines for new paged-x and paged-y tests in fast/overflow after...
kbr@google.com [Thu, 23 Aug 2012 00:08:18 +0000 (00:08 +0000)]
[Chromium] Need baselines for new paged-x and paged-y tests in fast/overflow after r126343
https://bugs.webkit.org/show_bug.cgi?id=94748

Unreviewed Chromium gardening. Added baselines via garden-o-matic.

* platform/chromium-linux/fast/overflow/paged-x-div-expected.png: Added.
* platform/chromium-linux/fast/overflow/paged-x-on-root-expected.png: Added.
* platform/chromium-linux/fast/overflow/paged-y-div-expected.png: Added.
* platform/chromium-linux/fast/overflow/paged-y-on-root-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/overflow/paged-x-div-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/overflow/paged-x-on-root-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/overflow/paged-y-div-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/overflow/paged-y-on-root-expected.png: Added.
* platform/chromium-mac/fast/overflow/paged-x-div-expected.png: Added.
* platform/chromium-mac/fast/overflow/paged-x-on-root-expected.png: Added.
* platform/chromium-mac/fast/overflow/paged-y-div-expected.png: Added.
* platform/chromium-mac/fast/overflow/paged-y-on-root-expected.png: Added.
* platform/chromium-win/fast/overflow/paged-x-div-expected.png: Added.
* platform/chromium-win/fast/overflow/paged-x-div-expected.txt: Added.
* platform/chromium-win/fast/overflow/paged-x-on-root-expected.png: Added.
* platform/chromium-win/fast/overflow/paged-x-on-root-expected.txt: Added.
* platform/chromium-win/fast/overflow/paged-y-div-expected.png: Added.
* platform/chromium-win/fast/overflow/paged-y-div-expected.txt: Added.
* platform/chromium-win/fast/overflow/paged-y-on-root-expected.png: Added.
* platform/chromium-win/fast/overflow/paged-y-on-root-expected.txt: Added.
* platform/chromium/TestExpectations:
    Removed expected failures.

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

8 years agoIndexedDB: revert int version when version change transaction aborts
dgrogan@chromium.org [Wed, 22 Aug 2012 23:23:43 +0000 (23:23 +0000)]
IndexedDB: revert int version when version change transaction aborts
https://bugs.webkit.org/show_bug.cgi?id=94662

Reviewed by Tony Chang.

Source/WebCore:

Test: storage/indexeddb/intversion-revert-on-abort.html

* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackendImpl::resetIntVersion):
One-liner modeled after resetVersion.

(WebCore):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(IDBDatabaseBackendImpl):

LayoutTests:

This is tested in some other layout tests but it should have its own,
so add intversion-revert-on-abort.html.

* storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt:
FAIL event.target.result.version should be 0 will be resolved at least
when we figure out if we can make the default version an integer
during the transition period.

* storage/indexeddb/intversion-revert-on-abort-expected.txt: Added.
* storage/indexeddb/intversion-revert-on-abort.html: Added.
* storage/indexeddb/resources/intversion-revert-on-abort.js: Added.
(test):
(deleteSuccess):
(firstUpgradeNeededCallback):
(openSuccess):
(secondUpgradeNeededCallback):
(errorAfterAbortCallback):
(finalSuccessCallback):

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

8 years agoAllow blocking of Web SQL databases in third-party web workers
jpfau@apple.com [Wed, 22 Aug 2012 22:58:59 +0000 (22:58 +0000)]
Allow blocking of Web SQL databases in third-party web workers
https://bugs.webkit.org/show_bug.cgi?id=94170

Reviewed by Adam Barth.

Source/WebCore:

Web workers did not previously know anything about the document that
spawned them. This is undefined for shared workers, but for dedicated
workers, we now pipe the information through.

Tests: http/tests/security/cross-origin-worker-websql-allowed.html
       http/tests/security/cross-origin-worker-websql.html

* Modules/webdatabase/WorkerContextWebDatabase.cpp: Pass information about the top origin to canAccessDatabase
(WebCore::WorkerContextWebDatabase::openDatabase):
(WebCore::WorkerContextWebDatabase::openDatabaseSync):
* WebCore.exp.in: Make SecurityOrigin::isolatedCopy const
* page/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::isolatedCopy):
(WebCore::SecurityOrigin::canAccessStorage):
* page/SecurityOrigin.h:
* workers/DedicatedWorkerContext.cpp: Pass topOrigin
(WebCore::DedicatedWorkerContext::create):
(WebCore::DedicatedWorkerContext::DedicatedWorkerContext):
* workers/DedicatedWorkerContext.h:
(DedicatedWorkerContext):
* workers/DedicatedWorkerThread.cpp: Pass topOrigin
(WebCore::DedicatedWorkerThread::create):
(WebCore::DedicatedWorkerThread::DedicatedWorkerThread):
(WebCore::DedicatedWorkerThread::createWorkerContext):
* workers/DedicatedWorkerThread.h:
(DedicatedWorkerThread):
* workers/SharedWorkerContext.cpp: Pass topOrigin
(WebCore::SharedWorkerContext::SharedWorkerContext):
* workers/SharedWorkerThread.cpp:
(WebCore::SharedWorkerThread::SharedWorkerThread):
(WebCore::SharedWorkerThread::createWorkerContext):
* workers/SharedWorkerThread.h:
(SharedWorkerThread): Pass topOrigin
* workers/WorkerContext.cpp:
(WebCore::WorkerContext::WorkerContext):
* workers/WorkerContext.h:
(WebCore::WorkerContext::topOrigin):
(WorkerContext):
* workers/WorkerMessagingProxy.cpp: Pass topOrigin
(WebCore::WorkerMessagingProxy::startWorkerContext):
* workers/WorkerThread.cpp:
(WebCore::WorkerThreadStartupData::create):
(WorkerThreadStartupData):
(WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
(WebCore::WorkerThread::WorkerThread):
(WebCore::WorkerThread::workerThread):
* workers/WorkerThread.h:
(WorkerThread):

Source/WebKit/chromium:

Web workers did not previously know anything about the document that
spawned them. This is undefined for shared workers, but for dedicated
workers, we now pipe the information through.

* src/WebWorkerClientImpl.cpp:
(WebKit::WebWorkerClientImpl::startWorkerContext): Pass top document's origin

LayoutTests:

Created tests for accessing openDatabase from a third party and first party dedicated workers when third-party blocking is on and off.

* http/tests/security/cross-origin-worker-websql-allowed-expected.txt: Added.
* http/tests/security/cross-origin-worker-websql-allowed.html: Added.
* http/tests/security/cross-origin-worker-websql-expected.txt: Added.
* http/tests/security/cross-origin-worker-websql.html: Added.
* http/tests/security/resources/cross-origin-iframe-for-worker-websql.html: Added.
* http/tests/security/resources/document-for-cross-origin-worker-websql.html: Added.
* http/tests/security/resources/worker-for-websql.js: Added.
(self.onmessage):

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

8 years ago[Chromium/GTK/EFL] Flaky media/track/track-mode test.
annacc@chromium.org [Wed, 22 Aug 2012 22:55:30 +0000 (22:55 +0000)]
[Chromium/GTK/EFL] Flaky media/track/track-mode test.
https://bugs.webkit.org/show_bug.cgi?id=83878

Reviewed by Eric Seidel.

This test should only care that cuechange events are fired when the TextTrack
mode is set to HIDDEN or SHOWING.  Because the events are asynchronous, we
shouldn't test the order of them, just that they occur.

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

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

8 years ago[V8] Move context() from V8Proxy to ScriptController
haraken@chromium.org [Wed, 22 Aug 2012 22:52:16 +0000 (22:52 +0000)]
[V8] Move context() from V8Proxy to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=94593

Reviewed by Adam Barth.

Source/WebCore:

- This patch removes V8Proxy::context(Frame*).
- This patch moves V8Proxy::context() to ScriptController::context().
- This patch renames ScriptController::context() to ScriptController::currentWorldContext(),
for naming consistency with ScriptController::maintWorldContext().

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateToV8Converters):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::context):
(WebCore):
* bindings/v8/ScriptController.h:
(ScriptController):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::setNamedHiddenWindowReference):
* bindings/v8/V8Proxy.cpp:
* bindings/v8/V8Proxy.h:
(V8Proxy):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::WindowSetTimeoutImpl):
(WebCore::V8DOMWindow::eventAccessorGetter):
(WebCore::V8DOMWindow::eventAccessorSetter):
(WebCore::DialogHandler::dialogCreated):
(WebCore::toV8):
* bindings/v8/custom/V8HTMLDocumentCustom.cpp:
(WebCore::V8HTMLDocument::openCallback):

Source/WebKit/chromium:

To kill V8Proxy, we can move context() from V8Proxy to ScriptController.

No tests. No change in behavior.

* src/InspectorFrontendClientImpl.cpp:
(WebKit::InspectorFrontendClientImpl::windowObjectCleared):
* src/WebDevToolsFrontendImpl.cpp:
(WebKit::WebDevToolsFrontendImpl::dispatchOnInspectorFrontend):

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

8 years ago[V8] Remove V8Proxy from V8DOMWrapper::instantiateV8Object()
haraken@chromium.org [Wed, 22 Aug 2012 22:44:33 +0000 (22:44 +0000)]
[V8] Remove V8Proxy from V8DOMWrapper::instantiateV8Object()
https://bugs.webkit.org/show_bug.cgi?id=94713

Reviewed by Adam Barth.

To kill V8Proxy, V8DOMWrapper::instantiateV8Object() should receive Frame*
instead of V8Proxy*.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateToV8Converters):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::V8Float64Array::wrapSlow):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::V8TestCustomNamedGetter::wrapSlow):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::V8TestEventTarget::wrapSlow):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::V8TestException::wrapSlow):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::V8TestInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::wrapSlow):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::V8TestObj::wrapSlow):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore):
(WebCore::V8DOMWrapper::instantiateV8Object):
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):

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

8 years agoIndexedDB: IDBRequest can be destructed during abort
jsbell@chromium.org [Wed, 22 Aug 2012 22:28:56 +0000 (22:28 +0000)]
IndexedDB: IDBRequest can be destructed during abort
https://bugs.webkit.org/show_bug.cgi?id=94618

Reviewed by Tony Chang.

If there are no script references, an IDBRequest could be kept alive
only by enqueued events. On document destruction, the parent transaction
is aborted, which aborts the request. During the abort, the enqueued events
are deleted, releasing the last reference to the IDBRequest which then
destructs in mid-method call and an "unfinished" state, hitting an assert.

This patch keeps the IDBRequest alive through the completion of the abort()
method, which will enqueue another event. In the document destruction case,
this will end up with the IDBRequest having stop() called on it which will
send the IDBRequest into EarlyDeath state, satisfying the destructor assert.

Addresses existing layout tests that behave flakily in Chromium port.

* Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::abort):

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

8 years ago[V8] Move precompileScript() from V8Proxy to ScriptSourceCode
haraken@chromium.org [Wed, 22 Aug 2012 22:27:45 +0000 (22:27 +0000)]
[V8] Move precompileScript() from V8Proxy to ScriptSourceCode
https://bugs.webkit.org/show_bug.cgi?id=94701

Reviewed by Adam Barth.

To kill V8Proxy, we can move precompileScript() from V8Proxy
to ScriptSourceCode.

No tests. No change in behavior.

* bindings/v8/ScriptSourceCode.cpp:
(WebCore::ScriptSourceCode::precompileScript):
(WebCore):
* bindings/v8/ScriptSourceCode.h:
(ScriptSourceCode):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::evaluate):
* bindings/v8/V8Proxy.h:
(V8Proxy):

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

8 years agoReduce Font.h includes across project -- improves RenderObject.h compile time
commit-queue@webkit.org [Wed, 22 Aug 2012 22:25:59 +0000 (22:25 +0000)]
Reduce Font.h includes across project -- improves RenderObject.h compile time
https://bugs.webkit.org/show_bug.cgi?id=93629

Patch by Nikhil Bhargava <nbhargava@google.com> on 2012-08-22
Reviewed by Eric Seidel.

Source/WebCore:

RenderStyle.h no longer depends on Font.h. The files that transitively
need to be updated with proper includes are fixed.

No new tests. Functionality should remain the same.

* accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
* bindings/objc/DOM.mm:
* css/CSSComputedStyleDeclaration.cpp:
* css/CSSPrimitiveValue.cpp:
* css/StyleResolver.h:
* dom/CharacterData.cpp:
* dom/ElementRareData.h:
* dom/NodeRenderingContext.cpp:
* dom/Text.cpp:
* editing/TextIterator.cpp:
* editing/mac/EditorMac.mm:
* html/HTMLTitleElement.cpp:
* html/shadow/TextControlInnerElements.cpp:
* inspector/InspectorOverlay.cpp:
* page/ContextMenuController.cpp:
* page/PrintContext.cpp:
* platform/efl/RenderThemeEfl.cpp:
* platform/graphics/FontMetrics.h:
* platform/gtk/RenderThemeGtk.cpp:
* platform/gtk/RenderThemeGtk2.cpp:
* platform/mac/HTMLConverter.mm:
* rendering/EllipsisBox.cpp:
* rendering/FlowThreadController.cpp:
* rendering/InlineBox.cpp:
* rendering/InlineFlowBox.cpp:
* rendering/InlineFlowBox.h:
(WebCore):
* rendering/RenderButton.cpp:
* rendering/RenderCombineText.cpp:
* rendering/RenderCombineText.h:
* rendering/RenderDeprecatedFlexibleBox.cpp:
* rendering/RenderEmbeddedObject.h:
(WebCore):
* rendering/RenderFileUploadControl.cpp:
* rendering/RenderFullScreen.h:
* rendering/RenderImage.cpp:
* rendering/RenderInline.cpp:
* rendering/RenderListItem.cpp:
* rendering/RenderListMarker.cpp:
* rendering/RenderMultiColumnBlock.cpp:
* rendering/RenderRegion.h:
* rendering/RenderRuby.cpp:
* rendering/RenderRubyRun.cpp:
* rendering/RenderScrollbar.cpp:
* rendering/RenderTable.cpp:
* rendering/RenderTableCell.cpp:
* rendering/RenderTableRow.cpp:
* rendering/RenderTableSection.cpp:
* rendering/RenderTextControl.cpp:
* rendering/RenderTextControlMultiLine.cpp:
* rendering/RenderThemeChromiumSkia.cpp:
* rendering/RenderView.cpp:
* rendering/TextAutosizer.cpp:
* rendering/mathml/RenderMathMLBlock.h:
* rendering/style/KeyframeList.h:
* rendering/style/RenderStyle.cpp:
* rendering/style/RenderStyle.h:
(WebCore):
* rendering/style/StyleInheritedData.cpp:
* rendering/svg/RenderSVGBlock.cpp:
* rendering/svg/RenderSVGInlineText.h:
* svg/SVGLengthContext.cpp:
* svg/SVGTRefElement.cpp:

Source/WebKit/chromium:

Adds includes due to change in RenderStyle.h

* src/WebFrameImpl.cpp:
* src/mac/WebSubstringUtil.mm:

Source/WebKit/win:

Adds includes due to change in RenderStyle.h

* DOMCoreClasses.cpp:

Source/WebKit2:

Adds includes due to change in RenderStyle.h

* WebProcess/WebPage/mac/WebPageMac.mm:

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

8 years agoTest cases under fast/filesystem/workers are flaky when using JSC
commit-queue@webkit.org [Wed, 22 Aug 2012 22:23:12 +0000 (22:23 +0000)]
Test cases under fast/filesystem/workers are flaky when using JSC
https://bugs.webkit.org/show_bug.cgi?id=94747

Patch by Leo Yang <leoyang@rim.com> on 2012-08-22
Reviewed by Yong Li.

These test cases sometimes can't complete because the worker object
created by startWorker() has been gc'ed before the worker thread complete.
We should reference the object to avoid it being gc'ed.

* fast/filesystem/workers/async-operations.html:
* fast/filesystem/workers/file-entry-to-uri-sync.html:
* fast/filesystem/workers/file-from-file-entry-sync.html:
* fast/filesystem/workers/file-from-file-entry.html:
* fast/filesystem/workers/file-writer-empty-blob.html:
* fast/filesystem/workers/file-writer-events.html:
* fast/filesystem/workers/file-writer-gc-blob.html:
* fast/filesystem/workers/file-writer-sync-truncate-extend.html:
* fast/filesystem/workers/file-writer-sync-write-overlapped.html:
* fast/filesystem/workers/file-writer-truncate-extend.html:
* fast/filesystem/workers/file-writer-write-overlapped.html:
* fast/filesystem/workers/simple-persistent-sync.html:
* fast/filesystem/workers/simple-persistent.html:
* fast/filesystem/workers/simple-temporary-sync.html:
* fast/filesystem/workers/simple-temporary.html:
* fast/filesystem/workers/sync-operations.html:

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

8 years agowin64 compile error fix for BinaryPropertyList.cpp
commit-queue@webkit.org [Wed, 22 Aug 2012 22:01:55 +0000 (22:01 +0000)]
win64 compile error fix for BinaryPropertyList.cpp
https://bugs.webkit.org/show_bug.cgi?id=94122

Patch by Alex Christensen <alex.christensen@flexsim.com> on 2012-08-22
Reviewed by Eric Seidel.

Fixed compile errors for MSVC x64 without changing performance

* platform/cf/BinaryPropertyList.cpp:
(WebCore::BinaryPropertyListSerializer::appendStringObject):

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

8 years agoDon't unconditionally define NOMINMAX on Windows
commit-queue@webkit.org [Wed, 22 Aug 2012 21:55:25 +0000 (21:55 +0000)]
Don't unconditionally define NOMINMAX on Windows
https://bugs.webkit.org/show_bug.cgi?id=94742

Patch by Scott Graham <scottmg@chromium.org> on 2012-08-22
Reviewed by Adrienne Walker.

Avoids a warning when building on Windows when NOMINMAX is defined
elsewhere or on the command line.

* TestWebKitAPI/config.h:

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

8 years agoHTMLTreeBuilder::furthestBlockForFormattingElement should belong to HTMLElementStack
commit-queue@webkit.org [Wed, 22 Aug 2012 21:55:10 +0000 (21:55 +0000)]
HTMLTreeBuilder::furthestBlockForFormattingElement should belong to HTMLElementStack
https://bugs.webkit.org/show_bug.cgi?id=93857

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-08-22
Reviewed by Eric Seidel.

HTMLTreeBuilder::furthestBlockForFormattingElement should belong to
HTMLElementStack because it traverses the element stack and finds the
furthest block for the given formatting element.

Currently, it belongs to HTMLTreeBuilder just because
isSpecialNode(const HTMLStackItem*) function used by
furthestBlockForFormattingElement is internal to HTMLTreeBuilder.

Moved isSpecialNode to HTMLStackItem and changed
furthestBlockForFormattingElement to be a method of HTMLElementStack.

No behavior change. Just a refactoring.

* html/parser/HTMLElementStack.cpp:
(WebCore):
(WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped):
(WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
(WebCore::HTMLElementStack::furthestBlockForFormattingElement):
* html/parser/HTMLElementStack.h:
(HTMLElementStack):
* html/parser/HTMLStackItem.h:
(WebCore::HTMLStackItem::isInHTMLNamespace):
(HTMLStackItem):
(WebCore::HTMLStackItem::isNumberedHeaderElement):
(WebCore::HTMLStackItem::isTableBodyContextElement):
(WebCore::HTMLStackItem::isSpecialNode):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken):
(WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
(WebCore::HTMLTreeBuilder::processStartTagForInBody):
(WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
(WebCore::HTMLTreeBuilder::shouldProcessTokenInForeignContent):
(WebCore::HTMLTreeBuilder::processTokenInForeignContent):
* html/parser/HTMLTreeBuilder.h:

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

8 years agoSeparate MarkStackThreadSharedData from MarkStack
mhahnenberg@apple.com [Wed, 22 Aug 2012 21:49:16 +0000 (21:49 +0000)]
Separate MarkStackThreadSharedData from MarkStack
https://bugs.webkit.org/show_bug.cgi?id=94294

Reviewed by Filip Pizlo.

MarkStackThreadSharedData is soon going to have data to allow for a parallel copying
mode too, so to separate our concerns we should split it out into its own set of files
and rename it to GCThreadSharedData. For now this is purely a cosmetic refactoring.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* heap/GCThreadSharedData.cpp: Added.
(JSC):
(JSC::GCThreadSharedData::resetChildren):
(JSC::GCThreadSharedData::childVisitCount):
(JSC::GCThreadSharedData::markingThreadMain):
(JSC::GCThreadSharedData::markingThreadStartFunc):
(JSC::GCThreadSharedData::GCThreadSharedData):
(JSC::GCThreadSharedData::~GCThreadSharedData):
(JSC::GCThreadSharedData::reset):
* heap/GCThreadSharedData.h: Added.
(JSC):
(GCThreadSharedData):
* heap/Heap.h:
(Heap):
* heap/ListableHandler.h:
(ListableHandler):
* heap/MarkStack.cpp:
(JSC::MarkStack::MarkStack):
(JSC::MarkStack::~MarkStack):
* heap/MarkStack.h:
(JSC):
(MarkStack):
(JSC::MarkStack::sharedData):
* heap/MarkStackInlineMethods.h: Added.
(JSC):
(JSC::MarkStack::append):
(JSC::MarkStack::appendUnbarrieredPointer):
(JSC::MarkStack::appendUnbarrieredValue):
(JSC::MarkStack::internalAppend):
(JSC::MarkStack::addWeakReferenceHarvester):
(JSC::MarkStack::addUnconditionalFinalizer):
(JSC::MarkStack::addOpaqueRoot):
(JSC::MarkStack::containsOpaqueRoot):
(JSC::MarkStack::opaqueRootCount):
* heap/SlotVisitor.h:
(JSC):
(SlotVisitor):
(JSC::SlotVisitor::SlotVisitor):

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

8 years agoREGRESSION(r126189): Reftest mismatches are (again) run through ImageDiff with 0...
zandobersek@gmail.com [Wed, 22 Aug 2012 21:42:38 +0000 (21:42 +0000)]
REGRESSION(r126189): Reftest mismatches are (again) run through ImageDiff with 0.1 tolerance
https://bugs.webkit.org/show_bug.cgi?id=94704

Reviewed by Dirk Pranke.

Use tolerance=0 when acquiring diff image of reftest output.

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._compare_output_with_reference):

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

8 years agoSpeed up compilation of tests involving WebTransformationMatrix
commit-queue@webkit.org [Wed, 22 Aug 2012 21:29:05 +0000 (21:29 +0000)]
Speed up compilation of tests involving WebTransformationMatrix
https://bugs.webkit.org/show_bug.cgi?id=94639

Patch by Nikhil Bhargava <nbhargava@google.com> on 2012-08-22
Reviewed by James Robinson.

EXPECT_TRANSFORMATION_MATRIX_EQ was changed to become mainly a function.
As a macro that expanded into 16 other macros, it caused an unneeded
slow down of close to 45s in the compile time of CCLayerTreeHostCommonTest
Bugs have been filed to clang and gcc noting the errant behavior:
http://llvm.org/bugs/show_bug.cgi?id=13651 and http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54337

* tests/CCLayerTreeHostCommonTest.cpp:
* tests/CCLayerTreeTestCommon.h:
(WebKitTests):
(WebKitTests::ExpectTransformationMatrixEq):
* tests/WebTransformOperationsTest.cpp:
(TEST):
(checkProgress):
* tests/WebTransformationMatrixTest.cpp:
(WebKit::TEST):

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

8 years ago[chromium] Add software bitmap resources to CCResourceProvider
commit-queue@webkit.org [Wed, 22 Aug 2012 21:26:45 +0000 (21:26 +0000)]
[chromium] Add software bitmap resources to CCResourceProvider
https://bugs.webkit.org/show_bug.cgi?id=93677

Patch by Alexandre Elias <aelias@google.com> on 2012-08-22
Reviewed by Adrienne Walker.

Second commit after revert.

This adds the ability to CCResourceProvider to use software bitmaps.
They are allocated as plain-old-memory, and exposed as Skia objects.

We want the ResourceProvider to be able to handle different resource
types at the same time.  In practice, a default resource type is
desired for most uses within a single compositor instance, which is
specified by the default resource type.  Default resource types are
expected to be mostly 1-to-1 with CCRenderer types.

New tests added by parametrizing existing CCResourceProvider tests.

Source/WebCore:

* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::applyFilters):
(WebCore::LayerRendererChromium::drawRenderPassQuad):
(WebCore::LayerRendererChromium::drawTileQuad):
(WebCore::LayerRendererChromium::drawYUVVideoQuad):
(WebCore::LayerRendererChromium::drawTextureQuad):
(WebCore::LayerRendererChromium::getFramebufferTexture):
(WebCore::LayerRendererChromium::bindFramebufferToTexture):
* platform/graphics/chromium/LayerRendererChromium.h:
(DrawingFrame):
* platform/graphics/chromium/cc/CCResourceProvider.cpp:
(WebCore::CCResourceProvider::createResource):
(WebCore):
(WebCore::CCResourceProvider::createGLTexture):
(WebCore::CCResourceProvider::createBitmap):
(WebCore::CCResourceProvider::createResourceFromExternalTexture):
(WebCore::CCResourceProvider::deleteResource):
(WebCore::CCResourceProvider::upload):
(WebCore::CCResourceProvider::flush):
(WebCore::CCResourceProvider::shallowFlushIfSupported):
(WebCore::CCResourceProvider::lockForRead):
(WebCore::CCResourceProvider::unlockForRead):
(WebCore::CCResourceProvider::lockForWrite):
(WebCore::CCResourceProvider::unlockForWrite):
(WebCore::CCResourceProvider::ScopedReadLockGL::ScopedReadLockGL):
(WebCore::CCResourceProvider::ScopedReadLockGL::~ScopedReadLockGL):
(WebCore::CCResourceProvider::ScopedWriteLockGL::ScopedWriteLockGL):
(WebCore::CCResourceProvider::ScopedWriteLockGL::~ScopedWriteLockGL):
(WebCore::CCResourceProvider::populateSkBitmapWithResource):
(WebCore::CCResourceProvider::ScopedReadLockSoftware::ScopedReadLockSoftware):
(WebCore::CCResourceProvider::ScopedReadLockSoftware::~ScopedReadLockSoftware):
(WebCore::CCResourceProvider::ScopedWriteLockSoftware::ScopedWriteLockSoftware):
(WebCore::CCResourceProvider::ScopedWriteLockSoftware::~ScopedWriteLockSoftware):
(WebCore::CCResourceProvider::CCResourceProvider):
* platform/graphics/chromium/cc/CCResourceProvider.h:
(WebCore):
(WebCore::CCResourceProvider::setCreationPolicy):
(WebCore::CCResourceProvider::creationPolicy):
(CCResourceProvider):
(ScopedReadLockGL):
(WebCore::CCResourceProvider::ScopedReadLockGL::textureId):
(ScopedWriteLockGL):
(WebCore::CCResourceProvider::ScopedWriteLockGL::textureId):
(ScopedReadLockSoftware):
(WebCore::CCResourceProvider::ScopedReadLockSoftware::skBitmap):
(ScopedWriteLockSoftware):
(WebCore::CCResourceProvider::ScopedWriteLockSoftware::skCanvas):
(Resource):

Source/WebKit/chromium:

* tests/CCResourceProviderTest.cpp:
(WebKit::CCResourceProviderTest::getResourcePixels):

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

8 years agoUpdate the TextTrackCue Constructor
annacc@chromium.org [Wed, 22 Aug 2012 21:24:29 +0000 (21:24 +0000)]
Update the TextTrackCue Constructor
https://bugs.webkit.org/show_bug.cgi?id=88583

Reviewed by Eric Carlson.

The TextTrackCue constructor has been changed to:
[Constructor(double startTime, double endTime, DOMString text)]
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#texttrackcue

Source/WebCore:

No new tests.  Update to media/track/track-add-remove-cue.html

* html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::TextTrackCue):
* html/track/TextTrackCue.h:
(WebCore::TextTrackCue::create):
(TextTrackCue):
* html/track/TextTrackCue.idl:
* html/track/WebVTTParser.cpp:
(WebCore::WebVTTParser::createNewCue):

LayoutTests:

* media/track/track-add-remove-cue-expected.txt:
* media/track/track-add-remove-cue.html:

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

8 years agoChanging class attribute is not reflected in the classList property
arv@chromium.org [Wed, 22 Aug 2012 21:19:29 +0000 (21:19 +0000)]
Changing class attribute is not reflected in the classList property
https://bugs.webkit.org/show_bug.cgi?id=93665

Reviewed by Ojan Vafai.

Before this change classAttributeChanged was only called for StyledElement. With this refactoring
it gets called for all Elements when the class attribute changes.

Source/WebCore:

Test: fast/dom/Element/class-list-update.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRules): To match the old behavior we only include StyledElements.
* dom/ClassNodeList.cpp:
(WebCore::ClassNodeList::nodeMatches): Ditto.
* dom/Element.cpp:
(WebCore::Element::attributeChanged): Moved the call to parseAttribute here, from StyledElement::attributeChanged.
(WebCore::Element::parseAttribute): Moved from StyledElement.
(WebCore):
(WebCore::Element::classAttributeChanged): Ditto.
* dom/Element.h:
(Element):
(WebCore::Element::classNames): Ditto.
(WebCore):
* dom/StyledElement.cpp:
(WebCore::StyledElement::attributeChanged): Let Element::attributeChanged call parseAttribtue instead.
(WebCore::StyledElement::parseAttribute): Move the class attribute handling to Element::parseAttribute.
* dom/StyledElement.h:
(StyledElement):

LayoutTests:

* fast/dom/Element/class-list-update-expected.txt: Added.
* fast/dom/Element/class-list-update.html: Added.

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

8 years ago[V8] Replace v8::String::NewSymbol() in CodeGeneratorV8.pm with v8String()
haraken@chromium.org [Wed, 22 Aug 2012 21:14:11 +0000 (21:14 +0000)]
[V8] Replace v8::String::NewSymbol() in CodeGeneratorV8.pm with v8String()
https://bugs.webkit.org/show_bug.cgi?id=94588

Reviewed by Eric Seidel.

v8String() is faster than String::NewSymbol().
This patch implements v8String(char*, Isolate*) and
replaces String::NewSymbol(char*) in CodeGeneratorV8.pm
with v8String(char*, Isolate*).

Performance result:

// 272 nano sec
static v8::Handle<v8::Value> attr3AttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
{
    v8::Handle<v8::Value> v1 = v8String(String("foo"));
    v8::Handle<v8::Value> v2 = v8String(String("bar"));
    if (!v1.IsEmpty() && !v2.IsEmpty())
        return v8Undefined();
    return v8::Null(); // Never reach.
}

// 377 nano sec
static v8::Handle<v8::Value> attr4AttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
{
    v8::Handle<v8::Value> v1 = v8::String::NewSymbol("foo");
    v8::Handle<v8::Value> v2 = v8::String::NewSymbol("bar");
    if (!v1.IsEmpty() && !v2.IsEmpty())
        return v8Undefined();
    return v8::Null(); // Never reach.
}

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateNamedConstructorCallback):
(GenerateNonStandardFunction):
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::ConfigureV8Float64ArrayTemplate):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::ConfigureV8TestEventTargetTemplate):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::ConfigureV8TestInterfaceTemplate):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextProperties):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetter):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetter):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetter):
* bindings/v8/V8Binding.h:
(WebCore):
(WebCore::v8String):
* html/HTMLDivElement.idl:

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

8 years ago[Chromium] Need baselines for new paged-x and paged-y tests in fast/overflow after...
kbr@google.com [Wed, 22 Aug 2012 21:05:51 +0000 (21:05 +0000)]
[Chromium] Need baselines for new paged-x and paged-y tests in fast/overflow after r126343
https://bugs.webkit.org/show_bug.cgi?id=94748

Unreviewed gardening; suppressing new failures until baselines are generated.

* platform/chromium/TestExpectations:

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

8 years agoSetting WebKitEnableHTTPPipelining doesn't work if default is true
psolanki@apple.com [Wed, 22 Aug 2012 20:57:06 +0000 (20:57 +0000)]
Setting WebKitEnableHTTPPipelining doesn't work if default is true
https://bugs.webkit.org/show_bug.cgi?id=94537

Reviewed by David Kilzer.

* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::initializeMaximumHTTPConnectionCountPerHost): Read in the HTTP pipelining pref and
allow it to override the default pipelining behavior if it was actually set.

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

8 years ago[chromium] Add touch link highlight animation layers.
wjmaclean@chromium.org [Wed, 22 Aug 2012 20:47:56 +0000 (20:47 +0000)]
[chromium] Add touch link highlight animation layers.
https://bugs.webkit.org/show_bug.cgi?id=84487

Reviewed by James Robinson.

Adds support for creating composited touch link highlights in renderer thread. Clipping not yet
implemented for non-composited frames/overflow divs, but scrolling and layout changes are supported.
Transform support currently limited to translation.

Source/WebCore:

Unit tests for LinkHighlight revised.

Tests: platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-clipped.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scroll-clip.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-clipped.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-clipped.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-rotated.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-scaledX.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-scaledY.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll.html
       platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple.html

* WebCore.gypi:
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::willBeDestroyed): Adds notification to LinkHighlight when layer goes away.
(WebCore::GraphicsLayerChromium::updateNames): Now sets debug name for LinkHighlight layer.
(WebCore::GraphicsLayerChromium::setSize): Invalidates LinkHighlight if present.
(WebCore::GraphicsLayerChromium::setNeedsDisplay): Invalidates LinkHighlight if present.
(WebCore::GraphicsLayerChromium::setNeedsDisplayInRect): Invalidates LinkHighlight if present.
(WebCore::GraphicsLayerChromium::setLinkHighlight): Registers LinkHighlightClient* with GraphicsLayerChromium.
(WebCore::GraphicsLayerChromium::updateChildList): Now adds LinkHighlight WebLayer if highlight active.
(WebCore::GraphicsLayerChromium::updateLayerIsDrawable): Invalidates LinkHighlight if present.
* platform/graphics/chromium/GraphicsLayerChromium.h:
(WebCore):
(LinkHighlightClient): Abstract interface seen by GraphicsLayerChromium.
(WebCore::LinkHighlightClient::~LinkHighlightClient):
(GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::linkHighlight):
* platform/graphics/chromium/LinkHighlight.cpp: Removed.

Source/WebKit/chromium:

Unit tests for LinkHighlight revised.

* WebKit.gyp:
* src/LinkHighlight.cpp: Added.
(WebKit):
(WebKit::LinkHighlight::create):
(WebKit::LinkHighlight::LinkHighlight):
(WebKit::LinkHighlight::~LinkHighlight):
(WebKit::LinkHighlight::contentLayer): Accessor for layer containing highlight.
(WebKit::LinkHighlight::clipLayer): Accessor for layer that provides clipping for highlight.
(WebKit::LinkHighlight::releaseResources): Releases Node* for highlight target, clears client/delegate pointers.
(WebKit::LinkHighlight::computeEnclosingCompositingLayer): Determines which GraphicsLayerChromium to attach highlight to.
(WebKit::LinkHighlight::computeHighlightLayerPathAndPosition): Determines coordinates of highlight in owning GraphicsLayerChromium's coordinates.
(WebKit::LinkHighlight::paintContents): If highlight active, paints highlight.
(WebKit::LinkHighlight::startHighlightAnimation): Called to start highlight animation.
(WebKit::LinkHighlight::clearGraphicsLayerLinkHighlightPointer): Removes this LinkHighlight's pointer from owning GraphicsLayerChromium.
(WebKit::LinkHighlight::notifyAnimationStarted): Implements WebAnimationDelegate.
(WebKit::LinkHighlight::notifyAnimationFinished): Implements WebAnimationDelegate, releases resources when animation completes.
(WebKit::LinkHighlight::updateGeometry): Invokes computation of which GraphicsLayerChromium to attach to, and highlight shape & position.
    Computations proceed only if preceded by call to invalidate().
(WebKit::LinkHighlight::clearCurrentGraphicsLayer): Handles notification that current GraphicsLayerChromium* is no longer valid.
(WebKit::LinkHighlight::invalidate): Sets flag to allow geometry update on next call from WebViewImpl::layout().
(WebKit::LinkHighlight::layer): Exports WebLayer* for use in GraphicsLayerChromium.
* src/LinkHighlight.h: Renamed from Source/WebCore/platform/graphics/chromium/LinkHighlight.h.
(WebCore):
(WebKit):
(LinkHighlight):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleGestureEvent):
(WebKit):
(WebKit::highlightConditions):
(WebKit::WebViewImpl::bestTouchLinkNode): Find highlight target node for touch event location.
(WebKit::WebViewImpl::enableTouchHighlight): Invokes highlight for node at current touch event location.
(WebKit::WebViewImpl::layout): Adds call to LinkHighlight::updateGeometry().
* src/WebViewImpl.h:
(WebKit):
(WebViewImpl):
(WebKit::WebViewImpl::linkHighlight):
* tests/LinkHighlightTest.cpp:
(WebCore):
(WebCore::TEST):
* tests/data/test_touch_link_highlight.html: Added.

LayoutTests:

* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll.html: Added.
* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple.html: Added.
* platform/chromium-linux/compositing/gestures/resources/1-frame-composited.html: Added.
* platform/chromium-linux/compositing/gestures/resources/1-frame-noncomposited.html: Added.
* platform/chromium-linux/compositing/gestures/resources/1-nested-frame-composited.html: Added.
* platform/chromium-linux/compositing/gestures/resources/1-nested-frame-noncomposited.html: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-expected.txt: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll-expected.txt: Added.
* platform/chromium/TestExpectations:

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

8 years agoWebWidget should be able to paint into a zoomed canvas without aliasing
abarth@webkit.org [Wed, 22 Aug 2012 20:24:56 +0000 (20:24 +0000)]
WebWidget should be able to paint into a zoomed canvas without aliasing
https://bugs.webkit.org/show_bug.cgi?id=92043

Reviewed by James Robinson.

If accelerated compositing is enabled, WebWidget::paint reads back from
the compositor rather than re-painting the widget. That approach works
well if the canvas we're rendering into is at a similar resolution to
the pixels in the compositor, but if the canvas has been scaled (e.g.,
to help the user disambiguate links), then reading back from the
compositor will cause aliasing artifacts.

This patch adds an option to paint to let the embedder request a
software re-rendering of the widget to avoid these aliasing artifacts.

* public/WebWidget.h:
(WebKit::WebWidget::paint):
* src/WebPagePopupImpl.cpp:
(WebKit::WebPagePopupImpl::paint):
* src/WebPagePopupImpl.h:
(WebPagePopupImpl):
* src/WebPopupMenuImpl.cpp:
(WebKit::WebPopupMenuImpl::paint):
* src/WebPopupMenuImpl.h:
* src/WebViewImpl.cpp:
(WebKit::canvasBackgroundForTransparencey):
(WebKit):
(WebKit::WebViewImpl::paint):
* src/WebViewImpl.h:
(WebViewImpl):

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

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=94401
bdakin@apple.com [Wed, 22 Aug 2012 20:20:14 +0000 (20:20 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=94401
Add support for making a web site become paginated using overflow:
paged-x | paged-y
-and corresponding-
<rdar://problem/11831783>

Reviewed by Dave Hyatt.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

This patch adds two new possible values for overflow-y. They are -
webkit-paged-x and -webkit-paged-y. When you set these as overflow-y
values on the html or body element, they make the RenderView
paginated, much like the API on Page.

-webkit-paged-x and -webkit-paged-y are only valid values for
overflow-y, NOT overflow-x. overflow-x defaults to a value of auto
(for now) unless it has been set to something else.
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::CSSParser::parseValue):

Two new CSS value keywords.
* css/CSSValueKeywords.in:

EOverflow has two new values for pagination.
* rendering/style/RenderStyleConstants.h:
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EOverflow):

A bunch of existing code from StyleResolver::styleForDocument() is
moved into a helper function so that it can be called from two
places.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):

Even though this pagination is very similar to Page::pagination(), it
is different in one critical way. Page::pagination() will apply to
all FrameViews, even those in the page cache. For this reason,
FrameView needs to keep its own Pagination value that just applies to
this FrameView.
* page/FrameView.cpp:
* page/FrameView.h:
(WebCore):
(FrameView):

Map RenderStyle values to a Pagination::Mode.
(WebCore::paginationModeForRenderStyle):
(WebCore):

Account for paged-x and paged-y here.
(WebCore::FrameView::applyOverflowToViewport):

As is explained in the header, FrameView::pagination() will return
m_pagination if it has been set. Otherwise, it will return
Page::pagination() since currently there are no callers that need to
distinguish between the two.
(WebCore::FrameView::pagination):
(WebCore::FrameView::setPagination):

Generally this means that everywhere in WebCore should ask FrameView
for the pagination(), not Page. These call sites all look to
FrameView now.
(WebCore::FrameView::paintContents):
* rendering/RenderView.cpp:
(WebCore::RenderView::requiresColumns):
(WebCore::RenderView::calcColumnWidth):
(WebCore::RenderView::paginationUnit):
(WebCore::RenderView::viewLogicalHeight):

Since we need to define Pagination in Page.h AND FrameView.h, it is
now in its own header, Pagination.h. And therefore it is no longer
WebCore::Page::Pagination, but rather it is just WebCore::Pagination.
* page/Page.h:
(Page):
* rendering/Pagination.h: Added.
(WebCore):
(WebCore::Pagination::Pagination):
(Pagination):
(WebCore::Pagination::operator==):
(WebCore::Pagination::operator!=):
* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:

Certain ColumnInfo values are set based on the RenderStyle. So if
those RenderStyle values change, the ColumnInfo needs to be updated.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateColumnInfoFromStyle):
(WebCore):
* rendering/RenderBlock.h:
(RenderBlock):

Factor in paged-x and paged-y when determining if a RenderBlock
requires columns.
(WebCore::RenderBlock::requiresColumns):

RenderStyle::specifiesColumns() is an odd and probably broken
function. At the very least, it should be re-named, if not removed
entirely. It does not accurately assess if columns have been
specified. I had to add this code here because specifiesColumns()
returns false for paged-x and true for paged-y. We were hitting a
number of crashes with paged-y because of this, so I chose for the
time being to limit this check to non-root layers.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::shouldBeNormalFlowOnly):

It's just Pagination now, not Page::Pagination.
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::reset):
(WebCore::InternalSettings::setPagination):

Source/WebKit/mac:

WebCore::Page::Pagination is now just WebCore::Pagination.
* WebView/WebView.mm:
(-[WebView _setPaginationMode:]):
(-[WebView _paginationMode]):
(-[WebView _setPaginationBehavesLikeColumns:]):
(-[WebView _setPageLength:]):
(-[WebView _setGapBetweenPages:]):

Source/WebKit2:

WebCore::Page::Pagination is now just WebCore::Pagination.
* Shared/WebPageCreationParameters.h:
(WebPageCreationParameters):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPaginationMode):
(WKPageGetPaginationMode):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setPaginationMode):
* UIProcess/WebPageProxy.h:
(WebPageProxy):
(WebKit::WebPageProxy::paginationMode):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setPaginationMode):
(WebKit::WebPage::setPaginationBehavesLikeColumns):
(WebKit::WebPage::setPageLength):
(WebKit::WebPage::setGapBetweenPages):
* WebProcess/WebPage/WebPage.h:
(WebPage):

LayoutTests:

Test the parsing of the two new values.
* fast/css/overflow-property-expected.txt:
* fast/css/overflow-property.html:

New tests.
* fast/overflow/paged-x-div.html: Added.
* fast/overflow/paged-x-on-root.html: Added.
* fast/overflow/paged-y-div.html: Added.
* fast/overflow/paged-y-on-root.html: Added.
* platform/mac/fast/overflow/paged-x-div-expected.png: Added.
* platform/mac/fast/overflow/paged-x-div-expected.txt: Added.
* platform/mac/fast/overflow/paged-x-on-root-expected.png: Added.
* platform/mac/fast/overflow/paged-x-on-root-expected.txt: Added.
* platform/mac/fast/overflow/paged-y-div-expected.png: Added.
* platform/mac/fast/overflow/paged-y-div-expected.txt: Added.
* platform/mac/fast/overflow/paged-y-on-root-expected.png: Added.
* platform/mac/fast/overflow/paged-y-on-root-expected.txt: Added.

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

8 years ago[WebGL] Mac/ATI/AMD systems need to translate built-in GLSL functions
dino@apple.com [Wed, 22 Aug 2012 20:14:08 +0000 (20:14 +0000)]
[WebGL] Mac/ATI/AMD systems need to translate built-in GLSL functions
https://bugs.webkit.org/show_bug.cgi?id=94030

Reviewed by Tim Horton.

ATI/AMD GPUs on Apple platforms do not give correct values for some of
the built-in GLSL functions. Add a compile flag that is passed to ANGLE
so that, with this configuration, it will rewrite the shader to emulate
the function in code.

This is exposing some design weaknesses in the way we call ANGLE. We'll
soon need to add more compiler flags; Future bugs will likely clean
this code up. But this approach is satisfactory for the moment.

This change is tested by the Khronos WebGL conformance test suite, in particular:
conformance/glsl/functions/glsl-function-distance.html
conformance/glsl/functions/glsl-function-dot.html
conformance/glsl/functions/glsl-function-length.html

* platform/graphics/ANGLEWebKitBridge.cpp:
(WebCore::ANGLEWebKitBridge::validateShaderSource): Test for ATI cards
on the Mac platform, and pass in an extra flag to the translation step.
* platform/graphics/ANGLEWebKitBridge.h:
(ANGLEWebKitBridge): Add a new parameter to getTranslatedShaderSourceANGLE
that accepts some extra options to pass to ANGLE.
* platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
(WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): Pass
the extra options into ANGLE's compile function.

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

8 years ago[chromium] MediaStream API: Add MockWebRTCPeerConnectionHandler
tommyw@google.com [Wed, 22 Aug 2012 19:55:34 +0000 (19:55 +0000)]
[chromium] MediaStream API: Add MockWebRTCPeerConnectionHandler
https://bugs.webkit.org/show_bug.cgi?id=93091

Reviewed by Adam Barth.

Source/WebCore:

Fixing a FIXME that the patch obsoletes.

Covered by existing tests.

* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
(WebCore::RTCPeerConnectionHandlerChromium::initialize):

Tools:

Add a skeleton MockWebRTCPeerConnectionHandler to DumpRenderTree,
to complete the infrastructure for RTCPeerConnection.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/MockWebKitPlatformSupport.cpp:
(MockWebKitPlatformSupport::createRTCPeerConnectionHandler):
* DumpRenderTree/chromium/MockWebKitPlatformSupport.h:
(MockWebKitPlatformSupport):
* DumpRenderTree/chromium/MockWebMediaStreamCenter.cpp:
* DumpRenderTree/chromium/MockWebMediaStreamCenter.h:
* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp: Copied from Tools/DumpRenderTree/chromium/MockWebKitPlatformSupport.h.
(MockWebRTCPeerConnectionHandler::MockWebRTCPeerConnectionHandler):
(MockWebRTCPeerConnectionHandler::initialize):
* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h: Copied from Tools/DumpRenderTree/chromium/MockWebKitPlatformSupport.h.
(WebKit):
(MockWebRTCPeerConnectionHandler):
(MockWebRTCPeerConnectionHandler::MockWebRTCPeerConnectionHandler):

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

8 years ago[chromium] Simplify updateContentRect, removing rect parameter, refactor unit tests.
commit-queue@webkit.org [Wed, 22 Aug 2012 19:50:01 +0000 (19:50 +0000)]
[chromium] Simplify updateContentRect, removing rect parameter, refactor unit tests.
https://bugs.webkit.org/show_bug.cgi?id=94165

Patch by Eric Penner <epenner@google.com> on 2012-08-22
Reviewed by Adrienne Walker.

Source/WebCore:

Remove visible rect parameter from TiledLayerChromium functions. Passing a
rect that is not the visible rect wouldn't make sense, and soon we might
need further visibility information.

In refactoring the unit tests, I removed texture manager from all tests
and put it in the test class. I also made some utility functions to
simulate the commit flow and remove tons of boilerplate code. I refactored
about half the unit tests to use the utility functions.

Refactored tests.

* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::update):
(WebCore::ContentLayerChromium::needMoreUpdates):
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerChromium::update):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore):
(WebCore::TiledLayerChromium::setTexturePriorities):
(WebCore::TiledLayerChromium::resetUpdateState):
(WebCore::TiledLayerChromium::update):
(WebCore::TiledLayerChromium::needsIdlePaint):
(WebCore::TiledLayerChromium::idlePaintRect):
* platform/graphics/chromium/TiledLayerChromium.h:
(TiledLayerChromium):

Source/WebKit/chromium:

Refactored tests to remove lots of boilerplate code.

* tests/CCTiledLayerTestCommon.cpp:
* tests/CCTiledLayerTestCommon.h:
(FakeTiledLayerChromium):
* tests/TiledLayerChromiumTest.cpp:

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

8 years ago[BlackBerry] Make all pickers non-zoomable
commit-queue@webkit.org [Wed, 22 Aug 2012 19:38:45 +0000 (19:38 +0000)]
[BlackBerry] Make all pickers non-zoomable
https://bugs.webkit.org/show_bug.cgi?id=94729

Patch by Crystal Zhang <haizhang@rim.com> on 2012-08-22
Reviewed by Antonio Gomes.

Move HTML header initialization to PagePopupBlackBerry as that part are all the same, and make all pickers non-zoomable.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::screenSize):
(WebKit):
* Api/WebPage_p.h:
(WebPagePrivate):
* WebCoreSupport/DatePickerClient.cpp:
(WebCore::DatePickerClient::generateHTML):
(WebCore::DatePickerClient::writeDocument):
* WebCoreSupport/PagePopupBlackBerry.cpp:
(WebCore::PagePopupBlackBerry::init):
(WebCore::PagePopupBlackBerry::generateHTML):
(WebCore):
* WebCoreSupport/PagePopupBlackBerry.h:
(PagePopupBlackBerry):
* WebCoreSupport/SelectPopupClient.cpp:
(WebCore::SelectPopupClient::generateHTML):
(WebCore::SelectPopupClient::writeDocument):

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

8 years agoSkipping css3/flexbox/flexitem.html.
commit-queue@webkit.org [Wed, 22 Aug 2012 19:37:03 +0000 (19:37 +0000)]
Skipping css3/flexbox/flexitem.html.
https://bugs.webkit.org/show_bug.cgi?id=94723.

Patch by Mark Lam <mark.lam@apple.com> on 2012-08-22
Reviewed by Simon Fraser.

* platform/mac/Skipped:

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

8 years ago[BlackBerry] Add a check to filter out cookies that tries to set the
commit-queue@webkit.org [Wed, 22 Aug 2012 19:36:53 +0000 (19:36 +0000)]
[BlackBerry] Add a check to filter out cookies that tries to set the
domain to a top level domain
https://bugs.webkit.org/show_bug.cgi?id=94722

Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-08-22
Reviewed by Rob Buis.

Adding conditions to check whether a cookie domain is a top level domain.
If it is, throw it out when parsing.

Manual Testing by trying to insert a cookie with an invalid domain
using web-inspector. (ex: when on news.yahoo.com.hk, try to document.
cookie="test1=seeifthiscookieexist; domain=.com.hk")

PR121622

* platform/blackberry/CookieParser.cpp:
WebCore::CookieParser::parseOneCookie):

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

8 years agoRemove RenderBlock::paintEllipsisBoxes
rwlbuis@webkit.org [Wed, 22 Aug 2012 19:34:31 +0000 (19:34 +0000)]
Remove RenderBlock::paintEllipsisBoxes
https://bugs.webkit.org/show_bug.cgi?id=94709

Reviewed by Eric Seidel.

Remove unused method.

No change in functionality, no new tests.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintFloats):
* rendering/RenderBlock.h:
(RenderBlock):

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