WebKit-https.git
6 years agoREGRESSION(r122215) - CachedImage::likelyToBeUsedSoon crashes on accessing a deleted...
hclam@chromium.org [Fri, 28 Sep 2012 23:58:22 +0000 (23:58 +0000)]
REGRESSION(r122215) - CachedImage::likelyToBeUsedSoon crashes on accessing a deleted CachedImageClient
https://bugs.webkit.org/show_bug.cgi?id=97749

Reviewed by James Robinson.

.:

Added a manual test to demonstrate drag image and crashing.

* ManualTests/drag-image-no-crash.html: Added.

Source/WebCore:

All implementations of Clipboard set themselves as clients to CachedImage
through the JS API setDrageImage() but they do not detach during destruction.
This causes memory corruption when CachedImage tries to access a deleted client
when MemoryCache prunes and calls CachedImage::likelyToUsedSoon().

Manual test added: ManualTests/drag-image-no-crash.html

* platform/chromium/ClipboardChromium.cpp:
(WebCore::ClipboardChromium::~ClipboardChromium):
* platform/gtk/ClipboardGtk.cpp:
(WebCore::ClipboardGtk::~ClipboardGtk):
* platform/mac/ClipboardMac.mm:
(WebCore::ClipboardMac::~ClipboardMac):
* platform/win/ClipboardWin.cpp:
(WebCore::ClipboardWin::~ClipboardWin):

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

6 years agoRemove Instance::setDidExecuteFunction
andersca@apple.com [Fri, 28 Sep 2012 23:41:58 +0000 (23:41 +0000)]
Remove Instance::setDidExecuteFunction
https://bugs.webkit.org/show_bug.cgi?id=97952

Reviewed by Alexey Proskuryakov.

Instance::setDidExecuteFunction was added over 8 years ago to fix a bug where Objective-C
DOM calls weren't updating the document correctly. Nowadays we correctly invalidate the DOM tree
when these calls are made so we don't need an extra step to do so.

* bindings/js/ScriptControllerMac.mm:
(WebCore):
(WebCore::ScriptController::initJavaJSBindings):
* bindings/objc/WebScriptObject.mm:
(-[WebScriptObject callWebScriptMethod:withArguments:]):
(-[WebScriptObject evaluateWebScript:]):
(-[WebScriptObject setValue:forKey:]):
(-[WebScriptObject valueForKey:]):
(-[WebScriptObject removeWebScriptKey:]):
(-[WebScriptObject hasWebScriptKey:]):
(-[WebScriptObject stringRepresentation]):
(-[WebScriptObject webScriptValueAtIndex:]):
(-[WebScriptObject setWebScriptValueAtIndex:value:]):
* bridge/jsc/BridgeJSC.cpp:
* bridge/jsc/BridgeJSC.h:
(Instance):

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

6 years agoAdd draggable property to WebDraggableRegion.
jianli@chromium.org [Fri, 28 Sep 2012 23:38:48 +0000 (23:38 +0000)]
Add draggable property to WebDraggableRegion.
https://bugs.webkit.org/show_bug.cgi?id=97950

Reviewed by Adam Barth.

This needs to be done before we can land the patch to use new syntax for
draggable regions. This is because Chromium side code cannot enable
the changes to support new syntax side by side when this property is
not present.

* public/WebDraggableRegion.h:
(WebDraggableRegion):

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

6 years ago<rdar://problem/12398537> WebKit2 lacks API for disabling document.cookie like -...
mitz@apple.com [Fri, 28 Sep 2012 23:14:53 +0000 (23:14 +0000)]
<rdar://problem/12398537> WebKit2 lacks API for disabling document.cookie like -[WebView _setCookieEnabled:]
https://bugs.webkit.org/show_bug.cgi?id=97939

Reviewed by Sam Weinig.

* Shared/WebPreferencesStore.h:
(WebKit): Defined CookieEnabled key with a default value of true.
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetCookieEnabled): Added this setter.
(WKPreferencesGetCookieEnabled): Added this getter.
* UIProcess/API/C/WKPreferencesPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences): Added a call to Settings::setCookieEnabled to push the
preference into Settings.

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

6 years agoImprove saturation arithmetic support in FractionalLayoutUnit
eae@chromium.org [Fri, 28 Sep 2012 23:12:56 +0000 (23:12 +0000)]
Improve saturation arithmetic support in FractionalLayoutUnit
https://bugs.webkit.org/show_bug.cgi?id=97938

Reviewed by Levi Weintraub.

Source/WebCore:

Fix bug in FractionalLayoutUnit::setValue where greater than or
equals is used instead of greater than to clamp the values.
Add SATURATED_LAYOUT_ARITHMETIC support to round preventing it
from overflowing when adding the fraction.

Test: fast/sub-pixel/large-sizes.html

* platform/FractionalLayoutUnit.h:
(WebCore::FractionalLayoutUnit::round):
(WebCore::FractionalLayoutUnit::setValue):

LayoutTests:

Update large sizes test to better cover values near limit.

* fast/sub-pixel/large-sizes-expected.txt:
* fast/sub-pixel/large-sizes.html:

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

6 years agoFix pluralization of Info.plist key.
weinig@apple.com [Fri, 28 Sep 2012 23:08:09 +0000 (23:08 +0000)]
Fix pluralization of Info.plist key.

Rubber-stamped by Anders Carlsson.

* WebProcessService/Info.plist:
* WebProcessServiceForWebKitDevelopment/Info.plist:
It's _MultipleInstances, not _MultipleInstance. :(

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

6 years agoTextureMapperGL destructor crashes
commit-queue@webkit.org [Fri, 28 Sep 2012 23:07:39 +0000 (23:07 +0000)]
TextureMapperGL destructor crashes
https://bugs.webkit.org/show_bug.cgi?id=97942

Patch by Luiz Agostini <luiz.agostini@nokia.com> on 2012-09-28
Reviewed by Noam Rosenthal.

BitmapTextureGL destructor uses a TextureMapperGL instance. The problem is that
BitmapTextureGL objects are destroyed on TextureMapper destructor and at that
time TextureMapperGL specific methods and data are not available any more.

This patch creates a new protected method TextureMapper::clearTexturePool()
that is called in TextureMapperGL's destructor.

* platform/graphics/texmap/TextureMapper.h:
(WebCore::TextureMapper::clearTexturePool):
* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::~TextureMapperGL):

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

6 years agoREGRESSION(r124168): Null crash in RenderLayer::createScrollbar
jchaffraix@webkit.org [Fri, 28 Sep 2012 22:42:57 +0000 (22:42 +0000)]
REGRESSION(r124168): Null crash in RenderLayer::createScrollbar
https://bugs.webkit.org/show_bug.cgi?id=96863

Reviewed by Abhishek Arya.

Source/WebCore:

After r124168, we synchronously create any overflow:scroll scrollbar on the first style change - we used to wait
until layout was called. The issue is that the logic in RenderLayer assumes that our node is completely attached
when the style change is dispatched. The crash occured because the 'content' image code path in
RenderObject::createObject triggered a style change too early.

Test: scrollbars/scrollbar-content-crash.html

* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
We need a style associated with the new RenderImage to call setImageResource but we don't need to trigger a
style change.

LayoutTests:

* scrollbars/scrollbar-content-crash-expected.txt: Added.
* scrollbars/scrollbar-content-crash.html: Added.

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

6 years agoWontFix frame flattening crash test.
ojan@chromium.org [Fri, 28 Sep 2012 22:05:42 +0000 (22:05 +0000)]
WontFix frame flattening crash test.
* platform/chromium/TestExpectations:

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

6 years agoperf/nested-combined-selectors.html is flaky on Lion as well.
ojan@chromium.org [Fri, 28 Sep 2012 21:51:36 +0000 (21:51 +0000)]
perf/nested-combined-selectors.html is flaky on Lion as well.
* platform/chromium/TestExpectations:

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

6 years agoAdd two resources needed for the test added in r129944.
simon.fraser@apple.com [Fri, 28 Sep 2012 21:41:18 +0000 (21:41 +0000)]
Add two resources needed for the test added in r129944.

* plugins/resources/plugin-frame.html: Added.
* plugins/resources/plugin-page.html: Added.

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

6 years agoMark this test as Missing since it has no png on any platform.
ojan@chromium.org [Fri, 28 Sep 2012 21:32:23 +0000 (21:32 +0000)]
Mark this test as Missing since it has no png on any platform.
* platform/chromium/TestExpectations:

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

6 years agoAdd canvas to set of elements that do not allow style sharing in order
schenney@chromium.org [Fri, 28 Sep 2012 21:23:25 +0000 (21:23 +0000)]
Add canvas to set of elements that do not allow style sharing in order
to provoke RenderLayer creation
https://bugs.webkit.org/show_bug.cgi?id=97013

Unreviewed expectations update.

* platform/chromium-mac/fast/canvas/canvas-render-layer-expected.png: Added.
* platform/chromium-mac/fast/canvas/canvas-render-layer-expected.txt: Added.
* platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/canvas-render-layer-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/canvas-render-layer-expected.txt: Added.
* platform/chromium-win/fast/canvas/canvas-render-layer-expected.png: Added.
* platform/chromium-win/fast/canvas/canvas-render-layer-expected.txt: Added.
* platform/chromium-win/platform/chromium/virtual/gpu/fast/canvas/canvas-render-layer-expected.png: Added.
* platform/chromium-win/platform/chromium/virtual/gpu/fast/canvas/canvas-render-layer-expected.txt: Added.

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

6 years ago[Chromium] Unreviewed rebaseline for svg/custom/clip-mask-negative-scale.svg
fmalita@chromium.org [Fri, 28 Sep 2012 21:15:39 +0000 (21:15 +0000)]
[Chromium] Unreviewed rebaseline for svg/custom/clip-mask-negative-scale.svg

* platform/chromium-mac-snowleopard/svg/custom/clip-mask-negative-scale-expected.png: Added.
* platform/chromium-mac/svg/custom/clip-mask-negative-scale-expected.png: Added.
* platform/chromium-win/svg/custom/clip-mask-negative-scale-expected.png: Added.
* platform/chromium/svg/custom/clip-mask-negative-scale-expected.txt: Renamed from LayoutTests/platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.txt.

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

6 years agoASSERTION in m_graph[tailNodeIndex].op() == Flush || m_graph[tailNodeIndex].op()...
fpizlo@apple.com [Fri, 28 Sep 2012 20:57:47 +0000 (20:57 +0000)]
ASSERTION in m_graph[tailNodeIndex].op() == Flush || m_graph[tailNodeIndex].op() == SetLocal on plus.google.com
https://bugs.webkit.org/show_bug.cgi?id=97656

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

There were two bugs here:

1) In case of multiple GetLocals to the same captured variable, the bytecode parser would linke the first,
   rather than the last, of the GetLocals into the vars-at-tail table.

2) The constant folding phase was asserting that any GetLocal it eliminates must be linked into the
   vars-at-tail table, when for captured variables only the last of those should be.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getLocal):
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):

LayoutTests:

* fast/js/dfg-redundant-load-of-captured-variable-proven-constant-expected.txt: Added.
* fast/js/dfg-redundant-load-of-captured-variable-proven-constant.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-redundant-load-of-captured-variable-proven-constant.js: Added.
(o.f):

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

6 years ago[Chromium] WebFrameImpl::m_frame is redundant now that WebFrameImpl inherits from...
abarth@webkit.org [Fri, 28 Sep 2012 20:57:08 +0000 (20:57 +0000)]
[Chromium] WebFrameImpl::m_frame is redundant now that WebFrameImpl inherits from FrameDestructionObserver
https://bugs.webkit.org/show_bug.cgi?id=97934

Reviewed by James Robinson.

After http://trac.webkit.org/changeset/129910, WebFrameImpl inherits
from FrameDestructionObserver, which means it no longer need to manage
its own weak pointer to WebCore::Frame.

* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::frameLoaderDestroyed):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::WebFrameImpl):
(WebKit::WebFrameImpl::setWebCoreFrame):
* src/WebFrameImpl.h:
(WebKit::WebFrameImpl::frameView):

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

6 years agoChromium should respect 'text-rendering:geometricPrecision' by disabling hinting.
commit-queue@webkit.org [Fri, 28 Sep 2012 20:51:36 +0000 (20:51 +0000)]
Chromium should respect 'text-rendering:geometricPrecision' by disabling hinting.
https://bugs.webkit.org/show_bug.cgi?id=97932

Patch by Ben Wagner <bungeman@chromium.org> on 2012-09-28
Reviewed by Stephen White.

When text-redering:geometricPrecision css property is present, the specification states that hinting should be disabled. This change does so.

This also provides users a more stable and sane means of achieving the result webkit-font-smoothing:antialiased has been providing by accident.
See http://crbug.com/152304 .

* platform/graphics/skia/FontSkia.cpp:
(WebCore::setupPaint):

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

6 years agoCrash re-entering Document layout with frame flattening enabled
simon.fraser@apple.com [Fri, 28 Sep 2012 20:44:58 +0000 (20:44 +0000)]
Crash re-entering Document layout with frame flattening enabled
https://bugs.webkit.org/show_bug.cgi?id=97841

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Walking up to parent FrameViews when doing a frame-flattening
layout should walk via the Frame tree, not the Widget hierarchy.
Walking via the Frame tree ensures that we don't walk up to the
root Frame when laying out a subframe that is in the page cache.
That's bad, because the root Frame is reused for the new
page, and laying it out from a frame in the page cache causes
re-entrant layout.

Test: plugins/frameset-with-plugin-frame.html

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

LayoutTests:

Test that navigates from one frameset to another frameset, where
one of the subframes contains a plugin.

* plugins/frameset-with-plugin-frame-expected.txt: Added.
* plugins/frameset-with-plugin-frame.html: Added.
* plugins/resources/frame-with-plugin-subframe.html: Added.
* plugins/resources/target-frameset-frame.html: Added.
* plugins/resources/target-frameset.html: Added.

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

6 years agoDFGStructureHoistingPhase SetLocal assumes StructureTransitionWatchpoint has a struct...
fpizlo@apple.com [Fri, 28 Sep 2012 20:38:40 +0000 (20:38 +0000)]
DFGStructureHoistingPhase SetLocal assumes StructureTransitionWatchpoint has a structure set
https://bugs.webkit.org/show_bug.cgi?id=97810

Reviewed by Mark Hahnenberg.

