WebKit-https.git
6 years ago[GTK] WebKitTestRunner tries to remove an already deleted event in EventSenderProxy...
commit-queue@webkit.org [Wed, 10 Jul 2013 08:41:14 +0000 (08:41 +0000)]
[GTK] WebKitTestRunner tries to remove an already deleted event in EventSenderProxy::replaySavedEvents
https://bugs.webkit.org/show_bug.cgi?id=118509

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-10
Reviewed by Martin Robinson.

In EventSenderProxy::replaySavedEvents WebKitTestRunner can crash
when trying to remove an event already removed, if another event is
processed in the middle. By using a Deque's takeFirst, we ensure the
element is removed before we dispatch it.

fast/events/mousedown-inside-dragstart-should-not-cause-crash.html no longer
crashes after this fix is added.

* WebKitTestRunner/EventSenderProxy.h: Use a Deque instead of Vector in GTK
* WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
(WTR::EventSenderProxy::replaySavedEvents): Use takeFirst to retrieve the event
from the queue.

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

6 years agoWorkaround for x86 optimizer bug in MSVC 2012.
michael.bruning@digia.com [Wed, 10 Jul 2013 08:36:13 +0000 (08:36 +0000)]
Workaround for x86 optimizer bug in MSVC 2012.
https://bugs.webkit.org/show_bug.cgi?id=118478

Reviewed by Benjamin Poulain.

This is a workaround for a bug in the x86 MSVC 2012 optimizer.

The problem is that the range comparison gets optimized out when
the templated inline function toASCIIUpper. Copying the methods
content fixes the problem.

This is unfortunately not the nicest fix, but the alternative would
be to turn off optimization for StringImpl::upper on the x86 MSVC 2012
build, which might impact overall performance negatively.

* wtf/text/StringImpl.cpp:
(WTF::StringImpl::upper):

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

6 years ago[Qt] Unreviewed gardening.
kadam@inf.u-szeged.hu [Wed, 10 Jul 2013 08:13:15 +0000 (08:13 +0000)]
[Qt] Unreviewed gardening.
Remove platform specific expetations after r152494 because the generic is good for Qt.

* platform/qt/editing/execCommand/outdent-blockquote-test1-expected.txt: Removed after r152494.
* platform/qt/editing/execCommand/outdent-blockquote-test2-expected.txt: Removed after r152494.
* platform/qt/editing/execCommand/outdent-blockquote-test3-expected.txt: Removed after r152494.
* platform/qt/editing/execCommand/outdent-blockquote-test4-expected.txt: Removed after r152494.

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

6 years agoChange recently ratified extensions prefixes from WEBKIT_WEBGL_ to WEBGL_
commit-queue@webkit.org [Wed, 10 Jul 2013 07:41:42 +0000 (07:41 +0000)]
Change recently ratified extensions prefixes from WEBKIT_WEBGL_ to WEBGL_
https://bugs.webkit.org/show_bug.cgi?id=117786

Patch by Karol Świniarski <k.swiniarsk2@samsung.com> on 2013-07-10
Reviewed by Dean Jackson.

According to WebGL's revision 10, extensions should be named: WEBGL_lose_context,
WEBGL_depth_texture, WEBGL_compressed_texture_s3tc.

No new tests. Covered by existing tests:
LayoutTests/webgl/conformance/extensions/get-extension.html
LayoutTests/webgl/conformance/context/context-lost.html
LayoutTests/webgl/conformance/extensions/webgl-depth-texture.html
LayoutTests/webgl/conformance/extensions/webgl-compressed-texture-s3tc.html

* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):

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

6 years agoUnreviewed build fix.
bw80.lee@samsung.com [Wed, 10 Jul 2013 06:55:46 +0000 (06:55 +0000)]
Unreviewed build fix.

* svg/SVGImageElement.cpp:
(WebCore::SVGImageElement::SVGImageElement):

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

6 years ago[EFL] tooltip callback doesn't work.
bw80.lee@samsung.com [Wed, 10 Jul 2013 06:10:15 +0000 (06:10 +0000)]
[EFL] tooltip callback doesn't work.
https://bugs.webkit.org/show_bug.cgi?id=118522

Reviewed by Christophe Dumez.

Add missing code to connect didChangeTooltip callback.

* UIProcess/efl/ViewClientEfl.cpp:
(WebKit::ViewClientEfl::ViewClientEfl):

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

6 years agoIntroduce isSVGFontElement() and isSVGImageElement(), use them
gyuyoung.kim@samsung.com [Wed, 10 Jul 2013 05:31:50 +0000 (05:31 +0000)]
Introduce isSVGFontElement() and isSVGImageElement(), use them
https://bugs.webkit.org/show_bug.cgi?id=118504

Reviewed by Benjamin Poulain.

Let's use isFoo() to enhance readibility in svg element classes along with html's.

No new tests, there is no behavior changes.

* loader/cache/CachedFont.cpp:
(WebCore::CachedFont::getSVGFontById):
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::absoluteImageURL):
* svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::hasValidAttributeType):
* svg/SVGElement.cpp:
(WebCore::SVGElement::viewportElement):
* svg/SVGFontElement.cpp:
(WebCore::SVGFontElement::SVGFontElement):
* svg/SVGFontElement.h:
(WebCore::toSVGFontElement):
(WebCore::isSVGFontElement):
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::associatedFontElement):
(WebCore::SVGFontFaceElement::rebuildFontFace):
* svg/SVGGlyphElement.cpp:
(WebCore::SVGGlyphElement::invalidateGlyphCache):
* svg/SVGHKernElement.cpp:
(WebCore::SVGHKernElement::insertedInto):
(WebCore::SVGHKernElement::removedFrom):
* svg/SVGImageElement.cpp:
(WebCore::SVGImageElement::SVGImageElement):
* svg/SVGImageElement.h:
(WebCore::toSVGImageElement):
(WebCore::isSVGImageElement):
* svg/SVGLocatable.cpp:
(WebCore::isViewportElement):
* svg/SVGVKernElement.cpp:
(WebCore::SVGVKernElement::insertedInto):
(WebCore::SVGVKernElement::removedFrom):

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

6 years ago[EFL] Add ewk_view_device_pixel_ratio_set
ryuan.choi@samsung.com [Wed, 10 Jul 2013 03:32:35 +0000 (03:32 +0000)]
[EFL] Add ewk_view_device_pixel_ratio_set
https://bugs.webkit.org/show_bug.cgi?id=118521

Reviewed by Gyuyoung Kim.

Source/WebCore:

No new tests, covered by existing tests.

* dom/ViewportArguments.cpp: Remove PLATFORM(EFL) not to use deprecatedTargetDPI
* dom/ViewportArguments.h: Ditto.
* platform/efl/EflScreenUtilities.cpp: Removed getDPI() which is not used anymore.
* platform/efl/EflScreenUtilities.h: Ditto.

Source/WebKit/efl:

ewebkit and ewebkit2 have different approach about getting device pixel ratio.
ewebkit depends on deprecatedTargetDPI and ecore_x_dpi_get,
but ewebkit2 use Page::deviceScaleFactor.

This patch will add ewk_view_device_pixel_ratio_set and use Page::deviceScaleFactor()
instead of ViewportArguments::deprecatedTargetDPI like ewebkit2.

* ewk/ewk_view.cpp:
(_ewk_view_priv_new):
(_ewk_view_viewport_attributes_compute): Use Page::deviceScaleFactor().
(ewk_view_viewport_attributes_get): Ditto.
(ewk_view_device_pixel_ratio_set): Added.
(ewk_view_device_pixel_ratio_get):
* ewk/ewk_view.h:
Update document of ewk_view_device_pixel_ratio_get (from ewebkit2) and
added ewk_view_device_pixel_ratio_set.

Tools:

* EWebLauncher/main.c: Added new option(-r) to test device pixel ratio.
(windowCreate):
(parseUserArguments):

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

6 years ago@readonly and @aria-readonly="false" are not exposed correctly to accessibility
commit-queue@webkit.org [Wed, 10 Jul 2013 00:39:45 +0000 (00:39 +0000)]
@readonly and @aria-readonly="false" are not exposed correctly to accessibility
https://bugs.webkit.org/show_bug.cgi?id=118475

Patch by James Craig <james@cookiecrook.com> on 2013-07-09
Reviewed by Chris Fleizach.

Source/WebCore:

Account for implicit and explicit @readonly/@aria-readonly mismatches. Updated existing test coverage.

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

LayoutTests:

Updated existing test to account for implicit and explicit @readonly/@aria-readonly mismatches.

* accessibility/aria-readonly-expected.txt:
* accessibility/aria-readonly.html:

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

6 years agoUnreviewed change of my email addresses.
commit-queue@webkit.org [Tue, 9 Jul 2013 23:18:55 +0000 (23:18 +0000)]
Unreviewed change of my email addresses.
https://bugs.webkit.org/show_bug.cgi?id=100122

Patch by Bruno de Oliveira Abinader <brunoabinader@gmail.com> on 2013-07-09

* Scripts/webkitpy/common/config/contributors.json:

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

6 years agoReviewed by Simon Fraser.
jer.noble@apple.com [Tue, 9 Jul 2013 22:58:45 +0000 (22:58 +0000)]
Reviewed by Simon Fraser.

Source/WebCore:

Remember the scroll position and restore after exiting full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61956

No new tests, adds a client callback used by WebKit and WebKit2 win.

* platform/graphics/win/FullScreenController.cpp:
(FullScreenController::enterFullScreen):
(FullScreenController::exitFullScreen):
* platform/graphics/win/FullScreenControllerClient.h:

Source/WebKit/mac:

Remember the scroll position and restore after exiting full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61956
<rdar://problem/9544461>

Call into the main FrameView to save the scroll position before swapping the
WebView into the full-screen window, and restore the scroll position after
swapping the WebView back into the browser window.

* WebView/WebFullScreenController.h:
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController windowDidEnterFullscreen:]): Save the scroll position.
(-[WebFullScreenController exitFullscreen]): Restore the scroll position.

Source/WebKit/win:

Remember the scroll position and restore after exiting full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61956

Add support for two new FullScreenClient callbacks for saving and restoring the
scroll position of the full-screen frame.

* WebView.cpp:
(WebView::fullScreenClientSaveScrollPosition):
(WebView::fullScreenClientRestoreScrollPosition):
* WebView.h:

Source/WebKit2:

Remember the scroll position and restore after exiting full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61956
<rdar://problem/9544461>

Call into the main FrameView to save the scroll position before swapping the
WebView into the full-screen window, and restore the scroll position after
swapping the WebView back into the browser window.

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController beganExitFullScreenAnimation]):

In WebKit2, this requires some communication between the WebProcess and the
UIProcess, so add two new messages to WebFullScreenManager to be called by
its proxy.

* UIProcess/WebFullScreenManagerProxy.h:
* UIProcess/WebFullScreenManagerProxy.cpp:
(WebKit::WebFullScreenManagerProxy::saveScrollPosition):
(WebKit::WebFullScreenManagerProxy::restoreScrollPosition):
* WebProcess/FullScreen/WebFullScreenManager.h:
* WebProcess/FullScreen/WebFullScreenManager.messages.in:
* WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::saveScrollPosition):
(WebKit::WebFullScreenManager::restoreScrollPosition):

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

6 years agoAuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate in WebCore...
jeffm@apple.com [Tue, 9 Jul 2013 21:00:26 +0000 (21:00 +0000)]
AuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate in WebCore::mac()
https://bugs.webkit.org/show_bug.cgi?id=118518

Reviewed by Alexey Proskuryakov.

* platform/network/mac/AuthenticationMac.mm:
(WebCore::mac):
Map ProtectionSpaceAuthenticationSchemeNegotiate to NSURLAuthenticationMethodNegotiate.

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

6 years agoAuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate
jeffm@apple.com [Tue, 9 Jul 2013 20:17:41 +0000 (20:17 +0000)]
AuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate
https://bugs.webkit.org/show_bug.cgi?id=118517

Reviewed by Brady Eidson.

* platform/network/mac/AuthenticationMac.mm:
(WebCore::core):
Map "NSURLAuthenticationMethodNegotiate" to ProtectionSpaceAuthenticationSchemeNegotiate.

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

6 years agoDumpRenderTree should stop sending unsupported URLs to NSWorkspace
andersca@apple.com [Tue, 9 Jul 2013 17:48:01 +0000 (17:48 +0000)]
DumpRenderTree should stop sending unsupported URLs to NSWorkspace
https://bugs.webkit.org/show_bug.cgi?id=118514
<rdar://problem/13686836>

Reviewed by Sam Weinig.

Add a new default policy delegate and override decidePolicyForNavigationAction: to not pass unhandled URLs to NSWorkspace.

