WebKit.git
7 years ago[EFL][CMAKE] Compress resource files of inspector
commit-queue@webkit.org [Thu, 17 Jan 2013 18:37:54 +0000 (18:37 +0000)]
[EFL][CMAKE] Compress resource files of inspector
https://bugs.webkit.org/show_bug.cgi?id=106210

Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2013-01-17
Reviewed by Gyuyoung Kim.

Add compressing JavaScript
for smaller package and faster connection of remote web inspector.

* Source/PlatformEfl.cmake:

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

7 years agoRemove unnecessary public method TiledBackingStore::supportsAlpha()
commit-queue@webkit.org [Thu, 17 Jan 2013 18:36:18 +0000 (18:36 +0000)]
Remove unnecessary public method TiledBackingStore::supportsAlpha()
https://bugs.webkit.org/show_bug.cgi?id=107067

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-01-17
Reviewed by Kentaro Hara.

This patch removes unnecessary public method TiledBackingStore::supportsAlpha()
because supportsAlpha() is never called from other classes.

No new tests, no change in behavior.

* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::setSupportsAlpha):
* platform/graphics/TiledBackingStore.h:
(TiledBackingStore):

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

7 years ago[V8] Remove a --es5_readonly flag from V8 initialization and address duplicated code
commit-queue@webkit.org [Thu, 17 Jan 2013 18:34:43 +0000 (18:34 +0000)]
[V8] Remove a --es5_readonly flag from V8 initialization and address duplicated code
https://bugs.webkit.org/show_bug.cgi?id=106790

Patch by Peter Rybin <peter.rybin@gmail.com> on 2013-01-17
Reviewed by Kentaro Hara.

Couple of statements are moved to a newly created method. Old V8 flag setter is removed
according to FIXME and per V8 change http://code.google.com/p/v8/source/detail?r=12415

* bindings/v8/V8Initializer.cpp:
(WebCore::initializeV8Common): newly created method
(WebCore):
(WebCore::V8Initializer::initializeMainThreadIfNeeded):
(WebCore::V8Initializer::initializeWorker):

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

7 years agoFix texImage2D from a WebGL canvas.
commit-queue@webkit.org [Thu, 17 Jan 2013 18:33:13 +0000 (18:33 +0000)]
Fix texImage2D from a WebGL canvas.
https://bugs.webkit.org/show_bug.cgi?id=106941

Patch by John Bauman <jbauman@chromium.org> on 2013-01-17
Reviewed by Kenneth Russell.

Source/WebCore:

Clear the copied image whenever the canvas is modified, even if using
accelerated compositing.

Test: fast/canvas/webgl/tex-image-webgl.html

* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::markContextChanged):

LayoutTests:

Add test to ensure doing teximage2d from a webgl canvas works. This
test is the same as a webgl conformance test.

* fast/canvas/webgl/tex-image-webgl-expected.txt: Added.
* fast/canvas/webgl/tex-image-webgl.html: Added.

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

7 years ago[AC] Memory leak in GLXConfigSelector::createConfig()
commit-queue@webkit.org [Thu, 17 Jan 2013 18:29:47 +0000 (18:29 +0000)]
[AC] Memory leak in GLXConfigSelector::createConfig()
https://bugs.webkit.org/show_bug.cgi?id=106657

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2013-01-17
Reviewed by Laszlo Gombos.

Free the memory returned by glXGetVisualFromFBConfig() using
XFree to avoid a memory leak.

No new tests. No change in behavior.

* platform/graphics/surfaces/glx/GLXConfigSelector.h:
(WebCore::GLXConfigSelector::createConfig):

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

7 years agoUnreviewed, rolling out r139929.
jsbell@chromium.org [Thu, 17 Jan 2013 18:28:20 +0000 (18:28 +0000)]
Unreviewed, rolling out r139929.
http://trac.webkit.org/changeset/139929
https://bugs.webkit.org/show_bug.cgi?id=107141

Speculative fix didn't work (Requested by jsbell on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-17

* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::createIndex):

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

7 years ago[Chromium] Test expectations update after Skia shader changes
schenney@chromium.org [Thu, 17 Jan 2013 18:22:45 +0000 (18:22 +0000)]
[Chromium] Test expectations update after Skia shader changes

Unreviewed new GPU expectations

* platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png:
* platform/chromium-win/platform/chromium/virtual/gpu/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png:

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

7 years ago Don't use NSApplication run loop in NetworkProcess
ap@apple.com [Thu, 17 Jan 2013 18:08:56 +0000 (18:08 +0000)]
    Don't use NSApplication run loop in NetworkProcess
        https://bugs.webkit.org/show_bug.cgi?id=107061

        Reviewed by Anders Carlsson.

        Only WebProcess and PluginProcess should use Cocoa APIs that require the run loop.

        * PluginProcess/mac/PluginProcessMac.mm:
        (WebKit::PluginProcess::platformInitializePluginProcess):
        * WebProcess/mac/WebProcessMac.mm:
        (WebKit::WebProcess::platformInitializeProcess):

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

7 years ago[Chromium} Removing extraneous expectations
schenney@chromium.org [Thu, 17 Jan 2013 16:38:23 +0000 (16:38 +0000)]
[Chromium} Removing extraneous expectations

Unreviewed expectations clean-up

* platform/chromium/TestExpectations:

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

7 years agoFix vprintf_stderr_common() to compile with -Wshorten-64-to-32
ddkilzer@apple.com [Thu, 17 Jan 2013 16:37:17 +0000 (16:37 +0000)]
Fix vprintf_stderr_common() to compile with -Wshorten-64-to-32
<http://webkit.org/b/107126>

Reviewed by Darin Adler.

Fixes the following build error:

    Assertions.cpp:92:22: error: implicit conversion loses integer precision: 'CFIndex' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
            int length = CFStringGetMaximumSizeForEncoding(CFStringGetLength(str), kCFStringEncodingUTF8);
                ~~~~~~   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.

* wtf/Assertions.cpp:
(vprintf_stderr_common): Use CFIndex type instead of int for the
return value of CFStringGetMaximumSizeForEncoding().

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

7 years ago[Chromium] Final rebaselines after Skia flags changed
schenney@chromium.org [Thu, 17 Jan 2013 16:34:47 +0000 (16:34 +0000)]
[Chromium] Final rebaselines after Skia flags changed
https://bugs.webkit.org/show_bug.cgi?id=106833
https://bugs.webkit.org/show_bug.cgi?id=99138

Unreviewed test expectations update

* platform/chromium-linux/fast/borders/outline-alpha-inline-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/custom/foreign-object-skew-expected.png:
* platform/chromium/TestExpectations:

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

7 years agoWeb Inspector: fix DefaultTextEditor's broken backspace
pfeldman@chromium.org [Thu, 17 Jan 2013 16:15:33 +0000 (16:15 +0000)]
Web Inspector: fix DefaultTextEditor's broken backspace
https://bugs.webkit.org/show_bug.cgi?id=107130

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-17
Reviewed by Pavel Feldman.

Source/WebCore:

Remove css "position: relative;" style from "webkit-line-content" class, which
somehow brakes editing experience. Remove "height: 100%" from text-editor-overlay-highlight
class and cast necessary height via inserting "&nbsp;" into overlay span elements.

No new tests: no change in behaviour.

* inspector/front-end/DefaultTextEditor.js:
(WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
* inspector/front-end/textEditor.css:
(.text-editor-overlay-highlight):

LayoutTests:

Fix test expected results to correspond to changes.

* inspector/editor/text-editor-highlight-regexp-expected.txt:

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 17 Jan 2013 15:54:18 +0000 (15:54 +0000)]
Unreviewed GTK gardening.

Adjust and move expectations for tests in svg/ and tables/ as
necessary to cover current testing situation for both WebKit1 and WebKit2.

* platform/gtk-wk1/TestExpectations:
* platform/gtk-wk2/TestExpectations:
* platform/gtk/TestExpectations:

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

7 years agoWeb Inspector: Introduce FileSystemWorkspaceProvider to allow showing files from...
vsevik@chromium.org [Thu, 17 Jan 2013 12:39:55 +0000 (12:39 +0000)]
Web Inspector: Introduce FileSystemWorkspaceProvider to allow showing files from file system in workspace.
https://bugs.webkit.org/show_bug.cgi?id=107021

Reviewed by Pavel Feldman.

Source/WebCore:

Added FileSystemWorkspaceProvider that populates workspace with files
loaded from file systems registered in FileSystemMapping and listens
for FileSystemAdded / FileSystemRemoved events to update workspace.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/FileMapping.js:
(WebInspector.FileMapping.prototype.urlForURI):
(WebInspector.FileMapping.MappingEntry.prototype.urlForURI):
* inspector/front-end/FileSystemMapping.js:
(WebInspector.FileSystemMapping.prototype.uriForPath):
(WebInspector.FileSystemMapping.prototype.addEventListener):
(WebInspector.FileSystemMapping.prototype.removeEventListener):
(WebInspector.FileSystemMappingImpl):
(get WebInspector.FileSystemMappingImpl.prototype.uriForPath):
* inspector/front-end/FileSystemWorkspaceProvider.js: Added.
* inspector/front-end/IsolatedFileSystemModel.js:
(WebInspector.IsolatedFileSystemModel):
(WebInspector.IsolatedFileSystemModel.prototype._innerAddFileSystem):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/Workspace.js:
* inspector/front-end/externs.js:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
* inspector/front-end/navigatorView.css:
(.navigator-other-tree-item .icon):

LayoutTests:

* inspector/file-mapping-expected.txt:

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 17 Jan 2013 12:25:21 +0000 (12:25 +0000)]
Unreviewed GTK gardening.

Removing 4 crash expectations that are obsolete.

* platform/gtk/TestExpectations:

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

7 years agoWeb Inspector: add WebDeToolsAgentImpl as task observer on reattach
yurys@chromium.org [Thu, 17 Jan 2013 11:08:29 +0000 (11:08 +0000)]
Web Inspector: add WebDeToolsAgentImpl as task observer on reattach
https://bugs.webkit.org/show_bug.cgi?id=107106

Reviewed by Pavel Feldman.

Register WebDevToolsAgentImpl as task observer when it client is reattached.

* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::reattach):

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

7 years agoUnreviewed EFL gardening.
g.czajkowski@samsung.com [Thu, 17 Jan 2013 10:32:10 +0000 (10:32 +0000)]
Unreviewed EFL gardening.

Allow to run spellcheck-input-search-crash.html for WK2-EFL.
This test passes after r135595.
It's skipped by global platform/wk2/TestExpectations.

* platform/efl-wk2/TestExpectations:

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

7 years ago[Autotools] Unify WTF sources list regardless of the target OS, Unicode backend
zandobersek@gmail.com [Thu, 17 Jan 2013 10:04:45 +0000 (10:04 +0000)]
[Autotools] Unify WTF sources list regardless of the target OS, Unicode backend
https://bugs.webkit.org/show_bug.cgi?id=105886

Reviewed by Gustavo Noronha Silva.

Rather than including files in the sources list in an OS-specific way,
guard specific files with OS(UNIX|WINDOWS), USE((GLIB|ICU)_UNICODE) guards
and include all of them in the list.

Proper comments for namespace and #if guard closings are also added or adjusted
where necessary in the affected files.

* GNUmakefile.list.am:
* wtf/OSAllocatorPosix.cpp: Add OS(UNIX) guards.
* wtf/OSAllocatorWin.cpp: Add OS(WINDOWS) guards.
* wtf/ThreadSpecificWin.cpp: Ditto.
* wtf/ThreadingWin.cpp: Ditto.
* wtf/unicode/glib/UnicodeGLib.cpp: Add USE(GLIB_UNICODE) guards.
(WTF):
* wtf/unicode/glib/UnicodeGLib.h: Ditto.
(WTF):
* wtf/unicode/icu/CollatorICU.cpp: Style changes.
* wtf/unicode/icu/UnicodeIcu.h: Add USE(ICU_UNICODE) guards.
(WTF):
* wtf/win/OwnPtrWin.cpp: Add OS(WINDOWS) guards.

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