No tests because this can't happen in ToT: the structure check hoisting phase runs before any
CFA or folding, so the only StructureTransitionWatchpoints it will see are the ones inserted
by the parser. But the parser will only insert StructureTransitinWatchpoints on constants, which
will not be subject to SetLocals.

Still, it would be good to fix this in case things changed.

* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):

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

6 years agoPass the correct path length to _NSGetExecutablePath
andersca@apple.com [Fri, 28 Sep 2012 20:33:13 +0000 (20:33 +0000)]
Pass the correct path length to _NSGetExecutablePath
https://bugs.webkit.org/show_bug.cgi?id=97935

Reviewed by Sam Weinig.

* WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
(WebProcessServiceForWebKitDevelopmentEventHandler):
Initialize pathLength before passing it to _NSGetExecutablePath.

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

6 years agowebkit-patch rebaseline-expectations is broken
dpranke@chromium.org [Fri, 28 Sep 2012 20:28:00 +0000 (20:28 +0000)]
webkit-patch rebaseline-expectations is broken
https://bugs.webkit.org/show_bug.cgi?id=97619

Reviewed by Ojan Vafai.

The new expectations format is causing two problems for
webkit-patch rebaseline expectations

1) the transformation into and out of the old syntax (which is
still used internally) is somewhat lossy, e.g., we're not
preserving the case of Bug(x) identifiers. Also, we can't
tell if the input was [ WontFix ] or [ Skip WontFix Pass ]
2) the new syntax is more lenient, allowing for multiple ways to
specify the same result, e.g., "[ Skip ]" may or may not be
missing.

As a result, we end up rewriting a whole bunch of lines for
purely syntactic differences.

Both of these things are bugs that need to be fixed, but
we should also not just rewrite lines that shouldn't be
modified.

This patch fixes the last issue (no rewriting).

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationLine._format_line):
(TestExpectations.remove_rebaselined_tests):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(RebaseliningTest.test_remove):

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

6 years agoUnreviewed, rolling out r129911.
jsbell@chromium.org [Fri, 28 Sep 2012 20:24:34 +0000 (20:24 +0000)]
Unreviewed, rolling out r129911.
http://trac.webkit.org/changeset/129911
https://bugs.webkit.org/show_bug.cgi?id=97933

Inspector test crashes on win debug (Requested by jsbell on
#webkit).

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

* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::taskTimerFired):

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

6 years agoUnskip fast/text/descent-clip-in-scaled-page.html
jonlee@apple.com [Fri, 28 Sep 2012 20:14:38 +0000 (20:14 +0000)]
Unskip fast/text/descent-clip-in-scaled-page.html
https://bugs.webkit.org/show_bug.cgi?id=91552

The test now passes on Mac.

* platform/mac/TestExpectations:

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

6 years agoSource/WebCore: [HarfBuzz] harfbuzz expects log_clusters to have same length as other...
yoli@rim.com [Fri, 28 Sep 2012 20:13:01 +0000 (20:13 +0000)]
Source/WebCore: [HarfBuzz] harfbuzz expects log_clusters to have same length as other buffers.
https://bugs.webkit.org/show_bug.cgi?id=97725

Reviewed by Tony Chang.

log_clusters should have same length as other buffers, which is number of glyphs.

Test: fast/text/international/harfbuzz-buffer-overrun.html

* platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp:
(WebCore::ComplexTextController::ComplexTextController):
(WebCore::ComplexTextController::~ComplexTextController):
(WebCore::ComplexTextController::deleteGlyphArrays):
(WebCore::ComplexTextController::createGlyphArrays):

LayoutTests: [HarfBuzz] harfbuzz expects log_clusters to have same length as other buffers
https://bugs.webkit.org/show_bug.cgi?id=97725

Reviewed by Tony Chang.

Add a test case. A buffer overrun doesn't always cause immediate crash unless it runs with some
memory verification techs like WTF_FASTMALLOC_VALIDATION.

* fast/text/international/harfbuzz-buffer-overrun-expected.txt: Added.
* fast/text/international/harfbuzz-buffer-overrun.html: Added.

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

6 years agoWebKitLoaderClient: add missing initializer.
commit-queue@webkit.org [Fri, 28 Sep 2012 20:03:34 +0000 (20:03 +0000)]
WebKitLoaderClient: add missing initializer.
https://bugs.webkit.org/show_bug.cgi?id=97930

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-09-28
Reviewed by Martin Robinson.

WKPageLoaderClient is missing the initializer for the didLayout
field. Fixes -Wmissing-field-initializers.

* UIProcess/API/gtk/WebKitLoaderClient.cpp:
(attachLoaderClientToView):

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

6 years ago[Chromium] Incorrect resampling of clipped/masked images.
schenney@chromium.org [Fri, 28 Sep 2012 19:57:05 +0000 (19:57 +0000)]
[Chromium] Incorrect resampling of clipped/masked images.
https://bugs.webkit.org/show_bug.cgi?id=97409

Unreviewed expectations update.

Another pass may be required to get the remaining platforms.

* platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.png: Updated and added property svn:mime-type.
* platform/chromium/TestExpectations:

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

6 years agoUnreviewed Chromium Win build fix.
schenney@chromium.org [Fri, 28 Sep 2012 19:50:29 +0000 (19:50 +0000)]
Unreviewed Chromium Win build fix.

* src/WebViewImpl.cpp: Added "f" on initializers for floats.
(WebKit):
* tests/WebFrameTest.cpp: Added "f" on initializers for floats.

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

6 years agoSource/WebCore: Add canvas to set of elements that do not allow style sharing in...
commit-queue@webkit.org [Fri, 28 Sep 2012 19:48:03 +0000 (19:48 +0000)]
Source/WebCore: Add canvas to set of elements that do not allow style sharing in order to provoke RenderLayer creation
https://bugs.webkit.org/show_bug.cgi?id=97013

Patch by Brian Salomon <bsalomon@google.com> on 2012-09-28
Reviewed by James Robinson.

This allows RenderLayers to be created for canvas elements when they are accelerated. Otherwise, we can exit out of RenderObject::setStyle before the layer is created.

Test: fast/canvas/canvas-render-layer.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::adjustStyleDifference):
(WebCore::RenderObject::setStyle):

LayoutTests: Add a test that checks whether accelerated canvases that change compositing status are given render layers.
https://bugs.webkit.org/show_bug.cgi?id=97013

Patch by Brian Salomon <bsalomon@google.com> on 2012-09-28
Reviewed by James Robinson.

The test creates four canvases. One is never rendered to, the second is rendered to immediately, and the third and fourth are rendered to using nested setTimeouts.

* fast/canvas/canvas-render-layer.html: Added.
* platform/chromium/TestExpectations:
* platform/mac/TestExpectations:

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

6 years ago[V8] Make v8NPObjectMap per Context
fsamuel@chromium.org [Fri, 28 Sep 2012 19:38:42 +0000 (19:38 +0000)]
[V8] Make v8NPObjectMap per Context
https://bugs.webkit.org/show_bug.cgi?id=97703

Reviewed by Adam Barth.

V8NPObject is a V8Object wrapper for use by the npruntime.

staticV8NPObjectMap is used for keeping record of V8NPObjects as they are created and destroyed
to ensure that an existing V8NPObject wrapper is returned for a V8Object in npCreateV8ScriptObject.

Once a context is gone, the NPObjects for the context are no longer valid and that record keeping
no longer makes sense so we clear the map.

However, because the map was static, it existed for all pages across contexts. Clearing the
map if one context is gone should not impact the V8NPObject map of other contexts.

Thus, this patch makes the V8NPObject map per context.

* bindings/v8/NPV8Object.cpp:
(WebCore::freeV8NPObject):
(WebCore::npCreateV8ScriptObject):
* bindings/v8/V8PerContextData.h:
(WebCore):
(WebCore::V8PerContextData::v8NPObjectMap):
(V8PerContextData):

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

6 years agovirtual directories should just rename the beginning of the test path
dpranke@chromium.org [Fri, 28 Sep 2012 19:37:51 +0000 (19:37 +0000)]
virtual directories should just rename the beginning of the test path
https://bugs.webkit.org/show_bug.cgi?id=97925

Reviewed by Ojan Vafai.

Tools:

We were replacing all occurrences of the base prefix of a
virtual test suite with the virtual name, instead of just the
first. So, where we had softwarecompositing running the
compositing tests, any compositing test that actually had
"compositing" in the test base name would get that expanded
incorrectly.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.populated_virtual_test_suites):
(Port.lookup_virtual_test_base):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_tests):
* Scripts/webkitpy/layout_tests/port/test.py:

LayoutTests:

Delete references to tests that don't exist :).

* platform/chromium/TestExpectations:

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

6 years agoTextureMapperGL: fix -Wsign-compare compilation warning.
commit-queue@webkit.org [Fri, 28 Sep 2012 19:30:13 +0000 (19:30 +0000)]
TextureMapperGL: fix -Wsign-compare compilation warning.
https://bugs.webkit.org/show_bug.cgi?id=97928

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-09-28
Reviewed by Martin Robinson.

Use size_t rather than int to iterate over FilterOperations.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::applyFilters):

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

6 years agoGarden-o-matic sometimes things buildbot warnings are failures
ojan@chromium.org [Fri, 28 Sep 2012 19:18:06 +0000 (19:18 +0000)]
Garden-o-matic sometimes things buildbot warnings are failures
https://bugs.webkit.org/show_bug.cgi?id=97926

Reviewed by Tony Chang.

It turns out the JSON clearly tells us if it's a failure.
We want to skip all warnings even if they don't have "warning" in the text.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:

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

6 years agoFix build.
andersca@apple.com [Fri, 28 Sep 2012 19:03:47 +0000 (19:03 +0000)]
Fix build.

* WebCore.xcodeproj/project.pbxproj:

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

6 years ago[Chromium]Add DoubleTap gesture
commit-queue@webkit.org [Fri, 28 Sep 2012 18:54:54 +0000 (18:54 +0000)]
[Chromium]Add DoubleTap gesture
https://bugs.webkit.org/show_bug.cgi?id=90316

Patch by Yusuf Ozuysal <yusufo@google.com> on 2012-09-28
Reviewed by Adam Barth.

Added doubleTapGesture implementation and hooked it to an already present function computeScaleAndScrollForHitRect. Added 2 new tests and changed one based on the new implementation.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::handleGestureEvent):
(WebKit::WebViewImpl::computeScaleAndScrollForHitRect):
(WebKit::WebViewImpl::animateZoomAroundPoint):
(WebKit::WebViewImpl::didCommitLoad):
(WebKit::WebViewImpl::applyScrollAndScale):
* src/WebViewImpl.h:
(WebViewImpl):
* tests/WebFrameTest.cpp:
* tests/data/get_multiple_divs_for_auto_zoom_test.html: Added.
* tests/data/get_scale_bounds_check_for_auto_zoom_test.html: Added.
* tests/data/get_scale_for_auto_zoom_into_div_test.html:

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

6 years ago[Chromium] WebFrameImpl.cpp could use a style cleanup
abarth@webkit.org [Fri, 28 Sep 2012 18:31:12 +0000 (18:31 +0000)]
[Chromium] WebFrameImpl.cpp could use a style cleanup
https://bugs.webkit.org/show_bug.cgi?id=97924

Reviewed by Dimitri Glazkov.

This file is very old and contains a large number of style errors that
are confusing folks contributing new code to this file. Most of these
styles are Chromium-isms that crept in when the file was forked in the
Chromium repository.

