WebKit-https.git
7 years agoAnother Windows build fix attempt after r153978.
rniwa@webkit.org [Tue, 13 Aug 2013 07:04:01 +0000 (07:04 +0000)]
Another Windows build fix attempt after r153978.

* page/win/DragControllerWin.cpp:

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

7 years agoWindows build fix attempt after r153978.
rniwa@webkit.org [Tue, 13 Aug 2013 07:00:47 +0000 (07:00 +0000)]
Windows build fix attempt after r153978.

* page/win/DragControllerWin.cpp:

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

7 years agoFix null dereference in HTMLAnchorElement::sendPings when frame is not attached to...
rniwa@webkit.org [Tue, 13 Aug 2013 06:38:55 +0000 (06:38 +0000)]
Fix null dereference in HTMLAnchorElement::sendPings when frame is not attached to a page
https://bugs.webkit.org/show_bug.cgi?id=119716

Reviewed by Darin Adler.

Add a regression test for r153975.

* fast/html/detach-frame-while-clicking-on-anchor-with-ping-expected.txt: Added.
* fast/html/detach-frame-while-clicking-on-anchor-with-ping.html: Added.

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

7 years agoASSERTION FAILED: type() == Percent in WebCore::Length::percent
zandobersek@gmail.com [Tue, 13 Aug 2013 06:26:45 +0000 (06:26 +0000)]
ASSERTION FAILED: type() == Percent in WebCore::Length::percent
https://bugs.webkit.org/show_bug.cgi?id=116715

Reviewed by Darin Adler.

Source/WebCore:

Allow the Calculated type in the Length::percent method that returns the Length's
float value. This reflects the changes in r110148 that adjusted the Length::isPercent
method to return true for Length objects of either Percent or Calculated type.

Test: fast/css/calculated-length-as-percent-crash.html

* platform/Length.h:
(WebCore::Length::percent): Assert that Length::isPercent is true when Length::percent
is called, ensuring the Length's type is either Percent or Calculated.

LayoutTests:

Add the test case, as produced by the Fuzzinator, that was causing assertions
in Length::percent due to Length objects of the Calculated type not being treated
as holding a proper percent value in that method, despite Length::isPercent
returning true for Length objects of either Percent or the Calculated type.

* fast/css/calculated-length-as-percent-crash-expected.txt: Added.
* fast/css/calculated-length-as-percent-crash.html: Added.

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

7 years agoextract-localizable-strings output is not suited for parsing by Xcode
mitz@apple.com [Tue, 13 Aug 2013 06:26:29 +0000 (06:26 +0000)]
extract-localizable-strings output is not suited for parsing by Xcode
https://bugs.webkit.org/show_bug.cgi?id=119728

Reviewed by Darin Adler.

Added spaces where needed after “path:line:” to allow Xcode to recognize the file reference,
removed “ERROR” since messages that refer to a line in a file are shown as error by default,
added “warning: ” in messages that aren’t errors (i.e. don’t prevent the script from exiting
with 0).

* Scripts/extract-localizable-strings:

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

7 years ago[Autotools] Adjust the help string for the configure's --enable-optimizations flag
zandobersek@gmail.com [Tue, 13 Aug 2013 06:16:35 +0000 (06:16 +0000)]
[Autotools] Adjust the help string for the configure's --enable-optimizations flag
https://bugs.webkit.org/show_bug.cgi?id=119682

Reviewed by Martin Robinson.

* Source/autotools/ReadCommandLineArguments.m4: Remove the 'GCC only' part of the help
string for the --enable-optimizations flag. This is not true and can lead to confusion
since the optimizations can be applied when compiling with Clang as well.

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

7 years agoMove Clipboard::declareAndWriteDragImage to DragController
darin@apple.com [Tue, 13 Aug 2013 05:58:19 +0000 (05:58 +0000)]
Move Clipboard::declareAndWriteDragImage to DragController
https://bugs.webkit.org/show_bug.cgi?id=117683

Reviewed by Brent Fulgham.

* dom/Clipboard.h: Removed declareAndWriteDragImage.

* page/DragController.cpp:
(WebCore::selectImageBeforeDragging): Half of the old prepareClipboardForImageDrag
is now refactored into this function.
(WebCore::DragController::startDrag): Where we called prepareClipboardForImageDrag,
instead call selectImageBeforeDragging and declareAndWriteDragImage. This is needed
because declareAndWriteDragImage needs to be a member function, for Mac at least.

* page/DragController.h: Added declareAndWriteDragImage.

* page/efl/DragControllerEfl.cpp:
(WebCore::DragController::declareAndWriteDragImage): Added empty placeholder.
It would be better to delete this file rather than having these placeholders.
I don't think EFL actually has drag support, and it makes work to have to keep
source files up to date that are really unused.

* page/gtk/DragControllerGtk.cpp:
(WebCore::DragController::declareAndWriteDragImage): Added. Calls Pasteboard::writeImage.
* page/mac/DragControllerMac.mm:
(WebCore::DragController::declareAndWriteDragImage): Added. Calls to DragClient, which
does the work.
* page/qt/DragControllerQt.cpp:
(WebCore::DragController::declareAndWriteDragImage): Added. Calls Pasteboard::writeImage.
* page/win/DragControllerWin.cpp:
(WebCore::DragController::declareAndWriteDragImage): Added. Uses Pasteboard functions to
do the work.

* platform/Clipboard.h: Changed the pasteboard function to return a non-const reference.
For now, it's not clear what const will mean for pasteboards, and it's currently not
possible to write to a const pasteboard, which we need to do in the new
DragController::declareAndWriteDragImage functions.

* platform/Pasteboard.h: Added a new writeMarkup function, implemented only for Windows
at this time.

* platform/efl/ClipboardEfl.cpp: Deleted declareAndWriteDragImage.
* platform/gtk/ClipboardGtk.cpp: Ditto.
* platform/ios/ClipboardIOS.h: Ditto.
* platform/ios/ClipboardIOS.mm: Ditto.
* platform/mac/ClipboardMac.mm: Ditto.
* platform/qt/ClipboardQt.cpp: Ditto.
* platform/win/ClipboardWin.cpp: Ditto.

* platform/win/PasteboardWin.cpp:
(WebCore::Pasteboard::writePlainTextToDataObject): Took out a pointless line of code.
(WebCore::Pasteboard::writeMarkup): Added. Currently implemented only for Windows.
This factors out a significant piece of DragController::declareAndWriteDragImage,
and will probably be handy for other platforms later.

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

7 years ago[EFL][WK1] URL printing code in DumpRenderTree doesn't match WTR or Mac DRT
ryuan.choi@samsung.com [Tue, 13 Aug 2013 05:55:56 +0000 (05:55 +0000)]
[EFL][WK1] URL printing code in DumpRenderTree doesn't match WTR or Mac DRT
https://bugs.webkit.org/show_bug.cgi?id=119585

Reviewed by Gyuyoung Kim.

Source/WebKit/efl:

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::provisionalURL):
Implemented to pass provisionalURL of main frame to DumpRenderTreeChrome.
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(pathSuitableForTestResult):
Return path string that's relative to main frame URL, or just file name if
the resource is not in the same directory subtree.
Referenced WebKitTestRunner code in r153852.
(descriptionSuitableForTestResult):
(DumpRenderTreeChrome::onFrameRedirectRequested):
(DumpRenderTreeChrome::onNewResourceRequest): Followed changes of r153903.

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

7 years agoextract-localizable-strings doesn't know how to verify an existing strings file
mitz@apple.com [Tue, 13 Aug 2013 05:53:05 +0000 (05:53 +0000)]
extract-localizable-strings doesn't know how to verify an existing strings file
https://bugs.webkit.org/show_bug.cgi?id=119704

Reviewed by Darin Adler.

* Scripts/extract-localizable-strings: Added an --exceptions option for specifying the
exceptions file, changing the way “no exceptions file” is expressed from passing “-” as the
exceptions file name to omitting the --exceptions option. Added a --skip option, changing
the way directories to skip are specified from prefixing the directory with a “-” to
specifying it with --skip.
Finally, added a --verify option. When specified, the strings file is not written to, but
instead read in and checked for consistency with the comments, keys and values derived from
the source files and the exceptions file. Missing keys, unused keys, mismatching values and
mismatching comments are reported as errors.
* Scripts/update-webkit-localizable-strings: Updated for the new way of specifying
directories to skip and no exceptions file.

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

7 years agoFix NULL de-refernce in HTMLAnchorElement::sendPings when settings doesn't exist
rniwa@webkit.org [Tue, 13 Aug 2013 05:48:32 +0000 (05:48 +0000)]
Fix NULL de-refernce in HTMLAnchorElement::sendPings when settings doesn't exist
https://bugs.webkit.org/show_bug.cgi?id=119716

Reviewed by Darin Adler.

Merge https://chromium.googlesource.com/chromium/blink/+/d5783da353ab783e9994b8fbecd91880be5192a1

No new tests since the test in the Blink change doesn't reproduce crash on WebKit.

* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::sendPings):

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

7 years agoUse the correct preprocessor in shouldRepaintFixedBackgroundsOnScroll()
seokju@webkit.org [Tue, 13 Aug 2013 05:47:27 +0000 (05:47 +0000)]
Use the correct preprocessor in shouldRepaintFixedBackgroundsOnScroll()
https://bugs.webkit.org/show_bug.cgi?id=119710

Reviewed by Darin Adler.

No behavior change, no new tests needed.

* rendering/RenderObject.cpp: Remove unused parameter warning.
(WebCore::shouldRepaintFixedBackgroundsOnScroll):

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

7 years agohttp/tests/security/sandboxed-iframe-invalid.html is flaky on Mac
ap@apple.com [Tue, 13 Aug 2013 03:44:57 +0000 (03:44 +0000)]
http/tests/security/sandboxed-iframe-invalid.html is flaky on Mac
https://bugs.webkit.org/show_bug.cgi?id=85522

Reviewed by Andy Estes.

Source/WebCore:

Drive-by FIXMEs and trivial fixes for WebCore issues I noticed while working
on this bug. No behavior change expected.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::submitForm):
(WebCore::FrameLoader::findFrameForNavigation):
* loader/NavigationScheduler.cpp:
(WebCore::ScheduledFormSubmission::fire):

Tools:

* DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate webView:addMessageToConsole:withSource:]): Don't print console messages
when already done with a test. We already had this check in all UI delegate functions,
except for -webView:addMessageToConsole:withSource: somehow.

LayoutTests:

* http/tests/security/sandboxed-iframe-form-top-expected.txt: Console logging got
improved while this test was marked as skipped or flaky, updating the results.

* platform/mac/TestExpectations: Removed sandboxed-iframe-form-top.html, this test
no longer leaks output into later ones. The test was erroneously marked as flaky
instead of skipped, but now it's good.

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

7 years agoFix variable name |end| -> |size| in EventTarget::fireEventListeners
rniwa@webkit.org [Tue, 13 Aug 2013 03:34:26 +0000 (03:34 +0000)]
Fix variable name |end| -> |size| in EventTarget::fireEventListeners
https://bugs.webkit.org/show_bug.cgi?id=119715

Reviewed by Benjamin Poulain.

Merge https://chromium.googlesource.com/chromium/blink/+/f58b017539c48059bb2b88d18ee0ee3d14decb01
and also fix variable names in FiringEventIterator.

* dom/EventTarget.cpp:
(WebCore::EventTarget::removeEventListener):
(WebCore::EventTarget::fireEventListeners):
(WebCore::EventTarget::removeAllEventListeners):
* dom/EventTarget.h:
(WebCore::FiringEventIterator::FiringEventIterator):

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

7 years ago[EFL] Unreviewed gardening.
ryuan.choi@samsung.com [Tue, 13 Aug 2013 01:35:13 +0000 (01:35 +0000)]
[EFL] Unreviewed gardening.

Add a missing result after r152911.

* platform/efl/fast/multicol/pagination/BottomToTop-bt-expected.png: Added.
* platform/efl/fast/multicol/pagination/BottomToTop-bt-expected.txt: Added.
* platform/efl/fast/multicol/pagination/BottomToTop-lr-expected.png: Added.
* platform/efl/fast/multicol/pagination/BottomToTop-lr-expected.txt: Added.
* platform/efl/fast/multicol/pagination/BottomToTop-rl-expected.png: Added.
* platform/efl/fast/multicol/pagination/BottomToTop-rl-expected.txt: Added.
* platform/efl/fast/multicol/pagination/BottomToTop-tb-expected.png: Added.
* platform/efl/fast/multicol/pagination/BottomToTop-tb-expected.txt: Added.
* platform/efl/fast/multicol/pagination/LeftToRight-bt-expected.png: Added.
* platform/efl/fast/multicol/pagination/LeftToRight-bt-expected.txt: Added.
* platform/efl/fast/multicol/pagination/LeftToRight-lr-expected.png: Added.
* platform/efl/fast/multicol/pagination/LeftToRight-lr-expected.txt: Added.
* platform/efl/fast/multicol/pagination/LeftToRight-rl-expected.png: Added.
* platform/efl/fast/multicol/pagination/LeftToRight-rl-expected.txt: Added.
* platform/efl/fast/multicol/pagination/LeftToRight-tb-expected.png: Added.
* platform/efl/fast/multicol/pagination/LeftToRight-tb-expected.txt: Added.
* platform/efl/fast/multicol/pagination/RightToLeft-bt-expected.png: Added.
* platform/efl/fast/multicol/pagination/RightToLeft-bt-expected.txt: Added.
* platform/efl/fast/multicol/pagination/RightToLeft-lr-expected.png: Added.
* platform/efl/fast/multicol/pagination/RightToLeft-lr-expected.txt: Added.
* platform/efl/fast/multicol/pagination/RightToLeft-rl-expected.png: Added.
* platform/efl/fast/multicol/pagination/RightToLeft-rl-expected.txt: Added.
* platform/efl/fast/multicol/pagination/RightToLeft-tb-expected.png: Added.
* platform/efl/fast/multicol/pagination/RightToLeft-tb-expected.txt: Added.
* platform/efl/fast/multicol/pagination/TopToBottom-bt-expected.png: Added.
* platform/efl/fast/multicol/pagination/TopToBottom-bt-expected.txt: Added.
* platform/efl/fast/multicol/pagination/TopToBottom-lr-expected.png: Added.
* platform/efl/fast/multicol/pagination/TopToBottom-lr-expected.txt: Added.
* platform/efl/fast/multicol/pagination/TopToBottom-rl-expected.png: Added.
* platform/efl/fast/multicol/pagination/TopToBottom-rl-expected.txt: Added.
* platform/efl/fast/multicol/pagination/TopToBottom-tb-expected.png: Added.
* platform/efl/fast/multicol/pagination/TopToBottom-tb-expected.txt: Added.

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