* DumpRenderTree/DefaultPolicyDelegate.h: Added.
* DumpRenderTree/DefaultPolicyDelegate.m: Added.
(-[DefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
Add DefaultPolicyDelegate.h and DefaultPolicyDelegate.m.

* DumpRenderTree/mac/DumpRenderTree.mm:
(allocateGlobalControllers):
Allocate a DefaultPolicyDelegate object.

(resetWebViewToConsistentStateBeforeTesting):
Set the policy delegate to the default policy delegate.

* DumpRenderTree/mac/DumpRenderTreeMac.h:
Declare the defaultPolicyDelegate object.

* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setCustomPolicyDelegate):
Set the policy delegate to the default delegate if setDelegate is false.

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

6 years agoGardening to unbreak builds on the Windows bot.
mark.lam@apple.com [Tue, 9 Jul 2013 17:34:51 +0000 (17:34 +0000)]
Gardening to unbreak builds on the Windows bot.

Not reviewed.

* parser/ParserTokens.h:

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

6 years agoPrettyPatch doesn't handle UTF-8 characters correctly
mrobinson@webkit.org [Tue, 9 Jul 2013 17:30:13 +0000 (17:30 +0000)]
PrettyPatch doesn't handle UTF-8 characters correctly
https://bugs.webkit.org/show_bug.cgi?id=45760

Reviewed by Adam Roben.

* PrettyPatch/PrettyPatch.rb: Since the diff lines are typically in UTF-8 and the results
of PrettyPatch may be served by a web server or not (for instance when accessed via
webkit-patch pretty-diff), we should use a meta tag to force the page encoding to UTF-8.

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

6 years ago[Windows] Compile fix.
commit-queue@webkit.org [Tue, 9 Jul 2013 16:22:29 +0000 (16:22 +0000)]
[Windows] Compile fix.
https://bugs.webkit.org/show_bug.cgi?id=106558

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-07-09
Reviewed by Brent Fulgham.

On Windows, dispatch.h needs to be included before certain CFNetwork headers.

* WebCorePrefix.h: Include dispatch.h.

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

6 years agoFix 30% JSBench regression (caused by adding column numbers to stack traces).
mark.lam@apple.com [Tue, 9 Jul 2013 16:15:12 +0000 (16:15 +0000)]
Fix 30% JSBench regression (caused by adding column numbers to stack traces).
https://bugs.webkit.org/show_bug.cgi?id=118481.

Reviewed by Mark Hahnenberg and Geoffrey Garen.

Source/JavaScriptCore:

Previously, we already capture ExpressionRangeInfo that provides a divot for
each bytecode that can potentially throw an exception (and therefore generate
a stack trace). On first attempt to compute column numbers, we then do a walk
of the source string to record all line start positions in a table associated
with the SourceProvider. The column number can then be computed as
    divot - lineStartFor(bytecodeOffset).

The computation of this lineStarts table is the source of the 30% JSBench
performance regression.

The new code now records lineStarts as the lexer and parser scans the source
code. These lineStarts are then used to compute the column number for the
given divot, and stored in the ExpressionRangeInfo. Similarly, we also capture
the line number at the divot point and store that in the ExpressionRangeInfo.
Hence, to look up line and column numbers, we now lookup the ExpressionRangeInfo
for the bytecodeOffset, and then compute the line and column from the values
stored in the expression info.

The strategy:
1. We want to minimize perturbations to the lexer and parser. Specifically,
   the changes added should not change how it scans code, and generate bytecode.
2. We regard the divot as the source character position we are interested
   in. As such, we'll capture line and lineStart (for column) at the point
   when we capture the divot information. This ensures that the 3 values are
   consistent.

How the change is done:
1. Change the lexer to track lineStarts.
2. Change the parser to capture line and lineStarts at the point of capturing
   divots.
3. Change the parser and associated code to plumb these values all the way to
   the point that the correspoinding ExpressionRangeInfo is emitted.
4. Propagate and record SourceCode firstLine and firstLineColumnOffset to the
   the necessary places so that we can add them as needed when reifying
   UnlinkedCodeBlocks into CodeBlocks.
5. Compress the line and column number values in the ExpressionRangeInfo. In
   practice, we seldom have both large line and column numbers. Hence, we can
   encode both in an uint32_t most of the time. For the times when we encounter
   both large line and column numbers, we have a fallback to store the "fat"
   position info.
6. Emit an ExpressionRangeInfo for UnaryOp nodes to get more line and column
   number coverage.
7. Change the interpreter to use the new way of computing line and column.
8. Delete old line and column computation code that is now unused.

Misc details:
- the old lexer was tracking both a startOffset and charPosition where
  charPosition equals startOffset - SourceCode.startOffset. We now use
  startOffset exclusively throughout the system for consistency.
  All offset values (including lineStart) are relative to the start of the
  SourceProvider string. These values will only be converted to be relative
  to the SourceCode.startOffset at the very last minute i.e. when the divot
  is stored into the ExpressionRangeInfo.

  This change to use the same offset system everywhere reduces confusion
  from having to convert back and forth between the 2 systems. It also
  enables a lot of assertions to be used.

- Also fixed some bugs in the choice of divot positions to use. For example,
  both Eval and Function expressions previously used column numbers from
  the start of the expression but used the line number at the end of the
  expression. This is now fixed to use either the start or end positions
  as appropriate, but not a mix of line and columns from both.

- Why use ints instead of unsigneds for offsets and lineStarts inside the
  lexer and parser?
  Some tests (e.g. fast/js/call-base-resolution.html and
  fast/js/eval-cross-window.html) has shown that lineStart offsets can be
  prior to the SourceCode.startOffset. Keeping the lexer offsets as ints
  simplifies computations and makes it easier to maintain the assertions
  that (startOffset >= lineStartOffset).

  However, column and line numbers are always unsigned when we publish
  them to the ExpressionRangeInfo. The ints are only used inside the
  lexer and parser ... well, and bytecode generator.

- For all cases, lineStart is always captured where the divot is captured.
  However, some sputnik conformance tests have shown that we cannot honor
  line breaks for assignment statements like the following:

      eval("x\u000A*=\u000A-1;");

  In this case, the lineStart is expected to be captured at the start of
  the assignment expression instead of at the divot point in the middle.
  The assignment expression is the only special case for this.

This patch has been tested against the full layout tests both with release
and debug builds with no regression.

* API/JSContextRef.cpp:
(JSContextCreateBacktrace):
  - Updated to use the new StackFrame::computeLineAndColumn().
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
  - Added m_firstLineColumnOffset initialization.
  - Plumbed the firstLineColumnOffset into the SourceCode.
  - Initialized column for op_debug using the new way.
(JSC::CodeBlock::lineNumberForBytecodeOffset):
  - Changed to compute line number using the ExpressionRangeInfo.
(JSC::CodeBlock::columnNumberForBytecodeOffset): Added
  - Changed to compute column number using the ExpressionRangeInfo.
(JSC::CodeBlock::expressionRangeForBytecodeOffset):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::firstLineColumnOffset):
(JSC::GlobalCodeBlock::GlobalCodeBlock):
  - Plumbed firstLineColumnOffset through to the super class.
(JSC::ProgramCodeBlock::ProgramCodeBlock):
  - Plumbed firstLineColumnOffset through to the super class.
(JSC::EvalCodeBlock::EvalCodeBlock):
  - Plumbed firstLineColumnOffset through to the super class.
    But for EvalCodeBlocks, the firstLineColumnOffset is always 1
    because we're starting with a new source string with no start
    offset.
(JSC::FunctionCodeBlock::FunctionCodeBlock):
  - Plumbed firstLineColumnOffset through to the super class.

* bytecode/ExpressionRangeInfo.h:
  - Added modes for encoding line and column into a single 30-bit
    unsigned. The encoding is in 1 of 3 modes:
    1. FatLineMode: 22-bit line, 8-bit column
    2. FatColumnMode: 8-bit line, 22-bit column
    3. FatLineAndColumnMode: 32-bit line, 32-bit column
(JSC::ExpressionRangeInfo::encodeFatLineMode): Added.
  - Encodes line and column into the 30-bit position using FatLine mode.
(JSC::ExpressionRangeInfo::encodeFatColumnMode): Added.
  - Encodes line and column into the 30-bit position using FatColumn mode.
(JSC::ExpressionRangeInfo::decodeFatLineMode): Added.
  - Decodes the FatLine mode 30-bit position into line and column.
(JSC::ExpressionRangeInfo::decodeFatColumnMode): Added.
  - Decodes the FatColumn mode 30-bit position into line and column.

* bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):
  - Plumbed startColumn through.
(JSC::UnlinkedFunctionExecutable::link):
  - Plumbed startColumn through.
(JSC::UnlinkedCodeBlock::lineNumberForBytecodeOffset):
  - Computes a line number using the new way.
(JSC::UnlinkedCodeBlock::expressionRangeForBytecodeOffset):
  - Added decoding of line and column.
  - Added handling of the case when we do not find a fitting expression
    range info for a specified bytecodeOffset. This only happens if the
    bytecodeOffset is below the first expression range info. In that
    case, we'll use the first expression range info entry.
(JSC::UnlinkedCodeBlock::addExpressionInfo):
  - Added encoding of line and column.

* bytecode/UnlinkedCodeBlock.h:
  - Added m_expressionInfoFatPositions in RareData.
(JSC::UnlinkedFunctionExecutable::functionStartColumn):
(JSC::UnlinkedCodeBlock::shrinkToFit):
  - Removed obsoleted m_lineInfo.
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitCall): Plumbed line and lineStart through.
(JSC::BytecodeGenerator::emitCallEval): Plumbed line and lineStart through.
(JSC::BytecodeGenerator::emitCallVarargs): Plumbed line and lineStart through.
(JSC::BytecodeGenerator::emitConstruct): Plumbed line and lineStart through.
(JSC::BytecodeGenerator::emitDebugHook): Plumbed lineStart through.
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
  - Removed obsoleted m_lineInfo.
(JSC::BytecodeGenerator::emitExpressionInfo):
  - Plumbed line and lineStart through.
  - Compute the line and column to be added to the expression range info.
* bytecompiler/NodesCodegen.cpp:
(JSC::ThrowableExpressionData::emitThrowReferenceError):
(JSC::ResolveNode::emitBytecode):
(JSC::ArrayNode::toArgumentList):
(JSC::BracketAccessorNode::emitBytecode):
(JSC::DotAccessorNode::emitBytecode):
(JSC::NewExprNode::emitBytecode):
(JSC::EvalFunctionCallNode::emitBytecode):
(JSC::FunctionCallValueNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::FunctionCallBracketNode::emitBytecode):
(JSC::FunctionCallDotNode::emitBytecode):
(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):
(JSC::PostfixNode::emitResolve):
(JSC::PostfixNode::emitBracket):
(JSC::PostfixNode::emitDot):
(JSC::DeleteResolveNode::emitBytecode):
(JSC::DeleteBracketNode::emitBytecode):
(JSC::DeleteDotNode::emitBytecode):
(JSC::PrefixNode::emitResolve):
(JSC::PrefixNode::emitBracket):
(JSC::PrefixNode::emitDot):
  - Plumbed line and lineStart through the above as needed.

(JSC::UnaryOpNode::emitBytecode):
  - Added emission of an ExpressionRangeInfo for the UnaryOp node.

(JSC::BinaryOpNode::emitStrcat):
(JSC::ThrowableBinaryOpNode::emitBytecode):
(JSC::InstanceOfNode::emitBytecode):
(JSC::emitReadModifyAssignment):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::AssignDotNode::emitBytecode):
(JSC::ReadModifyDotNode::emitBytecode):
(JSC::AssignBracketNode::emitBytecode):
(JSC::ReadModifyBracketNode::emitBytecode):
  - Plumbed line and lineStart through the above as needed.

(JSC::ConstStatementNode::emitBytecode):
(JSC::EmptyStatementNode::emitBytecode):
(JSC::DebuggerStatementNode::emitBytecode):
(JSC::ExprStatementNode::emitBytecode):
(JSC::VarStatementNode::emitBytecode):
(JSC::IfElseNode::emitBytecode):
(JSC::DoWhileNode::emitBytecode):
(JSC::WhileNode::emitBytecode):
(JSC::ForNode::emitBytecode):
(JSC::ForInNode::emitBytecode):
(JSC::ContinueNode::emitBytecode):
(JSC::BreakNode::emitBytecode):
(JSC::ReturnNode::emitBytecode):
(JSC::WithNode::emitBytecode):
(JSC::SwitchNode::emitBytecode):
(JSC::LabelNode::emitBytecode):
(JSC::ThrowNode::emitBytecode):
(JSC::TryNode::emitBytecode):
(JSC::ProgramNode::emitBytecode):
(JSC::EvalNode::emitBytecode):
(JSC::FunctionBodyNode::emitBytecode):
  - Plumbed line and lineStart through the above as needed.

* interpreter/Interpreter.cpp:
(JSC::appendSourceToError):
  - Added line and column arguments for expressionRangeForBytecodeOffset().
(JSC::StackFrame::computeLineAndColumn):
  - Replaces StackFrame::line() and StackFrame::column().
(JSC::StackFrame::expressionInfo):
  - Added line and column arguments.
(JSC::StackFrame::toString):
  - Changed to use the new StackFrame::computeLineAndColumn().
(JSC::Interpreter::getStackTrace):
  - Added the needed firstLineColumnOffset arg for the StackFrame.