* src/WebFrameImpl.cpp:
(WebKit):
(WebKit::frameContentAsPlainText):
(ChromePrintContext):
(WebKit::ChromePrintContext::spoolPage):
(WebKit::ChromePrintContext::spoolAllPagesWithBoundaries):
(ChromePluginPrintContext):
(WebKit::ChromePluginPrintContext::spoolPage):
(WebKit::WebFrameImpl::DeferredScopeStringMatches::DeferredScopeStringMatches):
(WebKit::WebFrameImpl::DeferredScopeStringMatches::doTimeout):
(WebKit::WebFrame::fromFrameOwnerElement):
(WebKit::WebFrameImpl::uniqueName):
(WebKit::WebFrameImpl::assignedName):
(WebKit::WebFrameImpl::setName):
(WebKit::WebFrameImpl::iconURLs):
(WebKit::WebFrameImpl::scrollOffset):
(WebKit::WebFrameImpl::minimumScrollOffset):
(WebKit::WebFrameImpl::maximumScrollOffset):
(WebKit::WebFrameImpl::contentsPreferredWidth):
(WebKit::WebFrameImpl::documentElementScrollHeight):
(WebKit::WebFrameImpl::hasHorizontalScrollbar):
(WebKit::WebFrameImpl::hasVerticalScrollbar):
(WebKit::WebFrameImpl::opener):
(WebKit::WebFrameImpl::setOpener):
(WebKit::WebFrameImpl::parent):
(WebKit::WebFrameImpl::top):
(WebKit::WebFrameImpl::firstChild):
(WebKit::WebFrameImpl::lastChild):
(WebKit::WebFrameImpl::nextSibling):
(WebKit::WebFrameImpl::previousSibling):
(WebKit::WebFrameImpl::traverseNext):
(WebKit::WebFrameImpl::traversePrevious):
(WebKit::WebFrameImpl::findChildByName):
(WebKit::WebFrameImpl::findChildByExpression):
(WebKit::WebFrameImpl::document):
(WebKit::WebFrameImpl::performance):
(WebKit::WebFrameImpl::windowObject):
(WebKit::WebFrameImpl::bindToWindowObject):
(WebKit::WebFrameImpl::executeScript):
(WebKit::WebFrameImpl::executeScriptInIsolatedWorld):
(WebKit::WebFrameImpl::setIsolatedWorldSecurityOrigin):
(WebKit::WebFrameImpl::collectGarbage):
(WebKit::WebFrameImpl::checkIfRunInsecureContent):
(WebKit::WebFrameImpl::executeScriptAndReturnValue):
(WebKit::WebFrameImpl::callFunctionEvenIfScriptDisabled):
(WebKit::WebFrameImpl::mainWorldScriptContext):
(WebKit::WebFrameImpl::createFileSystem):
(WebKit::WebFrameImpl::createSerializableFileSystem):
(WebKit::WebFrameImpl::createFileEntry):
(WebKit::WebFrameImpl::reload):
(WebKit::WebFrameImpl::reloadWithOverrideURL):
(WebKit::WebFrameImpl::loadRequest):
(WebKit::WebFrameImpl::loadHistoryItem):
(WebKit::WebFrameImpl::loadData):
(WebKit::WebFrameImpl::loadHTMLString):
(WebKit::WebFrameImpl::isLoading):
(WebKit::WebFrameImpl::stopLoading):
(WebKit::WebFrameImpl::provisionalDataSource):
(WebKit::WebFrameImpl::dataSource):
(WebKit::WebFrameImpl::previousHistoryItem):
(WebKit::WebFrameImpl::currentHistoryItem):
(WebKit::WebFrameImpl::enableViewSourceMode):
(WebKit::WebFrameImpl::isViewSourceModeEnabled):
(WebKit::WebFrameImpl::setReferrerForRequest):
(WebKit::WebFrameImpl::dispatchWillSendRequest):
(WebKit::WebFrameImpl::commitDocumentData):
(WebKit::WebFrameImpl::insertText):
(WebKit::WebFrameImpl::setMarkedText):
(WebKit::WebFrameImpl::firstRectForCharacterRange):
(WebKit::WebFrameImpl::executeCommand):
(WebKit::WebFrameImpl::requestTextChecking):
(WebKit::WebFrameImpl::selectWordAroundPosition):
(WebKit::WebFrameImpl::selectRange):
(WebKit::WebFrameImpl::visiblePositionForWindowPoint):
(WebKit::WebFrameImpl::printBegin):
(WebKit::WebFrameImpl::getPrintPageShrink):
(WebKit::WebFrameImpl::printPage):
(WebKit::WebFrameImpl::printEnd):
(WebKit::WebFrameImpl::isPrintScalingDisabledForPlugin):
(WebKit::WebFrameImpl::pageSizeAndMarginsInPixels):
(WebKit::WebFrameImpl::pageProperty):
(WebKit::WebFrameImpl::find):
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::reportFindInPageSelection):
(WebKit::WebFrameImpl::sendOrientationChangeEvent):
(WebKit::WebFrameImpl::addEventListener):
(WebKit::WebFrameImpl::removeEventListener):
(WebKit::WebFrameImpl::dispatchEvent):
(WebKit::WebFrameImpl::dispatchMessageEventWithOriginCheck):
(WebKit::WebFrameImpl::isActiveMatchFrameValid):
(WebKit::WebFrameImpl::deliverIntent):
(WebKit::WebFrameImpl::contentAsText):
(WebKit::WebFrameImpl::contentAsMarkup):
(WebKit::WebFrameImpl::renderTreeAsText):
(WebKit::WebFrameImpl::printPagesWithBoundaries):
(WebKit::WebFrameImpl::selectionBoundsRect):
(WebKit::WebFrameImpl::selectionStartHasSpellingMarkerFor):
(WebKit::WebFrameImpl::layerTreeAsText):
(WebKit::WebFrameImpl::initializeAsMainFrame):
(WebKit::WebFrameImpl::createChildFrame):
(WebKit::WebFrameImpl::createFrameView):
(WebKit::WebFrameImpl::fromFrame):
(WebKit::WebFrameImpl::fromFrameOwnerElement):
(WebKit::WebFrameImpl::viewImpl):
(WebKit::WebFrameImpl::setCanHaveScrollbars):
(WebKit::WebFrameImpl::setMarkerActive):
(WebKit::WebFrameImpl::ordinalOfFirstMatchForFrame):
(WebKit::WebFrameImpl::scopeStringMatchesSoon):
(WebKit::WebFrameImpl::callScopeStringMatches):
(WebKit::WebFrameImpl::invalidateIfNecessary):
(WebKit::WebFrameImpl::loadJavaScriptURL):

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

6 years ago[BlackBerry] Update the value of window.devicePixelRation when it is set programmatically
kpiascik@rim.com [Fri, 28 Sep 2012 18:19:14 +0000 (18:19 +0000)]
[BlackBerry] Update the value of window.devicePixelRation when it is set programmatically
https://bugs.webkit.org/show_bug.cgi?id=97512

Reviewed by Rob Buis.

RIM PR 213984
Set the deviceScaleFactor of the page explicity when the
devicePixelRatio is changed.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):
(BlackBerry::WebKit::WebPagePrivate::didChangeSettings):

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

6 years agoCode inside FrameLoaderClient::canShowMIMEType() implementations can be shared among...
commit-queue@webkit.org [Fri, 28 Sep 2012 18:16:35 +0000 (18:16 +0000)]
Code inside FrameLoaderClient::canShowMIMEType() implementations can be shared among different WK ports
https://bugs.webkit.org/show_bug.cgi?id=97547

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-09-28
Reviewed by Adam Barth.

Source/WebCore:

Added MIMETypeRegistry::canShowMIMEType() function which should to be used
to detect whether a given MIME type can be shown in a page.

No new tests. No new functionality.

* WebCore.exp.in: Added MIMETypeRegistry::canShowMIMEType(). Removed MIMETypeRegistry functions that no longer need to be exported.
* platform/MIMETypeRegistry.cpp:
(WebCore::MIMETypeRegistry::canShowMIMEType):
(WebCore):
* platform/MIMETypeRegistry.h:
(MIMETypeRegistry):

Source/WebKit/blackberry:

Newly added WebCore::MIMETypeRegistry::canShowMIMEType() function is used
inside WebCore::FrameLoaderClientBlackBerry::canShowMIMEType().

* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::canShowMIMEType):

Source/WebKit/efl:

Newly added WebCore::MIMETypeRegistry::canShowMIMEType() function is used
inside WebCore::FrameLoaderClientEfl::canShowMIMEType().

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::canShowMIMEType):

Source/WebKit/gtk:

Newly added WebCore::MIMETypeRegistry::canShowMIMEType() function is used
inside WebKit::FrameLoaderClient::canShowMIMEType().

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::canShowMIMEType):

Source/WebKit/qt:

Newly added WebCore::MIMETypeRegistry::canShowMIMEType() function is used
inside WebCore::FrameLoaderClientQt::canShowMIMEType().

* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::canShowMIMEType):

Source/WebKit/wince:

Newly added WebCore::MIMETypeRegistry::canShowMIMEType() function is used
inside WebKit::FrameLoaderClientWinCE::canShowMIMEType().

* WebCoreSupport/FrameLoaderClientWinCE.cpp:
(WebKit::FrameLoaderClientWinCE::canShowMIMEType):

Source/WebKit2:

Newly added WebCore::MIMETypeRegistry::canShowMIMEType() function is used
inside WebKit::WebPageProxy::canShowMIMEType() and WKBundlePageCanShowMIMEType().

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::canShowMIMEType):
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageCanShowMIMEType):

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

6 years agoThe virtual path for this test is incorrect. It appears to be
ojan@chromium.org [Fri, 28 Sep 2012 18:08:10 +0000 (18:08 +0000)]
The virtual path for this test is incorrect. It appears to be
causing archiving problems on the Chromium Windows bots.
Skip it for now until the run-webkit-tests bug is fixed.
* platform/chromium/TestExpectations:

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

6 years ago[EFL][WK2] {Vibration,Battery,NetworkInfo}Provider should contain WKContextRef instea...
commit-queue@webkit.org [Fri, 28 Sep 2012 18:04:17 +0000 (18:04 +0000)]
[EFL][WK2] {Vibration,Battery,NetworkInfo}Provider should contain WKContextRef instead of proxy.
https://bugs.webkit.org/show_bug.cgi?id=97839

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-09-28
Reviewed by Kenneth Rohde Christiansen.

VibrationProvider has WKRetainPtr<WKVibrationRef> m_wkVibrationRef
which has reference for object WebVibrationProxy.
The WebVibrationProxy instance is a member of WebContext who has it
as RefPtr<WebVibrationProxy>.

A member of one class is shared with another class, but there is no
relation between the two classes.

This can become a problem when WebContext is deleted before the
VibrationProvider, WebVibrationProxy will be alive without WebContext,
because VibrationProvider also has the reference for WebVibrationProxy.

This is a problem because WebVibrationProxy should be a member of
WebContext.

To prevent this, I changed the VibrationProvider to have
WKRetainPtr<WKContextRef> instead of WKRetainPtr<WKVibrationRef>.
Same for BatteryProvider and NetworkInfoProvider.

* UIProcess/API/efl/BatteryProvider.cpp:
(BatteryProvider::create):
(BatteryProvider::BatteryProvider):
(BatteryProvider::didChangeBatteryStatus):
* UIProcess/API/efl/BatteryProvider.h:
(BatteryProvider):
* UIProcess/API/efl/NetworkInfoProvider.cpp:
(NetworkInfoProvider::create):
(NetworkInfoProvider::NetworkInfoProvider):
* UIProcess/API/efl/NetworkInfoProvider.h:
(NetworkInfoProvider):
* UIProcess/API/efl/VibrationProvider.cpp:
(VibrationProvider::create):
(VibrationProvider::VibrationProvider):
* UIProcess/API/efl/VibrationProvider.h:
(VibrationProvider):
* UIProcess/API/efl/ewk_context.cpp:
(_Ewk_Context::_Ewk_Context):

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

6 years ago[Mac] Removing tests from TestExpectations
jonlee@apple.com [Fri, 28 Sep 2012 17:55:44 +0000 (17:55 +0000)]
[Mac] Removing tests from TestExpectations

Expected failures now pass. Also see these tests have been unskipped on Chromium
(see bugs 84764, 84767, 84768, 84769, 84775, 84776).

* platform/mac/TestExpectations:

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

6 years ago[BlackBerry] Hard to tap on x to clear a text field
rwlbuis@webkit.org [Fri, 28 Sep 2012 17:53:33 +0000 (17:53 +0000)]
[BlackBerry] Hard to tap on x to clear a text field
https://bugs.webkit.org/show_bug.cgi?id=97923

Reviewed by Antonio Gomes.

PR97923

Allow the shadow element for 'X' to be clickable and do not prefer
shadow content-editable div's over the 'X'.

* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::isElementClickable):

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

6 years agoRemoving tests from TestExpectations on Mac platform.
jonlee@apple.com [Fri, 28 Sep 2012 17:47:46 +0000 (17:47 +0000)]
Removing tests from TestExpectations on Mac platform.

Bugs 86137 and 86139 have been fixed. Remove a couple ietestcenter tests from TestExpectations.

* platform/mac/TestExpectations:

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

6 years agoUnreviewed Chromium expectations update
schenney@chromium.org [Fri, 28 Sep 2012 17:42:18 +0000 (17:42 +0000)]
Unreviewed Chromium expectations update

Adding more files to software compositing exclusions. The end?

* platform/chromium/TestExpectations:

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

6 years agoAllow ports to override text track rendering style
eric.carlson@apple.com [Fri, 28 Sep 2012 17:33:08 +0000 (17:33 +0000)]
Allow ports to override text track rendering style
<rdar://problem/12044964>

Reviewed by Jessie Berlin.

Update WKSI libraries.

* libWebKitSystemInterfaceLion.a:
* libWebKitSystemInterfaceMountainLion.a:
* libWebKitSystemInterfaceSnowLeopard.a:

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

6 years ago[BlackBerry] Extend composited in-region scrolling to iframes/frames
tonikitoo@webkit.org [Fri, 28 Sep 2012 17:22:13 +0000 (17:22 +0000)]
[BlackBerry] Extend composited  in-region scrolling to iframes/frames
https://bugs.webkit.org/show_bug.cgi?id=97922
PR #197093

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>
Internaly reviewed by Arvid Nilsson.

Add support for composited scrolling in a inner frame level:

1) When creating an InRegionScrollableArea, for a inner scrollable frame,
cache and camouflag the appropriated scroll layer (i.e. RenderLayerCompositor::scrollLayer);

2) Differentiate what type of scroll target we are at: BlockElement or
InnerFrame;

3) Change the signature of the public methods to support and newly passed
in ScrollTarget parameter;
As a side note, this parameter is needed in order to know what class to static_cast
the GraphicsLayer::client to: in the case of a composited scrollable inner frame, the client
is a RenderLayerCompositor; in case of a composited scrollable block element, the client
is a RenderLayerBacking.

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScroller::setScrollPositionWebKitThread):
(BlackBerry::WebKit::InRegionScrollerPrivate::setScrollPositionWebKitThread):
* Api/InRegionScroller.h:
* Api/InRegionScroller_p.h:
(InRegionScrollerPrivate):
* WebCoreSupport/ChromeClientBlackBerry.h:
(WebCore::ChromeClientBlackBerry::allowedCompositingTriggers):
* WebKitSupport/InRegionScrollableArea.cpp:
(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):

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

6 years agoflexbox assert fails with auto-sized item with padding
tony@chromium.org [Fri, 28 Sep 2012 17:14:43 +0000 (17:14 +0000)]
flexbox assert fails with auto-sized item with padding
https://bugs.webkit.org/show_bug.cgi?id=97606

Reviewed by Ojan Vafai.

Source/WebCore:

Depending on the denominator of FractionalLayoutUnit, we can lose precision when
converting to a float.  This would cause a rounding error in flex-shrink to trigger an ASSERT.
To avoid this problem in the future, switch to using doubles for flex-shrink and flex-grow
at layout time.  The CSS values themselves are still floats.

Test: css3/flexbox/negative-flex-rounding-assert.html

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutFlexItems): Use doubles for local variables.
(WebCore::RenderFlexibleBox::computeNextFlexLine): Pass in doubles.
(WebCore::RenderFlexibleBox::freezeViolations): Pass in doubles.
(WebCore::RenderFlexibleBox::resolveFlexibleLengths): Pass in doubles.
* rendering/RenderFlexibleBox.h:

LayoutTests:

Add a test that hits an ASSERT when FractionalLayoutUnit denominator is 60.

* css3/flexbox/negative-flex-rounding-assert-expected.txt: Added.
* css3/flexbox/negative-flex-rounding-assert.html: Added.

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

6 years agoUnreviewed, rolling out r129751.
commit-queue@webkit.org [Fri, 28 Sep 2012 16:51:22 +0000 (16:51 +0000)]
Unreviewed, rolling out r129751.
http://trac.webkit.org/changeset/129751
https://bugs.webkit.org/show_bug.cgi?id=97921