7 years ago[GTK][EFL] NWRT should check that Xvfb is installed
zandobersek@gmail.com [Thu, 17 Jan 2013 09:58:56 +0000 (09:58 +0000)]
[GTK][EFL] NWRT should check that Xvfb is installed
https://bugs.webkit.org/show_bug.cgi?id=71767

Reviewed by Dirk Pranke.

EFL and GTK ports now check that Xvfb is installed before running
layout tests. The command line used to check whether Xvfb is present
is a simple `which Xvfb` that should return 0 as the exit code upon
success.

* Scripts/webkitpy/layout_tests/port/efl.py:
(EflPort.show_results_html_file):
(EflPort):
(EflPort.check_sys_deps):
* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkPort.check_sys_deps):
* Scripts/webkitpy/layout_tests/port/xvfbdriver.py:
(XvfbDriver):
(XvfbDriver.check_xvfb):

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

7 years agoWeb Inspector: add createOption method to WebInspector.StatusBarComboBox
aandrey@chromium.org [Thu, 17 Jan 2013 09:07:04 +0000 (09:07 +0000)]
Web Inspector: add createOption method to WebInspector.StatusBarComboBox
https://bugs.webkit.org/show_bug.cgi?id=107102

Reviewed by Vsevolod Vlasov.

* inspector/front-end/CPUProfileView.js:
* inspector/front-end/ConsoleView.js:
(WebInspector.ConsoleView.prototype._addFrame):
(WebInspector.ConsoleView.prototype._appendContextOption):
* inspector/front-end/StatusBarButton.js:
(WebInspector.StatusBarButton.prototype.set state):
(WebInspector.StatusBarButton.prototype.set visible):
(WebInspector.StatusBarComboBox.prototype.createOption):

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

7 years ago[EFL][GTK] checkSpellingOfString treats the multiple words as spelled correctly
g.czajkowski@samsung.com [Thu, 17 Jan 2013 08:25:56 +0000 (08:25 +0000)]
[EFL][GTK] checkSpellingOfString treats the multiple words as spelled correctly
https://bugs.webkit.org/show_bug.cgi?id=106662

Reviewed by Antonio Gomes.

Source/WebCore:

No new tests, covered by spelling-backspace-between-lines.html.

TextCheckerEnchant::checkSpellingOfString() method, treats the multiple words
as spelled correctly if one of them is ok. For example, string such as
"OK zz OK" is spelled correctly!

The method at the beginning assumes that the given string is spelled correctly,
then it iterates over the words to find out the misspelled location and length
in the whole string. In checkSpellingOfWord, if the word is ok, we mark
it as spelled correctly and we do return to check the next words. In the fact,
the location and length of the previously misspelled words are overwritten.

* platform/text/enchant/TextCheckerEnchant.cpp:
(WebCore::TextCheckerEnchant::checkSpellingOfWord):
Update of the word's misspeling location and length was moved out the loop.

(WebCore::TextCheckerEnchant::checkSpellingOfString):
Stop checking the next words If the current word is misspelled, to do not overwrite
its misspelled location and length.

LayoutTests:

* platform/efl-wk2/TestExpectations:
Allow running spelling-backspace-between-lines.html for WebKit2-EFL as it's
skipped by platform/wk2/TestExpectations.

* platform/gtk/TestExpectations:
Unskipping spelling-backspace-between-lines.html for WebKit-GTK+.

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

7 years agoWebSpeech: implement voices list
cfleizach@apple.com [Thu, 17 Jan 2013 08:14:30 +0000 (08:14 +0000)]
WebSpeech: implement voices list
https://bugs.webkit.org/show_bug.cgi?id=107014

Reviewed by Adam Barth.

Source/WebCore:

Add in the Mac side code to return a list of voices.
Adds a layout test, which is skipped for now, until the feature is enabled.

Test: platform/mac/fast/speechsynthesis/speech-synthesis-voices.html

* Modules/speech/SpeechSynthesis.cpp:
(WebCore::SpeechSynthesis::SpeechSynthesis):
* Modules/speech/SpeechSynthesis.h:
(SpeechSynthesis):
* Modules/speech/mac/SpeechSynthesisMac.mm:
(WebCore::SpeechSynthesis::initializeVoiceList):

LayoutTests:

* platform/mac/TestExpectations:
* platform/mac/fast/speechsynthesis: Added.
* platform/mac/fast/speechsynthesis/speech-synthesis-voices-expected.txt: Added.
* platform/mac/fast/speechsynthesis/speech-synthesis-voices.html: Added.

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

7 years agosheriffbot can't tell me who "kov" is
commit-queue@webkit.org [Thu, 17 Jan 2013 07:35:54 +0000 (07:35 +0000)]
sheriffbot can't tell me who "kov" is
https://bugs.webkit.org/show_bug.cgi?id=106184

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-16
Reviewed by Eric Seidel.

Added glob style searching to the CommitterList contributors_by_search_string function so exact matches are favoured.

* Scripts/webkitpy/common/config/committers.py:
(Account.matches_glob):
(CommitterList.contributors_by_search_string):
* Scripts/webkitpy/common/config/committers_unittest.py:
(CommittersTest.test_committer_lookup):
* Scripts/webkitpy/tool/bot/irc_command.py:
(Whois):

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

7 years agoUpdate sandbox rules after r128003
ap@apple.com [Thu, 17 Jan 2013 07:35:40 +0000 (07:35 +0000)]
Update sandbox rules after r128003
https://bugs.webkit.org/show_bug.cgi?id=106840

Reviewed by Darin Adler.

* WebProcess/com.apple.WebProcess.sb.in: Additional Lion only fixes.

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

7 years agoUpdate GraphicsContext to support winding rule in clip operator for Core Graphics
commit-queue@webkit.org [Thu, 17 Jan 2013 07:23:17 +0000 (07:23 +0000)]
Update GraphicsContext to support winding rule in clip operator for Core Graphics
https://bugs.webkit.org/show_bug.cgi?id=106871

Patch by Rik Cabanier <cabanier@adobe.com> on 2013-01-16
Reviewed by Dirk Schulze.

Changed the interface to GraphicsContext so it's possible to pass the winding
rule to canvasClip() and clip().

No new tests, no change in functionality.

* WebCore.exp.in: Change signature of canvasClip function.
* platform/graphics/GraphicsContext.h: Change canvasClip and clip signature with default winding rule.
* platform/graphics/cairo/GraphicsContextCairo.cpp: Update interface with new signature so it still compiles.
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::canvasClip):
* platform/graphics/cg/GraphicsContextCG.cpp: Update interface with new signature and implement winding rules.
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::canvasClip):
* platform/graphics/openvg/GraphicsContextOpenVG.cpp: Update interface with new signature so it still compiles.
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::canvasClip):
* platform/graphics/qt/GraphicsContextQt.cpp: Update interface with new signature so it still compiles.
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::canvasClip):
* platform/graphics/skia/GraphicsContextSkia.cpp: Update interface with new signature so it still compiles.
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::canvasClip):
* platform/graphics/wince/GraphicsContextWinCE.cpp: Update interface with new signature so it still compiles.
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::canvasClip):
* platform/graphics/wx/GraphicsContextWx.cpp: Update interface with new signature so it still compiles.
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::canvasClip):

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Thu, 17 Jan 2013 07:20:23 +0000 (07:20 +0000)]
[Chromium] Unreviewed gardening.

Roll Chromium to 177350.

* DEPS:

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

7 years agoUse xcrun to find path to make for Mac port
ddkilzer@apple.com [Thu, 17 Jan 2013 05:31:46 +0000 (05:31 +0000)]
Use xcrun to find path to make for Mac port
<http://webkit.org/b/107091>

Reviewed by Dan Bernstein.

* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort._build_java_test_support): Call self.make_command().
(MacPort.make_command): Add.  Call xcrun_find().
(MacPort.nm_command): Use self.xcrun_find().
(MacPort.xcrun_find): Add.  Extract from nm_command().

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

7 years agoNoEventDispatchAssertion in ContainerNode::removeChildren is too strict
morrita@google.com [Thu, 17 Jan 2013 05:25:14 +0000 (05:25 +0000)]
NoEventDispatchAssertion in ContainerNode::removeChildren is too strict
https://bugs.webkit.org/show_bug.cgi?id=106985

Reviewed by Ryosuke Niwa.

Source/WebCore:

This change narrowed the lifetime of NoEventDispatchAssertion in removeChildren().
It is as safe as other mutation method even after this change: childrenChanged() and
ChildNodeRemovalNotifier are used outside the assertion scope.

Test: svg/custom/use-mutation-crash.xhtml

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::removeChildren):

LayoutTests:

* svg/custom/use-mutation-crash-expected.txt: Added.
* svg/custom/use-mutation-crash.xhtml: Added.

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

7 years agoFix build break for Android webview.
commit-queue@webkit.org [Thu, 17 Jan 2013 05:16:27 +0000 (05:16 +0000)]
Fix build break for Android webview.
https://bugs.webkit.org/show_bug.cgi?id=107072

Patch by Kristian Monsen <kristianm@google.com> on 2013-01-16
Reviewed by Steve Block.

Add extra guards when checking for OS=="Android" to make sure it is not included
for webview.

* WebKitUnitTests.gyp:

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

7 years ago[Refactoring] HTMLTextFormControlElement should use shadowHost instead of shadowAnces...
shinyak@chromium.org [Thu, 17 Jan 2013 05:13:00 +0000 (05:13 +0000)]
[Refactoring] HTMLTextFormControlElement should use shadowHost instead of shadowAncestorNode
https://bugs.webkit.org/show_bug.cgi?id=106533

Reviewed by Kent Tamura.

Since Node::shadowAncestorNode() is deprecated, we would like to use Node::shadowHost().

No new tests, simple refactoring.

* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::setSelectionRange): Here, startPosition and endPosition is in ShadowDOM,
converting shadowAncestorNode to shadowHost is safe.
(WebCore::enclosingTextFormControl): Actually ASSERT in this method is wrong since shadowAncestorNode() does not
return NULL. This should be shadowHost().

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

7 years agoMake debug-safari --target-web-process work again
weinig@apple.com [Thu, 17 Jan 2013 04:58:13 +0000 (04:58 +0000)]
Make debug-safari --target-web-process work again
https://bugs.webkit.org/show_bug.cgi?id=107088

Reviewed by Anders Carlsson.

Source/WebKit2:

--target-web-process was made harder to use during recent refactoring
by requiring users to pass a -ui-process-name parameter in addition to
the -client-executable. Instead, we should conjure up that name from
the information we already have at our disposal.

* WebProcess/mac/WebProcessMainMac.mm:
(WebKit::WebProcessMainDelegate::getConnectionIdentifier):
Simplify by making the non-client-executable path use the base
class implementation.

(WebKit::WebProcessMainDelegate::getClientIdentifier):
Ditto.

(WebKit::WebProcessMainDelegate::getClientProcessName):
Added. Create a client process name (its actually not too important what it is, as it
is only used to show a name in Activity Monitor) from the passed in client executable
path.

Tools:

* Scripts/webkitdirs.pm:
(execMacWebKitAppForDebugging):
The shim is now called SecItemShim.

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

7 years agoFix crashes on the bots.
weinig@apple.com [Thu, 17 Jan 2013 04:52:26 +0000 (04:52 +0000)]
Fix crashes on the bots.

The WebKit LoaderStrategy for loading synchronously was only implemented
for the case where you have a network process. When you don't, we should
be using the base implementation.

* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::loadResourceSynchronously):

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

