WebKit-https.git
7 years agoStop shuttling PseudoId from StyleResolver to SelectorChecker.
dglazkov@chromium.org [Thu, 13 Sep 2012 16:33:04 +0000 (16:33 +0000)]
Stop shuttling PseudoId from StyleResolver to SelectorChecker.
https://bugs.webkit.org/show_bug.cgi?id=96431

Reviewed by Eric Seidel.

SelectorChecker retained extra state to store the PseudoId value of the element. It was sad, because we needed to explicitly maintain its integrity. Instead, we now just make it part of StyleResolver and feed to SelectorChecker as part of SelectorCheckingContext.

No new tests, refactoring only. Covered by existing tests.

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::SelectorChecker): Removed state initializer.
(WebCore::SelectorChecker::checkSelector): Changed to look into context, rather than own member.
* css/SelectorChecker.h:
(WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext): Added pseudoStyle as parameter.
(SelectorCheckingContext): Added pseudoStyle as member.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList): Changed to look at own member, rather than m_checker.
* css/StyleResolver.h:
(StyleResolver): Added new member.

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

7 years agoUnreviewed prospective Qt/MSVC build fix.
hausmann@webkit.org [Thu, 13 Sep 2012 16:24:37 +0000 (16:24 +0000)]
Unreviewed prospective Qt/MSVC build fix.

* platform/qt/UserAgentQt.cpp:
(WebCore::UserAgentQt::standardUserAgent): Try to make the conversion from the 8-bit
String to a QLatin1String successful.

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

7 years ago[WK2] LayerTreeCoordinator should release unused UpdatedAtlases
kbalazs@webkit.org [Thu, 13 Sep 2012 16:18:21 +0000 (16:18 +0000)]
[WK2] LayerTreeCoordinator should release unused UpdatedAtlases
https://bugs.webkit.org/show_bug.cgi?id=95072

Reviewed by Jocelyn Turcotte.

Release graphic buffers that haven't been used for a while in order to save memory.
This way we can give back memory to the system when no user interaction happens
after a period of time, for example when we are in the background.

* Shared/ShareableBitmap.h:
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::beginContentUpdate):
(WebKit):
(WebKit::LayerTreeCoordinator::scheduleReleaseInactiveAtlases):
(WebKit::LayerTreeCoordinator::releaseInactiveAtlasesTimerFired):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):
* WebProcess/WebPage/UpdateAtlas.cpp:
(WebKit::UpdateAtlas::UpdateAtlas):
(WebKit::UpdateAtlas::didSwapBuffers):
Don't call buildLayoutIfNeeded here. It's enought to call it in beginPaintingOnAvailableBuffer
and this way we can track whether this atlas is used with m_areaAllocator.
(WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
* WebProcess/WebPage/UpdateAtlas.h:
(WebKit::UpdateAtlas::addTimeInactive):
(WebKit::UpdateAtlas::isInactive):
(WebKit::UpdateAtlas::isInUse):
(UpdateAtlas):

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

7 years ago[Qt][WK2] fast/forms/access-key-for-all-elements.html fails
commit-queue@webkit.org [Thu, 13 Sep 2012 16:07:53 +0000 (16:07 +0000)]
[Qt][WK2] fast/forms/access-key-for-all-elements.html fails
https://bugs.webkit.org/show_bug.cgi?id=73917

Patch by Lauro Neto <lauro.neto@openbossa.org> on 2012-09-13
Reviewed by Simon Hausmann.

Access-key tests were failing due to hardcoded Mac OS X in the
Qt WK2 user agent string. This commit moves the WK1 implementation
to a shared one to be used by both versions.

Source/WebCore:

Adds the shared user agent implementation.

* Target.pri:
* platform/qt/UserAgentQt.cpp: Added.
(WebCore):
(WebCore::UserAgentQt::standardUserAgent):
* platform/qt/UserAgentQt.h: Added.
(WebCore):
(UserAgentQt):

Source/WebKit/qt:

Change QWebPage to use the shared user agent implementation.

* Api/qwebpage.cpp:
(QWebPage::userAgentForUrl):

Source/WebKit2:

Use the shared implementation instead of hardcoding the user agent.

* UIProcess/qt/WebPageProxyQt.cpp:
(WebKit::WebPageProxy::standardUserAgent):

LayoutTests:

Unskip now passing tests.

* platform/qt-5.0-wk2/Skipped:

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

7 years ago[BlackBerry] Page Popup for Month is non-functional.
commit-queue@webkit.org [Thu, 13 Sep 2012 16:01:46 +0000 (16:01 +0000)]
[BlackBerry] Page Popup for Month is non-functional.
https://bugs.webkit.org/show_bug.cgi?id=96651

Patch by Jessica Cao <jecao@rim.com> on 2012-09-13
Reviewed by Rob Buis.

Hook up support for Month popup.

* WebCoreSupport/DatePickerClient.cpp:
(WebCore::DatePickerClient::generateHTML):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::openDatePopup):

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

7 years ago[CMake] Remove some redundant warning flags and enable a few more warnings.
commit-queue@webkit.org [Thu, 13 Sep 2012 15:31:12 +0000 (15:31 +0000)]
[CMake] Remove some redundant warning flags and enable a few more warnings.
https://bugs.webkit.org/show_bug.cgi?id=96654

Patch by Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

* Source/cmake/WebKitHelpers.cmake: Remove a few warning flags
which are already enabled by -Wall and -Wextra, remove -W which
looks useless and also enable a few more warnings by removing
their -Wno-foo counterparts which were present.

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

7 years ago[EFL] Use RefPtr for storing cairo_surface_t
kenneth@webkit.org [Thu, 13 Sep 2012 15:27:39 +0000 (15:27 +0000)]
[EFL] Use RefPtr for storing cairo_surface_t
https://bugs.webkit.org/show_bug.cgi?id=96647

Reviewed by Simon Hausmann.

Refactoring, covered by existing tests.

* platform/efl/RenderThemeEfl.cpp:
(WebCore::createSurfaceForBackingStore):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::create):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::reuse):
(WebCore::RenderThemeEfl::paintThemePart):
* platform/efl/RenderThemeEfl.h:
(WebCore::RenderThemeEfl::ThemePartCacheEntry::surface):
(ThemePartCacheEntry):

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

7 years agoMove updateHoverActiveState to Document.
allan.jensen@nokia.com [Thu, 13 Sep 2012 15:22:37 +0000 (15:22 +0000)]
Move updateHoverActiveState to Document.
https://bugs.webkit.org/show_bug.cgi?id=95858

Reviewed by Antonio Gomes.

RenderLayer::updateHoverActiveState contains the logic that updates hover and active states based on
hit-tests, but hover and active states are document states, and does have any relation to layers other
than documents having atleast one layer.

By moving the function it will be in the same place as other active/hover state maintainace, and we avoid
excessive updates of the state from hit-testing flow threads.

* dom/Document.cpp:
(WebCore::commonAncestor):
(WebCore::Document::updateHoverActiveState):
* dom/Document.h:
(Document):
* page/EventHandler.cpp:
(WebCore::EventHandler::sendContextMenuEventForKey):
* rendering/RenderFrameBase.cpp:
(WebCore::RenderFrameBase::nodeAtPoint):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::hitTest):
* rendering/RenderLayer.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::hitTest):
* rendering/RenderView.h:
(RenderView):

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

7 years ago[EFL][WK2] Gardening after r128393
commit-queue@webkit.org [Thu, 13 Sep 2012 15:16:47 +0000 (15:16 +0000)]
[EFL][WK2] Gardening after r128393
https://bugs.webkit.org/show_bug.cgi?id=96640

Unreviewed gardening.

Corrected expectations for the following files:
fast/dom/HTMLAnchorElement/anchor-nodownload-set.html
fast/dom/HTMLAnchorElement/anchor-download.html

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-13

* platform/efl-wk2/TestExpectations:

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

7 years ago[Qt] Make WebKit2 work on Windows with Qt 5
hausmann@webkit.org [Thu, 13 Sep 2012 15:15:52 +0000 (15:15 +0000)]
[Qt] Make WebKit2 work on Windows with Qt 5
https://bugs.webkit.org/show_bug.cgi?id=76776

Reviewed by Tor Arne Vestbø.

WebKit2 should compile with Qt on Windows now, so enable it. This patch in fact corrects
the check to disable WebKit when we don't have USE_3D_GRAPHICS available, because we need
that for the GL TextureMapper (it's only built when that feature is set).

* qmake/mkspecs/features/configure.prf:

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

7 years ago[Qt] Ensure that QT is finalized before loading qt_module.prf
vestbo@webkit.org [Thu, 13 Sep 2012 15:10:43 +0000 (15:10 +0000)]
[Qt] Ensure that QT is finalized before loading qt_module.prf

As qt_module.prf does dependency tracking based on the content of the
QT variable. The intermediate WebKit modules modify the variable in
their .pri files, so we have to ensure we've loaded all the modules
before loading qt_module.

Reviewed by Tor Arne Vestbø.
Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-09-13

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

7 years ago[EFL] Remove a lot of C'ism from Ewk_Tiled_Backing_Store
commit-queue@webkit.org [Thu, 13 Sep 2012 15:09:29 +0000 (15:09 +0000)]
[EFL] Remove a lot of C'ism from Ewk_Tiled_Backing_Store
https://bugs.webkit.org/show_bug.cgi?id=96631

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

Remove a lot of C'ism from Ewk_Tiled_Backing_Store and
fix coding style.

* ewk/ewk_tiled_backing_store.cpp:
(_Ewk_Tiled_Backing_Store_Item):
(_Ewk_Tiled_Backing_Store_Data):
(_ewk_tiled_backing_store_updates_process):
(_ewk_tiled_backing_store_flush):
(_ewk_tiled_backing_store_tile_new):
(_ewk_tiled_backing_store_item_resize):
(_ewk_tiled_backing_store_tile_associate):
(_ewk_tiled_backing_store_tile_dissociate):
(_ewk_tiled_backing_store_tile_dissociate_all):
(_ewk_tiled_backing_store_pre_render_request_add):
(_ewk_tiled_backing_store_pre_render_request_del):
(_ewk_tiled_backing_store_pre_render_request_first):
(_ewk_tiled_backing_store_pre_render_request_clear):
(_ewk_tiled_backing_store_pre_render_request_process_single):
(_ewk_tiled_backing_store_item_process_idler_start):
(_ewk_tiled_backing_store_disable_render):
(_ewk_tiled_backing_store_enable_render):
(_ewk_tiled_backing_store_item_fill):
(_ewk_tiled_backing_store_item_add):
(_ewk_tiled_backing_store_item_smooth_scale_set):
(_ewk_tiled_backing_store_changed):
(_ewk_tiled_backing_store_view_cols_end_del):
(_ewk_tiled_backing_store_view_cols_end_add):
(_ewk_tiled_backing_store_view_row_del):
(_ewk_tiled_backing_store_view_rows_range_del):
(_ewk_tiled_backing_store_view_rows_all_del):
(_ewk_tiled_backing_store_smart_member_del):
(_ewk_tiled_backing_store_smart_member_add):
(_ewk_tiled_backing_store_mem_dbg):
(_ewk_tiled_backing_store_sig_usr):
(_ewk_tiled_backing_store_smart_add):
(_ewk_tiled_backing_store_smart_del):
(_ewk_tiled_backing_store_smart_show):
(_ewk_tiled_backing_store_smart_hide):
(_ewk_tiled_backing_store_recalc_renderers):
(_ewk_tiled_backing_store_smart_calculate_size):
(_ewk_tiled_backing_store_view_dbg):
(_ewk_tiled_backing_store_view_wrap_up):
(_ewk_tiled_backing_store_view_wrap_down):
(_ewk_tiled_backing_store_view_wrap_left):
(_ewk_tiled_backing_store_view_wrap_right):
(_ewk_tiled_backing_store_view_refill):
(_ewk_tiled_backing_store_view_pos_apply):
(_ewk_tiled_backing_store_smart_calculate_offset_force):
(_ewk_tiled_backing_store_smart_calculate_offset):
(_ewk_tiled_backing_store_smart_calculate_pos):
(_ewk_tiled_backing_store_fill_renderers):
(_ewk_tiled_backing_store_smart_calculate):
(ewk_tiled_backing_store_render_cb_set):
(ewk_tiled_backing_store_tile_unused_cache_get):
(_ewk_tiled_backing_store_scroll_full_offset_set_internal):
(ewk_tiled_backing_store_scroll_full_offset_set):
(ewk_tiled_backing_store_scroll_full_offset_add):
(_ewk_tiled_backing_store_zoom_set_internal):
(ewk_tiled_backing_store_zoom_set):
(ewk_tiled_backing_store_zoom_weak_set):
(ewk_tiled_backing_store_fix_offsets):
(ewk_tiled_backing_store_zoom_weak_smooth_scale_set):
(ewk_tiled_backing_store_alpha_set):
(ewk_tiled_backing_store_update):
(ewk_tiled_backing_store_updates_process_pre_set):
(ewk_tiled_backing_store_updates_process_post_set):
(ewk_tiled_backing_store_disabled_update_set):
(ewk_tiled_backing_store_flush):
(ewk_tiled_backing_store_pre_render_tile_add):
(ewk_tiled_backing_store_pre_render_spiral_queue):
(ewk_tiled_backing_store_pre_render_region):
(ewk_tiled_backing_store_pre_render_relative_radius):
(ewk_tiled_backing_store_pre_render_cancel):
(ewk_tiled_backing_store_disable_render):
(ewk_tiled_backing_store_enable_render):
* ewk/ewk_tiled_backing_store_private.h:
(_Ewk_Tile_Stats):
(_Ewk_Tile):
* ewk/ewk_view_tiled.cpp:
(_ewk_view_tiled_render_cb):
(_ewk_view_tiled_smart_backing_store_add):

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

7 years agoUnreviewed fix for: REGRESSION(r128451): It broke inspector/profiler/memory-instrumen...
loislo@chromium.org [Thu, 13 Sep 2012 15:05:29 +0000 (15:05 +0000)]
Unreviewed fix for: REGRESSION(r128451): It broke inspector/profiler/memory-instrumentation-cached-images.html
https://bugs.webkit.org/show_bug.cgi?id=96653

* inspector/profiler/memory-instrumentation-cached-images.html:
* inspector/profiler/memory-instrumentation-cached-images-expected.txt:

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

7 years agoREGRESSION: hit test doesn't take iframe scroll position into account
allan.jensen@nokia.com [Thu, 13 Sep 2012 15:03:48 +0000 (15:03 +0000)]
REGRESSION: hit test doesn't take iframe scroll position into account
https://bugs.webkit.org/show_bug.cgi?id=96541

Source/WebCore:

Reviewed by Antonio Gomes.

Convert the coordinate correctly by taking scroll position plus frame
borders and padding into account.

Test: fast/events/touch/touch-inside-iframe-scrolled.html

* rendering/RenderFrameBase.cpp:
(WebCore::RenderFrameBase::nodeAtPoint):

LayoutTests:

Reviewed by Antonio Gomes.
Test written by Rick Byers.

Test that scroll position is taken into account in hit testing.

* fast/events/touch/resources/touch-inside-iframe-scrolled2.html: Added.
* fast/events/touch/touch-inside-iframe-scrolled-expected.txt: Added.
* fast/events/touch/touch-inside-iframe-scrolled.html: Added.

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

7 years ago[Qt] Fix build of Qt WTR/MiniBrowser with MSVC and nmake
hausmann@webkit.org [Thu, 13 Sep 2012 15:03:24 +0000 (15:03 +0000)]
[Qt] Fix build of Qt WTR/MiniBrowser with MSVC and nmake
https://bugs.webkit.org/show_bug.cgi?id=96633

Reviewed by Csaba Osztrogonác.

WTR and MiniBrowser both have DRT in their include path (for the shared font stuff). Batch
builds with MSVC and nmake result in nmake picking up main.cpp from the wrong directory.
It's the usual problem and the usual solution is to rename one of the conflicting files.
This patch chooses to rename DRT instead of WTR and MBR.

Fixed include order at the same time to match style guide.

* DumpRenderTree/qt/DumpRenderTree.pro:
* DumpRenderTree/qt/DumpRenderTreeMain.cpp: Renamed from Tools/DumpRenderTree/qt/main.cpp.
(messageHandler):
(isOption):
(takeOptionValue):
(printUsage):
(main):

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

7 years agoThe Script run-launcher should support -2 in combination with --efl
kenneth@webkit.org [Thu, 13 Sep 2012 14:59:22 +0000 (14:59 +0000)]
The Script run-launcher should support -2 in combination with --efl
https://bugs.webkit.org/show_bug.cgi?id=96639

Reviewed by Simon Hausmann.

Support running the MiniBrowser then supplied -2 as argument.

* Scripts/run-launcher:

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

7 years ago[Qt] Fix build of WTR and the QML2 plugin on Windows
hausmann@webkit.org [Thu, 13 Sep 2012 14:58:35 +0000 (14:58 +0000)]
[Qt] Fix build of WTR and the QML2 plugin on Windows
https://bugs.webkit.org/show_bug.cgi?id=96652

Reviewed by Tor Arne Vestbø.

Some components that we build such as WTR or the QML2 plugin include
WebKit2 header files as well as WebKit2's config.h. Only the include
paths of WebKit2 are required for that at the moment (WEBKIT +=
webkit2). Only on Windows WebKit2's config.h also includes
WebCore/config.h, which in turn requires to have WebCore/platform in
your include search path. That in turn means that any component that
wants to use WebKit2 headers also needs the WebCore headers, but only
one Windows. It turns out that for the Qt build we don't need it, so
skip it in our configuration and make the include path requirement
the same across all the platforms we build.

* config.h:

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

7 years agoUnreviewed, add my Intel email address to the list.
rakuco@webkit.org [Thu, 13 Sep 2012 14:56:48 +0000 (14:56 +0000)]
Unreviewed, add my Intel email address to the list.

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

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

7 years ago[Qt][WK2] REGRESSION(r128245): It made zillion API tests fail
abecsi@webkit.org [Thu, 13 Sep 2012 14:42:36 +0000 (14:42 +0000)]
[Qt][WK2] REGRESSION(r128245): It made zillion API tests fail
https://bugs.webkit.org/show_bug.cgi?id=96531

Reviewed by Jocelyn Turcotte.

Preferences have to be updated after the drawing area was created
for compositing mode to be set.

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

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

7 years ago[BlackBerry] ASSERT failure in InRegionScrollableArea::InRegionScrollableArea
tonikitoo@webkit.org [Thu, 13 Sep 2012 14:29:42 +0000 (14:29 +0000)]
[BlackBerry] ASSERT failure in InRegionScrollableArea::InRegionScrollableArea
https://bugs.webkit.org/show_bug.cgi?id=96645
PR #207307

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

We use canScrollRenderBox to promote the layer as scrollable instead
of RenderBox::canScrollAndHasScrollableArea (see comment above the former).
We should assert against the former as well.

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScrollerPrivate::canScrollRenderBox):
* Api/InRegionScroller_p.h:
(WebCore):
(InRegionScrollerPrivate):
* WebKitSupport/InRegionScrollableArea.cpp:
(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):

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