* interpreter/Interpreter.h:
* parser/ASTBuilder.h:
(JSC::ASTBuilder::BinaryOpInfo::BinaryOpInfo):
(JSC::ASTBuilder::AssignmentInfo::AssignmentInfo):
(JSC::ASTBuilder::createResolve):
(JSC::ASTBuilder::createBracketAccess):
(JSC::ASTBuilder::createDotAccess):
(JSC::ASTBuilder::createRegExp):
(JSC::ASTBuilder::createNewExpr):
(JSC::ASTBuilder::createAssignResolve):
(JSC::ASTBuilder::createFunctionExpr):
(JSC::ASTBuilder::createFunctionBody):
(JSC::ASTBuilder::createGetterOrSetterProperty):
(JSC::ASTBuilder::createFuncDeclStatement):
(JSC::ASTBuilder::createBlockStatement):
(JSC::ASTBuilder::createExprStatement):
(JSC::ASTBuilder::createIfStatement):
(JSC::ASTBuilder::createForLoop):
(JSC::ASTBuilder::createForInLoop):
(JSC::ASTBuilder::createVarStatement):
(JSC::ASTBuilder::createReturnStatement):
(JSC::ASTBuilder::createBreakStatement):
(JSC::ASTBuilder::createContinueStatement):
(JSC::ASTBuilder::createTryStatement):
(JSC::ASTBuilder::createSwitchStatement):
(JSC::ASTBuilder::createWhileStatement):
(JSC::ASTBuilder::createDoWhileStatement):
(JSC::ASTBuilder::createLabelStatement):
(JSC::ASTBuilder::createWithStatement):
(JSC::ASTBuilder::createThrowStatement):
(JSC::ASTBuilder::createDebugger):
(JSC::ASTBuilder::createConstStatement):
(JSC::ASTBuilder::appendBinaryExpressionInfo):
(JSC::ASTBuilder::appendUnaryToken):
(JSC::ASTBuilder::unaryTokenStackLastStart):
(JSC::ASTBuilder::unaryTokenStackLastLineStartPosition): Added.
(JSC::ASTBuilder::assignmentStackAppend):
(JSC::ASTBuilder::createAssignment):
(JSC::ASTBuilder::setExceptionLocation):
(JSC::ASTBuilder::makeDeleteNode):
(JSC::ASTBuilder::makeFunctionCallNode):
(JSC::ASTBuilder::makeBinaryNode):
(JSC::ASTBuilder::makeAssignNode):
(JSC::ASTBuilder::makePrefixNode):
(JSC::ASTBuilder::makePostfixNode):.
  - Plumbed line, lineStart, and startColumn through the above as needed.

* parser/Lexer.cpp:
(JSC::::currentSourcePtr):
(JSC::::setCode):
  - Added tracking for sourceoffset and lineStart.
(JSC::::internalShift):
(JSC::::parseIdentifier):
  - Added tracking for lineStart.
(JSC::::parseIdentifierSlowCase):
(JSC::::parseString):
  - Added tracking for lineStart.
(JSC::::parseStringSlowCase):
(JSC::::lex):
  - Added tracking for sourceoffset.
(JSC::::sourceCode):
* parser/Lexer.h:
(JSC::Lexer::currentOffset):
(JSC::Lexer::currentLineStartOffset):
(JSC::Lexer::setOffset):
  - Added tracking for lineStart.
(JSC::Lexer::offsetFromSourcePtr): Added. conversion function.
(JSC::Lexer::sourcePtrFromOffset): Added. conversion function.
(JSC::Lexer::setOffsetFromSourcePtr):
(JSC::::lexExpectIdentifier):
  - Added tracking for sourceoffset and lineStart.

* parser/NodeConstructors.h:
(JSC::Node::Node):
(JSC::ResolveNode::ResolveNode):
(JSC::EvalFunctionCallNode::EvalFunctionCallNode):
(JSC::FunctionCallValueNode::FunctionCallValueNode):
(JSC::FunctionCallResolveNode::FunctionCallResolveNode):
(JSC::FunctionCallBracketNode::FunctionCallBracketNode):
(JSC::FunctionCallDotNode::FunctionCallDotNode):
(JSC::CallFunctionCallDotNode::CallFunctionCallDotNode):
(JSC::ApplyFunctionCallDotNode::ApplyFunctionCallDotNode):
(JSC::PostfixNode::PostfixNode):
(JSC::DeleteResolveNode::DeleteResolveNode):
(JSC::DeleteBracketNode::DeleteBracketNode):
(JSC::DeleteDotNode::DeleteDotNode):
(JSC::PrefixNode::PrefixNode):
(JSC::ReadModifyResolveNode::ReadModifyResolveNode):
(JSC::ReadModifyBracketNode::ReadModifyBracketNode):
(JSC::AssignBracketNode::AssignBracketNode):
(JSC::AssignDotNode::AssignDotNode):
(JSC::ReadModifyDotNode::ReadModifyDotNode):
(JSC::AssignErrorNode::AssignErrorNode):
(JSC::WithNode::WithNode):
(JSC::ForInNode::ForInNode):
  - Plumbed line and lineStart through the above as needed.
* parser/Nodes.cpp:
(JSC::StatementNode::setLoc): Plumbed lineStart.
(JSC::ScopeNode::ScopeNode): Plumbed lineStart.
(JSC::ProgramNode::ProgramNode): Plumbed startColumn.
(JSC::ProgramNode::create): Plumbed startColumn.
(JSC::EvalNode::create):
(JSC::FunctionBodyNode::FunctionBodyNode): Plumbed startColumn.
(JSC::FunctionBodyNode::create): Plumbed startColumn.
* parser/Nodes.h:
(JSC::Node::startOffset):
(JSC::Node::lineStartOffset): Added.
(JSC::StatementNode::firstLine):
(JSC::StatementNode::lastLine):
(JSC::ThrowableExpressionData::ThrowableExpressionData):
(JSC::ThrowableExpressionData::setExceptionSourceCode):
(JSC::ThrowableExpressionData::divotStartOffset):
(JSC::ThrowableExpressionData::divotEndOffset):
(JSC::ThrowableExpressionData::divotLine):
(JSC::ThrowableExpressionData::divotLineStart):
(JSC::ThrowableSubExpressionData::ThrowableSubExpressionData):
(JSC::ThrowableSubExpressionData::setSubexpressionInfo):
(JSC::ThrowableSubExpressionData::subexpressionDivot):
(JSC::ThrowableSubExpressionData::subexpressionStartOffset):
(JSC::ThrowableSubExpressionData::subexpressionEndOffset):
(JSC::ThrowableSubExpressionData::subexpressionLine):
(JSC::ThrowableSubExpressionData::subexpressionLineStart):
(JSC::ThrowablePrefixedSubExpressionData::ThrowablePrefixedSubExpressionData):
(JSC::ThrowablePrefixedSubExpressionData::setSubexpressionInfo):
(JSC::ThrowablePrefixedSubExpressionData::subexpressionDivot):
(JSC::ThrowablePrefixedSubExpressionData::subexpressionStartOffset):
(JSC::ThrowablePrefixedSubExpressionData::subexpressionEndOffset):
(JSC::ThrowablePrefixedSubExpressionData::subexpressionLine):
(JSC::ThrowablePrefixedSubExpressionData::subexpressionLineStart):
(JSC::ScopeNode::startStartOffset):
(JSC::ScopeNode::startLineStartOffset):
(JSC::ProgramNode::startColumn):
(JSC::EvalNode::startColumn):
(JSC::FunctionBodyNode::startColumn):
  - Plumbed line and lineStart through the above as needed.
* parser/Parser.cpp:
(JSC::::Parser):
(JSC::::parseSourceElements):
(JSC::::parseVarDeclarationList):
(JSC::::parseConstDeclarationList):
(JSC::::parseForStatement):
(JSC::::parseBreakStatement):
(JSC::::parseContinueStatement):
(JSC::::parseReturnStatement):
(JSC::::parseThrowStatement):
(JSC::::parseWithStatement):
  - Plumbed line and lineStart through the above as needed.
(JSC::::parseFunctionBody):
  - Plumbed startColumn.
(JSC::::parseFunctionInfo):
(JSC::::parseFunctionDeclaration):
(JSC::LabelInfo::LabelInfo):
(JSC::::parseExpressionOrLabelStatement):
(JSC::::parseAssignmentExpression):
(JSC::::parseBinaryExpression):
(JSC::::parseProperty):
(JSC::::parseObjectLiteral):
(JSC::::parsePrimaryExpression):
(JSC::::parseMemberExpression):
(JSC::::parseUnaryExpression):
  - Plumbed line, lineStart, startColumn through the above as needed.
* parser/Parser.h:
(JSC::Parser::next):
(JSC::Parser::nextExpectIdentifier):
(JSC::Parser::tokenStart):
(JSC::Parser::tokenColumn):
(JSC::Parser::tokenEnd):
(JSC::Parser::tokenLineStart):
(JSC::Parser::lastTokenLine):
(JSC::Parser::lastTokenLineStart):
(JSC::::parse):
* parser/ParserTokens.h:
(JSC::JSTokenLocation::JSTokenLocation):
  - Plumbed lineStart.
(JSC::JSTokenLocation::lineStartPosition):
(JSC::JSTokenLocation::startPosition):
(JSC::JSTokenLocation::endPosition):
* parser/SourceCode.h:
(JSC::SourceCode::SourceCode):
(JSC::SourceCode::startColumn):
(JSC::makeSource):
(JSC::SourceCode::subExpression):
* parser/SourceProvider.cpp: delete old code.
* parser/SourceProvider.h: delete old code.
* parser/SourceProviderCacheItem.h:
(JSC::SourceProviderCacheItem::closeBraceToken):
(JSC::SourceProviderCacheItem::SourceProviderCacheItem):
  - Plumbed lineStart.
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::makeFunctionCallNode):
(JSC::SyntaxChecker::makeAssignNode):
(JSC::SyntaxChecker::makePrefixNode):
(JSC::SyntaxChecker::makePostfixNode):
(JSC::SyntaxChecker::makeDeleteNode):
(JSC::SyntaxChecker::createResolve):
(JSC::SyntaxChecker::createBracketAccess):
(JSC::SyntaxChecker::createDotAccess):
(JSC::SyntaxChecker::createRegExp):
(JSC::SyntaxChecker::createNewExpr):
(JSC::SyntaxChecker::createAssignResolve):
(JSC::SyntaxChecker::createFunctionExpr):
(JSC::SyntaxChecker::createFunctionBody):
(JSC::SyntaxChecker::createFuncDeclStatement):
(JSC::SyntaxChecker::createForInLoop):
(JSC::SyntaxChecker::createReturnStatement):
(JSC::SyntaxChecker::createBreakStatement):
(JSC::SyntaxChecker::createContinueStatement):
(JSC::SyntaxChecker::createWithStatement):
(JSC::SyntaxChecker::createLabelStatement):
(JSC::SyntaxChecker::createThrowStatement):
(JSC::SyntaxChecker::createGetterOrSetterProperty):
(JSC::SyntaxChecker::appendBinaryExpressionInfo):
(JSC::SyntaxChecker::operatorStackPop):
  - Made SyntaxChecker prototype changes to match ASTBuilder due to new
    args added for plumbing line, lineStart, and startColumn.
* runtime/CodeCache.cpp:
(JSC::CodeCache::generateBytecode):
(JSC::CodeCache::getCodeBlock):
  - Plumbed startColumn.
* runtime/Executable.cpp:
(JSC::FunctionExecutable::FunctionExecutable):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::produceCodeBlockFor):
(JSC::FunctionExecutable::fromGlobalCode):
  - Plumbed startColumn.
* runtime/Executable.h:
(JSC::ScriptExecutable::startColumn):
(JSC::ScriptExecutable::recordParse):
(JSC::FunctionExecutable::create):
  - Plumbed startColumn.

Source/WebCore:

Test: fast/js/line-column-numbers.html

Updated the bindings to use StackFrame::computeLineAndColumn(). The old
StackFrame::line() and StackFrame::column() has been removed. The new
algorithm always computes the 2 values together anyway. Hence it is more
efficient to return them as a pair instead of doing the same computation
twice for each half of the result.

* bindings/js/ScriptCallStackFactory.cpp:
(WebCore::createScriptCallStack):
(WebCore::createScriptCallStackFromException):
* bindings/js/ScriptSourceCode.h:
(WebCore::ScriptSourceCode::ScriptSourceCode):

LayoutTests:

The fix now computes line and column numbers more accurately. As a result,
some of the test results need to be re-baselined. Among other fixes, one
major source of difference is that the old code was incorrectly computing
0-based column numbers. This has now been fixed to be 1-based.
Note: line numbers were always 1-based.

Also added a new test: fast/js/line-column-numbers.html, which tests line
and column numbers for source code in various configurations.