Causes crashes on mac and win (Requested by vsevik on
#webkit).

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

* bindings/js/JSHTMLCanvasElementCustom.cpp:
(WebCore::JSHTMLCanvasElement::getContext):
* bindings/js/JSMainThreadExecState.h:
(WebCore::JSMainThreadExecState::instrumentFunctionCall):
* bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::create):
* bindings/js/ScriptCallStackFactory.cpp:
(WebCore::createScriptCallStackForInspector):
* bindings/js/ScriptCallStackFactory.h:
(WebCore):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateCallWith):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateCallWith):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::setJSTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackCallback):
* bindings/v8/ScriptCallStackFactory.cpp:
(WebCore::createScriptCallStackForInspector):
* bindings/v8/ScriptCallStackFactory.h:
(WebCore):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::callFunctionWithInstrumentation):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::setIsolatedWorldSecurityOrigin):
* bindings/v8/V8WorkerContextEventListener.cpp:
(WebCore::V8WorkerContextEventListener::callListenerFunction):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::WindowSetTimeoutImpl):
* bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
(WebCore::V8HTMLCanvasElement::getContextCallback):
* bindings/v8/custom/V8WorkerContextCustom.cpp:
(WebCore::SetTimeoutOrInterval):
* inspector/Inspector.json:
* inspector/InspectorConsoleAgent.cpp:
(WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
(WebCore::InspectorConsoleAgent::enable):
(WebCore::InspectorConsoleAgent::disable):
(WebCore::InspectorConsoleAgent::clearMessages):
(WebCore::InspectorConsoleAgent::clearFrontend):
(WebCore::InspectorConsoleAgent::addConsoleMessage):
* inspector/InspectorConsoleAgent.h:
(InspectorConsoleAgent):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::hasFrontendForScriptContext):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::hasFrontendForScriptContext):
* inspector/InspectorRuntimeAgent.cpp:
(WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
* inspector/InspectorRuntimeAgent.h:
(InspectorRuntimeAgent):
* inspector/PageRuntimeAgent.cpp:
(PageRuntimeAgentState):
(WebCore::PageRuntimeAgent::clearFrontend):
(WebCore::PageRuntimeAgent::restore):
(WebCore::PageRuntimeAgent::setReportExecutionContextCreation):
(WebCore::PageRuntimeAgent::didClearWindowObject):
(WebCore::PageRuntimeAgent::didCreateIsolatedContext):
* inspector/PageRuntimeAgent.h:
(PageRuntimeAgent):
* inspector/WorkerRuntimeAgent.cpp:
(WebCore::WorkerRuntimeAgent::setReportExecutionContextCreation):
(WebCore):
* inspector/WorkerRuntimeAgent.h:
(WorkerRuntimeAgent):
* inspector/front-end/RuntimeModel.js:
(WebInspector.RuntimeModel.prototype._didLoadCachedResources):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::postMessage):

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

6 years agoAdd parseDateTime, formatDateTime, and dateFormatText to Localizer
tkent@chromium.org [Fri, 28 Sep 2012 16:46:05 +0000 (16:46 +0000)]
Add parseDateTime, formatDateTime, and dateFormatText to Localizer
https://bugs.webkit.org/show_bug.cgi?id=97885

Reviewed by Kentaro Hara.

Source/WebCore:

This is a preparation to remove LocalizedData.h.

Add the following pure virtual member functions to Localizer.
  parseDateTime
  formatDateTime
  dateFormatText.

We rename existing parse/format functions for type=date in Locale*
classes, and extend their functionality so that they support other
date/time types. They override the new functions of Localizer.

No new tests. This should not change any behavior.

* platform/text/Localizer.h:
(Localizer): Add parseDateTime, formatDateTime, and dateFormatText.

* platform/text/LocaleICU.h:
(LocaleICU):
- Rename parseLocalizedDate to parseDateTime
- Add type argument to parseDateTime
- Rename formatLocalizedDate to formatDateTime
- Rename localizedDateFormatText to dateFormatText
- Make parseDateTime/formatDateTime/dateFormatText virtual.
* platform/text/LocaleICU.cpp:
(WebCore::LocaleICU::parseDateTime):
Renamed. Reject non-date types.
(WebCore::LocaleICU::formatDateTime): ditto.
(WebCore::LocaleICU::dateFormatText): Renamed.
* platform/text/LocalizedDateICU.cpp: Moved some code to LocaleICU.cpp.
(WebCore::parseLocalizedDate):
(WebCore::formatLocalizedDate):

* platform/text/LocaleNone.cpp:
Add empty implementations of parseDateTime, formatDateTime, and
dateFormatText.
(LocaleNone):
(WebCore::LocaleNone::parseDateTime):
(WebCore::LocaleNone::formatDateTime):
(WebCore::LocaleNone::dateFormatText):

* platform/text/LocaleWin.h:
(LocaleWin):
- Rename parseDate to parseDateTime
- Add type argument to parseDateTime
- Rename formatDate to formatDateTime
- Make parseDateTime/formatDateTime/dateFormatText virtual.
* platform/text/LocaleWin.cpp:
(WebCore::LocaleWin::parseDateTime):
Renamed. Reject non-date types.
(WebCore::LocaleWin::formatDateTime): ditto.
* platform/text/LocalizedDateWin.cpp: Moved some code to LocaleWin.cpp.
(WebCore::parseLocalizedDate):
(WebCore::formatLocalizedDate):

* platform/text/mac/LocaleMac.h:
(LocaleMac):
- Rename parseDate to parseDateTime
- Add type argument to parseDateTime
- Rename formatDate to formatDateTime
- Make parseDateTime/formatDateTime/dateFormatText virtual.
* platform/text/mac/LocaleMac.mm:
(WebCore::LocaleMac::parseDateTime):
Renamed. Reject non-date types.
(WebCore::LocaleMac::formatDateTime): ditto.
* platform/text/mac/LocalizedDateMac.cpp: Moved some code to LocaleMac.mm.
(WebCore::parseLocalizedDate):
(WebCore::formatLocalizedDate):

Source/WebKit/chromium:

* tests/LocaleMacTest.cpp: Follow renaming of LocaleMac functions.
(LocaleMacTest::formatDate):
(LocaleMacTest::parseDate):
* tests/LocaleWinTest.cpp: Follow renaming of LocaleWin functions.
(LocaleWinTest::formatDate):
(LocaleWinTest::parseDate):

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

6 years agoIndexedDB: Run multiple tasks per transaction tick
jsbell@chromium.org [Fri, 28 Sep 2012 16:38:54 +0000 (16:38 +0000)]
IndexedDB: Run multiple tasks per transaction tick
https://bugs.webkit.org/show_bug.cgi?id=97738

Reviewed by Tony Chang.

Process multiple tasks from the pending queue(s) when the timer fires. The
task may initiate new tasks that change which queue is active (e.g. indexing
operations) so the loop must re-check each tick which queue to use.

In DumpRenderTree, time to make 20k puts/20k gets dropped from 3.2s to 2.0s (-37%);
in Chromium's content_shell, the time dropped from 8.1s to 4.6s (-42%).

No new tests - just perf improvements, covered by (nearly) all existing IDB tests.

* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::abort): Use takeFirst() to clean up code.
(WebCore::IDBTransactionBackendImpl::taskTimerFired): Process as many tasks as are available.

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

6 years ago[Chromium] Fix the find-in-page implementation for detaching frames.
leandrogracia@chromium.org [Fri, 28 Sep 2012 16:38:08 +0000 (16:38 +0000)]
[Chromium] Fix the find-in-page implementation for detaching frames.
https://bugs.webkit.org/show_bug.cgi?id=97807

Reviewed by Adam Barth.

Follow-up of 97688. Introduces proper test coverage for the find-in-page
feature in detaching/detached frame situations, fixing a few crashes and
ensuring that a final reply is always sent.

* public/WebNode.h:
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::find):
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::flushCurrentScopingEffort):
(WebKit):
(WebKit::WebFrameImpl::finishCurrentScopingEffort):
(WebKit::WebFrameImpl::cancelPendingScopingEffort):
(WebKit::WebFrameImpl::WebFrameImpl):
(WebKit::WebFrameImpl::setWebCoreFrame):
(WebKit::WebFrameImpl::initializeAsMainFrame):
(WebKit::WebFrameImpl::createChildFrame):
(WebKit::WebFrameImpl::shouldScopeMatches):
(WebKit::WebFrameImpl::willDetachPage):
* src/WebFrameImpl.h:
(WebFrameImpl):
* src/WebNode.cpp:
(WebKit::WebNode::remove):
(WebKit):
* tests/WebFrameTest.cpp:
* tests/data/find_in_page.html:

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

6 years ago[BlackBerry] Exiting fullscreen does not set the correct scroll position
tonikitoo@webkit.org [Fri, 28 Sep 2012 16:34:07 +0000 (16:34 +0000)]
[BlackBerry] Exiting fullscreen does not set the correct scroll position
https://bugs.webkit.org/show_bug.cgi?id=97917
PR #212920

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>
Internally reviewed by Jacky Jiang.

Restore the zoom level and scroll position at the time when know
the fullscreen exit routine has ended (i.e. in ::setViewportSize
instead of ::exitFullScreenForElement).

Also patch caches now the scroll position instead of only the
"x scroll position.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):
(BlackBerry::WebKit::WebPagePrivate::enterFullScreenForElement):
(BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):
* Api/WebPage_p.h:
(WebPagePrivate):

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

6 years agoImplement the GetStats interface on PeerConnection
commit-queue@webkit.org [Fri, 28 Sep 2012 16:25:45 +0000 (16:25 +0000)]
Implement the GetStats interface on PeerConnection
https://bugs.webkit.org/show_bug.cgi?id=95193

Source/Platform:

Patch by Harald Tveit Alvestrand <harald@alvestrand.no> on 2012-09-28
Reviewed by Adam Barth.

* chromium/public/WebRTCPeerConnectionHandler.h:
(WebKit):
(WebRTCPeerConnectionHandler):
(WebKit::WebRTCPeerConnectionHandler::getStats):
* chromium/public/WebRTCStatsRequest.h: added.
(WebCore):
(WebKit):
(WebRTCStatsRequest):
(WebKit::WebRTCStatsRequest::WebRTCStatsRequest):
(WebKit::WebRTCStatsRequest::~WebRTCStatsRequest):
(WebKit::WebRTCStatsRequest::operator=):

Source/WebCore:

Specification:
http://dev.w3.org/2011/webrtc/editor/webrtc-20120920.html

Patch by Harald Tveit Alvestrand <harald@alvestrand.no> on 2012-09-28
Reviewed by Adam Barth.

The implementation consists of a pure virtual platform object
(RTCStatsRequest) that is implemented in WebCore, and stores
its information in a straightforward data hierarchy.
This patch adds the call path and the storage structures.
It does not add filling in data.

Test: fast/mediastream/RTCPeerConnection-stats.html

* CMakeLists.txt:
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::getStats):
(WebCore):
* Modules/mediastream/RTCPeerConnection.h:
(WebCore):
(RTCPeerConnection):
* Modules/mediastream/RTCPeerConnection.idl:
* Modules/mediastream/RTCStatsCallback.h: Added.
(WebCore):
(RTCStatsCallback):
(WebCore::RTCStatsCallback::~RTCStatsCallback):
* Modules/mediastream/RTCStatsCallback.idl: Added.
* Modules/mediastream/RTCStatsElement.cpp: Added.
(WebCore):
(WebCore::RTCStatsElement::create):
(WebCore::RTCStatsElement::RTCStatsElement):
(WebCore::RTCStatsElement::stat):
* Modules/mediastream/RTCStatsElement.h: Added.
(WebCore):
(RTCStatsElement):
* Modules/mediastream/RTCStatsElement.idl: Added.
* Modules/mediastream/RTCStatsReport.cpp: Added.
(WebCore):
(WebCore::RTCStatsReport::create):
(WebCore::RTCStatsReport::RTCStatsReport):
* Modules/mediastream/RTCStatsReport.h: Added.
(WebCore):
(RTCStatsReport):
(WebCore::RTCStatsReport::local):
(WebCore::RTCStatsReport::remote):
* Modules/mediastream/RTCStatsReport.idl: Added.
* Modules/mediastream/RTCStatsRequestImpl.cpp: Added.
(WebCore):
(WebCore::RTCStatsRequestImpl::create):
(WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl):
(WebCore::RTCStatsRequestImpl::~RTCStatsRequestImpl):
(WebCore::RTCStatsRequestImpl::requestSucceeded):
(WebCore::RTCStatsRequestImpl::stop):
(WebCore::RTCStatsRequestImpl::clear):
* Modules/mediastream/RTCStatsRequestImpl.h: Added.
(WebCore):
(RTCStatsRequestImpl):
* Modules/mediastream/RTCStatsResponse.cpp: Added.
(WebCore):
(WebCore::RTCStatsResponse::create):
(WebCore::RTCStatsResponse::RTCStatsResponse):
* Modules/mediastream/RTCStatsResponse.h: Added.
(WebCore):
(RTCStatsResponse):
(WebCore::RTCStatsResponse::result):
* Modules/mediastream/RTCStatsResponse.idl: Added.
* WebCore.gypi:
* platform/chromium/support/WebRTCStatsRequest.cpp: Copied from Source/Platform/chromium/public/WebRTCPeerConnectionHandler.h.
(WebKit):
(WebKit::WebRTCStatsRequest::WebRTCStatsRequest):
(WebKit::WebRTCStatsRequest::assign):
(WebKit::WebRTCStatsRequest::reset):
(WebKit::WebRTCStatsRequest::requestSucceeded):
* platform/mediastream/RTCPeerConnectionHandler.h:
(WebCore):
(RTCPeerConnectionHandler):
* platform/mediastream/RTCStatsRequest.h: Copied from Source/WebCore/platform/mediastream/RTCPeerConnectionHandler.h.
(WebCore):
(RTCStatsRequest):
(WebCore::RTCStatsRequest::~RTCStatsRequest):
(WebCore::RTCStatsRequest::RTCStatsRequest):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
(WebCore::RTCPeerConnectionHandlerChromium::getStats):
(WebCore):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
(RTCPeerConnectionHandlerChromium):

Tools:

Patch by Harald Tveit Alvestrand <harald@alvestrand.no> on 2012-09-28
Reviewed by Adam Barth.

* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
(RTCStatsRequestSucceededTask):
(RTCStatsRequestSucceededTask::RTCStatsRequestSucceededTask):
(MockWebRTCPeerConnectionHandler::getStats):
* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:
(MockWebRTCPeerConnectionHandler):

LayoutTests:

Patch by Harald Tveit Alvestrand <harald@alvestrand.no> on 2012-09-28
Reviewed by Adam Barth.