7 years ago[Qt] Don't overwrite LIBS_PRIVATE when sanitizing LIBS
vestbo@webkit.org [Thu, 13 Sep 2012 14:21:25 +0000 (14:21 +0000)]
[Qt] Don't overwrite LIBS_PRIVATE when sanitizing LIBS

Reviewed by Ossy.

* qmake/mkspecs/features/default_post.prf:

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

7 years ago[EFL][DRT] Implement LayoutTestController::layerTreeAsText
kenneth@webkit.org [Thu, 13 Sep 2012 14:15:14 +0000 (14:15 +0000)]
[EFL][DRT] Implement LayoutTestController::layerTreeAsText
https://bugs.webkit.org/show_bug.cgi?id=82294

Reviewed by Gyuyoung Kim.

Source/WebKit/efl:

Add a support method for getting layerTreeAsText.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::layerTreeAsText):
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

Implement layerTreeAsText using the DumpRenderTreeSupportEfl method.

* DumpRenderTree/efl/TestRunnerEfl.cpp:
(TestRunner::layerTreeAsText):

LayoutTests:

The tests are no longer failing because of missing layerTreeAsText
but due to accelerated compositing not being enabled.

* platform/efl/TestExpectations:

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

7 years ago[GTK] Clear application cache between tests in DumpRenderTree
zandobersek@gmail.com [Thu, 13 Sep 2012 14:03:01 +0000 (14:03 +0000)]
[GTK] Clear application cache between tests in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=96543

Reviewed by Philippe Normand.

Source/WebKit/gtk:

Add a method to the DumpRenderTreeSupportGtk class that upon calling
clears the application cache and vacuums the database file.

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::clearApplicationCache):
* WebCoreSupport/DumpRenderTreeSupportGtk.h:
(DumpRenderTreeSupportGtk):

Tools:

Call the new DumpRenderTreeSupportGtk method to clear application cache
after each test.

Set the XDG_CACHE_HOME environment variable when running DumpRenderTree
as well. Currently it points to a subdirectory in the layout tests results
directory. At least on the builders this ensures an empty cache directory
with each test run.

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

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 13 Sep 2012 13:46:08 +0000 (13:46 +0000)]
Unreviewed GTK gardening.

Specifying a few slow tests on the debug configuration that pass
when given sufficient time to do so.

Branching expectations for three spellcheck test failures, on release
configuration they time out while on the debug configuration they
have enough time to fail.

* platform/gtk/TestExpectations:

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

7 years agoWeb Inspector: NMI: remove the dependency of platform sources from WebCore header...
loislo@chromium.org [Thu, 13 Sep 2012 13:22:40 +0000 (13:22 +0000)]
Web Inspector: NMI: remove the dependency of platform sources from WebCore header introduced by NMI instrumentation.
https://bugs.webkit.org/show_bug.cgi?id=96367

Reviewed by Yury Semikhatsky.

the target is to move 'platform' specific instrumentation code
from WebCoreMemoryInstrumentation into the new PlatformMemoryInstrumentation.

Drive by fix: New type DOM.Image was introduced.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* dom/WebCoreMemoryInstrumentation.cpp:
(WebCore):
* dom/WebCoreMemoryInstrumentation.h:
(WebCoreMemoryTypes):
* inspector/InspectorMemoryAgent.cpp:
(WebCore):
* platform/KURL.cpp:
* platform/KURLGoogle.cpp:
* platform/PlatformMemoryInstrumentation.cpp: Copied from Source/WebCore/platform/graphics/GeneratedImage.cpp.
(WebCore):
* platform/PlatformMemoryInstrumentation.h: Copied from Source/WebCore/platform/graphics/GeneratedImage.cpp.
(WebCore):
(PlatformMemoryTypes):
* platform/SharedBuffer.cpp:
* platform/TreeShared.h:
(WebCore::TreeShared::reportMemoryUsage):
* platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::reportMemoryUsage):
* platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::CrossfadeGeneratedImage::reportMemoryUsage):
* platform/graphics/GeneratedImage.cpp:
(WebCore::GeneratedImage::reportMemoryUsage):
* platform/graphics/GeneratorGeneratedImage.cpp:
(WebCore::GeneratorGeneratedImage::reportMemoryUsage):
* platform/graphics/GeneratorGeneratedImage.h:
* platform/graphics/Image.cpp:
(WebCore::Image::reportMemoryUsage):
* platform/network/FormData.cpp:
(WebCore::FormData::reportMemoryUsage):
* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::reportMemoryUsage):
* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::reportMemoryUsage):

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

7 years ago[Qt] Make sure LIBS, PKGCONFIG, and QT, do not affect QtWebKit's prl file
vestbo@webkit.org [Thu, 13 Sep 2012 12:39:46 +0000 (12:39 +0000)]
[Qt] Make sure LIBS, PKGCONFIG, and QT, do not affect QtWebKit's prl file

Unless it's actually a dependency of the public QtWebKit API.

We could replace every occurance of LIBS, PKGCONFIG, and QT, in the pri
files with their _PRIVATE equivivalent, but that's likely to break when
someone adds a new QT/LIBS/PKGCONFIG += foo line somewhere. Instead we
clean up the variables in default_post.

This means that the CONFIG -= explicitlib in linkAgainstLibrary() is no
longer needed, as it was a workaround for the intermediate libraries ending
up in the prl file. And, since CONFIG -= staticlib was there to support
the explicitlib option, we can remove that too (as well as the exception
for gprof, since it would be empty). If gprof needs tweaks to always link
statically they should go in gprof.prf.

Reviewed by Simon Hausmann.

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

7 years ago[Qt] Fix UIProcess build with Qt on Windows
commit-queue@webkit.org [Thu, 13 Sep 2012 12:37:51 +0000 (12:37 +0000)]
[Qt] Fix UIProcess build with Qt on Windows
https://bugs.webkit.org/show_bug.cgi?id=96635

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-13
Reviewed by Csaba Osztrogonác.

Enabling setShouldCloseConnectionOnProcessTermination on the connection
is something that is only implemented in ConnectionUnix, not
ConnectionWin.cpp, where appears to be built-in functionality.

* UIProcess/WebConnectionToWebProcess.cpp:
(WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):

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

7 years agoWeb Inspector: NMI: instrument KURL directly.
loislo@chromium.org [Thu, 13 Sep 2012 12:12:19 +0000 (12:12 +0000)]
Web Inspector: NMI: instrument KURL directly.
https://bugs.webkit.org/show_bug.cgi?id=96624

Reviewed by Yury Semikhatsky.

I replaced traits based instrumentation of KURL with reportMemoryUsage functions.
CString* were also instrumented.

Drive by fix: Instrumentation code in QualifiedName was moved to cpp.

Source/WebCore:

* bindings/v8/V8DOMMap.h:
* dom/Attribute.h:
* dom/QualifiedName.cpp:
(WebCore::QualifiedName::reportMemoryUsage):
(WebCore):
(WebCore::QualifiedName::QualifiedNameImpl::reportMemoryUsage):
* dom/QualifiedName.h:
(QualifiedNameImpl):
(QualifiedName):
* dom/WebCoreMemoryInstrumentation.cpp:
* dom/WebCoreMemoryInstrumentation.h:
(WebCore):
* platform/KURL.cpp:
(WebCore::KURL::reportMemoryUsage):
(WebCore):
* platform/KURL.h:
(KURL):
* platform/KURLGoogle.cpp:
(WebCore::KURLGooglePrivate::reportMemoryUsage):
* platform/KURLGooglePrivate.h:
(KURLGooglePrivate):
* platform/KURLWTFURLImpl.h:
(KURLWTFURLImpl):
(WebCore::KURLWTFURLImpl::reportMemoryUsage):

Source/WebKit/chromium:

* tests/MemoryInstrumentationTest.cpp:
(WebCore):
(InstrumentedOwner):
(WebCore::InstrumentedOwner::InstrumentedOwner):
(WebCore::InstrumentedOwner::reportMemoryUsage):
(WebCore::TEST):

Source/WTF:

* wtf/text/CString.h:
(CStringBuffer):
(WTF::CStringBuffer::reportMemoryUsage):
(CString):
(WTF::CString::reportMemoryUsage):

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

7 years ago[GTK] "Infinite" loop in AccessibilityUIElementGtk.cpp
commit-queue@webkit.org [Thu, 13 Sep 2012 12:11:35 +0000 (12:11 +0000)]
[GTK] "Infinite" loop in AccessibilityUIElementGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=96632

Patch by Mario Sanchez Prada <msanchez@igalia.com> on 2012-09-13
Reviewed by Carlos Garcia Campos.

Fix this by using atk_object_get_n_accessible_children instead of
calling getChildren() from childCount.

* WebKitTestRunner/InjectedBundle/gtk/AccessibilityUIElementGtk.cpp:
(WTR::AccessibilityUIElement::childrenCount): Avoid the infinite
loop by using atk_object_get_n_accessible_children().

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

7 years ago[EFL] Gardening after r128375, r128431
commit-queue@webkit.org [Thu, 13 Sep 2012 12:08:45 +0000 (12:08 +0000)]
[EFL] Gardening after r128375, r128431
https://bugs.webkit.org/show_bug.cgi?id=96630

Unreviewed gardening.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-13

* platform/efl/TestExpectations: Unskip fast/overflow/overflow-height-float-not-removed-crash.html.
* platform/efl/fast/table/height-percent-test-vertical-expected.png: Rebase.
* platform/efl/fast/table/height-percent-test-vertical-expected.txt: Ditto.
* platform/efl/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added. Rebase.

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

7 years ago[Qt][WK2] New fast/forms/number/number-spinbutton-click-in-iframe.html fails
kkristof@inf.u-szeged.hu [Thu, 13 Sep 2012 12:01:33 +0000 (12:01 +0000)]
[Qt][WK2] New fast/forms/number/number-spinbutton-click-in-iframe.html fails
https://bugs.webkit.org/show_bug.cgi?id=96634

Unreviewed gardening.

* platform/qt-5.0-wk2/Skipped: skip the failing test.

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