* editing/execCommand/outdent-blockquote-test1-expected.txt:
* editing/execCommand/outdent-blockquote-test2-expected.txt:
* editing/execCommand/outdent-blockquote-test3-expected.txt:
* editing/execCommand/outdent-blockquote-test4-expected.txt:
* editing/pasteboard/copy-paste-float-expected.txt:
* editing/pasteboard/paste-blockquote-before-blockquote-expected.txt:
* editing/pasteboard/paste-double-nested-blockquote-before-blockquote-expected.txt:
* fast/dom/Window/window-resize-contents-expected.txt:
* fast/events/remove-target-with-shadow-in-drag-expected.txt:
* fast/js/line-column-numbers-expected.txt: Added.
* fast/js/line-column-numbers.html: Added.
* fast/js/script-tests/line-column-numbers.js: Added.
(try.doThrow4b):
(doThrow5b.try.innerFunc):
(doThrow5b):
(doThrow6b.try.innerFunc):
(doThrow6b):
(catch):
(try.doThrow11b):
(try.doThrow14b):
* fast/js/stack-trace-expected.txt:
* inspector/console/console-url-line-column-expected.txt:

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

6 years ago[Qt] Unreviewed gardening.
zarvai@inf.u-szeged.hu [Tue, 9 Jul 2013 15:58:21 +0000 (15:58 +0000)]
[Qt] Unreviewed gardening.

* platform/qt-mac/TestExpectations: Skip failing test after r151546.

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

6 years ago[Qt] Unreviewed gardening.
zarvai@inf.u-szeged.hu [Tue, 9 Jul 2013 13:38:16 +0000 (13:38 +0000)]
[Qt] Unreviewed gardening.

* platform/qt-5.0-wk2/TestExpectations: Skip flaky svg tests.
* platform/qt-mac/TestExpectations: Skip failing CSS Shape tests.

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

6 years agoUse toSVGFontElement() instead of static_cast<SVGFontElement*>
gyuyoung.kim@samsung.com [Tue, 9 Jul 2013 11:31:14 +0000 (11:31 +0000)]
Use toSVGFontElement() instead of static_cast<SVGFontElement*>
https://bugs.webkit.org/show_bug.cgi?id=118496

Reviewed by Andreas Kling.

As a step to change static_cast with toXXX, static_cast<SVGFontElement*> can
be changed with toSVGFontElement().

Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153761

* svg/SVGFontElement.h:
(WebCore::toSVGFontElement):
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::rebuildFontFace):
* svg/SVGGlyphElement.cpp:
(WebCore::SVGGlyphElement::invalidateGlyphCache):
* svg/SVGHKernElement.cpp:
(WebCore::SVGHKernElement::insertedInto):
(WebCore::SVGHKernElement::removedFrom):
* svg/SVGVKernElement.cpp:
(WebCore::SVGVKernElement::insertedInto):
(WebCore::SVGVKernElement::removedFrom):

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

6 years agoRemove support for [PassThisToCallback] extended attribute
ch.dumez@sisa.samsung.com [Tue, 9 Jul 2013 10:56:00 +0000 (10:56 +0000)]
Remove support for [PassThisToCallback] extended attribute
https://bugs.webkit.org/show_bug.cgi?id=118391

Reviewed by Kentaro Hara.

The [PassThisToCallback] Webkit-specific IDL extended attribute is supported
by the JSC bindings generator but is no longer used. The attribute is not
even documented.

We can therefore drop support for this from the generator to simplify the
code.

No new tests, no behavior change.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateCallbackImplementation):
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/test/JS/JSTestCallback.cpp:
(WebCore::JSTestCallback::callbackRequiresThisToPass):
* bindings/scripts/test/TestCallback.idl:

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

6 years agoUpdate Exception handling in WebAudio.
commit-queue@webkit.org [Tue, 9 Jul 2013 09:59:33 +0000 (09:59 +0000)]
Update Exception handling in WebAudio.
https://bugs.webkit.org/show_bug.cgi?id=118405.

Patch by Praveen R Jadhav <praveen.j@samsung.com> on 2013-07-09
Reviewed by Chris Rogers.

Source/WebCore:

AudioBufferSourceNode, OscillatorNode and AnalyserNode don't
propagate exception mentioned in WebAudio spec.
Code updated to throw DOM exception as expected.

Tests: webaudio/analyser-exception.html
       webaudio/audiobuffersource-exception.html

* Modules/webaudio/AnalyserNode.cpp:
(WebCore::AnalyserNode::setFftSize):
(WebCore::AnalyserNode::setMinDecibels):
(WebCore::AnalyserNode::setMaxDecibels):
(WebCore::AnalyserNode::setSmoothingTimeConstant):
* Modules/webaudio/AnalyserNode.h:
* Modules/webaudio/AnalyserNode.idl:
* Modules/webaudio/AudioBufferSourceNode.cpp:
(WebCore::AudioBufferSourceNode::startGrain):
(WebCore::AudioBufferSourceNode::noteGrainOn):
* Modules/webaudio/AudioBufferSourceNode.h:
* Modules/webaudio/AudioBufferSourceNode.idl:
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::createBuffer):
(WebCore::AudioContext::createScriptProcessor):
(WebCore::AudioContext::createPeriodicWave):
* Modules/webaudio/AudioScheduledSourceNode.cpp:
(WebCore::AudioScheduledSourceNode::start):
(WebCore::AudioScheduledSourceNode::stop):
(WebCore::AudioScheduledSourceNode::noteOn):
(WebCore::AudioScheduledSourceNode::noteOff):
* Modules/webaudio/AudioScheduledSourceNode.h:
* Modules/webaudio/OscillatorNode.idl:

LayoutTests:

New test cases to check exception handling in AnalyserNode and
AudioBufferSourceNode.

* webaudio/analyser-exception-expected.txt: Added.
* webaudio/analyser-exception.html: Added.
* webaudio/audiobuffersource-exception-expected.txt: Added.
* webaudio/audiobuffersource-exception.html: Added.

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

6 years ago[Qt] Unreviewed gardening. Rebaselining after r152479.
zarvai@inf.u-szeged.hu [Tue, 9 Jul 2013 09:41:46 +0000 (09:41 +0000)]
[Qt] Unreviewed gardening. Rebaselining after r152479.

* platform/qt-5.0-wk2/fast/css-grid-layout/grid-element-change-columns-repaint-expected.txt:
* platform/qt-5.0-wk2/fast/css-grid-layout/grid-element-change-rows-repaint-expected.txt:

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

6 years ago[Qt] Unreviewed gardening.
kadam@inf.u-szeged.hu [Tue, 9 Jul 2013 08:32:14 +0000 (08:32 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/TestExpectations: Skip failing composting test after r152303.
* platform/qt/editing/deleting/delete-br-002-expected.png: Update after r152478.
* platform/qt/editing/deleting/delete-br-002-expected.txt: Update after r152478.

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

6 years agoUnreviewed. Update NEWS and Versions.m4 for 2.1.3 release.
carlosgc@webkit.org [Tue, 9 Jul 2013 08:29:10 +0000 (08:29 +0000)]
Unreviewed. Update NEWS and Versions.m4 for 2.1.3 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.1.3.

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

6 years agoKURL unit test fixture class should have a meaningful name
zandobersek@gmail.com [Tue, 9 Jul 2013 06:46:13 +0000 (06:46 +0000)]
KURL unit test fixture class should have a meaningful name
https://bugs.webkit.org/show_bug.cgi?id=118467

Reviewed by Sam Weinig.

* TestWebKitAPI/Tests/WebCore/KURL.cpp:
(TestWebKitAPI::TEST_F): Use 'KURLTest' as the name for the KURL unit test's fixture class
instead of the generic and inappropriate 'WebCore' name.

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

6 years ago[GTK] webkit_set_cache_model is not turning the cache off
carlosgc@webkit.org [Tue, 9 Jul 2013 05:39:16 +0000 (05:39 +0000)]
[GTK] webkit_set_cache_model is not turning the cache off
https://bugs.webkit.org/show_bug.cgi?id=118345

Reviewed by Gustavo Noronha Silva.

Our documentation says that WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER
disables the cache completely, but we are only setting the cache
capacities to 0. Cache capacities are not checked when resources
are added to the cache, but when it's pruned. To disable the cache
we need to call MemoryCache::setDisabled explicitly.

* webkit/webkitglobals.cpp:
(webkit_set_cache_model): Disable the cache when min dead, max
dead and total capacities are all set to 0.

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

6 years agoAdd WebInspectorUI to WebKit.xcworkspace
aestes@apple.com [Tue, 9 Jul 2013 05:21:51 +0000 (05:21 +0000)]
Add WebInspectorUI to WebKit.xcworkspace
https://bugs.webkit.org/show_bug.cgi?id=118491

Reviewed by Sam Weinig.

* WebKit.xcworkspace/contents.xcworkspacedata:

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

6 years ago[CSS Grid Layout] Rename grid-{rows|columns} to grid-definition-{rows|columns}
mrobinson@webkit.org [Tue, 9 Jul 2013 03:09:02 +0000 (03:09 +0000)]
[CSS Grid Layout] Rename grid-{rows|columns} to grid-definition-{rows|columns}
https://bugs.webkit.org/show_bug.cgi?id=103336

Reviewed by Tony Chang.

Source/WebCore:

Rename -webkit-grid-{rows|columns} to -webkit-grid-definition-{rows|columns}.
The latest version of the spec has renamed these properties.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle the new names.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue): Ditto.
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty): Ditto.
* css/CSSPropertyNames.in: Add support for the new names.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty): Handle the new names.

LayoutTests:

Update tests to reflect the rename of -webkit-grid-{rows|columns} to
-webkit-grid-definition-{rows|columns}.

* fast/css-grid-layout: Mass search and replace for the new name.

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

6 years agoDeleteSelectionCommand does not handle correctly deletion with two consecutive BR...
enrica@apple.com [Tue, 9 Jul 2013 02:48:19 +0000 (02:48 +0000)]
DeleteSelectionCommand does not handle correctly deletion with two consecutive BR element.
https://bugs.webkit.org/show_bug.cgi?id=118457
<rdar://problem/14160912>

Reviewed by Simon Fraser.

Source/WebCore:

In DeleteSelectionCommand::handleSpecialCareBRDelete we did not
handle correctly the case where we had <br><br> in the markup and
nothing was being deleted. We should consider this like
the case where the <br> is on the line by itself and remove it.

Test: editing/deleting/delete-image-followed-by-two-br.html

* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):

LayoutTests:

* editing/deleting/delete-image-followed-by-two-br-expected.txt: Added.
* editing/deleting/delete-image-followed-by-two-br.html: Added.
* platform/mac/editing/deleting/delete-br-002-expected.txt: Rebased.

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

6 years ago [Mac] Multiple compositing/patterns test fail
ap@apple.com [Mon, 8 Jul 2013 23:36:43 +0000 (23:36 +0000)]
    [Mac] Multiple compositing/patterns test fail
        https://bugs.webkit.org/show_bug.cgi?id=118490

        * platform/mac/TestExpectations: The failures appear to be WK2 only in my testing,
        so moved the expectations to mac-wk2.

        * platform/mac-wk2/TestExpectations: Updated bug numbers.

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

6 years agoNamedFlowCollection getters should return undefined when there's no NamedFlow
commit-queue@webkit.org [Mon, 8 Jul 2013 21:24:33 +0000 (21:24 +0000)]
NamedFlowCollection getters should return undefined when there's no NamedFlow
https://bugs.webkit.org/show_bug.cgi?id=118463

Patch by Radu Stavila <stavila@adobe.com> on 2013-07-08
Reviewed by Christophe Dumez.

Source/WebCore:

Added new TreatReturnedNullObjectAs attribute for generated methods and set it to Undefined
for the item and namedItem methods of DOMNamedFlowCollection.

Test: fast/regions/webkit-named-flow-collection-undefined.html

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementationFunctionCall):
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/test/CPP/WebDOMTestObj.cpp:
(WebDOMTestObj::treatReturnedNullObjectAsUndefined):
* bindings/scripts/test/CPP/WebDOMTestObj.h:
* bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
(webkit_dom_test_obj_treat_returned_null_object_as_undefined):
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionTreatReturnedNullObjectAsUndefined):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/ObjC/DOMTestObj.h:
* bindings/scripts/test/ObjC/DOMTestObj.mm:
(-[DOMTestObj treatReturnedNullObjectAsUndefined]):
* bindings/scripts/test/TestObj.idl:
* dom/DOMNamedFlowCollection.idl:

LayoutTests:

Added test that validates that NamedFlowCollection getters return undefined
when no named flows exist.

* fast/regions/webkit-named-flow-collection-undefined-expected.txt: Added.
* fast/regions/webkit-named-flow-collection-undefined.html: Added.

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

6 years agoRemove unused variables in FocusCandidate.
commit-queue@webkit.org [Mon, 8 Jul 2013 21:05:34 +0000 (21:05 +0000)]
Remove unused variables in FocusCandidate.
https://bugs.webkit.org/show_bug.cgi?id=118449

Patch by Changhun Kang <temoochin@company100.net> on 2013-07-06
Reviewed by Antonio Gomes.

The variables for parent in FocusCandidate are not used anymore.

No new tests. No change in behavior.

* page/SpatialNavigation.cpp:
(WebCore::FocusCandidate::FocusCandidate):
* page/SpatialNavigation.h:
(WebCore::FocusCandidate::FocusCandidate):

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