7 years agoEncapsulate access to documentNamedItemMap and windowNamedItemMap
rniwa@webkit.org [Tue, 13 Aug 2013 01:12:18 +0000 (01:12 +0000)]
Encapsulate access to documentNamedItemMap and windowNamedItemMap
https://bugs.webkit.org/show_bug.cgi?id=119701

Reviewed by Darin Adler.

Encapsulate m_documentNamedItem and m_windowNamedItem by adding various methods on HTMLDocument.
This will help us doing more refactorings in the future.

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::namedItemGetter):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore::JSDOMWindow::getOwnPropertyDescriptor):
* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::JSHTMLDocument::canGetItemsForName):
(WebCore::JSHTMLDocument::nameGetter):
* dom/Element.cpp:
(WebCore::Element::updateNameForDocument):
(WebCore::Element::updateIdForDocument):
* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::addDocumentNamedItem): Added.
(WebCore::HTMLDocument::removeDocumentNamedItem): Added.
(WebCore::HTMLDocument::addWindowNamedItem): Added.
(WebCore::HTMLDocument::removeWindowNamedItem): Added.
* html/HTMLDocument.h:
(WebCore::HTMLDocument::documentNamedItem): Added.
(WebCore::HTMLDocument::hasDocumentNamedItem): Added.
(WebCore::HTMLDocument::documentNamedItemContainsMultipleElements): Added.
(WebCore::HTMLDocument::windowNamedItem): Added.
(WebCore::HTMLDocument::hasWindowNamedItem): Added.
(WebCore::HTMLDocument::windowNamedItemContainsMultipleElements): Added.
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::parseAttribute):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::updateDocNamedItem):

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

7 years agoFixed an off-by-(sizeof(char*) - 1) bug.
mitz@apple.com [Tue, 13 Aug 2013 01:10:07 +0000 (01:10 +0000)]
Fixed an off-by-(sizeof(char*) - 1) bug.

Reviewed by Sam Weinig.

* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
(WebKit::XPCServiceEventHandler): Allocate a sufficiently large buffer.

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

7 years ago[CMake] Use the correct list of files when compiling ANGLESupport on Windows
paroga@webkit.org [Tue, 13 Aug 2013 00:35:45 +0000 (00:35 +0000)]
[CMake] Use the correct list of files when compiling ANGLESupport on Windows
https://bugs.webkit.org/show_bug.cgi?id=119439

Reviewed by Gyuyoung Kim.

* CMakeLists.txt: Use ossource_win.cpp instead of ossource_posix.cpp on Windows platforms.

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

7 years agoRemove CodeBlock's notion of adding identifiers entirely
oliver@apple.com [Tue, 13 Aug 2013 00:28:16 +0000 (00:28 +0000)]
Remove CodeBlock's notion of adding identifiers entirely
https://bugs.webkit.org/show_bug.cgi?id=119708

Reviewed by Geoffrey Garen.

Remove addAdditionalIdentifier entirely, including the bogus assertion.
Move the addition of identifiers to DFGPlan::reallyAdd

* bytecode/CodeBlock.h:
* dfg/DFGDesiredIdentifiers.cpp:
(JSC::DFG::DesiredIdentifiers::reallyAdd):
* dfg/DFGDesiredIdentifiers.h:
* dfg/DFGPlan.cpp:
(JSC::DFG::Plan::reallyAdd):
(JSC::DFG::Plan::finalize):
* dfg/DFGPlan.h:

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

7 years ago[EFL] Unreviewed gardening.
ryuan.choi@samsung.com [Tue, 13 Aug 2013 00:20:47 +0000 (00:20 +0000)]
[EFL] Unreviewed gardening.

* platform/efl/TestExpectations: Added pasteboard after r152185.
* platform/efl/editing/deleting/delete-br-002-expected.txt: Updated after r152478.
* platform/efl/editing/execCommand/outdent-blockquote-test1-expected.txt:
Removed platform specific expectations after r152494.
* platform/efl/editing/execCommand/outdent-blockquote-test2-expected.txt: Ditto.
* platform/efl/editing/execCommand/outdent-blockquote-test3-expected.txt: Ditto.
* platform/efl/editing/execCommand/outdent-blockquote-test4-expected.txt: Ditto.

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

7 years agoBuild fix
oliver@apple.com [Mon, 12 Aug 2013 23:56:39 +0000 (23:56 +0000)]
Build fix

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

7 years agohttps://bugs.webkit.org/show_bug.cgi?id=119693
ap@apple.com [Mon, 12 Aug 2013 23:42:27 +0000 (23:42 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=119693
[Mac] security/contentSecurityPolicy/connect-src-websocket-blocked.html is flaky
because of connect-src-websocket-allowed.html

Reviewed by Darin Adler.

Starting a load of about:blank and immediately stopping it cancels outstanding
resource loads, but the page has to transition to committed state to have timers
or WebSockets stopped too.

* DumpRenderTree/mac/DumpRenderTree.mm: (runTest): Use a synchronous load to
ensure that transition to committed state happens before we start the next test.

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

7 years agoMove additionalIdentifiers into DFGCommonData as only the optimising JITs use them
oliver@apple.com [Mon, 12 Aug 2013 23:41:26 +0000 (23:41 +0000)]
Move additionalIdentifiers into DFGCommonData as only the optimising JITs use them
https://bugs.webkit.org/show_bug.cgi?id=119705

Reviewed by Geoffrey Garen.

Relatively trivial refactoring

* bytecode/CodeBlock.h:
(JSC::CodeBlock::numberOfAdditionalIdentifiers):
(JSC::CodeBlock::addAdditionalIdentifier):
(JSC::CodeBlock::identifier):
(JSC::CodeBlock::numberOfIdentifiers):
* dfg/DFGCommonData.h:

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

7 years agoStop making unnecessary copy of CodeBlock Identifier Vector
oliver@apple.com [Mon, 12 Aug 2013 22:39:13 +0000 (22:39 +0000)]
Stop making unnecessary copy of CodeBlock Identifier Vector
https://bugs.webkit.org/show_bug.cgi?id=119702

Reviewed by Michael Saboff.

Make CodeBlock simply use a separate Vector for additional Identifiers
and use the UnlinkedCodeBlock for the initial set of identifiers.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printGetByIdOp):
(JSC::dumpStructure):
(JSC::dumpChain):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::printPutByIdOp):
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::shrinkToFit):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::numberOfIdentifiers):
(JSC::CodeBlock::numberOfAdditionalIdentifiers):
(JSC::CodeBlock::addAdditionalIdentifier):
(JSC::CodeBlock::identifier):
* dfg/DFGDesiredIdentifiers.cpp:
(JSC::DFG::DesiredIdentifiers::reallyAdd):
* jit/JIT.h:
* jit/JITOpcodes.cpp:
(JSC::JIT::emitSlow_op_get_arguments_length):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::compileGetByIdSlowCase):
(JSC::JIT::emitSlow_op_put_by_id):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::compileGetByIdSlowCase):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):

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

7 years ago[cairo] memory corruption with putImageData and accelerated canvas.
a.renevier@samsung.com [Mon, 12 Aug 2013 22:05:07 +0000 (22:05 +0000)]
[cairo] memory corruption with putImageData and accelerated canvas.
https://bugs.webkit.org/show_bug.cgi?id=118621

Reviewed by Martin Robinson.

When we have an accelerated imageBuffer, and we putByteArray with a
non zero destPoint, we create temporary surface of sourceSize. Then,
we write to image data with an offset. This results in an out of bound
write.

In order to avoid that, we use a 0 offset when writing data.

In addition, we also create image with the minimal needed size in
getImageData, and also use a 0 offset. This decrease data transfer
between cpu and gpu

Instead of the map/unmap mechanism, perform an explicit surface copy
when needed. This change also removes an unneeded glReadPixels at the
start of putByteArray

Add two parameters to copyRectFromOneSurfaceToAnother: destination
offset, and cairo drawing operator.

No new tests. Accelerated canvas is not enabled for testing yet.

* platform/graphics/cairo/CairoUtilities.cpp:
(WebCore::copyRectFromOneSurfaceToAnother):
* platform/graphics/cairo/CairoUtilities.h:
* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::copySurfaceToImageAndAdjustRect):
(WebCore::getImageData):
(WebCore::ImageBuffer::putByteArray):

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

7 years agoLayout Test fast/overflow/scrollbar-click-retains-focus.html is failing on Apple...
rniwa@webkit.org [Mon, 12 Aug 2013 21:55:06 +0000 (21:55 +0000)]
Layout Test fast/overflow/scrollbar-click-retains-focus.html is failing on Apple Mac WK1 and GTK.
https://bugs.webkit.org/show_bug.cgi?id=104104

Add back test expectation for Mac since it's still failing on ML WK1 bots.

* platform/mac/TestExpectations:
* platform/mac-wk2/TestExpectations:

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

7 years agoUse const AtomicStringImpl* in DocumentOrderedMap
rniwa@webkit.org [Mon, 12 Aug 2013 21:50:06 +0000 (21:50 +0000)]
Use const AtomicStringImpl* in DocumentOrderedMap
https://bugs.webkit.org/show_bug.cgi?id=119700

Reviewed by Benjamin Poulain.

Use const AtomicStringImpl* in DocumentOrderedMap. It caught at least one bug that HTMLNameCollection'
subclasses' nodeMatches were taking const AtomicString& instead of AtomicStringImpl*. This was forcing
DocumentOrderedMap::getElementByWindowNamedItem and DocumentOrderedMap::getElementByDocumentNamedItem
to create temporary AtomicStrings.

* dom/DocumentOrderedMap.cpp:
(WebCore::keyMatchesId):
(WebCore::keyMatchesName):
(WebCore::keyMatchesMapName):
(WebCore::keyMatchesLowercasedMapName):
(WebCore::keyMatchesLabelForAttribute):
(WebCore::keyMatchesWindowNamedItem):
(WebCore::keyMatchesDocumentNamedItem):
(WebCore::DocumentOrderedMap::add):
(WebCore::DocumentOrderedMap::remove):
(WebCore::DocumentOrderedMap::get):
(WebCore::DocumentOrderedMap::getElementById):
(WebCore::DocumentOrderedMap::getElementByName):
(WebCore::DocumentOrderedMap::getElementByMapName):
(WebCore::DocumentOrderedMap::getElementByLowercasedMapName):
(WebCore::DocumentOrderedMap::getElementByLabelForAttribute):
(WebCore::DocumentOrderedMap::getElementByWindowNamedItem):
(WebCore::DocumentOrderedMap::getElementByDocumentNamedItem):
(WebCore::DocumentOrderedMap::getAllElementsById):
* dom/DocumentOrderedMap.h:
(WebCore::DocumentOrderedMap::containsSingle):
(WebCore::DocumentOrderedMap::contains):
(WebCore::DocumentOrderedMap::containsMultiple):
* html/HTMLNameCollection.cpp:
(WebCore::WindowNameCollection::nodeMatches):
(WebCore::DocumentNameCollection::nodeMatches):
* html/HTMLNameCollection.h:
(WebCore::WindowNameCollection::nodeMatches):
(WebCore::DocumentNameCollection::nodeMatches):

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

7 years agoThe LayoutMilestones didLayout callback should only fire for the main frame
bdakin@apple.com [Mon, 12 Aug 2013 21:37:06 +0000 (21:37 +0000)]
The LayoutMilestones didLayout callback should only fire for the main frame
https://bugs.webkit.org/show_bug.cgi?id=119457

Reviewed by Sam Weinig.

Source/WebCore:

This patch makes it so that FrameLoader::didLayout(LayoutMilestones) is only ever
called for the main frame. Technically this will change existing API for
didFirstVisuallyNonEmptyLayoutInFrame and didFirstLayoutInFrame. Clients used to
be able to register for those callbacks for any frame they wanted, however, now
they will only ever get the callback when it applies to the main frame. We think
that this is acceptable since we don’t know of any clients that ever used those
APIs for a non-main frame. This change also makes nothing but sense for the
didLayout(LayoutMilestones) callback, since that is a Page-level concept, so it
should only fire for the main frame.

Only call didLayout for the main frame.
* dom/Document.cpp:
(WebCore::Document::setVisualUpdatesAllowed):

Assert that this is the main frame.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::didLayout):

Only call didLayout for the main frame.
* page/FrameView.cpp:
(WebCore::FrameView::performPostLayoutTasks):

Tools:

Now that the didLayout callback only fires for the main frame, we want to make
sure it will fire even when all of the content is in a subframe.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/LayoutMilestonesWithAllContentInFrame.cpp: Added.
(TestWebKitAPI::didLayout):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/all-content-in-one-iframe.html: Added.

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

7 years agoRemove didNewFirstVisuallyNonEmptyLayout from WebKit2
bdakin@apple.com [Mon, 12 Aug 2013 20:54:20 +0000 (20:54 +0000)]
Remove didNewFirstVisuallyNonEmptyLayout from WebKit2
https://bugs.webkit.org/show_bug.cgi?id=119658

Reviewed by Darin Adler.

Source/WebKit2:

Removing this function entirely will change some functionality in the Nightlies,
but we think that is an acceptable difference for the Nightlies. If is does cause
a problem though, we can roll out this patch and deprecate the function instead.

* UIProcess/API/C/WKPage.h:
* UIProcess/WebLoaderClient.cpp:
* UIProcess/WebLoaderClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::initializeLoaderClient):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidLayout):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::initializeInjectedBundleLoaderClient):

Tools:

* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController awakeFromNib]):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::createWebViewWithOptions):

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

7 years agoDefine DOM_KEY_LOCATION_* constants on KeyboardEvent
ch.dumez@sisa.samsung.com [Mon, 12 Aug 2013 19:47:09 +0000 (19:47 +0000)]
Define DOM_KEY_LOCATION_* constants on KeyboardEvent
https://bugs.webkit.org/show_bug.cgi?id=119341

Reviewed by Ryosuke Niwa.

Source/WebCore:

Add support for the DOM_KEY_LOCATION_* constants on KeyboardEvent as per
the specification:
http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardEvent

Those constants are already supported by IE10, Firefox 22 and since
recently Blink.

Note that the following constants are not supported / exposed yet:
DOM_KEY_LOCATION_MOBILE and DOM_KEY_LOCATION_JOYSTICK.

Test: fast/events/keyboardevent-location-constants.html

* dom/KeyboardEvent.cpp:
(WebCore::keyLocationCode):
(WebCore::KeyboardEvent::KeyboardEvent):
* dom/KeyboardEvent.h:
* dom/KeyboardEvent.idl:

LayoutTests:

Make use of the new DOM_KEY_LOCATION_* constants in the KeyboardEvent
test cases instead of hardcoding their values.

* fast/events/constructors/keyboard-event-constructor-expected.txt:
* fast/events/constructors/keyboard-event-constructor.html:
* fast/events/js-keyboard-event-creation-expected.txt:
* fast/events/js-keyboard-event-creation.html:
* fast/events/keyboardevent-location-constants-expected.txt: Added.
* fast/events/keyboardevent-location-constants.html: Added.
* fast/events/keydown-leftright-keys-expected.txt:
* fast/events/keydown-leftright-keys.html:
* fast/events/keydown-numpad-keys-expected.txt:
* fast/events/script-tests/keydown-numpad-keys.js:
(testKeyEventWithLocation):
* platform/efl/fast/events/js-keyboard-event-creation-expected.txt:
* platform/gtk/fast/events/js-keyboard-event-creation-expected.txt:

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

7 years agoRemove glu's libtest rule from checker.py
seokju@webkit.org [Mon, 12 Aug 2013 19:41:13 +0000 (19:41 +0000)]
Remove glu's libtest rule from checker.py
https://bugs.webkit.org/show_bug.cgi?id=119674

Reviewed by Darin Adler.

* Scripts/webkitpy/style/checker.py: It is no longer used after r148032.

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

7 years agoMultiple CSP tests complain about undefined strings in echo-object-data.pl and echo...
ap@apple.com [Mon, 12 Aug 2013 19:24:58 +0000 (19:24 +0000)]
Multiple CSP tests complain about undefined strings in echo-object-data.pl and echo-script-src.pl
https://bugs.webkit.org/show_bug.cgi?id=119692

Reviewed by Darin Adler.

* http/tests/security/contentSecurityPolicy/resources/echo-object-data.pl:
* http/tests/security/contentSecurityPolicy/resources/echo-script-src.pl:
Check whether optional CGI parameters are provided.

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

7 years agodataLog dumpers for WebCore's basic geometry types
timothy_horton@apple.com [Mon, 12 Aug 2013 19:13:34 +0000 (19:13 +0000)]
dataLog dumpers for WebCore's basic geometry types
https://bugs.webkit.org/show_bug.cgi?id=119636

Reviewed by Filip Pizlo.

* platform/graphics/FloatPoint.cpp:
(WebCore::FloatPoint::dump):
* platform/graphics/FloatPoint.h:
* platform/graphics/FloatRect.cpp:
(WebCore::FloatRect::dump):
* platform/graphics/FloatRect.h:
* platform/graphics/FloatSize.cpp:
(WebCore::FloatSize::dump):
* platform/graphics/FloatSize.h:
* platform/graphics/IntPoint.h:
(WebCore::IntPoint::dump):
* platform/graphics/IntRect.cpp:
(WebCore::IntRect::dump):
* platform/graphics/IntRect.h:
* platform/graphics/IntSize.h:
(WebCore::IntSize::dump):

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

7 years agoBroken build with build-webkit --no-webgl
commit-queue@webkit.org [Mon, 12 Aug 2013 18:41:19 +0000 (18:41 +0000)]
Broken build with build-webkit --no-webgl
https://bugs.webkit.org/show_bug.cgi?id=119272

Patch by Ragner Magalhaes <ranger.n@samsung.com> on 2013-08-12
Reviewed by Alexandru Chiculita.

CSS_SHADERS requires WEBGL enabled.
Add error message to dependency failure.

* wtf/FeatureDefines.h:

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

7 years ago[iOS] isMainThread implementation with USE(WEB_THREAD)
joepeck@webkit.org [Mon, 12 Aug 2013 17:47:57 +0000 (17:47 +0000)]
[iOS] isMainThread implementation with USE(WEB_THREAD)
https://bugs.webkit.org/show_bug.cgi?id=119644

Reviewed by Benjamin Poulain.

On iOS isMainThread() means that the current thread is either the
MainThread or WebThread and the current thread has the WebThreadLock.

* wtf/ios/WebCoreThread.cpp: Added.
* wtf/ios/WebCoreThread.h: Added.
* wtf/mac/MainThreadMac.mm:
(WTF::isMainThread):

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

7 years ago[Qt] [WebKit2] Remove duplicate RAM Size calculation and reuse WTF::ramSize()
commit-queue@webkit.org [Mon, 12 Aug 2013 17:32:37 +0000 (17:32 +0000)]
[Qt] [WebKit2] Remove duplicate RAM Size calculation and reuse WTF::ramSize()
https://bugs.webkit.org/show_bug.cgi?id=119663

Patch by Arunprasad Rajkumar <arurajku@cisco.com> on 2013-08-12
Reviewed by Sam Weinig.

* WebProcess/qt/WebProcessQt.cpp:
(WebKit::WebProcess::platformSetCacheModel):

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

7 years agoShadows don't support viewport units
dino@apple.com [Mon, 12 Aug 2013 17:23:42 +0000 (17:23 +0000)]
Shadows don't support viewport units
https://bugs.webkit.org/show_bug.cgi?id=119649

Reviewed by Darin Adler.

Source/WebCore:

We don't yet support viewport units in shadows, so
fail parsing if we see one. The bug to fix this
completely is: https://webkit.org/b/119650

Test: fast/css/shadow-viewport-units.html

* css/CSSParser.cpp:
(WebCore::CSSParser::parseShadow): Fail if we get one of
vh, vw, vmin, vmax.

LayoutTests:

Test that exercises a viewport unit in text-shadow to make sure we don't parse it.

* fast/css/shadow-viewport-units-expected.txt: Added.
* fast/css/shadow-viewport-units.html: Added.

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

7 years ago[GTK] Don't load GAIL when using GTK 3.2 or greater
commit-queue@webkit.org [Mon, 12 Aug 2013 17:16:19 +0000 (17:16 +0000)]
[GTK] Don't load GAIL when using GTK 3.2 or greater
https://bugs.webkit.org/show_bug.cgi?id=72735

Patch by Anton Obzhirov <a.obzhirov@samsung.com> on 2013-08-12
Reviewed by Carlos Garcia Campos.

Source/WebKit/gtk:

* tests/testatk.c:
(initializeTestingFramework):
(main):

Source/WebKit2:

* UIProcess/API/gtk/tests/AccessibilityTestServer.cpp:
(main):

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

7 years ago[Curl] Cookie is not set when url string is unicode.
commit-queue@webkit.org [Mon, 12 Aug 2013 16:52:48 +0000 (16:52 +0000)]
[Curl] Cookie is not set when url string is unicode.
https://bugs.webkit.org/show_bug.cgi?id=119545

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-08-12
Reviewed by Brent Fulgham.

When the method setCookiesFromDOM is called with an unicode url parameter, the cookie is not correctly set.
We need to convert the cookie string to 8 bit, before passing it to the Curl api function.

* platform/network/curl/CookieJarCurl.cpp:
(WebCore::setCookiesFromDOM): Convert cookie string to 8 bit, if needed.

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

7 years agoRevert r153912 because it broke some track tests.
eric.carlson@apple.com [Mon, 12 Aug 2013 16:49:56 +0000 (16:49 +0000)]
Revert r153912 because it broke some track tests.

Rubber-stamped by Antti Koivisto.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
(WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack):

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

7 years ago[Curl] Crash when starting second download.
commit-queue@webkit.org [Mon, 12 Aug 2013 16:36:01 +0000 (16:36 +0000)]
[Curl] Crash when starting second download.
https://bugs.webkit.org/show_bug.cgi?id=119620

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-08-12
Reviewed by Brent Fulgham.

When a second download is started, a crash sometimes occurs in Curl.
This happens because the Curl easy handle is deleted and removed from the Curl multi handle twice.
This is solved by adding an array to keep track of active downloads to avoid double deletion.

* platform/network/curl/CurlDownload.cpp:
(WebCore::CurlDownloadManager::CurlDownloadManager): Removed active download count member.
(WebCore::CurlDownloadManager::getActiveDownloadCount): Use active download array to return active download count.
(WebCore::CurlDownloadManager::updateHandleList): Remove Curl handles before adding, in case Curl reuses handles.
(WebCore::CurlDownloadManager::addToCurl): Add Curl handle to active download array.
(WebCore::CurlDownloadManager::removeFromCurl): Check if Curl handle is in active download array to avoid double deletion.
(WebCore::CurlDownloadManager::downloadThread): Removed active download count member.
* platform/network/curl/CurlDownload.h: Added array of active downloads member, and removed download count member.

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

7 years ago[Win] TestWebKitAPI fails to link.
commit-queue@webkit.org [Mon, 12 Aug 2013 16:32:57 +0000 (16:32 +0000)]
[Win] TestWebKitAPI fails to link.
https://bugs.webkit.org/show_bug.cgi?id=119619

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-08-12
Reviewed by Brent Fulgham.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export needed symbol.

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

7 years agoAdd ElementTraversal::next/previousSibling
antti@apple.com [Mon, 12 Aug 2013 15:52:09 +0000 (15:52 +0000)]
Add ElementTraversal::next/previousSibling
https://bugs.webkit.org/show_bug.cgi?id=119681

Reviewed by Andreas Kling.

Add nextSibling/previousSibling/lastWithin to ElementTraversal namespace.

- Use them to replace internal use of Element::next/previousElementSibling DOM API for traversal.
- Replace some Node::nextSibling() usage with ElementTraversal::nextSibling() for tighter code.
- Replace ElementTraversal::nextSkippingChildren where it is used to traverse over immediate children only.

* css/SelectorChecker.cpp:
(WebCore::isFirstChildElement):
(WebCore::isLastChildElement):
(WebCore::isFirstOfType):
(WebCore::isLastOfType):
(WebCore::countElementsBefore):
(WebCore::countElementsOfTypeBefore):
(WebCore::countElementsAfter):
(WebCore::countElementsOfTypeAfter):
* dom/Element.cpp:
(WebCore::Element::lastElementChild):
(WebCore::Element::previousElementSibling):
(WebCore::Element::nextElementSibling):
* dom/Element.h:
* dom/ElementTraversal.h:
(WebCore::ElementTraversal::lastElementWithinTemplate):
(WebCore::ElementTraversal::lastWithin):
(WebCore::ElementTraversal::traverseNextSiblingElementTemplate):
(WebCore::ElementTraversal::nextSibling):
(WebCore::ElementTraversal::traversePreviousSiblingElementTemplate):
(WebCore::ElementTraversal::previousSibling):
* editing/ApplyStyleCommand.cpp:
(WebCore::isSpanWithoutAttributesOrUnstyledStyleSpan):
(WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
* editing/IndentOutdentCommand.cpp:
(WebCore::IndentOutdentCommand::tryIndentingAsListItem):
* editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::mergeWithNeighboringLists):
* editing/markup.cpp:
(WebCore::createContextualFragment):
* html/HTMLCollection.cpp:
(WebCore::firstMatchingChildElement):
(WebCore::nextMatchingSiblingElement):
(WebCore::HTMLCollection::traverseNextElement):
(WebCore::HTMLCollection::traverseForwardToOffset):
* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::childrenChanged):
(WebCore::HTMLFieldSetElement::legend):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::finishParsingChildren):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::containsJavaApplet):
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::buildReferenceFilter):
* style/StyleResolveTree.cpp:
(WebCore::Style::resolveTree):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::title):

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

7 years ago[Qt] Add Support for canvas blend modes
allan.jensen@digia.com [Mon, 12 Aug 2013 12:18:00 +0000 (12:18 +0000)]
[Qt] Add Support for canvas blend modes
https://bugs.webkit.org/show_bug.cgi?id=100072