7 years agoDisable an ASSERT for the threaded parser
tonyg@chromium.org [Thu, 17 Jan 2013 04:35:43 +0000 (04:35 +0000)]
Disable an ASSERT for the threaded parser
https://bugs.webkit.org/show_bug.cgi?id=107087

Reviewed by Adam Barth.

Since tokenizing happens on the background thread, when the tree builder runs there isn't a valid tokenizer for which to check the state.
The background parser has minimal code to update its tokenizer's state properly.

No new tests because covered by existing fast/parser tests.

* html/parser/HTMLParserOptions.cpp:
(WebCore::HTMLParserOptions::HTMLParserOptions):
* html/parser/HTMLParserOptions.h:
(HTMLParserOptions):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processEndTag):

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

7 years agoAttr.ownerDocument should change if its parent's owner did
morrita@google.com [Thu, 17 Jan 2013 04:22:41 +0000 (04:22 +0000)]
Attr.ownerDocument should change if its parent's owner did
https://bugs.webkit.org/show_bug.cgi?id=97644

Reviewed by Darin Adler.

Source/WebCore:

moveTreeToNewScope() didn't traverse its Attr instances. But it should.

Test: fast/dom/Attr/parent-adopt-node.html

* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::getExistingAttrs):
(WebCore):
* dom/ElementAttributeData.h:
(ElementAttributeData):
* dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):

LayoutTests:

* fast/dom/Attr/parent-adopt-node-expected.txt: Added.
* fast/dom/Attr/parent-adopt-node.html: Added.

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

7 years agoGCE build scripts don't take working directory into account when calling findzone.sh
commit-queue@webkit.org [Thu, 17 Jan 2013 04:00:01 +0000 (04:00 +0000)]
GCE build scripts don't take working directory into account when calling findzone.sh
https://bugs.webkit.org/show_bug.cgi?id=106962

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-16
Reviewed by Adam Barth.

* EWSTools/GoogleComputeEngine/build-chromium-ews.sh:
* EWSTools/GoogleComputeEngine/build-commit-queue.sh:
* EWSTools/GoogleComputeEngine/build-feeder-style-sheriffbot.sh:

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

7 years ago[Chromium] Unreviewed gardening.
dominicc@chromium.org [Thu, 17 Jan 2013 03:59:37 +0000 (03:59 +0000)]
[Chromium] Unreviewed gardening.

Roll Chromium to 177310.

* DEPS:

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

7 years ago[BlackBerry] Need to adjust the scale and scroll position after leaving fullscreen...
charles.wei@torchmobile.com.cn [Thu, 17 Jan 2013 03:52:52 +0000 (03:52 +0000)]
[BlackBerry] Need to adjust the scale and scroll position after leaving fullscreen mode if there's
device rotation in fullscreen mode
https://bugs.webkit.org/show_bug.cgi?id=107085

Reviewed by George STaikos.
Also internally reviewed by Jacky Jiang.

We saved the scale and scroll position before entering full screen mode, so that we can restore
them after leaving fullscreen mode, because entering fullscreen mode automatically changes the
       scale to make the video to fit to the viewport. But if there's device rotation during the fullscreen,
       the scale and scroll position saved before may or may not apply anymore, we need to adjust the
       scale and/or scroll position if needed to make sure no over-scale or over-scroll in the new orientation.

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

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

7 years agoAddress tonyg's feedback on BackgroundHTMLParser
abarth@webkit.org [Thu, 17 Jan 2013 03:42:09 +0000 (03:42 +0000)]
Address tonyg's feedback on BackgroundHTMLParser
https://bugs.webkit.org/show_bug.cgi?id=107086

Reviewed by Tony Gentilcore.

As requested in https://bugs.webkit.org/show_bug.cgi?id=107083#c5

* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(TokenDelivery):
(WebCore::TokenDelivery::TokenDelivery):
(WebCore::TokenDelivery::execute):

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

7 years agoIntroduce a method to build the tree from a CompactHTMLToken
tonyg@chromium.org [Thu, 17 Jan 2013 03:36:48 +0000 (03:36 +0000)]
Introduce a method to build the tree from a CompactHTMLToken
https://bugs.webkit.org/show_bug.cgi?id=107082

Reviewed by Adam Barth.

No new tests because covered by existing fast/parser tests.

* html/parser/HTMLDocumentParser.cpp:
(WebCore):
(WebCore::HTMLDocumentParser::constructTreeFromCompactHTMLToken):
* html/parser/HTMLDocumentParser.h:
* html/parser/HTMLToken.h:
(AtomicHTMLToken):
(WebCore::AtomicHTMLToken::create):
(WebCore::AtomicHTMLToken::AtomicHTMLToken):
* xml/parser/MarkupTokenBase.h:
(WebCore::AtomicMarkupTokenBase::AtomicMarkupTokenBase):
(AtomicMarkupTokenBase):

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

7 years agoUnreviewed build fix following r139918.
roger_fong@apple.com [Thu, 17 Jan 2013 03:25:53 +0000 (03:25 +0000)]
Unreviewed build fix following r139918.
Add speech synthesis to include path and WebCore vcproj file.

* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcproj/WebCoreCommon.vsprops:

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

7 years agoSwitch AudioDestinationChromium over to new createAudioDevice() method
crogers@google.com [Thu, 17 Jan 2013 03:08:52 +0000 (03:08 +0000)]
Switch AudioDestinationChromium over to new createAudioDevice() method
https://bugs.webkit.org/show_bug.cgi?id=106816

Reviewed by James Robinson.

* platform/audio/chromium/AudioDestinationChromium.cpp:
(WebCore::AudioDestinationChromium::AudioDestinationChromium):

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

7 years agoIntroduce BackgroundHTMLParser for parsing HTML on a background thread
abarth@webkit.org [Thu, 17 Jan 2013 02:55:35 +0000 (02:55 +0000)]
Introduce BackgroundHTMLParser for parsing HTML on a background thread
https://bugs.webkit.org/show_bug.cgi?id=107083

Reviewed by Eric Seidel.

This patch contains a basic version of an HTML parser that runs on a
background thread. The parser passes the majority of the tests in
fast/parser and a large number of the subtests in html5lib.

Notably absent from this early version of the parser is speculation
(which will eventually replace preload scanning) and atomization (which
we suspect will be important for performance). Our plan is to introduce
those elements in subsequent patches.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* html/parser/BackgroundHTMLParser.cpp: Added.
(WebCore):
(WebCore::checkThatTokensAreSafeToSendToAnotherThread):
(WebCore::parserMap):
(WebCore::ParserMap::backgroundParsers):
(WebCore::ParserMap::mainThreadParsers):
(WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
(WebCore::BackgroundHTMLParser::append):
(WebCore::BackgroundHTMLParser::continueParsing):
(WebCore::BackgroundHTMLParser::finish):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(TokenDelivery):
(WebCore::TokenDelivery::execute):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):
(WebCore::BackgroundHTMLParser::createPartial):
(WebCore::BackgroundHTMLParser::stopPartial):
(WebCore::BackgroundHTMLParser::appendPartial):
(WebCore::BackgroundHTMLParser::continuePartial):
(WebCore::BackgroundHTMLParser::finishPartial):
* html/parser/BackgroundHTMLParser.h: Added.
(WebCore):
(BackgroundHTMLParser):
(WebCore::BackgroundHTMLParser::create):
(ParserMap):
(WebCore::ParserMap::identifierForParser):
* html/parser/HTMLDocumentParser.cpp:
(WebCore):
(WebCore::HTMLDocumentParser::didReceiveTokensFromBackgroundParser):
* html/parser/HTMLDocumentParser.h:
(WebCore):
(HTMLDocumentParser):

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

7 years agoDFG 32_64 backend doesn't check for hasArrayStorage() in NewArrayWithSize
fpizlo@apple.com [Thu, 17 Jan 2013 02:32:37 +0000 (02:32 +0000)]
DFG 32_64 backend doesn't check for hasArrayStorage() in NewArrayWithSize
https://bugs.webkit.org/show_bug.cgi?id=107081

Reviewed by Michael Saboff.

This bug led to the 32_64 backend emitting contiguous allocation code to allocate
ArrayStorage arrays. This then led to all manner of heap corruption, since
subsequent array accesses would be accessing the contiguous array "as if" it was
an arraystorage array.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

7 years agoUpdate Owners file.
weinig@apple.com [Thu, 17 Jan 2013 02:26:29 +0000 (02:26 +0000)]
Update Owners file.

* Owners:

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

7 years agoRemove unused AddLoadInProgress message
weinig@apple.com [Thu, 17 Jan 2013 02:25:44 +0000 (02:25 +0000)]
Remove unused AddLoadInProgress message
https://bugs.webkit.org/show_bug.cgi?id=107077

Reviewed by Dan Bernstein.

Dead code is dead.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkConnectionToWebProcess.messages.in:

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

7 years ago[soup] Fix build warning in ResourceHandleSoup.cpp
commit-queue@webkit.org [Thu, 17 Jan 2013 02:20:23 +0000 (02:20 +0000)]
[soup] Fix build warning in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=107063

Patch by Donghyun Kim <dhkim715@hotmail.com> on 2013-01-16
Reviewed by Martin Robinson.

The restartedCallback has unused parameter 'message',
remove the parameter name to fix 'unused parameter' build warning.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::restartedCallback):

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

7 years agoIntroduce a CompactHTMLToken for the threaded HTML parser
tonyg@chromium.org [Thu, 17 Jan 2013 02:18:20 +0000 (02:18 +0000)]
Introduce a CompactHTMLToken for the threaded HTML parser
https://bugs.webkit.org/show_bug.cgi?id=107069

Reviewed by Adam Barth.

This class is used for transporting tokens from the parser thread to the main thread where they are fed to the tree builder.

No new tests because covered by existing fast/parser tests.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* html/parser/CompactHTMLToken.cpp: Added.
(WebCore):
(WebCore::CompactHTMLToken::CompactHTMLToken):
(WebCore::isStringSafeToSendToAnotherThread):
(WebCore::CompactHTMLToken::isSafeToSendToAnotherThread):
* html/parser/CompactHTMLToken.h: Added.
(WebCore):
(CompactAttribute):
(WebCore::CompactAttribute::CompactAttribute):
(WebCore::CompactAttribute::name):
(WebCore::CompactAttribute::value):
(CompactHTMLToken):
(WebCore::CompactHTMLToken::type):
(WebCore::CompactHTMLToken::data):
(WebCore::CompactHTMLToken::selfClosing):
(WebCore::CompactHTMLToken::attributes):
(WebCore::CompactHTMLToken::publicIdentifier):
(WebCore::CompactHTMLToken::systemIdentifier):
* xml/parser/MarkupTokenBase.h:
(WebCore::MarkupTokenBase::data):
(MarkupTokenBase):

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

7 years agoIntroduce HTMLParserThread to be able to parse on a background thread
abarth@webkit.org [Thu, 17 Jan 2013 02:05:33 +0000 (02:05 +0000)]
Introduce HTMLParserThread to be able to parse on a background thread
https://bugs.webkit.org/show_bug.cgi?id=107071

Reviewed by Tony Gentilcore.

This patch introduces a simple thread class that we can use to parse
HTML. This patch is unlikely to be the final design because we'll
likely want to use libdispatch or some other platform-specific thread
pool. However, this implementation is enough to let us work on the
parser-specific aspects of this feature.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* html/parser/HTMLParserThread.cpp: Added.
(WebCore):
(WebCore::HTMLParserThread::HTMLParserThread):
(WebCore::HTMLParserThread::~HTMLParserThread):
(WebCore::HTMLParserThread::start):
(WebCore::HTMLParserThread::stop):
(WebCore::HTMLParserThread::shared):
(WebCore::HTMLParserThread::postTask):
(WebCore::HTMLParserThread::threadStart):
(WebCore::HTMLParserThread::runLoop):
* html/parser/HTMLParserThread.h: Added.
(WebCore):
(HTMLParserThread):
(WebCore::HTMLParserThread::create):
(WebCore::HTMLParserThread::threadId):

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