6 years agoAX: iOS: SVG paths are not offset by the parent bounding box
cfleizach@apple.com [Mon, 8 Jul 2013 21:03:54 +0000 (21:03 +0000)]
AX: iOS: SVG paths are not offset by the parent bounding box
https://bugs.webkit.org/show_bug.cgi?id=118433

The path for SVG shapes is in terms of its parent's view space. We need to offset
the path by that amount so that it's in the right location.

Reviewed by Tim Horton.

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

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

6 years agofast/repaint/fixed-right-in-page-scale.html also crashing on Mountain Lion.
dfarler@apple.com [Mon, 8 Jul 2013 20:02:27 +0000 (20:02 +0000)]
fast/repaint/fixed-right-in-page-scale.html also crashing on Mountain Lion.
https://bugs.webkit.org/show_bug.cgi?id=118479

Moved expectation to higher-level mac and marked as [ Pass Crash ].
* platform/mac-lion/TestExpectations:
* platform/mac/TestExpectations:

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

6 years agoMark fast/text/international/synthesized-italic-vertical-latin.html as failing on...
dfarler@apple.com [Mon, 8 Jul 2013 19:46:30 +0000 (19:46 +0000)]
Mark fast/text/international/synthesized-italic-vertical-latin.html as failing on Lion.
https://bugs.webkit.org/show_bug.cgi?id=118480

Unreviewed TestExpectation change.

* platform/mac-lion/TestExpectations:
Mark fast/text/international/synthesized-italic-vertical-latin.html as Failure.

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

6 years agoSkip fast/repaint/fixed-right-in-page-scale.html on Lion.
dfarler@apple.com [Mon, 8 Jul 2013 19:15:45 +0000 (19:15 +0000)]
Skip fast/repaint/fixed-right-in-page-scale.html on Lion.
https://bugs.webkit.org/show_bug.cgi?id=118479

Unreviewed: test marked as crashing.

* platform/mac-lion/TestExpectations:
Skip fast/repaint/fixed-right-in-page-scale.html.

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

6 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Mon, 8 Jul 2013 18:57:48 +0000 (18:57 +0000)]
Unreviewed. Fix make distcheck.

Source/JavaScriptCore:

* GNUmakefile.list.am: Add missing header files.

Source/WebCore:

* GNUmakefile.list.am: Add missing header files.

Source/WTF:

* GNUmakefile.list.am: Add missing header files.

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

6 years agoFix TextTrackCue::cueIndex() to handle the null case of TextTrack::cues(() properly
commit-queue@webkit.org [Mon, 8 Jul 2013 18:33:32 +0000 (18:33 +0000)]
Fix TextTrackCue::cueIndex() to handle the null case of TextTrack::cues(() properly
https://bugs.webkit.org/show_bug.cgi?id=117815
<rdar://problem/14211041>

Patch by Ruth Fong <ruth_fong@apple.com> on 2013-07-08
Reviewed by Eric Carlson.

Merge https://src.chromium.org/viewvc/blink?revision=153206&view=revision

No new tests, only behavior change is preventing a crash in the release build.
cueIndex() is only used for sorting cues, so returning an invalidCueIndex in the case
where track()->cues() is null makes sense and won't modify behavior.

* html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::cueIndex):

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

6 years agoUnreviewed, rolling out r152416.
commit-queue@webkit.org [Mon, 8 Jul 2013 17:07:07 +0000 (17:07 +0000)]
Unreviewed, rolling out r152416.
http://trac.webkit.org/changeset/152416
https://bugs.webkit.org/show_bug.cgi?id=118476

Wrong fix for the bug (Requested by ap on #webkit).

* platform/text/TextEncodingRegistry.cpp:
(WebCore::newTextCodec):

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

6 years ago[GTK] Acceleration description isn't displayed in configured options.
commit-queue@webkit.org [Mon, 8 Jul 2013 15:57:38 +0000 (15:57 +0000)]
[GTK] Acceleration description isn't displayed in configured options.
https://bugs.webkit.org/show_bug.cgi?id=118441

Patch by ChangSeok Oh <changseok.oh@collabora.com> on 2013-07-08
Reviewed by Gustavo Noronha Silva.

The acceleration_backend_description has been changed to acceleration_description from r152275.

* Source/autotools/PrintBuildConfiguration.m4:

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

6 years ago[Autoconf] Define WTF_USE_OPENGL when OpenGL was found
zandobersek@gmail.com [Mon, 8 Jul 2013 15:54:26 +0000 (15:54 +0000)]
[Autoconf] Define WTF_USE_OPENGL when OpenGL was found
https://bugs.webkit.org/show_bug.cgi?id=118341

Reviewed by Gustavo Noronha Silva.

After r152275, WTF_USE_OPENGL is only defined if the accelerated compositing is enabled.
This breaks the build if disabling the accelerated compositing feature as the OpenGL-specific
code is not compiled anymore even if it's still required.

To avoid that, WTF_USE_OPENGL should be defined if OpenGL was found. The accelerated compositing
feature also relies on this condition, exiting the configuration process with an error otherwise.

* Source/autotools/SetupAutoconfHeader.m4:

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

6 years agoREGRESSION(r125294): A style rule with more than 8192 selectors can cause style corru...
akling@apple.com [Mon, 8 Jul 2013 15:53:54 +0000 (15:53 +0000)]
REGRESSION(r125294): A style rule with more than 8192 selectors can cause style corruption.
<http://webkit.org/b/118369>
<rdar://problem/14291428>

Reviewed by Antti Koivisto.

Source/WebCore:

Add a semi-hard cap of 8192 selectors per CSS rule. Rules with longer selector lists will be split into
multiple rules (with 8192 selectors per rule.) The style properties are shared behind the scenes
so it's all pretty efficient.

This does generate a different CSSOM for gigantic selector lists, I've added a test to document this.
Note that setting CSSStyleRule.selectorText with over 8192 selectors will now fail, the splitting into
multiple rules only happens when parsing full style sheets.

Test: fast/css/rule-selector-overflow.html

* css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::selectorCount):

    Add a helper to count the number of selectors in a list (not the number of raw selector components.)

* css/RuleSet.h:
* css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::setSelectorText):

    Add RuleData::maximumSelectorCount constant and cap CSSStyleRule.selectorText to that many selectors.

* css/CSSSelectorList.h:
(WebCore::CSSSelectorList::adoptSelectorArray):
* css/StyleRule.cpp:
(WebCore::StyleRule::create):
(WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorCount):
* css/StyleRule.h:
(WebCore::StyleRule::parserAdoptSelectorArray):
* css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::parserAppendRule):

    The meat of this change. Split rules with >8K selectors into multiple rules with 8K selectors in each.

* css/StyleRule.h:
(WebCore::toStyleRule):

    Added a toStyleRule() helper for good measure.

LayoutTests:

Added a test to document the new cap of 8192 selectors per CSS rule.

* fast/css/rule-selector-overflow-expected.txt: Added.
* fast/css/rule-selector-overflow.html: Added.

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

6 years ago[BlackBerry] Block Zoom does not zoom in on narrow paragraphs properly
zhajiang@rim.com [Mon, 8 Jul 2013 15:37:17 +0000 (15:37 +0000)]
[BlackBerry] Block Zoom does not zoom in on narrow paragraphs properly
https://bugs.webkit.org/show_bug.cgi?id=118472

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-07-08.
Reviewed by Rob Buis.
Internally reviewed Arvid Nilsson and Genevieve Mak.

JIRA 114653
For the narrow paragraphs on www.nytimes.com, the first best node for
block zoom under the point is deprecated due to the limits of maximum
block zoom scale(3) and default maximum WebPage zoom scale(4) and instead
it picks up an ancestor node which is wider so that it looks like doesn't
zoom in properly.
To fix that, enlarge the default maximum WebPage zoom scale slightly
and use maximumScale() instead of maxBlockZoomScale() so that we can
accept more nodes. And also we'll still clamp the new scale by
maxBlockZoomScale() when we block zoom the WebPage, in which way those
nodes can be showed in the center of the viewport and surrounded by a
few other nodes within the viewport which shows better user experience.

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

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

6 years agoIntroduce DECLARE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro
ch.dumez@sisa.samsung.com [Mon, 8 Jul 2013 15:36:49 +0000 (15:36 +0000)]
Introduce DECLARE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro
https://bugs.webkit.org/show_bug.cgi?id=118408

Reviewed by Philip Rogers.

Split DEFINE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro into separate
DECLARE and DEFINE macros to reduce the number of header includes in
SVG.

No new tests, no behavior change.

* dom/EventTarget.h:
* svg/SVGElementInstance.cpp:
(WebCore::SVGElementInstance::create):
(WebCore::SVGElementInstance::toNode):
(WebCore::SVGElementInstance::ownerDocument):
* svg/SVGElementInstance.h:

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

6 years ago[Coordinated Graphics] Rename variables in UpdateAtlas
commit-queue@webkit.org [Mon, 8 Jul 2013 14:12:40 +0000 (14:12 +0000)]
[Coordinated Graphics] Rename variables in UpdateAtlas
https://bugs.webkit.org/show_bug.cgi?id=118403

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-07-08
Reviewed by Noam Rosenthal.

As of r149292, non-composited contents layer was removed from
CoordinatedGraphics. So, the variables should be renamed for
clarification.

* platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
(WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):

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

6 years agoAdd Deque::removeLast
antti@apple.com [Mon, 8 Jul 2013 13:22:31 +0000 (13:22 +0000)]
Add Deque::removeLast
https://bugs.webkit.org/show_bug.cgi?id=118466

Source/WTF:

Reviewed by Andreas Kling.

Deque can remove both the first and the last element efficiently.

Test: TestWebKitAPI/Tests/WTF/Deque.cpp

* wtf/Deque.h:
(WTF::::takeLast):
(WTF::::removeLast):

Tools:

Reviewed by Andreas Kling.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/Deque.cpp: Added.
(TestWebKitAPI::TEST):

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

6 years ago[Qt] Incremental build fix after r145712.
kadam@inf.u-szeged.hu [Mon, 8 Jul 2013 12:56:43 +0000 (12:56 +0000)]
[Qt] Incremental build fix after r145712.
https://bugs.webkit.org/show_bug.cgi?id=112576.

Reviewed by Jocelyn Turcotte.

* DerivedSources.pri: Added dependence to INSPECTOR_JSON.
* inspector/front-end/WebKit.qrc: Added missing JS file.

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

6 years ago[GTK] Unreviewed gardening. Update TestExpectations
commit-queue@webkit.org [Mon, 8 Jul 2013 10:22:21 +0000 (10:22 +0000)]
[GTK] Unreviewed gardening. Update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=118462

Unreviewed GTK gardening.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-08

* platform/gtk/TestExpectations: Skip media/track/track-legacyapi-with-automatic-mode.html
and mark media/media-element-play-after-eos.html as flaky.

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

6 years ago[GTK] FrameLoaderClient: Refactor naked pointers to use smart pointers
commit-queue@webkit.org [Mon, 8 Jul 2013 10:13:06 +0000 (10:13 +0000)]
[GTK] FrameLoaderClient: Refactor naked pointers to use smart pointers
https://bugs.webkit.org/show_bug.cgi?id=118417

Patch by Brian Holt <brian.holt@samsung.com> on 2013-07-08
Reviewed by Carlos Garcia Campos.

Use GOwnPtr and GRefPtr where possible.

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

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

6 years ago[Qt][Windows] Buildfix after r152426.
zarvai@inf.u-szeged.hu [Mon, 8 Jul 2013 09:02:51 +0000 (09:02 +0000)]
[Qt][Windows] Buildfix after r152426.

Reviewed by Csaba Osztrogonác.

* wtf/Platform.h: Do not include WTFHeaderDetection.h on Qt build.

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

6 years ago[GTK] Leak: GFile* leaking in beginDragWithFilesCallback
commit-queue@webkit.org [Mon, 8 Jul 2013 09:00:34 +0000 (09:00 +0000)]
[GTK] Leak: GFile* leaking in beginDragWithFilesCallback
https://bugs.webkit.org/show_bug.cgi?id=118412

Patch by Brian Holt <brian.holt@samsung.com> on 2013-07-08
Reviewed by Martin Robinson.

An adoptRef is required to balance ref and deref calls.

* DumpRenderTree/gtk/EventSender.cpp:
(beginDragWithFilesCallback):

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

6 years agoUnreviewed EFL gardening.
commit-queue@webkit.org [Mon, 8 Jul 2013 08:37:35 +0000 (08:37 +0000)]
Unreviewed EFL gardening.
https://bugs.webkit.org/show_bug.cgi?id=118453

Added new baseline for EFL after r151841

Patch by Krzysztof Czech <k.czech@ymail.com> on 2013-07-08

* platform/efl/accessibility/aria-tab-role-on-buttons-expected.txt: Added.

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

6 years ago[GTK] Runtime critical warning when unloading a module that failed to load
carlosgc@webkit.org [Mon, 8 Jul 2013 08:19:22 +0000 (08:19 +0000)]
[GTK] Runtime critical warning when unloading a module that failed to load
https://bugs.webkit.org/show_bug.cgi?id=118425

Reviewed by Martin Robinson.

* Platform/gtk/ModuleGtk.cpp:
(WebKit::Module::load): Show an error message when the module
fails to load.
(WebKit::Module::unload): Check module pointer before calling
unload method.

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