7 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Thu, 13 Sep 2012 11:16:09 +0000 (11:16 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped: Unskip a now passing test, and add a missing URL.
* platform/qt/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Updated.

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

7 years ago[Qt] Unreviewed gardening. Rebaseline after 128433. It hasn't been updated correctly...
kadam@inf.u-szeged.hu [Thu, 13 Sep 2012 11:13:39 +0000 (11:13 +0000)]
[Qt] Unreviewed gardening. Rebaseline after 128433. It hasn't been updated correctly in the previous revision.

* platform/qt/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt:

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

7 years agoUpdate binding test expectation for http://trac.webkit.org/changeset/128400
tkent@chromium.org [Thu, 13 Sep 2012 11:04:43 +0000 (11:04 +0000)]
Update binding test expectation for trac.webkit.org/changeset/128400
https://bugs.webkit.org/show_bug.cgi?id=91933

* bindings/scripts/test/JS/JSFloat64Array.cpp:
(WebCore::JSFloat64Array::getOwnPropertySlotByIndex):
(WebCore::JSFloat64Array::putByIndex):
* bindings/scripts/test/JS/JSFloat64Array.h:
(JSFloat64Array):
* bindings/scripts/test/JS/JSTestActiveDOMObject.h:
(JSTestActiveDOMObject):
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::JSTestCustomNamedGetter::getOwnPropertySlotByIndex):
(WebCore):
* bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
(JSTestCustomNamedGetter):
* bindings/scripts/test/JS/JSTestEventConstructor.h:
(JSTestEventConstructor):
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestEventTarget.h:
(JSTestEventTarget):
* bindings/scripts/test/JS/JSTestException.h:
(JSTestException):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::putByIndex):
(WebCore):
* bindings/scripts/test/JS/JSTestInterface.h:
(JSTestInterface):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
(JSTestMediaQueryListListener):
* bindings/scripts/test/JS/JSTestNamedConstructor.h:
(JSTestNamedConstructor):
* bindings/scripts/test/JS/JSTestNode.h:
(JSTestNode):
* bindings/scripts/test/JS/JSTestObj.h:
(JSTestObj):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
(JSTestSerializedScriptValueInterface):

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

7 years ago[Chromium] Test expectation update
tkent@chromium.org [Thu, 13 Sep 2012 10:41:00 +0000 (10:41 +0000)]
[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96628

* platform/chromium/TestExpectations:
calculate-order.html is flaky on Lion.

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

7 years ago[Qt] Fix qdoc executable preparation
vestbo@webkit.org [Thu, 13 Sep 2012 10:39:34 +0000 (10:39 +0000)]
[Qt] Fix qdoc executable preparation

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-09-13
Reviewed by Tor Arne Vestbø.

* docs/docs.pri:

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

7 years ago[Qt] Fllow rename of qt_module_config.prf to qt_module.prf
vestbo@webkit.org [Thu, 13 Sep 2012 10:37:28 +0000 (10:37 +0000)]
[Qt] Fllow rename of qt_module_config.prf to qt_module.prf

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-09-13
Reviewed by Tor Arne Vestbø.

* Source/api.pri:

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

7 years ago[Qt] Fix build against namespaced Qt
vestbo@webkit.org [Thu, 13 Sep 2012 10:33:36 +0000 (10:33 +0000)]
[Qt] Fix build against namespaced Qt

Patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com> on 2012-09-13
Reviewed by Tor Arne Vestbø.

* UIProcess/qt/PageViewportControllerClientQt.h:

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

7 years ago[Chromium] Test expectation update
tkent@chromium.org [Thu, 13 Sep 2012 10:29:21 +0000 (10:29 +0000)]
[Chromium] Test expectation update

* platform/chromium/TestExpectations:
sandboxed-iframe-navigation-parent.html is slow on Lion too.

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

7 years ago[EFL][Qt][WK2] Implement shared undo controller for EFL and Qt port.
commit-queue@webkit.org [Thu, 13 Sep 2012 10:11:01 +0000 (10:11 +0000)]
[EFL][Qt][WK2] Implement shared undo controller for EFL and Qt port.
https://bugs.webkit.org/show_bug.cgi?id=92504

Patch by Michał Pakuła vel Rutka <m.pakula@samsung.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

EFL port needs an undo controller similiar to one from Qt port. Instead of
duplicating the code existing class was renamed and moved to UIProcess
directory.

* PlatformEfl.cmake:
* Target.pri:
* UIProcess/API/efl/PageClientImpl.cpp:
(WebKit::PageClientImpl::registerEditCommand):
(WebKit::PageClientImpl::clearAllEditCommands):
(WebKit::PageClientImpl::canUndoRedo):
(WebKit::PageClientImpl::executeUndoRedo):
* UIProcess/API/efl/PageClientImpl.h:
(PageClientImpl):
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/DefaultUndoController.cpp: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoController.cpp.
(WebKit):
(WebKit::DefaultUndoController::registerEditCommand):
(WebKit::DefaultUndoController::clearAllEditCommands):
(WebKit::DefaultUndoController::canUndoRedo):
(WebKit::DefaultUndoController::executeUndoRedo):
* UIProcess/DefaultUndoController.h: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoController.h.
(WebKit):
(DefaultUndoController):
* UIProcess/qt/QtPageClient.cpp:
(WebKit::QtPageClient::initialize):
* UIProcess/qt/QtPageClient.h:
(WebKit):
(QtPageClient):

LayoutTests:

Unskip the editing/undo category now that the tests are passing. Also add
missing expected results.

* platform/efl-wk1/TestExpectations:
* platform/efl-wk2/TestExpectations:
* platform/efl/Skipped:
* platform/efl/editing/undo/4063751-expected.txt: Added.
* platform/efl/editing/undo/5378473-expected.txt: Added.
* platform/efl/editing/undo/redo-typing-001-expected.txt: Added.
* platform/efl/editing/undo/undo-combined-delete-boundary-expected.txt: Added.
* platform/efl/editing/undo/undo-combined-delete-expected.txt: Added.
* platform/efl/editing/undo/undo-delete-boundary-expected.txt: Added.
* platform/efl/editing/undo/undo-delete-expected.txt: Added.
* platform/efl/editing/undo/undo-forward-delete-boundary-expected.txt: Added.
* platform/efl/editing/undo/undo-forward-delete-expected.txt: Added.
* platform/efl/editing/undo/undo-misspellings-expected.txt: Added.
* platform/efl/editing/undo/undo-typing-001-expected.txt: Added.

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

7 years ago[Qt][Win] Enable USE(3D_GRAPHICS)
hausmann@webkit.org [Thu, 13 Sep 2012 10:00:08 +0000 (10:00 +0000)]
[Qt][Win] Enable USE(3D_GRAPHICS)
https://bugs.webkit.org/show_bug.cgi?id=90879

Reviewed by Kenneth Rohde Christiansen.

Enable it on Windows as well as on QNX (bug fixed).

* qmake/mkspecs/features/features.prf:

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

7 years ago[Tests] We should have tests for preserving/resetting values of input type "time...
yosin@chromium.org [Thu, 13 Sep 2012 09:32:20 +0000 (09:32 +0000)]
[Tests] We should have tests for preserving/resetting values of input type "time" after browser navigation
https://bugs.webkit.org/show_bug.cgi?id=96595

Reviewed by Kent Tamura.

This patch adds two tests for preserving/resetting values input type
"time" with multiple fields input UI after page reload, backward and
forward browser navigation.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

* fast/forms/time-multiple-fields/time-multiple-fields-preserve-value-after-history-back-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-preserve-value-after-history-back.html: Added for checking value is preserved after history backward and forward navigation.
* fast/forms/time-multiple-fields/time-multiple-fields-reset-value-after-reload-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-reset-preserve-value-after-reload.html: Added for checking values are resetted after page reload.

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

7 years ago[Qt] Unreviewed gardening. Skip a failing test. Added platform specific expectations...
kadam@inf.u-szeged.hu [Thu, 13 Sep 2012 09:24:25 +0000 (09:24 +0000)]
[Qt] Unreviewed gardening. Skip a failing test. Added platform specific expectations after r128375.

* platform/qt/Skipped: After r128400.
* platform/qt/fast/table/height-percent-test-vertical-expected.txt: Added r128375.
* platform/qt/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added r128375..

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

7 years ago[EFL] Gardening after r128270, r128400, r128389, r128393, r128274
commit-queue@webkit.org [Thu, 13 Sep 2012 09:13:45 +0000 (09:13 +0000)]
[EFL] Gardening after r128270, r128400, r128389, r128393, r128274
https://bugs.webkit.org/show_bug.cgi?id=96613

Unreviewed gardening.

Adding failing test to TestExpectations.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-13

* platform/efl-wk1/TestExpectations:
* platform/efl/TestExpectations:

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

7 years ago[EFL] REGRESSION (r128274): fast/overflow/overflow-height-float-not-removed-crash...
commit-queue@webkit.org [Thu, 13 Sep 2012 09:11:04 +0000 (09:11 +0000)]
[EFL] REGRESSION (r128274): fast/overflow/overflow-height-float-not-removed-crash.html
https://bugs.webkit.org/show_bug.cgi?id=96619

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

ThemePartCacheEntry::create() can return '0' if creation fails, this was not checked
while Theme Part cache populating. A NULL pointer was dereferenced then causing crash.

Test: fast/overflow/overflow-height-float-not-removed-crash.html.

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

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

7 years ago[Qt] The ANGLE build on Windows breaks with GnuWin32's flex because it is too old
commit-queue@webkit.org [Thu, 13 Sep 2012 08:54:29 +0000 (08:54 +0000)]
[Qt] The ANGLE build on Windows breaks with GnuWin32's flex because it is too old
https://bugs.webkit.org/show_bug.cgi?id=96359

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-13
Reviewed by Tor Arne Vestbø.

GnuWin32's flex is 2.5.4 and that is too old for ANGLE's preprocessor
lexer. The only viable alternative I could find on Windows that provides
binaries is the winflexbison distribution (http://sourceforge.net/projects/winflexbison/),
so let's use that one instead.

Source/ThirdParty/ANGLE:

* DerivedSources.pri:

Tools:

* Scripts/webkitdirs.pm:
(checkRequiredSystemConfig):
* qmake/mkspecs/features/default_pre.prf:

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

7 years ago[Qt] syncqt isn't re-run when WebKit1.pro changes and we're building with --no-webkit2
hausmann@webkit.org [Thu, 13 Sep 2012 08:50:40 +0000 (08:50 +0000)]
[Qt] syncqt isn't re-run when WebKit1.pro changes and we're building with --no-webkit2
https://bugs.webkit.org/show_bug.cgi?id=96545

Reviewed by Tor Arne Vestbø.

Do the QMAKE_INTERNAL_INCLUDED_FILES trick separately for WebKit1.pro and WebKit2/Target.pri,
depending on build?(webkit1) and build?(webkit2), as discussed earlier.

* Source/api.pri:

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

7 years ago[Qt][Win] REGRESSION(r128400): It broke the build
loislo@chromium.org [Thu, 13 Sep 2012 08:43:33 +0000 (08:43 +0000)]
[Qt][Win] REGRESSION(r128400): It broke the build
https://bugs.webkit.org/show_bug.cgi?id=96617

Patch by Filip Pizlo <fpizlo@apple.com> on 2012-09-13
Reviewed by Simon Hausmann.

Source/JavaScriptCore:

Changed "JSC::Array" to "JSC::ArrayClass" because it's not used often enough
for the brevity to be beneficial, and because "Array" causes too much namespace
pollution.

* runtime/IndexingType.h:
(JSC):
* runtime/JSArray.cpp:
(JSC::JSArray::pop):
(JSC::JSArray::push):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):
(JSC::JSArray::compactForSorting):
* runtime/JSObject.cpp:
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::JSObject::putByIndex):
(JSC::JSObject::ensureArrayStorageExistsAndEnterDictionaryIndexingMode):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLength):
(JSC::JSObject::getNewVectorLength):
(JSC::JSObject::getOwnPropertyDescriptor):
* runtime/JSObject.h:
(JSC::JSObject::getArrayLength):
(JSC::JSObject::getVectorLength):
(JSC::JSObject::canGetIndexQuickly):
(JSC::JSObject::canSetIndexQuickly):
(JSC::JSObject::inSparseIndexingMode):
(JSC::JSObject::ensureArrayStorage):

Source/WebCore:

* bridge/runtime_array.h:
(JSC::RuntimeArray::createStructure):

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

7 years agoWeb Inspector: CSS domain sends events while it is not enabled
apavlov@chromium.org [Thu, 13 Sep 2012 08:41:26 +0000 (08:41 +0000)]
Web Inspector: CSS domain sends events while it is not enabled
https://bugs.webkit.org/show_bug.cgi?id=96615

Reviewed by Yury Semikhatsky.

The CSS agent is put into and removed from the instrumenting agents set upon enable() and disable(), respectively.

Tests will be shortly landed as a part of the new pure protocol testing harness.

* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::setFrontend):
(WebCore::InspectorCSSAgent::clearFrontend):
(WebCore::InspectorCSSAgent::reset):
(WebCore):
(WebCore::InspectorCSSAgent::resetNonPersistentData):
(WebCore::InspectorCSSAgent::enable):
(WebCore::InspectorCSSAgent::disable):
* inspector/InspectorCSSAgent.h:
(InspectorCSSAgent):

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

7 years agoUnreviewed, rolling out r128409.
commit-queue@webkit.org [Thu, 13 Sep 2012 08:41:21 +0000 (08:41 +0000)]
Unreviewed, rolling out r128409.
http://trac.webkit.org/changeset/128409
https://bugs.webkit.org/show_bug.cgi?id=96622

It broke Chromium browser_tests (Requested by tkent on
#webkit).

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

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::shouldScopeMatches):

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

7 years agoTesting whether indexing type is ArrayWithArrayStorage should not compare against...
fpizlo@apple.com [Thu, 13 Sep 2012 08:40:00 +0000 (08:40 +0000)]
Testing whether indexing type is ArrayWithArrayStorage should not compare against ArrayWithArrayStorage
https://bugs.webkit.org/show_bug.cgi?id=96611

Reviewed by Gavin Barraclough.

* dfg/DFGRepatch.cpp:
(JSC::DFG::tryCacheGetByID):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArray):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::privateCompilePatchGetArrayLength):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::privateCompilePatchGetArrayLength):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

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

7 years ago[Qt] Add configuration for production builds
commit-queue@webkit.org [Thu, 13 Sep 2012 08:38:23 +0000 (08:38 +0000)]
[Qt] Add configuration for production builds
https://bugs.webkit.org/show_bug.cgi?id=96607

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

Add configuration tweaks for production builds, to ease memory pressure with the GNU toolchain
and enable all-in-one-files optimizations.

* qmake/mkspecs/features/production_build.prf: Added.

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

7 years ago[Tests] We should have test for clicking spin button in iframe.
yosin@chromium.org [Thu, 13 Sep 2012 08:37:26 +0000 (08:37 +0000)]
[Tests] We should have test for clicking spin button in iframe.
https://bugs.webkit.org/show_bug.cgi?id=96612

Reviewed by Kent Tamura.

This patch adds two tests for clicking spin button in iframe for
input type "number" and input type "time" with multiple fields UI.