7 years agoFix crash when destroying a plug-in with pending URL requests
andersca@apple.com [Thu, 17 Jan 2013 01:57:52 +0000 (01:57 +0000)]
Fix crash when destroying a plug-in with pending URL requests
https://bugs.webkit.org/show_bug.cgi?id=107075
<rdar://problem/12513871>

Reviewed by Sam Weinig.

In PluginView::destroyPluginAndReset, make sure to cancel any outstanding URL requests since the PluginView
object will stay around and would otherwise start loading URLs from stopped plug-ins.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::Stream::start):
Assert that the plug-in is alive.

(WebKit::PluginView::destroyPluginAndReset):
Empty out the pending URL requests vector and stop the timer.

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

7 years agoWebCore::ScriptRunner::timerFired() is reported to crash.
morrita@google.com [Thu, 17 Jan 2013 01:38:20 +0000 (01:38 +0000)]
WebCore::ScriptRunner::timerFired() is reported to crash.
https://bugs.webkit.org/show_bug.cgi?id=92211

Reviewed by Darin Adler.

This is a speculative fix to address some crash reports.
Here is my rough guess.

The crash report says there is a PendingScript instance whose m_element is null.
- It happens only if the instance is created through the default constructor,
- that could happen if m_pendingAsyncScripts doesn't contains matched PendingScript in ScriptRunner::notifyScriptReady(),
- that could happen when notifyScriptReady() is called more than once.
- It turns out that the call site, ScriptElement::notifyFinished(), could be called multiple times since
  it doesn't remove itself from the CachedResource, which is done separately in ScriptElement::execute().
- So if notifyFinished() is called before execute(), it could happen

This change added a guard to prevent notifyFinished() from being invoked multiple times.
We should watch if these crash reports disappear.

No new tests. I couldn't create any repro for this.

* dom/ScriptElement.cpp:
(WebCore::ScriptElement::notifyFinished):

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

7 years agoFix mac build system warnings introduced by r139866
commit-queue@webkit.org [Thu, 17 Jan 2013 01:36:09 +0000 (01:36 +0000)]
Fix mac build system warnings introduced by r139866
https://bugs.webkit.org/show_bug.cgi?id=107056

Patch by Pablo Flouret <pablof@motorola.com> on 2013-01-16
Reviewed by Benjamin Poulain.

warning: no rule to process file '$(PROJECT_DIR)/css/CSSSupportsRule.h' of type sourcecode.c.h for architecture x86_64
warning: no rule to process file '$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSCSSSupportsRule.h' of type sourcecode.c.h for architecture x86_64

{JS,}CSSSupportsRule.h somehow ended up marked as sources in the XCode
project.

No new tests. Build warning fix.

* WebCore.xcodeproj/project.pbxproj:

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

7 years agoMerge RenderObjectChildList::appendChildNode and insertChildNode
esprehn@chromium.org [Thu, 17 Jan 2013 01:32:09 +0000 (01:32 +0000)]
Merge RenderObjectChildList::appendChildNode and insertChildNode
https://bugs.webkit.org/show_bug.cgi?id=106392

Reviewed by Eric Seidel.

insertChildNode and appendChildNode are nearly identical methods and
we can combine them into insertChildNode and handle cases where the
renderer to insert before is null as if it was an append.

No new tests, just refactoring.

* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::insertChildNode):
* rendering/RenderObjectChildList.h:
(RenderObjectChildList):
(WebCore::RenderObjectChildList::appendChildNode):
    Now inline and delegates to insertChildNode.

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

7 years agoCursor stops blinking after clicking on scrollbar
esprehn@chromium.org [Thu, 17 Jan 2013 01:21:20 +0000 (01:21 +0000)]
Cursor stops blinking after clicking on scrollbar
https://bugs.webkit.org/show_bug.cgi?id=106470

Reviewed by Ojan Vafai.

Restore the caret blinking when doing a mouseup on a
scrollbar so scrolling a textarea doesn't cause the
caret to freeze.

No new tests, there doesn't seem to be any way to test
cursor blinking.

* page/EventHandler.cpp:
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::handleMouseDoubleClickEvent):

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

7 years agoTeach HTMLParserOptions about Settings::threadedHTMLParser
abarth@webkit.org [Thu, 17 Jan 2013 01:18:26 +0000 (01:18 +0000)]
Teach HTMLParserOptions about Settings::threadedHTMLParser
https://bugs.webkit.org/show_bug.cgi?id=107068

Reviewed by Tony Gentilcore.

We use this option to enable the threaded HTML parser at runtime.

* html/parser/HTMLParserOptions.cpp:
(WebCore::HTMLParserOptions::HTMLParserOptions):
* html/parser/HTMLParserOptions.h:
(HTMLParserOptions):

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

7 years ago[EFL][WK2] PageUIClientEfl should keep in sync with WKPageUIClient
commit-queue@webkit.org [Thu, 17 Jan 2013 01:11:15 +0000 (01:11 +0000)]
[EFL][WK2] PageUIClientEfl should keep in sync with WKPageUIClient
https://bugs.webkit.org/show_bug.cgi?id=107060

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2013-01-16
Reviewed by Benjamin Poulain.

Rearrange the order of functions in PageUIClientEfl.
Rename closePage() to close().

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::close):
* UIProcess/API/efl/EwkViewImpl.h:
(EwkViewImpl):
* UIProcess/efl/PageUIClientEfl.cpp:
(WebKit::PageUIClientEfl::PageUIClientEfl):
(WebKit::PageUIClientEfl::close):
(WebKit::PageUIClientEfl::takeFocus):
(WebKit::PageUIClientEfl::focus):
(WebKit::PageUIClientEfl::unfocus):
(WebKit::PageUIClientEfl::getWindowFrame):
(WebKit::PageUIClientEfl::setWindowFrame):
(WebKit::PageUIClientEfl::createNewPage):
(WebKit::PageUIClientEfl::showColorPicker):
(WebKit::PageUIClientEfl::hideColorPicker):
* UIProcess/efl/PageUIClientEfl.h:
(PageUIClientEfl):

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

7 years agostart-queue.sh does not pass remaining parameters correctly
commit-queue@webkit.org [Thu, 17 Jan 2013 00:48:14 +0000 (00:48 +0000)]
start-queue.sh does not pass remaining parameters correctly
https://bugs.webkit.org/show_bug.cgi?id=107054

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-16
Reviewed by Adam Barth.

start-queue.sh now passes all remaining params to the webkit-patch command.
Previously only one additional queue parameter could be sent.

* EWSTools/start-queue.sh:

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

7 years agoSynchronous XMLHTTPRequests need to go to the NetworkProcess.
beidson@apple.com [Thu, 17 Jan 2013 00:45:30 +0000 (00:45 +0000)]
Synchronous XMLHTTPRequests need to go to the NetworkProcess.
<rdar://problem/12951765> and https://bugs.webkit.org/show_bug.cgi?id=106826

Reviewed by Sam Weinig and Alexey Proskuryakov.

Source/WebCore:

No new tests (No changes to any config that is currently tested)

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadResourceSynchronously): Consult the LoaderStrategy when strategies are
  being used.

* loader/LoaderStrategy.cpp:
(WebCore::LoaderStrategy::loadResourceSynchronously): Defaults to using ResourceHandle directly.
* loader/LoaderStrategy.h:

Break out the StoredCredentials enum to a new header:
* platform/network/ResourceHandle.h:
* platform/network/ResourceHandleTypes.h:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::loadResourceSynchronously): Entry point for WebCore to get
  synchronous requests to the NetworkProcess.
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::performSynchronousLoad): Create a SyncNetworkResourceLoader
  and schedule it.
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkConnectionToWebProcess.messages.in:

* NetworkProcess/NetworkResourceLoadScheduler.cpp:
(WebKit::NetworkResourceLoadScheduler::scheduleSyncNetworkResourceLoader):
(WebKit::NetworkResourceLoadScheduler::servePendingRequestsForHost): Serve synchronous loaders
  before async loaders.
* NetworkProcess/NetworkResourceLoadScheduler.h:

A class that encapsulates a synchronous load request and the CoreIPC reply to be made once it is complete:
* NetworkProcess/SyncNetworkResourceLoader.cpp: Added.
(WebKit::SyncNetworkResourceLoader::SyncNetworkResourceLoader):
(WebKit::SyncNetworkResourceLoader::start):
* NetworkProcess/SyncNetworkResourceLoader.h: Copied from Source/WebKit2/NetworkProcess/HostRecord.h.
(WebKit::SyncNetworkResourceLoader::create):
(WebKit::SyncNetworkResourceLoader::setIdentifier):
(WebKit::SyncNetworkResourceLoader::identifier):
(WebKit::SyncNetworkResourceLoader::loadParameters):

Add a second queue of sync loaders:
* NetworkProcess/HostRecord.h:
(WebKit::HostRecord::syncLoadersPending):

Add comments to explicitly spell out the current reliance on some messages that are currently synchronous:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::willSendRequest):
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpace):

* WebKit2.xcodeproj/project.pbxproj:

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

7 years agoExplicitly set msvs_cygwin_shell to true for bison rule
commit-queue@webkit.org [Thu, 17 Jan 2013 00:37:39 +0000 (00:37 +0000)]
Explicitly set msvs_cygwin_shell to true for bison rule
https://bugs.webkit.org/show_bug.cgi?id=107058

Patch by Robert Iannucci <iannucci@chromium.org> on 2013-01-16
Reviewed by Tony Chang.

Currently, msvs_cygwin_shell is set to 1 by default. This patch
explicitly sets it on the actions which will break if msvs_cygwin_shell
were set to 0. This is in preparation for changing the default value of
msvs_cygwin_shell, which in turn is in preparation of the removal of
cygwin as a buld-system requirement.

Since this change will have no semantic effect, no new tests are
required.

A previous instance of this bug is here:
https://bugs.webkit.org/show_bug.cgi?id=106706

* WebCore.gyp/WebCore.gyp:

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

7 years agoFix the warning for the exported Objective-C binding of DOMCSSSupportsRule
benjamin@webkit.org [Thu, 17 Jan 2013 00:05:53 +0000 (00:05 +0000)]
Fix the warning for the exported Objective-C binding of DOMCSSSupportsRule

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-01-16
Rubber-stamped by Simon Fraser.

* WebCore.exp.in: r139866 exported the Objective-C class DOMCSSSupportsRule
without #ifdefing the symbol between its feature flag.

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

7 years agoCues not rendered when they should be
commit-queue@webkit.org [Wed, 16 Jan 2013 23:57:50 +0000 (23:57 +0000)]
Cues not rendered when they should be
https://bugs.webkit.org/show_bug.cgi?id=106943

Patch by Victor Carbune <vcarbune@chromium.org> on 2013-01-16
Reviewed by Eric Carlson.

Source/WebCore:

Forced rendering update, even if the active set of cues didn't change.

Test: media/track/track-cue-rendering-mode-changed.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::updateActiveTextTrackCues): If exiting early,
update the cues rendered by the text track container.
(WebCore::HTMLMediaElement::textTrackModeChanged): Trigger update of the
re-checking the active cues and render the ones not yet on screen.

LayoutTests:

* media/track/track-cue-rendering-mode-changed-expected.txt: Added.
* media/track/track-cue-rendering-mode-changed.html: Added.
* media/video-controls-captions-expected.txt: Updated.

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

7 years ago WebProcess should not access ~/Library/Caches/com.apple.WebProcess
ap@apple.com [Wed, 16 Jan 2013 23:23:57 +0000 (23:23 +0000)]
    WebProcess should not access ~/Library/Caches/com.apple.WebProcess
        https://bugs.webkit.org/show_bug.cgi?id=107055

        Reviewed by Anders Carlsson.

        * WebProcess/com.apple.WebProcess.sb.in: Remove the rule allowing access.

        * WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::platformInitializeWebProcess):
        Use a correct cache directory even if NetworkProcess is in use. Not all loading has
        moved to this process yet.

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