Reviewed by Jocelyn Turcotte.

Source/WebCore:

Implement basic support for the blend-modes supported by QPainter.

Covered by existing tests.

* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore::toQtCompositionMode):
(WebCore::GraphicsContext::setPlatformCompositeOperation):
* platform/graphics/qt/ImageBufferQt.cpp:
(WebCore::ImageBuffer::draw):
* platform/graphics/qt/ImageQt.cpp:
(WebCore::BitmapImage::draw):
* platform/graphics/qt/StillImageQt.cpp:
(WebCore::StillImage::draw):

LayoutTests:

Unskip tests that now passes.

* platform/qt/TestExpectations:

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

7 years agoBuildfix for !ENABLE(SVG). Fix warning by adding guard after r153901:
zarvai@inf.u-szeged.hu [Mon, 12 Aug 2013 11:40:24 +0000 (11:40 +0000)]
Buildfix for !ENABLE(SVG). Fix warning by adding guard after r153901:
void WebCore::addString(WebCore::FeatureSet&, const char*)'
defined but not used [-Werror=unused-function]

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-08-12
Reviewed by Csaba Osztrogonác.

* dom/DOMImplementation.cpp:

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

7 years agoMove ElementTraversal to ElementTraversal.h
antti@apple.com [Mon, 12 Aug 2013 11:21:29 +0000 (11:21 +0000)]
Move ElementTraversal to ElementTraversal.h
https://bugs.webkit.org/show_bug.cgi?id=119678

Rubber-stamped by Andreas Kling.

Move ElementTraversal namespace from NodeTraversal.h to a correctly named file.

* GNUmakefile.list.am:
* Target.pri:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.xcodeproj/project.pbxproj:
* accessibility/AccessibilityRenderObject.cpp:
* css/StyleInvalidationAnalysis.cpp:
* dom/Document.cpp:
* dom/DocumentOrderedMap.cpp:
* dom/Element.cpp:
* dom/ElementTraversal.h: Added.
(WebCore::ElementTraversal::firstElementWithinTemplate):
(WebCore::ElementTraversal::firstWithin):
(WebCore::ElementTraversal::traverseNextElementTemplate):
(WebCore::ElementTraversal::next):
(WebCore::ElementTraversal::traverseNextElementSkippingChildrenTemplate):
(WebCore::ElementTraversal::nextSkippingChildren):
(WebCore::ElementTraversal::previousIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
(WebCore::ElementTraversal::pseudoAwarePreviousSibling):
* dom/Node.cpp:
* dom/NodeTraversal.h:
* dom/SelectorQuery.cpp:
* dom/TreeScope.cpp:
* dom/VisitedLinkState.cpp:
* editing/FrameSelection.cpp:
* editing/markup.cpp:
* html/HTMLCollection.cpp:
* html/HTMLFieldSetElement.cpp:
* html/HTMLFormElement.cpp:
* html/HTMLLabelElement.cpp:
* html/HTMLLegendElement.cpp:
* html/HTMLMapElement.cpp:
* html/HTMLObjectElement.cpp:
* html/HTMLSelectElement.cpp:
* html/shadow/ContentDistributor.cpp:
* page/FocusController.cpp:
* rendering/RenderCounter.cpp:
* rendering/RenderListItem.cpp:
* svg/SVGSVGElement.cpp:
* svg/SVGStyledElement.cpp:
* svg/SVGUseElement.cpp:
* svg/animation/SMILTimeContainer.cpp:
* svg/graphics/SVGImage.cpp:

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

7 years agoMove some Document recalcStyle code to StyleResolveTree
antti@apple.com [Mon, 12 Aug 2013 10:25:21 +0000 (10:25 +0000)]
Move some Document recalcStyle code to StyleResolveTree
https://bugs.webkit.org/show_bug.cgi?id=119676

Reviewed by Andreas Kling.

Move the code that resolves the document and child styles to Style::resolveTree(Document*).

* dom/Document.cpp:
(WebCore::Document::recalcStyle):
* style/StyleResolveTree.cpp:
(WebCore::Style::resolveTree):
* style/StyleResolveTree.h:

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

7 years agoResource leak related to gstreamer and videos
allan.jensen@digia.com [Mon, 12 Aug 2013 10:22:06 +0000 (10:22 +0000)]
Resource leak related to gstreamer and videos
https://bugs.webkit.org/show_bug.cgi?id=109350

Reviewed by Eric Carlson.

Since active DOM object are only stopped once and can not be restarted, we can
unreference the media player there, instead of waiting for garbage collection.

If the r152778 is rolled back, this also breaks a circular reference between
GStreamer and WebKit which prevented garbage collecting from triggering.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::stop):

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

7 years ago[Qt] Unreviewed buildfix for webaudio.
rgabor@webkit.org [Mon, 12 Aug 2013 09:38:50 +0000 (09:38 +0000)]
[Qt] Unreviewed buildfix for webaudio.

* Target.pri: Add missing files

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

7 years agoMore Windows build juice.
akling@apple.com [Mon, 12 Aug 2013 09:17:29 +0000 (09:17 +0000)]
More Windows build juice.

* WebView.cpp:
(WebView::notifyPreferencesChanged):

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

7 years agoSome build juice for the Windows bots after r153926 + r153927.
akling@apple.com [Mon, 12 Aug 2013 08:55:45 +0000 (08:55 +0000)]
Some build juice for the Windows bots after r153926 + r153927.

* html/shadow/MediaControlElements.cpp:
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsFullscreen):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):

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

7 years ago[Qt] Unreviewed gardening. Rebaselining after r153903.
zarvai@inf.u-szeged.hu [Mon, 12 Aug 2013 08:20:50 +0000 (08:20 +0000)]
[Qt] Unreviewed gardening. Rebaselining after r153903.

* platform/qt-5.0-wk1/fast/loader/main-document-url-for-non-http-loads-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/cache/iframe-304-crash-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/loading/307-after-303-after-post-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/loading/redirect-methods-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-allow-expected.txt: Added.
* platform/qt-5.0-wk1/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
* platform/qt-5.0-wk2/compositing/geometry/preserve-3d-switching-expected.txt:
* platform/qt-5.0-wk2/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
* platform/qt-5.0-wk2/http/tests/misc/window-dot-stop-expected.txt:
* platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
* platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt:
* platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt:
* platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt:
* platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-conflict-expected.txt:
* platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt:
* platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
* platform/qt-5.0-wk2/loader/go-back-cached-main-resource-expected.txt:

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

7 years agoUpdate spellcheck-attribute.html description.
g.czajkowski@samsung.com [Mon, 12 Aug 2013 07:57:15 +0000 (07:57 +0000)]
Update spellcheck-attribute.html description.
https://bugs.webkit.org/show_bug.cgi?id=119486

Reviewed by Ryosuke Niwa.

r70512 r72782 added new fields to spellcheck-attribute.html to verify
spellcheck attribute.
Update the test to be more descriptive by dumping additional information
whether the misspelled word should be marked or not.

* editing/spelling/spellcheck-attribute-expected.txt:
* editing/spelling/spellcheck-attribute.html:

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

7 years agoMove RenderMathMLSpace.h/cpp to the right group in the Xcode project.
weinig@apple.com [Sun, 11 Aug 2013 23:15:54 +0000 (23:15 +0000)]
Move RenderMathMLSpace.h/cpp to the right group in the Xcode project.

Reviewed by Dean Jackson.

* WebCore.xcodeproj/project.pbxproj:

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

7 years agoUpdate localizedStrings - I think I checked in an unmerged version
dino@apple.com [Sun, 11 Aug 2013 23:13:43 +0000 (23:13 +0000)]
Update localizedStrings - I think I checked in an unmerged version
in the previous commit.

* Localizations/en.lproj/localizedStrings.js:

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

7 years agoBootstrap canvas profiler
dino@apple.com [Sun, 11 Aug 2013 23:10:57 +0000 (23:10 +0000)]
Bootstrap canvas profiler
https://bugs.webkit.org/show_bug.cgi?id=119652
<rdar://problem/14703665>

Reviewed by Joseph Pecoraro.

Add enough to get an empty Canvas profile recording
and displayed.

* Localizations/en.lproj/localizedStrings.js: Add canvas strings.
* UserInterface/CanvasProfileObject.js: Added. Mostly copied from CSS Selector Profiles.
* UserInterface/CanvasProfileType.js: Added. Ditto.
* UserInterface/CanvasDataGridNode.js: Added. Ditto.
* UserInterface/CanvasProfileView.js: Added. Ditto.
* UserInterface/ContentView.js:
(WebInspector.ContentView): Add support for the new View type.
(WebInspector.ContentView.isViewable):
* UserInterface/InstrumentSidebarPanel.js:
(WebInspector.InstrumentSidebarPanel): Add support for canvas profiles.
(WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphMousedOver):
(WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphMousedDown):
(WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphClicked):
(WebInspector.InstrumentSidebarPanel.prototype._profileTypeWasSelected):
(WebInspector.InstrumentSidebarPanel.prototype._profilesCleared):
* UserInterface/Main.html: Load the new files.
* UserInterface/ProfileManager.js: New methods and support for canvas profiles.
(WebInspector.ProfileManager):
(WebInspector.ProfileManager.prototype.initialize):
(WebInspector.ProfileManager.prototype.isProfilingCanvas):
(WebInspector.ProfileManager.prototype.startProfilingCanvas):
(WebInspector.ProfileManager.prototype.stopProfilingCanvas):
(WebInspector.ProfileManager.prototype._checkForInterruptions):
(WebInspector.ProfileManager.prototype._attemptToResumeProfiling):

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

7 years agoMake Page::settings() return a reference.
akling@apple.com [Sun, 11 Aug 2013 20:30:48 +0000 (20:30 +0000)]
Make Page::settings() return a reference.
<http://webkit.org/b/119662>

Reviewed by Anders Carlsson.

...and remove some pointless null checks that were exposed by doing this.

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

7 years agoMake some things that return never-null pointers return references instead.
akling@apple.com [Sun, 11 Aug 2013 20:26:35 +0000 (20:26 +0000)]
Make some things that return never-null pointers return references instead.
<http://webkit.org/b/119660>

Reviewed by Antti Koivisto.

Source/WebCore:

These functions never return null anyway, so remove any ambiguity by letting
them return references instead of pointers.

- Node::ensureRareData()
- Element::ensureUniqueElementData()
- Element::ensureShadow()
- Element::ensureUserAgentShadowRoot()
- StyledElement::ensureMutableInlineStyle()
- NodeRareData::ensureNodeLists()
- NodeRareData::ensureMutationObserverData()
- EventTarget::ensureEventTargetData()
- Document::ensureStyleResolver()
- Document::selectorQueryCache()
- Document::mediaQueryMatcher()
- FlowThreadController::ensureRenderFlowThreadWithName()
- HTMLTrackElement::ensureTrack()
- SVGElement::ensureSVGRareData()
- AnimationControllerPrivate::ensureCompositeAnimation()

Source/WebKit/qt:

* Api/qwebelement.cpp:
(QWebElement::styleProperty):

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

7 years agoCleanup MediaQueryListListener
weinig@apple.com [Sun, 11 Aug 2013 20:11:19 +0000 (20:11 +0000)]
Cleanup MediaQueryListListener
https://bugs.webkit.org/show_bug.cgi?id=119664

Reviewed by Andreas Kling.

Make MediaQueryListListener a proper WebIDL callback.

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
Update project files.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(JSValueToNative):
* bindings/scripts/IDLAttributes.txt:
Add support for CallbackNeedsOperatorEqual, which adds an operator==.

* css/MediaAllInOne.cpp:
Remove MediaQueryListListener.cpp.

* css/MediaQueryListListener.cpp:
Removed.

* css/MediaQueryListListener.h:
(WebCore::MediaQueryListListener::~MediaQueryListListener):
(WebCore::MediaQueryListListener::MediaQueryListListener):
* css/MediaQueryListListener.idl:
Convert to a proper WebIDL callback.

* css/MediaQueryMatcher.cpp:
(WebCore::MediaQueryMatcher::Listener::evaluate):
(WebCore::MediaQueryMatcher::styleResolverChanged):
* css/MediaQueryMatcher.h:
Remove all traces of the ScriptState.

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

7 years agoUnreviewed. Update NEWS and Versions.m4 for 2.1.4 release.
carlosgc@webkit.org [Sun, 11 Aug 2013 17:41:09 +0000 (17:41 +0000)]
Unreviewed. Update NEWS and Versions.m4 for 2.1.4 release.

.:

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

Source/WebKit/gtk:

* NEWS: Update release notes.

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

7 years agoUnreviewed. Change my primary mail address.
changseok.oh@collabora.com [Sun, 11 Aug 2013 17:40:14 +0000 (17:40 +0000)]
Unreviewed. Change my primary mail address.

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

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

7 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Sun, 11 Aug 2013 15:16:14 +0000 (15:16 +0000)]
Unreviewed. Fix make distcheck.

Source/WebCore:

* GNUmakefile.list.am: Remove unexistent header file.

Source/WTF:

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

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

7 years ago[GObject] Wrap KeyboardEvent
kov@webkit.org [Sat, 10 Aug 2013 15:45:23 +0000 (15:45 +0000)]
[GObject] Wrap KeyboardEvent
https://bugs.webkit.org/show_bug.cgi?id=119651

Reviewed by Christophe Dumez.

This exposes KeyboardEvent to our GObject API. It is required for handling
keyboard events, such as keydown, keypress, and so on.