These tests are added for catching regression caused by r127876.

* fast/forms/number/number-spinbutton-click-in-iframe-expected.txt: Added.
* fast/forms/number/number-spinbutton-click-in-iframe.html: Added.
* fast/forms/resources/common-spinbutton-click-in-iframe.js: Added.
(getSpinButton): Extracts spin button in shadow DOM tree.
(mouseClick): Simulates mouse click.
(mouseMoveTo): Simulates mouse pointer move.
(runIFrameLoaded): Checking spin button clicked.
(testClickSpinButtonInIFrame): Creates and populates iframe.
* fast/forms/time-multiple-fields/time-multiple-fields-spinbutton-click-in-iframe-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-spinbutton-click-in-iframe.html: Added.

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

7 years ago[Qt] GStreamer detection does not work when cross-compiling
commit-queue@webkit.org [Thu, 13 Sep 2012 08:31:24 +0000 (08:31 +0000)]
[Qt] GStreamer detection does not work when cross-compiling
https://bugs.webkit.org/show_bug.cgi?id=96608

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

When cross-compiling it is not safe to just use system(pkg-config),
because there is a high probability that it will find packages in the
host system instead of in the target one. Instead use qmake's new
packagesExist() function that takes care of this delicate aspect of
cross compilation by setting PKG_CONFIG_SYSROOT_DIR and
PKG_CONFIG_LIBDIR accordingly.

* qmake/mkspecs/features/features.prf:

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

7 years ago[WK2][WTR] More efficient string handling in InjectedBundlePage
commit-queue@webkit.org [Thu, 13 Sep 2012 08:29:30 +0000 (08:29 +0000)]
[WK2][WTR] More efficient string handling in InjectedBundlePage
https://bugs.webkit.org/show_bug.cgi?id=96609

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

Update StringBuilder usage in InjectedBundlePage to follow
the latest recommandations for efficient string handling:
http://trac.webkit.org/wiki/EfficientStrings

This involves using appendLiteral() or appendNumber()
instead of append() whenever possible.

* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::dumpPath):
(WTR::rangeToStr):
(WTR::styleDecToStr):
(WTR::frameToStr):
(WTR::dumpResourceURL):
(WTR):
(WTR::dumpFrameDescriptionSuitableForTestResult):
(WTR::dumpRequestDescriptionSuitableForTestResult):
(WTR::dumpResponseDescriptionSuitableForTestResult):
(WTR::dumpErrorDescriptionSuitableForTestResult):
(WTR::InjectedBundlePage::didReceiveIntentForFrame):
(WTR::InjectedBundlePage::registerIntentServiceForFrame):
(WTR::InjectedBundlePage::didStartProvisionalLoadForFrame):
(WTR::InjectedBundlePage::didReceiveServerRedirectForProvisionalLoadForFrame):
(WTR::InjectedBundlePage::didCommitLoadForFrame):
(WTR::InjectedBundlePage::didFinishProgress):
(WTR::dumpFrameScrollPosition):
(WTR::dumpFrameText):
(WTR::dumpDescendantFramesText):
(WTR::InjectedBundlePage::didFinishLoadForFrame):
(WTR::InjectedBundlePage::didReceiveTitleForFrame):
(WTR::InjectedBundlePage::didCancelClientRedirectForFrame):
(WTR::InjectedBundlePage::willPerformClientRedirectForFrame):
(WTR::InjectedBundlePage::didFinishDocumentLoadForFrame):
(WTR::InjectedBundlePage::didHandleOnloadEventsForFrame):
(WTR::InjectedBundlePage::willSendRequestForFrame):
(WTR::InjectedBundlePage::didReceiveResponseForResource):
(WTR::InjectedBundlePage::didFinishLoadForResource):
(WTR::InjectedBundlePage::didFailLoadForResource):
(WTR::InjectedBundlePage::shouldCacheResponse):
(WTR::InjectedBundlePage::decidePolicyForNavigationAction):
(WTR::InjectedBundlePage::willAddMessageToConsole):
(WTR::InjectedBundlePage::willSetStatusbarText):
(WTR::InjectedBundlePage::willRunJavaScriptAlert):
(WTR::InjectedBundlePage::willRunJavaScriptConfirm):
(WTR::InjectedBundlePage::willRunJavaScriptPrompt):
(WTR::InjectedBundlePage::didReachApplicationCacheOriginQuota):
(WTR::InjectedBundlePage::shouldBeginEditing):
(WTR::InjectedBundlePage::shouldEndEditing):
(WTR::InjectedBundlePage::shouldInsertNode):
(WTR::InjectedBundlePage::shouldInsertText):
(WTR::InjectedBundlePage::shouldDeleteRange):
(WTR::InjectedBundlePage::shouldChangeSelectedRange):
(WTR::InjectedBundlePage::shouldApplyStyle):
(WTR::InjectedBundlePage::didBeginEditing):
(WTR::InjectedBundlePage::didEndEditing):
(WTR::InjectedBundlePage::didChange):
(WTR::InjectedBundlePage::didChangeSelection):
(WTR::InjectedBundlePage::supportsFullScreen):
(WTR::InjectedBundlePage::enterFullScreenForElement):
(WTR::InjectedBundlePage::exitFullScreenForElement):
(WTR::InjectedBundlePage::beganEnterFullScreen):
(WTR::InjectedBundlePage::beganExitFullScreen):
(WTR::InjectedBundlePage::closeFullScreen):
(WTR::dumpBackForwardListItem):
(WTR::InjectedBundlePage::dumpBackForwardList):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 13 Sep 2012 08:19:35 +0000 (08:19 +0000)]
Unreviewed GTK gardening.

Rebaselining two tests after r128375.

* platform/gtk/TestExpectations:
* platform/gtk/fast/table/height-percent-test-vertical-expected.png: Added.
* platform/gtk/fast/table/height-percent-test-vertical-expected.txt:
* platform/gtk/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added.

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

7 years ago[Qt][WK2] Memory leaks in Qt's TestRunner
commit-queue@webkit.org [Thu, 13 Sep 2012 08:14:52 +0000 (08:14 +0000)]
[Qt][WK2] Memory leaks in Qt's TestRunner
https://bugs.webkit.org/show_bug.cgi?id=96603

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-13
Reviewed by Csaba Osztrogonác.

Fix memory leaks in Qt's TestRunner code by adopting WKString
created with WKStringCreateWithUTF8CString().

* WebKitTestRunner/qt/TestControllerQt.cpp:
(WTR::TestController::initializeInjectedBundlePath):
(WTR::TestController::initializeTestPluginDirectory):

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

7 years agoWeb Inspector: NMI: migrate core instrumentation code to WTF namespace
loislo@chromium.org [Thu, 13 Sep 2012 08:11:49 +0000 (08:11 +0000)]
Web Inspector: NMI: migrate core instrumentation code to WTF namespace
https://bugs.webkit.org/show_bug.cgi?id=96511

Reviewed by Yury Semikhatsky.

After moving core NMI code to WTF namespace I removed forward declarations
of MemoryObjectInfo and MemoryInstrumentation from WebCore headers and add
forward declaration into wtf/Forward.h

Source/WebCore:

* bindings/v8/DOMDataStore.h:
(WebCore):
* bindings/v8/ScriptProfiler.h:
(WebCore):
* bindings/v8/V8DOMMap.h:
(WebCore):
* bindings/v8/V8PerIsolateData.h:
(WebCore):
* bindings/v8/V8ValueCache.h:
(WebCore):
* css/CSSProperty.h:
* css/CSSRule.h:
(WebCore):
* css/CSSSelectorList.h:
(WebCore):
* css/CSSStyleDeclaration.h:
(WebCore):
* css/CSSStyleSheet.h:
(WebCore):
* css/CSSValue.h:
* css/MediaList.h:
(WebCore):
* css/MediaQuery.h:
* css/MediaQueryExp.h:
* css/StylePropertySet.h:
(WebCore):
* css/StyleResolver.h:
* css/StyleRule.h:
(WebCore):
* css/StyleRuleImport.h:
(WebCore):
* css/StyleSheetContents.h:
(WebCore):
* css/WebKitCSSKeyframeRule.h:
* css/WebKitCSSKeyframesRule.h:
(WebCore):
* css/WebKitCSSMixFunctionValue.h:
* dom/DocumentEventQueue.h:
(WebCore):
* dom/ElementAttributeData.h:
(WebCore):
* dom/Event.h:
(WebCore):
* dom/Node.h:
(WebCore):
* dom/WebCoreMemoryInstrumentation.cpp:
(WTF):
(WTF::WebCore::KURL):
* dom/WebCoreMemoryInstrumentation.h:
(WebCore):
(WTF):
* inspector/MemoryInstrumentationImpl.h:
* loader/DocumentLoader.h:
(WebCore):
* loader/FrameLoader.h:
(WebCore):
* loader/ResourceLoader.h:
(WebCore):
* loader/SubstituteData.h:
* loader/cache/CachedCSSStyleSheet.h:
(WebCore):
* loader/cache/CachedRawResource.h:
(WebCore):
* loader/cache/CachedResource.h:
(WebCore):
* loader/cache/CachedResourceHandle.h:
* loader/cache/CachedResourceLoader.h:
(WebCore):
* loader/cache/CachedScript.h:
(WebCore):
* loader/cache/CachedShader.h:
* loader/cache/CachedXSLStyleSheet.h:
(WebCore):
* loader/cache/MemoryCache.h:
(WebCore):
* page/Frame.h:
(WebCore):
* platform/SharedBuffer.h:
* platform/graphics/CrossfadeGeneratedImage.h:
(WebCore):
* platform/graphics/Image.h:
(WebCore):
* platform/network/FormData.h:
(WebCore):
* platform/network/ResourceRequestBase.h:
* platform/network/ResourceResponseBase.h:
* rendering/style/RenderStyle.h:
(WebCore):
* rendering/style/StyleRareInheritedData.h:
(WebCore):
* rendering/style/StyleRareNonInheritedData.h:
(WebCore):

Source/WTF:

* wtf/Forward.h:
(WTF):
* wtf/MemoryInstrumentation.h:

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 13 Sep 2012 08:07:59 +0000 (08:07 +0000)]
Unreviewed GTK gardening.

Removing expectation for fast/canvas/canvas-css-crazy.html, the test
was fixed in r128411.

Marking fast/events/popup-blocking-timers.html as slow and adding a
timeout expectation for touchadjustment/iframe-boundary.html.

* platform/gtk/TestExpectations:

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

7 years ago[CSSRegions][CSSOM] Implement Element.getRegionFlowRanges
commit-queue@webkit.org [Thu, 13 Sep 2012 07:51:00 +0000 (07:51 +0000)]
[CSSRegions][CSSOM] Implement Element.getRegionFlowRanges
https://bugs.webkit.org/show_bug.cgi?id=78493

Patch by Raul Hudea <rhudea@adobe.com> on 2012-09-13
Reviewed by David Hyatt.

Source/WebCore:

Implement the getRegionFlowRanges function from the CSS Regions spec. It is implemented by iterating over
the content nodes and figuring out which nodes have boundingBox intersecting the region box and figuring out
the start and end positions.

Tests: fast/regions/get-region-flow-ranges-absolute-pos.html
       fast/regions/get-region-flow-ranges-content-nodes.html
       fast/regions/get-region-flow-ranges-display-none.html
       fast/regions/get-region-flow-ranges-empty-regions.html
       fast/regions/get-region-flow-ranges-fixed-pos.html
       fast/regions/get-region-flow-ranges-horiz-bt.html
       fast/regions/get-region-flow-ranges-inline-only.html
       fast/regions/get-region-flow-ranges-text-vert-lr.html
       fast/regions/get-region-flow-ranges-text.html
       fast/regions/get-region-flow-ranges-vert-lr.html
       fast/regions/get-region-flow-ranges-vert-rl.html
       fast/regions/get-region-flow-ranges-writing-modes-rl-rb-lr.html
       fast/regions/get-region-flow-ranges-writing-modes-tb-rl-lr.html
       fast/regions/get-region-flow-ranges.html

* dom/Element.cpp:
(WebCore::Element::webkitGetRegionFlowRanges):
(WebCore):
* dom/Element.h:
* dom/Element.idl: added the webkitGetRegionFlowRanges method
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
(WebCore::RenderBlock::hasNextPage): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
(WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage): Added a slower path which works without LayoutState
(WebCore::RenderBlock::clampToStartAndEndRegions): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
* rendering/RenderBox.cpp:
(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
(WebCore::RenderBox::containingBlockAvailableLineWidthInRegion): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
(WebCore::computeInlineStaticDistance): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
* rendering/RenderNamedFlowThread.cpp:
(WebCore::isContainedInNodes):
(WebCore):
(WebCore::boxIntersectsRegion):
(WebCore::RenderNamedFlowThread::getRanges): returns a vector of Ranges that contains Node that are part of a region
* rendering/RenderNamedFlowThread.h:
(RenderNamedFlowThread):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::logicalTopOfFlowThreadContentRect): Returns the logical top of a rectangle inside the flow thread content
(WebCore):
(WebCore::RenderRegion::logicalBottomOfFlowThreadContentRect): Returns the logical bottom of a rectangle inside the flow thread content
(WebCore::RenderRegion::getRanges): proxy the getRanges call to its named flow thread
* rendering/RenderRegion.h:
(RenderRegion):
(WebCore::RenderRegion::logicalTopForFlowThreadContent): Renamed from offsetFromLogicalTopOfFirstPage
(WebCore::RenderRegion::logicalBottomForFlowThreadContent): Returns the logical bottom of the FlowThreadContent rect

LayoutTests:

Add tests for getRegionFlowRanges call.