7 years agoForce a rebuild of RenderObject
benjamin@webkit.org [Wed, 16 Jan 2013 23:15:35 +0000 (23:15 +0000)]
Force a rebuild of RenderObject

Unreviewed. One bot is using old object file. Change RenderObject.cpp to force it
to build the file again.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-01-16

* rendering/RenderObject.cpp:
(WebCore::addLayers):
(WebCore::RenderObject::findNextLayer):

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

7 years agoIndexedDB: Possible null ScriptExecutionContext passed to callbacks during frame...
jsbell@chromium.org [Wed, 16 Jan 2013 23:11:07 +0000 (23:11 +0000)]
IndexedDB: Possible null ScriptExecutionContext passed to callbacks during frame destruction
https://bugs.webkit.org/show_bug.cgi?id=107050

Reviewed by Tony Chang.

Temporary code to defend against null contexts. Will either refute a hypothesis, or we'll
need to make a more systemic fix elsewhere. Either way it will be removed in a few days.
We're unable to repro, but watching crash reports from users. One possible source is
that during page tear-down WorkerScriptController::controllerForContext() returns null
(there's a comment about that case) leading to a null context.

No new tests - this shouldn't be happening.

* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::createIndex):

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

7 years agoSimplify validation and data copying in WebGLBuffer
kbr@google.com [Wed, 16 Jan 2013 23:08:53 +0000 (23:08 +0000)]
Simplify validation and data copying in WebGLBuffer
https://bugs.webkit.org/show_bug.cgi?id=106975

Reviewed by Dean Jackson.

Re-landing after testing locally; was not able to reproduce the
crash seen once with the earlier patch.

No new tests; covered by existing tests. Ran WebGL layout tests and conformance tests.

* html/canvas/WebGLBuffer.cpp:
(WebCore::WebGLBuffer::associateBufferDataImpl):
    Take (void*, int) pair instead of ArrayBuffer and offset. Simplifies code significantly.
(WebCore::WebGLBuffer::associateBufferData):
    Pass down base pointers and sizes rather than ArrayBuffer and optional offset.
(WebCore::WebGLBuffer::associateBufferSubDataImpl):
    Take (void*, int) pair instead of ArrayBuffer and offset. Simplifies code significantly.
(WebCore::WebGLBuffer::associateBufferSubData):
    Pass down base pointers and sizes rather than ArrayBuffer and optional offset.
* html/canvas/WebGLBuffer.h:
(WebGLBuffer):
    Change signatures of associateBufferDataImpl and associateBufferSubDataImpl.

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

7 years agoFix a crash when printing console messages to STDOUT.
timothy@apple.com [Wed, 16 Jan 2013 22:52:45 +0000 (22:52 +0000)]
Fix a crash when printing console messages to STDOUT.

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

Reviewed by Joseph Pecoraro.

* page/Console.cpp:
(WebCore::internalAddMessage): Don't release the RefPtr early. Also log the line number
and convert non-string arguments to strings when printing them.

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

7 years agoAdd missing sys/mman.h include on Mac
commit-queue@webkit.org [Wed, 16 Jan 2013 22:39:46 +0000 (22:39 +0000)]
Add missing sys/mman.h include on Mac
https://bugs.webkit.org/show_bug.cgi?id=98089

Patch by Jonathan Liu <net147@gmail.com> on 2013-01-16
Reviewed by Darin Adler.

The madvise function and MADV_FREE constant require sys/mman.h.

* jit/ExecutableAllocatorFixedVMPool.cpp:

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

7 years ago[BlackBerry] Remove bogus assert in GeolocationClientBlackBerry
commit-queue@webkit.org [Wed, 16 Jan 2013 22:31:18 +0000 (22:31 +0000)]
[BlackBerry] Remove bogus assert in GeolocationClientBlackBerry
https://bugs.webkit.org/show_bug.cgi?id=105651

Patch by Joe Mason <jmason@rim.com> on 2013-01-16
Reviewed by Darin Adler.

GeolocationClientBlackBerry::cancelPermissionRequest contains an ASSERT that the origin is
in m_geolocationRequestMap. But it's perfectly valid for the origin to not be in the map -
for instance, if GeolocationClientBlackBerry::requestPermission returned immediately,
without putting it in the map, because geolocation was disabled. In this case the correct
thing to do is just return - there is nothing to be done to cancel the permission.

* WebCoreSupport/GeolocationClientBlackBerry.cpp:
(GeolocationClientBlackBerry::cancelPermissionRequest):

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

7 years agocheck-webkit-style script cannot running in Chinese windows.
commit-queue@webkit.org [Wed, 16 Jan 2013 22:08:02 +0000 (22:08 +0000)]
check-webkit-style script cannot running in Chinese windows.
https://bugs.webkit.org/show_bug.cgi?id=87548

Patch by Xueqing Huang <huangxueqing@baidu.com> on 2013-01-16
Reviewed by Darin Adler.

* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo._win_version_tuple_from_cmd):

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

7 years agoUnreviewed, rolling out r139914.
kbr@google.com [Wed, 16 Jan 2013 22:05:46 +0000 (22:05 +0000)]
Unreviewed, rolling out r139914.
http://trac.webkit.org/changeset/139914
https://bugs.webkit.org/show_bug.cgi?id=106975

Caused crashes in compositing/visibility/visibility-simple-
webgl-layer.html

* html/canvas/WebGLBuffer.cpp:
(WebCore::WebGLBuffer::associateBufferDataImpl):
(WebCore::WebGLBuffer::associateBufferData):
(WebCore::WebGLBuffer::associateBufferSubDataImpl):
(WebCore::WebGLBuffer::associateBufferSubData):
* html/canvas/WebGLBuffer.h:
(WebGLBuffer):

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

7 years agoMonitor usage of unprefixed and prefixed DOM events for CSS Transitions.
alexis@webkit.org [Wed, 16 Jan 2013 21:58:45 +0000 (21:58 +0000)]
Monitor usage of unprefixed and prefixed DOM events for CSS Transitions.
https://bugs.webkit.org/show_bug.cgi?id=107004

Reviewed by Adam Barth.

Monitor the usage of transitionEnd events as well as
webkitTransitionEnd events so we can know in the future how much the
prefixed version is used to remove it becomes irrelevant.

No new tests : no behavior changes, we're just adding monitoring.

* dom/EventTarget.cpp:
(WebCore):
(WebCore::EventTarget::fireEventListeners):
* page/FeatureObserver.h:

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

7 years agoUse GCC's implementation of atomicIncrement/Decrement on Mac
benjamin@webkit.org [Wed, 16 Jan 2013 21:52:08 +0000 (21:52 +0000)]
Use GCC's implementation of atomicIncrement/Decrement on Mac
https://bugs.webkit.org/show_bug.cgi?id=106976

Reviewed by Filip Pizlo.

* wtf/Atomics.h:
GCC and LLVM have builtin for atomic ADD and SUB: __sync_add_and_fetch,
__sync_sub_and_fetch.

Using them let the compiler just generate the atomic operations inline
instead of generating a function call to LibC. It also simplify the
code a bit.

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

7 years agoTighten RenderLayerModelObject subclass constructors to operate on ContainerNodes.
antti@apple.com [Wed, 16 Jan 2013 21:50:05 +0000 (21:50 +0000)]
Tighten RenderLayerModelObject subclass constructors to operate on ContainerNodes.
https://bugs.webkit.org/show_bug.cgi?id=107041

Reviewed by Simon Fraser.

In rendering code only Nodes that are not ContainerNodes are used by RenderText. Tighter typing is better in general.
It also enables better code generation (especially with Document* moving from Node to ContainerNode).

This patch tightens constuctors for better static type checking. It also overrides node() with a covariant ContainerNode* return type
version in RenderLayerModelObject. RenderObject::createObject() is tightened to take Element*.

This patch does not change Node* usage in non-construction code (expect for the node() override).

With some further work it should be possible to tighten most of the rendering tree to operate on Elements for even less branchiness.

* dom/Document.cpp:
(WebCore::Document::attach):
* html/shadow/SliderThumbElement.cpp:
(WebCore::RenderSliderThumb::RenderSliderThumb):
(WebCore::RenderSliderContainer::RenderSliderContainer):
* html/shadow/SliderThumbElement.h:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::RenderBlock):
* rendering/RenderBlock.h:
* rendering/RenderBox.cpp:
(WebCore::RenderBox::RenderBox):
* rendering/RenderBox.h:
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::RenderBoxModelObject):
* rendering/RenderBoxModelObject.h:
* rendering/RenderButton.cpp:
(WebCore::RenderButton::RenderButton):
* rendering/RenderButton.h:
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::RenderDeprecatedFlexibleBox):
* rendering/RenderDeprecatedFlexibleBox.h:
* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::RenderDetailsMarker):
* rendering/RenderDetailsMarker.h:
* rendering/RenderDialog.h:
(WebCore::RenderDialog::RenderDialog):
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::RenderFieldset):
* rendering/RenderFieldset.h:
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::RenderFlexibleBox):
* rendering/RenderFlexibleBox.h:
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
* rendering/RenderFlowThread.h:
* rendering/RenderFullScreen.cpp:
(RenderFullScreen::RenderFullScreen):
* rendering/RenderFullScreen.h:
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::RenderGrid):
* rendering/RenderGrid.h:
* rendering/RenderImage.cpp:
(WebCore::RenderImage::RenderImage):
* rendering/RenderImage.h:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::RenderInline):
* rendering/RenderInline.h:
* rendering/RenderLayerModelObject.cpp:
(WebCore::RenderLayerModelObject::RenderLayerModelObject):
* rendering/RenderLayerModelObject.h:
(WebCore::RenderLayerModelObject::node):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::RenderListItem):
* rendering/RenderListItem.h:
* rendering/RenderMediaControlElements.cpp:
(WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
(WebCore::RenderMediaControlTimeDisplay::RenderMediaControlTimeDisplay):
(WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
* rendering/RenderMediaControlElements.h:
* rendering/RenderMultiColumnBlock.cpp:
(WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
* rendering/RenderMultiColumnBlock.h:
* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):
* rendering/RenderMultiColumnFlowThread.h:
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
* rendering/RenderMultiColumnSet.h:
(RenderMultiColumnSet):
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
* rendering/RenderNamedFlowThread.h:
(RenderNamedFlowThread):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
* rendering/RenderObject.h:
(RenderObject):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::RenderRegion):
* rendering/RenderRegion.h:
(RenderRegion):
* rendering/RenderRegionSet.cpp:
(WebCore::RenderRegionSet::RenderRegionSet):
* rendering/RenderRegionSet.h:
(RenderRegionSet):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::RenderReplaced):
* rendering/RenderReplaced.h:
(RenderReplaced):
* rendering/RenderReplica.cpp:
(WebCore::RenderReplica::RenderReplica):
(WebCore::RenderReplica::~RenderReplica):
* rendering/RenderReplica.h:
* rendering/RenderRuby.cpp:
(WebCore::RenderRubyAsInline::RenderRubyAsInline):
(WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
* rendering/RenderRuby.h:
* rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::RenderRubyBase):
* rendering/RenderRubyBase.h:
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::RenderRubyRun):
* rendering/RenderRubyRun.h:
(RenderRubyRun):
* rendering/RenderRubyText.cpp:
(WebCore::RenderRubyText::RenderRubyText):
* rendering/RenderRubyText.h:
(RenderRubyText):
* rendering/RenderScrollbarPart.cpp:
(WebCore::RenderScrollbarPart::RenderScrollbarPart):
* rendering/RenderScrollbarPart.h:
(RenderScrollbarPart):
* rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::RenderSearchField):
* rendering/RenderSearchField.h:
(RenderSearchField):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::RenderTable):
* rendering/RenderTable.h:
(RenderTable):
* rendering/RenderTableCaption.cpp:
(WebCore::RenderTableCaption::RenderTableCaption):
* rendering/RenderTableCaption.h:
(RenderTableCaption):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::RenderTableCell):
* rendering/RenderTableCell.h:
(RenderTableCell):
* rendering/RenderTableCol.cpp:
(WebCore::RenderTableCol::RenderTableCol):
* rendering/RenderTableCol.h:
(RenderTableCol):
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::RenderTableRow):
* rendering/RenderTableRow.h:
(RenderTableRow):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::RenderTableSection):
* rendering/RenderTableSection.h:
(RenderTableSection):
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::RenderTextControl):
* rendering/RenderTextControl.h:
* rendering/RenderTextControlMultiLine.cpp:
(WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
* rendering/RenderTextControlMultiLine.h:
(RenderTextControlMultiLine):
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
* rendering/RenderTextControlSingleLine.h:
(RenderTextControlSingleLine):
(WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
* rendering/RenderTextTrackCue.cpp:
(WebCore::RenderTextTrackCue::RenderTextTrackCue):
* rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
* rendering/RenderView.h:
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::RenderWidget):
* rendering/RenderWidget.h:
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::RenderMathMLBlock):
* rendering/mathml/RenderMathMLBlock.h:
(WebCore::RenderMathMLTable::RenderMathMLTable):
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::RenderMathMLOperator):
* rendering/mathml/RenderMathMLOperator.h:
* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::RenderMathMLRow):
* rendering/mathml/RenderMathMLRow.h:
(RenderMathMLRow):
(WebCore::RenderSVGInline::RenderSVGInline):
* rendering/svg/RenderSVGInline.h:
* rendering/svg/RenderSVGTSpan.cpp:
(WebCore::RenderSVGTSpan::RenderSVGTSpan):
* rendering/svg/RenderSVGTSpan.h:
* rendering/svg/RenderSVGTextPath.cpp:
(WebCore::RenderSVGTextPath::RenderSVGTextPath):
* rendering/svg/RenderSVGTextPath.h:

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