6 years agovibrate function have to return boolean value.
kihong.kwon@samsung.com [Mon, 8 Jul 2013 07:39:23 +0000 (07:39 +0000)]
vibrate function have to return boolean value.
https://bugs.webkit.org/show_bug.cgi?id=118288

Reviewed by Gyuyoung Kim.

Source/WebCore:

According to latest Vibration API which is LC, vibrate() needs to return boolean value
and exception code is removed also. In addition, remove condition for canceling vibration
can be called when visibility state is hidden.
http://www.w3.org/TR/vibration/

No new tests. vibration/navigator-vibration.html is changed.

* Modules/vibration/NavigatorVibration.cpp:
(WebCore::NavigatorVibration::vibrate):
* Modules/vibration/NavigatorVibration.h:
* Modules/vibration/NavigatorVibration.idl:
* Modules/vibration/Vibration.cpp:
(WebCore::Vibration::vibrate):
* Modules/vibration/Vibration.h:

LayoutTests:

Update navigator-vibration.html to adjust latest spec.
Add vibration/cancelVibration-during-pattern-vibrating.html to TestExpactations
until Vibration API support visibilitychane event.

* platform/efl/TestExpectations:
* vibration/navigator-vibration-expected.txt:
* vibration/navigator-vibration.html:

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

6 years agoAdopt is/toHTMLTableElement for code cleanup
kangil.han@samsung.com [Mon, 8 Jul 2013 06:52:41 +0000 (06:52 +0000)]
Adopt is/toHTMLTableElement for code cleanup
https://bugs.webkit.org/show_bug.cgi?id=118393

Reviewed by Andreas Kling.

To enhance readability, this patch adopts is/toHTMLTableElement.
This also helps out to reduce duplicated use of static_cast.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::isDataTable):
(WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
(WebCore::AccessibilityTable::title):
* accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
(webkitAccessibleTableGetCaption):
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetDescription):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
* dom/Position.cpp:
(WebCore::endsOfNodeAreVisuallyDistinctPositions):
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::handleGeneralDelete):
* editing/InsertLineBreakCommand.cpp:
(WebCore::InsertLineBreakCommand::doApply):
* editing/htmlediting.cpp:
(WebCore::isNonTableCellHTMLBlockElement):
* editing/markup.cpp:
(WebCore::ancestorToRetainStructureAndAppearanceForBlock):
* html/FTPDirectoryDocument.cpp:
(WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
(WebCore::FTPDirectoryDocumentParser::createBasicDocument):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::rendererIsNeeded):
* html/HTMLTableElement.h:
(WebCore::isHTMLTableElement):
(WebCore::toHTMLTableElement):
* html/HTMLTablePartElement.cpp:
(WebCore::HTMLTablePartElement::findParentTable):
* html/HTMLTableRowElement.cpp:
(WebCore::HTMLTableRowElement::rowIndex):
* html/HTMLTableRowsCollection.cpp:
(WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
(WebCore::HTMLTableRowsCollection::virtualItemAfter):
* html/parser/HTMLElementStack.cpp:
(WebCore::HTMLNames::isScopeMarker):
(WebCore::HTMLNames::isTableScopeMarker):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
(WebCore::HTMLTreeBuilder::processCharacterBuffer):
* platform/mac/HTMLConverter.mm:
(-[WebHTMLConverter _computedStringForNode:property:]):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::offsetParent):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
(WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):

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

6 years agoFix the performance regressions introduced by r152418
benjamin@webkit.org [Sun, 7 Jul 2013 06:46:39 +0000 (06:46 +0000)]
Fix the performance regressions introduced by r152418
https://bugs.webkit.org/show_bug.cgi?id=118438

Reviewed by Sam Weinig.

* wtf/text/StringImpl.h:
(WTF::equal):
Looping between two arbitrary pointers prevents important loop
optimizations.

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

6 years agocreateElement("image") creates an HTMLImageElement, although this hack should exist...
rwlbuis@webkit.org [Sat, 6 Jul 2013 20:08:48 +0000 (20:08 +0000)]
createElement("image") creates an HTMLImageElement, although this hack should exist in parser only
https://bugs.webkit.org/show_bug.cgi?id=88360

Reviewed by Sam Weinig.

Source/WebCore:

Create a HTMLElement when using createElement('image'), but keep the HTML5 parser constructing HTMLImageelement for it.

* html/HTMLTagNames.in:

LayoutTests:

Update tests to reflect new behavior. This matches FireFox and Opera 12.

* fast/canvas/webgl/context-lost.html:
* fast/dom/prefixed-image-tag-expected.txt:
* fast/dom/prefixed-image-tag.xhtml:
* fast/dom/wrapper-classes-expected.txt:
* fast/dom/wrapper-classes.html:
* platform/mac/fast/dom/wrapper-classes-objc-expected.txt:
* platform/mac/fast/dom/wrapper-classes-objc.html:

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

6 years agoUpdate list of EFL WK2 API tests
commit-queue@webkit.org [Sat, 6 Jul 2013 17:12:21 +0000 (17:12 +0000)]
Update list of EFL WK2 API tests
https://bugs.webkit.org/show_bug.cgi?id=118443

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-07-06
Reviewed by Christophe Dumez.

The following tests were included:

Passing:
- CloseThenTerminate
- DidAssociateFormControls
- PageVisibilityState
- ResponsivenessTimerDoesntFireEarly
- TerminateTwice
- WillLoad

Failing:
- ResizeReversePaginatedWebView
- ScrollPinningBehaviors

This patch also modified ``test_webkit2_api_BINARIES'' list so that it is in
alphabetical order.

* TestWebKitAPI/CMakeLists.txt: Added Bundles for included tests.
* TestWebKitAPI/PlatformEfl.cmake: Added a few tests.

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

6 years agoStop hardcoding interfaces that have indexed getters returning strings
ch.dumez@sisa.samsung.com [Sat, 6 Jul 2013 07:24:42 +0000 (07:24 +0000)]
Stop hardcoding interfaces that have indexed getters returning strings
https://bugs.webkit.org/show_bug.cgi?id=118414

Reviewed by Kentaro Hara.

Stop hardcoding the names of interfaces that have indexed getters returning
strings in the bindings generator. Now that we use the latest Web IDL indexed
getter, more information is provided in the IDL files and the generator is
able to figure out if the indexed getter is returning a DOMString on its own.

No new tests, no behavior change.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateImplementation):

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

6 years agoTons of crashes on bots after r152425
timothy_horton@apple.com [Sat, 6 Jul 2013 05:01:31 +0000 (05:01 +0000)]
Tons of crashes on bots after r152425
https://bugs.webkit.org/show_bug.cgi?id=118440
<rdar://problem/14366772>

Reviewed by Sam Weinig.

Null-check the frame's page and early return. It's OK to do this
because it only happens when we're being torn down.

* page/FrameView.cpp:
(WebCore::FrameView::minimumScrollPosition):
(WebCore::FrameView::maximumScrollPosition):

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

6 years agoFix r152265: FrameView's pagination mode is only one of two, and the logic was totall...
timothy_horton@apple.com [Sat, 6 Jul 2013 02:19:41 +0000 (02:19 +0000)]
Fix r152265: FrameView's pagination mode is only one of two, and the logic was totally wrong
https://bugs.webkit.org/show_bug.cgi?id=118439
<rdar://problem/14366120>

Reviewed by Anders Carlsson.

* page/FrameView.cpp:
(WebCore::FrameView::maximumScrollPosition):
- Test both Page and FrameView's pagination modes.
- *Don't* clamp negatives to zero if we are paginated with scroll offset set,
    like the original changelog claimed, but the code did the opposite.
- Don't clamp in *all* pagination modes; with 'direction: RTL' it's still possible
    to have a negative maximum position in LTR/TB pagination modes.

* TestWebKitAPI/Tests/WebKit2/ResizeReversePaginatedWebView.cpp:
(TestWebKitAPI::didLayout):
(TestWebKitAPI::TEST):
- Make use of EXPECT_JS_EQ instead of manually doing JavaScript stuff.
- Assert that we got the right number of pages for sanity.
- Reduce the page gap size so that DrawingAreaImpl doesn't try to allocate
    so much memory that SharedMemory asserts and makes the test time out.
- Use didFirstLayoutAfterSuppressedIncrementalRendering instead of Paint
    because paint doesn't fire if the window is offscreen.

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

6 years agoWKPageFindStringMatches with kWKFindOptionsBackwards still doesn't work
weinig@apple.com [Fri, 5 Jul 2013 23:21:22 +0000 (23:21 +0000)]
WKPageFindStringMatches with kWKFindOptionsBackwards still doesn't work
<rdar://problem/13881024>
https://bugs.webkit.org/show_bug.cgi?id=118436

Reviewed by Tim Horton.

* page/Page.cpp:
(WebCore::Page::findStringMatchingRanges):
- When searching backwards, use END_TO_START rather than START_TO_END.
- If there is no selection and we are searching backwards, we now select the last item,
  not the first.

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

6 years ago[Windows] Unreviewed build correction.
bfulgham@apple.com [Fri, 5 Jul 2013 23:12:21 +0000 (23:12 +0000)]
[Windows] Unreviewed build correction.

* WTF.vcxproj/WTFGenerated.make: Avoid syntax error in generated
file in cases where Legible Output support is not present.

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

6 years agoNix upstreaming - Adding Nix render theme files
commit-queue@webkit.org [Fri, 5 Jul 2013 23:06:04 +0000 (23:06 +0000)]
Nix upstreaming - Adding Nix render theme files
https://bugs.webkit.org/show_bug.cgi?id=118368

Patch by Tullio Lucena <tullio.lucena@openbossa.org> on 2013-07-05
Reviewed by Benjamin Poulain.

All files related to render theme stuff.

No new tests. They will be uploaded on another patch during the upstreaming process.

* platform/nix/RenderThemeNix.cpp: Added.
* platform/nix/RenderThemeNix.h: Added.
* platform/nix/ScrollbarThemeNix.cpp: Added.
* platform/nix/ScrollbarThemeNix.h: Added.

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

6 years ago[Windows] Unreviewed build correction.
bfulgham@apple.com [Fri, 5 Jul 2013 22:57:17 +0000 (22:57 +0000)]
[Windows] Unreviewed build correction.

* WTF.vcxproj/WTFGenerated.make: Use space (rather than double
quotes) when handling the no-Legible-Output case.

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

6 years ago[Windows] Identify OS-level at build-time.
bfulgham@apple.com [Fri, 5 Jul 2013 22:17:27 +0000 (22:17 +0000)]
[Windows] Identify OS-level at build-time.
https://bugs.webkit.org/show_bug.cgi?id=118428

Reviewed by Anders Carlsson.

../WebCore:

* DerivedSources.make: Activate legible output features if present.
* WebCorePrefix.h: Activate MSVC 2010 workarounds for CGFloat if
building with VS2010.
* config.h: Activate legible output features if present.

../WTF:

* WTF.vcxproj/WTFGenerated.make: Check for Legible Output featurs
and set build environment as appropriate.
* wtf/Platform.h: Activate Legible Output features if present.

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

6 years ago[wk2] Add API to lock the scroll position at the top or bottom of the page
timothy_horton@apple.com [Fri, 5 Jul 2013 21:33:44 +0000 (21:33 +0000)]
[wk2] Add API to lock the scroll position at the top or bottom of the page
https://bugs.webkit.org/show_bug.cgi?id=118429
<rdar://problem/14120323>

Reviewed by Anders Carlsson.

Test (API): WebKit2.ScrollPinningBehaviors

* WebCore.exp.in:
Expose FrameView::setScrollPinningBehavior.

* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
Our pinning behavior should be DoNotPin by default.

* page/FrameView.cpp:
(WebCore::FrameView::minimumScrollPosition):
(WebCore::FrameView::maximumScrollPosition):
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::minimumScrollPosition):
(WebCore::ScrollingTreeScrollingNodeMac::maximumScrollPosition):
Fix the minimum scroll position's vertical location to the maximum if
we're pinned to the bottom, and vice-versa if we're pinned to the top.

(WebCore::FrameView::setScrollPinningBehavior): Added.
If scroll pinning behavior has changed, inform ScrollingCoordinator
and update scrollbars (which will also re-pin the scroll position).

* page/FrameView.h:
Override minimumScrollPosition, add setScrollPinningBehavior,
and storage for m_scrollPinningBehavior.

* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::setScrollPinningBehavior): Added.

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::ScrollingTree):
Our pinning behavior should be DoNotPin by default.

(WebCore::ScrollingTree::setScrollPinningBehavior):
(WebCore::ScrollingTree::scrollPinningBehavior):
Getter/setter for m_scrollPinningBehavior, scrolling-thread-safe.

* page/scrolling/ScrollingTree.h:
* page/scrolling/mac/ScrollingCoordinatorMac.h:
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::setScrollPinningBehavior):
Inform ScrollingTree of the scroll pinning behavior change.