* fast/regions/get-region-flow-ranges-absolute-pos-expected.txt: Added.
* fast/regions/get-region-flow-ranges-absolute-pos.html: Added.
* fast/regions/get-region-flow-ranges-content-nodes-expected.txt: Added.
* fast/regions/get-region-flow-ranges-content-nodes.html: Added.
* fast/regions/get-region-flow-ranges-display-none-expected.txt: Added.
* fast/regions/get-region-flow-ranges-display-none.html: Added.
* fast/regions/get-region-flow-ranges-empty-regions-expected.txt: Added.
* fast/regions/get-region-flow-ranges-empty-regions.html: Added.
* fast/regions/get-region-flow-ranges-expected.txt: Added.
* fast/regions/get-region-flow-ranges-fixed-pos-expected.txt: Added.
* fast/regions/get-region-flow-ranges-fixed-pos.html: Added.
* fast/regions/get-region-flow-ranges-horiz-bt-expected.txt: Added.
* fast/regions/get-region-flow-ranges-horiz-bt.html: Added.
* fast/regions/get-region-flow-ranges-inline-only-expected.txt: Added.
* fast/regions/get-region-flow-ranges-inline-only.html: Added.
* fast/regions/get-region-flow-ranges-text-expected.txt: Added.
* fast/regions/get-region-flow-ranges-text-vert-lr-expected.txt: Added.
* fast/regions/get-region-flow-ranges-text-vert-lr.html: Added.
* fast/regions/get-region-flow-ranges-text.html: Added.
* fast/regions/get-region-flow-ranges-vert-lr-expected.txt: Added.
* fast/regions/get-region-flow-ranges-vert-lr.html: Added.
* fast/regions/get-region-flow-ranges-vert-rl-expected.txt: Added.
* fast/regions/get-region-flow-ranges-vert-rl.html: Added.
* fast/regions/get-region-flow-ranges-writing-modes-rl-rb-lr-expected.txt: Added.
* fast/regions/get-region-flow-ranges-writing-modes-rl-rb-lr.html: Added.
* fast/regions/get-region-flow-ranges-writing-modes-tb-rl-lr-expected.txt: Added.
* fast/regions/get-region-flow-ranges-writing-modes-tb-rl-lr.html: Added.
* fast/regions/get-region-flow-ranges.html: Added.
* fast/regions/resources/helper.js:
(getName):
(getRangeAt):
(compareArrays):

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

7 years agoCheck if WorkerContext is terminated in WebWorkerClientImple::openFileSystem call.
commit-queue@webkit.org [Thu, 13 Sep 2012 07:47:54 +0000 (07:47 +0000)]
Check if WorkerContext is terminated in WebWorkerClientImple::openFileSystem call.
https://bugs.webkit.org/show_bug.cgi?id=96601

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-09-13
Reviewed by Kent Tamura.

m_webFrame might be already deleted after terminateWorkerContext call.
This patch ensure it be NULL and change to avoid using it.

Test: fast/filesystem/workers/detached-frame-crash.html

* src/WebWorkerClientImpl.cpp:
(WebKit::WebWorkerClientImpl::terminateWorkerContext):
(WebKit::WebWorkerClientImpl::openFileSystem):

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

7 years ago[GTK][NRWT] Lower timeout value to 6 seconds (12 for debug configuration)
zandobersek@gmail.com [Thu, 13 Sep 2012 07:37:45 +0000 (07:37 +0000)]
[GTK][NRWT] Lower timeout value to 6 seconds (12 for debug configuration)
https://bugs.webkit.org/show_bug.cgi?id=96506

Reviewed by Dirk Pranke.

Tools:

Lower the timeout value to 6 seconds for release configuration and 12 seconds
for debug configuration. These are the same values the Chromium port uses.

Currently the value is lowered only for the DumpRenderTree, WebKitTestRunner (and
the layout tests under WebKit2 generally) requires more attention and gardening
than what the current effort produces.

The unit test is updated as well to test these changes.

* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkPort.default_timeout_ms):
* Scripts/webkitpy/layout_tests/port/gtk_unittest.py:
(GtkPortTest.test_default_timeout_ms):
(GtkPortTest.assertLinesEqual):

LayoutTests:

Create a new section for slow tests. Tests listed here pass (or at least
work as expected or reliably) but require more than 6 or 12 seconds to run.

More tests are added into the timeout section. These are primarily tests
that used to take half a minute to run just to be interrupted by the watchdog
in DumpRenderTree and were then reported as text mismatch failures. Now they
will be timing out which is (arguably) a more proper way for them to fail.

* platform/gtk/TestExpectations:

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

7 years ago[EFL][WK2] Make _ref() functions return the object
commit-queue@webkit.org [Thu, 13 Sep 2012 07:35:59 +0000 (07:35 +0000)]
[EFL][WK2] Make _ref() functions return the object
https://bugs.webkit.org/show_bug.cgi?id=96604

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-13
Reviewed by Gyuyoung Kim.

Make _ref() functions return the ref'd object to
make them more convenient to use. Also fix their
usage to make use of the newly returned value.

This change is consistent with eina_stringshare_ref()
in EFL and g_object_ref() in glib.

* UIProcess/API/efl/ewk_back_forward_list.cpp:
(createEinaList):
* UIProcess/API/efl/ewk_back_forward_list_item.cpp:
(ewk_back_forward_list_item_ref):
* UIProcess/API/efl/ewk_back_forward_list_item.h:
* UIProcess/API/efl/ewk_context.cpp:
(ewk_context_download_job_add):
* UIProcess/API/efl/ewk_download_job.cpp:
(ewk_download_job_ref):
(ewk_download_job_response_set):
* UIProcess/API/efl/ewk_download_job.h:
* UIProcess/API/efl/ewk_form_submission_request.cpp:
(ewk_form_submission_request_ref):
* UIProcess/API/efl/ewk_form_submission_request.h:
* UIProcess/API/efl/ewk_intent.cpp:
(ewk_intent_ref):
* UIProcess/API/efl/ewk_intent.h:
* UIProcess/API/efl/ewk_intent_service.cpp:
(ewk_intent_service_ref):
* UIProcess/API/efl/ewk_intent_service.h:
* UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
(ewk_navigation_policy_decision_ref):
* UIProcess/API/efl/ewk_navigation_policy_decision.h:
* UIProcess/API/efl/ewk_url_request.cpp:
(ewk_url_request_ref):
* UIProcess/API/efl/ewk_url_request.h:
* UIProcess/API/efl/ewk_url_response.cpp:
(ewk_url_response_ref):
* UIProcess/API/efl/ewk_url_response.h:
* UIProcess/API/efl/ewk_url_scheme_request.cpp:
(ewk_url_scheme_request_ref):
* UIProcess/API/efl/ewk_url_scheme_request.h:
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_resource_load_initiated):
* UIProcess/API/efl/ewk_web_resource.cpp:
(ewk_web_resource_ref):
* UIProcess/API/efl/ewk_web_resource.h:

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

7 years agofast/table/bad-replaced-sizing-preferred-logical-widths.html is failing on Mac, Chrom...
slewis@apple.com [Thu, 13 Sep 2012 07:19:47 +0000 (07:19 +0000)]
fast/table/bad-replaced-sizing-preferred-logical-widths.html is failing on Mac, Chromium-Mac, GTK, EFL.
https://bugs.webkit.org/show_bug.cgi?id=96594.

Unreviewed.

Update TestExpectations.

* platform/mac/TestExpectations:

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

7 years agonew test fast/canvas/canvas-css-crazy.html fails on Mac
abarth@webkit.org [Thu, 13 Sep 2012 07:16:08 +0000 (07:16 +0000)]
new test fast/canvas/canvas-css-crazy.html fails on Mac
https://bugs.webkit.org/show_bug.cgi?id=96582

Reviewed by Csaba Osztrogonác.

We represent 0 pointers with null, not undefined.

Test: fast/canvas/canvas-css-crazy.html

* bindings/js/JSCanvasRenderingContextCustom.cpp:
(WebCore::toJS):

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

7 years ago[Chromium] Test expectation update
tkent@chromium.org [Thu, 13 Sep 2012 06:59:42 +0000 (06:59 +0000)]
[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96308

* platform/chromium-mac/fast/table/height-percent-test-vertical-expected.png:
Rebaseline for http://trac.webkit.org/changeset/128375.

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

7 years ago[Chromium] Fix cases where find-in-page doesn't send a final update
leandrogracia@chromium.org [Thu, 13 Sep 2012 06:59:14 +0000 (06:59 +0000)]
[Chromium] Fix cases where find-in-page doesn't send a final update
https://bugs.webkit.org/show_bug.cgi?id=96402

Fix some issues in the WebKit implementation that prevented to send a final
reportFindInPageMatchCount message.

Reviewed by Adam Barth.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::shouldScopeMatches):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 13 Sep 2012 06:55:10 +0000 (06:55 +0000)]
Unreviewed GTK gardening.

Removing crash expectations for accessibility tests that were added in
r128342. The offending commit was reverted in r128353.

Adding text mismatch expectations for two tests that probably require
rebaselining, failing since r128375.

Adding failure expectations for other regressions:
- fast/canvas/canvas-css-crazy.html after r128374
- fast/table/bad-replaced-sizing-preferred-logical-widths.html after r128389
- fast/js/primitive-property-access-edge-cases.html after r128400

* platform/gtk/TestExpectations:

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

7 years agoWeb Inspector: [Styles] Styles not updated when there is a heavy stream of DOM updates
apavlov@chromium.org [Thu, 13 Sep 2012 06:46:05 +0000 (06:46 +0000)]
Web Inspector: [Styles] Styles not updated when there is a heavy stream of DOM updates
https://bugs.webkit.org/show_bug.cgi?id=96482

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Update the Styles pane even if there is a pending rebuild update for the same current node.

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane.prototype._rebuildUpdate):

LayoutTests:

* inspector/styles/force-pseudo-state.html:
* inspector/styles/force-pseudo-state-expected.txt:

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

7 years agocss3/filters/custom/filter-fallback-to-software.html fails.
slewis@apple.com [Thu, 13 Sep 2012 06:44:40 +0000 (06:44 +0000)]
css3/filters/custom/filter-fallback-to-software.html fails.
https://bugs.webkit.org/show_bug.cgi?id=94372.

Unreviewed.

Update TestExpectations.

* platform/mac-wk2/TestExpectations:

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

7 years agoAX: svg:image not accessible
cfleizach@apple.com [Thu, 13 Sep 2012 05:54:31 +0000 (05:54 +0000)]
AX: svg:image not accessible
https://bugs.webkit.org/show_bug.cgi?id=96341

Unreviewed.

Build fix for non-SVG ports.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

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

7 years agoNew time input needs accessibility
yosin@chromium.org [Thu, 13 Sep 2012 05:50:07 +0000 (05:50 +0000)]
New time input needs accessibility
https://bugs.webkit.org/show_bug.cgi?id=96032

Reviewed by Chris Fleizach.

Source/WebCore:

This patch adds accessibility support into multiple fields time input
UI by setting "role" HTML attribute of DateTimeFieldElement to "spinbutton"
and changing ARIA attributes to post value change notification.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

Tests: fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes.html
       fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification.html

* html/shadow/DateTimeFieldElement.cpp:
(WebCore::DateTimeFieldElement::DateTimeFieldElement): Changed to set
"role" HTML attribute to "spinbutton".
(WebCore::DateTimeFieldElement::initialize): Changed to set new
parameter axHelpText to aria-help attribute and set aria-valuemax and
aria-valuemin attributes.
(WebCore::DateTimeFieldElement::updateVisibleValue): Changed to set
aria-valuetext and aria-valuenow attributes.
* html/shadow/DateTimeFieldElement.h:
(DateTimeFieldElement): Changed to add new parameter axHelpText to initialize().
* html/shadow/DateTimeFieldElements.cpp:
(WebCore::DateTimeAMPMFieldElement::create): Changed to add new argument.
(WebCore::DateTimeHourFieldElement::create): ditto.
(WebCore::DateTimeMillisecondFieldElement::create): ditto.
(WebCore::DateTimeMinuteFieldElement::create): ditto.
(WebCore::DateTimeSecondFieldElement::create): ditto.
* html/shadow/DateTimeNumericFieldElement.cpp:
(WebCore::DateTimeNumericFieldElement::maximum): Added for DateTimeFieldElement::initialize().
(WebCore::DateTimeNumericFieldElement::minimum): ditto.
* html/shadow/DateTimeNumericFieldElement.h:
(DateTimeNumericFieldElement): Added maximum() and minimum() declarations.
* html/shadow/DateTimeSymbolicFieldElement.cpp:
(WebCore::DateTimeSymbolicFieldElement::maximum): Added for DateTimeFieldElement::initialize().
(WebCore::DateTimeSymbolicFieldElement::minimum): ditto.
* html/shadow/DateTimeSymbolicFieldElement.h:
(DateTimeSymbolicFieldElement): Added maximum() and minimum() declarations.

LayoutTests:

This patch adds two tests for checking accessibility functionalities
in multiple fields time input UI.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

* fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes.html: Added to check ARIA attributes used in multiple fields time input UI.
* fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification.html: Added to check accessibility notification supports in multiple fields time input UI.

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

7 years agoUnreviewed, rolling out r127876.
commit-queue@webkit.org [Thu, 13 Sep 2012 05:09:58 +0000 (05:09 +0000)]
Unreviewed, rolling out r127876.
http://trac.webkit.org/changeset/127876
https://bugs.webkit.org/show_bug.cgi?id=96600

mouse click doesn't work for spin button if spin button in
iframe (Requested by yosin on #webkit).

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

.:

* Source/autotools/symbols.filter:

Source/WebCore:

* WebCore.exp.in:
* WebCore.order:
* dom/Document.cpp:
(WebCore::Document::nodesFromRect):
* dom/Document.h:
(Document):
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::createContextMenu):
* page/DragController.cpp:
(WebCore::DragController::canProcessDrag):
(WebCore::DragController::startDrag):
* page/EventHandler.cpp:
(WebCore::EventHandler::updateAutoscrollRenderer):
(WebCore::EventHandler::hitTestResultAtPoint):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::bestClickableNodeForTouchPoint):
(WebCore::EventHandler::bestContextMenuNodeForTouchPoint):
(WebCore::EventHandler::bestZoomableAreaForTouchPoint):
(WebCore::EventHandler::handleTouchEvent):
* page/EventHandler.h:
(EventHandler):
* page/FocusController.cpp:
(WebCore::updateFocusCandidateIfNeeded):
* page/Frame.cpp:
(WebCore::Frame::visiblePositionForPoint):
(WebCore::Frame::documentAtPoint):
* page/TouchDisambiguation.cpp:
(WebCore::findGoodTouchTargets):
* rendering/HitTestRequest.h:
* testing/Internals.cpp:
(WebCore::Internals::nodesFromRect):

Source/WebKit/blackberry:

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::contextNode):
(BlackBerry::WebKit::WebPagePrivate::nodeForZoomUnderPoint):
(BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
(BlackBerry::WebKit::WebPage::nodeAtPoint):
* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::getNodesFromRect):
(BlackBerry::WebKit::FatFingers::getRelevantInfoFromPoint):
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::visiblePositionForPointIgnoringClipping):

Source/WebKit/chromium:

* src/ContextMenuClientImpl.cpp:
(WebKit::selectMisspelledWord):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchDecidePolicyForNavigationAction):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::characterIndexForPoint):
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::isRectTopmost):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleMouseUp):
(WebKit::WebViewImpl::computeBlockBounds):

Source/WebKit/efl:

* ewk/ewk_frame.cpp:
(ewk_frame_hit_test_new):

Source/WebKit/mac:

* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::actionDictionary):
* WebView/WebHTMLView.mm:
(-[WebHTMLView elementAtPoint:allowShadowContent:]):

Source/WebKit/qt:

* Api/qwebframe.cpp:
(QWebFrame::hitTestContent):
* Api/qwebpage.cpp:
(QWebPagePrivate::handleSoftwareInputPanel):
(QWebPagePrivate::TouchAdjuster::findCandidatePointForTouch):
(QWebPage::updatePositionDependentActions):
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):

Source/WebKit/win:

* WebActionPropertyBag.cpp:
(WebActionPropertyBag::Read):
* WebView.cpp:
(WebView::handleContextMenuEvent):
(WebView::elementAtPoint):

Source/WebKit/wx:

* WebFrame.cpp:
(WebKit::WebFrame::HitTest):

Source/WebKit2:

* WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
(WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::handleContextMenuEvent):
(WebKit::WebPage::highlightPotentialActivation):
(WebKit::WebPage::findZoomableAreaForPoint):
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::characterIndexForPoint):
(WebKit::WebPage::performDictionaryLookupAtLocation):
(WebKit::WebPage::shouldDelayWindowOrderingEvent):
(WebKit::WebPage::acceptsFirstMouse):
* win/WebKit2.def:
* win/WebKit2CFLite.def:

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

7 years ago[Chromium] Test expectation update
tkent@chromium.org [Thu, 13 Sep 2012 04:33:34 +0000 (04:33 +0000)]
[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96308

* platform/chromium-win/fast/table/height-percent-test-vertical-expected.png:
Rebaseline for http://trac.webkit.org/changeset/128375.

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

7 years agoRemoved a reference to a file that doesn’t participate in any target.
mitz@apple.com [Thu, 13 Sep 2012 04:21:04 +0000 (04:21 +0000)]
Removed a reference to a file that doesn’t participate in any target.

* WTF.xcodeproj/project.pbxproj: Removed the reference to
CONTRIBUTORS.pthreads-win32.

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

7 years agoJSC should have property butterflies
fpizlo@apple.com [Thu, 13 Sep 2012 04:18:52 +0000 (04:18 +0000)]
JSC should have property butterflies
https://bugs.webkit.org/show_bug.cgi?id=91933

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This changes the JSC object model. Previously, all objects had fast lookup for
named properties. Integer indexed properties were only fast if you used a
JSArray. With this change, all objects have fast indexed properties. This is
accomplished without any space overhead by using a bidirectional object layout,
aka butterflies. Each JSObject has a m_butterfly pointer where previously it
had a m_outOfLineStorage pointer. To the left of the location pointed to by
m_butterfly, we place all named out-of-line properties. To the right, we place
all indexed properties along with indexing meta-data. Though, some indexing
meta-data is placed in the 8-byte word immediately left of the pointed-to
location; this is in anticipation of the indexing meta-data being small enough
in the common case that m_butterfly always points to the first indexed
property.

This is performance neutral, except on tests that use indexed properties on
plain objects, where the speed-up is in excess of an order of magnitude.

One notable aspect of what this change brings is that it allows indexing
storage to morph over time. Currently this is only used to allow all non-array
objects to start out without any indexed storage. But it could be used for
some kinds of array type inference in the future.

* API/JSCallbackObject.h:
(JSCallbackObject):
* API/JSCallbackObjectFunctions.h:
(JSC::::getOwnPropertySlotByIndex):
(JSC):
(JSC::::getOwnNonIndexPropertyNames):
* API/JSObjectRef.cpp:
* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/ArrayProfile.h:
(JSC):
(JSC::arrayModeFromStructure):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitDirectPutById):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGAdjacencyList.h:
(JSC::DFG::AdjacencyList::AdjacencyList):
(AdjacencyList):
* dfg/DFGArrayMode.cpp:
(JSC::DFG::fromObserved):
(JSC::DFG::modeAlreadyChecked):
(JSC::DFG::modeToString):
* dfg/DFGArrayMode.h:
(DFG):
(JSC::DFG::modeUsesButterfly):
(JSC::DFG::modeIsJSArray):
(JSC::DFG::isInBoundsAccess):
(JSC::DFG::modeSupportsLength):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::getPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::addNode):
(FixupPhase):
(JSC::DFG::FixupPhase::checkArray):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::byValIsPure):
* dfg/DFGNode.h:
(JSC::DFG::Node::Node):
(Node):
* dfg/DFGNodeType.h:
(DFG):
* dfg/DFGOperations.cpp:
(JSC::DFG::putByVal):
* dfg/DFGOperations.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGRepatch.cpp:
(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::emitPutReplaceStub):
(JSC::DFG::emitPutTransitionStub):
(JSC::DFG::tryBuildPutByIdList):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
(JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):
* heap/CopiedSpace.h:
(CopiedSpace):
* jit/JIT.h:
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):
(JSC::JIT::emitAllocateBasicStorage):
(JSC::JIT::emitAllocateJSArray):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_array):
(JSC::JIT::emitSlow_op_new_array):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::compilePutDirectOffset):
(JSC::JIT::privateCompilePatchGetArrayLength):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::compilePutDirectOffset):
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::privateCompilePatchGetArrayLength):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* jsc.cpp:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
* runtime/Arguments.cpp:
(JSC::Arguments::deletePropertyByIndex):
(JSC::Arguments::defineOwnProperty):
* runtime/ArrayConstructor.cpp:
* runtime/ArrayConventions.h: Added.
(JSC):
(JSC::isDenseEnoughForVector):
(JSC::indexingHeaderForArray):
(JSC::baseIndexingHeaderForArray):
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::create):
(JSC):
(JSC::ArrayPrototype::ArrayPrototype):
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncMap):
(JSC::arrayProtoFuncEvery):
(JSC::arrayProtoFuncForEach):
(JSC::arrayProtoFuncSome):
(JSC::arrayProtoFuncReduce):
(JSC::arrayProtoFuncReduceRight):
* runtime/ArrayPrototype.h:
(ArrayPrototype):
(JSC::ArrayPrototype::createStructure):
* runtime/ArrayStorage.h: Added.
(JSC):
(ArrayStorage):
(JSC::ArrayStorage::ArrayStorage):
(JSC::ArrayStorage::from):
(JSC::ArrayStorage::butterfly):
(JSC::ArrayStorage::indexingHeader):
(JSC::ArrayStorage::length):
(JSC::ArrayStorage::setLength):
(JSC::ArrayStorage::vectorLength):
(JSC::ArrayStorage::setVectorLength):
(JSC::ArrayStorage::copyHeaderFromDuringGC):
(JSC::ArrayStorage::inSparseMode):
(JSC::ArrayStorage::lengthOffset):
(JSC::ArrayStorage::vectorLengthOffset):
(JSC::ArrayStorage::numValuesInVectorOffset):
(JSC::ArrayStorage::vectorOffset):
(JSC::ArrayStorage::indexBiasOffset):
(JSC::ArrayStorage::sparseMapOffset):
(JSC::ArrayStorage::sizeFor):
* runtime/Butterfly.h: Added.
(JSC):
(Butterfly):
(JSC::Butterfly::Butterfly):
(JSC::Butterfly::totalSize):
(JSC::Butterfly::fromBase):
(JSC::Butterfly::offsetOfIndexingHeader):
(JSC::Butterfly::offsetOfPublicLength):
(JSC::Butterfly::offsetOfVectorLength):
(JSC::Butterfly::indexingHeader):
(JSC::Butterfly::propertyStorage):
(JSC::Butterfly::indexingPayload):
(JSC::Butterfly::arrayStorage):
(JSC::Butterfly::offsetOfPropertyStorage):
(JSC::Butterfly::indexOfPropertyStorage):
(JSC::Butterfly::base):
* runtime/ButterflyInlineMethods.h: Added.
(JSC):
(JSC::Butterfly::createUninitialized):
(JSC::Butterfly::create):
(JSC::Butterfly::createUninitializedDuringCollection):
(JSC::Butterfly::base):
(JSC::Butterfly::growPropertyStorage):
(JSC::Butterfly::growArrayRight):
(JSC::Butterfly::resizeArray):
(JSC::Butterfly::unshift):
(JSC::Butterfly::shift):
* runtime/ClassInfo.h:
(MethodTable):
(JSC):
* runtime/IndexingHeader.h: Added.
(JSC):
(IndexingHeader):
(JSC::IndexingHeader::offsetOfIndexingHeader):
(JSC::IndexingHeader::offsetOfPublicLength):
(JSC::IndexingHeader::offsetOfVectorLength):
(JSC::IndexingHeader::IndexingHeader):
(JSC::IndexingHeader::vectorLength):
(JSC::IndexingHeader::setVectorLength):
(JSC::IndexingHeader::publicLength):
(JSC::IndexingHeader::setPublicLength):
(JSC::IndexingHeader::from):
(JSC::IndexingHeader::fromEndOf):
(JSC::IndexingHeader::propertyStorage):
(JSC::IndexingHeader::arrayStorage):
(JSC::IndexingHeader::butterfly):
* runtime/IndexingHeaderInlineMethods.h: Added.
(JSC):
(JSC::IndexingHeader::preCapacity):
(JSC::IndexingHeader::indexingPayloadSizeInBytes):
* runtime/IndexingType.h: Added.
(JSC):
(JSC::hasIndexingHeader):
* runtime/JSActivation.cpp:
(JSC::JSActivation::JSActivation):
(JSC::JSActivation::visitChildren):
(JSC::JSActivation::getOwnNonIndexPropertyNames):
* runtime/JSActivation.h:
(JSActivation):
(JSC::JSActivation::tearOff):
* runtime/JSArray.cpp:
(JSC):
(JSC::createArrayButterflyInDictionaryIndexingMode):
(JSC::JSArray::setLengthWritable):
(JSC::JSArray::defineOwnProperty):
(JSC::JSArray::getOwnPropertySlot):
(JSC::JSArray::getOwnPropertyDescriptor):
(JSC::JSArray::put):
(JSC::JSArray::deleteProperty):
(JSC::JSArray::getOwnNonIndexPropertyNames):
(JSC::JSArray::unshiftCountSlowCase):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::push):
(JSC::JSArray::shiftCount):
(JSC::JSArray::unshiftCount):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):
(JSC::JSArray::compactForSorting):
* runtime/JSArray.h:
(JSC):
(JSArray):
(JSC::JSArray::JSArray):
(JSC::JSArray::length):
(JSC::JSArray::createStructure):
(JSC::JSArray::isLengthWritable):
(JSC::createArrayButterfly):
(JSC::JSArray::create):
(JSC::JSArray::tryCreateUninitialized):
* runtime/JSBoundFunction.cpp:
(JSC::boundFunctionCall):
(JSC::boundFunctionConstruct):
(JSC::JSBoundFunction::finishCreation):
* runtime/JSCell.cpp:
(JSC::JSCell::getOwnNonIndexPropertyNames):
(JSC):
* runtime/JSCell.h:
(JSCell):
* runtime/JSFunction.cpp:
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getOwnPropertyDescriptor):
(JSC::JSFunction::getOwnNonIndexPropertyNames):
(JSC::JSFunction::defineOwnProperty):
* runtime/JSFunction.h:
(JSFunction):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
* runtime/JSONObject.cpp:
(JSC::Stringifier::Holder::appendNextProperty):
(JSC::Walker::walk):
* runtime/JSObject.cpp:
(JSC):
(JSC::JSObject::visitButterfly):
(JSC::JSObject::visitChildren):
(JSC::JSFinalObject::visitChildren):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::JSObject::put):
(JSC::JSObject::putByIndex):
(JSC::JSObject::enterDictionaryIndexingModeWhenArrayStorageAlreadyExists):
(JSC::JSObject::enterDictionaryIndexingMode):
(JSC::JSObject::createArrayStorage):
(JSC::JSObject::createInitialArrayStorage):
(JSC::JSObject::ensureArrayStorageExistsAndEnterDictionaryIndexingMode):
(JSC::JSObject::putDirectAccessor):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::getOwnNonIndexPropertyNames):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::fillGetterPropertySlot):
(JSC::JSObject::putIndexedDescriptor):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::allocateSparseIndexMap):
(JSC::JSObject::deallocateSparseIndexMap):
(JSC::JSObject::putByIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putDirectIndexBeyondVectorLength):
(JSC::JSObject::getNewVectorLength):
(JSC::JSObject::increaseVectorLength):
(JSC::JSObject::checkIndexingConsistency):
(JSC::JSObject::growOutOfLineStorage):
(JSC::JSObject::getOwnPropertyDescriptor):
(JSC::putDescriptor):
(JSC::JSObject::putDirectMayBeIndex):
(JSC::JSObject::defineOwnNonIndexProperty):
(JSC::JSObject::defineOwnProperty):
(JSC::JSObject::getOwnPropertySlotSlow):
* runtime/JSObject.h:
(JSC::JSObject::getArrayLength):
(JSObject):
(JSC::JSObject::getVectorLength):
(JSC::JSObject::putDirectIndex):
(JSC::JSObject::canGetIndexQuickly):
(JSC::JSObject::getIndexQuickly):
(JSC::JSObject::canSetIndexQuickly):
(JSC::JSObject::setIndexQuickly):
(JSC::JSObject::initializeIndex):
(JSC::JSObject::completeInitialization):
(JSC::JSObject::inSparseIndexingMode):
(JSC::JSObject::butterfly):
(JSC::JSObject::outOfLineStorage):
(JSC::JSObject::offsetForLocation):
(JSC::JSObject::indexingShouldBeSparse):
(JSC::JSObject::butterflyOffset):
(JSC::JSObject::butterflyAddress):
(JSC::JSObject::arrayStorage):
(JSC::JSObject::arrayStorageOrZero):
(JSC::JSObject::ensureArrayStorage):
(JSC::JSObject::checkIndexingConsistency):
(JSC::JSNonFinalObject::JSNonFinalObject):
(JSC):
(JSC::JSObject::setButterfly):
(JSC::JSObject::setButterflyWithoutChangingStructure):
(JSC::JSObject::JSObject):
(JSC::JSObject::inlineGetOwnPropertySlot):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
(JSC::JSObject::putDirectWithoutTransition):
(JSC::offsetInButterfly):
(JSC::offsetRelativeToPatchedStorage):
(JSC::indexRelativeToBase):
(JSC::offsetRelativeToBase):
* runtime/JSPropertyNameIterator.cpp:
(JSC::JSPropertyNameIterator::create):
* runtime/JSSymbolTableObject.cpp:
(JSC::JSSymbolTableObject::getOwnNonIndexPropertyNames):
* runtime/JSSymbolTableObject.h:
(JSSymbolTableObject):
* runtime/JSTypeInfo.h:
(JSC):
(JSC::TypeInfo::interceptsGetOwnPropertySlotByIndexEvenWhenLengthIsNotZero):
(JSC::TypeInfo::overridesGetPropertyNames):
* runtime/LiteralParser.cpp:
(JSC::::parse):
* runtime/ObjectConstructor.cpp:
* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::ObjectPrototype):
(JSC):
* runtime/ObjectPrototype.h:
(ObjectPrototype):
* runtime/PropertyOffset.h:
(JSC::offsetInOutOfLineStorage):
* runtime/PropertyStorage.h: Added.
(JSC):
* runtime/PutDirectIndexMode.h: Added.
(JSC):
* runtime/RegExpMatchesArray.cpp:
(JSC::RegExpMatchesArray::RegExpMatchesArray):
(JSC):
(JSC::RegExpMatchesArray::create):
(JSC::RegExpMatchesArray::finishCreation):
* runtime/RegExpMatchesArray.h:
(RegExpMatchesArray):
(JSC::RegExpMatchesArray::createStructure):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::getOwnNonIndexPropertyNames):
* runtime/RegExpObject.h:
(RegExpObject):
* runtime/Reject.h: Added.
(JSC):
(JSC::reject):
* runtime/SparseArrayValueMap.cpp: Added.
(JSC):
* runtime/SparseArrayValueMap.h: Added.
(JSC):
(SparseArrayEntry):
(JSC::SparseArrayEntry::SparseArrayEntry):
(SparseArrayValueMap):
(JSC::SparseArrayValueMap::sparseMode):
(JSC::SparseArrayValueMap::setSparseMode):
(JSC::SparseArrayValueMap::lengthIsReadOnly):
(JSC::SparseArrayValueMap::setLengthIsReadOnly):
(JSC::SparseArrayValueMap::find):
(JSC::SparseArrayValueMap::remove):
(JSC::SparseArrayValueMap::notFound):
(JSC::SparseArrayValueMap::isEmpty):
(JSC::SparseArrayValueMap::contains):
(JSC::SparseArrayValueMap::size):
(JSC::SparseArrayValueMap::begin):
(JSC::SparseArrayValueMap::end):
* runtime/SparseArrayValueMapInlineMethods.h: Added.
(JSC):
(JSC::SparseArrayValueMap::SparseArrayValueMap):
(JSC::SparseArrayValueMap::~SparseArrayValueMap):
(JSC::SparseArrayValueMap::finishCreation):
(JSC::SparseArrayValueMap::create):
(JSC::SparseArrayValueMap::destroy):
(JSC::SparseArrayValueMap::createStructure):
(JSC::SparseArrayValueMap::add):
(JSC::SparseArrayValueMap::putEntry):
(JSC::SparseArrayValueMap::putDirect):
(JSC::SparseArrayEntry::get):
(JSC::SparseArrayEntry::getNonSparseMode):
(JSC::SparseArrayValueMap::visitChildren):
* runtime/StorageBarrier.h: Removed.
* runtime/StringObject.cpp:
(JSC::StringObject::putByIndex):
(JSC):
(JSC::StringObject::deletePropertyByIndex):
* runtime/StringObject.h:
(StringObject):
* runtime/StringPrototype.cpp:
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::nonPropertyTransition):
(JSC):
* runtime/Structure.h:
(Structure):
(JSC::Structure::indexingType):
(JSC::Structure::indexingTypeIncludingHistory):
(JSC::Structure::indexingTypeOffset):
(JSC::Structure::create):
* runtime/StructureTransitionTable.h:
(JSC):
(JSC::toAttributes):
(JSC::newIndexingType):
(JSC::StructureTransitionTable::Hash::hash):
* tests/mozilla/js1_6/Array/regress-304828.js:

Source/WebCore:

Teach the DOM that to intercept get/put on indexed properties, you now have
to override getOwnPropertySlotByIndex and putByIndex.

No new tests because no new behavior. One test was rebased because indexed
property iteration order now matches other engines (indexed properties always
come first).

* bindings/js/ArrayValue.cpp:
(WebCore::ArrayValue::get):
* bindings/js/JSBlobCustom.cpp:
(WebCore::JSBlobConstructor::constructJSBlob):
* bindings/js/JSCanvasRenderingContext2DCustom.cpp:
(WebCore::JSCanvasRenderingContext2D::setWebkitLineDash):
* bindings/js/JSDOMStringListCustom.cpp:
(WebCore::toDOMStringList):
* bindings/js/JSDOMStringMapCustom.cpp:
(WebCore::JSDOMStringMap::deletePropertyByIndex):
(WebCore):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore):
(WebCore::JSDOMWindow::putByIndex):
(WebCore::JSDOMWindow::deletePropertyByIndex):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::getOwnPropertySlotByIndex):
(WebCore):
(WebCore::JSDOMWindowShell::putByIndex):
(WebCore::JSDOMWindowShell::deletePropertyByIndex):
* bindings/js/JSDOMWindowShell.h:
(JSDOMWindowShell):
* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::deletePropertyByIndex):
(WebCore):
* bindings/js/JSInspectorFrontendHostCustom.cpp:
(WebCore::populateContextMenuItems):
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::deletePropertyByIndex):
(WebCore):
* bindings/js/JSStorageCustom.cpp:
(WebCore::JSStorage::deletePropertyByIndex):
(WebCore):
* bindings/js/JSWebSocketCustom.cpp:
(WebCore::JSWebSocketConstructor::constructJSWebSocket):
* bindings/js/ScriptValue.cpp:
(WebCore::jsToInspectorValue):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::serialize):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
* bridge/runtime_array.cpp:
(JSC::RuntimeArray::RuntimeArray):
* bridge/runtime_array.h:
(JSC::RuntimeArray::createStructure):
(RuntimeArray):

LayoutTests:

Modify the JSON test to indicate that iterating over properties now returns
indexed properties first. This is a behavior change that makes us more
compliant with other implementations.

Also check in new expected file for the edge cases of indexed property access
with prototype accessors. This changeset introduces a known regression in that
department, which is tracked here: https://bugs.webkit.org/show_bug.cgi?id=96596

* fast/js/resources/JSON-stringify.js:
* platform/mac/fast/js/primitive-property-access-edge-cases-expected.txt: Added.

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

7 years agoAdd SVN mirror handling feature to build.webkit.org
ossy@webkit.org [Thu, 13 Sep 2012 04:18:43 +0000 (04:18 +0000)]
Add SVN mirror handling feature to build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=85887

Reviewed by Dirk Pranke.

* BuildSlaveSupport/build.webkit.org-config/config.json: Add SVN mirrors for Qt buildslaves hosted in Szeged.
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(ConfigureBuild.__init__): Add SVNMirror property to be able to watch which slaves use which mirror on build.webkit.org.
(ConfigureBuild.start):
(CheckOutSource.__init__): Set baseURL to the SVNMirror or the default http://svn.webkit.org/repository/webkit/
(WaitForSVNServer): Add new buildstep for waiting the SVNMirror to be in sync with http://svn.webkit.org/repository/webkit/
(Factory.__init__):
(BuildFactory.__init__):
(TestFactory.__init__):
(BuildAndTestFactory.__init__):
(BuildAndPerfTestFactory.__init__):
(BuildAndPerfTestWebKit2Factory.__init__):
(DownloadAndPerfTestFactory.__init__):
(DownloadAndPerfTestWebKit2Factory.__init__):
(loadBuilderConfig): Use kwargs instead of args to be able to add the optional SVNMirror factory argument.
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(SVNMirrorTest):
(SVNMirrorTest.setUp): Load config.json once at startup.
(SVNMirrorTest.get_SVNMirrorFromConfig): Get the SVNMirror from config.json for a given buildslave.
(SVNMirrorTest.test_CheckOutSource): Compare CheckOutSource.baseURL with SVNMirror in config.json for all builders
* BuildSlaveSupport/build.webkit.org-config/wait-for-SVN-server.py: Added.
(getLatestSVNRevision): Get the latest SVN revison from the given server.
(waitForSVNRevision): Wait until the given SVN revision is committed to the given server. It doesn't wait if the
                      SVN revision is empty (force build triggered without revision) or the server is unavailable.

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

7 years ago[Chromium] Test expectation update
tkent@chromium.org [Thu, 13 Sep 2012 03:22:17 +0000 (03:22 +0000)]
[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96594

* platform/chromium/TestExpectations:
fast/table/bad-replaced-sizing-preferred-logical-widths.html fails on Mac.

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

7 years agoFix indexeddb/basics-shared-workers-expected.txt
dgrogan@chromium.org [Thu, 13 Sep 2012 03:00:13 +0000 (03:00 +0000)]
Fix indexeddb/basics-shared-workers-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=96591

Reviewed by Kent Tamura.

Needed to pass IndexedDBLayoutTest.BasicTests in content_browsertests
after 128370.

* storage/indexeddb/basics-shared-workers-expected.txt:

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

7 years agofast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html fails on...
slewis@apple.com [Thu, 13 Sep 2012 02:20:24 +0000 (02:20 +0000)]
fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html fails on Mac.
https://bugs.webkit.org/show_bug.cgi?id=96583

Unreviewed.

Update TestExpectations

* platform/mac/TestExpectations:

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

7 years ago[WK2][WTR] Set waitUntilDone watchdog timer value equal to WK1.
commit-queue@webkit.org [Thu, 13 Sep 2012 02:13:06 +0000 (02:13 +0000)]
[WK2][WTR] Set waitUntilDone watchdog timer value equal to WK1.
https://bugs.webkit.org/show_bug.cgi?id=81606

Patch by Kangil Han <kangil.han@samsung.com> on 2012-09-12
Reviewed by Tim Horton.

Tools:

6 seconds is harsh for some jquery test cases.
Therefore, adjust the value to match DumpRenderTree.

* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR):

LayoutTests:

Unskip jQuery tests which will now consistently pass due to the increased waitUntilDone timeout.

* platform/wk2/Skipped:

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

7 years agoIntroduce ValidationMessageClient
tkent@chromium.org [Thu, 13 Sep 2012 01:02:29 +0000 (01:02 +0000)]
Introduce ValidationMessageClient
https://bugs.webkit.org/show_bug.cgi?id=96238

Reviewed by Hajime Morita.

ValidationMessageClient interface is responsible to operate validation
message UI for interactive form validation. If a Page object has a
ValidtionMessageClient, ValidationMessae class uses
ValidtionMessageClient instead of Shadow DOM.

No new tests because of no behavior changes.

* GNUmakefile.list.am: Add ValidtionMessageClient.h.
* Target.pri: ditto.
* WebCore.gypi: ditto.
* WebCore.xcodeproj/project.pbxproj: ditto.

* html/ValidationMessage.cpp:
(WebCore::ValidationMessage::~ValidationMessage):
Hide a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::validationMessageClient):
A helper function to get Page::validationMessageClient.
(WebCore::ValidationMessage::updateValidationMessage):
Adding title attribute is not neeeded if ValidationMessageClient is
used. It shoudl be handled in a ValidtionMessageClient implementation.
(WebCore::ValidationMessage::setMessage):
Show a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::setMessageDOMAndStartTimer):
Add an assertion that ValidationMessageClient should not be available.
(WebCore::ValidationMessage::buildBubbleTree): ditto.
(WebCore::ValidationMessage::requestToHideMessage):
Hide a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::shadowTreeContains):
Always returns false if ValidationMessageClient is available, it means no Shadow DOM.
(WebCore::ValidationMessage::deleteBubbleTree):
Add an assertion that ValidationMessageClient should not be available.
(WebCore::ValidationMessage::isVisible):
Ask ValidationMessageClient for visibility if it is available.
* html/ValidationMessage.h:
(WebCore): Add a comment.
(ValidationMessage): Add validtionMessageClient member function.

* page/Page.cpp:
(WebCore::Page::Page): Initialize m_validationMessageClient.
(WebCore::Page::PageClients::PageClients):
Initialize validationMessageClient member with 0.
So, existing code makes Page::m_validationMessageClient 0.
* page/Page.h:
(PageClients): Add validationMessageClient member.
(WebCore::Page::validationMessageClient):
Added. Accessor for m_validationMessageClient.
(Page): Add m_validationMessageClient.

* page/Settings.h:
(Settings): Updated the comment for setInteractiveFormValidationEnabled.

* page/ValidationMessageClient.h: Added.

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

7 years ago[EFL] Support download attribute feature
commit-queue@webkit.org [Thu, 13 Sep 2012 00:56:49 +0000 (00:56 +0000)]
[EFL] Support download attribute feature
https://bugs.webkit.org/show_bug.cgi?id=96462

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-09-12
Reviewed by Gyuyoung Kim.

.:

* Source/cmake/OptionsEfl.cmake: Enable DOWNLOAD_ATTRIBUTE feature.

Source/WebKit/efl:

Add suggested_name field on _Ewk_Download and set it on startDownload
to get suggested name passed as a download attribute.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::download):
(WebCore::FrameLoaderClientEfl::startDownload):
* ewk/ewk_view.h:

Tools:

Enable DOWNLOAD_ATTRIBUTE feature for EFL port,
and add "download,request" callback to the DumpRenderTree for EFL.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::createView):
(DumpRenderTreeChrome::onDownloadRequest):
* DumpRenderTree/efl/DumpRenderTreeChrome.h:
(DumpRenderTreeChrome):
* Scripts/webkitperl/FeatureList.pm:

LayoutTests:

* platform/efl/Skipped: Unskip test cases related to download attributes.
* platform/efl-wk2/TestExpectations: Add test cases related to download attributes because they are still failed for WK2

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

7 years agocss3/filters/custom/filter-fallback-to-software.html fails on Debug WK2.
slewis@apple.com [Thu, 13 Sep 2012 00:52:59 +0000 (00:52 +0000)]
css3/filters/custom/filter-fallback-to-software.html fails on Debug WK2.
https://bugs.webkit.org/show_bug.cgi?id=94372.

Unreviewed.

* platform/mac-wk2/TestExpectations:

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

7 years agoReduce parallism on the wk2 testers.
slewis@apple.com [Thu, 13 Sep 2012 00:49:47 +0000 (00:49 +0000)]
Reduce parallism on the wk2 testers.
https://bugs.webkit.org/show_bug.cgi?id=95906

Reviewed by Dirk Pranke.

The wk2 testers on Mountain Lion are getting stuck and timing out.  The problem appears to be due to
resource contention.  Reducing the number of processes alleviates the issue.

Starting by reducing 25%.

* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort.default_child_processes):

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

7 years ago[V8] OOM in Workers due to external memory retention.
dimich@chromium.org [Thu, 13 Sep 2012 00:43:18 +0000 (00:43 +0000)]
[V8] OOM in Workers due to external memory retention.
https://bugs.webkit.org/show_bug.cgi?id=96459

Reviewed by David Levin.

Added memory checks to the locations in Workers code that are about to invoke the next JS block.

* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/v8/V8GCController.cpp:
(WebCore):
(WebCore::workingSetEstimateMBMutex): Added a Mutex-protected accessors to a static caching WS estimate.
(WebCore::V8GCController::gcEpilogue):
(WebCore::V8GCController::checkMemoryUsage):
* bindings/v8/V8GCController.h:
(V8GCController):
* bindings/v8/V8WorkerContextEventListener.cpp:
(WebCore::V8WorkerContextEventListener::callListenerFunction):
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::evaluate):

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