* bindings/gobject/GNUmakefile.am:
* bindings/gobject/WebKitDOMPrivate.cpp:
(WebKit::wrap): make sure we create a WebKitDOMKeyboardEvent for a DOM event that
is a KeyboardEvent.
* bindings/scripts/CodeGeneratorGObject.pm:
(GetBaseClass): make WebKitDOMEvent be WebKitDOMKeyboardEvent's parent, like we do
for WebKitDOMMouseEvent.
* dom/KeyboardEvent.idl: generate a single initialization method.

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

7 years agoCrash in com.apple.WebKit.WebContent at com.apple.MediaToolbox.
jer.noble@apple.com [Sat, 10 Aug 2013 03:29:16 +0000 (03:29 +0000)]
Crash in com.apple.WebKit.WebContent at com.apple.MediaToolbox.
https://bugs.webkit.org/show_bug.cgi?id=119645

Reviewed by Eric Carlson.

Work around crash caused by <rdar://problem/14688471> by releasing
m_request as soon as keys have been added to it.

* Modules/encryptedmedia/CDMPrivateAVFoundation.mm:
(WebCore::CDMSessionAVFoundation::update):

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

7 years agoArtifacts seen sometimes with layer backed WebKit1 plug-in
andersca@apple.com [Sat, 10 Aug 2013 00:36:10 +0000 (00:36 +0000)]
Artifacts seen sometimes with layer backed WebKit1 plug-in
https://bugs.webkit.org/show_bug.cgi?id=119647
<rdar://problem/14002715>

Reviewed by Beth Dakin.

Don't try to paint layer backed views - they will be painted by Core Animation.

* platform/mac/WidgetMac.mm:
(WebCore::Widget::paint):

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

7 years ago Merge an encoding test from Blink
ap@apple.com [Sat, 10 Aug 2013 00:07:43 +0000 (00:07 +0000)]
    Merge an encoding test from Blink
        https://bugs.webkit.org/show_bug.cgi?id=116943

        Original patch by Adam Barth.

        * fast/encoding/meta-overrules-auto-expected.txt: Added.
        * fast/encoding/meta-overrules-auto.html: Added.
        * fast/encoding/resources/meta-input-encoding.html: Added.

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

7 years agoTests that dump delegate calls are flaky because of cached redirects
ap@apple.com [Sat, 10 Aug 2013 00:01:53 +0000 (00:01 +0000)]
Tests that dump delegate calls are flaky because of cached redirects
https://bugs.webkit.org/show_bug.cgi?id=119641

Reviewed by Brady Eidson.

Made redirect.php emit Cache-Control: no store as a workaround for bug 77538.
Removed several reimplementations of it, and changed the test to use the
central copy.

* http/tests/permissionclient/resources/redir.php: Removed.
* http/tests/resources/redirect.php:
* http/tests/security/beforeload-iframe-server-redirect-expected.txt:
* http/tests/security/beforeload-iframe-server-redirect.html:
* http/tests/security/cannot-read-cssrules-redirect.html:
* http/tests/security/canvas-remote-read-redirect-to-remote-image.html:
* http/tests/security/canvas-remote-read-remote-image-redirect.html:
* http/tests/security/contentSecurityPolicy/frame-src-redirect-blocked.html:
* http/tests/security/contentSecurityPolicy/resources/multiple-iframe-test.js:
* http/tests/security/contentSecurityPolicy/resources/redir.php: Removed.
* http/tests/security/contentSecurityPolicy/script-src-redirect-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-redirect.html:
* http/tests/security/cross-origin-css.html:
* http/tests/security/cross-origin-script-window-onerror-redirected.html:
* http/tests/security/mixedContent/redirect-http-to-https-iframe-in-main-frame-expected.txt:
* http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe-expected.txt:
* http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame-expected.txt:
* http/tests/security/mixedContent/resources/frame-with-redirect-http-to-https-frame.html:
* http/tests/security/mixedContent/resources/frame-with-redirect-http-to-https-script.html:
* http/tests/security/mixedContent/resources/frame-with-redirect-https-to-http-frame.html:
* http/tests/security/mixedContent/resources/frame-with-redirect-https-to-http-script.html:
* http/tests/security/redirect-BLOCKED-to-localURL.html:
* http/tests/security/resources/cross-origin-xsl-redirect.xml:
* http/tests/security/resources/redir.php: Removed.
* http/tests/security/resources/xsl-using-document-redirect.xsl:
* http/tests/security/resources/xsl-using-external-entity-redirect.xsl:
* http/tests/security/stylesheet-href-redirect-expected.txt:
* http/tests/security/stylesheet-href-redirect.html:
* http/tests/security/xssAuditor/block-does-not-leak-referrer.html:
* http/tests/security/xssAuditor/resources/redir.php: Removed.
* http/tests/security/xssAuditor/script-tag-open-redirect.html:
* http/tests/security/xssAuditor/script-tag-redirect.html:
* http/tests/xmlhttprequest/redirect-cross-origin-2.html:
* http/tests/xmlhttprequest/redirect-cross-origin-post-sync.html:
* http/tests/xmlhttprequest/redirect-cross-origin-post.html:
* http/tests/xmlhttprequest/redirect-cross-origin-sync-double.html:
* http/tests/xmlhttprequest/redirect-cross-origin-sync.html:
* http/tests/xmlhttprequest/redirect-cross-origin.html:
* http/tests/xmlhttprequest/resources/redirect.php: Removed.
* http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect.html:

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

7 years agoASSERTION FAILED: stroke->opacity != other->stroke->opacity in WebCore::SVGRenderStyl...
rwlbuis@webkit.org [Fri, 9 Aug 2013 23:30:32 +0000 (23:30 +0000)]
ASSERTION FAILED: stroke->opacity != other->stroke->opacity in WebCore::SVGRenderStyle::diff
https://bugs.webkit.org/show_bug.cgi?id=119623

Reviewed by Dirk Schulze.

Source/WebCore:

Include all the stroke attributes in the style diff comparison, the visited links ones were missing.

Test: svg/animations/animate-stroke-crasher.html

* rendering/style/SVGRenderStyle.cpp:
(WebCore::SVGRenderStyle::diff):

LayoutTests:

Add testcase from bug with small adjustments.

* svg/animations/animate-stroke-crasher-expected.txt: Added.
* svg/animations/animate-stroke-crasher.html: Added.

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

7 years agoREGRESSION (r142755): window.open creates an invisible window when width and height...
ap@apple.com [Fri, 9 Aug 2013 23:25:11 +0000 (23:25 +0000)]
REGRESSION (r142755): window.open creates an invisible window when width and height are 0
https://bugs.webkit.org/show_bug.cgi?id=119633

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/dom/Window/open-zero-size-as-default.html

Relying on each WebKit to refuse setting size to zero was fragile - because this
required each one to have the check, and because by the time the client was called,
the initially zero size was not necessarily zero.

* loader/FrameLoader.cpp: (WebCore::createWindow): When sizes are zero, keep the
size the window was created with, because that's the default one by definition.

* page/DOMWindow.cpp: (WebCore::DOMWindow::adjustWindowRect): It's too late to
check for zero size now, it's been mangled to adjust for the difference between
window and viewport size.

Source/WebKit/efl:

* WebCoreSupport/ChromeClientEfl.cpp: (WebCore::ChromeClientEfl::setWindowRect):
Once again, the passed rect cannot be empty.

Source/WebKit/gtk:

* WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::setWindowRect):
Once again, the passed rect cannot be empty.

LayoutTests:

* fast/dom/Window/open-zero-size-as-default-expected.txt: Added.
* fast/dom/Window/open-zero-size-as-default.html: Added.

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

7 years ago[Mac] some track language tags are not recognized
eric.carlson@apple.com [Fri, 9 Aug 2013 23:09:10 +0000 (23:09 +0000)]
[Mac] some track language tags are not recognized
https://bugs.webkit.org/show_bug.cgi?id=119643

Reviewed by Dean Jackson.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Always call languageOfPrimaryAudioTrack(),
    a track may have changed so we may have a new language.
(WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): Call [AVAssetTrack languageCode]
    if [AVAssetTrack extendedLanguageTag] returns NULL in case the media file has an old
    QuickTime language code.

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

7 years ago http/tests/navigation/back-twice-without-commit.html times out
ap@apple.com [Fri, 9 Aug 2013 22:56:50 +0000 (22:56 +0000)]
    http/tests/navigation/back-twice-without-commit.html times out
        https://bugs.webkit.org/show_bug.cgi?id=82980

        * platform/mac/TestExpectations: Marked as such again, reverting r153842.

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

7 years agoCaptions menu needs to reset text-align
dino@apple.com [Fri, 9 Aug 2013 22:46:49 +0000 (22:46 +0000)]
Captions menu needs to reset text-align
https://bugs.webkit.org/show_bug.cgi?id=119637

Reviewed by Eric Carlson.

Reset the text-align property on the menu so that it
doesn't get the inherited value. The full fix for all
controls is http://webkit.org/b/116100.

* css/mediaControlsQuickTime.css:
(video::-webkit-media-controls-closed-captions-container):

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

7 years ago[GTK] Misses mod_ssl and php in the list of packages required for tests for yum
kov@webkit.org [Fri, 9 Aug 2013 21:12:43 +0000 (21:12 +0000)]
[GTK] Misses mod_ssl and php in the list of packages required for tests for yum
https://bugs.webkit.org/show_bug.cgi?id=115751

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-08-09
Reviewed by Martin Robinson.

* gtk/install-dependencies: add mod_ssl and php to the packages installed for tests
with yum.

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

7 years agoAX: Not able to use arrow keys to read text in a WK2 app
bdakin@apple.com [Fri, 9 Aug 2013 19:58:51 +0000 (19:58 +0000)]
AX: Not able to use arrow keys to read text in a WK2 app
https://bugs.webkit.org/show_bug.cgi?id=119605
-and corresponding-
<rdar://problem/14281275>

Reviewed by Darin Adler.

Source/WebCore:

This code from defaultKeyboardEventHandler() is the magic that makes this AX
functionality work. This patch moves that into a separate function so that we can
call it from WK2.
* WebCore.exp.in:
* page/EventHandler.cpp:
(WebCore::EventHandler::handleKeyboardSelectionMovementForAccessibility):
(WebCore::EventHandler::defaultKeyboardEventHandler):
* page/EventHandler.h:

Source/WebKit2:

Make all of these scrolling functions actually return the WebCore bools that
indicate whether or not scrolling happened.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::scroll):
(WebKit::WebPage::logicalScroll):
(WebKit::WebPage::scrollBy):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::executeKeypressCommandsInternal):

This function now gives accessibility a chance to handle the event too. And it
also actually tracks whether or not the event was handled by scrolling instead of
assuming that it was and universally returning true.
(WebKit::WebPage::performNonEditingBehaviorForSelector):

Tools:

New test verifies that didNotHandleKeyEvent will be called when there is nothing
to scroll.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/DidNotHandleKeyDown.cpp: Added.
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::didNotHandleKeyEventCallback):
(TestWebKitAPI::TEST):

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

7 years agoMove static StyleResolver functions to Style namespace
antti@apple.com [Fri, 9 Aug 2013 19:44:07 +0000 (19:44 +0000)]
Move static StyleResolver functions to Style namespace
https://bugs.webkit.org/show_bug.cgi?id=119629

Reviewed by Sam Weinig and Andreas Kling.

- Move static font size computation functions to StyleFontSizeFunctions.h/.cpp
- Move StyleResolver::styleForDocument to Style::resolveForDocument

* WebCore.xcodeproj/project.pbxproj:
* css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyFontFamily::applyInitialValue):
(WebCore::ApplyPropertyFontFamily::applyValue):
(WebCore::ApplyPropertyFontSize::applyInitialValue):
(WebCore::ApplyPropertyFontSize::applyValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::checkForOrientationChange):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::checkForGenericFamilyChange):
(WebCore::StyleResolver::initializeFontStyle):
(WebCore::StyleResolver::setFontSize):
* css/StyleResolver.h:
* dom/Document.cpp:
(WebCore::Document::recalcStyle):
* editing/EditingStyle.cpp:
(WebCore::legacyFontSizeFromCSSValue):
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::process):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::getFontAndGlyphOrientation):

    Moved from StyleResolver.cpp so it can be used by Style::resolveForDocument().
    This depends on RenderStyle only so it is a natural member function.

* rendering/style/RenderStyle.h:
* rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::computeNewScaledFontForStyle):
* style/StyleFontSizeFunctions.cpp: Copied from Source/WebCore/css/StyleResolver.cpp.
(WebCore::Style::computedFontSizeFromSpecifiedSize):
(WebCore::Style::computedFontSizeFromSpecifiedSizeForSVGInlineText):
(WebCore::Style::fontSizeForKeyword):
(WebCore::Style::legacyFontSizeForPixelSize):
* style/StyleFontSizeFunctions.h: Added.
* style/StyleResolveForDocument.cpp: Added.
(WebCore::Style::resolveForDocument):
* style/StyleResolveForDocument.h: Added.

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

7 years agoAdd support for KeyboardEvent.location attribute
ch.dumez@sisa.samsung.com [Fri, 9 Aug 2013 18:56:16 +0000 (18:56 +0000)]
Add support for KeyboardEvent.location attribute
https://bugs.webkit.org/show_bug.cgi?id=119326

Reviewed by Benjamin Poulain.

Source/WebCore:

Add support for KeyboardEvent.location attribute as per the latest specification:
http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html#events-KeyboardEvent

IE10, Firefox 22 and recently Blink all support KeyboardEvent.location already.

The deprecated 'keyLocation' attribute was not removed to maintain backward
compatibility.

No new tests, covered by existing tests.