* platform/ScrollTypes.h:
Add ScrollPinningBehavior enum.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/ScrollPinningBehaviors.cpp: Added.
(TestWebKitAPI::didFinishDocumentLoadForFrame):
(TestWebKitAPI::TEST):
Add a test that ensures that the three pinning modes (DoNotPin, PinToTop, PinToBottom)
all work correctly in the face of resizing the view and scrolling from JS.

* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):
* Shared/WebPageCreationParameters.h:
Pass the current ScrollPinningBehavior across to the WebPage upon creation.

* UIProcess/API/C/WKPage.cpp:
(WKPageGetScrollPinningBehavior):
(WKPageSetScrollPinningBehavior):
* UIProcess/API/C/WKPagePrivate.h:
SPI to get/set the WebPageProxy's current ScrollPinningBehavior.
Convert between WK API type and WebCore enum.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::creationParameters):
Send ScrollPinningBehavior when creating a WebPage.

(WebKit::WebPageProxy::setScrollPinningBehavior):
Pass ScrollPinningBehavior changes across to the WebProcess (and save it
in WebPageProxy so it can be sent back across if the WebProcess crashes).

* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::scrollPinningBehavior):
Getter/setter and storage for m_scrollPinningBehavior.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
Inform new FrameViews of the current ScrollPinningBehavior.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
Set our ScrollPinningBehavior based on our creation parameters.

(WebKit::WebPage::setScrollPinningBehavior):
Inform the FrameView of ScrollPinningBehavior changes.

* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::scrollPinningBehavior): Added.
(WebKit::WebPage::setScrollPinningBehavior): Added.
Add storage for m_scrollPinningBehavior.

* WebProcess/WebPage/WebPage.messages.in:
Add SetScrollPinningBehavior message.

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

6 years agoiframe constrained by max-width in full screen
commit-queue@webkit.org [Fri, 5 Jul 2013 21:28:23 +0000 (21:28 +0000)]
iframe constrained by max-width in full screen
https://bugs.webkit.org/show_bug.cgi?id=118250

Patch by Zalan Bujtas <zalan@apple.com> on 2013-07-05
Reviewed by Antti Koivisto.

Ensure that contents inside iframe can go full screen properly.

Set max-width and max-height values to the default 'none', so that iframes are not
constrained when entering full screen.

Source/WebCore:

Test: fullscreen/full-screen-iframe-with-max-width-height.html

* css/fullscreen.css:
(iframe:-webkit-full-screen):

LayoutTests:

* fullscreen/full-screen-iframe-with-max-width-height-expected.txt: Added.
* fullscreen/full-screen-iframe-with-max-width-height.html: Added.

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

6 years agoUnreviewed. Add myself as a committer.
michael@68k.org [Fri, 5 Jul 2013 21:03:09 +0000 (21:03 +0000)]
Unreviewed. Add myself as a committer.

* Scripts/webkitpy/common/config/contributors.json:

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

6 years ago[Mac] .webkitClosedCaptionsVisible doesn't work with "Automatic" caption mode
eric.carlson@apple.com [Fri, 5 Jul 2013 20:35:11 +0000 (20:35 +0000)]
[Mac] .webkitClosedCaptionsVisible doesn't work with "Automatic" caption mode
https://bugs.webkit.org/show_bug.cgi?id=118319

Reviewed by Jer Noble.

Source/WebCore:

Track when captions are enabled with the old 'webkitClosedCaptionsVisible' attribute and
consider that when determining which track should be enabled.

Test: media/track/track-legacyapi-with-automatic-mode.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_webkitLegacyClosedCaptionOverride.
(WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): Set m_webkitLegacyClosedCaptionOverride.
(WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): Return m_webkitLegacyClosedCaptionOverride.
* html/HTMLMediaElement.h:

* page/CaptionUserPreferencesMediaAF.cpp:
(WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore): Don't apply "automatic"
    logic when captions were enabled with .webkitClosedCaptionsVisible.

LayoutTests:

* media/track/track-legacyapi-with-automatic-mode-expected.txt: Added.
* media/track/track-legacyapi-with-automatic-mode.html: Added.

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

6 years agoUnreviewed gardening. Updated TestExpectations file.
mario@webkit.org [Fri, 5 Jul 2013 17:35:37 +0000 (17:35 +0000)]
Unreviewed gardening. Updated TestExpectations file.

Added accessibility/listitem-list.html to the list of expected
failures, which will get fixed once bug 105214 is fixed.

* platform/gtk/TestExpectations: Added new test.

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

6 years agoA lot of code duplication within StringImpl 'equal' functions
mikhail.pozdnyakov@intel.com [Fri, 5 Jul 2013 17:25:08 +0000 (17:25 +0000)]
A lot of code duplication within StringImpl 'equal' functions
https://bugs.webkit.org/show_bug.cgi?id=118415

Reviewed by Anders Carlsson.

There has been a lot of code duplication within StringImpl 'equal' functions:
the whole logic was copied to every overloaded 'equal' function.
Fixed now using templates and std::equal.

* wtf/text/StringImpl.cpp:
(WTF::equalInternal):
(WTF::equal):
* wtf/text/StringImpl.h:
(WTF::arraysEqual):
(WTF::equal):

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

6 years ago[GTK] Update TestExpectations with crashing and failing tests
mario@webkit.org [Fri, 5 Jul 2013 16:35:48 +0000 (16:35 +0000)]
[GTK] Update TestExpectations with crashing and failing tests
https://bugs.webkit.org/show_bug.cgi?id=118424

Unreviewed GTK gardening.

Updated TestExpectations with tests crashing and failing.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-07-05

* platform/gtk/TestExpectations:

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

6 years agoSegmentation fault occurred when ICU data library doesn't embed the expected encoding.
commit-queue@webkit.org [Fri, 5 Jul 2013 15:02:22 +0000 (15:02 +0000)]
Segmentation fault occurred when ICU data library doesn't embed the expected encoding.
https://bugs.webkit.org/show_bug.cgi?id=118410

Patch by Benjamin Dupont <bdupont@nds.com> on 2013-07-05
Reviewed by Allan Sandfeld Jensen.

* platform/text/TextEncodingRegistry.cpp:
(WebCore::newTextCodec):

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

6 years agoRemove code duplication from StringImpl create()/reallocate() methods
mikhail.pozdnyakov@intel.com [Fri, 5 Jul 2013 11:23:44 +0000 (11:23 +0000)]
Remove code duplication from StringImpl create()/reallocate() methods
https://bugs.webkit.org/show_bug.cgi?id=118355

Reviewed by Andreas Kling.

StringImpl create()/reallocate() methods accepting LChar and UChar used to have
duplicated code. The code duplication is removed now via used templates.

* wtf/text/StringImpl.cpp:
(WTF::StringImpl::constructInternal):
(WTF::LChar):
(WTF::StringImpl::createUninitializedInternal):
(WTF::StringImpl::createUninitialized):
(WTF::StringImpl::reallocateInternal):
(WTF::StringImpl::reallocate):
(WTF::StringImpl::createInternal):
(WTF::StringImpl::create):
* wtf/text/StringImpl.h:

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

6 years ago[EFL][WK2] Implement unit test callbacks: onWordLearn and onWordIgnore.
commit-queue@webkit.org [Fri, 5 Jul 2013 10:29:12 +0000 (10:29 +0000)]
[EFL][WK2] Implement unit test callbacks: onWordLearn and onWordIgnore.
https://bugs.webkit.org/show_bug.cgi?id=118392

Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2013-07-05
Reviewed by Christophe Dumez.

Simulate behavior of Learn and Ignore Word in the text field.

* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::EWK2UnitTestBase::mouseDoubleClick):
Select the entire word in the text field.

* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
* UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
(onSpellingForKnownWord):
(onWordLearn):
(onWordIgnore):
(selectLearnSpelling):
(selectIgnoreSpelling):

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

6 years ago[New multicol] Change test to follow the pattern of the other tests
commit-queue@webkit.org [Fri, 5 Jul 2013 10:26:42 +0000 (10:26 +0000)]
[New multicol] Change test to follow the pattern of the other tests
https://bugs.webkit.org/show_bug.cgi?id=117698

Patch by Mihai Maerean <mmaerean@adobe.com> on 2013-07-05
Reviewed by Andreas Kling.

Test is a ref test against the old multicol code, like all the other tests in LayoutTests/fast/multicol/newmulticol/
This is a follow up of bug 116614, testing that flow threads don't end up being cloned in region based multi
columns with columns:1 where the only child has column-span:all.

* fast/multicol/newmulticol/direct-child-column-span-all-expected.html: Added.
* fast/multicol/newmulticol/direct-child-column-span-all-expected.txt: Removed.
* fast/multicol/newmulticol/direct-child-column-span-all.html:

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

6 years ago[GTK] WebKit2 test TestWebKitFaviconDatabase times out with recent glib
commit-queue@webkit.org [Fri, 5 Jul 2013 10:13:47 +0000 (10:13 +0000)]
[GTK] WebKit2 test TestWebKitFaviconDatabase times out with recent glib
https://bugs.webkit.org/show_bug.cgi?id=111434

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-07-05
Reviewed by Carlos Garcia Campos.

Source/WebKit2:

* UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
(testNotInitialized):
(testSetDirectory):
(testClearDatabase):
(testGetFavicon):
(testGetFaviconURI): Removed gconstpointer parameter.
(testWebViewFavicon): Fixed to make it work together with the
other tests and removed gconstpointer parameter.
(testFaviconDatabase): Created to call all tests in the proper
order.
(beforeAll): Changed to call only testFaviconDatabase instead of
the separate tests.

Tools:

* Scripts/run-gtk-tests:
(TestRunner): Unskipped TestWebKitFaviconDatabase tests.

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

6 years ago[GTK] fast/text/font-kerning.html fails
commit-queue@webkit.org [Fri, 5 Jul 2013 08:52:35 +0000 (08:52 +0000)]
[GTK] fast/text/font-kerning.html fails
https://bugs.webkit.org/show_bug.cgi?id=76048

Patch by Denis Nomiyama <d.nomiyama@samsung.com> on 2013-07-05
Reviewed by Martin Robinson.

Added kerning to the list of features for hb_shade() according to FontDescription::kerning().
Removed font-kerning.html from gtk/TestExpectations, which was failing before this fix.

Source/WebCore:

* platform/graphics/harfbuzz/HarfBuzzFace.cpp:
(WebCore):
* platform/graphics/harfbuzz/HarfBuzzFace.h:
(HarfBuzzFace):
* platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::HarfBuzzShaper::setFontFeatures):

LayoutTests:

* platform/gtk/TestExpectations:

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

6 years agoTestWebKitFaviconDatabase/clear-database is not testing things properly
commit-queue@webkit.org [Fri, 5 Jul 2013 08:41:34 +0000 (08:41 +0000)]
TestWebKitFaviconDatabase/clear-database is not testing things properly
https://bugs.webkit.org/show_bug.cgi?id=118404

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2013-07-05
Reviewed by Carlos Garcia Campos.

* UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
(testClearDatabase): Check for an existing icon that can make the
test fail if clear database is not working.

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

6 years agoBuild fix GTK after r152404.
ch.dumez@sisa.samsung.com [Fri, 5 Jul 2013 07:36:43 +0000 (07:36 +0000)]
Build fix GTK after r152404.
https://bugs.webkit.org/show_bug.cgi?id=118407

Patch by Gwang Yoon Hwang <ryumiel@company100.net> on 2013-07-05
Reviewed by Christophe Dumez.

* GNUmakefile.list.am:

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

6 years ago[EFL] DumpRenderTree doesn't run if "opengl_x11" engine is not available
commit-queue@webkit.org [Fri, 5 Jul 2013 06:53:30 +0000 (06:53 +0000)]
[EFL] DumpRenderTree doesn't run if "opengl_x11" engine is not available
https://bugs.webkit.org/show_bug.cgi?id=118370

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2013-07-04
Reviewed by Christophe Dumez.

Add fallback to software X11 engine if opengl_x11 engine creation fails.

* DumpRenderTree/efl/DumpRenderTree.cpp:
(initEcoreEvas):

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

6 years agoPaint the page background if we haven't received our first update
andersca@apple.com [Thu, 4 Jul 2013 21:17:40 +0000 (21:17 +0000)]
Paint the page background if we haven't received our first update
https://bugs.webkit.org/show_bug.cgi?id=118402
<rdar://problem/13893308>

Reviewed by Simon Fraser.

Make sure that we always paint something when we haven't received our first update from the web process.

* UIProcess/API/mac/WKView.mm:
(-[WKView drawRect:]):
* UIProcess/DrawingAreaProxyImpl.h:
(WebKit::DrawingAreaProxyImpl::hasReceivedFirstUpdate):

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

6 years agoAdd a method to get unreachable URL from WebFrame.
commit-queue@webkit.org [Thu, 4 Jul 2013 19:53:19 +0000 (19:53 +0000)]
Add a method to get unreachable URL from WebFrame.
https://bugs.webkit.org/show_bug.cgi?id=118399

Normally we could use [[WebFrame dataSource] unreachableURL] to get the failed URL.  However, if the frame has not
loaded (FrameLoader::frameHasLoaded() is false), we will get a nil dataSource and we won't be able to get unreachableURL.
We can add a method to always return the unreachableURL regardless if the frame has loaded or not.

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2013-07-04
Reviewed by Dan Bernstein.