7 years agoREGRESSION(r122501): replaced elements with percent width are wrongly size when inser...
jchaffraix@webkit.org [Thu, 13 Sep 2012 00:30:07 +0000 (00:30 +0000)]
REGRESSION(r122501): replaced elements with percent width are wrongly size when inserted inside an auto-table layout
https://bugs.webkit.org/show_bug.cgi?id=95892

Reviewed by Ojan Vafai.

Source/WebCore:

r122501 exposed an issue in how preferred logical widths are computed on replaced objects. The code relies on the
logical width computation methods. Unfortunately the previous code relies on the layout information, which may not
be up-to-date during preferred logical width computation.

Test: fast/table/bad-replaced-sizing-preferred-logical-widths.html
      fast/replaced/vertical-writing-mode-max-logical-width.html

* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeMaxPreferredLogicalWidth):
Added this helper method. The main difference with the old code is that it handles the percent logical width
properly before calling the old code path. This is not totally right but before forking the whole code, it's
better to have more evidence that forking preferred logical widths and logical width computation is the way to go.

(WebCore::RenderReplaced::computePreferredLogicalWidths):
Changed to call computeMaxPreferredLogicalWidth. Also fixed an existing bug in vertical-writing modes where we would
add the wrong paddings and borders.

* rendering/RenderReplaced.h:
(RenderReplaced): Added computeMaxPreferredLogicalWidth.

LayoutTests:

* fast/replaced/vertical-writing-mode-max-logical-width-replaced-expected.txt: Added.
* fast/replaced/vertical-writing-mode-max-logical-width-replaced.html: Added.
* fast/table/bad-replaced-sizing-preferred-logical-widths-expected.txt: Added.
* fast/table/bad-replaced-sizing-preferred-logical-widths.html: Added.
* fast/table/resources/iframe.html: Added.

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

7 years agoAssert in NetscapePlugin::destroy() with async plugin init
beidson@apple.com [Thu, 13 Sep 2012 00:18:07 +0000 (00:18 +0000)]
Assert in NetscapePlugin::destroy() with async plugin init
<rdar://problem/12277595> and https://bugs.webkit.org/show_bug.cgi?id=96576

Reviewed by Anders Carlsson.

Source/WebKit2:

Most of the NPN_* API calls have a plug-in protector during the calls.
NPN_Invoke and NPN_InvokeDefault do not.

* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_Invoke): Protect the plug-in during this call.
(WebKit::NPN_InvokeDefault): Ditto.

Tools:

Expose NPN_Invoke to plug-in tests:
* DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
(PluginTest::NPN_Invoke):
* DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
(PluginTest):

Add a test that uses NPN_Invoke on the window object from inside NPP_New to remove the plug-in element:
* DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp: Added.
(InvokeDestroysPluginWithinNPP_New):
(InvokeDestroysPluginWithinNPP_New::InvokeDestroysPluginWithinNPP_New):
(InvokeDestroysPluginWithinNPP_New::NPP_New):
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

LayoutTests:

* platform/mac-wk2/plugins/destroy-during-async-npp-new-expected.txt: Added.
* platform/mac-wk2/plugins/destroy-during-async-npp-new.html: Added.

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

7 years ago[CSS Shaders] Cached validated programs are destroyed and recreated when there is...
commit-queue@webkit.org [Thu, 13 Sep 2012 00:17:23 +0000 (00:17 +0000)]
[CSS Shaders] Cached validated programs are destroyed and recreated when there is only one custom filter animating
https://bugs.webkit.org/show_bug.cgi?id=96563

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-09-12
Reviewed by Dean Jackson.

Before this patch, in FilterEffectRenderer::build, we would first clear the old effects and
then create the new effects.

Suppose we have one FECustomFilter animating on the page. This FECustomFilter holds the last
reference to the cached validated program. Before this patch, we would first destroy the old
FECustomFilter, which would destroy its cached validated program. Then, we would create the
new FECustomFilter and have to recreate the validated program.

This patch makes FilterEffectRenderer::build keep the old effects around until we're
done creating the new effects. This way, we won't recreate validated programs.

No new tests. We can't test this because the validated program cache is not exposed to web
pages.

* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build):

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

7 years agorefactor TestExpectations tokenization slightly in preparation for the new syntax
dpranke@chromium.org [Thu, 13 Sep 2012 00:13:06 +0000 (00:13 +0000)]
refactor TestExpectations tokenization slightly in preparation for the new syntax
https://bugs.webkit.org/show_bug.cgi?id=96564

Reviewed by Ojan Vafai.

This change changes how we will tokenize/lex the
TestExpectations files, in preparation for supporting both the
old syntax and the new one. This change by itself should be a
no-op.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser._tokenize_line):
(TestExpectationParser):
(TestExpectationParser._tokenize_line_using_old_format):
(TestExpectationParser._tokenize_line_using_new_format):

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

7 years agoremove unused testexpectations editing code from webkitpy, garden-o-matic
dpranke@chromium.org [Thu, 13 Sep 2012 00:09:32 +0000 (00:09 +0000)]
remove unused testexpectations editing code from webkitpy, garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=96562

Reviewed by Adam Barth.

This code was prototyped but never fully realized. Removing
until it reanimates :).

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout_unittests.js:
* Scripts/webkitpy/layout_tests/controllers/test_expectations_editor.py: Removed.
* Scripts/webkitpy/layout_tests/controllers/test_expectations_editor_unittest.py: Removed.
* Scripts/webkitpy/tool/servers/gardeningserver.py:
(BuildCoverageExtrapolator.extrapolate_test_configurations):
(GardeningHTTPRequestHandler._run_webkit_patch):
(GardeningHTTPRequestHandler.ping):
* Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
(BuildCoverageExtrapolatorTest.test_extrapolate):
(GardeningServerTest.test_rebaseline_new_port):

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

7 years agoRebaseline chromium-mac pixel results for 128375
jamesr@google.com [Thu, 13 Sep 2012 00:04:41 +0000 (00:04 +0000)]
Rebaseline chromium-mac pixel results for 128375

* platform/chromium-mac-snowleopard/fast/table/height-percent-test-vertical-expected.png:
* platform/chromium-mac/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added.

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

7 years agoflex item sized incorrectly in a column flexbox with height set via top/bottom
tony@chromium.org [Wed, 12 Sep 2012 23:48:43 +0000 (23:48 +0000)]
flex item sized incorrectly in a column flexbox with height set via top/bottom
https://bugs.webkit.org/show_bug.cgi?id=94855

Reviewed by Ojan Vafai.

Source/WebCore:

Stop using computeContentLogicalHeight() to get the height of the flexbox and
use computeLogicalHeight directly.  This properly takes into account out of flow
positioning.

We can actually refactor some of this into common code, but I want to do that as
a separate pass.

Test: css3/flexbox/columns-height-set-via-top-bottom.html

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): Fix out of date comment.
(WebCore::RenderFlexibleBox::mainAxisContentExtent): Use computeLogicalHeight instead of computeContentLogicalHeight.
This code actually never gets used-- I'll try to remove in a follow up.
(WebCore::RenderFlexibleBox::computeAvailableFreeSpace): Use computeLogicalHeight instead of computeContentLogicalHeight.
(WebCore::RenderFlexibleBox::lineBreakLength): Use computeLogicalHeight instead of computeContentLogicalHeight.

LayoutTests:

Test where the height of a column flexbox is set via top and bottom.

* css3/flexbox/columns-height-set-via-top-bottom-expected.txt: Added.
* css3/flexbox/columns-height-set-via-top-bottom.html: Added.

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

7 years ago[V8] V8DOMWrapper::perContextData has no callers and can be removed
abarth@webkit.org [Wed, 12 Sep 2012 23:44:33 +0000 (23:44 +0000)]
[V8] V8DOMWrapper::perContextData has no callers and can be removed
https://bugs.webkit.org/show_bug.cgi?id=96574

Reviewed by Kentaro Hara.

* bindings/v8/V8DOMWrapper.cpp:
* bindings/v8/V8DOMWrapper.h:
(WebCore::V8DOMWrapper::getCachedWrapper):

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

7 years agoRemove unused bot, apple-xserve-1.
lforschler@apple.com [Wed, 12 Sep 2012 23:36:35 +0000 (23:36 +0000)]
Remove unused bot, apple-xserve-1.
https://bugs.webkit.org/show_bug.cgi?id=96570

Reviewed by Stephanie Lewis.

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

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

7 years ago[CSS Shaders] Implement transform parameter animations for CSS Custom Filters
achicu@adobe.com [Wed, 12 Sep 2012 23:33:41 +0000 (23:33 +0000)]
[CSS Shaders] Implement transform parameter animations for CSS Custom Filters
https://bugs.webkit.org/show_bug.cgi?id=94980

Reviewed by Dean Jackson.

Based on patch from Joshua Netterfield <jnetterfield@rim.com>.

Source/WebCore:

According to Section 39.2 of Filter Effects 1.0 Editor's draft
(https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html), animations
of transforms should be handled following the CSS3 transform interpolation
rules. This patch implements this functionality.

Test: css3/filters/custom/custom-filter-transforms-animation.html

* page/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
(WebCore):
* platform/graphics/filters/CustomFilterNumberParameter.h:
(WebCore::CustomFilterNumberParameter::blend):
* platform/graphics/filters/CustomFilterOperation.cpp:
(WebCore::blendCustomFilterParameters):
(WebCore::CustomFilterOperation::blend):
* platform/graphics/filters/CustomFilterOperation.h:
(WebCore):
(WebCore::CustomFilterOperation::blendingNeedsRendererSize): Some filters need the box size, so that they could compute
Transforms. Right now only the CustomFilterOperation needs that, but I've implemented using this generic function.
(CustomFilterOperation):
* platform/graphics/filters/CustomFilterParameter.h:
(CustomFilterParameter):
* platform/graphics/filters/CustomFilterTransformParameter.h:
(CustomFilterTransformParameter):
(WebCore::CustomFilterTransformParameter::blend):
* platform/graphics/filters/FilterOperation.h:
(WebCore::FilterOperation::FilterOperation::blend):
(FilterOperation):
(WebCore::FilterOperation::FilterOperation::blendingNeedsRendererSize):
* platform/graphics/transforms/TransformOperations.cpp: Extracted the blending functions from CSSPropertyAnimation.cpp
so that they could be reused from other classes.
(WebCore::TransformOperations::blendByMatchingOperations):
(WebCore):
(WebCore::TransformOperations::blendByUsingMatrixInterpolation): Used when the TransformOperations do not match.
(WebCore::TransformOperations::blend): Uses when the caller doesn't know whether the TransformOperations match or not.
* platform/graphics/transforms/TransformOperations.h:
(TransformOperations):

LayoutTests:

Added test transform animations in css3/filters/custom/custom-filter-transform-animation.html.

* animations/resources/animation-test-helpers.js:
(customFilterParameterMatch): Extracted the parameter matching from filterParametersMatch and added function parameters matching.
This should work for all functions that have number parameters, ie. arrays, mat4 functions.

(filterParametersMatch):
* css3/filters/custom/custom-filter-transforms-animation-expected.txt: Added.
* css3/filters/custom/custom-filter-transforms-animation.html: Added.
* css3/filters/resources/custom-filter-parser.js: Fixed function parsing.
(TokenStream.prototype.skip):

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

7 years agoIndexedDB: Use ScriptValue instead of SerializedScriptValue when possible
commit-queue@webkit.org [Wed, 12 Sep 2012 23:20:22 +0000 (23:20 +0000)]
IndexedDB: Use ScriptValue instead of SerializedScriptValue when possible
https://bugs.webkit.org/show_bug.cgi?id=94023

Patch by Alec Flett <alecflett@chromium.org> on 2012-09-12
Reviewed by Kentaro Hara.

Transition the put/add/update methods to accept direct ScriptValue
objects rather than SerializedScriptValues, to eliminate lots of
redundant deserialization/serialization steps while storing
values.

Also see https://bugs.webkit.org/show_bug.cgi?id=95409 for
followup get/openCursor work, following this.

No new tests, this is a performance refactor of core IDB
functionality. Most existing tests cover correctness. Tests that
might fail include:

storage/indexeddb/objectstore-basics.html
storage/indexeddb/keypath-basics.html
storage/indexeddb/index-basics.html

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::update):
* Modules/indexeddb/IDBCursor.h:
(IDBCursor):
* Modules/indexeddb/IDBCursor.idl:
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::generateIndexKeysForValue):
(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(WebCore):
* Modules/indexeddb/IDBObjectStore.h:
(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(IDBObjectStore):
* Modules/indexeddb/IDBObjectStore.idl:
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore):
(WebCore::createIDBKeyFromScriptValueAndKeyPath):
(WebCore::deserializeIDBValue):
(WebCore::canInjectIDBKeyIntoScriptValue):
* bindings/v8/IDBBindingUtilities.h:
(WebCore):

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

7 years ago[chromium] Remove unused WebGestureEvent fields
commit-queue@webkit.org [Wed, 12 Sep 2012 23:17:00 +0000 (23:17 +0000)]
[chromium] Remove unused WebGestureEvent fields
https://bugs.webkit.org/show_bug.cgi?id=95496

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-12
Reviewed by Adam Barth.

Remove the no-longer used fields from WebGestureEvent, now that
chromium has been updated to use the per-event-type fields instead.
This depends on crrev.com/156346 in chromium.

* public/WebInputEvent.h:
(WebKit::WebGestureEvent::WebGestureEvent):
* public/android/WebInputEventFactory.h:
* src/WebInputEvent.cpp:
(SameSizeAsWebGestureEvent):
* src/android/WebInputEventFactory.cpp:
(WebKit):
(WebKit::WebInputEventFactory::gestureEvent):

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

7 years agoUnreviewed, rolling out r128351.
commit-queue@webkit.org [Wed, 12 Sep 2012 23:10:11 +0000 (23:10 +0000)]
Unreviewed, rolling out r128351.
http://trac.webkit.org/changeset/128351
https://bugs.webkit.org/show_bug.cgi?id=96573

Broke FindInPage browser_tests (Requested by jamesr_ on
#webkit).

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

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::cancelPendingScopingEffort):
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):
(WebKit::WebFrameImpl::shouldScopeMatches):

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

7 years agoAX: svg:image not accessible
cfleizach@apple.com [Wed, 12 Sep 2012 22:56:47 +0000 (22:56 +0000)]
AX: svg:image not accessible
https://bugs.webkit.org/show_bug.cgi?id=96341

Reviewed by Adele Peterson.

Source/WebCore:

Test: accessibility/svg-image.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

LayoutTests:

* accessibility/svg-image.html: Added.
* platform/mac/accessibility/svg-image-expected.txt: Added.

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