* bindings/objc/PublicDOMInterfaces.h:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateConstructorDefinition):
* dom/KeyboardEvent.cpp:
(WebCore::KeyboardEventInit::KeyboardEventInit):
(WebCore::KeyboardEvent::KeyboardEvent):
(WebCore::KeyboardEvent::initKeyboardEvent):
* dom/KeyboardEvent.h:
(WebCore::KeyboardEvent::location):
* dom/KeyboardEvent.idl:

Source/WebKit/win:

Add new location attribute to DOMKeyboardEvent.

* DOMEventsClasses.cpp:
(DOMKeyboardEvent::location):
* DOMEventsClasses.h:
* Interfaces/DOMEvents.idl:

Tools:

Rename the deprecated 'keyLocation' to 'location' in Mac's DRT code.

* DumpRenderTree/mac/EventSendingController.mm:
(-[EventSendingController keyDown:withModifiers:withLocation:]):
(-[EventSendingController keyDownWrapper:withModifiers:withLocation:]):
(-[EventSendingController scheduleAsynchronousKeyDown:withModifiers:withLocation:]):
(-[EventSendingController handleEvent:]):
(-[EventSendingController fireKeyboardEventsToElement:]):

LayoutTests:

Rename KeyboardEvent.keyLocation to KeyboardEvent.location in the
tests and add test cases to make sure that the deprecated
KeyboardEvent.keyLocation still works.

* fast/events/arrow-keys-on-body-expected.txt:
* fast/events/arrow-keys-on-body.html:
* fast/events/constructors/keyboard-event-constructor-expected.txt:
* fast/events/constructors/keyboard-event-constructor.html:
* fast/events/init-events-expected.txt:
* fast/events/js-keyboard-event-creation.html:
* fast/events/keydown-leftright-keys-expected.txt:
* fast/events/keydown-leftright-keys.html:
* fast/events/keydown-numpad-keys-expected.txt:
* fast/events/script-tests/init-events.js:
* fast/events/script-tests/keydown-numpad-keys.js:
(recordKeyEvent):
(testKeyEventWithLocation):
* platform/mac/fast/events/objc-keyboard-event-creation.html:
* platform/win/fast/events/keyLocation-numpad.html:

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

7 years agoMake atob() throw an InvalidCharacterError on excess padding characters
ch.dumez@sisa.samsung.com [Fri, 9 Aug 2013 18:54:32 +0000 (18:54 +0000)]
Make atob() throw an InvalidCharacterError on excess padding characters
https://bugs.webkit.org/show_bug.cgi?id=118898

Reviewed by Darin Adler.

Source/WebCore:

According to the latest specification, window.atob() should throw an
InvalidCharacterError on excess padding characters:
http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#dom-windowbase64-atob

This behavior is consistent with both Firefox, IE10 and recently Blink.

No new tests, already covered by:
fast/dom/Window/atob-btoa.html

* page/DOMWindow.cpp:
(WebCore::DOMWindow::atob):

Source/WTF:

Add a Base64FailOnInvalidCharacterOrExcessPadding value to the Base64DecodePolicy
enumeration so that the caller can request strict padding validation in addition
to strict character validation. This is needed so that we can use
WTF::base64Decode() for window.atob().

* wtf/text/Base64.cpp:
(WTF::base64DecodeInternal):
* wtf/text/Base64.h:

LayoutTests:

Update and rebaseline fast/dom/Window/atob-btoa.html now that window.atob()'s
behavior has changed and now that we throw an InvalidCharacterError on excess
pad characters.

* fast/dom/Window/atob-btoa-expected.txt:
* fast/dom/Window/atob-btoa.html:

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

7 years ago<unknown> is often dumped instead of path in test output
ap@apple.com [Fri, 9 Aug 2013 18:40:48 +0000 (18:40 +0000)]
<unknown> is often dumped instead of path in test output
https://bugs.webkit.org/show_bug.cgi?id=119590

Reviewed by Anders Carlsson.

Tools:

There were two reasons for <unknown>:
1. When delegate logging is enabled via a testRunner call, that obviously happens
after main resource load starts, so we don't record its URL.
2. Authentication delegate logging relied on URL recording, but it's only turned on
when enabling resource loading delegate logging, not auth one.

URL recording was made conditional in <http://trac.webkit.org/r19316>, which was
landed without posted rationale and unreviewed. Just undoing that change now.

* DumpRenderTree/mac/ResourceLoadDelegate.mm:
(-[ResourceLoadDelegate webView:identifierForInitialRequest:fromDataSource:]):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::didInitiateLoadForResource):

LayoutTests:

Updating test results.

* fast/loader/file-protocol-fragment-expected.txt:
* fast/loader/main-document-url-for-non-http-loads-expected.txt:
* http/tests/cache/iframe-304-crash-expected.txt:
* http/tests/cache/willsendrequest-returns-null-for-memory-cache-load-expected.txt:
* http/tests/loading/307-after-303-after-post-expected.txt:
* http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt:
* http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt:
* http/tests/loading/basic-credentials-sent-automatically-expected.txt:
* http/tests/loading/redirect-methods-expected.txt:
* http/tests/misc/401-alternative-content-expected.txt:
* http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt:
* http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt:
* http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt:
* http/tests/misc/favicon-loads-with-images-disabled-expected.txt:
* http/tests/misc/link-rel-icon-beforeload-expected.txt:
* http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
* http/tests/misc/window-dot-stop-expected.txt:
* http/tests/security/401-logout/401-logout-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-multiple-headers-conflict-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-allow-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
* http/tests/xmlhttprequest/failed-auth-expected.txt:
* http/tests/xmlhttprequest/remember-bad-password-expected.txt:
* loader/go-back-cached-main-resource-expected.txt:
* platform/efl-wk2/loader/go-back-cached-main-resource-expected.txt:
* platform/mac/fast/images/support-broken-image-delegate-expected.txt:
* platform/mac/security/block-test-expected.txt:
* platform/mac/security/block-test-no-port-expected.txt:
* platform/mac/webarchive/loading/cache-expired-subresource-expected.txt:
* webarchive/loading/test-loading-archive-expected.txt:
* webarchive/loading/test-loading-archive-subresource-null-mimetype-expected.txt:

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

7 years agoModify the existing canvas blending test suite to test both
commit-queue@webkit.org [Fri, 9 Aug 2013 17:35:12 +0000 (17:35 +0000)]
Modify the existing canvas blending test suite to test both
accelerated and non accelerated modes.
https://bugs.webkit.org/show_bug.cgi?id=119628

Patch by Mihai Tica <mitica@adobe.com> on 2013-08-09
Reviewed by Dirk Schulze.

* fast/canvas/canvas-blending-clipping-expected.txt:
* fast/canvas/canvas-blending-clipping.html:
* fast/canvas/canvas-blending-color-over-color-expected.txt:
* fast/canvas/canvas-blending-color-over-color.html:
* fast/canvas/canvas-blending-color-over-gradient-expected.txt:
* fast/canvas/canvas-blending-color-over-gradient.html:
* fast/canvas/canvas-blending-color-over-image-expected.txt:
* fast/canvas/canvas-blending-color-over-image.html:
* fast/canvas/canvas-blending-color-over-pattern-expected.txt:
* fast/canvas/canvas-blending-color-over-pattern.html:
* fast/canvas/canvas-blending-fill-style-expected.txt:
* fast/canvas/canvas-blending-fill-style.html:
* fast/canvas/canvas-blending-global-alpha-expected.txt:
* fast/canvas/canvas-blending-global-alpha.html:
* fast/canvas/canvas-blending-gradient-over-color-expected.txt:
* fast/canvas/canvas-blending-gradient-over-color.html:
* fast/canvas/canvas-blending-gradient-over-gradient-expected.txt:
* fast/canvas/canvas-blending-gradient-over-gradient.html:
* fast/canvas/canvas-blending-gradient-over-image-expected.txt:
* fast/canvas/canvas-blending-gradient-over-image.html:
* fast/canvas/canvas-blending-gradient-over-pattern-expected.txt:
* fast/canvas/canvas-blending-gradient-over-pattern.html:
* fast/canvas/canvas-blending-image-over-color-expected.txt:
* fast/canvas/canvas-blending-image-over-color.html:
* fast/canvas/canvas-blending-image-over-gradient-expected.txt:
* fast/canvas/canvas-blending-image-over-gradient.html:
* fast/canvas/canvas-blending-image-over-image-expected.txt:
* fast/canvas/canvas-blending-image-over-image.html:
* fast/canvas/canvas-blending-image-over-pattern-expected.txt:
* fast/canvas/canvas-blending-image-over-pattern.html:
* fast/canvas/canvas-blending-pattern-over-color-expected.txt:
* fast/canvas/canvas-blending-pattern-over-color.html:
* fast/canvas/canvas-blending-pattern-over-gradient-expected.txt:
* fast/canvas/canvas-blending-pattern-over-gradient.html:
* fast/canvas/canvas-blending-pattern-over-image-expected.txt:
* fast/canvas/canvas-blending-pattern-over-image.html:
* fast/canvas/canvas-blending-pattern-over-pattern-expected.txt:
* fast/canvas/canvas-blending-pattern-over-pattern.html:
* fast/canvas/canvas-blending-shadow-expected.txt:
* fast/canvas/canvas-blending-shadow.html:
* fast/canvas/canvas-blending-text-expected.txt:
* fast/canvas/canvas-blending-text.html:
* fast/canvas/canvas-blending-transforms-expected.txt:
* fast/canvas/canvas-blending-transforms.html:

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

7 years agoMake DOMImplementation::hasFeature() behave according to specification
ch.dumez@sisa.samsung.com [Fri, 9 Aug 2013 17:31:04 +0000 (17:31 +0000)]
Make DOMImplementation::hasFeature() behave according to specification
https://bugs.webkit.org/show_bug.cgi?id=119329

Reviewed by Ryosuke Niwa.

Source/WebCore:

Make DOMImplementation::hasFeature() behave according to the latest specification:
http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature

Specifically, the function should now return true unconditionally for any non-SVG feature.
This behavior is consistent with Firefox and since recently Blink.

hasFeature() originally would report whether the user agent claimed to support a
given DOM feature, but experience proved it was not nearly as reliable or granular
as simply checking whether the desired interfaces, attributes, or methods existed.
As such, it should no longer be used, but continues to exist (and simply returns
true) so that old pages don't stop working.

No new tests, covered by existing tests.

* dom/DOMImplementation.cpp:
(WebCore::isSupportedSVG10Feature):
(WebCore::isSupportedSVG11Feature):
(WebCore::DOMImplementation::hasFeature):

LayoutTests:

Rebaseline several test cases now that DOMImplementation::hasFeature() returns
true unconditionally for non-SVG features.

Also use a valid svg prefix for unknown features in SVG tests so that they are
properly recognized as SVG features and so that hasFeature() returns false as
expected.

* dom/xhtml/level3/core/hasFeature01-expected.txt:
* dom/xhtml/level3/core/hasFeature02-expected.txt:
* dom/xhtml/level3/core/hasFeature03-expected.txt:
* dom/xhtml/level3/core/hasFeature04-expected.txt:
* fast/dom/features-expected.txt:
* platform/efl/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt:
* platform/efl/svg/W3C-SVG-1.1/struct-dom-03-b-expected.txt:
* platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt:
* platform/gtk/svg/W3C-SVG-1.1/struct-dom-03-b-expected.txt:
* platform/mac/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt:
* platform/mac/svg/W3C-SVG-1.1/struct-dom-03-b-expected.txt:
* platform/qt-mac/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt:
* platform/qt/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt:
* svg/W3C-SVG-1.1/struct-dom-03-b-expected.txt:
* svg/custom/outer-svg-unknown-feature.svg:
* svg/dynamic-updates/script-tests/SVGCircleElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGCircleElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGEllipseElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGEllipseElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGForeignObjectElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGForeignObjectElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGGElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGGElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGImageElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGImageElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGLineElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGLineElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGPathElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGPathElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGPolygonElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGPolygonElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGPolylineElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGPolylineElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGRectElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGRectElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGSVGElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGSVGElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGTextElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGTextElement-svgdom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGUseElement-dom-requiredFeatures.js:
(repaintTest):
* svg/dynamic-updates/script-tests/SVGUseElement-svgdom-requiredFeatures.js:
(repaintTest):

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

7 years ago[GTK] [EFL] Enable tiled shadow blur for the inset shadows.
alex@webkit.org [Fri, 9 Aug 2013 17:00:35 +0000 (17:00 +0000)]
[GTK] [EFL] Enable tiled shadow blur for the inset shadows.
https://bugs.webkit.org/show_bug.cgi?id=119078

Reviewed by Martin Robinson.

Already covered in the tests.

* platform/graphics/GraphicsContext.cpp:
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::fillCurrentCairoPath): Added to allow fill the path
without the shadow.
(WebCore::shadowAndFillCurrentCairoPath):
(WebCore::GraphicsContext::fillRectWithRoundedHole): Added cairo
implementation.

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

7 years agomove-by-word-visually-multi-space.html takes 21s and spends most of its time doing...
simon.fraser@apple.com [Fri, 9 Aug 2013 16:53:38 +0000 (16:53 +0000)]
move-by-word-visually-multi-space.html takes 21s and spends most of its time doing spelling and grammar checking
https://bugs.webkit.org/show_bug.cgi?id=119613

Reviewed by Darin Adler.

editing/selection tests are very slow, and much of the time is spent
doing spelling and grammar checking (which is not what these tests are
testing). So call internals.setContinuousSpellCheckingEnabled(false)
to turn that off.