7 years agoRemove CoreIPCMessageKinds.h
andersca@apple.com [Wed, 16 Jan 2013 21:47:45 +0000 (21:47 +0000)]
Remove CoreIPCMessageKinds.h
https://bugs.webkit.org/show_bug.cgi?id=107048

Reviewed by Beth Dakin.

Use named IPC messages instead.

* Platform/CoreIPC/Connection.cpp:
(CoreIPC::Connection::sendSyncReply):
(CoreIPC::Connection::processIncomingMessage):
(CoreIPC::Connection::dispatchSyncMessage):
* Platform/CoreIPC/CoreIPCMessageKinds.h: Removed.
* Platform/CoreIPC/MessageID.h:
(MessageID):
(CoreIPC::MessageID::stripMostSignificantBit):
(CoreIPC::MessageID::operator==):
* Platform/CoreIPC/mac/ConnectionMac.cpp:
(CoreIPC::Connection::open):
(CoreIPC::Connection::receiveSourceEventHandler):
* WebKit2.xcodeproj/project.pbxproj:

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

7 years agoStub out WebSpeech synthesis
cfleizach@apple.com [Wed, 16 Jan 2013 21:45:35 +0000 (21:45 +0000)]
Stub out WebSpeech synthesis
https://bugs.webkit.org/show_bug.cgi?id=106847

Reviewed by Adam Barth.

This adds in the necessary IDLs and stubs out the code for the WebSpeech
synthesis specification.
It does not turn on the feature in any platform, but it can be enabled
and built for Mac.

The feature flag is SPEECH_SYNTHESIS.

* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* Modules/speech/DOMWindowSpeechSynthesis.cpp: Added.
(WebCore::DOMWindowSpeechSynthesis::DOMWindowSpeechSynthesis):
(WebCore::DOMWindowSpeechSynthesis::~DOMWindowSpeechSynthesis):
(WebCore::DOMWindowSpeechSynthesis::from):
(WebCore::DOMWindowSpeechSynthesis::speechSynthesis):
* Modules/speech/DOMWindowSpeechSynthesis.h: Added.
* Modules/speech/DOMWindowSpeechSynthesis.idl: Added.
* Modules/speech/SpeechSynthesis.cpp: Added.
(WebCore::SpeechSynthesis::create):
(WebCore::SpeechSynthesis::SpeechSynthesis):
* Modules/speech/SpeechSynthesis.h: Added.
(SpeechSynthesis):
(WebCore::SpeechSynthesis::getVoices):
* Modules/speech/SpeechSynthesis.idl: Added.
* Modules/speech/SpeechSynthesisEvent.cpp: Added.
(WebCore::SpeechSynthesisEvent::create):
(WebCore::SpeechSynthesisEvent::SpeechSynthesisEvent):
* Modules/speech/SpeechSynthesisEvent.h: Added.
(SpeechSynthesisEvent):
(WebCore::SpeechSynthesisEvent::charIndex):
(WebCore::SpeechSynthesisEvent::elapsedTime):
(WebCore::SpeechSynthesisEvent::name):
* Modules/speech/SpeechSynthesisEvent.idl: Added.
* Modules/speech/SpeechSynthesisUtterance.cpp: Added.
(WebCore::SpeechSynthesisUtterance::create):
(WebCore::SpeechSynthesisUtterance::SpeechSynthesisUtterance):
(WebCore::SpeechSynthesisUtterance::scriptExecutionContext):
(WebCore::SpeechSynthesisUtterance::interfaceName):
* Modules/speech/SpeechSynthesisUtterance.h: Added.
(SpeechSynthesisUtterance):
(WebCore::SpeechSynthesisUtterance::text):
(WebCore::SpeechSynthesisUtterance::setText):
(WebCore::SpeechSynthesisUtterance::lang):
(WebCore::SpeechSynthesisUtterance::setLang):
(WebCore::SpeechSynthesisUtterance::voiceURI):
(WebCore::SpeechSynthesisUtterance::setVoiceURI):
(WebCore::SpeechSynthesisUtterance::volume):
(WebCore::SpeechSynthesisUtterance::setVolume):
(WebCore::SpeechSynthesisUtterance::rate):
(WebCore::SpeechSynthesisUtterance::setRate):
(WebCore::SpeechSynthesisUtterance::pitch):
(WebCore::SpeechSynthesisUtterance::setPitch):
* Modules/speech/SpeechSynthesisUtterance.idl: Added.
* Modules/speech/SpeechSynthesisVoice.cpp: Added.
(WebCore::SpeechSynthesisVoice::create):
(WebCore::SpeechSynthesisVoice::SpeechSynthesisVoice):
* Modules/speech/SpeechSynthesisVoice.h: Added.
(SpeechSynthesisVoice):
(WebCore::SpeechSynthesisVoice::voiceURI):
(WebCore::SpeechSynthesisVoice::name):
(WebCore::SpeechSynthesisVoice::lang):
(WebCore::SpeechSynthesisVoice::localService):
(WebCore::SpeechSynthesisVoice::isDefault):
* Modules/speech/SpeechSynthesisVoice.idl: Added.
* Modules/speech/mac: Added.
* Modules/speech/mac/SpeechSynthesisMac.mm: Added.
(WebCore::SpeechSynthesis::pending):
(WebCore::SpeechSynthesis::speaking):
(WebCore::SpeechSynthesis::paused):
(WebCore::SpeechSynthesis::speak):
(WebCore::SpeechSynthesis::cancel):
(WebCore::SpeechSynthesis::pause):
(WebCore::SpeechSynthesis::resume):
* WebCore.xcodeproj/project.pbxproj:
* dom/EventNames.h:
* dom/EventNames.in:
* dom/EventTargetFactory.in:

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

7 years agoUnreviewed, rolling out r139853.
leviw@chromium.org [Wed, 16 Jan 2013 21:33:01 +0000 (21:33 +0000)]
Unreviewed, rolling out r139853.
http://trac.webkit.org/changeset/139853
https://bugs.webkit.org/show_bug.cgi?id=107049

Broke the ChromeOS ppapi_unittests (Requested by leviw on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-16

Source/WebCore:

* inspector/Inspector.json:
* inspector/InspectorInstrumentation.cpp:
(WebCore):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
* inspector/InspectorPageAgent.cpp:
* inspector/InspectorPageAgent.h:
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.PageDispatcher.prototype.frameDetached):
* loader/NavigationScheduler.cpp:
(WebCore::NavigationScheduler::clear):
(WebCore::NavigationScheduler::timerFired):
(WebCore::NavigationScheduler::startTimer):
(WebCore::NavigationScheduler::cancel):
* loader/ProgressTracker.cpp:
(WebCore::ProgressTracker::progressStarted):
(WebCore::ProgressTracker::finalProgressComplete):

LayoutTests:

* inspector-protocol/page/frameScheduledNavigation-expected.txt: Removed.
* inspector-protocol/page/frameScheduledNavigation.html: Removed.
* inspector-protocol/page/frameStartedLoading-expected.txt: Removed.
* inspector-protocol/page/frameStartedLoading.html: Removed.

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

7 years ago[CMake] Report actual values for feature configuration (instead of the default)
hugo.lima@openbossa.org [Wed, 16 Jan 2013 21:23:34 +0000 (21:23 +0000)]
[CMake] Report actual values for feature configuration (instead of the default)
https://bugs.webkit.org/show_bug.cgi?id=107010

Reviewed by Laszlo Gombos.

* Source/cmake/WebKitFeatures.cmake:

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

7 years ago[Chromium] Unreviewed gardening.
fmalita@chromium.org [Wed, 16 Jan 2013 21:18:18 +0000 (21:18 +0000)]
[Chromium] Unreviewed gardening.

Adding results for platform/chromium/compositing/rounded-corners.html.

* platform/chromium-mac/platform/chromium/compositing/rounded-corners-expected.png: Added.
* platform/chromium-win/platform/chromium/compositing/rounded-corners-expected.png: Added.
* platform/chromium/TestExpectations:
* platform/chromium/platform/chromium/compositing/rounded-corners-expected.txt: Renamed from LayoutTests/platform/chromium-linux/platform/chromium/compositing/rounded-corners-expected.txt.

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

7 years agoSimplify validation and data copying in WebGLBuffer
kbr@google.com [Wed, 16 Jan 2013 21:09:08 +0000 (21:09 +0000)]
Simplify validation and data copying in WebGLBuffer
https://bugs.webkit.org/show_bug.cgi?id=106975

Reviewed by Dean Jackson.

No new tests; covered by existing tests. Ran WebGL layout tests and conformance tests.

* html/canvas/WebGLBuffer.cpp:
(WebCore::WebGLBuffer::associateBufferDataImpl):
    Take (void*, int) pair instead of ArrayBuffer and offset. Simplifies code significantly.
(WebCore::WebGLBuffer::associateBufferData):
    Pass down base pointers and sizes rather than ArrayBuffer and optional offset.
(WebCore::WebGLBuffer::associateBufferSubDataImpl):
    Take (void*, int) pair instead of ArrayBuffer and offset. Simplifies code significantly.
(WebCore::WebGLBuffer::associateBufferSubData):
    Pass down base pointers and sizes rather than ArrayBuffer and optional offset.
* html/canvas/WebGLBuffer.h:
(WebGLBuffer):
    Change signatures of associateBufferDataImpl and associateBufferSubDataImpl.

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

7 years agoDelete an extraneous print statement.
dpranke@chromium.org [Wed, 16 Jan 2013 20:58:01 +0000 (20:58 +0000)]
Delete an extraneous print statement.
https://bugs.webkit.org/show_bug.cgi?id=106562

Delete the extraneous print statement introduced in r139841.