* fast/mediastream/RTCPeerConnection-stats-expected.txt: Added.
* fast/mediastream/RTCPeerConnection-stats.html: Added.

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

6 years ago471kB below StyleSheetContents::parserAppendRule() on Membuster3.
kling@webkit.org [Fri, 28 Sep 2012 16:14:32 +0000 (16:14 +0000)]
471kB below StyleSheetContents::parserAppendRule() on Membuster3.
<http://webkit.org/b/97916>

Reviewed by Anders Carlsson.

Shrink-to-fit the StyleSheetContents rule vectors at the end of CSSParser::parseSheet().
~100kB progression on Membuster3.

* css/StyleSheetContents.h:
* css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::shrinkToFit):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseSheet):

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

6 years ago[WK2][GTK] Implement new Favicons API
mario@webkit.org [Fri, 28 Sep 2012 16:09:17 +0000 (16:09 +0000)]
[WK2][GTK] Implement new Favicons API
https://bugs.webkit.org/show_bug.cgi?id=96476

Reviewed by Carlos Garcia Campos.

New object wrapping the internal IconDatabase from WebCore,
providing a simple asynchronous API to retrieve the favicon
associated to a page URL, and two more functions to simple query
the internal database for the URI of the icon associated to a
page, if any, and to clear the state of the internal database.

* UIProcess/API/gtk/WebKitFaviconDatabase.cpp: Added.
(_WebKitFaviconDatabasePrivate):
(webkit_favicon_database_init):
(webkitFaviconDatabaseFinalize):
(webkit_favicon_database_class_init):
(GetFaviconSurfaceAsyncData): New structure used to pass data
across the asynchronous implementation of get_favicon().
(GetFaviconSurfaceAsyncData::~GetFaviconSurfaceAsyncData):
Disconnects the cancellable if needed.
(getIconSurfaceSynchronously): Synchronously returns a pointer to
the cairo_surface with the icon's data, if available.
(deletePendingIconRequests): Removes the full list of
icon requests for a page URL.
(processPendingIconsForURI): Process any icon request that
might be still pending.
(iconDataReadyForPageURLCallback): Called from WebIconDatabase
when new data is ready for a favicon.
(webkitFaviconDatabaseCreate): Create the WebKitFaviconDatabase
object and initializes the API client for WKIconDatabaseClient.
(getOrCreatePendingIconRequests): Returns (if available) or
creates a new icon request, to be appended to the list of requests
for the same page URL.
(getIconSurfaceCancelled): Handle the case of a request being
cancelled. Must happen on the main thread.
(getIconSurfaceCancelledCallback): Callback used with
g_cancellable_connect(), which ensure getIconSurfaceCancelled() is
called from the main thread.
(setErrorForAsyncResult): Helper to set errors in the result.
(webkit_favicon_database_error_quark): New function, providint the
new error domain for errors of type WebKitFaviconDatabaseError.
(webkit_favicon_database_get_favicon): New API function, providing
an asynchronous mechanism to query the favicon for a page URL.
(webkit_favicon_database_get_favicon_finish): New API function to
finish the asyncrhonous request started with get_favicon().
(webkit_favicon_database_get_favicon_uri): New API function
to easily retrieve, if available, the URI of a favicon.
(webkit_favicon_database_clear): New API function to clear the
state of the internal icon database.
* UIProcess/API/gtk/WebKitFaviconDatabase.h: Added.
(_WebKitFaviconDatabase):
(_WebKitFaviconDatabaseClass):
* UIProcess/API/gtk/WebKitFaviconDatabasePrivate.h: Added to
internally expose webkitFaviconDatabaseCreate() to WebKitWebContext.
* UIProcess/API/gtk/WebKitPrivate.h: Import WebKit2/WKIconDatabase.h.
* GNUmakefile.list.am: Added new files.

Add a new getter in WebIconDatabase for m_urlImportCompleted.

* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::isUrlImportCompleted): Added this simple
getter to allow knowing from WebKitFaviconDatabase whether the
initial import has finished, needed for making some decisions.
(WebKit):
* UIProcess/WebIconDatabase.h:
(WebIconDatabase):

New API in WebKitWebContext to allow obtaining a valid instance of
WebKitFaviconDatabase and to set/get the local path to be used.

* UIProcess/API/gtk/WebKitWebContext.cpp:
(_WebKitWebContextPrivate):
(webkit_web_context_set_favicon_database_path): New API to allow
setting a path for the icon database, other than the default one.
(webkit_web_context_get_favicon_database_path): New API to
retrieve the path for the icon database currently in use.
(webkit_web_context_get_favicon_database): New API to get a valid
and properly initialized instance of WebKitFaviconDatabase.
* UIProcess/API/gtk/WebKitWebContext.h:

Make sure we have a default path set for the icon database.

* UIProcess/gtk/WebContextGtk.cpp:
(WebKit::WebContext::platformDefaultIconDatabasePath): Return the
default path to be used for the icon database.

Add unit tests for checking this new API.

* UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp: Added.
(serverCallback): Callback for the test server.
(testSetDirectory): New unit test, checks the ability to set and
get a specific directory path for the icon database.
(testClearDatabase): New unit test, checks the ability to clear
the data in the icon database.
(testGetFavicon): New unit test, checks the ability to get a
favicon from the icon database in different situations.
(testGetFaviconURI): New unit test, checks the ability to retrieve
the URI for the favicon, if any, associated to a web page.
(deleteDatabaseFiles): Helper function to remove temporary files.
(beforeAll): Initialize the test server and add the unit tests.
(afterAll): Delete the test server and clean up.

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

6 years agoUnreviewed Chromium expectations update
schenney@chromium.org [Fri, 28 Sep 2012 16:04:23 +0000 (16:04 +0000)]
Unreviewed Chromium expectations update

Adding more files to software compositing exclusions. Sometimes they
do not crash but instead generater incorrect images.

* platform/chromium/TestExpectations:

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

6 years ago[EFL] Update EFL baselines after r129874
commit-queue@webkit.org [Fri, 28 Sep 2012 15:56:11 +0000 (15:56 +0000)]
[EFL] Update EFL baselines after r129874
https://bugs.webkit.org/show_bug.cgi?id=97914

Unreviewed EFL gardening.

Update baselines for failing tests after r129874.

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-09-28

* platform/efl/fast/overflow/overflow_hidden-expected.txt:
* platform/efl/svg/hixie/cascade/002-expected.png:
* platform/efl/svg/hixie/cascade/002-expected.txt:

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

6 years agoClean up Localizer-related functions
tkent@chromium.org [Fri, 28 Sep 2012 15:51:52 +0000 (15:51 +0000)]
Clean up Localizer-related functions
https://bugs.webkit.org/show_bug.cgi?id=97899

Reviewed by Kentaro Hara.

Source/WebCore:

- Rename Document::getLocalizer to getCachedLocalizer
- Add default argument to getCachedLocalizer
- Add Element::localizer to reduce code size
- Rename DateTimeNumericFieldElement::localizer to localizerForOwner to
  avoid conflict with Element::localizer
- Add Localizer::createDefault to improve code readability

No new tests. This shouldn't make any behavior change.

* dom/Document.h:
(Document): Rename getLocalizer to getCachedLocalizer, and add default
argument.
* dom/Document.cpp:
(WebCore::Document::getCachedLocalizer): ditto.

* dom/Element.h:
(Element): Add localizer function.
* dom/Element.cpp:
(WebCore::Element::localizer): Added

* html/shadow/DateTimeNumericFieldElement.h:
(DateTimeNumericFieldElement): Rename localizer to localizerForOwner.
* html/shadow/DateTimeNumericFieldElement.cpp: ditto.
(WebCore::DateTimeNumericFieldElement::handleKeyboardEvent):
(WebCore::DateTimeNumericFieldElement::localizerForOwner):
(WebCore::DateTimeNumericFieldElement::value):

* platform/text/Localizer.h:
(Localizer): Add createDefault
(WebCore::Localizer::createDefault): Implemented.

* html/BaseMultipleFieldsDateAndTimeInputType.cpp:
(WebCore::BaseMultipleFieldsDateAndTimeInputType::updateInnerTextValue):
Use Element::localizer.
* html/NumberInputType.cpp:
(WebCore::NumberInputType::localizeValue): ditto.
(WebCore::NumberInputType::convertFromVisibleValue): ditto.

Source/WebKit/blackberry:

* WebCoreSupport/ColorPickerClient.cpp:
(WebCore::ColorPickerClient::localizer): Follow Document::getLocalizer renaming.
* WebCoreSupport/DatePickerClient.cpp:
(WebCore::SelectPopupClient::localizer): ditto.
* WebCoreSupport/SelectPopupClient.cpp:
(WebCore::SelectPopupClient::localizer): ditto.

Source/WebKit/chromium:

* src/ColorChooserUIController.cpp:
(WebKit::ColorChooserUIController::ColorChooserUIController):
Use Localizer::createDefault
* src/DateTimeChooserImpl.cpp:
(WebKit::DateTimeChooserImpl::DateTimeChooserImpl): ditto.

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

6 years agoAdding regression test to ensure that cached call uninitialized arguments
mark.lam@apple.com [Fri, 28 Sep 2012 15:51:16 +0000 (15:51 +0000)]
Adding regression test to ensure that cached call uninitialized arguments
correctly defaults to undefined.
https://bugs.webkit.org/show_bug.cgi?id=97836.

Reviewed by Geoffrey Garen.

* fast/js/cached-call-uninitialized-arguments-expected.txt: Added.
* fast/js/cached-call-uninitialized-arguments.html: Added.
* fast/js/script-tests/cached-call-uninitialized-arguments.js: Added.
(doForEach.callback.shouldBeUndefined):
(doForEach.callback):
(doForEach):
(callAfterRecursingForDepth):

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

6 years ago[BLACKBERRY] Add isVisible method to WebTapHighlight
commit-queue@webkit.org [Fri, 28 Sep 2012 15:45:20 +0000 (15:45 +0000)]
[BLACKBERRY] Add isVisible method to WebTapHighlight
https://bugs.webkit.org/show_bug.cgi?id=97915

Patch by Genevieve Mak <gmak@rim.com> on 2012-09-28
Reviewed by Rob Buis.

Reviewed Internally By Andrew Lo
The isVisible() method lets us avoid dispatching to the webkit thread
if the tap highlight isn't visible.
Always clear tap highlight on Touch up when converting Touch Events
to Mouse Events.

* Api/WebTapHighlight.h:
* WebKitSupport/DefaultTapHighlight.h:
(BlackBerry::WebKit::DefaultTapHighlight::isVisible):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

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

6 years ago[EFL] Unreviewed test fixes after r129892.
rakuco@webkit.org [Fri, 28 Sep 2012 15:40:58 +0000 (15:40 +0000)]
[EFL] Unreviewed test fixes after r129892.

* UIProcess/API/efl/tests/test_ewk2_context.cpp:
(TEST_F): Fix a copy&paste error that changed the test
expectations.
* UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
(TEST_F): Revert the change here since it was already in the right
format before.

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

6 years ago[Qt] Gardening. Cleanup some Qt specific expectation.
ossy@webkit.org [Fri, 28 Sep 2012 15:31:00 +0000 (15:31 +0000)]
[Qt] Gardening. Cleanup some Qt specific expectation.

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-09-28
Reviewed by Csaba Osztrogon√°c.

* platform/qt-5.0-wk2/TestExpectations: Skip not supported Qt plugin test.
* platform/qt-5.0-wk2/platform/qt/plugins/application-plugin-plugins-disabled-expected.png: Removed.
* platform/qt-5.0-wk2/platform/qt/plugins/application-plugin-plugins-disabled-expected.txt: Removed.
* platform/qt/TestExpectations: Skip failing test, ENABLE(MUTATION_OBSERVERS) is disabled.
* platform/qt/platform/qt/plugins/application-plugin-plugins-disabled-expected.txt: Rebase after r129844.
* platform/qt/plugins/application-plugin-plugins-disabled-expected.txt: Removed.
* platform/qt/plugins/qt-qwidget-plugin-expected.txt: Removed.

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

6 years agoWeb Inspector: define ChunkedReader interface for compilation
pfeldman@chromium.org [Fri, 28 Sep 2012 15:30:21 +0000 (15:30 +0000)]
Web Inspector: define ChunkedReader interface for compilation
https://bugs.webkit.org/show_bug.cgi?id=97904

Reviewed by Alexander Pavlov.

Otherwise, it is unclear what "source" is in the OutputStreamDelegate.

* inspector/front-end/FileUtils.js:
(WebInspector.OutputStreamDelegate.prototype.onTransferStarted):
(WebInspector.OutputStreamDelegate.prototype.onTransferFinished):
(WebInspector.OutputStreamDelegate.prototype.onChunkTransferred):
(WebInspector.OutputStreamDelegate.prototype.onError):
(WebInspector.ChunkedReader):
(WebInspector.ChunkedReader.prototype.fileSize):
(WebInspector.ChunkedReader.prototype.loadedSize):
(WebInspector.ChunkedReader.prototype.fileName):
(WebInspector.ChunkedReader.prototype.cancel):
(WebInspector.ChunkedFileReader.prototype.start):
(WebInspector.ChunkedFileReader.prototype._onChunkLoaded):
(WebInspector.ChunkedXHRReader.prototype.start):
(WebInspector.ChunkedXHRReader.prototype._onLoad):
* inspector/front-end/HeapSnapshotView.js:
(WebInspector.HeapSnapshotLoadFromFileDelegate.prototype.onTransferStarted):
(WebInspector.HeapSnapshotLoadFromFileDelegate.prototype.onChunkTransferred):
(WebInspector.HeapSnapshotLoadFromFileDelegate.prototype.onTransferFinished):
(WebInspector.HeapSnapshotLoadFromFileDelegate.prototype.onError):
* inspector/front-end/TimelineModel.js:
(WebInspector.TimelineModelLoadFromFileDelegate.prototype.onTransferStarted):

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

6 years ago[Chromium] Incorrect resampling of clipped/masked images.
fmalita@chromium.org [Fri, 28 Sep 2012 15:24:41 +0000 (15:24 +0000)]
[Chromium] Incorrect resampling of clipped/masked images.
https://bugs.webkit.org/show_bug.cgi?id=97409

Reviewed by Stephen White.

Source/WebCore:

Currently, high-quality resampling is used for translate/scale-only transforms, but when
the scale is negative the resampling subset ends up positioned incorrectly.
ImageSkia.cpp:drawResampledBitmap needs to account for negative scaling factors, and apply
only absolute values when calculating the resampling subregion in bitmap coordinates.