* editing/selection/caret-at-bidi-boundary.html:
* editing/selection/move-by-character-brute-force.html:
* editing/selection/move-left-right.html:
* editing/selection/programmatic-selection-on-mac-is-directionless.html:
* editing/selection/resources/extend-selection.js:
* editing/selection/resources/move-by-word-visually.js:
(runTest):

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

7 years ago[BlackBerry] Viewport allows scrolling when it shouldn't after rotation to landscape
commit-queue@webkit.org [Fri, 9 Aug 2013 16:07:29 +0000 (16:07 +0000)]
[BlackBerry] Viewport allows scrolling when it shouldn't after rotation to landscape
https://bugs.webkit.org/show_bug.cgi?id=119595

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-08-09
Reviewed by Rob Buis.
Internally reviewed by Konrad Piascik, Max Feil, Arvid Nilsson and John Griggs.

JIRA 466384
Initial scales of portrait mode and landscape mode can be different due
to different viewport size and contents size. In this case, we restored
to the intial scale of portrait mode instead of the initial scale of current
landscape mode which zoomed in the WebPage a little bit and made the WebPage
scallable as the scale is larger than the initial scale of the current
landscape mode WebPage.
To fix that, we should restore to the current initial scale instead if
the WebPage was at initial scale before fullscreen.
Meanwhile, move the FIXME comments to the right place.

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

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

7 years ago[BlackBerry] Don't release the canvas Drawable, flush it directly instead.
commit-queue@webkit.org [Fri, 9 Aug 2013 15:28:24 +0000 (15:28 +0000)]
[BlackBerry] Don't release the canvas Drawable, flush it directly instead.
https://bugs.webkit.org/show_bug.cgi?id=119589
https://jira.bbqnx.net/browse/BRWSR-12531
JIRA 444857

Patch by Jakob Petsovits <jpetsovits@blackberry.com> on 2013-08-09
Reviewed by George Staikos.

The previous code here used releaseBufferDrawable() to
flush painted ImageBuffer contents, but then proceeded
to use that released Drawable for further painting
without ever locking a new one.

In an implementation that actually releases the Drawable
rather than keeping it around and just flushing it,
this will wreak havoc as bad as black screens or crashes.

As a solution that doesn't require the ImageBuffer object
to swap out its m_canvas member for a new Drawable, we can
access the PlatformGraphicsContext::flush() method directly
to achieve the same effect as was previously intended by
calling releaseBufferDrawable(). All it needs is letting
the canvas layer know about the Drawable so it can call
that flush() method by itself.

No new tests, verified by not crashing with an aforementioned
implementation of releaseBufferDrawable().

* platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
(WebCore::CanvasLayerCompositingThreadClient::CanvasLayerCompositingThreadClient):
(WebCore::CanvasLayerCompositingThreadClient::commitPendingTextureUploads):
(WebCore::CanvasLayerWebKitThread::CanvasLayerWebKitThread):
* platform/graphics/blackberry/CanvasLayerWebKitThread.h:
(WebCore::CanvasLayerWebKitThread::create):
* platform/graphics/blackberry/ImageBufferBlackBerry.cpp:
(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::~ImageBuffer):

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

7 years agoSwitch the generated images off of PDFs and onto SVGs now that bug 119492 is fixed.
timothy@apple.com [Fri, 9 Aug 2013 15:26:33 +0000 (15:26 +0000)]
Switch the generated images off of PDFs and onto SVGs now that bug 119492 is fixed.

https://bugs.webkit.org/show_bug.cgi?id=118677

Reviewed by Joseph Pecoraro.

* UserInterface/ApplicationCacheDetailsSidebarPanel.js:
(WebInspector.ApplicationCacheDetailsSidebarPanel):
* UserInterface/CSSStyleDeclarationSection.js:
(WebInspector.CSSStyleDeclarationSection):
* UserInterface/CSSStyleDetailsSidebarPanel.js:
(WebInspector.CSSStyleDetailsSidebarPanel):
* UserInterface/ContentBrowser.js:
(WebInspector.ContentBrowser):
* UserInterface/DOMNodeDetailsSidebarPanel.js:
(WebInspector.DOMNodeDetailsSidebarPanel):
* UserInterface/DOMTreeContentView.js:
(WebInspector.DOMTreeContentView):
* UserInterface/DataGrid.js:
(WebInspector.DataGrid.prototype._generateSortIndicatorImagesIfNeeded):
* UserInterface/DebuggerSidebarPanel.js:
(WebInspector.DebuggerSidebarPanel):
* UserInterface/DetailsSection.js:
(WebInspector.DetailsSection.prototype._generateDisclosureTrianglesIfNeeded):
* UserInterface/FindBanner.js:
(WebInspector.FindBanner.prototype._generateButtonsGlyphsIfNeeded):
* UserInterface/Images/BackArrow.pdf: Removed.
* UserInterface/Images/BottomUpTree.pdf: Removed.
* UserInterface/Images/Breakpoints.pdf: Removed.
* UserInterface/Images/Close.pdf: Removed.
* UserInterface/Images/Crosshair.pdf: Removed.
* UserInterface/Images/DisclosureTriangleSmallClosed.pdf: Removed.
* UserInterface/Images/DisclosureTriangleSmallOpen.pdf: Removed.
* UserInterface/Images/DisclosureTriangleTinyClosed.pdf: Removed.
* UserInterface/Images/DisclosureTriangleTinyOpen.pdf: Removed.
* UserInterface/Images/DockBottom.pdf: Removed.
* UserInterface/Images/DockRight.pdf: Removed.
* UserInterface/Images/ForwardArrow.pdf: Removed.
* UserInterface/Images/GoToArrow.pdf: Removed.
* UserInterface/Images/LayerBorders.pdf: Removed.
* UserInterface/Images/LessColumns.pdf: Removed.
* UserInterface/Images/Locked.pdf: Removed.
* UserInterface/Images/MoreColumns.pdf: Removed.
* UserInterface/Images/NavigationItemAngleBrackets.pdf: Removed.
* UserInterface/Images/NavigationItemBrushAndRuler.pdf: Removed.
* UserInterface/Images/NavigationItemBug.pdf: Removed.
* UserInterface/Images/NavigationItemCurleyBraces.pdf: Removed.
* UserInterface/Images/NavigationItemFile.pdf: Removed.
* UserInterface/Images/NavigationItemLayers.pdf: Removed.
* UserInterface/Images/NavigationItemLog.pdf: Removed.
* UserInterface/Images/NavigationItemMagnifyingGlass.pdf: Removed.
* UserInterface/Images/NavigationItemStopwatch.pdf: Removed.
* UserInterface/Images/NavigationItemStorage.pdf: Removed.
* UserInterface/Images/NavigationItemTrash.pdf: Removed.
* UserInterface/Images/NavigationItemVariable.pdf: Removed.
* UserInterface/Images/Pause.pdf: Removed.
* UserInterface/Images/Percent.pdf: Removed.
* UserInterface/Images/Plus.pdf: Removed.
* UserInterface/Images/Resume.pdf: Removed.
* UserInterface/Images/ShadowDOM.pdf: Removed.
* UserInterface/Images/SortIndicatorDownArrow.pdf: Removed.
* UserInterface/Images/SortIndicatorUpArrow.pdf: Removed.
* UserInterface/Images/SplitToggleDown.pdf: Removed.
* UserInterface/Images/SplitToggleUp.pdf: Removed.
* UserInterface/Images/StepInto.pdf: Removed.
* UserInterface/Images/StepOut.pdf: Removed.
* UserInterface/Images/StepOver.pdf: Removed.
* UserInterface/Images/Undock.pdf: Removed.
* UserInterface/InstrumentSidebarPanel.js:
(WebInspector.InstrumentSidebarPanel):
* UserInterface/JavaScriptProfileView.js:
(WebInspector.JavaScriptProfileView):
* UserInterface/LayerTreeSidebarPanel.js:
(WebInspector.LayerTreeSidebarPanel):
* UserInterface/LogContentView.js:
(WebInspector.LogContentView):
* UserInterface/Main.js:
(WebInspector.contentLoaded):
(WebInspector._updateDockNavigationItems):
(WebInspector._generateDisclosureTriangleImages):
* UserInterface/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded):
* UserInterface/ProfileView.js:
(WebInspector.ProfileView):
* UserInterface/ResourceDetailsSidebarPanel.js:
(WebInspector.ResourceDetailsSidebarPanel):
* UserInterface/ResourceSidebarPanel.js:
(WebInspector.ResourceSidebarPanel):
* UserInterface/ScopeChainDetailsSidebarPanel.js:
(WebInspector.ScopeChainDetailsSidebarPanel):
* UserInterface/ScriptContentView.js:
(WebInspector.ScriptContentView):
* UserInterface/TextContentView.js:
(WebInspector.TextContentView):
* UserInterface/TextResourceContentView.js:
(WebInspector.TextResourceContentView):
* UserInterface/TimelinesContentView.js:

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

7 years ago[Qt][WK2] Composited and transformed links asserts in tap highlight
allan.jensen@digia.com [Fri, 9 Aug 2013 15:00:02 +0000 (15:00 +0000)]
[Qt][WK2] Composited and transformed links asserts in tap highlight
https://bugs.webkit.org/show_bug.cgi?id=94345

Reviewed by Jocelyn Turcotte.

Use a mapping that does not assert when hitting transforms. We still skip
transforms that produces non-rectangular areas.

* page/GestureTapHighlighter.cpp:

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

7 years agoBuildfix. Fix warning after r153887:
zarvai@inf.u-szeged.hu [Fri, 9 Aug 2013 14:41:25 +0000 (14:41 +0000)]
Buildfix. Fix warning after r153887:
control reaches end of non-void function [-Werror=return-type]

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-08-09
Reviewed by Csaba Osztrogonác.

* svg/SVGAnimateElement.cpp:
(WebCore::SVGAnimateElement::animatedPropertyTypeSupportsAddition):

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

7 years agoText decorations should be listed as non-inheritable
bruno.d@partner.samsung.com [Fri, 9 Aug 2013 14:15:55 +0000 (14:15 +0000)]
Text decorations should be listed as non-inheritable
https://bugs.webkit.org/show_bug.cgi?id=119608

Reviewed by Andreas Kling.

Source/WebCore:

Both "text-decoration" specs (CSS 2.1, CSS 3) and "text-decoration-line"
spec (CSS 3) states these properties are not inherited (w/ exceptions,
which are currently handled by -in-effect property), however those were
listed as inherited for no reason - thus preserving behavior as shown by
layout test results.

Blink: https://codereview.chromium.org/20751008
Updated getComputedStyle tests for both 'text-decoration' and
'text-decoration-line' properties to check that both are not implicitly
inherited.

* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):

LayoutTests:

Added test to verify that 'text-decoration' and 'text-decoration-line'
properties are not implicitly inherited.

* fast/css/getComputedStyle/getComputedStyle-text-decoration-expected.txt:
* fast/css/getComputedStyle/script-tests/getComputedStyle-text-decoration.js:
* fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-decoration-line-expected.txt:
* fast/css3-text/css3-text-decoration/getComputedStyle/script-tests/getComputedStyle-text-decoration-line.js:

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