* Scripts/webkitpy/layout_tests/views/printing.py:
(Printer.print_found):

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

7 years agoPlease reinstate --pixel
commit-queue@webkit.org [Wed, 16 Jan 2013 20:27:59 +0000 (20:27 +0000)]
Please reinstate --pixel
https://bugs.webkit.org/show_bug.cgi?id=101995

Patch by Zan Dobersek <zdobersek@igalia.com> on 2013-01-16
Reviewed by Dirk Pranke.

Add the '--pixel' and '--no-pixel' options for NRWT as aliases for
the '--pixel-tests' (or '-p') and '--no-pixel-tests' options respectively.
Some developers are still used to these options that were available in the ORWT.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):

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

7 years agoinconsistency in drawImage with target rect negative dimensions.
commit-queue@webkit.org [Wed, 16 Jan 2013 20:25:06 +0000 (20:25 +0000)]
inconsistency in drawImage with target rect negative dimensions.
https://bugs.webkit.org/show_bug.cgi?id=100026

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2013-01-16
Reviewed by Dean Jackson.

PerformanceTests:

Create a drawImage performance test. There is no significative change
in performance: 27144.6851528 runs/s without the patch; 27153.517612
runs/s with the patch. Test is currently skipped.

* Canvas/drawimage.html: Added.
* Skipped:

Source/WebCore:

Remove -1, -1 special case in drawImage and drawImageBuffer. Replace
all -1 -1 arguments calls to with the correct rectangle dimensions.

Remove FloatRect(0, 0, -1, -1) default argument for srcRect, and
instead, add new overloaded functions to create a FloatRect from image
size.

Replace -1 -1 arguments calls in FEComposite::platformApplySoftware
with correct rectangle dimensions.

Replace ImageGStreamer rect method (which may return -1 -1 rectangle)
with cropRect method, and make caller check for rectangle emptiness.

* fast/canvas/drawImage-with-negative-source-destination-expected.txt:
* fast/canvas/drawImage-with-negative-source-destination.js:

* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawImage):
(WebCore):
(WebCore::GraphicsContext::drawImageBuffer):
* platform/graphics/GraphicsContext.h:
(GraphicsContext):
* platform/graphics/filters/FEComposite.cpp:
(WebCore::FEComposite::platformApplySoftware):
* platform/graphics/gstreamer/ImageGStreamer.h:
(WebCore::ImageGStreamer::rect):

LayoutTests:

Add a drawImage check for a destination rectangle with -1px
width/height. When drawing to (1, 1, -1, -1) rectangle, first
(top-left) pixel should have been and been the only one drawn into.

* fast/canvas/drawImage-with-negative-source-destination-expected.txt:
* fast/canvas/drawImage-with-negative-source-destination.js:

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

7 years agoAllow PaintInfo to carry all PaintBehavior flags
simon.fraser@apple.com [Wed, 16 Jan 2013 20:00:52 +0000 (20:00 +0000)]
Allow PaintInfo to carry all PaintBehavior flags
https://bugs.webkit.org/show_bug.cgi?id=106980

Reviewed by Sam Weinig.

PaintInfo has a single boolean for forceBlackText, but I'll be adding additional
paint behaviors that I'd like to access from PaintInfo, so it makes sense for
PaintInfo to just include the set of PaintBehavior flags.

Also add default values in the constructor arguments for rarely used parameters.

No behavior change, no tests.

* rendering/EllipsisBox.cpp:
(WebCore::EllipsisBox::paint): Use the forceBlackText() function.
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint): Call forceBlackText().
* rendering/PaintInfo.h:
(WebCore::PaintInfo::PaintInfo): Pass PaintBehavior rather than a forceBlackText boolean.
(WebCore::PaintInfo::forceBlackText): Return true if the behavior flags contain PaintBehaviorForceBlackText.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended): Pass PaintBehaviorForceBlackText instead of 'true'
when painting for background-clip: text.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents): Pass PaintBehaviorNormal where we used to pass 'false',
and omit default 0 parameters.
* rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::renderSubtreeToImageBuffer): PaintBehaviorNormal and remove default params.

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

7 years agoLinkHighlight should use touch adjustment to match active state on GestureTapDown.
wjmaclean@chromium.org [Wed, 16 Jan 2013 19:48:44 +0000 (19:48 +0000)]
LinkHighlight should use touch adjustment to match active state on GestureTapDown.
https://bugs.webkit.org/show_bug.cgi?id=107032

Reviewed by Adam Barth.

Source/WebKit/chromium:

LinkHighlight node selection should produce results that match the node marked
active during GestureTapDown.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::bestTouchLinkNode):
* tests/LinkHighlightTest.cpp:
(WebCore::TEST):

LayoutTests:

* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-multi-line.html:

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

7 years agoAdd a missing #if to fix the Mac build sans ENABLE_CSS_FILTERS.
timothy_horton@apple.com [Wed, 16 Jan 2013 19:26:57 +0000 (19:26 +0000)]
Add a missing #if to fix the Mac build sans ENABLE_CSS_FILTERS.

Rubber-stamped by Simon Fraser.

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::cloneLayer):

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

7 years agoRemove --shark* support from sunspider/run-sunspider now that Shark is dead
eric@webkit.org [Wed, 16 Jan 2013 19:25:40 +0000 (19:25 +0000)]
Remove --shark* support from sunspider/run-sunspider now that Shark is dead
https://bugs.webkit.org/show_bug.cgi?id=99512

Reviewed by Darin Adler.

PerformanceTests/SunSpider:

I tried to use --instruments, but that also seems broken (in the same way before/after this patch).

* sunspider:
(runTestsOnce):

Tools:

* Scripts/run-sunspider:

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

7 years agoRemove webkitpy Visual Studio files, as core developers are not interested in maintai...
eric@webkit.org [Wed, 16 Jan 2013 19:23:08 +0000 (19:23 +0000)]
Remove webkitpy Visual Studio files, as core developers are not interested in maintaining them
https://bugs.webkit.org/show_bug.cgi?id=106036

Reviewed by Darin Adler.

* Scripts/webkitpy/webkitpy.pyproj: Removed.
* Scripts/webkitpy/webkitpy.sln: Removed.

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

7 years ago[V8] Make a creationContext parameter of toV8() mandatory
haraken@chromium.org [Wed, 16 Jan 2013 19:21:40 +0000 (19:21 +0000)]
[V8] Make a creationContext parameter of toV8() mandatory
https://bugs.webkit.org/show_bug.cgi?id=107020

Reviewed by Adam Barth.

Source/WebCore:

Currently a creationContext parameter of toV8() is optional:

  Handle<Value> toV8(..., Handle<Object> creationContext = Handle<Object>(), ...) {
    ...;
  }

On the other hand, looking at the implementation of
V8WrapperInstantiationScope:

    explicit V8WrapperInstantiationScope(v8::Handle<v8::Object> creationContext)
        : m_didEnterContext(false)
        , m_context(v8::Context::GetCurrent())
    {
        if (creationContext.IsEmpty()) // We do nothing for this case!
            return;
        v8::Handle<v8::Context> contextForWrapper = creationContext->CreationContext();
        if (contextForWrapper == m_context)
            return;
        m_context = v8::Local<v8::Context>::New(contextForWrapper);
        m_didEnterContext = true;
        m_context->Enter();
    }

we're assuming that a creationContext parameter is passed
to toV8() when a creationContext exists. In other words,
if we forget to pass a creationContext parameter, we will
end up with creating an object on the current context, which
is wrong. To avoid the mistake, we should make the
creationContext parameter mandatory. When we really do not
have a creationContext, we can pass Handle<Object>() explicitly.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
* bindings/scripts/test/V8/V8Float64Array.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestActiveDOMObject.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestEventConstructor.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestException.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestInterface.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestNamedConstructor.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestNode.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestObj.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
(WebCore::toV8):
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore::injectIDBKeyIntoScriptValue):
(WebCore::idbKeyToScriptValue):
* bindings/v8/ScriptController.cpp:
(WebCore::createScriptObject):
(WebCore::ScriptController::createScriptObjectForPluginElement):
* bindings/v8/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::currentCallFrame):
* bindings/v8/ScriptObject.cpp:
(WebCore::ScriptGlobalObject::set):
* bindings/v8/V8AbstractEventListener.cpp:
(WebCore::V8AbstractEventListener::handleEvent):
(WebCore::V8AbstractEventListener::getReceiverObject):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::updateDocumentProperty):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::toObjectWrapper):
* bindings/v8/V8MutationCallback.cpp:
(WebCore::V8MutationCallback::handleEvent):
* bindings/v8/V8NodeFilterCondition.cpp:
(WebCore::V8NodeFilterCondition::acceptNode):
* bindings/v8/V8WorkerContextEventListener.cpp:
(WebCore::V8WorkerContextEventListener::handleEvent):
(WebCore::V8WorkerContextEventListener::getReceiverObject):
* bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
(WebCore::V8SQLStatementErrorCallback::handleEvent):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
(WebCore::InjectedScriptHost::nodeAsScriptValue):
* css/MediaQueryListListener.cpp:
(WebCore::MediaQueryListListener::queryChanged):
* testing/v8/WebCoreTestSupport.cpp:
(WebCoreTestSupport::injectInternalsObject):

Source/WebKit/chromium:

We pass Handle<Object>() to a creationContext parameter of
toV8() when we do not have a creationContext.

No tests. No change in behavior.

* src/InspectorFrontendClientImpl.cpp:
(WebKit::InspectorFrontendClientImpl::windowObjectCleared):
* src/WebArrayBuffer.cpp:
(WebKit::WebArrayBuffer::toV8Value):
* src/WebBlob.cpp:
(WebKit::WebBlob::toV8Value):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::createFileSystem):
(WebKit::WebFrameImpl::createSerializableFileSystem):
(WebKit::WebFrameImpl::createFileEntry):

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

7 years agoAdd a Setting to disable QTKit media engine.
jer.noble@apple.com [Wed, 16 Jan 2013 19:19:59 +0000 (19:19 +0000)]
Add a Setting to disable QTKit media engine.
https://bugs.webkit.org/show_bug.cgi?id=106972

Reviewed by Eric Carlson.

Source/WebCore:

Allow the MediaPlayerPrivateQTKit engine to be disabled by adding a
runtime setting to Settings. Make the setting 'live' by requerying the
installed media engines when the setting changes.

* WebCore.exp.in: Add new symbols to export list.
* page/Settings.cpp: Add new gQTKitEnabled global.
(WebCore::Settings::setAVFoundationEnabled): Requery media engines.
(WebCore::Settings::setQTKitEnabled): Ditto. Setter for global setting variable.
* page/Settings.h:
(WebCore::Settings::isQTKitEnabled): Getter for same.
* platform/graphics/MediaPlayer.cpp:
(WebCore::installedMediaEngines): Check isQTKitEnabled() before adding
    MediaPlayerPrivateQTKit engine.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::requeryMediaEngines): Pass through to MediaPlayer.
* html/HTMLMediaElement.h:
* platform/graphics/MediaPlayer.cpp:
(WebCore::installedMediaEngines): Take an optional requery options parameter.
(WebCore::MediaPlayer::requeryMediaEngines): Pass through to installedMediaEngines().
* platform/graphics/MediaPlayer.h:

Source/WebKit/mac:

Add WebKit API to set QTKit enabled setting from user defaults.

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Set WebCore settings based on user defaults.
(-[WebPreferences setQTKitEnabled:]): Pass through to WebCore.
(-[WebPreferences isQTKitEnabled]): Ditto.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Synchronize WebKit/WebCore settings.

Source/WebKit2:

Add a WebKit2 API to access WebCore QTKitEnabled settings.

* Shared/WebPreferencesStore.h:
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetQTKitEnabled): Pass through to WebCore.
(WKPreferencesGetQTKitEnabled): Ditto.
* UIProcess/API/C/WKPreferences.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences): Synchronize WebKit2/WebCore settings.

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