Thanks pdr@google.com for isolating the regression.

Test: svg/custom/clip-mask-negative-scale.svg

* platform/graphics/skia/ImageSkia.cpp:
(WebCore::drawResampledBitmap):

LayoutTests:

* platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.png: Added.
* platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.txt: Added.
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:
* svg/custom/clip-mask-negative-scale.svg: Added.

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

6 years agoUnreviewed, rolling out r129882.
commit-queue@webkit.org [Fri, 28 Sep 2012 14:55:07 +0000 (14:55 +0000)]
Unreviewed, rolling out r129882.
http://trac.webkit.org/changeset/129882
https://bugs.webkit.org/show_bug.cgi?id=97913

Repaint is incorrect on many tests (Requested by schenney on
#webkit).

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

Source/WebCore:

* inspector/InspectorController.cpp:
* inspector/InspectorController.h:
(WebCore):
(InspectorController):
* inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::paint):
(WebCore::InspectorOverlay::update):
(WebCore::buildObjectForPoint):
(WebCore::buildArrayForQuad):
(WebCore::buildObjectForHighlight):
(WebCore::InspectorOverlay::reset):
* inspector/InspectorOverlay.h:
(InspectorOverlay):
* inspector/InspectorOverlayPage.html:

Source/WebKit/chromium:

* src/WebDevToolsAgentImpl.cpp:
(OverlayZOrders):
(WebKit::DeviceMetricsSupport::DeviceMetricsSupport):
(WebKit::DeviceMetricsSupport::~DeviceMetricsSupport):
(WebKit::DeviceMetricsSupport::restore):
(WebKit::DeviceMetricsSupport::paintPageOverlay):
(DeviceMetricsSupport):
(WebKit::WebDevToolsAgentImpl::attach):
(WebKit::WebDevToolsAgentImpl::webViewResized):
(WebKit::WebDevToolsAgentImpl::overrideDeviceMetrics):
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):
* src/WebDevToolsAgentPrivate.h:
(WebDevToolsAgentPrivate):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::resize):

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

6 years agoUnreviewed Chromium TestExpectation addition
schenney@chromium.org [Fri, 28 Sep 2012 14:32:49 +0000 (14:32 +0000)]
Unreviewed Chromium TestExpectation addition

Various software composituing tests are failing on Mac and Win.

* platform/chromium/TestExpectations:

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

6 years agoUnreviewed, rolling out r129825.
haraken@chromium.org [Fri, 28 Sep 2012 14:16:15 +0000 (14:16 +0000)]
Unreviewed, rolling out r129825.
http://trac.webkit.org/changeset/129825
https://bugs.webkit.org/show_bug.cgi?id=97474

DOMWindow.resizeTo() is broken. Asked by Mark Pilgrim.

Source/Platform:

* Platform.gypi:
* chromium/public/WebScreenInfo.h: Removed.

Source/WebCore:

* WebCore.gypi:
* platform/Widget.h:
* platform/chromium/PageClientChromium.h: Removed.
* platform/chromium/PlatformScreenChromium.cpp:
(WebCore::screenHorizontalDPI):
(WebCore::screenVerticalDPI):
(WebCore::screenDepth):
(WebCore::screenDepthPerComponent):
(WebCore::screenIsMonochrome):
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/chromium/PlatformSupport.h:
(PlatformSupport):

Source/WebKit/chromium:

* public/WebScreenInfo.h:
(WebKit):
(WebScreenInfo):
(WebKit::WebScreenInfo::WebScreenInfo):
* src/ChromeClientImpl.cpp:
* src/ChromeClientImpl.h:
(WebKit):
(WebKit::ChromeClientImpl::platformPageClient):
(ChromeClientImpl):
* src/PlatformSupport.cpp:
(WebCore::toWebWidgetClient):
(WebCore):
(WebCore::PlatformSupport::screenHorizontalDPI):
(WebCore::PlatformSupport::screenVerticalDPI):
(WebCore::PlatformSupport::screenDepth):
(WebCore::PlatformSupport::screenDepthPerComponent):
(WebCore::PlatformSupport::screenIsMonochrome):
(WebCore::PlatformSupport::screenRect):
(WebCore::PlatformSupport::screenAvailableRect):

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

6 years agoDisable YARR_JIT for Windows 64 bit
commit-queue@webkit.org [Fri, 28 Sep 2012 14:12:48 +0000 (14:12 +0000)]
Disable YARR_JIT for Windows 64 bit
https://bugs.webkit.org/show_bug.cgi?id=97772

Patch by Kai Koehne <kai.koehne@digia.com> on 2012-09-28
Reviewed by Simon Hausmann.

Using YARR_JIT requires ASSEMBLER, which in turn enables the
executable fixed allocator, which is mmap based (not available on
Windows).

* wtf/Platform.h:

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

6 years ago[EFL][WK2] Some expected and actual parameters in unit tests are reversed
commit-queue@webkit.org [Fri, 28 Sep 2012 14:00:33 +0000 (14:00 +0000)]
[EFL][WK2] Some expected and actual parameters in unit tests are reversed
https://bugs.webkit.org/show_bug.cgi?id=97624

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-09-28
Reviewed by Laszlo Gombos.

According to the gtest guide, ASSERT_XXX, EXPECT_XXX(expected, actual) are recommended
but some unit tests do not follow this.(http://code.google.com/p/googletest/wiki/Primer)
Google Test's failure messages are optimized for this convention.

* UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
(TEST_F):
* UIProcess/API/efl/tests/test_ewk2_context.cpp:
(schemeRequestCallback):
(TEST_F):
* UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
(TEST_F):
* UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
(on_download_requested):
(on_download_finished):
* UIProcess/API/efl/tests/test_ewk2_intents.cpp:
(onIntentServiceRegistration):
(onIntentReceived):
(TEST_F):
* UIProcess/API/efl/tests/test_ewk2_refptr_evas_object.cpp:
(TEST_F):
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):
(onFormAboutToBeSubmitted):
(checkBasicPopupMenuItem):
(showPopupMenu):
(showColorPicker):

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

6 years ago[NRWT] XvfbDriver should choose the next free display
kkristof@inf.u-szeged.hu [Fri, 28 Sep 2012 13:57:53 +0000 (13:57 +0000)]
[NRWT] XvfbDriver should choose the next free display
https://bugs.webkit.org/show_bug.cgi?id=88414

Reviewed by Dirk Pranke.

This change how the XvfbDriver choose the next display. Before
this the choosing are based on the worker number but it caused
errors when several nrwt run on the same time. This add process
based free diplay search.

* Scripts/webkitpy/layout_tests/port/xvfbdriver.py:
(XvfbDriver.__init__):
(XvfbDriver._next_free_display):
(XvfbDriver._start):
(XvfbDriver.stop):
* Scripts/webkitpy/layout_tests/port/xvfbdriver_unittest.py:
(XvfbDriverTest.make_driver):
(XvfbDriverTest.test_start_no_pixel_tests):
(XvfbDriverTest.test_start_pixel_tests):
(XvfbDriverTest.test_start_arbitrary_worker_number):
(XvfbDriverTest.test_next_free_display):
(XvfbDriverTest):
(XvfbDriverTest.test_start_next_worker):

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

6 years ago[Qt] QRawWebView tests are broke after r129545
kbalazs@webkit.org [Fri, 28 Sep 2012 13:55:52 +0000 (13:55 +0000)]
[Qt] QRawWebView tests are broke after r129545
https://bugs.webkit.org/show_bug.cgi?id=97907

Reviewed by Noam Rosenthal.

The issue here is that we set up the page loader client before initializing the page
so the message we send in WebPageProxy::initializeLoaderClient will be lost since the
page does not exists at the web process side yet. The trivial fix would be to reorder
initialization. In this patch I also moved to the new model of observing layout changes
via WKPageDidLayoutCallback since the old one will be deprecated at some time.

* UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
(WebView::WebView):
(WebView::didLayout):

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

6 years ago[GTK] Enable CSS Shaders layout LayoutTests on GTK+
commit-queue@webkit.org [Fri, 28 Sep 2012 13:49:46 +0000 (13:49 +0000)]
[GTK] Enable CSS Shaders layout LayoutTests on GTK+
https://bugs.webkit.org/show_bug.cgi?id=97821

Patch by Huang Dongsung <luxtella@company100.net> on 2012-09-28
Reviewed by Martin Robinson.

Source/WebKit/gtk:

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::setCSSCustomFilterEnabled): Pass through to Settings object.
* WebCoreSupport/DumpRenderTreeSupportGtk.h:
(DumpRenderTreeSupportGtk):

Tools:

This feature is disabled via Settings by default, but for testing,
we enable it using layoutTestController.overridePreferences. Add the
necessary plumbing for DRT.

WTR already works because support was added for Apple Mac earlier.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(resetDefaultsToConsistentValues): Feature is off by default.
* DumpRenderTree/gtk/TestRunnerGtk.cpp:
(TestRunner::overridePreference): Add handling of WebKitCSSCustomFilterEnabled.

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

6 years ago[Qt] Make NRWT use wk2/TestExpectations file
ossy@webkit.org [Fri, 28 Sep 2012 13:47:24 +0000 (13:47 +0000)]
[Qt] Make NRWT use wk2/TestExpectations file
https://bugs.webkit.org/show_bug.cgi?id=97894

Reviewed by Simon Hausmann.

* Scripts/webkitpy/layout_tests/port/qt.py: Remove unnecessary _skipped_file_search_paths function.
(QtPort.expectations_files): Add wk2 if --webkit-test-runner option added.
* Scripts/webkitpy/layout_tests/port/qt_unittest.py: Remove unnecessary test__skipped_file_search_paths function.
(QtPortTest._assert_search_path): Removed.
(QtPortTest.test_expectations_files): Add wk2 if --webkit-test-runner option added, and code cleanup.

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

6 years ago[WebDatabase] Error code should be CONSTRAINT_ERR if a statement fails due to a const...
commit-queue@webkit.org [Fri, 28 Sep 2012 13:44:43 +0000 (13:44 +0000)]
[WebDatabase] Error code should be CONSTRAINT_ERR if a statement fails due to a constraint failure
https://bugs.webkit.org/show_bug.cgi?id=97897

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

Source/WebCore:

Use CONSTRAINT_ERR error code instead of the generic DATABASE_ERR
when a statement fails due to a constraint failure. This is documented
in the W3C specification:
http://dev.w3.org/html5/webdatabase/#dom-sqlexception-code-constraint

Tests: storage/websql/sql-error-codes.html

* Modules/webdatabase/SQLStatement.cpp:
(WebCore::SQLStatement::execute):
* Modules/webdatabase/SQLStatementSync.cpp:
(WebCore::SQLStatementSync::execute):
* platform/sql/SQLiteDatabase.cpp:
(WebCore):
* platform/sql/SQLiteDatabase.h:
(WebCore):

LayoutTests:

Update storage/websql/sql-error-codes.html test case to check
that the CONSTRAINT_ERR error code is used when a statement
fails due to a constraint failure.

* platform/chromium/storage/websql/sql-error-codes-expected.txt:
* storage/websql/sql-error-codes-expected.txt:
* storage/websql/sql-error-codes.js:
(testConstraintFailure):
(runTest):

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

6 years ago[EFL][DRT] EFL's layoutTestController.keepWebHistory should enable visited links...
commit-queue@webkit.org [Fri, 28 Sep 2012 13:38:08 +0000 (13:38 +0000)]
[EFL][DRT] EFL's layoutTestController.keepWebHistory should enable visited links tracking
https://bugs.webkit.org/show_bug.cgi?id=97901

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

EFL's DRT testRunner.keepWebHistory should enable visited links tracking in order
to be consistent with WTR implementation and also several tests rely on that (fast/history).

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

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

6 years agoWeb Inspector: split ProgressBar.js into Progress.js and ProgressIndicator.js
pfeldman@chromium.org [Fri, 28 Sep 2012 13:29:59 +0000 (13:29 +0000)]
Web Inspector: split ProgressBar.js into Progress.js and ProgressIndicator.js
https://bugs.webkit.org/show_bug.cgi?id=97902

Reviewed by Alexander Pavlov.

One is model, the other is UI component.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/Progress.js: Copied from Source/WebCore/inspector/front-end/ProgressBar.js.
* inspector/front-end/ProgressIndicator.js: Renamed from Source/WebCore/inspector/front-end/ProgressBar.js.
* inspector/front-end/UserAgentSupport.js:
* inspector/front-end/WebKit.qrc:
* inspector/front-end/externs.js:
* inspector/front-end/inspector.html:

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

6 years ago[BlackBerry] Should suspend page's scripted animations when WebPage is invisible
commit-queue@webkit.org [Fri, 28 Sep 2012 13:20:24 +0000 (13:20 +0000)]
[BlackBerry] Should suspend page's scripted animations when WebPage is invisible
https://bugs.webkit.org/show_bug.cgi?id=97856

Patch by Andrew Lo <anlo@rim.com> on 2012-09-28
Reviewed by Antonio Gomes.

Suspend page animations when setting WebPage invisible, resume when visible.
Internal PR212788.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setVisible):

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

6 years agoWeb Inspector: [Device Metrics] Remove the gutter overlay moving its functionality...
apavlov@chromium.org [Fri, 28 Sep 2012 13:08:50 +0000 (13:08 +0000)]
Web Inspector: [Device Metrics] Remove the gutter overlay moving its functionality into the InspectorOverlay
https://bugs.webkit.org/show_bug.cgi?id=97799

Reviewed by Pavel Feldman.

Source/WebCore:

In order to reduce the amount of port-specific code, the gutter overlay painted in the device metrics emulation mode
has been replaced by the respective functionality in the HTML-based InspectorOverlay in WebCore. The InspectorOverlay
now covers the entire WebView rather than the FrameView only.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::webViewResized):
(WebCore):
* inspector/InspectorController.h:
(WebCore):
(InspectorController):
* inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::InspectorOverlay):
(WebCore::InspectorOverlay::paint):
(WebCore::InspectorOverlay::resize):
(WebCore):
(WebCore::InspectorOverlay::update):
(WebCore::InspectorOverlay::drawGutter):
(WebCore::InspectorOverlay::reset):
* inspector/InspectorOverlay.h:
(InspectorOverlay):
* inspector/InspectorOverlayPage.html: Introduce the gutter painting functionality previously found in the Chromium's
DeviceMetricsSupport class, which used to implement WebPageOverlay.