7 years agoI wish we had a Windows EWS. :(
akling@apple.com [Fri, 9 Aug 2013 14:14:46 +0000 (14:14 +0000)]
I wish we had a Windows EWS. :(

* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::doCollectMatchingRulesForList): No range-based for today.

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

7 years ago[Qt] Unreviewed gardening. Rebaselinnig some new tests.
zarvai@inf.u-szeged.hu [Fri, 9 Aug 2013 14:05:53 +0000 (14:05 +0000)]
[Qt] Unreviewed gardening. Rebaselinnig some new tests.

* platform/qt-5.0-wk1/TestExpectations:
* platform/qt-5.0-wk2/compositing/overflow-trumps-transform-style-expected.txt:
* platform/qt-5.0-wk2/fast/repaint/caret-jump-between-nodes-expected.txt: Added.
* platform/qt/compositing/geometry/preserve-3d-switching-expected.txt:
* platform/qt/fast/forms/search-rtl-expected.png:
* platform/qt/fast/forms/search-rtl-expected.txt:
* platform/qt/fast/repaint/caret-jump-between-nodes-expected.txt: Added.

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

7 years ago[Qt] Buidfix after r153664. Adding ANGLE_WEBKIT_WIN definition.
zarvai@inf.u-szeged.hu [Fri, 9 Aug 2013 13:26:58 +0000 (13:26 +0000)]
[Qt] Buidfix after r153664. Adding ANGLE_WEBKIT_WIN definition.
https://bugs.webkit.org/show_bug.cgi?id=119577

Reviewed by Allan Sandfeld Jensen.

* Target.pri:

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

7 years agoASSERT_NOT_REACHED() touched in WebCore::SVGAnimatedStringAnimator::addAnimatedTypes
rwlbuis@webkit.org [Fri, 9 Aug 2013 13:23:26 +0000 (13:23 +0000)]
ASSERT_NOT_REACHED() touched in WebCore::SVGAnimatedStringAnimator::addAnimatedTypes
https://bugs.webkit.org/show_bug.cgi?id=113224

Source/WebCore:

Reviewed by Darin Adler.

Do not perform from-by animations for non-additive attributes.

Test: svg/animations/non-additive-type-from-by-animation.html

* svg/SVGAnimateElement.cpp:
(WebCore::SVGAnimateElement::calculateFromAndByValues):
(WebCore::SVGAnimateElement::animatedPropertyTypeSupportsAddition):
(WebCore::SVGAnimateElement::isAdditive):
* svg/SVGAnimateElement.h:

LayoutTests:

Reviewed by Dirk Schulze.

Add a test for animating non-additive attributes in from-by animations

* svg/animations/non-additive-type-from-by-animation-expected.txt: Added.
* svg/animations/non-additive-type-from-by-animation.html: Added.
* svg/animations/resources/non-additive-type-from-by-animation.svg: Added.
* svg/animations/script-tests/non-additive-type-from-by-animation.js: Added.
(sample):
(executeTest):

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

7 years agoASSERT(m_type == toSVGTransform.type())
rwlbuis@webkit.org [Fri, 9 Aug 2013 13:05:37 +0000 (13:05 +0000)]
ASSERT(m_type == toSVGTransform.type())
https://bugs.webkit.org/show_bug.cgi?id=113217

Reviewed by Darin Adler.

Source/WebCore:

For to animations clear the transform list while animating and reset to it after the animation is done.
This matches Firefox and Opera 12 behavior.

Tests: svg/animations/animateTransform-to-scale-expected.svg
       svg/animations/animateTransform-to-scale.svg

* svg/SVGAnimatedTransformList.cpp:
(WebCore::SVGAnimatedTransformListAnimator::calculateAnimatedValue):

LayoutTests:

Add reftest for additive to animation where from and to transform types differ.

* svg/animations/animateTransform-to-scale-expected.svg: Added.
* svg/animations/animateTransform-to-scale.svg: Added.

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

7 years ago[Automake] Clean up OpenGL graphics configuration sections
zandobersek@gmail.com [Fri, 9 Aug 2013 12:46:05 +0000 (12:46 +0000)]
[Automake] Clean up OpenGL graphics configuration sections
https://bugs.webkit.org/show_bug.cgi?id=119554

Reviewed by Martin Robinson.

Clean up sections in the Automake configuration process that are configuring the OpenGL graphics
features and dependencies. Remove unnecessary variable assignments, merge similar code paths,
clarify a couple of comments and error messages and fix a few whitespace problems.

* Source/autotools/FindDependencies.m4:
* Source/autotools/ReadCommandLineArguments.m4:
* Source/autotools/SetupAutomake.m4:

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

7 years ago[Qt] QtWebKit should allow sending domain specific keycode to HTML applications
commit-queue@webkit.org [Fri, 9 Aug 2013 12:11:20 +0000 (12:11 +0000)]
[Qt] QtWebKit should allow sending domain specific keycode to HTML applications
https://bugs.webkit.org/show_bug.cgi?id=118445

Patch by Arunprasad Rajkumar <arurajku@cisco.com> on 2013-08-09
Reviewed by Allan Sandfeld Jensen.

Source/WebCore:

No new test required, it is covered by QtWebKit API test.

This fix allows sending QKeyEvent::nativeVirtualKey as the DOM KeyboardEvent keyCode value instead
of Windows virtual key code. It can be enabled/disabled using "_q_useNativeVirtualKeyAsDOMKey"
dynamic property present in QWebPage.

* platform/PlatformKeyboardEvent.h:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/qt/PlatformKeyboardEventQt.cpp:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

Source/WebKit/qt:

Added API test.

* WebCoreSupport/QWebPageAdapter.cpp:
(QWebPageAdapter::QWebPageAdapter):
(QWebPageAdapter::dynamicPropertyChangeEvent):
(QWebPageAdapter::handleKeyEvent):
* WebCoreSupport/QWebPageAdapter.h:
* tests/qwebpage/tst_qwebpage.cpp:
(tst_QWebPage::domainSpecificKeyEvent):

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

7 years agoMissing NULL check in ApplyStyleCommand::applyInlineStyleToNodeRange()
reni@webkit.org [Fri, 9 Aug 2013 12:08:28 +0000 (12:08 +0000)]
Missing NULL check in ApplyStyleCommand::applyInlineStyleToNodeRange()
https://bugs.webkit.org/show_bug.cgi?id=119570

Reviewed by Ryosuke Niwa.

Source/WebCore:

The m_mutableStyleSet of EditingStyle can be NULL in ApplyStyleCommand::applyInlineStyleToNodeRange but
this scenario was not checked earlier.

Test: editing/execCommand/null-style-crash.html

* css/StylePropertySet.cpp:
(WebCore::MutableStylePropertySet::mergeAndOverrideOnConflict):
* css/StylePropertySet.h:
* css/ViewportStyleResolver.cpp:
(WebCore::ViewportStyleResolver::addViewportRule):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
* editing/EditingStyle.cpp:
(WebCore::styleFromMatchedRulesForElement):
(WebCore::EditingStyle::mergeStyleFromRules):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):

LayoutTests:

* editing/execCommand/null-style-crash-expected.txt: Added.
* editing/execCommand/null-style-crash.html: Added.

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

7 years ago[GTK] [WebKit2] Add an 'authenticate' signal to WebKitWebView
commit-queue@webkit.org [Fri, 9 Aug 2013 10:48:49 +0000 (10:48 +0000)]
[GTK] [WebKit2] Add an 'authenticate' signal to WebKitWebView
https://bugs.webkit.org/show_bug.cgi?id=99352

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

Add a new public class to the API, WebKitAuthenticationRequest, to be
emitted along with a new WebKitWebView::authenticate signal to
let client applications to provide their own authentication
when the user is challenged with HTTP authentication. The
credential is exposed through a new class WebKitCredential.

* GNUmakefile.list.am:
* UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
(okButtonClicked): Use new API for authentication.
(cancelButtonClicked): Ditto.
(webkitAuthenticationDialogInitialize):Get
authenticationChallenge from request object.
(webkitAuthenticationDialogNew): Ditto.
* UIProcess/API/gtk/WebKitAuthenticationDialog.h:
* UIProcess/API/gtk/WebKitAuthenticationRequest.cpp: Added new
class representing a HTTP authentication request.
(webkitAuthenticationRequestDispose):
(webkit_authentication_request_class_init):
(webkitAuthenticationRequestCreate):
(webkitAuthenticationRequestGetAuthenticationChallenge):
(webkit_authentication_request_can_save_credentials):
(webkit_authentication_request_get_proposed_credential):
(webkit_authentication_request_get_host):
(webkit_authentication_request_get_port):
(webkit_authentication_request_get_realm):
(webkit_authentication_request_get_scheme):
(webkit_authentication_request_is_for_proxy):
(webkit_authentication_request_is_retry):
(webkit_authentication_request_authenticate):
(webkit_authentication_request_cancel):
* UIProcess/API/gtk/WebKitAuthenticationRequest.h: Added.
* UIProcess/API/gtk/WebKitAuthenticationRequestPrivate.h: Added.
* UIProcess/API/gtk/WebKitCredential.cpp: Added new class to
support credentials for HTTP authentication.
(_WebKitCredential::_WebKitCredential):
(webkitCredentialCreate):
(webkitCredentialGetCredential):
(webkit_credential_new):
(webkit_credential_copy):
(webkit_credential_free):
(webkit_credential_get_username):
(webkit_credential_get_password):
(webkit_credential_has_password):
(webkit_credential_get_persistence):
* UIProcess/API/gtk/WebKitCredential.h: Added.
* UIProcess/API/gtk/WebKitCredentialPrivate.h: Added.
* UIProcess/API/gtk/WebKitWebView.cpp: Added authenticate signal.
(webkitWebViewAuthenticate): Default signal handler for authenticate.
(webkit_web_view_class_init): Ditto.
(webkitWebViewHandleAuthenticationChallenge): Create an
authentication request and emit it with authenticate signal.
* UIProcess/API/gtk/WebKitWebView.h: Replaced reserved function
pointer slot with for WebViewClass with function pointer to
authenticate signal handler.
* UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Added new section for
the authentication request.
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto.
* UIProcess/API/gtk/docs/webkit2gtk.types: Added authentication
request and credential types.
* UIProcess/API/gtk/tests/TestWebKitWebView.cpp: Created a new
unit test for HTTP authentication. A libsoup server callback
handler is installed that creates soup messages with appropriate
headers and body to test HTTP authentication.
(testWebViewAuthenticationRequest): Test the authentication
request and credential API.
(testWebViewAuthenticationCancel): Test cancelled authentication.
(testWebViewAuthenticationFailure): Test repeated authentication failures.
(testWebViewAuthenticationNoCredential): Test continue without
credentials.
(testWebViewAuthenticationStorage): Test credential storage.
(testWebViewAuthenticationSuccess): Test successful authentication.
(beforeAll): Added tests.
* UIProcess/API/gtk/webkit2.h: Added WebKitAuthenticationRequest and
WebKitCredential headers.

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

7 years agoElementRuleCollector: Use range-based for syntax in rule collection loop.
akling@apple.com [Fri, 9 Aug 2013 10:15:09 +0000 (10:15 +0000)]
ElementRuleCollector: Use range-based for syntax in rule collection loop.
<http://webkit.org/b/119617>
<rdar://problem/14695311>

Reviewed by Antti Koivisto.

* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::doCollectMatchingRulesForList):

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

7 years agoStyleRule*::properties() should return const references.
akling@apple.com [Fri, 9 Aug 2013 09:58:52 +0000 (09:58 +0000)]
StyleRule*::properties() should return const references.
<http://webkit.org/b/119596>

Reviewed by Antti Koivisto.

Source/WebCore:

Make StyleRule::properties() & friends return const-references instead of
pointers. This exposed some pointless null checking, since rules should
always have properties.

All rule objects that contain properties now require a StylePropertySet at
the time of construction instead having you call setProperties() later.

The only rules that could ever have null properties were the default-inserted
animation keyframe rules for 0% and 100% that we'd conjure up if the author
didn't provide them. Now they just have an empty property set instead.

* css/CSSFontFaceRule.cpp:
(WebCore::CSSFontFaceRule::cssText):
* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::addFontFaceRule):
* css/CSSPageRule.cpp:
(WebCore::CSSPageRule::cssText):
* css/CSSParser.cpp:
(WebCore::CSSParser::createFilterRule):
(WebCore::CSSParser::createStyleRule):
(WebCore::CSSParser::createFontFaceRule):
(WebCore::CSSParser::rewriteSpecifiers):
* css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::cssText):
* css/ElementRuleCollector.cpp:
(WebCore::leftToRightDeclaration):
(WebCore::rightToLeftDeclaration):
(WebCore::ElementRuleCollector::addElementStyleProperties):
(WebCore::ElementRuleCollector::doCollectMatchingRulesForList):
* css/PageRuleCollector.cpp:
(WebCore::PageRuleCollector::matchPageRulesForList):
* css/StylePropertySet.cpp:
(WebCore::MutableStylePropertySet::mergeAndOverrideOnConflict):
* css/StylePropertySet.h:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::MatchResult::addMatchedProperties):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::keyframeStylesForAnimation):
* css/StyleResolver.h:
* css/StyleRule.cpp:
(WebCore::StyleRule::StyleRule):
(WebCore::StyleRule::create):
(WebCore::StyleRulePage::StyleRulePage):
(WebCore::StyleRuleFontFace::StyleRuleFontFace):
(WebCore::StyleRuleViewport::StyleRuleViewport):
(WebCore::StyleRuleViewport::mutableProperties):
(WebCore::StyleRuleFilter::StyleRuleFilter):
* css/StyleRule.h:
(WebCore::StyleRule::create):
(WebCore::StyleRule::properties):
(WebCore::StyleRuleFontFace::create):
(WebCore::StyleRuleFontFace::properties):
(WebCore::StyleRulePage::create):
(WebCore::StyleRulePage::properties):
(WebCore::StyleRuleViewport::create):
(WebCore::StyleRuleViewport::properties):
(WebCore::StyleRuleFilter::create):
(WebCore::StyleRuleFilter::properties):
* css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::addSubresourceStyleURLs):
(WebCore::childRulesHaveFailedOrCanceledSubresources):
* css/WebKitCSSFilterRule.cpp:
(WebCore::WebKitCSSFilterRule::cssText):
* css/WebKitCSSKeyframeRule.cpp:
(WebCore::StyleKeyframe::StyleKeyframe):
(WebCore::StyleKeyframe::mutableProperties):
* css/WebKitCSSKeyframeRule.h:
(WebCore::StyleKeyframe::create):
(WebCore::StyleKeyframe::properties):
* css/WebKitCSSViewportRule.cpp:
(WebCore::WebKitCSSViewportRule::cssText):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::mergeStyleFromRules):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::revalidateStyle):
* page/PageSerializer.cpp:
(WebCore::PageSerializer::retrieveResourcesForRule):
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::SVGFontFaceElement):
(WebCore::SVGFontFaceElement::fontFamily):
(WebCore::SVGFontFaceElement::rebuildFontFace):

Source/WebKit/qt:

* Api/qwebelement.cpp:
(QWebElement::styleProperty):

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

7 years agoPDFPlugin is disabled by default in nightlies on Mac accidentally
timothy_horton@apple.com [Fri, 9 Aug 2013 09:12:44 +0000 (09:12 +0000)]
PDFPlugin is disabled by default in nightlies on Mac accidentally
https://bugs.webkit.org/show_bug.cgi?id=119615

Rubber-stamped by Andreas Kling.

Enable PDFPlugin by default on Mac at the WebKit2 level.

* Shared/WebPreferencesStore.h:
* UIProcess/API/C/WKPreferencesPrivate.h:

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

7 years ago[Qt] Fix build (broken by changeset r153826).
commit-queue@webkit.org [Fri, 9 Aug 2013 09:04:51 +0000 (09:04 +0000)]
[Qt] Fix build (broken by changeset r153826).
https://bugs.webkit.org/show_bug.cgi?id=119616

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-09
Reviewed by Andreas Kling.

* xml/parser/XMLDocumentParserQt.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):

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