7 years ago[Chromium] Move WebArrayBufferView and WebSerializedScriptValue out of public/platform/
pilgrim@chromium.org [Wed, 16 Jan 2013 19:04:23 +0000 (19:04 +0000)]
[Chromium] Move WebArrayBufferView and WebSerializedScriptValue out of public/platform/
https://bugs.webkit.org/show_bug.cgi?id=106863

Reviewed by Adam Barth.

These are not being moved into the new top-level Platform
directory, so into public they go.

* WebKit.gyp:
* public/WebArrayBufferView.h: Added.
(v8):
(WebKit):
(WebArrayBufferView):
(WebKit::WebArrayBufferView::~WebArrayBufferView):
(WebKit::WebArrayBufferView::WebArrayBufferView):
* public/WebSerializedScriptValue.h: Added.
(v8):
(WebKit):
(WebSerializedScriptValue):
(WebKit::WebSerializedScriptValue::~WebSerializedScriptValue):
(WebKit::WebSerializedScriptValue::WebSerializedScriptValue):
(WebKit::WebSerializedScriptValue::operator=):
(WebKit::WebSerializedScriptValue::isNull):
* public/platform/WebArrayBufferView.h:
* public/platform/WebSerializedScriptValue.h:

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

7 years ago[gstreamer] Some media tests occasionally crash with gstreamer 1.0 backend
christophe.dumez@intel.com [Wed, 16 Jan 2013 18:44:18 +0000 (18:44 +0000)]
[gstreamer] Some media tests occasionally crash with gstreamer 1.0 backend
https://bugs.webkit.org/show_bug.cgi?id=106551

Reviewed by Philippe Normand.

ImageGStreamerCairo was passing mapped memory to
cairo_image_surface_create_for_data() and then unmapping it straight
away even though the cairo_surface_t is still used. The cairo
documentation states:
"The output buffer must be kept around until the cairo_surface_t is
destroyed or cairo_surface_finish() is called on the surface."

This patch keeps the GstBuffer memory mapped until the ImageGStreamer
is destroyed so that the internal cairo_surface_t stays valid while
avoiding copying the image data.

No new tests, already covered by existing tests.

* platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
(WTF::adoptGRef):
(WTF):
(WTF::GstBuffer):
* platform/graphics/gstreamer/GRefPtrGStreamer.h:
(WTF): Add support for using GRefPtr with GstBuffer.
* platform/graphics/gstreamer/ImageGStreamer.h:
(ImageGStreamer):
* platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
(ImageGStreamer::ImageGStreamer):
(ImageGStreamer::~ImageGStreamer):

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

7 years ago[Chromium] Remove hardcoded chromium_*.jar in gyp files
commit-queue@webkit.org [Wed, 16 Jan 2013 18:37:48 +0000 (18:37 +0000)]
[Chromium] Remove hardcoded chromium_*.jar in gyp files
https://bugs.webkit.org/show_bug.cgi?id=104049

Patch by Chris Hopman <cjhopman@chromium.org> on 2013-01-16
Reviewed by Eric Seidel.

Targets with dependencies (direct/indirect) on a java target receive
the chromium_*.jar paths in the variable input_jars_paths. Targets
should use that rather than hardcoding where they think the jar will
be. These can be passed directly to ant as INPUT_JARS_PATHS rather
than as --jars to generate_native_test.py.

Source/WebKit/chromium:

* WebKitUnitTests.gyp:

Tools:

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
* TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:

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

7 years agoUse SkMatrix::I() when we need to pass identity, rather than constructing a new matrix.
reed@google.com [Wed, 16 Jan 2013 18:32:46 +0000 (18:32 +0000)]
Use SkMatrix::I() when we need to pass identity, rather than constructing a new matrix.
https://bugs.webkit.org/show_bug.cgi?id=107016

Reviewed by James Robinson.

No new tests. existing tests exercise this code.

The default constructor is being deprecated, so this change is also part of that effort,
though it is a perf-improvement regardless, since we avoid making a new (temp) matrix.

* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::updateLayerPreserves3D):

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

7 years agoUnreviewed gardening. Marking several tests as crashing on Debug builds following
leviw@chromium.org [Wed, 16 Jan 2013 18:32:23 +0000 (18:32 +0000)]
Unreviewed gardening. Marking several tests as crashing on Debug builds following
r139853.

* platform/chromium/TestExpectations:

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

7 years agoUnreveiwed gardening. Updating expectations following r139865.
leviw@chromium.org [Wed, 16 Jan 2013 18:23:16 +0000 (18:23 +0000)]
Unreveiwed gardening. Updating expectations following r139865.

* platform/chromium-linux/fast/forms/time/time-appearance-basic-expected.png:
* platform/chromium-mac-lion/fast/forms/time/time-appearance-basic-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/time/time-appearance-basic-expected.png:
* platform/chromium-mac/fast/forms/time/time-appearance-basic-expected.png:
* platform/chromium-win/fast/forms/time/time-appearance-basic-expected.png:
* platform/chromium/TestExpectations:

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

7 years agoRenderListMarker::computePreferredLogicalWidth should not be public
ojan@chromium.org [Wed, 16 Jan 2013 18:02:46 +0000 (18:02 +0000)]
RenderListMarker::computePreferredLogicalWidth should not be public
https://bugs.webkit.org/show_bug.cgi?id=106956

Reviewed by Tony Chang.

RenderListItem was calling computePreferredLogicalWidths for the side
effects of updating the marker content and margins. Instead, call
updateMarginsAndContent directly.

* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::updateMarkerLocation):
* rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::layout):
The isImage() codepath never calls computePreferredLogicalWidths, so we need to make
sure the content and margins are updated.

(WebCore::RenderListMarker::updateContent):
(WebCore::RenderListMarker::computePreferredLogicalWidths):
(WebCore::RenderListMarker::updateMarginsAndContent):
* rendering/RenderListMarker.h:

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

7 years ago[GTK] Safeguard against possible NULL-dereference
commit-queue@webkit.org [Wed, 16 Jan 2013 18:00:17 +0000 (18:00 +0000)]
[GTK] Safeguard against possible NULL-dereference
https://bugs.webkit.org/show_bug.cgi?id=104931

Patch by Claudio Saavedra <csaavedra@igalia.com> on 2013-01-16
Reviewed by Martin Robinson.

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetIndexInParent): Move the NULL-safeguard to a
place where it actually makes sense.

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

7 years agoWest-panning cursor does not match resize cursor, unlike all other directions
commit-queue@webkit.org [Wed, 16 Jan 2013 17:49:03 +0000 (17:49 +0000)]
West-panning cursor does not match resize cursor, unlike all other directions
https://bugs.webkit.org/show_bug.cgi?id=89405

Patch by Avi Drissman <avi@google.com> on 2013-01-16
Reviewed by Alexey Proskuryakov.

Existing manual tests.

* platform/mac/CursorMac.mm:
(WebCore::Cursor::ensurePlatformCursor):

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

7 years agoGroundwork to enable process suppression by default on Mac
commit-queue@webkit.org [Wed, 16 Jan 2013 17:44:57 +0000 (17:44 +0000)]
Groundwork to enable process suppression by default on Mac
https://bugs.webkit.org/show_bug.cgi?id=106513

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-01-16
Reviewed by Alexey Proskuryakov.

Process suppression has so far been controlled by a user default and
disabled by default.  This patch provides the groundwork to enable it by
default and adds a private API to enable/disable it on a per-context
basis.

* Shared/mac/ChildProcessMac.mm:
(WebKit::ChildProcess::platformInitialize): Add comment about
initilization of application occlusion state.
* UIProcess/API/C/mac/WKContextPrivateMac.cpp: Added.
(WKContextGetProcessSuppressionEnabled):
(WKContextSetProcessSuppressionEnabled):
Add private API to enable/disable process suppression on a per-context
basis.
* UIProcess/API/C/mac/WKContextPrivateMac.h: Added.
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::didFinishLaunching): Check if owning
context has process suppression enabled before updating application
occlusion state.
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didFinishLaunching): Ditto.
* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::didFinishLaunching): Check if
process suppression is enabled for global child processes before
updating application occlusion state.
* UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
(WebKit::SharedWorkerProcessProxy::didFinishLaunching): Ditto.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::create): Remove call to
initializeProcessSuppressionSupport, since platformInitialize has been
modified to perform initialization.
(WebKit::WebContext::WebContext): Initialize new member variable
m_processSuppressionEnabled to false.
* UIProcess/WebContext.h:
(WebKit::WebContext::processSuppressionEnabled): Remove "Support"
from the method name.
* UIProcess/mac/WebContextMac.mm:
(WebKit::updateGlobalChildProcessesApplicationOcclusionState):
(WebKit::applicationOcclusionStateChanged): Update the application
occlusion state of child processes having process suppresion enabled.
(WebKit::applicationBecameVisible):
(WebKit::applicationBecameOccluded):
Simplify by moving code to applicationOcclusionStateChanged.
(WebKit::registerOcclusionNotificationHandlers): Fix typos.
(WebKit::unregisterOcclusionNotificationHandlers): Add
method to unregister occlusion notification handlers when no context
has process suppression enabled.
(WebKit::enableOcclusionNotifications):
(WebKit::disableOcclusionNotifications):
(WebKit::enableProcessSuppressionForGlobalChildProcesses):
(WebKit::disableProcessSuppressionForGlobalChildProcesses):
(WebKit::processSuppressionIsEnabledForAnyContext):
(WebKit::processSuppressionIsEnabledForAllContexts):
(WebKit::WebContext::platformInitialize): Disable process suppression
for global child processes since process suppression is disabled for a
context on construction.
(WebKit::WebContext::setProcessSuppressionEnabled):
(WebKit::WebContext::updateChildProcessesApplicationOcclusionState):
(WebKit::WebContext::applicationIsOccluded):
(WebKit::WebContext::processSuppressionEnabledForGlobalChildProcesses):
(WebKit::WebContext::processSuppressionEnabledChanged): Update child
processes application occlusion state, enable/disable occlusion
notifications and enable/disable process suppression for global child
processes.
* WebKit2.xcodeproj/project.pbxproj:

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

7 years agoWeb Inspector: array grouping does not work for float number keys
aandrey@chromium.org [Wed, 16 Jan 2013 16:56:17 +0000 (16:56 +0000)]
Web Inspector: array grouping does not work for float number keys
https://bugs.webkit.org/show_bug.cgi?id=106998

Reviewed by Pavel Feldman.

Source/WebCore:

Now we do the array index check according to the ECMAScript 5, section 15.4:
"A property name P (in the form of a String value) is an array index if and only if ToString(ToUint32(P)) is equal to P and ToUint32(P) is not equal to 2^32-1."

* inspector/front-end/ObjectPropertiesSection.js:
(.buildObjectFragment):

LayoutTests:

* inspector/console/console-big-array-expected.txt:
* inspector/console/console-big-array.html:

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

7 years agoWeb Inspector: Show formatted content of JSON request
commit-queue@webkit.org [Wed, 16 Jan 2013 16:54:49 +0000 (16:54 +0000)]
Web Inspector: Show formatted content of JSON request
https://bugs.webkit.org/show_bug.cgi?id=106900

Patch by Sergey Ryazanov <serya@chromium.org> on 2013-01-16
Reviewed by Vsevolod Vlasov.

"Request payload" section showed raw content for POST requests.
This change show it in structured format if it's JSON parsable.
Raw format is also available.

* inspector/front-end/RequestHeadersView.js:
(WebInspector.RequestHeadersView.prototype._refreshQueryString):
(WebInspector.RequestHeadersView.prototype._refreshFormData):
(WebInspector.RequestHeadersView.prototype.toggleViewSource):
(WebInspector.RequestHeadersView.prototype._refreshParams):

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