Source/WebKit/chromium:

- Dispatch the webViewResized() event on InspectorController, which is necessary to update the InspectorOverlay.
- Remove the gutter overlay painting code.

* src/WebDevToolsAgentImpl.cpp:
(WebKit::DeviceMetricsSupport::DeviceMetricsSupport):
(WebKit::DeviceMetricsSupport::~DeviceMetricsSupport):
(WebKit::WebDevToolsAgentImpl::attach):
(WebKit::WebDevToolsAgentImpl::webViewResized):
(WebKit::WebDevToolsAgentImpl::overrideDeviceMetrics):
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):
* src/WebDevToolsAgentPrivate.h:
(WebDevToolsAgentPrivate):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::resize):

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

6 years agoediting/pasteboard/paste-removing-iframe.html crashes on EFL bots
commit-queue@webkit.org [Fri, 28 Sep 2012 12:56:55 +0000 (12:56 +0000)]
editing/pasteboard/paste-removing-iframe.html crashes on EFL bots
https://bugs.webkit.org/show_bug.cgi?id=97892

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-09-28
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Added missing null check to avoid a crash if the document inside
iframe is removed during the editing operation.

Test: editing/pasteboard/paste-removing-iframe.html

* editing/Editor.cpp:
(WebCore::Editor::changeSelectionAfterCommand):

LayoutTests:

Unskip editing/pasteboard/paste-removing-iframe.html

* platform/efl/TestExpectations:

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

6 years agoWeb Inspector: [chromium] remove devtools_frontend.zip
pfeldman@chromium.org [Fri, 28 Sep 2012 12:48:25 +0000 (12:48 +0000)]
Web Inspector: [chromium] remove devtools_frontend.zip
https://bugs.webkit.org/show_bug.cgi?id=97650

Reviewed by Yury Semikhatsky.

This change removes the devtools_frontend zip generation and migrates to proper resource bundle for debug mode creation.

* WebKit.gyp:
* scripts/generate_devtools_zip.py: Removed.

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

6 years ago[BlackBerry] Destroy thread-specific data for Platform::Graphics::Buffer on the right...
anilsson@rim.com [Fri, 28 Sep 2012 12:37:00 +0000 (12:37 +0000)]
[BlackBerry] Destroy thread-specific data for Platform::Graphics::Buffer on the right thread
https://bugs.webkit.org/show_bug.cgi?id=97674

Reviewed by Rob Buis.

A new API was added to BlackBerry::Platform::Graphics for destroying
thread-specific data generated on the compositing thread when we blit
buffers. The buffers are otherwise created and destroyed on the WebKit
thread, which doesn't give platform any opportunity to destroy the
thread-specific data.

This patch adds calls to the new API to avoid leaking resources.

Reviewed internally by Jakob Petsovits and Filip Spacek.

PR 214644

Source/WebCore:

Verified using manual testing.

* plugins/blackberry/PluginViewPrivateBlackBerry.cpp:
(WebCore::PluginViewPrivate::createBuffers):
(WebCore::PluginViewPrivate::destroyBuffers):

Source/WebKit/blackberry:

* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::initialize):
(BlackBerry::WebKit::SurfacePool::createPlatformGraphicsContext):
(BlackBerry::WebKit::SurfacePool::lockTileRenderingSurface):
(BlackBerry::WebKit::SurfacePool::releaseTileRenderingSurface):
(BlackBerry::WebKit::SurfacePool::initializeVisibleTileBuffer):
(BlackBerry::WebKit::SurfacePool::createBuffers):
(BlackBerry::WebKit::SurfacePool::releaseBuffers):

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

6 years agoUnreviewed Chromium TestExpectation addition
schenney@chromium.org [Fri, 28 Sep 2012 12:36:45 +0000 (12:36 +0000)]
Unreviewed Chromium TestExpectation addition

Adding media/audio-repaint.html

* platform/chromium/TestExpectations:

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

6 years agoWeb Inspector: [Canvas] log property setters too along with function calls
commit-queue@webkit.org [Fri, 28 Sep 2012 12:09:12 +0000 (12:09 +0000)]
Web Inspector: [Canvas] log property setters too along with function calls
https://bugs.webkit.org/show_bug.cgi?id=97776

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

Trace logs should also contain property setter calls.

* inspector/InjectedScriptCanvasModuleSource.js:
(.):
* inspector/Inspector.json:
* inspector/front-end/CanvasProfileView.js:
(WebInspector.CanvasProfileView.prototype._showTraceLog):

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

6 years agoRemove LocalizedNumber*.*
tkent@chromium.org [Fri, 28 Sep 2012 12:02:32 +0000 (12:02 +0000)]
Remove LocalizedNumber*.*
https://bugs.webkit.org/show_bug.cgi?id=97876

Reviewed by Yuta Kitamura.

LocalizedNumber.h functions are replaced with Localizer class.

* CMakeLists.txt: Remove LocalizedNumberNone.*.
* GNUmakefile.list.am: ditto.
* Target.pri: ditto.
* WebCore.vcpproj/WebCore.vcproj: ditto.
* WebCore.gyp/WebCore.gyp: Remove LocalizedNumber*.*.
* WebCore.gypi: ditto.
* WebCore.xcodeproj/project.pbxproj: ditto.

* html/NumberInputType.cpp: Use Localizer for the element locale.
(WebCore::NumberInputType::localizeValue):
(WebCore::NumberInputType::convertFromVisibleValue):

* platform/text/Localizer.h: Move some comments from LocalizedNumber.h

* platform/text/LocalizedNumber.h: Removed.
* platform/text/LocalizedNumberICU.cpp: Removed.
* platform/text/LocalizedNumberNone.cpp: Removed.
* platform/text/mac/LocalizedNumberMac.mm: Removed.
* platform/text/win/LocalizedNumberWin.cpp: Removed.

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

6 years agoWeb Inspector: make HashSet memory instrumentation non-intrusive
yurys@chromium.org [Fri, 28 Sep 2012 11:21:38 +0000 (11:21 +0000)]
Web Inspector: make HashSet memory instrumentation non-intrusive
https://bugs.webkit.org/show_bug.cgi?id=97879

Reviewed by Vsevolod Vlasov.

Source/WebKit/chromium:

Update the test for HashSet memory instrumentation. We don't add
HashSet's private objects into the set of visited objects any more
and should update the expectation accordingly.

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

Source/WTF:

Removed reportMemoryUsage declarations as a friend of HashSet and HashTable. Also
removed MemoryInstrumentationHashTable which is not needed if we don't have
access to HashSet's guts.

* GNUmakefile.list.am:
* WTF.gypi:
* WTF.pro:
* WTF.vcproj/WTF.vcproj:
* WTF.xcodeproj/project.pbxproj:
* wtf/HashSet.h:
(WTF):
(HashSet):
* wtf/HashTable.h:
(HashTable):
* wtf/MemoryInstrumentation.h:
(WTF::MemoryClassInfo::addPrivateBuffer):
* wtf/MemoryInstrumentationHashSet.h:
(WTF::reportMemoryUsage):
* wtf/MemoryInstrumentationHashTable.h: Removed.

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

6 years ago[EFL][DRT] EFL DRT should disable visited links tracking by default
commit-queue@webkit.org [Fri, 28 Sep 2012 11:15:01 +0000 (11:15 +0000)]
[EFL][DRT] EFL DRT should disable visited links tracking by default
https://bugs.webkit.org/show_bug.cgi?id=97881

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

Source/WebKit/efl:

Added aux DumpRenderTreeSupportEfl::setShouldTrackVisitedLinks() function.

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

Tools:

Visited links tracking is disabled by default for each test.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

LayoutTests:

Rebased fast/block/float/float-in-float-hit-testing.html and unskipped it for EFL WK2.

* platform/efl-wk2/TestExpectations:
* platform/efl/fast/block/float/float-in-float-hit-testing-expected.png:
* platform/efl/fast/block/float/float-in-float-hit-testing-expected.txt:

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

6 years ago[Forms] Add localized strings for multiple fields date/time input UI
yosin@chromium.org [Fri, 28 Sep 2012 10:59:32 +0000 (10:59 +0000)]
[Forms] Add localized strings for multiple fields date/time input UI
https://bugs.webkit.org/show_bug.cgi?id=97878

Reviewed by Kent Tamura.

This patch introduces following localized string identifier for
month, time and week pickers:
    - OtherMonthLabel - appeared at the last entry in suggestion list.
    - OtherTimeLabel - ditto
    - OtherWeekLabel - ditto
    - ThisMonthButtonLabel - used in month picker
    - ThisWeekButtonLabel - used in week picker

* chromium/public/WebLocalizedString.h: Added OtherMonthLabel, OtherTimeLabel, OtherWeekLabel, ThiMonthkButtonLabel, and ThisWeekButtonLabel.

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

6 years agoUnreviewed, rolling out r129863.
gyuyoung.kim@samsung.com [Fri, 28 Sep 2012 10:49:05 +0000 (10:49 +0000)]
Unreviewed, rolling out r129863.
http://trac.webkit.org/changeset/129863
https://bugs.webkit.org/show_bug.cgi?id=97173

Source/WebCore:

WK2 layout test on debug is broken by this patch.

* platform/efl/RunLoopEfl.cpp:
(WebCore::RunLoop::RunLoop):
(WebCore::RunLoop::~RunLoop):

Source/WebKit2:

Broken debug WK2 layout test

* PlatformEfl.cmake:
* UIProcess/API/efl/EWebKit2.h:
* UIProcess/API/efl/ewk_context.cpp:
(_Ewk_Context::_Ewk_Context):
(_Ewk_Context::~_Ewk_Context):
* UIProcess/API/efl/ewk_main.cpp:
(ewk_init):
(ewk_shutdown):
* UIProcess/API/efl/ewk_main.h: Added.
* UIProcess/API/efl/ewk_main_private.h: Removed.
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::EWK2UnitTestBase::SetUp):
(EWK2UnitTest::EWK2UnitTestBase::TearDown):
* WebProcess/efl/WebProcessMainEfl.cpp:
(WebKit::WebProcessMainEfl):

Tools:

Broken debug WK2 layout test

* MiniBrowser/efl/main.c:
(quit):
(main):
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
(WTR::initEcoreEvas):
(WTR::PlatformWebView::~PlatformWebView):
* WebKitTestRunner/efl/main.cpp:
(main):

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

6 years ago[EFL][WK2] exceededDatabaseQuota event is not handled
commit-queue@webkit.org [Fri, 28 Sep 2012 10:39:53 +0000 (10:39 +0000)]
[EFL][WK2] exceededDatabaseQuota event is not handled
https://bugs.webkit.org/show_bug.cgi?id=97882

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

Handle exceededDatabaseQuota callback from WKPageUIClient so
that we let the browser a chance to decide what to do when
the database quota is reached. If the browser does not handle
this, then we return a realistic default quota (5MB as
recommended by the spec).

* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_database_quota_exceeded):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/ewk_view_private.h:
* UIProcess/API/efl/ewk_view_ui_client.cpp:
(exceededDatabaseQuota):
(ewk_view_ui_client_attach):

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

6 years agoSource/WebKit2: [Qt] Use qInstallMessageHandler()
commit-queue@webkit.org [Fri, 28 Sep 2012 10:35:11 +0000 (10:35 +0000)]
Source/WebKit2: [Qt] Use qInstallMessageHandler()
https://bugs.webkit.org/show_bug.cgi?id=96648

Patch by Kai Koehne <kai.koehne@digia.com> on 2012-09-28
Reviewed by Jocelyn Turcotte.

qInstallMsgHandler() got deprecated in Qt 5.

* PluginProcess/qt/PluginProcessMainQt.cpp:
(WebKit::messageHandler):
(WebKit::PluginProcessMain):
* UIProcess/API/qt/tests/util.cpp:
(messageHandler):
(suppressDebugOutput):
* qt/MainQt.cpp:
(messageHandler):
(main):

Tools: [Qt] Use qInstallMessageHandler()
https://bugs.webkit.org/show_bug.cgi?id=96648

Patch by Kai Koehne <kai.koehne@digia.com> on 2012-09-28
Reviewed by Jocelyn Turcotte.

qInstallMsgHandler() got deprecated in Qt 5.

* DumpRenderTree/qt/DumpRenderTreeMain.cpp:
(messageHandler):
(main):
* WebKitTestRunner/qt/main.cpp:
(messageHandler):
(main):

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

6 years agoWeb Inspector: Formatting on load is broken
vsevik@chromium.org [Fri, 28 Sep 2012 10:24:46 +0000 (10:24 +0000)]
Web Inspector: Formatting on load is broken
https://bugs.webkit.org/show_bug.cgi?id=97880

Reviewed by Alexander Pavlov.

Bound formatted callback on UISourceCode and fixed callback call.

* inspector/front-end/UISourceCode.js:
(WebInspector.UISourceCode.prototype._fireContentAvailable.formattedCallback):
(WebInspector.UISourceCode.prototype._fireContentAvailable):

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

6 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Fri, 28 Sep 2012 10:17:05 +0000 (10:17 +0000)]
Unreviewed GTK gardening.

Removing failure expectations for two perftests' harness tests, the
regression was swiftly fixed in r129858.

* platform/gtk/TestExpectations:

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

6 years ago[Forms] Multiple fields month input UI
yosin@chromium.org [Fri, 28 Sep 2012 09:40:39 +0000 (09:40 +0000)]
[Forms] Multiple fields month input UI
https://bugs.webkit.org/show_bug.cgi?id=97299

Reviewed by Kent Tamura.

Source/WebCore:

This patch introduces multiple fields "month" input UI in DRT. We'll
enable this feature once we add tests.

Note: This patch affects ports which enable both ENABLE_INPUT_TYPE_MONTH
and ENABLE_INPUT_MULTIPLE_FIELDS_UI.

No new tests. To reduce size of this patch, other patches add tests
for multiple fields month input UI.

Note: Actual outputs of two tests
    - fast/forms/month/month-input-visible-string.html
    - fast/forms/month/month-stepup-stepdown-from-renderer.html
are different.