* WebView/WebFrame.mm:
(-[WebFrame _unreachableURL]):
* WebView/WebFramePrivate.h:

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

6 years agoHave SVGTextContentElement inherit SVGGraphicsElement
ch.dumez@sisa.samsung.com [Thu, 4 Jul 2013 18:48:51 +0000 (18:48 +0000)]
Have SVGTextContentElement inherit SVGGraphicsElement
https://bugs.webkit.org/show_bug.cgi?id=118351

Reviewed by Dirk Schulze.

Source/WebCore:

Have SVGTextContentElement inherit SVGGraphicsElement instead of
SVGStyledElement in order to match the latest SVG2 specification:
https://svgwg.org/svg2-draft/text.html#InterfaceSVGTextContentElement

This patch also removes the SVGTransformable and SVGLocatable IDL
interfaces as they are no longer needed (were merged into
SVGGraphicsElement in the latest specification).

This is one step towards getting rid of multiple inheritance in
SVG, and complying with the latest SVG2 specification.

No new tests, covered by existing tests.

* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/scripts/CodeGeneratorJS.pm:
(GetGnuVTableOffsetForType):
* bindings/scripts/CodeGeneratorObjC.pm:
* svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::hasValidAttributeType):
* svg/SVGElement.cpp:
(WebCore::SVGElement::getBoundingBox):
* svg/SVGLocatable.idl: Removed.
* svg/SVGTextContentElement.cpp:
(WebCore::SVGTextContentElement::SVGTextContentElement):
(WebCore::SVGTextContentElement::isSupportedAttribute):
(WebCore::SVGTextContentElement::isPresentationAttribute):
(WebCore::SVGTextContentElement::collectStyleForPresentationAttribute):
(WebCore::SVGTextContentElement::parseAttribute):
(WebCore::SVGTextContentElement::svgAttributeChanged):
* svg/SVGTextContentElement.h:
* svg/SVGTextContentElement.idl:
* svg/SVGTextElement.cpp:
(WebCore::SVGTextElement::SVGTextElement):
(WebCore::SVGTextElement::animatedLocalTransform):
* svg/SVGTextElement.h:
* svg/SVGTextElement.idl:
* svg/SVGTransformable.idl: Removed.

LayoutTests:

Fix conversion to absolute (user agent) coordinates in the svg/text
tests to use SVGGraphicsElement::getScreenCTM() instead of
SVGGraphicsElement::getTransformToElement(). The previous code was
working until now due to a bug in getTransformToElement(), which
was not taking into consideration the CTM of the SVGTextElement (as
it was not recognized as a "locatable" element). Now that
SVGTextElement inherits from SVGGraphicsElement, it is properly
recognized as a "locatable" element by getTransformToElement().

* svg/text/resources/SelectionTestCase.js:
(toAbsoluteCoordinates):
* svg/text/selection-doubleclick.svg:

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

6 years agoCrash when createPluginInternal ends up destroying the plug-in
andersca@apple.com [Thu, 4 Jul 2013 18:42:16 +0000 (18:42 +0000)]
Crash when createPluginInternal ends up destroying the plug-in
https://bugs.webkit.org/show_bug.cgi?id=118397
<rdar://problem/14155051>

Reviewed by Simon Fraser.

Keep the WebProcessConnection object alive while calling createPluginInternal and handle
the IPC connection going away.

* PluginProcess/WebProcessConnection.cpp:
(WebKit::WebProcessConnection::createPluginAsynchronously):

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

6 years agoRemove PageThrottler::m_activeThrottleBlockers
barraclough@apple.com [Thu, 4 Jul 2013 18:00:01 +0000 (18:00 +0000)]
Remove PageThrottler::m_activeThrottleBlockers
https://bugs.webkit.org/show_bug.cgi?id=118375

Reviewed by Mark Rowe.

This is simply m_activityTokens.size().

Also, fold preventThrottling into addActivityToken & allowThrottling into removeActivityToken
(these should no longer be called directly, and should not be public).

* page/PageThrottler.cpp:
(WebCore::PageThrottler::PageThrottler):
    - removed m_activeThrottleBlockers
(WebCore::PageThrottler::startThrottleHysteresisTimer):
    - m_activeThrottleBlockers -> m_activityTokens.size()
(WebCore::PageThrottler::throttleHysteresisTimerFired):
    - m_activeThrottleBlockers -> m_activityTokens.size()
(WebCore::PageThrottler::addActivityToken):
    - added functionality from preventThrottling
(WebCore::PageThrottler::removeActivityToken):
    - added functionality from allowThrottling
* page/PageThrottler.h:
    - removed preventThrottling, allowThrottling, and m_activeThrottleBlockers.

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

6 years agoTake document height into account when determining when it is considered visually...
antti@apple.com [Thu, 4 Jul 2013 15:51:44 +0000 (15:51 +0000)]
Take document height into account when determining when it is considered visually non-empy
https://bugs.webkit.org/show_bug.cgi?id=118272

Reviewed by Darin Adler.

The current visually non-empy mechanism takes into account only the amount of contents in renderers.
Add a simple layout dependency so that we don't consider page non-empty until the document height
exceed a (low) height threshold (or the load completes).

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

    Don't send layout callbacks until we have actually some content.

(WebCore::FrameView::qualifiesAsVisuallyNonEmpty):
(WebCore::FrameView::updateIsVisuallyNonEmpty):

    Factor into functions.

* page/FrameView.h:
(WebCore::FrameView::incrementVisuallyNonEmptyCharacterCount):
(WebCore::FrameView::incrementVisuallyNonEmptyPixelCount):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::RenderHTMLCanvas):

     The size is not known but the estimate provided here is always bigger than the threshold so
     the functionality is unchanged.

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

6 years agoUnreviewed build fix after r152399.
ch.dumez@sisa.samsung.com [Thu, 4 Jul 2013 15:33:32 +0000 (15:33 +0000)]
Unreviewed build fix after r152399.

Add missing header include for SVGNames.h.

* svg/SVGImageElement.h:

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

6 years agoChange static_cast<SVGImageElement*> with toSVGImageElement
gyuyoung.kim@samsung.com [Thu, 4 Jul 2013 13:58:13 +0000 (13:58 +0000)]
Change static_cast<SVGImageElement*> with toSVGImageElement
https://bugs.webkit.org/show_bug.cgi?id=118387

Reviewed by Andreas Kling.

As a step to change static_cast with toXXX, static_cast<SVGImageElement*> can
be changed with toSVGImageElement().

Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153557

* rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::updateImageViewport):
(WebCore::RenderSVGImage::layout):
(WebCore::RenderSVGImage::paintForeground):
* svg/SVGImageElement.h:
(WebCore::toSVGImageElement):
* svg/SVGImageLoader.cpp:
(WebCore::SVGImageLoader::dispatchLoadEvent):

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

6 years ago[GTK] Leak: Free PangoFontDescription* in RenderThemeGtk3
commit-queue@webkit.org [Thu, 4 Jul 2013 13:18:13 +0000 (13:18 +0000)]
[GTK] Leak: Free PangoFontDescription* in RenderThemeGtk3
https://bugs.webkit.org/show_bug.cgi?id=118386

Patch by Brian Holt <brian.holt@samsung.com> on 2013-07-04
Reviewed by Carlos Garcia Campos.

Free PangoFontDescription* allocated by gtk_style_context_get (transfer full).

* platform/gtk/RenderThemeGtk3.cpp:
(WebCore::spinButtonArrowSize):

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

6 years ago[ATK] Leak: AtkAttributeSet* should be freed
commit-queue@webkit.org [Thu, 4 Jul 2013 12:10:45 +0000 (12:10 +0000)]
[ATK] Leak: AtkAttributeSet* should be freed
https://bugs.webkit.org/show_bug.cgi?id=118307

Patch by Brian Holt <brian.holt@samsung.com> on 2013-07-04
Reviewed by Christophe Dumez.

Source/WebCore:

Use AtkAttributeSet* instead of GSList*.

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetObjectLocale):

Tools:

Fixed memory leaks for AtkAttributeSet by calling
atk_attribute_set_free().

* DumpRenderTree/atk/AccessibilityControllerAtk.cpp:
(AccessibilityController::childElementById):
* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(getAtkAttributeSetAsString):
(AccessibilityUIElement::allAttributes):
(AccessibilityUIElement::stringAttributeValue):
* WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
(WTR::childElementById):
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::getAtkAttributeSetAsString):
(WTR::AccessibilityUIElement::allAttributes):
(WTR::AccessibilityUIElement::stringAttributeValue):

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

6 years ago[ATK] Do not expose '\n' for wrapped lines with ATK_TEXT_BOUNDARY_CHAR
mario@webkit.org [Thu, 4 Jul 2013 10:03:42 +0000 (10:03 +0000)]
[ATK] Do not expose '\n' for wrapped lines with ATK_TEXT_BOUNDARY_CHAR
https://bugs.webkit.org/show_bug.cgi?id=118359

Reviewed by Carlos Garcia Campos.

Source/WebCore:

Do not expose a '\n' character for every visual line break.

* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(webkitAccessibleTextGetChar): Removed wrong code.

Source/WebKit/gtk:

Added new unit test to make sure we exposed line breaks properly.

* tests/testatk.c:
(testWebkitAtkGetTextAtOffsetWithWrappedLines): New unit test.
(main): Added new test to the test suite.

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

6 years ago[CMake] Add generation of JITStubs for x86_64 MSVC
paroga@webkit.org [Thu, 4 Jul 2013 09:12:31 +0000 (09:12 +0000)]
[CMake] Add generation of JITStubs for x86_64 MSVC
https://bugs.webkit.org/show_bug.cgi?id=116666

Reviewed by Laszlo Gombos.

Also move the generation for ARM CPU into the CMakeLists.txt,
since it's compiler specific and not dedicated to Windows CE.

* CMakeLists.txt:
* PlatformWinCE.cmake: Removed.

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

6 years ago[EFL] Gardening. Unskip tests related with editing
commit-queue@webkit.org [Thu, 4 Jul 2013 09:05:05 +0000 (09:05 +0000)]
[EFL] Gardening. Unskip tests related with editing
https://bugs.webkit.org/show_bug.cgi?id=118379

Unreviewed gardening.

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2013-07-04

* platform/efl-wk2/TestExpectations:
  Unskip editing/selection/doubleclick-beside-cr-span.html and
  editing/selection/doubleclick-whitespace.html, which are passed after r150289
* platform/efl/editing/style/5065910-expected.txt: Removed (wrong expected result).
* platform/efl/editing/style/5065910-expected.png: Removed (wrong expected result).

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

6 years ago[CMake] Add STATICALLY_LINKED_WITH_WTF to JavaScriptCore project
paroga@webkit.org [Thu, 4 Jul 2013 08:52:31 +0000 (08:52 +0000)]
[CMake] Add STATICALLY_LINKED_WITH_WTF to JavaScriptCore project
https://bugs.webkit.org/show_bug.cgi?id=118120

Reviewed by Gyuyoung Kim.

Since WTF is a static library linked to JavaScriptCore on all CMake ports
we need to define STATICALLY_LINKED_WITH_WTF for all of them.
This makes only a difference for Windows, since WTF_EXPORT and WTF_IMPORT
are the same on all other platforms.

* CMakeLists.txt:

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

6 years agoPort FileSystemWin.cpp to WinCE
paroga@webkit.org [Thu, 4 Jul 2013 08:08:22 +0000 (08:08 +0000)]
Port FileSystemWin.cpp to WinCE
https://bugs.webkit.org/show_bug.cgi?id=117935

Reviewed by Brent Fulgham.

Add #if !OS(WINCE) around a few lines of the code, so it can be used by the WinCE port too.

* PlatformWinCE.cmake:
* platform/win/FileSystemWin.cpp:
(WebCore::storageDirectory):
* platform/wince/FileSystemWinCE.cpp: Removed.

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

6 years ago[GStreamer] support preload="metadata"
kbalazs@webkit.org [Thu, 4 Jul 2013 07:44:16 +0000 (07:44 +0000)]
[GStreamer] support preload="metadata"
https://bugs.webkit.org/show_bug.cgi?id=116817

Reviewed by Eric Carlson.

Source/WebCore:

Add appropriate behavior for preload="metadata". Delay enabling download buffering
until playback is started in this case. This behavior fits with the standard quite
well and this is the most exact match we can get (at least without adding too much
extra complexity). What matters mostly is that we can avoid loading the media
before playback but we have the first frame and the metadata.

Test: media/video-load-preload-metadata.html

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Set |m_preload| to |Auto|
so we will start download buffering if we did not start it yet.
(WebCore::MediaPlayerPrivateGStreamer::play): Ditto.
(MediaPlayerPrivateGStreamer::setDownloadBuffering): Only start download
buffering if |m_preload == Auto|. Also make sure we don't clear the download
flag once we started downloading because it would result in not well defined
behavior and it does not really makes sense.
(MediaPlayerPrivateGStreamer::setPreload): Set download buffering accordingly.

LayoutTests:

* media/video-load-preload-metadata.html: Added.

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