* css/html.css:
(input::-webkit-datetime-edit-month-field): Added for field appearance.
(input::-webkit-datetime-edit-year-field): ditto.
(input::-webkit-datetime-edit-month-field:focus): Added to remove focus ring.
(input::-webkit-datetime-edit-year-field:focus): ditto.
* html/MonthInputType.cpp:
(WebCore::MonthInputType::formatDateTimeFieldsState): Added to format numeric value to string value as specified in HTML5 specification.
(WebCore::MonthInputType::setupLayoutParameters): Added to set layout of multiple fields.
* html/MonthInputType.h: Changed to include BaseMultipleFieldsDateAndTimeInputType.h and introduce BaseMonthInputType typedef.
(WebCore::MonthInputType::MonthInputType): Changed base class name to BaseMonthInputType.
(MonthInputType): Changed to add declarations for formatDateTimeFieldsState() and setupLayoutParameters().
* html/shadow/DateTimeEditElement.cpp:
(DateTimeEditBuilder): Changed to have copy of object in m_stepRange and m_dateValue member variables for being robust.
(WebCore::DateTimeEditBuilder::DateTimeEditBuilder): Changed to add initialize m_placeholderForMonth and m_placeholderForYear.
(WebCore::DateTimeEditBuilder::visitField): Changed to support month field and year field.
* html/shadow/DateTimeEditElement.h:
(LayoutParameters): Changed to add member variables, placeholderForMonth and placeholderForYear. Changed to have copy of object in stepRange member variable for being robust.

LayoutTests:

This patch adds Chromium port specific expectations for "month" input
type tests for multiple fields month input UI.

Note: This patch affects ports which enable both ENABLE_INPUT_TYPE_MONTH
and ENABLE_INPUT_MULTIPLE_FIELDS_UI.

* platform/chromium/fast/forms/month/month-input-visible-string-expected.txt: Added. Multiple fields month input UI doesn't have selection.
* platform/chromium/fast/forms/month/month-stepup-stepdown-from-renderer-expected.txt: Added. On multiple fields month input UI, step down/up decrement/increment a field rather than whole value.

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

6 years ago[EFL][WK2] Clear provider on destructor of {Vibration,Battery,NetworkInfo}Provider.
commit-queue@webkit.org [Fri, 28 Sep 2012 09:40:24 +0000 (09:40 +0000)]
[EFL][WK2] Clear provider on destructor of {Vibration,Battery,NetworkInfo}Provider.
https://bugs.webkit.org/show_bug.cgi?id=97528

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-09-28
Reviewed by Kenneth Rohde Christiansen.

Constructor of {Vibration,Battery,NetworkInfo}Provider set provider
but the destructor of the classes doesn't clear provider.
This can make a problem about accessing dangling pointer.

For preventing this problem, clear provider on destructor.

* UIProcess/API/efl/BatteryProvider.cpp:
(BatteryProvider::~BatteryProvider):
* UIProcess/API/efl/NetworkInfoProvider.cpp:
(NetworkInfoProvider::~NetworkInfoProvider):
* UIProcess/API/efl/VibrationProvider.cpp:
(VibrationProvider::~VibrationProvider):

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

6 years agoUnreviewed test fix.
vsevik@chromium.org [Fri, 28 Sep 2012 09:26:28 +0000 (09:26 +0000)]
Unreviewed test fix.

* inspector/debugger/ui-source-code-display-name.html:

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

6 years ago[EFL][WK2] NetworkInfo provider is not initialized in Ewk_Context
commit-queue@webkit.org [Fri, 28 Sep 2012 09:24:47 +0000 (09:24 +0000)]
[EFL][WK2] NetworkInfo provider is not initialized in Ewk_Context
https://bugs.webkit.org/show_bug.cgi?id=97865

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

Initialize NetworkInfo provider for EFL port in Ewk_Context
with the other providers.

* UIProcess/API/efl/ewk_context.cpp:
(_Ewk_Context):
(_Ewk_Context::_Ewk_Context):

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

6 years ago[EFL][WK2] Refactoring initialization and shutdown codes of EFL libraries.
commit-queue@webkit.org [Fri, 28 Sep 2012 08:56:55 +0000 (08:56 +0000)]
[EFL][WK2] Refactoring initialization and shutdown codes of EFL libraries.
https://bugs.webkit.org/show_bug.cgi?id=97173

Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2012-09-28
Reviewed by Gyuyoung Kim.

Source/WebCore:

Remove codes to initialize and shutdown the EFL libraries from
RunLoopEfl.cpp. Initialization and shutdown will be done in the
ewk_main.cpp for ui process and WebProcessMainEfl.cpp for web
process.

No new tests. This patch doesn't change behavior.

* platform/efl/RunLoopEfl.cpp:
(WebCore::RunLoop::RunLoop):
(WebCore::RunLoop::~RunLoop):

Source/WebKit2:

Initialize and shutdown the EFL libraries in the ewk_main.cpp for ui
process and WebProcessMainEfl.cpp for web process.
Additionally, initialization and shutdown are done when ewk_context is
created and deleted, so ewk_{init,shutdown} APIs are changed to
internal function and applications don't have to call them.

* PlatformEfl.cmake:
* UIProcess/API/efl/EWebKit2.h:
* UIProcess/API/efl/ewk_context.cpp:
(_Ewk_Context::_Ewk_Context):
(_Ewk_Context::~_Ewk_Context):
* UIProcess/API/efl/ewk_main.cpp:
(ewk_init):
(ewk_shutdown):
* UIProcess/API/efl/ewk_main.h: Removed.
* UIProcess/API/efl/ewk_main_private.h: Added.
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::EWK2UnitTestBase::SetUp):
(EWK2UnitTest::EWK2UnitTestBase::TearDown):
* WebProcess/efl/WebProcessMainEfl.cpp:
(WebKit::WebProcessMainEfl):

Tools:

The initialization and shutdown are done inside the webkit, so we don't
have to call them out of the webkit.

* MiniBrowser/efl/main.c:
(quit):
(main):
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
(WTR::initEcoreEvas):
(WTR::PlatformWebView::~PlatformWebView):
* WebKitTestRunner/efl/main.cpp:
(main):

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

6 years agoWeb Inspector: Prepare UISourceCode to transformation into File.
vsevik@chromium.org [Fri, 28 Sep 2012 08:44:38 +0000 (08:44 +0000)]
Web Inspector: Prepare UISourceCode to transformation into File.
https://bugs.webkit.org/show_bug.cgi?id=97113

Reviewed by Pavel Feldman.

Source/WebCore:

This patch moves methods and fields from UISourceCode descendants except for the modification bindings.

* inspector/front-end/BreakpointManager.js:
(WebInspector.BreakpointManager.breakpointStorageId):
(WebInspector.BreakpointManager.isDivergedFromVM):
(WebInspector.BreakpointManager.prototype.restoreBreakpoints):
(WebInspector.BreakpointManager.Breakpoint):
(WebInspector.BreakpointManager.Breakpoint.prototype._updateBreakpoint):
(WebInspector.BreakpointManager.Breakpoint.prototype._breakpointStorageId):
(WebInspector.BreakpointManager.Storage.prototype._restoreBreakpoints):
(set WebInspector.BreakpointManager.Storage.Item):
* inspector/front-end/JavaScriptSource.js:
(WebInspector.JavaScriptSource):
(WebInspector.JavaScriptSource.prototype.workingCopyCommitted):
* inspector/front-end/JavaScriptSourceFrame.js:
(WebInspector.JavaScriptSourceFrame.prototype.canEditSource):
(WebInspector.JavaScriptSourceFrame.prototype._supportsEnabledBreakpointsWhileEditing):
(WebInspector.JavaScriptSourceFrame.prototype._didEditContent):
(WebInspector.JavaScriptSourceFrame.prototype._removeBreakpointsBeforeEditing):
(WebInspector.JavaScriptSourceFrame.prototype._restoreBreakpointsAfterEditing):
(WebInspector.JavaScriptSourceFrame.prototype._addBreakpointDecoration):
(WebInspector.JavaScriptSourceFrame.prototype._handleGutterClick):
* inspector/front-end/SASSSourceMapping.js:
* inspector/front-end/ScriptSnippetModel.js:
(WebInspector.ScriptSnippetModel):
(WebInspector.ScriptSnippetModel.prototype._addScriptSnippet):
(WebInspector.ScriptSnippetModel.prototype.evaluateScriptSnippet.get var):
(WebInspector.ScriptSnippetModel.prototype._projectWillReset):
(WebInspector.SnippetJavaScriptSource):
(WebInspector.SnippetJavaScriptSource.prototype.workingCopyChanged):
* inspector/front-end/ScriptsNavigator.js:
(WebInspector.SnippetsNavigatorView.prototype._handleEvaluateSnippet):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._addUISourceCode):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeFormatted):
(WebInspector.ScriptsPanel.prototype._toggleFormatSource):
* inspector/front-end/SnippetJavaScriptSourceFrame.js:
(WebInspector.SnippetJavaScriptSourceFrame.prototype._runButtonClicked):
* inspector/front-end/StyleSource.js:
* inspector/front-end/UISourceCode.js:
(WebInspector.UISourceCode.prototype.searchInContent):
(WebInspector.UISourceCode.prototype._fireContentAvailable.formattedCallback):
(WebInspector.UISourceCode.prototype._fireContentAvailable):
(WebInspector.UISourceCode.prototype.setFormatted.if):
(WebInspector.UISourceCode.prototype.setFormatted.didGetContent.formattedChanged):
(WebInspector.UISourceCode.prototype.setFormatted.didGetContent):
(WebInspector.UISourceCode.prototype.setFormatted):
(WebInspector.UISourceCode.prototype.setSourceMapping):

LayoutTests:

* http/tests/inspector/workspace-test.js:
* inspector/debugger/dynamic-script-tag-expected.txt:
* inspector/debugger/network-uisourcecode-provider-expected.txt:
* inspector/debugger/resource-script-mapping-expected.txt:
* inspector/debugger/script-snippet-model.html:

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

6 years agoMove Shadow DOM inspection feature out from experiments
morrita@google.com [Fri, 28 Sep 2012 08:41:22 +0000 (08:41 +0000)]
Move Shadow DOM inspection feature out from experiments
https://bugs.webkit.org/show_bug.cgi?id=94274

Reviewed by Pavel Feldman.

This chagne turns the showShadowDOM experiments into a settings,
adding aSettingsScreen entry for that.

* English.lproj/localizedStrings.js:
* inspector/front-end/DOMAgent.js:
* inspector/front-end/Settings.js:
(WebInspector.ExperimentsSettings):
* inspector/front-end/SettingsScreen.js:
(WebInspector.GenericSettingsTab):

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

6 years agoUse Localizer in PagePopupController
tkent@chromium.org [Fri, 28 Sep 2012 08:29:33 +0000 (08:29 +0000)]
Use Localizer in PagePopupController
https://bugs.webkit.org/show_bug.cgi?id=97862

Reviewed by Hajime Morita.

Source/WebCore:

No new tests. This doesn't change any behavior.

* page/PagePopupClient.h:
(WebCore):
(PagePopupClient): Add "localizer" member function.
* page/PagePopupController.cpp:
(WebCore::PagePopupController::localizeNumberString):
Use a Localizer object provided by PagePopupClient.

Source/WebKit/blackberry:

We need to implement PagePopupClient::localizer. These clients know the
host elements. Localizer implementations get Localizer objects from the
owner documents of the elements for the browser locale.

* WebCoreSupport/ColorPickerClient.cpp:
(WebCore::ColorPickerClient::localizer): Added.
* WebCoreSupport/ColorPickerClient.h:
(ColorPickerClient): Declare "localizer."
* WebCoreSupport/DatePickerClient.cpp:
(WebCore::SelectPopupClient::localizer): Added.
* WebCoreSupport/DatePickerClient.h:
(DatePickerClient): Declare "localizer."
* WebCoreSupport/SelectPopupClient.cpp:
(WebCore::SelectPopupClient::localizer): Added.
* WebCoreSupport/SelectPopupClient.h:
(SelectPopupClient): Declare "localizer."

Source/WebKit/chromium:

We need to implement PagePopupClient::localizer. The current
implementations of localizer functions always return Localizer objects
for the browser locale. It's ok because other locale-dependent stuff in
PagePopup uses the browser locale, not element locale. We might want to
update this behavior later for testing i18n behavior in PagePopup.

* src/ColorChooserUIController.cpp:
(WebKit::ColorChooserUIController::ColorChooserUIController):
Initialize m_localizer with the browser default locale.
(WebKit::ColorChooserUIController::localizer):
Returns m_localizer.
* src/ColorChooserUIController.h:
(ColorChooserUIController): Declare localizer function and m_localizer.

* src/DateTimeChooserImpl.cpp:
(WebKit::DateTimeChooserImpl::DateTimeChooserImpl):
Initialize m_localizer with the browser default locale.
(WebKit::DateTimeChooserImpl::localizer):
Returns m_localizer.
* src/DateTimeChooserImpl.h:
(DateTimeChooserImpl): Declare localizer function and m_localizer.

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

6 years agoSwitch monthLabels, weekDayShortLabels, and firstDayOfWeek to Localizer
tkent@chromium.org [Fri, 28 Sep 2012 08:09:22 +0000 (08:09 +0000)]
Switch monthLabels, weekDayShortLabels, and firstDayOfWeek to Localizer
https://bugs.webkit.org/show_bug.cgi?id=97874

Reviewed by Kentaro Hara.

Source/WebCore:

No new tests. This change shouldn't change any behavior.

* platform/text/Localizer.h:
(Localizer): Add monthLabels, weekDayShortLabels, and firstDayOfWeek.
* platform/text/LocalizedDate.h:
(WebCore): Remove them.
* platform/text/LocalizedDateICU.cpp:
(WebCore::localizedDateFormatText): ditto.
* platform/text/LocalizedDateWin.cpp:
(WebCore::localizedDateFormatText): ditto.
* platform/text/mac/LocalizedDateMac.cpp:
(WebCore::localizedDateFormatText): ditto.

* platform/text/LocaleICU.h:
(LocaleICU): Add virtual and OVERRIDE.
* platform/text/LocaleWin.h:
(LocaleWin):
- Add virtual and OVERRIDE.
- Move the content of firstDayOfWeek to LocaleWin.cpp because inline
definition of a virtual function is not efficient.
* platform/text/LocaleWin.cpp:
(WebCore::LocaleWin::firstDayOfWeek): See above.
* platform/text/mac/LocaleMac.h:
(LocaleMac): Add virtual and OVERRIDE.

Source/WebKit/chromium:

* src/DateTimeChooserImpl.cpp:
(WebKit::DateTimeChooserImpl::writeDocument):
Use Localizer for the browser locale.

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